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
|
#!/usr/bin/make -f
#export DH_VERBOSE = 1
# see FEATURE AREAS in dpkg-buildflags(1)
include /usr/share/dpkg/architecture.mk
include /usr/share/dpkg/pkg-info.mk
export DEB_VERSION_UPSTREAM
DEB_REQUESTED_PACKAGES := $(shell dh_listpackages)
when-in-build-profile = $(patsubst 0,$(3),$(patsubst 1,$(2),$(patsubst 01,1,0$(patsubst $(1),1,$(filter $(1),$(DEB_BUILD_PROFILES))))))
when-not-in-build-profile = $(patsubst 0,$(3),$(patsubst 1,$(2),$(patsubst 11,0,1$(patsubst $(1),1,$(filter $(1),$(DEB_BUILD_PROFILES))))))
when-building-package = $(patsubst 0,$(3),$(patsubst 1,$(2),$(patsubst 01,1,0$(patsubst $(1),1,$(filter $(1),$(DEB_REQUESTED_PACKAGES))))))
when-not-building-package = $(patsubst 0,$(3),$(patsubst 1,$(2),$(patsubst 11,0,1$(patsubst $(1),1,$(filter $(1),$(DEB_REQUESTED_PACKAGES))))))
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
ifeq (x,$(call when-building-package,liblime-java,x))
export JAVA_HOME=/usr/lib/jvm/default-java
export CLASSPATH=/usr/share/java/csv.jar:/usr/share/java/debug-disable.jar:/usr/share/java/itext.jar
dh_modules ?= --with
dh_modules += javahelper
endif
%:
dh $@ $(dh_modules)
# I suspect this might be necessary to minimize the ABI difference
# when disabling JNI (otherwise C++11 is used which should generate
# different symbols thus throwing off dh_gensymbols)
options += -DCMAKE_CXX_STANDARD=14
options += -DDEB_VERSION_UPSTREAM=$${DEB_VERSION_UPSTREAM%+dfsg*}
options += -DCMAKE_SKIP_RPATH=ON # with debhelper 14 this will be the default
options += -DENABLE_STATIC=NO
options += -DENABLE_UNIT_TESTS=NO # would need: libbellesip-dev
features += -DENABLE_SHARED=$(call when-building-package,liblime0,YES,NO)
features += -DENABLE_DOC=$(call when-building-package,liblime-doc,YES,NO) # doxygen
features += -DENABLE_CURVE448=YES # libdecaf-dev
features += -DENABLE_CURVE25519=YES # libbctoolbox-dev
features += -DENABLE_JNI=YES
features += -DENABLE_C_INTERFACE=YES
features += -DENABLE_LIMEJAR=$(call when-building-package,liblime-java,YES,NO) # default-jdk, javahelper
override_dh_auto_configure:
dh_auto_configure -- \
${options} \
${features}
override_dh_auto_build-arch:
dh_auto_build -- lime
mkdir -p obj-$(DEB_HOST_GNU_TYPE)/doc/html
export CURDIR
override_dh_auto_build-indep:
dh_auto_build -- \
$(call when-in-build-profile,nojava,,Lime) \
$(call when-in-build-profile,nodoc,,doc)
# Doxygen puts the build path into some files with AFAIK no Off knob.
# Edit it out manually, but sometimes $CURDIR contains RE-metacharacters,
# so escape those first.
# from tests.reproducible-builds.org
#export CURDIR = /build/2/lime-5.0.37+dfsg/2nd
#all:
ifeq (x,$(call when-building-package,liblime-doc,x))
find obj-$(DEB_HOST_GNU_TYPE)/doc/html -type f -print0 | xargs -0 \
sed -z -i -E -e "s@$$(perl -MRegexp::Assemble -e 'print substr(Regexp::Assemble->new->add(quotemeta($$ENV{CURDIR})), 4, -1)')/@@g"
endif
|