[Pkg-golang-commits] [golang] 05/07: automatically make golang-X.Y debhelper files based on source package version

Michael Hudson-Doyle mwhudson-guest at moszumanska.debian.org
Wed Apr 13 23:01:09 UTC 2016


This is an automated email from the git hooks/post-receive script.

mwhudson-guest pushed a commit to branch debian-sid-coinst
in repository golang.

commit 5757ff695d933a1ade0e1f997f37bd727f8d67bb
Author: Michael Hudson-Doyle <michael.hudson at canonical.com>
Date:   Mon Mar 7 15:47:24 2016 +1300

    automatically make golang-X.Y debhelper files based on source package version
    
    this will not actually build because debian/control still defines golang-go etc
---
 debian/golang-X.Y-doc.dirs                         |  1 +
 debian/golang-X.Y-doc.install                      |  2 ++
 debian/golang-X.Y-doc.links                        |  2 ++
 ...-overrides => golang-X.Y-doc.lintian-overrides} |  4 ++--
 debian/golang-X.Y-go.dirs                          |  2 ++
 debian/golang-X.Y-go.install                       |  7 +++++++
 debian/golang-X.Y-go.links                         |  3 +++
 debian/golang-X.Y-go.lintian-overrides             |  2 ++
 debian/golang-X.Y-go.postinst                      | 13 ++++++++++++
 debian/golang-X.Y-src.install                      |  2 ++
 debian/golang-X.Y-src.lintian-overrides            |  4 ++++
 debian/golang-doc.dirs                             |  1 -
 debian/golang-doc.install                          |  2 --
 debian/golang-doc.links                            |  2 --
 debian/golang-go.dirs                              |  2 --
 debian/golang-go.install                           |  7 -------
 debian/golang-go.links                             |  3 ---
 debian/golang-go.lintian-overrides                 |  2 --
 debian/golang-go.postinst                          | 13 ------------
 debian/golang-src.install                          |  2 --
 debian/golang-src.lintian-overrides                |  4 ----
 debian/rules                                       | 24 ++++++++++++++++------
 22 files changed, 58 insertions(+), 46 deletions(-)

diff --git a/debian/golang-X.Y-doc.dirs b/debian/golang-X.Y-doc.dirs
new file mode 100644
index 0000000..8c724f4
--- /dev/null
+++ b/debian/golang-X.Y-doc.dirs
@@ -0,0 +1 @@
+usr/share/doc/golang-X.Y-doc/html
diff --git a/debian/golang-X.Y-doc.install b/debian/golang-X.Y-doc.install
new file mode 100644
index 0000000..5fa12e2
--- /dev/null
+++ b/debian/golang-X.Y-doc.install
@@ -0,0 +1,2 @@
+doc/* /usr/share/doc/golang-X.Y-doc/html/
+favicon.ico /usr/share/doc/golang-X.Y-doc
diff --git a/debian/golang-X.Y-doc.links b/debian/golang-X.Y-doc.links
new file mode 100644
index 0000000..1215c30
--- /dev/null
+++ b/debian/golang-X.Y-doc.links
@@ -0,0 +1,2 @@
+usr/share/doc/golang-X.Y-doc/favicon.ico /usr/lib/go-X.Y/favicon.ico
+usr/share/doc/golang-X.Y-doc/html /usr/lib/go-X.Y/doc
diff --git a/debian/golang-doc.lintian-overrides b/debian/golang-X.Y-doc.lintian-overrides
similarity index 53%
rename from debian/golang-doc.lintian-overrides
rename to debian/golang-X.Y-doc.lintian-overrides
index 1d1f737..f4aa785 100644
--- a/debian/golang-doc.lintian-overrides
+++ b/debian/golang-X.Y-doc.lintian-overrides
@@ -1,5 +1,5 @@
-# While golang-doc ships HTML files, they are not intended to be viewed
+# While golang-X.Y-doc ships HTML files, they are not intended to be viewed
 # directly in a browser or other HTML-capable tool. Instead, they have to be
 # served by using e.g. “godoc -http=:6060”, see also
 # http://bugs.debian.org/702642
-golang-doc: possible-documentation-but-no-doc-base-registration
+golang-X.Y-doc: possible-documentation-but-no-doc-base-registration
diff --git a/debian/golang-X.Y-go.dirs b/debian/golang-X.Y-go.dirs
new file mode 100644
index 0000000..979785e
--- /dev/null
+++ b/debian/golang-X.Y-go.dirs
@@ -0,0 +1,2 @@
+usr/lib/go-X.Y
+usr/share/go-X.Y/src/
diff --git a/debian/golang-X.Y-go.install b/debian/golang-X.Y-go.install
new file mode 100644
index 0000000..4a6b6a6
--- /dev/null
+++ b/debian/golang-X.Y-go.install
@@ -0,0 +1,7 @@
+VERSION /usr/lib/go-X.Y/
+bin/go /usr/lib/go-X.Y/bin/
+bin/gofmt /usr/lib/go-X.Y/bin/
+pkg/*_* /usr/lib/go-X.Y/pkg/
+pkg/include /usr/share/go-X.Y/pkg/
+pkg/obj /usr/lib/go-X.Y/pkg/
+pkg/tool /usr/lib/go-X.Y/pkg/
diff --git a/debian/golang-X.Y-go.links b/debian/golang-X.Y-go.links
new file mode 100644
index 0000000..107242d
--- /dev/null
+++ b/debian/golang-X.Y-go.links
@@ -0,0 +1,3 @@
+usr/share/go-X.Y/pkg/include /usr/lib/go-X.Y/pkg/include
+usr/share/go-X.Y/src /usr/lib/go-X.Y/src
+usr/share/go-X.Y/test /usr/lib/go-X.Y/test
diff --git a/debian/golang-X.Y-go.lintian-overrides b/debian/golang-X.Y-go.lintian-overrides
new file mode 100644
index 0000000..41817d9
--- /dev/null
+++ b/debian/golang-X.Y-go.lintian-overrides
@@ -0,0 +1,2 @@
+# Go always links statically.
+golang-X.Y-go: statically-linked-binary
diff --git a/debian/golang-X.Y-go.postinst b/debian/golang-X.Y-go.postinst
new file mode 100644
index 0000000..0621298
--- /dev/null
+++ b/debian/golang-X.Y-go.postinst
@@ -0,0 +1,13 @@
+#!/bin/sh
+set -e
+
+case "$1" in
+    configure)
+	# Very ugly hack to set timestamps same as /usr/lib/go-X.Y/bin/go
+	find /usr/lib/go-X.Y/pkg -exec touch -r /usr/lib/go-X.Y/bin/go {} \;
+	;;
+    *)
+	;;
+esac
+
+#DEBHELPER#
diff --git a/debian/golang-X.Y-src.install b/debian/golang-X.Y-src.install
new file mode 100644
index 0000000..85fc76b
--- /dev/null
+++ b/debian/golang-X.Y-src.install
@@ -0,0 +1,2 @@
+src /usr/share/go-X.Y/
+test /usr/share/go-X.Y/
diff --git a/debian/golang-X.Y-src.lintian-overrides b/debian/golang-X.Y-src.lintian-overrides
new file mode 100644
index 0000000..91002bf
--- /dev/null
+++ b/debian/golang-X.Y-src.lintian-overrides
@@ -0,0 +1,4 @@
+# golang-X.Y-src ships ELF object files as testdata for the debug/dwarf and
+# debug/elf packages.
+golang-X.Y-src: arch-dependent-file-in-usr-share
+golang-X.Y-src: unstripped-binary-or-object
diff --git a/debian/golang-doc.dirs b/debian/golang-doc.dirs
deleted file mode 100644
index 7f9b877..0000000
--- a/debian/golang-doc.dirs
+++ /dev/null
@@ -1 +0,0 @@
-usr/share/doc/golang-doc/html
diff --git a/debian/golang-doc.install b/debian/golang-doc.install
deleted file mode 100644
index d9b4213..0000000
--- a/debian/golang-doc.install
+++ /dev/null
@@ -1,2 +0,0 @@
-doc/* /usr/share/doc/golang-doc/html/
-favicon.ico /usr/share/doc/golang-doc
diff --git a/debian/golang-doc.links b/debian/golang-doc.links
deleted file mode 100644
index fbd3d65..0000000
--- a/debian/golang-doc.links
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/share/doc/golang-doc/favicon.ico /usr/lib/go/favicon.ico
-usr/share/doc/golang-doc/html /usr/lib/go/doc
diff --git a/debian/golang-go.dirs b/debian/golang-go.dirs
deleted file mode 100644
index c560784..0000000
--- a/debian/golang-go.dirs
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/lib/go
-usr/share/go/src/
diff --git a/debian/golang-go.install b/debian/golang-go.install
deleted file mode 100644
index c79c8b1..0000000
--- a/debian/golang-go.install
+++ /dev/null
@@ -1,7 +0,0 @@
-VERSION /usr/lib/go/
-bin/go /usr/lib/go/bin/
-bin/gofmt /usr/lib/go/bin/
-pkg/*_* /usr/lib/go/pkg/
-pkg/include /usr/share/go/pkg/
-pkg/obj /usr/lib/go/pkg/
-pkg/tool /usr/lib/go/pkg/
diff --git a/debian/golang-go.links b/debian/golang-go.links
deleted file mode 100644
index 8865815..0000000
--- a/debian/golang-go.links
+++ /dev/null
@@ -1,3 +0,0 @@
-usr/share/go/pkg/include /usr/lib/go/pkg/include
-usr/share/go/src /usr/lib/go/src
-usr/share/go/test /usr/lib/go/test
diff --git a/debian/golang-go.lintian-overrides b/debian/golang-go.lintian-overrides
deleted file mode 100644
index 818360c..0000000
--- a/debian/golang-go.lintian-overrides
+++ /dev/null
@@ -1,2 +0,0 @@
-# Go always links statically.
-golang-go: statically-linked-binary
diff --git a/debian/golang-go.postinst b/debian/golang-go.postinst
deleted file mode 100644
index 3094501..0000000
--- a/debian/golang-go.postinst
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/sh
-set -e
-
-case "$1" in
-    configure)
-	# Very ugly hack to set timestamps same as /usr/lib/go/bin/go
-	find /usr/lib/go/pkg -exec touch -r /usr/lib/go/bin/go {} \;
-	;;
-    *)
-	;;
-esac
-
-#DEBHELPER#
diff --git a/debian/golang-src.install b/debian/golang-src.install
deleted file mode 100644
index f034ba5..0000000
--- a/debian/golang-src.install
+++ /dev/null
@@ -1,2 +0,0 @@
-src /usr/share/go/
-test /usr/share/go/
diff --git a/debian/golang-src.lintian-overrides b/debian/golang-src.lintian-overrides
deleted file mode 100644
index aa1be30..0000000
--- a/debian/golang-src.lintian-overrides
+++ /dev/null
@@ -1,4 +0,0 @@
-# golang-src ships ELF object files as testdata for the debug/dwarf and
-# debug/elf packages.
-golang-src: arch-dependent-file-in-usr-share
-golang-src: unstripped-binary-or-object
diff --git a/debian/rules b/debian/rules
index cb30d52..b96dc35 100755
--- a/debian/rules
+++ b/debian/rules
@@ -2,8 +2,10 @@
 # This file is in the public domain.
 # You may freely use, modify, distribute, and relicense it.
 
+export GOVER := $(shell perl -w -mDpkg::Version -e 'Dpkg::Version->new(`dpkg-parsechangelog -SVersion`)->version() =~ /^([0-9]+\.[0-9]+)/ && print("$$1\n")')
+
 export GOROOT := $(CURDIR)
-export GOROOT_FINAL := /usr/lib/go
+export GOROOT_FINAL := /usr/lib/go-$(GOVER)
 
 DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU 2>/dev/null)
 RUN_TESTS := true
@@ -26,6 +28,16 @@ override_dh_auto_clean:
 		src/runtime/internal/sys/zversion.go
 	# remove built objects
 	rm -rf bin pkg
+	@cd debian; for x in golang-X.Y-*; do \
+		rm -f -v golang-$(GOVER)-$${x##golang-X.Y-}; \
+	done
+
+override_dh_prep:
+	dh_prep
+	@cd debian; for x in golang-X.Y-*; do \
+		sed -e 's/X.Y/$(GOVER)/g' $$x > golang-$(GOVER)-$${x##golang-X.Y-}; \
+	done
+
 
 override_dh_auto_test-arch:
 ifeq (true, $(RUN_TESTS))
@@ -57,12 +69,12 @@ override_dh_install-indep:
 override_dh_install-arch:
 	dh_install --fail-missing
 	# Remove Plan9 rc(1) scripts
-	find debian/golang-src/usr/share/go/src -type f -name '*.rc' -delete
-	# Remove empty /usr/share/go/src from golang-go, it is provided by golang-src
-	find debian/golang-go/usr/share/go/src -type d -delete
+	find debian/golang-$(GOVER)-src/usr/share/go-$(GOVER)/src -type f -name '*.rc' -delete
+	# Remove empty /usr/share/go-$(GOVER)/src from golang-$(GOVER)-go, it is provided by golang-$(GOVER)-src
+	find debian/golang-$(GOVER)-go/usr/share/go-$(GOVER)/src -type d -delete
 	# Touch built and installed files and directories to have same timestamp
-	touch debian/golang-go/usr/lib/go/pkg
-	find debian/golang-go/usr/lib/go/pkg -exec touch -r $(CURDIR)/debian/golang-go/usr/lib/go/pkg {} \;
+	touch debian/golang-$(GOVER)-go/usr/lib/go-$(GOVER)/pkg
+	find debian/golang-$(GOVER)-go/usr/lib/go-$(GOVER)/pkg -exec touch -r $(CURDIR)/debian/golang-$(GOVER)-go/usr/lib/go-$(GOVER)/pkg {} \;
 
 override_dh_strip:
 	dh_strip -Xtestdata

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-golang/golang.git



More information about the pkg-golang-commits mailing list