#!/usr/bin/make -f include /usr/share/dpkg/default.mk ifeq (ppc64el,$(DEB_HOST_ARCH)) DEB_CFLAGS_MAINT_APPEND+=-mcpu=power8 DEB_CXXFLAGS_MAINT_APPEND+=-mcpu=power8 endif ifneq (,$(filter $(DEB_HOST_ARCH),armel mipsel m68k powerpc)) DEB_LDFLAGS_MAINT_APPEND+=-latomic endif export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_CFLAGS_MAINT_APPEND+=-DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -I/usr/include/simde export DEB_CXXFLAGS_MAINT_APPEND+=-DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -I/usr/include/simde export DEB_LDFLAGS_MAINT_APPEND+=-ldeflate DIRECTORY=build_dynamic/ prefix=$(CURDIR)/debian/$(DEB_SOURCE)/usr libexecdir=$(prefix)/lib/$(DEB_SOURCE) %: dh $@ --sourcedirectory=$(DIRECTORY) override_dh_auto_clean: dh_auto_clean rm -f plink2.1 rm -f pgen_compress.1 override_dh_installman: dh_installman debian/plink2.1 dh_installman pgen_compress.1 override_dh_installchangelogs: dh_installchangelogs debian/upstream.docs/upstream.changelog override_dh_gencontrol: dh_gencontrol -- -Vsimde:Built-Using="$(shell dpkg-query -f '$${source:Package} (= $${source:Version}), ' -W "libsimde-dev")" override_dh_auto_build-arch: ifeq (amd64,$(DEB_HOST_ARCH)) mkdir -p $(prefix) mkdir -p $(libexecdir) export CXXFLAGS="$(CXXFLAGS) -mavx2 -mbmi -mbmi2 -mlzcnt" && export CFLAGS="$(CFLAGS) -mavx2 -mbmi -mbmi2 -mlzcnt" && \ make clean ; \ dh_auto_build -- SFX=-avx2 for SIMD in avx sse4.1 ssse3 sse3 sse2 ; do \ export CXXFLAGS="$(CXXFLAGS) -m$${SIMD}" && export CFLAGS="$(CFLAGS) -m$${SIMD}" && \ make clean ; \ dh_auto_build -- SFX=-$${SIMD} ; \ done ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES))) # help2man 1.47.13 is not able anymore do generate a clean manpage for plink1.9 # which lead to several lintian warnings # help2man --no-discard-stderr --name="whole genome SNP analysis" $(DIRECTORY)/plink2 > plink2.1 help2man --no-discard-stderr --name="whole genome SNP analysis" $(DIRECTORY)/pgen_compress-sse2 > pgen_compress.1 endif else ifeq (i386,$(DEB_HOST_ARCH)) mkdir -p $(prefix) mkdir -p $(libexecdir) for SIMD in ssse3 sse3 sse2 sse mmx; do \ export CXXFLAGS="$(CXXFLAGS) -m$${SIMD}" && export CFLAGS="$(CFLAGS) -m$${SIMD}" && \ make clean ; \ dh_auto_build -- SFX=-$${SIMD} ; \ done dh_auto_build -- SFX=-plain ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES))) # help2man 1.47.13 is not able anymore do generate a clean manpage for plink1.9 # which lead to several lintian warnings # help2man --no-discard-stderr --name="whole genome SNP analysis" $(DIRECTORY)/plink2 > plink2.1 help2man --no-discard-stderr --name="whole genome SNP analysis" $(DIRECTORY)/pgen_compress-plain > pgen_compress.1 endif else dh_auto_build ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES))) # help2man 1.47.13 is not able anymore do generate a clean manpage for plink1.9 # which lead to several lintian warnings # help2man --no-discard-stderr --name="whole genome SNP analysis" $(DIRECTORY)/plink2 > plink2.1 help2man --no-discard-stderr --name="whole genome SNP analysis" $(DIRECTORY)/pgen_compress > pgen_compress.1 endif endif override_dh_auto_install-arch: ifeq (amd64,$(DEB_HOST_ARCH)) dh_install debian/bin/simd-dispatch /usr/lib/$(DEB_SOURCE)/ for SIMD in avx2 avx sse4.1 ssse3 sse3 sse2 ; do \ dh_install build_dynamic/plink2-$${SIMD} usr/lib/$(DEB_SOURCE)/ ; \ dh_install build_dynamic/pgen_compress-$${SIMD} usr/lib/$(DEB_SOURCE)/ ; \ done mkdir -p $(prefix)/bin cd $(prefix)/bin \ && for prog in plink2 pgen_compress ; do \ ln -s ../lib/$(DEB_SOURCE)/simd-dispatch $${prog} ; done else ifeq (i386,$(DEB_HOST_ARCH)) dh_install debian/bin/simd-dispatch /usr/lib/$(DEB_SOURCE)/ for SIMD in ssse3 sse3 sse2 plain ; do \ dh_install build_dynamic/plink2-$${SIMD} usr/lib/$(DEB_SOURCE)/ ; \ dh_install build_dynamic/pgen_compress-$${SIMD} usr/lib/$(DEB_SOURCE)/ ; \ done mkdir -p $(prefix)/bin cd $(prefix)/bin \ && for prog in plink2 pgen_compress ; do \ ln -s ../lib/$(DEB_SOURCE)/simd-dispatch $${prog} ; done else dh_install build_dynamic/plink2 usr/bin/ dh_install build_dynamic/pgen_compress usr/bin/ endif override_dh_auto_install-indep: