#!/usr/bin/make -f
# Architecture.
include /usr/share/dpkg/architecture.mk
# Build and include setup?
ifeq ($(DEB_HOST_ARCH),amd64)
INCLUDE_SETUP=yes
else ifeq ($(DEB_HOST_ARCH),i386)
INCLUDE_SETUP=yes
else
INCLUDE_SETUP=no
endif
SETUP_LINK=g++ -Wl,-z,relro -Wl,-z,now -Os
SETUP_LIBS=libepm.a -Wl,-Bstatic -lfltk_images -lpng -lz -ljpeg -lfltk \
-lXcursor -lXrender -lXext -lXfixes -Wl,-Bdynamic -lXft \
-lfontconfig -lXinerama -lm -lX11 -ldl
DEB_BUILD_MAINT_OPTIONS="hardening=+all"
# Set build flags. For wheezy+1, we will switch to using debhelper 9.
# For now, preserve compatibility with squeeze.
DPKG_EXPORT_BUILDFLAGS=1
-include /usr/share/dpkg/buildflags.mk
prefix=/usr
# Do not auto-generate configuration header.
export AUTOHEADER = true
%:
dh $@
override_dh_auto_configure:
./configure --build=$(DEB_HOST_MULTIARCH) \
--prefix=$(prefix) \
--includedir=$(prefix)/include \
--mandir=$(prefix)/share/man \
--infodir=$(prefix)/share/info \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-option-checking \
--disable-silent-rules \
--libdir=$(prefix)/lib/$(DEB_HOST_MULTIARCH) \
--disable-maintainer-mode \
--disable-dependency-tracking \
GZIP=/bin/gzip \
override_dh_auto_build:
dh_auto_build --no-parallel
mv doc/epm-book.html doc/epm-book.html.save
dh_auto_build --sourcedirectory=doc
# Ensure reproducible building by using fixed timestamp in doc
python3 -c "import zipfile, os, datetime, re, shutil; epoch = int(os.environ.get('SOURCE_DATE_EPOCH', '0')); d = datetime.datetime.fromtimestamp(epoch, datetime.UTC).strftime('%Y-%m-%dT%H:%M:%SZ').encode(); shutil.copy('doc/epm-book.epub', 'doc/epm-book.epub.tmp'); zin = zipfile.ZipFile('doc/epm-book.epub.tmp', 'r'); zout = zipfile.ZipFile('doc/epm-book.epub', 'w', zipfile.ZIP_DEFLATED); [zout.writestr(item, re.sub(rb'[^<]*', b'' + d + b'', zin.read(item.filename)) if item.filename == 'OEBPS/package.opf' else zin.read(item.filename)) for item in zin.infolist()]; zin.close(); zout.close(); os.unlink('doc/epm-book.epub.tmp')"
# Rebuild setup and uninst to be as static as possible
# XXX: on x86 and x86_64 only for now
ifeq ($(INCLUDE_SETUP),yes)
$(SETUP_LINK) -o setup setup.o setup2.o gui-common.o $(SETUP_LIBS)
$(SETUP_LINK) -o uninst uninst.o uninst2.o gui-common.o $(SETUP_LIBS)
endif
override_dh_auto_clean:
dh_auto_clean --sourcedirectory=doc
dh_auto_clean
# Some minor cleanup issues
-mv doc/epm-book.html.save doc/epm-book.html
# Remove dir created when building
$(RM) -r linux-*-*
override_dh_auto_install:
dh_auto_install
# Remove catX dirs.
rm -rf debian/epm/usr/share/man/cat1
rm -rf debian/epm/usr/share/man/cat5
# Remove extra license file.
rm -f debian/epm/usr/share/doc/epm/COPYING
# Remove setup/uninst on unsupported arches.
ifneq ($(INCLUDE_SETUP),yes)
rm -f debian/epm/usr/lib/epm/setup debian/epm/usr/lib/epm/uninst
endif