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
|
#!/usr/bin/make -f
include /usr/share/python/python.mk
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
LDFLAGS += -Wl,--as-needed
# For building swig/ and bindings/python/ for all Python version, these directories are cloned and build in addition to the main library
PYDEFAULTVER := $(shell pyversions --default --version)
PYVERS := $(shell pyversions --requested --version debian/control)
PYVERS := $(filter-out $(PYDEFAULTVER), $(PYVERS)) # $(PYDEFAULTVER)
ifeq ($(DEB_HOST_ARCH),arm64)
EXTRA_ARCH_TABLE := --with-aarch64
endif
ifeq ($(DEB_HOST_ARCH),alpha)
EXTRA_ARCH_TABLE := --with-alpha
endif
ifeq ($(DEB_HOST_ARCH),hppa)
EXTRA_ARCH_TABLE := --with-hppa
endif
%:
dh $@ --builddirectory=debian/build --buildsystem=autoconf --with autoreconf --with python2 --with systemd
override_dh_auto_configure: debian/config-python-stamp $(PYVERS:%=debian/config-python%-stamp)
debian/config-python-stamp:
dh_testdir
dh_auto_configure -- \
--sbindir=/sbin \
--libdir=/lib/${DEB_HOST_MULTIARCH} \
--enable-shared=audit \
--enable-gssapi-krb5 \
--with-apparmor \
--with-prelude \
--with-libwrap \
--with-libcap-ng \
--with-arm ${EXTRA_ARCH_TABLE}
touch $@
debian/config-python%-stamp: debian/config-python-stamp
cp -lpr debian/build/swig debian/build/swig.$*
cp -lpr debian/build/bindings/python debian/build/bindings/python.$*
touch $@
override_dh_auto_clean:
$(RM) debian/*-stamp
dh_auto_clean
override_dh_auto_build: debian/build-python-stamp $(PYVERS:%=debian/build-python%-stamp)
debian/build-python-stamp: debian/config-python-stamp
dh_testdir
dh_auto_build
touch $@
debian/build-python%-stamp: debian/config-python%-stamp debian/build-python-stamp
PYTHON=/usr/bin/python$* $(MAKE) -C debian/build/swig.$* pyexecdir=$(call py_libdir_sh, $*)
PYTHON=/usr/bin/python$* $(MAKE) -C debian/build/bindings/python.$* pyexecdir=$(call py_libdir_sh, $*)
touch $@
debian/install-python-stamp: debian/build-python-stamp
dh_testdir
dh_auto_install --sourcedir=debian/build --destdir=debian/tmp
touch $@
debian/install-python%-stamp: debian/build-python%-stamp debian/install-python-stamp
PYTHON=/usr/bin/python$* $(MAKE) -C debian/build/swig.$* pyexecdir=$(call py_libdir_sh, $*) DESTDIR=$(CURDIR)/debian/tmp install
PYTHON=/usr/bin/python$* $(MAKE) -C debian/build/bindings/python.$* pyexecdir=$(call py_libdir_sh, $*) DESTDIR=$(CURDIR)/debian/tmp install
touch $@
override_dh_auto_install: debian/install-python-stamp $(PYVERS:%=debian/install-python%-stamp)
# Remove some RedHat specific files
$(RM) debian/tmp/etc/rc.d/init.d/auditd
$(RM) debian/tmp/etc/sysconfig/auditd
# Move the development library to /usr/lib
$(RM) debian/tmp/lib/${DEB_HOST_MULTIARCH}/libaudit.so
$(RM) debian/tmp/lib/${DEB_HOST_MULTIARCH}/libauparse.so
mkdir -p debian/tmp/usr/lib/${DEB_HOST_MULTIARCH}/
ln -s /lib/${DEB_HOST_MULTIARCH}/libaudit.so.1.0.0 \
debian/tmp/usr/lib/${DEB_HOST_MULTIARCH}/libaudit.so
ln -s /lib/${DEB_HOST_MULTIARCH}/libauparse.so.0.0.0 \
debian/tmp/usr/lib/${DEB_HOST_MULTIARCH}/libauparse.so
mv debian/tmp/lib/${DEB_HOST_MULTIARCH}/libaudit.a \
debian/tmp/usr/lib/${DEB_HOST_MULTIARCH}/libaudit.a
mv debian/tmp/lib/${DEB_HOST_MULTIARCH}/libauparse.a \
debian/tmp/usr/lib/${DEB_HOST_MULTIARCH}/libauparse.a
override_dh_install:
dh_install --list-missing
override_dh_installlogrotate:
# auditd has a equivalent built-in feature
override_dh_installinit:
dh_installinit --restart-after-upgrade -- start 37 2 3 4 5 . stop 39 0 1 6 .
override_dh_fixperms:
dh_fixperms
#chmod o-wx debian/auditd/usr/bin/aulastlog
#chmod o-wx debian/auditd/sbin/auditctl
#chmod o-wx debian/auditd/sbin/auditd
#chmod o-wx debian/auditd/sbin/autrace
#chmod 750 debian/auditd/sbin/audispd
chmod -R o-rwx debian/auditd/var/log/audit
chmod -R o-rwx debian/auditd/etc/audit debian/auditd/etc/audisp debian/auditd/etc/audisp/plugins.d
get-orig-source:
-uscan --upstream-version 0
my-check:
find debian/*aud*/ -mindepth 0 -name DEBIAN -prune -o -not -type d -print|sed -e 's,debian/[^/]*/,,' -e 's/\.gz$$//'
|