While here, default debhelper compat level bumped to 11 (this is the version installed out of the box on Ubuntu 18.04 "bionic" which is the oldest one from supported distros).
135 lines
3.4 KiB
Makefile
135 lines
3.4 KiB
Makefile
#!/usr/bin/make -f
|
|
|
|
# Uncomment this to turn on verbose mode.
|
|
#export DH_VERBOSE=1
|
|
|
|
export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie
|
|
export DEB_CFLAGS_MAINT_APPEND=-Wp,-D_FORTIFY_SOURCE=2 -fPIC
|
|
export DEB_LDFLAGS_MAINT_APPEND=-Wl,--as-needed -pie
|
|
DPKG_EXPORT_BUILDFLAGS = 1
|
|
include /usr/share/dpkg/buildflags.mk
|
|
|
|
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
|
|
CODENAME := $(shell lsb_release -cs)
|
|
|
|
BUILDDIR_unit = $(CURDIR)/debian/build-unit
|
|
BUILDDIR_unit_debug = $(CURDIR)/debian/build-unit-debug
|
|
INSTALLDIR = $(CURDIR)/debian/unit
|
|
INSTALLDIR_dev = $(CURDIR)/debian/unit-dev
|
|
BASEDIR = $(CURDIR)
|
|
|
|
DOTESTS = 0
|
|
|
|
config.env.%:
|
|
dh_testdir
|
|
mkdir -p $(BUILDDIR_$*)
|
|
cp -Pa $(CURDIR)/auto $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/configure $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/src $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/test $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/version $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/CHANGES $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/LICENSE $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/NOTICE $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/README $(BUILDDIR_$*)/
|
|
cp -Pa $(CURDIR)/go $(BUILDDIR_$*)/
|
|
mkdir -p $(BUILDDIR_$*)/docs/man
|
|
cp -Pa $(CURDIR)/docs/man/unitd.8.in $(BUILDDIR_$*)/docs/man/
|
|
touch $@
|
|
|
|
configure.unit: config.env.unit
|
|
cd $(BUILDDIR_unit) && \
|
|
CFLAGS= ./configure \
|
|
%%CONFIGURE_ARGS%% \
|
|
--modules=/usr/lib/unit/modules \
|
|
--libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \
|
|
--cc-opt="$(CFLAGS)" \
|
|
--ld-opt="$(LDFLAGS)"
|
|
touch $@
|
|
|
|
configure.unit_debug: config.env.unit_debug
|
|
cd $(BUILDDIR_unit_debug) && \
|
|
CFLAGS= ./configure \
|
|
%%CONFIGURE_ARGS%% \
|
|
--modules=/usr/lib/unit/debug-modules \
|
|
--libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \
|
|
--cc-opt="$(CFLAGS)" \
|
|
--ld-opt="$(LDFLAGS)" \
|
|
--debug
|
|
touch $@
|
|
|
|
build-arch.%: configure.%
|
|
dh_testdir
|
|
$(MAKE) -C $(BUILDDIR_$*)
|
|
$(MAKE) -C $(BUILDDIR_$*) build/libunit.a
|
|
ifeq ($(DOTESTS), 1)
|
|
$(MAKE) -C $(BUILDDIR_$*) tests
|
|
endif
|
|
touch $@
|
|
|
|
do.tests: build
|
|
dh_testdir
|
|
ifeq ($(DOTESTS), 1)
|
|
cd $(BUILDDIR_unit) && ./build/tests
|
|
cd $(BUILDDIR_unit_debug) && ./build/tests
|
|
endif
|
|
touch $@
|
|
|
|
build-indep:
|
|
dh_testdir
|
|
touch $@
|
|
|
|
build-arch: build-arch.unit build-arch.unit_debug
|
|
dh_testdir
|
|
touch $@
|
|
|
|
build: build-arch build-indep
|
|
dh_testdir
|
|
touch $@
|
|
|
|
clean:
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_clean
|
|
find $(CURDIR) -maxdepth 1 -size 0 -delete
|
|
rm -rf $(BUILDDIR_unit) $(BUILDDIR_unit_debug)
|
|
|
|
install: build do.tests
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_prep
|
|
dh_installdirs
|
|
dh_installsystemd
|
|
dh_installlogrotate
|
|
cd $(BUILDDIR_unit) && DESTDIR=$(INSTALLDIR) make install
|
|
cd $(BUILDDIR_unit) && DESTDIR=$(INSTALLDIR_dev) make libunit-install
|
|
install -m 755 $(BUILDDIR_unit_debug)/build/unitd $(INSTALLDIR)/usr/sbin/unitd-debug
|
|
install -m 644 $(BUILDDIR_unit_debug)/build/libunit.a $(INSTALLDIR_dev)/usr/lib/$(DEB_HOST_MULTIARCH)/libunit-debug.a
|
|
mkdir -p $(INSTALLDIR)/usr/share/doc/unit/examples
|
|
install -m 644 debian/unit.example.config $(INSTALLDIR)/usr/share/doc/unit/examples/example.config
|
|
install -m 644 CHANGES $(INSTALLDIR)/usr/share/doc/unit/changelog
|
|
install -m 644 README $(INSTALLDIR)/usr/share/doc/unit/
|
|
install -m 644 NOTICE $(INSTALLDIR)/usr/share/doc/unit/
|
|
|
|
binary-indep: build install
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_installdocs
|
|
dh_installchangelogs
|
|
dh_link
|
|
dh_strip --dbg-package=unit-dbg
|
|
dh_shlibdeps
|
|
dh_compress
|
|
dh_fixperms
|
|
dh_installdeb
|
|
dh_perl
|
|
dh_gencontrol
|
|
dh_md5sums
|
|
dh_builddeb
|
|
|
|
binary-arch: install
|
|
|
|
binary: binary-indep binary-arch
|
|
|
|
.PHONY: clean binary-indep binary-arch binary install build
|