Index: head/www/nginx/Makefile =================================================================== --- head/www/nginx/Makefile +++ head/www/nginx/Makefile @@ -6,8 +6,8 @@ PORTREVISION?= 11 PORTEPOCH= 2 CATEGORIES= www -MASTER_SITES= http://nginx.org/download/ -MASTER_SITES+= LOCAL/osa +MASTER_SITES= http://nginx.org/download/ \ + LOCAL/osa DISTFILES= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER?= joneum@FreeBSD.org @@ -19,248 +19,12 @@ PORTSCOUT= limit:^1\.12\.[0-9]* -USES+= cpe +USES= cpe CPE_VENDOR= nginx CPE_PRODUCT= nginx USE_GITHUB= nodefault -NO_OPTIONS_SORT= yes -OPTIONS_DEFINE= \ - DSO \ - DEBUG \ - DEBUGLOG \ - FILE_AIO \ - IPV6 \ - GOOGLE_PERFTOOLS \ - HTTP \ - HTTP_ADDITION \ - HTTP_AUTH_REQ \ - HTTP_CACHE \ - HTTP_DAV \ - HTTP_FLV \ - HTTP_GEOIP \ - HTTP_GZIP_STATIC \ - HTTP_GUNZIP_FILTER \ - HTTP_IMAGE_FILTER \ - HTTP_MP4 \ - HTTP_PERL \ - HTTP_RANDOM_INDEX \ - HTTP_REALIP \ - HTTP_REWRITE \ - HTTP_SECURE_LINK \ - HTTP_SLICE \ - HTTP_SSL \ - HTTP_STATUS \ - HTTP_SUB \ - HTTP_XSLT \ - MAIL \ - MAIL_IMAP \ - MAIL_POP3 \ - MAIL_SMTP \ - MAIL_SSL \ - HTTPV2 \ - NJS \ - STREAM \ - STREAM_SSL \ - STREAM_SSL_PREREAD \ - THREADS \ - WWW \ - AJP \ - AWS_AUTH \ - CACHE_PURGE \ - CLOJURE \ - CT \ - ECHO \ - FASTDFS \ - HEADERS_MORE \ - HTTP_ACCEPT_LANGUAGE \ - HTTP_AUTH_DIGEST \ - HTTP_AUTH_KRB5 \ - HTTP_AUTH_LDAP \ - HTTP_AUTH_PAM \ - HTTP_DAV_EXT \ - HTTP_EVAL \ - HTTP_FANCYINDEX \ - HTTP_FOOTER \ - HTTP_GEOIP2 \ - HTTP_JSON_STATUS \ - HTTP_MOGILEFS \ - HTTP_MP4_H264 \ - HTTP_NOTICE \ - HTTP_PUSH \ - HTTP_PUSH_STREAM \ - HTTP_REDIS \ - HTTP_RESPONSE \ - HTTP_SUBS_FILTER \ - HTTP_TARANTOOL \ - HTTP_UPLOAD \ - HTTP_UPLOAD_PROGRESS \ - HTTP_UPSTREAM_CHECK \ - HTTP_UPSTREAM_FAIR \ - HTTP_UPSTREAM_STICKY \ - HTTP_VIDEO_THUMBEXTRACTOR \ - HTTP_ZIP \ - ARRAYVAR \ - BROTLI \ - DRIZZLE \ - DYNAMIC_UPSTREAM \ - ENCRYPTSESSION \ - FORMINPUT \ - GRIDFS \ - ICONV \ - LET \ - LUA \ - MEMC \ - MODSECURITY \ - MODSECURITY3 \ - NAXSI \ - PASSENGER \ - POSTGRES \ - RDS_CSV \ - RDS_JSON \ - REDIS2 \ - RTMP \ - SET_MISC \ - SFLOW \ - SHIBBOLETH \ - SLOWFS_CACHE \ - SMALL_LIGHT \ - SRCACHE \ - X11 \ - XSS - -OPTIONS_DEFAULT?=DSO FILE_AIO HTTP HTTP_ADDITION HTTP_AUTH_REQ HTTP_CACHE \ - HTTP_DAV HTTP_FLV HTTP_GZIP_STATIC HTTP_GUNZIP_FILTER \ - HTTP_MP4 HTTP_RANDOM_INDEX HTTP_REALIP HTTP_SECURE_LINK \ - HTTP_SLICE HTTP_REWRITE HTTP_SSL HTTP_STATUS HTTP_SUB \ - HTTPV2 MAIL MAIL_SSL STREAM STREAM_SSL STREAM_SSL_PREREAD \ - THREADS WWW - -# If the target is makesum, make sure that every distfile is fetched. -.if ${.TARGETS:Mmakesum} -OPTIONS_DEFAULT= ${OPTIONS_DEFINE} -.endif - -DSO_DESC= Enable dynamic modules support -DEBUG_DESC= Build with debugging support -DEBUGLOG_DESC= Enable debug log (--with-debug) -FILE_AIO_DESC= Enable file aio -IPV6_DESC= Enable IPv6 support -GOOGLE_PERFTOOLS_DESC= Enable google perftools module -HTTP_DESC= Enable HTTP module -HTTP_ADDITION_DESC= Enable http_addition module -HTTP_AUTH_REQ_DESC= Enable http_auth_request module -HTTP_CACHE_DESC= Enable http_cache module -HTTP_DAV_DESC= Enable http_webdav module -HTTP_FLV_DESC= Enable http_flv module -HTTP_GEOIP_DESC= Enable http_geoip module -HTTP_GZIP_STATIC_DESC= Enable http_gzip_static module -HTTP_GUNZIP_FILTER_DESC= Enable http_gunzip_filter module -HTTP_IMAGE_FILTER_DESC= Enable http_image_filter module -HTTP_MP4_DESC= Enable http_mp4 module -HTTP_PERL_DESC= Enable http_perl module -HTTP_RANDOM_INDEX_DESC= Enable http_random_index module -HTTP_REALIP_DESC= Enable http_realip module -HTTP_REWRITE_DESC= Enable http_rewrite module -HTTP_SECURE_LINK_DESC= Enable http_secure_link module -HTTP_SLICE_DESC= Enable http_slice module -HTTP_SSL_DESC= Enable http_ssl module -HTTP_STATUS_DESC= Enable http_stub_status module -HTTP_SUB_DESC= Enable http_sub module -HTTP_XSLT_DESC= Enable http_xslt module -MAIL_DESC= Enable IMAP4/POP3/SMTP proxy module -MAIL_IMAP_DESC= Enable IMAP4 proxy module -MAIL_POP3_DESC= Enable POP3 proxy module -MAIL_SMTP_DESC= Enable SMTP proxy module -MAIL_SSL_DESC= Enable mail_ssl module -HTTPV2_DESC= Enable HTTP/2 protocol support (SSL req.) -NJS_DESC= Enable http_javascript module -STREAM_DESC= Enable stream module -STREAM_SSL_DESC= Enable stream_ssl module (SSL req.) -STREAM_SSL_PREREAD_DESC= Enable stream_ssl_preread module (SSL req.) -THREADS_DESC= Enable threads support -WWW_DESC= Enable html sample files -AJP_DESC= 3rd party ajp module -AWS_AUTH_DESC= 3rd party aws auth module -CACHE_PURGE_DESC= 3rd party cache_purge module -CLOJURE_DESC= 3rd party clojure module -CT_DESC= 3rd party cert_transparency module (SSL req.) -ECHO_DESC= 3rd party echo module -FASTDFS_DESC= 3rd party fastdfs module -HEADERS_MORE_DESC= 3rd party headers_more module -HTTP_ACCEPT_LANGUAGE_DESC= 3rd party accept_language module -HTTP_AUTH_DIGEST_DESC= 3rd party http_authdigest module -HTTP_AUTH_KRB5_DESC= 3rd party http_auth_gss module -HTTP_AUTH_LDAP_DESC= 3rd party http_auth_ldap module -HTTP_AUTH_PAM_DESC= 3rd party http_auth_pam module -HTTP_DAV_EXT_DESC= 3rd party webdav_ext module -HTTP_EVAL_DESC= 3rd party eval module -HTTP_FANCYINDEX_DESC= 3rd party http_fancyindex module -HTTP_FOOTER_DESC= 3rd party http_footer module -HTTP_GEOIP2_DESC= 3rd party geoip2 module -HTTP_JSON_STATUS_DESC= 3rd party http_json_status module -HTTP_MOGILEFS_DESC= 3rd party mogilefs module -HTTP_MP4_H264_DESC= 3rd party mp4/h264 module -HTTP_NOTICE_DESC= 3rd party notice module -HTTP_PUSH_DESC= 3rd party push module -HTTP_PUSH_STREAM_DESC= 3rd party push stream module -HTTP_REDIS_DESC= 3rd party http_redis module -HTTP_RESPONSE_DESC= 3rd party http_response module -HTTP_SUBS_FILTER_DESC= 3rd party subs filter module -HTTP_TARANTOOL_DESC= 3rd party tarantool upstream module -HTTP_UPLOAD_DESC= 3rd party upload module -HTTP_UPLOAD_PROGRESS_DESC= 3rd party uploadprogress module -HTTP_UPSTREAM_CHECK_DESC= 3rd party upstream check module -HTTP_UPSTREAM_FAIR_DESC= 3rd party upstream fair module -HTTP_UPSTREAM_STICKY_DESC= 3rd party upstream sticky module -HTTP_VIDEO_THUMBEXTRACTOR_DESC= 3rd party video_thumbextractor module -HTTP_ZIP_DESC= 3rd party http_zip module -ARRAYVAR_DESC= 3rd party array_var module -BROTLI_DESC= 3rd party brotli module -DRIZZLE_DESC= 3rd party drizzlie module -DYNAMIC_UPSTREAM_DESC= 3rd party dynamic_upstream module -ENCRYPTSESSION_DESC= 3rd party encrypted_session module -FORMINPUT_DESC= 3rd party form_input module -GRIDFS_DESC= 3rd party gridfs module -ICONV_DESC= 3rd party iconv module -LET_DESC= 3rd party let module -LUA_DESC= 3rd party lua module -MEMC_DESC= 3rd party memc (memcached) module -MODSECURITY_DESC= 3rd party mod_security module -MODSECURITY3_DESC= 3rd party mod_security v3 module -NAXSI_DESC= 3rd party naxsi module -PASSENGER_DESC= 3rd party passenger module -POSTGRES_DESC= 3rd party postgres module -RDS_CSV_DESC= 3rd party rds_csv module -RDS_JSON_DESC= 3rd party rds_json module -REDIS2_DESC= 3rd party redis2 module -RTMP_DESC= 3rd party rtmp module -SET_MISC_DESC= 3rd party set_misc module -SFLOW_DESC= 3rd party sflow module -SHIBBOLETH_DESC= 3rd party shibboleth module -SLOWFS_CACHE_DESC= 3rd party slowfs_cache module -SMALL_LIGHT_DESC= 3rd party small_light module -SRCACHE_DESC= 3rd party srcache module -X11_DESC= graphics/ImageMagick[-nox11] dependency -XSS_DESC= 3rd party xss module -VIDEO_DESC= Video module support - -.include - -.if ${PORT_OPTIONS:MX11} -IMAGEMAGICK_LIB_DEPENDS= libMagickWand-6.so:graphics/ImageMagick -.else -IMAGEMAGICK_LIB_DEPENDS= libMagickWand-6.so:graphics/ImageMagick-nox11 -.endif - -.if ${PORT_OPTIONS:MPASSENGER} -CATEGORIES+= ruby -USE_RUBY= yes -BUILD_DEPENDS+= ${LOCALBASE}/bin/rake:devel/rubygem-rake -RAKE_BIN= ${LOCALBASE}/bin/rake -.endif - NGINX_VARDIR?= /var NGINX_LOGDIR?= ${NGINX_VARDIR}/log/nginx NGINX_RUNDIR?= ${NGINX_VARDIR}/run @@ -292,888 +56,164 @@ --error-log-path=${NGINX_ERRORLOG} \ --user=${WWWOWN} --group=${WWWGRP} -.if ${PORT_OPTIONS:MDSO} -MODULESDIR= ${PREFIX}/libexec/${PORTNAME} -CONFIGURE_ARGS+=--modules-path=${MODULESDIR} -.endif +PLIST_SUB+= NGINX_TMPDIR=${NGINX_TMPDIR} NGINX_LOGDIR=${NGINX_LOGDIR} WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} -.if empty(PORT_OPTIONS:MHTTP) && empty(PORT_OPTIONS:MMAIL) -IGNORE= requires at least HTTP or MAIL to \ - be defined. Please do 'make config' again -.endif +USERS?= ${WWWOWN} +GROUPS?=${WWWGRP} -.if ${PORT_OPTIONS:MDEBUG} -CFLAGS+= -g -STRIP= #do not strip if nginx with debug information -.endif +NO_OPTIONS_SORT= yes -.if ${PORT_OPTIONS:MDEBUGLOG} -CONFIGURE_ARGS+=--with-debug -.endif +OPTIONS_GROUP= MAILGRP HTTPGRP +# Modules that are part of the base nginx distribution +OPTIONS_GROUP_HTTPGRP= GOOGLE_PERFTOOLS HTTP HTTP_ADDITION HTTP_AUTH_REQ \ + HTTP_CACHE HTTP_DAV HTTP_FLV HTTP_GEOIP HTTP_GUNZIP_FILTER HTTP_GZIP_STATIC \ + HTTP_IMAGE_FILTER HTTP_MP4 HTTP_PERL HTTP_RANDOM_INDEX HTTP_REALIP \ + HTTP_REWRITE HTTP_SECURE_LINK HTTP_SLICE HTTP_SSL HTTP_STATUS HTTP_SUB \ + HTTP_XSLT HTTPV2 STREAM STREAM_SSL STREAM_SSL_PREREAD +# External modules (arrayvar MUST appear after devel_kit for build-dep) +OPTIONS_GROUP_HTTPGRP+= AJP AWS_AUTH BROTLI CACHE_PURGE CLOJURE CT DEVEL_KIT \ + ARRAYVAR DRIZZLE DYNAMIC_UPSTREAM ECHO ENCRYPTSESSION FASTDFS FORMINPUT \ + GRIDFS HEADERS_MORE HTTP_ACCEPT_LANGUAGE HTTP_AUTH_DIGEST HTTP_AUTH_KRB5 \ + HTTP_AUTH_LDAP HTTP_AUTH_PAM HTTP_DAV_EXT HTTP_EVAL HTTP_FANCYINDEX \ + HTTP_FOOTER HTTP_GEOIP2 HTTP_JSON_STATUS HTTP_MOGILEFS HTTP_MP4_H264 \ + HTTP_NOTICE HTTP_PUSH HTTP_PUSH_STREAM HTTP_REDIS HTTP_RESPONSE \ + HTTP_SUBS_FILTER HTTP_TARANTOOL HTTP_UPLOAD HTTP_UPLOAD_PROGRESS \ + HTTP_UPSTREAM_CHECK HTTP_UPSTREAM_FAIR HTTP_UPSTREAM_STICKY \ + HTTP_VIDEO_THUMBEXTRACTOR HTTP_ZIP ICONV LET LUA MEMC MODSECURITY \ + MODSECURITY3 NAXSI NJS PASSENGER POSTGRES RDS_CSV RDS_JSON REDIS2 RTMP \ + SET_MISC SFLOW SHIBBOLETH SLOWFS_CACHE SMALL_LIGHT SRCACHE XSS +OPTIONS_GROUP_MAILGRP= MAIL MAIL_IMAP MAIL_POP3 MAIL_SMTP MAIL_SSL +OPTIONS_DEFINE= DEBUG DEBUGLOG DSO FILE_AIO IPV6 THREADS WWW +OPTIONS_DEFAULT?=DSO FILE_AIO HTTP HTTP_ADDITION HTTP_AUTH_REQ HTTP_CACHE \ + HTTP_DAV HTTP_FLV HTTP_GZIP_STATIC HTTP_GUNZIP_FILTER \ + HTTP_MP4 HTTP_RANDOM_INDEX HTTP_REALIP HTTP_SECURE_LINK \ + HTTP_SLICE HTTP_REWRITE HTTP_SSL HTTP_STATUS HTTP_SUB \ + HTTPV2 MAIL MAIL_SSL STREAM STREAM_SSL STREAM_SSL_PREREAD \ + THREADS WWW +OPTIONS_SUB= yes -.if ${PORT_OPTIONS:MFILE_AIO} -CONFIGURE_ARGS+=--with-file-aio -.endif +.include "Makefile.options.desc" -.if empty(PORT_OPTIONS:MIPV6) -CONFIGURE_ARGS+=--with-cc-opt="-DNGX_HAVE_INET6=0 -I ${LOCALBASE}/include" -.else -CATEGORIES+= ipv6 -.endif +.for opt in ${OPTIONS_GROUP_MAILGRP:NMAIL} +${opt}_IMPLIES= MAIL +.endfor -.if ${PORT_OPTIONS:MGOOGLE_PERFTOOLS} -LIB_DEPENDS+= libprofiler.so:devel/google-perftools -CONFIGURE_ARGS+=--with-google_perftools_module -.endif +.for opt in ${OPTIONS_GROUP_HTTPGRP:NHTTP} +${opt}_IMPLIES= HTTP +.endfor -.if ${PORT_OPTIONS:MHTTP} -CONFIGURE_ARGS+=--http-client-body-temp-path=${NGINX_TMPDIR}/client_body_temp \ - --http-fastcgi-temp-path=${NGINX_TMPDIR}/fastcgi_temp \ - --http-proxy-temp-path=${NGINX_TMPDIR}/proxy_temp \ - --http-scgi-temp-path=${NGINX_TMPDIR}/scgi_temp \ - --http-uwsgi-temp-path=${NGINX_TMPDIR}/uwsgi_temp \ - --http-log-path=${NGINX_ACCESSLOG} - -.if ${PORT_OPTIONS:MHTTP_ACCEPT_LANGUAGE} -GIT_ACCEPT_LANGUAGE_VERSION= 2f69842 -GH_ACCOUNT+= giom:accept_language -GH_PROJECT+= nginx_accept_language_module:accept_language -GH_TAGNAME+= ${GIT_ACCEPT_LANGUAGE_VERSION}:accept_language -CONFIGURE_ARGS+=--add-module=${WRKSRC_accept_language} +# If the target is makesum, make sure that every distfile is fetched. +.if ${.TARGETS:Mmakesum} +OPTIONS_DEFAULT= ${OPTIONS_DEFINE} ${OPTIONS_GROUP_HTTP} ${OPTIONS_GROUP_MAIL} .endif -.if ${PORT_OPTIONS:MHTTP_ADDITION} -CONFIGURE_ARGS+=--with-http_addition_module -.endif +# Non-module options handling +DEBUG_CFLAGS= -g +DEBUG_VARS= STRIP=#do not strip if nginx with debug information +DEBUGLOG_CONFIGURE_ON= --with-debug +DSO_CONFIGURE_ON= --modules-path=${MODULESDIR} +DSO_VARS= MODULESDIR=${PREFIX}/libexec/${PORTNAME} +FILE_AIO_CONFIGURE_ON= --with-file-aio +IPV6_CONFIGURE_OFF= --with-cc-opt="-DNGX_HAVE_INET6=0 -I ${LOCALBASE}/include" +IPV6_CATEGORIES= ipv6 +THREADS_CONFIGURE_ON= --with-threads +WWW_PLIST_SUB= WWWDATA="" +WWW_PLIST_SUB_OFF= WWWDATA="@comment " -.if ${PORT_OPTIONS:MHTTP_AUTH_DIGEST} -GIT_AUTH_DIGEST_VERSION= 274490c -GH_ACCOUNT+= atomx:auth_digest -GH_PROJECT+= nginx-http-auth-digest:auth_digest -GH_TAGNAME+= ${GIT_AUTH_DIGEST_VERSION}:auth_digest -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_auth_digest} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_auth_digest} -.endif -.endif +# Bundled modules +GOOGLE_PERFTOOLS_LIB_DEPENDS= libprofiler.so:devel/google-perftools +GOOGLE_PERFTOOLS_CONFIGURE_ON= --with-google_perftools_module +HTTP_CONFIGURE_ON= --http-client-body-temp-path=${NGINX_TMPDIR}/client_body_temp \ + --http-fastcgi-temp-path=${NGINX_TMPDIR}/fastcgi_temp \ + --http-proxy-temp-path=${NGINX_TMPDIR}/proxy_temp \ + --http-scgi-temp-path=${NGINX_TMPDIR}/scgi_temp \ + --http-uwsgi-temp-path=${NGINX_TMPDIR}/uwsgi_temp \ + --http-log-path=${NGINX_ACCESSLOG} +HTTP_CONFIGURE_OFF= --without-http +HTTP_PLIST_SUB= WWWDATA="@comment " +HTTP_ADDITION_CONFIGURE_ON= --with-http_addition_module +HTTP_AUTH_REQ_CONFIGURE_ON= --with-http_auth_request_module +HTTP_CACHE_CONFIGURE_OFF= --without-http-cache +HTTP_DAV_CONFIGURE_ARGS= --with-http_dav_module +HTTP_FLV_CONFIGURE_ON= --with-http_flv_module +HTTP_GEOIP_LIB_DEPENDS= libGeoIP.so:net/GeoIP +HTTP_GEOIP_VARS= DSO_BASEMODS+=http_geoip_module +HTTP_GZIP_STATIC_CONFIGURE_ON= --with-http_gzip_static_module +HTTP_GUNZIP_FILTER_CONFIGURE_ON=--with-http_gunzip_module +HTTP_IMAGE_FILTER_LIB_DEPENDS= libgd.so:graphics/gd +HTTP_IMAGE_FILTER_VARS= DSO_BASEMODS+=http_image_filter_module +HTTP_MP4_CONFIGURE_ARGS= --with-http_mp4_module +HTTP_PERL_CATEGORIES= perl5 +HTTP_PERL_USES= perl5 +HTTP_PERL_VARS= DSO_BASEMODS+=http_perl_module +HTTP_RANDOM_INDEX_CONFIGURE_ON= --with-http_random_index_module +HTTP_REALIP_CONFIGURE_ON= --with-http_realip_module +HTTP_REWRITE_LIB_DEPENDS= libpcre.so:devel/pcre +HTTP_REWRITE_CONFIGURE_ON= --with-pcre +HTTP_REWRITE_CONFIGURE_OFF= --without-http_rewrite_module +HTTP_SECURE_LINK_CONFIGURE_ON= --with-http_secure_link_module +HTTP_SLICE_CONFIGURE_ON= --with-http_slice_module +HTTP_SSL_CONFIGURE_ON= --with-http_ssl_module +HTTP_SSL_USES= ssl +HTTP_STATUS_CONFIGURE_ON= --with-http_stub_status_module +HTTP_SUB_CONFIGURE_ON= --with-http_sub_module +HTTP_XSLT_USE= GNOME=libxml2,libxslt +HTTP_XSLT_VARS= DSO_BASEMODS+=http_xslt_module +HTTPV2_IMPLIES= HTTP_SSL +HTTPV2_CONFIGURE_ON= --with-http_v2_module +MAIL_VARS= DSO_BASEMODS+=mail +MAIL_IMAP_CONFIGURE_OFF= --without-mail_imap_module +MAIL_POP3_CONFIGURE_OFF= --without-mail_pop3_module +MAIL_SMTP_CONFIGURE_OFF= --without-mail_smtp_module +MAIL_SSL_USES= ssl +MAIL_SSL_CONFIGURE_ON= --with-mail_ssl_module +STREAM_VARS= DSO_BASEMODS+=stream +STREAM_SSL_IMPLIES= HTTP_SSL +STREAM_SSL_CONFIGURE_ON= --with-stream_ssl_module +STREAM_SSL_PREREAD_OFF= --without-stream_ssl_preread_module -.if ${PORT_OPTIONS:MHTTP_AUTH_KRB5} -GIT_HTTP_AUTH_KRB5_VERSION= 7e028a5 -GH_ACCOUNT+= stnoonan:auth_krb5 -GH_PROJECT+= spnego-http-auth-nginx-module:auth_krb5 -GH_TAGNAME+= ${GIT_HTTP_AUTH_KRB5_VERSION}:auth_krb5 -CONFIGURE_ARGS+=--add-module=${WRKSRC_auth_krb5} -#EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-spnego-http-auth-nginx-module-config -#OPTIONS_RADIO+= GSSAPI -#OPTIONS_RADIO_GSSAPI+= GSSAPI_HEIMDAL GSSAPI_MIT -#GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags -#GSSAPI_MIT_USES= gssapi:mit -.endif +### External modules +.include "Makefile.extmod" -.if ${PORT_OPTIONS:MHTTP_AUTH_LDAP} -# WWW: https://github.com/kvspb/nginx-auth-ldap -GIT_HTTP_AUTH_LDAP_VERSION= 42d195d -GH_ACCOUNT+= kvspb:http_auth_ldap -GH_PROJECT+= nginx-auth-ldap:http_auth_ldap -GH_TAGNAME+= ${GIT_HTTP_AUTH_LDAP_VERSION}:http_auth_ldap -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_http_auth_ldap} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_http_auth_ldap} -.endif -USE_OPENLDAP= yes -.endif +.include -.if ${PORT_OPTIONS:MHTTP_AUTH_PAM} -GIT_HTTP_AUTH_PAM_VERSION= 1.5.1 -GH_ACCOUNT+= sto:auth_pam -GH_PROJECT+= ngx_http_auth_pam_module:auth_pam -GH_TAGNAME+= v${GIT_HTTP_AUTH_PAM_VERSION}:auth_pam .if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_auth_pam} +_addbasemod= =dynamic +_addextmod= add-dynamic-module .else -CONFIGURE_ARGS+=--add-module=${WRKSRC_auth_pam} +_addextmod= add-module .endif -.endif -.if ${PORT_OPTIONS:MHTTP_AUTH_REQ} -CONFIGURE_ARGS+=--with-http_auth_request_module -.endif +.for mod in ${DSO_BASEMODS} +CONFIGURE_ARGS+= --with-${mod}${_addbasemod} +.endfor -.if empty(PORT_OPTIONS:MHTTP_CACHE) -CONFIGURE_ARGS+=--without-http-cache -.endif +.for mod in ${DSO_EXTMODS} +CONFIGURE_ARGS+= --${_addextmod}=${WRKSRC_${mod}}${${mod:tu}_SUBDIR} +.endfor +# For non-GitHub hosted modules +.for moddir in ${DSO_EXTDIRS} +CONFIGURE_ARGS+= --${_addextmod}=${WRKDIR}/${moddir} +.endfor -.if ${PORT_OPTIONS:MAJP} -NGINX_AJP_VERSION= bf6cd93 -GH_ACCOUNT+= yaoweibin:ajp -GH_PROJECT+= nginx_ajp_module:ajp -GH_TAGNAME+= ${NGINX_AJP_VERSION}:ajp -CONFIGURE_ARGS+=--add-module=${WRKSRC_ajp} +.if empty(PORT_OPTIONS:MHTTP) && empty(PORT_OPTIONS:MMAIL) +IGNORE= requires at least HTTP or MAIL to \ + be defined. Please do 'make config' again .endif -.if ${PORT_OPTIONS:MAWS_AUTH} -NGINX_AWS_AUTH_VERSION= 1e62670 -GH_ACCOUNT+= anomalizer:aws_auth -GH_PROJECT+= ngx_aws_auth:aws_auth -GH_TAGNAME+= ${NGINX_AWS_AUTH_VERSION}:aws_auth -CONFIGURE_ARGS+=--add-module=${WRKSRC_aws_auth} -.endif - -.if ${PORT_OPTIONS:MCACHE_PURGE} -NGINX_CACHE_PURGE_VERSION= 2.3 -MASTER_SITES+= http://labs.frickle.com/files/:cache_purge -DISTFILES+= ngx_cache_purge-${NGINX_CACHE_PURGE_VERSION}.tar.gz:cache_purge -CONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_cache_purge-${NGINX_CACHE_PURGE_VERSION} -.endif - -.if ${PORT_OPTIONS:MCLOJURE} -CATEGORIES+= java -USE_JAVA= yes -JAVA_OS= native -JAVA_VERSION= 1.8 -JAVA_VENDOR= openjdk -JAVA_BUILD= yes -JAVA_RUN= yes -NGINX_CLOJURE_VERSION= 0.4.5 -GH_ACCOUNT+= nginx-clojure:clojure -GH_PROJECT+= nginx-clojure:clojure -GH_TAGNAME+= v${NGINX_CLOJURE_VERSION}:clojure -CONFIGURE_ENV+= "JNI_INCS=-I${LOCALBASE}/openjdk8/include -I${LOCALBASE}/openjdk8/include/freebsd" -CONFIGURE_ARGS+=--add-module=${WRKSRC_clojure}/src/c -.endif - -.if ${PORT_OPTIONS:MCT} -GIT_CT_VERSION= 1.3.2 -GH_ACCOUNT+= grahamedgecombe:ct -GH_PROJECT+= nginx-ct:ct -GH_TAGNAME+= v${GIT_CT_VERSION}:ct -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_ct} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_ct} -.endif -NGINX_OPENSSL= yes -USE_HTTP_SSL= yes -.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100085 && ${SSL_DEFAULT} == base +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100085 && ${SSL_DEFAULT} == base && ${PORT_OPTIONS:MCT} IGNORE= CT option requires OpenSSL 1.0.2, add DEFAULT_VERSIONS+=ssl=openssl to /etc/make.conf .endif -.endif -.if ${PORT_OPTIONS:MECHO} -NGINX_ECHO_VERSION= 46334b3 -GH_ACCOUNT+= openresty:echo -GH_PROJECT+= echo-nginx-module:echo -GH_TAGNAME+= ${NGINX_ECHO_VERSION}:echo -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_echo} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_echo} -.endif -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_echo_request_info.c -.endif - -.if ${PORT_OPTIONS:MFASTDFS} -NGINX_FASTDFS_VERSION= 85347be -GH_ACCOUNT+= happyfish100:fastdfs -GH_PROJECT+= fastdfs-nginx-module:fastdfs -GH_TAGNAME+= ${NGINX_FASTDFS_VERSION}:fastdfs -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-fastdfs-src-config \ - ${PATCHDIR}/extra-patch-fastdfs-src-mod_fastdfs.conf -BUILD_DEPENDS+= ${LOCALBASE}/include/fastcommon/logger.h:devel/libfastcommon \ - ${LOCALBASE}/include/fastdfs/fdfs_client.h:ftp/fastdfs -LIB_DEPENDS+= libfastcommon.so:devel/libfastcommon \ - libfdfsclient.so:ftp/fastdfs -CONFIGURE_ARGS+=--add-module=${WRKSRC_fastdfs}/src \ - --with-cc-opt="-I ${LOCALBASE}/include/fastdfs \ - -I ${LOCALBASE}/include/fastcommon" -.endif - -.if ${PORT_OPTIONS:MHEADERS_MORE} -NGINX_HEADERS_MORE_VERSION= 55fbdab -GH_ACCOUNT+= openresty:headers_more -GH_PROJECT+= headers-more-nginx-module:headers_more -GH_TAGNAME+= ${NGINX_HEADERS_MORE_VERSION}:headers_more -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_headers_more} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_headers_more} -.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_DAV} || defined(USE_HTTP_DAV) -CONFIGURE_ARGS+=--with-http_dav_module -.endif - -.if ${PORT_OPTIONS:MHTTP_DAV_EXT} -USE_HTTP_DAV= yes -LIB_DEPENDS+= libexpat.so:textproc/expat2 -NGINX_DAV_EXT_VERSION= 0.1.0 -GH_ACCOUNT+= arut:dav_ext -GH_PROJECT+= nginx-dav-ext-module:dav_ext -GH_TAGNAME+= v${NGINX_DAV_EXT_VERSION}:dav_ext -CONFIGURE_ARGS+=--add-module=${WRKSRC_dav_ext} -.endif - -.if ${PORT_OPTIONS:MHTTP_EVAL} -NGINX_EVAL_VERSION= 582bd25 -GH_ACCOUNT+= openresty:eval -GH_PROJECT+= nginx-eval-module:eval -GH_TAGNAME+= ${NGINX_EVAL_VERSION}:eval -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_eval} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_eval} -.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_FANCYINDEX} -NGINX_FANCYINDEX_VERSION= 0.4.2 -GH_ACCOUNT+= aperezdc:fancyindex -GH_PROJECT+= ngx-fancyindex:fancyindex -GH_TAGNAME+= v${NGINX_FANCYINDEX_VERSION}:fancyindex -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_fancyindex} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_fancyindex} -.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_FOOTER} -NGINX_FOOTER_VERSION= 1.2.2 -GH_ACCOUNT+= alibaba:footer -GH_PROJECT+= nginx-http-footer-filter:footer -GH_TAGNAME+= ${NGINX_FOOTER_VERSION}:footer -CONFIGURE_ARGS+=--add-module=${WRKSRC_footer} -.endif - -.if ${PORT_OPTIONS:MHTTP_GEOIP2} -# WWW: https://github.com/leev/ngx_http_geoip2_module -NGINX_HTTP_GEOIP2_VERSION= 2.0 -GH_ACCOUNT+= leev:geoip2 -GH_PROJECT+= ngx_http_geoip2_module:geoip2 -GH_TAGNAME+= ${NGINX_HTTP_GEOIP2_VERSION}:geoip2 -CFLAGS+= "-I${LOCALBASE}/include" -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_geoip2} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_geoip2} -.endif -LIB_DEPENDS+= libmaxminddb.so:net/libmaxminddb -.endif - -.if ${PORT_OPTIONS:MHTTP_FLV} -CONFIGURE_ARGS+=--with-http_flv_module -.endif - -.if ${PORT_OPTIONS:MHTTP_JSON_STATUS} -NGINX_JSON_STATUS_VERSION= 1d2f303 -GH_ACCOUNT+= nginx-modules:json_status -GH_PROJECT+= ngx_http_json_status_module:json_status -GH_TAGNAME+= ${NGINX_JSON_STATUS_VERSION}:json_status -CONFIGURE_ARGS+=--add-module=${WRKSRC_json_status} -.endif - -.if ${PORT_OPTIONS:MHTTP_GEOIP} -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--with-http_geoip_module=dynamic -.else -CONFIGURE_ARGS+=--with-http_geoip_module -.endif -LIB_DEPENDS+= libGeoIP.so:net/GeoIP -.endif - -.if ${PORT_OPTIONS:MHTTP_GZIP_STATIC} -CONFIGURE_ARGS+=--with-http_gzip_static_module -.endif - -.if ${PORT_OPTIONS:MHTTP_GUNZIP_FILTER} -CONFIGURE_ARGS+=--with-http_gunzip_module -.endif - -.if ${PORT_OPTIONS:MHTTP_IMAGE_FILTER} -LIB_DEPENDS+= libgd.so:graphics/gd -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--with-http_image_filter_module=dynamic -.else -CONFIGURE_ARGS+=--with-http_image_filter_module -.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_MP4} -CONFIGURE_ARGS+=--with-http_mp4_module -.endif - -.if ${PORT_OPTIONS:MHTTP_MOGILEFS} -NGINX_MOGILEFS_VERSION= 1.0.4 -MASTER_SITES+= http://www.grid.net.ru/nginx/download/:mogilefs -DISTFILES+= nginx_mogilefs_module-${NGINX_MOGILEFS_VERSION}.tar.gz:mogilefs -CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_mogilefs_module-${NGINX_MOGILEFS_VERSION} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_mogilefs_module.c -.endif - -.if ${PORT_OPTIONS:MHTTP_MP4_H264} -NGINX_H264_VERSION= 2.2.7 -MASTER_SITES+= http://h264.code-shop.com/download/:mp4streaming -DISTFILES+= nginx_mod_h264_streaming-${NGINX_H264_VERSION}.tar.gz:mp4streaming -CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_mod_h264_streaming-${NGINX_H264_VERSION} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_streaming_module.c -.endif - -.if ${PORT_OPTIONS:MHTTP_NOTICE} -GIT_NOTICE_VERSION= 3c95966 -GH_ACCOUNT+= kr:notice -GH_PROJECT+= nginx-notice:notice -GH_TAGNAME+= ${GIT_NOTICE_VERSION}:notice -CONFIGURE_ARGS+=--add-module=${WRKSRC_notice} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_notice_module.c -.endif - -.if ${PORT_OPTIONS:MHTTP_PERL} -CATEGORIES+= perl5 -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--with-http_perl_module=dynamic -.else -CONFIGURE_ARGS+=--with-http_perl_module -.endif -USES+= perl5 -.endif - -.if ${PORT_OPTIONS:MHTTP_PUSH} -GIT_PUSH_VERSION= 1.1.14 -GH_ACCOUNT+= slact:push -GH_PROJECT+= nchan:push -GH_TAGNAME+= v${GIT_PUSH_VERSION}:push -CONFIGURE_ARGS+=--add-module=${WRKSRC_push} -.endif - -.if ${PORT_OPTIONS:MHTTP_PUSH_STREAM} -NGINX_PUSH_STREAM_VERSION= 0.5.4 -GH_ACCOUNT+= wandenberg:pushstream -GH_PROJECT+= nginx-push-stream-module:pushstream -GH_TAGNAME+= ${NGINX_PUSH_STREAM_VERSION}:pushstream -CONFIGURE_ARGS+=--add-module=${WRKSRC_pushstream} -.endif - -.if ${PORT_OPTIONS:MHTTP_RANDOM_INDEX} -CONFIGURE_ARGS+=--with-http_random_index_module -.endif - -.if ${PORT_OPTIONS:MHTTP_REALIP} -CONFIGURE_ARGS+=--with-http_realip_module -.endif - -.if ${PORT_OPTIONS:MHTTP_REDIS} -NGINX_REDIS_VERSION= 0.3.8 -MASTER_SITES+= LOCAL/osa:redis -DISTFILES+= ngx_http_redis-${NGINX_REDIS_VERSION}.tar.gz:redis -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKDIR}/ngx_http_redis-${NGINX_REDIS_VERSION} -.else -CONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_redis-${NGINX_REDIS_VERSION} -.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_RESPONSE} -NGINX_RESPONSE_VERSION= 0.3 -MASTER_SITES+= http://catap.ru/downloads/nginx/:response -DISTFILES+= ngx_http_response-${NGINX_RESPONSE_VERSION}.tar.gz:response -CONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_response-${NGINX_RESPONSE_VERSION} -.endif - -.if ${PORT_OPTIONS:MHTTP_SUBS_FILTER} -NGINX_HTTP_SUBS_FILTER_VERSION= 0.6.4 -GH_ACCOUNT+= yaoweibin:subs_filter -GH_PROJECT+= ngx_http_substitutions_filter_module:subs_filter -GH_TAGNAME+= v${NGINX_HTTP_SUBS_FILTER_VERSION}:subs_filter -CONFIGURE_ARGS+=--add-module=${WRKSRC_subs_filter} -.endif - -.if ${PORT_OPTIONS:MHTTP_TARANTOOL} -LIB_DEPENDS+= libmsgpuck.so:devel/msgpuck \ - libyajl.so:devel/yajl -GH_ACCOUNT+= tarantool:nginx_tarantool -GH_PROJECT+= nginx_upstream_module:nginx_tarantool -GH_TAGNAME+= 1278ee5:nginx_tarantool -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_nginx_tarantool} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_nginx_tarantool} -.endif -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_tarantool-config \ - ${PATCHDIR}/extra-patch-ngx_http_tarantool-src-tp_transcode.c -.endif - -.if ${PORT_OPTIONS:MHTTP_SECURE_LINK} -CONFIGURE_ARGS+=--with-http_secure_link_module -.endif - -.if ${PORT_OPTIONS:MHTTP_SLICE} -CONFIGURE_ARGS+=--with-http_slice_module -.endif - -.if ${PORT_OPTIONS:MHTTP_STATUS} -CONFIGURE_ARGS+=--with-http_stub_status_module -.endif - -.if ${PORT_OPTIONS:MHTTP_SUB} -CONFIGURE_ARGS+=--with-http_sub_module -.endif - -.if ${PORT_OPTIONS:MHTTP_UPLOAD} -GIT_UPLOAD_VERSION= 72ec037 -GH_ACCOUNT+= Austinb:upload -GH_PROJECT+= nginx-upload-module:upload -GH_TAGNAME+= ${GIT_UPLOAD_VERSION}:upload -CONFIGURE_ARGS+=--add-module=${WRKSRC_upload} -.endif - -.if ${PORT_OPTIONS:MHTTP_UPLOAD_PROGRESS} -NGINX_UPLOADPROGRESS_VERSION= afb2d31 -GH_ACCOUNT+= masterzen:uploadprogress -GH_PROJECT+= nginx-upload-progress-module:uploadprogress -GH_TAGNAME+= ${NGINX_UPLOADPROGRESS_VERSION}:uploadprogress -CONFIGURE_ARGS+=--add-module=${WRKSRC_uploadprogress} -.endif - -.if ${PORT_OPTIONS:MHTTP_UPSTREAM_CHECK} -# WWW: https://github.com/yaoweibin/nginx_upstream_check_module -NGINX_UPSTREAM_CHECK_VERSION= 9aecf15 -GH_ACCOUNT+= yaoweibin:upstreamcheck -GH_PROJECT+= nginx_upstream_check_module:upstreamcheck -GH_TAGNAME+= ${NGINX_UPSTREAM_CHECK_VERSION}:upstreamcheck -CONFIGURE_ARGS+=--add-module=${WRKSRC_upstreamcheck} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c \ - ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c \ - ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c \ - ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.c \ - ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.h -.endif - -.if ${PORT_OPTIONS:MHTTP_UPSTREAM_FAIR} -NGINX_UPSTREAM_FAIR_VERSION= b5be36f -GH_ACCOUNT+= cryptofuture:upstreamfair -GH_PROJECT+= nginx-upstream-fair:upstreamfair -GH_TAGNAME+= ${NGINX_UPSTREAM_FAIR_VERSION}:upstreamfair -CONFIGURE_ARGS+=--add-module=${WRKSRC_upstreamfair} -#.if ${PORT_OPTIONS:MHTTP_UPSTREAM_CHECK} -#EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_upstream_fair_module.c -#.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_UPSTREAM_STICKY} -USE_HTTP_SSL= yes -NGINX_UPSTREAM_STICKY_VERSION= 08a395c66e42 -MASTER_SITES+= https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/:upstreamsticky -DISTFILES+= ${NGINX_UPSTREAM_STICKY_VERSION}.tar.gz:upstreamsticky -CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx-goodies-nginx-sticky-module-ng-${NGINX_UPSTREAM_STICKY_VERSION}/ -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_sticky_misc.c -.endif - -.if ${PORT_OPTIONS:MHTTP_VIDEO_THUMBEXTRACTOR} -NGINX_VIDEO_THUMBEXTRACTOR_VERSION= 0.9.0 -LIB_DEPENDS+= libavformat.so:multimedia/ffmpeg \ - libavcodec.so:multimedia/ffmpeg \ - libavutil.so:multimedia/ffmpeg \ - libswscale.so:multimedia/ffmpeg -USES+= jpeg -GH_ACCOUNT+= wandenberg:vte -GH_PROJECT+= nginx-video-thumbextractor-module:vte -GH_TAGNAME+= ${NGINX_VIDEO_THUMBEXTRACTOR_VERSION}:vte -CONFIGURE_ARGS+=--add-module=${WRKSRC_vte} -.endif - -.if ${PORT_OPTIONS:MHTTP_XSLT} -USE_GNOME+= libxml2 libxslt -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--with-http_xslt_module=dynamic -.else -CONFIGURE_ARGS+=--with-http_xslt_module -.endif -.endif - -.if ${PORT_OPTIONS:MHTTP_ZIP} -NGINX_ZIP_VERSION= 74ef235 -GH_ACCOUNT+= anthonyryan1:mod_zip -GH_PROJECT+= mod_zip:mod_zip -GH_TAGNAME+= ${NGINX_ZIP_VERSION}:mod_zip -CONFIGURE_ARGS+=--add-module=${WRKDIR}/mod_zip-${NGINX_ZIP_VERSION} -.endif - -.if ${PORT_OPTIONS:MDRIZZLE} -LIB_DEPENDS+= libdrizzle.so:databases/libdrizzle -CONFIGURE_ENV+= "LIBDRIZZLE_INC=${LOCALBASE}/include" -CONFIGURE_ENV+= "LIBDRIZZLE_LIB=${LOCALBASE}/lib" -NGINX_DRIZZLE_VERSION= 0.1.9 -GH_ACCOUNT+= openresty:drizzle -GH_PROJECT+= drizzle-nginx-module:drizzle -GH_TAGNAME+= v${NGINX_DRIZZLE_VERSION}:drizzle -CONFIGURE_ARGS+=--add-module=${WRKSRC_drizzle} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-openresty-drizzle-nginx-module-config \ - ${PATCHDIR}/extra-patch-ngx_http_drizzle_upstream.c -.endif - -.if ${PORT_OPTIONS:MDYNAMIC_UPSTREAM} -NGINX_DYNAMIC_UPSTREAM_VERSION= 0.1.3 -GH_ACCOUNT+= cubicdaiya:dyn_upstream -GH_PROJECT+= ngx_dynamic_upstream:dyn_upstream -GH_TAGNAME+= v${NGINX_DYNAMIC_UPSTREAM_VERSION}:dyn_upstream -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_dyn_upstream} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_dyn_upstream} -.endif -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_inet_slab.c -.endif - -.if ${PORT_OPTIONS:MARRAYVAR} || ${PORT_OPTIONS:MENCRYPTSESSION} || ${PORT_OPTIONS:MFORMINPUT} || ${PORT_OPTIONS:MICONV} || ${PORT_OPTIONS:MLUA} || ${PORT_OPTIONS:MSET_MISC} -NGINX_DEVEL_KIT_VERSION= 0.3.0 -GH_ACCOUNT+= simpl:devel_kit -GH_PROJECT+= ngx_devel_kit:devel_kit -GH_TAGNAME+= v${NGINX_DEVEL_KIT_VERSION}:devel_kit -CONFIGURE_ARGS+=--add-module=${WRKSRC_devel_kit} -.endif - -.if ${PORT_OPTIONS:MENCRYPTSESSION} -NGINX_ENCRYPTSESSION_VERSION= 0.07 -GH_ACCOUNT+= openresty:encryptsession -GH_PROJECT+= encrypted-session-nginx-module:encryptsession -GH_TAGNAME+= v${NGINX_ENCRYPTSESSION_VERSION}:encryptsession -CONFIGURE_ARGS+=--add-module=${WRKSRC_encryptsession} -.endif - -.if ${PORT_OPTIONS:MGRIDFS} -NGINX_GRIDFS_VERSION= 0.8 -MONGO_C_DRIVER_VERSION= 0.3.1 -GH_ACCOUNT+= mdirolf:gridfs mongodb:mongo_c -GH_PROJECT+= nginx-gridfs:gridfs mongo-c-driver:mongo_c -GH_TAGNAME+= v${NGINX_GRIDFS_VERSION}:gridfs v${MONGO_C_DRIVER_VERSION}:mongo_c -CONFIGURE_ARGS+=--add-module=${WRKSRC_gridfs} -.endif - -.if ${PORT_OPTIONS:MLET} -NGINX_LET_VERSION= 0.0.4 -GH_ACCOUNT+= arut:let -GH_PROJECT+= nginx-let-module:let -GH_TAGNAME+= v${NGINX_LET_VERSION}:let -CONFIGURE_ARGS+=--add-module=${WRKSRC_let} -.endif - -.if ${PORT_OPTIONS:MLUA} -LIB_DEPENDS+= libluajit-5.1.so:lang/luajit -CONFIGURE_ENV+= "LUAJIT_INC=${LOCALBASE}/include/luajit-2.0" -CONFIGURE_ENV+= "LUAJIT_LIB=${LOCALBASE}/lib" -NGINX_LUA_VERSION= 0.10.11 -GH_ACCOUNT+= openresty:lua -GH_PROJECT+= lua-nginx-module:lua -GH_TAGNAME+= v${NGINX_LUA_VERSION}:lua -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_lua} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_lua} -.endif -.endif - -.if ${PORT_OPTIONS:MMEMC} -NGINX_MEMC_VERSION= 0.18 -GH_ACCOUNT+= openresty:memc -GH_PROJECT+= memc-nginx-module:memc -GH_TAGNAME+= v${NGINX_MEMC_VERSION}:memc -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_memc} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_memc} -.endif -.endif - -.if ${PORT_OPTIONS:MMODSECURITY} -NGINX_MODSECURITY_VERSION= 2.9.1 -LIB_DEPENDS+= libapr-1.so:devel/apr1 \ - libcurl.so:ftp/curl \ - libluajit-5.1.so:lang/luajit \ - libpcre.so:devel/pcre \ - libyajl.so:devel/yajl -USE_GNOME+= libxml2 -USES+= apache:2.2+ pkgconfig shebangfix -MASTER_SITES+= http://www.modsecurity.org/tarball/${NGINX_MODSECURITY_VERSION:S/RC/rc/}/:modsecurity -DISTFILES+= modsecurity-${NGINX_MODSECURITY_VERSION}.tar.gz:modsecurity -CONFIGURE_ARGS+=--add-module=${WRKDIR}/modsecurity-${NGINX_MODSECURITY_VERSION}/nginx/modsecurity -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-nginx-modsecurity-configure \ - ${PATCHDIR}/extra-patch-ngx_http_modsecurity.c -.endif - -.if ${PORT_OPTIONS:MMODSECURITY3} -LIB_DEPENDS+= libmodsecurity.so:www/mod_security3 -GH_TUPLE+= SpiderLabs:ModSecurity-nginx:c0ae166:modsec -CONFIGURE_ARGS+=--add-module=${WRKSRC_modsec} -.endif - -.if ${PORT_OPTIONS:MNAXSI} -NGINX_NAXSI_VERSION= 0.55.3 -GH_ACCOUNT+= nbs-system:naxsi -GH_PROJECT+= naxsi:naxsi -GH_TAGNAME+= ${NGINX_NAXSI_VERSION}:naxsi -CONFIGURE_ARGS+=--add-module=${WRKDIR}/naxsi-${NGINX_NAXSI_VERSION}/naxsi_src -.endif - .if ${PORT_OPTIONS:MHTTP_REWRITE} || defined(USE_HTTP_REWRITE) -LIB_DEPENDS+= libpcre.so:devel/pcre -CONFIGURE_ARGS+=--with-pcre -.else PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-nopcre -CONFIGURE_ARGS+=--without-http_rewrite_module \ - --without-pcre .endif -.if ${PORT_OPTIONS:MPASSENGER} -PASSENGER_VERSION= 5.2.1 -MASTER_SITES+= http://s3.amazonaws.com/phusion-passenger/releases/:passenger -DISTFILES+= passenger-${PASSENGER_VERSION}.tar.gz:passenger -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKDIR}/passenger-${PASSENGER_VERSION}/src/nginx_module -.else -CONFIGURE_ARGS+=--add-module=${WRKDIR}/passenger-${PASSENGER_VERSION}/src/nginx_module -.endif -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-passenger-build-nginx.rb -.if empty(PORT_OPTIONS:MDEBUG) +.if ${PORT_OPTIONS:MPASSENGER} && empty(PORT_OPTIONS:MDEBUG) CONFIGURE_ENV+= OPTIMIZE="yes" CFLAGS+= -DNDEBUG .endif -.endif -.if ${PORT_OPTIONS:MPOSTGRES} -USES+= pgsql -NGINX_POSTGRES_VERSION= 1.0rc7 -GH_ACCOUNT+= FRiCKLE:postgres -GH_PROJECT+= ngx_postgres:postgres -GH_TAGNAME+= ${NGINX_POSTGRES_VERSION}:postgres -CONFIGURE_ARGS+=--add-module=${WRKSRC_postgres} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_postgres-config \ - ${PATCHDIR}/extra-patch-ngx_postgres_module.c -.endif - -.if ${PORT_OPTIONS:MRDS_CSV} -NGINX_RDS_CSV_VERSION= 0.08 -GH_ACCOUNT+= openresty:rdscsv -GH_PROJECT+= rds-csv-nginx-module:rdscsv -GH_TAGNAME+= v${NGINX_RDS_CSV_VERSION}:rdscsv -CONFIGURE_ARGS+=--add-module=${WRKSRC_rdscsv} -.endif - -.if ${PORT_OPTIONS:MRDS_JSON} -NGINX_RDS_JSON_VERSION= 0.14 -GH_ACCOUNT+= openresty:rdsjson -GH_PROJECT+= rds-json-nginx-module:rdsjson -GH_TAGNAME+= v${NGINX_RDS_JSON_VERSION}:rdsjson -CONFIGURE_ARGS+=--add-module=${WRKSRC_rdsjson} -.endif - -.if ${PORT_OPTIONS:MREDIS2} -NGINX_REDIS2_VERSION= 0.14 -GH_ACCOUNT+= openresty:redis2 -GH_PROJECT+= redis2-nginx-module:redis2 -GH_TAGNAME+= v${NGINX_REDIS2_VERSION}:redis2 -CONFIGURE_ARGS+=--add-module=${WRKSRC_redis2} -.endif - -.if ${PORT_OPTIONS:MRTMP} -NGINX_RTMP_VERSION= 1.2.1 -GH_ACCOUNT+= arut:rtmp -GH_PROJECT+= nginx-rtmp-module:rtmp -GH_TAGNAME+= v${NGINX_RTMP_VERSION}:rtmp -CONFIGURE_ARGS+=--add-module=${WRKSRC_rtmp} -.endif - -.if ${PORT_OPTIONS:MSET_MISC} -NGINX_SET_MISC_VERSION= cda7e50 -GH_ACCOUNT+= openresty:setmisc -GH_PROJECT+= set-misc-nginx-module:setmisc -GH_TAGNAME+= ${NGINX_SET_MISC_VERSION}:setmisc -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_setmisc} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_setmisc} -.endif -.endif - -.if ${PORT_OPTIONS:MSFLOW} -NGINX_SFLOW_VERSION= 543c72a -GH_ACCOUNT+= sflow:sflow -GH_PROJECT+= nginx-sflow-module:sflow -GH_TAGNAME+= ${NGINX_SFLOW_VERSION}:sflow -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_sflow_config.c \ - ${PATCHDIR}/extra-patch-ngx_http_sflow_config.h \ - ${PATCHDIR}/extra-patch-ngx_http_sflow_module.c -.endif - -.if ${PORT_OPTIONS:MSHIBBOLETH} -GIT_SHIBBOLETH_VERSION= f07bf3c -GH_ACCOUNT+= nginx-shib:shib -GH_PROJECT+= nginx-http-shibboleth:shib -GH_TAGNAME+= ${GIT_SHIBBOLETH_VERSION}:shib -CONFIGURE_ARGS+=--add-module=${WRKSRC_shib} -.endif - -.if ${PORT_OPTIONS:MSLOWFS_CACHE} -NGINX_SLOWFS_CACHE_VERSION= 1.10 -MASTER_SITES+= http://labs.frickle.com/files/:slowfs_cache -DISTFILES+= ngx_slowfs_cache-${NGINX_SLOWFS_CACHE_VERSION}.tar.gz:slowfs_cache -CONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_slowfs_cache-${NGINX_SLOWFS_CACHE_VERSION} -.endif - -.if ${PORT_OPTIONS:MSMALL_LIGHT} -NGINX_SMALL_LIGHT_VERSION= 0.9.2 -LIB_DEPENDS+= ${IMAGEMAGICK_LIB_DEPENDS} \ - libpcre.so:devel/pcre -GH_ACCOUNT+= cubicdaiya:small_light -GH_PROJECT+= ngx_small_light:small_light -GH_TAGNAME+= v${NGINX_SMALL_LIGHT_VERSION}:small_light -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_small_light} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_small_light} -.endif -.endif - -.if ${PORT_OPTIONS:MSRCACHE} -NGINX_SRCACHE_VERSION= 0.31 -GH_ACCOUNT+= openresty:srcache -GH_PROJECT+= srcache-nginx-module:srcache -GH_TAGNAME+= v${NGINX_SRCACHE_VERSION}:srcache -CONFIGURE_ARGS+=--add-module=${WRKSRC_srcache} -.endif - -.if ${PORT_OPTIONS:MXSS} -NGINX_XSS_VERSION= 0.05 -GH_ACCOUNT+= openresty:xss -GH_PROJECT+= xss-nginx-module:xss -GH_TAGNAME+= v${NGINX_XSS_VERSION}:xss -CONFIGURE_ARGS+=--add-module=${WRKSRC_xss} -.endif - -.if ${PORT_OPTIONS:MHTTPV2} -NGINX_OPENSSL= yes -USE_HTTP_SSL= yes -CONFIGURE_ARGS+=--with-http_v2_module -.endif - -.if ${PORT_OPTIONS:MNJS} -GH_ACCOUNT+= nginx:njs -GH_PROJECT+= njs:njs -GH_TAGNAME+= 4ed8a0b:njs -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_njs}/nginx -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_njs}/nginx -.endif -.endif - -.if ${PORT_OPTIONS:MSTREAM} -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--with-stream=dynamic -.else -CONFIGURE_ARGS+=--with-stream -.endif -.if ${PORT_OPTIONS:MSTREAM_SSL} -NGINX_OPENSSL= yes -USE_HTTP_SSL= yes -CONFIGURE_ARGS+=--with-stream_ssl_module -.if ${PORT_OPTIONS:MSTREAM_SSL_PREREAD} -CONFIGURE_ARGS+=--with-stream_ssl_preread_module -.endif -.endif -.endif - -.if ${PORT_OPTIONS:MTHREADS} -CONFIGURE_ARGS+=--with-threads -.endif - -.if ${PORT_OPTIONS:MWWW} -PLIST_SUB+= WWWDATA="" -.else -PLIST_SUB+= WWWDATA="@comment " -.endif - -.else -CONFIGURE_ARGS+=--without-http -PLIST_SUB+= WWWDATA="@comment " -.endif # WITH_HTTP - -.if ${PORT_OPTIONS:MMAIL} -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--with-mail=dynamic -.else -CONFIGURE_ARGS+=--with-mail -.endif -.if empty(PORT_OPTIONS:MMAIL_IMAP) -CONFIGURE_ARGS+=--without-mail_imap_module -.endif -.if empty(PORT_OPTIONS:MMAIL_POP3) -CONFIGURE_ARGS+=--without-mail_pop3_module -.endif -.if empty(PORT_OPTIONS:MMAIL_SMTP) -CONFIGURE_ARGS+=--without-mail_smtp_module -.endif -.if ${PORT_OPTIONS:MMAIL_SSL} -NGINX_OPENSSL= yes -CONFIGURE_ARGS+=--with-mail_ssl_module -.endif -.endif # WITH_MAIL - -.if ${PORT_OPTIONS:MHTTP_SSL} || defined(USE_HTTP_SSL) -NGINX_OPENSSL= yes -CONFIGURE_ARGS+=--with-http_ssl_module -.endif - -.if ${PORT_OPTIONS:MARRAYVAR} -NGINX_ARRAYVAR_VERSION= 0.05 -GH_ACCOUNT+= openresty:arrayvar -GH_PROJECT+= array-var-nginx-module:arrayvar -GH_TAGNAME+= v${NGINX_ARRAYVAR_VERSION}:arrayvar -CONFIGURE_ARGS+=--add-module=${WRKSRC_arrayvar} -.endif - -.if ${PORT_OPTIONS:MBROTLI} -NGINX_BROTLI_VERSION= 8cd9dd5 -LIB_DEPENDS+= libbrotlicommon.so:archivers/brotli -GH_ACCOUNT+= eustas:brotli -GH_PROJECT+= ngx_brotli:brotli -GH_TAGNAME+= ${NGINX_BROTLI_VERSION}:brotli -.if ${PORT_OPTIONS:MDSO} -CONFIGURE_ARGS+=--add-dynamic-module=${WRKSRC_brotli} -.else -CONFIGURE_ARGS+=--add-module=${WRKSRC_brotli} -.endif -.endif - -.if ${PORT_OPTIONS:MFORMINPUT} -NGINX_FORMINPUT_VERSION= 0.12 -GH_ACCOUNT+= calio:forminput -GH_PROJECT+= form-input-nginx-module:forminput -GH_TAGNAME+= v${NGINX_FORMINPUT_VERSION}:forminput -CONFIGURE_ARGS+=--add-module=${WRKSRC_forminput} -.endif - -.if ${PORT_OPTIONS:MICONV} -USES+= iconv -NGINX_ICONV_VERSION= 0.14 -GH_ACCOUNT+= calio:iconv -GH_PROJECT+= iconv-nginx-module:iconv -GH_TAGNAME+= v${NGINX_ICONV_VERSION}:iconv -CONFIGURE_ARGS+=--add-module=${WRKSRC_iconv} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-calio-iconv-nginx-module-config -.endif - -PLIST_SUB+= NGINX_TMPDIR=${NGINX_TMPDIR} NGINX_LOGDIR=${NGINX_LOGDIR} WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} - -USERS?= ${WWWOWN} -GROUPS?=${WWWGRP} - -.if defined(NGINX_OPENSSL) -USES+= ssl -.endif - pre-everything:: @${ECHO_MSG} .if ${PORT_OPTIONS:MHTTP_UPSTREAM_FAIR} @@ -1184,49 +224,55 @@ .endif @${ECHO_MSG} -post-extract: -.if ${PORT_OPTIONS:MGRIDFS} +post-extract-GRIDFS-on: @${RMDIR} ${WRKSRC_gridfs}/mongo-c-driver/ @${MV} ${WRKSRC_mongo_c} ${WRKSRC_gridfs}/mongo-c-driver -.endif post-patch: @${REINPLACE_CMD} 's!%%HTTP_PORT%%!${HTTP_PORT}!; \ s!%%PREFIX%%!${PREFIX}!; \ s!%%NGINX_ERRORLOG%%!${NGINX_ERRORLOG}!' \ ${WRKSRC}/conf/nginx.conf -.if ${PORT_OPTIONS:MHTTP_AUTH_KRB5} + +post-patch-BROTLI-on: + @${REINPLACE_CMD} -E 's!^brotli=.*!brotli="${LOCALBASE}"!' ${WRKSRC_brotli}/config + +post-patch-DRIZZLE-on: + @${REINPLACE_CMD} 's!%%PREFIX%%!${LOCALBASE}!g' ${WRKSRC_drizzle}/config + +post-patch-FASTDFS-on: @${REINPLACE_CMD} \ - 's!%%GSSAPILIBS%%!${GSSAPILIBS}!' \ - ${WRKSRC_auth_krb5}/config -.endif + 's!%%PREFIX%%!${PREFIX}!g;s!%%LOCALBASE%%!${LOCALBASE}!g' \ + ${WRKSRC_fastdfs}/src/config + +# Respect CFLAGS by remove needless --std=c99 flag +post-patch-GRIDFS-on: + @${REINPLACE_CMD} 's!--std=c99!-DMONGO_HAVE_STDINT!' ${WRKSRC_gridfs}/config + +post-patch-HTTP_AUTH_KRB5-on: + @${REINPLACE_CMD} 's!%%GSSAPILIBS%%!${GSSAPILIBS}!' ${WRKSRC_auth_krb5}/config + +post-patch-HTTP_TARANTOOL-on: + @${REINPLACE_CMD} 's!%%PREFIX%%!${LOCALBASE}!g' ${WRKSRC_nginx_tarantool}/config + # linker error acquire if --std=c99 defined, add "static" to inline function -.if ${PORT_OPTIONS:MHTTP_ZIP} +post-patch-HTTP_ZIP-on: @${REINPLACE_CMD} \ 's!^inline!static inline!' \ - ${WRKDIR}/mod_zip-${NGINX_ZIP_VERSION}/ngx_http_zip_parsers.* -.endif -.if ${PORT_OPTIONS:MDRIZZLE} + ${WRKSRC_mod_zip}/ngx_http_zip_parsers.* + +post-patch-ICONV-on: + @${REINPLACE_CMD} 's!%%PREFIX%%!${LOCALBASE}!g' ${WRKSRC_iconv}/config + +post-patch-MODSECURITY-on: @${REINPLACE_CMD} \ 's!%%PREFIX%%!${LOCALBASE}!g' \ - ${WRKSRC_drizzle}/config -.endif -.if ${PORT_OPTIONS:MFASTDFS} + ${WRKSRC_MODSECURITY}/configure + +post-patch-PASSENGER-on: @${REINPLACE_CMD} \ - 's!%%PREFIX%%!${PREFIX}!g; \ - s!%%LOCALBASE%%!${LOCALBASE}!g' \ - ${WRKSRC_fastdfs}/src/config -.endif -# Respect CFLAGS by remove needless --std=c99 flag -.if ${PORT_OPTIONS:MGRIDFS} - @${REINPLACE_CMD} \ - 's!--std=c99!-DMONGO_HAVE_STDINT!' \ - ${WRKSRC_gridfs}/config -.endif -.if ${PORT_OPTIONS:MPASSENGER} - @${REINPLACE_CMD} \ '177,179s!true!false!' \ - ${WRKDIR}/passenger-${PASSENGER_VERSION}/build/basics.rb + ${WRKSRC_PASSENGER}/build/basics.rb @${REINPLACE_CMD} \ 's!-I/usr/include/libev!!; \ s!-lev!!; \ @@ -1234,59 +280,31 @@ s!-I/usr/include/libeio!!; \ s!-leio!!; \ s!-Iext/libeio!!' \ - ${WRKDIR}/passenger-${PASSENGER_VERSION}/build/common_library.rb -.endif -.if ${PORT_OPTIONS:MPOSTGRES} + ${WRKSRC_PASSENGER}/build/common_library.rb + +post-patch-POSTGRES-on: + @${REINPLACE_CMD} 's!%%PREFIX%%!${LOCALBASE}!g' ${WRKSRC_postgres}/config + +post-patch-SFLOW-on: @${REINPLACE_CMD} \ 's!%%PREFIX%%!${LOCALBASE}!g' \ - ${WRKSRC_postgres}/config -.endif -.if ${PORT_OPTIONS:MSFLOW} - @${REINPLACE_CMD} \ - 's!%%PREFIX%%!${LOCALBASE}!g' \ - ${WRKDIR}/nginx-sflow-module-${NGINX_SFLOW_VERSION}/ngx_http_sflow_config.h -.endif -.if ${PORT_OPTIONS:MICONV} - @${REINPLACE_CMD} \ - 's!%%PREFIX%%!${LOCALBASE}!g' \ - ${WRKSRC_iconv}/config -.endif -.if ${PORT_OPTIONS:MMODSECURITY} - @${REINPLACE_CMD} \ - 's!%%PREFIX%%!${LOCALBASE}!g' \ - ${WRKDIR}/modsecurity-${NGINX_MODSECURITY_VERSION}/configure -.endif -.if ${PORT_OPTIONS:MHTTP_TARANTOOL} - @${REINPLACE_CMD} \ - 's!%%PREFIX%%!${LOCALBASE}!g' \ - ${WRKSRC_nginx_tarantool}/config -.endif -.if ${PORT_OPTIONS:MBROTLI} - @${REINPLACE_CMD} -E \ - 's!^brotli=.*!brotli="${LOCALBASE}"!' \ - ${WRKSRC_brotli}/config -.endif + ${WRKSRC_sflow}/ngx_http_sflow_config.h -pre-configure: -.if ${PORT_OPTIONS:MMODSECURITY} - ( cd ${WRKDIR}/modsecurity-${NGINX_MODSECURITY_VERSION} && \ +pre-configure-MODSECURITY-on: + ( cd ${WRKSRC_MODSECURITY} && \ CC="${CC}" ${CONFIGURE_CMD} --enable-standalone-module \ --with-pcre=${LOCALBASE} --with-yajl=${LOCALBASE} \ --with-curl=${LOCALBASE} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ) -.endif -.if ${PORT_OPTIONS:MSMALL_LIGHT} + +pre-configure-SMALL_LIGHT-on: ( cd ${WRKSRC_small_light} && ./setup ) -.endif do-build: @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} do-install: ${MKDIR} ${STAGEDIR}${ETCDIR} -.if ${PORT_OPTIONS:MDSO} - ${MKDIR} ${STAGEDIR}${MODULESDIR} -.endif ${MKDIR} ${STAGEDIR}${NGINX_TMPDIR} ${MKDIR} ${STAGEDIR}${NGINX_LOGDIR} ${INSTALL_PROGRAM} ${WRKSRC}/objs/nginx ${STAGEDIR}${PREFIX}/sbin @@ -1304,54 +322,36 @@ ${ECHO_CMD} "" >>${STAGEDIR}${PREFIX}/www/nginx-dist/EXAMPLE_DIRECTORY-DONT_ADD_OR_TOUCH_ANYTHING .endif -.if ${PORT_OPTIONS:MHTTP} && ${PORT_OPTIONS:MHTTP_PERL} +do-install-HTTP_PERL-on: ${MKDIR} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/nginx ${INSTALL_PROGRAM} ${WRKSRC}/objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.so \ ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/nginx ${INSTALL_DATA} ${WRKSRC}/objs/src/http/modules/perl/blib/lib/nginx.pm \ ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/ -.endif -.if ${PORT_OPTIONS:MFASTDFS} - ${MKDIR} ${STAGEDIR}${PREFIX}/etc/fdfs - ${INSTALL_DATA} ${WRKSRC_fastdfs}/src/mod_fastdfs.conf ${STAGEDIR}${PREFIX}/etc/fdfs/mod_fastdfs.conf.sample -.endif - # Install dynamic modules -.if ${PORT_OPTIONS:MDSO} +do-install-DSO-on: + ${MKDIR} ${STAGEDIR}${MODULESDIR} (cd ${WRKSRC}/objs/ && ${FIND} . -name '*.so' -maxdepth 1 -type f \ -exec ${INSTALL_PROGRAM} {} ${STAGEDIR}${MODULESDIR} \;) -.endif -.if ${PORT_OPTIONS:MNAXSI} +do-install-FASTDFS-on: + ${MKDIR} ${STAGEDIR}${PREFIX}/etc/fdfs + ${INSTALL_DATA} ${WRKSRC_fastdfs}/src/mod_fastdfs.conf ${STAGEDIR}${PREFIX}/etc/fdfs/mod_fastdfs.conf.sample + +do-install-NAXSI-on: ${INSTALL_DATA} \ - ${WRKDIR}/naxsi-${NGINX_NAXSI_VERSION}/naxsi_config/naxsi_core.rules \ + ${WRKDIR}/naxsi-${NAXSI_NGINX_VER}/naxsi_config/naxsi_core.rules \ ${STAGEDIR}${ETCDIR} -.endif post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/share/vim/vimfiles cd ${WRKSRC}/contrib/vim && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/share/vim/vimfiles -.if ${PORT_OPTIONS:MHTTP} && ${PORT_OPTIONS:MHTTP_PERL} - ${ECHO_CMD} ${SITE_ARCH_REL}/auto/nginx/nginx.so >> ${TMPPLIST} - ${ECHO_CMD} ${SITE_ARCH_REL}/nginx.pm >> ${TMPPLIST} -.endif ${INSTALL_MAN} ${WRKSRC}/objs/nginx.8 ${STAGEDIR}${MAN8PREFIX}/man/man8 + ${CAT} ${WRKSRC}/conf/nginx.conf >> ${STAGEDIR}${ETCDIR}/nginx.conf-dist -.if ${PORT_OPTIONS:MNAXSI} - ${ECHO_CMD} etc/nginx/naxsi_core.rules >> ${TMPPLIST} -.endif - -.if ${PORT_OPTIONS:MFASTDFS} - ${ECHO_CMD} @sample etc/fdfs/mod_fastdfs.conf.sample >> ${TMPPLIST} -.endif - -# Add dynamic modules to the plist -.if ${PORT_OPTIONS:MDSO} +post-install-DSO-on: (cd ${STAGEDIR}${PREFIX} && ${FIND} ${MODULESDIR:S|${PREFIX}/||} \ ! -type d >>${TMPPLIST}) -.endif - ${CAT} ${WRKSRC}/conf/nginx.conf \ - >>${STAGEDIR}${ETCDIR}/nginx.conf-dist -.include +.include Index: head/www/nginx/Makefile.extmod =================================================================== --- head/www/nginx/Makefile.extmod +++ head/www/nginx/Makefile.extmod @@ -0,0 +1,291 @@ +# $FreeBSD$ + +### External modules +AJP_GH_TUPLE= yaoweibin:nginx_ajp_module:bf6cd93:ajp +AJP_CONFIGURE_ON= --add-module=${WRKSRC_ajp} + +ARRAYVAR_IMPLIES= DEVEL_KIT +ARRAYVAR_GH_TUPLE= openresty:array-var-nginx-module:v0.05:arrayvar +ARRAYVAR_VARS= DSO_EXTMODS+=arrayvar + +AWS_AUTH_GH_TUPLE= anomalizer:ngx_aws_auth:1e62670:aws_auth +AWS_AUTH_VARS= DSO_EXTMODS+=aws_auth + +BROTLI_LIB_DEPENDS= libbrotlicommon.so:archivers/brotli +BROTLI_GH_TUPLE= eustas:ngx_brotli:8cd9dd5:brotli +BROTLI_VARS= DSO_EXTMODS+=brotli + +CACHE_PURGE_MASTER_SITES= http://labs.frickle.com/files/:cache_purge +CACHE_PURGE_DISTFILES= ngx_cache_purge-2.3.tar.gz:cache_purge +CACHE_PURGE_CONFIGURE_ON= --add-module=${WRKDIR}/ngx_cache_purge-2.3 + +CLOJURE_CATEGORIES+= java +CLOJURE_USE= JAVA=yes JAVA_OS=native JAVA_VERSION=1.8 \ + JAVA_VENDOR=openjdk JAVA_BUILD=yes JAVA_RUN=yes +CLOJURE_GH_TUPLE= nginx-clojure:nginx-clojure:v0.4.5:clojure +CLOJURE_CONFIGURE_ENV= "JNI_INCS=-I${LOCALBASE}/openjdk8/include -I${LOCALBASE}/openjdk8/include/freebsd" +CLOJURE_VARS= DSO_EXTMODS+=clojure CLOJURE_SUBDIR=/src/c + +CT_IMPLIES= HTTP_SSL +CT_GH_TUPLE= grahamedgecombe:nginx-ct:v1.3.2:ct +CT_VARS= DSO_EXTMODS+=ct + +ECHO_GH_TUPLE= openresty:echo-nginx-module:46334b3:echo +ECHO_VARS= DSO_EXTMODS+=echo +ECHO_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_echo_request_info.c + +DRIZZLE_LIB_DEPENDS= libdrizzle.so:databases/libdrizzle +DRIZZLE_CONFIGURE_ENV= LIBDRIZZLE_INC=${LOCALBASE}/include \ + LIBDRIZZLE_LIB=${LOCALBASE}/lib +DRIZZLE_GH_TUPLE= openresty:drizzle-nginx-module:v0.1.9:drizzle +DRIZZLE_CONFIGURE_ON= --add-module=${WRKSRC_drizzle} +DRIZZLE_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-openresty-drizzle-nginx-module-config \ + ${PATCHDIR}/extra-patch-ngx_http_drizzle_upstream.c + +DYNAMIC_UPSTREAM_GH_TUPLE= cubicdaiya:ngx_dynamic_upstream:v0.1.3:dynamic_upstream +DYNAMIC_UPSTREAM_VARS= DSO_EXTMODS+=dynamic_upstream +DYNAMIC_UPSTREAM_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_inet_slab.c + +DEVEL_KIT_GH_TUPLE= simpl:ngx_devel_kit:v0.3.0:devel_kit +DEVEL_KIT_VARS= DSO_EXTMODS+=devel_kit + +ENCRYPTSESSION_IMPLIES= DEVEL_KIT +ENCRYPTSESSION_GH_TUPLE= openresty:encrypted-session-nginx-module:v0.07:encryptsession +ENCRYPTSESSION_VARS= DSO_EXTMODS+=encryptsession + +FASTDFS_GH_TUPLE= happyfish100:fastdfs-nginx-module:85347be:fastdfs +FASTDFS_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-fastdfs-src-config \ + ${PATCHDIR}/extra-patch-fastdfs-src-mod_fastdfs.conf +FASTDFS_BUILD_DEPENDS= ${LOCALBASE}/include/fastcommon/logger.h:devel/libfastcommon \ + ${LOCALBASE}/include/fastdfs/fdfs_client.h:ftp/fastdfs +FASTDFS_LIB_DEPENDS= libfastcommon.so:devel/libfastcommon \ + libfdfsclient.so:ftp/fastdfs +FASTDFS_CONFIGURE_ON= --with-cc-opt="-I ${LOCALBASE}/include/fastdfs \ + -I ${LOCALBASE}/include/fastcommon" +FASTDFS_VARS= DSO_EXTMODS+=fastdfs FASTDFS_SUBDIR=/src + +FORMINPUT_IMPLIES= DEVEL_KIT +FORMINPUT_GH_TUPLE= calio:form-input-nginx-module:v0.12:forminput +FORMINPUT_VARS= DSO_EXTMODS+=forminput + +GRIDFS_GH_TUPLE= mdirolf:nginx-gridfs:v0.8:gridfs \ + mongodb:mongo-c-driver:v0.3.1:mongo_c +GRIDFS_CONFIGURE_ON= --add-module=${WRKSRC_gridfs} + +HEADERS_MORE_GH_TUPLE= openresty:headers-more-nginx-module:55fbdab:headers_more +HEADERS_MORE_VARS= DSO_EXTMODS+=headers_more + +HTTP_ACCEPT_LANGUAGE_GH_TUPLE= giom:nginx_accept_language_module:2f69842:accept_language +HTTP_ACCEPT_LANGUAGE_CONFIGURE_ON= --add-module=${WRKSRC_accept_language} + +HTTP_AUTH_DIGEST_GH_TUPLE= atomx:nginx-http-auth-digest:274490c:auth_digest +HTTP_AUTH_DIGEST_VARS= DSO_EXTMODS+=auth_digest + +HTTP_AUTH_KRB5_GH_TUPLE= stnoonan:spnego-http-auth-nginx-module:7e028a5:auth_krb5 +HTTP_AUTH_KRB5_VARS= DSO_EXTMODS+=auth_krb5 +#HTTP_AUTH_KRB5_EXTRA_PATCHES=${PATCHDIR}/extra-patch-spnego-http-auth-nginx-module-config +#OPTIONS_RADIO+= GSSAPI +#OPTIONS_RADIO_GSSAPI+= GSSAPI_HEIMDAL GSSAPI_MIT +#GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags +#GSSAPI_MIT_USES= gssapi:mit + +HTTP_AUTH_LDAP_GH_TUPLE= kvspb:nginx-auth-ldap:42d195d:http_auth_ldap +HTTP_AUTH_LDAP_VARS= DSO_EXTMODS+=http_auth_ldap +HTTP_AUTH_LDAP_USE= openldap=yes + +HTTP_AUTH_PAM_GH_TUPLE= sto:ngx_http_auth_pam_module:v1.5.1:auth_pam +HTTP_AUTH_PAM_VARS= DSO_EXTMODS+=auth_pam + +HTTP_DAV_EXT_IMPLIES= HTTP_DAV +HTTP_DAV_EXT_LIB_DEPENDS= libexpat.so:textproc/expat2 +HTTP_DAV_EXT_GH_TUPLE= arut:nginx-dav-ext-module:v0.1.0:dav_ext +HTTP_DAV_EXT_CONFIGURE_ON= --add-module=${WRKSRC_dav_ext} + +HTTP_EVAL_GH_TUPLE= openresty:nginx-eval-module:582bd25:eval +HTTP_EVAL_VARS= DSO_EXTMODS+=eval + +HTTP_FANCYINDEX_GH_TUPLE= aperezdc:ngx-fancyindex:v0.4.2:fancyindex +HTTP_FANCYINDEX_VARS= DSO_EXTMODS+=fancyindex + +HTTP_FOOTER_GH_TUPLE= alibaba:nginx-http-footer-filter:1.2.2:footer +HTTP_FOOTER_CONFIGURE_ON= --add-module=${WRKSRC_footer} + +HTTP_GEOIP2_GH_TUPLE= leev:ngx_http_geoip2_module:2.0:geoip2 +HTTP_GEOIP2_CFLAGS= -I${LOCALBASE}/include +HTTP_GEOIP2_VARS= DSO_EXTMODS+=geoip2 +HTTP_GEOIP2_LIB_DEPENDS= libmaxminddb.so:net/libmaxminddb + +HTTP_JSON_STATUS_GH_TUPLE= nginx-modules:ngx_http_json_status_module:1d2f303:json_status +HTTP_JSON_STATUS_CONFIGURE_ON= --add-module=${WRKSRC_json_status} + +HTTP_MOGILEFS_MASTER_SITES= http://www.grid.net.ru/nginx/download/:mogilefs +HTTP_MOGILEFS_DISTFILES= nginx_mogilefs_module-1.0.4.tar.gz:mogilefs +HTTP_MOGILEFS_CONFIGURE_ON= --add-module=${WRKDIR}/nginx_mogilefs_module-1.0.4 +HTTP_MOGILEFS_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_mogilefs_module.c + +HTTP_MP4_H264_MASTER_SITES= http://h264.code-shop.com/download/:mp4streaming +HTTP_MP4_H264_DISTFILES= nginx_mod_h264_streaming-2.2.7.tar.gz:mp4streaming +HTTP_MP4_H264_CONFIGURE_ON= --add-module=${WRKDIR}/nginx_mod_h264_streaming-2.2.7 +HTTP_MP4_H264_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_streaming_module.c + +HTTP_NOTICE_GH_TUPLE= kr:nginx-notice:3c95966:notice +HTTP_NOTICE_CONFIGURE_ON= --add-module=${WRKSRC_notice} +HTTP_NOTICE_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_notice_module.c + +HTTP_PUSH_GH_TUPLE= slact:nchan:v1.1.14:push +HTTP_PUSH_VARS= DSO_EXTMODS+=push + +HTTP_PUSH_STREAM_GH_TUPLE= wandenberg:nginx-push-stream-module:0.5.4:pushstream +HTTP_PUSH_STREAM_CONFIGURE_ON= --add-module=${WRKSRC_pushstream} + +HTTP_REDIS_MASTER_SITES= LOCAL/osa:redis +HTTP_REDIS_DISTFILES= ngx_http_redis-0.3.8.tar.gz:redis +HTTP_REDIS_VARS= DSO_EXTDIRS+=ngx_http_redis-0.3.8 + +HTTP_RESPONSE_MASTER_SITES= http://catap.ru/downloads/nginx/:response +HTTP_RESPONSE_DISTFILES= ngx_http_response-0.3.tar.gz:response +HTTP_RESPONSE_CONFIGURE_ON= --add-module=${WRKDIR}/ngx_http_response-0.3 + +HTTP_SUBS_FILTER_GH_TUPLE= yaoweibin:ngx_http_substitutions_filter_module:v0.6.4:subs_filter +HTTP_SUBS_FILTER_CONFIGURE_ON= --add-module=${WRKSRC_subs_filter} + +HTTP_TARANTOOL_LIB_DEPENDS= libmsgpuck.so:devel/msgpuck \ + libyajl.so:devel/yajl +HTTP_TARANTOOL_GH_TUPLE= tarantool:nginx_upstream_module:1278ee5:nginx_tarantool +HTTP_TARANTOOL_VARS= DSO_EXTMODS+=nginx_tarantool +HTTP_TARANTOOL_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_tarantool-config \ + ${PATCHDIR}/extra-patch-ngx_http_tarantool-src-tp_transcode.c + +HTTP_UPLOAD_GH_TUPLE= Austinb:nginx-upload-module:72ec037:upload +HTTP_UPLOAD_VARS= DSO_EXTMODS+=upload + +HTTP_UPLOAD_PROGRESS_GH_TUPLE= masterzen:nginx-upload-progress-module:afb2d31:uploadprogress +HTTP_UPLOAD_PROGRESS_VARS= DSO_EXTMODS+=uploadprogress + +HTTP_UPSTREAM_CHECK_GH_TUPLE= yaoweibin:nginx_upstream_check_module:9aecf15:upstreamcheck +HTTP_UPSTREAM_CHECK_CONFIGURE_ARGS= --add-module=${WRKSRC_upstreamcheck} +HTTP_UPSTREAM_CHECK_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_hash_module.c \ + ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_ip_hash_module.c \ + ${PATCHDIR}/extra-patch-src-http-modules-ngx_http_upstream_least_conn_module.c \ + ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.c \ + ${PATCHDIR}/extra-patch-src-http-ngx_http_upstream_round_robin.h + +HTTP_UPSTREAM_FAIR_GH_TUPLE= cryptofuture:nginx-upstream-fair:b5be36f:upstreamfair +HTTP_UPSTREAM_FAIR_VARS= DSO_EXTMODS+=upstreamfair + +HTTP_UPSTREAM_STICKY_IMPLIES= HTTP_SSL +HTTP_UPSTREAM_STICKY_MASTER_SITES= https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/:upstreamsticky +HTTP_UPSTREAM_STICKY_DISTFILES= 08a395c66e42.tar.gz:upstreamsticky +HTTP_UPSTREAM_STICKY_CONFIGURE_ON= --add-module=${WRKDIR}/nginx-goodies-nginx-sticky-module-ng-08a395c66e42/ +HTTP_UPSTREAM_STICKY_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_sticky_misc.c + +HTTP_VIDEO_THUMBEXTRACTOR_LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \ + libavcodec.so:multimedia/ffmpeg \ + libavutil.so:multimedia/ffmpeg \ + libswscale.so:multimedia/ffmpeg +DA!LIBRESSL_1_0_APIHTTP_VIDEO_THUMBEXTRACTOR_USES= jpeg +HTTP_VIDEO_THUMBEXTRACTOR_GH_TUPLE= wandenberg:nginx-video-thumbextractor-module:0.9.0:vte +HTTP_VIDEO_THUMBEXTRACTOR_CONFIGURE_ARGS=--add-module=${WRKSRC_vte} + +HTTP_ZIP_GH_TUPLE= anthonyryan1:mod_zip:74ef235:mod_zip +HTTP_ZIP_CONFIGURE_ON= --add-module=${WRKSRC_mod_zip} + +ICONV_IMPLIES= DEVEL_KIT +ICONV_USES= iconv +ICONV_GH_TUPLE= calio:iconv-nginx-module:v0.14:iconv +ICONV_VARS= DSO_EXTMODS+=iconv +ICONV_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-calio-iconv-nginx-module-config + +LET_GH_TUPLE= arut:nginx-let-module:v0.0.4:let +LET_CONFIGURE_ARGS= --add-module=${WRKSRC_let} + +LUA_IMPLIES= DEVEL_KIT +LUA_LIB_DEPENDS= libluajit-5.1.so:lang/luajit +LUA_CONFIGURE_ENV= LUAJIT_INC=${LOCALBASE}/include/luajit-2.0 \ + LUAJIT_LIB=${LOCALBASE}/lib +LUA_GH_TUPLE= openresty:lua-nginx-module:v0.10.11:lua +LUA_VARS= DSO_EXTMODS+=lua + +MEMC_GH_TUPLE= openresty:memc-nginx-module:v0.18:memc +MEMC_VARS= DSO_EXTMODS+=memc + +MODSECURITY_LIB_DEPENDS= libapr-1.so:devel/apr1 \ + libcurl.so:ftp/curl \ + libluajit-5.1.so:lang/luajit \ + libpcre.so:devel/pcre \ + libyajl.so:devel/yajl +MODSECURITY_USE= GNOME=libxml2 +MODSECURITY_USES= apache:2.2+ pkgconfig shebangfix +MODSECURITY_MASTER_SITES= http://www.modsecurity.org/tarball/2.9.1S/RC/rc/:modsecurity +MODSECURITY_DISTFILES= modsecurity-2.9.1.tar.gz:modsecurity +MODSECURITY_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-nginx-modsecurity-configure \ + ${PATCHDIR}/extra-patch-ngx_http_modsecurity.c +MODSECURITY_VARS= WRKSRC_modsecurity=${WRKDIR}/modsecurity-2.9.1 + +MODSECURITY3_LIB_DEPENDS= libmodsecurity.so:www/mod_security3 +MODSECURITY3_GH_TUPLE= SpiderLabs:ModSecurity-nginx:c0ae166:modsec +MODSECURITY3_CONFIGURE_ON= --add-module=${WRKSRC_modsec} + +NAXSI_NGINX_VER= 0.55.3 +NAXSI_GH_TUPLE= nbs-system:naxsi:${NAXSI_NGINX_VER}:naxsi +NAXSI_VARS= DSO_EXTMODS+=naxsi NAXSI_SUBDIR=/naxsi_src + +NJS_GH_TUPLE= nginx:njs:4ed8a0b:njs +NJS_VARS= DSO_EXTMODS+=njs NJS_SUBDIR=/nginx + +PASSENGER_NGINX_VER= 5.2.1 +PASSENGER_CATEGORIES= ruby +PASSENGER_USE= ruby=yes +PASSENGER_BUILD_DEPENDS= ${LOCALBASE}/bin/rake:devel/rubygem-rake +PASSENGER_RAKE_BIN= ${LOCALBASE}/bin/rake +PASSENGER_MASTER_SITES= http://s3.amazonaws.com/phusion-passenger/releases/:passenger +PASSENGER_DISTFILES= passenger-${PASSENGER_NGINX_VER}.tar.gz:passenger +PASSENGER_VARS= WRKSRC_passenger=${WRKDIR}/passenger-${PASSENGER_NGINX_VER} \ + DSO_EXTDIRS+=passenger-${PASSENGER_NGINX_VER}/src/nginx_module +PASSENGER_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-passenger-build-nginx.rb + +POSTGRES_USES= pgsql +POSTGRES_GH_TUPLE= FRiCKLE:ngx_postgres:1.0rc7:postgres +POSTGRES_CONFIGURE_ON= --add-module=${WRKSRC_postgres} +POSTGRES_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_postgres-config \ + ${PATCHDIR}/extra-patch-ngx_postgres_module.c + +RDS_CSV_GH_TUPLE= openresty:rds-csv-nginx-module:v0.08:rdscsv +RDS_CSV_CONFIGURE_ON= --add-module=${WRKSRC_rdscsv} + +RDS_JSON_GH_TUPLE= openresty:rds-json-nginx-module:v0.14:rdsjson +RDS_JSON_CONFIGURE_ON= --add-module=${WRKSRC_rdsjson} + +REDIS2_GH_TUPLE= openresty:redis2-nginx-module:v0.14:redis2 +REDIS2_VARS= DSO_EXTMODS+=redis2 + +RTMP_GH_TUPLE= arut:nginx-rtmp-module:v1.2.1:rtmp +RTMP_VARS= DSO_EXTMODS+=rtmp + +SET_MISC_IMPLIES= DEVEL_KIT +SET_MISC_GH_TUPLE= openresty:set-misc-nginx-module:cda7e50:setmisc +SET_MISC_VARS= DSO_EXTMODS+=setmisc + +SFLOW_GH_TUPLE= sflow:nginx-sflow-module:543c72a:sflow +SFLOW_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ngx_http_sflow_config.c \ + ${PATCHDIR}/extra-patch-ngx_http_sflow_config.h \ + ${PATCHDIR}/extra-patch-ngx_http_sflow_module.c + +SHIBBOLETH_GH_TUPLE= nginx-shib:nginx-http-shibboleth:f07bf3c:shibboleth +SHIBBOLETH_VARS= DSO_EXTMODS+=shibboleth + +SLOWFS_CACHE_MASTER_SITES= http://labs.frickle.com/files/:slowfs_cache +SLOWFS_CACHE_DISTFILES= ngx_slowfs_cache-1.10.tar.gz:slowfs_cache +SLOWFS_CACHE_CONFIGURE_ON= --add-module=${WRKDIR}/ngx_slowfs_cache-1.10 + +SMALL_LIGHT_LIB_DEPENDS= libMagickWand-6.so:graphics/ImageMagick \ + libpcre.so:devel/pcre +SMALL_LIGHT_GH_TUPLE= cubicdaiya:ngx_small_light:v0.9.2:small_light +SMALL_LIGHT_VARS= DSO_EXTMODS+=small_light + +SRCACHE_GH_TUPLE= openresty:srcache-nginx-module:v0.31:srcache +#SRCACHE_CONFIGURE_ON= --add-module=${WRKSRC_srcache} +SRCACHE_VARS= DSO_EXTMODS+=srcache + +XSS_GH_TUPLE= openresty:xss-nginx-module:v0.05:xss +XSS_CONFIGURE_ON= --add-module=${WRKSRC_xss} Index: head/www/nginx/Makefile.options.desc =================================================================== --- head/www/nginx/Makefile.options.desc +++ head/www/nginx/Makefile.options.desc @@ -0,0 +1,107 @@ +# $FreeBSD$ + +AJP_DESC= 3rd party ajp module +ARRAYVAR_DESC= 3rd party array_var module +AWS_AUTH_DESC= 3rd party aws auth module +BROTLI_DESC= 3rd party brotli module +CACHE_PURGE_DESC= 3rd party cache_purge module +CLOJURE_DESC= 3rd party clojure module +CT_DESC= 3rd party cert_transparency module (SSL req.) +DEBUGLOG_DESC= Enable debug log (--with-debug) +DEBUG_DESC= Build with debugging support +DEVEL_KIT_DESC= 3rd party Nginx Development Kit module +DRIZZLE_DESC= 3rd party drizzle module +DSO_DESC= Enable dynamic modules support +DYNAMIC_UPSTREAM_DESC= 3rd party dynamic_upstream module +ECHO_DESC= 3rd party echo module +ENCRYPTSESSION_DESC= 3rd party encrypted_session module +FASTDFS_DESC= 3rd party fastdfs module +FILE_AIO_DESC= Enable file aio +FORMINPUT_DESC= 3rd party form_input module +GOOGLE_PERFTOOLS_DESC= Enable google perftools module +GRIDFS_DESC= 3rd party gridfs module +HEADERS_MORE_DESC= 3rd party headers_more module +HTTPGRP_DESC= Modules that require HTTP module +HTTPV2_DESC= Enable HTTP/2 protocol support (SSL req.) +HTTP_ACCEPT_LANGUAGE_DESC= 3rd party accept_language module +HTTP_ADDITION_DESC= Enable http_addition module +HTTP_AUTH_DIGEST_DESC= 3rd party http_authdigest module +HTTP_AUTH_KRB5_DESC= 3rd party http_auth_gss module +HTTP_AUTH_LDAP_DESC= 3rd party http_auth_ldap module +HTTP_AUTH_PAM_DESC= 3rd party http_auth_pam module +HTTP_AUTH_REQ_DESC= Enable http_auth_request module +HTTP_CACHE_DESC= Enable http_cache module +HTTP_DAV_DESC= Enable http_webdav module +HTTP_DAV_EXT_DESC= 3rd party webdav_ext module +HTTP_DESC= Enable HTTP module +HTTP_EVAL_DESC= 3rd party eval module +HTTP_FANCYINDEX_DESC= 3rd party http_fancyindex module +HTTP_FLV_DESC= Enable http_flv module +HTTP_FOOTER_DESC= 3rd party http_footer module +HTTP_GEOIP2_DESC= 3rd party geoip2 module +HTTP_GEOIP_DESC= Enable http_geoip module +HTTP_GUNZIP_FILTER_DESC= Enable http_gunzip_filter module +HTTP_GZIP_STATIC_DESC= Enable http_gzip_static module +HTTP_IMAGE_FILTER_DESC= Enable http_image_filter module +HTTP_JSON_STATUS_DESC= 3rd party http_json_status module +HTTP_MOGILEFS_DESC= 3rd party mogilefs module +HTTP_MP4_DESC= Enable http_mp4 module +HTTP_MP4_H264_DESC= 3rd party mp4/h264 module +HTTP_NOTICE_DESC= 3rd party notice module +HTTP_PERL_DESC= Enable http_perl module +HTTP_PUSH_DESC= 3rd party push module +HTTP_PUSH_STREAM_DESC= 3rd party push stream module +HTTP_RANDOM_INDEX_DESC= Enable http_random_index module +HTTP_REALIP_DESC= Enable http_realip module +HTTP_REDIS_DESC= 3rd party http_redis module +HTTP_RESPONSE_DESC= 3rd party http_response module +HTTP_REWRITE_DESC= Enable http_rewrite module +HTTP_SECURE_LINK_DESC= Enable http_secure_link module +HTTP_SLICE_DESC= Enable http_slice module +HTTP_SSL_DESC= Enable http_ssl module +HTTP_STATUS_DESC= Enable http_stub_status module +HTTP_SUBS_FILTER_DESC= 3rd party subs filter module +HTTP_SUB_DESC= Enable http_sub module +HTTP_TARANTOOL_DESC= 3rd party tarantool upstream module +HTTP_UPLOAD_DESC= 3rd party upload module +HTTP_UPLOAD_PROGRESS_DESC= 3rd party uploadprogress module +HTTP_UPSTREAM_CHECK_DESC= 3rd party upstream check module +HTTP_UPSTREAM_FAIR_DESC= 3rd party upstream fair module +HTTP_UPSTREAM_STICKY_DESC= 3rd party upstream sticky module +HTTP_VIDEO_DESC= 3rd party video module support +HTTP_VIDEO_THUMBEXTRACTOR_DESC= 3rd party video_thumbextractor module +HTTP_XSLT_DESC= Enable http_xslt module +HTTP_ZIP_DESC= 3rd party http_zip module +ICONV_DESC= 3rd party iconv module +IPV6_DESC= Enable IPv6 support +LET_DESC= 3rd party let module +LUA_DESC= 3rd party lua module +MAILGRP_DESC= Modules that require MAIL module +MAIL_DESC= Enable IMAP4/POP3/SMTP proxy module +MAIL_IMAP_DESC= Enable IMAP4 proxy module +MAIL_POP3_DESC= Enable POP3 proxy module +MAIL_SMTP_DESC= Enable SMTP proxy module +MAIL_SSL_DESC= Enable mail_ssl module +MEMC_DESC= 3rd party memc (memcached) module +MODSECURITY3_DESC= 3rd party mod_security v3 module +MODSECURITY_DESC= 3rd party mod_security module +NAXSI_DESC= 3rd party naxsi module +NJS_DESC= Enable http_javascript module +PASSENGER_DESC= 3rd party passenger module +POSTGRES_DESC= 3rd party postgres module +RDS_CSV_DESC= 3rd party rds_csv module +RDS_JSON_DESC= 3rd party rds_json module +REDIS2_DESC= 3rd party redis2 module +RTMP_DESC= 3rd party rtmp module +SET_MISC_DESC= 3rd party set_misc module +SFLOW_DESC= 3rd party sflow module +SHIBBOLETH_DESC= 3rd party shibboleth module +SLOWFS_CACHE_DESC= 3rd party slowfs_cache module +SMALL_LIGHT_DESC= 3rd party small_light module +SRCACHE_DESC= 3rd party srcache module +STREAM_DESC= Enable stream module +STREAM_SSL_DESC= Enable stream_ssl module (SSL req.) +STREAM_SSL_PREREAD_DESC= Enable stream_ssl_preread module (SSL req.) +THREADS_DESC= Enable threads support +WWW_DESC= Enable html sample files +XSS_DESC= 3rd party xss module Index: head/www/nginx/files/extra-patch-nginx-ct-LibreSSL =================================================================== --- head/www/nginx/files/extra-patch-nginx-ct-LibreSSL +++ head/www/nginx/files/extra-patch-nginx-ct-LibreSSL @@ -0,0 +1,20 @@ +--- ../ nginx-ct-1.3.2/ngx_ssl_ct_module.c.orig 2016-11-30 22:58:29.000000000 +0100 ++++ ../nginx-ct-1.3.2/ngx_ssl_ct_module.c 2017-02-11 19:42:19.741572000 +0100 +@@ -170,7 +170,7 @@ + #endif + } + +-#ifndef OPENSSL_IS_BORINGSSL ++#if !defined(OPENSSL_IS_BORINGSSL) && !defined(LIBRESSL_VERSION_NUMBER) + /* add OpenSSL TLS extension */ + if (SSL_CTX_add_server_custom_ext(ssl_ctx, NGX_SSL_CT_EXT, + &ngx_ssl_ct_ext_cb, NULL, NULL, NULL, NULL) == 0) +@@ -184,7 +184,7 @@ + return NGX_CONF_OK; + } + +-#ifndef OPENSSL_IS_BORINGSSL ++#if !defined(OPENSSL_IS_BORINGSSL) && !defined(LIBRESSL_VERSION_NUMBER) + int ngx_ssl_ct_ext_cb(SSL *s, unsigned int ext_type, const unsigned char **out, + size_t *outlen, int *al, void *add_arg) + { Index: head/www/nginx/pkg-plist =================================================================== --- head/www/nginx/pkg-plist +++ head/www/nginx/pkg-plist @@ -1,18 +1,20 @@ +%%FASTDFS%%@sample etc/fdfs/mod_fastdfs.conf.sample @sample %%ETCDIR%%/fastcgi_params-dist %%ETCDIR%%/fastcgi_params %%ETCDIR%%/koi-utf %%ETCDIR%%/koi-win +%%NAXSI%%%%ETCDIR%%/naxsi_core.rules @sample %%ETCDIR%%/scgi_params-dist %%ETCDIR%%/scgi_params @sample %%ETCDIR%%/uwsgi_params-dist %%ETCDIR%%/uwsgi_params %%ETCDIR%%/win-utf @sample %%ETCDIR%%/mime.types-dist %%ETCDIR%%/mime.types @sample %%ETCDIR%%/nginx.conf-dist %%ETCDIR%%/nginx.conf -%%WWWDATA%%@exec mkdir -p -m 755 %D/www/nginx-dist -%%WWWDATA%%@exec if [ ! -d %D/www/nginx/ ] ; then ln -fs %D/www/nginx-dist %D/www/nginx; fi +%%WWWDATA%%@postexec mkdir -p -m 755 %D/www/nginx-dist +%%WWWDATA%%@postexec if [ ! -d %D/www/nginx/ ] ; then ln -fs %D/www/nginx-dist %D/www/nginx; fi %%WWWDATA%%www/nginx-dist/EXAMPLE_DIRECTORY-DONT_ADD_OR_TOUCH_ANYTHING %%WWWDATA%%www/nginx-dist/index.html %%WWWDATA%%www/nginx-dist/50x.html -%%WWWDATA%%@exec chmod a-w %D/www/nginx-dist -%%WWWDATA%%@unexec if [ -L %D/www/nginx ]; then rm -f %D/www/nginx; fi +%%WWWDATA%%@postexec chmod a-w %D/www/nginx-dist +%%WWWDATA%%@postunexec if [ -L %D/www/nginx ]; then rm -f %D/www/nginx; fi sbin/nginx share/vim/vimfiles/ftdetect/nginx.vim share/vim/vimfiles/ftplugin/nginx.vim @@ -21,3 +23,5 @@ @dir %%NGINX_TMPDIR%% @dir %%NGINX_LOGDIR%% man/man8/nginx.8.gz +%%HTTP_PERL%%%%SITE_ARCH%%/auto/nginx/nginx.so +%%HTTP_PERL%%%%SITE_ARCH%%/nginx.pm