Name libhwy1t64
Description Efficient and performance-portable SIMD wrapper (runtime files)
Version 1.0.7-8.1build1
Package Base highway
Homepage https://github.com/google/highway
Maintainers ['Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>']
Contributors ['Mathieu Malaterre <malat@debian.org>']
Distro-repo https://git.launchpad.net/ubuntu/+source/highway/tree/?h=ubuntu/noble
Sources ['https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/../?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/15e63d61eb535f478bc861a2f90f724c41c8b74a.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/3b7fb88f3ac7f3006fbb4013907006e34e911823.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/40d20af1f898d8fb5793e670fb955b8aeef7399b.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/45eea15b5488f3e7a15c2c94ac77bd9e99703203.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/5d58d233fbcec0c6a39df8186a877329147324b3.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/725e0a6532b5580e2d1b31007f01931fa4acfc1d.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/fea3dba9cfec3a74ddcd8ecac3a5d4d8429191e4.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/i386.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/i386_standard.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/highway/plain/debian/patches/series?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/libhwy1t64/plain/debian/watch?h=ubuntu/noble']
Dependencies ['libc6', 'libgcc-s1', 'libstdc++6']
Optional-Dependencies []
Build-Dependencies ['dpkg-dev', 'cmake', 'debhelper', 'libgtest-dev', 'ninja-build']
Provides []
Builddate
Architecture amd64
Distro-Version noble
Licenses []
Hash c092b1ea155d81a5985073f867e1479c48c5c6efe4adc1bfcdde27e5d2b8b89d
#!/usr/bin/make -f
#export DH_VERBOSE=1

include /usr/share/dpkg/default.mk

export DEB_BUILD_MAINT_OPTIONS = hardening=+all optimize=+lto
export DPKG_GENSYMBOLS_CHECK_LEVEL = 4

%:
	dh $@ --buildsystem=cmake+ninja

# Let's pretend to know what we are doing:
DEB_CXXFLAGS_MAINT_APPEND += -DHWY_BROKEN_EMU128=0

ifneq (,$(filter $(DEB_HOST_ARCH), armel armhf))
  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728
  DEB_CXXFLAGS_MAINT_APPEND += -Wno-psabi
endif

ifneq (,$(filter $(DEB_HOST_ARCH), loong64))
  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106322
  DEB_CXXFLAGS_MAINT_APPEND += -fno-tree-vectorize
endif

ifeq ($(DEB_HOST_ARCH_CPU),i386)
  # https://github.com/google/highway/issues/1488
  DEB_CXXFLAGS_MAINT_APPEND += -fexcess-precision=standard
endif

ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),armhf))
  # https://github.com/google/highway/issues/1271
  CMAKE_EXTRA_FLAGS += -DHWY_CMAKE_ARM7:BOOL=ON
  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111231
  DEB_CXXFLAGS_MAINT_APPEND += -fno-tree-vectorize
endif

ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),riscv64))
  # https://github.com/google/highway/issues/1740
  CMAKE_EXTRA_FLAGS += -DHWY_CMAKE_RVV:BOOL=OFF
endif

include /usr/share/dpkg/buildtools.mk

export DEB_CXXFLAGS_MAINT_APPEND

# test suite rely on CMAKE_SKIP_RPATH=OFF
CMAKE_EXTRA_FLAGS += \
 -DCMAKE_SKIP_RPATH:BOOL=OFF \
 -DBUILD_SHARED_LIBS:BOOL=ON \
 -DHWY_WARNINGS_ARE_ERRORS:BOOL=ON \
 -DHWY_SYSTEM_GTEST:BOOL=ON

ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
CMAKE_EXTRA_FLAGS += -DBUILD_TESTING=OFF
endif

override_dh_auto_configure-arch:
	dh_auto_configure -- $(CMAKE_EXTRA_FLAGS)

override_dh_auto_install-arch:
ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),armhf))
	sed -i -e 's/HWY_CMAKE_ARM7:BOOL=ON/HWY_CMAKE_ARM7:BOOL=OFF/' obj-*/CMakeCache.txt
endif
	dh_auto_install

ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
# run default example to check compilation ok:
override_dh_install-arch:
ifeq (,$(filter $(DEB_BUILD_ARCH),hurd-i386))
	obj-*/examples/hwy_benchmark
else
	echo "CPU 'QEMU Virtual CPU version 2.5+' does not support RDTSCP, skipping benchmark."
endif
	dh_install
endif

override_dh_clean-indep:
	dh_clean debian_docs/

override_dh_auto_configure-indep:
override_dh_auto_build-indep:
	# most docs are ok as-is
	cp -a g3doc debian_docs
	# let's shrink a bit this one:
	gs  -q -dNOPAUSE -dBATCH -dSAFER \
		-sDEVICE=pdfwrite \
		-dCompatibilityLevel=1.4 \
		-dPDFSETTINGS=/screen \
		-dEmbedAllFonts=true \
		-dSubsetFonts=true \
		-dColorImageDownsampleType=/Bicubic \
		-dColorImageResolution=72 \
		-dGrayImageDownsampleType=/Bicubic \
		-dGrayImageResolution=72 \
		-dMonoImageDownsampleType=/Bicubic \
		-dMonoImageResolution=72 \
		-sOutputFile=debian_docs/highway_intro.pdf ./g3doc/highway_intro.pdf

override_dh_auto_test-indep:
override_dh_auto_install-indep:
override_dh_compress-indep:
	# do not compress .pdf/.md files for documentation
	dh_compress -X.md -X.pdf