diff options
-rw-r--r-- | www-servers/nginx/ChangeLog | 151 | ||||
-rw-r--r-- | www-servers/nginx/Manifest | 44 | ||||
-rw-r--r-- | www-servers/nginx/files/AJP-nginx-1.7.9+.patch | 184 | ||||
-rw-r--r-- | www-servers/nginx/files/check_1.7.2+.patch | 201 | ||||
-rw-r--r-- | www-servers/nginx/files/lua-nginx-1.7.6.patch | 39 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx.logrotate-r1 (renamed from www-servers/nginx/files/nginx.logrotate) | 5 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx.service | 15 | ||||
-rw-r--r-- | www-servers/nginx/files/rtmp-nginx-1.7.6.patch | 89 | ||||
-rw-r--r-- | www-servers/nginx/metadata.xml | 42 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.4.4-r101.ebuild | 662 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.4.4-r103.ebuild | 664 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.7.6-r101.ebuild (renamed from www-servers/nginx/nginx-1.4.4-r104.ebuild) | 217 |
12 files changed, 834 insertions, 1479 deletions
diff --git a/www-servers/nginx/ChangeLog b/www-servers/nginx/ChangeLog index 70c5c42..6a30555 100644 --- a/www-servers/nginx/ChangeLog +++ b/www-servers/nginx/ChangeLog @@ -1,6 +1,153 @@ # ChangeLog for www-servers/nginx -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/ChangeLog,v 1.373 2013/11/20 22:23:20 dev-zero Exp $ +# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/ChangeLog,v 1.403 2015/03/10 12:45:41 jlec Exp $ + + 10 Mar 2015; Justin Lecher <jlec@gentoo.org> nginx-1.7.10.ebuild: + Import changes from proxy maintainer Johan Bergstroem, + https://github.com/gentoo/proxy-maintainers/pull/22 + +*nginx-1.7.10 (10 Mar 2015) + + 10 Mar 2015; Justin Lecher <jlec@gentoo.org> +files/AJP-nginx-1.7.9+.patch, + +nginx-1.7.10.ebuild, metadata.xml, nginx-1.7.6.ebuild, nginx-1.7.7.ebuild, + nginx-1.7.8.ebuild: + Version BUmp, #531542; fix for musl, #533570; drop suspecious einstall, + #521662; fix SLOT operators + + 03 Mar 2015; Yixun Lan <dlan@gentoo.org> nginx-1.7.8.ebuild: + add arm64 support, tested on A53 board + +*nginx-1.7.8 (05 Jan 2015) + + 05 Jan 2015; Manuel Rüger <mrueg@gentoo.org> +nginx-1.7.8.ebuild: + Proxy commit for Johan Bergström. Version bump. + + 17 Nov 2014; Andreas K. Huettel <dilfridge@gentoo.org> nginx-1.7.6.ebuild, + nginx-1.7.7.ebuild: + Replace fixlocalpod with perl_delete_localpod + +*nginx-1.7.7 (03 Nov 2014) + + 03 Nov 2014; Maxim Koltsov <maksbotan@gentoo.org> +nginx-1.7.7.ebuild, + nginx-1.7.6.ebuild: + Update version of nginx-rtmp-module, bug #525836. Bump to 1.7.7. Thanks to + Johan Bergström. + + 02 Nov 2014; Sven Vermeulen <swift@gentoo.org> nginx-1.7.6.ebuild: + Remove sec-policy/selinux-* dependency from DEPEND but keep in RDEPEND (bug + #527698) + + 17 Oct 2014; Tiziano Müller <dev-zero@gentoo.org> -nginx-1.7.4.ebuild: + Drop old & vulnerable version. + + 15 Oct 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.7.6.ebuild: + Stable for x86, wrt bug #522994 + + 15 Oct 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.7.6.ebuild: + Stable for amd64, wrt bug #522994 + + 15 Oct 2014; Tiziano Müller <dev-zero@gentoo.org> nginx-1.7.6.ebuild: + Re-add keywords (accidentally dropped when merging from proxy-maintained + overlay). + +*nginx-1.7.6 (15 Oct 2014) + + 15 Oct 2014; Tiziano Müller <dev-zero@gentoo.org> + +files/lua-nginx-1.7.6.patch, +files/rtmp-nginx-1.7.6.patch, + +nginx-1.7.6.ebuild: + Version bump for security bug #522994, thanks to jbergstroem for the bump and + testing. + + 10 Aug 2014; Agostino Sarubbo <ago@gentoo.org> + -files/modsecurity-2.7.5-include-paths.patch, -files/nginx.logrotate, + -files/upstream-check-1.5.13.patch, -files/upstream-check-1.5.8.patch, + -nginx-1.4.7-r1.ebuild, -nginx-1.4.7.ebuild, -nginx-1.5.13.ebuild, + -nginx-1.7.2.ebuild: + Remove old + + 10 Aug 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.7.4.ebuild: + Stable for x86, wrt bug #519174 + + 10 Aug 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.7.4.ebuild: + Stable for amd64, wrt bug #519174 + + 10 Aug 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.7.4.ebuild: + Add ~ppc, wrt bug #517842 + +*nginx-1.7.4 (08 Aug 2014) + + 08 Aug 2014; Tiziano Müller <dev-zero@gentoo.org> +nginx-1.7.4.ebuild, + -nginx-1.7.3.ebuild: + Version bump for security bug #519174/CVE-2014-3556, thanks to Johan + Bergström. + + 23 Jul 2014; Tiziano Müller <dev-zero@gentoo.org> nginx-1.7.3.ebuild: + Restore keywords. + +*nginx-1.7.3 (22 Jul 2014) + + 22 Jul 2014; Tiziano Müller <dev-zero@gentoo.org> +nginx-1.7.3.ebuild, + metadata.xml: + Version bump (including updates to sticky, lua and echo), add mogilefs support + (bug #433107), simplify `nginx -V` output, all thanks to jbergstroem and + reintroduce the luajit USE flag (bug #509338). + + 13 Jul 2014; Jeroen Roovers <jer@gentoo.org> metadata.xml: + Add proxy-maint. + + 06 Jul 2014; Michał Górny <mgorny@gentoo.org> nginx-1.7.2.ebuild: + Replace obsolete mirror://bitbucket with the real URI. + +*nginx-1.7.2 (19 Jun 2014) + + 19 Jun 2014; Tiziano Müller <dev-zero@gentoo.org> +files/check_1.7.2+.patch, + +files/nginx.logrotate-r1, +nginx-1.7.2.ebuild: + Version bump (bug #508810), including fixes for bugs #508650 (delaycompress + for logrotate) and #510040 (use /usr/$(get_libdir)). Thanks to jbergstroem for + providing the bump, testing and patching. + +*nginx-1.5.13 (15 Apr 2014) +*nginx-1.4.7-r1 (15 Apr 2014) + + 15 Apr 2014; Tiziano Müller <dev-zero@gentoo.org> + +files/upstream-check-1.5.13.patch, +nginx-1.4.7-r1.ebuild, + +nginx-1.5.13.ebuild, -nginx-1.5.10.ebuild, -nginx-1.5.7-r1.ebuild: + Version bump for mainline (1.5.13, bug #503414), drop syslog-patch (no version + available for nginx-1.5) and old push-module (use push_stream instead) and add + ajp, sticky modules. Drop old/vulnerable mainline versions. Add rev-bump for + stable series (1.4.7-r1) to fix compilation problems with + USE=nginx_modules_http_security (bugs #506690, #506804). Thanks to jbergstroem + for providing the initial bump including the new modules and a lot of testing. + + 29 Mar 2014; Agostino Sarubbo <ago@gentoo.org> -nginx-1.4.4.ebuild: + Remove old + + 29 Mar 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.4.7.ebuild: + Stable for x86, wrt bug #505018 + + 29 Mar 2014; Agostino Sarubbo <ago@gentoo.org> nginx-1.4.7.ebuild: + Stable for amd64, wrt bug #505018 + +*nginx-1.4.7 (28 Mar 2014) + + 28 Mar 2014; Tiziano Müller <dev-zero@gentoo.org> +nginx-1.4.7.ebuild: + Version bump (bug #503414 and security bug #505018). Thanks to jbergstroem for + providing the initial bump and testing. + +*nginx-1.5.10 (10 Feb 2014) + + 10 Feb 2014; Jason A. Donenfeld <zx2c4@gentoo.org> + +files/upstream-check-1.5.8.patch, +nginx-1.5.10.ebuild: + Provisonal version bump. + +*nginx-1.5.7-r1 (21 Nov 2013) + + 21 Nov 2013; Tiziano Müller <dev-zero@gentoo.org> +nginx-1.5.7-r1.ebuild, + -files/nginx.service, -nginx-1.5.7.ebuild: + Drop unused service unit. Bump modules: headers_more 0.22->0.23, fancyindex + 0.3.2->0.3.3, lua 0.9.0->0.9.2, naxsi 0.52-1->0.53.1, rtmp 1.0.5->1.0.6, echo + 0.48->0.49, push_stream 0.3.5->0.4.0. Thanks to jbergstroem for putting the + list together and testing. 20 Nov 2013; Tiziano Müller <dev-zero@gentoo.org> -nginx-1.4.1-r5.ebuild, -nginx-1.4.3.ebuild, -nginx-1.5.6.ebuild: diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest index 12ff651..a219b44 100644 --- a/www-servers/nginx/Manifest +++ b/www-servers/nginx/Manifest @@ -1,33 +1,33 @@ +AUX AJP-nginx-1.7.9+.patch 5674 SHA256 b4e01204056ed43d03c06e7955564ecd7f9b581cc238e93a14a64fc898cc3a66 SHA512 8b7cae860c6637b4cffa9c60cc624d8d22702030183d261efef77fc3ec964fb4c23360f4c9868a41a3de4584aed3e2e288c3dd173e0a4a727bba3da00e3979a5 WHIRLPOOL 4da8d0865319d2673ee032fec3ef9e8f0c6161bbc77a2cab959af50bf5aea35812ac80d66f19202b2deac56d4d47d84ce06b356495a1de60c8343eef5c9d252c +AUX check_1.7.2+.patch 6822 SHA256 e90d8d25d35c2315e3008c60954c4e57aed48d1eb9cab91466356d4967bc46ae SHA512 2857b3e2ae058601e7a1af9b6e7f41e01d4c47ec442df89c3dc407cf9fb6867ab126081547cf9336ccdc40a2a15ea8ab3ed024376d9fbb628432fa3057064440 WHIRLPOOL a96e88f5ff0e3a22745b662c79ed6c15e42ebe121e74f294f17f767e18f77dbecc6c6c105ea13c47d2a298a504115bbd1c9bed4189de2677485fd0eda5108ec8 +AUX lua-nginx-1.7.6.patch 1362 SHA256 02e8eca7895831ef34690286338509f652d4376ef0d7b93bcf2e794e2e20de48 SHA512 ebe40dbc7ad6983d91243e30bda5b87e2b947ff5c94db2287ee75c281cc95f567f3140abd6099cbfd2f0454e1eb71423e464ff8c4931148379812512aaa168d5 WHIRLPOOL 5e07e50bddaaeb4213104ff89b95a1a07096daeed910edb8e729783daa650b591ca963c79b1a88007f216c51c8b44fc6e52a70877aa3d1beeff36682e327e293 AUX nginx-1.4.1-fix-perl-install-path.patch 403 SHA256 0f10cf594208d99942cd07b13799bdd62ad9dc62479b302c0390de381c7fdf28 SHA512 b8f6876831e1149b1421fff4919f8d4893e5fc46aad8a91d4cf2e0b21767b59820b8e227e3b722b80060832844ef191f30aa5dc056daeb49e55a05702d72858f WHIRLPOOL a29dc1b707695ad29b5e967c545b6059120ce9d1a95b828062f6507d8ccd730c95fc82843564baa51d644e138d40fc93b0a84c916a4d77a51c1495625a103809 AUX nginx.conf 1358 SHA256 6ff6c9301ea2a4d74a335b9119d7f9dba87d4e83793cf22d837d49f061763096 SHA512 1873c9e54ea5020160c86da3f300e3eac589c0d30cdbe3446476b5b3f5bd388da95224cfb1a020b41720c9ce55ab6bb945dcc41612d5850da0e2ae0ceeeaa587 WHIRLPOOL 7672245bd11d6ed987e13d6bfe4dbc2140cc3d2e22616c49ab7ed5f42135c96b5779e4dfd16ba9e2d82aa59d98cd56a4872d18c3774e357ef79385fc874387d2 AUX nginx.initd-r2 2005 SHA256 9d5fca09d0161446a5cec30a0694cdc0656469403a008920a52a190051218b36 SHA512 871f5e05d3a5e496708b49863917bc8fa163c7ca974261aaacdf2e9c4aa923582889da92bd23e0129915a1467efdd9befc9a6e50f9eb1d173cd1ec05508c6c1b WHIRLPOOL 4468188d830bd2d1587b3ae857640bb07e48e9d5d2b51b3ce1e6a11da62ccf226025c4e8d78e0b69b253aa9c5a663ea02b95980715a32c464fd4c74dd5656b96 -AUX nginx.logrotate 356 SHA256 4d3c038104eaeb4cb012bd8547f9d3eb578df205ccd43884fbf72945accc6bd0 SHA512 c66f8307c24ed98e3135069b3ce6aaf7bbca864747cbf909eae65726ac71fd5f7f56d7ed963a6aedfcdb8a05a91d3988030281f4cad28735de90ae28a85bc245 WHIRLPOOL 95001d0b76a350ce9ce96bfb342a93c8110fbd174484489ac2a64c2f6c496a53d967d303a6cbbefa820ff4e93dcd2d5d968cee5b7d33a83445578b458b5d3c51 -AUX nginx.service 386 SHA256 e4e2bcb41f66f0a7e618f254d47b8fb0f6258efa77a83a1259293e4566f24d87 SHA512 3be27f2520df3633efc78f0b5af0a4d71b7e1f33d71c5e7f87f8dd42ddcb6cd692f51a7133c02a09441be813ac67670c0cd6f0781327d3c65c7bfd57cba59dc7 WHIRLPOOL e63bbcae119a69fa31b1c246baaf4c224608a5d368b0695c7208d42e215b95d56dff4a6fcfa66ea82bb9b1f7b3b26d15c7ba14772eb4620d951c57e869a97a20 +AUX nginx.logrotate-r1 376 SHA256 3de8e7c155202760ce381e4cc08052195a51e267ab7f9563fe20be00fbc3c21a SHA512 24684a94ea5f897079626ea1c60ef518bf04c234cfa7116a0dc0334d3f19fe3ada47661aa1d7bd07216dda3d20413147921c98fa5d9794ba2da6affbbd8c4cbf WHIRLPOOL a31f401e4fb5804332f8a7daf4d50f0dc4a086cb4e75dc0e81fe9a328bb05fa38fef429270e81b256719a0bf7b849a0ccd8a05817e39bad26a40ee5823a0dcfc AUX nginx.service-r1 327 SHA256 17c404c5130115e3ebadb09e25cff0103b48ae7dbff2284fa690161fda7888ae SHA512 9b6bcf74df2f74ae6a2c255ebf2d826ea92ed9921b9995da6c9a0c5656e2863a2fe5293ef8a656fbd36298602cc88ffc5d7acfbbf143c23a78c9689d61b05df9 WHIRLPOOL 126c56732b8bd9948595727aa8c056c44df05f4c8e708b00c9de715a7260e4e120fd9e076672312b55c889ff4a3ca100ce696165a4eaf93d89e808e1e28653fa -DIST modsecurity-apache_2.7.5.tar.gz 1045387 SHA256 9e907536278d8da80d3dbb29aeffe9c4ec37ce9b641035b2da64e993135647a2 SHA512 dd6d4b58c5abb7440d2b9a429a548485b5aebecf1859c93427bdcf30cdbc93c975e455f3f843cf82c4efdf2db06f6a43bf4db2bfdd84adabddeb5dabacedc141 WHIRLPOOL 4d71f3ae86ca1dda9d1547b140decde24ee5116733ecf86a0a95797e3ce9bf1e29cf42116a2a69b332132c3ad749fe5f18566bbe7dc6d60f47b378a0ef6d6cbc -DIST nginx-1.4.4.tar.gz 768217 SHA256 7c989a58e5408c9593da0bebcd0e4ffc3d892d1316ba5042ddb0be5b0b4102b9 SHA512 6007d3a6eea17a49dd3b39f2520a4f00e8dee3feaa86c582d8f0ef81dd4c1e2992cbea3b5be10cdd0ff85a8b24381aa6114ebdbf77d29c91d946639752b5c867 WHIRLPOOL b40a7bd3107a9f5899e162218c2eee2bce83e6042e9d104337a700c1b3950d1eea6126c16870ec9132980fa0e27ae28ec4f93e960e37e85a08abbb63a54c6c19 +AUX rtmp-nginx-1.7.6.patch 2507 SHA256 c5b6a884e7f097bcb405fdc2011e39ea699f50f8e51a2c3daab2e40dd86fe524 SHA512 ee3c3e91ad88aa245d7563fea537585a493718c1e770c23919118bfb6306a076b82356406af512e79a162aab09fc72fd73af1e2918b9fd9cb06c47df5a798aa8 WHIRLPOOL 0c655c186d4832426628277c99869715d46e2f0909e7ea74a000cd36fcb398e7571afb81287540d1e0fe544f09197f71c0ae143f9ca169329f936b8359bc645a +DIST modsecurity-apache_2.8.0.tar.gz 3940435 SHA256 95de6ec30982e5bde7981929ba89be89488e9f237ee8c4236e064b074bbb6f28 SHA512 2620d9ee0c7e40e02b908af5be916d1588f2ba55b8718495b6a3654e868973c45e8f8e794bf28b4677eb8a2d96ba427ead6ae4b26e48014bcd2b2f02013ceeef WHIRLPOOL cd90488ca5a85292bae32685ce44bcb82f46d98194636ba68f47a860c648c6933766bd56a38143f7656725fb3bd359de17f1b5513447c6ee40dbad945559fe4d +DIST nginx-1.7.6.tar.gz 817265 SHA256 08e2efc169c9f9d511ce53ea16f17d8478ab9b0f7a653f212c03c61c52101599 SHA512 ac551020608e0c5ced17519509419e25513ab7a134f5e705cc8dd3866f3164c63ab7e3da9485ba5431d976978f4a9c68c5348bd102f9cb989c16f2e0ba65892a WHIRLPOOL bb247b8215fe10c6ad12df1da5e6fd7dfcd9ff441ef0bc1ecb9047ba132735a79ba4c5f0487bf8d2aee44ed940573b70ddaf0b77499d29fd4de8d9700b0ec038 +DIST nginx_http_sticky_module_ng-1.2.5.tar.bz2 124072 SHA256 f975c033eb3c342f7247f6524774bbb727aaf630ed984576dbafe5de7a790c58 SHA512 d6ae723f739efb2f0548461931b1c395801684759962beda08067111426b1c9787ceaede91b0e984c023108fd17864c53c53925506f7e8e25ec8d2fc065585f6 WHIRLPOOL 1013c6a51f5989c8131392b3d9704d42c99f9727a673f6205878d0b7dfd265bb6042c1d30089603c9b38e339d48302e6873e77fe380b7e8edba25b71e9e84ba6 DIST ngx_devel_kit-0.2.19-r1.tar.gz 65029 SHA256 501f299abdb81b992a980bda182e5de5a4b2b3e275fbf72ee34dd7ae84c4b679 SHA512 915954acf16a27fbd3c93c154012d38e864f1d8dfd51cde401bba26e46eb3e3c778ec4c92f4f8ed83ac001e96cee72765554d0e4da06acf6a4be5184b23b3657 WHIRLPOOL 0ce6bffc0fe2cef28ee74f5862ca6d914ed18fdee18d900608ff2a9983594c707aab3e335957b79dd7e77ae1beed054d8f71965ca0f57fc5f1d41ac06106c5a4 +DIST ngx_http_ajp_module-0.3.0.tar.gz 108832 SHA256 7b3791275ef87dde153679fa459e84784da09b26d35426d61f5477903584b254 SHA512 0934ea3c7dce23e2c55ab5c9210562fcf7b38ef19dc9ca7b80daee3cd983bb5f69743d34a041d35e7089dd6f6aa73363014d0b5f04ce0a5c0d94b4b0bb2dacab WHIRLPOOL 2ebe0db7887f22fb915372ef637214a0a40d7a0b694479b7da066671bd7c64aa152c5a615f368916311f5879840e083fb7a14555d304aea5e059c079aaa9c809 DIST ngx_http_auth_pam-1.3.tar.gz 6363 SHA256 199dff5d11fbb3b6ddf9c8a60cc141970125a3f8e7a06f245e3175e93ca947e3 SHA512 3c86f709397dfd3edbd98f729193cb7b61895777d02244f1cf255ba5e4cd8e7bcb5bf537bf3d1086a513e46f117fdcb7610d7085dead35f5d36f74b5b3864ef8 WHIRLPOOL fc5b42a6a1143e9d3845e1470caa7bd60cf8e5a01e0dd53925fbf76cba072add024d24e4f926d3d0b3e27eccf5faa839b05f2549144beac6ffc43614b7ca5b19 DIST ngx_http_cache_purge-2.1.tar.gz 10535 SHA256 424005af0c04e59ffa65a65e446081d4f95ee76a801a7555e001c67810bcb3b9 SHA512 1b70b2c35601949edd53d55922e81425aef0b2c486b071c2bcf53db7c5278e55966ffd2c9e32f599ee63e147a395e708d442515fe414f39b323d26722324db8b WHIRLPOOL f020841139988ae516969ffcd5bf7b2c264749fef5c20a5c8f0cca70f5eddcd3efcb3676bbe9a4550535de7b53fcd7326294fcae2a14dc6bf66d1ab77205b83f -DIST ngx_http_dav_ext-0.0.2.tar.gz 6056 SHA256 603d961c15ba2633ee5ae1f13b80a5455dceee61071d1dab7d2ea91a0981585c SHA512 78178ed0cc8eeb257fd9ef104e99dfb825143acb7becd762f88b2398bab2457c2ea6484be789d4b0e30b72f7661e7490da19495654204248f457666a951e7e41 WHIRLPOOL 6a7182d6dd7296315bf4c02da78f5dfb0e96deee5a686045679ebfdfe3430a26ea110a0a0804dff21024ec57b0ef70b98b8ac13c5ddd9b0b6e72fc6ec56ef83b -DIST ngx_http_echo-0.48.tar.gz 74860 SHA256 c4b9eeec554f472632054243587ae89bfa79938a346c72cfe223429693354902 SHA512 d8be09d14f0849e569d2d3784de743beee3c7de2409f66a98d2f175e90f69b918221fbf888c0263aca83562b2cda9b6998adb571935be49009bb2a1e018fae43 WHIRLPOOL a1939283a0f626db44a682885f8c7b3269e585e08691a91f8b72d249095b5423cc61085f92ae78b3423a387ac02f5468f35551e1935862d4167f0d2f39153384 -DIST ngx_http_fancyindex-0.3.2.tar.gz 13302 SHA256 c96d782bc77f5ba215abb486220f68cb5aa7451646fcc2d608adda655b21653a SHA512 a372ea6f4208c7b49c3f81f41e9a34bf574d7e7bd6c1452ae2f050c85fdd0d2892f8e41a51bb83947e516641d6ef8fedb554a7e2b60af0a40908dd57f0c9bb3b WHIRLPOOL 3db4decf29bc456b572bcd06782f7b3a20504680598a60f94b54d1db5449942784f027f7d4c7881ac7840cba2ca1799f1355eb8483dc9d19ea1e16e0818ffaec -DIST ngx_http_headers_more-0.22-r1.tar.gz 27214 SHA256 b8b70cbca5144f2c2999d12b332917131af6e7b91bc618c67a744f2e899fdf85 SHA512 69fcd232f50fe453cee76a4b0b016f22b32daae08296daa8f301b0dc9d8da9d567cf2d7545fa3d2a9dff397aabf9b7687eaa7a9cf851111ba7389f889566a324 WHIRLPOOL 1b04db389bbc79cd43adbfb6e66ca9a5f8cbc7c9801f74b960267ef15f0f334507bf1d2aaf0de12d82793ef0643fbfd0825979c9b9d36a3edf3cb056f633bbb3 -DIST ngx_http_lua-0.9.0.tar.gz 498215 SHA256 11aff39b0252b499308effc5208d8816c9f4248cacb6b31c446c19587667126b SHA512 116d441915cfa67d8d0cc643319dc88a1dc134fcab80705d4e5d1daafc15864289df7b53ee6ff030f04ba7e81cefec1885eaac032d059eb0475126d9b5a20d92 WHIRLPOOL 65bf6502bf4c566cd546cab2f06ae61f9eca95497b9fd7fd562c263c1bc1904e716b84c761ad571e8c737ac8a30cb47dbab18ccaf45ca642270023d6d482175f -DIST ngx_http_naxsi-0.52-1.tar.gz 162044 SHA256 0f23b0f17f03591775e95294a115d609ad47e2874e5f01c4fed1ebb680ea07bc SHA512 e1d3b4b3284d5b3f44ec5888023e6853c06519f99f3de768d8420d50a8bd50ae4d77c2413e441caa5dedc420f28ab3413d79fe56fc9aee8636a9b20adea7be74 WHIRLPOOL b42c4dc99c2a0b670b4e06ee9b5a0eb1b38b96f670c04c56fa30f13b8d3263836b54ff641dc1effd0e461f0fb3e0b935f945c2467b27c83f80b8407a3b42f739 -DIST ngx_http_push-0.692.tar.gz 29119 SHA256 64868708071aa21dbc4c7a07d149dd6ec9108fb7eaf2aad5ad069406151f17fe SHA512 79821cacf5db4b1309e3f1c8d6980f83b1093dd3f291db5298bfdeb0d889fc0629625dcf3135d1cf7554b43308ef7172a4f40596928ab3069426801177ed3c1c WHIRLPOOL f1c846a4aa2d4491ee3063266d27b9854d860bbba44ef6e2ea33ebe1f570177e836c593a84cc2c7e22357bd43411f9d5b55852ee96a98dccdc18e7edf6768c95 -DIST ngx_http_push_stream-0.3.5.tar.gz 153122 SHA256 8a9e27a79020bf088dd120e528db77398c29db8aa75c962e7e45c8a20451d4f7 SHA512 8272fd056dddc46e279cba6ebac2bc75716c4605cff94a9ed05f41ed83555fef5bead1325b0322a063afede415203f12bedb8a7abbd643479d6c3d7e4c955b6e WHIRLPOOL dacc3ebc2cd7a3f8b52f2e735e0e53ed73b9cad79341b7ab6d320a0dc0a3b1167c4eb7b4ae100cb51126aa2dd1d5cd5da3a1a597778732db7fc046dac74eea7c +DIST ngx_http_dav_ext-0.0.3.tar.gz 6260 SHA256 d428a0236c933779cb40ac8c91afb19d5c25a376dc3caab825bfd543e1ee530d SHA512 4763b1c5e417248d80acfacf20bfc5ba3e06675ff08e37703867daef99a400980b536941e4955c259432905bd11ab998bc2e2489a50350413c7bf37e18eafb74 WHIRLPOOL 5adbcea768fbb179249a03fe69304505ec09a1dafac848dd5e3cde96693c6fbcf6cf6c128ca116d02b36c1be0008807d9e86fee5b411e137b18b15a60291f29b +DIST ngx_http_echo-0.56.tar.gz 65109 SHA256 99027e63f5e625f28fedd163b9d18f29382ea55f079a9b7a2f16beed6a1d3ddf SHA512 4f6e87878564dddfa0e1d62414a7bbcf0726a01b7b53bc0b4be891658c39b85125fab4bb68ba7293d44c66c3ce5b967f289cf83628b2d78e9f3c01f5bcc37b75 WHIRLPOOL b5677d8133a0ad4c395479cfc29bc0b2cfb9362b55e4b27f20683beeace4830e6a0764a140a8f7dc518406769cda0f7a15cb340b2442a9c500a8e7c00fa0279a +DIST ngx_http_fancyindex-0.3.4.tar.gz 14275 SHA256 d7a84e66b3b3571e6a7e2531d00767f4354f85ce2f281d532ace2bcc35035f8b SHA512 a8a78f83f34c910e0959b04f45ba897f0c84f2a3f36d1c36cd32a8e2a5d9e53f2d0f30cf6a99ffd76edc6179cb70561984745943ec05cca10bdda7ed29c8bfe4 WHIRLPOOL eaafe4a95eed6f43efed354978040c0856ca5819ed0b141637aee0b1c0aafcf2cc205b130f0ca4de39b224dbfb7083c158a4388768fa2515890e227a43245474 +DIST ngx_http_headers_more-0.25-r1.tar.gz 27973 SHA256 1473f96f59dcec9d83ce65d691559993c1f80da8c0a4c0c0a30dae9f969eeabf SHA512 1a03e72ac5847b0eeada0ba1e5d5872399dd636db6aa54d10c9e53d96f4b5be4c785bf9117991d27ed558532fe9ce95d6f6c63f94f5b83350f5ea14a60c03aaf WHIRLPOOL 03a7e21814a05644bd1a459bc7b0b26dee0d4ec6ae81f4677f631fa1e4c52c679b651341d673319c6469adcf0ad8e29db58065f542e5907729a609edb6e633f4 +DIST ngx_http_lua-0.9.12.tar.gz 512403 SHA256 e85c1924ca4670d5708b58efcd6e77793c43f243317a9850a112964067f63150 SHA512 c08546c074570408f646fc7ee60e60d732763a91f10b652858d95de070bd0dd4f0d4117114fc4b46d0f32cff88b21db5f394c3fbb2d2e5f1494fc01eedb782e4 WHIRLPOOL 2223bacff56b4ef942372e4eac3b1a02f21952804b0df6c626456ac2b6894ea068b704606f8a25c47de7887e97577a771fca6ce31d7288992f6f28eb0be27022 +DIST ngx_http_naxsi-0.53-2.tar.gz 165690 SHA256 3eadff1d91995beae41b92733ade28091c2075a24ae37058f4d6aa90b0f4b660 SHA512 ada592f5e7f80a6d549cc435ee8720df01a788dc88cf27a7d55521bb7e4c66fa11b9ec28216aff7e13c70a5faf12cb745bd398b8a782ed4dea1eecd04b07e24c WHIRLPOOL c5b736dbe9bd66daf7e023f176a08f78225b61990781d7ad5a55d0f35391df7e05bf1b2623a6227e0355cf0204ef9eac1b9fa03aa62b3c0d6eac515f1213f270 +DIST ngx_http_push_stream-0.4.0.tar.gz 165341 SHA256 4662cb5680e8dada55ada47b91ef563dd0322f94d775bf1c09e90d83d12c33a6 SHA512 45e68b75f6156df73b2c45d68a9b471560459eb608203b554ecbfcbef6923e4710c92aaefb6a7f8c1d90c7dbf31f4fcc59802d0e8f5c29418be52acad0073c02 WHIRLPOOL 15f2bfa1f9b56005559b8122ce047166e48f0428677401df0b41bcbb52daa6f176c4527b02e145aec9cd3d2fa48c12bb17bc0fce2d04bd7c223b4c5ca91253a0 DIST ngx_http_slowfs_cache-1.10.tar.gz 11809 SHA256 1e81453942e5b0877de1f1f06c56ae82918ea9818255cb935bcb673c95a758a1 SHA512 fbc9609a8d6913aeefe535f206b9e53477503f131934ead2ae5a6169e395af2f5fb54778704824d5eeb22a4ef40a11ebbcde580db62a631f70edcc2cfc06b15d WHIRLPOOL a02ed77422c47d9e476f8746186d19d632ddb953635d8d9dd51ff076225a78044286ee7e114478bc02e4b2a422e4fdc207154fc287629dd2cd7c3f9a634dad18 -DIST ngx_http_upload_progress-0.9.0-r1.tar.gz 16990 SHA256 93e29b9b437a2e34713de54c2861ea51151624aca09f73f9f44d1caaff01a6b1 SHA512 a602b797f1a928c72752edf44629e48d5b8ab3c979ea0996645a978ba898b2a11c8b12bf09bd2282c4b1503bb8caaba4e4fbf357d644fbc5744c9e7264d07519 WHIRLPOOL 6b3f9feb1a7d2a4bd2f80dd20748ee5918e187e7b026c53ed9bc189696b90521bb5beabce9e00936c5bbf625cc73ccf131d8a9c219d4f399d8ae2c44ba378ebc +DIST ngx_http_upload_progress-0.9.1-r1.tar.gz 17166 SHA256 99ec072cca35cd7791e77c40a8ded41a7a8c1111e057be26e55fba2fdf105f43 SHA512 6c1e3776402b6e2cda50d9c48c4b578a85feffe15891c075443f6d9c7b9e2414e0614b50a8f417ddda9faf5f719957c77ade519c88b48caec970fc51fe12f0d1 WHIRLPOOL 12970d0f75ee3f0d8a97c4948b97fca2bd707a93e4e578c0e2ac0d18991986e620dd6b15c2ab5680ff726c0490671e3bc5e1ee6109baf81877d8baa6a5357825 DIST ngx_http_upstream_check-0.1.9.tar.gz 116307 SHA256 b3bb240fb236ba9ae3e807de0f69aa0804d100496c1063a523b29a184e438562 SHA512 b50c15aa311e38101d9b4f6178684a43abcfa66d0483dbf62b3dc5b595d85f59b52a4f564a5f35c54966042074598fef0fc59635ea38c064ec0e8921d9c3229d WHIRLPOOL f878e4833d445a75076455aba34f85a23c0377d922d9ff3d542f887379730e127e969fe3108cd476279d7ff1aa396f686e9e7b8594fb38eb2ea36d3d928602e6 DIST ngx_metrics-0.1.1.tar.gz 2964 SHA256 1c62ebb31e3caafad91720962770b0e7a4287f195520cf12471c262ac19b154e SHA512 d36a8fb0104c83b6b564e03b351aa750cab08650264c74d6f786af357bfb7006b531a93270dd961896ea8dafe27e5db8548ede714c5f52c4742876bc73af4b5e WHIRLPOOL 2796f5a97e76dfcc91133240e8e90ba493f0356f781a173d8cacdd09eba64b75ef531db398c0566fda395124700de8c991b771433e376ca0d5898c2ea6f82868 -DIST ngx_rtmp-1.0.5.tar.gz 450227 SHA256 f3b560c0594cb3a600ca4676411105291c898e19f8fc277a74865f4d7e9fa509 SHA512 df351ab8fa26beb5b13e30798abfa6a70a1dd1e0bc8b554d2537970c22d505134f3b3c75acb133825fa2ef8e18aace757a4dbd3cae79dba723ae7f912ca080c5 WHIRLPOOL 74ea7f3bd512f0c9fd7975554ba54c2812e0e8f280c96b99224572ffe84be9ac297aa4fc2548669a6c356adc6f6deffc34f46239e9697acc4c146f459fb76b60 -DIST ngx_syslog-165affd9741f0e30c4c8225da5e487d33832aca3.tar.gz 91535 SHA256 6fbdf03118605464aef0b069a852cf40ef25d225cda379b66c468c4108e18a1e SHA512 f0b526b30cf45e842a9bb4d26d5dcfa7c34c92778ce4c930a87882a65c42d1e8e6c94f65e280a803b39f333eadb74a862b4b4234db6d496385ac16731cc9a02a WHIRLPOOL 69b147effa0914dd3c6f03aec4e9d0c2859b48646a850317ae43956619b19e72bb06ec091ee39e04a68590d3c0747baed7cdd4a6c15aee0adf83f9df65050e4a -DIST ngx_xsltproc-0.14.tar.gz 532723 SHA256 dc9b29fb7a1ad75486404677c0d8df792475eb469f96824486f19198fadbf96c SHA512 88f4df26438bd2f525b9554a2b94fa61c212f46bf476754ddfa30ebe70187fda59a1017a69f82c1542568454d5e9f122068bd616b9bc7b26b408aaf0a7de0ca9 WHIRLPOOL 6cfb8bddacd2a0e3ae05b88a435a216d52ce5205bcc4797b08b8c0712038eea9699859e11a5663cd6761255162a8e305ba6565f60095990611683777063a02b4 -DIST ngx_xsltproc-0.15.tar.gz 535723 SHA256 df89400f606fc6f262b68d2d1646c4e6f7b8b0e8bcbc491c7e530c6bf1b18d96 SHA512 6ce21ed11897b399b6e0a220bc190ee03a05c5e94dce5603ee7a97c171df0d612744fe40c1aeb2795d167d4fb8d5ead8304084090cab352ed18f925b37f7ab35 WHIRLPOOL 8b50e373c15ecec07e1ccf4574b62bd6091a853297326d5cfaa7ec86bc5c6dac2c0cb3d28aa6d4305f29fb1d0a673f4629f60cd7087de68a22ea61004c0e3cda +DIST ngx_mogilefs_module-1.0.4.tar.gz 11208 SHA256 7ac230d30907f013dff8d435a118619ea6168aa3714dba62c6962d350c6295ae SHA512 b8cb7eaf6274f4e2247dbcb39db05072d2b2d4361256a325fafab5533d7ce0c4ae9e2905b954dfcfa4789c9cab5cccf2ac1c3a1f02f6a327ed95b562d7773ed1 WHIRLPOOL 64c9b11ad938e6dbe5ba31298f1cd46f6e6bb4ba039c96b1e43bd85919d1606326f74b677f789ecabe0b0f4e0f08ac5aaf8148bf820de65aaa1e9966a28b9f61 +DIST ngx_rtmp-1.1.6.tar.gz 519666 SHA256 4039d1e7febd93188f729b594772d04d8a1137b2e90b12fa53bb061f200add87 SHA512 6db0cc5a3cff600a836483f9cc4ff76860e9c893167561ad818cb41e2eb4fa31af8a4213e42c7c5766e389aed0ad713cffe776aa4bc4ebf279dd63eb65d4162c WHIRLPOOL f23860df6df0de87aa7d65f2411ea7104e635e5b13987853599a06c064b93229c8a900dca84b983e0dcabac96c8918889932cd303836a3cab4ac7c6d7c2a0b10 DIST ngx_xsltproc-0.16.tar.gz 535696 SHA256 9003d5aa7bff157577d1f8fb5ee070ee52544fc53c48bb9aa0bdd092e5f39bcf SHA512 6f3c83f69ffa356d9fd32130e6a49b5948047de15c11272223bbdd4eaeb8404422e1e02bf688c86a19fd8f8bb6e3727f8247ec697fa54c364395daa64ed0f971 WHIRLPOOL 4f93fcd7cb89531ba186258e6a93d655d064334c3b9956a15d72fdb8ab360bb967ad1353597f966529ec0ea66a3da0575d13fab2cca7f3d468c5f54fcea17a60 -EBUILD nginx-1.4.4-r101.ebuild 24609 SHA256 bde7afc48947a1eac70940a6454a17d9043064b943702153594c8f4f6ccf657d SHA512 a502bf065c47a0d2d404e1ea3e88a7d7caf9eb69aa1a943d5dce6ae0c53eaf9f147e0ed7febebd5bbdf2691bf509156a1c854f0d44fff036167356a8a2950c41 WHIRLPOOL ac19314202e6bdbb0112acf732ac74a77f7bbfe563a6b7605b1a76a49cb780dc31eab7498441afd910fd621e4a59fd59ca0268176e7dccd75162236d3be1c6e8 -EBUILD nginx-1.4.4-r103.ebuild 24706 SHA256 94271bb094102f577f569b48d7346411d9465903e9a88a3964c8344b44bd270b SHA512 a1aa9152502ab33c476e90e001a68f175adf9306f22537f0b84e6b6c8ce612b9bd05f6c000fbf84bd22cab1cd13f9dbb6f3e612ff5ed98598cfa47956ba678cf WHIRLPOOL e87682a7e614e308be66f260083762aa3dc1d13a33f804a15634fb9a5a1c53a83d3379762004c40d582aa6768cab9a4c604dcb36666a10eabed9d9bb16741902 -EBUILD nginx-1.4.4-r104.ebuild 24868 SHA256 3e722ce8c1316ce5d2fe4d26a2824fb7835e7fe4a9904c57fc5f6a655a1fc809 SHA512 fb692e8476c7620a07af68bcf7798606bab13070bcdd1a9b199b0c8236bc21ac4eb904dc2a7f333ae3b1e794c579b567475f16f1928917fd72028e076f2a2b29 WHIRLPOOL 87a224d5303f507f53e975a53b2b7b3c71612eabfb555eff39356fb058138e8444b1553ca06be3aaaf7ad24f0646e2b63afd386ddfc2fb1889f970a30e036a4a -MISC ChangeLog 62662 SHA256 97e947dd8b04812587fe352b28eee0116134c529efb046bc650d165a5f106f00 SHA512 ac7bd0bb3e4545d057165123f4ac7943879f6bc36f10d4ec3ef83697654cae7363dc05096389fb140835934064894e843e9015338d0f2b1f24cdc63f0992792c WHIRLPOOL 57c1b72be564950d93a370dbb39ffeadbe172ac6a2ebf832786a4c65b1db08b7c0a3b2a1c09d1d6e8c5474b7ab88487d10d0826596a4e41bc30bd8cbd3874f43 -MISC metadata.xml 827 SHA256 750fe1d3ad8a43f2772ba296a0bfd35259d32a1746847dfe4119a18d49c01397 SHA512 5248aaf2524123b68d6fd6b82bc58426d419801763d8dcb87b5a5b15475936daf0160f9e878db06307ede0ab215ba0b571a9ff39873f7a77c18780f31c92b0d0 WHIRLPOOL 70c74c2b920dc049b01038e89d7046d188cad9a8a60cbd52dd11db32fe34ca9b55e62ec0bf3ad32c7fb8b26e519a97dc38175f1be3ef5e24c3d55d76f6ed8d10 +EBUILD nginx-1.7.6-r101.ebuild 26286 SHA256 4cff649640805bd53f90e8e367b809b8d5da44153184f28b6521cdc3904deb7e SHA512 99c4b75fdd82a4582529040ea8b62a0a265b170b1f28c2dc7dd2eca907f302da2dee524b0ea9021dd14c3dcdaa9a3bb0d980630cdd3770b4a1c98a113f8816e9 WHIRLPOOL 911fd81344a228c859f1d6b3f42d09a24bd88bbda6f35508bd348d7ed0c6384e7f12f04c99cf60a28ec2d8ec65b5cfac207f1bec72098f32d74ef84b67df3ad0 +MISC ChangeLog 68294 SHA256 39953c26300477cbe00a53df81205f080b4c59b644bbb6719abbfbcee30c336e SHA512 1194b7b03dfcf59c3b43c97c620923fa086e14a7431ac12c73ac14436fd8f621985d4695dca2db3a583399fe4d26eebf2e8c24c7cc219e5054e66183b8091a16 WHIRLPOOL cdf124334f439928a3a77165470bce41603f4ff82a400c99727ffdf4dc886cd7b143190088df4dbf5a3b85ff74b8c4fa2175bfb4b3ad1a10d0aa9558b0b8efc4 +MISC metadata.xml 1163 SHA256 fc62172e93d4857665e5e450d6304b613e4f41fb8a31bc3989219c6118064408 SHA512 e38044c19c5edd0580d5c93f1312b780dd2a253e1d811a8c04e24de1f29d1155c706d564fd5c0a7467ae2410edc2178cd7036e030906afa1d5974071ec46598e WHIRLPOOL 7244c3ec582db576a50a3ebee170e359c6b9f159294bc6ac276500cc5908ee044e326793a409e8e22ffa56a220341d144dc3852cdabd38fca1e30f60856c01fa diff --git a/www-servers/nginx/files/AJP-nginx-1.7.9+.patch b/www-servers/nginx/files/AJP-nginx-1.7.9+.patch new file mode 100644 index 0000000..35460fc --- /dev/null +++ b/www-servers/nginx/files/AJP-nginx-1.7.9+.patch @@ -0,0 +1,184 @@ +From bf6cd93f2098b59260de8d494f0f4b1f11a84627 Mon Sep 17 00:00:00 2001 +From: Weibin Yao <yaoweibin@gmail.com> +Date: Fri, 27 Feb 2015 23:13:30 +0800 +Subject: [PATCH] fixed the compatible problem with nginx-1.7.9+ + +--- + ngx_http_ajp.h | 1 + + ngx_http_ajp_module.c | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 86 insertions(+) + +diff --git a/ngx_http_ajp.h b/ngx_http_ajp.h +index 72502ad..b3c7051 100644 +--- a/ngx_http_ajp.h ++++ b/ngx_http_ajp.h +@@ -5,6 +5,7 @@ + #include <ngx_config.h> + #include <ngx_core.h> + #include <ngx_http.h> ++#include <nginx.h> + #include "ngx_http_ajp_module.h" + + #define AJP13_DEF_HOST "127.0.0.1" +diff --git a/ngx_http_ajp_module.c b/ngx_http_ajp_module.c +index e4d5b00..be32459 100644 +--- a/ngx_http_ajp_module.c ++++ b/ngx_http_ajp_module.c +@@ -464,8 +464,12 @@ ngx_http_ajp_store(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) + + #if (NGX_HTTP_CACHE) + ++#if (nginx_version >= 1007009) ++ if (alcf->upstream.cache > 0) ++#else + if (alcf->upstream.cache != NGX_CONF_UNSET_PTR + && alcf->upstream.cache != NULL) ++#endif + { + return "is incompatible with \"ajp_cache\""; + } +@@ -534,15 +538,27 @@ ngx_http_ajp_cache(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) + ngx_http_ajp_loc_conf_t *alcf = conf; + + ngx_str_t *value; ++#if (nginx_version >= 1007009) ++ ngx_http_complex_value_t cv; ++ ngx_http_compile_complex_value_t ccv; ++#endif + + value = cf->args->elts; + ++#if (nginx_version >= 1007009) ++ if (alcf->upstream.cache != NGX_CONF_UNSET) { ++#else + if (alcf->upstream.cache != NGX_CONF_UNSET_PTR) { ++#endif + return "is duplicate"; + } + + if (ngx_strcmp(value[1].data, "off") == 0) { ++#if (nginx_version >= 1007009) ++ alcf->upstream.cache = 0; ++#else + alcf->upstream.cache = NULL; ++#endif + return NGX_CONF_OK; + } + +@@ -550,11 +566,44 @@ ngx_http_ajp_cache(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) + return "is incompatible with \"ajp_store\""; + } + ++#if (nginx_version >= 1007009) ++ alcf->upstream.cache = 1; ++ ++ ngx_memzero(&ccv, sizeof(ngx_http_compile_complex_value_t)); ++ ++ ccv.cf = cf; ++ ccv.value = &value[1]; ++ ccv.complex_value = &cv; ++ ++ if (ngx_http_compile_complex_value(&ccv) != NGX_OK) { ++ return NGX_CONF_ERROR; ++ } ++ ++ if (cv.lengths != NULL) { ++ ++ alcf->upstream.cache_value = ngx_palloc(cf->pool, ++ sizeof(ngx_http_complex_value_t)); ++ if (alcf->upstream.cache_value == NULL) { ++ return NGX_CONF_ERROR; ++ } ++ ++ *alcf->upstream.cache_value = cv; ++ ++ return NGX_CONF_OK; ++ } ++ ++ alcf->upstream.cache_zone = ngx_shared_memory_add(cf, &value[1], 0, ++ &ngx_http_ajp_module); ++ if (alcf->upstream.cache_zone == NULL) { ++ return NGX_CONF_ERROR; ++ } ++#else + alcf->upstream.cache = ngx_shared_memory_add(cf, &value[1], 0, + &ngx_http_ajp_module); + if (alcf->upstream.cache == NULL) { + return NGX_CONF_ERROR; + } ++#endif + + return NGX_CONF_OK; + } +@@ -666,7 +715,11 @@ ngx_http_ajp_create_loc_conf(ngx_conf_t *cf) + conf->upstream.pass_request_body = NGX_CONF_UNSET; + + #if (NGX_HTTP_CACHE) ++#if (nginx_version >= 1007009) ++ conf->upstream.cache = NGX_CONF_UNSET; ++#else + conf->upstream.cache = NGX_CONF_UNSET_PTR; ++#endif + conf->upstream.cache_min_uses = NGX_CONF_UNSET_UINT; + conf->upstream.cache_valid = NGX_CONF_UNSET_PTR; + conf->upstream.cache_lock = NGX_CONF_UNSET; +@@ -699,6 +752,18 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) + ngx_str_t *h; + ngx_hash_init_t hash; + ++#if (NGX_HTTP_CACHE) && (nginx_version >= 1007009) ++ ++ if (conf->upstream.store > 0) { ++ conf->upstream.cache = 0; ++ } ++ ++ if (conf->upstream.cache > 0) { ++ conf->upstream.store = 0; ++ } ++ ++#endif ++ + if (conf->upstream.store != 0) { + ngx_conf_merge_value(conf->upstream.store, + prev->upstream.store, 0); +@@ -864,6 +929,20 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) + + #if (NGX_HTTP_CACHE) + ++#if (nginx_version >= 1007009) ++ if (conf->upstream.cache == NGX_CONF_UNSET) { ++ ngx_conf_merge_value(conf->upstream.cache, ++ prev->upstream.cache, 0); ++ ++ conf->upstream.cache_zone = prev->upstream.cache_zone; ++ conf->upstream.cache_value = prev->upstream.cache_value; ++ } ++ ++ if (conf->upstream.cache_zone && conf->upstream.cache_zone->data == NULL) { ++ ngx_shm_zone_t *shm_zone; ++ ++ shm_zone = conf->upstream.cache_zone; ++#else + ngx_conf_merge_ptr_value(conf->upstream.cache, + prev->upstream.cache, NULL); + +@@ -871,6 +950,7 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) + ngx_shm_zone_t *shm_zone; + + shm_zone = conf->upstream.cache; ++#endif + + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "\"ajp_cache\" zone \"%V\" is unknown, " +@@ -910,6 +990,11 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) + conf->cache_key = prev->cache_key; + } + ++ if (conf->upstream.cache && conf->cache_key.value.data == NULL) { ++ ngx_conf_log_error(NGX_LOG_WARN, cf, 0, ++ "no \"fastcgi_cache_key\" for \"fastcgi_cache\""); ++ } ++ + ngx_conf_merge_value(conf->upstream.cache_lock, + prev->upstream.cache_lock, 0); + diff --git a/www-servers/nginx/files/check_1.7.2+.patch b/www-servers/nginx/files/check_1.7.2+.patch new file mode 100644 index 0000000..50405a5 --- /dev/null +++ b/www-servers/nginx/files/check_1.7.2+.patch @@ -0,0 +1,201 @@ +commit 21116e1c0bba730ca59327ffba9320bc63f11462 +Author: Johan Bergström <bugs@bergstroem.nu> +Date: Thu Jun 19 10:17:22 2014 +1000 + + Add support for upstream_check to nginx 1.7.2 + +diff --git src/http/modules/ngx_http_upstream_ip_hash_module.c src/http/modules/ngx_http_upstream_ip_hash_module.c +index 148d73a..be9e03d 100644 +--- src/http/modules/ngx_http_upstream_ip_hash_module.c ++++ src/http/modules/ngx_http_upstream_ip_hash_module.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif + + typedef struct { + /* the round robin data must be first */ +@@ -212,6 +215,15 @@ ngx_http_upstream_get_ip_hash_peer(ngx_peer_connection_t *pc, void *data) + goto next_try; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get ip_hash peer, check_index: %ui", ++ peer->check_index); ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ goto next_try; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) +diff --git src/http/modules/ngx_http_upstream_least_conn_module.c src/http/modules/ngx_http_upstream_least_conn_module.c +index dbef95d..14e9e40 100644 +--- src/http/modules/ngx_http_upstream_least_conn_module.c ++++ src/http/modules/ngx_http_upstream_least_conn_module.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif + + typedef struct { + ngx_uint_t *conns; +@@ -203,6 +206,16 @@ ngx_http_upstream_get_least_conn_peer(ngx_peer_connection_t *pc, void *data) + continue; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get least_conn peer, check_index: %ui", ++ peer->check_index); ++ ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) +@@ -256,6 +269,16 @@ ngx_http_upstream_get_least_conn_peer(ngx_peer_connection_t *pc, void *data) + continue; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get least_conn peer, check_index: %ui", ++ peer->check_index); ++ ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (lcp->conns[i] * best->weight != lcp->conns[p] * peer->weight) { + continue; + } +diff --git src/http/ngx_http_upstream_round_robin.c src/http/ngx_http_upstream_round_robin.c +index 37c835c..43ccdcf 100644 +--- src/http/ngx_http_upstream_round_robin.c ++++ src/http/ngx_http_upstream_round_robin.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif + + static ngx_http_upstream_rr_peer_t *ngx_http_upstream_get_peer( + ngx_http_upstream_rr_peer_data_t *rrp); +@@ -88,6 +91,14 @@ ngx_http_upstream_init_round_robin(ngx_conf_t *cf, + peer[n].fail_timeout = server[i].fail_timeout; + peer[n].down = server[i].down; + peer[n].server = server[i].name; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (!server[i].down) { ++ peers->peer[n].check_index = ++ ngx_http_check_add_peer(cf, us, &server[i].addrs[j]); ++ } else { ++ peers->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -144,6 +155,15 @@ ngx_http_upstream_init_round_robin(ngx_conf_t *cf, + peer[n].fail_timeout = server[i].fail_timeout; + peer[n].down = server[i].down; + peer[n].server = server[i].name; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (!server[i].down) { ++ backup->peer[n].check_index = ++ ngx_http_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ backup->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -203,6 +223,9 @@ ngx_http_upstream_init_round_robin(ngx_conf_t *cf, + peer[i].current_weight = 0; + peer[i].max_fails = 1; + peer[i].fail_timeout = 10; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + + us->peer.data = peers; +@@ -312,7 +335,9 @@ ngx_http_upstream_create_round_robin_peer(ngx_http_request_t *r, + peer[0].current_weight = 0; + peer[0].max_fails = 1; + peer[0].fail_timeout = 10; +- ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ peers->peer[0].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } else { + + for (i = 0; i < ur->naddrs; i++) { +@@ -352,6 +377,9 @@ ngx_http_upstream_create_round_robin_peer(ngx_http_request_t *r, + peer[i].current_weight = 0; + peer[i].max_fails = 1; + peer[i].fail_timeout = 10; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + } + +@@ -411,6 +439,12 @@ ngx_http_upstream_get_round_robin_peer(ngx_peer_connection_t *pc, void *data) + goto failed; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ goto failed; ++ } ++#endif ++ + } else { + + /* there are several peers */ +@@ -508,6 +542,12 @@ ngx_http_upstream_get_peer(ngx_http_upstream_rr_peer_data_t *rrp) + continue; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) +diff --git src/http/ngx_http_upstream_round_robin.h src/http/ngx_http_upstream_round_robin.h +index 9db82a6..2fedd46 100644 +--- src/http/ngx_http_upstream_round_robin.h ++++ src/http/ngx_http_upstream_round_robin.h +@@ -31,6 +31,10 @@ typedef struct { + ngx_uint_t max_fails; + time_t fail_timeout; + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_uint_t check_index; ++#endif ++ + ngx_uint_t down; /* unsigned down:1; */ + + #if (NGX_HTTP_SSL) diff --git a/www-servers/nginx/files/lua-nginx-1.7.6.patch b/www-servers/nginx/files/lua-nginx-1.7.6.patch new file mode 100644 index 0000000..3cce343 --- /dev/null +++ b/www-servers/nginx/files/lua-nginx-1.7.6.patch @@ -0,0 +1,39 @@ +From 0c4528e50dc45de322a6ae86b1fff544d777e722 Mon Sep 17 00:00:00 2001 +From: "Yichun Zhang (agentzh)" <agentzh@gmail.com> +Date: Wed, 17 Sep 2014 13:18:42 -0700 +Subject: [PATCH] bugfix: fixed compilation error with nginx 1.7.5+ because + nginx 1.7.5+ changes the API in the events subsystem. thanks Charles R. + Portwood II and Mathieu Le Marec for the report in #422. + +--- + src/ngx_http_lua_socket_tcp.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/ngx_http_lua_socket_tcp.c b/src/ngx_http_lua_socket_tcp.c +index 52cc89d..3743548 100644 +--- a/src/ngx_http_lua_socket_tcp.c ++++ b/src/ngx_http_lua_socket_tcp.c +@@ -3212,7 +3212,11 @@ ngx_http_lua_socket_tcp_finalize_read_part(ngx_http_request_t *r, + ngx_del_event(c->read, NGX_READ_EVENT, NGX_CLOSE_EVENT); + } + ++#if defined(nginx_version) && nginx_version >= 1007005 ++ if (c->read->posted) { ++#else + if (c->read->prev) { ++#endif + ngx_delete_posted_event(c->read); + } + +@@ -3261,7 +3265,11 @@ ngx_http_lua_socket_tcp_finalize_write_part(ngx_http_request_t *r, + ngx_del_event(c->write, NGX_WRITE_EVENT, NGX_CLOSE_EVENT); + } + ++#if defined(nginx_version) && nginx_version >= 1007005 ++ if (c->write->posted) { ++#else + if (c->write->prev) { ++#endif + ngx_delete_posted_event(c->write); + } + diff --git a/www-servers/nginx/files/nginx.logrotate b/www-servers/nginx/files/nginx.logrotate-r1 index 0ae86c8..4304074 100644 --- a/www-servers/nginx/files/nginx.logrotate +++ b/www-servers/nginx/files/nginx.logrotate-r1 @@ -1,9 +1,10 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.logrotate,v 1.3 2013/05/02 20:14:31 hollow Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.logrotate-r1,v 1.1 2014/06/19 09:52:24 dev-zero Exp $ /var/log/nginx/*_log { missingok + delaycompress sharedscripts postrotate test -r /run/nginx.pid && kill -USR1 `cat /run/nginx.pid` diff --git a/www-servers/nginx/files/nginx.service b/www-servers/nginx/files/nginx.service deleted file mode 100644 index b7b81dd..0000000 --- a/www-servers/nginx/files/nginx.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=The nginx HTTP and reverse proxy server -After=network.target remote-fs.target nss-lookup.target - -[Service] -Type=forking -PIDFile=/run/nginx.pid -ExecStartPre=/usr/bin/systemd-tmpfiles --create nginx.conf -ExecStartPre=/usr/sbin/nginx -t -ExecStart=/usr/sbin/nginx -ExecReload=/bin/kill -HUP $MAINPID -ExecStop=/bin/kill -QUIT $MAINPID - -[Install] -WantedBy=multi-user.target diff --git a/www-servers/nginx/files/rtmp-nginx-1.7.6.patch b/www-servers/nginx/files/rtmp-nginx-1.7.6.patch new file mode 100644 index 0000000..ae8ccce --- /dev/null +++ b/www-servers/nginx/files/rtmp-nginx-1.7.6.patch @@ -0,0 +1,89 @@ +From dd5f2aa117c617e1f0fde26f8fd58903be2d85e8 Mon Sep 17 00:00:00 2001 +From: Roman Arutyunyan <arut@qip.ru> +Date: Wed, 17 Sep 2014 07:10:38 +0400 +Subject: [PATCH] fixed compilation + +--- + ngx_rtmp.c | 4 ++++ + ngx_rtmp.h | 9 +++++++++ + ngx_rtmp_play_module.c | 8 +++++++- + 3 files changed, 20 insertions(+), 1 deletion(-) + +diff --git a/ngx_rtmp.c b/ngx_rtmp.c +index c079c90..e525a93 100644 +--- a/ngx_rtmp.c ++++ b/ngx_rtmp.c +@@ -31,7 +31,11 @@ static char * ngx_rtmp_merge_applications(ngx_conf_t *cf, + ngx_uint_t ctx_index); + + ++#if (nginx_version >= 1007005) ++ngx_thread_volatile ngx_queue_t ngx_rtmp_init_queue; ++#else + ngx_thread_volatile ngx_event_t *ngx_rtmp_init_queue; ++#endif + + + ngx_uint_t ngx_rtmp_max_module; +diff --git a/ngx_rtmp.h b/ngx_rtmp.h +index d3648f7..b87e99e 100644 +--- a/ngx_rtmp.h ++++ b/ngx_rtmp.h +@@ -12,6 +12,7 @@ + #include <ngx_core.h> + #include <ngx_event.h> + #include <ngx_event_connect.h> ++#include <nginx.h> + + #include "ngx_rtmp_amf.h" + #include "ngx_rtmp_bandwidth.h" +@@ -198,7 +199,11 @@ typedef struct { + ngx_str_t *addr_text; + int connected; + ++#if (nginx_version >= 1007005) ++ ngx_queue_t posted_dry_events; ++#else + ngx_event_t *posted_dry_events; ++#endif + + /* client buffer time in msec */ + uint32_t buflen; +@@ -602,7 +607,11 @@ extern ngx_rtmp_bandwidth_t ngx_rtmp_bw_in; + + + extern ngx_uint_t ngx_rtmp_naccepted; ++#if (nginx_version >= 1007005) ++extern ngx_thread_volatile ngx_queue_t ngx_rtmp_init_queue; ++#else + extern ngx_thread_volatile ngx_event_t *ngx_rtmp_init_queue; ++#endif + + extern ngx_uint_t ngx_rtmp_max_module; + extern ngx_module_t ngx_rtmp_core_module; +diff --git a/ngx_rtmp_play_module.c b/ngx_rtmp_play_module.c +index acaa46c..f6ea6c3 100644 +--- a/ngx_rtmp_play_module.c ++++ b/ngx_rtmp_play_module.c +@@ -6,6 +6,7 @@ + + #include <ngx_config.h> + #include <ngx_core.h> ++#include <nginx.h> + #include "ngx_rtmp_play_module.h" + #include "ngx_rtmp_cmd_module.h" + #include "ngx_rtmp_netcall_module.h" +@@ -430,7 +431,12 @@ ngx_rtmp_play_do_stop(ngx_rtmp_session_t *s) + ngx_del_timer(&ctx->send_evt); + } + +- if (ctx->send_evt.prev) { ++#if (nginx_version >= 1007005) ++ if (ctx->send_evt.posted) ++#else ++ if (ctx->send_evt.prev) ++#endif ++ { + ngx_delete_posted_event((&ctx->send_evt)); + } + diff --git a/www-servers/nginx/metadata.xml b/www-servers/nginx/metadata.xml index c42faaa..5e9ac6b 100644 --- a/www-servers/nginx/metadata.xml +++ b/www-servers/nginx/metadata.xml @@ -1,23 +1,27 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer> - <email>hollow@gentoo.org</email> - <name>Benedikt Böhm</name> - </maintainer> - <maintainer> - <email>dev-zero@gentoo.org</email> - <name>Tiziano Müller</name> - </maintainer> - <use> - <flag name='aio'>Enables file AIO support</flag> - <flag name='http'>Enable HTTP core support</flag> - <flag name='http-cache'>Enable HTTP cache support</flag> - <flag name='libatomic'>Use libatomic instead of builtin atomic operations</flag> - <flag name='pcre-jit'>Enable JIT for pcre</flag> - <flag name='ssl'>Enable HTTPS module for http. Enable SSL/TLS support for POP3/IMAP/SMTP for mail.</flag> - </use> - <upstream> - <changelog>http://nginx.org/en/CHANGES</changelog> - </upstream> + <herd>proxy-maintainers</herd> + <maintainer> + <email>dev-zero@gentoo.org</email> + <name>Tiziano Müller</name> + </maintainer> + <maintainer> + <email>bugs@bergstroem.nu</email> + <name>Johan Bergström</name> + <description>Co-maintainer, CC on bugs.</description> + </maintainer> + <use> + <flag name="aio">Enables file AIO support</flag> + <flag name="http">Enable HTTP core support</flag> + <flag name="http-cache">Enable HTTP cache support</flag> + <flag name="libatomic">Use libatomic instead of builtin atomic operations</flag> + <flag name="luajit">Use <pkg>dev-lang/luajit</pkg> instead of <pkg>dev-lang/lua</pkg> for lua support when building the lua http module.</flag> + <flag name="pcre-jit">Enable JIT for pcre</flag> + <flag name="ssl">Enable HTTPS module for http. Enable SSL/TLS support for POP3/IMAP/SMTP for mail.</flag> + <flag name="rtmp">NGINX-based Media Streaming Server</flag> + </use> + <upstream> + <changelog>http://nginx.org/en/CHANGES</changelog> + </upstream> </pkgmetadata> diff --git a/www-servers/nginx/nginx-1.4.4-r101.ebuild b/www-servers/nginx/nginx-1.4.4-r101.ebuild deleted file mode 100644 index 46e1868..0000000 --- a/www-servers/nginx/nginx-1.4.4-r101.ebuild +++ /dev/null @@ -1,662 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-1.4.4.ebuild,v 1.3 2013/11/20 20:22:16 ago Exp $ - -EAPI="5" - -# 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" - -# syslog -SYSLOG_MODULE_PV="165affd9741f0e30c4c8225da5e487d33832aca3" -SYSLOG_MODULE_NGINX_PV="1.4.0" -SYSLOG_MODULE_P="ngx_syslog-${SYSLOG_MODULE_PV}" -SYSLOG_MODULE_URI="https://github.com/yaoweibin/nginx_syslog_patch/archive/${SYSLOG_MODULE_PV}.tar.gz" -SYSLOG_MODULE_WD="${WORKDIR}/nginx_syslog_patch-${SYSLOG_MODULE_PV}" - -# devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) -DEVEL_KIT_MODULE_PV="0.2.19" -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.0" -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 (http://github.com/agentzh/headers-more-nginx-module, BSD license) -HTTP_HEADERS_MORE_MODULE_PV="0.22" -HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}-r1" -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_push (http://pushmodule.slact.net/, MIT license) -HTTP_PUSH_MODULE_PV="0.692" -HTTP_PUSH_MODULE_P="ngx_http_push-${HTTP_PUSH_MODULE_PV}" -HTTP_PUSH_MODULE_URI="http://pushmodule.slact.net/downloads/nginx_http_push_module-${HTTP_PUSH_MODULE_PV}.tar.gz" -HTTP_PUSH_MODULE_WD="${WORKDIR}/nginx_http_push_module-${HTTP_PUSH_MODULE_PV}" - -# http_cache_purge (http://labs.frickle.com/nginx_ngx_cache_purge/, BSD-2 license) -HTTP_CACHE_PURGE_MODULE_PV="2.1" -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 (http://wiki.nginx.org/NgxFancyIndex, BSD license) -HTTP_FANCYINDEX_MODULE_PV="0.3.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/chaoslawful/lua-nginx-module, BSD license) -HTTP_LUA_MODULE_PV="0.9.0" -HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" -HTTP_LUA_MODULE_URI="https://github.com/chaoslawful/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 (http://web.iti.upv.es/~sto/nginx/, BSD-2 license) -HTTP_AUTH_PAM_MODULE_PV="1.3" -HTTP_AUTH_PAM_MODULE_P="ngx_http_auth_pam-${HTTP_AUTH_PAM_MODULE_PV}" -HTTP_AUTH_PAM_MODULE_URI="http://web.iti.upv.es/~sto/nginx/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}.tgz" -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="0.1.9" -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/v${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/madvertise/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.52-1" -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 (http://github.com/arut/nginx-rtmp-module, BSD license) -RTMP_MODULE_PV="1.0.5" -RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" -RTMP_MODULE_URI="http://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 (http://github.com/arut/nginx-dav-ext-module, BSD license) -HTTP_DAV_EXT_MODULE_PV="0.0.2" -HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" -HTTP_DAV_EXT_MODULE_URI="http://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/agentzh/echo-nginx-module, BSD license) -HTTP_ECHO_MODULE_PV="0.48" -HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" -HTTP_ECHO_MODULE_URI="https://github.com/agentzh/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.7.5" -HTTP_SECURITY_MODULE_P="modsecurity-apache_${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 (https://github.com/wandenberg/nginx-push-stream-module, GPL-3) -HTTP_PUSH_STREAM_MODULE_PV="0.3.5" -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}" - -# http_xsltproc (http://github.com/yoreek/nginx-xsltproc-module/, BSD license) -HTTP_XSLTPROC_MODULE_PV="0.14" -HTTP_XSLTPROC_MODULE_P="ngx_xsltproc-${HTTP_XSLTPROC_MODULE_PV}" -HTTP_XSLTPROC_MODULE_SHA1="9bb572d" -HTTP_XSLTPROC_MODULE_URI="https://github.com/yoreek/nginx-xsltproc-module/tarball/v${HTTP_XSLTPROC_MODULE_PV}" - -inherit eutils ssl-cert toolchain-funcs perl-module flag-o-matic user systemd versionator - -DESCRIPTION="Robust, small and high performance http and reverse proxy server" -HOMEPAGE="http://nginx.org" -SRC_URI="http://nginx.org/download/${P}.tar.gz - syslog? ( ${SYSLOG_MODULE_URI} -> ${SYSLOG_MODULE_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_push? ( ${HTTP_PUSH_MODULE_URI} -> ${HTTP_PUSH_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_xsltproc? ( ${HTTP_XSLTPROC_MODULE_URI} -> ${HTTP_XSLTPROC_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 ~ppc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" - -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_ip_hash userid uwsgi" -NGINX_MODULES_OPT="addition dav degradation flv geoip gunzip gzip_static image_filter -mp4 perl random_index realip secure_link spdy stub_status sub" -NGINX_MODULES_MAIL="imap pop3 smtp" -NGINX_MODULES_3RD=" - http_upload_progress - http_headers_more - http_push - 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_xsltproc" - -IUSE="aio debug +http +http-cache ipv6 libatomic +pcre pcre-jit rtmp selinux ssl -syslog userland_GNU vim-syntax +nginx_modules_http_xsltproc" - -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_MAIL; do - IUSE="${IUSE} nginx_modules_mail_${mod}" -done - -for mod in $NGINX_MODULES_3RD; do - IUSE="${IUSE} nginx_modules_${mod}" -done - -CDEPEND=" - pcre? ( >=dev-libs/libpcre-4.2 ) - pcre-jit? ( >=dev-libs/libpcre-8.20[jit] ) - selinux? ( sec-policy/selinux-nginx ) - ssl? ( dev-libs/openssl ) - http-cache? ( userland_GNU? ( dev-libs/openssl ) ) - 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-4.2 ) - nginx_modules_http_secure_link? ( userland_GNU? ( dev-libs/openssl ) ) - nginx_modules_http_spdy? ( >=dev-libs/openssl-1.0.1c ) - nginx_modules_http_xsltproc? ( dev-libs/libxml2 dev-libs/libxslt dev-libs/icu dev-libs/libmemcached ) - nginx_modules_http_lua? ( || ( dev-lang/lua dev-lang/luajit ) ) - 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/libxml2-2.7.8 dev-libs/apr-util www-servers/apache )" -RDEPEND="${CDEPEND}" -DEPEND="${CDEPEND} - 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 -} - -src_prepare() { - epatch "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" - - if use syslog; then - epatch "${SYSLOG_MODULE_WD}"/syslog_${SYSLOG_MODULE_NGINX_PV}.patch - fi - - if use nginx_modules_http_upstream_check; then - epatch "${HTTP_UPSTREAM_CHECK_MODULE_WD}"/check_1.2.6+.patch - fi - - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}/nginx/modsecurity" - epatch "${FILESDIR}/modsecurity-${HTTP_SECURITY_MODULE_PV}-include-paths.patch" - cd - - 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 - - epatch_user -} - -src_configure() { - local myconf= http_enabled= mail_enabled= - - use aio && myconf+=" --with-file-aio --with-aio_module" - use debug && myconf+=" --with-debug" - use ipv6 && myconf+=" --with-ipv6" - use libatomic && myconf+=" --with-libatomic" - use pcre && myconf+=" --with-pcre" - use pcre-jit && myconf+=" --with-pcre-jit" - - # syslog support - if use syslog; then - myconf+=" --add-module=${SYSLOG_MODULE_WD}" - fi - - # 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_push; then - http_enabled=1 - myconf+=" --add-module=${HTTP_PUSH_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 - 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_xsltproc; then - http_enabled=1 - myconf+=" --add-module=${WORKDIR}/yoreek-nginx-xsltproc-module-${HTTP_XSLTPROC_MODULE_SHA1}" - fi - - if use http || use http-cache; 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 - - # 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} --group=${PN}" - 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" \ - --with-ld-opt="-L${EROOT}usr/lib" \ - --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 \ - ${myconf} || die "configure failed" - - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}" - ./configure \ - --enable-standalone-module \ - $(use_enable pcre-jit) \ - $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" - fi -} - -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 "${ED}"/etc/nginx/nginx.conf || die - - newinitd "${FILESDIR}"/nginx.initd-r2 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 /var/log/nginx ${keepdir_list} - fowners ${PN}:${PN} /var/log/nginx ${keepdir_list} - - # logrotate - insinto /etc/logrotate.d - newins "${FILESDIR}"/nginx.logrotate nginx - - if use nginx_modules_http_perl; then - cd "${S}"/objs/src/http/modules/perl/ - einstall DESTDIR="${D}" INSTALLDIRS=vendor - fixlocalpod - fi - - if use syslog; then - docinto ${SYSLOG_MODULE_P} - dodoc "${SYSLOG_MODULE_WD}"/README - fi - - if use nginx_modules_http_push; then - docinto ${HTTP_PUSH_MODULE_P} - dodoc "${HTTP_PUSH_MODULE_WD}"/{changelog.txt,protocol.txt,README} - 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}"/{Changes,README.markdown} - fi - - if use nginx_modules_http_auth_pam; then - docinto ${HTTP_AUTH_PAM_MODULE_P} - dodoc "${HTTP_AUTH_PAM_MODULE_WD}"/{README,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 - -# README.md is still empty -# if use nginx_modules_http_metrics; then -# docinto ${HTTP_METRICS_MODULE_P} -# dodoc "${HTTP_METRICS_MODULE_WD}"/README.md -# 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,TODO,stat.xsl} - fi - - if use nginx_modules_http_dav_ext; then - docinto ${HTTP_DAV_EXT_MODULE_P} - dodoc "${HTTP_DAV_EXT_MODULE_WD}"/README - fi - - if use nginx_modules_http_echo; then - docinto ${HTTP_ECHO_MODULE_P} - dodoc "${HTTP_ECHO_MODULE_WD}"/{README,README.markdown,doc/HttpEchoModule.wiki} - 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 -} - -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_lua && use nginx_modules_http_spdy; then - ewarn "Lua 3rd party module author warns against using ${P} with" - ewarn "NGINX_MODULES_HTTP=\"lua spdy\". For more info, see http://git.io/OldLsg" - fi - - # This is the proper fix for bug #458726/#469094, resp. CVE-2013-0337 for - # existing installations - local fix_perms=0 - - for rv in ${REPLACING_VERSIONS} ; do - version_compare ${rv} 1.4.1-r2 - [[ $? -eq 1 ]] && fix_perms=1 - done - - if [[ $fix_perms -eq 1 ]] ; then - ewarn "To fix a security bug (CVE-2013-0337, bug #458726) had the following" - ewarn "directories the world-readable bit removed (if set):" - ewarn " ${EPREFIX}/var/log/nginx" - ewarn " ${EPREFIX}${NGINX_HOME_TMP}/{,client,proxy,fastcgi,scgi,uwsgi}" - 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 ${NGINX_HOME_TMP}" - chmod -f o-rwx "${EPREFIX}"/var/log/nginx "${EPREFIX}/${NGINX_HOME_TMP}"/{,client,proxy,fastcgi,scgi,uwsgi} - fi - - # If the nginx user can't change into or read the dir, display a warning. - # If su is not available we display the warning nevertheless since we can't check properly - su -s /bin/sh -c 'cd /var/log/nginx/ && ls' nginx >&/dev/null - if [ $? -ne 0 ] ; then - ewarn "Please make sure that the nginx user or group has at least" - ewarn "'rx' permissions on /var/log/nginx (default on a fresh install)" - ewarn "Otherwise you end up with empty log files after a logrotate." - fi -} diff --git a/www-servers/nginx/nginx-1.4.4-r103.ebuild b/www-servers/nginx/nginx-1.4.4-r103.ebuild deleted file mode 100644 index 13ceaf1..0000000 --- a/www-servers/nginx/nginx-1.4.4-r103.ebuild +++ /dev/null @@ -1,664 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-1.4.4.ebuild,v 1.3 2013/11/20 20:22:16 ago Exp $ - -EAPI="5" - -# 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" - -# syslog -SYSLOG_MODULE_PV="165affd9741f0e30c4c8225da5e487d33832aca3" -SYSLOG_MODULE_NGINX_PV="1.4.0" -SYSLOG_MODULE_P="ngx_syslog-${SYSLOG_MODULE_PV}" -SYSLOG_MODULE_URI="https://github.com/yaoweibin/nginx_syslog_patch/archive/${SYSLOG_MODULE_PV}.tar.gz" -SYSLOG_MODULE_WD="${WORKDIR}/nginx_syslog_patch-${SYSLOG_MODULE_PV}" - -# devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) -DEVEL_KIT_MODULE_PV="0.2.19" -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.0" -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 (http://github.com/agentzh/headers-more-nginx-module, BSD license) -HTTP_HEADERS_MORE_MODULE_PV="0.22" -HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}-r1" -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_push (http://pushmodule.slact.net/, MIT license) -HTTP_PUSH_MODULE_PV="0.692" -HTTP_PUSH_MODULE_P="ngx_http_push-${HTTP_PUSH_MODULE_PV}" -HTTP_PUSH_MODULE_URI="http://pushmodule.slact.net/downloads/nginx_http_push_module-${HTTP_PUSH_MODULE_PV}.tar.gz" -HTTP_PUSH_MODULE_WD="${WORKDIR}/nginx_http_push_module-${HTTP_PUSH_MODULE_PV}" - -# http_cache_purge (http://labs.frickle.com/nginx_ngx_cache_purge/, BSD-2 license) -HTTP_CACHE_PURGE_MODULE_PV="2.1" -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 (http://wiki.nginx.org/NgxFancyIndex, BSD license) -HTTP_FANCYINDEX_MODULE_PV="0.3.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/chaoslawful/lua-nginx-module, BSD license) -HTTP_LUA_MODULE_PV="0.9.0" -HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" -HTTP_LUA_MODULE_URI="https://github.com/chaoslawful/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 (http://web.iti.upv.es/~sto/nginx/, BSD-2 license) -HTTP_AUTH_PAM_MODULE_PV="1.3" -HTTP_AUTH_PAM_MODULE_P="ngx_http_auth_pam-${HTTP_AUTH_PAM_MODULE_PV}" -HTTP_AUTH_PAM_MODULE_URI="http://web.iti.upv.es/~sto/nginx/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}.tgz" -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="0.1.9" -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/v${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/madvertise/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.52-1" -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 (http://github.com/arut/nginx-rtmp-module, BSD license) -RTMP_MODULE_PV="1.0.5" -RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" -RTMP_MODULE_URI="http://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 (http://github.com/arut/nginx-dav-ext-module, BSD license) -HTTP_DAV_EXT_MODULE_PV="0.0.2" -HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" -HTTP_DAV_EXT_MODULE_URI="http://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/agentzh/echo-nginx-module, BSD license) -HTTP_ECHO_MODULE_PV="0.48" -HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" -HTTP_ECHO_MODULE_URI="https://github.com/agentzh/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.7.5" -HTTP_SECURITY_MODULE_P="modsecurity-apache_${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 (https://github.com/wandenberg/nginx-push-stream-module, GPL-3) -HTTP_PUSH_STREAM_MODULE_PV="0.3.5" -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}" - -# http_xsltproc (http://github.com/yoreek/nginx-xsltproc-module/, BSD license) -HTTP_XSLTPROC_MODULE_PV="0.15" -HTTP_XSLTPROC_MODULE_P="ngx_xsltproc-${HTTP_XSLTPROC_MODULE_PV}" -HTTP_XSLTPROC_MODULE_SHA1="dda8dfc" -HTTP_XSLTPROC_MODULE_URI="https://github.com/yoreek/nginx-xsltproc-module/tarball/v${HTTP_XSLTPROC_MODULE_PV}" - -inherit eutils ssl-cert toolchain-funcs perl-module flag-o-matic user systemd versionator - -DESCRIPTION="Robust, small and high performance http and reverse proxy server" -HOMEPAGE="http://nginx.org" -SRC_URI="http://nginx.org/download/${P}.tar.gz - syslog? ( ${SYSLOG_MODULE_URI} -> ${SYSLOG_MODULE_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_push? ( ${HTTP_PUSH_MODULE_URI} -> ${HTTP_PUSH_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_xsltproc? ( ${HTTP_XSLTPROC_MODULE_URI} -> ${HTTP_XSLTPROC_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 ~ppc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" - -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_ip_hash userid uwsgi" -NGINX_MODULES_OPT="addition dav degradation flv geoip gunzip gzip_static image_filter -mp4 perl random_index realip secure_link spdy stub_status sub" -NGINX_MODULES_MAIL="imap pop3 smtp" -NGINX_MODULES_3RD=" - http_upload_progress - http_headers_more - http_push - 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_xsltproc" - -IUSE="aio debug +http +http-cache ipv6 libatomic +pcre pcre-jit rtmp selinux ssl -syslog userland_GNU vim-syntax +nginx_modules_http_xsltproc xsltproc-memcached" - -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_MAIL; do - IUSE="${IUSE} nginx_modules_mail_${mod}" -done - -for mod in $NGINX_MODULES_3RD; do - IUSE="${IUSE} nginx_modules_${mod}" -done - -CDEPEND=" - pcre? ( >=dev-libs/libpcre-4.2 ) - pcre-jit? ( >=dev-libs/libpcre-8.20[jit] ) - selinux? ( sec-policy/selinux-nginx ) - ssl? ( dev-libs/openssl ) - http-cache? ( userland_GNU? ( dev-libs/openssl ) ) - 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-4.2 ) - nginx_modules_http_secure_link? ( userland_GNU? ( dev-libs/openssl ) ) - nginx_modules_http_spdy? ( >=dev-libs/openssl-1.0.1c ) - nginx_modules_http_xsltproc? ( dev-libs/libxml2 dev-libs/libxslt dev-libs/icu ) - xsltproc-memcached? ( dev-libs/libmemcached ) - nginx_modules_http_lua? ( || ( dev-lang/lua dev-lang/luajit ) ) - 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/libxml2-2.7.8 dev-libs/apr-util www-servers/apache )" -RDEPEND="${CDEPEND}" -DEPEND="${CDEPEND} - 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 ) - xsltproc-memcached? ( nginx_modules_http_xsltproc )" - -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 -} - -src_prepare() { - epatch "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" - - if use syslog; then - epatch "${SYSLOG_MODULE_WD}"/syslog_${SYSLOG_MODULE_NGINX_PV}.patch - fi - - if use nginx_modules_http_upstream_check; then - epatch "${HTTP_UPSTREAM_CHECK_MODULE_WD}"/check_1.2.6+.patch - fi - - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}/nginx/modsecurity" - epatch "${FILESDIR}/modsecurity-${HTTP_SECURITY_MODULE_PV}-include-paths.patch" - cd - - 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 - - epatch_user -} - -src_configure() { - local myconf= http_enabled= mail_enabled= - - use aio && myconf+=" --with-file-aio --with-aio_module" - use debug && myconf+=" --with-debug" - use ipv6 && myconf+=" --with-ipv6" - use libatomic && myconf+=" --with-libatomic" - use pcre && myconf+=" --with-pcre" - use pcre-jit && myconf+=" --with-pcre-jit" - - # syslog support - if use syslog; then - myconf+=" --add-module=${SYSLOG_MODULE_WD}" - fi - - # 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_push; then - http_enabled=1 - myconf+=" --add-module=${HTTP_PUSH_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 - 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_xsltproc; then - http_enabled=1 - myconf+=" --add-module=${WORKDIR}/yoreek-nginx-xsltproc-module-${HTTP_XSLTPROC_MODULE_SHA1}" - fi - - if use http || use http-cache; 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 - - # 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} --group=${PN}" - 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" \ - --with-ld-opt="-L${EROOT}usr/lib" \ - --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 \ - ${myconf} || die "configure failed" - - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}" - ./configure \ - --enable-standalone-module \ - $(use_enable pcre-jit) \ - $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" - fi -} - -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 "${ED}"/etc/nginx/nginx.conf || die - - newinitd "${FILESDIR}"/nginx.initd-r2 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 /var/log/nginx ${keepdir_list} - fowners ${PN}:${PN} /var/log/nginx ${keepdir_list} - - # logrotate - insinto /etc/logrotate.d - newins "${FILESDIR}"/nginx.logrotate nginx - - if use nginx_modules_http_perl; then - cd "${S}"/objs/src/http/modules/perl/ - einstall DESTDIR="${D}" INSTALLDIRS=vendor - fixlocalpod - fi - - if use syslog; then - docinto ${SYSLOG_MODULE_P} - dodoc "${SYSLOG_MODULE_WD}"/README - fi - - if use nginx_modules_http_push; then - docinto ${HTTP_PUSH_MODULE_P} - dodoc "${HTTP_PUSH_MODULE_WD}"/{changelog.txt,protocol.txt,README} - 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}"/{Changes,README.markdown} - fi - - if use nginx_modules_http_auth_pam; then - docinto ${HTTP_AUTH_PAM_MODULE_P} - dodoc "${HTTP_AUTH_PAM_MODULE_WD}"/{README,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 - -# README.md is still empty -# if use nginx_modules_http_metrics; then -# docinto ${HTTP_METRICS_MODULE_P} -# dodoc "${HTTP_METRICS_MODULE_WD}"/README.md -# 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,TODO,stat.xsl} - fi - - if use nginx_modules_http_dav_ext; then - docinto ${HTTP_DAV_EXT_MODULE_P} - dodoc "${HTTP_DAV_EXT_MODULE_WD}"/README - fi - - if use nginx_modules_http_echo; then - docinto ${HTTP_ECHO_MODULE_P} - dodoc "${HTTP_ECHO_MODULE_WD}"/{README,README.markdown,doc/HttpEchoModule.wiki} - 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 -} - -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_lua && use nginx_modules_http_spdy; then - ewarn "Lua 3rd party module author warns against using ${P} with" - ewarn "NGINX_MODULES_HTTP=\"lua spdy\". For more info, see http://git.io/OldLsg" - fi - - # This is the proper fix for bug #458726/#469094, resp. CVE-2013-0337 for - # existing installations - local fix_perms=0 - - for rv in ${REPLACING_VERSIONS} ; do - version_compare ${rv} 1.4.1-r2 - [[ $? -eq 1 ]] && fix_perms=1 - done - - if [[ $fix_perms -eq 1 ]] ; then - ewarn "To fix a security bug (CVE-2013-0337, bug #458726) had the following" - ewarn "directories the world-readable bit removed (if set):" - ewarn " ${EPREFIX}/var/log/nginx" - ewarn " ${EPREFIX}${NGINX_HOME_TMP}/{,client,proxy,fastcgi,scgi,uwsgi}" - 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 ${NGINX_HOME_TMP}" - chmod -f o-rwx "${EPREFIX}"/var/log/nginx "${EPREFIX}/${NGINX_HOME_TMP}"/{,client,proxy,fastcgi,scgi,uwsgi} - fi - - # If the nginx user can't change into or read the dir, display a warning. - # If su is not available we display the warning nevertheless since we can't check properly - su -s /bin/sh -c 'cd /var/log/nginx/ && ls' nginx >&/dev/null - if [ $? -ne 0 ] ; then - ewarn "Please make sure that the nginx user or group has at least" - ewarn "'rx' permissions on /var/log/nginx (default on a fresh install)" - ewarn "Otherwise you end up with empty log files after a logrotate." - fi -} diff --git a/www-servers/nginx/nginx-1.4.4-r104.ebuild b/www-servers/nginx/nginx-1.7.6-r101.ebuild index 2ea5af6..d44d5d4 100644 --- a/www-servers/nginx/nginx-1.4.4-r104.ebuild +++ b/www-servers/nginx/nginx-1.7.6-r101.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-1.4.4.ebuild,v 1.3 2013/11/20 20:22:16 ago Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-1.7.6.ebuild,v 1.8 2015/03/10 09:34:27 jlec Exp $ EAPI="5" @@ -17,13 +17,6 @@ EAPI="5" # prevent perl-module from adding automagic perl DEPENDs GENTOO_DEPEND_ON_PERL="no" -# syslog -SYSLOG_MODULE_PV="165affd9741f0e30c4c8225da5e487d33832aca3" -SYSLOG_MODULE_NGINX_PV="1.4.0" -SYSLOG_MODULE_P="ngx_syslog-${SYSLOG_MODULE_PV}" -SYSLOG_MODULE_URI="https://github.com/yaoweibin/nginx_syslog_patch/archive/${SYSLOG_MODULE_PV}.tar.gz" -SYSLOG_MODULE_WD="${WORKDIR}/nginx_syslog_patch-${SYSLOG_MODULE_PV}" - # devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) DEVEL_KIT_MODULE_PV="0.2.19" DEVEL_KIT_MODULE_P="ngx_devel_kit-${DEVEL_KIT_MODULE_PV}-r1" @@ -31,23 +24,17 @@ DEVEL_KIT_MODULE_URI="https://github.com/simpl/ngx_devel_kit/archive/v${DEVEL_KI 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.0" +HTTP_UPLOAD_PROGRESS_MODULE_PV="0.9.1" 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 (http://github.com/agentzh/headers-more-nginx-module, BSD license) -HTTP_HEADERS_MORE_MODULE_PV="0.22" +HTTP_HEADERS_MORE_MODULE_PV="0.25" HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}-r1" 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_push (http://pushmodule.slact.net/, MIT license) -HTTP_PUSH_MODULE_PV="0.692" -HTTP_PUSH_MODULE_P="ngx_http_push-${HTTP_PUSH_MODULE_PV}" -HTTP_PUSH_MODULE_URI="http://pushmodule.slact.net/downloads/nginx_http_push_module-${HTTP_PUSH_MODULE_PV}.tar.gz" -HTTP_PUSH_MODULE_WD="${WORKDIR}/nginx_http_push_module-${HTTP_PUSH_MODULE_PV}" - # http_cache_purge (http://labs.frickle.com/nginx_ngx_cache_purge/, BSD-2 license) HTTP_CACHE_PURGE_MODULE_PV="2.1" HTTP_CACHE_PURGE_MODULE_P="ngx_http_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}" @@ -60,14 +47,14 @@ 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 (http://wiki.nginx.org/NgxFancyIndex, BSD license) -HTTP_FANCYINDEX_MODULE_PV="0.3.2" +# http_fancyindex (https://github.com/aperezdc/ngx-fancyindex, BSD license) +HTTP_FANCYINDEX_MODULE_PV="0.3.4" 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/chaoslawful/lua-nginx-module, BSD license) -HTTP_LUA_MODULE_PV="0.9.0" +HTTP_LUA_MODULE_PV="0.9.12" HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" HTTP_LUA_MODULE_URI="https://github.com/chaoslawful/lua-nginx-module/archive/v${HTTP_LUA_MODULE_PV}.tar.gz" HTTP_LUA_MODULE_WD="${WORKDIR}/lua-nginx-module-${HTTP_LUA_MODULE_PV}" @@ -84,65 +71,80 @@ HTTP_UPSTREAM_CHECK_MODULE_P="ngx_http_upstream_check-${HTTP_UPSTREAM_CHECK_MODU HTTP_UPSTREAM_CHECK_MODULE_URI="https://github.com/yaoweibin/nginx_upstream_check_module/archive/v${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/madvertise/ngx_metrics, BSD license) +# 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.52-1" +HTTP_NAXSI_MODULE_PV="0.53-2" 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 (http://github.com/arut/nginx-rtmp-module, BSD license) -RTMP_MODULE_PV="1.0.5" +RTMP_MODULE_PV="1.1.6" RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" RTMP_MODULE_URI="http://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 (http://github.com/arut/nginx-dav-ext-module, BSD license) -HTTP_DAV_EXT_MODULE_PV="0.0.2" +HTTP_DAV_EXT_MODULE_PV="0.0.3" HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" HTTP_DAV_EXT_MODULE_URI="http://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/agentzh/echo-nginx-module, BSD license) -HTTP_ECHO_MODULE_PV="0.48" +HTTP_ECHO_MODULE_PV="0.56" HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" HTTP_ECHO_MODULE_URI="https://github.com/agentzh/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.7.5" +HTTP_SECURITY_MODULE_PV="2.8.0" HTTP_SECURITY_MODULE_P="modsecurity-apache_${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 (https://github.com/wandenberg/nginx-push-stream-module, GPL-3) -HTTP_PUSH_STREAM_MODULE_PV="0.3.5" +HTTP_PUSH_STREAM_MODULE_PV="0.4.0" 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}" -# http_xsltproc (http://github.com/yoreek/nginx-xsltproc-module/, BSD license) +# sticky-module (https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng, BSD-2) +HTTP_STICKY_MODULE_PV="1.2.5" +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-bd312d586752" + +# ajp-module (https://github.com/yaoweibin/nginx_ajp_module, BSD-2) +HTTP_AJP_MODULE_PV="0.3.0" +HTTP_AJP_MODULE_P="ngx_http_ajp_module-${HTTP_AJP_MODULE_PV}" +HTTP_AJP_MODULE_URI="https://github.com/yaoweibin/nginx_ajp_module/archive/v${HTTP_AJP_MODULE_PV}.tar.gz" +HTTP_AJP_MODULE_WD="${WORKDIR}/nginx_ajp_module-${HTTP_AJP_MODULE_PV}" + +# mogilefs-module (http://www.grid.net.ru/nginx/mogilefs.en.html, BSD-2) +HTTP_MOGILEFS_MODULE_PV="1.0.4" +HTTP_MOGILEFS_MODULE_P="ngx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" +HTTP_MOGILEFS_MODULE_URI="http://www.grid.net.ru/nginx/download/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}.tar.gz" +HTTP_MOGILEFS_MODULE_WD="${WORKDIR}/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" + HTTP_XSLTPROC_MODULE_PV="0.16" HTTP_XSLTPROC_MODULE_P="ngx_xsltproc-${HTTP_XSLTPROC_MODULE_PV}" HTTP_XSLTPROC_MODULE_URI="https://github.com/yoreek/nginx-xsltproc-module/archive/v${HTTP_XSLTPROC_MODULE_PV}.tar.gz" HTTP_XSLTPROC_MODULE_WD="${WORKDIR}/nginx-xsltproc-module-${HTTP_XSLTPROC_MODULE_PV}" -inherit eutils ssl-cert toolchain-funcs perl-module flag-o-matic user systemd versionator +inherit eutils 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="http://nginx.org" SRC_URI="http://nginx.org/download/${P}.tar.gz - syslog? ( ${SYSLOG_MODULE_URI} -> ${SYSLOG_MODULE_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_push? ( ${HTTP_PUSH_MODULE_URI} -> ${HTTP_PUSH_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 ) @@ -156,6 +158,9 @@ SRC_URI="http://nginx.org/download/${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_ajp? ( ${HTTP_AJP_MODULE_URI} -> ${HTTP_AJP_MODULE_P}.tar.gz ) + nginx_modules_http_mogilefs? ( ${HTTP_MOGILEFS_MODULE_URI} -> ${HTTP_MOGILEFS_MODULE_P}.tar.gz ) nginx_modules_http_xsltproc? ( ${HTTP_XSLTPROC_MODULE_URI} -> ${HTTP_XSLTPROC_MODULE_P}.tar.gz )" LICENSE="BSD-2 BSD SSLeay MIT GPL-2 GPL-2+ @@ -163,18 +168,17 @@ LICENSE="BSD-2 BSD SSLeay MIT GPL-2 GPL-2+ nginx_modules_http_push_stream? ( GPL-3 )" SLOT="0" -KEYWORDS="amd64 ~arm ~ppc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" +KEYWORDS="amd64 ~arm ~ppc x86 ~x86-fbsd ~amd64-linux ~x86-linux" 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_ip_hash userid uwsgi" -NGINX_MODULES_OPT="addition dav degradation flv geoip gunzip gzip_static image_filter -mp4 perl random_index realip secure_link spdy stub_status sub" +NGINX_MODULES_OPT="addition auth_request dav degradation flv geoip gunzip gzip_static +image_filter mp4 perl random_index realip secure_link spdy stub_status sub" NGINX_MODULES_MAIL="imap pop3 smtp" NGINX_MODULES_3RD=" http_upload_progress http_headers_more - http_push http_cache_purge http_slowfs_cache http_fancyindex @@ -187,10 +191,13 @@ NGINX_MODULES_3RD=" http_echo http_security http_push_stream + http_sticky + http_ajp + http_mogilefs http_xsltproc" -IUSE="aio debug +http +http-cache ipv6 libatomic +pcre pcre-jit rtmp selinux ssl -syslog userland_GNU vim-syntax +nginx_modules_http_xsltproc xsltproc-memcached" +IUSE="aio debug +http +http-cache ipv6 libatomic luajit +pcre pcre-jit rtmp +selinux ssl userland_GNU vim-syntax +nginx_modules_http_xsltproc xsltproc-memcached" for mod in $NGINX_MODULES_STD; do IUSE="${IUSE} +nginx_modules_http_${mod}" @@ -211,9 +218,8 @@ done CDEPEND=" pcre? ( >=dev-libs/libpcre-4.2 ) pcre-jit? ( >=dev-libs/libpcre-8.20[jit] ) - selinux? ( sec-policy/selinux-nginx ) - ssl? ( dev-libs/openssl ) - http-cache? ( userland_GNU? ( dev-libs/openssl ) ) + ssl? ( dev-libs/openssl:0= ) + http-cache? ( userland_GNU? ( dev-libs/openssl:0= ) ) nginx_modules_http_geoip? ( dev-libs/geoip ) nginx_modules_http_gunzip? ( sys-libs/zlib ) nginx_modules_http_gzip? ( sys-libs/zlib ) @@ -221,16 +227,18 @@ CDEPEND=" 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-4.2 ) - nginx_modules_http_secure_link? ( userland_GNU? ( dev-libs/openssl ) ) - nginx_modules_http_spdy? ( >=dev-libs/openssl-1.0.1c ) - nginx_modules_http_xsltproc? ( dev-libs/libxml2 dev-libs/libxslt dev-libs/icu ) - xsltproc-memcached? ( dev-libs/libmemcached ) - nginx_modules_http_lua? ( || ( dev-lang/lua dev-lang/luajit ) ) + nginx_modules_http_secure_link? ( userland_GNU? ( dev-libs/openssl:0= ) ) + nginx_modules_http_spdy? ( >=dev-libs/openssl-1.0.1c:0= ) + 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/libxml2-2.7.8 dev-libs/apr-util www-servers/apache )" -RDEPEND="${CDEPEND}" + nginx_modules_http_security? ( >=dev-libs/libxml2-2.7.8 dev-libs/apr-util www-servers/apache ) + nginx_modules_http_xsltproc? ( dev-libs/libxml2 dev-libs/libxslt dev-libs/icu ) + xsltproc-memcached? ( dev-libs/libmemcached )" +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-nginx ) +" DEPEND="${CDEPEND} arm? ( dev-libs/libatomic_ops ) libatomic? ( dev-libs/libatomic_ops )" @@ -276,18 +284,16 @@ pkg_setup() { src_prepare() { epatch "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" - if use syslog; then - epatch "${SYSLOG_MODULE_WD}"/syslog_${SYSLOG_MODULE_NGINX_PV}.patch - fi - if use nginx_modules_http_upstream_check; then - epatch "${HTTP_UPSTREAM_CHECK_MODULE_WD}"/check_1.2.6+.patch + epatch "${FILESDIR}"/check_1.7.2+.patch fi - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}/nginx/modsecurity" - epatch "${FILESDIR}/modsecurity-${HTTP_SECURITY_MODULE_PV}-include-paths.patch" - cd - + if use nginx_modules_http_lua; then + sed -i -e 's/-llua5.1/-llua/' "${HTTP_LUA_MODULE_WD}/config" + # fix for nginx 1.7.5 + cd "${HTTP_LUA_MODULE_WD}" + epatch "${FILESDIR}/lua-${P}.patch" + cd "${S}" fi find auto/ -type f -print0 | xargs -0 sed -i 's:\&\& make:\&\& \\$(MAKE):' || die @@ -304,14 +310,30 @@ src_prepare() { fi done - if use xsltproc-memcached; then - sed -i -e 's/LIBMEMCACHED_ENABLED=no/LIBMEMCACHED_ENABLED=yes/' "${HTTP_XSLTPROC_MODULE_WD}/config" || die - fi + if use xsltproc-memcached; then + sed -i -e 's/LIBMEMCACHED_ENABLED=no/LIBMEMCACHED_ENABLED=yes/' "${HTTP_XSLTPROC_MODULE_WD}/config" || die + fi epatch_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}" + if use luajit ; then + sed -i \ + -e 's|^\(LUA_PKGNAMES\)=.*|\1="luajit"|' \ + configure || die + fi + ./configure \ + --enable-standalone-module \ + $(use_enable pcre-jit) \ + $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" + fi + + cd "${S}" + local myconf= http_enabled= mail_enabled= use aio && myconf+=" --with-file-aio --with-aio_module" @@ -321,11 +343,6 @@ src_configure() { use pcre && myconf+=" --with-pcre" use pcre-jit && myconf+=" --with-pcre-jit" - # syslog support - if use syslog; then - myconf+=" --add-module=${SYSLOG_MODULE_WD}" - fi - # HTTP modules for mod in $NGINX_MODULES_STD; do if use nginx_modules_http_${mod}; then @@ -357,11 +374,6 @@ src_configure() { myconf+=" --add-module=${HTTP_HEADERS_MORE_MODULE_WD}" fi - if use nginx_modules_http_push; then - http_enabled=1 - myconf+=" --add-module=${HTTP_PUSH_MODULE_WD}" - fi - if use nginx_modules_http_cache_purge; then http_enabled=1 myconf+=" --add-module=${HTTP_CACHE_PURGE_MODULE_WD}" @@ -379,6 +391,13 @@ src_configure() { 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 @@ -428,11 +447,26 @@ src_configure() { myconf+=" --add-module=${HTTP_PUSH_STREAM_MODULE_WD}" fi - if use nginx_modules_http_xsltproc; then + if use nginx_modules_http_sticky ; then + http_enabled=1 + myconf+=" --add-module=${HTTP_STICKY_MODULE_WD}" + fi + + if use nginx_modules_http_ajp ; then http_enabled=1 - myconf+=" --add-module=${HTTP_XSLTPROC_MODULE_WD}" + myconf+=" --add-module=${HTTP_AJP_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_xsltproc; then + http_enabled=1 + myconf+=" --add-module=${HTTP_XSLTPROC_MODULE_WD}" + fi + if use http || use http-cache; then http_enabled=1 fi @@ -478,7 +512,7 @@ src_configure() { --pid-path="${EPREFIX}"/run/${PN}.pid \ --lock-path="${EPREFIX}"/run/lock/${PN}.lock \ --with-cc-opt="-I${EROOT}usr/include" \ - --with-ld-opt="-L${EROOT}usr/lib" \ + --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 \ @@ -487,13 +521,10 @@ src_configure() { --http-uwsgi-temp-path="${EPREFIX}/${NGINX_HOME_TMP}"/uwsgi \ ${myconf} || die "configure failed" - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}" - ./configure \ - --enable-standalone-module \ - $(use_enable pcre-jit) \ - $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" - fi + # 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() { @@ -539,22 +570,12 @@ src_install() { # logrotate insinto /etc/logrotate.d - newins "${FILESDIR}"/nginx.logrotate nginx + newins "${FILESDIR}"/nginx.logrotate-r1 nginx if use nginx_modules_http_perl; then cd "${S}"/objs/src/http/modules/perl/ einstall DESTDIR="${D}" INSTALLDIRS=vendor - fixlocalpod - fi - - if use syslog; then - docinto ${SYSLOG_MODULE_P} - dodoc "${SYSLOG_MODULE_WD}"/README - fi - - if use nginx_modules_http_push; then - docinto ${HTTP_PUSH_MODULE_P} - dodoc "${HTTP_PUSH_MODULE_WD}"/{changelog.txt,protocol.txt,README} + perl_delete_localpod fi if use nginx_modules_http_cache_purge; then @@ -600,7 +621,7 @@ src_install() { if use rtmp; then docinto ${RTMP_MODULE_P} - dodoc "${RTMP_MODULE_WD}"/{AUTHORS,README.md,TODO,stat.xsl} + dodoc "${RTMP_MODULE_WD}"/{AUTHORS,README.md,stat.xsl} fi if use nginx_modules_http_dav_ext; then @@ -610,7 +631,7 @@ src_install() { if use nginx_modules_http_echo; then docinto ${HTTP_ECHO_MODULE_P} - dodoc "${HTTP_ECHO_MODULE_WD}"/{README,README.markdown,doc/HttpEchoModule.wiki} + dodoc "${HTTP_ECHO_MODULE_WD}"/{README.markdown,doc/HttpEchoModule.wiki} fi if use nginx_modules_http_security; then @@ -622,6 +643,16 @@ src_install() { 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_ajp; then + docinto ${HTTP_AJP_MODULE_P} + dodoc "${HTTP_AJP_MODULE_WD}"/README + fi } pkg_postinst() { |