diff options
Diffstat (limited to 'www-servers')
-rw-r--r-- | www-servers/apache/Manifest | 4 | ||||
-rw-r--r-- | www-servers/apache/apache-2.4.28.ebuild | 2 | ||||
-rw-r--r-- | www-servers/apache/metadata.xml | 1 | ||||
-rw-r--r-- | www-servers/nginx/Manifest | 2 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.12.2.ebuild | 999 | ||||
-rw-r--r-- | www-servers/tomcat/Manifest | 5 | ||||
-rw-r--r-- | www-servers/tomcat/files/tomcat-7.0.79-build.xml.patch | 149 | ||||
-rw-r--r-- | www-servers/tomcat/tomcat-7.0.79.ebuild | 148 | ||||
-rw-r--r-- | www-servers/tomcat/tomcat-7.0.81.ebuild | 2 |
9 files changed, 1007 insertions, 305 deletions
diff --git a/www-servers/apache/Manifest b/www-servers/apache/Manifest index bb9de76790ab..9448068f5657 100644 --- a/www-servers/apache/Manifest +++ b/www-servers/apache/Manifest @@ -15,8 +15,8 @@ EBUILD apache-2.2.31-r1.ebuild 3046 SHA256 24ce15f98c4a7aa7e095aedf4aed23f763a3b EBUILD apache-2.2.34.ebuild 2989 SHA256 582679d31812cf52f39a1056ee32ccb3ad11f4757e0ff10b56167639224007e9 SHA512 b256e889e63ec4a54fff8390c26072a5b1cfa86f44bf4c655e910740e6cac4d9781496ed332ff6db989a4381e4a837acc65579a045ddbcd3c2cd510a990ee1c3 WHIRLPOOL 662da708552c191a423300195d16928baf96922c6462f08a38a5fece6947b8f2302d4688b5011378c02c4e28b6faf5b2e65b3d4a0bd02f599fb50fb8f87ddd30 EBUILD apache-2.4.27-r1.ebuild 7750 SHA256 51733b100447f8cfdb2d1cf2ce980d6122d5e523cfa8ff7dbf45708970350171 SHA512 fa24f363d2cb031ca2467e53daeccd33f475e81801b6db2654063dca4b4a55be166b6b0dd12bd0943d88b032cc56a3ee09a51577660aedc449ea1df136cbffb5 WHIRLPOOL 840cd9ef44c9f2dce4d588ad211ac0612a6c7242e3778a0ebcf23f0345f7ecc855b1e5222c7107042be4e6f871ce504c0d388027b1e921f238863576a4044a8d EBUILD apache-2.4.27.ebuild 7761 SHA256 02a0e6b6d8150ee9766e9e1462ccff5036e00f97cda6540daa4bde08d356bca9 SHA512 efb043984a186acfa87e5cdbef60a65b16d33e870010d2c55ace8e7c9356202bdaec8c6c89586a1664967f27b57f0baaaf62da217c2168d9db0381ed564c1083 WHIRLPOOL 16b20195bede9c2c70451a58ba8fd8b85294a66f24a022feb683cd49719dd6cfc2dc43d451a50539727a6ba1fe5bb0a066cdb5a62fe8c4516b0b342bfe49536f -EBUILD apache-2.4.28.ebuild 7767 SHA256 e3ac8d458f9a64c1e20b31428ffe2586215a5a61387be9585a8a5cf10e02d7df SHA512 18d72e8d5d107cb127a29752ae507df58b2c2c5c2a01cce9fc85efd18fb75fd2121d2511793036144883425ef2f0054e66f09df2d728f29fda92d13a803918f0 WHIRLPOOL 496f1e3320beaa065b1a9057d507f9a51c2809500f7c39839466dc1d3fb68832ed9041719ab8229819f9d23a9b08060e2287d5fbbf36c89707e4d247f5232d70 +EBUILD apache-2.4.28.ebuild 7776 SHA256 8ab5eba66f653d827d1b1f1bd087638aba82f8193d49b491f9ff9c1d80c98c19 SHA512 48a4dcf833fb4896dee8ae571939e9f2066655e8e23cd8512ebabe202d8d9bb95ffd007881fc69930deb03c95988119645d1b169d8939fbdfed15cfea3ea150d WHIRLPOOL 3c1ace2f261f10efbcaf5ed8a61b19884cbd2c1b0a28eea5b67d9fa96f1b8c9f761e1bcc3b09dc7d595b8c348ac396819e71d4dc340a2aae694be04cea742e47 MISC ChangeLog 13802 SHA256 23fdf1fc5c8aedb3511251cc41d097c99895ab24e50f48377fe91a39c17b9ddc SHA512 1b92ff6422e0db92f25546ffc37b1d2200060959cb7f1af91159e08b181d66df45baae15df31586a3333877e78cc49e2fa3621a950f52193e43e861fc03babf0 WHIRLPOOL 42e008d07b470d3620d2bfd02049f97463f4dfffe9756bbcde277eb4c1b6ce21f6b2a0f8853226166510012316e22ca3a4b730180c18aa692a929041dc127830 MISC ChangeLog-2008 105137 SHA256 4afec18ad3c76df40314edb37b5512f81ca6223c38a899534d9d15342481accf SHA512 92dfd339b1c4ddec29222076a597220dc7faa504e2ee770339892f155febbf34004e60395f9eb21b43d3b1feb5f362c2946b69cc65151b5ba00fb53b35ccb9c6 WHIRLPOOL 89d77300aafb53ae0632904118064de19313fe51f635512314471e845574e7a624a770ae4ca4e335cff67d4fee92e062d28ef985a54c577a1b8b3ea0f621c0f8 MISC ChangeLog-2015 30572 SHA256 2608174e0cdfe351d5c8d25d21cbe9c6b7b98c6de9ee6d04da23c3de9fb95d6b SHA512 b76aaa5b8bc20f2fb45346e5d6f1f094e9f6b6f740054755bdc0399f581c78fd0c087f183ca756a63a08e8d96eedb292ffc4d2f6ddc00c8374435866e15fac9b WHIRLPOOL 8dd5292ae8fa15422c6d663420e7655cb13247380831d2f147dfdd0deaa51d6899e1c7f3b8ae9ae111074c8464e0bd94a38d491981ce84fc6268ab83c0af9396 -MISC metadata.xml 3360 SHA256 0a01a693df933e8ffeaf0795636a135cfd140dca0681b107cbde13920b516f86 SHA512 acbaf64bdaf376e4e1be9134878faf0d000d77138fe9b20f93d3c69d43d65c5e6817522f52b95028e47d1d9a2448c4ae8c1961acd90a31d6515c5e158db3364f WHIRLPOOL 1ee3e882c38d777a67ce4eb5cba9fd8a269f2feecb8b17ace06485179effd7e123b7e3235da5f40e0ea7840dbe1ea14d5eef2199a535c4661fe6105bcf156ef3 +MISC metadata.xml 3475 SHA256 22be8b853799e928c03d136ad6da773f7518e45176183a50360784509b69a243 SHA512 3f27045fba988cb5bb5b4a7c19dd7bbcbd50f7e8de00edd8e153b24246263a90e355aa38fa050044c023f5a180af3559b0be708c414eae6d5e895e982629a8d9 WHIRLPOOL ed14e0cd50bf9b92abe4b25b8617065ca9282d2fd8c9a0ff851cdc047be98c62548e8c9967bfb700c940e2dc9ee18d2c5b44938a7a78b666590d4c9ddb975ac0 diff --git a/www-servers/apache/apache-2.4.28.ebuild b/www-servers/apache/apache-2.4.28.ebuild index 33dec2f1025a..b4dc41e3f33b 100644 --- a/www-servers/apache/apache-2.4.28.ebuild +++ b/www-servers/apache/apache-2.4.28.ebuild @@ -40,7 +40,7 @@ lbmethod_heartbeat log_config log_forensic logio macro mime mime_magic negotiati proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_html proxy_http proxy_scgi proxy_fcgi proxy_wstunnel rewrite ratelimit remoteip reqtimeout setenvif slotmem_shm speling socache_shmcb status substitute unique_id userdir usertrack -unixd version vhost_alias xml2enc" +unixd version vhost_alias watchdog xml2enc" # The following are also in the source as of this version, but are not available # for user selection: # bucketeer case_filter case_filter_in echo http isapi optional_fn_export diff --git a/www-servers/apache/metadata.xml b/www-servers/apache/metadata.xml index 631209d0e12f..caef0de25ad4 100644 --- a/www-servers/apache/metadata.xml +++ b/www-servers/apache/metadata.xml @@ -34,6 +34,7 @@ <flag name="apache2_modules_proxy_wstunnel">Provides support for the tunnelling of web socket connections to a backend websockets server.</flag> <flag name="apache2_modules_ratelimit">Ratelimit module for transfer rate management</flag> <flag name="apache2_modules_remoteip">Remotip module for logging</flag> + <flag name="apache2_modules_watchdog">Provides infrastructure for other modules to periodically run tasks</flag> <flag name="apache2_modules_xml2enc">Enable xml2 encoding module</flag> </use> </pkgmetadata> diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest index e46ef82926fb..43abc56a5aa7 100644 --- a/www-servers/nginx/Manifest +++ b/www-servers/nginx/Manifest @@ -14,6 +14,7 @@ AUX nginx.service-r1 327 SHA256 17c404c5130115e3ebadb09e25cff0103b48ae7dbff2284f DIST modsecurity-2.9.1.tar.gz 4261212 SHA256 958cc5a7a7430f93fac0fd6f8b9aa92fc1801efce0cda797d6029d44080a9b24 SHA512 374733cbfc26e53d95b78c8f268a4e465d838163e9893fc24e33a9d272b114f1b287147bab6d0289575074cbbd94f48983e23fa59832cbcb32950046cea59269 WHIRLPOOL 5f41bebf032f8a269412d104b7632a06af4d4c495658c9cd1ebf69b82c10ce1bbcb34b9dd159a7b00e57348714a5e93ad3db19701dda51479accd3a9dc79a9cb DIST modsecurity-2.9.2.tar.gz 4298993 SHA256 41a8f73476ec891f3a9e8736b98b64ea5c2105f1ce15ea57a1f05b4bf2ffaeb5 SHA512 69c87ef6f7b6411f4803eb25af32969a1da59722121257c2edf345a3f5a4ab9ae8a49c886cbbfc722c5bda91c6d6ea55232f968c0a0407d7d7b3af53dc862c21 WHIRLPOOL cbdc090f5fefeb6b6b71362e03dc12c4c574b7726005e8b552f4db7b765fc77f4609af5f216fad6c336d886e112aa392e3f885a140a72d731eed78a1ed51cd88 DIST nginx-1.12.1.tar.gz 981093 SHA256 8793bf426485a30f91021b6b945a9fd8a84d87d17b566562c3797aba8fac76fb SHA512 3a2ad2a559b366dda92dd58c0fe40ee84dd60a3eaf72071454110e032c3e9a03f2a63b28fe3a615b527950521eeb533c687a2cc4c87524e1d8f3a0a5f043fdb6 WHIRLPOOL 17e91044636839f0c8c476879227f2de1633679199787157e5ed47c306dcb9597646c5be96957d51e38d96ddbb0346ec9f72b87c37023e19e572fa404ef0fd1f +DIST nginx-1.12.2.tar.gz 981687 SHA256 305f379da1d5fb5aefa79e45c829852ca6983c7cd2a79328f8e084a324cf0416 SHA512 3faa2043e237a7e1d15cc5661ac9d002a965220a78c25a863be9f19e01007347e53f776b61c229f6bd3d916cc1ccf92de260811f7b8092ec1b747fba7c0061f7 WHIRLPOOL 118bbb2f432603fe13cb673a85f7c998bc349df801eee5d043a6e2f7ecb197e1cb86b71c56babf7b41fc6c9ea3953665c14a1ce62a31080fb992637fecb20ee9 DIST nginx-1.13.3.tar.gz 985931 SHA256 5b73f98004c302fb8e4a172abf046d9ce77739a82487e4873b39f9b0dcbb0d72 SHA512 4a8924b1edd0b8476437680ea548a0bc983d360e73f2d5797f60cebc3ef7d6fb64e56b6aaf5a4fc1707d24519dc70d466a7bf1d336c463651928d65c2f7b5380 WHIRLPOOL 9cb1f77a60945d9c1df6e2589116406f31939882131759d3aa95b25edfe86bc5fe712a517a3b0f77a5fca2b3706884984b90e293a4e791faa824bbf0e964518e DIST nginx-1.13.4.tar.gz 988415 SHA256 de21f3c49ba65c611329d8759a63d72e5fcf719bc6f2a3270e2541348ef1fbba SHA512 068f59f0dfe68a9a20a141bf5416551bc758fe50a38b2576f0e1c9df2ec674c7348b151f3ce80b614ac20610bc85374be7cef69f95b925f4fde351716c1da740 WHIRLPOOL 333cf2542fef05a0709259e6c8ea363a2eaaade00e1e1f0f50df081af023826d452b7b5fd3e826a63cad1753949f469424723b0a9731a34418c06517e14d6f3a DIST nginx-1.13.5.tar.gz 988821 SHA256 0e75b94429b3f745377aeba3aff97da77bf2b03fcb9ff15b3bad9b038db29f2e SHA512 ffd0406a75a35da427522f58c9b710cde86acb1ebf48f4e6b7f6a44e04ccd83950fedc6dceed9e2ab5132e06559f3bf45935d5011fc436e7c2efd46ac1e86459 WHIRLPOOL 94703bff57b0c701709974748f07ba444143707ecfb98beb9ca0d30d66913cde07725f3ae82a44d5585709c35b0ff600eccab37f0b5df904b67cee8e2085207d @@ -43,6 +44,7 @@ DIST ngx_metrics-0.1.1.tar.gz 2964 SHA256 1c62ebb31e3caafad91720962770b0e7a4287f DIST ngx_mogilefs_module-1.0.4.tar.gz 11208 SHA256 7ac230d30907f013dff8d435a118619ea6168aa3714dba62c6962d350c6295ae SHA512 b8cb7eaf6274f4e2247dbcb39db05072d2b2d4361256a325fafab5533d7ce0c4ae9e2905b954dfcfa4789c9cab5cccf2ac1c3a1f02f6a327ed95b562d7773ed1 WHIRLPOOL 64c9b11ad938e6dbe5ba31298f1cd46f6e6bb4ba039c96b1e43bd85919d1606326f74b677f789ecabe0b0f4e0f08ac5aaf8148bf820de65aaa1e9966a28b9f61 DIST ngx_rtmp-1.2.0.tar.gz 519895 SHA256 a8026f5ade30b178a06f12c46dff053cfe12256016ad465a46646183086b16b0 SHA512 8965d9bee91a46375516ccd012d1c43cd23f15c0630d11ed01472b9a84504574b476f22c5584f43c972a8f923e9ae025b9b60c64aace0ed159c7279bcbd376c8 WHIRLPOOL ea18f30cac7310a9b9be92178266afab5403f9e2e52cf89142c3c8bd20c05b12390ae90bdb50ceabef7ba869ef95502fee2f046716daea95de10527acba826c8 EBUILD nginx-1.12.1.ebuild 37447 SHA256 2477ca64039f20ac1bca067199a20beea17ee7db62f91036133dbbf8d7c74c3f SHA512 dad602d21ce679a674455f478efad66d1532862d277e65797279c476d24242c4f4b04bd03168a14eee171148d3d2d6488b80a86b001036b087a02630d9ad6642 WHIRLPOOL 7fbb98e1a096b0c0709c49959e98601f7486960cdce075d93dd741849d805249c72c6ea26e53884198cbad1e2e9e97261728ff2ee77a421008062b05352038a4 +EBUILD nginx-1.12.2.ebuild 36985 SHA256 12ff14ac86b149692b4e2dca55c75c2c403afe9b3207d9b1b61f2e54ad3be322 SHA512 aec7cca518e74f298568faace878394c787d6d97bdbad3f031f2a7238138e1d02354b1aa1027f13f1e5d36d2328c900232f9fd0148abe641063ec06bb77e0e17 WHIRLPOOL b8afffb93229e40271b099138ce6abf2b2288e2fb102436b5829f54390725c4bbe131d152c004398009a62c0e9f5f8c7e31defdaa16bfebcfc1e41232501e554 EBUILD nginx-1.13.3.ebuild 37449 SHA256 32838376e6479d1f23bd1d0f500129df8d6c9bac8306fdf0c78bbc0829fc1ea6 SHA512 0adc9b68fb63bf90773fbc08d9a8c9f358cf447b54ff122f6069ffcf725af9dbf34deefa23fe8b4817044578cf1f47c0ca1857e4208bc30761c45a67ef964fe1 WHIRLPOOL d8548150c12049999f515657a91e645a249ad4eaca51485b8900f9e8bfbc633b08ec3d1e34855a3df2779054474782f531d7097fe78ec2617dc1ed54bf4d3b79 EBUILD nginx-1.13.4.ebuild 36979 SHA256 3bcaaf3a338d9f835a123972ceb5c850d65f4202a344eff387e3585db8e59d6c SHA512 e37db661b34783e2888a1dbb41dc056a4dde164e98679f64d79bea49b8241186cd845429bd025b31787d81a8ba464325955607490335d125529e8c82ff84f381 WHIRLPOOL 39da88134ed266beec030be3504630b22d1d5b8291223b82821ca2dfc0599285f78b682140f003ac93755f79d386b56d8d209ff6d639942deeb07e2d8c539320 EBUILD nginx-1.13.5.ebuild 36986 SHA256 2776b48e3377e64310dd3a27a0a7073c309ef2b6420a02ef7286f7f5dad9c676 SHA512 38717303b8e653edcabcfa080b3afa8188c5f6fed6b7c7f4ee512f05b2c572be99bf1ed91c1ee9b80958103eea1a91192faed3cd7c1d42bb80a02e8370226c4f WHIRLPOOL 339b305c223c2fd7ef7a11d614d871cecec7125c60e322dc4126c04222e7569f2434e2f8b1a0b99fcde72dc25ea623bba74ea195cb5d154270e5825ceacdb991 diff --git a/www-servers/nginx/nginx-1.12.2.ebuild b/www-servers/nginx/nginx-1.12.2.ebuild new file mode 100644 index 000000000000..cc482646f7cd --- /dev/null +++ b/www-servers/nginx/nginx-1.12.2.ebuild @@ -0,0 +1,999 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +# Maintainer notes: +# - http_rewrite-independent pcre-support makes sense for matching locations without an actual rewrite +# - any http-module activates the main http-functionality and overrides USE=-http +# - keep the following requirements in mind before adding external modules: +# * alive upstream +# * sane packaging +# * builds cleanly +# * does not need a patch for nginx core +# - TODO: test the google-perftools module (included in vanilla tarball) + +# prevent perl-module from adding automagic perl DEPENDs +GENTOO_DEPEND_ON_PERL="no" + +# devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) +DEVEL_KIT_MODULE_PV="0.3.0" +DEVEL_KIT_MODULE_P="ngx_devel_kit-${DEVEL_KIT_MODULE_PV}-r1" +DEVEL_KIT_MODULE_URI="https://github.com/simpl/ngx_devel_kit/archive/v${DEVEL_KIT_MODULE_PV}.tar.gz" +DEVEL_KIT_MODULE_WD="${WORKDIR}/ngx_devel_kit-${DEVEL_KIT_MODULE_PV}" + +# http_uploadprogress (https://github.com/masterzen/nginx-upload-progress-module, BSD-2 license) +HTTP_UPLOAD_PROGRESS_MODULE_PV="0.9.2" +HTTP_UPLOAD_PROGRESS_MODULE_P="ngx_http_upload_progress-${HTTP_UPLOAD_PROGRESS_MODULE_PV}-r1" +HTTP_UPLOAD_PROGRESS_MODULE_URI="https://github.com/masterzen/nginx-upload-progress-module/archive/v${HTTP_UPLOAD_PROGRESS_MODULE_PV}.tar.gz" +HTTP_UPLOAD_PROGRESS_MODULE_WD="${WORKDIR}/nginx-upload-progress-module-${HTTP_UPLOAD_PROGRESS_MODULE_PV}" + +# http_headers_more (https://github.com/agentzh/headers-more-nginx-module, BSD license) +HTTP_HEADERS_MORE_MODULE_PV="0.32" +HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}" +HTTP_HEADERS_MORE_MODULE_URI="https://github.com/agentzh/headers-more-nginx-module/archive/v${HTTP_HEADERS_MORE_MODULE_PV}.tar.gz" +HTTP_HEADERS_MORE_MODULE_WD="${WORKDIR}/headers-more-nginx-module-${HTTP_HEADERS_MORE_MODULE_PV}" + +# http_cache_purge (http://labs.frickle.com/nginx_ngx_cache_purge/, https://github.com/FRiCKLE/ngx_cache_purge, BSD-2 license) +HTTP_CACHE_PURGE_MODULE_PV="2.3" +HTTP_CACHE_PURGE_MODULE_P="ngx_http_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}" +HTTP_CACHE_PURGE_MODULE_URI="http://labs.frickle.com/files/ngx_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}.tar.gz" +HTTP_CACHE_PURGE_MODULE_WD="${WORKDIR}/ngx_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}" + +# http_slowfs_cache (http://labs.frickle.com/nginx_ngx_slowfs_cache/, BSD-2 license) +HTTP_SLOWFS_CACHE_MODULE_PV="1.10" +HTTP_SLOWFS_CACHE_MODULE_P="ngx_http_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}" +HTTP_SLOWFS_CACHE_MODULE_URI="http://labs.frickle.com/files/ngx_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}.tar.gz" +HTTP_SLOWFS_CACHE_MODULE_WD="${WORKDIR}/ngx_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}" + +# http_fancyindex (https://github.com/aperezdc/ngx-fancyindex, BSD license) +HTTP_FANCYINDEX_MODULE_PV="0.4.2" +HTTP_FANCYINDEX_MODULE_P="ngx_http_fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" +HTTP_FANCYINDEX_MODULE_URI="https://github.com/aperezdc/ngx-fancyindex/archive/v${HTTP_FANCYINDEX_MODULE_PV}.tar.gz" +HTTP_FANCYINDEX_MODULE_WD="${WORKDIR}/ngx-fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" + +# http_lua (https://github.com/openresty/lua-nginx-module, BSD license) +HTTP_LUA_MODULE_PV="0.10.10" +HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" +HTTP_LUA_MODULE_URI="https://github.com/openresty/lua-nginx-module/archive/v${HTTP_LUA_MODULE_PV}.tar.gz" +HTTP_LUA_MODULE_WD="${WORKDIR}/lua-nginx-module-${HTTP_LUA_MODULE_PV}" + +# http_auth_pam (https://github.com/stogh/ngx_http_auth_pam_module/, http://web.iti.upv.es/~sto/nginx/, BSD-2 license) +HTTP_AUTH_PAM_MODULE_PV="1.5.1" +HTTP_AUTH_PAM_MODULE_P="ngx_http_auth_pam-${HTTP_AUTH_PAM_MODULE_PV}" +HTTP_AUTH_PAM_MODULE_URI="https://github.com/stogh/ngx_http_auth_pam_module/archive/v${HTTP_AUTH_PAM_MODULE_PV}.tar.gz" +HTTP_AUTH_PAM_MODULE_WD="${WORKDIR}/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}" + +# http_upstream_check (https://github.com/yaoweibin/nginx_upstream_check_module, BSD license) +HTTP_UPSTREAM_CHECK_MODULE_PV="31b1b42873fa56620d8a873ac13f5f26b52d0cd6" +HTTP_UPSTREAM_CHECK_MODULE_P="ngx_http_upstream_check-${HTTP_UPSTREAM_CHECK_MODULE_PV}" +HTTP_UPSTREAM_CHECK_MODULE_URI="https://github.com/yaoweibin/nginx_upstream_check_module/archive/${HTTP_UPSTREAM_CHECK_MODULE_PV}.tar.gz" +HTTP_UPSTREAM_CHECK_MODULE_WD="${WORKDIR}/nginx_upstream_check_module-${HTTP_UPSTREAM_CHECK_MODULE_PV}" + +# http_metrics (https://github.com/zenops/ngx_metrics, BSD license) +HTTP_METRICS_MODULE_PV="0.1.1" +HTTP_METRICS_MODULE_P="ngx_metrics-${HTTP_METRICS_MODULE_PV}" +HTTP_METRICS_MODULE_URI="https://github.com/madvertise/ngx_metrics/archive/v${HTTP_METRICS_MODULE_PV}.tar.gz" +HTTP_METRICS_MODULE_WD="${WORKDIR}/ngx_metrics-${HTTP_METRICS_MODULE_PV}" + +# naxsi-core (https://github.com/nbs-system/naxsi, GPLv2+) +HTTP_NAXSI_MODULE_PV="0.55.3" +HTTP_NAXSI_MODULE_P="ngx_http_naxsi-${HTTP_NAXSI_MODULE_PV}" +HTTP_NAXSI_MODULE_URI="https://github.com/nbs-system/naxsi/archive/${HTTP_NAXSI_MODULE_PV}.tar.gz" +HTTP_NAXSI_MODULE_WD="${WORKDIR}/naxsi-${HTTP_NAXSI_MODULE_PV}/naxsi_src" + +# nginx-rtmp-module (https://github.com/arut/nginx-rtmp-module, BSD license) +RTMP_MODULE_PV="1.2.0" +RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" +RTMP_MODULE_URI="https://github.com/arut/nginx-rtmp-module/archive/v${RTMP_MODULE_PV}.tar.gz" +RTMP_MODULE_WD="${WORKDIR}/nginx-rtmp-module-${RTMP_MODULE_PV}" + +# nginx-dav-ext-module (https://github.com/arut/nginx-dav-ext-module, BSD license) +HTTP_DAV_EXT_MODULE_PV="0.1.0" +HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" +HTTP_DAV_EXT_MODULE_URI="https://github.com/arut/nginx-dav-ext-module/archive/v${HTTP_DAV_EXT_MODULE_PV}.tar.gz" +HTTP_DAV_EXT_MODULE_WD="${WORKDIR}/nginx-dav-ext-module-${HTTP_DAV_EXT_MODULE_PV}" + +# echo-nginx-module (https://github.com/openresty/echo-nginx-module, BSD license) +HTTP_ECHO_MODULE_PV="0.61" +HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" +HTTP_ECHO_MODULE_URI="https://github.com/openresty/echo-nginx-module/archive/v${HTTP_ECHO_MODULE_PV}.tar.gz" +HTTP_ECHO_MODULE_WD="${WORKDIR}/echo-nginx-module-${HTTP_ECHO_MODULE_PV}" + +# mod_security for nginx (https://modsecurity.org/, Apache-2.0) +# keep the MODULE_P here consistent with upstream to avoid tarball duplication +HTTP_SECURITY_MODULE_PV="2.9.2" +HTTP_SECURITY_MODULE_P="modsecurity-${HTTP_SECURITY_MODULE_PV}" +HTTP_SECURITY_MODULE_URI="https://www.modsecurity.org/tarball/${HTTP_SECURITY_MODULE_PV}/${HTTP_SECURITY_MODULE_P}.tar.gz" +HTTP_SECURITY_MODULE_WD="${WORKDIR}/${HTTP_SECURITY_MODULE_P}" + +# push-stream-module (http://www.nginxpushstream.com, https://github.com/wandenberg/nginx-push-stream-module, GPL-3) +HTTP_PUSH_STREAM_MODULE_PV="0.5.2" +HTTP_PUSH_STREAM_MODULE_P="ngx_http_push_stream-${HTTP_PUSH_STREAM_MODULE_PV}" +HTTP_PUSH_STREAM_MODULE_URI="https://github.com/wandenberg/nginx-push-stream-module/archive/${HTTP_PUSH_STREAM_MODULE_PV}.tar.gz" +HTTP_PUSH_STREAM_MODULE_WD="${WORKDIR}/nginx-push-stream-module-${HTTP_PUSH_STREAM_MODULE_PV}" + +# sticky-module (https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng, BSD-2) +HTTP_STICKY_MODULE_PV="1.2.6-10-g08a395c66e42" +HTTP_STICKY_MODULE_P="nginx_http_sticky_module_ng-${HTTP_STICKY_MODULE_PV}" +HTTP_STICKY_MODULE_URI="https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/${HTTP_STICKY_MODULE_PV}.tar.bz2" +HTTP_STICKY_MODULE_WD="${WORKDIR}/nginx-goodies-nginx-sticky-module-ng-08a395c66e42" + +# mogilefs-module (https://github.com/vkholodkov/nginx-mogilefs-module, BSD-2) +HTTP_MOGILEFS_MODULE_PV="1.0.4" +HTTP_MOGILEFS_MODULE_P="ngx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" +HTTP_MOGILEFS_MODULE_URI="https://github.com/vkholodkov/nginx-mogilefs-module/archive/${HTTP_MOGILEFS_MODULE_PV}.tar.gz" +HTTP_MOGILEFS_MODULE_WD="${WORKDIR}/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" + +# memc-module (https://github.com/openresty/memc-nginx-module, BSD-2) +HTTP_MEMC_MODULE_PV="0.18" +HTTP_MEMC_MODULE_P="ngx_memc_module-${HTTP_MEMC_MODULE_PV}" +HTTP_MEMC_MODULE_URI="https://github.com/openresty/memc-nginx-module/archive/v${HTTP_MEMC_MODULE_PV}.tar.gz" +HTTP_MEMC_MODULE_WD="${WORKDIR}/memc-nginx-module-${HTTP_MEMC_MODULE_PV}" + +# nginx-ldap-auth-module (https://github.com/kvspb/nginx-auth-ldap, BSD-2) +HTTP_LDAP_MODULE_PV="49a8b4d28fc4a518563c82e0b52821e5f37db1fc" +HTTP_LDAP_MODULE_P="nginx-auth-ldap-${HTTP_LDAP_MODULE_PV}" +HTTP_LDAP_MODULE_URI="https://github.com/kvspb/nginx-auth-ldap/archive/${HTTP_LDAP_MODULE_PV}.tar.gz" +HTTP_LDAP_MODULE_WD="${WORKDIR}/nginx-auth-ldap-${HTTP_LDAP_MODULE_PV}" + +# We handle deps below ourselves +SSL_DEPS_SKIP=1 +AUTOTOOLS_AUTO_DEPEND="no" + +inherit autotools ssl-cert toolchain-funcs perl-module flag-o-matic user systemd versionator multilib + +DESCRIPTION="Robust, small and high performance http and reverse proxy server" +HOMEPAGE="https://nginx.org" +SRC_URI="https://nginx.org/download/${P}.tar.gz + ${DEVEL_KIT_MODULE_URI} -> ${DEVEL_KIT_MODULE_P}.tar.gz + nginx_modules_http_upload_progress? ( ${HTTP_UPLOAD_PROGRESS_MODULE_URI} -> ${HTTP_UPLOAD_PROGRESS_MODULE_P}.tar.gz ) + nginx_modules_http_headers_more? ( ${HTTP_HEADERS_MORE_MODULE_URI} -> ${HTTP_HEADERS_MORE_MODULE_P}.tar.gz ) + nginx_modules_http_cache_purge? ( ${HTTP_CACHE_PURGE_MODULE_URI} -> ${HTTP_CACHE_PURGE_MODULE_P}.tar.gz ) + nginx_modules_http_slowfs_cache? ( ${HTTP_SLOWFS_CACHE_MODULE_URI} -> ${HTTP_SLOWFS_CACHE_MODULE_P}.tar.gz ) + nginx_modules_http_fancyindex? ( ${HTTP_FANCYINDEX_MODULE_URI} -> ${HTTP_FANCYINDEX_MODULE_P}.tar.gz ) + nginx_modules_http_lua? ( ${HTTP_LUA_MODULE_URI} -> ${HTTP_LUA_MODULE_P}.tar.gz ) + nginx_modules_http_auth_pam? ( ${HTTP_AUTH_PAM_MODULE_URI} -> ${HTTP_AUTH_PAM_MODULE_P}.tar.gz ) + nginx_modules_http_upstream_check? ( ${HTTP_UPSTREAM_CHECK_MODULE_URI} -> ${HTTP_UPSTREAM_CHECK_MODULE_P}.tar.gz ) + nginx_modules_http_metrics? ( ${HTTP_METRICS_MODULE_URI} -> ${HTTP_METRICS_MODULE_P}.tar.gz ) + nginx_modules_http_naxsi? ( ${HTTP_NAXSI_MODULE_URI} -> ${HTTP_NAXSI_MODULE_P}.tar.gz ) + rtmp? ( ${RTMP_MODULE_URI} -> ${RTMP_MODULE_P}.tar.gz ) + nginx_modules_http_dav_ext? ( ${HTTP_DAV_EXT_MODULE_URI} -> ${HTTP_DAV_EXT_MODULE_P}.tar.gz ) + nginx_modules_http_echo? ( ${HTTP_ECHO_MODULE_URI} -> ${HTTP_ECHO_MODULE_P}.tar.gz ) + nginx_modules_http_security? ( ${HTTP_SECURITY_MODULE_URI} -> ${HTTP_SECURITY_MODULE_P}.tar.gz ) + nginx_modules_http_push_stream? ( ${HTTP_PUSH_STREAM_MODULE_URI} -> ${HTTP_PUSH_STREAM_MODULE_P}.tar.gz ) + nginx_modules_http_sticky? ( ${HTTP_STICKY_MODULE_URI} -> ${HTTP_STICKY_MODULE_P}.tar.bz2 ) + nginx_modules_http_mogilefs? ( ${HTTP_MOGILEFS_MODULE_URI} -> ${HTTP_MOGILEFS_MODULE_P}.tar.gz ) + nginx_modules_http_memc? ( ${HTTP_MEMC_MODULE_URI} -> ${HTTP_MEMC_MODULE_P}.tar.gz ) + nginx_modules_http_auth_ldap? ( ${HTTP_LDAP_MODULE_URI} -> ${HTTP_LDAP_MODULE_P}.tar.gz )" + +LICENSE="BSD-2 BSD SSLeay MIT GPL-2 GPL-2+ + nginx_modules_http_security? ( Apache-2.0 ) + nginx_modules_http_push_stream? ( GPL-3 )" + +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" + +# Package doesn't provide a real test suite +RESTRICT="test" + +NGINX_MODULES_STD="access auth_basic autoindex browser charset empty_gif + fastcgi geo gzip limit_req limit_conn map memcached proxy referer + rewrite scgi ssi split_clients upstream_hash upstream_ip_hash + upstream_keepalive upstream_least_conn upstream_zone userid uwsgi" +NGINX_MODULES_OPT="addition auth_request dav degradation flv geoip gunzip + gzip_static image_filter mp4 perl random_index realip secure_link + slice stub_status sub xslt" +NGINX_MODULES_STREAM_STD="access geo limit_conn map return split_clients + upstream_hash upstream_least_conn upstream_zone" +NGINX_MODULES_STREAM_OPT="geoip realip ssl_preread" +NGINX_MODULES_MAIL="imap pop3 smtp" +NGINX_MODULES_3RD=" + http_upload_progress + http_headers_more + http_cache_purge + http_slowfs_cache + http_fancyindex + http_lua + http_auth_pam + http_upstream_check + http_metrics + http_naxsi + http_dav_ext + http_echo + http_security + http_push_stream + http_sticky + http_mogilefs + http_memc + http_auth_ldap" + +IUSE="aio debug +http +http2 +http-cache +ipv6 libatomic libressl luajit +pcre + pcre-jit rtmp selinux ssl threads userland_GNU vim-syntax" + +for mod in $NGINX_MODULES_STD; do + IUSE="${IUSE} +nginx_modules_http_${mod}" +done + +for mod in $NGINX_MODULES_OPT; do + IUSE="${IUSE} nginx_modules_http_${mod}" +done + +for mod in $NGINX_MODULES_STREAM_STD; do + IUSE="${IUSE} nginx_modules_stream_${mod}" +done + +for mod in $NGINX_MODULES_STREAM_OPT; do + IUSE="${IUSE} nginx_modules_stream_${mod}" +done + +for mod in $NGINX_MODULES_MAIL; do + IUSE="${IUSE} nginx_modules_mail_${mod}" +done + +for mod in $NGINX_MODULES_3RD; do + IUSE="${IUSE} nginx_modules_${mod}" +done + +# Add so we can warn users updating about config changes +# @TODO: jbergstroem: remove on next release series +IUSE="${IUSE} nginx_modules_http_spdy" + +CDEPEND=" + pcre? ( dev-libs/libpcre:= ) + pcre-jit? ( dev-libs/libpcre:=[jit] ) + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + ) + http2? ( + !libressl? ( >=dev-libs/openssl-1.0.1c:0= ) + libressl? ( dev-libs/libressl:= ) + ) + http-cache? ( + userland_GNU? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + ) + ) + nginx_modules_http_geoip? ( dev-libs/geoip ) + nginx_modules_http_gunzip? ( sys-libs/zlib ) + nginx_modules_http_gzip? ( sys-libs/zlib ) + nginx_modules_http_gzip_static? ( sys-libs/zlib ) + nginx_modules_http_image_filter? ( media-libs/gd:=[jpeg,png] ) + nginx_modules_http_perl? ( >=dev-lang/perl-5.8:= ) + nginx_modules_http_rewrite? ( dev-libs/libpcre:= ) + nginx_modules_http_secure_link? ( + userland_GNU? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + ) + ) + nginx_modules_http_xslt? ( dev-libs/libxml2:= dev-libs/libxslt ) + nginx_modules_http_lua? ( !luajit? ( dev-lang/lua:0= ) luajit? ( dev-lang/luajit:2= ) ) + nginx_modules_http_auth_pam? ( virtual/pam ) + nginx_modules_http_metrics? ( dev-libs/yajl:= ) + nginx_modules_http_dav_ext? ( dev-libs/expat ) + nginx_modules_http_security? ( + dev-libs/apr:= + dev-libs/apr-util:= + dev-libs/libxml2:= + net-misc/curl + www-servers/apache + ) + nginx_modules_http_auth_ldap? ( net-nds/openldap[ssl?] )" +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-nginx ) + !www-servers/nginx:mainline" +DEPEND="${CDEPEND} + nginx_modules_http_security? ( ${AUTOTOOLS_DEPEND} ) + arm? ( dev-libs/libatomic_ops ) + libatomic? ( dev-libs/libatomic_ops )" +PDEPEND="vim-syntax? ( app-vim/nginx-syntax )" + +REQUIRED_USE="pcre-jit? ( pcre ) + nginx_modules_http_lua? ( nginx_modules_http_rewrite ) + nginx_modules_http_naxsi? ( pcre ) + nginx_modules_http_dav_ext? ( nginx_modules_http_dav ) + nginx_modules_http_metrics? ( nginx_modules_http_stub_status ) + nginx_modules_http_security? ( pcre ) + nginx_modules_http_push_stream? ( ssl )" + +pkg_setup() { + NGINX_HOME="/var/lib/nginx" + NGINX_HOME_TMP="${NGINX_HOME}/tmp" + + ebegin "Creating nginx user and group" + enewgroup ${PN} + enewuser ${PN} -1 -1 "${NGINX_HOME}" ${PN} + eend $? + + if use libatomic; then + ewarn "GCC 4.1+ features built-in atomic operations." + ewarn "Using libatomic_ops is only needed if using" + ewarn "a different compiler or a GCC prior to 4.1" + fi + + if [[ -n $NGINX_ADD_MODULES ]]; then + ewarn "You are building custom modules via \$NGINX_ADD_MODULES!" + ewarn "This nginx installation is not supported!" + ewarn "Make sure you can reproduce the bug without those modules" + ewarn "_before_ reporting bugs." + fi + + if use !http; then + ewarn "To actually disable all http-functionality you also have to disable" + ewarn "all nginx http modules." + fi + + if use nginx_modules_http_mogilefs && use threads; then + eerror "mogilefs won't compile with threads support." + eerror "Please disable either flag and try again." + die "Can't compile mogilefs with threads support" + fi +} + +src_prepare() { + eapply "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" + eapply "${FILESDIR}/${PN}-httpoxy-mitigation-r1.patch" + + if use nginx_modules_http_upstream_check; then + #eapply -p0 "${HTTP_UPSTREAM_CHECK_MODULE_WD}"/check_1.11.1+.patch + eapply -p0 "${FILESDIR}"/http_upstream_check-nginx-1.11.5+.patch + fi + + if use nginx_modules_http_security; then + cd "${HTTP_SECURITY_MODULE_WD}" || die + + eautoreconf + + if use luajit ; then + sed -i \ + -e 's|^\(LUA_PKGNAMES\)=.*|\1="luajit"|' \ + configure || die + fi + + cd "${S}" || die + fi + + if use nginx_modules_http_upload_progress; then + cd "${HTTP_UPLOAD_PROGRESS_MODULE_WD}" || die + eapply "${FILESDIR}"/http_uploadprogress-issue_50-r1.patch + cd "${S}" || die + fi + + find auto/ -type f -print0 | xargs -0 sed -i 's:\&\& make:\&\& \\$(MAKE):' || die + # We have config protection, don't rename etc files + sed -i 's:.default::' auto/install || die + # remove useless files + sed -i -e '/koi-/d' -e '/win-/d' auto/install || die + + # don't install to /etc/nginx/ if not in use + local module + for module in fastcgi scgi uwsgi ; do + if ! use nginx_modules_http_${module}; then + sed -i -e "/${module}/d" auto/install || die + fi + done + + eapply_user +} + +src_configure() { + # mod_security needs to generate nginx/modsecurity/config before including it + if use nginx_modules_http_security; then + cd "${HTTP_SECURITY_MODULE_WD}" || die + + ./configure \ + --enable-standalone-module \ + --disable-mlogc \ + --with-ssdeep=no \ + $(use_enable pcre-jit) \ + $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" + + cd "${S}" || die + fi + + local myconf=() http_enabled= mail_enabled= stream_enabled= + + use aio && myconf+=( --with-file-aio ) + use debug && myconf+=( --with-debug ) + use http2 && myconf+=( --with-http_v2_module ) + use libatomic && myconf+=( --with-libatomic ) + use pcre && myconf+=( --with-pcre ) + use pcre-jit && myconf+=( --with-pcre-jit ) + use threads && myconf+=( --with-threads ) + + # HTTP modules + for mod in $NGINX_MODULES_STD; do + if use nginx_modules_http_${mod}; then + http_enabled=1 + else + myconf+=( --without-http_${mod}_module ) + fi + done + + for mod in $NGINX_MODULES_OPT; do + if use nginx_modules_http_${mod}; then + http_enabled=1 + myconf+=( --with-http_${mod}_module ) + fi + done + + if use nginx_modules_http_fastcgi; then + myconf+=( --with-http_realip_module ) + fi + + # third-party modules + if use nginx_modules_http_upload_progress; then + http_enabled=1 + myconf+=( --add-module=${HTTP_UPLOAD_PROGRESS_MODULE_WD} ) + fi + + if use nginx_modules_http_headers_more; then + http_enabled=1 + myconf+=( --add-module=${HTTP_HEADERS_MORE_MODULE_WD} ) + fi + + if use nginx_modules_http_cache_purge; then + http_enabled=1 + myconf+=( --add-module=${HTTP_CACHE_PURGE_MODULE_WD} ) + fi + + if use nginx_modules_http_slowfs_cache; then + http_enabled=1 + myconf+=( --add-module=${HTTP_SLOWFS_CACHE_MODULE_WD} ) + fi + + if use nginx_modules_http_fancyindex; then + http_enabled=1 + myconf+=( --add-module=${HTTP_FANCYINDEX_MODULE_WD} ) + fi + + if use nginx_modules_http_lua; then + http_enabled=1 + if use luajit; then + export LUAJIT_LIB=$(pkg-config --variable libdir luajit) + export LUAJIT_INC=$(pkg-config --variable includedir luajit) + else + export LUA_LIB=$(pkg-config --variable libdir lua) + export LUA_INC=$(pkg-config --variable includedir lua) + fi + myconf+=( --add-module=${DEVEL_KIT_MODULE_WD} ) + myconf+=( --add-module=${HTTP_LUA_MODULE_WD} ) + fi + + if use nginx_modules_http_auth_pam; then + http_enabled=1 + myconf+=( --add-module=${HTTP_AUTH_PAM_MODULE_WD} ) + fi + + if use nginx_modules_http_upstream_check; then + http_enabled=1 + myconf+=( --add-module=${HTTP_UPSTREAM_CHECK_MODULE_WD} ) + fi + + if use nginx_modules_http_metrics; then + http_enabled=1 + myconf+=( --add-module=${HTTP_METRICS_MODULE_WD} ) + fi + + if use nginx_modules_http_naxsi ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_NAXSI_MODULE_WD} ) + fi + + if use rtmp ; then + http_enabled=1 + myconf+=( --add-module=${RTMP_MODULE_WD} ) + fi + + if use nginx_modules_http_dav_ext ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_DAV_EXT_MODULE_WD} ) + fi + + if use nginx_modules_http_echo ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_ECHO_MODULE_WD} ) + fi + + if use nginx_modules_http_security ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_SECURITY_MODULE_WD}/nginx/modsecurity ) + fi + + if use nginx_modules_http_push_stream ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_PUSH_STREAM_MODULE_WD} ) + fi + + if use nginx_modules_http_sticky ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_STICKY_MODULE_WD} ) + fi + + if use nginx_modules_http_mogilefs ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_MOGILEFS_MODULE_WD} ) + fi + + if use nginx_modules_http_memc ; then + http_enabled=1 + myconf+=( --add-module=${HTTP_MEMC_MODULE_WD} ) + fi + + if use nginx_modules_http_auth_ldap; then + http_enabled=1 + myconf+=( --add-module=${HTTP_LDAP_MODULE_WD} ) + fi + + if use http || use http-cache || use http2; then + http_enabled=1 + fi + + if [ $http_enabled ]; then + use http-cache || myconf+=( --without-http-cache ) + use ssl && myconf+=( --with-http_ssl_module ) + else + myconf+=( --without-http --without-http-cache ) + fi + + # Stream modules + for mod in $NGINX_MODULES_STREAM_STD; do + if use nginx_modules_stream_${mod}; then + stream_enabled=1 + else + myconf+=( --without-stream_${mod}_module ) + fi + done + + for mod in $NGINX_MODULES_STREAM_OPT; do + if use nginx_modules_stream_${mod}; then + stream_enabled=1 + myconf+=( --with-stream_${mod}_module ) + fi + done + + if [ $stream_enabled ]; then + myconf+=( --with-stream ) + use ssl && myconf+=( --with-stream_ssl_module ) + fi + + # MAIL modules + for mod in $NGINX_MODULES_MAIL; do + if use nginx_modules_mail_${mod}; then + mail_enabled=1 + else + myconf+=( --without-mail_${mod}_module ) + fi + done + + if [ $mail_enabled ]; then + myconf+=( --with-mail ) + use ssl && myconf+=( --with-mail_ssl_module ) + fi + + # custom modules + for mod in $NGINX_ADD_MODULES; do + myconf+=( --add-module=${mod} ) + done + + # https://bugs.gentoo.org/286772 + export LANG=C LC_ALL=C + tc-export CC + + if ! use prefix; then + myconf+=( --user=${PN} ) + myconf+=( --group=${PN} ) + fi + + local WITHOUT_IPV6= + if ! use ipv6; then + WITHOUT_IPV6=" -DNGX_HAVE_INET6=0" + fi + + ./configure \ + --prefix="${EPREFIX}"/usr \ + --conf-path="${EPREFIX}"/etc/${PN}/${PN}.conf \ + --error-log-path="${EPREFIX}"/var/log/${PN}/error_log \ + --pid-path="${EPREFIX}"/run/${PN}.pid \ + --lock-path="${EPREFIX}"/run/lock/${PN}.lock \ + --with-cc-opt="-I${EROOT}usr/include${WITHOUT_IPV6}" \ + --with-ld-opt="-L${EROOT}usr/$(get_libdir)" \ + --http-log-path="${EPREFIX}"/var/log/${PN}/access_log \ + --http-client-body-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/client \ + --http-proxy-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/proxy \ + --http-fastcgi-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/fastcgi \ + --http-scgi-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/scgi \ + --http-uwsgi-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/uwsgi \ + --with-compat \ + "${myconf[@]}" || die "configure failed" + + # A purely cosmetic change that makes nginx -V more readable. This can be + # good if people outside the gentoo community would troubleshoot and + # question the users setup. + sed -i -e "s|${WORKDIR}|external_module|g" objs/ngx_auto_config.h || die +} + +src_compile() { + use nginx_modules_http_security && emake -C "${HTTP_SECURITY_MODULE_WD}" + + # https://bugs.gentoo.org/286772 + export LANG=C LC_ALL=C + emake LINK="${CC} ${LDFLAGS}" OTHERLDFLAGS="${LDFLAGS}" +} + +src_install() { + emake DESTDIR="${D%/}" install + + cp "${FILESDIR}"/nginx.conf-r2 "${ED}"etc/nginx/nginx.conf || die + + newinitd "${FILESDIR}"/nginx.initd-r4 nginx + newconfd "${FILESDIR}"/nginx.confd nginx + + systemd_newunit "${FILESDIR}"/nginx.service-r1 nginx.service + + doman man/nginx.8 + dodoc CHANGES* README + + # just keepdir. do not copy the default htdocs files (bug #449136) + keepdir /var/www/localhost + rm -rf "${D}"usr/html || die + + # set up a list of directories to keep + local keepdir_list="${NGINX_HOME_TMP}"/client + local module + for module in proxy fastcgi scgi uwsgi; do + use nginx_modules_http_${module} && keepdir_list+=" ${NGINX_HOME_TMP}/${module}" + done + + keepdir /var/log/nginx ${keepdir_list} + + # this solves a problem with SELinux where nginx doesn't see the directories + # as root and tries to create them as nginx + fperms 0750 "${NGINX_HOME_TMP}" + fowners ${PN}:0 "${NGINX_HOME_TMP}" + + fperms 0700 ${keepdir_list} + fowners ${PN}:${PN} ${keepdir_list} + + fperms 0710 /var/log/nginx + fowners 0:${PN} /var/log/nginx + + # logrotate + insinto /etc/logrotate.d + newins "${FILESDIR}"/nginx.logrotate-r1 nginx + + if use nginx_modules_http_perl; then + cd "${S}"/objs/src/http/modules/perl/ || die + emake DESTDIR="${D}" INSTALLDIRS=vendor + perl_delete_localpod + cd "${S}" || die + fi + + if use nginx_modules_http_cache_purge; then + docinto ${HTTP_CACHE_PURGE_MODULE_P} + dodoc "${HTTP_CACHE_PURGE_MODULE_WD}"/{CHANGES,README.md,TODO.md} + fi + + if use nginx_modules_http_slowfs_cache; then + docinto ${HTTP_SLOWFS_CACHE_MODULE_P} + dodoc "${HTTP_SLOWFS_CACHE_MODULE_WD}"/{CHANGES,README.md} + fi + + if use nginx_modules_http_fancyindex; then + docinto ${HTTP_FANCYINDEX_MODULE_P} + dodoc "${HTTP_FANCYINDEX_MODULE_WD}"/README.rst + fi + + if use nginx_modules_http_lua; then + docinto ${HTTP_LUA_MODULE_P} + dodoc "${HTTP_LUA_MODULE_WD}"/README.markdown + fi + + if use nginx_modules_http_auth_pam; then + docinto ${HTTP_AUTH_PAM_MODULE_P} + dodoc "${HTTP_AUTH_PAM_MODULE_WD}"/{README.md,ChangeLog} + fi + + if use nginx_modules_http_upstream_check; then + docinto ${HTTP_UPSTREAM_CHECK_MODULE_P} + dodoc "${HTTP_UPSTREAM_CHECK_MODULE_WD}"/{README,CHANGES} + fi + + if use nginx_modules_http_naxsi; then + insinto /etc/nginx + doins "${HTTP_NAXSI_MODULE_WD}"/../naxsi_config/naxsi_core.rules + fi + + if use rtmp; then + docinto ${RTMP_MODULE_P} + dodoc "${RTMP_MODULE_WD}"/{AUTHORS,README.md,stat.xsl} + fi + + if use nginx_modules_http_dav_ext; then + docinto ${HTTP_DAV_EXT_MODULE_P} + dodoc "${HTTP_DAV_EXT_MODULE_WD}"/README.rst + fi + + if use nginx_modules_http_echo; then + docinto ${HTTP_ECHO_MODULE_P} + dodoc "${HTTP_ECHO_MODULE_WD}"/README.markdown + fi + + if use nginx_modules_http_security; then + docinto ${HTTP_SECURITY_MODULE_P} + dodoc "${HTTP_SECURITY_MODULE_WD}"/{CHANGES,README.TXT,authors.txt} + fi + + if use nginx_modules_http_push_stream; then + docinto ${HTTP_PUSH_STREAM_MODULE_P} + dodoc "${HTTP_PUSH_STREAM_MODULE_WD}"/{AUTHORS,CHANGELOG.textile,README.textile} + fi + + if use nginx_modules_http_sticky; then + docinto ${HTTP_STICKY_MODULE_P} + dodoc "${HTTP_STICKY_MODULE_WD}"/{README.md,Changelog.txt,docs/sticky.pdf} + fi + + if use nginx_modules_http_memc; then + docinto ${HTTP_MEMC_MODULE_P} + dodoc "${HTTP_MEMC_MODULE_WD}"/README.markdown + fi + + if use nginx_modules_http_auth_ldap; then + docinto ${HTTP_LDAP_MODULE_P} + dodoc "${HTTP_LDAP_MODULE_WD}"/example.conf + fi +} + +pkg_postinst() { + if use ssl; then + if [[ ! -f "${EROOT}"etc/ssl/${PN}/${PN}.key ]]; then + install_cert /etc/ssl/${PN}/${PN} + use prefix || chown ${PN}:${PN} "${EROOT}"etc/ssl/${PN}/${PN}.{crt,csr,key,pem} + fi + fi + + if use nginx_modules_http_spdy; then + ewarn "" + ewarn "In nginx 1.9.5 the spdy module was superseded by http2." + ewarn "Update your configs and package.use accordingly." + fi + + if use nginx_modules_http_lua; then + ewarn "" + ewarn "While you can build lua 3rd party module against ${P}" + ewarn "the author warns that >=${PN}-1.11.11 is still not an" + ewarn "officially supported target yet. You are on your own." + ewarn "Expect runtime failures, memory leaks and other problems!" + fi + + if use nginx_modules_http_lua && use http2; then + ewarn "" + ewarn "Lua 3rd party module author warns against using ${P} with" + ewarn "NGINX_MODULES_HTTP=\"lua http2\". For more info, see http://git.io/OldLsg" + fi + + local _n_permission_layout_checks=0 + local _has_to_adjust_permissions=0 + local _has_to_show_permission_warning=0 + + # Defaults to 1 to inform people doing a fresh installation + # that we ship modified {scgi,uwsgi,fastcgi}_params files + local _has_to_show_httpoxy_mitigation_notice=1 + + local _replacing_version= + for _replacing_version in ${REPLACING_VERSIONS}; do + _n_permission_layout_checks=$((${_n_permission_layout_checks}+1)) + + if [[ ${_n_permission_layout_checks} -gt 1 ]]; then + # Should never happen: + # Package is abusing slots but doesn't allow multiple parallel installations. + # If we run into this situation it is unsafe to automatically adjust any + # permission... + _has_to_show_permission_warning=1 + + ewarn "Replacing multiple ${PN}' versions is unsupported! " \ + "You will have to adjust permissions on your own." + + break + fi + + local _replacing_version_branch=$(get_version_component_range 1-2 "${_replacing_version}") + debug-print "Updating an existing installation (v${_replacing_version}; branch '${_replacing_version_branch}') ..." + + # Do we need to adjust permissions to fix CVE-2013-0337 (bug #458726, #469094)? + # This was before we introduced multiple nginx versions so we + # do not need to distinguish between stable and mainline + local _need_to_fix_CVE2013_0337=1 + + if version_is_at_least "1.4.1-r2" "${_replacing_version}"; then + # We are updating an installation which should already be fixed + _need_to_fix_CVE2013_0337=0 + debug-print "Skipping CVE-2013-0337 ... existing installation should not be affected!" + else + _has_to_adjust_permissions=1 + debug-print "Need to adjust permissions to fix CVE-2013-0337!" + fi + + # Do we need to inform about HTTPoxy mitigation? + # In repository since commit 8be44f76d4ac02cebcd1e0e6e6284bb72d054b0f + if ! version_is_at_least "1.10" "${_replacing_version_branch}"; then + # Updating from <1.10 + _has_to_show_httpoxy_mitigation_notice=1 + debug-print "Need to inform about HTTPoxy mitigation!" + else + # Updating from >=1.10 + local _fixed_in_pvr= + case "${_replacing_version_branch}" in + "1.10") + _fixed_in_pvr="1.10.1-r2" + ;; + "1.11") + _fixed_in_pvr="1.11.3-r1" + ;; + *) + # This should be any future branch. + # If we run this code it is safe to assume that the user has + # already seen the HTTPoxy mitigation notice because he/she is doing + # an update from previous version where we have already shown + # the warning. Otherwise, we wouldn't hit this code path ... + _fixed_in_pvr= + esac + + if [[ -z "${_fixed_in_pvr}" ]] || version_is_at_least "${_fixed_in_pvr}" "${_replacing_version}"; then + # We are updating an installation where we already informed + # that we are mitigating HTTPoxy per default + _has_to_show_httpoxy_mitigation_notice=0 + debug-print "No need to inform about HTTPoxy mitigation ... information was already shown for existing installation!" + else + _has_to_show_httpoxy_mitigation_notice=1 + debug-print "Need to inform about HTTPoxy mitigation!" + fi + fi + + # Do we need to adjust permissions to fix CVE-2016-1247 (bug #605008)? + # All branches up to 1.11 are affected + local _need_to_fix_CVE2016_1247=1 + + if ! version_is_at_least "1.10" "${_replacing_version_branch}"; then + # Updating from <1.10 + _has_to_adjust_permissions=1 + debug-print "Need to adjust permissions to fix CVE-2016-1247!" + else + # Updating from >=1.10 + local _fixed_in_pvr= + case "${_replacing_version_branch}" in + "1.10") + _fixed_in_pvr="1.10.2-r3" + ;; + "1.11") + _fixed_in_pvr="1.11.6-r1" + ;; + *) + # This should be any future branch. + # If we run this code it is safe to assume that we have already + # adjusted permissions or were never affected because user is + # doing an update from previous version which was safe or did + # the adjustments. Otherwise, we wouldn't hit this code path ... + _fixed_in_pvr= + esac + + if [[ -z "${_fixed_in_pvr}" ]] || version_is_at_least "${_fixed_in_pvr}" "${_replacing_version}"; then + # We are updating an installation which should already be adjusted + # or which was never affected + _need_to_fix_CVE2016_1247=0 + debug-print "Skipping CVE-2016-1247 ... existing installation should not be affected!" + else + _has_to_adjust_permissions=1 + debug-print "Need to adjust permissions to fix CVE-2016-1247!" + fi + fi + done + + if [[ ${_has_to_adjust_permissions} -eq 1 ]]; then + # We do not DIE when chmod/chown commands are failing because + # package is already merged on user's system at this stage + # and we cannot retry without losing the information that + # the existing installation needs to adjust permissions. + # Instead we are going to a show a big warning ... + + if [[ ${_has_to_show_permission_warning} -eq 0 ]] && [[ ${_need_to_fix_CVE2013_0337} -eq 1 ]]; then + ewarn "" + ewarn "The world-readable bit (if set) has been removed from the" + ewarn "following directories to mitigate a security bug" + ewarn "(CVE-2013-0337, bug #458726):" + ewarn "" + ewarn " ${EPREFIX%/}/var/log/nginx" + ewarn " ${EPREFIX%/}${NGINX_HOME_TMP}/{,client,proxy,fastcgi,scgi,uwsgi}" + ewarn "" + ewarn "Check if this is correct for your setup before restarting nginx!" + ewarn "This is a one-time change and will not happen on subsequent updates." + ewarn "Furthermore nginx' temp directories got moved to '${EPREFIX%/}${NGINX_HOME_TMP}'" + chmod o-rwx \ + "${EPREFIX%/}"/var/log/nginx \ + "${EPREFIX%/}"${NGINX_HOME_TMP}/{,client,proxy,fastcgi,scgi,uwsgi} || \ + _has_to_show_permission_warning=1 + fi + + if [[ ${_has_to_show_permission_warning} -eq 0 ]] && [[ ${_need_to_fix_CVE2016_1247} -eq 1 ]]; then + ewarn "" + ewarn "The permissions on the following directory have been reset in" + ewarn "order to mitigate a security bug (CVE-2016-1247, bug #605008):" + ewarn "" + ewarn " ${EPREFIX%/}/var/log/nginx" + ewarn "" + ewarn "Check if this is correct for your setup before restarting nginx!" + ewarn "Also ensure that no other log directory used by any of your" + ewarn "vhost(s) is not writeable for nginx user. Any of your log files" + ewarn "used by nginx can be abused to escalate privileges!" + ewarn "This is a one-time change and will not happen on subsequent updates." + chown 0:nginx "${EPREFIX%/}"/var/log/nginx || _has_to_show_permission_warning=1 + chmod 710 "${EPREFIX%/}"/var/log/nginx || _has_to_show_permission_warning=1 + fi + + if [[ ${_has_to_show_permission_warning} -eq 1 ]]; then + # Should never happen ... + ewarn "" + ewarn "*************************************************************" + ewarn "*************** W A R N I N G ***************" + ewarn "*************************************************************" + ewarn "The one-time only attempt to adjust permissions of the" + ewarn "existing nginx installation failed. Be aware that we will not" + ewarn "try to adjust the same permissions again because now you are" + ewarn "using a nginx version where we expect that the permissions" + ewarn "are already adjusted or that you know what you are doing and" + ewarn "want to keep custom permissions." + ewarn "" + fi + fi + + # Sanity check for CVE-2016-1247 + # Required to warn users who received the warning above and thought + # they could fix it by unmerging and re-merging the package or have + # unmerged a affected installation on purpose in the past leaving + # /var/log/nginx on their system due to keepdir/non-empty folder + # and are now installing the package again. + local _sanity_check_testfile=$(mktemp --dry-run "${EPREFIX%/}"/var/log/nginx/.CVE-2016-1247.XXXXXXXXX) + su -s /bin/sh -c "touch ${_sanity_check_testfile}" nginx >&/dev/null + if [ $? -eq 0 ] ; then + # Cleanup -- no reason to die here! + rm -f "${_sanity_check_testfile}" + + ewarn "" + ewarn "*************************************************************" + ewarn "*************** W A R N I N G ***************" + ewarn "*************************************************************" + ewarn "Looks like your installation is vulnerable to CVE-2016-1247" + ewarn "(bug #605008) because nginx user is able to create files in" + ewarn "" + ewarn " ${EPREFIX%/}/var/log/nginx" + ewarn "" + ewarn "Also ensure that no other log directory used by any of your" + ewarn "vhost(s) is not writeable for nginx user. Any of your log files" + ewarn "used by nginx can be abused to escalate privileges!" + fi + + if [[ ${_has_to_show_httpoxy_mitigation_notice} -eq 1 ]]; then + # HTTPoxy mitigation + ewarn "" + ewarn "This nginx installation comes with a mitigation for the HTTPoxy" + ewarn "vulnerability for FastCGI, SCGI and uWSGI applications by setting" + ewarn "the HTTP_PROXY parameter to an empty string per default when you" + ewarn "are sourcing one of the default" + ewarn "" + ewarn " - 'fastcgi_params' or 'fastcgi.conf'" + ewarn " - 'scgi_params'" + ewarn " - 'uwsgi_params'" + ewarn "" + ewarn "files in your server block(s)." + ewarn "" + ewarn "If this is causing any problems for you make sure that you are sourcing the" + ewarn "default parameters _before_ you set your own values." + ewarn "If you are relying on user-supplied proxy values you have to remove the" + ewarn "correlating lines from the file(s) mentioned above." + ewarn "" + fi +} diff --git a/www-servers/tomcat/Manifest b/www-servers/tomcat/Manifest index 3182f8502df5..907615792200 100644 --- a/www-servers/tomcat/Manifest +++ b/www-servers/tomcat/Manifest @@ -1,4 +1,3 @@ -AUX tomcat-7.0.79-build.xml.patch 5271 SHA256 e680116c918918aafdec9dd7d022c9d8bfca63f7b0b19904c8ab2c92bc61e1b8 SHA512 160c0117e89a2ef5caae95004b426d155c64e19e6c708a9cc11a53308cba037799a60e4f901c3a5bb5af2d2ca8452246d7dd66283b91fad4a339004026148fe4 WHIRLPOOL 6a04f539b5c5798f8014b1e044eec682c61deac904fd1c9cb5d859c12c89f9191ac4a904f68644ecba1ccbd01f9c668540811f35bacf03415d81175c79109116 AUX tomcat-7.0.81-build.xml.patch 5271 SHA256 e680116c918918aafdec9dd7d022c9d8bfca63f7b0b19904c8ab2c92bc61e1b8 SHA512 160c0117e89a2ef5caae95004b426d155c64e19e6c708a9cc11a53308cba037799a60e4f901c3a5bb5af2d2ca8452246d7dd66283b91fad4a339004026148fe4 WHIRLPOOL 6a04f539b5c5798f8014b1e044eec682c61deac904fd1c9cb5d859c12c89f9191ac4a904f68644ecba1ccbd01f9c668540811f35bacf03415d81175c79109116 AUX tomcat-7.0.82-build.xml.patch 5271 SHA256 e680116c918918aafdec9dd7d022c9d8bfca63f7b0b19904c8ab2c92bc61e1b8 SHA512 160c0117e89a2ef5caae95004b426d155c64e19e6c708a9cc11a53308cba037799a60e4f901c3a5bb5af2d2ca8452246d7dd66283b91fad4a339004026148fe4 WHIRLPOOL 6a04f539b5c5798f8014b1e044eec682c61deac904fd1c9cb5d859c12c89f9191ac4a904f68644ecba1ccbd01f9c668540811f35bacf03415d81175c79109116 AUX tomcat-8.0.45-build.xml.patch 10753 SHA256 e1d6ca8eb6cbdb172d8d99d6d4d95b2d72d5f0d7275db80589e39fbb6fb60993 SHA512 205d25cc93712f255021bed6d544a3a5a71fb7367756851b71fdb59696368eab6960085e9abe9337699359cd3ddc55c595e1242bac8675a3f6a666aaf4e7c351 WHIRLPOOL 4e658dd4bc8d5719ee5a26136055f970e74906358989619397b7cb94e34c80c800d3c357dd60a4c7be2d035b490472bfd9f426177cbefe8f57d7bd32a58a7f49 @@ -11,7 +10,6 @@ AUX tomcat-instance-manager-r1.bash 6451 SHA256 28990e664007e6eab91d1f90f5800945 AUX tomcat-instance-manager-r2.bash 6999 SHA256 cdd0465eac2ba108f4b10dec6331c1660b2bdaa5d379cd2964b3c6118646fe1b SHA512 c30c156cbf2b53cf8498288bacaedd48872dce52f461ff32071310b438bdb5015c1cd1d512a2905c4db01e2b22342590e1b8aeadbd44f29062606fabbb2f2fed WHIRLPOOL 468db420f25653111bd20fa49df780187fa117661d5d884f5e1a5f010b22208bea295ec1d7b15b6d6b1cf777334a1e5ab1b6bc133e654837f4ce51266a03d0fb AUX tomcat-r1.init 3200 SHA256 dda32538287e0075e10857b1e60b0be5b5c8db55849fda753d39ed346c808377 SHA512 3d32e2ad998adfbaea5fe0ffcbbe6659dcb530a110faed5f2712ae2fd767353b1fc3f1ac83a24d43138c1bfc55949e645833a428ab982be14415887fc46d9fab WHIRLPOOL 4281ce1b7e05f19ebb47ae27eb4ed07fca535617122326ddbb0a8ed69121bac30c33a247681157620c7f8b536adda5cd7b611a23b98bfda326f080815cd38a27 AUX tomcat.conf 1811 SHA256 95db09ae4066bb12cc5932ac4a20d608a473c86d4ade2c617158c444c57c1b2a SHA512 0747dd2fdad6c68123425adce39f625d34924ae3e7c9d5a00361565a593047d7a4d01dee64c1ef831e5ad79b51750babaf642b0588d4b5948bbed441d53d654d WHIRLPOOL 22825ff55b28f991f9afbc9bd58be1fdad4d35acbf36d373d6f3acfe7e82c652ce6f1e52904e4a86cd56edb57a742af70db439c5e38b81a2c659aa0492124f6f -DIST apache-tomcat-7.0.79-src.tar.gz 4682119 SHA256 b5373951afe41ffd27348bb57cff80bc7d86a5669bdedb0b4bbe1d567009dc32 SHA512 75c29fd7de8c245502cae4db845a508f320739625d726fe892924b639e7333b76b3446f36cb67b9ad9500e95823b5eadaf056c4cb6bea962a59eb5491696e0b2 WHIRLPOOL 5db799cfbd061a199270b0ebb971c4fe43632522a23f590b7a46e021af5c8b0bce4a711e16bd0416b5baa6f2556cf8178bf14abadf4d493ece44c9eb2c4cdae2 DIST apache-tomcat-7.0.81-src.tar.gz 4689428 SHA256 fca79afb210cfbc8f9ebcdebdd048ecb7ea370ac0f94040cbcc0287fe5d85e66 SHA512 25e237aa7189cf9a9617badf8936fd7ec64550bcac3bab2e2afe51d5e199eddfe17e0d6d27ac7ebf3543d1601467fcd8362ddf9a5b708c50b223d7c8d18bbb3b WHIRLPOOL 1016a02b4a30b7e02eb2f7fad3080153012dd3e3f84df34d006c89bc2c89b7b3d370334800170008482d3dbf339c62f249064eb48ab24ca17588026ba515d487 DIST apache-tomcat-7.0.82-src.tar.gz 4697342 SHA256 3c6ff0bf2770b169493b25b97ee7502d44bee286176ecd187caaebf1f4e2fcf7 SHA512 fc92388d81316de0246df4074c417ffa341eab55308c0694e9ea71c5497c863b42019cd1f38628ff640114c501a06c4e9c428cb2b6f1bc1c16fb337a286718db WHIRLPOOL aef92cb2cf82c87a1b20ef7eedb30aae052882e99e74b9c33500b3a30f5c32df7a4dd23e3c79d3031ff7f0dd8abf9e2b3e061805a3b32f3e78b6b7c52db9d3c1 DIST apache-tomcat-8.0.45-src.tar.gz 4978313 SHA256 450fd2890b12e56692cb203f95651f9a873dce056b7b4362e142bc817032b291 SHA512 80e4281f5b6e4d6bf607179840bc6cb923ea9f57ec8231a451c3b5a1f8938f72ec1097290059afba0ef7b56edeb56d63636849517b69b91c7093cb15ff0eaa04 WHIRLPOOL c893cd5c26637f8881c19353e269145e33fa11e02eb10ef93a41590ad2e1e6c6ffa1b3f6c3c7c318630765f666be07447fd3a21c70c2c381e75c458b60383ea0 @@ -20,8 +18,7 @@ DIST apache-tomcat-8.0.47-src.tar.gz 4996505 SHA256 a2e34a707f1d2ab03aae194db2ae DIST apache-tomcat-8.5.20-src.tar.gz 5063310 SHA256 6bc40ae61b77906325bf8bdb2b0767aeb96f4c5a7a9b618aa496db59387d6610 SHA512 dea3095792de76a3a56bd6fd6c9ed5702ca539856d0e07a5de2600f456e7255929d14748a2dc9b3c626b3a67aaac8795ef3f5a6a1351991a0e89443e0c9d0807 WHIRLPOOL 1924f12c5068574424587d5b8b7261efb7496dbc53915d8cb2558b4a643aedecc98823ac7dec238fe7cb1a1874734e05de2dc6b7b28e48ffdae9e8c5c586e895 DIST apache-tomcat-8.5.23-src.tar.gz 5086043 SHA256 eaaf35752841356dec976fa6250cd71680b8b5b9c0bdf4df9a86ac38630bcbd4 SHA512 2848331553f2c1bc51a4113960c6fe7e2beddf9146341dbfde1a27e2232802cfc364c8e8b988ae862371ca1a3be34665a56a28be9eadf80f8b317e0e2525cbef WHIRLPOOL 77b35de4ede2beecab71dcd7c5494bded1516deac4b5c2cbd2f48e1ae728cfa41f4193369bd464946869e9ba4565c0e6f1c7ad57578459d3be67159ea8cd9a64 DIST apache-tomcat-9.0.1-src.tar.gz 5029499 SHA256 f4da8ef7a03dd7280a9a4b6c66cc9bd34dddc6429c33d9db1a8acfc1596c4e90 SHA512 6116b05f448c24e691c4b56372a41cfd8900adc5e759f2f5026c808de48d65705763236fca46f69321d351f37f5dbc7aa49db8c097b8a3155e367fe21aa0d384 WHIRLPOOL 2e0f05001b9f0d57a241db8ddf0212d3adce2c1b829a03318b5cc1b5a250ae32a50d801e23d9b6a2943c208a478dd00d1f5ae07d1c3c736fbf059554a40caf66 -EBUILD tomcat-7.0.79.ebuild 4277 SHA256 6fe27e4ad83139012dfc38a223f41fa92386d11444e2e661ca3aecc3bcbde66d SHA512 587c011ceac66d3f8cd7789ce891c9ccf9cfed8a8dcbddf8a2b62db48f5f481c6406ceb1645a1288fa07892409ddbb255b45f8c3edadb8eda55e4bce53800dfc WHIRLPOOL 5da2e08c809c4d73dedd1feab499420434db0b4493e885a662cadecaca91059d328cc59b39ef2edb867cc783f70d3c72e69790a381fc44da6f12323d99a6cc44 -EBUILD tomcat-7.0.81.ebuild 4278 SHA256 2564c796b7c24c58dcf6f76c98a4ece41668427d198303b51189cbf4afd592bb SHA512 c09066b72cefed346687999a52f7243a1fd050ecef0cbd8bd0dc6d5f5f758ff815fd4eb0009c5ea3591b792a90a20010a4b0517fbc504a320f06b97834d59404 WHIRLPOOL 428304d9afe8c9f8f781cd31f64bdb502b1f9561b06d7c0cab9671d345df57b61b5f06f6d5bebf58271031cee2314aaa3956d56ba7a8a6bcf88a314c7a50208a +EBUILD tomcat-7.0.81.ebuild 4277 SHA256 6fe27e4ad83139012dfc38a223f41fa92386d11444e2e661ca3aecc3bcbde66d SHA512 587c011ceac66d3f8cd7789ce891c9ccf9cfed8a8dcbddf8a2b62db48f5f481c6406ceb1645a1288fa07892409ddbb255b45f8c3edadb8eda55e4bce53800dfc WHIRLPOOL 5da2e08c809c4d73dedd1feab499420434db0b4493e885a662cadecaca91059d328cc59b39ef2edb867cc783f70d3c72e69790a381fc44da6f12323d99a6cc44 EBUILD tomcat-7.0.82.ebuild 4280 SHA256 eebc1297be6fcd2b0c4e6eb8706a965ed015020827abc678e9cc16a1ab000fd5 SHA512 953dca665db0b630daff6c80f9e388ffd5721bcead441a178b400b6372ba00916a40d97cccd3506b8d36ecc0494eddda1c18ddd65916dc7bf2414ca3813d2e8c WHIRLPOOL 3ef8706bb71b9b747a8f5e37e8287444a0bb91f0a2e86e7a0f1deaeb71231204a0e04623df67360b219a3775b2f43cf337de87236330d6f7da04221dd6820830 EBUILD tomcat-8.0.45.ebuild 4469 SHA256 018b246f0f044399fa8f54111f824e055110bbcbec3a2a025298c228b635836a SHA512 71536b2dc1d12ccc4c5756014ffe78b4849cf237405c21c667a2484106962a3be05a9299723b30b611f552c8f9315c1542e3ea1ea6ae9eb4f8b3b42817fe6e14 WHIRLPOOL 06876a98afabcbf64d988738eb9172d0545f97f2cca24f5f04f18c29c4d6e7dcb9057d429f6c658a5a06f6d3f6697d0447c8286e71e5cd049766f4cde1078a2c EBUILD tomcat-8.0.46.ebuild 4471 SHA256 82d5b04ffe2da0c759191927680cd957fc13f43f93102932fb6d47a50d0abc18 SHA512 e97bc0a73e8a1384c30915d42e1cfcfa4431ae63dccf85b997c30333a464b3042ec5aee48678c2dbcb045d30532d7aa17ec00ecff14f0d8d7caeaeff9cd3f5b2 WHIRLPOOL 030fcb6a46a5235bae11331c1df56bdfe0407c71d205023d0f2ebfb373eec76116e4bea5a6f1f539bc93657224510b6c6d94231cba0a4046b7d11df1d5407e1d diff --git a/www-servers/tomcat/files/tomcat-7.0.79-build.xml.patch b/www-servers/tomcat/files/tomcat-7.0.79-build.xml.patch deleted file mode 100644 index 481591fb6ff5..000000000000 --- a/www-servers/tomcat/files/tomcat-7.0.79-build.xml.patch +++ /dev/null @@ -1,149 +0,0 @@ -diff -Naur apache-tomcat-7.0.63-src.orig/build.xml apache-tomcat-7.0.63-src/build.xml ---- apache-tomcat-7.0.63-src.orig/build.xml 2015-06-30 09:15:44.000000000 +0100 -+++ apache-tomcat-7.0.63-src/build.xml 2015-08-22 21:13:12.453038827 +0100 -@@ -660,12 +660,14 @@ - </fileset> - </copy> - <!-- Copy JSP Schemas and DTDs to be packed into servlet-api.jar --> -+<!-- - <copy todir="${tomcat.classes}/javax/servlet/resources" encoding="ISO-8859-1"> - <fileset dir="${tomcat.classes}/javax/servlet/jsp/resources"> - <include name="*" /> - <exclude name="jspxml*" /> - </fileset> - </copy> -+--> - - </target> - -@@ -721,26 +723,32 @@ - manifest="${tomcat.manifests}/annotations-api.jar.manifest" /> - - <!-- Servlet 3.0 Implementation JAR File --> -+<!-- - <jarIt jarfile="${servlet-api.jar}" - filesDir="${tomcat.classes}" - filesId="files.servlet-api" - manifest="${tomcat.manifests}/servlet-api.jar.manifest" - notice="${tomcat.manifests}/servlet-api.jar.notice" - license="${tomcat.manifests}/servlet-api.jar.license" /> -+--> - - <!-- JSP 2.2 Implementation JAR File --> -+<!-- - <jarIt jarfile="${jsp-api.jar}" - filesDir="${tomcat.classes}" - filesId="files.jsp-api" - manifest="${tomcat.manifests}/jsp-api.jar.manifest" - notice="${tomcat.manifests}/jsp-api.jar.notice" - license="${tomcat.manifests}/jsp-api.jar.license" /> -+--> - - <!-- JSP 2.2 EL Implementation JAR File --> -+<!-- - <jarIt jarfile="${el-api.jar}" - filesDir="${tomcat.classes}" - filesId="files.el-api" - manifest="${tomcat.manifests}/el-api.jar.manifest" /> -+--> - - <!-- Bootstrap JAR File --> - <jarIt jarfile="${bootstrap.jar}" -@@ -986,12 +994,14 @@ - <target name="deploy" depends="package,build-docs,compile-webapp-examples" - description="Default. Builds a working Tomcat instance"> - -+<!-- - <copy tofile="${tomcat.build}/bin/tomcat-native.tar.gz" - file="${tomcat-native.tar.gz}" /> - <copy tofile="${tomcat.build}/bin/commons-daemon-native.tar.gz" - file="${commons-daemon.native.src.tgz}" /> - - <copy tofile="${tomcat.build}/bin/commons-daemon.jar" file="${commons-daemon.jar}" /> -+--> - - <!-- Copy scripts --> - <copy todir="${tomcat.build}/bin"> -@@ -1051,14 +1061,15 @@ - <exclude name="${jdt.jar.filename}"/> - </fileset> - </delete> -+<!-- - <copy file="${jdt.jar}" todir="${tomcat.build}/lib"/> -- -+--> - <!-- Add sources for examples --> - <antcall target="examples-sources" /> -- -+<!-- - <copy file="${tomcat-dbcp.jar}" todir="${tomcat.build}/lib" - failonerror="false"/> -- -+--> - <!-- build the jdbc-pool jar and source jar--> - <echo message="Building Tomcat JDBC pool libraries"/> - <ant antfile="${tomcat.jdbc.dir}/build.xml" dir="${tomcat.jdbc.dir}" -@@ -1681,7 +1692,7 @@ - - <target name="extras-webservices-prepare" - depends="extras-prepare" -- description="Prepare to build web services extras package"> -+ description="Prepare to build web services extras package" unless="noget"> - - <antcall target="downloadfile"> - <param name="sourcefile" value="${jaxrpc-lib.loc}"/> -@@ -1886,6 +1897,7 @@ - description="Create the Tomcat javadoc" > - <fail unless="java.7.home" - message="The java.7.home property must be set for javadoc build"/> -+<!-- - <javadoc packagenames="javax.servlet.*" - excludepackagenames="javax.servlet.jsp.*" - sourcepath="${tomcat.dist}/src/java" -@@ -1947,6 +1959,7 @@ - <path location="${ant.core.lib}"/> - </classpath> - </javadoc> -+--> - <javadoc packagenames="javax.websocket.*" - sourcepath="${tomcat.dist}/src/java" - destdir="${tomcat.dist}/webapps/docs/websocketapi" -@@ -1985,9 +1998,11 @@ - <path refid="tomcat.webservices.classpath"/> - <path location="${ant.core.lib}"/> - </classpath> -+<!-- - <link href="../servletapi"/> - <link href="../jspapi"/> - <link href="../elapi"/> -+--> - <link href="../websocketapi"/> - <link href="http://docs.oracle.com/javase/7/docs/api/"/> - <link href="http://commons.apache.org/proper/commons-io/javadocs/api-release/"/> -@@ -2642,7 +2657,7 @@ - </target> - - <target name="download-compile" -- description="Download (and build) components necessary to compile" > -+ description="Download (and build) components necessary to compile" unless="noget"> - - <antcall target="downloadfile-2"> - <param name="sourcefile.1" value="${tomcat-native.loc.1}"/> -@@ -2699,7 +2714,7 @@ - </target> - - <target name="download-test-compile" -- description="Download additional components for the tests" > -+ description="Download additional components for the tests" unless="noget"> - - <antcall target="downloadfile"> - <param name="sourcefile" value="${junit.loc}"/> -@@ -2727,7 +2742,7 @@ - </target> - - <target name="download-dist" -- description="Download additional components for a distribution" > -+ description="Download additional components for a distribution" unless="noget"> - - <antcall target="downloadzip-2"> - <param name="sourcefile.1" value="${tomcat-native.win.1}"/> diff --git a/www-servers/tomcat/tomcat-7.0.79.ebuild b/www-servers/tomcat/tomcat-7.0.79.ebuild deleted file mode 100644 index 0d01aa49b311..000000000000 --- a/www-servers/tomcat/tomcat-7.0.79.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -JAVA_PKG_IUSE="doc source test" - -inherit eutils java-pkg-2 java-ant-2 prefix user - -MY_P="apache-${P}-src" - -DESCRIPTION="Tomcat Servlet-3.0/JSP-2.2 Container" -HOMEPAGE="http://tomcat.apache.org/" -SRC_URI="mirror://apache/${PN}/tomcat-7/v${PV}/src/${MY_P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="7" -KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris" -IUSE="extra-webapps websockets" - -RESTRICT="test" # can we run them on a production system? - -ECJ_SLOT="4.5" -SAPI_SLOT="3.0" - -COMMON_DEP="dev-java/eclipse-ecj:${ECJ_SLOT} - dev-java/tomcat-servlet-api:${SAPI_SLOT}" -RDEPEND="${COMMON_DEP} - websockets? ( >=virtual/jre-1.7 ) - !websockets? ( >=virtual/jre-1.6 ) - !<dev-java/tomcat-native-1.1.24" -DEPEND="${COMMON_DEP} - websockets? ( >=virtual/jdk-1.7 ) - !websockets? ( >=virtual/jdk-1.6 ) - test? ( dev-java/ant-junit:0 )" - -S=${WORKDIR}/${MY_P} - -pkg_setup() { - java-pkg-2_pkg_setup - enewgroup tomcat 265 - enewuser tomcat 265 -1 /dev/null tomcat -} - -src_prepare() { - default - - # Remove bundled servlet-api - rm -rv java/javax/{el,servlet} || die - - java-pkg_clean - - epatch "${FILESDIR}/${P}-build.xml.patch" - - # For use of catalina.sh in netbeans - sed -i -e "/^# ----- Execute The Requested Command/ a\ - CLASSPATH=\`java-config --classpath ${PN}-${SLOT}\`" \ - bin/catalina.sh || die - - java-pkg-2_src_prepare -} - -JAVA_ANT_REWRITE_CLASSPATH="true" - -EANT_BUILD_TARGET="deploy" -EANT_GENTOO_CLASSPATH="eclipse-ecj-${ECJ_SLOT},tomcat-servlet-api-${SAPI_SLOT}" -EANT_GENTOO_CLASSPATH_EXTRA="${S}/output/classes" -EANT_NEEDS_TOOLS="true" -EANT_EXTRA_ARGS="-Dversion=${PV}-gentoo -Dversion.number=${PV} -Dcompile.debug=false" - -# revisions of the scripts -IM_REV="-r1" -INIT_REV="-r1" - -src_compile() { - use websockets && EANT_EXTRA_ARGS+=" -Djava.7.home=${JAVA_HOME}" - EANT_GENTOO_CLASSPATH_EXTRA+=":$(java-pkg_getjar --build-only ant-core ant.jar)" - java-pkg-2_src_compile -} - -src_test() { - java-pkg-2_src_test -} - -src_install() { - local dest="/usr/share/${PN}-${SLOT}" - - java-pkg_jarinto "${dest}"/bin - java-pkg_dojar output/build/bin/*.jar - exeinto "${dest}"/bin - doexe output/build/bin/*.sh - - java-pkg_jarinto "${dest}"/lib - java-pkg_dojar output/build/lib/*.jar - - dodoc RELEASE-NOTES RUNNING.txt - use doc && java-pkg_dojavadoc output/dist/webapps/docs/api - use source && java-pkg_dosrc java/* - - ### Webapps ### - - insinto "${dest}"/webapps - doins -r output/build/webapps/{host-manager,manager,ROOT} - use extra-webapps && doins -r output/build/webapps/{docs,examples} - - ### Config ### - - # create "logs" directory in $CATALINA_BASE - # and set correct perms, see #458890 - dodir "${dest}"/logs - fperms 0750 "${dest}"/logs - - # replace the default pw with a random one, see #92281 - local randpw=$(echo ${RANDOM}|md5sum|cut -c 1-15) - sed -i -e "s|SHUTDOWN|${randpw}|" output/build/conf/server.xml || die - - # prepend gentoo.classpath to common.loader, see #453212 - sed -i -e 's/^common\.loader=/\0${gentoo.classpath},/' output/build/conf/catalina.properties || die - - insinto "${dest}" - doins -r output/build/conf - - ### rc ### - - cp "${FILESDIR}"/tomcat{.conf,${INIT_REV}.init,-instance-manager${IM_REV}.bash} "${T}" || die - eprefixify "${T}"/tomcat{.conf,${INIT_REV}.init,-instance-manager${IM_REV}.bash} - sed -i -e "s|@SLOT@|${SLOT}|g" "${T}"/tomcat{.conf,${INIT_REV}.init,-instance-manager${IM_REV}.bash} || die - - insinto "${dest}"/gentoo - doins "${T}"/tomcat.conf - exeinto "${dest}"/gentoo - newexe "${T}"/tomcat${INIT_REV}.init tomcat.init - newexe "${T}"/tomcat-instance-manager${IM_REV}.bash tomcat-instance-manager.bash -} - -pkg_postinst() { - elog "New ebuilds of Tomcat support running multiple instances. If you used prior version" - elog "of Tomcat (<7.0.32), you have to migrate your existing instance to work with new Tomcat." - elog "You can find more information at https://wiki.gentoo.org/wiki/Apache_Tomcat" - - elog "To manage Tomcat instances, run:" - elog " ${EPREFIX}/usr/share/${PN}-${SLOT}/gentoo/tomcat-instance-manager.bash --help" - - ewarn "tomcat-dbcp.jar is not built at this time. Please fetch jar" - ewarn "from upstream binary if you need it. Gentoo Bug # 144276" - -# einfo "Please read https://www.gentoo.org/proj/en/java/tomcat6-guide.xml for more information." -} diff --git a/www-servers/tomcat/tomcat-7.0.81.ebuild b/www-servers/tomcat/tomcat-7.0.81.ebuild index f583bb614aaf..0d01aa49b311 100644 --- a/www-servers/tomcat/tomcat-7.0.81.ebuild +++ b/www-servers/tomcat/tomcat-7.0.81.ebuild @@ -15,7 +15,7 @@ SRC_URI="mirror://apache/${PN}/tomcat-7/v${PV}/src/${MY_P}.tar.gz" LICENSE="Apache-2.0" SLOT="7" -KEYWORDS="amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris" +KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris" IUSE="extra-webapps websockets" RESTRICT="test" # can we run them on a production system? |