#!/usr/bin/make -f include /usr/share/dpkg/pkg-info.mk # Hardening export DEB_BUILD_MAINT_OPTIONS = hardening=+all DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk SOURCE = $(CURDIR) PKG = github.com/syncthing/syncthing #export DH_GOLANG_GO_GENERATE := 1 # Upstream expects a version in format vX.Y.Z, and without this will # not make a "clean release build" (Bug #1061296). A better solution # may be patch build.go script. At that bug, Simon Frei notes that # passing '-version lib/api/auto/gui.files.go cp $(SOURCE)/lib/upgrade/signingkey.pem _build/src/$(PKG)/lib/upgrade/ #cd _build/src/$(PKG) && \ # mkdir cmd/strelaypoolsrv/auto && \ # go run script/genassets.go cmd/strelaypoolsrv/gui > cmd/strelaypoolsrv/auto/gui.go # Now remove the vendor stuff, we don't really want to ship it in the -dev package. rm -rf _build/src/$(PKG)/gui/default/vendor ############### ## test data ## ############### # tip: `find . -type d -name testdata` # then put them here in alphabetical order cp -rv $(SOURCE)/lib/api/testdata _build/src/$(PKG)/lib/api/ cp -rv $(SOURCE)/lib/model/testdata _build/src/$(PKG)/lib/model/ cp -rv $(SOURCE)/lib/db/testdata _build/src/$(PKG)/lib/db/ cp -rv $(SOURCE)/lib/config/testdata _build/src/$(PKG)/lib/config/ # syncthing/test cp -rv $(SOURCE)/test/h1 _build/src/$(PKG)/test/ cp -rv $(SOURCE)/test/h2 _build/src/$(PKG)/test/ cp -rv $(SOURCE)/test/h3 _build/src/$(PKG)/test/ cp -rv $(SOURCE)/test/h4 _build/src/$(PKG)/test/ cp -rv $(SOURCE)/test/logs _build/src/$(PKG)/test/ mkdir -p _build/src/$(PKG)/lib/versioner/_external_test cp $(SOURCE)/lib/versioner/_external_test/external.sh _build/src/$(PKG)/lib/versioner/_external_test/external.sh # lintian: package-contains-vcs-control-file rm -f _build/src/$(PKG)/lib/db/testdata/.gitignore rm -f _build/src/$(PKG)/test/logs/.gitignore override_dh_auto_build: dh_auto_build -- -ldflags "-X github.com/syncthing/syncthing/lib/build.Version=$(ST_DEB_VERSION) \ -X github.com/syncthing/syncthing/lib/build.User=debian \ -X github.com/syncthing/syncthing/lib/build.Host=debian \ -X github.com/syncthing/syncthing/lib/build.Stamp=$(SOURCE_DATE_EPOCH)" \ -tags 'noupgrade purego' # Don't run tests on architectures that are not supported # by upstream. SKIP_TESTS := True ifneq (,$(filter $(DEB_HOST_ARCH_CPU),amd64 i386)) SKIP_TESTS := False endif TEST_OPTS = ifeq ($(DEB_HOST_ARCH_CPU),i386) TEST_OPTS += -short endif override_dh_auto_test: if [ "$(SKIP_TESTS)" = "True" ]; then \ echo "Skipping tests"; \ else \ dh_auto_test -- $(TEST_OPTS); \ fi override_dh_installsystemduser: # Don't enable user units by default. # See bug #1001147. dh_installsystemduser --no-enable