#!/usr/bin/make -f export CXX=hipcc export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_CXXFLAGS_MAINT_PREPEND = -gz export DEB_LDFLAGS_MAINT_PREPEND = -v export VERBOSE=1 #export AMD_LOG_LEVEL=4 # filter incompatible options from affecting device code CXXFLAGS := $(subst -fstack-protector-strong,-Xarch_host -fstack-protector-strong,$(CXXFLAGS)) CXXFLAGS := $(subst -fcf-protection,-Xarch_host -fcf-protection,$(CXXFLAGS)) CMAKE_FLAGS = \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_SKIP_RPATH=ON \ -DAMDGPU_TARGETS="gfx803;gfx900;gfx906;gfx908;gfx90a;gfx1010;gfx1030;gfx1100;gfx1101;gfx1102" \ -DROCM_SYMLINK_LIBS=OFF \ -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF ifeq (,$(filter nocheck,$(DEB_BUILD_PROFILES))) CMAKE_FLAGS += -DBUILD_TESTS=ON endif %: dh $@ -Scmake override_dh_auto_configure-arch: dh_auto_configure -- $(CMAKE_FLAGS) override_dh_auto_test-arch: ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) set -e \ ; if [ -r /dev/kfd ] \ ; then \ LD_LIBRARY_PATH=obj-$(DEB_HOST_MULTIARCH) \ RCCL_ENABLE_SIGNALHANDLER=1 \ NCCL_DEBUG=INFO \ HSA_FORCE_FINE_GRAIN_PCIE=1 \ obj-$(DEB_HOST_MULTIARCH)/test/UnitTests --gtest_filter="-*ManagedMem" \ ; else echo "W: /dev/kfd unreadable: no available AMD GPU." \ ; echo "W: tests skipped." \ ; fi endif override_dh_auto_configure-indep: : override_dh_auto_build-indep: ifeq (,$(filter nodoc,$(DEB_BUILD_OPTIONS))) cd docs; cp ../src/nccl.h.in nccl.h; doxygen sphinx-build -b html docs/source html endif override_dh_auto_test-indep: : override_dh_auto_install-indep: : # dwz doesn't fully support DWARF-5 yet, see #1016936 override_dh_dwz: :