diff options
| author | Michael Vogt <mvo@ubuntu.com> | 2017-01-25 11:45:34 +0100 |
|---|---|---|
| committer | Michael Vogt <mvo@ubuntu.com> | 2017-01-25 11:45:34 +0100 |
| commit | e96096b3f747f156c35bfa9b26ce465e53be9ce3 (patch) | |
| tree | 96c13f85408af2618b9a2a145c0dc41b74ebdf9d /debian/rules | |
| parent | 9d93518f1c17e624c7c0d47b1bc7418d74cf0c24 (diff) | |
move packaging to packaging/ subdir
Diffstat (limited to 'debian/rules')
| -rwxr-xr-x | debian/rules | 217 |
1 files changed, 0 insertions, 217 deletions
diff --git a/debian/rules b/debian/rules deleted file mode 100755 index aacfa59441..0000000000 --- a/debian/rules +++ /dev/null @@ -1,217 +0,0 @@ -#!/usr/bin/make -f -# -*- makefile -*- - -#export DH_VERBOSE=1 -export DH_OPTIONS -export DH_GOPKG := github.com/snapcore/snapd -#export DEB_BUILD_OPTIONS=nocheck -export DH_GOLANG_EXCLUDES=tests -export DH_GOLANG_GO_GENERATE=1 - -export PATH:=${PATH}:${CURDIR} -# make sure that correct go version is found on trusty -export PATH:=/usr/lib/go-1.6/bin:${PATH} - -include /etc/os-release - -SYSTEMD_UNITS_DESTDIR= -ifeq (${VERSION_ID},"14.04") - # We are relying on a deputy systemd setup for trusty, - # in which systemd does not run as PID 1. To solve the - # problem of services shipping systemd units and upstart jobs - # being started twice, we altered systemd on trusty to ignore - # /lib/systemd/system and instead consider only selected units from - # /lib/systemd/upstart. - SYSTEMD_UNITS_DESTDIR="lib/systemd/upstart/" - # make sure that trusty's golang-1.6 is picked up correctly. - export PATH:=/usr/lib/go-1.6/bin:${PATH} -else - SYSTEMD_UNITS_DESTDIR="lib/systemd/system/" -endif - -# The go tool does not fully support vendoring with gccgo, but we can -# work around that by constructing the appropriate -I flag by hand. -GCCGO := $(shell go tool dist env > /dev/null 2>&1 && echo no || echo yes) - -BUILDFLAGS:=-buildmode=pie -pkgdir=$(CURDIR)/_build/std -GCCGOFLAGS= -ifeq ($(GCCGO),yes) -GOARCH := $(shell go env GOARCH) -GOOS := $(shell go env GOOS) -BUILDFLAGS:= -GCCGOFLAGS=-gccgoflags="-I $(CURDIR)/_build/pkg/gccgo_$(GOOS)_$(GOARCH)/$(DH_GOPKG)/vendor" -export DH_GOLANG_GO_GENERATE=0 -endif - -# check if we need to include the testkeys in the binary -TAGS= -ifneq (,$(filter testkeys,$(DEB_BUILD_OPTIONS))) - TAGS=-tags withtestkeys -endif - -# export DEB_BUILD_MAINT_OPTIONS = hardening=+all -# DPKG_EXPORT_BUILDFLAGS = 1 -# include /usr/share/dpkg/buildflags.mk - -# Currently, we enable confinement for Ubuntu only, not for derivatives, -# because derivatives may have different kernels that don't support all the -# required confinement features and we don't to mislead anyone about the -# security of the system. Discuss a proper approach to this for downstreams -# if and when they approach us -ifeq ($(shell dpkg-vendor --query Vendor),Ubuntu) - VENDOR_ARGS=--enable-nvidia-ubuntu -else - VENDOR_ARGS=--disable-apparmor -endif - -%: - dh $@ --buildsystem=golang --with=golang --fail-missing --with systemd --builddirectory=_build - -override_dh_fixperms: - dh_fixperms -Xusr/lib/snapd/snap-confine - -override_dh_installdeb: - dh_apparmor --profile-name=usr.lib.snapd.snap-confine -psnap-confine - dh_installdeb - -override_dh_clean: -ifneq (,$(TEST_GITHUB_AUTOPKGTEST)) - # this will be set by the GITHUB webhook to trigger a autopkgtest - # we only need to run "govendor sync" here and then its ready - (export GOPATH="/tmp/go"; \ - mkdir -p $$GOPATH/src/github.com/snapcore/; \ - cp -ar . $$GOPATH/src/github.com/snapcore/snapd; \ - go get -u github.com/kardianos/govendor; \ - (cd $$GOPATH/src/github.com/snapcore/snapd ; $$GOPATH/bin/govendor sync); \ - cp -ar $$GOPATH/src/github.com/snapcore/snapd/vendor/ .; \ - ) -endif - dh_clean - # XXX: hacky - $(MAKE) -C cmd distclean || true - -override_dh_auto_build: - # usually done via `go generate` but that is not supported on powerpc - ./mkversion.sh - # Build golang bits - mkdir -p _build/src/$(DH_GOPKG)/cmd/snap/test-data - cp -a cmd/snap/test-data/*.gpg _build/src/$(DH_GOPKG)/cmd/snap/test-data/ - dh_auto_build -- $(BUILDFLAGS) $(TAGS) $(GCCGOFLAGS) - # Build C bits, sadly manually - cd cmd && ( autoreconf -i -f ) - cd cmd && ( ./configure --prefix=/usr --libexecdir=/usr/lib/snapd $(VENDOR_ARGS)) - $(MAKE) -C cmd all - -override_dh_auto_test: - dh_auto_test -- $(GCCGOFLAGS) -# a tested default (production) build should have no test keys -ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) - # check that only the main trusted account-key is included - [ $$(strings _build/bin/snapd|grep -c -E "public-key-sha3-384: [a-zA-Z0-9_-]{64}") -eq 1 ] - strings _build/bin/snapd|grep -c "^public-key-sha3-384: -CvQKAwRQ5h3Ffn10FILJoEZUXOv6km9FwA80-Rcj-f-6jadQ89VRswHNiEB9Lxk$$" -endif -ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) - # run the snap-confine tests - $(MAKE) -C cmd check -endif - -override_dh_systemd_enable: - # enable auto-import - dh_systemd_enable \ - -psnapd \ - data/systemd/snapd.autoimport.service - # we want the auto-update timer enabled by default - dh_systemd_enable \ - -psnapd \ - data/systemd/snapd.refresh.timer - # but the auto-update service disabled - dh_systemd_enable \ - --no-enable \ - -psnapd \ - data/systemd/snapd.refresh.service - # enable snapd - dh_systemd_enable \ - -psnapd \ - data/systemd/snapd.socket - dh_systemd_enable \ - -psnapd \ - data/systemd/snapd.service - dh_systemd_enable \ - -psnapd \ - data/systemd/snapd.system-shutdown.service - -override_dh_systemd_start: - # we want to start the auto-update timer - dh_systemd_start \ - -psnapd \ - data/systemd/snapd.refresh.timer - # but not start the service - dh_systemd_start \ - --no-start \ - -psnapd \ - data/systemd/snapd.refresh.service - # start snapd - dh_systemd_start \ - -psnapd \ - data/systemd/snapd.socket - dh_systemd_start \ - -psnapd \ - data/systemd/snapd.service - # start autoimport - dh_systemd_start \ - -psnapd \ - data/systemd/snapd.autoimport.service - -override_dh_install: - # we do not need this in the package, its just needed during build - rm -rf ${CURDIR}/debian/tmp/usr/bin/xgettext-go - # uboot-go is not shippable - rm -f ${CURDIR}/debian/tmp/usr/bin/uboot-go - # toolbelt is not shippable - rm -f ${CURDIR}/debian/tmp/usr/bin/toolbelt - # we do not like /usr/bin/snappy anymore - rm -f ${CURDIR}/debian/tmp/usr/bin/snappy - # install dev package files - mkdir -p debian/golang-github-snapcore-snapd-dev/usr/share - rm -rf debian/tmp/usr/share/gocode/src/github.com/snapcore/snapd/cmd/snap-confine - cp -R debian/tmp/usr/share/gocode debian/golang-github-snapcore-snapd-dev/usr/share - # install udev stuff, must be installed before 80-udisks - install debian/snapd.autoimport.udev -D debian/snapd/lib/udev/rules.d/66-snapd-autoimport.rules - - # install bash completion files - install --mode=0644 data/completion/snap -D debian/snapd/usr/share/bash-completion/completions/snap - # i18n stuff - mkdir -p debian/snapd/usr/share - if [ -d share/locale ]; then \ - cp -R share/locale debian/snapd/usr/share; \ - fi - # etc/profile.d contains the PATH extension for snap packages - mkdir -p debian/snapd/etc - cp -R etc/profile.d debian/snapd/etc - # etc/X11/Xsession.d will add to XDG_DATA_DIRS so that we have .desktop support - mkdir -p debian/snapd/etc - cp -R etc/X11 debian/snapd/etc - # we conditionally install snapd's systemd units - mkdir -p debian/snapd/$(SYSTEMD_UNITS_DESTDIR) - install --mode=0644 data/systemd/snapd.refresh.timer debian/snapd/$(SYSTEMD_UNITS_DESTDIR) - install --mode=0644 data/systemd/snapd.refresh.service debian/snapd/$(SYSTEMD_UNITS_DESTDIR) - install --mode=0644 data/systemd/snapd.autoimport.service debian/snapd/$(SYSTEMD_UNITS_DESTDIR) - install --mode=0644 data/systemd/*.socket debian/snapd/$(SYSTEMD_UNITS_DESTDIR) - install --mode=0644 data/systemd/snapd.service debian/snapd/$(SYSTEMD_UNITS_DESTDIR) - install --mode=0644 data/systemd/snapd.system-shutdown.service debian/snapd/$(SYSTEMD_UNITS_DESTDIR) -ifeq ($(RELEASE),trusty) - dh_link debian/snapd/$(SYSTEMD_UNITS_DESTDIR)/snapd.service debian/snapd/$(SYSTEMD_UNITS_DESTDIR)/multi-user.target.wants/snapd.service - dh_link debian/snapd/$(SYSTEMD_UNITS_DESTDIR)/snapd.autoimport.service debian/snapd/$(SYSTEMD_UNITS_DESTDIR)/multi-user.target.wants/snapd.autoimport.service -endif - $(MAKE) -C cmd install DESTDIR=$(CURDIR)/debian/tmp - dh_install - -override_dh_auto_install: snap.8 - dh_auto_install -O--buildsystem=golang - -snap.8: - $(CURDIR)/_build/bin/snap help --man > $@ - -override_dh_auto_clean: - dh_auto_clean -O--buildsystem=golang - rm -vf snap.8 |
