#!/usr/bin/make -f include /usr/share/dpkg/pkg-info.mk export DH_VERBOSE = 1 # see FEATURE AREAS in dpkg-buildflags(1) #export DEB_BUILD_MAINT_OPTIONS = hardening=+all # see ENVIRONMENT in dpkg-buildflags(1) # package maintainers to append CFLAGS #export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic # package maintainers to append LDFLAGS #export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed VERSION = $(DEB_VERSION_UPSTREAM) export PATH := $(CURDIR)/binforpython:$(PATH) BUILD_SCRIPT_ARGS = ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) BUILD_SCRIPT_ARGS += -j $(NUMJOBS) endif %: dh $@ override_dh_auto_configure: mkdir -p $(CURDIR)/binforpython if test ! -f $(CURDIR)/binforpython/python; then \ ln -s /usr/bin/python3 $(CURDIR)/binforpython/python; \ fi override_dh_auto_build: swift/utils/build-script $(BUILD_SCRIPT_ARGS) --preset=buildbot_linux,no_test install_destdir=$(CURDIR) installable_package=$(CURDIR)/swiftlang_$(VERSION)-debian.tar.gz override_dh_auto_install: mkdir -p lib/swift cp -r usr/* lib/swift mkdir -p bin ln -fs lib/swift/bin/swift bin/swift ln -fs lib/swift/bin/swiftc bin/swiftc ln -fs lib/swift/bin/sourcekit-lsp bin/sourcekit-lsp execute_after_dh_fixperms: if test -d debian/swiftlang; then \ chmod -f -x debian/swiftlang/usr/libexec/swift/bin/sdk-module-lists/create-module-lists.sh; \ chmod -f -x debian/swiftlang/usr/libexec/swift/bin/sdk-module-lists/*.txt; \ find debian/swiftlang/usr/libexec/swift/lib -type f -exec chmod -f 0644 -- {} +; \ find debian/swiftlang/usr/libexec/swift/share -type f -exec chmod -f 0644 -- {} +; \ fi if test -d debian/libswiftlang; then \ find debian/libswiftlang/usr/libexec/swift/lib -type f -exec chmod -f 0644 -- {} +; \ fi if test -d debian/swiftlang-dev; then \ find debian/swiftlang-dev/usr/libexec/swift/include -type f -exec chmod 0644 -f -- {} +; \ find debian/swiftlang-dev/usr/libexec/swift/local -type f -exec chmod 0644 -f -- {} +; \ fi if test -d debian/swiftlang-doc; then \ find debian/swiftlang-doc/usr/libexec/swift/share -type f -exec chmod 0644 -f -- {} +; \ fi override_dh_dwz: # These binaries have "Unknown" debugging sections which cause dwz to return 1 dh_dwz --exclude=lldb-server --exclude=sourcekit-lsp --exclude=swift-build --exclude=swift-build-sdk-interfaces --exclude=swift-driver --exclude=swift-frontend --exclude=swift-help --exclude=swift-package --exclude=swift-package-collection --exclude=swift-run --exclude=swift-test --exclude=liblldb.so --exclude=libsourcekitdInProc.so --exclude=lib_InternalSwiftScan.so --exclude=lib_InternalSwiftSyntaxParser.so --exclude=libPackageDescription.so --exclude=libPackagePlugin.so --exclude=docc # Running strip on repl_swift breaks the Swift REPL override_dh_strip: dh_strip --exclude=swift/bin/repl_swift override_dh_shlibdeps: dh_shlibdeps -ldebian/libswiftlang/usr/libexec/swift/lib/swift/linux/ override_dh_auto_clean: rm -rf $(CURDIR)/binforpython rm -rf debian/libswiftlang rm -rf debian/swiftlang rm -rf debian/swiftlang-dev rm -rf debian/swiftlang-doc rm -rf build rm -rf usr rm -rf lib rm -rf bin rm -rf man rm -f swiftlang_$(VERSION)-debian.tar.gz rm -f swift-corelibs-libdispatch/dispatch/module.mod rm -f swift-corelibs-libdispatch/dispatch/module.modulemap rm -f swift-corelibs-libdispatch/private/module.modulemap rm -f swift-driver/Package.resolved rm -f swift-docc/Package.resolved rm -rf swift-integration-tests/test-swift-docc/Output py3clean . debconf-updatepo