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
|
#!/usr/bin/make -f
#export DH_VERBOSE=1
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
include /usr/share/dpkg/architecture.mk
# for cross compilation
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
export CC := $(DEB_HOST_GNU_TYPE)-gcc
export PKG_CONFIG := $(DEB_HOST_GNU_TYPE)-pkg-config
endif
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
MAKEFLAGS += -j$(NUMJOBS)
endif
DOPACKAGES = $(shell dh_listpackages)
DH_ADDONS=
ifneq ($(filter python3-semanage,$(DOPACKAGES)),)
PY3VERSIONS = $(shell py3versions -rv)
DH_ADDONS += --with=python3
endif
ifneq ($(filter ruby-semanage,$(DOPACKAGES)),)
RUBY_VERSIONS := $(shell dh_ruby --print-supported)
DH_ADDONS += --with=ruby
endif
# Upstream recommends using this flag
export DEB_CFLAGS_MAINT_APPEND = -fno-semantic-interposition
# The build system doesn't use CPPFLAGS, pass them to CFLAGS to enable the
# missing (hardening) flags. Also enable Wall and Wextra to spot basic irregularities.
export DEB_CFLAGS_MAINT_APPEND += $(shell dpkg-buildflags --get CPPFLAGS) -Wall -Wextra
%:
dh $@ $(DH_ADDONS)
override_dh_auto_build:
$(MAKE) all
ifneq ($(filter python3-semanage,$(DOPACKAGES)),)
set -e; for version in $(PY3VERSIONS); do \
$(MAKE) pywrap PYTHON=python$$version PYLIBS=; \
done;
endif
ifneq ($(filter ruby-semanage,$(DOPACKAGES)),)
set -e; for version in $(RUBY_VERSIONS); do \
$(MAKE) -C src rubywrap RUBY=$$version; \
done;
endif
override_dh_auto_install:
$(MAKE) install DESTDIR="${CURDIR}/debian/tmp" \
LIBDIR="/usr/lib/${DEB_HOST_MULTIARCH}" \
SHLIBDIR="/usr/lib/${DEB_HOST_MULTIARCH}"
ifneq ($(filter python3-semanage,$(DOPACKAGES)),)
set -e; for version in $(PY3VERSIONS); do \
$(MAKE) install-pywrap PYTHON=python$$version DESTDIR="${CURDIR}/debian/tmp"; \
done;
endif
ifneq ($(filter ruby-semanage,$(DOPACKAGES)),)
set -e; for version in $(RUBY_VERSIONS); do \
$(MAKE) -C src install-rubywrap RUBY=$$version DESTDIR="${CURDIR}/debian/tmp"; \
done;
endif
override_dh_auto_clean:
dh_auto_clean
ifneq ($(filter python3-semanage,$(DOPACKAGES)),)
set -e; for version in $(PY3VERSIONS); do \
$(MAKE) clean PYTHON=python$$version; \
done;
endif
ifneq ($(filter ruby-semanage,$(DOPACKAGES)),)
set -e; for version in $(RUBY_VERSIONS); do \
$(MAKE) clean RUBY=$$version; \
done;
endif
override_dh_fixperms:
dh_fixperms
ifneq ($(filter python3-semanage,$(DOPACKAGES)),)
chmod -x ${CURDIR}/debian/python3-semanage/usr/lib/python*/*-packages/semanage.py
endif
|