--- /dev/null
+#
+# Copyright (C) 2010-2016 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+menu "Configuration"
+ depends on PACKAGE_nginx-ssl
+
+config NGINX_DAV
+ bool
+ prompt "Enable WebDAV module"
+ help
+ Enable the HTTP and WebDAV methods PUT, DELETE, MKCOL, COPY and MOVE.
+ default n
+
+config NGINX_FLV
+ bool
+ prompt "Enable FLV module"
+ help
+ Provides the ability to seek within FLV (Flash) files using time-based offsets.
+ default n
+
+config NGINX_STUB_STATUS
+ bool
+ prompt "Enable stub status module"
+ help
+ Enable the stub status module which gives some status from the server.
+ default n
+
+config NGINX_HTTP_CHARSET
+ bool
+ prompt "Enable HTTP charset module"
+ default y
+
+config NGINX_HTTP_GZIP
+ bool
+ prompt "Enable HTTP gzip module"
+ default y
+
+config NGINX_HTTP_SSI
+ bool
+ prompt "Enable HTTP ssi module"
+ default y
+
+config NGINX_HTTP_USERID
+ bool
+ prompt "Enable HTTP userid module"
+ default y
+
+config NGINX_HTTP_ACCESS
+ bool
+ prompt "Enable HTTP access module"
+ default y
+
+config NGINX_HTTP_AUTH_BASIC
+ bool
+ prompt "Enable HTTP auth basic"
+ default y
+
+config NGINX_HTTP_AUTH_REQUEST
+ bool
+ prompt "Enable HTTP auth request module"
+ default n
+
+config NGINX_HTTP_AUTOINDEX
+ bool
+ prompt "Enable HTTP autoindex module"
+ default y
+
+config NGINX_HTTP_GEO
+ bool
+ prompt "Enable HTTP geo module"
+ default y
+
+config NGINX_HTTP_MAP
+ bool
+ prompt "Enable HTTP map module"
+ default y
+
+config NGINX_HTTP_SPLIT_CLIENTS
+ bool
+ prompt "Enable HTTP split clients"
+ default y
+
+config NGINX_HTTP_REFERER
+ bool
+ prompt "Enable HTTP referer module"
+ default y
+
+config NGINX_HTTP_REWRITE
+ bool
+ prompt "Enable HTTP rewrite module"
+ select NGINX_PCRE
+ default y
+
+config NGINX_HTTP_PROXY
+ bool
+ prompt "Enable HTTP proxy module"
+ default y
+
+config NGINX_HTTP_FASTCGI
+ bool
+ prompt "Enable HTTP fastcgi module"
+ default y
+
+config NGINX_HTTP_UWSGI
+ bool
+ prompt "Enable HTTP uwsgi module"
+ default y
+
+config NGINX_HTTP_SCGI
+ bool
+ prompt "Enable HTTP scgi module"
+ default y
+
+config NGINX_HTTP_MEMCACHED
+ bool
+ prompt "Enable HTTP memcached module"
+ default y
+
+config NGINX_HTTP_LIMIT_CONN
+ bool
+ prompt "Enable HTTP limit conn"
+ default y
+
+config NGINX_HTTP_LIMIT_REQ
+ bool
+ prompt "Enable HTTP limit req"
+ default y
+
+config NGINX_HTTP_EMPTY_GIF
+ bool
+ prompt "Enable HTTP empty gif"
+ default y
+
+config NGINX_HTTP_BROWSER
+ bool
+ prompt "Enable HTTP browser module"
+ default y
+
+config NGINX_HTTP_UPSTREAM_HASH
+ bool
+ prompt "Enable HTTP hash module"
+ default y
+
+config NGINX_HTTP_UPSTREAM_IP_HASH
+ bool
+ prompt "Enable HTTP IP hash module"
+ default y
+
+config NGINX_HTTP_UPSTREAM_LEAST_CONN
+ bool
+ prompt "Enable HTTP least conn module"
+ default y
+
+config NGINX_HTTP_UPSTREAM_KEEPALIVE
+ bool
+ prompt "Enable HTTP keepalive module"
+ default y
+
+config NGINX_HTTP_CACHE
+ bool
+ prompt "Enable HTTP cache"
+ default y
+
+config NGINX_HTTP_V2
+ bool
+ prompt "Enable HTTP_V2 module"
+ default n
+
+config NGINX_PCRE
+ bool
+ prompt "Enable PCRE library usage"
+ default y
+
+config NGINX_NAXSI
+ bool
+ prompt "Enable NAXSI module"
+ default y
+
+config NGINX_LUA
+ bool
+ prompt "Enable Lua module"
+ default n
+
+config NGINX_HTTP_REAL_IP
+ bool
+ prompt "Enable HTTP real ip module"
+ default n
+
+config NGINX_HTTP_SECURE_LINK
+ bool
+ prompt "Enable HTTP secure link module"
+ default n
+
+config NGINX_HEADERS_MORE
+ bool
+ prompt "Enable Headers_more module"
+ help
+ Set and clear input and output headers...more than "add"!
+ default y
+
+config NGINX_HTTP_BROTLI
+ bool
+ prompt "Enable Brotli compression module"
+ help
+ Add support for brotli compression module.
+ default n
+
+config NGINX_RTMP_MODULE
+ bool
+ prompt "Enable RTMP module"
+ help
+ Add support for NGINX-based Media Streaming Server module.
+ default n
+
+config NGINX_TS_MODULE
+ bool
+ prompt "Enable TS module"
+ help
+ Add support for MPEG-TS Live Module module.
+ default n
+
+endmenu
include $(TOPDIR)/rules.mk
PKG_NAME:=nginx
-PKG_VERSION:=1.14.0
+PKG_VERSION:=1.15.0
PKG_RELEASE:=1
PKG_SOURCE:=nginx-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://nginx.org/download/
-PKG_HASH:=5d15becbf69aba1fe33f8d416d97edd95ea8919ea9ac519eff9bafebb6022cb5
+PKG_HASH:=b0b58c9a3fd73aa8b89edf5cfadc6641a352e0e6d3071db1eb3215d72b7fb516
-PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
+PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de> \
+ Ansuel Smith <ansuelsmth@gmail.com>
PKG_LICENSE:=2-clause BSD-like license
-PKG_BUILD_DIR:=$(BUILD_DIR)/nginx-$(PKG_VERSION)
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
-define Package/nginx
+define Package/nginx/default
SECTION:=net
CATEGORY:=Network
SUBMENU:=Web Servers/Proxies
TITLE:=Nginx web server
URL:=http://nginx.org/
- DEPENDS:=+NGINX_PCRE:libpcre +(NGINX_SSL||NGINX_HTTP_CACHE||NGINX_HTTP_AUTH_BASIC):libopenssl +NGINX_HTTP_GZIP:zlib +NGINX_LUA:liblua +libpthread
+ DEPENDS:=+NGINX_PCRE:libpcre +(NGINX_SSL||NGINX_HTTP_CACHE||NGINX_HTTP_AUTH_BASIC):libopenssl \
+ +NGINX_HTTP_GZIP:zlib +NGINX_LUA:liblua +libpthread
endef
define Package/nginx/description
- nginx is an HTTP and reverse proxy server, as well as a mail proxy server,
- written by Igor Sysoev.
+ nginx is an HTTP and reverse proxy server, as well as a mail proxy server, \
+ written by Igor Sysoev. (Some module require SSL module enable to show up in \
+ config menu)
+endef
+
+define Package/nginx
+ $(Package/nginx/default)
+ VARIANT:=no-ssl
+endef
+
+define Package/nginx-ssl
+ $(Package/nginx/default)
+ TITLE += with SSL support
+ DEPENDS +=+libopenssl
+ VARIANT:=ssl
endef
+Package/nginx-ssl/description = $(Package/nginx/description) \
+ This varian is compiled with SSL support enabled. To enable additional module \
+ select them in the nginx default configuration menu.
+
+define Package/nginx-all-module
+ $(Package/nginx/default)
+ TITLE += with ALL module selected
+ DEPENDS:=+libpcre +libopenssl +zlib +liblua +libpthread
+ VARIANT:=all-module
+endef
+
+Package/nginx-all-module/description = $(Package/nginx/description) \
+ This varian is compiled with ALL module selected.
+
define Package/nginx/config
source "$(SOURCE)/Config.in"
endef
+define Package/nginx-ssl/config
+ source "$(SOURCE)/Config_ssl.in"
+endef
+
config_files=nginx.conf mime.types
define Package/nginx/conffiles
/etc/nginx/
endef
+Package/nginx-ssl/conffiles = $(Package/nginx/conffiles)
+Package/nginx-all-module/conffiles = $(Package/nginx/conffiles)
+
+
ADDITIONAL_MODULES:=
-ifeq ($(CONFIG_NGINX_NAXSI),y)
- ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-naxsi/naxsi_src
-endif
-ifeq ($(CONFIG_NGINX_LUA),y)
- ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/lua-nginx
-endif
-ifeq ($(CONFIG_IPV6),y)
- ADDITIONAL_MODULES += --with-ipv6
-endif
-ifeq ($(CONFIG_NGINX_STUB_STATUS),y)
- ADDITIONAL_MODULES += --with-http_stub_status_module
-endif
-ifeq ($(CONFIG_NGINX_FLV),y)
- ADDITIONAL_MODULES += --with-http_flv_module
-endif
-ifeq ($(CONFIG_NGINX_SSL),y)
- ADDITIONAL_MODULES += --with-http_ssl_module
-endif
-ifeq ($(CONFIG_NGINX_DAV),y)
- ADDITIONAL_MODULES += --with-http_dav_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_CACHE),y)
- ADDITIONAL_MODULES += --without-http-cache
-endif
-ifneq ($(CONFIG_NGINX_PCRE),y)
- ADDITIONAL_MODULES += --without-pcre
-endif
-ifneq ($(CONFIG_NGINX_HTTP_CHARSET),y)
- ADDITIONAL_MODULES += --without-http_charset_module
-else
- config_files += koi-utf koi-win win-utf
-endif
-ifneq ($(CONFIG_NGINX_HTTP_GZIP),y)
- ADDITIONAL_MODULES += --without-http_gzip_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_SSI),y)
- ADDITIONAL_MODULES += --without-http_ssi_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_USERID),y)
- ADDITIONAL_MODULES += --without-http_userid_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_ACCESS),y)
- ADDITIONAL_MODULES += --without-http_access_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_AUTH_BASIC),y)
- ADDITIONAL_MODULES += --without-http_auth_basic_module
-endif
-ifeq ($(CONFIG_NGINX_HTTP_AUTH_REQUEST),y)
- ADDITIONAL_MODULES += --with-http_auth_request_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_AUTOINDEX),y)
- ADDITIONAL_MODULES += --without-http_autoindex_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_GEO),y)
- ADDITIONAL_MODULES += --without-http_geo_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_MAP),y)
- ADDITIONAL_MODULES += --without-http_map_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_SPLIT_CLIENTS),y)
- ADDITIONAL_MODULES += --without-http_split_clients_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_REFERER),y)
- ADDITIONAL_MODULES += --without-http_referer_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_REWRITE),y)
- ADDITIONAL_MODULES += --without-http_rewrite_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_PROXY),y)
- ADDITIONAL_MODULES += --without-http_proxy_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_FASTCGI),y)
- ADDITIONAL_MODULES += --without-http_fastcgi_module
+
+ifneq ($(BUILD_VARIANT),all-module)
+ ifneq ($(CONFIG_NGINX_HTTP_CACHE),y)
+ ADDITIONAL_MODULES += --without-http-cache
+ endif
+ ifneq ($(CONFIG_NGINX_PCRE),y)
+ ADDITIONAL_MODULES += --without-pcre
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_CHARSET),y)
+ ADDITIONAL_MODULES += --without-http_charset_module
+ else
+ config_files += koi-utf koi-win win-utf
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_GZIP),y)
+ ADDITIONAL_MODULES += --without-http_gzip_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_SSI),y)
+ ADDITIONAL_MODULES += --without-http_ssi_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_USERID),y)
+ ADDITIONAL_MODULES += --without-http_userid_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_ACCESS),y)
+ ADDITIONAL_MODULES += --without-http_access_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_AUTH_BASIC),y)
+ ADDITIONAL_MODULES += --without-http_auth_basic_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_AUTOINDEX),y)
+ ADDITIONAL_MODULES += --without-http_autoindex_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_GEO),y)
+ ADDITIONAL_MODULES += --without-http_geo_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_MAP),y)
+ ADDITIONAL_MODULES += --without-http_map_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_SPLIT_CLIENTS),y)
+ ADDITIONAL_MODULES += --without-http_split_clients_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_REFERER),y)
+ ADDITIONAL_MODULES += --without-http_referer_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_REWRITE),y)
+ ADDITIONAL_MODULES += --without-http_rewrite_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_PROXY),y)
+ ADDITIONAL_MODULES += --without-http_proxy_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_FASTCGI),y)
+ ADDITIONAL_MODULES += --without-http_fastcgi_module
+ else
+ config_files += fastcgi_params
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_UWSGI),y)
+ ADDITIONAL_MODULES += --without-http_uwsgi_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_SCGI),y)
+ ADDITIONAL_MODULES += --without-http_scgi_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_MEMCACHED),y)
+ ADDITIONAL_MODULES += --without-http_memcached_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_LIMIT_CONN),y)
+ ADDITIONAL_MODULES += --without-http_limit_conn_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_LIMIT_REQ),y)
+ ADDITIONAL_MODULES += --without-http_limit_req_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_EMPTY_GIF),y)
+ ADDITIONAL_MODULES += --without-http_empty_gif_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_BROWSER),y)
+ ADDITIONAL_MODULES += --without-http_browser_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_HASH),y)
+ ADDITIONAL_MODULES += --without-http_upstream_hash_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_IP_HASH),y)
+ ADDITIONAL_MODULES += --without-http_upstream_ip_hash_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_LEAST_CONN),y)
+ ADDITIONAL_MODULES += --without-http_upstream_least_conn_module
+ endif
+ ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_KEEPALIVE),y)
+ ADDITIONAL_MODULES += --without-http_upstream_keepalive_module
+ endif
+
+ ifeq ($(BUILD_VARIANT),ssl)
+ ifneq ($(CONFIG_NGINX_SSL),y)
+ ADDITIONAL_MODULES += --with-http_ssl_module
+ endif
+ endif
+
+ ifeq ($(CONFIG_NGINX_SSL),y)
+ ADDITIONAL_MODULES += --with-http_ssl_module
+ endif
+ ifeq ($(CONFIG_NGINX_NAXSI),y)
+ ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-naxsi/naxsi_src
+ endif
+ ifeq ($(CONFIG_NGINX_LUA),y)
+ ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/lua-nginx
+ endif
+ ifeq ($(CONFIG_IPV6),y)
+ ADDITIONAL_MODULES += --with-ipv6
+ endif
+ ifeq ($(CONFIG_NGINX_STUB_STATUS),y)
+ ADDITIONAL_MODULES += --with-http_stub_status_module
+ endif
+ ifeq ($(CONFIG_NGINX_FLV),y)
+ ADDITIONAL_MODULES += --with-http_flv_module
+ endif
+ ifeq ($(CONFIG_NGINX_DAV),y)
+ ADDITIONAL_MODULES += --with-http_dav_module
+ endif
+ ifeq ($(CONFIG_NGINX_HTTP_AUTH_REQUEST),y)
+ ADDITIONAL_MODULES += --with-http_auth_request_module
+ endif
+ ifeq ($(CONFIG_NGINX_HTTP_V2),y)
+ ADDITIONAL_MODULES += --with-http_v2_module
+ endif
+ ifeq ($(CONFIG_NGINX_HTTP_REAL_IP),y)
+ ADDITIONAL_MODULES += --with-http_realip_module
+ endif
+ ifeq ($(CONFIG_NGINX_HTTP_SECURE_LINK),y)
+ ADDITIONAL_MODULES += --with-http_secure_link_module
+ endif
+ ifeq ($(CONFIG_NGINX_HEADERS_MORE),y)
+ ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-headers-more
+ endif
+ ifeq ($(CONFIG_NGINX_HTTP_BROTLI),y)
+ ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-brotli
+ endif
+ ifeq ($(CONFIG_NGINX_RTMP_MODULE),y)
+ ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-rtmp
+ endif
+ ifeq ($(CONFIG_NGINX_TS_MODULE),y)
+ ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-ts
+ endif
else
- config_files += fastcgi_params
-endif
-ifneq ($(CONFIG_NGINX_HTTP_UWSGI),y)
- ADDITIONAL_MODULES += --without-http_uwsgi_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_SCGI),y)
- ADDITIONAL_MODULES += --without-http_scgi_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_MEMCACHED),y)
- ADDITIONAL_MODULES += --without-http_memcached_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_LIMIT_CONN),y)
- ADDITIONAL_MODULES += --without-http_limit_conn_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_LIMIT_REQ),y)
- ADDITIONAL_MODULES += --without-http_limit_req_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_EMPTY_GIF),y)
- ADDITIONAL_MODULES += --without-http_empty_gif_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_BROWSER),y)
- ADDITIONAL_MODULES += --without-http_browser_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_HASH),y)
- ADDITIONAL_MODULES += --without-http_upstream_hash_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_IP_HASH),y)
- ADDITIONAL_MODULES += --without-http_upstream_ip_hash_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_LEAST_CONN),y)
- ADDITIONAL_MODULES += --without-http_upstream_least_conn_module
-endif
-ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_KEEPALIVE),y)
- ADDITIONAL_MODULES += --without-http_upstream_keepalive_module
-endif
-ifeq ($(CONFIG_NGINX_HTTP_V2),y)
- ADDITIONAL_MODULES += --with-http_v2_module
-endif
-ifeq ($(CONFIG_NGINX_HTTP_REAL_IP),y)
- ADDITIONAL_MODULES += --with-http_realip_module
-endif
-ifeq ($(CONFIG_NGINX_HTTP_SECURE_LINK),y)
- ADDITIONAL_MODULES += --with-http_secure_link_module
-endif
-ifeq ($(CONFIG_NGINX_HEADERS_MORE),y)
- ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-headers-more
-endif
-ifeq ($(CONFIG_NGINX_HTTP_BROTLI),y)
- ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-brotli
+ ADDITIONAL_MODULES += --with-http_ssl_module --add-module=$(PKG_BUILD_DIR)/nginx-naxsi/naxsi_src \
+ --add-module=$(PKG_BUILD_DIR)/lua-nginx --with-ipv6 --with-http_stub_status_module --with-http_flv_module \
+ --with-http_dav_module --with-http_auth_request_module --with-http_v2_module --with-http_realip_module \
+ --with-http_secure_link_module --add-module=$(PKG_BUILD_DIR)/nginx-headers-more \
+ --add-module=$(PKG_BUILD_DIR)/nginx-brotli --add-module=$(PKG_BUILD_DIR)/nginx-rtmp \
+ --add-module=$(PKG_BUILD_DIR)/nginx-ts
+ config_files += koi-utf koi-win win-utf fastcgi_params
endif
-define Package/nginx-mod-luci
+define Package/nginx-mod-luci/default
+ TITLE:=Nginx on LuCI
SECTION:=net
CATEGORY:=Network
SUBMENU:=Web Servers/Proxies
TITLE:=Support file for Nginx
URL:=http://nginx.org/
- DEPENDS:=nginx +uwsgi-cgi +uwsgi-cgi-luci-support
+ DEPENDS:=+uwsgi-cgi +uwsgi-cgi-luci-support
+endef
+
+define Package/nginx-mod-luci
+ $(Package/nginx-mod-luci/default)
+ DEPENDS += +nginx
endef
define Package/nginx-mod-luci/description
- Support file for LuCI in nginx (include custom nginx configuration, autostart script for uwsgi)
+ Support file for LuCI in nginx. Include custom nginx configuration, autostart script for uwsgi.
endef
define Package/nginx-mod-luci-ssl
- SECTION:=net
- CATEGORY:=Network
- SUBMENU:=Web Servers/Proxies
- TITLE:=Support file for Nginx (SSL)
- URL:=http://nginx.org/
- DEPENDS:=nginx +nginx-mod-luci
+ $(Package/nginx-mod-luci/default)
+ TITLE += with HTTPS support
+ DEPENDS += +nginx-ssl
endef
-define Package/nginx-mod-luci-ssl/description
- Support file for LuCI in nginx (include custom nginx configuration, autostart script for uwsgi, redirect from http to https)
-endef
+Package/nginx-mod-luci-ssl/description = $(define Package/nginx-mod-luci/description) \
+ This also include redirect from http to https and cert autogeneration.
TARGET_CFLAGS += -fvisibility=hidden -ffunction-sections -fdata-sections -DNGX_LUA_NO_BY_LUA_BLOCK
TARGET_LDFLAGS += -Wl,--gc-sections
-define Build/Configure
- ( cd $(PKG_BUILD_DIR) ; \
- $(if $(CONFIG_NGINX_LUA),LUA_INC=$(STAGING_DIR)/usr/include LUA_LIB=$(STAGING_DIR)/usr/lib) \
- ./configure \
+ifeq ($(CONFIG_NGINX_LUA),y)
+ CONFIGURE_VARS += LUA_INC=$(STAGING_DIR)/usr/include \
+ LUA_LIB=$(STAGING_DIR)/usr/lib
+endif
+
+CONFIGURE_ARGS += \
--crossbuild=Linux::$(ARCH) \
--prefix=/usr \
--conf-path=/etc/nginx/nginx.conf \
--with-cc="$(TARGET_CC)" \
--with-cc-opt="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
--with-ld-opt="$(TARGET_LDFLAGS)" \
- --without-http_upstream_zone_module \
- )
-endef
+ --without-http_upstream_zone_module
define Package/nginx-mod-luci/install
$(INSTALL_DIR) $(1)/etc/nginx
endef
define Package/nginx-mod-luci-ssl/install
+ $(Package/nginx-mod-luci/install)
$(INSTALL_DIR) $(1)/etc/nginx
$(INSTALL_BIN) ./files-luci-support/luci_nginx_ssl.conf $(1)/etc/nginx/luci_nginx_ssl.conf
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(if $(CONFIG_NGINX_NAXSI),$(chmod 0640 $(1)/etc/nginx/naxsi_core.rules))
endef
+Package/nginx-ssl/install = $(Package/nginx/install)
+Package/nginx-all-module/install = $(Package/nginx/install)
+
define Build/Prepare
- $(call Build/Prepare/Default)
- $(if $(CONFIG_NGINX_NAXSI),$(call Prepare/nginx-naxsi))
- $(if $(CONFIG_NGINX_LUA),$(call Prepare/lua-nginx))
- $(if $(CONFIG_NGINX_HTTP_BROTLI),$(call Prepare/nginx-brotli))
- $(if $(CONFIG_NGINX_HEADERS_MORE),$(call Prepare/nginx-headers-more))
+ $(call Build/Prepare/Default)
+ ifneq ($(BUILD_VARIANT),all-module)
+ $(if $(CONFIG_NGINX_NAXSI),$(call Prepare/nginx-naxsi))
+ $(if $(CONFIG_NGINX_LUA),$(call Prepare/lua-nginx))
+ $(if $(CONFIG_NGINX_HTTP_BROTLI),$(call Prepare/nginx-brotli))
+ $(if $(CONFIG_NGINX_HEADERS_MORE),$(call Prepare/nginx-headers-more))
+ $(if $(CONFIG_NGINX_RTMP_MODULE),$(call Prepare/nginx-rtmp))
+ $(if $(CONFIG_NGINX_TS_MODULE),$(call Prepare/nginx-ts))
+ else
+ $(call Prepare/nginx-naxsi)
+ $(call Prepare/lua-nginx)
+ $(call Prepare/nginx-brotli)
+ $(call Prepare/nginx-headers-more)
+ $(call Prepare/nginx-rtmp)
+ $(call Prepare/nginx-ts)
+ endif
endef
define Download/nginx-headers-more
endef
define Download/nginx-brotli
- VERSION:=37ab9b2933a0b756ba3447000b7f31d432ed8228
+ VERSION:=e26248ee361c04e25f581b92b85d95681bdffb39
SUBDIR:=nginx-brotli
FILE:=ngx-brotli-module-$(PKG_VERSION)-$$(VERSION).tar.gz
URL:=https://github.com/eustas/ngx_brotli.git
gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS)
endef
+define Download/nginx-rtmp
+ VERSION:=791b6136f02bc9613daf178723ac09f4df5a3bbf
+ SUBDIR:=nginx-rtmp
+ FILE:=ngx-rtmp-module-$(PKG_VERSION)-$$(VERSION).tar.gz
+ URL:=https://github.com/arut/nginx-rtmp-module.git
+ PROTO:=git
+endef
+
+define Prepare/nginx-rtmp
+ $(eval $(call Download,nginx-rtmp))
+ gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS)
+endef
+
+define Download/nginx-ts
+ VERSION:=ef2f874d95cc75747eb625a292524a702aefb0fd
+ SUBDIR:=nginx-ts
+ FILE:=ngx-ts-module-$(PKG_VERSION)-$$(VERSION).tar.gz
+ URL:=https://github.com/arut/nginx-ts-module.git
+ PROTO:=git
+endef
+
+define Prepare/nginx-ts
+ $(eval $(call Download,nginx-ts))
+ gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS)
+endef
+
define Download/nginx-naxsi
- VERSION:=fc4740f9734cabc1ce4c9d4cddc4b472eab1cc4b
+ VERSION:=951123ad456bdf5ac94e8d8819342fe3d49bc002
SUBDIR:=nginx-naxsi
FILE:=nginx-naxsi-module-$(PKG_VERSION)-$$(VERSION).tar.gz
URL:=https://github.com/nbs-system/naxsi.git
endef
define Download/lua-nginx
- VERSION:=55743aeba3075b34a250380b32bad6366eae6c30
+ VERSION:=576a10d246daf81c0ce1b959c50ee807769c01a8
SUBDIR:=lua-nginx
FILE:=lua-nginx-module-$(PKG_VERSION)-$$(VERSION).tar.gz
URL:=https://github.com/openresty/lua-nginx-module.git
endef
$(eval $(call BuildPackage,nginx))
+$(eval $(call BuildPackage,nginx-ssl))
+$(eval $(call BuildPackage,nginx-all-module))
$(eval $(call BuildPackage,nginx-mod-luci))
$(eval $(call BuildPackage,nginx-mod-luci-ssl))