File: rules

package info (click to toggle)
nginx 1.28.0-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 9,536 kB
  • sloc: ansic: 169,390; sh: 623; perl: 439; python: 240; makefile: 130; cpp: 19
file content (132 lines) | stat: -rwxr-xr-x 4,426 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#!/usr/bin/make -f
export DH_VERBOSE=1

export DEB_BUILD_MAINT_OPTIONS=hardening=+all
debian_cflags:=$(shell dpkg-buildflags --get CFLAGS) -fPIC $(shell dpkg-buildflags --get CPPFLAGS)
debian_ldflags:=$(shell dpkg-buildflags --get LDFLAGS) -fPIC

FLAVOURS := bin

BASEDIR = $(CURDIR)
$(foreach flavour,$(FLAVOURS) src ,$(eval BUILDDIR_$(flavour) = $(CURDIR)/debian/build-$(flavour)))

DEB_BUILD_ARCH ?=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
ifeq ($(DEB_BUILD_ARCH),sparc)
	debian_cflags += -m32 -mcpu=ultrasparc
endif

ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	MAKEFLAGS += -j$(NUMJOBS)
endif

# configure flags
basic_configure_flags := \
			--override-system="$$(dpkg-architecture --query DEB_HOST_GNU_SYSTEM | sed 's/-.*$$//; s/^./\U&/; s/Gnu/\U&/g;')" \
			--override-release="3.16.0" \
			--override-machine="$$(dpkg-architecture --query DEB_HOST_GNU_CPU)" \
			--prefix=/usr/share/nginx \
			--conf-path=/etc/nginx/nginx.conf \
			--http-log-path=/var/log/nginx/access.log \
			--error-log-path=stderr \
			--lock-path=/var/lock/nginx.lock \
			--pid-path=/run/nginx.pid \
			--modules-path=/usr/lib/nginx/modules \
			--http-client-body-temp-path=/var/lib/nginx/body \
			--http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
			--http-proxy-temp-path=/var/lib/nginx/proxy \
			--http-scgi-temp-path=/var/lib/nginx/scgi \
			--http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
			--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_v3_module \
			--with-http_dav_module \
			--with-http_slice_module \
			--with-threads

common_configure_flags := \
			--with-cc-opt="$(debian_cflags)" \
			--with-ld-opt="$(debian_ldflags)" \
			$(basic_configure_flags)

bin_configure_flags := \
			$(common_configure_flags) \
			--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

%:
	dh $@ --without autoreconf

override_dh_auto_configure: $(foreach flavour,$(FLAVOURS),config.arch.$(flavour)) config.src
override_dh_auto_build:     $(foreach flavour,$(FLAVOURS),build.arch.$(flavour)) build.src
override_dh_clean:          $(foreach flavour,$(FLAVOURS),clean.$(flavour)) clean.src
	dh_clean

override_dh_install:
	dh_install
	DH_AUTOSCRIPTDIR=$(CURDIR)/debian/autoscripts debian/debhelper/dh_nginx --in-nginx-tree

override_dh_installinit:
	dh_installinit --no-stop-on-upgrade --no-start --name=nginx

override_dh_installsystemd:
	dh_installsystemd --name=nginx

override_dh_installlogrotate:
	dh_installlogrotate --package nginx-common --name=nginx

override_dh_gencontrol:
	dh_gencontrol -- -Tdebian/substvars -Tdebian/libnginx-mod.abisubstvars

build.arch.%:
	$(MAKE) -C $(BUILDDIR_$*) build

build.src: export flags=$(basic_configure_flags)
build.src:
	cp -Pa $(CURDIR)/auto $(BUILDDIR_src)/
	sed -i '/^# create Makefile/,/^END$$/d' $(BUILDDIR_src)/auto/make $(BUILDDIR_src)/auto/init $(BUILDDIR_src)/auto/install
	find $(CURDIR)/src -type f -name '*.h' -printf 'src/%P\0' | tar -C $(CURDIR) --null --files-from - -c | tar -C $(BUILDDIR_src)/ -x
	if [ -e $(CURDIR)/configure ]; then cp $(CURDIR)/configure $(BUILDDIR_src)/; fi
	echo "NGX_CONF_FLAGS=( $${flags} )" > $(BUILDDIR_src)/conf_flags
	pod2man debian/debhelper/dh_nginx > $(BUILDDIR_src)/dh_nginx.1

config.arch.%:
	dh_testdir
	mkdir -p $(BUILDDIR_$*)
	cp -Pa $(CURDIR)/auto $(BUILDDIR_$*)/
	cp -Pa $(CURDIR)/conf $(BUILDDIR_$*)/
	cp -Pa $(CURDIR)/configure $(BUILDDIR_$*)/
	cp -Pa $(CURDIR)/contrib $(BUILDDIR_$*)/
	cp -Pa $(CURDIR)/src $(BUILDDIR_$*)/
	cp -Pa $(CURDIR)/man $(BUILDDIR_$*)/
	cd $(BUILDDIR_$*) && ./configure $($*_configure_flags)

config.src:
	dh_testdir
	mkdir -p $(BUILDDIR_src)

clean.%:
	rm -rf $(BUILDDIR_$*)