| #!/usr/bin/make -f | 
 | export DH_VERBOSE = 1 | 
 |  | 
 | # Use DEB_BUILD_OPTIONS's parallel=n option (see Policy 4.9.1) | 
 | ifneq (,$(findstring parallel,$(DEB_BUILD_OPTIONS))) | 
 | PARALLEL_JOBS := $(shell echo $(DEB_BUILD_OPTIONS) | \ | 
 | 	sed -e 's/.*parallel=\([0-9]\+\).*/\1/') | 
 | else | 
 | PARALLEL_JOBS := 1 | 
 | endif | 
 |  | 
 | ifeq (amd64,$(DEB_HOST_ARCH_CPU)) | 
 | BUILD_TYPE += ReleaseX64 | 
 | BUILD_FLAGS += --arch=x64 | 
 | LIBS_DIR := $(CURDIR)/dart/build/linux/debian_stretch_amd64-sysroot/lib/x86_64-linux-gnu | 
 | else | 
 | ifeq (i386,$(DEB_HOST_ARCH_CPU)) | 
 | BUILD_TYPE += ReleaseIA32 | 
 | BUILD_FLAGS += --arch=ia32 | 
 | LIBS_DIR := $(CURDIR)/dart/build/linux/debian_stretch_i386-sysroot/lib/i386-linux-gnu | 
 | else | 
 | ifeq (arm,$(DEB_HOST_ARCH_CPU)) | 
 | ifeq ($(DEB_BUILD_ARCH_CPU),$(DEB_HOST_ARCH_CPU)) | 
 | BUILD_TYPE += ReleaseARM | 
 | else | 
 | BUILD_TYPE += ReleaseXARM | 
 | endif | 
 | BUILD_FLAGS += --arch=arm | 
 | LIBS_DIR := $(CURDIR)/dart/build/linux/debian_stretch_arm-sysroot/lib/arm-linux-gnueabihf | 
 | else | 
 | ifeq (arm64,$(DEB_HOST_ARCH_CPU)) | 
 | ifeq ($(DEB_BUILD_ARCH_CPU),$(DEB_HOST_ARCH_CPU)) | 
 | BUILD_TYPE += ReleaseARM64 | 
 | else | 
 | BUILD_TYPE += ReleaseXARM64 | 
 | endif | 
 | BUILD_FLAGS += --arch=arm64 | 
 | LIBS_DIR := $(CURDIR)/dart/build/linux/debian_stretch_arm64-sysroot/lib/aarch64-linux-gnu | 
 | else | 
 | ifeq (riscv64,$(DEB_HOST_ARCH_CPU)) | 
 | ifeq ($(DEB_BUILD_ARCH_CPU),$(DEB_HOST_ARCH_CPU)) | 
 | BUILD_TYPE += ReleaseRISCV64 | 
 | else | 
 | BUILD_TYPE += ReleaseXRISCV64 | 
 | endif | 
 | BUILD_FLAGS += --arch=riscv64 --no-clang --use-mallinfo2 | 
 | LIBS_DIR := /usr/riscv64-linux-gnu/lib | 
 | else | 
 | $(error unsupported target arch '$(DEB_HOST_ARCH_CPU)') | 
 | endif | 
 | endif | 
 | endif | 
 | endif | 
 | endif | 
 |  | 
 | # Verbose? | 
 | ifeq (1,$(DH_VERBOSE)) | 
 | BUILD_FLAGS += --verbose | 
 | endif | 
 |  | 
 | %: | 
 | 	dh $@ | 
 |  | 
 | override_dh_auto_clean: | 
 | 	echo $(DEB_BUILD_OPTIONS) | 
 | 	rm -fr dart/out dart/Makefile | 
 | 	find . -name *.tmp -execdir rm -f {} \; | 
 | 	find . -name *.pyc -execdir rm -f {} \; | 
 | 	find . -name *.mk -execdir rm -f {} \; | 
 | 	find . -name *.Makefile -execdir rm -f {} \; | 
 |  | 
 | override_dh_auto_configure: | 
 | 	python3 dart/tools/generate_buildfiles.py | 
 |  | 
 | override_dh_auto_build: | 
 | 	cd dart; \ | 
 | 	python3 tools/build.py --no-goma --mode release \ | 
 | 	  $(BUILD_FLAGS) $(TOOLCHAIN) create_sdk; \ | 
 | 	cd .. | 
 |  | 
 | # Building the Dart SDK will already strip all binaries. | 
 | override_dh_strip: | 
 |  | 
 | # This override allows us to ignore spurious missing library errors when | 
 | # cross-compiling. | 
 | override_dh_shlibdeps: | 
 | 	dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info -l $(LIBS_DIR) | 
 |  | 
 | override_dh_auto_install: | 
 | 	mkdir -p debian/tmp/out | 
 | 	cp -R dart/out/$(BUILD_TYPE)/dart-sdk debian/tmp/out | 
 | 	mv debian/tmp/out/dart-sdk debian/tmp/out/dart | 
 | 	dh_install | 
 | 	dh_link |