Compare commits

..

740 commits

Author SHA1 Message Date
wrapper
84b0362183 allow vod and pckg to compile together 2025-07-16 10:47:23 +07:00
wrapper
ce21ceb30b forgot memc 2025-07-15 15:22:39 +07:00
wrapper
b1188d6377 dyn rec 2025-07-15 15:17:17 +07:00
wrapper
bf4e347d84 sid 2 2025-07-15 15:11:13 +07:00
wrapper
67b2e7933c sid init 2025-07-15 15:05:37 +07:00
Jan Mojžíš
653827e5a8
release nginx 1.26.3-3, upload to unstable 2025-05-15 15:32:06 +02:00
Thomas Ward
bfbdc5aef2 Move ConditionFileIsExecutable to proper section 2025-02-24 20:42:35 +00:00
Thomas Ward
b3e6c7ec5b Merge branch 'debbug1098477-fix' into 'main'
Fix DebBug #1098477, salsa issue nginx-team/nginx:#23

See merge request nginx-team/nginx!90
2025-02-23 18:17:04 +00:00
Thomas Ward
54cc798970 Fix DebBug #1098477, salsa issue nginx-team/nginx:#23 2025-02-23 18:17:04 +00:00
Jan Mojžíš
6c57927b8d
d/control: add libnginx-mod-http-lua dependency for nginx-extras package
for riscv64 platform
2025-02-12 20:15:46 +01:00
Jan Mojžíš
3ef9946d9d
d/changelog: fix whitespace in 1.26.3-2 record 2025-02-12 20:15:17 +01:00
Jérémy Lal
c789199d37
Release to unstable 2025-02-07 12:53:15 +01:00
Jérémy Lal
58f592a8ab
Release 2025-02-05 19:08:06 +01:00
Jérémy Lal
c5cca14382
Bump ABI 2025-02-05 19:07:54 +01:00
Jérémy Lal
191713f275 Update upstream source from tag 'upstream/1.26.3'
Update to upstream version '1.26.3'
with Debian dir ad8840312e
2025-02-05 19:03:37 +01:00
Jérémy Lal
be95fff101 New upstream version 1.26.3 2025-02-05 19:03:32 +01:00
Jérémy Lal
215777eecb
Release to experimental 2025-02-02 21:09:05 +01:00
Jan Mojžíš
2939b5f242
d/changelog: remove duplicit lines 2025-02-02 19:41:56 +01:00
Jan Mojžíš
92496d21cf
rm d/p/nginx-1.26.1.patch 2025-02-02 19:41:30 +01:00
Jan Mojžíš
d2631d1b03
rm d/p/CVE-2024-7347.patch 2025-02-02 19:41:03 +01:00
Jérémy Lal
9fb3b99b3d
Bump abi 2025-02-02 11:40:36 +01:00
Jérémy Lal
215a9620ef
Version 1.26.2 2025-02-02 11:33:47 +01:00
Jérémy Lal
1518af2753
Refresh patches 2025-02-02 11:24:45 +01:00
Jérémy Lal
2fe36c4448
Drop upstream patches 2025-02-02 11:24:35 +01:00
Jérémy Lal
2fb9d97244 Update upstream source from tag 'upstream/1.26.2'
Update to upstream version '1.26.2'
with Debian dir d8ae618778
2025-02-02 11:23:50 +01:00
Jérémy Lal
359eb3866f New upstream version 1.26.2 2025-02-02 11:23:45 +01:00
Jérémy Lal
71f2059cf8
Add Sergey Kandaurov <s.kandaurov@f5.com> pgp public key 2025-02-02 11:23:15 +01:00
Jan Mojžíš
f1e2f6cbb9
d/copyright: bump my copyright year 2025-01-28 17:54:27 +01:00
Jan Mojžíš
65bcb0d8dd
d/{control,copyright}: update my email to "janmojzis@debian.org" 2025-01-28 17:54:18 +01:00
Jan Mojžíš
9670e707d6
d/gbp.conf: add upstream-signatures = on 2025-01-28 17:54:08 +01:00
Jan Mojžíš
f180e25eb4
d/u/signing-key.asc add Sergey Kandaurov <s.kandaurov@f5.com> public key 2025-01-28 17:53:58 +01:00
Thomas Ward
df67526348 Actual release 2024-09-30 11:39:49 -04:00
Thomas Ward
0722a5648d Resolve dependency loop (debbugs #1082373) 2024-09-20 21:37:33 -04:00
Jan Mojžíš
9cd731914a
release nginx 1.26.0-2, upload to unstable 2024-08-19 18:46:47 +02:00
Jan Mojžíš
6e88f6d858
d/changelog fix whitespace 2024-08-19 10:59:44 +02:00
Jan Mojžíš
6bb737822f Merge branch 'wip-1.26.0-2' into 'main'
wip-1.26.0-2

See merge request nginx-team/nginx!85
2024-08-19 08:39:56 +00:00
Jan Mojžíš
a079a02186
d/changelog close bug for CVE-2024-7347 2024-08-18 21:07:25 +02:00
Jan Mojžíš
7137628c08
d/libnginx-mod.abisubstvars updated comment when ABI needs to be changed 2024-08-18 09:04:03 +02:00
Jan Mojžíš
80408ba19f Merge branch 'CVE-2024-7347' into 'wip-1.26.0-2'
d/p/CVE-2024-7347.patch add, backport CVE-2024-7347 fix

See merge request nginx-team/nginx!84
2024-08-18 06:34:06 +00:00
Jan Mojžíš
b3d7b0f3ed
d/p/CVE-2024-7347.patch add, backport CVE-2024-7347 fix 2024-08-18 08:15:33 +02:00
Jan Mojžíš
1b2c31e354 Merge branch 'patch-1.26.1' into 'wip-1.26.0-2'
d/p/nginx-1.26.1.patch add, backport changes from the nginx 1.26.1

See merge request nginx-team/nginx!81
2024-08-18 06:05:39 +00:00
Jan Mojžíš
45c7770c5e
d/p/nginx-1.26.1.patch add, backport changes from the nginx 1.26.1 2024-06-17 18:46:59 +02:00
Thomas Ward
363e53be5d Update nginx.conf: whitespace matching 2024-06-17 16:25:34 +00:00
Thomas Ward
07bdbe9491 Merge branch 'modern-security-practices' into 'wip-1.26.0-2'
Update nginx.conf defaults for modern security

See merge request nginx-team/nginx!80
2024-06-17 16:24:24 +00:00
Thomas Ward
1b77cc4256 Merge branch 'wip-1.26.0-2' into 'modern-security-practices' 2024-06-17 16:22:46 +00:00
Thomas Ward
2a1513acc8 Debian changelog entry 2024-06-17 11:53:50 -04:00
Thomas Ward
6ef563d4f4 Update comments 2024-06-17 11:52:46 -04:00
Thomas Ward
3e7838a6b2 Update nginx.conf defaults
- Match current security practices for SSL protocols and SSL Prefer Server Ciphers
- Hide NGINX version in responses, modern security practice
2024-06-17 15:43:12 +00:00
Jan Mojžíš
9ede767588
d/control: bump Standards-Version: 4.7.0, no changes 2024-05-07 19:12:52 +02:00
Jan Mojžíš
5651e6f455
d/rules: enable QUIC and HTTP/3 module 2024-05-07 19:12:06 +02:00
Jan Mojžíš
6ccf66d20e
release nginx 1.26.0-1, upload to unstable 2024-05-05 18:49:07 +02:00
Jan Mojžíš
2d4405e08a
d/gbp.conf: add sign-tags = True, [pull] track-missing = True,
[import-orig] merge-mode = replace
2024-05-01 12:18:01 +02:00
Jan Mojžíš
899ebe0261 Merge branch 'wip-1.26.0' into 'main'
New upstream version 1.26.0

See merge request nginx-team/nginx!79
2024-05-01 09:41:38 +00:00
Jan Mojžíš
880afec3d7
d/changelog fix whitespace 2024-05-01 06:48:05 +02:00
Jan Mojžíš
f5ed2727e5
debian/upstream/signing-key.asc remove extra signatures 2024-05-01 06:47:41 +02:00
Jan Mojžíš
2148a071bf
d/libnginx-mod.abisubstvars: remove third-party modules version constraints 2024-05-01 06:29:23 +02:00
Jan Mojžíš
5c050148b6
d/changelog update 2024-05-01 05:36:21 +02:00
Jan Mojžíš
9b80dfac5a
d/conf/nginx.conf: add worker_cpu_affinity auto 2024-05-01 05:33:34 +02:00
Jan Mojžíš
b023f3fbf6
d/copyright update 2024-04-30 22:04:10 +02:00
Jan Mojžíš
7dc4f2ecb7
d/copyright: bump my copyright year 2024-04-30 19:04:28 +02:00
Jan Mojžíš
3fb6af3d34
d/copyright: updated copyright related to new upstream version 2024-04-30 19:03:47 +02:00
Jan Mojžíš
a6a3352563
d/changelog update 2024-04-30 18:42:05 +02:00
Jan Mojžíš
dad830baa6 Merge branch 'add-xsl-xslt-mimetype' into 'wip-1.26.0'
Add xsl xslt mimetype to nginx mime.types

See merge request nginx-team/nginx!78
2024-04-30 16:38:40 +00:00
Jan Mojžíš
4c1fc35cb6
d/changelog update 2024-04-30 18:35:43 +02:00
Jan Mojžíš
e06e0da2ab Merge branch 'main' into 'wip-1.26.0'
Add QUIC UFW app

See merge request nginx-team/nginx!73
2024-04-30 16:32:16 +00:00
Jan Mojžíš
0f09f394ed
d/p/CVE-2023-44487.patch remove, fixed in upstream 2024-04-30 17:53:35 +02:00
Jan Mojžíš
443e5c11eb
nginx ABI release: nginx-abi-1.26.0-1 2024-04-30 17:44:10 +02:00
Jan Mojžíš
dd2f4866aa
d/changelog new version 1.26.0-1 2024-04-30 17:42:53 +02:00
Jan Mojžíš
a6bc03f8fb Update upstream source from tag 'upstream/1.26.0'
Update to upstream version '1.26.0'
with Debian dir 2750282929
2024-04-30 17:42:09 +02:00
Jan Mojžíš
cd2d231dd0 New upstream version 1.26.0 2024-04-30 17:41:57 +02:00
Jan Mojžíš
488a716b96
d/u/signing-key.asc add Roman Arutyunyan’s PGP public key 2024-04-30 17:41:25 +02:00
K Widholm
0b33ebb4a3 Update file mime.types 2023-10-27 02:15:04 +00:00
K Widholm
fbe69d2fe0 Update file mime.types 2023-10-27 02:06:46 +00:00
Jan Mojžíš
ea0383bdb1
release nginx 1.24.0-2, upload to unstable 2023-10-11 01:18:04 +02:00
Jan Mojžíš
14846e923d
d/changelog update CVE-2023-44487 description 2023-10-11 01:14:14 +02:00
Jan Mojžíš
5953afe398
Revert "release nginx 1.24.0-2, upload to unstable"
This reverts commit 192281805a.
2023-10-11 01:13:28 +02:00
Jan Mojžíš
192281805a
release nginx 1.24.0-2, upload to unstable 2023-10-11 00:39:21 +02:00
Jan Mojžíš
9515e05cd0
d/debhelper/nginx_mod.pm automatic libnginx-mod-stream dependencies 2023-10-10 23:54:50 +02:00
Jan Mojžíš
0c9954b9d7 Merge branch 'dhsequence-detect-stream' into 'main'
dh-sequence-nginx: automatic libnginx-mod-stream dependencies

See merge request nginx-team/nginx!74
2023-10-10 21:50:39 +00:00
Jan Mojžíš
81aeb5321d dh-sequence-nginx: automatic libnginx-mod-stream dependencies 2023-10-10 21:50:39 +00:00
Jan Mojžíš
b1313a97a6 Merge branch 'transition-dependency' into 'main'
d/control nginx-dev add dependency on ${nginx:abi}

See merge request nginx-team/nginx!75
2023-10-10 21:01:05 +00:00
Jan Mojžíš
6f007a8184 Merge branch 'main' into 'transition-dependency'
# Conflicts:
#   debian/changelog
2023-10-10 20:46:05 +00:00
Jan Mojžíš
53a637ae66 Merge branch 'CVE-2023-44487' into 'main'
CVE-2023-44487 fix

See merge request nginx-team/nginx!76
2023-10-10 20:22:50 +00:00
Jan Mojžíš
60b5a28e2d CVE-2023-44487 fix 2023-10-10 20:22:50 +00:00
Jan Mojžíš
f3ce71ad91
d/control add nginx-dev dependency on ${nginx:abi} 2023-10-10 16:25:14 +02:00
Marcus Bointon
1c1713f747 Add QUIC UFW app 2023-09-25 12:41:08 +00:00
Jan Mojžíš
dbecf37340
d/po/sv.po added Swedish debconf translation 2023-08-30 15:52:01 +02:00
Jan Mojžíš
f72db03173
d/po/sv.po added Swedish debconf translation 2023-08-30 15:50:18 +02:00
Jan Mojžíš
1af9890890 Merge branch 'mimetypes' into 'main'
d/conf/mime.types add video/ogg, video/x-matroska

See merge request nginx-team/nginx!71
2023-07-17 05:11:55 +00:00
Jan Mojžíš
1669ce81fa
d/conf/mime.types add video/ogg, video/x-matroska 2023-07-17 06:25:37 +02:00
Jan Mojžíš
d99a0ddc0b
d/conf/mime.types copy mime.types from upstream nginx,
no big changes, just reformat the text
2023-07-17 06:25:07 +02:00
Jan Mojžíš
8c4549c82a Merge branch 'rmdhstripoverride' into 'main'
d/rules remove override_dh_strip

See merge request nginx-team/nginx!69
2023-07-17 03:51:47 +00:00
Jan Mojžíš
7b0bfbb9f3
d/rules removed override_dh_strip 2023-07-17 05:24:19 +02:00
Jan Mojžíš
ed6370703d Merge branch 'rodebconf' into 'main'
d/po/ro.po add Romanian debconf translation

See merge request nginx-team/nginx!68
2023-07-15 20:19:27 +00:00
Jan Mojžíš
9d8220a199
d/po/ro.po add Romanian debconf translation 2023-07-15 21:24:09 +02:00
Jan Mojžíš
82149d89bf Merge branch 'fixdhstrip' into 'main'
* d/rules fixed debug-symbol-migration-possibly-complete lintian warning

See merge request nginx-team/nginx!67
2023-07-15 19:08:49 +00:00
Jan Mojžíš
b8d9144432
* d/rules fixed debug-symbol-migration-possibly-complete lintian warning 2023-07-15 20:24:35 +02:00
Jan Mojžíš
c40dd6a74f Merge branch 'fixdeps' into 'main'
d/control add dependency nginx-common to nginx

See merge request nginx-team/nginx!66
2023-07-15 14:55:46 +00:00
Jan Mojžíš
3f8de1c086
d/control fixed binNMU safe dependency declaration nginx to nginx-common 2023-07-15 08:26:10 +02:00
Jan Mojžíš
2d48a8c8ec
d/control add dependency nginx-common to nginx 2023-06-30 16:40:37 +02:00
Jan Mojžíš
54146b604b
release nginx 1.24.0-1, upload to unstable 2023-06-27 23:19:52 +02:00
Jan Mojžíš
d6229b0698
d/changelog fix whitespace 2023-06-26 15:20:12 +02:00
Jan Mojžíš
b4078d94d4
d/libnginx-mod.abisubstvars update version constraints of the 3rd party modules 2023-06-26 15:19:52 +02:00
Jan Mojžíš
bb973756e2
d/copyright: updated copyright 2023-04-25 22:40:28 +02:00
Jan Mojžíš
9fe5d1ba93
d/p/bug-{1024605,973861}.patch removed, fixed in upstream 2023-04-25 22:39:28 +02:00
Jan Mojžíš
7478c72e84
nginx ABI release: nginx-abi-1.24.0-1 2023-04-25 22:38:33 +02:00
Jan Mojžíš
557d688577
d/changelog New version 1.24.0-1 2023-04-25 22:37:22 +02:00
Jan Mojžíš
ba3751d77a Update upstream source from tag 'upstream/1.24.0'
Update to upstream version '1.24.0'
with Debian dir 60ea7399bd
2023-04-25 22:36:34 +02:00
Jan Mojžíš
8094197df9 New upstream version 1.24.0 2023-04-25 22:36:23 +02:00
Jan Mojžíš
3fdf9b9553
release nginx 1.22.1-9, upload to unstable 2023-03-14 16:19:37 +01:00
Jan Mojžíš
8cce84b858 Merge branch 'breaks-replaces' into 'main'
d/control: nginx-common Breaks+Replaces: nginx (<< 1.22.1-8)

See merge request nginx-team/nginx!64
2023-03-14 12:14:53 +00:00
Jan Mojžíš
9a5dedf461
d/control: nginx-common Breaks+Replaces: nginx (<< 1.22.1-8) 2023-03-14 12:53:14 +01:00
Jan Mojžíš
c8b4d1401b
release nginx 1.22.1-8, upload to unstable 2023-03-14 06:53:39 +01:00
Thomas Ward
b4368782e6 Merge branch 'rollback-nginx-common' into 'main'
Revert "move common files from nginx-common to nginx"

See merge request nginx-team/nginx!63
2023-03-13 20:30:56 +00:00
Jan Mojžíš
c1f58a85e1
Revert "move common files from nginx-common to nginx"
This reverts commit 473f36a7d1.
2023-03-13 18:54:13 +01:00
Jan Mojžíš
bd50f6ef76
d/libnginx-mod.abisubstvars: update libnginx-mod-http-lua version 2023-03-08 21:48:08 +01:00
Jan Mojžíš
57e87d08df
d/changelog: fix nginx-full dependencies 2023-03-08 21:44:28 +01:00
Jan Mojžíš
5864a7b5b0 Merge branch 'fixdeps' into 'main'
d/control fix nginx-full dependencies

See merge request nginx-team/nginx!62
2023-03-08 20:43:30 +00:00
Jan Mojžíš
f215469ef5
d/control fix nginx-full dependencies 2023-02-13 20:18:20 +01:00
Jan Mojžíš
834bbcee5b
release nginx 1.22.1-7, upload to unstable 2023-02-13 13:04:39 +01:00
Jan Mojžíš
bfcd400270
d/copyright: updated to be compatible with 'cme update dpkg-copyright' 2023-02-12 15:59:12 +01:00
Jan Mojžíš
bb65ab50f4
d/libnginx-mod.abisubstvars update lua version to 1:0.10.23~rc2-2 2023-02-12 15:20:52 +01:00
Jan Mojžíš
d298d6b51b
d/gbb.conf: switched to debian branch main (debian-branch = main) 2023-02-10 18:07:33 +01:00
Jan Mojžíš
ed087b074e
d/p/bug-973861: add, lingering close for connections with pipelined requests 2023-02-10 17:34:26 +01:00
Jan Mojžíš
c7f0bac49b
d/changelog update 2023-02-10 17:33:09 +01:00
Jérémy Lal
3a3786f1d4
Switch to pcre2. 2023-02-10 17:32:41 +01:00
Jan Mojžíš
309c257646
nginx: provide nginx-abi-<VERSION> 2023-02-10 17:29:30 +01:00
Jan Mojžíš
cd33a3034d
release nginx 1.22.1-6, upload to unstable 2023-02-08 17:23:54 +01:00
Jan Mojžíš
40664a0df5
d/control: bump Standards-Version: 4.6.2, no changes 2023-02-08 11:43:05 +01:00
Jan Mojžíš
4ce2e9f8f5
d/changelog update 2023-02-08 11:42:55 +01:00
Jan Mojžíš
0a2666b12c
fixes
- d/control: remove unnecesary 'Suggests'
- d/control: remove Provides: nginx for nginx package
- debian/apport/source_nginx.py: nginx-common -> nginx
2023-02-08 11:10:14 +01:00
Jan Mojžíš
473f36a7d1
move common files from nginx-common to nginx 2023-02-08 11:08:32 +01:00
Jan Mojžíš
5f65c2c182
move binaries to nginx package instead nginx-bin 2023-02-08 11:08:21 +01:00
Jan Mojžíš
b6e0209bf2 Merge branch 'noquilt' into 'master'
B-D: remove quilt, no longer needed

See merge request nginx-team/nginx!58
2023-01-23 07:15:59 +00:00
Jan Mojžíš
820fb1eaab
revert warnings d/nginx-{light,core,extras,full}.postinst 2023-01-23 08:13:48 +01:00
Jérémy Lal
f7740951fb
Remove very old README.Debian 2023-01-22 13:16:21 +01:00
Jérémy Lal
7ceb830e66
B-D: remove quilt, no longer needed 2023-01-22 13:09:10 +01:00
Jan Mojžíš
b0a64680b5
d/control: remove dependency on obsolete package lsb-base 2023-01-21 16:30:49 +01:00
Jan Mojžíš
980bcea7f6
d/po/it.po: add 2023-01-13 17:31:47 +01:00
Jan Mojžíš
d720b646a5
d/copyright fix GPL2 2023-01-12 18:50:32 +01:00
Jan Mojžíš
1088db1699
d/control: fix dependencies for safe binNMU 2023-01-12 18:22:37 +01:00
Jan Mojžíš
9373935883
d/control fix nginx-common dependency 2023-01-12 18:17:16 +01:00
Jan Mojžíš
6bab81e56d
d/changelog fix whitespace 2023-01-12 18:05:11 +01:00
Jan Mojžíš
94f4fc97bb
d/copyright: add missing copyright for debian/help/examples/nginx_modsite 2023-01-12 17:53:39 +01:00
Jan Mojžíš
8fefc3d77b
d/copyright: add missing GPL-2+ copyright for debian/debhelper/dh_nginx 2023-01-12 17:51:19 +01:00
Jan Mojžíš
a71d85a87f
d/copyright: add missing copyright for debian/apport/* 2023-01-12 17:42:09 +01:00
Jan Mojžíš
9cb0e1d9ee
d/copyright: update debian/* copyright 2023-01-12 17:40:55 +01:00
Jan Mojžíš
16ee97c874 Merge branch 'onlycoreflavour' into 'master'
add nginx-bin package and replace core/light/extras by a dependency package

See merge request nginx-team/nginx!53
2023-01-12 16:23:25 +00:00
Jan Mojžíš
7e238bfad9 add nginx-bin package and replace core/light/extras by a dependency package
and fix dependencies for safe binNMU
2023-01-12 16:23:24 +00:00
Jan Mojžíš
c412740e4e
release nginx 1.22.1-5, upload to unstable 2022-12-20 10:36:40 +01:00
Jan Mojžíš
32e7cc8921
d/control: update nginx-common dependency,
fixes lintian warning maybe-not-arch-all-binnmuable
2022-12-20 08:56:12 +01:00
Jan Mojžíš
e907e5063e Merge branch 'autopkgtestupdate' into 'master'
d/tests: all *-simple and *-deps tests update

See merge request nginx-team/nginx!56
2022-12-20 07:46:50 +00:00
Jan Mojžíš
e5c631271d
d/control bump libnginx-mod-nchan version (>= 1:1.3.5+dfsg-3~) 2022-12-20 08:19:48 +01:00
Jan Mojžíš
ef3bb53436
d/tests: all *-simple and *-deps tests updated to check if nginx works
after installation/reload/restart for all flavours
2022-12-19 18:05:38 +01:00
Jan Mojžíš
ec0569d08d Merge branch 'readme' into 'master'
Rename and Update README.source

See merge request nginx-team/nginx!54
2022-12-19 06:25:57 +00:00
Jérémy Lal
280d76fff3
README.source: update 2022-12-18 19:33:21 +01:00
Jérémy Lal
f313b00cf3 README.Packaging -> README.source 2022-12-18 19:29:11 +01:00
Jan Mojžíš
50a7f05bb5
d/changelog update 2022-12-15 16:57:52 +01:00
Jan Mojžíš
de8448d5bc Merge branch 'errorlog' into 'master'
Set global error_log to /var/log/error.log

See merge request nginx-team/nginx!51
2022-12-15 15:52:39 +00:00
Jan Mojžíš
2fe562a265 Merge branch 'nginx_test_path' into 'master'
Use absolute path for nginx tests

See merge request nginx-team/nginx!49
2022-12-15 15:47:08 +00:00
Jan Mojžíš
59d6bf43ae Merge branch 'ssl_cb_yield' into 'master'
SSL_CTX_set_cert_cb() callback yielding patch update

See merge request nginx-team/nginx!50
2022-12-15 15:46:42 +00:00
Jérémy Lal
bfb15ce426
Set global error_log to /var/log/error.log
Now that error_log default value is stderr, it is possible
to override that config using nginx -g 'error_log stderr;'
2022-12-15 15:00:22 +01:00
Jérémy Lal
df50b02828
Use absolute path for nginx tests 2022-12-15 12:12:36 +01:00
Jérémy Lal
edf2683169
SSL_CTX_set_cert_cb() callback yielding patch update 2022-12-15 12:12:04 +01:00
Jérémy Lal
9090d6f143
Refresh patches 2022-12-15 12:11:45 +01:00
Jan Mojžíš
804090a0ff
d/changelog update 2022-12-13 06:07:58 +01:00
Jan Mojžíš
881aa23e4b Merge branch 'dh-ndk' into 'master'
dh nginx: auto-detect build-dependency on ndk-dev

See merge request nginx-team/nginx!42
2022-12-13 05:05:55 +00:00
Jérémy Lal
8e50af0215
nginx_mod: detect libnginx-mod-http-ndk-dev 2022-12-12 18:12:57 +01:00
Jérémy Lal
dbb13b38d7
Format tabs in nginx_mod.pm 2022-12-12 18:12:57 +01:00
Jan Mojžíš
8273ea9b0e
d/changelog update 2022-12-12 17:58:43 +01:00
Jan Mojžíš
9d9704050f Merge branch 'stderr' into 'master'
Default error-log-path is stderr (Closes: #1025858)

See merge request nginx-team/nginx!44
2022-12-12 16:51:38 +00:00
Jan Mojžíš
2572ddf3ff Merge branch 'patch-enable-stream-realip' into 'master'
Enable stream_realip_module

See merge request nginx-team/nginx!45
2022-12-12 16:45:06 +00:00
Jan Mojžíš
519c5d005b Merge branch 'pr-disable-pcre2' into 'master'
Explicitly disable pcre2

See merge request nginx-team/nginx!47
2022-12-12 15:37:43 +00:00
Jan Mojžíš
21195469f2 Merge branch 'pr-remove-dep' into 'master'
Remove unnecessary dependencies after removing 3rd party modules

See merge request nginx-team/nginx!46
2022-12-12 15:35:43 +00:00
Miao Wang
096c566945 Explicitly disable pcre2
Our intention is to to build nginx with pcre3. However, nginx by default
prefers pcre2. As a result, when libpcre2-dev is installed, nginx will
be built with pcre2, which is not intended.

Furthermore, users of nginx-dev will also meet test failures when they
try to compile module related to pcre because of this. To reproduce,
simply:

```
apt-get install nginx-dev devscripts libpcre2-dev
apt-get source libnginx-mod-http-subs-filter
cd libnginx-mod-http-subs-filter-*/ && debuild -us -uc
```
2022-12-12 15:23:32 +08:00
Miao Wang
4eef3437c0 Remove unnecessary dependencies after removing 3rd party modules 2022-12-12 13:45:29 +08:00
Jan Mojžíš
b975df6df9
d/changelog update 2022-12-11 16:30:30 +01:00
Miao Wang
4a172ade6f Enable stream_realip_module 2022-12-11 14:24:55 +00:00
Jérémy Lal
7d7692e5fd Default error-log-path is stderr (Closes: #1025858) 2022-12-11 14:00:47 +01:00
Jan Mojžíš
46f12a0dc9 Merge branch 'modulesrm' into 'master'
remove 3th party modules

See merge request nginx-team/nginx!43
2022-12-10 09:16:22 +00:00
Jan Mojžíš
10a2613f37
remove 3th party modules 2022-12-10 05:26:48 +01:00
Jan Mojžíš
34bfbac550
release nginx 1.22.1-4, upload to unstable 2022-12-08 14:23:55 +01:00
Jan Mojžíš
4fa2618502
remove modules ndk,nchan,rtmp 2022-12-08 13:40:52 +01:00
Jan Mojžíš
075c5d85db
d/control fix whitespace 2022-12-08 13:03:18 +01:00
Jan Mojžíš
11ca3f5693
remove modules ndk,nchan,rtmp 2022-12-08 12:56:39 +01:00
Jan Mojžíš
ccd8b06890
d/t/*-module-deps: update:
- add tests for new ext. module libnginx-mod-http-set-misc
- add tests for new ext. module libnginx-mod-http-brotli-filter
- add tests for new ext. module libnginx-mod-http-brotli-static
- add tests for new ext. module libnginx-mod-http-memc
- add tests for new ext. module libnginx-mod-http-srcache-filter
2022-12-08 12:53:49 +01:00
Jan Mojžíš
2e0b1943b0
d/t/*-module-deps: add curl timeout 300 seconds + nginx restart 2022-12-08 12:48:36 +01:00
Jan Mojžíš
616ee02725
release nginx 1.22.1-3, upload to unstable 2022-12-05 18:25:29 +01:00
Jan Mojžíš
58657d6178
d/p/bug-1024605.patch Forwarded: not-needed 2022-12-04 20:17:30 +01:00
Jan Mojžíš
6c68d264f3
d/rules: enable NDK upstream list module NDK_UPSTREAM_LIST 2022-12-03 08:28:23 +01:00
Jan Mojžíš
f868709a45
d/control: added Multi-Arch: foreign for package nginx-dev 2022-12-02 00:31:15 +01:00
Jan Mojžíš
6b40792634
release nginx 1.22.1-2, upload to unstable 2022-11-30 17:40:35 +01:00
Jérémy Lal
65aa43c3d5
Update changelog 2022-11-30 17:36:47 +01:00
Jérémy Lal
ad7d6fcf98
Uploaders for a team needs only one name 2022-11-29 20:27:42 +01:00
Jan Mojžíš
b99e3ad524
Remove constraints unnecessary since buster (oldstable)
* nginx-dev: Drop versioned constraint on dpkg-dev in Depends.

Changes-By: deb-scrub-obsolete
2022-11-29 13:17:04 +01:00
Jérémy Lal
393320b207
Update changelog 2022-11-29 13:12:19 +01:00
Jérémy Lal
cb417c7e2c
nginx-dev provides dh-sequence-nginx 2022-11-29 13:11:06 +01:00
Jérémy Lal
6d3c163fd3
Add buildsystem nginx_mod to dh-sequence nginx 2022-11-29 13:11:02 +01:00
Jan Mojžíš
f6fb6fb8d9 Merge branch '3thpartydeps' into 'master'
d/control update implicit dependencies of third-party modules

See merge request nginx-team/nginx!38
2022-11-26 17:04:44 +00:00
Jan Mojžíš
70c390852c
d/control update implicit dependencies of third-party modules 2022-11-26 16:03:37 +01:00
Jan Mojžíš
fa37bc17ab
d/p/bug-1024605.patch add, bugfix 1024605
fixes problem when a subrequest has SSI
enabled but its main request does not, the SSI module may crash the worker
due to NULL-pointer dereference. The patch is backported from the upstream
2022-11-26 15:49:52 +01:00
Jan Mojžíš
c2ce778dcb
d/tests/ssi-module-test add 2022-11-26 14:52:56 +01:00
Jan Mojžíš
a056949f1b
d/changelog fix whitespace 2022-11-26 13:37:19 +01:00
Jan Mojžíš
dce642e642
d/changelog: d/nginx-*.postinst: Use invoke-rc.d
instead of pidof and ad-hoc tests
2022-11-26 11:19:43 +01:00
Jan Mojžíš
273e508834 Merge branch 'maintscripts-no-pidof' into 'master'
d/nginx-*.postinst: Use invoke-rc.d instead of pidof and ad-hoc tests

See merge request nginx-team/nginx!36
2022-11-26 10:15:19 +00:00
Jan Mojžíš
c3f0a00120
d/control fix spelling-error-in-description
Subsitution -> Substitution
2022-11-11 06:16:39 +01:00
Jan Mojžíš
4243cedb55
release nginx 1.22.1-1, upload to unstable 2022-11-10 18:23:04 +01:00
Jan Mojžíš
1755a81da7 Merge branch 'lintian-fixes' into 'master'
Fix day-of-week for changelog entry 0.5.11-1

See merge request nginx-team/nginx!37
2022-10-28 13:26:52 +00:00
Jan Mojžíš
c2f4bc019b
d/changelog update changelog text 2022-10-28 15:13:30 +02:00
Debian Janitor
974e91ad9d Fix day-of-week for changelog entry 0.5.11-1.
Changes-By: lintian-brush
Fixes: lintian: debian-changelog-has-wrong-day-of-week
See-also: https://lintian.debian.org/tags/debian-changelog-has-wrong-day-of-week.html
2022-10-28 08:39:19 +00:00
Jan Mojžíš
304ba44d13
d/control fix implicit version libnginx-mod-http-lua
>=1:0.10.22-3~
2022-10-28 10:14:30 +02:00
Jan Mojžíš
cc9cec6999
d/changelog fix whitespace 2022-10-28 09:59:47 +02:00
Jan Mojžíš
a8134e4741
Add libnginx-mod-http-lua powerpc architecture 2022-10-27 16:35:14 +02:00
Jan Mojžíš
8ac7c1efb5
d/changelog added exact version of dependency libnginx-mod-http-lua 2022-10-26 17:27:15 +02:00
Jan Mojžíš
372da465bf
d/changelog New upstream version 1.22.1 2022-10-25 19:18:20 +02:00
Jan Mojžíš
fe71c4981f Update upstream source from tag 'upstream/1.22.1'
Update to upstream version '1.22.1'
with Debian dir 2862ab776b
2022-10-25 18:29:15 +02:00
Jan Mojžíš
dbf15d0b7a New upstream version 1.22.1 2022-10-25 18:28:51 +02:00
Michael Biebl
6cad8ef578 Import Debian changes 1.22.0-3.1
nginx (1.22.0-3.1) unstable; urgency=medium
.
  * Non-maintainer upload.
  * No source change upload to rebuild with debhelper 13.10.
2022-10-25 18:20:24 +02:00
Gioele Barabucci
d9b4c476c1 d/nginx-*.postinst: Use invoke-rc.d instead of pidof and ad-hoc tests
Checking if nginx is running using and a mixture of file tests and
`pidof` is fragile. Debian policy 9.3.3 states that `invoke-rc.d` should
be used instead to perform these checks.

In addition, the use of `pidof` creates an implicit depency on
`sysvinit-utils`. `sysvinit-utils` is currently essential, but that
may change in the future.

Patch originally contributed by @ah: https://paste.debian.net/1254794/
2022-09-25 22:03:56 +02:00
Jan Mojžíš
9867fd4940
release nginx 1.22.0-3, upload to unstable 2022-08-17 18:39:38 +02:00
Jan Mojžíš
212327ed57
http-lua: remove 2022-08-17 06:54:21 +02:00
Jan Mojžíš
caf389149a
d/p/nginx-ssl_cert_cb_yield.patch add 2022-08-17 06:54:11 +02:00
Jan Mojžíš
a316cb99e4
d/changelog: fix typo in bug number 61261 -> 861261 2022-08-17 06:53:59 +02:00
Jérémy Lal
08de4d4bc7
Release to unstable 2022-08-07 16:15:09 +02:00
Jan Mojžíš
36887b5cd8 Merge branch 'exp' into 'master'
exp

See merge request nginx-team/nginx!35
2022-08-04 02:45:25 +00:00
Jan Mojžíš
13a5fc3501
d/gitlab-ci.yml removed
in GL switched to salsa-ci team recipes/debian.yml@salsa-ci-team/pipeline
2022-07-23 13:05:28 +02:00
Jan Mojžíš
c9a408aa6f
d/apport/source_nginx.py: Add apport hooks
for additional bug information gathering,
the script is backported from Ubuntu
2022-07-23 13:03:31 +02:00
Jan Mojžíš
861f1be869
d/p/nginx-fix-pidfile.patch backport from Ubuntu 2022-07-23 10:49:48 +02:00
Jan Mojžíš
43b9a879c9
Remove constraints unnecessary since buster
* Build-Depends: Drop versioned constraint on dpkg-dev.
* nginx-common: Drop versioned constraint on lsb-base in Depends.
* nginx-core: Drop versioned constraint on nginx in Breaks.
* nginx-full: Drop versioned constraint on nginx in Breaks.
* nginx-light: Drop versioned constraint on nginx in Breaks.
* nginx-extras: Drop versioned constraint on nginx in Breaks.
* libnginx-mod-http-perl: Drop versioned constraint on nginx-extras in Replaces.
* Remove 5 maintscript entries from 1 files.
2022-07-23 10:48:06 +02:00
Jan Mojžíš
142c95ade0
add libnginx-mod-http-ndk-dev to nginx to build ngx-lua 2022-07-23 10:47:23 +02:00
Jan Mojžíš
0e2eaec4b2
d/gitlab-ci.yml removed
in GL switched to salsa-ci team recipes/debian.yml@salsa-ci-team/pipeline
2022-07-23 10:40:40 +02:00
Jan Mojžíš
0d813834ef
http-subs-filter add PCRE2 support 2022-07-11 20:34:21 +02:00
Jan Mojžíš
461acc4f51
d/nginx-common.nginx.service: remove systemd 'After' dependency syslog.target,
is obsolete
2022-07-10 20:13:30 +02:00
Jan Mojžíš
e9e5491b5e Merge branch 'master' into 'master'
systemd service update, forward patch

See merge request nginx-team/nginx!31
2022-07-10 17:13:44 +00:00
Jan Mojžíš
ff7cd7012d
d/t/reboot: added, tests if nginx works after reboot 2022-07-10 18:32:08 +02:00
Jan Mojžíš
88d4d1577a
d/p/0003-define_gnu_source-on-other-glibc-based-platforms.patch forwarded to upstream 2022-07-10 09:19:52 +02:00
Jan Mojžíš
ccd6718920
d/nginx-common.nginx.service update 2022-07-10 09:15:53 +02:00
Thomas Ward
035ed7f34a Unstable upload 2022-07-09 20:14:24 -04:00
Jan Mojžíš
1a3b001414
d/changelog close #985133 bug 2022-06-26 16:41:06 +02:00
Jan Mojžíš
42508c8556
create var/www/html in nginx-common.postinst 2022-06-26 16:21:08 +02:00
Jan Mojžíš
172eb7b12a
d/changelog close #1013807 bug 2022-06-26 16:16:58 +02:00
Jan Mojžíš
7df2636a9d
d/changelog fix whitespace 2022-06-26 16:16:08 +02:00
Jan Mojžíš
bf9c433dbb
d/control: bump Standards-Version to 4.6.1, no changes 2022-06-26 14:35:33 +02:00
Thomas Ward
83ca2994f8
Copyright file needed updated (caught by Bage, who emailed a patch to teward) 2022-06-26 14:34:19 +02:00
Jan Mojžíš
b1ee4a4291 Merge branch 'pr-nginx-dev-unstable' into 'master'
Adding nginx-dev package for tools for building out-of-tree modules

See merge request nginx-team/nginx!30
2022-06-26 12:28:14 +00:00
Miao Wang
9f1044b940 changelog: update changelog 2022-06-26 15:26:40 +08:00
Jan Mojžíš
ed5bc15213 Remove 0002-Make-sure-signature-stays-the-same-in-all-nginx-buil.patch 2022-06-26 15:25:21 +08:00
Miao Wang
509adba304 dh_nginx: support auto generating module config files
This patch adds support of auto generating module config files for
modules in the naming pattern of libnginx-mod-* but with missing
<module_name>.nginx file. The module load file and its loading priority
is inferred from the package name in this case.

Using this feature, the repeated files d/libnginx-mod-*.nginx and
d/libnginx-mod.conf/ can be removed, and the packaging for out-of-tree
modules can be simplified.
2022-06-26 15:20:43 +08:00
Miao Wang
15c55ec59b dh_nginx: move to debian/debhelper
Move dh_nginx script to debian/debhelper so that all debhelper scripts
are located together.
2022-06-26 15:20:30 +08:00
Miao Wang
2784d3f935 nginx-dev: fix nginx version subtracting in dh_nginx 2022-06-26 15:20:21 +08:00
Miao Wang
87b5e38f6d nginx-dev: simplify dependencies
nginx-dev depends on ${S:Build-Depends} before this commit, to include
all the build-depdencies of nginx source packages. However, this also
includes build dependency for those in-tree 3rd party modules, which are
unnecessary. This commit removes them and explicitly list those packages
needed to build a general module. The architecture of nginx-dev can thus
be changed to all instead of any.

When all 3rd party modules are removed, the dependency can be changed
back to ${S:Build-Depends} to make the config less redundant.
2022-06-26 15:20:09 +08:00
Miao Wang
d4b9d6a1da Adding nginx-dev package for tools for building out-of-tree modules
Nginx does not officially provide a mechanism to build out-of-tree modules,
however, this can be achieved by using all the headers and the configure
scripts in the auto/ directory. As a result, a nginx-dev package can thus be
developed for build out-of-tree modules.

The detailed steps to build an out-of-tree module in the headers-only nginx
source tree is:

1. Execute the configure script of nginx, with the same configure arguments
(excluding the reference to other dynamic modules, but including the reference
to depending modules as a built-in module). To prevent the configure scripts
modifying the nginx ource tree, we can 1. point the build dir to a directory
elsewhere, to generate all the build time files outside; 2. slightly patch the
configure scripts to prevent generating a makefile directly in the source tree,
which simply includes the generated makefile at the build dir.

2. Execute make at the source tree, but providing the generated makefile in the
build dir. The command is `make -C /path/to/nginx/source -f
/path/to/build_dir/Makefile modules`

To make sure the compiled module is compatible with the nginx binary and the
nginx binaries with the same upstream version, the key points are:

- Module signature: A module signature containing the (upstream) version number
and encoding the necessary configuration flags is put in each module as well as
the nginx binary itself. When loading a module, nginx will compare the signature
on the module with its own. As long as the configure flags, especially those
encoded in the signature, and the version of the nginx source used to build the
module are the same as thoes used to build the nginx binary, the moudle can pass
the signature check. As a result, the module can depend on the exact nginx
upstream version, ignoring the debian revison.
- ABI compatibility: We should maintain nginx precisely, to prevent making any
ABI changes between different debian revisions.
- Build check: When building the module, we can perform a simple module loading
check via `nginx -t`. This test serves as a "smoking test", to ensure we are
actually building loadable modules.

Summing all the above up and adding the necessary automation scripts for module
packaging, the nginx-dev package can be composed, including the following parts:

- The headers and configure scripts: generated and filtered out from the source
tree. The scripts are slightly patched to prevent generating a makefile directly
in the source tree, as stated above;
- The recorded configure options: all the modules built should include these
options when configured;
- dh_nginx script and its man page: modified from the original dh_nginx script,
adding a "--in-nginx-tree" option. When specified, the behavior remains the same
as the original version (so the option is added in the rule building the
in-package modules). When not specified, the dependency added into misc:Depends
will be the exact upstream nginx version, ignoring the debian revision. E.g.
nginx-common >= 1.20.2, << 1.20.2.1~
- a debhelper sequence plugin which can be enabled by module packages with `dh
--with=nginx`, inserting `dh_nginx` after `dh_install`
- a build system plugin which can bu enabled by module packages with `dh
--buildsystem=nginx_mod`, automating the module building process using the steps
mentioned before.
- autoscript templates used by dh_nginx are also installed without modification.

Currently. the architecture of nginx-dev is any because nginx has arch related
dependencies, which is brought in by http-lua module. After it is
removed from the nginx source tree, the architecture can be changed to
all since no binary is included in this package.
2022-06-26 15:19:47 +08:00
Thomas Ward
333875401c Return ppc64el to liblua, luajit2 still broken on ppc64el. 2022-06-25 17:31:16 -04:00
Thomas Ward
4b7212e745 Enable luajit for s390x 2022-06-08 16:15:40 -04:00
Thomas Ward
20eb8ab414 ppc64el FTBFS fixed in luajit, nginx: no action needed 2022-06-08 15:22:49 -04:00
Thomas Ward
a8ebc4ba0c Update d/copyright for murmurhash license being public-domain 2022-05-26 23:15:02 -04:00
Jan Mojžíš
c3f9fc730b
d/copyright: removed copyright for src/http/v2/ngx_http_v2_huff_encode.c 2022-05-25 17:45:49 +02:00
Jan Mojžíš
5eec971e27
d/copyright:
- bump nginx copyright years
- added copyright for src/stream/ngx_stream_set_module.c
2022-05-25 17:13:14 +02:00
Jan Mojžíš
a013b18ff6
d/changelog fix whitespaces 2022-05-25 11:19:06 +02:00
Jan Mojžíš
7224e5e7ca
d/control: removed ppc64el from list of luajit platforms. 2022-05-25 11:04:30 +02:00
Jan Mojžíš
c394d8d999
d/p/CVE-2021-3618.patch removed, fix is included in new upstream release 2022-05-25 07:19:41 +02:00
Thomas Ward
5900bc832a Changelog update 2022-05-24 14:24:29 -04:00
Thomas Ward
24d9bd0290 Update changelog 2022-05-24 14:20:28 -04:00
Thomas Ward
f406308220 Update upstream source from tag 'upstream/1.22.0'
Update to upstream version '1.22.0'
with Debian dir 6d3cebb4f0
2022-05-24 14:19:09 -04:00
Thomas Ward
deedff451f New upstream version 1.22.0 2022-05-24 14:19:05 -04:00
Thomas Ward
493d6c7b86 Update signing keys - new upstream signing key(s) observed. 2022-05-24 14:18:52 -04:00
Thomas Ward
9b87224f4f Bug 1010798 - fixes woff2 typo 2022-05-10 12:08:52 -04:00
Thomas Ward
9a6a526958 1.20.2-2 release 2022-05-09 11:55:56 -04:00
Thomas Ward
aaaac9a28f Merge branch 'master' into 'master'
d/p/0003-define_gnu_source-on-other-glibc-based-platforms.patch update

See merge request nginx-team/nginx!24
2022-05-09 15:17:21 +00:00
Jan Mojžíš
78d84c5752
d/p/0003-define_gnu_source-on-other-glibc-based-platforms.patch update
fixes build on hurd-i386
2022-05-05 06:53:13 +02:00
Thomas Ward
2c5ea38623 Oops forgot to add the patch 2022-05-04 20:18:41 -04:00
Thomas Ward
4514c0f658 Add changelong for CVE patch inclusion 2022-05-04 16:06:32 -04:00
Thomas Ward
ad330f7cb1 Unpop all patches to keep tree clean 2022-05-04 15:35:34 -04:00
Thomas Ward
9c33aafeff Add CVE-2021-3618 patches and mitigations 2022-05-04 15:35:09 -04:00
Thomas Ward
747ca190d0 Update packaging - this was done by Ondrej, let's make it live 2022-05-04 10:56:19 -04:00
Ondřej Nový
45005f76d4 Add Jan Mojžíš <jan.mojzis@gmail.com> as uploader 2022-05-04 15:46:42 +02:00
Ondřej Nový
9c7d79dce0 Add Thomas Ward <teward@ubuntu.com> as uploader 2022-05-04 15:46:35 +02:00
Thomas Ward
1fcb59adce 1.20.2-1 release 2022-04-21 11:20:04 -04:00
Thomas Ward
48b9b6e3ea Missed part of mime.types updates 2022-04-19 12:27:49 -04:00
Thomas Ward
8735246ec0 Update d/conf/mime.types again using 1.21.x upstream 2022-04-19 12:27:09 -04:00
Thomas Ward
9bc813d5a2 Remove self from uploaders per other DDs 2022-04-19 10:37:35 -04:00
Thomas Ward
528e57d73d Update d/conf/mime.types 2022-04-19 10:26:55 -04:00
Thomas Ward
9cb8bb9efc Fix some branch uncleanliness that happened in local branch which made it to Salsa 2022-04-19 10:07:47 -04:00
Thomas Ward
c85dfc1d2b New 1.20.2 version, drop unneeded patch 2022-04-19 09:58:16 -04:00
Thomas Ward
697ed23dad Update upstream source from tag 'upstream/1.20.2'
Update to upstream version '1.20.2'
with Debian dir 2f42cbbd64
2022-04-19 09:50:31 -04:00
Thomas Ward
5c35f1696f New upstream version 1.20.2 2022-04-19 09:50:28 -04:00
Thomas Ward
2a278d9a55 Release of 1.18.0-9 2022-04-14 16:46:45 -04:00
Thomas Ward
7e21f77a90 Update uploaders as Thomas Ward is now a maintainer in Salsa 2022-04-12 12:54:09 -04:00
Thomas Ward
98c979b948 Merge branch 'master' into 'master'
Update watch file syntax for proper version matching/reporting

See merge request nginx-team/nginx!17
2022-04-11 21:22:20 +00:00
Thomas Ward
c3be1137f3 Update watch file syntax for proper version matching/reporting 2022-04-07 15:35:33 -04:00
Thomas Ward
2308f65897 Merge branch 'master' into 'master'
Downgrade http-lua, fix homepage

See merge request nginx-team/nginx!16
2022-04-07 19:15:38 +00:00
Jan Mojžíš
ced892ac0d
d/control: Add mips64el,ppc64,kfreebsd-amd64 to list of luajit platforms. 2022-04-05 19:56:40 +02:00
Jan Mojžíš
b58e677848
d/control: fix Homepage nginx.net -> nginx.org 2022-04-05 19:25:57 +02:00
Jan Mojžíš
054b32430f
http-lus: Backport segfault bugfix 2022-04-05 19:20:29 +02:00
Jan Mojžíš
6a0621d227
http-lua: Downgrade to v0.10.13 2022-04-05 19:10:56 +02:00
Ondřej Nový
31e3a6a61b d/changelog: Fix typo 2022-03-15 14:30:13 +01:00
Ondřej Nový
bc5f19ef77 releasing package nginx version 1.18.0-8 2022-03-15 13:23:10 +01:00
Ondřej Nový
4f1a2c590c releasing package nginx version 1.18.0-7 2022-03-15 11:50:23 +01:00
Ondřej Nový
4ea741ae27 d/copyright: Bump my copyright year 2022-03-15 11:44:33 +01:00
Ondřej Nový
bd32060ee7 Bump standards version to 4.6.1 (no changes) 2022-03-15 11:39:40 +01:00
Ondřej Nový
a13d46c865 d/nginx-common.nginx.service: Fix service shutdown desctiption to mention SIGQUIT instead of SIGSTOP (LP: #1919965) (Thanks Athos Ribeiro) 2022-03-15 11:37:01 +01:00
Ondřej Nový
a9e81f1e3e Merge branch 'ondrej/more-luajit-platforms' into 'master'
Add arm64 and ppc64el to list of luajit platforms

See merge request nginx-team/nginx!10
2022-03-15 10:34:10 +00:00
Ondřej Nový
4499fb4947 d/watch: Bump version to 4 2022-03-15 11:29:20 +01:00
Ondřej Nový
976d4826bb nchan: Drop GCC 10 patch, applied upstream 2022-03-15 11:13:34 +01:00
Ondřej Nový
7bc0cfe077 http-lua: Rebase patch 2022-03-15 11:13:17 +01:00
Ondřej Nový
70f87643c9 http-lua: Upgrade to 0.10.15 2022-03-15 11:03:47 +01:00
Ondřej Nový
a63400c839 rtmp: Upgrade to 1.2.2 2022-03-15 11:01:40 +01:00
Ondřej Nový
16da4dccd2 http-fancyindex: Upgrade to 0.5.2 2022-03-15 11:01:34 +01:00
Ondřej Nový
e5cbfb9f4b nchan: Upgrade to 1.2.15 2022-03-15 11:01:27 +01:00
Ondřej Nový
0b739c803e http-echo: Upgrade to 0.62 2022-03-15 11:01:16 +01:00
Ondřej Nový
ecdfceccf1 http-auth-pam: Upgrade to 1.5.3 2022-03-15 11:01:10 +01:00
Ondřej Surý
da49114fdc Add arm64 and ppc64el to list of luajit platforms 2021-03-06 09:51:03 +01:00
Ondřej Nový
28cea613e4 d/p/CVE-2019-20372.patch: Drop, applied upstream. 2020-08-21 14:14:23 +02:00
Ondřej Nový
d5edfb4e7a releasing package nginx version 1.18.0-6 2020-08-19 15:27:14 +02:00
Ondřej Nový
371e61084f Fix GCC-10 compatibility (Closes: #957605). 2020-08-19 15:19:52 +02:00
Ondřej Nový
0c7efeffcd releasing package nginx version 1.18.0-5 2020-07-14 10:08:21 +02:00
Ondřej Nový
aa1f93ee24 Prevented request smuggling in LUA CVE-2020-11724 Closes: #964950 2020-07-14 09:53:45 +02:00
Ondřej Nový
bfdc885afc releasing package nginx version 1.18.0-4 2020-07-03 09:34:57 +02:00
Ondřej Nový
7df3da6863 Revert: libnginx-mod-* now depends on nginx-<any flavour> (Closes: 963860).
* Revert: libnginx-mod-* now depends on nginx-<any flavour> (Closes: 963860).
* libnginx-mod-* recommends nginx now.
2020-06-30 18:35:05 +02:00
Ondřej Nový
d08f16833f d/copyright: Bump year of http-auth-pam 2020-06-24 15:21:16 +02:00
Ondřej Nový
704b0f0e37 http-auth-pam: Upgrade to 1.5.2 (Closes: #963567) 2020-06-24 15:20:34 +02:00
Ondřej Nový
b760bb04de Update ngx_http_auth_pam_module upstream URL 2020-06-24 15:19:02 +02:00
Ondřej Nový
f039c694b2 releasing package nginx version 1.18.0-3 2020-06-11 15:15:05 +02:00
Ondřej Nový
fd2d73b10f Source-only upload to allow migration. 2020-06-11 15:14:52 +02:00
Ondřej Nový
886b03658e releasing package nginx version 1.18.0-2 2020-06-05 18:28:56 +02:00
Ondřej Nový
cc65b80eb0 Check if port 80 is free before starting during install 2020-06-05 09:55:45 +02:00
Ondřej Nový
d9b51eb2ed d/copyright: Add Thomas Ward from Ubuntu 2020-06-05 09:39:38 +02:00
Ondřej Nový
6930b5ac14 Add stream-geoip and stream-geoip2 modules 2020-06-05 09:33:44 +02:00
Ondřej Nový
8dfca737ef libnginx-mod-* now depends on nginx-<any flavour> 2020-06-04 22:33:47 +02:00
Ondřej Nový
6982ab38dd Introduce nginx-core and make it new default for "nginx"
Version of nginx identical to that of nginx-full, but without
any third-party modules, and only modules in the original nginx
code base.
2020-06-04 22:33:03 +02:00
Ondřej Nový
b39ced7d98 d/copyright: Fix wrong filename 2020-06-04 22:23:09 +02:00
Ondřej Nový
a681a84cf0 d/control: Add GeoIP2 into description 2020-06-04 20:43:40 +02:00
Ondřej Nový
a2ddfe2d0e d/ngx-conf: Convert to Python 3 2020-06-04 20:35:46 +02:00
Ondřej Nový
3edca8428c Build dynamic modules only in extras flavour 2020-06-04 20:23:32 +02:00
Ondřej Nový
478b737722 d/conf/nginx.conf: Remove trailing whitespaces 2020-06-04 11:37:49 +02:00
Ondřej Nový
9fbad86c59 d/conf/nginx.conf: Remove keepalive_timeout 65 and use default value 75s. 2020-06-04 11:37:11 +02:00
Ondřej Nový
1459087c8f d/conf/nginx.conf: Remove tcp_nodelay on, which is same as default 2020-06-04 11:36:23 +02:00
Ondřej Nový
e3540f5188 d/copyright: Update for release 2020-06-04 10:58:53 +02:00
Ondřej Surý
4851b6ec88 http-geoip2: Add ngx_http_geoip2_module 3.3
Co-authored-by: Ondřej Nový <onovy@debian.org>
2020-06-04 09:57:31 +02:00
Ondřej Nový
c6872b4f53 d/conf/nginx.conf: Enable TLSv1.3 2020-06-04 09:41:10 +02:00
Ondřej Nový
134d203c26 d/conf/sites-available/default: Update PHP path for PHP 7.4 2020-06-04 09:38:07 +02:00
Ondřej Nový
693c482e5c releasing package nginx version 1.18.0-1 2020-05-29 19:08:53 +02:00
Ondřej Nový
8838bdc5f1 Add myself as uploader 2020-05-29 19:00:50 +02:00
Ondřej Nový
ead863a42c d/copyright: Add myself for Debian part 2020-05-29 19:00:17 +02:00
Ondřej Nový
dd794d9830 Enable CI 2020-05-29 07:59:08 +02:00
Ondřej Nový
5e6d8fe10a http-fancyindex: Upgrade to 0.4.4 2020-05-28 22:50:24 +02:00
Ondřej Nový
bc6e1b3c08 nchan: Upgrade to 1.2.7 2020-05-28 22:48:18 +02:00
Ondřej Nový
6ac8972bb0 Convert d/ngxmod to Python 3 (Closes: #953025) 2020-05-28 22:38:58 +02:00
Ondřej Nový
3c7832e4c7 New upstream version. 2020-05-28 22:11:02 +02:00
Ondřej Nový
f1ae99061b d/patches/CVE-2019-20372.patch: Rebase 2020-05-28 22:04:34 +02:00
Ondřej Nový
13ba480abc Update upstream source from tag 'upstream/1.18.0'
Update to upstream version '1.18.0'
with Debian dir 0330ecd199
2020-05-28 22:03:13 +02:00
Ondřej Nový
b283023b77 New upstream version 1.18.0 2020-05-28 22:03:09 +02:00
Ondřej Nový
f33d2ab408 d/watch: Change to 1.18.x 2020-05-28 22:02:54 +02:00
Ondřej Nový
b575cfe355 nchan: Upgrade to 1.2.7 2020-05-28 21:27:55 +02:00
Ondřej Nový
403f780a46 Bump standards version to 4.5.0 2020-05-28 21:15:12 +02:00
Ondřej Nový
d089e10044 Use package.maintscript instead of dpkg-maintscript-helper 2020-05-28 21:13:15 +02:00
Ondřej Nový
52a04bd90d Bump debhelper compat level to 13 2020-05-28 20:54:39 +02:00
Ondřej Nový
7f0bb450a9 d/rules/dh_installinit: Replace --no-restart-on-upgrade with --no-stop-on-upgrade 2020-05-28 20:49:21 +02:00
Ondřej Nový
12e9c91f45 Set Rules-Requires-Root: no 2020-05-28 20:41:04 +02:00
Ondřej Nový
2b4e972bd3 Replace dh_systemd_enable with dh_installsystemd 2020-05-28 20:36:23 +02:00
Ondřej Nový
3ef09c0f69 Use debhelper-compat instead of debian/compat 2020-05-28 20:32:12 +02:00
Ondřej Nový
b58e974712 Merge branch 'with-compat' into 'master'
Enable --with-compat configure option (Closes: #897926)

See merge request nginx-team/nginx!6
2020-05-28 17:59:06 +00:00
Ondřej Nový
e5f8119f92 Add REMOTE_USER fastcgi param 2020-05-28 19:56:08 +02:00
Mohamed Akram
55ef39e8e1 Enable --with-compat configure option
Closes: #897926
2020-05-11 23:00:59 +04:00
Christos Trochalakis
f6841c97e2 Release 1.16.1-3 2020-01-11 09:37:17 +02:00
Christos Trochalakis
06b6f5670e Handle CVE-2019-20372, error page request smuggling
Nginx before 1.17.7, with certain error_page configurations, allows HTTP
request smuggling, as demonstrated by the ability of an attacker to read
unauthorized web pages in environments where NGINX is being fronted by a
load balancer.
2020-01-11 09:21:48 +02:00
Christos Trochalakis
c9fc21913a Release 1.16.1-2 2019-10-12 18:02:46 +03:00
Christos Trochalakis
bfd112b793 http-lua: Downgrade to 0.10.13
This a temporary fix for the FTBFS on arches where liblua5.1-0-dev is
used instead of libluajit-5.1-dev.

The regression was introduce in 0.10.14, see:

7286812116

This reverts commit 132704ab76.

Closes: 941917
2019-10-12 17:32:32 +03:00
Christos Trochalakis
07d0cb5b71 Release 1.16.1-1 2019-09-12 10:06:38 +03:00
Christos Trochalakis
132704ab76 http-lua: Upgrade to 0.10.15 2019-09-12 10:05:31 +03:00
Christos Trochalakis
85ba845433 http-ndk: Upgrade to 0.3.1 2019-09-12 10:05:31 +03:00
Christos Trochalakis
b2a3e22c47 Drop debian CVE patches already included in 1.16.1 2019-09-12 10:05:31 +03:00
Christos Trochalakis
2a8a5799e7 Update upstream source from tag 'upstream/1.16.1'
Update to upstream version '1.16.1'
with Debian dir 1f2d7a316f
2019-09-08 10:36:18 +03:00
Christos Trochalakis
c717ecb926 New upstream version 1.16.1 2019-09-08 10:36:13 +03:00
Christos Trochalakis
deba07f09f Follow stable 1.16 releases 2019-09-08 10:33:34 +03:00
Christos Trochalakis
71e4915c0f Release 1.14.2-3 2019-08-19 11:35:14 +03:00
Christos Trochalakis
d2bacdb1cf Handle CVE-2019-9511 CVE-2019-9513 CVE-2019-9516
Several security issues were identified in nginx HTTP/2
implementation, which might cause excessive memory consumption
and CPU usage (CVE-2019-9511, CVE-2019-9513, CVE-2019-9516).

The issues affect nginx compiled with the ngx_http_v2_module (not
compiled by default) if the "http2" option of the "listen" directive
is used in a configuration file.

The issues affect nginx 1.9.5 - 1.17.2.
The issues are fixed in nginx 1.17.3, 1.16.1.

Thanks to Jonathan Looney from Netflix for discovering these issues.
2019-08-19 11:33:14 +03:00
Christos Trochalakis
214580d479 Add missing changelog entries
Those were forgotten during the upload, but let's add them
for completeness.
2018-12-27 14:44:09 +02:00
Christos Trochalakis
62a54a8ba6 Release 1.14.2-2 2018-12-27 13:09:44 +02:00
Christos Trochalakis
52307bcf97 Bump Standards-Version, no changes needed 2018-12-27 13:09:44 +02:00
Christos Trochalakis
76804da3f8 Use a minimal export of the upstream signing key
Exported with:
  $ gpg --finger 0x520A9993A1C052F8
  pub   rsa2048/0x520A9993A1C052F8 2011-11-27 [SC]
        Key fingerprint = B0F4 2533 73F8 F6F5 10D4  2178 520A 9993 A1C0 52F8
  uid                   [ unknown] Maxim Dounin <mdounin@mdounin.ru>
  sub   rsa2048/0x57A82F1DD345AB09 2011-11-27 [E]
  $ gpg --export --export-options export-minimal  --armor '0x520A9993A1C052F8'
2018-12-27 13:09:44 +02:00
Christos Trochalakis
ff8b896b2b http-dav-ext: Upgrade to 3.0.0
Closes: #851651
2018-12-27 12:46:53 +02:00
Christos Trochalakis
04c8606039 Merge 'origin/master' 2018-12-13 11:56:58 +02:00
Christos Trochalakis
969f3934b1 Release 1.14.2-1 2018-12-13 10:05:52 +02:00
Kartik Mistry
1f43924c71 Added Turkish translation (Closes: #915728) 2018-12-06 20:03:49 +05:30
Christos Trochalakis
3f36d553d4 Update upstream source from tag 'upstream/1.14.2'
Update to upstream version '1.14.2'
with Debian dir b1e2850d27
2018-12-04 17:22:47 +02:00
Christos Trochalakis
6fac1fb9f0 New upstream version 1.14.2 2018-12-04 17:22:42 +02:00
Christos Trochalakis
0b00911581 Adjust fastcgi_split_path_info snippet to handle the /example.php/ case
We switched to regexp suggest in Nginx docs found at
https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/

Closes: #911398
2018-11-23 17:29:41 +02:00
Christos Trochalakis
df764921f3 Merge branch '913250' into 'master'
Reference PHP 7.3 (Closes: 913250)

See merge request nginx-team/nginx!2
2018-11-23 15:29:01 +00:00
Olaf van der Spek
fd3bbc2f43 Reference PHP 7.3 (Closes: 913250) 2018-11-23 13:34:13 +01:00
Christos Trochalakis
5f4d461c67 Release 1.14.1-1 2018-11-07 07:18:38 +02:00
Christos Trochalakis
4ce7282be9 Update upstream source from tag 'upstream/1.14.1'
Update to upstream version '1.14.1'
with Debian dir 484b71e227
2018-11-07 07:15:42 +02:00
Christos Trochalakis
f6cff46e22 New upstream version 1.14.1 2018-11-07 07:12:26 +02:00
Kartik Mistry
5d21039949 Fixed trailing whitespaces from changelog and removed unused lintian override 2018-09-06 16:22:26 +05:30
Christos Trochalakis
87dc3692ff Release 1.14.0-1 2018-08-31 15:28:27 +03:00
Christos Trochalakis
6d142fab1b Merge ru translations
Thanks: Lev Lamberov
Closes: #883104
2018-08-31 15:21:56 +03:00
Christos Trochalakis
e36dee7443 Order nginx after nss-lookup.target to synchronize host/network name lookups
See systemd.special(7)

Closes: #900790
2018-08-31 15:17:17 +03:00
Christos Trochalakis
bc3cf7aac7 http-fancyindex: Upgrade to 0.4.3 2018-08-31 15:15:27 +03:00
Christos Trochalakis
52cc96d9b8 http-lua: Drop our OpenSSL patch, OpenSSL 1.1 is now supported upstream 2018-08-31 15:13:46 +03:00
Christos Trochalakis
75d123cd1b http-lua: Upgrade to 0.10.13 2018-08-31 15:13:46 +03:00
Kartik Mistry
4918bc1382 Use https in copyright 2018-08-30 16:23:20 +05:30
Kartik Mistry
58f11854b6 Duplicate B-D removal and https in Homepage 2018-08-30 13:43:10 +05:30
Christos Trochalakis
7207dbf3b4 Update mailing list address to alioth-lists.d.n 2018-06-02 21:26:04 +03:00
Christos Trochalakis
94e64517a4 Update upstream source from tag 'upstream/1.14.0'
Update to upstream version '1.14.0'
with Debian dir 2a34c3654d
2018-04-23 10:53:47 +03:00
Christos Trochalakis
063c1e94b6 New upstream version 1.14.0 2018-04-23 10:53:36 +03:00
Christos Trochalakis
0091e68c20 Follow stable 1.14 series 2018-04-23 10:53:03 +03:00
Christos Trochalakis
46c038d54e Release 1.13.12-1 2018-04-11 08:19:50 +03:00
Christos Trochalakis
3ae03ddcfe Update upstream source from tag 'upstream/1.13.12'
Update to upstream version '1.13.12'
with Debian dir 2e1c135610
2018-04-11 08:18:08 +03:00
Christos Trochalakis
a051533bf7 New upstream version 1.13.12 2018-04-11 08:18:03 +03:00
Christos Trochalakis
9120a3de9b Release 1.13.11-1 2018-04-10 15:13:22 +03:00
Christos Trochalakis
6e014f97a7 Bump Standards-Version, no changes neeeded 2018-04-10 15:13:10 +03:00
Christos Trochalakis
bb56376490 Update upstream source from tag 'upstream/1.13.11'
Update to upstream version '1.13.11'
with Debian dir 274650840d
2018-04-09 08:40:26 +03:00
Christos Trochalakis
1292f53fbc New upstream version 1.13.11 2018-04-09 08:40:16 +03:00
Christos Trochalakis
1746e53baa Release 1.13.10-1 2018-03-21 16:16:42 +02:00
Christos Trochalakis
fdf581d046 Update upstream source from tag 'upstream/1.13.10'
Update to upstream version '1.13.10'
with Debian dir dc4405fea6
2018-03-21 16:14:40 +02:00
Christos Trochalakis
55e1981acb New upstream version 1.13.10 2018-03-21 16:14:30 +02:00
Christos Trochalakis
bcf5fd16c3 Release 1.13.9-1 2018-02-21 11:25:00 +02:00
Christos Trochalakis
510d68a971 Upstream version 1.13.9
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEf2SPbCEjyY+zKcgrETYmAKdH7NkFAlqMU5sACgkQETYmAKdH
 7NnrthAAq2lEeV33YOA1ZXF2A+XQPSG6yNqsd3H0aDSzPNONP0xN+zw8Wv0Y3i/J
 mW9cKMzL575dMOPJvZlhe8LVcv9vwaVB16ya5A4Zl+udg+vzou7f6m/3k6dDNJKq
 ja6cnLLawsdCrhiAuc7y/miObGboDTk4ri5ZC6UM+ZfNF3a4ce93+m2plKtxbPEe
 mFVElZUnVP6nZkxGw5mrm8Gz6059GjV98lS2+1j1I8tfbLoYJuCcX5naMOyYRr7S
 WOxlcTB5PX7MTX8Lyp8K6xo5b2C67yEgJ+KQ1mpJ1TEy03/Q/23biYAa8b2PIoOW
 7OCc8KMECu9vBzAZbL5JSP7ydoowKlsfD2nfHKhsWjR1EUT1UV9jNgVKVbwVFy+h
 ge9Lom3/UYNatQDSMjppUco9sMt53UQHD8/X4iqhTHMThFO7199JFVrT7KShK3AG
 cVZDdpsqwSYChr+1H2oL60TB99yRQsDNHAU48P2V8ePT2HxOUzHDAkCBLpssstab
 RQWZYe/UdvYMY/8LfQgS9EB0sTLiigCmrNeEEhoQcL3M57Fg/skhgeOt/Ew2yE4m
 vh/3yeAt4k5rVrk9GSXDD1hdCw4V0SdC0CFufwXrTG2E1b+Ml2ZPTtuUD/nMhwCr
 rLZ4zbYUS7RfpiG7FIgtavFDq4lpDoDVTuC7efV/PAiywwjr0Lg=
 =VXrU
 -----END PGP SIGNATURE-----

Update upstream source from tag 'upstream/1.13.8'

Update to upstream version '1.13.8'
with Debian dir d550454802
2018-02-21 11:24:45 +02:00
Christos Trochalakis
d26992910e Bump Standards-Version to 4.1.3, no changes needed 2018-02-21 11:24:18 +02:00
Christos Trochalakis
5b9f0b4827 Move packaging repository to salsa.debian.org 2018-02-21 10:39:13 +02:00
Christos Trochalakis
0490248e0f New upstream version 1.13.9 2018-02-20 18:57:58 +02:00
Michael Lustfield
7404f8bd77 Remove non-uploading users. 2018-02-02 20:44:42 -06:00
Christos Trochalakis
1b9fa09ac5 Release 1.13.8-1 2017-12-27 09:25:06 +02:00
Christos Trochalakis
c94e9b6bfd Update upstream source from tag 'upstream/1.13.8'
Update to upstream version '1.13.8'
with Debian dir d550454802
2017-12-27 09:21:36 +02:00
Christos Trochalakis
717fde6db4 New upstream version 1.13.8 2017-12-27 09:21:26 +02:00
Christos Trochalakis
6f5e080ac8 Release 1.13.7-1 2017-12-14 11:12:46 +02:00
Christos Trochalakis
6648d2471a Drop the 'v' part of module versions
It just complicates things, let's try to drop it and just
use a Debian compatible version.

Gbp-Dch: Ignore
2017-12-14 11:03:38 +02:00
Christos Trochalakis
f81b4fb99a nchan: drop hiredis source code
We already build against Debian's libhiredis-dev, so there
is no need to ship its source.

Gbp-Dch: ignore
2017-12-14 11:03:38 +02:00
Christos Trochalakis
69c4661396 rtmp: Upgrade to 1.2.1
Closes: #880718
2017-12-14 11:03:38 +02:00
Christos Trochalakis
ee4b10edd7 http-fancyindex: Upgrade to 0.4.2 2017-12-14 11:03:38 +02:00
Christos Trochalakis
72b4f71671 http-dav-ext: Upgrade to 0.1.0
Closes: #878611
2017-12-14 11:03:38 +02:00
Christos Trochalakis
5fb0700fb2 http-lua: Upgrade to 0.10.11
Rebase openssl-1.1.0 patch
2017-12-14 11:03:38 +02:00
Christos Trochalakis
8acbe3fbc4 http-echo: Upgrade to 0.61
Drop build-nginx-1.11.11 patch now included upstream
2017-12-14 11:03:38 +02:00
Christos Trochalakis
33799993fc http-headers-more-filter: Upgrade to 0.33 2017-12-14 11:03:38 +02:00
Christos Trochalakis
7f899937ab Bits & pieces for ngxmod
o Drop d/m/uupdate in favor of ngxmod uupdate subcommand.
    While at it, take advantage of the canonical module
    names and drop the last argument.
  o Move unpacking & commit to uupdate subcommand, that
    way we don't to have to communicate the upstream version
    with ngxmod uscan.
  o Move around a few things, and switch to argparse.
2017-12-14 11:03:38 +02:00
Mpampis Kostas
794cca0ebf Automate modules watch & upgrade process
This patch introduces the debian/ngxmod script and some helper
files which can be used to automate the modules watch & upgrade process.

The only subcommand for now is `uscan` and can be called as:
  $ debian/ngxmod uscan

The uscan subcommand runs uscan for each nginx module listed in
the newly deb822 formatted debian/modules/control using the watchfiles
in debian/modules/watch.

If a new version is available, it will ask you if you want to upgrade.
If you agree, it will download the tarball, place it in the nginx
source's parent directory and upgrade the module's source.

After the upgrade, it will remove the files listed in the
Files-Excluded module field and finally it will commit the changes.

Closes: #869499
2017-12-14 11:01:32 +02:00
Christos Trochalakis
08d6a8fe7a debian/watch: switch to HTTPS for the upstream check
Fixes lintian `source: debian-watch-uses-insecure-uri` info.
2017-12-14 11:01:31 +02:00
Christos Trochalakis
9f10b31488 Bump Standards-Version, no changes needed 2017-12-13 11:39:58 +02:00
Christos Trochalakis
b7b97c6c79 Update upstream source from tag 'upstream/1.13.7'
Update to upstream version '1.13.7'
with Debian dir 32024b8250
2017-11-22 16:31:45 +02:00
Christos Trochalakis
dfa79bec5c New upstream version 1.13.7 2017-11-22 16:31:37 +02:00
Christos Trochalakis
08248c9d96 Release 1.13.6-2 2017-10-13 13:05:52 +03:00
Christos Trochalakis
10af9c3bef rtmp: Ship docs & examples
Closes: #878368
2017-10-13 13:05:46 +03:00
Christos Trochalakis
f056335a38 Release 1.13.6-1 2017-10-12 10:44:13 +03:00
Christos Trochalakis
bf0c6fce6e Drop dh-systemd dependency since we depend on debhelper >= 10
Fixes build-depends-on-obsolete-package in lintian.
2017-10-12 10:37:22 +03:00
Christos Trochalakis
0305fe8ea3 Bump Standards-Version, no changes needed 2017-10-12 10:37:22 +03:00
Christos Trochalakis
515a80bc0a mod: Normalize module locations
Use the package name to infer module location. This
will make it easier to script our maintaining tasks.
2017-10-12 10:37:22 +03:00
Christos Trochalakis
e71a3e89c7 Update upstream source from tag 'upstream/1.13.6'
Update to upstream version '1.13.6'
with Debian dir d7757fa61a
2017-10-11 10:33:51 +03:00
Christos Trochalakis
a5c72db783 New upstream version 1.13.6 2017-10-11 10:33:46 +03:00
Christos Trochalakis
cacbf319db Release 1.13.5-1 2017-09-06 10:33:35 +03:00
Christos Trochalakis
1c5a8493ca Adjust rm_conffile to the new version
Gbp-Dch: Ignore
2017-09-06 10:09:50 +03:00
Christos Trochalakis
2b0dc70024 Update upstream source from tag 'upstream/1.13.5'
Update to upstream version '1.13.5'
with Debian dir 609fe7b629
2017-09-06 10:06:41 +03:00
Christos Trochalakis
2a7340c231 New upstream version 1.13.5 2017-09-06 10:06:33 +03:00
Christos Trochalakis
3582062c0e Remove upstart configuration file
Close: #874319
2017-09-05 10:40:24 +03:00
Christos Trochalakis
3ebf96c773 doc: Improve example WordPress configuration
Closes: #863343
Thanks: Larry Holish
2017-08-29 13:06:25 +03:00
Christos Trochalakis
ee4f08f8b4 Release 1.13.4-1 2017-08-29 11:08:29 +03:00
Christos Trochalakis
9ad7cddbce Bump Standards to 4.1.0
o Switch all packages to Priority optional, extra is considered
   deprecated and should be treated as equivalent to optional.

   nginx-light & extras now inherit optional from the source package.
2017-08-29 11:05:37 +03:00
Christos Trochalakis
22aae23648 Drop Upstart configuration
Upstart was removed in Debian stretch
2017-08-29 11:05:37 +03:00
Christos Trochalakis
2005e7e35d Explicitly disable autoreconf (debhelper 10)
Since debhelper 10 systemd & autoreconf are enabled by default, we need
systemd and not autoconf so we reverse the logic.

While at it, drop not needed autotools dependency.
2017-08-29 11:05:37 +03:00
Christos Trochalakis
e60711fcc7 tests: Fix race between reload and curl's http request
Restart nginx to make sure it uses the new configuration.
2017-08-29 11:05:37 +03:00
Christos Trochalakis
7614ff61a9 lua: Drop patch to build against nginx 1.11.11, now included upstream 2017-08-29 11:05:37 +03:00
Christos Trochalakis
70cb0befe7 Update OpenSSL 1.1 patch for v0.10.10 2017-08-28 15:52:36 +03:00
Christos Trochalakis
75a3ff5eaa Update nginx-lua to v0.10.10
Fixes an issue with LuaJIT v2.1, luaL_getn() is no longer available.
2017-08-28 15:52:36 +03:00
Christos Trochalakis
2a34dcb90f Discover LuaJIT 2.1 (FTBFS)
Closes: #873319
2017-08-28 15:52:36 +03:00
Christos Trochalakis
ef8a520c38 Add a simple lua autopkgtest 2017-08-28 15:52:36 +03:00
Christos Trochalakis
a17bcc8bee Updated version 1.13.4 from 'upstream/1.13.4'
with Debian dir 61a5e4fd4e
2017-08-09 09:05:31 +03:00
Christos Trochalakis
ec292afcb9 New upstream version 1.13.4 2017-08-09 09:05:28 +03:00
Christos Trochalakis
95f7f656da Release 1.13.3-1 2017-07-12 11:44:48 +03:00
Christos Trochalakis
4ec25acef1 Updated version 1.13.3 from 'upstream/1.13.3'
with Debian dir 77588cf436
2017-07-12 08:12:29 +03:00
Christos Trochalakis
3d12f812d7 New upstream version 1.13.3 2017-07-12 08:12:27 +03:00
Christos Trochalakis
ab3dccab6a Drop gzip_disable "msie6" directive.
IE6 is really deprecated nowdays. Also, this only affected earlier IE6
versions that was later patched to fix this issue.

Closes: #867024
2017-07-07 13:01:25 +03:00
Christos Trochalakis
5ccd94c7e9 Release 1.13.2-1 2017-07-04 14:46:29 +03:00
Christos Trochalakis
f4979c7c96 Switch the copyright-format URL to https
Complements the debian-policy bump to 4.0.0 (22fe275)

Gbp-Dch: Ignore
2017-07-04 14:46:22 +03:00
Christos Trochalakis
d546f527ee Fix nginx-cache-purge segfaults
The module copies verbatim the ngx_http_proxy_loc_conf_t struct, but the
`method` member has changed since Nginx 1.11.6.

Closes: #866750
2017-07-03 13:45:48 +03:00
Nicolas Dandrimont
1dc67ccb2a Introduce libnginx-mod-rtmp third party module
We choose not to include rtmp in nginx-extras for now.

Minor changes by Chistos Trochalakis

Closes: #843777
2017-07-03 13:45:23 +03:00
Christos Trochalakis
22fe275a65 Bump Standards to to 4.0.0 2017-06-29 10:42:50 +03:00
Christos Trochalakis
499c942816 Merge pt translations
Thanks: Rui Branco
Closes: #858741
2017-06-29 10:42:50 +03:00
Christos Trochalakis
accf9ea733 Merge es translations
Thanks: Jonathan Bustillos
Closes: #855610
2017-06-29 10:42:50 +03:00
Christos Trochalakis
57a32c6bb8 Merge ca translations
Thanks: Alytidae
Closes: #865996
2017-06-29 10:42:46 +03:00
Christos Trochalakis
c7803ecc60 Updated version 1.13.2 from 'upstream/1.13.2'
with Debian dir f17adbdfe2
2017-06-28 11:05:52 +03:00
Christos Trochalakis
5dcee0ba0a New upstream version 1.13.2 2017-06-28 11:05:50 +03:00
Christos Trochalakis
1084313b41 Release 1.13.1-2 2017-06-20 14:17:25 +03:00
Christos Trochalakis
05b6bb9e3b Release 1.13.1-1 2017-05-31 11:42:21 +03:00
Christos Trochalakis
ad6afaad13 Updated version 1.13.1 from 'upstream/1.13.1'
with Debian dir 26c0a4cf1a
2017-05-31 11:40:56 +03:00
Christos Trochalakis
501f9c7a40 New upstream version 1.13.1 2017-05-31 11:40:55 +03:00
Christos Trochalakis
6687faf49f Release 1.13.0-1 2017-05-10 11:40:52 +03:00
Christos Trochalakis
2e8c50ec9d New upstream version 2017-05-05 13:12:10 +03:00
Christos Trochalakis
9086149414 Merge branch 'upstream' (1.13.0) 2017-05-05 13:11:56 +03:00
Christos Trochalakis
3f1a97bae6 Upstream version 1.13.0
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEf2SPbCEjyY+zKcgrETYmAKdH7NkFAlkC+JIACgkQETYmAKdH
 7NkSyxAAi4gDCeHyeLBGiH1V/Z+vXQ4J+gcWkTYqUP0gWdwid6Um8qMMSqdMbbCq
 ONJHh4WnfBuSjgRCbZ9cRDf1ql0HEtlP0mq5PdQF+La0GqCiR1tC7r6Fgxpz2OOc
 UU/g1S5F1xSCo5rmgkhjbpImKli0PazP4OtMCXDTKc1MyWe/BjWtbCtQdWAHvTWk
 NWFvN3u4+RFKV6YTN+DzG/NyuEwdpA3y9uPaQg24BxAVgbp10mlaPNrZHbw8WvDt
 TDyKZCYtnym7UZN8mdld6AFZZuAQfus2UrIaL4uj9OHr5QKtJ2XBrrXpeakAhRfH
 I1SASGN4R3gVhIT6wopAwLWxIXwCYamB64fdVA1SEscOkWyq8kkOF4GWNJyuoD7J
 zRmNbgX7/t3XO3yYqrtkZdkVMr2NvXgdVeX5tXcme3Av+9Tj7Png0LT8UFFRd0Xa
 UfxfWZdLcE/MJEBrz9r5JCE+qulsjzscjCVK6eWVRovyZlGBtRRSGABgG8hYDVX/
 VLbqhb/zEuCxS+clilGh+EwwqDub2Ryp+uj9AEiqhNDCM9Ej43sEN6KUDdS10Tha
 ihDtikX62zioIxwCAHJPJLsQ6OPwSz6WCmi28DjCXfZUHc7UUeuza1AxTpeOw/Yz
 fFt1v3mbRgx2xZp80IBqU5HpHK7/RpuqkCzSbWZheiWrXfcOivs=
 =d8SC
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.13.0' into upstream (1.12.0)

Upstream version 1.13.0

Dummy merge since 1.12.0 is not a parent of 1.13.0, we keep the exact
tree from 1.13.0
2017-05-05 13:08:52 +03:00
Christos Trochalakis
0c4e8a2f2b Follow nginx mainline (1.13.x)
Now that stretch is about to be released, we can directly target 1.13
that will be released in about a year as 1.14.
2017-05-05 13:00:00 +03:00
Christos Trochalakis
22970aea4d Release 1.12.0-1 2017-05-05 11:58:13 +03:00
Christos Trochalakis
7d61d72df8 Adapt gbp.conf for the master branch
Dbp-Dch: Ignore
2017-05-05 11:57:32 +03:00
Christos Trochalakis
6bd87a78b4 Prepare 1.12.0-1 2017-05-02 10:01:29 +03:00
Christos Trochalakis
d21bb9f252 Switch to debhelper 10
No changes needed.
2017-05-02 10:00:39 +03:00
Christos Trochalakis
f4299b95f4 Enable SSL Preread builtin module on nginx-full & nginx-extras
Closes: #854214
2017-05-02 10:00:36 +03:00
Christos Trochalakis
774ecad972 Patch nginx-echo to build against nginx 1.11.11 2017-05-02 10:00:36 +03:00
Christos Trochalakis
0421dc9335 Patch nginx-lua to build against nginx 1.11.11 2017-05-02 10:00:36 +03:00
Christos Trochalakis
36c7658ba2 Patch nginx-upstream-fair to build against nginx >1.11.6 2017-05-02 10:00:33 +03:00
Christos Trochalakis
e1c2b349a0 Drop curve list patch, is is included upstream 2017-05-02 10:00:30 +03:00
Christos Trochalakis
16f4fb2b88 Drop perl build flags patch, it is now handled upstream 2017-05-02 10:00:28 +03:00
Christos Trochalakis
c3a656b1a6 Drop --with-ipv6 flag, IPv6 support is enabled automatically 2017-05-02 10:00:25 +03:00
Christos Trochalakis
96fee62e28 Updated version 1.12.0 from 'upstream/1.12.0'
with Debian dir 59e0433c03
2017-05-02 09:55:54 +03:00
Christos Trochalakis
53995e63c7 New upstream version 1.12.0 2017-05-02 09:55:52 +03:00
Christos Trochalakis
4a6feaae54 Follow stable 1.12 releases
This is a temporary state to help Ubuntu follow the 1.12 release cycle.
Debian will skip 1.12 and jump straight to 1.13 (future 1.14) for buster.
2017-05-02 09:51:58 +03:00
Christos Trochalakis
9cfc1d7ca8 New upstream version 1.13.0 2017-04-28 11:08:49 +03:00
Christos Trochalakis
752aa1cbf7 Merge branch 'stretch' into master 2017-04-25 11:04:01 +03:00
Christos Trochalakis
a418797080 Reuse the same build flags for the perl module
Using the same flags broke the build since -shared was not positioned
after pie/pic flags. Changing the perl LDDFLAGS patch and moving
Config{lddflags} to the end solved that issue.

As a general note, the injected -fPIC in debian/rules is not needed
since dpkg 1.18.13. We inject -fPIC so that it overrides previous -PIE
flag, but the latest dpkg automatically strips pie flags when building
shared libraries (man dpkg-buildflags).

We temporary keep the -fPIC injection for wheezy/jessie backports and
downstream Ubuntu builds.
2017-04-25 10:40:55 +03:00
Christos Trochalakis
84d1abef83 Reenable ipv6, was accidentally dropped in the last commit
Dbp-Dch: Ignore
2017-04-25 10:25:48 +03:00
Christos Trochalakis
0a3c1a5208 New upstream version 1.11.13 2017-04-18 13:14:36 +03:00
Christos Trochalakis
201ea3f6de New upstream version 1.11.12 2017-03-25 07:51:16 +02:00
Christos Trochalakis
daea5d1e30 New upstream version 1.11.11 2017-03-22 10:40:51 +02:00
Christos Trochalakis
c9e00bbe9c New upstream version 1.11.10 2017-02-18 20:36:23 +02:00
Christos Trochalakis
9f4f2c5961 Merge branch 'upstream' into upstream-1.11 (-s ours)
Dummy merge so we can merge upstream-1.11 to experimental.
2017-02-18 20:35:00 +02:00
Christos Trochalakis
0868325b3a Release 1.10.3-1 2017-02-15 11:01:39 +02:00
Christos Trochalakis
d92573efb6 Move Vcs repo under pkg-nginx 2017-02-15 10:00:10 +02:00
Christos Trochalakis
e1f1837732 Merge tag 'upstream/1.10.3' into stretch
Upstream version 1.10.3
2017-02-15 09:59:56 +02:00
Michael Lustfield
f4307ddb14 Configure build flags to work with other arches and downstreams. 2017-02-12 00:11:20 -06:00
Christos Trochalakis
06d2f43f67 New upstream version 1.10.3 2017-01-31 19:29:29 +02:00
Christos Trochalakis
8be20cce49 New upstream version 1.11.9 2017-01-25 14:51:09 +02:00
Christos Trochalakis
df46fe3e59 Release 1.10.2-4 2017-01-22 12:50:54 +02:00
Christos Trochalakis
db5edb9e3c Enable modules after a remove -> install cycle
Previously a module that was removed (not purged) and then reinstalled
did not enable itself causing some confusion. Now, we maintain state by
moving the module symlink to .removed on package removal.

If the package is reinstalled the link is restored, if purged the link
is completely dropped.
2017-01-22 12:50:54 +02:00
Christos Trochalakis
12b7091e96 Switch module reloading logic to dpkg triggers
Fixes issues during upgrades from non dynamic nginx versions (jessie).

When multiple modules are installed together for the first time,
nginx reload might fail because, at that time, the configuration
might reference directives provided by module packages that are
not yet configured.

There are also other cases where the instant reload might break,
using triggers seems like the correct way to proceed.
2017-01-22 12:50:54 +02:00
Christos Trochalakis
a9504afcbe Move module patches to debian/modules/patches
Everything under debian/patches has a special meaning in various tools
like gbp-pq.
2017-01-22 12:50:54 +02:00
Christos Trochalakis
cabaec36db d/control: Rename LUA to Lua
Fixes lintian capitalization-error-in-description-synopsis.

Gbp-Dch: Ignore
2017-01-21 22:57:23 +02:00
Christos Trochalakis
72cbf89d57 Drop lua reference from libnginx-mod-http-ndk description
Gbp-Dch: Ignore
2017-01-21 22:57:23 +02:00
Christos Trochalakis
6672c479d6 Add a NEWS entry regarding dynamic modules 2017-01-21 22:41:52 +02:00
Christos Trochalakis
110e1a49c2 Add some tests for X25519 EC
Gbp-Dch: Ignore
2017-01-11 15:16:32 +02:00
Christos Trochalakis
23e4b6d076 Backport curve list support from 1.11.x mainline
As a side-effect we move away from EC_KEY* OpenSSL API
in favor of `SSL_CTX_set1_curves_list()` which supports
X25519.

Also, the default curve changed from prime256v1, to the
OpenSSL defaults (currently X25519).

See also:
https://mta.openssl.org/pipermail/openssl-dev/2016-October/008582.html

Closes: #846085
2017-01-11 15:16:32 +02:00
Christos Trochalakis
1d0e6f6d38 Merge da translation
Thanks: Joe Dalton
Closes: #850857
2017-01-11 11:46:22 +02:00
Christos Trochalakis
ead0bdc4f3 Merge pt_BR translation
Thanks: Adriano Rafael Gomes
Closes: #846522
2017-01-11 11:46:22 +02:00
Christos Trochalakis
4dacd5cfa0 Merge nl translation
Thanks: Frans Spiesschaert
Closes: #845693
2017-01-11 11:46:21 +02:00
Christos Trochalakis
58a0ed368a Merge fr translation
Thanks: Julien Patriarca
Closes: #844712
2017-01-11 11:46:21 +02:00
Christos Trochalakis
006a1d393f Merge de translation
Thanks: Chris Leick
Closes: #843770
2017-01-11 11:46:00 +02:00
Christos Trochalakis
30cba18b36 New upstream version 1.11.8 2016-12-27 16:56:10 +02:00
Christos Trochalakis
34f973d82f Release 1.10.2-3 2016-12-24 12:12:51 +02:00
Christos Trochalakis
c9d02dd9d6 mod: Upgrade development kit to 0.3.0 2016-12-24 12:09:17 +02:00
Christos Trochalakis
e5ea352290 mod: Upgrade headers-mode to 0.32 2016-12-24 12:09:17 +02:00
Christos Trochalakis
e8f81d1ad0 mod: Check if nginx binary exists before reloading
Since the modules don't depend on nginx binary packages
yet, there are some edge cases that /run/nginx.pid is not empty
and /usr/sbin/nginx doesn't exist.
2016-12-24 12:09:14 +02:00
Christos Trochalakis
add52334d1 Reactivate PIE
Thanks: Markus Waldeck for the suggestion
2016-12-24 12:09:12 +02:00
Christos Trochalakis
07702e95f9 Update nginx-lua OpenSSL 1.1.0 patch 2016-12-24 12:09:10 +02:00
Christos Trochalakis
6cbf84df65 mod: Upgrade nginx-lua to 0.10.7 2016-12-24 12:08:34 +02:00
Christos Trochalakis
5140bc7eae mod: Upgrade nchan to 1.0.8
Closes: #844473
2016-12-24 12:08:32 +02:00
Christos Trochalakis
a27ccda836 Fix lintian error 'possible-missing-colon-in-closes'
Gbp-Dch: Ignore
2016-12-19 17:03:57 +02:00
Christos Trochalakis
0b60e49e08 New upstream version 1.11.7 2016-12-13 18:47:26 +02:00
Michael Lustfield
4deb3d7f52 Correcting location of default php-fpm socket. 2016-12-03 07:58:19 +00:00
Christos Trochalakis
bf78540e31 debian/rules: Correctly clean patched modules
Closes: #844506
Thanks: Sven-Haegar Koch for the initial patch.
2016-12-01 09:29:47 +02:00
Christos Trochalakis
e7164cf7ac Change my email 2016-11-21 16:21:24 +02:00
Christos Trochalakis
7c03e6673b Adjust experimental flow
We now dummy merge (-s ours) upstream into upstream-1.11 instead
of force pushing a clean branch on every release.

That way we can easier track the branch's history.
2016-11-18 17:26:38 +02:00
Christos Trochalakis
14707687a2 New upstream version 1.11.6 2016-11-16 10:29:39 +02:00
Christos Trochalakis
4b233e6f5c Merge branch 'upstream' into upstream-1.11 (-s ours)
Dummy merge so we can merge upstream-1.11 to experimental.
2016-11-16 10:28:01 +02:00
Christos Trochalakis
6c9b75da5f Release 1.10.2-2 2016-11-12 09:18:26 +02:00
Christos Trochalakis
424f50a53b Fix FTBFS for OpenSSL 1.1.0 2016-11-03 16:50:33 +02:00
Christos Trochalakis
0ec83a636e lua: Apply OpenSSL 1.1.0 FTBFS
https://github.com/openresty/lua-nginx-module/pull/761
2016-11-03 15:16:57 +02:00
Christos Trochalakis
2a4f371793 upstream-fair: Apply OpenSSL 1.1.0 FTBFS
https://github.com/gnosek/nginx-upstream-fair/pull/22
2016-11-03 15:07:10 +02:00
Christos Trochalakis
340b30f10c Rethink module patches logic
Collect all patches under debian/patches/modules so they can be
easily tracked and apply them before configure.
2016-11-03 14:57:35 +02:00
Christos Trochalakis
62276a745b mod: Convert dav-ext to dynamic module
Patch by Florian Kinder
2016-11-03 14:57:35 +02:00
Michael Lustfield
4cf05a14a9 Removing php major version number from comment 2016-10-29 20:48:02 +00:00
Christos Trochalakis
7f827f420a Release 1.10.2-1 2016-10-29 08:45:31 +03:00
Christos Trochalakis
333595dc83 CVE-2016-1247: Secure log file handling
Backporting patches from 1.6.2-5+deb8u{3,4} and adjusting
the compare-versions check to 1.10.2-1~.
2016-10-28 09:45:29 +03:00
Christos Trochalakis
37b847285a Revert "Adding support for packaged application configurations."
This reverts commit 5d09382c82.

We will include it in a later release (-2) and perhaps adjust
the paths involved.
2016-10-28 09:31:11 +03:00
Christos Trochalakis
1e6e4c88cf Drop unused lintian overrides (spelling-error-in-binary) 2016-10-20 10:00:17 +03:00
Christos Trochalakis
6a025de47d New upstream release 2016-10-20 09:49:53 +03:00
Christos Trochalakis
e7c46faef5 Merge tag 'upstream/1.10.2'
Upstream version 1.10.2
2016-10-20 09:48:28 +03:00
Christos Trochalakis
a8a1325840 New upstream version 1.10.2 2016-10-20 09:48:27 +03:00
Christos Trochalakis
8bf94db95d Follow the 1.10.x stable branch 2016-10-20 09:47:41 +03:00
Michael Lustfield
5d09382c82 Adding support for packaged application configurations. 2016-10-19 06:56:25 +00:00
Michael Lustfield
8c5b5c4f67 More documentation updates. 2016-10-19 06:49:34 +00:00
Michael Lustfield
7bfa979832 Updated PHP sample configuration block. #841230 2016-10-19 04:36:34 +00:00
Christos Trochalakis
646704e9fb New upstream version 1.11.5 2016-10-12 08:07:21 +03:00
Christos Trochalakis
d045f9b328 Strict version depend on lsb-base version >= 3.0-6
Fixes lintian error init.d-script-needs-depends-on-lsb-base
that strict checks the version.
2016-10-11 10:01:36 +03:00
Christos Trochalakis
5692397ea1 debian/control: Reference nginx-extras in nginx meta-package 2016-10-04 19:52:52 +03:00
Christos Trochalakis
42f5c9e7b4 New upstream version 1.11.4 2016-09-16 12:54:01 +03:00
Christos Trochalakis
255d6d4e4a Release 1.10.1-3 2016-09-15 15:21:11 +03:00
Christos Trochalakis
725adf41f2 Switch Maintainer to the Debian Nginx Maintainers list
Keep all active maintainers as Uploaders.
2016-09-14 10:52:23 +03:00
Christos Trochalakis
b624187e45 Fix lsb-base deps
o nginx-doc doesn't need lsb-base.
 o relax nginx-common dependency, any recent version should work.
2016-09-14 10:50:07 +03:00
Christos Trochalakis
0570da941e Remove relic Breaks/Replaces used for squeeze upgrades 2016-09-14 10:49:11 +03:00
Christos Trochalakis
8b6e35fe35 Drop nginx-*-dbg packages
Switch to autogenerated -dbgsym packages.
2016-09-14 10:48:31 +03:00
Christos Trochalakis
3f6df9e706 Release 1.10.1-2 2016-09-06 11:08:05 +03:00
Christos Trochalakis
22afcae671 Merge branch 'dyn2' 2016-09-06 11:06:11 +03:00
Christos Trochalakis
3953784152 wrap-and-sort 2016-09-06 11:05:26 +03:00
Christos Trochalakis
14e6282c9b Update d/changelog 2016-09-06 11:05:26 +03:00
Christos Trochalakis
3381e6e548 mod: Convert substitution module to dynamic 2016-09-06 11:05:26 +03:00
Christos Trochalakis
577178cdff mod: Convert upload progress module to dynamic 2016-09-06 11:05:24 +03:00
Christos Trochalakis
4dd8c07889 Upgrade upload-progress module to v0.9.2 2016-09-06 11:05:00 +03:00
Christos Trochalakis
cf3d323bd5 mod: Convert fancyindex to a dynamic module 2016-09-06 11:05:00 +03:00
Christos Trochalakis
d6c9309b3b Upgrade fancyindex to v0.4.1 2016-09-06 11:05:00 +03:00
Christos Trochalakis
acf0e3123d Enable SCGI & uWSGI module for nginx-light
Other proxy modules like FastCGI & Proxy were already enabled, but the
true reason for this change is that libnginx-http-cache-purge depends on
those modules being enable.

It makes things much easier if all our modules are installable along
with all possible nginx binaries. After all, this is transient until
we move to a single nginx-binary package that ships /usr/bin/nginx.
2016-09-06 11:05:00 +03:00
Christos Trochalakis
ffa01fb473 mod: Convert http-cache to a dynamic module 2016-09-06 11:05:00 +03:00
Christos Trochalakis
f2b7f2cbcc mod: Convert headers-more to a dynamic module 2016-09-06 11:04:55 +03:00
Christos Trochalakis
543f230b18 Upgrade headers-more to v0.31 2016-09-06 11:03:34 +03:00
Christos Trochalakis
d0712299ce mod: Convert upstream-fair to dynamic module 2016-09-06 11:03:09 +03:00
Christos Trochalakis
155f1a5b11 mod: Convert http-echo to a dynamic module 2016-09-06 11:03:07 +03:00
Christos Trochalakis
60e563b366 Upgrade nginx-echo to v0.60 2016-08-31 16:20:06 +03:00
Christos Trochalakis
580a98d123 Wrap tests/control 2016-08-31 16:20:06 +03:00
Christos Trochalakis
18532f376a mod: Convert nchan to a dynamic module 2016-08-31 16:20:06 +03:00
Christos Trochalakis
b04fb6c678 Replace http-push module with nchan v1.0.2 by the same author 2016-08-31 16:20:00 +03:00
Christos Trochalakis
6cdcbed1f9 mod: Upgrade nginx-lua to v0.10.6 2016-08-26 13:15:54 +03:00
Christos Trochalakis
c06d35b103 Enable slice module on all flavors 2016-08-26 12:40:48 +03:00
Christos Trochalakis
561cc60519 Add pointers to track modules not yet ready for migration 2016-08-01 10:38:39 +03:00
Christos Trochalakis
8e280162c6 Imported Upstream version 1.11.3 2016-07-29 16:46:55 +03:00
Christos Trochalakis
0f2905a7e0 mod: Upgrade nginx-lua to v0.10.5 2016-07-29 16:31:20 +03:00
Christos Trochalakis
1445c1403c *.postinst: Make sure we restart nginx if on-the-fly upgrade fails
Complements Mike's 1b3fa883.
2016-07-29 16:19:07 +03:00
Michael Lustfield
1b3fa883bb Make nginx-*.postinst use invoke-rc.d. 2016-07-16 19:14:08 -07:00
Michael Lustfield
a4f9f837e7 Implemented patch in bug 826061. 2016-07-16 17:30:40 -07:00
Christos Trochalakis
15695dee6e Re-enable experimental flow for 1.11.x 2016-07-07 11:27:53 +03:00
Christos Trochalakis
60cdfb2069 Only build against liblua5.1-0-dev when libluajit is not available 2016-06-07 10:53:40 +03:00
Christos Trochalakis
52025f4a8e Release 1.10.1-1 2016-05-31 22:33:27 +03:00
Christos Trochalakis
c065c08b05 Upstream version 1.10.1
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJXTd4FAAoJEBE2JgCnR+zZLdoQANtAapbxiXgp1gn+OAHv5Hwf
 auoegRz8ldypbBLjNwZPud5jzCLyiRVNYfK53nca4cU+4bJpFQIRi1IZuvHwoWTX
 2OUZnd1ooPVyE28N8bGQ8G/+wJsuIcRtsF45odNy26auohiIqqMasECm5GvyU4IV
 KTa8CY+nBxRLF+enRNyxSHAj1RW10H55NTYtHeRGJfIxCYo711DBVshEfBSCyP2X
 O8HDPdSVykUblIGARcjnmBUGbgUaVM/aGY7vc3egCRkwG+dF/DY5BQ5W3yWcYA6f
 3bGudFRqVRkG3PiC3ok/dHeSJV5HbCCCESk/TMJXpUs0K1Pmzx+nJ32q93y3pZo6
 mEKKChjl56xUKDht8efWNWUFOEqpSow4EsYo6X87u61xEtEy4CJ1LlsRs4h6Tvlm
 2WNod5hZZoXi8ldKVDhvS8tMcaJD70ZrKq6szxQ4s4Z8obHSwpEs3OMU4hCnQnDH
 Ub/ADqLppn7n13PqjSyNgGHOmT37K1BMtFUMaiIv92Oc76zsU0DAScve9XkF63Fl
 FVJNmoGSaTt3uux2G+qtPKsgpZ8CwOoONM01PfA39R7VuZPGKYfPO0l6OJ1jQ8y2
 +TyQ62hQe8qv9hkMJFA6vCwFTSWlXbhVg9OKSxDz0idskf0Mve2G31H3dWvFBByz
 G57ugsRFOzJbDAh7xJLx
 =RM4o
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.10.1'

Upstream version 1.10.1
2016-05-31 22:00:54 +03:00
Christos Trochalakis
a1e2085dd7 Correctly add changelog entry to 1.10.0-2 2016-05-31 22:00:26 +03:00
Christos Trochalakis
1b192da67c Imported Upstream version 1.10.1 2016-05-31 21:55:00 +03:00
Christos Trochalakis
7ffd2fc6a9 Generate dbgsym packages only if dh_strip supports it
Makes backporting easier.
2016-05-31 16:09:41 +03:00
Christos Trochalakis
00cd95bfc1 Release 1.10.0-1 2016-04-29 10:31:53 +03:00
Christos Trochalakis
6706bbedf8 New upstream release 2016-04-29 10:31:44 +03:00
Christos Trochalakis
cc24767c99 Upstream version 1.10.0
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJXIw2aAAoJEBE2JgCnR+zZTowP/1bN39MTbUJxpXk6Ys1O7uT6
 xG1Rv/g8zcgNFndo8Kzd87KslGzgiFU5wAEcrbBAGdsgME/1hSITVU919Vv1o31r
 czWOojyURqOdztCp3b6UcJbMs/NOUIbKNzQzRyn69Wg2wijjM1wsuAAcQ4a0304V
 U2ZilDTxJ/rsXNojMbzv/W9M5pTeu24Bf/yHkcbSHC0WY3DSRWQ635LZzHQ8wXys
 xnJyZYVinxdFSBr7KoPMt8CqyLduxTZKJ7+TpWigJEOD8zaNm6aau1SAc15YLqx4
 DhXe9HvzY+VA6/uX9/as2b81Mf78iny38GeCZwV5kModMoAvcb6FagrDZQDpZCar
 75HpdF4uZHhuk8pa1F067I7ECquuhIrwQS10k6oW89Z8R73PUXg2mfESQnEGhYOm
 mKYCLkpFqjHcDpWflL8ueTfKP0uIK8jEeE7H83gazD7EsCZzbSh2NmB+7DsPdTvH
 tEos7Qa2DVpyFqh8btbs9/3b/GaU1/nO5lgaaVm6z4W4hRc7h4uxLxdwM25Jt3U1
 cWBVNx+bobFHOH4m5aC09xEoHdPYRRvevQeB9kkJc7lSE+Qg+6uKnoX36CxC4xQQ
 J9v/UEJq1NqDkVUI4e2vB/aKLz2U+volohjk+OMUJZt9Qp6S6qkB3xOeds/4R9s6
 Bi9AbCd6XcFFwequEJuv
 =Zz3v
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.10.0'

Upstream version 1.10.0

# gpg: Signature made Fri 29 Apr 2016 10:30:34 AM EEST
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2016-04-29 10:30:40 +03:00
Christos Trochalakis
95a2b168be Imported Upstream version 1.10.0 2016-04-29 10:30:33 +03:00
Christos Trochalakis
a66bea579b Release 1.9.14-2 2016-04-28 10:01:23 +03:00
Christos Trochalakis
c46cc7556b libnginx-mod-http-perl: Override wrong-section-according-to-package-name warning 2016-04-28 10:01:23 +03:00
Christos Trochalakis
664bdf48f4 Bump standards to 3.9.8 2016-04-28 10:01:23 +03:00
Christos Trochalakis
58105135c4 Fix upgrading nginx-extras from a non-dynamic version
libnginx-mod-http-perl ships a common file with nginx-extras,
adding a Replaces header fixes that.

Note that the is no need to add a Breaks header since these
packages are not co-installable (they explicitly depend on
a different nginx-common version).
2016-04-27 16:37:15 +03:00
Christos Trochalakis
8b10bd4f01 Release 1.9.14-1 2016-04-19 12:27:53 +03:00
Christos Trochalakis
cfc16224c0 Fix changelog typo 2016-04-19 12:27:53 +03:00
Christos Trochalakis
ee4d3780e4 Upstream version 1.9.14
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJXFK/SAAoJEBE2JgCnR+zZi2YP/09C7XHBmSenwKxKYWOBxVud
 vjG4TRmxTeXj5ZjgbtVM0VaYGWzJ6CyxWDOfhrHup06iiqGKdLM7pdm0QGaOA/Uc
 jDrtAzOf/DV+Ol/g+Ve7HCpmdDMAqzaNMlsCDsOR2s/8RhPBnjZnwwBgS4IBCdHF
 grtBvoml6+4RRiA371cqTo8rkAOjyrBxjcciYJS/YOIyi8Yqzh5CAwmDgrnbqTLV
 zGkT/uoRzr6uvoz4xV8KwZy/3i74tRQdJtee3xWNlppL/hqp3wL3FZtcKgzSjI6F
 F8Fp8jU4llKn5bHMtAU80/TF0rpzPUrCvUibSODXHHvPBwqnnstE8sZXU2jh2aB7
 YsFP1MDUhbEpQToFV5gdUuPLE7PaqkObYod2OK1UNpJLhn21jTjb1sBgVUddT3bm
 PhfeefFSNzGfahKHlkdNpt0E+dPp94h6Tq+SbpTlkUK5gODLADA0S9XFCiPnAgfK
 LEXaffIClKs3OHnB/bMCjFXL/s3mcviG3M4LWhYDgMYj5GpWUtMl2FtKVqqpfvQp
 ZWM0ZXWpZap44FE+GzM1VCFi9JhiF1ukLlg1tSzG9MvpDbjddsaALhfj/6VipuGk
 aoEhRDhTHKP2jigzdXPJtxrobNzH/ZYnOs9KTCb5oAJNaFMypsu0rW/EKAkqPMcq
 a6s6ZIw3nP9n7U/MESwT
 =rVBz
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.14' into dyn

Upstream version 1.9.14
2016-04-18 13:00:49 +03:00
Christos Trochalakis
0eb87154ce Imported Upstream version 1.9.14 2016-04-18 12:58:40 +03:00
Christos Trochalakis
578f222e92 README.packaging: Add a note about dynamic module support. 2016-04-18 12:48:25 +03:00
Christos Trochalakis
65f92dd626 merge into dh_nginx 2016-04-18 12:48:25 +03:00
Christos Trochalakis
fef2251ae9 NDK is a dependency, load it before nginx-lua 2016-04-18 11:47:37 +03:00
Christos Trochalakis
57e63bc6d8 dh_nginx: Support setting module priorities in .nginx files 2016-04-18 11:47:37 +03:00
Christos Trochalakis
481751859a Introduce libnginx-mod-http-ndk module 2016-04-18 11:47:37 +03:00
Christos Trochalakis
30eb818ca4 Update nginx-development-kit module to 0.3.0rc1 (dynamic module) 2016-04-18 11:47:37 +03:00
Christos Trochalakis
9551b6324b Update nginx-auth-pam module to 1.5.1
Fixes linking issue with the dynamic module.
2016-04-18 11:47:37 +03:00
Christos Trochalakis
ddb8028502 Convert tests to scripts 2016-04-18 11:47:37 +03:00
Christos Trochalakis
f6a3b87f15 Test all modules in all flavors 2016-04-18 11:47:37 +03:00
Christos Trochalakis
832524e25e Mark nginx-common & nginx-doc as 'Multi-Arch: foreign' (Closes: #812484) 2016-04-18 11:47:37 +03:00
Christos Trochalakis
166eb74113 We accidentally closed a wishlist bug with the nginx-light enhancements 2016-04-18 11:47:37 +03:00
Christos Trochalakis
d5ba950907 Perl module ifdefs for SSI so it cannot be loaded across builds.
nginx-light is the only flavor that doesn't include SSI so we
are including it there.

Also, we switch the nginx-light module test to use
libnginx-mod-http-perl, that way it's more likely to fail.
2016-03-31 09:34:35 +03:00
Christos Trochalakis
6d20e665d3 Introduce libnginx-mod-http-perl 2016-03-31 09:34:35 +03:00
Christos Trochalakis
a12faa39a5 build modules using nginx-extras 2016-03-31 09:34:35 +03:00
Christos Trochalakis
e7ea50abbd Update LUA module and introduce libnginx-mod-http-lua 2016-03-31 09:34:34 +03:00
Christos Trochalakis
5d3e5e8fcb Update auth-pam module and introduce libnginx-mod-http-auth-pam 2016-03-31 09:33:38 +03:00
Christos Trochalakis
dfa3b2f2df New upstream release (1.9.13) 2016-03-30 11:28:10 +03:00
Christos Trochalakis
6baf817539 Upstream version 1.9.13
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJW+43ZAAoJEBE2JgCnR+zZvIEQAIOHrQNHpBRsUPvjoKZE+2V4
 28vh3qtl+wZhWV/7tcupwWj8u1AVc5tL2gas1+9RIC2FFuhEIIAJ9bluphb9g5H/
 s0FaTFH3LdHyaqSnq2eV+VzwQ/q4MTr5J66obi/wXnKRjqdPRfjlgUWY3zwmTzwM
 zCEPmLvCppyUpuRzj3mQMJuAyl/hwhF5ETadgRac8KECNcw8p0MpVfcEznaHCWZ3
 +9CdtyrY1bvttMWGglPSqPrxxL8eXjEX/9bBHWa4MqaBpkwXfNiT5DZkwAOvL7V1
 iG1VCAinvvdH/y2If/ssI+0tIfk5kfthYdnpZlcU/dy1XUY8vDeHBsBUs58UODuQ
 Az3asH9KHejZ85iFaYYPNID55LPGTbCGgL7oDG4AJr0ZNGJtZTb21yznXFBxNapD
 rCmHdXvPbS2b+mtHA4M19eXht6CgsxoFSYu71Idy6lHQFKFVpuuDncvRxKFo+fA9
 E5mbLMX/wYZS/7N9OVWT+n1aAv2+ufVhNxCUNYc3InnDhMifxhJgdt/kSdV591N4
 ZpxW2z4t7Uss40BVfOADJ1EqrNPZJPHa+ya0MfXD/J6raq+bk0npnsvJs2XCYojo
 VAwBWz8462Eo4/uLKZbjWPN4KryhMmsmuvx1Bwo0LEwBZrQ9bo8wxNAgxs+9i+Ad
 tVN2yE9B0weHDUWtWMnn
 =kunS
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.13' into dyn

Upstream version 1.9.13

# gpg: Signature made Wed 30 Mar 2016 11:27:05 AM EEST
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2016-03-30 11:27:05 +03:00
Christos Trochalakis
3072f74f2d Imported Upstream version 1.9.13 2016-03-30 11:27:04 +03:00
Christos Trochalakis
95448c85f5 Imported Upstream version 1.9.12 2016-03-30 11:23:20 +03:00
Christos Trochalakis
830a8fbc34 Sum up changes 2016-03-30 11:19:07 +03:00
Christos Trochalakis
bba86a8f89 tests: Test if nginx-light can successfully load dynamic modules 2016-03-30 11:19:07 +03:00
Christos Trochalakis
24ba8b51ef Make sure signature stays the same in all nginx builds
When a dyn module is loaded the signature of the module is compared to
the one of the nginx binary.

dyn modules are build from nginx-full, so in order to make them loadable
in other flavors we need to make sure all the binaries share the same
signature.

The signature is a vector computed from 33+3 parameters (src/core/ngx_module.h)
With this commit we align all nginx flavors to same signature vector.
2016-03-30 11:19:07 +03:00
Christos Trochalakis
d19e7548ee Build libnginx-mod-* packages 2016-03-30 10:03:46 +03:00
Christos Trochalakis
b231ba8f39 dh_nginx: Modules depend on nginx-common for now
We will change that to nginx-binary when it's available.
2016-03-30 10:03:46 +03:00
Christos Trochalakis
916384bde3 Setup libnginx-mod packaging flow
We introduce a dh_nginx helper script. For now dh_nginx
will only be used in the nginx source but when are confident
about it will ship it in a nginx-dev package.
2016-03-30 10:03:46 +03:00
Christos Trochalakis
7a5fa94b9d Setup modules-{enabled,available} directories
Modules have to be declared with top-level includes
2016-03-29 17:11:19 +03:00
Christos Trochalakis
44b30c100a Disable PIE hardening flags for now, it breaks dynamic libraries 2016-03-29 17:11:19 +03:00
Christos Trochalakis
a50cd439eb Add documentation option to systemd unit
Fixes systemd-service-file-missing-documentation-key lintian check.
2016-03-29 17:11:19 +03:00
Christos Trochalakis
7b00376f31 Bump Standards-Version to 3.9.7.0 (no changes needed) 2016-03-29 17:11:19 +03:00
Christos Trochalakis
fd1a40a6f8 Update Vcs field with secure links
Fixes vcs-field-uses-insecure-uri

https://lintian.debian.org/tags/vcs-field-uses-insecure-uri.html
2016-02-12 17:28:50 +02:00
Christos Trochalakis
3c7520fadd Update nginx-lua module to v0.10.1rc0-5-g01727a3
Fixes building issues with nginx 1.9.11.
2016-02-12 12:37:52 +02:00
Christos Trochalakis
586dea9358 New upstream release (1.9.11) 2016-02-11 15:07:08 +02:00
Christos Trochalakis
29fb5d54c5 Upstream version 1.9.11
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJWvIdIAAoJEBE2JgCnR+zZEmoQAK5dQITjmwBhBVsfNM7lRsMC
 nuBOIqgXjyc6FVwSnPUlnPC2SDc7A5OV4w6+L6ixUfX0YUBEJVe1yf4osm5LB655
 7goJS817WZXLQhWL66porg7NyS2UjoO1Zkyhuvul13vqG3BOzDj1GOXDWpwzJS0Y
 2+M7q5t5hwpeaRtny7uQrYkCKI08jqFe4go6ZyXxtcOqaT6rs7bumBDX+zE682PB
 LL/UFcgfzYh+Dt4K+MjSsGS6Fn+9ibgLrpfuq7U+RwjQmSqYbeQVzhhcME68S0sV
 Jpp3tem5/RJZWYxPX4bVo+MhVmz4yISClAOh9cfmAv2Da6XXuS6MKNA+4cb3+uub
 eec15yZC4jaJGhsftelo5IGjSX4G7HuaZpKEIXCY5aYmxPAqgDs7XZmZ1eieuJ7q
 FV+MYtz91bMywmSO4Q5lXcWi8kF8mxDMe4BNUPCCfxcK73EmSbxdl9ekhDNKllho
 Zbe+HfqZLgDIzuzupRQIcA5RV3JiLJZwsezehRgIUHoqeN6Qrq2z8HNQkr53rVFg
 pjMrnHH/tcjtrB0HAErKzh2SW5PC/BhkZFtQ77RUrGHcLij5k/cpUcRd9wn32cRB
 VNIjZINAxkUo38LwjY0XBLV/6PFw7DlAZQMU9Tf3MqGOyiE8TnqWJxNv0dcuAk+N
 VkAGTHB506Byu5ipcMti
 =v+DG
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.11'

Upstream version 1.9.11

# gpg: Signature made Thu 11 Feb 2016 03:06:16 PM EET
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2016-02-11 15:06:19 +02:00
Christos Trochalakis
0e20bccf29 Imported Upstream version 1.9.11 2016-02-11 15:06:14 +02:00
Christos Trochalakis
19d658f41b Release 1.9.10-1 2016-01-26 20:12:14 +02:00
Christos Trochalakis
0bcc8e5f72 Remove python from nginx-common deps, closes ##808699
ngx-conf is going to be shipped as a separate package.
2016-01-26 20:11:10 +02:00
Christos Trochalakis
e752ea86a6 New upstream release (1.9.10) 2016-01-26 20:09:55 +02:00
Christos Trochalakis
eab4758c29 Upstream version 1.9.10
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJWp6/4AAoJEBE2JgCnR+zZ1RUP/RGhlN/wxk2nTOR2jko9Issp
 3+MEbj3+dsTNJdlSNTdKU6p9R9Btkyf//CgiEy/rSXOLhI2JwKjP26Lp/WFmJ9q6
 C9pwuKJMvW0ekHsHBP48458ZXvtBmEqdlJud4Y5nhCZ5tcwA5GkTBiVFtKHH2+rX
 p++puaPu6bZ21WG/hmWGQwI+QHW8k26crGmDbqR+8wcET1LKbAQfJB2MMclLhyTE
 JJolF0cfxWgtAbTbn0WXb8pWIlYG64AYQnMxSMkR+NLEzvLjJWh1yv/xiV740Nq4
 KJuoci6gXTxiMkuuyF0EC3Y6bW7QZfNQnPpcmHWOsVgSwOaydJA60LK01BAR5ZR3
 0NhMPMpIopO37UTM70uJFWpNRXJDbdsqN/6kS075szJirmRVoCV59s1E9sXWMSQ8
 Ne1nHpddg2b2eNmOhnEyHBlQPBXhf83dGwdg9J1KoAeBnKMv+cSQx5qQylgEarQS
 E6Lzoop1s7FRiIybwD0zkNg/k36za6l5nOSAEMelYJbbjUCLkB/thvGaTSCquoRl
 s9OJNzK6FFtsRBXvJpK2OJh6BEBTGzdmYnuVuFG9XBuOcs2OzixfUTvngkuM1CcA
 Xl8k6QdfA73POivxQ6cdK4v4W9vkB6dzwEmFtD3zGRYdUIoeeay5JAAIMxVoGbD2
 HOICeAGBzIGqm9gbq394
 =f9/U
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.10'

Upstream version 1.9.10

# gpg: Signature made Tue 26 Jan 2016 07:42:16 PM EET
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2016-01-26 19:42:19 +02:00
Christos Trochalakis
647d381b13 Imported Upstream version 1.9.10 2016-01-26 19:42:15 +02:00
Christos Trochalakis
4f41a69293 Release 1.9.9-1 2016-01-14 11:05:19 +02:00
Christos Trochalakis
706a679a92 Add a NEWS entry for our logrotate policy change 2016-01-14 11:05:19 +02:00
Christos Trochalakis
45aed60c9d Keep logs for 14 *days*
Complements Mike's 255c62e0 (#805322)
2016-01-14 10:40:07 +02:00
Christos Trochalakis
3ed3460460 Update nginx-lua to v0.10.0 2016-01-14 10:40:07 +02:00
Christos Trochalakis
2de69eb494 New upstream release (1.9.9) 2016-01-14 10:13:53 +02:00
Christos Trochalakis
0d89f5a406 Merge tag 'upstream/1.9.9'
Upstream version 1.9.9
2016-01-14 10:06:29 +02:00
Christos Trochalakis
6771862784 Imported Upstream version 1.9.9 2016-01-14 10:06:28 +02:00
Michael Lustfield
23c5f93806 Adding some missing files 2015-12-15 01:51:24 -06:00
Michael Lustfield
255c62e0b5 Changing logrotate from 52 days to 14 because of a typo and similar bug. Bug #805322 2015-12-10 04:09:20 -06:00
Christos Trochalakis
b1928b468d Release 1.9.6-2 2015-11-13 16:08:16 +02:00
Christos Trochalakis
7a486795eb Update nginx-lua 0.9.19
Fixes http/2 issues
  o https://github.com/openresty/lua-nginx-module/issues/566
2015-11-13 16:07:02 +02:00
Christos Trochalakis
6f5cefd11e 1.9.6-1 2015-11-03 09:13:06 +02:00
Christos Trochalakis
b37dfd906a New upsteam release (1.9.6) 2015-11-03 08:59:14 +02:00
Christos Trochalakis
114f9bbff0 Upstream version 1.9.6
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJWOFr7AAoJEBE2JgCnR+zZ9nwP/jzry8wIragXdl/wPuSl+tl8
 A+q11+Dci9U1kXdS5f3AM/axhTicmZF7BtWzjGflLK7XAsxrXmRGthX6k07vHWmc
 ao+91HCsmP758sQaRg+TSZ8dWXFnubf8enUTFMq3rgTu3yvBmdDy46BQnAo+4u3u
 dJ8rt/hEJh8SZA+x3KbDTcuhs5S4lBeJOhmWPBhrNId4hb1A1dk4jYn8cBijx8hW
 kqB5pUZ9TlGDadspfzFDlOYLkA98/OlcbCfHMCqw8oiZjzQ9cs00d3uWCfeFuhIa
 7bDBheWDQtP19ctZ4FzijpIbR8iBqPjx2lAXMicynsE6nhFmjn+WB10cqwxGSeHy
 U6r1Nus4pMoxj3TNUtmyrdkyjRBc+oborXGwhss2T7mqjl9wZs7IUcZurXADm+aJ
 V/68pJd8YZ7IWyybvXQyUV43MwD+3EGo/Kxk9yrqWLTy//UX+jy/EjN+h6g2e6iw
 UM7gFjMnWZouW7sPNY4n8la8VVCLizkzfpmoQ+iU03Fnjjltltd4RCtQtCERn8pI
 Rl3eDbC/WaTac0WKy94RN7SurPieTuN5V1LsLKTuADwmrYZyjxifY2zGoQzCZLfy
 k/hJImDi+0IffbD+TKGrfhkl2pNuRQHCKUxcBaQ8px/o/1kkyYJUmqcGI3OgWUa/
 fiLV1fQz45b8bcSJwxdD
 =fJNK
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.6'

Upstream version 1.9.6

# gpg: Signature made Tue 03 Nov 2015 08:58:03 AM EET
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2015-11-03 08:58:06 +02:00
Christos Trochalakis
6a711b5bd6 Imported Upstream version 1.9.6 2015-11-03 08:58:01 +02:00
Christos Trochalakis
efe7d922f4 Add a NEWS entry for http2 2015-11-03 08:56:29 +02:00
Christos Trochalakis
baf8feb207 Enable http2 module 2015-11-03 08:56:28 +02:00
Christos Trochalakis
4e0f004806 New upstream release (1.9.5) 2015-09-25 14:04:15 +03:00
Christos Trochalakis
53a6842708 Upstream version 1.9.5
-----BEGIN PGP SIGNATURE-----
 
 iQIbBAABCAAGBQJWBSnYAAoJEBE2JgCnR+zZmqQP+Pfj09hV0hO3tk9vTskxFmxS
 wDxpGcCycSYltkKciS44kSjpfI3RHE/cqO2Md26s8sqNBvRjTfyKhglx6MyRn6yz
 aO1B3t7evqaxcNBgedouBbP2YB5nH+8Wv1/YjGydMz3IAPoRUXI+hp5WfyKzyz+I
 TOwvgbpUPvZ9oP6kwiTDaM5fBhoLl5kS3lTT3hYZnEPggsIwEon0gP710c0aQ3AS
 k1YEObaWF/HnYVIeJ69kYwqAhHCvcxUm/Td79yDFK3P/DaX30XboS+Q8jkBGh8Mv
 tQ5k5MOkO8J+3hgAPIrsEj8VZvIG/QTw/JQ3aJP/GkYibRj0P0SuunoBlfMeUzI+
 XeAk9CoFRtYtDMNs7LXK36ywx4MTH+5FZtmKkfEVoT91AE/UxtnZblvvmDiJavJN
 vxf8vYY42bYL3KWcBMMLeU1Ljk8iipET4j1bbP9ctC0ykgxzeGq+FoaCMX8qww/Y
 B7AUPc5dgWdbnKq/Yq3Hha3GaLbDzXYZvIHTa3ZFQdcMkVlsAw9uAIXBiIxTq6K2
 7P9J/OB+muKK027AeXFHg08VEjhw4Di9kjSQFaOGkA4cbMPFCb6/nbvTNeXxG+5D
 OfnsMseUPjnNemYlrBe/Nn5SmEQLVyoLdtgZz1VPF/zsa25En8GLLUMi/DuZEpTk
 XltD3TLK34NdmewH7xc=
 =cHb2
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.5'

Upstream version 1.9.5

# gpg: Signature made Fri 25 Sep 2015 02:02:48 PM EEST
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2015-09-25 14:02:52 +03:00
Christos Trochalakis
3efc881926 Imported Upstream version 1.9.5 2015-09-25 14:02:47 +03:00
Christos Trochalakis
a8ef8abc7b Release 1.9.4-1 2015-08-24 16:23:50 +03:00
Christos Trochalakis
a9600e2b4d Update debian/copyright for nginx source 2015-08-24 15:35:35 +03:00
Christos Trochalakis
f539cc0a49 Fix licence ordering 2015-08-24 15:35:03 +03:00
Christos Trochalakis
a26063750f New upstream release (1.9.4) 2015-08-24 15:33:52 +03:00
Christos Trochalakis
55f36156a2 Upstream version 1.9.4
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJV2wtGAAoJEBE2JgCnR+zZ18IP/RPfVjvzB+6tdGSFYIOQCEOw
 lDr0cb1MQ90bAag4HS+hhKmGiWMnOR8pkZr+mH0XQEzDgXFRF2XQWFzb9djeN79g
 zF02b3Il17ZCk06xqCkzyVFBJaSJ/mA9URzmKq8R15jatGxvEUT2+Bl4EhMhzyuP
 hMFhUVBKeNulRF1K8D8Fmqw5QXTvLrbhEkvnCRzCoxheX+249cciwLHkHXg1DA7O
 K8T9o5ZzXf79OM1EB/c89UsvEQDKlWyTEkW9RC7g0j3chSwianYAGAB2hRhkfbRW
 Ehj2iRsd7CigRvbxocFiUTFJOHXlfgjSS1n2Gf/+/E6p16VSPjM1FLIVs2icHYdg
 i9J0PxrVEidUlMKw1o9rdTYkfPiUtGI9niwFSHN72WVkHXNtdN5ml4fxJ+yXq6IQ
 dgqEXPoyeGG6GyA3oTxvHIGhppLES9qc4j/vRBcCN6BleXNHM03Ib03O/5Vh1YT4
 vsS0lJ93YHeIPMesxTt6Kw3wDLjF1yhSYECOs35Lb/w7+7qkoX2M3FT3Or6b4ePO
 Hq8vNlGx6omAkKVTFIU/pK0vaQjG1Xj2ZV1FC/D9qQCRlaoaz9XoM4l5A8TU6z7P
 F1rq7iioG65hMtCzf1TMaB/s8s3+LzfnjcFG338g88CbLLcB0jfIp+vgtrjgMNiP
 DOC4/nfRFi1k4V+JBC6N
 =kjAG
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.4'

Upstream version 1.9.4

# gpg: Signature made Mon 24 Aug 2015 03:17:10 PM EEST
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2015-08-24 15:17:14 +03:00
Christos Trochalakis
fba932f24f Imported Upstream version 1.9.4 2015-08-24 15:17:09 +03:00
Christos Trochalakis
93550c314f Release 1.9.3-1 2015-07-14 20:25:16 +03:00
Christos Trochalakis
5491f7bdca Upstream version 1.9.3
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJVpUT0AAoJEBE2JgCnR+zZBkgP/j6a5ploh/WH13EiBAPa5Y88
 sbMUREeyVrkKRTBUROW05HSvSl+tuQf+V3obk6WTck3KAIYTVnmt60yeC8xT9rfL
 ZYytmJenIgL6qipkmEla+0aLbch+EX+NzzOta1FlOl44QNbYjFEqCFps0xuiPuCJ
 2rbL9/BVe7XfD8NOqyMHImcO3VcIinTU9hw5WyTAWylG2zvgW2hOAWb9HxLa7sot
 x6UT9XuuD7UPoBaHuhZsQFScV7RlnjDEuhjVB7J8YGK3iZE4/1CVOl9GICN5awk2
 xbqFcPkyd8dKCUGDTk4mmRneUcrclc4/hGg5Of+1LAboR9epoWsP9U7BYoN0VLHI
 8BGvuclegqqFmHVTfDvQm9tcexsjEadREK6yC693OnAIy0qV/LifJlzqZmfhqWb+
 TgxQXYhJCxCJTUQHYokSETqXI525DhHYxUnTZSyHc/cn0xk3GvRTa8QWyHoiNT0O
 ojCy3J6CnSHAtJPeS6wn9exskvfwv3UiCWbpQ4sueAjlMfh+ZH/TEB3iqPazD3H3
 qixbw3PFHYK82Fz28EYgL0ksoq8ug7SFE83niGs8mkpV2o2KAergaZYhT/7lVmh/
 lTtPPosfdETi97n9H4g6PwBEyEf6a9u8jMt4abZahkXnMd/ifI9w5qP9q41z0DDk
 g2hU/xcFoIl1XHdNBDZV
 =SzSm
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.3'

Upstream version 1.9.3

# gpg: Signature made Tue 14 Jul 2015 08:20:52 PM EEST
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2015-07-14 20:21:03 +03:00
Christos Trochalakis
5ad6a9e00f Imported Upstream version 1.9.3 2015-07-14 20:20:51 +03:00
Christos Trochalakis
81f1a374e1 Sync cgi configs with upstream 2015-07-09 11:00:06 +03:00
Christos Trochalakis
5a275f8949 Update nginx-lua to v0.9.16 2015-07-01 17:15:20 +03:00
Christos Trochalakis
1979c23fea Remove XS-Testsuite header 2015-06-22 13:02:45 +03:00
Christos Trochalakis
6717510c81 Release 1.9.2-1 2015-06-22 10:16:31 +03:00
Christos Trochalakis
1715cb7c59 Add a reference for the backported lua patch to README.Modules-versions 2015-06-21 21:29:40 +03:00
Christos Trochalakis
edc91aa9dc Add thread pool support to nginx-full & nginx-extras
9531e5e7 was backported for lua-nginx-module v0.9.16rc1 breaking
compilation when thread pool was enabled.
2015-06-21 21:24:55 +03:00
Christos Trochalakis
632421e0e5 debian/rules: Add stream module for nginx-full & nginx-extras 2015-06-17 11:28:39 +03:00
Christos Trochalakis
782a6ed9fe New upstream release (1.9.2) 2015-06-17 11:27:01 +03:00
Christos Trochalakis
59054e9001 Upstream version 1.9.2
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJVgS4NAAoJEBE2JgCnR+zZ7H8P/0rZwvdLnQa/nfyJwa5AA6Pp
 kdyvEXUxkfjd0Mwp+qtqgZzw5FEuEHVVC1hYcUuyUakuCQz2YS5gClQnoFULS42S
 Bx6a75tu/Pdy8x7emmKf7DCoUkZzEDisLyhMVx0I8vIcz8xxunnMwpjitWKkfcgn
 83C6Ol0dlg4wssqYA8wH+94pWCcZL5bNXFSh/WfkWVX7f81yzaqygWpjDFQF6Nnn
 qdv2gRRQNIugmjJysLlauqmHE4ZtQWnv3tMXLsQ7KVcxVUKnjs8S3xX0GN4xyhfx
 r+LwDUcnXUK0aNLKY+/iDUv0hhTPzX2MwkmCXUX4xLkBA1LTojNHr9lGYtQUhUHV
 i7BTUgRHHhg8S9bMWXrAdVUkrNKaEb/GtztlGNuPxpm5rIkod0SIbxO1fVi6OiCY
 sJNVqshTLO5GxHzUaV2GMXXxsjs1KZKvVVgXfumzO9v/WLXxF2RFxTAUfkFG5/F/
 LuTx/LLg/hMY2hvkrjzyrSeTRrrYLLvbKbCWhqAji0kWvwQCE56NrINZXECw+ei3
 HDebBODNhV+QbCA7moq+Tlkto15KE7Y2d7Thrc9zyi/aqz3Efwo5YunwCUK5Tlxr
 P2ldhLiMV+YtNmO+v1QyUztJV3M0gH1c6MqG9S57Els9W9aIV2WxzYU/a0wR3tQ9
 eUT4kBmHqG1OpKXuuk0H
 =OUaa
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.2'

Upstream version 1.9.2

# gpg: Signature made Wed 17 Jun 2015 11:21:33 AM EEST
# gpg:                using RSA key 0x11362600A747ECD9
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <yatiohi@gmail.com>"
2015-06-17 11:21:36 +03:00
Christos Trochalakis
eac12fe22e Imported Upstream version 1.9.2 2015-06-17 11:21:32 +03:00
Christos Trochalakis
8550544cb4 initscript: Add some comments/hints 2015-06-17 11:18:53 +03:00
Christos Trochalakis
ac2d55e8d2 initscript: Fix exit status
We need to explicitly `exit $?` since we don't use `set -e`
2015-06-16 19:17:14 +03:00
Michael Lustfield
0ddf1ccfc0 Cleaning up init script and fixed a bug with exit status 2015-06-15 22:16:37 -05:00
Christos Trochalakis
f1f0066de5 Release 1.9.1-1 2015-06-12 15:44:14 +03:00
Christos Trochalakis
9844dfdd8a Update NEWS entry version 2015-06-12 15:37:51 +03:00
Christos Trochalakis
f4860d82df debian/watch: Search mainline versions for now 2015-06-12 15:02:38 +03:00
Christos Trochalakis
6a6628bd93 Switch to libgd-dev now that jessie is released 2015-06-12 15:02:36 +03:00
Christos Trochalakis
9b8414bbc8 debian/modules/nginx-lua: Backport 1.9.x compilation fix
Backport fix fixing 1.9.x compilation. The fix will be included in
v0.9.16.

f4e1311
2015-06-12 15:01:38 +03:00
Christos Trochalakis
8bea90a55d debian/rules: http_limit_zone has been renamed to http_limit_conn
Fixes building failure.
2015-06-12 15:01:38 +03:00
Christos Trochalakis
6e41b4e4c3 Build upstream manpages before shipping
Complements Mike's commit.

Manpages should be build before shipping. As a side effect, it's better
to ship them together with the nginx binary.
2015-06-12 15:01:29 +03:00
Christos Trochalakis
7d77b1195b Don't ship ngx-conf just yet
Let's test it a bit first and discuss the api it exposes.
2015-06-12 14:51:06 +03:00
Christos Trochalakis
8e7e40b988 New upstream release, 1.9.1 2015-06-11 14:44:12 +03:00
Christos Trochalakis
69ff1cde87 Upstream version 1.9.1
-----BEGIN PGP SIGNATURE-----
 
 iEYEABECAAYFAlV5dAsACgkQWxL5HyjF6E4IgQCgn6ShKr7o48ycyRUKjydZCfka
 iXwAmQFu11YqUH3Up7182bMViqu02BWY
 =+tH7
 -----END PGP SIGNATURE-----

Merge tag 'upstream/1.9.1'

Upstream version 1.9.1

# gpg: Signature made Thu 11 Jun 2015 02:42:03 PM EEST
# gpg:                using DSA key 0x5B12F91F28C5E84E
# gpg: Good signature from "Christos Trochalakis <yatiohi@ideopolis.gr>"
# gpg:                 aka "Christos Trochalakis <nodreams@ideopolis.gr>"
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: F14C 5BAF E1D7 457B 7B1A  B0FC 5B12 F91F 28C5 E84E
2015-06-11 14:42:08 +03:00
Christos Trochalakis
604af3efb5 Imported Upstream version 1.9.1 2015-06-11 14:42:02 +03:00
Christos Trochalakis
242d723c68 Fix version number 2015-06-11 14:17:21 +03:00
Michael Lustfield
2eadfe8382 Switching to Nginx maintained version of index.html. Resolves unreported bugs. 2015-06-09 09:19:37 -05:00
Michael Lustfield
0b951e301d Fix Python 3 compatibility in ngx-conf 2015-04-09 17:58:12 -05:00
Christos Trochalakis
4e2c3fec32 Imported Upstream version 1.6.3 2015-04-09 10:55:00 +03:00
Michael Lustfield
5070bfa62d Fixing a minor typo. 2015-04-08 08:28:53 -05:00
Michael Lustfield
c4cfd60f94 Adding NEWS entry because of potential issues with i386 systems. 2015-04-07 19:21:00 -05:00
Michael Lustfield
841afb8eeb Updating list of modules. Thanks Peter Wu. 2015-04-07 18:55:34 -05:00
Michael Lustfield
4d43fb0c64 Updating modules 2015-04-07 09:42:46 -05:00
Michael Lustfield
a5bbc3a1c6 Updating module list 2015-04-07 08:28:28 -05:00
Michael Lustfield
153ef732c4 Adding gunzip to -full and -extras 2015-04-07 08:23:38 -05:00
Michael Lustfield
18315ad1e2 Switch worker_processes to auto. 2015-04-01 18:24:30 -05:00
Michael Lustfield
4f31089dd2 Changing PIE stuff after talking to Thomas Ward 2015-04-01 18:00:45 -05:00
Michael Lustfield
6502d238f8 Fixing small typo 2015-03-28 10:36:44 -05:00
Michael Lustfield
4a01f57379 Replaced man page with upstream maintained version. 2015-03-28 09:50:11 -05:00
Michael Lustfield
c761600ea9 Adding python as requirement for nginx-common (ngx-conf) 2015-01-22 00:04:50 -06:00
Michael Lustfield
3e4a3d9160 Added ngx-conf configuration utility... finally. 2015-01-21 22:45:15 -06:00
Michael Lustfield
16c3177924 Updated comment about ssl_ciphers 2015-01-11 17:31:52 -06:00
Michael Lustfield
e3cd58d651 Added comment about ssl_ciphers 2015-01-11 17:31:09 -06:00
Michael Lustfield
ef4e50d155 Updated nginx-lua version. 2015-01-11 16:33:05 -06:00
Michael Lustfield
843750b958 Adding -fPIE -pie to build. 2015-01-11 16:27:24 -06:00
Michael Lustfield
8680ff9cd1 Adding upstart script 2015-01-11 16:20:46 -06:00
Michael Lustfield
b7385768b6 Adding missing files. 2015-01-11 16:05:59 -06:00
Michael Lustfield
586aebd331 Adding note for contribution. 2015-01-11 16:03:03 -06:00
Michael Lustfield
635d51ca6d Added vim syntax highlighting. 2015-01-11 16:00:56 -06:00
Michael Lustfield
2a2ad8931e Updating sample configuration - adding warning about using gzip with ssl. 2015-01-11 14:55:01 -06:00
1718 changed files with 230531 additions and 187195 deletions

10
.gitignore vendored Normal file
View file

@ -0,0 +1,10 @@
objs/*
!objs/ndk_*
.pc/
.vscode/
modules/media-framework/
modules/nginx-srt-module/
modules/nginx-vod-module/
Makefile
*.orig
*.txt

483
.hgtags Normal file
View file

@ -0,0 +1,483 @@
551102312e19b704cd22bd7254a9444b9ea14e96 release-0.1.0
23fb87bddda14ce9faec90f774085634106aded4 release-0.1.1
295d97d70c698585705345f1a8f92b02e63d6d0d release-0.1.2
ded1284520cc939ad5ae6ddab39925375e64237d release-0.1.3
0491b909ef7612d8411f1f59054186c1f3471b52 release-0.1.4
a88a3e4e158fade0aaa6f3eb25597d5ced2c1075 release-0.1.5
1f31dc6d33a3a4e65240b08066bf186df9e33b79 release-0.1.6
5aecc125bc33d81d6214c91d73eb44230a903dde release-0.1.7
bbd6b0b4a2b15ef8c8f1aaf7b027b6da47303524 release-0.1.8
2ff194b74f1e60cd04670986973e3b1a6aa3bece release-0.1.9
31ee1b50354fb829564b81a6f34e8d6ceb2d3f48 release-0.1.10
8e8f3af115b5b903b2b8f3335de971f18891246f release-0.1.11
c3c2848fc081e19aec5ffa97e468ad20ddb81df0 release-0.1.12
ad1e9ebf93bb5ae4c748d471fad2de8a0afc4d2a release-0.1.13
c5240858380136a67bec261c59b1532560b57885 release-0.1.14
fd661d14a7fad212e326a7dad6234ea0de992fbf release-0.1.15
621229427cba1b0af417ff2a101fc4f17a7d93c8 release-0.1.16
4ebe09b07e3021f1a63b459903ec58f162183b26 release-0.1.17
31ff3e943e1675a2caf745ba7a981244445d4c98 release-0.1.18
45a460f82aec80b0f61136aa09f412436d42203a release-0.1.19
0f836f0288eee4980f57736d50a7a60fa082d8e9 release-0.1.20
975f62e77f0244f1b631f740be77c72c8f2da1de release-0.1.21
fc9909c369b2b4716304ac8e38da57b8fb781211 release-0.1.22
d7c90bb5ce83dab08715e98f9c7b81c7df4b37be release-0.1.23
64d9afb209da0cd4a917202b7b77e51cc23e2229 release-0.1.24
d4ea69372b946dc4ec37fc3f5ddd93ff7c3da675 release-0.1.25
b1648294f6935e993e436fd8a68bca75c74c826d release-0.1.26
ee66921ecd47a7fa459f70f4a9d660f91f6a1b94 release-0.1.27
cd3117ad9aab9c58c6f7e677e551e1adbdeaba54 release-0.1.28
9b8c906f6e63ec2c71cecebfff35819a7d32227d release-0.1.29
c12967aadd8726daf2d85e3f3e622d89c42db176 release-0.1.30
fbbf16224844e7d560c00043e8ade8a560415bba release-0.1.31
417a087c9c4d9abb9b0b9b3f787aff515c43c035 release-0.1.32
dadfa78d227027348d7f9d1e7b7093d06ba545a0 release-0.1.33
12234c998d83bfbbaa305273b3dd1b855ca325dc release-0.1.34
6f00349b98e5f706b82115c6e4dc84456fc0d770 release-0.1.35
2019117e6b38cc3e89fe4f56a23b271479c627a6 release-0.1.36
09b42134ac0c42625340f16628e29690a04f8db5 release-0.1.37
7fa11e5c6e9612ecff5eb58274cc846ae742d1d2 release-0.1.38
e5d7d0334fdb946133c17523c198800142ac9fe9 release-0.1.39
c3bd8cdabb8f73e5600a91f198eb7df6fac65e92 release-0.1.40
d6e48c08d718bf5a9e58c20a37e8ae172bff1139 release-0.1.41
563ad09abf5042eb41e8ecaf5b4e6c9deaa42731 release-0.1.42
c9ad0d9c7d59b2fa2a5fe669f1e88debd03e6c04 release-0.1.43
371c1cee100d7a1b0e6cad4d188e05c98a641ee7 release-0.1.44
b09ee85d0ac823e36861491eedfc4dfafe282997 release-0.1.45
511a89da35ada16ae806667d699f9610b4f8499a release-0.2.0
0148586012ab3dde69b394ec5a389d44bb11c869 release-0.2.1
818fbd4750b99d14d2736212c939855a11b1f1ef release-0.2.2
e16a8d574da511622b97d6237d005f40f2cddb30 release-0.2.3
483cca23060331f2078b1c2984870d80f288ad41 release-0.2.4
45033d85b30e3f12c407b7cfc518d76e0eda0263 release-0.2.5
7bd37aef1e7e87858c12b124e253e98558889b50 release-0.2.6
ecd9c160f25b7a7075dd93383d98a0fc8d8c0a41 release-0.3.0
c1f965ef97188fd7ef81342dcf8719da18c554d2 release-0.3.1
e48ebafc69393fc94fecfdf9997c4179fd1ce473 release-0.3.2
9c2f3ed7a24711d3b42b124d5f831155c8beff95 release-0.3.3
7c1369d37c7eb0017c28ebcaa0778046f5aafdcc release-0.3.4
1af2fcb3be8a63796b6b23a488049c92a6bc12f4 release-0.3.5
174f1e853e1e831b01000aeccfd06a9c8d4d95a2 release-0.3.6
458b6c3fea65a894c99dd429334a77bb164c7e83 release-0.3.7
58475592100cb792c125101b6d2d898f5adada30 release-0.3.8
fcd6fc7ff7f9b132c35193d834e6e7d05026c716 release-0.3.9
4d9ea73a627a914d364e83e20c58eb1283f4031d release-0.3.10
4c5c2c55975c1152b5ca5d5d55b32d4dd7945f7a release-0.3.11
326634fb9d47912ad94221dc2f8fa4bec424d40c release-0.3.12
4e296b7d25bf62390ca2afb599e395426b94f785 release-0.3.13
401de5a43ba5a8acdb9c52465193c0ea7354afe7 release-0.3.14
284cc140593bb16ac71094acd509ab415ff4837d release-0.3.15
d4e858a5751a7fd08e64586795ed7d336011fbc0 release-0.3.16
8c0cdd81580eb76d774cfc5724de68e7e5cbbdc2 release-0.3.17
425af804d968f30eeff01e33b808bc2e8c467f2c release-0.3.18
ebc68d8ca4962fe3531b7e13444f7ac4395d9c6e release-0.3.19
9262f520ce214d3d5fd7c842891519336ef85ca6 release-0.3.20
869b6444d2341a587183859d4df736c7f3381169 release-0.3.21
77f77f53214a0e3a68fef8226c15532b54f2c365 release-0.3.22
858700ae46b453ea111b966b6d03f2c21ddcb94e release-0.3.23
5dac8c7fb71b86aafed8ea352305e7f85759f72e release-0.3.24
77cdfe394a94a625955e7585e09983b3af9b889b release-0.3.25
608cf78b24ef7baaf9705e4715a361f26bb16ba9 release-0.3.26
3f8a2132b93d66ac19bec006205a304a68524a0b release-0.3.27
c73c5c58c619c22dd3a5a26c91bb0567a62c6930 release-0.3.28
5ef026a2ac7481f04154f29ab49377bf99aaf96f release-0.3.29
51b27717f140b71a2e9158807d79da17c888ce4c release-0.3.30
7a16e281c01f1c7ab3b79c64b43ddb754ea7935e release-0.3.31
93e85a79757c49d502e42a1cb8264a0f133b0b00 release-0.3.32
0216fd1471f386168545f772836156761eddec08 release-0.3.33
fbed40ce7cb4fd7203fecc22a617b9ce5b950fb3 release-0.3.34
387450de0b4d21652f0b6242a5e26a31e3be8d8c release-0.3.35
65bf042c0b4f39f18a235464c52f980e9fa24f6b release-0.3.36
5d2b8078c1c2593b95ec50acfeeafbefa65be344 release-0.3.37
f971949ffb585d400e0f15508a56232a0f897c80 release-0.3.38
18268abd340cb351e0c01b9c44e9f8cc05492364 release-0.3.39
e60fe4cf1d4ea3c34be8c49047c712c6d46c1727 release-0.3.40
715d243270806d38be776fc3ed826d97514a73d6 release-0.3.41
5e8fb59c18c19347a5607fb5af075fe1e2925b9a release-0.3.42
947c6fd27699e0199249ad592151f844c8a900b0 release-0.3.43
4946078f0a79e6cc952d3e410813aac9b8bda650 release-0.3.44
95d7da23ea5315a6e9255ce036ed2c51f091f180 release-0.3.45
1e720b0be7ecd92358da8a60944669fa493e78cd release-0.3.46
39b7d7b33c918d8f4abc86c4075052d8c19da3c7 release-0.3.47
7cbef16c71a1f43a07f8141f02e0135c775f0f5b release-0.3.48
4c8cd5ae5cc100add5c08c252d991b82b1838c6b release-0.3.49
400711951595aef7cd2ef865b84b31df52b15782 release-0.3.50
649c9063d0fda23620eaeaf0f6393be0a672ebe7 release-0.3.51
9079ee4735aefa98165bb2cb26dee4f58d58c1d7 release-0.3.52
6d5c1535bb9dcd891c5963971f767421a334a728 release-0.3.53
5fd7a5e990477189c40718c8c3e01002a2c20b81 release-0.3.54
63a820b0bc6ca629c8e45a069b52d622ddc27a2d release-0.3.55
562806624c4afb1687cba83bc1852f5d0fecbac3 release-0.3.56
cec32b3753acf610ac1a6227d14032c1a89d6319 release-0.3.57
b80f94fa2197b99db5e033fec92e0426d1fe5026 release-0.3.58
e924670896abe2769ea0fcfd2058b405bed8e8ec release-0.3.59
921a7ce4baf42fd1091b7e40f89c858c6b23053e release-0.3.60
df95dcff753a6dc5e94257302aea02c18c7a7c87 release-0.3.61
7e24168b0853ee7e46c9c7b943ef077dc64f17f5 release-0.4.0
8183d4ba50f8500465efb27e66dd23f98775dd21 release-0.4.1
610267a772c7bf911b499d37f66c21ce8f2ebaf7 release-0.4.2
39dd0b045441e21512e0a6061a03d0df63414d8b release-0.4.3
5e42c1615f4de0079bd4d8913886d588ce6a295d release-0.4.4
40266f92b829a870808b3d4ee54c8fccdecbd2d6 release-0.4.5
56e33c6efee7ff63cdc52bd1cf172bde195079df release-0.4.6
119bad43bfd493400c57a05848eada2c35a46810 release-0.4.7
0f404f82a1343cb4e4b277a44e3417385798e5e5 release-0.4.8
d24a717314365c857b9f283d6072c2a427d5e342 release-0.4.9
d6f0a00015fdef861fd67fb583b9690638650656 release-0.4.10
e372368dadd7b2ecd0182b2f1b11db86fc27b2c3 release-0.4.11
fd57967d850d2361072c72562d1ed03598473478 release-0.4.12
979045fdcbd20cf7188545c1c589ff240251f890 release-0.4.13
93c94cfa9f78f0a5740595dde4466ec4fba664f8 release-0.4.14
589ee12e8d7c2ae5e4f4676bcc7a1279a76f9e8e release-0.5.0
13416db8a807e5acb4021bc3c581203de57e2f50 release-0.5.1
06c58edc88831fb31c492a8eddcf2c6056567f18 release-0.5.2
e2ac5fa41bcba14adbbb722d45c083c30c07bb5c release-0.5.3
393dbc659df15ccd411680b5c1ce87ed86d4c144 release-0.5.4
38cc7bd8e04f2c519fd4526c12841a876be353cb release-0.5.5
6d1fcec2ea79101c756316c015f72e75f601a5ab release-0.5.6
aed8a9de62456c4b360358bc112ccca32ce02e8d release-0.5.7
7642f45af67d805452df2667486201c36efaff85 release-0.5.8
779216610662c3a459935d506f66a9b16b9c9576 release-0.5.9
9eeb585454f3daa30cf768e95c088a092fe229b9 release-0.5.10
bb491c8197e38ca10ae63b1f1ecb36bf6fdaf950 release-0.5.11
613369e08810f36bbcc9734ef1059a03ccbf5e16 release-0.5.12
bd796ef5c9c9dd34bfac20261b98685e0410122a release-0.5.13
8a730c49f906d783b47e4b44d735efd083936c64 release-0.5.14
cb447039152d85e9145139ff2575a6199b9af9d4 release-0.5.15
64854c7c95d04f838585ca08492823000503fa61 release-0.5.16
d1ffcf84ea1244f659145c36ff28de6fcdf528b2 release-0.5.17
796a6e30ca9d29504195c10210dbc8deced0ae83 release-0.5.18
1f81c711d2a039e1f93b9b515065a2235372d455 release-0.5.19
8e8f6082654aedb4438c8fca408cfc316c7c5a2a release-0.5.20
e9551132f7dd40da5719dd5bcf924c86f1436f85 release-0.5.21
533a252896c4d1cff1586ae42129d610f7497811 release-0.5.22
f461a49b6c747e0b67f721f2be172902afea5528 release-0.5.23
2d5ef73671f690b65bf6d9e22e7155f68f484d5a release-0.5.24
77bf42576050862c268e267ef3e508b145845a25 release-0.5.25
2aefee4d4ed69eb7567680bf27a2efd212232488 release-0.6.0
7ac0fe9bec9a2b5f8e191f6fdd6922bfd916a6cb release-0.6.1
4882735ebc71eeec0fbfe645bdfdb31306872d82 release-0.6.2
b94731c73d0922f472ff938b9d252ba29020f20c release-0.6.3
13e649b813d6ccba5db33a61e08ebe09d683cd5b release-0.6.4
80de622646b0059fd4c553eff47c391bf7503b89 release-0.6.5
3b05edb2619d5935023b979ee7a9611b61b6c9e5 release-0.6.6
1dcfd375100c4479611f71efb99271d0a3059215 release-0.6.7
0228185d4c5772947b842e856ad74cf7f7fd52f3 release-0.6.8
d1879c52326ecac45c713203670f54220879911e release-0.6.9
5a80c6ccbe2ad24fa3d4ff6f9fe4a2b07408d19d release-0.6.10
f88a8b0b39601b19cd740e4db614ab0b5b874686 release-0.6.11
5557460a7247a1602ae96efd1d0ccf781344cb58 release-0.6.12
451b02cc770a794cd41363461b446948ae1d8bc8 release-0.6.13
537b6ef014c4a133e0ab0b7dc817508e0647e315 release-0.6.14
5e68764f0d6e91a983170fa806e7450a9e9b33fe release-0.6.15
158aa4e8cc46fcf9504a61469d22daf3476b17bf release-0.6.16
d8fcca555542619228d9fab89e1665b993f8c3ee release-0.6.17
60707ebc037086cf004736a0d4979e2a608da033 release-0.6.18
3c2a99d3a71af846855be35e62edb9a12f363f44 release-0.6.19
3e0a27f9358ffc1b5249e0ea2311ce7da5c8967e release-0.6.20
143f4d65b1c875d6563ccb7f653d9157afc72194 release-0.6.21
95e6160d2b7d0af8ffd1b95a23cadadf8f0b3f6d release-0.6.22
69a03d5e3b6e6660079ef1ef172db7ac08d8370e release-0.6.23
3e2a58fb48f1e1a99ebf851e0d47a7034c52ae22 release-0.6.24
3b8607c05a8bebcfa59235c2126a70d737f0ccf5 release-0.6.25
07ad5b2606614c4be4ee720c46cf4af126059d31 release-0.6.26
be531addfabe5214f409d457140c1038af10d199 release-0.6.27
58f05255d3a345d04baef5cff0ca1ae0ac7ecebb release-0.6.28
eb2bd21dc8d03f6c94016f04ffb9adaf83a2b606 release-0.6.29
55408deb3cd171efa9b81d23d7a1dd1ccde0b839 release-0.6.30
d4288915bba73c4c3c9cf5d39d34e86879eb2b45 release-0.6.31
0a189588830b8629c4dfea68feb49af36b59e4a9 release-0.7.0
6ab27a06f3346cf9ec8737f5dbcc82dd4031e30f release-0.7.1
a07e258cef3b0a0b6e76a6ff4ba4651c5facc85a release-0.7.2
9992c4583513d2804fc2e7fec860fbc7ab043009 release-0.7.3
4dc24d50230fbadfc037a414a86390db2de69dd2 release-0.7.4
9527137b4354a648a229c7169850c7c65272c00d release-0.7.5
c2f0f7cf306f302254beae512bda18713922375c release-0.7.6
bbcf6d75556fdcee8bd4aba8f6c27014be9920ee release-0.7.7
43bde71f0bbe5a33b161760d7f9f980d50386597 release-0.7.8
769f0dd7081e9011394f264aa22aa66fd79730d8 release-0.7.9
511edfa732da637f5f0c9476335df7dca994706d release-0.7.10
0e7023bf6b2461309c29885935443449a41be807 release-0.7.11
9ad1bd2b21d93902863807528e426862aedee737 release-0.7.12
d90ea21e24ea35379aef50c5d70564158e110a15 release-0.7.13
c07d2d20d95c83d804079bbdcecbce4a0c8282f0 release-0.7.14
0cd7bb051f67eac2b179fb9f9cc988b9ba18ed76 release-0.7.15
eab2e87deba73ae6abd9cc740e8d4365bed96322 release-0.7.16
91d7a9eb8ade90e9421d7b1e3c2e47a6bc427876 release-0.7.17
fc10f7b5cb1305fb930f8ac40b46882d0828d61e release-0.7.18
9dba9779e37e5969a2d408c792084fd7acfec062 release-0.7.19
61838d1bcbddc7bc4dd9f30d535573a6fddca8f9 release-0.7.20
5f665d0fa6a5f6e748157f2ccbc445b2db8125d0 release-0.7.21
24763afa5efe91e54f00b2ae5b87666eb6c08c3b release-0.7.22
0562fb355a25266150cbe8c8d4e00f55e3654df3 release-0.7.23
19c452ecd083550816873a8a31eb3ed9879085e6 release-0.7.24
46b68faf271d6fdcaaf3ad2c69f6167ea9e9fa28 release-0.7.25
d04bfca0c7e3ae2e4422bc1d383553139d6f0a19 release-0.7.26
9425d9c7f8ead95b00a3929a9a5e487e0e3c8499 release-0.7.27
fbc3e7e8b3ee756568a875f87d8a954a2f9d3bf6 release-0.7.28
5176dfdf153fc785b18604197d58806f919829ad release-0.7.29
87e07ccdf0a4ec53458d9d7a4ea66e1239910968 release-0.7.30
9fddd7e1a7a27f8463867f41a461aad57df461b2 release-0.7.31
780b2ba1ec6daf6e3773774e26b05b9ff0d5483e release-0.7.32
83027471a25385b1c671968be761e9aa7a8591a7 release-0.7.33
1e9a362c3dcee221ca6e34308c483ed93867aca2 release-0.7.34
c7ee9e15717b54ead5f4a554686e74abe66c6b07 release-0.7.35
b84548abe9b9d4f4e203f848696e52c8c82c308f release-0.7.36
3286f0bab8e77dbc7ebb370b1dc379592ccff123 release-0.7.37
11a4e2ed5b166b9c9f119171aa399a9e3aa4684a release-0.7.38
f822655d4120629977794c32d3b969343b6c30db release-0.7.39
8a350e49d2b6751296db6d8e27277ccf63ed412a release-0.7.40
c4a56c197eeafd71fc1caef7a9d890a330e3c23d release-0.7.41
a9575a57a5443df39611774cf3840e9088132b0e release-0.7.42
7503d95d6eadad14c28b2db183ba09848265274b release-0.7.43
9be652e9114435fc6f1fdec84c0458d56702db91 release-0.7.44
797e070d480a34b31ddac0d364784773f1bbbcf9 release-0.7.45
9b5037e7ec7db25875c40f9d1cf20a853388b124 release-0.7.46
d1d0e6d7ff0ca3c0dd1be1ef1cfff2e3fd0b4e1c release-0.7.47
9816fb28eda599bfd53940e6d3b6617d1ecb6323 release-0.7.48
452b9d09df8e3f2fb04b2a33d04d2f3a6436eb34 release-0.7.49
e4350efa7cf7a0e868c2236a1137de8a33bd8ec6 release-0.7.50
f51f2bec766c8b6d7e1799d904f18f8ea631bd44 release-0.7.51
18e39e566781c9c187e2eb62bebd9d669d68f08c release-0.7.52
b073eaa1dcea296a3488b83d455fab6621a73932 release-0.7.53
01c6fe6c2a55998434cd3b05dd10ca487ac3fb6c release-0.7.54
3ed9377e686f2521e6ec15873084381033fb490d release-0.7.55
a1e44954549c35023b409f728c678be8bf898148 release-0.7.56
fbb1918a85e38a7becdb1a001dbaf5933f23a919 release-0.7.57
87f4a49a9cc34a5b11c8784cc5ea89e97b4b2bd8 release-0.7.58
0c22cb4862c8beb4ee1b9e4627125162a29a5304 release-0.7.59
82d56c2425ef857cd430b8530a3f9e1127145a67 release-0.8.0
f4acb784b53cd952559567971b97dde1e818a2b6 release-0.8.1
b3503597c1a0f0f378afdc5e5e5b85e2c095a4be release-0.8.2
c98da980514a02ba81c421b25bf91803ffffddf3 release-0.8.3
db34ec0c53c4b9dec12ffdf70caf89a325ab9577 release-0.8.4
0914802433b8678ba2cdf91280766f00f4b9b76e release-0.8.5
ff52ee9e6422f3759f43a442b7ba615595b3a3d4 release-0.8.6
7607237b4829fff1f60999f4663c50ed9d5182f7 release-0.8.7
1cef1807bc12cb05ac52fb0e7a0f111d3760b569 release-0.8.8
a40f8475511d74a468ade29c1505e8986600d7a3 release-0.8.9
2d9faf2260df6c3e5d4aa1781493c31f27a557d0 release-0.8.10
d0d61c32331a6505381b5218318f7b69db167ca8 release-0.8.11
ca7a1c6c798a7eb5b294d4ac3179ec87ecf297d3 release-0.8.12
81c8277cd8ed55febcb2dd9d9213076f6c0ccb09 release-0.8.13
3089486a8dc5844b5b6e9f78d536b4b26f7ffa16 release-0.8.14
d364c2c12dd9723a2dfac3f096f5e55d4cfe6838 release-0.8.15
52163a1027c3efd6b4c461b60a2ca6266c23e193 release-0.8.16
06564e9a2d9ec5852132c212e85eda0bf1300307 release-0.8.17
7aaa959da85e09e29bcac3b1cadec35b0a25b64d release-0.8.18
4bc73c644329a510da4e96b7241b80ead7772f83 release-0.8.19
ea3d168fb99c32a5c3545717ecc61e85a375e5dd release-0.8.20
27951ca037e63dae45ff5b6279124c224ae1255a release-0.8.21
d56c8b5df517c2bf6e7bc2827b8bf3e08cda90e1 release-0.8.22
3c6ac062b379b126212cbb27e98a3c8275ef381a release-0.8.23
89b9173476de14688b1418fbf7df10f91d1719ef release-0.8.24
aa550cb4159ae0d566006e091fb1c7a888771050 release-0.8.25
06ce92293f6a65651b08c466f90f55bd69984b98 release-0.8.26
ea50b0d79ef1d7d901cd0e4dcd7373447849d719 release-0.8.27
e68b1c35cad86105ff1c5b240f53442f4c36356e release-0.8.28
78d3582a30afe63fc0adb17c3ac8891a64e47146 release-0.8.29
9852c5965a3292a1b6127dbb4da9fce4912d898a release-0.8.30
4f84115914490e572bcbee5069157b7334df2744 release-0.8.31
59dee6f7f3afeb1fad6ed5983756e48c81ad2a5c release-0.8.32
a4456378d234c07038456cf32bfe3c651f1d5e82 release-0.8.33
21cb50799a20575a42f9733342d37a426f79db4d release-0.8.34
7cb3cb8d78ef7ae63561733ed91fd07933896bc8 release-0.8.35
aed68639d4eb6afe944b7fb50499c16f7f3f503c release-0.8.36
265b7fd2ae21c75bbffa5115b83a0123d6c4acb4 release-0.8.37
fa5f1ca353c0c5aa5415f51d72fd7bbcc02d1ed7 release-0.8.38
af10bf9d4c6532850aa1f70cdf7504bd109b284c release-0.8.39
4846ec9f83cb5bc4c8519d5641b35fb9b190430c release-0.8.40
718b4cb3faf7efe4e0648140f064bf7a92c3f7e8 release-0.8.41
b5a3065749093282ddd19845e0b77ffc2e54333e release-0.8.42
34df9fb22fed415cdad52def04095dc6d4b48222 release-0.8.43
00ec8cd76fb89af27363b76c40d9f88bf4679c3b release-0.8.44
e16dd52a0d226c23dcae9a11252564a04753bbed release-0.8.45
f034d9173df0a433e0bbcf5974f12ea9eb9076c0 release-0.8.46
4434dc967087315efcd0658206a67fe6c85528f3 release-0.8.47
0b65c962e0cd6783a854877b52c903cb058eec8c release-0.8.48
a2b7e94b9807e981866bf07e37b715847d1b7120 release-0.8.49
e7bdb8edc1bab2bc352a9fb6ce765c46575c35bf release-0.8.50
21dacebd12f65cb57ceb8d2688db5b07fad6e06d release-0.8.51
67dd7533b99c8945b5b8b5b393504d4e003a1c50 release-0.8.52
010468d890dbac33a4cae6dfb2017db70721b2fe release-0.8.53
62b599022a2fa625b526c2ad1711dc6db7d66786 release-0.9.0
71281dd73b17a0ead5535d531afaee098da723cb release-0.9.1
16cff36b0e49fc9fdeee13b2e92690286bcc1b3d release-0.9.2
b7b306325972661117694879d3e22faf4cf0df32 release-0.9.3
fe671505a8ea86a76f0358b3ec4de84a9037ac2b release-0.9.4
70542931bc5436d1bbd38f152245d93ac063968d release-0.9.5
27e2f3b7a3db1819c5d0ba28327ceaba84a13c4e release-0.9.6
657d05d63915ce2f6c4d763091059f5f85bb10e5 release-0.9.7
e0fd9f36005923b8f98d1ba1ea583cb7625f318f release-1.0.0
f8f89eb4e0c27e857ec517d893d4f9a454985084 release-1.0.1
c50df367648e53d55e80b60a447c9c66caa0d326 release-1.0.2
80d586db316512b5a9d39f00fe185f7f91523f52 release-1.0.3
c9c2805ac9245cc48ce6efeba2b4a444f859d6aa release-1.0.4
fa2c37b1122c2c983b6e91d1188e387d72dde4d6 release-1.0.5
f31aea5b06654c9163be5acd6d9b7aaf0fdf6b33 release-1.1.0
44bf95f670656fae01ccb266b3863843ea13d324 release-1.1.1
da1289482a143dfa016769649bdff636c26f53c8 release-1.1.2
bac8ba08a6570bac2ecd3bf2ad64b0ac3030c903 release-1.1.3
911060bc8221d4113a693ae97952a1fa88663ca8 release-1.1.4
e47531dfabbf8e5f8b8aff9ff353642ea4aa7abb release-1.1.5
f9ddecfe331462f870a95e4c1c3ba1bb8f19f2d3 release-1.1.6
378c297bb7459fb99aa9c77decac0d35391a3932 release-1.1.7
71600ce67510af093d4bc0117a78b3b4678c6b3a release-1.1.8
482d7d907f1ab92b78084d8b8631ed0eb7dd08f7 release-1.1.9
c7e65deabf0db5109e8d8f6cf64cd3fb7633a3d1 release-1.1.10
9590f0cf5aab8e6e0b0c8ae59c70187b2b97d886 release-1.1.11
ade8fc136430cfc04a8d0885c757968b0987d56c release-1.1.12
6a6836e65827fd3cb10a406e7bbbe36e0dad8736 release-1.1.13
6845f4ac909233f5a08ed8a51de137713a888328 release-1.1.14
2397e9c72f1bc5eac67006e12ad3e33e0ea9ba74 release-1.1.15
7b7c49639a7bceecabf4963c60b26b65a77d6ce0 release-1.1.16
f7e1113a9a1648cad122543e7080e895cf2d88f4 release-1.1.17
2b22743c3079b41233ded0fc35af8aa89bcfab91 release-1.1.18
0f0b425659e0b26f5bc8ea14a42dbf34de2eaba6 release-1.1.19
f582d662cc408eb7a132c21f4b298b71d0701abb release-1.2.0
9ee68d629722f583d43d92271f2eb84281afc630 release-1.3.0
61b6a3438afef630774e568eefd89c53e3b93287 release-1.3.1
7ccd50a0a455f2f2d3b241f376e1193ad956196d release-1.2.1
0000000000000000000000000000000000000000 release-1.2.1
50107e2d96bbfc2c59e46f889b1a5f68dd10cf19 release-1.3.2
2c5e1e88c8cf710caf551c5c67eba00443601efe release-1.3.3
a43447fb82aa03eabcd85352758ae14606a84d35 release-1.3.4
90f3b4ea7992a7bf9385851a3e77173363091eea release-1.3.5
3aeb14f88daeb973e4708310daa3dc68ac1200f7 release-1.3.6
dafd375f1c882b15fa4a9b7aa7c801c55082395e release-1.3.7
ab7ce0eb4cf78a656750ab1d8e55ef61f7e535ec release-1.3.8
1b1a9337a7399ad3cdc5e3a2f9fbaaec990271d5 release-1.3.9
2c053b2572694eb9cd4aed26a498b6cb1f51bbcc release-1.3.10
36409ac209872ce53019f084e4e07467c5d9d25e release-1.3.11
560dc55e90c13860a79d8f3e0d67a81c7b0257bb release-1.3.12
dc195ffe0965b2b9072f8e213fe74ecce38f6773 release-1.3.13
e04428778567dd4de329bbbe97ad653e22801612 release-1.3.14
cd84e467c72967b9f5fb4d96bfc708c93edeb634 release-1.3.15
23159600bdea695db8f9d2890aaf73424303e49c release-1.3.16
7809529022b83157067e7d1e2fb65d57db5f4d99 release-1.4.0
48a84bc3ff074a65a63e353b9796ff2b14239699 release-1.5.0
99eed1a88fc33f32d66e2ec913874dfef3e12fcc release-1.5.1
5bdca4812974011731e5719a6c398b54f14a6d61 release-1.5.2
644a079526295aca11c52c46cb81e3754e6ad4ad release-1.5.3
376a5e7694004048a9d073e4feb81bb54ee3ba91 release-1.5.4
60e0409b9ec7ee194c6d8102f0656598cc4a6cfe release-1.5.5
70c5cd3a61cb476c2afb3a61826e59c7cda0b7a7 release-1.5.6
9ba2542d75bf62a3972278c63561fc2ef5ec573a release-1.5.7
eaa76f24975948b0ce8be01838d949122d44ed67 release-1.5.8
5a1759f33b7fa6270e1617c08d7e655b7b127f26 release-1.5.9
b798fc020e3a84ef68e6c9f47865a319c826d33c release-1.5.10
f995a10d4c7e9a817157a6ce7b753297ad32897e release-1.5.11
97b47d95e4449cbde976657cf8cbbc118351ffe0 release-1.5.12
fd722b890eabc600394349730a093f50dac31639 release-1.5.13
d161d68df8be32e5cbf72b07db1a707714827803 release-1.7.0
0351a6d89c3dbcc7a76295024ba6b70e27b9a497 release-1.7.1
0bd223a546192fdf2e862f33938f4ec2a3b5b283 release-1.7.2
fe7cd01828d5ca7491059f0690bb4453645eb28b release-1.7.3
cbb146b120296852e781079d5138b04495bab6df release-1.7.4
fe129aa02db9001d220f1db7c3c056f79482c111 release-1.7.5
a8d111bb68847f61d682a3c8792fecb2e52efa2c release-1.7.6
6d2fbc30f8a7f70136cf08f32d5ff3179d524873 release-1.7.7
d5ea659b8bab2d6402a2266efa691f705e84001e release-1.7.8
34b201c1abd1e2d4faeae4650a21574771a03c0e release-1.7.9
860cfbcc4606ee36d898a9cd0c5ae8858db984d6 release-1.7.10
2b3b737b5456c05cd63d3d834f4fb4d3776953d0 release-1.7.11
3ef00a71f56420a9c3e9cec311c9a2109a015d67 release-1.7.12
53d850fe292f157d2fb999c52788ec1dc53c91ed release-1.9.0
884a967c369f73ab16ea859670d690fb094d3850 release-1.9.1
3a32d6e7404a79a0973bcd8d0b83181c5bf66074 release-1.9.2
e27a215601292872f545a733859e06d01af1017d release-1.9.3
5cb7e2eed2031e32d2e5422caf9402758c38a6ad release-1.9.4
942475e10cb47654205ede7ccbe7d568698e665b release-1.9.5
b78018cfaa2f0ec20494fccb16252daa87c48a31 release-1.9.6
54117529e40b988590ea2d38aae909b0b191663f release-1.9.7
1bdc497c81607d854e3edf8b9a3be324c3d136b6 release-1.9.8
ef107f3ddc237a3007e2769ec04adde0dcf627fa release-1.9.9
be00ca08e41a69e585b6aff70a725ed6c9e1a876 release-1.9.10
fe66cff450a95beed36a2515210eb2d7ef62c9d3 release-1.9.11
ead3907d74f90a14d1646f1b2b56ba01d3d11702 release-1.9.12
5936b7ed929237f1a73b467f662611cdc0309e51 release-1.9.13
4106db71cbcb9c8274700199ac17e520902c6c0f release-1.9.14
13070ecfda67397985f0e986eb9c42ecb46d05b5 release-1.9.15
271ee30c6791847980cd139d31807541f5e569bf release-1.11.0
cb783d9cc19761e14e1285d91c38f4b84d0b8756 release-1.11.1
4d3b3a13a8cf5fc3351a7f167d1c13325e00f21c release-1.11.2
b83a067949a3384a49fd3d943eb8d0997b31f87b release-1.11.3
953512ca02c6f63b4fcbbc3e10d0d9835896bf99 release-1.11.4
5253015a339aaca0a3111473d3e931b6d4752393 release-1.11.5
5e371426b3bcba4312ce08606194b89b758927d1 release-1.11.6
5c8f60faf33ca8926473d2da27b4c3c417bd4630 release-1.11.7
4591da489a30f790def29bc5987f43409b503cae release-1.11.8
20a45c768e5ed26b740679d0e22045c98727c3cc release-1.11.9
1ad0999a7ded3d4fb01c7acf8ff57c80b643da7e release-1.11.10
d8b321a876d6254e9e98795e3b194ef053290354 release-1.11.11
7f394e433f0003222aa6531931ecc0b24740d5e4 release-1.11.12
3d0e8655f897959e48cc74e87670bb5492a58871 release-1.11.13
3671096a45bce570a2afa20b9faf42c7fb0f7e66 release-1.13.0
539f7893ecb96bee60965528c8958d7eb2f1ce6b release-1.13.1
5be2b25bdc65775a85f18f68a4be4f58c7384415 release-1.13.2
8457ce87640f9bfe6221c4ac4466ced20e03bebe release-1.13.3
bbc642c813c829963ce8197c0ca237ab7601f3d4 release-1.13.4
0d45b4cf7c2e4e626a5a16e1fe604402ace1cea5 release-1.13.5
f87da7d9ca02b8ced4caa6c5eb9013ccd47b0117 release-1.13.6
47cca243d0ed39bf5dcb9859184affc958b79b6f release-1.13.7
20ca4bcff108d3e66977f4d97508637093492287 release-1.13.8
fb1212c7eca4c5328fe17d6cd95b010c67336aac release-1.13.9
31c929e16910c38492581ef474e72fa67c28f124 release-1.13.10
64179f242cb55fc206bca59de9bfdc4cf5ebcec7 release-1.13.11
051e5fa03b92b8a564f6b12debd483d267391e82 release-1.13.12
990b3e885636d763b97ed02d0d2cfc161a4e0c09 release-1.15.0
4189160cb946bb38d0bc0a452b5eb4cdd8979fb5 release-1.15.1
b234199c7ed8a156a6bb98f7ff58302c857c954f release-1.15.2
28b3e17ca7eba1e6a0891afde0e4bc5bcc99c861 release-1.15.3
49d49835653857daa418e68d6cbfed4958c78fca release-1.15.4
f062e43d74fc2578bb100a9e82a953efa1eb9e4e release-1.15.5
2351853ce6867b6166823bdf94333c0a76633c0a release-1.15.6
051a039ce1c7e09144de4a4846669ec7116cecea release-1.15.7
ee551e3f6dba336c0d875e266d7d55385f379b42 release-1.15.8
d2fd76709909767fc727a5b4affcf1dc9ca488a7 release-1.15.9
75f5c7f628411c79c7044102049f7ab4f7a246e7 release-1.15.10
5155d0296a5ef9841f035920527ffdb771076b44 release-1.15.11
0130ca3d58437b3c7c707cdddd813d530c68da9a release-1.15.12
054c1c46395caff79bb4caf16f40b331f71bb6dd release-1.17.0
7816bd7dabf6ee86c53c073b90a7143161546e06 release-1.17.1
2fc9f853a6b7cd29dc84e0af2ed3cf78e0da6ca8 release-1.17.2
ed4303aa1b31a9aad5440640c0840d9d0af45fed release-1.17.3
ce2ced3856909f36f8130c99eaa4dbdbae636ddc release-1.17.4
9af0dddbddb2c368bfedd2801bc100ffad01e19b release-1.17.5
de68d0d94320cbf033599c6f3ca37e5335c67fd7 release-1.17.6
e56295fe0ea76bf53b06bffa77a2d3a9a335cb8c release-1.17.7
fdacd273711ddf20f778c1fb91529ab53979a454 release-1.17.8
5e8d52bca714d4b85284ddb649d1ba4a3ca978a8 release-1.17.9
c44970de01474f6f3e01b0adea85ec1d03e3a5f2 release-1.17.10
cbe6ba650211541310618849168631ce0b788f35 release-1.19.0
062920e2f3bf871ef7a3d8496edec1b3065faf80 release-1.19.1
a7b46539f507e6c64efa0efda69ad60b6f4ffbce release-1.19.2
3cbc2602325f0ac08917a4397d76f5155c34b7b1 release-1.19.3
dc0cc425fa63a80315f6efb68697cadb6626cdf2 release-1.19.4
8e5b068f761cd512d10c9671fbde0b568c1fd08b release-1.19.5
f618488eb769e0ed74ef0d93cd118d2ad79ef94d release-1.19.6
3fa6e2095a7a51acc630517e1c27a7b7ac41f7b3 release-1.19.7
8c65d21464aaa5923775f80c32474adc7a320068 release-1.19.8
da571b8eaf8f30f36c43b3c9b25e01e31f47149c release-1.19.9
ffcbb9980ee2bad27b4d7b1cd680b14ff47b29aa release-1.19.10
df34dcc9ac072ffd0945e5a1f3eb7987e8275375 release-1.21.0
a68ac0677f8553b1f84d357bc9da114731ab5f47 release-1.21.1
bfbc52374adcbf2f9060afd62de940f6fab3bba5 release-1.21.2
2217a9c1d0b86026f22700b3c089545db1964f55 release-1.21.3
39be8a682c58308d9399cddd57e37f9fdb7bdf3e release-1.21.4
d986378168fd4d70e0121cabac274c560cca9bdf release-1.21.5
714eb4b2c09e712fb2572a2164ce2bf67638ccac release-1.21.6
5da2c0902e8e2aa4534008a582a60c61c135960e release-1.23.0
a63d0a70afea96813ba6667997bc7d68b5863f0d release-1.23.1
aa901551a7ebad1e8b0f8c11cb44e3424ba29707 release-1.23.2
ff3afd1ce6a6b65057741df442adfaa71a0e2588 release-1.23.3
ac779115ed6ee4f3039e9aea414a54e560450ee2 release-1.23.4
12dcf92b0c2c68552398f19644ce3104459807d7 release-1.25.0
f8134640e8615448205785cf00b0bc810489b495 release-1.25.1
1d839f05409d1a50d0f15a2bf36547001f99ae40 release-1.25.2
294a3d07234f8f65d7b0e0b0e2c5b05c12c5da0a release-1.25.3
173a0a7dbce569adbb70257c6ec4f0f6bc585009 release-1.25.4
8618e4d900cc71082fbe7dc72af087937d64faf5 release-1.25.5
a58202a8c41bf0bd97eef1b946e13105a105520d release-1.26.0
a63c124e34bcf2d1d1feb8d40ff075103b967c4c release-1.26.1
e4c5da06073ca24e2ffc5c8f8b8d7833a926356f release-1.26.2

2557
CHANGES

File diff suppressed because it is too large Load diff

2608
CHANGES.ru

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
/*
* Copyright (C) 2002-2014 Igor Sysoev
* Copyright (C) 2011-2014 Nginx, Inc.
* Copyright (C) 2002-2021 Igor Sysoev
* Copyright (C) 2011-2024 Nginx, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without

View file

@ -12,4 +12,3 @@ CC_TEST_FLAGS="-Ae"
PCRE_OPT="$PCRE_OPT -Ae"
ZLIB_OPT="$ZLIB_OPT -Ae"
MD5_OPT="$MD5_OPT -Ae"

View file

@ -62,7 +62,6 @@ ngx_include_opt="-I"
ngx_objout="-o"
ngx_binout="-e"
ngx_objext="obj"
ngx_binext=".exe"
ngx_long_start='@&&|
'

View file

@ -5,8 +5,9 @@
# clang
NGX_CLANG_VER=`$CC -v 2>&1 | grep '\(clang\|LLVM\) version' 2>&1 \
| sed -e 's/^.* version \(.*\)/\1/'`
NGX_CLANG_VER=`$CC -v 2>&1 | grep 'version' 2>&1 \
| sed -n -e 's/^.*clang version \(.*\)/\1/p' \
-e 's/^.*LLVM version \(.*\)/\1/p'`
echo " + clang version: $NGX_CLANG_VER"
@ -66,12 +67,6 @@ else
PCRE_OPT="$PCRE_OPT -pipe"
fi
if [ ".$MD5_OPT" = "." ]; then
MD5_OPT="-O2 -pipe $CPU_OPT"
else
MD5_OPT="$MD5_OPT -pipe"
fi
if [ ".$ZLIB_OPT" = "." ]; then
ZLIB_OPT="-O2 -pipe $CPU_OPT"
else
@ -88,6 +83,11 @@ CFLAGS="$CFLAGS -Wconditional-uninitialized"
# we have a lot of unused function arguments
CFLAGS="$CFLAGS -Wno-unused-parameter"
# deprecated system OpenSSL library on OS X
if [ "$NGX_SYSTEM" = "Darwin" ]; then
CFLAGS="$CFLAGS -Wno-deprecated-declarations"
fi
# stop on warning
CFLAGS="$CFLAGS -Werror"

View file

@ -5,12 +5,17 @@
LINK="\$(CC)"
MAIN_LINK=
MODULE_LINK="-shared"
ngx_include_opt="-I "
ngx_compile_opt="-c"
ngx_pic_opt="-fPIC"
ngx_objout="-o "
ngx_binout="-o "
ngx_objext="o"
ngx_binext=
ngx_modext=".so"
ngx_long_start=
ngx_long_end=
@ -45,6 +50,9 @@ if test -n "$CFLAGS"; then
sunc)
MAIN_LINK=
MODULE_LINK="-G"
case "$NGX_MACHINE" in
i86pc)
@ -109,7 +117,7 @@ else
. auto/cc/acc
;;
msvc*)
msvc)
# MSVC++ 6.0 SP2, MSVC++ Toolkit 2003
. auto/cc/msvc
@ -156,22 +164,40 @@ if [ "$NGX_PLATFORM" != win32 ]; then
fi
ngx_feature="gcc builtin atomic operations"
ngx_feature_name=NGX_HAVE_GCC_ATOMIC
ngx_feature_run=yes
ngx_feature="-Wl,-E switch"
ngx_feature_name=
ngx_feature_run=no
ngx_feature_incs=
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="long n = 0;
if (!__sync_bool_compare_and_swap(&n, 0, 1))
return 1;
if (__sync_fetch_and_add(&n, 1) != 1)
return 1;
if (n != 2)
return 1;
__sync_synchronize();"
ngx_feature_libs=-Wl,-E
ngx_feature_test=
. auto/feature
if [ $ngx_found = yes ]; then
MAIN_LINK="-Wl,-E"
fi
if [ "$NGX_CC_NAME" = "sunc" ]; then
echo "checking for gcc builtin atomic operations ... disabled"
else
ngx_feature="gcc builtin atomic operations"
ngx_feature_name=NGX_HAVE_GCC_ATOMIC
ngx_feature_run=yes
ngx_feature_incs=
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="long n = 0;
if (!__sync_bool_compare_and_swap(&n, 0, 1))
return 1;
if (__sync_fetch_and_add(&n, 1) != 1)
return 1;
if (n != 2)
return 1;
__sync_synchronize();"
. auto/feature
fi
if [ "$NGX_CC_NAME" = "ccc" ]; then
echo "checking for C99 variadic macros ... disabled"
@ -187,7 +213,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
var(0, buf, \"%d\", 1);
if (buf[0] != '1') return 1"
. auto/feature
fi
fi
ngx_feature="gcc variadic macros"
@ -203,6 +229,16 @@ if [ "$NGX_PLATFORM" != win32 ]; then
. auto/feature
ngx_feature="gcc builtin 64 bit byteswap"
ngx_feature_name="NGX_HAVE_GCC_BSWAP64"
ngx_feature_run=no
ngx_feature_incs=
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="if (__builtin_bswap64(0)) return 1"
. auto/feature
# ngx_feature="inline"
# ngx_feature_name=
# ngx_feature_run=no

View file

@ -128,12 +128,6 @@ else
PCRE_OPT="$PCRE_OPT $PIPE"
fi
if [ ".$MD5_OPT" = "." ]; then
MD5_OPT="-O2 -fomit-frame-pointer $PIPE $CPU_OPT"
else
MD5_OPT="$MD5_OPT $PIPE"
fi
if [ ".$ZLIB_OPT" = "." ]; then
ZLIB_OPT="-O2 -fomit-frame-pointer $PIPE $CPU_OPT"
else
@ -151,18 +145,22 @@ CFLAGS="$CFLAGS -Wall -Wpointer-arith"
#CFLAGS="$CFLAGS -Winline"
#CFLAGS="$CFLAGS -Wmissing-prototypes"
case "$NGX_GCC_VER" in
3.* | 4.* )
2.*)
# we have a lot of the unused function arguments
CFLAGS="$CFLAGS -Wno-unused-parameter"
# 4.2.1 shows the warning in wrong places
#CFLAGS="$CFLAGS -Wunreachable-code"
CFLAGS="$CFLAGS -Wno-unused"
;;
*)
# we have a lot of the unused function arguments
CFLAGS="$CFLAGS -Wno-unused"
CFLAGS="$CFLAGS -Wno-unused-parameter"
# 4.2.1 shows the warning in wrong places
#CFLAGS="$CFLAGS -Wunreachable-code"
# deprecated system OpenSSL library on OS X
if [ "$NGX_SYSTEM" = "Darwin" ]; then
CFLAGS="$CFLAGS -Wno-deprecated-declarations"
fi
;;
esac

View file

@ -43,10 +43,6 @@ if [ ".$PCRE_OPT" = "." ]; then
PCRE_OPT="-O $CPU_OPT"
fi
if [ ".$MD5_OPT" = "." ]; then
MD5_OPT="-O $CPU_OPT"
fi
if [ ".$ZLIB_OPT" = "." ]; then
ZLIB_OPT="-O $CPU_OPT"
fi
@ -89,7 +85,7 @@ CFLAGS="$CFLAGS -wd1419"
case "$NGX_ICC_VER" in
9.*)
# "cc" clobber ignored, warnings for Liunx's htonl()/htons()
# "cc" clobber ignored, warnings for Linux's htonl()/htons()
CFLAGS="$CFLAGS -wd1469"
# explicit conversion of a 64-bit integral type to a smaller
# integral type
@ -103,7 +99,7 @@ case "$NGX_ICC_VER" in
;;
8.*)
# "cc" clobber ignored, warnings for Liunx's htonl()/htons()
# "cc" clobber ignored, warnings for Linux's htonl()/htons()
CFLAGS="$CFLAGS -wd1469"
# floating-point equality and inequality comparisons are unreliable,
# warning on SvTRUE()

View file

@ -3,9 +3,39 @@
# Copyright (C) Nginx, Inc.
# MSVC 6.0 SP2
# MSVC Toolkit 2003 (7.1)
# MSVC 2005 Express Edition SP1 (8.0)
# MSVC 6.0 SP2 cl 12.00
# MSVC Toolkit 2003 (7.1) cl 13.10
# MSVC 2005 Express Edition SP1 (8.0) cl 14.00
# MSVC 2008 Express Edition (9.0) cl 15.00
# MSVC 2010 (10.0) cl 16.00
# MSVC 2015 (14.0) cl 19.00
NGX_MSVC_VER=`$NGX_WINE $CC 2>&1 | grep 'C/C++.* [0-9][0-9]*\.[0-9]' 2>&1 \
| sed -e 's/^.* \([0-9][0-9]*\.[0-9].*\)/\1/'`
echo " + cl version: $NGX_MSVC_VER"
have=NGX_COMPILER value="\"cl $NGX_MSVC_VER\"" . auto/define
ngx_msvc_ver=`echo $NGX_MSVC_VER | sed -e 's/^\([0-9]*\).*/\1/'`
# detect x64 builds
case "$NGX_MSVC_VER" in
*x64)
NGX_MACHINE=amd64
;;
*)
NGX_MACHINE=i386
;;
esac
# optimizations
@ -90,17 +120,17 @@ CORE_LIBS="$CORE_LIBS kernel32.lib user32.lib"
#CORE_LINK="$CORE_LINK -subsystem:windows -entry:mainCRTStartup"
# debug
# msvc8 under Wine issues
# Program database manager mismatch; please check your installation
if [ $NGX_CC_NAME != msvc8 ]; then
CFLAGS="$CFLAGS -Zi"
# msvc under Wine issues
# C1902: Program database manager mismatch; please check your installation
if [ -z "$NGX_WINE" ]; then
CFLAGS="$CFLAGS -Zi -Fd$NGX_OBJS/nginx.pdb"
CORE_LINK="$CORE_LINK -debug"
fi
# MSVC 2005 supports C99 variadic macros
if [ $NGX_CC_NAME = msvc8 ]; then
have=NGX_HAVE_C99_VARIADIC_MACROS . auto/have
if [ "$ngx_msvc_ver" -ge 14 ]; then
have=NGX_HAVE_C99_VARIADIC_MACROS . auto/have
fi
@ -118,10 +148,15 @@ NGX_RCC="rc -fo$NGX_RES \$(CORE_INCS) $NGX_WIN32_RC"
CORE_LINK="$NGX_RES $CORE_LINK"
# dynamic modules
#MAIN_LINK="-link -def:$NGX_OBJS/nginx.def"
#MODULE_LINK="-LD $NGX_OBJS/nginx.lib"
ngx_pic_opt=
ngx_objout="-Fo"
ngx_binout="-Fe"
ngx_objext="obj"
ngx_binext=".exe"
ngx_long_start='@<<
'

View file

@ -25,31 +25,8 @@ fi
if [ "$CC" = cl ]; then
if `$NGX_WINE $CC -v 2>&1 \
| grep '^Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16' \
>/dev/null 2>&1`; then
NGX_CC_NAME=msvc10
echo " + using Microsoft Visual C++ 10 compiler"
elif `$NGX_WINE $CC -v 2>&1 \
| grep '^Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14' \
>/dev/null 2>&1`; then
NGX_CC_NAME=msvc8
echo " + using Microsoft Visual C++ 8 compiler"
elif `$NGX_WINE $CC -v 2>&1 \
| grep '^Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13' \
>/dev/null 2>&1`; then
NGX_CC_NAME=msvc7
echo " + using Microsoft Visual C++ 7 compiler"
else
NGX_CC_NAME=msvc
echo " + using Microsoft Visual C++ compiler"
fi
NGX_CC_NAME=msvc
echo " + using Microsoft Visual C++ compiler"
elif [ "$CC" = wcl386 ]; then
NGX_CC_NAME=owc
@ -67,7 +44,11 @@ elif `$CC -v 2>&1 | grep 'gcc version' >/dev/null 2>&1`; then
NGX_CC_NAME=gcc
echo " + using GNU C compiler"
elif `$CC -v 2>&1 | grep '\(clang\|LLVM\) version' >/dev/null 2>&1`; then
elif `$CC -v 2>&1 | grep 'clang version' >/dev/null 2>&1`; then
NGX_CC_NAME=clang
echo " + using Clang C compiler"
elif `$CC -v 2>&1 | grep 'LLVM version' >/dev/null 2>&1`; then
NGX_CC_NAME=clang
echo " + using Clang C compiler"

View file

@ -84,7 +84,6 @@ ngx_include_opt="-i="
ngx_objout="-fo"
ngx_binout="-fe="
ngx_objext="obj"
ngx_binext=".exe"
ngx_regex_dirsep='\\'
ngx_dirsep="\\"

View file

@ -8,7 +8,10 @@
# Sun C 5.9 SunOS_i386 2007/05/03 Sun Studio 12
# Sun C 5.9 SunOS_sparc 2007/05/03
# Sun C 5.10 SunOS_i386 2009/06/03 Sun Studio 12.1
# Sun C 5.11 SunOS_i386 2010/08/13 Sun Studio 12.2
# Sun C 5.11 SunOS_i386 2010/08/13 Oracle Solaris Studio 12.2
# Sun C 5.12 SunOS_i386 2011/11/16 Oracle Solaris Studio 12.3
# Sun C 5.13 SunOS_i386 2014/10/20 Oracle Solaris Studio 12.4
# Sun C 5.14 SunOS_i386 2016/05/31 Oracle Developer Studio 12.5
NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \
| sed -e 's/^.* Sun C \(.*\)/\1/'`
@ -20,7 +23,10 @@ have=NGX_COMPILER value="\"Sun C $NGX_SUNC_VER\"" . auto/define
cat << END > $NGX_AUTOTEST.c
int main() { printf("%d", __SUNPRO_C); }
int main(void) {
printf("%d", __SUNPRO_C);
return 0;
}
END
@ -57,6 +63,9 @@ case "$NGX_MACHINE" in
esac
MAIN_LINK=
MODULE_LINK="-G"
# optimizations
@ -142,10 +151,6 @@ if [ ".$PCRE_OPT" = "." ]; then
PCRE_OPT="$ngx_fast $IPO $CPU_OPT"
fi
if [ ".$MD5_OPT" = "." ]; then
MD5_OPT="$ngx_fast $IPO $CPU_OPT"
fi
if [ ".$ZLIB_OPT" = "." ]; then
ZLIB_OPT="$ngx_fast $IPO $CPU_OPT"
fi

View file

@ -4,13 +4,18 @@
echo $ngx_n "checking for system byte ordering ...$ngx_c"
echo >> $NGX_ERR
echo "checking for system byte ordering" >> $NGX_ERR
cat << END >> $NGX_AUTOCONF_ERR
----------------------------------------
checking for system byte ordering
END
cat << END > $NGX_AUTOTEST.c
int main() {
int main(void) {
int i = 0x11223344;
char *p;

View file

@ -31,7 +31,7 @@ cat << END > $NGX_AUTOTEST.c
$NGX_INCLUDE_UNISTD_H
$ngx_feature_incs
int main() {
int main(void) {
$ngx_feature_test;
return 0;
}

View file

@ -20,7 +20,7 @@ cat << END > $NGX_AUTOTEST.c
$NGX_INCLUDE_SYS_PARAM_H
#include <$ngx_include>
int main() {
int main(void) {
return 0;
}
@ -45,9 +45,6 @@ if [ -x $NGX_AUTOTEST ]; then
eval "NGX_INCLUDE_$ngx_name='#include <$ngx_include>'"
#STUB
eval "NGX_$ngx_name='#include <$ngx_include>'"
else
echo " not found"

View file

@ -48,4 +48,6 @@ default: build
clean:
rm -rf Makefile $NGX_OBJS
.PHONY: default clean
END

View file

@ -3,7 +3,7 @@
# Copyright (C) Nginx, Inc.
if [ $USE_PERL = YES ]; then
if [ $USE_PERL != NO ]; then
cat << END >> $NGX_MAKEFILE
@ -20,16 +20,24 @@ case ".$NGX_SBIN_PATH" in
./*)
;;
.)
NGX_SBIN_PATH=$NGX_PREFIX/sbin/nginx
;;
*)
NGX_SBIN_PATH=$NGX_PREFIX/$NGX_SBIN_PATH
;;
esac
case ".$NGX_MODULES_PATH" in
./*)
;;
*)
NGX_MODULES_PATH=$NGX_PREFIX/$NGX_MODULES_PATH
;;
esac
NGX_MODULES_PATH=`dirname $NGX_MODULES_PATH/.`
case ".$NGX_CONF_PATH" in
./*)
;;
@ -96,58 +104,57 @@ $NGX_OBJS/nginx.8: $NGX_MAN $NGX_AUTO_CONFIG_H
-e "s|%%ERROR_LOG_PATH%%|${NGX_ERROR_LOG_PATH:-stderr}|" \\
< $NGX_MAN > \$@
install: $NGX_OBJS${ngx_dirsep}nginx${ngx_binext} \
$NGX_INSTALL_PERL_MODULES
install: build $NGX_INSTALL_PERL_MODULES
test -d '\$(DESTDIR)$NGX_PREFIX' || mkdir -p '\$(DESTDIR)$NGX_PREFIX'
test -d '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`' \
test -d '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`' \\
|| mkdir -p '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`'
test ! -f '\$(DESTDIR)$NGX_SBIN_PATH' \
|| mv '\$(DESTDIR)$NGX_SBIN_PATH' \
test ! -f '\$(DESTDIR)$NGX_SBIN_PATH' \\
|| mv '\$(DESTDIR)$NGX_SBIN_PATH' \\
'\$(DESTDIR)$NGX_SBIN_PATH.old'
cp $NGX_OBJS/nginx '\$(DESTDIR)$NGX_SBIN_PATH'
cp $NGX_OBJS/nginx$ngx_binext '\$(DESTDIR)$NGX_SBIN_PATH'
test -d '\$(DESTDIR)$NGX_CONF_PREFIX' \
test -d '\$(DESTDIR)$NGX_CONF_PREFIX' \\
|| mkdir -p '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/koi-win '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/koi-utf '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/win-utf '\$(DESTDIR)$NGX_CONF_PREFIX'
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types' \
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types' \\
|| cp conf/mime.types '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/mime.types '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types.default'
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params' \
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params' \\
|| cp conf/fastcgi_params '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/fastcgi_params \
cp conf/fastcgi_params \\
'\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params.default'
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf' \
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf' \\
|| cp conf/fastcgi.conf '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/fastcgi.conf '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf.default'
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params' \
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params' \\
|| cp conf/uwsgi_params '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/uwsgi_params \
cp conf/uwsgi_params \\
'\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params.default'
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params' \
test -f '\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params' \\
|| cp conf/scgi_params '\$(DESTDIR)$NGX_CONF_PREFIX'
cp conf/scgi_params \
cp conf/scgi_params \\
'\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params.default'
test -f '\$(DESTDIR)$NGX_CONF_PATH' \
test -f '\$(DESTDIR)$NGX_CONF_PATH' \\
|| cp conf/nginx.conf '\$(DESTDIR)$NGX_CONF_PATH'
cp conf/nginx.conf '\$(DESTDIR)$NGX_CONF_PREFIX/nginx.conf.default'
test -d '\$(DESTDIR)`dirname "$NGX_PID_PATH"`' \
test -d '\$(DESTDIR)`dirname "$NGX_PID_PATH"`' \\
|| mkdir -p '\$(DESTDIR)`dirname "$NGX_PID_PATH"`'
test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' || \
mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`'
test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' \\
|| mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`'
test -d '\$(DESTDIR)$NGX_PREFIX/html' \
test -d '\$(DESTDIR)$NGX_PREFIX/html' \\
|| cp -R $NGX_HTML '\$(DESTDIR)$NGX_PREFIX'
END
@ -155,24 +162,51 @@ END
if test -n "$NGX_ERROR_LOG_PATH"; then
cat << END >> $NGX_MAKEFILE
test -d '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`' || \
mkdir -p '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`'
test -d '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`' \\
|| mkdir -p '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`'
END
fi
if test -n "$DYNAMIC_MODULES"; then
cat << END >> $NGX_MAKEFILE
test -d '\$(DESTDIR)$NGX_MODULES_PATH' \\
|| mkdir -p '\$(DESTDIR)$NGX_MODULES_PATH'
END
fi
for ngx_module in $DYNAMIC_MODULES
do
ngx_module=$ngx_module$ngx_modext
cat << END >> $NGX_MAKEFILE
test ! -f '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module' \\
|| mv '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module' \\
'\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module.old'
cp $NGX_OBJS/$ngx_module '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module'
END
done
# create Makefile
cat << END >> Makefile
build:
\$(MAKE) -f $NGX_MAKEFILE
\$(MAKE) -f $NGX_MAKEFILE manpage
install:
\$(MAKE) -f $NGX_MAKEFILE install
modules:
\$(MAKE) -f $NGX_MAKEFILE modules
upgrade:
$NGX_SBIN_PATH -t
@ -181,4 +215,6 @@ upgrade:
test -f $NGX_PID_PATH.oldbin
kill -QUIT \`cat $NGX_PID_PATH.oldbin\`
.PHONY: build install modules upgrade
END

View file

@ -7,7 +7,7 @@ if [ $USE_PCRE = YES -o $PCRE != NONE ]; then
. auto/lib/pcre/conf
else
if [ $USE_PCRE = DISABLED -a $HTTP_REWRITE = YES ]; then
if [ $USE_PCRE = DISABLED -a $HTTP = YES -a $HTTP_REWRITE = YES ]; then
cat << END
@ -25,52 +25,23 @@ if [ $USE_OPENSSL = YES ]; then
. auto/lib/openssl/conf
fi
if [ $USE_MD5 = YES ]; then
if [ $USE_OPENSSL = YES ]; then
have=NGX_HAVE_OPENSSL_MD5_H . auto/have
have=NGX_OPENSSL_MD5 . auto/have
have=NGX_HAVE_MD5 . auto/have
MD5=YES
MD5_LIB=OpenSSL
else
. auto/lib/md5/conf
fi
fi
if [ $USE_SHA1 = YES ]; then
if [ $USE_OPENSSL = YES ]; then
have=NGX_HAVE_OPENSSL_SHA1_H . auto/have
have=NGX_HAVE_SHA1 . auto/have
SHA1=YES
SHA1_LIB=OpenSSL
else
. auto/lib/sha1/conf
fi
fi
if [ $USE_ZLIB = YES ]; then
. auto/lib/zlib/conf
fi
if [ $USE_LIBXSLT = YES ]; then
if [ $USE_LIBXSLT != NO ]; then
. auto/lib/libxslt/conf
fi
if [ $USE_LIBGD = YES ]; then
if [ $USE_LIBGD != NO ]; then
. auto/lib/libgd/conf
fi
if [ $USE_PERL = YES ]; then
if [ $USE_PERL != NO ]; then
. auto/lib/perl/conf
fi
if [ $HTTP_GEOIP = YES ]; then
if [ $USE_GEOIP != NO ]; then
. auto/lib/geoip/conf
fi

View file

@ -64,23 +64,43 @@ if [ $ngx_found = no ]; then
fi
if [ $ngx_found = no ]; then
# Homebrew on Apple Silicon
ngx_feature="GeoIP library in /opt/homebrew/"
ngx_feature_path="/opt/homebrew/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/homebrew/lib -L/opt/homebrew/lib -lGeoIP"
else
ngx_feature_libs="-L/opt/homebrew/lib -lGeoIP"
fi
. auto/feature
fi
if [ $ngx_found = yes ]; then
CORE_INCS="$CORE_INCS $ngx_feature_path"
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
if [ $NGX_IPV6 = YES ]; then
ngx_feature="GeoIP IPv6 support"
ngx_feature_name="NGX_HAVE_GEOIP_V6"
ngx_feature_run=no
ngx_feature_incs="#include <stdio.h>
#include <GeoIP.h>"
#ngx_feature_path=
#ngx_feature_libs=
ngx_feature_test="printf(\"%d\", GEOIP_CITY_EDITION_REV0_V6);"
. auto/feature
if [ $USE_GEOIP = YES ]; then
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
fi
NGX_LIB_GEOIP=$ngx_feature_libs
ngx_feature="GeoIP IPv6 support"
ngx_feature_name="NGX_HAVE_GEOIP_V6"
ngx_feature_run=no
ngx_feature_incs="#include <stdio.h>
#include <GeoIP.h>"
#ngx_feature_path=
#ngx_feature_libs=
ngx_feature_test="printf(\"%d\", GEOIP_CITY_EDITION_REV0_V6);"
. auto/feature
else
cat << END

View file

@ -9,7 +9,8 @@
ngx_feature_incs=
ngx_feature_path=
ngx_feature_libs="-lprofiler"
ngx_feature_test="ProfilerStop()"
ngx_feature_test="void ProfilerStop(void);
ProfilerStop()"
. auto/feature
@ -45,6 +46,22 @@ if [ $ngx_found = no ]; then
fi
if [ $ngx_found = no ]; then
# Homebrew on Apple Silicon
ngx_feature="Google perftools in /opt/homebrew/"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/homebrew/lib -L/opt/homebrew/lib -lprofiler"
else
ngx_feature_libs="-L/opt/homebrew/lib -lprofiler"
fi
. auto/feature
fi
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
@ -52,7 +69,7 @@ else
cat << END
$0: error: the Google perftool module requires the Google perftools
$0: error: the Google perftools module requires the Google perftools
library. You can either do not enable the module or install the library.
END

View file

@ -7,8 +7,8 @@ if [ $NGX_LIBATOMIC != YES ]; then
have=NGX_HAVE_LIBATOMIC . auto/have
CORE_INCS="$CORE_INCS $NGX_LIBATOMIC/src"
LINK_DEPS="$LINK_DEPS $NGX_LIBATOMIC/src/libatomic_ops.a"
CORE_LIBS="$CORE_LIBS $NGX_LIBATOMIC/src/libatomic_ops.a"
LINK_DEPS="$LINK_DEPS $NGX_LIBATOMIC/build/lib/libatomic_ops.a"
CORE_LIBS="$CORE_LIBS $NGX_LIBATOMIC/build/lib/libatomic_ops.a"
else
@ -19,7 +19,7 @@ else
#include <atomic_ops.h>"
ngx_feature_path=
ngx_feature_libs="-latomic_ops"
ngx_feature_test="long n = 0;
ngx_feature_test="AO_t n = 0;
if (!AO_compare_and_swap(&n, 0, 1))
return 1;
if (AO_fetch_and_add(&n, 1) != 1)

View file

@ -3,14 +3,19 @@
# Copyright (C) Nginx, Inc.
case $NGX_LIBATOMIC in
/*) ngx_prefix="$NGX_LIBATOMIC/build" ;;
*) ngx_prefix="$PWD/$NGX_LIBATOMIC/build" ;;
esac
cat << END >> $NGX_MAKEFILE
$NGX_LIBATOMIC/src/libatomic_ops.a: $NGX_LIBATOMIC/Makefile
cd $NGX_LIBATOMIC && \$(MAKE)
$NGX_LIBATOMIC/build/lib/libatomic_ops.a: $NGX_LIBATOMIC/Makefile
cd $NGX_LIBATOMIC && \$(MAKE) && \$(MAKE) install
$NGX_LIBATOMIC/Makefile: $NGX_MAKEFILE
cd $NGX_LIBATOMIC \\
&& if [ -f Makefile ]; then \$(MAKE) distclean; fi \\
&& ./configure
&& ./configure --prefix=$ngx_prefix
END

View file

@ -9,7 +9,8 @@
ngx_feature_incs="#include <gd.h>"
ngx_feature_path=
ngx_feature_libs="-lgd"
ngx_feature_test="gdImagePtr img = gdImageCreateFromGifPtr(1, NULL);"
ngx_feature_test="gdImagePtr img = gdImageCreateFromGifPtr(1, NULL);
(void) img"
. auto/feature
@ -64,10 +65,38 @@ if [ $ngx_found = no ]; then
fi
if [ $ngx_found = no ]; then
# Homebrew on Apple Silicon
ngx_feature="GD library in /opt/homebrew/"
ngx_feature_path="/opt/homebrew/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/homebrew/lib -L/opt/homebrew/lib -lgd"
else
ngx_feature_libs="-L/opt/homebrew/lib -lgd"
fi
. auto/feature
fi
if [ $ngx_found = yes ]; then
CORE_INCS="$CORE_INCS $ngx_feature_path"
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
if [ $USE_LIBGD = YES ]; then
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
fi
NGX_LIB_LIBGD=$ngx_feature_libs
ngx_feature="GD WebP support"
ngx_feature_name="NGX_HAVE_GD_WEBP"
ngx_feature_test="gdImagePtr img = gdImageCreateFromWebpPtr(1, NULL);
(void) img"
. auto/feature
else

View file

@ -16,8 +16,8 @@
ngx_feature_libs="-lxml2 -lxslt"
ngx_feature_test="xmlParserCtxtPtr ctxt = NULL;
xsltStylesheetPtr sheet = NULL;
xmlDocPtr doc;
doc = xmlParseChunk(ctxt, NULL, 0, 0);
xmlDocPtr doc = NULL;
xmlParseChunk(ctxt, NULL, 0, 0);
xsltApplyStylesheet(sheet, doc, NULL);"
. auto/feature
@ -76,7 +76,12 @@ fi
if [ $ngx_found = yes ]; then
CORE_INCS="$CORE_INCS $ngx_feature_path"
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
if [ $USE_LIBXSLT = YES ]; then
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
fi
NGX_LIB_LIBXSLT=$ngx_feature_libs
else
@ -152,5 +157,9 @@ fi
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS -lexslt"
if [ $USE_LIBXSLT = YES ]; then
CORE_LIBS="$CORE_LIBS -lexslt"
fi
NGX_LIB_LIBXSLT="$NGX_LIB_LIBXSLT -lexslt"
fi

View file

@ -7,14 +7,6 @@ if [ $PCRE != NONE -a $PCRE != NO -a $PCRE != YES ]; then
. auto/lib/pcre/make
fi
if [ $MD5 != NONE -a $MD5 != NO -a $MD5 != YES ]; then
. auto/lib/md5/make
fi
if [ $SHA1 != NONE -a $SHA1 != NO -a $SHA1 != YES ]; then
. auto/lib/sha1/make
fi
if [ $OPENSSL != NONE -a $OPENSSL != NO -a $OPENSSL != YES ]; then
. auto/lib/openssl/make
fi
@ -27,6 +19,6 @@ if [ $NGX_LIBATOMIC != NO -a $NGX_LIBATOMIC != YES ]; then
. auto/lib/libatomic/make
fi
if [ $USE_PERL = YES ]; then
if [ $USE_PERL != NO ]; then
. auto/lib/perl/make
fi

View file

@ -1,103 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
if [ $MD5 != NONE ]; then
if grep MD5_Init $MD5/md5.h 2>&1 >/dev/null; then
# OpenSSL md5
OPENSSL_MD5=YES
have=NGX_HAVE_OPENSSL_MD5 . auto/have
have=NGX_OPENSSL_MD5 . auto/have
else
# rsaref md5
OPENSSL_MD5=NO
fi
have=NGX_HAVE_MD5 . auto/have
CORE_INCS="$CORE_INCS $MD5"
case "$NGX_CC_NAME" in
msvc* | owc* | bcc)
LINK_DEPS="$LINK_DEPS $MD5/md5.lib"
CORE_LIBS="$CORE_LIBS $MD5/md5.lib"
;;
icc*)
LINK_DEPS="$LINK_DEPS $MD5/libmd5.a"
# to allow -ipo optimization we link with the *.o but not library
CORE_LIBS="$CORE_LIBS $MD5/md5_dgst.o"
if [ $MD5_ASM = YES ]; then
CORE_LIBS="$CORE_LIBS $MD5/asm/mx86-elf.o"
fi
;;
*)
LINK_DEPS="$LINK_DEPS $MD5/libmd5.a"
CORE_LIBS="$CORE_LIBS $MD5/libmd5.a"
#CORE_LIBS="$CORE_LIBS -L $MD5 -lmd5"
;;
esac
else
if [ "$NGX_PLATFORM" != win32 ]; then
MD5=NO
# FreeBSD, Solaris 10
ngx_feature="md5 in system md library"
ngx_feature_name=NGX_HAVE_MD5
ngx_feature_run=no
ngx_feature_incs="#include <md5.h>"
ngx_feature_path=
ngx_feature_libs="-lmd"
ngx_feature_test="MD5_CTX md5; MD5Init(&md5)"
. auto/feature
ngx_md5_lib="system md"
if [ $ngx_found = no ]; then
# Solaris 8/9
ngx_feature="md5 in system md5 library"
ngx_feature_libs="-lmd5"
. auto/feature
ngx_md5_lib="system md5"
fi
if [ $ngx_found = no ]; then
# OpenSSL crypto library
ngx_feature="md5 in system OpenSSL crypto library"
ngx_feature_name="NGX_OPENSSL_MD5"
ngx_feature_incs="#include <openssl/md5.h>"
ngx_feature_libs="-lcrypto"
ngx_feature_test="MD5_CTX md5; MD5_Init(&md5)"
. auto/feature
ngx_md5_lib="system crypto"
if [ $ngx_found = yes ]; then
have=NGX_HAVE_OPENSSL_MD5_H . auto/have
have=NGX_HAVE_MD5 . auto/have
fi
fi
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
MD5=YES
MD5_LIB=$ngx_md5_lib
fi
fi
fi

View file

@ -1,96 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
case "$NGX_CC_NAME" in
msvc*)
ngx_makefile=makefile.msvc
ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC MD5_ASM=$MD5_ASM"
ngx_md5="MD5=\"$MD5\""
;;
owc*)
ngx_makefile=makefile.owc
ngx_opt="CPU_OPT=\"$CPU_OPT\""
ngx_md5=`echo MD5=\"$MD5\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
bcc)
ngx_makefile=makefile.bcc
ngx_opt="-DCPU_OPT=\"$CPU_OPT\" -DMD5_ASM=$MD5_ASM"
ngx_md5=`echo \-DMD5=\"$MD5\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
esac
done=NO
case "$NGX_PLATFORM" in
win32)
cat << END >> $NGX_MAKEFILE
`echo "$MD5/md5.lib: $NGX_MAKEFILE" | sed -e "s/\//$ngx_regex_dirsep/g"`
\$(MAKE) -f auto/lib/md5/$ngx_makefile $ngx_opt $ngx_md5
END
done=YES
;;
SunOS:*:i86pc)
if [ $MD5_ASM = YES ]; then
cat << END >> $NGX_MAKEFILE
$MD5/libmd5.a: $NGX_MAKEFILE
cd $MD5 \\
&& \$(MAKE) CFLAGS="$MD5_OPT -DSOL -DMD5_ASM -DL_ENDIAN" \\
CC="\$(CC)" CPP="\$(CPP)" \\
MD5_ASM_OBJ=asm/mx86-sol.o clean libmd5.a
END
done=YES
fi
;;
# FreeBSD: i386
# Linux: i686
*:i386 | *:i686)
if [ $MD5_ASM = YES ]; then
cat << END >> $NGX_MAKEFILE
$MD5/libmd5.a: $NGX_MAKEFILE
cd $MD5 \\
&& \$(MAKE) CFLAGS="$MD5_OPT -DELF -DMD5_ASM -DL_ENDIAN" \\
CC="\$(CC)" CPP="\$(CPP)" \\
MD5_ASM_OBJ=asm/mx86-elf.o clean libmd5.a
END
done=YES
fi
;;
esac
if [ $done = NO ]; then
cat << END >> $NGX_MAKEFILE
$MD5/libmd5.a: $NGX_MAKEFILE
cd $MD5 \\
&& \$(MAKE) CFLAGS="$MD5_OPT" \\
CC="\$(CC)" MD5_ASM_OBJ= clean libmd5.a
END
fi

View file

@ -1,22 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
CFLAGS = -q -O2 -tWM $(CPU_OPT) -DL_ENDIAN
!if "$(MD5_ASM)" == "YES"
md5.lib:
cd $(MD5)
bcc32 -c $(CFLAGS) -DMD5_ASM md5_dgst.c
tlib md5.lib +md5_dgst.obj +"asm\m-win32.obj"
!else
md5.lib:
cd $(MD5)
bcc32 -c $(CFLAGS) md5_dgst.c
tlib md5.lib +md5_dgst.obj
!endif

View file

@ -1,22 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
CFLAGS = -nologo -O2 -Ob1 -Oi -Gs $(LIBC) $(CPU_OPT) -D L_ENDIAN
!IF "$(MD5_ASM)" == "YES"
md5.lib:
cd $(MD5)
cl -c $(CFLAGS) -D MD5_ASM md5_dgst.c
link -lib -out:md5.lib md5_dgst.obj asm/m-win32.obj
!ELSE
md5.lib:
cd $(MD5)
cl -c $(CFLAGS) md5_dgst.c
link -lib -out:md5.lib md5_dgst.obj
!ENDIF

View file

@ -1,11 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
CFLAGS = -zq -bt=nt -bm -ot -op -oi -oe -s $(CPU_OPT)
md5.lib:
cd $(MD5)
wcl386 -c $(CFLAGS) -dL_ENDIAN md5_dgst.c
wlib -n md5.lib md5_dgst.obj

View file

@ -5,18 +5,33 @@
if [ $OPENSSL != NONE ]; then
have=NGX_OPENSSL . auto/have
have=NGX_SSL . auto/have
have=NGX_OPENSSL_NO_CONFIG . auto/have
if [ $USE_OPENSSL_QUIC = YES ]; then
have=NGX_QUIC . auto/have
have=NGX_QUIC_OPENSSL_COMPAT . auto/have
fi
case "$CC" in
cl | bcc32)
have=NGX_OPENSSL . auto/have
have=NGX_SSL . auto/have
CFLAGS="$CFLAGS -DNO_SYS_TYPES_H"
CORE_INCS="$CORE_INCS $OPENSSL/openssl/include"
CORE_DEPS="$CORE_DEPS $OPENSSL/openssl/include/openssl/ssl.h"
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/ssleay32.lib"
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libeay32.lib"
if [ -f $OPENSSL/ms/do_ms.bat ]; then
# before OpenSSL 1.1.0
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/ssleay32.lib"
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libeay32.lib"
else
# OpenSSL 1.1.0+
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libssl.lib"
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libcrypto.lib"
fi
# libeay32.lib requires gdi32.lib
CORE_LIBS="$CORE_LIBS gdi32.lib"
@ -25,14 +40,12 @@ if [ $OPENSSL != NONE ]; then
;;
*)
have=NGX_OPENSSL . auto/have
have=NGX_SSL . auto/have
CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include"
CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"
CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"
CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"
CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
CORE_LIBS="$CORE_LIBS $NGX_LIBPTHREAD"
if [ "$NGX_PLATFORM" = win32 ]; then
CORE_LIBS="$CORE_LIBS -lgdi32 -lcrypt32 -lws2_32"
@ -51,14 +64,116 @@ else
ngx_feature_run=no
ngx_feature_incs="#include <openssl/ssl.h>"
ngx_feature_path=
ngx_feature_libs="-lssl -lcrypto"
ngx_feature_test="SSL_library_init()"
ngx_feature_libs="-lssl -lcrypto $NGX_LIBDL $NGX_LIBPTHREAD"
ngx_feature_test="SSL_CTX_set_options(NULL, 0)"
. auto/feature
if [ $ngx_found = no ]; then
# FreeBSD port
ngx_feature="OpenSSL library in /usr/local/"
ngx_feature_path="/usr/local/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lssl -lcrypto"
else
ngx_feature_libs="-L/usr/local/lib -lssl -lcrypto"
fi
ngx_feature_libs="$ngx_feature_libs $NGX_LIBDL $NGX_LIBPTHREAD"
. auto/feature
fi
if [ $ngx_found = no ]; then
# NetBSD port
ngx_feature="OpenSSL library in /usr/pkg/"
ngx_feature_path="/usr/pkg/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lssl -lcrypto"
else
ngx_feature_libs="-L/usr/pkg/lib -lssl -lcrypto"
fi
ngx_feature_libs="$ngx_feature_libs $NGX_LIBDL $NGX_LIBPTHREAD"
. auto/feature
fi
if [ $ngx_found = no ]; then
# MacPorts
ngx_feature="OpenSSL library in /opt/local/"
ngx_feature_path="/opt/local/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lssl -lcrypto"
else
ngx_feature_libs="-L/opt/local/lib -lssl -lcrypto"
fi
ngx_feature_libs="$ngx_feature_libs $NGX_LIBDL $NGX_LIBPTHREAD"
. auto/feature
fi
if [ $ngx_found = no ]; then
# Homebrew on Apple Silicon
ngx_feature="OpenSSL library in /opt/homebrew/"
ngx_feature_path="/opt/homebrew/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/homebrew/lib -L/opt/homebrew/lib -lssl -lcrypto"
else
ngx_feature_libs="-L/opt/homebrew/lib -lssl -lcrypto"
fi
ngx_feature_libs="$ngx_feature_libs $NGX_LIBDL $NGX_LIBPTHREAD"
. auto/feature
fi
if [ $ngx_found = yes ]; then
have=NGX_SSL . auto/have
CORE_LIBS="$CORE_LIBS $ngx_feature_libs $NGX_LIBDL"
CORE_INCS="$CORE_INCS $ngx_feature_path"
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
OPENSSL=YES
if [ $USE_OPENSSL_QUIC = YES ]; then
ngx_feature="OpenSSL QUIC support"
ngx_feature_name="NGX_QUIC"
ngx_feature_test="SSL_set_quic_method(NULL, NULL)"
. auto/feature
if [ $ngx_found = no ]; then
have=NGX_QUIC_OPENSSL_COMPAT . auto/have
ngx_feature="OpenSSL QUIC compatibility"
ngx_feature_test="SSL_CTX_add_custom_ext(NULL, 0, 0,
NULL, NULL, NULL, NULL, NULL)"
. auto/feature
fi
if [ $ngx_found = no ]; then
cat << END
$0: error: certain modules require OpenSSL QUIC support.
You can either do not enable the modules, or install the OpenSSL library with
QUIC support into the system, or build the OpenSSL library with QUIC support
statically from the source with nginx by using --with-openssl=<path> option.
END
exit 1
fi
fi
fi
fi

View file

@ -7,11 +7,24 @@ case "$CC" in
cl)
case "$NGX_MACHINE" in
amd64)
OPENSSL_TARGET=VC-WIN64A
;;
*)
OPENSSL_TARGET=VC-WIN32
;;
esac
cat << END >> $NGX_MAKEFILE
$OPENSSL/openssl/include/openssl/ssl.h: $NGX_MAKEFILE
\$(MAKE) -f auto/lib/openssl/makefile.msvc \
OPENSSL="$OPENSSL" OPENSSL_OPT="$OPENSSL_OPT"
OPENSSL="$OPENSSL" OPENSSL_OPT="$OPENSSL_OPT" \
OPENSSL_TARGET="$OPENSSL_TARGET"
END
@ -41,11 +54,6 @@ END
;;
*)
case $USE_THREADS in
NO) OPENSSL_OPT="$OPENSSL_OPT no-threads" ;;
*) OPENSSL_OPT="$OPENSSL_OPT threads" ;;
esac
case $OPENSSL in
/*) ngx_prefix="$OPENSSL/.openssl" ;;
*) ngx_prefix="$PWD/$OPENSSL/.openssl" ;;
@ -56,9 +64,9 @@ END
$OPENSSL/.openssl/include/openssl/ssl.h: $NGX_MAKEFILE
cd $OPENSSL \\
&& if [ -f Makefile ]; then \$(MAKE) clean; fi \\
&& ./config --prefix=$ngx_prefix no-shared $OPENSSL_OPT \\
&& ./config --prefix=$ngx_prefix no-shared no-threads $OPENSSL_OPT \\
&& \$(MAKE) \\
&& \$(MAKE) install LIBDIR=lib
&& \$(MAKE) install_sw LIBDIR=lib
END

View file

@ -6,9 +6,16 @@
all:
cd $(OPENSSL)
perl Configure VC-WIN32 no-shared --prefix=openssl $(OPENSSL_OPT)
perl Configure $(OPENSSL_TARGET) no-shared no-threads \
--prefix="%cd%/openssl" \
--openssldir="%cd%/openssl/ssl" \
$(OPENSSL_OPT)
ms\do_ms
$(MAKE) -f ms\nt.mak
$(MAKE) -f ms\nt.mak install
if exist ms\do_ms.bat ( \
ms\do_ms \
&& $(MAKE) -f ms\nt.mak \
&& $(MAKE) -f ms\nt.mak install \
) else ( \
$(MAKE) \
&& $(MAKE) install_sw \
)

View file

@ -4,87 +4,62 @@
if [ $PCRE != NONE ]; then
CORE_INCS="$CORE_INCS $PCRE"
case "$NGX_CC_NAME" in
if [ -f $PCRE/src/pcre2.h.generic ]; then
msvc* | owc* | bcc)
have=NGX_PCRE . auto/have
PCRE_LIBRARY=PCRE2
have=NGX_PCRE . auto/have
have=NGX_PCRE2 . auto/have
if [ "$NGX_PLATFORM" = win32 ]; then
have=PCRE2_STATIC . auto/have
fi
CORE_INCS="$CORE_INCS $PCRE/src/"
CORE_DEPS="$CORE_DEPS $PCRE/src/pcre2.h"
case "$NGX_CC_NAME" in
msvc)
LINK_DEPS="$LINK_DEPS $PCRE/src/pcre2-8.lib"
CORE_LIBS="$CORE_LIBS $PCRE/src/pcre2-8.lib"
;;
*)
LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre2-8.a"
CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre2-8.a"
;;
esac
else
PCRE_LIBRARY=PCRE
have=NGX_PCRE . auto/have
if [ "$NGX_PLATFORM" = win32 ]; then
have=PCRE_STATIC . auto/have
CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
LINK_DEPS="$LINK_DEPS $PCRE/pcre.lib"
CORE_LIBS="$CORE_LIBS $PCRE/pcre.lib"
;;
fi
icc* )
have=NGX_PCRE . auto/have
CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
CORE_INCS="$CORE_INCS $PCRE"
CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
case "$NGX_CC_NAME" in
echo $ngx_n "checking for PCRE library ...$ngx_c"
msvc | owc | bcc)
LINK_DEPS="$LINK_DEPS $PCRE/pcre.lib"
CORE_LIBS="$CORE_LIBS $PCRE/pcre.lib"
;;
if [ -f $PCRE/pcre.h ]; then
ngx_pcre_ver=`grep PCRE_MAJOR $PCRE/pcre.h \
| sed -e 's/^.*PCRE_MAJOR.* \(.*\)$/\1/'`
else if [ -f $PCRE/configure.in ]; then
ngx_pcre_ver=`grep PCRE_MAJOR= $PCRE/configure.in \
| sed -e 's/^.*=\(.*\)$/\1/'`
else
ngx_pcre_ver=`grep pcre_major, $PCRE/configure.ac \
| sed -e 's/^.*pcre_major,.*\[\(.*\)\].*$/\1/'`
fi
fi
echo " $ngx_pcre_ver major version found"
# to allow -ipo optimization we link with the *.o but not library
case "$ngx_pcre_ver" in
4|5)
CORE_LIBS="$CORE_LIBS $PCRE/pcre.o"
;;
6)
CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
;;
*)
CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
CORE_LIBS="$CORE_LIBS $PCRE/pcre_newline.o"
;;
esac
;;
*)
have=NGX_PCRE . auto/have
if [ "$NGX_PLATFORM" = win32 ]; then
have=PCRE_STATIC . auto/have
fi
CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre.a"
;;
esac
*)
LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre.a"
;;
esac
fi
if [ $PCRE_JIT = YES ]; then
have=NGX_HAVE_PCRE_JIT . auto/have
@ -94,8 +69,48 @@ if [ $PCRE != NONE ]; then
else
if [ "$NGX_PLATFORM" != win32 ]; then
PCRE=NO
fi
if [ $PCRE = NO -a $PCRE2 != DISABLED ]; then
ngx_feature="PCRE2 library"
ngx_feature_name="NGX_PCRE2"
ngx_feature_run=no
ngx_feature_incs="#define PCRE2_CODE_UNIT_WIDTH 8
#include <pcre2.h>"
ngx_feature_path=
ngx_feature_libs="-lpcre2-8"
ngx_feature_test="pcre2_code *re;
re = pcre2_compile(NULL, 0, 0, NULL, NULL, NULL);
if (re == NULL) return 1"
. auto/feature
if [ $ngx_found = no ]; then
# pcre2-config
ngx_pcre2_prefix=`pcre2-config --prefix 2>/dev/null`
if [ -n "$ngx_pcre2_prefix" ]; then
ngx_feature="PCRE2 library in $ngx_pcre2_prefix"
ngx_feature_path=`pcre2-config --cflags \
| sed -n -e 's/.*-I *\([^ ][^ ]*\).*/\1/p'`
ngx_feature_libs=`pcre2-config --libs8`
. auto/feature
fi
fi
if [ $ngx_found = yes ]; then
have=NGX_PCRE . auto/have
CORE_INCS="$CORE_INCS $ngx_feature_path"
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
PCRE=YES
PCRE_LIBRARY=PCRE2
fi
fi
if [ $PCRE = NO ]; then
ngx_feature="PCRE library"
ngx_feature_name="NGX_PCRE"
@ -167,10 +182,27 @@ else
. auto/feature
fi
if [ $ngx_found = no ]; then
# Homebrew on Apple Silicon
ngx_feature="PCRE library in /opt/homebrew/"
ngx_feature_path="/opt/homebrew/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/homebrew/lib -L/opt/homebrew/lib -lpcre"
else
ngx_feature_libs="-L/opt/homebrew/lib -lpcre"
fi
. auto/feature
fi
if [ $ngx_found = yes ]; then
CORE_INCS="$CORE_INCS $ngx_feature_path"
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
PCRE=YES
PCRE_LIBRARY=PCRE
fi
if [ $PCRE = YES ]; then

View file

@ -3,36 +3,139 @@
# Copyright (C) Nginx, Inc.
case "$NGX_CC_NAME" in
if [ $PCRE_LIBRARY = PCRE2 ]; then
msvc*)
ngx_makefile=makefile.msvc
ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC"
ngx_pcre="PCRE=\"$PCRE\""
;;
# PCRE2
owc*)
ngx_makefile=makefile.owc
ngx_opt="CPU_OPT=\"$CPU_OPT\""
ngx_pcre=`echo PCRE=\"$PCRE\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
if [ $NGX_CC_NAME = msvc ]; then
bcc)
ngx_makefile=makefile.bcc
ngx_opt="-DCPU_OPT=\"$CPU_OPT\""
ngx_pcre=`echo \-DPCRE=\"$PCRE\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
# With PCRE2, it is not possible to compile all sources.
# Since list of source files changes between versions, we
# test files which might not be present.
*)
ngx_makefile=
;;
ngx_pcre_srcs="pcre2_auto_possess.c \
pcre2_chartables.c \
pcre2_compile.c \
pcre2_config.c \
pcre2_context.c \
pcre2_dfa_match.c \
pcre2_error.c \
pcre2_jit_compile.c \
pcre2_maketables.c \
pcre2_match.c \
pcre2_match_data.c \
pcre2_newline.c \
pcre2_ord2utf.c \
pcre2_pattern_info.c \
pcre2_string_utils.c \
pcre2_study.c \
pcre2_substitute.c \
pcre2_substring.c \
pcre2_tables.c \
pcre2_ucd.c \
pcre2_valid_utf.c \
pcre2_xclass.c"
esac
ngx_pcre_test="pcre2_chkdint.c \
pcre2_convert.c \
pcre2_extuni.c \
pcre2_find_bracket.c \
pcre2_script_run.c \
pcre2_serialize.c"
for ngx_src in $ngx_pcre_test
do
if [ -f $PCRE/src/$ngx_src ]; then
ngx_pcre_srcs="$ngx_pcre_srcs $ngx_src"
fi
done
ngx_pcre_objs=`echo $ngx_pcre_srcs \
| sed -e "s#\([^ ]*\.\)c#\1$ngx_objext#g"`
ngx_pcre_srcs=`echo $ngx_pcre_srcs \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g"`
ngx_pcre_objs=`echo $ngx_pcre_objs \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g"`
cat << END >> $NGX_MAKEFILE
PCRE_CFLAGS = -O2 -Ob1 -Oi -Gs $LIBC $CPU_OPT
PCRE_FLAGS = -DHAVE_CONFIG_H -DPCRE2_STATIC -DPCRE2_CODE_UNIT_WIDTH=8 \\
-DHAVE_MEMMOVE
PCRE_SRCS = $ngx_pcre_srcs
PCRE_OBJS = $ngx_pcre_objs
$PCRE/src/pcre2.h:
cd $PCRE/src \\
&& copy /y config.h.generic config.h \\
&& copy /y pcre2.h.generic pcre2.h \\
&& copy /y pcre2_chartables.c.dist pcre2_chartables.c
$PCRE/src/pcre2-8.lib: $PCRE/src/pcre2.h $NGX_MAKEFILE
cd $PCRE/src \\
&& cl -nologo -c \$(PCRE_CFLAGS) -I . \$(PCRE_FLAGS) \$(PCRE_SRCS) \\
&& link -lib -out:pcre2-8.lib -verbose:lib \$(PCRE_OBJS)
END
else
cat << END >> $NGX_MAKEFILE
$PCRE/src/pcre2.h: $PCRE/Makefile
$PCRE/Makefile: $NGX_MAKEFILE
cd $PCRE \\
&& if [ -f Makefile ]; then \$(MAKE) distclean; fi \\
&& CC="\$(CC)" CFLAGS="$PCRE_OPT" \\
./configure --disable-shared $PCRE_CONF_OPT
$PCRE/.libs/libpcre2-8.a: $PCRE/Makefile
cd $PCRE \\
&& \$(MAKE) libpcre2-8.la
END
fi
if [ -n "$ngx_makefile" ]; then
else
cat << END >> $NGX_MAKEFILE
# PCRE
case "$NGX_CC_NAME" in
msvc)
ngx_makefile=makefile.msvc
ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC"
ngx_pcre="PCRE=\"$PCRE\""
;;
owc)
ngx_makefile=makefile.owc
ngx_opt="CPU_OPT=\"$CPU_OPT\""
ngx_pcre=`echo PCRE=\"$PCRE\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
bcc)
ngx_makefile=makefile.bcc
ngx_opt="-DCPU_OPT=\"$CPU_OPT\""
ngx_pcre=`echo \-DPCRE=\"$PCRE\" \
| sed -e "s/\//$ngx_regex_dirsep/g"`
;;
*)
ngx_makefile=
;;
esac
if [ -n "$ngx_makefile" ]; then
cat << END >> $NGX_MAKEFILE
`echo "$PCRE/pcre.lib: $PCRE/pcre.h $NGX_MAKEFILE" \
| sed -e "s/\//$ngx_regex_dirsep/g"`
@ -43,9 +146,9 @@ if [ -n "$ngx_makefile" ]; then
END
else
else
cat << END >> $NGX_MAKEFILE
cat << END >> $NGX_MAKEFILE
$PCRE/pcre.h: $PCRE/Makefile
@ -61,4 +164,6 @@ $PCRE/.libs/libpcre.a: $PCRE/Makefile
END
fi
fi

View file

@ -12,9 +12,9 @@ NGX_PERL_VER=`$NGX_PERL -v 2>&1 | grep '^This is perl' 2>&1 \
if test -n "$NGX_PERL_VER"; then
echo " + perl version: $NGX_PERL_VER"
if [ "`$NGX_PERL -e 'use 5.006001; print "OK"'`" != "OK" ]; then
if [ "`$NGX_PERL -e 'use 5.008006; print "OK"'`" != "OK" ]; then
echo
echo "$0: error: perl 5.6.1 or higher is required"
echo "$0: error: perl 5.8.6 or higher is required"
echo
exit 1;
@ -28,8 +28,10 @@ if test -n "$NGX_PERL_VER"; then
exit 1;
fi
NGX_PERL_CFLAGS="$CFLAGS `$NGX_PERL -MExtUtils::Embed -e ccopts`"
NGX_PM_CFLAGS=`$NGX_PERL -MExtUtils::Embed -e ccopts`
NGX_PM_LDFLAGS=`$NGX_PERL -MConfig -e 'print $Config{lddlflags}'`
NGX_PERL_CFLAGS="$CFLAGS `$NGX_PERL -MExtUtils::Embed -e ccopts`"
# gcc 4.1/4.2 warn about unused values in pTHX_
NGX_PERL_CFLAGS=`echo $NGX_PERL_CFLAGS \
@ -41,6 +43,8 @@ if test -n "$NGX_PERL_VER"; then
ngx_perl_ldopts=`$NGX_PERL -MExtUtils::Embed -e ldopts`
ngx_perl_dlext=`$NGX_PERL -MConfig -e 'print $Config{dlext}'`
ngx_perl_libdir="src/http/modules/perl/blib/arch/auto"
ngx_perl_module="$ngx_perl_libdir/nginx/nginx.$ngx_perl_dlext"
if $NGX_PERL -V:usemultiplicity | grep define > /dev/null; then
have=NGX_HAVE_PERL_MULTIPLICITY . auto/have
@ -52,8 +56,17 @@ if test -n "$NGX_PERL_VER"; then
ngx_perl_ldopts=`echo $ngx_perl_ldopts | sed 's/ -pthread//'`
fi
CORE_LINK="$CORE_LINK $ngx_perl_ldopts"
LINK_DEPS="$LINK_DEPS $NGX_OBJS/src/http/modules/perl/blib/arch/auto/nginx/nginx.$ngx_perl_dlext"
if [ "$NGX_SYSTEM" = "Darwin" ]; then
# OS X system perl wants to link universal binaries
ngx_perl_ldopts=`echo $ngx_perl_ldopts \
| sed -e 's/-arch i386//' -e 's/-arch x86_64//'`
fi
if [ $USE_PERL = YES ]; then
CORE_LINK="$CORE_LINK $ngx_perl_ldopts"
fi
NGX_LIB_PERL="$ngx_perl_ldopts"
if test -n "$NGX_PERL_MODULES"; then
have=NGX_PERL_MODULES value="(u_char *) \"$NGX_PERL_MODULES\""
@ -63,7 +76,7 @@ if test -n "$NGX_PERL_VER"; then
else
echo
echo "$0: error: perl 5.6.1 or higher is required"
echo "$0: error: perl 5.8.6 or higher is required"
echo
exit 1;

View file

@ -3,12 +3,12 @@
# Copyright (C) Nginx, Inc.
v=`grep 'define NGINX_VERSION' src/core/nginx.h | sed -e 's/^.*"\(.*\)".*/\1/'`
cat << END >> $NGX_MAKEFILE
$NGX_OBJS/src/http/modules/perl/blib/arch/auto/nginx/nginx.$ngx_perl_dlext: \\
$NGX_OBJS/src/http/modules/perl/ngx_http_perl_module.o: \\
$NGX_OBJS/$ngx_perl_module
$NGX_OBJS/$ngx_perl_module: \\
\$(CORE_DEPS) \$(HTTP_DEPS) \\
src/http/modules/perl/ngx_http_perl_module.h \\
$NGX_OBJS/src/http/modules/perl/Makefile
@ -24,7 +24,11 @@ $NGX_OBJS/src/http/modules/perl/Makefile: \\
src/http/modules/perl/nginx.pm \\
src/http/modules/perl/nginx.xs \\
src/http/modules/perl/typemap
sed "s/%%VERSION%%/$v/" src/http/modules/perl/nginx.pm > \\
grep 'define NGINX_VERSION' src/core/nginx.h \\
| sed -e 's/^.*"\(.*\)".*/\1/' > \\
$NGX_OBJS/src/http/modules/perl/version
sed "s/%%VERSION%%/\`cat $NGX_OBJS/src/http/modules/perl/version\`/" \\
src/http/modules/perl/nginx.pm > \\
$NGX_OBJS/src/http/modules/perl/nginx.pm
cp -p src/http/modules/perl/nginx.xs $NGX_OBJS/src/http/modules/perl/
cp -p src/http/modules/perl/typemap $NGX_OBJS/src/http/modules/perl/
@ -32,6 +36,7 @@ $NGX_OBJS/src/http/modules/perl/Makefile: \\
cd $NGX_OBJS/src/http/modules/perl \\
&& NGX_PM_CFLAGS="\$(NGX_PM_CFLAGS) -g $NGX_CC_OPT" \\
NGX_PM_LDFLAGS="$NGX_LD_OPT \$(NGX_PM_LDFLAGS)" \\
NGX_INCS="$CORE_INCS $NGX_OBJS $HTTP_INCS" \\
NGX_DEPS="\$(CORE_DEPS) \$(HTTP_DEPS)" \\
$NGX_PERL Makefile.PL \\

View file

@ -1,79 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
if [ $SHA1 != NONE ]; then
have=NGX_HAVE_SHA1 . auto/have
CORE_INCS="$CORE_INCS $SHA1"
case "$NGX_CC_NAME" in
msvc* | owc* | bcc)
LINK_DEPS="$LINK_DEPS $SHA1/sha1.lib"
CORE_LIBS="$CORE_LIBS $SHA1/sha1.lib"
;;
icc*)
LINK_DEPS="$LINK_DEPS $SHA1/libsha.a"
# to allow -ipo optimization we link with the *.o but not library
CORE_LIBS="$CORE_LIBS $SHA1/sha1_dgst.o"
if [ $SHA1_ASM = YES ]; then
CORE_LIBS="$CORE_LIBS $SHA1/asm/sx86-elf.o"
fi
;;
*)
LINK_DEPS="$LINK_DEPS $SHA1/libsha.a"
CORE_LIBS="$CORE_LIBS $SHA1/libsha.a"
#CORE_LIBS="$CORE_LIBS -L $SHA1 -lsha"
;;
esac
else
if [ "$NGX_PLATFORM" != win32 ]; then
SHA1=NO
# FreeBSD
ngx_feature="sha1 in system md library"
ngx_feature_name=NGX_HAVE_SHA1
ngx_feature_run=no
ngx_feature_incs="#include <sha.h>"
ngx_feature_path=
ngx_feature_libs="-lmd"
ngx_feature_test="SHA_CTX sha1; SHA1_Init(&sha1)"
. auto/feature
ngx_sha1_lib="system md"
if [ $ngx_found = no ]; then
# OpenSSL crypto library
ngx_feature="sha1 in system OpenSSL crypto library"
ngx_feature_incs="#include <openssl/sha.h>"
ngx_feature_libs="-lcrypto"
. auto/feature
ngx_sha1_lib="system crypto"
if [ $ngx_found = yes ]; then
have=NGX_HAVE_OPENSSL_SHA1_H . auto/have
fi
fi
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
SHA1=YES
SHA1_LIB=$ngx_sha1_lib
fi
fi
fi

View file

@ -1,96 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
case "$NGX_CC_NAME" in
msvc*)
ngx_makefile=makefile.msvc
ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC SHA1_ASM=$SHA1_ASM"
ngx_sha1="SHA1=\"$SHA1\""
;;
owc*)
ngx_makefile=makefile.owc
ngx_opt="CPU_OPT=\"$CPU_OPT\""
ngx_sha1=`echo SHA1=\"$SHA1\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
bcc)
ngx_makefile=makefile.bcc
ngx_opt="-DCPU_OPT=\"$CPU_OPT\" -DSHA1_ASM=$SHA1_ASM"
ngx_sha1=`echo \-DSHA1=\"$SHA1\" | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
esac
done=NO
case "$NGX_PLATFORM" in
win32)
cat << END >> $NGX_MAKEFILE
`echo "$SHA1/sha1.lib: $NGX_MAKEFILE" | sed -e "s/\//$ngx_regex_dirsep/g"`
\$(MAKE) -f auto/lib/sha1/$ngx_makefile $ngx_opt $ngx_sha1
END
done=YES
;;
SunOS:*:i86pc)
if [ $SHA1_ASM = YES ]; then
cat << END >> $NGX_MAKEFILE
$SHA1/libsha.a: $NGX_MAKEFILE
cd $SHA1 \\
&& \$(MAKE) CFLAGS="$SHA1_OPT -DSOL -DSHA1_ASM -DL_ENDIAN" \\
CC="\$(CC)" CPP="\$(CPP)" \\
SHA_ASM_OBJ=asm/sx86-sol.o clean libsha.a
END
done=YES
fi
;;
# FreeBSD: i386
# Linux: i686
*:i386 | *:i686)
if [ $SHA1_ASM = YES ]; then
cat << END >> $NGX_MAKEFILE
$SHA1/libsha.a: $NGX_MAKEFILE
cd $SHA1 \\
&& \$(MAKE) CFLAGS="$SHA1_OPT -DELF -DSHA1_ASM -DL_ENDIAN" \\
CC="\$(CC)" CPP="\$(CPP)" \\
SHA_ASM_OBJ=asm/sx86-elf.o clean libsha.a
END
done=YES
fi
;;
esac
if [ $done = NO ]; then
cat << END >> $NGX_MAKEFILE
$SHA1/libsha.a: $NGX_MAKEFILE
cd $SHA1 \\
&& \$(MAKE) CFLAGS="$SHA1_OPT" \\
CC="\$(CC)" SHA_ASM_OBJ= clean libsha.a
END
fi

View file

@ -1,22 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
CFLAGS = -q -O2 -tWM $(CPU_OPT) -DL_ENDIAN
!if "$(SHA1_ASM)" == "YES"
sha1.lib:
cd $(SHA1)
bcc32 -c $(CFLAGS) -DSHA1_ASM sha1dgst.c
tlib sha1.lib +sha1dgst.obj +"asm\s-win32.obj"
!else
sha1.lib:
cd $(SHA1)
bcc32 -c $(CFLAGS) sha1dgst.c
tlib sha1.lib +sha1dgst.obj
!endif

View file

@ -1,22 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
CFLAGS = -nologo -O2 -Ob1 -Oi -Gs $(LIBC) $(CPU_OPT) -D L_ENDIAN
!IF "$(SHA1_ASM)" == "YES"
sha1.lib:
cd $(SHA1)
cl -c $(CFLAGS) -D SHA1_ASM sha1dgst.c
link -lib -out:sha1.lib sha1dgst.obj asm/s-win32.obj
!ELSE
sha1.lib:
cd $(SHA1)
cl -c $(CFLAGS) sha1dgst.c
link -lib -out:sha1.lib sha1dgst.obj
!ENDIF

View file

@ -1,11 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
CFLAGS = -zq -bt=nt -bm -ot -op -oi -oe -s $(CPU_OPT)
sha1.lib:
cd $(SHA1)
wcl386 -c $(CFLAGS) -dL_ENDIAN sha1dgst.c
wlib -n sha1.lib sha1dgst.obj

View file

@ -1,40 +0,0 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
echo $ngx_n "checking for $ngx_lib ...$ngx_c"
cat << END >> $NGX_AUTOCONF_ERR
----------------------------------------
checking for $ngx_lib
END
ngx_found=no
cat << END > $NGX_AUTOTEST.c
$ngx_lib_incs
int main() {
$ngx_lib_test;
return 0;
}
eval "$CC $cc_test_flags $ngx_lib_cflags \
-o $NGX_AUTOTEST $NGX_AUTOTEST.c $ngx_libs \
>> $NGX_ERR 2>&1"
if [ -x $NGX_AUTOTEST ]; then
echo " found"
ngx_found=yes
else
echo " not found"
fi
rm -rf $NGX_AUTOTEST*

View file

@ -8,13 +8,13 @@ if [ $ZLIB != NONE ]; then
case "$NGX_CC_NAME" in
msvc* | owc* | bcc)
msvc | owc | bcc)
have=NGX_ZLIB . auto/have
LINK_DEPS="$LINK_DEPS $ZLIB/zlib.lib"
CORE_LIBS="$CORE_LIBS $ZLIB/zlib.lib"
;;
icc*)
icc)
have=NGX_ZLIB . auto/have
LINK_DEPS="$LINK_DEPS $ZLIB/libz.a"

View file

@ -5,14 +5,14 @@
case "$NGX_CC_NAME" in
msvc*)
msvc)
ngx_makefile=makefile.msvc
ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC"
ngx_zlib="ZLIB=\"$ZLIB\""
;;
owc*)
owc)
ngx_makefile=makefile.owc
ngx_opt="CPU_OPT=\"$CPU_OPT\""
ngx_zlib=`echo ZLIB=\"$ZLIB\" | sed -e "s/\//$ngx_regex_dirsep/g"`

View file

@ -1,10 +0,0 @@
--- zlib.h Thu Jul 9 20:06:56 1998
+++ zlib-1.1.3/zlib.h Tue Mar 22 13:41:04 2005
@@ -709,7 +709,6 @@
(0 in case of error).
*/
-ZEXTERN int ZEXPORTVA gzprintf OF((gzFile file, const char *format, ...));
/*
Converts, formats, and writes the args to the compressed file under
control of the format string, as in fprintf. gzprintf returns the number of

310
auto/make
View file

@ -2,14 +2,21 @@
# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.
basename_last2() {
local basename_1=`basename \`dirname $1\``
local basename_2=$(basename "$1")
echo $(printf "$basename_1/$basename_2" | sed 's/\.\.\///')
}
echo "creating $NGX_MAKEFILE"
mkdir -p $NGX_OBJS/src/core $NGX_OBJS/src/event $NGX_OBJS/src/event/modules \
$NGX_OBJS/src/event/quic \
$NGX_OBJS/src/os/unix $NGX_OBJS/src/os/win32 \
$NGX_OBJS/src/http $NGX_OBJS/src/http/modules \
$NGX_OBJS/src/http/modules/perl \
$NGX_OBJS/src/http $NGX_OBJS/src/http/v2 $NGX_OBJS/src/http/v3 \
$NGX_OBJS/src/http/modules $NGX_OBJS/src/http/modules/perl \
$NGX_OBJS/src/mail \
$NGX_OBJS/src/stream \
$NGX_OBJS/src/misc
@ -30,12 +37,13 @@ END
if test -n "$NGX_PERL_CFLAGS"; then
echo NGX_PERL_CFLAGS = $NGX_PERL_CFLAGS >> $NGX_MAKEFILE
echo NGX_PM_CFLAGS = $NGX_PM_CFLAGS >> $NGX_MAKEFILE
echo NGX_PM_LDFLAGS = $NGX_PM_LDFLAGS >> $NGX_MAKEFILE
fi
# ALL_INCS, required by the addons and by OpenWatcom C precompiled headers
ngx_incs=`echo $CORE_INCS $NGX_OBJS $HTTP_INCS $MAIL_INCS\
ngx_incs=`echo $CORE_INCS $NGX_OBJS $HTTP_INCS $MAIL_INCS $STREAM_INCS\
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \
-e "s/\//$ngx_regex_dirsep/g"`
@ -49,7 +57,7 @@ END
ngx_all_srcs="$CORE_SRCS"
# the core dependences and include paths
# the core dependencies and include paths
ngx_deps=`echo $CORE_DEPS $NGX_AUTO_CONFIG_H $NGX_PCH \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
@ -69,7 +77,7 @@ CORE_INCS = $ngx_include_opt$ngx_incs
END
# the http dependences and include paths
# the http dependencies and include paths
if [ $HTTP = YES ]; then
@ -95,11 +103,13 @@ END
fi
# the mail dependences and include paths
# the mail dependencies and include paths
if [ $MAIL = YES ]; then
if [ $MAIL != NO ]; then
ngx_all_srcs="$ngx_all_srcs $MAIL_SRCS"
if [ $MAIL = YES ]; then
ngx_all_srcs="$ngx_all_srcs $MAIL_SRCS"
fi
ngx_deps=`echo $MAIL_DEPS \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
@ -121,10 +131,38 @@ END
fi
ngx_all_srcs="$ngx_all_srcs $NGX_MISC_SRCS"
# the stream dependencies and include paths
if [ $STREAM != NO ]; then
if [ $STREAM = YES ]; then
ngx_all_srcs="$ngx_all_srcs $STREAM_SRCS"
fi
ngx_deps=`echo $STREAM_DEPS \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
-e "s/\//$ngx_regex_dirsep/g"`
ngx_incs=`echo $STREAM_INCS \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \
-e "s/\//$ngx_regex_dirsep/g"`
cat << END >> $NGX_MAKEFILE
STREAM_DEPS = $ngx_deps
if test -n "$NGX_ADDON_SRCS"; then
STREAM_INCS = $ngx_include_opt$ngx_incs
END
fi
ngx_all_srcs="$ngx_all_srcs $MISC_SRCS"
if test -n "$NGX_ADDON_SRCS$DYNAMIC_MODULES"; then
cat << END >> $NGX_MAKEFILE
@ -141,7 +179,7 @@ ngx_all_srcs=`echo $ngx_all_srcs | sed -e "s/\//$ngx_regex_dirsep/g"`
for ngx_src in $NGX_ADDON_SRCS
do
ngx_obj="addon/`basename \`dirname $ngx_src\``"
ngx_obj="addon/`basename_last2 \`dirname $ngx_src\``"
test -d $NGX_OBJS/$ngx_obj || mkdir -p $NGX_OBJS/$ngx_obj
@ -177,6 +215,7 @@ ngx_objs=`echo $ngx_all_objs $ngx_modules_obj \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \
-e "s/\//$ngx_regex_dirsep/g"`
ngx_libs=
if test -n "$NGX_LD_OPT$CORE_LIBS"; then
ngx_libs=`echo $NGX_LD_OPT $CORE_LIBS \
| sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`
@ -185,13 +224,22 @@ fi
ngx_link=${CORE_LINK:+`echo $CORE_LINK \
| sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`}
ngx_main_link=${MAIN_LINK:+`echo $MAIN_LINK \
| sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`}
cat << END >> $NGX_MAKEFILE
$NGX_OBJS${ngx_dirsep}nginx${ngx_binext}: $ngx_deps$ngx_spacer
\$(LINK) ${ngx_long_start}${ngx_binout}$NGX_OBJS${ngx_dirsep}nginx$ngx_long_cont$ngx_objs$ngx_libs$ngx_link
build: binary modules manpage
binary: $NGX_OBJS${ngx_dirsep}nginx$ngx_binext
$NGX_OBJS${ngx_dirsep}nginx$ngx_binext: $ngx_deps$ngx_spacer
\$(LINK) $ngx_long_start$ngx_binout$NGX_OBJS${ngx_dirsep}nginx$ngx_binext$ngx_long_cont$ngx_objs$ngx_libs$ngx_link$ngx_main_link
$ngx_rcc
${ngx_long_end}
$ngx_long_end
modules:
END
@ -240,7 +288,7 @@ if [ $HTTP = YES ]; then
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
else
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(HTTP_INCS)"
ngx_perl_cc="\$(CC) $ngx_compile_opt \$(NGX_PERL_CFLAGS) "
ngx_perl_cc="\$(CC) $ngx_compile_opt \$(NGX_PERL_CFLAGS)"
ngx_perl_cc="$ngx_perl_cc \$(CORE_INCS) \$(HTTP_INCS)"
fi
@ -271,7 +319,7 @@ $ngx_obj: \$(CORE_DEPS) \$(HTTP_DEPS)$ngx_cont$ngx_src
END
fi
done
done
fi
@ -301,18 +349,48 @@ $ngx_obj: \$(CORE_DEPS) \$(MAIL_DEPS)$ngx_cont$ngx_src
$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
done
done
fi
# the stream sources
if [ $STREAM = YES ]; then
if test -n "$NGX_PCH"; then
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
else
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(STREAM_INCS)"
fi
for ngx_src in $STREAM_SRCS
do
ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
ngx_obj=`echo $ngx_src \
| sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"`
cat << END >> $NGX_MAKEFILE
$ngx_obj: \$(CORE_DEPS) \$(STREAM_DEPS)$ngx_cont$ngx_src
$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
done
fi
# the misc sources
if test -n "$NGX_MISC_SRCS"; then
if test -n "$MISC_SRCS"; then
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
for ngx_src in $NGX_MISC_SRCS
for ngx_src in $MISC_SRCS
do
ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
ngx_obj=`echo $ngx_src \
@ -327,7 +405,7 @@ $ngx_obj: \$(CORE_DEPS) $ngx_cont$ngx_src
$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
done
done
fi
@ -340,7 +418,7 @@ if test -n "$NGX_ADDON_SRCS"; then
for ngx_src in $NGX_ADDON_SRCS
do
ngx_obj="addon/`basename \`dirname $ngx_src\``"
ngx_obj="addon/`basename_last2 \`dirname $ngx_src\``"
ngx_obj=`echo $ngx_obj/\`basename $ngx_src\` \
| sed -e "s/\//$ngx_regex_dirsep/g"`
@ -359,16 +437,16 @@ $ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src
$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
done
done
fi
# the addons config.make
if test -n "$NGX_ADDONS"; then
if test -n "$NGX_ADDONS$DYNAMIC_ADDONS"; then
for ngx_addon_dir in $NGX_ADDONS
for ngx_addon_dir in $NGX_ADDONS $DYNAMIC_ADDONS
do
if test -f $ngx_addon_dir/config.make; then
. $ngx_addon_dir/config.make
@ -415,3 +493,187 @@ $ngx_pch
END
fi
# dynamic modules
if test -n "$NGX_PCH"; then
ngx_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
else
ngx_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(CFLAGS) \$(ALL_INCS)"
ngx_perl_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(NGX_PERL_CFLAGS)"
ngx_perl_cc="$ngx_perl_cc \$(ALL_INCS)"
fi
for ngx_module in $DYNAMIC_MODULES
do
eval ngx_module_srcs="\$${ngx_module}_SRCS"
eval ngx_module_shrd="\$${ngx_module}_SHRD"
eval eval ngx_module_libs="\\\"\$${ngx_module}_LIBS\\\""
eval ngx_module_modules="\$${ngx_module}_MODULES"
eval ngx_module_order="\$${ngx_module}_ORDER"
ngx_modules_c=$NGX_OBJS/${ngx_module}_modules.c
cat << END > $ngx_modules_c
#include <ngx_config.h>
#include <ngx_core.h>
END
for mod in $ngx_module_modules
do
echo "extern ngx_module_t $mod;" >> $ngx_modules_c
done
echo >> $ngx_modules_c
echo 'ngx_module_t *ngx_modules[] = {' >> $ngx_modules_c
for mod in $ngx_module_modules
do
echo " &$mod," >> $ngx_modules_c
done
cat << END >> $ngx_modules_c
NULL
};
END
echo 'char *ngx_module_names[] = {' >> $ngx_modules_c
for mod in $ngx_module_modules
do
echo " \"$mod\"," >> $ngx_modules_c
done
cat << END >> $ngx_modules_c
NULL
};
END
echo 'char *ngx_module_order[] = {' >> $ngx_modules_c
for mod in $ngx_module_order
do
echo " \"$mod\"," >> $ngx_modules_c
done
cat << END >> $ngx_modules_c
NULL
};
END
ngx_modules_c=`echo $ngx_modules_c | sed -e "s/\//$ngx_regex_dirsep/g"`
ngx_modules_obj=`echo $ngx_modules_c \
| sed -e "s/\(.*\.\)c/\1$ngx_objext/"`
ngx_module_objs=
for ngx_src in $ngx_module_srcs $ngx_module_shrd
do
case "$ngx_src" in
src/*)
ngx_obj=$ngx_src
;;
*)
ngx_obj="addon/`basename_last2 \`dirname $ngx_src\``"
mkdir -p $NGX_OBJS/$ngx_obj
ngx_obj="$ngx_obj/`basename $ngx_src`"
;;
esac
ngx_module_objs="$ngx_module_objs $ngx_obj"
done
ngx_module_objs=`echo $ngx_module_objs \
| sed -e "s#\([^ ]*\.\)cpp#$NGX_OBJS\/\1$ngx_objext#g" \
-e "s#\([^ ]*\.\)cc#$NGX_OBJS\/\1$ngx_objext#g" \
-e "s#\([^ ]*\.\)c#$NGX_OBJS\/\1$ngx_objext#g" \
-e "s#\([^ ]*\.\)S#$NGX_OBJS\/\1$ngx_objext#g"`
ngx_deps=`echo $ngx_module_objs $ngx_modules_obj $LINK_DEPS \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
-e "s/\//$ngx_regex_dirsep/g"`
ngx_objs=`echo $ngx_module_objs $ngx_modules_obj \
| sed -e "s/ *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \
-e "s/\//$ngx_regex_dirsep/g"`
ngx_obj=$NGX_OBJS$ngx_dirsep$ngx_module$ngx_modext
if [ "$NGX_PLATFORM" = win32 ]; then
ngx_module_libs="$CORE_LIBS $ngx_module_libs"
fi
ngx_libs=
if test -n "$NGX_LD_OPT$ngx_module_libs"; then
ngx_libs=`echo $NGX_LD_OPT $ngx_module_libs \
| sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`
fi
ngx_link=${CORE_LINK:+`echo $CORE_LINK \
| sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`}
ngx_module_link=${MODULE_LINK:+`echo $MODULE_LINK \
| sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`}
cat << END >> $NGX_MAKEFILE
modules: $ngx_obj
$ngx_obj: $ngx_deps$ngx_spacer
\$(LINK) $ngx_long_start$ngx_binout$ngx_obj$ngx_long_cont$ngx_objs$ngx_libs$ngx_link$ngx_module_link
$ngx_long_end
$ngx_modules_obj: \$(CORE_DEPS)$ngx_cont$ngx_modules_c
$ngx_cc$ngx_tab$ngx_objout$ngx_modules_obj$ngx_tab$ngx_modules_c$NGX_AUX
END
for ngx_source in $ngx_module_srcs
do
case "$ngx_source" in
src/*)
ngx_obj=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
*)
ngx_obj="addon/`basename_last2 \`dirname $ngx_source\``"
ngx_obj=`echo $ngx_obj/\`basename $ngx_source\` \
| sed -e "s/\//$ngx_regex_dirsep/g"`
;;
esac
ngx_obj=`echo $ngx_obj \
| sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"`
ngx_src=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"`
if [ $ngx_source = src/http/modules/perl/ngx_http_perl_module.c ]; then
cat << END >> $NGX_MAKEFILE
$ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src
$ngx_perl_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
else
cat << END >> $NGX_MAKEFILE
$ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src
$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
fi
done
done

178
auto/module Normal file
View file

@ -0,0 +1,178 @@
# Copyright (C) Ruslan Ermilov
# Copyright (C) Nginx, Inc.
case $ngx_module_type in
HTTP_*) ngx_var=HTTP ;;
*) ngx_var=$ngx_module_type ;;
esac
if [ "$ngx_module_link" = DYNAMIC ]; then
for ngx_module in $ngx_module_name; do
# extract the first name
break
done
DYNAMIC_MODULES="$DYNAMIC_MODULES $ngx_module"
eval ${ngx_module}_MODULES=\"$ngx_module_name\"
if [ -z "$ngx_module_order" -a \
\( "$ngx_module_type" = "HTTP_FILTER" \
-o "$ngx_module_type" = "HTTP_AUX_FILTER" \) ]
then
eval ${ngx_module}_ORDER=\"$ngx_module_name \
ngx_http_copy_filter_module\"
else
eval ${ngx_module}_ORDER=\"$ngx_module_order\"
fi
srcs=
shrd=
for src in $ngx_module_srcs
do
found=no
for old in $DYNAMIC_MODULES_SRCS
do
if [ $src = $old ]; then
found=yes
break
fi
done
if [ $found = no ]; then
srcs="$srcs $src"
else
shrd="$shrd $src"
fi
done
eval ${ngx_module}_SRCS=\"$srcs\"
eval ${ngx_module}_SHRD=\"$shrd\"
DYNAMIC_MODULES_SRCS="$DYNAMIC_MODULES_SRCS $srcs"
if test -n "$ngx_module_incs"; then
CORE_INCS="$CORE_INCS $ngx_module_incs"
fi
if test -n "$ngx_module_deps"; then
NGX_ADDON_DEPS="$NGX_ADDON_DEPS $ngx_module_deps"
fi
libs=
for lib in $ngx_module_libs
do
case $lib in
LIBXSLT | LIBGD | GEOIP | PERL)
libs="$libs \$NGX_LIB_$lib"
if eval [ "\$USE_${lib}" = NO ] ; then
eval USE_${lib}=DYNAMIC
fi
;;
PCRE | OPENSSL | ZLIB)
eval USE_${lib}=YES
;;
MD5 | SHA1)
# obsolete
;;
*)
libs="$libs $lib"
;;
esac
done
eval ${ngx_module}_LIBS=\'$libs\'
elif [ "$ngx_module_link" = YES ]; then
eval ${ngx_module_type}_MODULES=\"\$${ngx_module_type}_MODULES \
$ngx_module_name\"
eval ${ngx_var}_SRCS=\"\$${ngx_var}_SRCS $ngx_module_srcs\"
if test -n "$ngx_module_incs"; then
eval ${ngx_var}_INCS=\"\$${ngx_var}_INCS $ngx_module_incs\"
fi
if test -n "$ngx_module_deps"; then
eval ${ngx_var}_DEPS=\"\$${ngx_var}_DEPS $ngx_module_deps\"
fi
for lib in $ngx_module_libs
do
case $lib in
PCRE | OPENSSL | ZLIB | LIBXSLT | LIBGD | PERL | GEOIP)
eval USE_${lib}=YES
;;
MD5 | SHA1)
# obsolete
;;
*)
CORE_LIBS="$CORE_LIBS $lib"
;;
esac
done
elif [ "$ngx_module_link" = ADDON ]; then
eval ${ngx_module_type}_MODULES=\"\$${ngx_module_type}_MODULES \
$ngx_module_name\"
srcs=
for src in $ngx_module_srcs
do
found=no
for old in $NGX_ADDON_SRCS
do
if [ $src = $old ]; then
found=yes
break
fi
done
if [ $found = no ]; then
srcs="$srcs $src"
fi
done
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $srcs"
if test -n "$ngx_module_incs"; then
eval ${ngx_var}_INCS=\"\$${ngx_var}_INCS $ngx_module_incs\"
fi
if test -n "$ngx_module_deps"; then
NGX_ADDON_DEPS="$NGX_ADDON_DEPS $ngx_module_deps"
fi
for lib in $ngx_module_libs
do
case $lib in
PCRE | OPENSSL | ZLIB | LIBXSLT | LIBGD | PERL | GEOIP)
eval USE_${lib}=YES
;;
MD5 | SHA1)
# obsolete
;;
*)
CORE_LIBS="$CORE_LIBS $lib"
;;
esac
done
fi

File diff suppressed because it is too large Load diff

View file

@ -7,6 +7,7 @@ help=no
NGX_PREFIX=
NGX_SBIN_PATH=
NGX_MODULES_PATH=
NGX_CONF_PREFIX=
NGX_CONF_PATH=
NGX_ERROR_LOG_PATH=
@ -14,6 +15,7 @@ NGX_PID_PATH=
NGX_LOCK_PATH=
NGX_USER=
NGX_GROUP=
NGX_BUILD=
CC=${CC:-cc}
CPP=
@ -29,7 +31,6 @@ NGX_RPATH=NO
NGX_TEST_BUILD_DEVPOLL=NO
NGX_TEST_BUILD_EVENTPORT=NO
NGX_TEST_BUILD_EPOLL=NO
NGX_TEST_BUILD_RTSIG=NO
NGX_TEST_BUILD_SOLARIS_SENDFILEV=NO
NGX_PLATFORM=
@ -37,15 +38,14 @@ NGX_WINE=
EVENT_FOUND=NO
EVENT_RTSIG=NO
EVENT_SELECT=NO
EVENT_POLL=NO
EVENT_AIO=NO
USE_THREADS=NO
NGX_FILE_AIO=NO
NGX_IPV6=NO
QUIC_BPF=NO
HTTP=YES
@ -60,9 +60,9 @@ HTTP_CACHE=YES
HTTP_CHARSET=YES
HTTP_GZIP=YES
HTTP_SSL=NO
HTTP_SPDY=NO
HTTP_V2=NO
HTTP_V3=NO
HTTP_SSI=YES
HTTP_POSTPONE=NO
HTTP_REALIP=NO
HTTP_XSLT=NO
HTTP_IMAGE_FILTER=NO
@ -72,7 +72,9 @@ HTTP_DAV=NO
HTTP_ACCESS=YES
HTTP_AUTH_BASIC=YES
HTTP_AUTH_REQUEST=NO
HTTP_MIRROR=YES
HTTP_USERID=YES
HTTP_SLICE=NO
HTTP_AUTOINDEX=YES
HTTP_RANDOM_INDEX=NO
HTTP_STATUS=NO
@ -86,6 +88,7 @@ HTTP_PROXY=YES
HTTP_FASTCGI=YES
HTTP_UWSGI=YES
HTTP_SCGI=YES
HTTP_GRPC=YES
HTTP_PERL=NO
HTTP_MEMCACHED=YES
HTTP_LIMIT_CONN=YES
@ -98,9 +101,12 @@ HTTP_FLV=NO
HTTP_MP4=NO
HTTP_GUNZIP=NO
HTTP_GZIP_STATIC=NO
HTTP_UPSTREAM_HASH=YES
HTTP_UPSTREAM_IP_HASH=YES
HTTP_UPSTREAM_LEAST_CONN=YES
HTTP_UPSTREAM_RANDOM=YES
HTTP_UPSTREAM_KEEPALIVE=YES
HTTP_UPSTREAM_ZONE=YES
# STUB
HTTP_STUB_STATUS=NO
@ -111,27 +117,45 @@ MAIL_POP3=YES
MAIL_IMAP=YES
MAIL_SMTP=YES
STREAM=NO
STREAM_SSL=NO
STREAM_REALIP=NO
STREAM_LIMIT_CONN=YES
STREAM_ACCESS=YES
STREAM_GEO=YES
STREAM_GEOIP=NO
STREAM_MAP=YES
STREAM_SPLIT_CLIENTS=YES
STREAM_RETURN=YES
STREAM_PASS=YES
STREAM_SET=YES
STREAM_UPSTREAM_HASH=YES
STREAM_UPSTREAM_LEAST_CONN=YES
STREAM_UPSTREAM_RANDOM=YES
STREAM_UPSTREAM_ZONE=YES
STREAM_SSL_PREREAD=NO
DYNAMIC_MODULES=
DYNAMIC_MODULES_SRCS=
NGX_ADDONS=
NGX_ADDON_SRCS=
NGX_ADDON_DEPS=
DYNAMIC_ADDONS=
NGX_COMPAT=NO
USE_PCRE=NO
PCRE=NONE
PCRE_OPT=
PCRE_CONF_OPT=
PCRE_JIT=NO
PCRE2=YES
USE_OPENSSL=NO
USE_OPENSSL_QUIC=NO
OPENSSL=NONE
USE_MD5=NO
MD5=NONE
MD5_OPT=
MD5_ASM=NO
USE_SHA1=NO
SHA1=NONE
SHA1_OPT=
SHA1_ASM=NO
USE_ZLIB=NO
ZLIB=NONE
ZLIB_OPT=
@ -142,10 +166,13 @@ NGX_PERL=perl
USE_LIBXSLT=NO
USE_LIBGD=NO
USE_GEOIP=NO
NGX_GOOGLE_PERFTOOLS=NO
NGX_CPP_TEST=NO
SO_COOKIE_FOUND=NO
NGX_LIBATOMIC=NO
NGX_CPU_CACHE_LINE=
@ -169,6 +196,7 @@ do
--prefix=) NGX_PREFIX="!" ;;
--prefix=*) NGX_PREFIX="$value" ;;
--sbin-path=*) NGX_SBIN_PATH="$value" ;;
--modules-path=*) NGX_MODULES_PATH="$value" ;;
--conf-path=*) NGX_CONF_PATH="$value" ;;
--error-log-path=*) NGX_ERROR_LOG_PATH="$value";;
--pid-path=*) NGX_PID_PATH="$value" ;;
@ -178,20 +206,24 @@ do
--crossbuild=*) NGX_PLATFORM="$value" ;;
--build=*) NGX_BUILD="$value" ;;
--builddir=*) NGX_OBJS="$value" ;;
--with-rtsig_module) EVENT_RTSIG=YES ;;
--with-select_module) EVENT_SELECT=YES ;;
--without-select_module) EVENT_SELECT=NONE ;;
--with-poll_module) EVENT_POLL=YES ;;
--without-poll_module) EVENT_POLL=NONE ;;
--with-aio_module) EVENT_AIO=YES ;;
#--with-threads=*) USE_THREADS="$value" ;;
#--with-threads) USE_THREADS="pthreads" ;;
--with-threads) USE_THREADS=YES ;;
--with-file-aio) NGX_FILE_AIO=YES ;;
--with-ipv6) NGX_IPV6=YES ;;
--without-quic_bpf_module) QUIC_BPF=NONE ;;
--with-ipv6)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-ipv6\" option is deprecated"
;;
--without-http) HTTP=NO ;;
--without-http-cache) HTTP_CACHE=NO ;;
@ -204,12 +236,18 @@ do
--http-scgi-temp-path=*) NGX_HTTP_SCGI_TEMP_PATH="$value" ;;
--with-http_ssl_module) HTTP_SSL=YES ;;
--with-http_spdy_module) HTTP_SPDY=YES ;;
--with-http_v2_module) HTTP_V2=YES ;;
--with-http_v3_module) HTTP_V3=YES ;;
--with-http_realip_module) HTTP_REALIP=YES ;;
--with-http_addition_module) HTTP_ADDITION=YES ;;
--with-http_xslt_module) HTTP_XSLT=YES ;;
--with-http_xslt_module=dynamic) HTTP_XSLT=DYNAMIC ;;
--with-http_image_filter_module) HTTP_IMAGE_FILTER=YES ;;
--with-http_image_filter_module=dynamic)
HTTP_IMAGE_FILTER=DYNAMIC ;;
--with-http_geoip_module) HTTP_GEOIP=YES ;;
--with-http_geoip_module=dynamic)
HTTP_GEOIP=DYNAMIC ;;
--with-http_sub_module) HTTP_SUB=YES ;;
--with-http_dav_module) HTTP_DAV=YES ;;
--with-http_flv_module) HTTP_FLV=YES ;;
@ -220,6 +258,7 @@ do
--with-http_random_index_module) HTTP_RANDOM_INDEX=YES ;;
--with-http_secure_link_module) HTTP_SECURE_LINK=YES ;;
--with-http_degradation_module) HTTP_DEGRADATION=YES ;;
--with-http_slice_module) HTTP_SLICE=YES ;;
--without-http_charset_module) HTTP_CHARSET=NO ;;
--without-http_gzip_module) HTTP_GZIP=NO ;;
@ -227,6 +266,7 @@ do
--without-http_userid_module) HTTP_USERID=NO ;;
--without-http_access_module) HTTP_ACCESS=NO ;;
--without-http_auth_basic_module) HTTP_AUTH_BASIC=NO ;;
--without-http_mirror_module) HTTP_MIRROR=NO ;;
--without-http_autoindex_module) HTTP_AUTOINDEX=NO ;;
--without-http_status_module) HTTP_STATUS=NO ;;
--without-http_geo_module) HTTP_GEO=NO ;;
@ -238,23 +278,23 @@ do
--without-http_fastcgi_module) HTTP_FASTCGI=NO ;;
--without-http_uwsgi_module) HTTP_UWSGI=NO ;;
--without-http_scgi_module) HTTP_SCGI=NO ;;
--without-http_grpc_module) HTTP_GRPC=NO ;;
--without-http_memcached_module) HTTP_MEMCACHED=NO ;;
--without-http_limit_zone_module)
HTTP_LIMIT_CONN=NO
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--without-http_limit_zone_module\" option is deprecated, \
use the \"--without-http_limit_conn_module\" option instead"
;;
--without-http_limit_conn_module) HTTP_LIMIT_CONN=NO ;;
--without-http_limit_req_module) HTTP_LIMIT_REQ=NO ;;
--without-http_empty_gif_module) HTTP_EMPTY_GIF=NO ;;
--without-http_browser_module) HTTP_BROWSER=NO ;;
--without-http_upstream_hash_module) HTTP_UPSTREAM_HASH=NO ;;
--without-http_upstream_ip_hash_module) HTTP_UPSTREAM_IP_HASH=NO ;;
--without-http_upstream_least_conn_module)
HTTP_UPSTREAM_LEAST_CONN=NO ;;
--without-http_upstream_random_module)
HTTP_UPSTREAM_RANDOM=NO ;;
--without-http_upstream_keepalive_module) HTTP_UPSTREAM_KEEPALIVE=NO ;;
--without-http_upstream_zone_module) HTTP_UPSTREAM_ZONE=NO ;;
--with-http_perl_module) HTTP_PERL=YES ;;
--with-http_perl_module=dynamic) HTTP_PERL=DYNAMIC ;;
--with-perl_modules_path=*) NGX_PERL_MODULES="$value" ;;
--with-perl=*) NGX_PERL="$value" ;;
@ -262,18 +302,60 @@ use the \"--without-http_limit_conn_module\" option instead"
--with-http_stub_status_module) HTTP_STUB_STATUS=YES ;;
--with-mail) MAIL=YES ;;
--with-mail=dynamic) MAIL=DYNAMIC ;;
--with-mail_ssl_module) MAIL_SSL=YES ;;
# STUB
--with-imap) MAIL=YES ;;
--with-imap_ssl_module) MAIL_SSL=YES ;;
--with-imap)
MAIL=YES
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-imap\" option is deprecated, \
use the \"--with-mail\" option instead"
;;
--with-imap_ssl_module)
MAIL_SSL=YES
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-imap_ssl_module\" option is deprecated, \
use the \"--with-mail_ssl_module\" option instead"
;;
--without-mail_pop3_module) MAIL_POP3=NO ;;
--without-mail_imap_module) MAIL_IMAP=NO ;;
--without-mail_smtp_module) MAIL_SMTP=NO ;;
--with-stream) STREAM=YES ;;
--with-stream=dynamic) STREAM=DYNAMIC ;;
--with-stream_ssl_module) STREAM_SSL=YES ;;
--with-stream_realip_module) STREAM_REALIP=YES ;;
--with-stream_geoip_module) STREAM_GEOIP=YES ;;
--with-stream_geoip_module=dynamic)
STREAM_GEOIP=DYNAMIC ;;
--with-stream_ssl_preread_module)
STREAM_SSL_PREREAD=YES ;;
--without-stream_limit_conn_module)
STREAM_LIMIT_CONN=NO ;;
--without-stream_access_module) STREAM_ACCESS=NO ;;
--without-stream_geo_module) STREAM_GEO=NO ;;
--without-stream_map_module) STREAM_MAP=NO ;;
--without-stream_split_clients_module)
STREAM_SPLIT_CLIENTS=NO ;;
--without-stream_return_module) STREAM_RETURN=NO ;;
--without-stream_pass_module) STREAM_PASS=NO ;;
--without-stream_set_module) STREAM_SET=NO ;;
--without-stream_upstream_hash_module)
STREAM_UPSTREAM_HASH=NO ;;
--without-stream_upstream_least_conn_module)
STREAM_UPSTREAM_LEAST_CONN=NO ;;
--without-stream_upstream_random_module)
STREAM_UPSTREAM_RANDOM=NO ;;
--without-stream_upstream_zone_module)
STREAM_UPSTREAM_ZONE=NO ;;
--with-google_perftools_module) NGX_GOOGLE_PERFTOOLS=YES ;;
--with-cpp_test_module) NGX_CPP_TEST=YES ;;
--add-module=*) NGX_ADDONS="$NGX_ADDONS $value" ;;
--add-dynamic-module=*) DYNAMIC_ADDONS="$DYNAMIC_ADDONS $value" ;;
--with-compat) NGX_COMPAT=YES ;;
--with-cc=*) CC="$value" ;;
--with-cpp=*) CPP="$value" ;;
@ -287,17 +369,36 @@ use the \"--without-http_limit_conn_module\" option instead"
--with-pcre=*) PCRE="$value" ;;
--with-pcre-opt=*) PCRE_OPT="$value" ;;
--with-pcre-jit) PCRE_JIT=YES ;;
--without-pcre2) PCRE2=DISABLED ;;
--with-openssl=*) OPENSSL="$value" ;;
--with-openssl-opt=*) OPENSSL_OPT="$value" ;;
--with-md5=*) MD5="$value" ;;
--with-md5-opt=*) MD5_OPT="$value" ;;
--with-md5-asm) MD5_ASM=YES ;;
--with-md5=*)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-md5\" option is deprecated"
;;
--with-md5-opt=*)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-md5-opt\" option is deprecated"
;;
--with-md5-asm)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-md5-asm\" option is deprecated"
;;
--with-sha1=*) SHA1="$value" ;;
--with-sha1-opt=*) SHA1_OPT="$value" ;;
--with-sha1-asm) SHA1_ASM=YES ;;
--with-sha1=*)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-sha1\" option is deprecated"
;;
--with-sha1-opt=*)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-sha1-opt\" option is deprecated"
;;
--with-sha1-asm)
NGX_POST_CONF_MSG="$NGX_POST_CONF_MSG
$0: warning: the \"--with-sha1-asm\" option is deprecated"
;;
--with-zlib=*) ZLIB="$value" ;;
--with-zlib-opt=*) ZLIB_OPT="$value" ;;
@ -309,7 +410,6 @@ use the \"--without-http_limit_conn_module\" option instead"
--test-build-devpoll) NGX_TEST_BUILD_DEVPOLL=YES ;;
--test-build-eventport) NGX_TEST_BUILD_EVENTPORT=YES ;;
--test-build-epoll) NGX_TEST_BUILD_EPOLL=YES ;;
--test-build-rtsig) NGX_TEST_BUILD_RTSIG=YES ;;
--test-build-solaris-sendfilev) NGX_TEST_BUILD_SOLARIS_SENDFILEV=YES ;;
*)
@ -331,6 +431,7 @@ cat << END
--prefix=PATH set installation prefix
--sbin-path=PATH set nginx binary pathname
--modules-path=PATH set modules path
--conf-path=PATH set nginx.conf pathname
--error-log-path=PATH set error log pathname
--pid-path=PATH set nginx.pid pathname
@ -341,24 +442,32 @@ cat << END
--group=GROUP set non-privileged group for
worker processes
--build=NAME set build name
--builddir=DIR set build directory
--with-rtsig_module enable rtsig module
--with-select_module enable select module
--without-select_module disable select module
--with-poll_module enable poll module
--without-poll_module disable poll module
--with-threads enable thread pool support
--with-file-aio enable file AIO support
--with-ipv6 enable IPv6 support
--without-quic_bpf_module disable ngx_quic_bpf_module
--with-http_ssl_module enable ngx_http_ssl_module
--with-http_spdy_module enable ngx_http_spdy_module
--with-http_v2_module enable ngx_http_v2_module
--with-http_v3_module enable ngx_http_v3_module
--with-http_realip_module enable ngx_http_realip_module
--with-http_addition_module enable ngx_http_addition_module
--with-http_xslt_module enable ngx_http_xslt_module
--with-http_xslt_module=dynamic enable dynamic ngx_http_xslt_module
--with-http_image_filter_module enable ngx_http_image_filter_module
--with-http_image_filter_module=dynamic
enable dynamic ngx_http_image_filter_module
--with-http_geoip_module enable ngx_http_geoip_module
--with-http_geoip_module=dynamic enable dynamic ngx_http_geoip_module
--with-http_sub_module enable ngx_http_sub_module
--with-http_dav_module enable ngx_http_dav_module
--with-http_flv_module enable ngx_http_flv_module
@ -369,6 +478,7 @@ cat << END
--with-http_random_index_module enable ngx_http_random_index_module
--with-http_secure_link_module enable ngx_http_secure_link_module
--with-http_degradation_module enable ngx_http_degradation_module
--with-http_slice_module enable ngx_http_slice_module
--with-http_stub_status_module enable ngx_http_stub_status_module
--without-http_charset_module disable ngx_http_charset_module
@ -377,6 +487,7 @@ cat << END
--without-http_userid_module disable ngx_http_userid_module
--without-http_access_module disable ngx_http_access_module
--without-http_auth_basic_module disable ngx_http_auth_basic_module
--without-http_mirror_module disable ngx_http_mirror_module
--without-http_autoindex_module disable ngx_http_autoindex_module
--without-http_geo_module disable ngx_http_geo_module
--without-http_map_module disable ngx_http_map_module
@ -387,19 +498,27 @@ cat << END
--without-http_fastcgi_module disable ngx_http_fastcgi_module
--without-http_uwsgi_module disable ngx_http_uwsgi_module
--without-http_scgi_module disable ngx_http_scgi_module
--without-http_grpc_module disable ngx_http_grpc_module
--without-http_memcached_module disable ngx_http_memcached_module
--without-http_limit_conn_module disable ngx_http_limit_conn_module
--without-http_limit_req_module disable ngx_http_limit_req_module
--without-http_empty_gif_module disable ngx_http_empty_gif_module
--without-http_browser_module disable ngx_http_browser_module
--without-http_upstream_hash_module
disable ngx_http_upstream_hash_module
--without-http_upstream_ip_hash_module
disable ngx_http_upstream_ip_hash_module
--without-http_upstream_least_conn_module
disable ngx_http_upstream_least_conn_module
--without-http_upstream_random_module
disable ngx_http_upstream_random_module
--without-http_upstream_keepalive_module
disable ngx_http_upstream_keepalive_module
--without-http_upstream_zone_module
disable ngx_http_upstream_zone_module
--with-http_perl_module enable ngx_http_perl_module
--with-http_perl_module=dynamic enable dynamic ngx_http_perl_module
--with-perl_modules_path=PATH set Perl modules path
--with-perl=PATH set perl binary pathname
@ -419,15 +538,44 @@ cat << END
--without-http-cache disable HTTP cache
--with-mail enable POP3/IMAP4/SMTP proxy module
--with-mail=dynamic enable dynamic POP3/IMAP4/SMTP proxy module
--with-mail_ssl_module enable ngx_mail_ssl_module
--without-mail_pop3_module disable ngx_mail_pop3_module
--without-mail_imap_module disable ngx_mail_imap_module
--without-mail_smtp_module disable ngx_mail_smtp_module
--with-stream enable TCP/UDP proxy module
--with-stream=dynamic enable dynamic TCP/UDP proxy module
--with-stream_ssl_module enable ngx_stream_ssl_module
--with-stream_realip_module enable ngx_stream_realip_module
--with-stream_geoip_module enable ngx_stream_geoip_module
--with-stream_geoip_module=dynamic enable dynamic ngx_stream_geoip_module
--with-stream_ssl_preread_module enable ngx_stream_ssl_preread_module
--without-stream_limit_conn_module disable ngx_stream_limit_conn_module
--without-stream_access_module disable ngx_stream_access_module
--without-stream_geo_module disable ngx_stream_geo_module
--without-stream_map_module disable ngx_stream_map_module
--without-stream_split_clients_module
disable ngx_stream_split_clients_module
--without-stream_return_module disable ngx_stream_return_module
--without-stream_pass_module disable ngx_stream_pass_module
--without-stream_set_module disable ngx_stream_set_module
--without-stream_upstream_hash_module
disable ngx_stream_upstream_hash_module
--without-stream_upstream_least_conn_module
disable ngx_stream_upstream_least_conn_module
--without-stream_upstream_random_module
disable ngx_stream_upstream_random_module
--without-stream_upstream_zone_module
disable ngx_stream_upstream_zone_module
--with-google_perftools_module enable ngx_google_perftools_module
--with-cpp_test_module enable ngx_cpp_test_module
--add-module=PATH enable an external module
--add-module=PATH enable external module
--add-dynamic-module=PATH enable dynamic external module
--with-compat dynamic modules compatibility
--with-cc=PATH set C compiler pathname
--with-cpp=PATH set C preprocessor pathname
@ -442,14 +590,7 @@ cat << END
--with-pcre=DIR set path to PCRE library sources
--with-pcre-opt=OPTIONS set additional build options for PCRE
--with-pcre-jit build PCRE with JIT compilation support
--with-md5=DIR set path to md5 library sources
--with-md5-opt=OPTIONS set additional build options for md5
--with-md5-asm use md5 assembler sources
--with-sha1=DIR set path to sha1 library sources
--with-sha1-opt=OPTIONS set additional build options for sha1
--with-sha1-asm use sha1 assembler sources
--without-pcre2 do not use PCRE2 library
--with-zlib=DIR set path to zlib library sources
--with-zlib-opt=OPTIONS set additional build options for zlib
@ -471,24 +612,13 @@ END
fi
if [ $HTTP = NO ]; then
HTTP_CHARSET=NO
HTTP_GZIP=NO
HTTP_SSI=NO
HTTP_USERID=NO
HTTP_ACCESS=NO
HTTP_STATUS=NO
HTTP_REWRITE=NO
HTTP_PROXY=NO
HTTP_FASTCGI=NO
fi
if [ ".$NGX_PLATFORM" = ".win32" ]; then
NGX_WINE=$WINE
fi
NGX_SBIN_PATH=${NGX_SBIN_PATH:-sbin/nginx}
NGX_MODULES_PATH=${NGX_MODULES_PATH:-modules}
NGX_CONF_PATH=${NGX_CONF_PATH:-conf/nginx.conf}
NGX_CONF_PREFIX=`dirname $NGX_CONF_PATH`
NGX_PID_PATH=${NGX_PID_PATH:-logs/nginx.pid}

View file

@ -41,6 +41,14 @@ case "$NGX_PLATFORM" in
'
;;
NetBSD:*)
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
CORE_SRCS="$UNIX_SRCS"
NGX_RPATH=YES
;;
HP-UX:*)
# HP/UX
have=NGX_HPUX . auto/have_headers
@ -60,6 +68,15 @@ case "$NGX_PLATFORM" in
CORE_SRCS="$UNIX_SRCS"
;;
GNU:*)
# GNU Hurd
have=NGX_GNU_HURD . auto/have_headers
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
CORE_SRCS="$UNIX_SRCS"
CC_AUX_FLAGS="$CC_AUX_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"
;;
*)
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
@ -93,6 +110,26 @@ case "$NGX_MACHINE" in
NGX_MACH_CACHE_LINE=64
;;
aarch64 | arm64)
have=NGX_ALIGNMENT value=16 . auto/define
NGX_MACH_CACHE_LINE=64
;;
ppc64* | powerpc64*)
have=NGX_ALIGNMENT value=16 . auto/define
NGX_MACH_CACHE_LINE=128
;;
riscv64)
have=NGX_ALIGNMENT value=16 . auto/define
NGX_MACH_CACHE_LINE=64
;;
s390x)
have=NGX_ALIGNMENT value=16 . auto/define
NGX_MACH_CACHE_LINE=256
;;
*)
have=NGX_ALIGNMENT value=16 . auto/define
NGX_MACH_CACHE_LINE=32

View file

@ -14,6 +14,12 @@ CORE_SRCS="$UNIX_SRCS $DARWIN_SRCS"
ngx_spacer='
'
MAIN_LINK=
MODULE_LINK="-shared -Wl,-undefined,dynamic_lookup"
CC_AUX_FLAGS="$CC_AUX_FLAGS -D__APPLE_USE_RFC_3542"
# kqueue
echo " + kqueue found"
@ -83,7 +89,6 @@ ngx_feature_test="int kq;
# sendfile()
CC_AUX_FLAGS="$CC_AUX_FLAGS"
ngx_feature="sendfile()"
ngx_feature_name="NGX_HAVE_SENDFILE"
ngx_feature_run=yes
@ -100,7 +105,6 @@ ngx_feature_test="int s = 0, fd = 1;
. auto/feature
if [ $ngx_found = yes ]; then
have=NGX_HAVE_SENDFILE . auto/have
CORE_SRCS="$CORE_SRCS $DARWIN_SENDFILE_SRCS"
fi
@ -111,6 +115,6 @@ ngx_feature_run=no
ngx_feature_incs="#include <libkern/OSAtomic.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int32_t lock, n;
n = OSAtomicCompareAndSwap32Barrier(0, 1, &lock)"
ngx_feature_test="int32_t lock = 0;
if (!OSAtomicCompareAndSwap32Barrier(0, 1, &lock)) return 1"
. auto/feature

View file

@ -44,10 +44,10 @@ if [ $osreldate -gt 300007 ]; then
CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS"
fi
if [ $osreldate -gt 502103 ]; then
if [ $osreldate -gt 1100093 ]; then
echo " + sendfile()'s SF_NODISKIO found"
have=NGX_HAVE_AIO_SENDFILE . auto/have
have=NGX_HAVE_SENDFILE_NODISKIO . auto/have
fi
# POSIX semaphores
@ -78,7 +78,7 @@ fi
NGX_KQUEUE_CHECKED=YES
# kqueue's NOTE_LAWAT
# kqueue's NOTE_LOWAT
if [ \( $version -lt 500000 -a $version -ge 430000 \) \
-o $version -ge 500018 ]
@ -97,45 +97,6 @@ then
fi
if [ $USE_THREADS = "rfork" ]; then
echo " + using rfork()"
# # kqueue's EVFILT_SIGNAL is safe
#
# if [ $version -gt 460101 ]; then
# echo " + kqueue's EVFILT_SIGNAL is safe"
# have=NGX_HAVE_SAFE_EVFILT_SIGNAL . auto/have
# else
# echo "$0: error: the kqueue's EVFILT_SIGNAL is unsafe on this"
# echo "FreeBSD version, so --with-threads=rfork could not be used"
# echo
#
# exit 1
# fi
fi
if [ $EVENT_AIO = YES ]; then
if [ \( $version -lt 500000 -a $version -ge 430000 \) \
-o $version -ge 500014 ]
then
have=NGX_HAVE_AIO . auto/have
EVENT_MODULES="$EVENT_MODULES $AIO_MODULE"
CORE_SRCS="$CORE_SRCS $AIO_SRCS"
else
cat << END
$0: error: the kqueue does not support AIO on this FreeBSD version
END
exit 1
fi
fi
# cpuset_setaffinity()
if [ $version -ge 701000 ]; then

View file

@ -26,18 +26,6 @@ version=$((`uname -r \
version=${version:-0}
# enable the rt signals on Linux between 2.2.19 and 2.6.17
if [ \( $version -ge 131603 -a $version -lt 132626 \) -o $EVENT_RTSIG = YES ]
then
echo " + rt signals found"
have=NGX_HAVE_RTSIG . auto/have
EVENT_MODULES="$EVENT_MODULES $RTSIG_MODULE"
CORE_SRCS="$CORE_SRCS $RTSIG_SRCS"
EVENT_FOUND=YES
fi
# posix_fadvise64() had been implemented in 2.5.60
if [ $version -lt 132412 ]; then
@ -56,6 +44,7 @@ ngx_feature_test="int efd = 0;
struct epoll_event ee;
ee.events = EPOLLIN|EPOLLOUT|EPOLLET;
ee.data.ptr = NULL;
(void) ee;
efd = epoll_create(100);
if (efd == -1) return 1;"
. auto/feature
@ -81,6 +70,47 @@ if [ $ngx_found = yes ]; then
ee.data.ptr = NULL;
epoll_ctl(efd, EPOLL_CTL_ADD, fd, &ee)"
. auto/feature
# EPOLLEXCLUSIVE appeared in Linux 4.5, glibc 2.24
ngx_feature="EPOLLEXCLUSIVE"
ngx_feature_name="NGX_HAVE_EPOLLEXCLUSIVE"
ngx_feature_run=no
ngx_feature_incs="#include <sys/epoll.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int efd = 0, fd = 0;
struct epoll_event ee;
ee.events = EPOLLIN|EPOLLEXCLUSIVE;
ee.data.ptr = NULL;
epoll_ctl(efd, EPOLL_CTL_ADD, fd, &ee)"
. auto/feature
# eventfd()
ngx_feature="eventfd()"
ngx_feature_name="NGX_HAVE_EVENTFD"
ngx_feature_run=no
ngx_feature_incs="#include <sys/eventfd.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="(void) eventfd(0, 0)"
. auto/feature
if [ $ngx_found = yes ]; then
have=NGX_HAVE_SYS_EVENTFD_H . auto/have
fi
if [ $ngx_found = no ]; then
ngx_feature="eventfd() (SYS_eventfd)"
ngx_feature_incs="#include <sys/syscall.h>"
ngx_feature_test="(void) SYS_eventfd"
. auto/feature
fi
fi
@ -152,17 +182,37 @@ ngx_feature_test="if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) == -1) return 1"
. auto/feature
# sched_setaffinity()
# prctl(PR_SET_KEEPCAPS)
ngx_feature="sched_setaffinity()"
ngx_feature_name="NGX_HAVE_SCHED_SETAFFINITY"
ngx_feature_run=no
ngx_feature_incs="#include <sched.h>"
ngx_feature="prctl(PR_SET_KEEPCAPS)"
ngx_feature_name="NGX_HAVE_PR_SET_KEEPCAPS"
ngx_feature_run=yes
ngx_feature_incs="#include <sys/prctl.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="cpu_set_t mask;
CPU_ZERO(&mask);
sched_setaffinity(0, sizeof(cpu_set_t), &mask)"
ngx_feature_test="if (prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0) == -1) return 1"
. auto/feature
# capabilities
ngx_feature="capabilities"
ngx_feature_name="NGX_HAVE_CAPABILITIES"
ngx_feature_run=no
ngx_feature_incs="#include <linux/capability.h>
#include <sys/syscall.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="struct __user_cap_data_struct data;
struct __user_cap_header_struct header;
header.version = _LINUX_CAPABILITY_VERSION_1;
data.effective = CAP_TO_MASK(CAP_NET_RAW);
data.permitted = 0;
(void) header;
(void) data;
(void) SYS_capset"
. auto/feature
@ -178,8 +228,71 @@ ngx_feature_test="struct crypt_data cd;
crypt_r(\"key\", \"salt\", &cd);"
. auto/feature
if [ $ngx_found = yes ]; then
CRYPT_LIB="-lcrypt"
fi
ngx_include="sys/vfs.h"; . auto/include
# BPF sockhash
ngx_feature="BPF sockhash"
ngx_feature_name="NGX_HAVE_BPF"
ngx_feature_run=no
ngx_feature_incs="#include <linux/bpf.h>
#include <sys/syscall.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="union bpf_attr attr = { 0 };
attr.map_flags = 0;
attr.map_type = BPF_MAP_TYPE_SOCKHASH;
syscall(__NR_bpf, 0, &attr, 0);"
. auto/feature
if [ $ngx_found = yes ]; then
CORE_SRCS="$CORE_SRCS src/core/ngx_bpf.c"
CORE_DEPS="$CORE_DEPS src/core/ngx_bpf.h"
if [ $QUIC_BPF != NONE ]; then
QUIC_BPF=YES
fi
fi
ngx_feature="SO_COOKIE"
ngx_feature_name="NGX_HAVE_SO_COOKIE"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
$NGX_INCLUDE_INTTYPES_H"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="socklen_t optlen = sizeof(uint64_t);
uint64_t cookie;
getsockopt(0, SOL_SOCKET, SO_COOKIE, &cookie, &optlen)"
. auto/feature
if [ $ngx_found = yes ]; then
SO_COOKIE_FOUND=YES
fi
# UDP segmentation offloading
ngx_feature="UDP_SEGMENT"
ngx_feature_name="NGX_HAVE_UDP_SEGMENT"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/udp.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="socklen_t optlen = sizeof(int);
int val;
getsockopt(0, SOL_UDP, UDP_SEGMENT, &val, &optlen)"
. auto/feature
CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"

View file

@ -52,7 +52,7 @@ ngx_feature_run=no
ngx_feature_incs="#include <port.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int n = port_create()"
ngx_feature_test="(void) port_create()"
. auto/feature
if [ $ngx_found = yes ]; then

View file

@ -11,11 +11,18 @@ CORE_SRCS="$WIN32_SRCS $IOCP_SRCS"
OS_CONFIG="$WIN32_CONFIG"
NGX_ICONS="$NGX_WIN32_ICONS"
SELECT_SRCS=$WIN32_SELECT_SRCS
POLL_SRCS=$WIN32_POLL_SRCS
ngx_pic_opt=
ngx_binext=".exe"
case "$NGX_CC_NAME" in
gcc)
clang | gcc)
CORE_LIBS="$CORE_LIBS -ladvapi32 -lws2_32"
MAIN_LINK="$MAIN_LINK -Wl,--export-all-symbols"
MAIN_LINK="$MAIN_LINK -Wl,--out-implib=$NGX_OBJS/libnginx.a"
MODULE_LINK="-shared -L $NGX_OBJS -lnginx"
;;
*)
@ -25,16 +32,8 @@ case "$NGX_CC_NAME" in
esac
EVENT_MODULES="$EVENT_MODULES $IOCP_MODULE"
EVENT_FOUND=YES
#EVENT_FOUND=YES
if [ $EVENT_SELECT = NO ]; then
CORE_SRCS="$CORE_SRCS $SELECT_SRCS"
EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE"
fi
have=NGX_HAVE_INET6 . auto/have
if [ $NGX_IPV6 = YES ]; then
have=NGX_HAVE_INET6 . auto/have
fi
have=NGX_HAVE_AIO . auto/have
have=NGX_HAVE_IOCP . auto/have

View file

@ -19,6 +19,7 @@ CORE_DEPS="src/core/nginx.h \
src/core/ngx_queue.h \
src/core/ngx_string.h \
src/core/ngx_parse.h \
src/core/ngx_parse_time.h \
src/core/ngx_inet.h \
src/core/ngx_file.h \
src/core/ngx_crc.h \
@ -28,16 +29,19 @@ CORE_DEPS="src/core/nginx.h \
src/core/ngx_sha1.h \
src/core/ngx_rbtree.h \
src/core/ngx_radix_tree.h \
src/core/ngx_rwlock.h \
src/core/ngx_slab.h \
src/core/ngx_times.h \
src/core/ngx_shmtx.h \
src/core/ngx_connection.h \
src/core/ngx_cycle.h \
src/core/ngx_conf_file.h \
src/core/ngx_module.h \
src/core/ngx_resolver.h \
src/core/ngx_open_file_cache.h \
src/core/ngx_crypt.h \
src/core/ngx_proxy_protocol.h"
src/core/ngx_proxy_protocol.h \
src/core/ngx_syslog.h"
CORE_SRCS="src/core/nginx.c \
@ -51,11 +55,13 @@ CORE_SRCS="src/core/nginx.c \
src/core/ngx_output_chain.c \
src/core/ngx_string.c \
src/core/ngx_parse.c \
src/core/ngx_parse_time.c \
src/core/ngx_inet.c \
src/core/ngx_file.c \
src/core/ngx_crc32.c \
src/core/ngx_murmurhash.c \
src/core/ngx_md5.c \
src/core/ngx_sha1.c \
src/core/ngx_rbtree.c \
src/core/ngx_radix_tree.c \
src/core/ngx_slab.c \
@ -64,41 +70,33 @@ CORE_SRCS="src/core/nginx.c \
src/core/ngx_connection.c \
src/core/ngx_cycle.c \
src/core/ngx_spinlock.c \
src/core/ngx_rwlock.c \
src/core/ngx_cpuinfo.c \
src/core/ngx_conf_file.c \
src/core/ngx_module.c \
src/core/ngx_resolver.c \
src/core/ngx_open_file_cache.c \
src/core/ngx_crypt.c \
src/core/ngx_proxy_protocol.c"
REGEX_MODULE=ngx_regex_module
REGEX_DEPS=src/core/ngx_regex.h
REGEX_SRCS=src/core/ngx_regex.c
OPENSSL_MODULE=ngx_openssl_module
OPENSSL_DEPS=src/event/ngx_event_openssl.h
OPENSSL_SRCS="src/event/ngx_event_openssl.c \
src/event/ngx_event_openssl_stapling.c"
src/core/ngx_proxy_protocol.c \
src/core/ngx_syslog.c"
EVENT_MODULES="ngx_events_module ngx_event_core_module"
EVENT_INCS="src/event src/event/modules"
EVENT_INCS="src/event src/event/modules src/event/quic"
EVENT_DEPS="src/event/ngx_event.h \
src/event/ngx_event_timer.h \
src/event/ngx_event_posted.h \
src/event/ngx_event_busy_lock.h \
src/event/ngx_event_connect.h \
src/event/ngx_event_pipe.h"
src/event/ngx_event_pipe.h \
src/event/ngx_event_udp.h"
EVENT_SRCS="src/event/ngx_event.c \
src/event/ngx_event_timer.c \
src/event/ngx_event_posted.c \
src/event/ngx_event_busy_lock.c \
src/event/ngx_event_accept.c \
src/event/ngx_event_udp.c \
src/event/ngx_event_connect.c \
src/event/ngx_event_pipe.c"
@ -109,6 +107,7 @@ WIN32_SELECT_SRCS=src/event/modules/ngx_win32_select_module.c
POLL_MODULE=ngx_poll_module
POLL_SRCS=src/event/modules/ngx_poll_module.c
WIN32_POLL_SRCS=src/event/modules/ngx_win32_poll_module.c
KQUEUE_MODULE=ngx_kqueue_module
KQUEUE_SRCS=src/event/modules/ngx_kqueue_module.c
@ -122,19 +121,9 @@ EVENTPORT_SRCS=src/event/modules/ngx_eventport_module.c
EPOLL_MODULE=ngx_epoll_module
EPOLL_SRCS=src/event/modules/ngx_epoll_module.c
RTSIG_MODULE=ngx_rtsig_module
RTSIG_SRCS=src/event/modules/ngx_rtsig_module.c
IOCP_MODULE=ngx_iocp_module
IOCP_SRCS=src/event/modules/ngx_iocp_module.c
AIO_MODULE=ngx_aio_module
AIO_SRCS="src/event/modules/ngx_aio_module.c \
src/os/unix/ngx_aio_read.c \
src/os/unix/ngx_aio_write.c \
src/os/unix/ngx_aio_read_chain.c \
src/os/unix/ngx_aio_write_chain.c"
FILE_AIO_SRCS="src/os/unix/ngx_file_aio_read.c"
LINUX_AIO_SRCS="src/os/unix/ngx_linux_aio_read.c"
@ -156,6 +145,7 @@ UNIX_DEPS="$CORE_DEPS $EVENT_DEPS \
src/os/unix/ngx_socket.h \
src/os/unix/ngx_os.h \
src/os/unix/ngx_user.h \
src/os/unix/ngx_dlopen.h \
src/os/unix/ngx_process_cycle.h"
# add to UNIX_DEPS
@ -179,6 +169,8 @@ UNIX_SRCS="$CORE_SRCS $EVENT_SRCS \
src/os/unix/ngx_udp_recv.c \
src/os/unix/ngx_send.c \
src/os/unix/ngx_writev_chain.c \
src/os/unix/ngx_udp_send.c \
src/os/unix/ngx_udp_sendmsg_chain.c \
src/os/unix/ngx_channel.c \
src/os/unix/ngx_shmem.c \
src/os/unix/ngx_process.c \
@ -187,18 +179,21 @@ UNIX_SRCS="$CORE_SRCS $EVENT_SRCS \
src/os/unix/ngx_setproctitle.c \
src/os/unix/ngx_posix_init.c \
src/os/unix/ngx_user.c \
src/os/unix/ngx_dlopen.c \
src/os/unix/ngx_process_cycle.c"
POSIX_DEPS=src/os/unix/ngx_posix_config.h
THREAD_POOL_MODULE=ngx_thread_pool_module
THREAD_POOL_DEPS=src/core/ngx_thread_pool.h
THREAD_POOL_SRCS="src/core/ngx_thread_pool.c
src/os/unix/ngx_thread_cond.c
src/os/unix/ngx_thread_mutex.c
src/os/unix/ngx_thread_id.c"
FREEBSD_DEPS="src/os/unix/ngx_freebsd_config.h src/os/unix/ngx_freebsd.h"
FREEBSD_SRCS=src/os/unix/ngx_freebsd_init.c
FREEBSD_SENDFILE_SRCS=src/os/unix/ngx_freebsd_sendfile_chain.c
FREEBSD_RFORK_DEPS="src/os/unix/ngx_freebsd_rfork_thread.h"
FREEBSD_RFORK_SRCS="src/os/unix/ngx_freebsd_rfork_thread.c"
FREEBSD_RFORK_THREAD_SRCS="src/os/unix/rfork_thread.S"
PTHREAD_SRCS="src/os/unix/ngx_pthread_thread.c"
LINUX_DEPS="src/os/unix/ngx_linux_config.h src/os/unix/ngx_linux.h"
LINUX_SRCS=src/os/unix/ngx_linux_init.c
@ -230,6 +225,7 @@ WIN32_DEPS="$CORE_DEPS $EVENT_DEPS \
src/os/win32/ngx_socket.h \
src/os/win32/ngx_os.h \
src/os/win32/ngx_user.h \
src/os/win32/ngx_dlopen.h \
src/os/win32/ngx_process_cycle.h"
WIN32_CONFIG=src/os/win32/ngx_win32_config.h
@ -250,6 +246,7 @@ WIN32_SRCS="$CORE_SRCS $EVENT_SRCS \
src/os/win32/ngx_wsasend_chain.c \
src/os/win32/ngx_win32_init.c \
src/os/win32/ngx_user.c \
src/os/win32/ngx_dlopen.c \
src/os/win32/ngx_event_log.c \
src/os/win32/ngx_process_cycle.c \
src/event/ngx_event_acceptex.c"
@ -258,294 +255,7 @@ NGX_WIN32_ICONS="src/os/win32/nginx.ico"
NGX_WIN32_RC="src/os/win32/nginx.rc"
# the http modules that have their logging formats
# must be after ngx_http_log_module
HTTP_MODULES="ngx_http_module \
ngx_http_core_module \
ngx_http_log_module \
ngx_http_upstream_module"
HTTP_WRITE_FILTER_MODULE="ngx_http_write_filter_module"
HTTP_HEADER_FILTER_MODULE="ngx_http_header_filter_module"
HTTP_POSTPONE_FILTER_MODULE=ngx_http_postpone_filter_module
HTTP_COPY_FILTER_MODULE=ngx_http_copy_filter_module
HTTP_CHUNKED_FILTER_MODULE=ngx_http_chunked_filter_module
HTTP_HEADERS_FILTER_MODULE=ngx_http_headers_filter_module
HTTP_RANGE_HEADER_FILTER_MODULE=ngx_http_range_header_filter_module
HTTP_RANGE_BODY_FILTER_MODULE=ngx_http_range_body_filter_module
HTTP_NOT_MODIFIED_FILTER_MODULE=ngx_http_not_modified_filter_module
HTTP_STATIC_MODULE=ngx_http_static_module
HTTP_INDEX_MODULE=ngx_http_index_module
HTTP_INCS="src/http src/http/modules"
HTTP_DEPS="src/http/ngx_http.h \
src/http/ngx_http_request.h \
src/http/ngx_http_config.h \
src/http/ngx_http_core_module.h \
src/http/ngx_http_cache.h \
src/http/ngx_http_variables.h \
src/http/ngx_http_script.h \
src/http/ngx_http_upstream.h \
src/http/ngx_http_upstream_round_robin.h \
src/http/ngx_http_busy_lock.h"
HTTP_SRCS="src/http/ngx_http.c \
src/http/ngx_http_core_module.c \
src/http/ngx_http_special_response.c \
src/http/ngx_http_request.c \
src/http/ngx_http_parse.c \
src/http/ngx_http_header_filter_module.c \
src/http/ngx_http_write_filter_module.c \
src/http/ngx_http_copy_filter_module.c \
src/http/modules/ngx_http_log_module.c \
src/http/ngx_http_request_body.c \
src/http/ngx_http_variables.c \
src/http/ngx_http_script.c \
src/http/ngx_http_upstream.c \
src/http/ngx_http_upstream_round_robin.c \
src/http/ngx_http_parse_time.c \
src/http/modules/ngx_http_static_module.c \
src/http/modules/ngx_http_index_module.c \
src/http/modules/ngx_http_chunked_filter_module.c \
src/http/modules/ngx_http_range_filter_module.c \
src/http/modules/ngx_http_headers_filter_module.c \
src/http/modules/ngx_http_not_modified_filter_module.c"
# STUB
HTTP_SRCS="$HTTP_SRCS src/http/ngx_http_busy_lock.c"
HTTP_POSTPONE_FILTER_SRCS=src/http/ngx_http_postpone_filter_module.c
HTTP_FILE_CACHE_SRCS=src/http/ngx_http_file_cache.c
HTTP_SPDY_MODULE=ngx_http_spdy_module
HTTP_SPDY_FILTER_MODULE=ngx_http_spdy_filter_module
HTTP_SPDY_DEPS="src/http/ngx_http_spdy.h \
src/http/ngx_http_spdy_module.h"
HTTP_SPDY_SRCS="src/http/ngx_http_spdy.c \
src/http/ngx_http_spdy_module.c \
src/http/ngx_http_spdy_filter_module.c"
HTTP_CHARSET_FILTER_MODULE=ngx_http_charset_filter_module
HTTP_CHARSET_SRCS=src/http/modules/ngx_http_charset_filter_module.c
HTTP_GZIP_FILTER_MODULE=ngx_http_gzip_filter_module
HTTP_GZIP_SRCS=src/http/modules/ngx_http_gzip_filter_module.c
HTTP_GUNZIP_FILTER_MODULE=ngx_http_gunzip_filter_module
HTTP_GUNZIP_SRCS=src/http/modules/ngx_http_gunzip_filter_module.c
HTTP_SSI_FILTER_MODULE=ngx_http_ssi_filter_module
HTTP_SSI_DEPS=src/http/modules/ngx_http_ssi_filter_module.h
HTTP_SSI_SRCS=src/http/modules/ngx_http_ssi_filter_module.c
HTTP_XSLT_FILTER_MODULE=ngx_http_xslt_filter_module
HTTP_XSLT_SRCS=src/http/modules/ngx_http_xslt_filter_module.c
HTTP_IMAGE_FILTER_MODULE=ngx_http_image_filter_module
HTTP_IMAGE_SRCS=src/http/modules/ngx_http_image_filter_module.c
HTTP_SUB_FILTER_MODULE=ngx_http_sub_filter_module
HTTP_SUB_SRCS=src/http/modules/ngx_http_sub_filter_module.c
HTTP_USERID_FILTER_MODULE=ngx_http_userid_filter_module
HTTP_USERID_SRCS=src/http/modules/ngx_http_userid_filter_module.c
HTTP_REALIP_MODULE=ngx_http_realip_module
HTTP_REALIP_SRCS=src/http/modules/ngx_http_realip_module.c
HTTP_ADDITION_FILTER_MODULE=ngx_http_addition_filter_module
HTTP_ADDITION_SRCS=src/http/modules/ngx_http_addition_filter_module.c
HTTP_DAV_MODULE=ngx_http_dav_module
HTTP_DAV_SRCS=src/http/modules/ngx_http_dav_module.c
HTTP_ACCESS_MODULE=ngx_http_access_module
HTTP_ACCESS_SRCS=src/http/modules/ngx_http_access_module.c
HTTP_AUTH_BASIC_MODULE=ngx_http_auth_basic_module
HTTP_AUTH_BASIC_SRCS=src/http/modules/ngx_http_auth_basic_module.c
HTTP_AUTH_REQUEST_MODULE=ngx_http_auth_request_module
HTTP_AUTH_REQUEST_SRCS=src/http/modules/ngx_http_auth_request_module.c
HTTP_AUTOINDEX_MODULE=ngx_http_autoindex_module
HTTP_AUTOINDEX_SRCS=src/http/modules/ngx_http_autoindex_module.c
HTTP_RANDOM_INDEX_MODULE=ngx_http_random_index_module
HTTP_RANDOM_INDEX_SRCS=src/http/modules/ngx_http_random_index_module.c
HTTP_STATUS_MODULE=ngx_http_status_module
HTTP_STATUS_SRCS=src/http/modules/ngx_http_status_module.c
HTTP_GEO_MODULE=ngx_http_geo_module
HTTP_GEO_SRCS=src/http/modules/ngx_http_geo_module.c
HTTP_GEOIP_MODULE=ngx_http_geoip_module
HTTP_GEOIP_SRCS=src/http/modules/ngx_http_geoip_module.c
HTTP_MAP_MODULE=ngx_http_map_module
HTTP_MAP_SRCS=src/http/modules/ngx_http_map_module.c
HTTP_SPLIT_CLIENTS_MODULE=ngx_http_split_clients_module
HTTP_SPLIT_CLIENTS_SRCS=src/http/modules/ngx_http_split_clients_module.c
HTTP_REFERER_MODULE=ngx_http_referer_module
HTTP_REFERER_SRCS=src/http/modules/ngx_http_referer_module.c
HTTP_REWRITE_MODULE=ngx_http_rewrite_module
HTTP_REWRITE_SRCS=src/http/modules/ngx_http_rewrite_module.c
HTTP_SSL_MODULE=ngx_http_ssl_module
HTTP_SSL_DEPS=src/http/modules/ngx_http_ssl_module.h
HTTP_SSL_SRCS=src/http/modules/ngx_http_ssl_module.c
HTTP_PROXY_MODULE=ngx_http_proxy_module
HTTP_PROXY_SRCS=src/http/modules/ngx_http_proxy_module.c
HTTP_FASTCGI_MODULE=ngx_http_fastcgi_module
HTTP_FASTCGI_SRCS=src/http/modules/ngx_http_fastcgi_module.c
HTTP_UWSGI_MODULE=ngx_http_uwsgi_module
HTTP_UWSGI_SRCS=src/http/modules/ngx_http_uwsgi_module.c
HTTP_SCGI_MODULE=ngx_http_scgi_module
HTTP_SCGI_SRCS=src/http/modules/ngx_http_scgi_module.c
HTTP_PERL_MODULE=ngx_http_perl_module
HTTP_PERL_INCS=src/http/modules/perl
HTTP_PERL_DEPS=src/http/modules/perl/ngx_http_perl_module.h
HTTP_PERL_SRCS=src/http/modules/perl/ngx_http_perl_module.c
HTTP_MEMCACHED_MODULE=ngx_http_memcached_module
HTTP_MEMCACHED_SRCS=src/http/modules/ngx_http_memcached_module.c
HTTP_LIMIT_CONN_MODULE=ngx_http_limit_conn_module
HTTP_LIMIT_CONN_SRCS=src/http/modules/ngx_http_limit_conn_module.c
HTTP_LIMIT_REQ_MODULE=ngx_http_limit_req_module
HTTP_LIMIT_REQ_SRCS=src/http/modules/ngx_http_limit_req_module.c
HTTP_EMPTY_GIF_MODULE=ngx_http_empty_gif_module
HTTP_EMPTY_GIF_SRCS=src/http/modules/ngx_http_empty_gif_module.c
HTTP_BROWSER_MODULE=ngx_http_browser_module
HTTP_BROWSER_SRCS=src/http/modules/ngx_http_browser_module.c
HTTP_SECURE_LINK_MODULE=ngx_http_secure_link_module
HTTP_SECURE_LINK_SRCS=src/http/modules/ngx_http_secure_link_module.c
HTTP_DEGRADATION_MODULE=ngx_http_degradation_module
HTTP_DEGRADATION_SRCS=src/http/modules/ngx_http_degradation_module.c
HTTP_FLV_MODULE=ngx_http_flv_module
HTTP_FLV_SRCS=src/http/modules/ngx_http_flv_module.c
HTTP_MP4_MODULE=ngx_http_mp4_module
HTTP_MP4_SRCS=src/http/modules/ngx_http_mp4_module.c
HTTP_GZIP_STATIC_MODULE=ngx_http_gzip_static_module
HTTP_GZIP_STATIC_SRCS=src/http/modules/ngx_http_gzip_static_module.c
HTTP_UPSTREAM_IP_HASH_MODULE=ngx_http_upstream_ip_hash_module
HTTP_UPSTREAM_IP_HASH_SRCS=src/http/modules/ngx_http_upstream_ip_hash_module.c
HTTP_UPSTREAM_LEAST_CONN_MODULE=ngx_http_upstream_least_conn_module
HTTP_UPSTREAM_LEAST_CONN_SRCS=" \
src/http/modules/ngx_http_upstream_least_conn_module.c"
HTTP_UPSTREAM_KEEPALIVE_MODULE=ngx_http_upstream_keepalive_module
HTTP_UPSTREAM_KEEPALIVE_SRCS=" \
src/http/modules/ngx_http_upstream_keepalive_module.c"
MAIL_INCS="src/mail"
MAIL_DEPS="src/mail/ngx_mail.h"
MAIL_MODULES="ngx_mail_module ngx_mail_core_module"
MAIL_SRCS="src/mail/ngx_mail.c \
src/mail/ngx_mail_core_module.c \
src/mail/ngx_mail_handler.c \
src/mail/ngx_mail_parse.c"
MAIL_POP3_MODULE="ngx_mail_pop3_module"
MAIL_POP3_DEPS="src/mail/ngx_mail_pop3_module.h"
MAIL_POP3_SRCS="src/mail/ngx_mail_pop3_module.c \
src/mail/ngx_mail_pop3_handler.c"
MAIL_IMAP_MODULE="ngx_mail_imap_module"
MAIL_IMAP_DEPS="src/mail/ngx_mail_imap_module.h"
MAIL_IMAP_SRCS="src/mail/ngx_mail_imap_module.c \
src/mail/ngx_mail_imap_handler.c"
MAIL_SMTP_MODULE="ngx_mail_smtp_module"
MAIL_SMTP_DEPS="src/mail/ngx_mail_smtp_module.h"
MAIL_SMTP_SRCS="src/mail/ngx_mail_smtp_module.c \
src/mail/ngx_mail_smtp_handler.c"
MAIL_SSL_MODULE="ngx_mail_ssl_module"
MAIL_SSL_DEPS="src/mail/ngx_mail_ssl_module.h"
MAIL_SSL_SRCS="src/mail/ngx_mail_ssl_module.c"
MAIL_AUTH_HTTP_MODULE="ngx_mail_auth_http_module"
MAIL_AUTH_HTTP_SRCS="src/mail/ngx_mail_auth_http_module.c"
MAIL_PROXY_MODULE="ngx_mail_proxy_module"
MAIL_PROXY_SRCS="src/mail/ngx_mail_proxy_module.c"
NGX_GOOGLE_PERFTOOLS_MODULE=ngx_google_perftools_module
NGX_GOOGLE_PERFTOOLS_SRCS=src/misc/ngx_google_perftools_module.c
NGX_CPP_TEST_SRCS=src/misc/ngx_cpp_test_module.cpp
HTTP_HUFF_SRCS="src/http/ngx_http_huff_decode.c
src/http/ngx_http_huff_encode.c"

View file

@ -3,43 +3,22 @@
# Copyright (C) Nginx, Inc.
### STUB
if [ $USE_THREADS != NO ]; then
cat << END
$0: error: the threads support is broken now.
END
exit 1
fi
###
echo
echo "Configuration summary"
#case $USE_THREADS in
# rfork) echo " + using rfork()ed threads" ;;
# pthreads) echo " + using libpthread threads library" ;;
# libthr) echo " + using FreeBSD libthr threads library" ;;
# libc_r) echo " + using FreeBSD libc_r threads library" ;;
# linuxthreads) echo " + using FreeBSD LinuxThreads port library" ;;
# NO) echo " + threads are not used" ;;
# *) echo " + using lib$USE_THREADS threads library" ;;
#esac
if [ $USE_THREADS = YES ]; then
echo " + using threads"
fi
if [ $USE_PCRE = DISABLED ]; then
echo " + PCRE library is disabled"
else
case $PCRE in
YES) echo " + using system PCRE library" ;;
YES) echo " + using system $PCRE_LIBRARY library" ;;
NONE) echo " + PCRE library is not used" ;;
*) echo " + using PCRE library: $PCRE" ;;
*) echo " + using $PCRE_LIBRARY library: $PCRE" ;;
esac
fi
@ -49,20 +28,6 @@ case $OPENSSL in
*) echo " + using OpenSSL library: $OPENSSL" ;;
esac
case $MD5 in
YES) echo " + md5: using $MD5_LIB library" ;;
NONE) echo " + md5 library is not used" ;;
NO) echo " + using builtin md5 code" ;;
*) echo " + using md5 library: $MD5" ;;
esac
case $SHA1 in
YES) echo " + sha1: using $SHA1_LIB library" ;;
NONE) echo " + sha1 library is not used" ;;
NO) echo " + sha1 library is not found" ;;
*) echo " + using sha1 library: $SHA1" ;;
esac
case $ZLIB in
YES) echo " + using system zlib library" ;;
NONE) echo " + zlib library is not used" ;;
@ -81,6 +46,7 @@ echo
cat << END
nginx path prefix: "$NGX_PREFIX"
nginx binary file: "$NGX_SBIN_PATH"
nginx modules path: "$NGX_MODULES_PATH"
nginx configuration prefix: "$NGX_CONF_PREFIX"
nginx configuration file: "$NGX_CONF_PATH"
nginx pid file: "$NGX_PID_PATH"

21
auto/threads Normal file
View file

@ -0,0 +1,21 @@
# Copyright (C) Nginx, Inc.
if [ $USE_THREADS = YES ]; then
if [ "$NGX_PLATFORM" = win32 ]; then
cat << END
$0: --with-threads is not supported on Windows
END
exit 1
fi
have=NGX_THREADS . auto/have
CORE_DEPS="$CORE_DEPS $THREAD_POOL_DEPS"
CORE_SRCS="$CORE_SRCS $THREAD_POOL_SRCS"
CORE_LIBS="$CORE_LIBS -lpthread"
NGX_LIBPTHREAD="-lpthread"
fi

View file

@ -25,7 +25,7 @@ $NGX_INCLUDE_UNISTD_H
$NGX_INCLUDE_INTTYPES_H
$NGX_INCLUDE_AUTO_CONFIG_H
int main() {
int main(void) {
printf("%d", (int) sizeof($ngx_type));
return 0;
}
@ -45,27 +45,14 @@ if [ -x $NGX_AUTOTEST ]; then
fi
rm -rf $NGX_AUTOTEST*
case $ngx_size in
4)
if [ "$ngx_type"="long" ]; then
ngx_max_value=2147483647L
else
ngx_max_value=2147483647
fi
ngx_max_value=2147483647
ngx_max_len='(sizeof("-2147483648") - 1)'
;;
8)
if [ "$ngx_type"="long long" ]; then
ngx_max_value=9223372036854775807LL
else
ngx_max_value=9223372036854775807L
fi
ngx_max_value=9223372036854775807LL
ngx_max_len='(sizeof("-9223372036854775808") - 1)'
;;
@ -79,6 +66,11 @@ case $ngx_size in
echo $ngx_test >> $NGX_AUTOCONF_ERR
echo "----------" >> $NGX_AUTOCONF_ERR
rm -rf $NGX_AUTOTEST*
exit 1
esac
rm -rf $NGX_AUTOTEST*

View file

@ -27,7 +27,7 @@ do
#include <netinet/in.h>
$NGX_INCLUDE_INTTYPES_H
int main() {
int main(void) {
$ngx_try i = 0;
return (int) i;
}
@ -49,18 +49,23 @@ END
fi
fi
rm -rf $NGX_AUTOTEST*
if [ $ngx_found = no ]; then
echo $ngx_n " $ngx_try not found$ngx_c"
if [ $ngx_try = $ngx_type ]; then
echo $ngx_n " $ngx_try not found$ngx_c"
else
echo $ngx_n ", $ngx_try not found$ngx_c"
fi
echo "----------" >> $NGX_AUTOCONF_ERR
cat $NGX_AUTOTEST.c >> $NGX_AUTOCONF_ERR
echo "----------" >> $NGX_AUTOCONF_ERR
echo $ngx_test >> $NGX_AUTOCONF_ERR
echo "----------" >> $NGX_AUTOCONF_ERR
fi
else
rm -rf $NGX_AUTOTEST*
if [ $ngx_found != no ]; then
break
fi
done

View file

@ -4,17 +4,22 @@
echo $ngx_n "checking for uintptr_t ...$ngx_c"
echo >> $NGX_AUTOCONF_ERR
echo "checking for uintptr_t" >> $NGX_AUTOCONF_ERR
cat << END >> $NGX_AUTOCONF_ERR
----------------------------------------
checking for uintptr_t
END
found=no
cat << END > $NGX_AUTOTEST.c
#include <sys/types.h>
$NGX_INTTYPES_H
$NGX_INCLUDE_INTTYPES_H
int main() {
int main(void) {
uintptr_t i = 0;
return (int) i;
}

394
auto/unix Executable file → Normal file
View file

@ -75,7 +75,7 @@ if test -z "$NGX_KQUEUE_CHECKED"; then
ngx_feature_incs="#include <sys/event.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int kq; kq = kqueue()"
ngx_feature_test="(void) kqueue()"
. auto/feature
if [ $ngx_found = yes ]; then
@ -92,7 +92,8 @@ if test -z "$NGX_KQUEUE_CHECKED"; then
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="struct kevent kev;
kev.fflags = NOTE_LOWAT;"
kev.fflags = NOTE_LOWAT;
(void) kev"
. auto/feature
@ -255,22 +256,23 @@ ngx_feature_test="struct statvfs fs;
ngx_feature="dlopen()"
ngx_feature_name=
ngx_feature_name="NGX_HAVE_DLOPEN"
ngx_feature_run=no
ngx_feature_incs="#include <dlfcn.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="dlopen(NULL, 0)"
ngx_feature_test="dlopen(NULL, RTLD_NOW | RTLD_GLOBAL); dlsym(NULL, \"\")"
. auto/feature
if [ $ngx_found != yes ]; then
if [ $ngx_found = no ]; then
ngx_feature="dlopen() in libdl"
ngx_feature_libs="-ldl"
. auto/feature
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS -ldl"
NGX_LIBDL="-ldl"
fi
fi
@ -286,7 +288,7 @@ ngx_feature_test="sched_yield()"
. auto/feature
if [ $ngx_found != yes ]; then
if [ $ngx_found = no ]; then
ngx_feature="sched_yield() in librt"
ngx_feature_libs="-lrt"
@ -298,13 +300,35 @@ if [ $ngx_found != yes ]; then
fi
ngx_feature="sched_setaffinity()"
ngx_feature_name="NGX_HAVE_SCHED_SETAFFINITY"
ngx_feature_run=no
ngx_feature_incs="#include <sched.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="cpu_set_t mask;
CPU_ZERO(&mask);
sched_setaffinity(0, sizeof(cpu_set_t), &mask)"
. auto/feature
ngx_feature="SO_SETFIB"
ngx_feature_name="NGX_HAVE_SETFIB"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_SETFIB, NULL, 4)"
ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_SETFIB, NULL, 0)"
. auto/feature
ngx_feature="SO_REUSEPORT"
ngx_feature_name="NGX_HAVE_REUSEPORT"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_REUSEPORT, NULL, 0)"
. auto/feature
@ -318,6 +342,160 @@ ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_ACCEPTFILTER, NULL, 0)"
. auto/feature
# OpenBSD bind to any address for transparent proxying
ngx_feature="SO_BINDANY"
ngx_feature_name="NGX_HAVE_TRANSPARENT_PROXY"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_BINDANY, NULL, 0)"
. auto/feature
# Linux transparent proxying
ngx_feature="IP_TRANSPARENT"
ngx_feature_name="NGX_HAVE_TRANSPARENT_PROXY"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_TRANSPARENT, NULL, 0)"
. auto/feature
# FreeBSD bind to any address for transparent proxying
ngx_feature="IP_BINDANY"
ngx_feature_name="NGX_HAVE_TRANSPARENT_PROXY"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_BINDANY, NULL, 0)"
. auto/feature
# Linux IP_BIND_ADDRESS_NO_PORT
ngx_feature="IP_BIND_ADDRESS_NO_PORT"
ngx_feature_name="NGX_HAVE_IP_BIND_ADDRESS_NO_PORT"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_BIND_ADDRESS_NO_PORT, NULL, 0)"
. auto/feature
# BSD way to get IPv4 datagram destination address
ngx_feature="IP_RECVDSTADDR"
ngx_feature_name="NGX_HAVE_IP_RECVDSTADDR"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_RECVDSTADDR, NULL, 0)"
. auto/feature
# BSD way to set IPv4 datagram source address
ngx_feature="IP_SENDSRCADDR"
ngx_feature_name="NGX_HAVE_IP_SENDSRCADDR"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_SENDSRCADDR, NULL, 0)"
. auto/feature
# Linux way to get IPv4 datagram destination address
ngx_feature="IP_PKTINFO"
ngx_feature_name="NGX_HAVE_IP_PKTINFO"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="struct in_pktinfo pkt;
pkt.ipi_spec_dst.s_addr = INADDR_ANY;
(void) pkt;
setsockopt(0, IPPROTO_IP, IP_PKTINFO, NULL, 0)"
. auto/feature
# RFC 3542 way to get IPv6 datagram destination address
ngx_feature="IPV6_RECVPKTINFO"
ngx_feature_name="NGX_HAVE_IPV6_RECVPKTINFO"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IPV6, IPV6_RECVPKTINFO, NULL, 0)"
. auto/feature
# IP packet fragmentation
ngx_feature="IP_MTU_DISCOVER"
ngx_feature_name="NGX_HAVE_IP_MTU_DISCOVER"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="(void) IP_PMTUDISC_DO;
setsockopt(0, IPPROTO_IP, IP_MTU_DISCOVER, NULL, 0)"
. auto/feature
ngx_feature="IPV6_MTU_DISCOVER"
ngx_feature_name="NGX_HAVE_IPV6_MTU_DISCOVER"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="(void) IPV6_PMTUDISC_DO;
setsockopt(0, IPPROTO_IPV6, IPV6_MTU_DISCOVER, NULL, 0)"
. auto/feature
ngx_feature="IP_DONTFRAG"
ngx_feature_name="NGX_HAVE_IP_DONTFRAG"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_DONTFRAG, NULL, 0)"
. auto/feature
ngx_feature="IPV6_DONTFRAG"
ngx_feature_name="NGX_HAVE_IPV6_DONTFRAG"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="setsockopt(0, IPPROTO_IP, IPV6_DONTFRAG, NULL, 0)"
. auto/feature
ngx_feature="TCP_DEFER_ACCEPT"
ngx_feature_name="NGX_HAVE_DEFERRED_ACCEPT"
ngx_feature_run=no
@ -391,43 +569,66 @@ if [ $NGX_FILE_AIO = YES ]; then
ngx_feature_incs="#include <aio.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int n; struct aiocb iocb;
ngx_feature_test="struct aiocb iocb;
iocb.aio_sigevent.sigev_notify = SIGEV_KEVENT;
n = aio_read(&iocb)"
(void) aio_read(&iocb)"
. auto/feature
if [ $ngx_found = yes ]; then
CORE_SRCS="$CORE_SRCS $FILE_AIO_SRCS"
fi
elif [ $ngx_found = no ]; then
if [ $ngx_found = no ]; then
ngx_feature="Linux AIO support"
ngx_feature_name="NGX_HAVE_FILE_AIO"
ngx_feature_run=no
ngx_feature_incs="#include <linux/aio_abi.h>
#include <sys/syscall.h>"
#include <sys/eventfd.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int n = SYS_eventfd;
struct iocb iocb;
ngx_feature_test="struct iocb iocb;
iocb.aio_lio_opcode = IOCB_CMD_PREAD;
iocb.aio_flags = IOCB_FLAG_RESFD;
iocb.aio_resfd = -1;"
iocb.aio_resfd = -1;
(void) iocb;
(void) eventfd(0, 0)"
. auto/feature
if [ $ngx_found = yes ]; then
have=NGX_HAVE_EVENTFD . auto/have
have=NGX_HAVE_SYS_EVENTFD_H . auto/have
CORE_SRCS="$CORE_SRCS $LINUX_AIO_SRCS"
fi
fi
if [ $ngx_found = no ]; then
ngx_feature="Linux AIO support (SYS_eventfd)"
ngx_feature_incs="#include <linux/aio_abi.h>
#include <sys/syscall.h>"
ngx_feature_test="struct iocb iocb;
iocb.aio_lio_opcode = IOCB_CMD_PREAD;
iocb.aio_flags = IOCB_FLAG_RESFD;
iocb.aio_resfd = -1;
(void) iocb;
(void) SYS_eventfd"
. auto/feature
if [ $ngx_found = yes ]; then
have=NGX_HAVE_EVENTFD . auto/have
CORE_SRCS="$CORE_SRCS $LINUX_AIO_SRCS"
fi
fi
else
cat << END
if [ $ngx_found = no ]; then
cat << END
$0: no supported file AIO was found
Currently file AIO is supported on FreeBSD 4.3+ and Linux 2.6.22+ only
END
exit 1
fi
exit 1
fi
fi
@ -451,15 +652,9 @@ ngx_param=NGX_PTR_SIZE; ngx_value=$ngx_size; . auto/types/value
# POSIX types
case "$NGX_AUTO_CONFIG_H" in
/*)
NGX_INCLUDE_AUTO_CONFIG_H="#include \"$NGX_AUTO_CONFIG_H\""
;;
*)
NGX_INCLUDE_AUTO_CONFIG_H="#include \"../$NGX_AUTO_CONFIG_H\""
;;
esac
NGX_INCLUDE_AUTO_CONFIG_H="#include \"ngx_auto_config.h\""
ngx_type="uint32_t"; ngx_types="u_int32_t"; . auto/types/typedef
ngx_type="uint64_t"; ngx_types="u_int64_t"; . auto/types/typedef
ngx_type="sig_atomic_t"; ngx_types="int"; . auto/types/typedef
@ -468,7 +663,7 @@ ngx_param=NGX_SIG_ATOMIC_T_SIZE; ngx_value=$ngx_size; . auto/types/value
ngx_type="socklen_t"; ngx_types="int"; . auto/types/typedef
ngx_type="in_addr_t"; ngx_types="uint32_t"; . auto/types/typedef
ngx_type="in_addr_t"; ngx_types="uint32_t u_int32_t"; . auto/types/typedef
ngx_type="in_port_t"; ngx_types="u_short"; . auto/types/typedef
@ -489,24 +684,24 @@ ngx_param=NGX_OFF_T_LEN; ngx_value=$ngx_max_len; . auto/types/value
ngx_type="time_t"; . auto/types/sizeof
ngx_param=NGX_TIME_T_SIZE; ngx_value=$ngx_size; . auto/types/value
ngx_param=NGX_TIME_T_LEN; ngx_value=$ngx_max_len; . auto/types/value
ngx_param=NGX_MAX_TIME_T_VALUE; ngx_value=$ngx_max_value; . auto/types/value
# syscalls, libc calls and some features
if [ $NGX_IPV6 = YES ]; then
ngx_feature="AF_INET6"
ngx_feature_name="NGX_HAVE_INET6"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="struct sockaddr_in6 sin6;
sin6.sin6_family = AF_INET6;"
. auto/feature
fi
ngx_feature="AF_INET6"
ngx_feature_name="NGX_HAVE_INET6"
ngx_feature_run=no
ngx_feature_incs="#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="struct sockaddr_in6 sin6;
sin6.sin6_family = AF_INET6;
(void) sin6"
. auto/feature
ngx_feature="setproctitle()"
@ -541,17 +736,49 @@ ngx_feature_test="char buf[1]; ssize_t n; n = pwrite(1, buf, 1, 0);
. auto/feature
ngx_feature="sys_nerr"
ngx_feature_name="NGX_SYS_NERR"
ngx_feature_run=value
ngx_feature_incs='#include <errno.h>
#include <stdio.h>'
# pwritev() was introduced in FreeBSD 6 and Linux 2.6.30, glibc 2.10
ngx_feature="pwritev()"
ngx_feature_name="NGX_HAVE_PWRITEV"
ngx_feature_run=no
ngx_feature_incs='#include <sys/uio.h>'
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test='printf("%d", sys_nerr);'
ngx_feature_test="char buf[1]; struct iovec vec[1]; ssize_t n;
vec[0].iov_base = buf;
vec[0].iov_len = 1;
n = pwritev(1, vec, 1, 0);
if (n == -1) return 1"
. auto/feature
# strerrordesc_np(), introduced in glibc 2.32
ngx_feature="strerrordesc_np()"
ngx_feature_name="NGX_HAVE_STRERRORDESC_NP"
ngx_feature_run=no
ngx_feature_incs='#include <string.h>'
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="char *p; p = strerrordesc_np(0);
if (p == NULL) return 1"
. auto/feature
if [ $ngx_found = no ]; then
ngx_feature="sys_nerr"
ngx_feature_name="NGX_SYS_NERR"
ngx_feature_run=value
ngx_feature_incs='#include <errno.h>
#include <stdio.h>'
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test='printf("%d", sys_nerr);'
. auto/feature
fi
if [ $ngx_found = no ]; then
# Cygiwn defines _sys_nerr
@ -567,34 +794,6 @@ if [ $ngx_found = no ]; then
fi
if [ $ngx_found = no ]; then
# Solaris has no sys_nerr
ngx_feature='maximum errno'
ngx_feature_name=NGX_SYS_NERR
ngx_feature_run=value
ngx_feature_incs='#include <errno.h>
#include <string.h>
#include <stdio.h>'
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test='int n;
char *p;
for (n = 1; n < 1000; n++) {
errno = 0;
p = strerror(n);
if (errno == EINVAL
|| p == NULL
|| strncmp(p, "Unknown error", 13) == 0)
{
break;
}
}
printf("%d", n);'
. auto/feature
fi
ngx_feature="localtime_r()"
ngx_feature_name="NGX_HAVE_LOCALTIME_R"
ngx_feature_run=no
@ -605,6 +804,30 @@ ngx_feature_test="struct tm t; time_t c=0; localtime_r(&c, &t)"
. auto/feature
ngx_feature="clock_gettime(CLOCK_MONOTONIC)"
ngx_feature_name="NGX_HAVE_CLOCK_MONOTONIC"
ngx_feature_run=no
ngx_feature_incs="#include <time.h>"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts)"
. auto/feature
if [ $ngx_found = no ]; then
# Linux before glibc 2.17, notably CentOS 6
ngx_feature="clock_gettime(CLOCK_MONOTONIC) in librt"
ngx_feature_libs="-lrt"
. auto/feature
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS -lrt"
fi
fi
ngx_feature="posix_memalign()"
ngx_feature_name="NGX_HAVE_POSIX_MEMALIGN"
ngx_feature_run=no
@ -691,6 +914,7 @@ if [ $ngx_found = no ]; then
if [ $ngx_found = yes ]; then
CORE_LIBS="$CORE_LIBS -lpthread"
NGX_LIBPTHREAD="-lpthread"
fi
fi
@ -732,6 +956,18 @@ ngx_feature_test="int i = FIONBIO; printf(\"%d\", i)"
. auto/feature
ngx_feature="ioctl(FIONREAD)"
ngx_feature_name="NGX_HAVE_FIONREAD"
ngx_feature_run=no
ngx_feature_incs="#include <sys/ioctl.h>
#include <stdio.h>
$NGX_INCLUDE_SYS_FILIO_H"
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="int i = FIONREAD; printf(\"%d\", i)"
. auto/feature
ngx_feature="struct tm.tm_gmtoff"
ngx_feature_name="NGX_HAVE_GMTOFF"
ngx_feature_run=no
@ -778,6 +1014,16 @@ ngx_feature_test="sysconf(_SC_NPROCESSORS_ONLN)"
. auto/feature
ngx_feature="sysconf(_SC_LEVEL1_DCACHE_LINESIZE)"
ngx_feature_name="NGX_HAVE_LEVEL1_DCACHE_LINESIZE"
ngx_feature_run=no
ngx_feature_incs=
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test="sysconf(_SC_LEVEL1_DCACHE_LINESIZE)"
. auto/feature
ngx_feature="openat(), fstatat()"
ngx_feature_name="NGX_HAVE_OPENAT"
ngx_feature_run=no

View file

@ -10,6 +10,7 @@ fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;

View file

@ -9,6 +9,7 @@ fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;

View file

@ -1,89 +1,99 @@
types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
image/png png;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
image/svg+xml svg svgz;
image/webp webp;
image/avif avif;
image/png png;
image/svg+xml svg svgz;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/webp webp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
application/font-woff woff;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.wap.wmlc wmlc;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xspf+xml xspf;
application/zip zip;
font/woff woff;
font/woff2 woff2;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.oasis.opendocument.graphics odg;
application/vnd.oasis.opendocument.presentation odp;
application/vnd.oasis.opendocument.spreadsheet ods;
application/vnd.oasis.opendocument.text odt;
application/vnd.openxmlformats-officedocument.presentationml.presentation
pptx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
xlsx;
application/vnd.openxmlformats-officedocument.wordprocessingml.document
docx;
application/vnd.wap.wmlc wmlc;
application/wasm wasm;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xspf+xml xspf;
application/zip zip;
application/vnd.openxmlformats-officedocument.wordprocessingml.document docx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;
application/vnd.openxmlformats-officedocument.presentationml.presentation pptx;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
}

View file

@ -8,6 +8,7 @@ scgi_param DOCUMENT_URI $document_uri;
scgi_param DOCUMENT_ROOT $document_root;
scgi_param SCGI 1;
scgi_param SERVER_PROTOCOL $server_protocol;
scgi_param REQUEST_SCHEME $scheme;
scgi_param HTTPS $https if_not_empty;
scgi_param REMOTE_ADDR $remote_addr;

View file

@ -8,6 +8,7 @@ uwsgi_param REQUEST_URI $request_uri;
uwsgi_param PATH_INFO $document_uri;
uwsgi_param DOCUMENT_ROOT $document_root;
uwsgi_param SERVER_PROTOCOL $server_protocol;
uwsgi_param REQUEST_SCHEME $scheme;
uwsgi_param HTTPS $https if_not_empty;
uwsgi_param REMOTE_ADDR $remote_addr;

14
configure vendored
View file

@ -11,7 +11,7 @@ export LC_ALL
. auto/init
. auto/sources
test -d $NGX_OBJS || mkdir $NGX_OBJS
test -d $NGX_OBJS || mkdir -p $NGX_OBJS
echo > $NGX_AUTO_HEADERS_H
echo > $NGX_AUTOCONF_ERR
@ -36,7 +36,7 @@ if test -z "$NGX_PLATFORM"; then
NGX_PLATFORM="$NGX_SYSTEM:$NGX_RELEASE:$NGX_MACHINE";
case "$NGX_SYSTEM" in
MINGW32_*)
MINGW32_* | MINGW64_* | MSYS_*)
NGX_PLATFORM=win32
;;
esac
@ -44,6 +44,7 @@ if test -z "$NGX_PLATFORM"; then
else
echo "building for $NGX_PLATFORM"
NGX_SYSTEM=$NGX_PLATFORM
NGX_MACHINE=i386
fi
. auto/cc/conf
@ -58,6 +59,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
. auto/unix
fi
. auto/threads
. auto/modules
. auto/lib/conf
@ -86,6 +88,10 @@ have=NGX_PID_PATH value="\"$NGX_PID_PATH\"" . auto/define
have=NGX_LOCK_PATH value="\"$NGX_LOCK_PATH\"" . auto/define
have=NGX_ERROR_LOG_PATH value="\"$NGX_ERROR_LOG_PATH\"" . auto/define
if [ ".$NGX_ERROR_LOG_PATH" = "." ]; then
have=NGX_ERROR_LOG_STDERR . auto/have
fi
have=NGX_HTTP_LOG_PATH value="\"$NGX_HTTP_LOG_PATH\"" . auto/define
have=NGX_HTTP_CLIENT_TEMP_PATH value="\"$NGX_HTTP_CLIENT_TEMP_PATH\""
. auto/define
@ -108,4 +114,8 @@ have=NGX_HTTP_SCGI_TEMP_PATH value="\"$NGX_HTTP_SCGI_TEMP_PATH\""
have=NGX_USER value="\"$NGX_USER\"" . auto/define
have=NGX_GROUP value="\"$NGX_GROUP\"" . auto/define
if [ ".$NGX_BUILD" != "." ]; then
have=NGX_BUILD value="\"$NGX_BUILD\"" . auto/define
fi
. auto/summary

69
configure.docker.sh Executable file
View file

@ -0,0 +1,69 @@
#!/bin/bash
./configure \
--with-cc-opt="-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -D_FORTIFY_SOURCE=2 -I/tmp/build/quickjs/" \
--with-ld-opt="-Wl,-z,relro -Wl,-z,now -fPIC -L/tmp/build/quickjs/" \
--sbin-path=/usr/local/sbin/nginx \
--conf-path=/video_server/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx/nginx.lock \
--http-log-path=/var/log/nginx/access.log \
--http-client-body-temp-path=/tmp/nginx-client-body \
--with-compat \
--with-debug \
--with-pcre-jit \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_realip_module \
--with-http_auth_request_module \
--with-http_v2_module \
--with-http_dav_module \
--with-http_slice_module \
--with-threads \
--with-http_addition_module \
--with-http_flv_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_mp4_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_sub_module \
--with-mail_ssl_module \
--with-stream_ssl_module \
--with-stream_ssl_preread_module \
--with-stream_realip_module \
--with-http_geoip_module=dynamic \
--with-http_image_filter_module=dynamic \
--with-http_perl_module=dynamic \
--with-http_xslt_module=dynamic \
--with-mail=dynamic \
--with-stream=dynamic \
--with-stream_geoip_module=dynamic \
--add-module=./modules_deb/libnginx-mod-http-ndk-0.3.4 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-brotli-1.0.0~rc \
--add-dynamic-module=./modules_deb/libnginx-mod-http-cache-purge-2.5.3 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-echo-0.63 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-geoip2-3.4 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-headers-more-filter-0.38 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-memc-0.20 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-set-misc-0.33 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-srcache-filter-0.33 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-subs-filter-0.6.4 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-upstream-fair-0.0~git20120408.a18b409 \
--add-dynamic-module=./modules_deb/libnginx-mod-nchan-1.3.7+dfsg \
--add-dynamic-module=./modules/njs/nginx \
--add-dynamic-module=./modules/nginx-vod-module \
--add-module=./modules/media-framework/nginx-common \
--add-dynamic-module=./modules/nginx-stream-preread-str-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-in-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-out-module \
--add-dynamic-module=./modules/media-framework/nginx-rtmp-module \
--add-dynamic-module=./modules/media-framework/nginx-rtmp-kmp-module \
--add-dynamic-module=./modules/media-framework/nginx-mpegts-module \
--add-dynamic-module=./modules/media-framework/nginx-mpegts-kmp-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-cc-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-rtmp-module \
--add-dynamic-module=./modules/media-framework/nginx-live-module \
--add-dynamic-module=./modules/nginx-srt-module \
--add-dynamic-module=./modules/media-framework/nginx-pckg-module \
--add-dynamic-module=./modules/nginx-secure-token-module

66
configure.sh Executable file
View file

@ -0,0 +1,66 @@
#!/bin/bash
./configure \
--with-cc-opt="-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -D_FORTIFY_SOURCE=2 -I/usr/local/include/quickjs/" \
--with-ld-opt="-Wl,-z,relro -Wl,-z,now -fPIC -L/usr/local/lib/quickjs/" \
--prefix=/usr/local/temp/nginx/ \
--error-log-path=stderr \
--lock-path=/var/lock/nginx.lock \
--pid-path=/run/nginx.pid \
--with-compat \
--with-debug \
--with-pcre-jit \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_realip_module \
--with-http_auth_request_module \
--with-http_v2_module \
--with-http_dav_module \
--with-http_slice_module \
--with-threads \
--with-http_addition_module \
--with-http_flv_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_mp4_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_sub_module \
--with-mail_ssl_module \
--with-stream_ssl_module \
--with-stream_ssl_preread_module \
--with-stream_realip_module \
--with-http_geoip_module=dynamic \
--with-http_image_filter_module=dynamic \
--with-http_perl_module=dynamic \
--with-http_xslt_module=dynamic \
--with-mail=dynamic \
--with-stream=dynamic \
--with-stream_geoip_module=dynamic \
--add-module=./modules_deb/libnginx-mod-http-ndk-0.3.4 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-brotli-1.0.0~rc \
--add-dynamic-module=./modules_deb/libnginx-mod-http-cache-purge-2.5.3 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-echo-0.63 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-geoip2-3.4 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-headers-more-filter-0.38 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-memc-0.20 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-set-misc-0.33 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-srcache-filter-0.33 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-subs-filter-0.6.4 \
--add-dynamic-module=./modules_deb/libnginx-mod-http-upstream-fair-0.0~git20120408.a18b409 \
--add-dynamic-module=./modules_deb/libnginx-mod-nchan-1.3.7+dfsg \
--add-dynamic-module=./modules/njs/nginx \
--add-dynamic-module=./modules/nginx-vod-module \
--add-module=./modules/media-framework/nginx-common \
--add-dynamic-module=./modules/nginx-stream-preread-str-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-in-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-out-module \
--add-dynamic-module=./modules/media-framework/nginx-rtmp-module \
--add-dynamic-module=./modules/media-framework/nginx-rtmp-kmp-module \
--add-dynamic-module=./modules/media-framework/nginx-mpegts-module \
--add-dynamic-module=./modules/media-framework/nginx-mpegts-kmp-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-cc-module \
--add-dynamic-module=./modules/media-framework/nginx-kmp-rtmp-module \
--add-dynamic-module=./modules/media-framework/nginx-live-module \
--add-dynamic-module=./modules/nginx-srt-module \
--add-dynamic-module=./modules/media-framework/nginx-pckg-module \
--add-dynamic-module=./modules/nginx-secure-token-module

View file

@ -10,7 +10,7 @@
# Needs perl 5.6 or later.
# Written by Maxim Dounin, mdounin@rambler-co.ru
# Written by Maxim Dounin, mdounin@mdounin.ru
###############################################################################
@ -33,7 +33,10 @@ while (<>) {
# Produce UTF-8 sequence from character code;
my $un_utf8 = join('', map { sprintf("%02X", $_) } unpack("C*", pack("U", hex($un_code))));
my $un_utf8 = join('',
map { sprintf("%02X", $_) }
unpack("U0C*", pack("U", hex($un_code)))
);
print " $cs_code $un_utf8 ; $un_name\n";

View file

@ -0,0 +1 @@
setlocal commentstring=#\ %s

File diff suppressed because it is too large Load diff

View file

@ -1,66 +0,0 @@
Debian Packaging
================
We use git-buildpackage for packaging. Our repository can be found at
git.debian.org:/git/collab-maint/nginx.git.
Workflow for Unstable
=====================
We use the standard git-buildpackage workflow.
Workflow for Experimental (not-active)
======================================
Now that nginx 1.6.0 is released there is no plan to package mainline 1.7
releases to experimental. The following guide is been kept as a reference.
--------
Nginx mainline releases (1.5.x series) are been packaged for experimental,
as they lack security support.
The workflow we use is based on the assumption that packaging work happens on
origin/master and experimental builds are a trivial patch away from that.
The direct consequense of treating experimental as a patchset for origin/master
is that the relevant branches are forced-pushed whenever we release a new
1.5.x version. In other words, **it is not safe to base your work on the
experimental branch**.
This is a brief description of our experimental branches and how we are using
them.
* experimental-base
Force-pushed when origin/master changes.
experimental-base tracks the changes needed for building the 1.5.x branch,
such as new configure parameters, etc. On new 1.5.x releases, it is rebased
on origin/master so it is always up-to-date with our latest packaging work.
* experimental
Force-pushed on every 1.5.x release.
This branch points to the latest 1.5.x release.
Before release this branch is reset to experimental-base, and then merged
with the new upstream-1.5 branch. Finally all the release specific changes
are commited (changelog entry etc) and the build is made.
* upstream-1.5
Force-pushed on every 1.5.x release.
Before a new 1.5.x release the branch is reset to origin/upstream.
This is a technicallity so we can avoid resolving conflicts when a new 1.4.x
release happens between two experimental releases.
Older 1.5.x releases are not referenced by any branch, but they can be found by
the relevant debian/* tag.
3rd party experimental workflow
===============================
As we described, it is better not base you work on our forced-pushed
experimental branch. A better approach would be to maintain a custom-build
branch that is rebased to our latest experimental branch (basically git rebase
--onto the relevant commits should work).

63
debian/README.source vendored Normal file
View file

@ -0,0 +1,63 @@
Debian Packaging
================
We use git-buildpackage for packaging.
Workflow for Unstable
=====================
We use the standard git-buildpackage workflow.
Dynamic Modules
===============
Since v1.9.11 Nginx added dynamic module support. This will sanitize the
nginx packaging flow in the long term, but there is a lot work to be done
in order to get there. We gradually convert all modules to dynamic
as they add support for it.
[0] https://www.nginx.com/blog/dynamic-modules-nginx-1-9-11/
Workflow for Experimental
=========================
Nginx mainline releases (1.11.x series) are been packaged for experimental,
as they lack security support.
The workflow we use is based on the assumption that packaging work happens on
origin/master and experimental builds are a trivial patch away from that.
The direct consequence of treating experimental as a patchset for origin/master
is that the relevant branches are forced-pushed whenever we release a new
1.11.x version. In other words, **it is not safe to base your work on the
experimental branch**.
This is a brief description of our experimental branches and how we are using
them.
* experimental-base
Force-pushed when origin/master changes.
experimental-base tracks the changes needed for building the 1.11.x branch,
such as new configure parameters, etc. On new 1.11.x releases, it is rebased
on origin/master so it is always up-to-date with our latest packaging work.
* experimental
Force-pushed on every 1.11.x release.
This branch points to the latest 1.11.x release.
Before release this branch is reset to experimental-base, and then merged
with the new upstream-1.11 branch. Finally all the release specific changes
are commited (changelog entry etc) and the build is made.
* upstream-1.11
Pushed on every 1.11.x release.
Before a new 1.11.x release origin/upstream is dummy merged (-s ours) into
ustream-1.11. This is a technicallity so we can avoid resolving conflicts
when a new 1.10.x release happens between two experimental releases.
Older 1.11.x releases are not referenced by any branch, but they can be found
by the relevant debian/* tag.

19
debian/apport/source_nginx.py vendored Normal file
View file

@ -0,0 +1,19 @@
'''
apport package hook for nginx packages
Copyright (c) 2015, Thomas Ward <teward@ubuntu.com>
'''
import apport.hookutils
import os
import subprocess
def add_info(report, ui):
if (report['Package'].split()[0] != 'nginx-common'
and report['ProblemType'] == 'Package'
and os.path.isdir('/run/systemd/system')):
report['Journalctl_Nginx.txt'] = apport.hookutils.command_output(
['journalctl', '-xe', '--unit=nginx.service'])
report['SystemctlStatusFull_Nginx.txt'] = subprocess.Popen(
['systemctl', '-l', 'status', 'nginx.service'],
stdout=subprocess.PIPE).communicate()[0]

26
debian/autoscripts/postinst-nginx vendored Normal file
View file

@ -0,0 +1,26 @@
for confpair in #NAMES# ; do
from=$(echo $confpair | cut -d: -f1)
to=$(echo $confpair | cut -d: -f2)
if [ -L /etc/nginx/modules-enabled/$to.removed ]; then
rm /etc/nginx/modules-enabled/$to.removed
removed_link=true
else
removed_link=false
fi
# Symlink on
# 1) Fresh installations
# 2) Reinstalls after automatic removes (preserve admin actions)
if [ -z "$2" -o "$removed_link" = "true" ]; then
ln -sf /usr/share/nginx/modules-available/$from \
/etc/nginx/modules-enabled/$to
fi
done
if [ "$1" = "configure" ] ; then
if which dpkg-trigger >/dev/null 2>&1 ; then
dpkg-trigger --no-await nginx-reload
fi
fi

28
debian/autoscripts/postrm-nginx vendored Normal file
View file

@ -0,0 +1,28 @@
if [ "$1" = "purge" ] ; then
for confpair in #NAMES# ; do
from=$(echo $confpair | cut -d: -f1)
to=$(echo $confpair | cut -d: -f2)
if [ -L /etc/nginx/modules-enabled/$to ]; then
rm /etc/nginx/modules-enabled/$to
fi
if [ -L /etc/nginx/modules-enabled/$to.removed ]; then
rm /etc/nginx/modules-enabled/$to.removed
fi
done
fi
if [ "$1" = "remove" ] ; then
for confpair in #NAMES# ; do
from=$(echo $confpair | cut -d: -f1)
to=$(echo $confpair | cut -d: -f2)
if [ -L /etc/nginx/modules-enabled/$to ]; then
mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed
fi
done
if which dpkg-trigger >/dev/null 2>&1 ; then
dpkg-trigger --no-await nginx-reload
fi
fi

10
debian/autoscripts/prerm-nginx vendored Normal file
View file

@ -0,0 +1,10 @@
if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ] ; then
for confpair in #NAMES# ; do
from=$(echo $confpair | cut -d: -f1)
to=$(echo $confpair | cut -d: -f2)
if [ -L /etc/nginx/modules-enabled/$to ]; then
mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed
fi
done
fi

1142
debian/changelog vendored

File diff suppressed because it is too large Load diff

1
debian/compat vendored
View file

@ -1 +0,0 @@
9

View file

@ -10,6 +10,7 @@ fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
@ -17,6 +18,7 @@ fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

View file

@ -9,6 +9,7 @@ fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
@ -16,6 +17,7 @@ fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

172
debian/conf/mime.types vendored
View file

@ -1,89 +1,101 @@
types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
image/png png;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
image/svg+xml svg svgz;
image/webp webp;
image/avif avif;
image/png png;
image/svg+xml svg svgz;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/webp webp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
application/font-woff woff;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.wap.wmlc wmlc;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xspf+xml xspf;
application/zip zip;
font/woff woff;
font/woff2 woff2;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.oasis.opendocument.graphics odg;
application/vnd.oasis.opendocument.presentation odp;
application/vnd.oasis.opendocument.spreadsheet ods;
application/vnd.oasis.opendocument.text odt;
application/vnd.openxmlformats-officedocument.presentationml.presentation
pptx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
xlsx;
application/vnd.openxmlformats-officedocument.wordprocessingml.document
docx;
application/vnd.wap.wmlc wmlc;
application/wasm wasm;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xslt+xml xsl xslt;
application/xspf+xml xspf;
application/zip zip;
application/vnd.openxmlformats-officedocument.wordprocessingml.document docx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;
application/vnd.openxmlformats-officedocument.presentationml.presentation pptx;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/ogg ogv;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-matroska mkv;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
}

View file

@ -1,6 +1,9 @@
user www-data;
worker_processes 4;
worker_processes auto;
worker_cpu_affinity auto;
pid /run/nginx.pid;
error_log /var/log/nginx/error.log;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
@ -15,10 +18,8 @@ http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# server_tokens off;
server_tokens off; # Recommended practice is to turn this off
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
@ -30,22 +31,20 @@ http {
# SSL Settings
##
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1.2 TLSv1.3; # Dropping SSLv3 (POODLE), TLS 1.0, 1.1
ssl_prefer_server_ciphers off; # Don't force server cipher order.
##
# Logging Settings
##
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
##
# Gzip Settings
##
gzip on;
gzip_disable "msie6";
# gzip_vary on;
# gzip_proxied any;
@ -66,17 +65,17 @@ http {
#mail {
# # See sample authentication script at:
# # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
#
#
# # auth_http localhost/auth.php;
# # pop3_capabilities "TOP" "USER";
# # imap_capabilities "IMAP4rev1" "UIDPLUS";
#
#
# server {
# listen localhost:110;
# protocol pop3;
# proxy on;
# }
#
#
# server {
# listen localhost:143;
# protocol imap;

View file

@ -8,6 +8,7 @@ scgi_param DOCUMENT_URI $document_uri;
scgi_param DOCUMENT_ROOT $document_root;
scgi_param SCGI 1;
scgi_param SERVER_PROTOCOL $server_protocol;
scgi_param REQUEST_SCHEME $scheme;
scgi_param HTTPS $https if_not_empty;
scgi_param REMOTE_ADDR $remote_addr;

View file

@ -1,12 +1,17 @@
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
# https://www.nginx.com/resources/wiki/start/
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/
# https://wiki.debian.org/Nginx/DirectoryStructure
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
# In most cases, administrators will remove this file from sites-enabled/ and
# leave it as reference inside of sites-available where it will continue to be
# updated by the nginx packaging team.
#
# This file will automatically load configuration files provided by other
# applications, such as Drupal or Wordpress. These applications will be made
# available underneath a path with that package name, such as /drupal8.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
@ -22,6 +27,12 @@ server {
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
@ -40,15 +51,15 @@ server {
try_files $uri $uri/ =404;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
# pass PHP scripts to FastCGI server
#
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # With php5-cgi alone:
# # With php-fpm (or other unix sockets):
# fastcgi_pass unix:/run/php/php7.4-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
# # With php5-fpm:
# fastcgi_pass unix:/var/run/php5-fpm.sock;
#}
# deny access to .htaccess files, if Apache's document root

View file

@ -1,5 +1,5 @@
# regex to split $uri to $fastcgi_script_name and $fastcgi_path
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
# Check that the PHP script exists before passing it
try_files $fastcgi_script_name =404;

View file

@ -8,6 +8,7 @@ uwsgi_param REQUEST_URI $request_uri;
uwsgi_param PATH_INFO $document_uri;
uwsgi_param DOCUMENT_ROOT $document_root;
uwsgi_param SERVER_PROTOCOL $server_protocol;
uwsgi_param REQUEST_SCHEME $scheme;
uwsgi_param HTTPS $https if_not_empty;
uwsgi_param REMOTE_ADDR $remote_addr;

357
debian/control vendored
View file

@ -1,56 +1,43 @@
Source: nginx
Section: httpd
Priority: optional
Maintainer: Kartik Mistry <kartik@debian.org>
Uploaders: Jose Parrella <bureado@debian.org>,
Fabio Tranchitella <kobold@debian.org>,
Michael Lustfield <michael@lustfield.net>,
Dmitry E. Oboukhov <unera@debian.org>,
Cyril Lavier <cyril.lavier@davromaniak.eu>,
Christos Trochalakis <yatiohi@ideopolis.gr>
Build-Depends: autotools-dev,
debhelper (>= 9),
dh-systemd (>= 1.5),
dpkg-dev (>= 1.15.5),
Maintainer: Debian Nginx Maintainers <pkg-nginx-maintainers@alioth-lists.debian.net>
Uploaders: Jan Mojžíš <janmojzis@debian.org>
Build-Depends: debhelper-compat (= 13),
libexpat-dev,
libgd2-dev | libgd2-noxpm-dev,
libgd-dev,
libgeoip-dev,
libluajit-5.1-dev [i386 amd64 kfreebsd-i386 armel armhf powerpc powerpcspe mips mipsel] | liblua5.1-0-dev,
libmhash-dev,
libpam0g-dev,
libpcre3-dev,
libpcre2-dev,
libperl-dev,
libssl-dev,
libxslt1-dev,
po-debconf,
zlib1g-dev
Standards-Version: 3.9.6.0
Homepage: http://nginx.net
Vcs-Git: git://anonscm.debian.org/collab-maint/nginx.git
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/nginx.git;a=summary
XS-Testsuite: autopkgtest
Standards-Version: 4.7.0
Homepage: https://nginx.org
Vcs-Git: https://salsa.debian.org/nginx-team/nginx.git
Vcs-Browser: https://salsa.debian.org/nginx-team/nginx
Rules-Requires-Root: no
Package: nginx
Architecture: all
Depends: nginx-full (>= ${source:Version}) |
nginx-light (>= ${source:Version}) |
nginx-extras (>= ${source:Version}) ,
nginx-full (<< ${source:Version}.1~) |
nginx-light (<< ${source:Version}.1~) |
nginx-extras (<< ${source:Version}.1~) ,
${misc:Depends}
Architecture: any
Depends: ${misc:Depends},
${shlibs:Depends},
iproute2,
nginx-common (= ${source:Version}),
Breaks: nginx-light (<< 1.22.1-6~), nginx-extras (<< 1.22.1-6~), nginx-core (<< 1.22.1-6~),
Replaces: nginx-light (<< 1.22.1-6~), nginx-extras (<< 1.22.1-6~), nginx-core (<< 1.22.1-6~),
Provides: httpd, httpd-cgi, ${nginx:abi}
Description: small, powerful, scalable web/proxy server
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This is a dependency package to install either nginx-full (by default) or
nginx-light.
Package: nginx-doc
Architecture: all
Multi-Arch: foreign
Section: doc
Depends: lsb-base (>= 3.2-14), ${misc:Depends}
Depends: ${misc:Depends}
Description: small, powerful, scalable web/proxy server - documentation
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
@ -59,16 +46,11 @@ Description: small, powerful, scalable web/proxy server - documentation
This package provides extra documentation to help unleash the power of Nginx.
Package: nginx-common
Breaks: nginx (<< 1.22.1-8)
Replaces: nginx (<< 1.22.1-8)
Architecture: all
Depends: lsb-base (>= 3.2-14), ${misc:Depends}
Replaces: nginx (<< 0.8.54-4),
nginx-extras (<< 0.8.54-4),
nginx-full (<< 0.8.54-4),
nginx-light (<< 0.8.54-4)
Breaks: nginx (<< 0.8.54-4),
nginx-extras (<< 0.8.54-4),
nginx-full (<< 0.8.54-4),
nginx-light (<< 0.8.54-4)
Multi-Arch: foreign
Depends: ${misc:Depends}
Suggests: fcgiwrap, nginx-doc, ssl-cert
Description: small, powerful, scalable web/proxy server - common files
Nginx ("engine X") is a high-performance web and reverse proxy server
@ -78,135 +60,252 @@ Description: small, powerful, scalable web/proxy server - common files
This package contains base configuration files used by all versions of
nginx.
Package: nginx-full
Architecture: any
Depends: nginx-common (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends}
Breaks: nginx (<< 1.4.5-1)
Provides: httpd, httpd-cgi, nginx
Conflicts: nginx-extras, nginx-light
Suggests: nginx-doc (= ${source:Version})
Package: nginx-dev
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, ${S:Build-Depends},
${nginx:abi},
nginx (<< ${source:Version}.1~),
nginx (>= ${source:Version}),
Provides: dh-sequence-nginx
Description: nginx web/proxy server - development headers
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This package provides development headers and necessary config scripts
for the nginx web/proxy server, useful to develop and link third party
additions to the Debian nginx web/proxy server packages.
Package: nginx-core
Architecture: all
Depends: libnginx-mod-http-geoip (>= ${source:Version}),
libnginx-mod-http-geoip (<< ${source:Version}.1~),
libnginx-mod-http-image-filter (>= ${source:Version}),
libnginx-mod-http-image-filter (<< ${source:Version}.1~),
libnginx-mod-http-xslt-filter (>= ${source:Version}),
libnginx-mod-http-xslt-filter (<< ${source:Version}.1~),
libnginx-mod-mail (>= ${source:Version}),
libnginx-mod-mail (<< ${source:Version}.1~),
libnginx-mod-stream (>= ${source:Version}),
libnginx-mod-stream (<< ${source:Version}.1~),
libnginx-mod-stream-geoip (>= ${source:Version}),
libnginx-mod-stream-geoip (<< ${source:Version}.1~),
nginx (>= ${source:Version}),
nginx (<< ${source:Version}.1~),
${misc:Depends},
${shlibs:Depends}
Breaks: nginx-full (<< 1.18.0-1),
Replaces: nginx-full (<< 1.18.0-1),
Description: nginx web/proxy server (standard version)
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This package provides a version of nginx with the complete set of
standard modules included (but omitting some of those included in
nginx-extra).
This metapackage provides a version of nginx identical to that of nginx-full,
but without any third-party modules, and only modules in the original
nginx code base.
.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Browser,
Charset, Empty GIF, FastCGI, Geo, Gzip, Headers, Index, Limit Requests,
Limit Zone, Log, Map, Memcached, Proxy, Referer, Rewrite, SCGI,
Split Clients, SSI, Upstream, User ID, UWSGI.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Browser, Empty
GIF, FastCGI, Geo, Limit Connections, Limit Requests, Map, Memcached, Proxy,
Referer, Rewrite, SCGI, Split Clients, UWSGI.
.
OPTIONAL HTTP MODULES: Addition, Auth Request, Debug, GeoIP, Gzip
Precompression, HTTP Sub, Image Filter, IPv6, Real IP, Spdy, SSL, Stub Status,
Substitution, WebDAV, XSLT.
OPTIONAL HTTP MODULES: Addition, Auth Request, Charset, WebDAV, GeoIP, Gunzip,
Gzip, Gzip Precompression, Headers, HTTP/2, Image Filter, Index, Log, Real IP,
Slice, SSI, SSL, SSL Preread, Stub Status, Substitution, Thread Pool,
Upstream, User ID, XSLT.
.
MAIL MODULES: Mail Core, IMAP, POP3, SMTP, SSL.
OPTIONAL MAIL MODULES: Mail Core, Auth HTTP, Proxy, SSL, IMAP, POP3, SMTP.
.
THIRD PARTY MODULES: Auth PAM, DAV Ext, Echo, HTTP Substitution Filter,
Upstream Fair Queue.
OPTIONAL STREAM MODULES: Stream Core, GeoIP
Package: nginx-full-dbg
Architecture: any
Section: debug
Priority: extra
Depends: nginx-full (= ${binary:Version}), ${misc:Depends}
Conflicts: nginx-extras-dbg, nginx-light-dbg
Description: nginx web/proxy server (standard version) - debugging symbols
Package: nginx-full
Architecture: all
Depends: libnginx-mod-http-auth-pam,
libnginx-mod-http-dav-ext,
libnginx-mod-http-echo,
libnginx-mod-http-geoip2,
libnginx-mod-http-subs-filter,
libnginx-mod-http-upstream-fair,
libnginx-mod-stream-geoip2,
nginx (>= ${source:Version}),
nginx (<< ${source:Version}.1~),
${misc:Depends},
${shlibs:Depends}
Description: nginx web/proxy server (standard version with 3rd parties)
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This package provides debugging symbols for nginx-full, to assist in debugging
issues that you may find. It should not be required for normal operation.
This metapackage provides a version of nginx with the complete set of
standard modules included (but omitting some of those included in
nginx-extras).
.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Browser, Empty
GIF, FastCGI, Geo, Limit Connections, Limit Requests, Map, Memcached, Proxy,
Referer, Rewrite, SCGI, Split Clients, UWSGI.
.
OPTIONAL HTTP MODULES: Addition, Auth Request, Charset, WebDAV, GeoIP, Gunzip,
Gzip, Gzip Precompression, Headers, HTTP/2, Image Filter, Index, Log, Real IP,
Slice, SSI, SSL, Stream, SSL Preread, Stub Status, Substitution, Thread Pool,
Upstream, User ID, XSLT.
.
OPTIONAL MAIL MODULES: Mail Core, Auth HTTP, Proxy, SSL, IMAP, POP3, SMTP.
.
OPTIONAL STREAM MODULES: Stream Core, GeoIP, GeoIP2
.
THIRD PARTY MODULES: Auth PAM, DAV Ext, Echo, GeoIP2, HTTP Substitutions
Upstream Fair Queue.
Package: nginx-light
Architecture: any
Priority: extra
Depends: nginx-common (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends}
Breaks: nginx (<< 1.4.5-1)
Provides: httpd, httpd-cgi, nginx
Conflicts: nginx-extras, nginx-full
Suggests: nginx-doc (= ${source:Version})
Architecture: all
Depends: libnginx-mod-http-echo,
nginx (>= ${source:Version}),
nginx (<< ${source:Version}.1~),
${misc:Depends},
${shlibs:Depends}
Description: nginx web/proxy server (basic version)
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This package provides a very light version of nginx with only the
This metapackage provides a very light version of nginx with only the
minimal set of features and modules.
.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Charset,
Empty GIF, FastCGI, Gzip, Headers, Index, Log, Map, Proxy, Rewrite, Upstream.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Empty GIF,
FastCGI, Map, Proxy, Rewrite, SCGI, uWSGI.
.
OPTIONAL HTTP MODULES: Auth Request, Debug, Gzip Precompression, IPv6, Real
Ip, SSL, Stub Status.
OPTIONAL HTTP MODULES: Auth Request, Charset, Gzip, Gzip Precompression,
Headers, HTTP/2, Index, Log, Real IP, Slice, SSI, SSL, Stub Status, Thread
Pool, WebDAV, Upstream.
.
THIRD PARTY MODULES: Echo.
Package: nginx-light-dbg
Architecture: any
Section: debug
Priority: extra
Depends: nginx-light (= ${binary:Version}), ${misc:Depends}
Conflicts: nginx-extras-dbg, nginx-full-dbg
Description: nginx web/proxy server (basic version) - debugging symbols
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This package provides debugging symbols for nginx-light, to assist in
debugging issues that you may find. It should not be required for normal
operation.
Package: nginx-extras
Architecture: any
Priority: extra
Depends: nginx-common (= ${source:Version}),
Depends: nginx (= ${binary:Version}),
libnginx-mod-http-geoip (= ${binary:Version}),
libnginx-mod-http-image-filter (= ${binary:Version}),
libnginx-mod-http-perl (= ${binary:Version}),
libnginx-mod-http-xslt-filter (= ${binary:Version}),
libnginx-mod-mail (= ${binary:Version}),
libnginx-mod-stream (= ${binary:Version}),
libnginx-mod-stream-geoip (= ${binary:Version}),
libnginx-mod-http-auth-pam,
libnginx-mod-http-cache-purge,
libnginx-mod-http-dav-ext,
libnginx-mod-http-echo,
libnginx-mod-http-fancyindex,
libnginx-mod-http-geoip2,
libnginx-mod-http-headers-more-filter,
libnginx-mod-http-lua [amd64 arm64 armel armhf i386 mips64el mipsel s390x riscv64 powerpc],
libnginx-mod-http-subs-filter,
libnginx-mod-http-uploadprogress,
libnginx-mod-http-upstream-fair,
libnginx-mod-nchan,
libnginx-mod-stream-geoip2,
${misc:Depends},
${perl:Depends},
${shlibs:Depends}
Breaks: nginx (<< 1.4.5-1)
Provides: httpd, httpd-cgi, nginx
Conflicts: nginx-full, nginx-light
Suggests: nginx-doc (= ${source:Version})
Description: nginx web/proxy server (extended version)
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
.
This package provides a version of nginx with the standard modules, plus
This metapackage provides a version of nginx with the standard modules, plus
extra features and modules such as the Perl module, which allows the
addition of Perl in configuration files.
.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Browser,
Charset, Empty GIF, FastCGI, Geo, Gzip, Headers, Index, Limit Requests,
Limit Zone, Log, Map, Memcached, Proxy, Referer, Rewrite, SCGI,
Split Clients, SSI, Upstream, User ID, UWSGI.
STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Browser, Empty
GIF, FastCGI, Geo, Limit Connections, Limit Requests, Map, Memcached, Proxy,
Referer, Rewrite, SCGI, Split Clients, UWSGI.
.
OPTIONAL HTTP MODULES: Addition, Auth Request, Debug, Embedded Perl, FLV,
GeoIP, Gzip Precompression, Image Filter, IPv6, MP4, Random Index, Real IP,
Secure Link, Spdy, SSL, Stub Status, Substitution, WebDAV, XSLT.
OPTIONAL HTTP MODULES: Addition, Auth Request, Charset, WebDAV, FLV, GeoIP,
Gunzip, Gzip, Gzip Precompression, Headers, HTTP/2, Image Filter, Index, Log,
MP4, Embedded Perl, Random Index, Real IP, Slice, Secure Link, SSI, SSL,
SSL Preread, Stub Status, Substitution, Thread Pool, Upstream, User ID, XSLT.
.
MAIL MODULES: Mail Core, IMAP, POP3, SMTP, SSL.
OPTIONAL MAIL MODULES: Mail Core, Auth HTTP, Proxy, SSL, IMAP, POP3, SMTP.
.
THIRD PARTY MODULES: Auth PAM, Chunkin, DAV Ext, Echo, Embedded Lua,
Fancy Index, HttpHeadersMore, HTTP Substitution Filter, http push,
Nginx Development Kit, Upload Progress, Upstream Fair Queue.
OPTIONAL STREAM MODULES: Stream, GeoIP, GeoIP2
.
THIRD PARTY MODULES: Auth PAM, Cache Purge, DAV Ext, Echo, Fancy Index,
GeoIP2, Headers More, Embedded Lua, HTTP Substitutions, Nchan, Upload Progress,
Upstream Fair Queue.
Package: nginx-extras-dbg
Package: libnginx-mod-http-geoip
Architecture: any
Section: debug
Priority: extra
Depends: nginx-extras (= ${binary:Version}), ${misc:Depends}
Conflicts: nginx-full-dbg, nginx-light-dbg
Description: nginx web/proxy server (extended version) - debugging symbols
Nginx ("engine X") is a high-performance web and reverse proxy server
created by Igor Sysoev. It can be used both as a standalone web server
and as a proxy to reduce the load on back-end HTTP or mail servers.
Depends: ${misc:Depends}, ${shlibs:Depends},
Recommends: nginx,
Description: GeoIP HTTP module for Nginx
The ngx_http_geoip module creates variables with values depending on the
client IP address, using the precompiled MaxMind databases.
.
This package provides debugging symbols for nginx-extras, to assist in
debugging issues that you may find. It should not be required for normal
operation.
Those variables include country, region, city, latitude, longitude, postal
code, etc.
Package: libnginx-mod-http-image-filter
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
Recommends: nginx,
Description: HTTP image filter module for Nginx
The ngx_http_image_filter module is a filter that transforms images in JPEG,
GIF, and PNG formats.
.
The module supports filters such as rotate, resize, crop, quality, sharpening,
interlacing and more.
Package: libnginx-mod-http-xslt-filter
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
Recommends: nginx,
Description: XSLT Transformation module for Nginx
The ngx_http_xslt_filter module is a filter that transforms XML responses
using one or more XSLT stylesheets.
.
The transformation can be adjusted by setting the relevant configuration
parameters.
Package: libnginx-mod-mail
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
Recommends: nginx,
Description: Mail module for Nginx
The nginx_mail module adds mail proxy support to nginx.
.
The module supports proxying all the standard mail protocols such as IMAP,
POP3 & SMTP.
Package: libnginx-mod-stream
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
Recommends: nginx,
Description: Stream module for Nginx
The nginx_stream module adds stream proxy support to nginx.
.
Stream module supports loadbalancing & proxying to TCP servers. The module
also supports ACLs/connection limiting and configuring multiple operational
parameters.
Package: libnginx-mod-stream-geoip
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
libnginx-mod-stream (= ${binary:Version}),
Recommends: nginx,
Description: GeoIP Stream module for Nginx
The ngx_stream_geoip module creates variables with values depending on the
client IP address, using the precompiled MaxMind databases.
.
Those variables include country, region, city, latitude, longitude, postal
code, etc.
Package: libnginx-mod-http-perl
Architecture: any
Depends: ${misc:Depends}, ${perl:Depends}, ${shlibs:Depends},
Recommends: nginx,
Description: Perl module for Nginx
Embed Perl runtime into nginx.
.
The ngx_http_perl module is used to implement location and variable handlers
in Perl and insert Perl calls into SSI.
.
Note that this module is marked experimental.

196
debian/copyright vendored
View file

@ -1,102 +1,82 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: nginx
Source: http://nginx.org/en/download.html
Source: https://nginx.org/en/download.html
Files: *
Copyright: 2002-2014 Igor Sysoev
2011-2014 Nginx, Inc.
Maxim Dounin
Valentin V. Bartenev
License: BSD-2-clause
Files: src/core/ngx_murmurhash.c
Copyright: Copyright (C) Austin Appleby
License: BSD-2-clause
Files: src/core/ngx_proxy_protocol.h
src/core/ngx_proxy_protocol.c
Copyright: Copyright (C) Roman Arutyunyan
Copyright (C) Nginx, Inc.
License: BSD-2-clause
Files: src/http/modules/ngx_http_scgi_module.c
src/http/modules/ngx_http_uwsgi_module.c
Copyright: Copyright (C) Igor Sysoev
Copyright (C) Nginx, Inc.
Copyright (C) Manlio Perillo (manlio.perillo@gmail.com)
Copyright: Valentin V. Bartenev
Ruslan Ermilov
Roman Arutyunyan
Maxim Dounin
2011-2024, Nginx, Inc.
2002-2021, Igor Sysoev
License: BSD-2-clause
Files: contrib/geo2nginx.pl
Copyright: 2005, Andrei Nigmatulin
License: BSD-2-clause
Files: debian/modules/headers-more-nginx-module/*
Copyright: Copyright (c) 2009-2014, Yichun "agentzh" Zhang (章亦春) <agentzh@gmail.com>, CloudFlare Inc.
Copyright (c) 2010-2013, Bernd Dorn
Copyright (c) Igor Sysoev
Files: debian/*
Copyright: 2022-2025, Jan Mojžíš <janmojzis@debian.org>
2020-2022, Ondřej Nový <onovy@debian.org>
2019-2022, Thomas Ward <teward@ubuntu.com>
2013-2016, Christos Trochalakis <ctrochalakis@debian.org>
2011-2013, Cyril Lavier <cyril.lavier@davromaniak.eu>
2011, Dmitry E. Oboukhov <unera@debian.org>
2010-2014, Michael Lustfield <michael@lustfield.net>
2009-2014, Kartik Mistry <kartik@debian.org>
2008, Jose Parrella <joseparrella@cantv.net>
2007-2009, Fabio Tranchitella <kobold@debian.org>
License: BSD-2-clause
Files: debian/modules/nginx-development-kit/*
Copyright: Marcus Clyne
License: BSD-3-clause
Files: debian/modules/nginx-development-kit/src/hash/md5.h
debian/modules/nginx-development-kit/src/hash/sha.h
Copyright: Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
License: BSD-4-clause
Files: debian/modules/nginx-auth-pam/*
Copyright: 2008-2013, Sergio Talens Oliag
Files: debian/apport/*
Copyright: 2015, Thomas Ward <teward@ubuntu.com>
License: BSD-2-clause
Files: debian/modules/nginx-echo/*
Copyright: Copyright (c) 2009-2014, Yichun "agentzh" Zhang <agentzh@gmail.com>
License: BSD-2-clause
Files: debian/modules/nginx-lua/*
Copyright: Copyright (C) 2009-2014, by Xiaozhe Wang (chaoslawful) <chaoslawful@gmail.com>.
Copyright (C) 2009-2014, by Yichun "agentzh" Zhang (章亦春) <agentzh@gmail.com>, CloudFlare Inc.
License: BSD-2-clause
Files: debian/modules/nginx-upstream-fair/*
Copyright: Copyright (c) 2007 Grzegorz Nosek
Igor Sysoev
License: BSD-2-clause
Files: debian/modules/nginx-http-push/*
Copyright: Copyright (c) 2009 Leo Ponomarev
Files: debian/debhelper/*
Copyright: 2022, Miao Wang
License: Expat
Files: debian/modules/nginx-upload-progress/*
Copyright: Brice Figureau
2002-2007, Igor Sysoev
Files: debian/debhelper/dh_nginx
Copyright: 2016, Christos Trochalakis <ctrochalakis@debian.org>
License: GPL-2+
Files: debian/ngx-conf/ngx-conf
Copyright: 2015, Michael Lustfield <michael@lustfield.net>
License: Expat
Files: man/*
Copyright: Nginx, Inc.
2010, 2019, Sergey A. Osokin
License: BSD-2-clause
Files: debian/modules/nginx-cache-purge/*
Copyright: 2009-2012, FRiCKLE <info@frickle.com>,
2009-2012, Piotr Sikora <piotr.sikora@frickle.com>
Files: src/core/ngx_murmurhash.c
Copyright: Austin Appleby
License: public-domain
All MurmurHash versions are public domain software, and the author
disclaims all copyright to their code.
Files: src/http/modules/ngx_http_scgi_module.c
Copyright: Nginx, Inc.
Manlio Perillo (manlio.perillo@gmail.com)
Igor Sysoev
License: BSD-2-clause
Files: debian/modules/nginx-dav-ext-module/*
Copyright: Arutyunyan Roman <arut@qip.ru>
Files: src/http/modules/ngx_http_uwsgi_module.c
Copyright: Nginx, Inc.
Igor Sysoev
2009, 2010, Unbit S.a.s.
2008, Manlio Perillo (manlio.perillo@gmail.com)
License: BSD-2-clause
Files: debian/modules/ngx-fancyindex/*
Copyright: Copyright (c) Adrian Perez <aperez@igalia.com>
Files: src/http/ngx_http_huff_encode.c
Copyright: Valentin V. Bartenev
Nginx, Inc.
2015, Vlad Krasnov
License: BSD-2-clause
Files: debian/modules/ngx_http_substitutions_filter_module/*
Copyright: Copyright (C) 2014 by Weibin Yao <yaoweibin@gmail.com>
License: BSD-2-clause
Files: debian/*
Copyright: 2007-2009, Fabio Tranchitella <kobold@debian.org>
2008, Jose Parrella <joseparrella@cantv.net>
2009-2014, Kartik Mistry <kartik@debian.org>
2010-2014, Michael Lustfield <michael@lustfield.net>
2011 Dmitry E. Oboukhov <unera@debian.org>
2011-2013, Cyril Lavier <cyril.lavier@davromaniak.eu>
2013-2014, Christos Trochalakis <yatiohi@ideopolis.gr>
Files: src/stream/ngx_stream_set_module.c
Copyright: Pavel Pautov
Nginx, Inc.
License: BSD-2-clause
License: BSD-2-clause
@ -124,58 +104,6 @@ License: BSD-2-clause
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: BSD-3-clause
All rights reserved.
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this
software without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: BSD-4-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
4. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
License: Expat
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
@ -194,3 +122,15 @@ License: Expat
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
License: GPL-2+
This is free software, licensed under:
.
The GNU General Public License, Version 2, June 1991
.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 dated June, 1991, or (at
your option) any later version.
On Debian systems, the complete text of version 2 of the GNU General
Public License can be found in '/usr/share/common-licenses/GPL-2'.

334
debian/debhelper/dh_nginx vendored Executable file
View file

@ -0,0 +1,334 @@
#! /usr/bin/perl
# dh_nginx - Nginx configuration helper
# Copyright (C) 2016 Christos Trochalakis <ctrochalakis@debian.org>
#
# This program is licensed under the terms of the GNU General
# Public License veserion 2+
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
use strict;
use File::Find;
use Debian::Debhelper::Dh_Lib;
use Dpkg::Substvars;
=head1 NAME
dh_nginx - register configuration snippets to the nginx web server
=cut
my $nginx_in_tree;
my $abi;
sub nginx_depends
{
if (!$abi) {
my $sv = Dpkg::Substvars->new();
if ($nginx_in_tree) {
$sv->load("debian/libnginx-mod.abisubstvars");
}
else {
$sv->load("/usr/share/nginx/src/debian/libnginx-mod.abisubstvars");
}
$abi = $sv->get("nginx:abi");
}
return "$abi";
}
sub nginx_api_installdir
{
return "/usr/lib/nginx/modules/";
}
sub nginx_modules_conf_installdir
{
return "usr/share/nginx/modules-available/"
}
=head1 SYNOPSIS
B<dh_nginx> [S<I<debhelper options>>] [B<-n>|B<--noscripts>] [B<--in-nginx-tree>]
=head1 DESCRIPTION
B<dh_nginx> is a debhelper program that is responsible for correctly installing
Nginx configuration snippets and setting postinst, prerm and dependencies in
Nginx web server modules and web applications.
It supports the following configuration types
=over 4
=item *
Nginx modules
=back
=head1 INVOCATION
%:
dh $@ --with nginx
=head1 FILES
=over 4
=item debian/I<package>.nginx
=item debian/nginx
=back
Lists files to be registered with the Nginx HTTP server. The file is
interpreted as line separated list of installation stanzas, where each entry
consists of whitespace separated values conforming to the file semantics below.
When this file is missing but the name of the package looks like a nginx module,
the module load file and its loading priority is automatically generated inferring
from the package name. In this case, I<package-name>B<.install> or other mechanisms
should be used for copying the B<.so> library into the correct place.
=head2 FILE SEMANTICS
Each line consists of a triple
I<type> I<file> [I<arguments>]
where the values are interpreted as follows:
=head3 I<type>
Denotes the type of file to be installed. Recognized values are B<mod> for
Nginx modules.
=head3 I<file>
Is interpreted as existing file name within the source package. No path
expansion is effectuated. Just like L<dh_install(1)>, B<dh_nginx> can not
rename files.
=head3 I<arguments>
Is inrerpreted as optional arguments if any, currently not used.
=head2 MODULES
Modules are handled specially and are determined by the B<mod> type. Modules must
have a I<.conf> suffix. In that case the file is interpreted as module load
file and is installed to I</etc/nginx/modules-available>. If the file is ending
with a I<.so> suffix it is interpreted as actual module shared object and is
installed to the Nginx module directory, an optional numeric priority can be
set as the last argument to handle module dependencies.
=head1 OPTIONS
=over 4
=item B<-e>, B<--noenable>
Install maintainer scripts accordingly, but do not enable the scripts or
configuration by default.
=item B<-n>, B<--noscripts>
Do not modify F<postinst>/F<postrm>/F<prerm> maintainer scripts.
=item B<--in-nginx-tree>
Specify this option when building in-tree modules along with nginx. When
specified, nginx abi version is not required in package name.
=back
=head1 NOTES
Note that this command is not idempotent. L<dh_prep(1)> should be called
between invocations of this command. Otherwise, it may cause multiple
instances of the same text to be added to maintainer scripts.
=head1 AUTHOR
This manual and L<dh_nginx> was written by Christos Trochalakis.
dh_nginx is heavily influnced by dh_apache2 written by Arno Toell
<debian@toell.net>.
=cut
##
## main code starts here
##
init(options => {
"e|noenable" => \$dh{NOENABLE},
"in-nginx-tree" => \$nginx_in_tree,
});
foreach my $package ((@{$dh{DOPACKAGES}}))
{
my %PACKAGE_TYPE = (
has_a_module => [],
);
my $file = pkgfile($package, "nginx");
my $tmp = tmpdir($package);
my $installdir = $tmp . "/" . nginx_modules_conf_installdir();
my $modinstalldir = $tmp . "/" . nginx_api_installdir();
if ($file){
my @files_to_register = filedoublearray($file, ".") if $file;
foreach my $line (@files_to_register)
{
my $type = lc(shift @{$line}) if $line->[0];
my $source = shift @{$line} if $line->[0];
my @arguments = @{$line};
my $destination;
$type = "modules" if $type eq "mod";
verbose_print("$type -- $source -- @arguments\n\n");
if ($type eq "modules")
{
my $basesource = basename($source);
if ($type eq "modules")
{
if ($basesource =~ m/\.conf$/)
{
my $enablename = $basesource;
my $prio = $#arguments >= 0 ? $arguments[0] : 50;
$destination = "$prio-$basesource";
push @{$PACKAGE_TYPE{'has_a_module'}}, "$enablename:$destination";
verbose_print("Installing module configuration $enablename into $installdir prio:$prio\n");
}
elsif ($basesource =~ m/\.so$/)
{
verbose_print("Installing module binary $source into $modinstalldir\n");
if (! -d $modinstalldir)
{
complex_doit("mkdir","-p", $modinstalldir);
complex_doit("chmod","755","$modinstalldir");
}
complex_doit("cp", $source, $modinstalldir);
next;
}
# TODO
error("module: \"$basesource\" needs .conf, .so or suffix") if $basesource !~ m/\.(conf|so)/;
}
if (! -d $installdir)
{
complex_doit("mkdir","-p",$installdir);
complex_doit("chmod","755","$installdir");
}
complex_doit("cp",$source,$installdir);
complex_doit("chmod","644","$installdir/$basesource");
}
else
{
error("Unknown parameter: $type\n");
}
}
} elsif ($package =~ /^libnginx-mod-/){
verbose_print("$package might be a nginx module\n");
my $module = $package;
$module =~ s/^libnginx-mod-//;
verbose_print("Guessed module name: $module\n");
my $modulepath = $module;
$modulepath =~ s/-/_/g;
if (-e "$modinstalldir/ngx_${modulepath}_module.so"){
my $prio = 50;
if ($module =~ /^\w+-/ && !($module =~ /^http-/) ){
$prio = 70;
}
verbose_print("Guessed load priority: $prio\n");
my $conf_name = "mod-$module.conf";
install_dir($installdir);
verbose_print("Installing module configuration $conf_name into $installdir prio:$prio\n");
open(MOD_CONF, $dh{NO_ACT} ? ">&STDERR" : ">$installdir/$conf_name") or error("open($installdir/$conf_name): $!");
print(MOD_CONF "load_module modules/ngx_${modulepath}_module.so;\n");
close(MOD_CONF);
chmod(0644, "$installdir/$conf_name") or error("chmod(0644, $installdir/$conf_name): $!");
push @{$PACKAGE_TYPE{'has_a_module'}}, "$conf_name:$prio-$conf_name";
} else {
verbose_print("$package is not a nginx module because $modinstalldir/ngx_${modulepath}_module.so not found");
verbose_print("If it is not correct, check if the module is installed before invoking this script");
}
}
my @postinst_autoscripts;
if ($#{$PACKAGE_TYPE{'has_a_module'}} >= 0)
{
if ($package !~ m/libnginx-mod-\w+?/)
{
warning("Package $package appears to be an Nginx module. It should comply to the package naming scheme libnginx-mod-<modulename>\n");
}
addsubstvar($package, "misc:Depends", nginx_depends());
my $modules = "";
foreach my $module (@{$PACKAGE_TYPE{'has_a_module'}})
{
$modules .= "$module ";
}
push @postinst_autoscripts, ["module", $modules];
}
if (! $dh{NOSCRIPTS})
{
foreach my $ref (@postinst_autoscripts)
{
for my $script_type (qw/postinst prerm postrm/)
{
if ($script_type eq "postinst" && $dh{NOENABLE})
{
next
}
my %replacements = (
NAMES => $ref->[1],
);
my $sed_command = "";
foreach my $key (sort keys %replacements)
{
my $val = $replacements{$key};
# Use a control char as separator for sed, to
# reduce escaping issues. Everything else is
# passed verbatim, i.e. it must not contain any
# shell or sed special characters.
my $sep = "\x17";
$sed_command .= "s" . $sep . "#$key#" .
$sep . $val .
$sep . "g; ";
}
autoscript($package, "$script_type", "$script_type-nginx", $sed_command);
}
}
}
}
# vim: syntax=perl sw=8 sts=8 sr noet

14
debian/debhelper/nginx.pm vendored Normal file
View file

@ -0,0 +1,14 @@
#!/usr/bin/perl
use warnings;
use strict;
use Debian::Debhelper::Dh_Lib;
add_command_options( "dh_auto_test", "--buildsystem=nginx_mod" );
add_command_options( "dh_auto_configure", "--buildsystem=nginx_mod" );
add_command_options( "dh_auto_build", "--buildsystem=nginx_mod" );
add_command_options( "dh_auto_install", "--buildsystem=nginx_mod" );
add_command_options( "dh_auto_clean", "--buildsystem=nginx_mod" );
insert_after("dh_install", "dh_nginx");
1;

138
debian/debhelper/nginx_mod.pm vendored Normal file
View file

@ -0,0 +1,138 @@
# A build system class for handling nginx modules.
#
# Copyright: © 2022 Miao Wang
# License: MIT
package Debian::Debhelper::Buildsystem::nginx_mod;
use strict;
use warnings;
use Dpkg::Deps qw(deps_parse);
use Dpkg::Control::Info;
use Debian::Debhelper::Dh_Lib qw(error doit getpackages addsubstvar);
use File::Spec;
use parent qw(Debian::Debhelper::Buildsystem::makefile);
use Config;
sub DESCRIPTION {
"Nginx Module (config)"
}
sub check_auto_buildable {
my ($this, $step) = @_;
return 1 if -e $this->get_sourcepath("config");
}
sub _NGINX_SRC_DIR {
"/usr/share/nginx/src"
}
sub _NDK_SRC_DIR {
"/usr/share/nginx-ndk/src"
}
sub new {
my $class=shift;
my $this= $class->SUPER::new(@_);
my $ngx_ver = `grep 'define NGINX_VERSION' /usr/share/nginx/src/src/core/nginx.h | sed -e 's/^.*"\\(.*\\)".*/\\1/'`;
chomp($ngx_ver);
$this->prefer_out_of_source_building(@_);
$this->{has_ndk} = $this->has_build_dep("libnginx-mod-http-ndk-dev");
$this->{has_stream} = $this->has_build_dep("libnginx-mod-stream");
foreach my $cur (getpackages('arch')) {
if ($this->{has_ndk} == 1) {
addsubstvar($cur, "misc:Depends", "libnginx-mod-http-ndk");
}
if ($this->{has_stream} == 1) {
addsubstvar($cur, "misc:Depends", "libnginx-mod-stream (>= $ngx_ver), libnginx-mod-stream (<< $ngx_ver.1~)");
}
}
return $this;
}
sub configure {
my $this=shift;
doit({
"chdir" => $this->_NGINX_SRC_DIR,
"update_env" => {
"src_dir" => $this->get_sourcedir,
"bld_dir" => $this->get_builddir,
"pwd_dir" => $this->{cwd},
},
}, "bash", "-c", '. ./conf_flags
./configure \\
--with-cc-opt="$(cd "$pwd_dir/$src_dir"; dpkg-buildflags --get CFLAGS) -fPIC $(cd "$pwd_dir/$src_dir"; dpkg-buildflags --get CPPFLAGS)" \\
--with-ld-opt="$(cd "$pwd_dir/$src_dir"; dpkg-buildflags --get LDFLAGS) -fPIC" \\
"${NGX_CONF_FLAGS[@]}" \\
--add-dynamic-module="$pwd_dir/$src_dir" \\
--builddir="$pwd_dir/$bld_dir" \\
' . ($this->{has_ndk} ? '--add-module=' . $this->_NDK_SRC_DIR : '') . ' \\
' . ($this->{has_stream} ? '--with-stream' : '') . ' \\
"$@"', "dummy", @_);
}
sub build {
my $this=shift;
$this->do_make("-f", File::Spec->catfile($this->{cwd}, $this->get_buildpath("Makefile")), "-C", $this->_NGINX_SRC_DIR, "modules");
}
sub test {
my $this=shift;
if ( $this->{has_ndk} and !grep( /^ndk_http_module.so$/, @_ ) ) {
unshift @_, "ndk_http_module.so";
}
if ( $this->{has_stream} and !grep( /^ngx_stream_module.so$/, @_ ) ) {
unshift @_, "ngx_stream_module.so";
}
$this->doit_in_builddir("bash", "-e", "-o", "pipefail", "-c", '
tmp_conf=$(mktemp -p .)
for pre_dep in "$@"; do
echo "load_module modules/$pre_dep;" >> "$tmp_conf"
done
for i in *.so; do
echo "load_module $PWD/$i;" >> "$tmp_conf"
done
echo "events{}" >> "$tmp_conf"
/usr/sbin/nginx -g "error_log /dev/null; pid /dev/null;" -t -q -c "$PWD/$tmp_conf"
rm -f "$tmp_conf"
', "dummy", @_);
}
sub install {
my $this=shift;
my $destdir=shift;
$this->doit_in_builddir("bash", "-e", "-o", "pipefail", "-c", '
destdir=$1
mkdir -p "$destdir/usr/lib/nginx/modules"
for i in *.so; do
cp "$i" "$destdir/usr/lib/nginx/modules/"
done
', "dummy", $destdir);
}
sub clean {
my $this=shift;
$this->rmdir_builddir();
}
sub has_build_dep {
my $this=shift;
my $bd=shift;
my $control = Dpkg::Control::Info->new()->get_source();
my $depends = deps_parse($control->{'Build-Depends'});
foreach (split /,\s+/,$depends) {
if ($_ =~ /$bd/) {
return 1;
}
}
return 0;
}
1

10
debian/gbp.conf vendored
View file

@ -1,3 +1,13 @@
[DEFAULT]
debian-branch = main
upstream-branch = upstream
upstream-tag = upstream/%(version)s
pristine-tar = True
sign-tags = True
upstream-signatures = on
[import-orig]
merge-mode = replace
[pull]
track-missing = True

View file

@ -38,7 +38,6 @@ http {
##
gzip on;
gzip_disable "msie6";
# gzip_vary on;
# gzip_proxied any;

Some files were not shown because too many files have changed in this diff Show more