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
|
#!/usr/bin/make -f
# get upstream ABI variable, and export it for use by debhelper snippets
include base/version.mak
export GS_DOT_VERSION
include /usr/share/dpkg/pkg-info.mk
# detect if build targets experimental suite (or is a draft)
DEB_SUITE_EXP = $(filter experimental% UNRELEASED,$(DEB_DISTRIBUTION))
pkg-data = libgs10-common
binaries := $(shell dh_listpackages)
# don't run configure during autogen.sh
export NOCONFIGURE = 1
fontdirs = /var/lib/ghostscript/fonts /usr/share/cups/fonts \
/usr/share/ghostscript/fonts /usr/local/lib/ghostscript/fonts \
/usr/share/fonts
# Remove some of the scripts
DEB_DH_INSTALL_ARGS_ALL += $(addprefix -Xbin/,\
unix-lpr.sh lprsetup.sh pv.sh fixmswrd.pl)
# Do not include the Ghostscript loader executable with GTK support
DEB_DH_INSTALL_ARGS_ALL += -Xbin/gsx
# Strip CMap files (separately packaged in poppler-data)
DEB_DH_INSTALL_ARGS_ALL += -X/Resource/CMap
# Recommend fonts-droid (not ship DroidSansFallback.ttf)
DEB_DH_INSTALL_ARGS_ALL += -XDroidSansFallback.ttf
# relax symbols check when bootstrapping an arch or targeting experimental
STAGE1 = $(findstring stage1,$(DEB_BUILD_PROFILES))
export DPKG_GENSYMBOLS_CHECK_LEVEL=$(if $(DEB_SUITE_EXP)$(STAGE1),0,1)
# # FIXME: Enable parallel when not causing spurious errors like this:
# <https://buildd.debian.org/status/fetch.php?pkg=ghostscript&arch=amd64&ver=9.25~dfsg-6&stamp=1541195477&raw=0>
%:
dh $@ --no-parallel
# use upstream bootstrapping script
override_dh_autoreconf:
dh_autoreconf ./autogen.sh
# * TODO: enable pcl when supporting system-shared libjpeg
# <https://bugs.ghostscript.com/show_bug.cgi?id=696654>
# * TODO: maybe enable openjpeg (requires fork for ICC and CMYK support)
override_dh_auto_configure:
dh_auto_configure -- \
--without-pcl \
--with-x --disable-gtk \
--disable-compile-inits \
--with-fontpath=$(subst $() ,:,$(strip $(fontdirs)))
override_dh_auto_build:
dh_auto_build -- so $(gs_opts)
execute_after_dh_auto_build-indep:
ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES) $(DEB_BUILD_OPTIONS)))
sphinx-build -bhtml doc/src doc/build/html
endif
# check that tracked issues are solved
override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_PROFILES) $(DEB_BUILD_OPTIONS)))
GS="LD_LIBRARY_PATH=sobin GS_LIB=Resource/Init sobin/gsc" \
$(MAKE) --file debian/tests/smoke.mk
GS="LD_LIBRARY_PATH=sobin GS_LIB=Resource/Init sobin/gsc" \
$(MAKE) --file debian/tests/issues/bug_700317/check.mk
endif
override_dh_auto_install:
$(MAKE) soinstall DESTDIR=debian/tmp
override_dh_install:
# Rename /usr/bin/gsc, to not conflict with gambc
mv debian/tmp/usr/bin/gsc debian/tmp/usr/bin/gs
mkdir -p debian/tmp/usr/sbin/
install -m 755 debian/update-gsfontmap debian/tmp/usr/sbin
# Move ICC profiles to shared dir, to allow reuse by others.
mkdir -p debian/tmp/usr/share/color/icc
mv debian/tmp/usr/share/ghostscript/$(GS_DOT_VERSION)/iccprofiles \
debian/tmp/usr/share/color/icc/ghostscript
dh_install $(DEB_DH_INSTALL_ARGS_ALL)
dh_link --package=$(pkg-data) -- $(DEB_DH_LINK_$(pkg-data))
dh_link --no-package=$(pkg-data)
ifneq ($(filter $(pkg-data),$(binaries)),)
file='debian/$(pkg-data)/usr/share/ghostscript/$(GS_DOT_VERSION)/Resource/Init/cidfmap'; \
! egrep -v '^(%([^%].*)?)?$$' "$$file" && rm "$$file" || ( \
echo; \
echo 'ERROR: cidfmap not virtually empty as expected,'; \
echo ' so some alternative to just dropping that file is required.'; \
echo ' More info at bug#531182.'; \
exit 1 )
rename 's/$$/.t1/' \
debian/$(pkg-data)/usr/share/ghostscript/$(GS_DOT_VERSION)/Resource/Font/*
dh_linktree -p$(pkg-data) -- \
replace usr/share/fonts/type1/urw-base35 \
usr/share/ghostscript/$(GS_DOT_VERSION)/Resource/Font
rename 's/\.t1$$//' \
debian/$(pkg-data)/usr/share/ghostscript/$(GS_DOT_VERSION)/Resource/Font/*
endif
execute_after_dh_installdocs-indep:
ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES) $(DEB_BUILD_OPTIONS)))
dh_sphinxdoc
endif
override_dh_compress:
dh_compress -X.pdf
|