From 781b5caac364cb34393174b491ef3a8c56192976 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 15:20:27 +0200 Subject: Adding debian version 2:1.19~1. Signed-off-by: Daniel Baumann --- debian/README.source | 47 ++++++++ debian/changelog | 259 ++++++++++++++++++++++++++++++++++++++++ debian/clean | 1 + debian/control | 172 ++++++++++++++++++++++++++ debian/copyright | 56 +++++++++ debian/gccgo-go.links | 2 + debian/gccgo-go.manpages | 1 + debian/gitlab-ci.yml | 28 +++++ debian/golang-go.links | 4 + debian/golang-go.manpages | 1 + debian/golang-go.preinst | 22 ++++ debian/golang-src.links | 2 + debian/helpers/getver.pl | 14 +++ debian/rules | 10 ++ debian/source/format | 1 + debian/source/lintian-overrides | 2 + 16 files changed, 622 insertions(+) create mode 100644 debian/README.source create mode 100644 debian/changelog create mode 100644 debian/clean create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/gccgo-go.links create mode 100644 debian/gccgo-go.manpages create mode 100644 debian/gitlab-ci.yml create mode 100755 debian/golang-go.links create mode 100644 debian/golang-go.manpages create mode 100755 debian/golang-go.preinst create mode 100755 debian/golang-src.links create mode 100755 debian/helpers/getver.pl create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/source/lintian-overrides (limited to 'debian') diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 0000000..844e6ad --- /dev/null +++ b/debian/README.source @@ -0,0 +1,47 @@ +Keeping man pages up-to-date between Go releases +================================================ + +A new Go release naturally comes with updated (and new) documentation, +and it is important to keep at least existing man pages up-to-date so as +not to present outdated or even incorrect information to the end users. + +To get an overview of the changes with Git: + + git diff upstream/1.18..upstream/1.19 src/cmd/go/alldocs.go + +(optionally, add "-w" flag to ignore whitespaces when necessary.) + +I also use something like the following quick-and-dirty commands to +manually check for changes in existing man pages (non-comprehensive): + + oldver=1.18 + newver=1.19 + for manpage in man/go-*.?; do + topic=$(echo $manpage | sed 's/^man\/go-//; s/\.[1-8]$//') + echo -e "\n$manpage ======================================\n" + for ver in $oldver $newver; do + /usr/lib/go-$ver/bin/go help $topic &> /tmp/$ver-go-$topic + done + colordiff -u /tmp/$oldver-go-$topic /tmp/$newver-go-$topic + done | less -R + +I then inspect the output, copy-and-paste the changes, and replace +single quotes to \(oq or \(cq, prepend a backslash before a hyphen, etc. +where necessary. + +Note that many "go help" commands and topics were added over the years +and are missing man pages, such as: + + * go help generate + * go help mod download + * go help buildconstraints + * ... + +However, given how labour-intensive this process is, and not knowing how to +automate such man page updates, I am personally avoiding the creation of +any more new man pages due to lack of time and energy. + +That said, if you are interested, please feel free to contribute! :-) +Thank you! + + -- Anthony Fok Sat, 06 Aug 2022 12:50:00 -0600 diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..b6850c5 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,259 @@ +golang-defaults (2:1.19~1) unstable; urgency=medium + + * Update to Go 1.19 (src:golang-1.19) + * Update existing man pages to Go 1.19 + * Add debian/README.source on keeping the man pages updated + * Bump Standards-Version to 4.6.1 (no change) + + -- Anthony Fok Sat, 06 Aug 2022 13:09:49 -0600 + +golang-defaults (2:1.18~3) unstable; urgency=medium + + * Have gccgo-go depend on g++-12 too, as go-12 "go env CXX" refers + specifically to "${DEB_BUILD_GNU_TYPE}-g++-12", but g++-12 does not + get installed when the default g++ is still version 11. + + -- Anthony Fok Tue, 22 Mar 2022 06:45:47 -0600 + +golang-defaults (2:1.18~2) unstable; urgency=medium + + * Bump gccgo to 12: gccgo-12 implements go1.18. + Thanks to Shengjing Zhu for letting me know! + + -- Anthony Fok Mon, 21 Mar 2022 10:07:36 -0600 + +golang-defaults (2:1.18~1) unstable; urgency=medium + + [ Jelmer Vernooij: deb-scrub-obsolete ] + * Remove constraints unnecessary since buster + - golang-go: Drop versioned constraint on golang-doc and golang-go.tools + in Replaces and Breaks. + + [ Anthony Fok ] + * Update to Go 1.18 (src:golang-1.18) + * Update man pages to Go 1.18 + * Reorder fields in debian/control + as would be generated in the next dh-make-golang release after 0.6.0-1 + + -- Anthony Fok Mon, 21 Mar 2022 00:03:54 -0600 + +golang-defaults (2:1.17~1) unstable; urgency=medium + + * Update to Go 1.17. + * Update man pages to Go 1.17 + * Convert golang-src "Architecture: all" and marked "Multi-Arch: foreign" + as recommended by the Multiarch hinter on Debian Package Tracker + * Mark Multi-Arch for golang-go and golang-doc + to resolve Lintian dependency-is-not-multi-archified warnings + + -- Anthony Fok Fri, 15 Oct 2021 07:34:04 -0600 + +golang-defaults (2:1.16~1) unstable; urgency=medium + + [ Jenkins ] + * Remove constraints unnecessary since stretch + * golang-go: Drop versioned constraint on golang-golang-x-tools in Replaces. + * golang-go: Drop versioned constraint on golang-golang-x-tools in Breaks. + * Remove 1 maintscript entries from 1 files. + Changes-By: deb-scrub-obsolete + + [ Anthony Fok ] + * Update to Go 1.16 (Closes: #993356) + * Change Section from devel to golang + * Change Maintainer from "Go Compiler Team" to "Debian Go Compiler Team" + * Bump Standards-Version to 4.6.0 (no change) + * Bump gccgo to 11: gccgo-11 implements Go 1.16 (Yay!) + * Updated most man pages to Go 1.16 + - go-get(1) now documents the module-aware mode; + the original GOPATH mode doc has been moved to go-gopath-get(1) + - go-remote(7), go-testflag(7) and go-testfunc(7) are not yet updated + + -- Anthony Fok Mon, 06 Sep 2021 09:40:53 -0600 + +golang-defaults (2:1.15~1) unstable; urgency=medium + + * Update to Go 1.15. + + -- Michael Hudson-Doyle Thu, 17 Sep 2020 08:08:57 +1200 + +golang-defaults (2:1.14~2) unstable; urgency=medium + + * Team upload. + * Bump gccgo to 10 + gccgo-10 implements go1.14 + * Fix mips64 typo, should be mips64el. + Thanks Helmut Grohne for spotting this in #960842 + * Bump debhelper-compat to 13 + * Bump Standards-Version to 4.5.0 (no changes) + * Add Rules-Requires-Root + + -- Shengjing Zhu Wed, 20 May 2020 19:48:35 +0800 + +golang-defaults (2:1.14~1) unstable; urgency=medium + + * Update to Go 1.14 (src:golang-1.14). Closes: #952831 + * Add riscv64 to architectures of golang-go, golang-src, and golang. + Thanks to Aurelien Jarno (Closes: #953303) + + -- Dr. Tobias Quathamer Sat, 07 Mar 2020 13:47:33 +0100 + +golang-defaults (2:1.13~1) unstable; urgency=medium + + * Update to Go 1.13 (src:golang-1.13) + + -- Dr. Tobias Quathamer Fri, 04 Oct 2019 13:23:03 +0200 + +golang-defaults (2:1.12~1) unstable; urgency=medium + + [ Louis-Philippe Véronneau ] + * d/control: Suggest installing git (Closes: #933003) + + [ Anthony Fok ] + * Add myself to the list of Uploaders + * Apply "cme fix dpkg" fixes: + - Update debhelper dependency to "Build-Depends: debhelper-compat (= 12)" + - Bump Standards-Version to 4.4.0 (no change) + * Have gccgo-go depend on gccgo-9 + * Update to Go 1.12 (src:golang-1.12) (Closes: #924623) + + -- Anthony Fok Sat, 03 Aug 2019 04:27:09 -0600 + +golang-defaults (2:1.11~1) unstable; urgency=medium + + * Update to Go 1.11 (src:golang-1.11) + + -- Dr. Tobias Quathamer Sat, 29 Dec 2018 14:55:11 +0100 + +golang-defaults (2:1.10~6) unstable; urgency=medium + + [ Michael Hudson-Doyle ] + * d/control: Update Vcs-* to point at salsa. + * d/helpers/getver.pl: small improvements, thanks Guillem Jover. + (Closes: #909604) + + [ Dr. Tobias Quathamer ] + * Switch team address to tracker.d.o + * Add myself as uploader + * Update Standards-Version to 4.3.0 + - Use HTTPS URL for d/copyright + * Use debhelper v11 + + -- Dr. Tobias Quathamer Thu, 27 Dec 2018 00:20:37 +0100 + +golang-defaults (2:1.10~5) unstable; urgency=medium + + * Remove ppc64 from golang architectures as upstream's minimum ISA + requirement now exceeds Debian's. + + -- Michael Hudson-Doyle Thu, 01 Mar 2018 10:51:58 +1300 + +golang-defaults (2:1.10~4) unstable; urgency=medium + + * Enable golang and golang-src on s390x too. + + -- Michael Hudson-Doyle Wed, 28 Feb 2018 22:08:37 +1300 + +golang-defaults (2:1.10~3) unstable; urgency=medium + + * Have gccgo-go depend on gccgo-8. + + -- Michael Hudson-Doyle Wed, 28 Feb 2018 22:01:45 +1300 + +golang-defaults (2:1.10~2) unstable; urgency=medium + + * Enable golang-go on s390x (Thanks cbmuser) + + -- Michael Stapelberg Wed, 28 Feb 2018 09:40:49 +0100 + +golang-defaults (2:1.10~1) unstable; urgency=medium + + [ Michael Hudson-Doyle ] + * Use my @debian.org address in Uploaders. + + [ Michael Stapelberg ] + * Update to Go 1.10 (src:golang-1.10) + + -- Michael Stapelberg Sat, 17 Feb 2018 13:06:01 +0100 + +golang-defaults (2:1.9~2) unstable; urgency=medium + + * Add mips, mips64el and mipsel to golang-go Architectures. + (Closes: #834002, #841645) + + -- Michael Hudson-Doyle Mon, 11 Dec 2017 09:15:36 +1300 + +golang-defaults (2:1.9~1) unstable; urgency=medium + + [ Martina Ferrari ] + * Add myself to Uploaders. + + [ Michael Stapelberg ] + * Update to Go 1.9 (src:golang-1.9) + + -- Michael Stapelberg Fri, 15 Sep 2017 07:53:10 +0200 + +golang-defaults (2:1.8~3) unstable; urgency=medium + + * Upload to unstable. + + -- Michael Hudson-Doyle Fri, 23 Jun 2017 10:12:10 +1200 + +golang-defaults (2:1.8~2) experimental; urgency=medium + + * Have gccgo-go depend on gccgo-7. (Closes: #862422) + + -- Michael Hudson-Doyle Mon, 15 May 2017 09:33:17 +1200 + +golang-defaults (2:1.8~1) experimental; urgency=medium + + * Update to Go 1.8 (src:golang-1.8) + + -- Michael Stapelberg Wed, 15 Mar 2017 09:17:16 +0100 + +golang-defaults (2:1.7~5) unstable; urgency=medium + + * Add man pages to "gccgo-go" as well (given that it's the mirror of + "golang-go"), quieting lintian + + -- Tianon Gravi Tue, 27 Dec 2016 10:38:42 -0800 + +golang-defaults (2:1.7~4) unstable; urgency=medium + + * Add old "golang-doc" to Breaks/Replaces (Closes: #836991) + + -- Tianon Gravi Tue, 06 Dec 2016 23:21:37 -0800 + +golang-defaults (2:1.7~3) unstable; urgency=medium + + * Define a gccgo-go package that can be used to test building with gccgo on + any architecture. (Closes: 842254) + + -- Michael Hudson-Doyle Tue, 22 Nov 2016 09:44:29 -0800 + +golang-defaults (2:1.7~2) unstable; urgency=medium + + * Remove "s390x" again (Closes: #844258) + - Go upstream supports z196 and above, Debian still supports z10. If we + and/or upstream get a patch to support z10, we can add this back. :) + - see also https://github.com/golang/go/issues/16637 + + -- Tianon Gravi Fri, 18 Nov 2016 16:56:22 -0800 + +golang-defaults (2:1.7~1) unstable; urgency=medium + + [ Tianon Gravi ] + * Add missing Vcs-Browser and Vcs-Git + * Update to Go 1.7 (src:golang-1.7) + * Add "s390x" to Architectures + + [ Michael Hudson-Doyle ] + * Add d/golang-go.maintscript to properly handle transition of /usr/lib/go + from directory to symlink. (Closes: 832160) + + -- Tianon Gravi Tue, 23 Aug 2016 14:15:24 -0700 + +golang-defaults (2:1.6.1+1) unstable; urgency=medium + + * Initial release. (Closes: #818415, #822746) + + -- Michael Hudson-Doyle Wed, 01 Jun 2016 10:05:10 -0700 diff --git a/debian/clean b/debian/clean new file mode 100644 index 0000000..c2427f5 --- /dev/null +++ b/debian/clean @@ -0,0 +1 @@ +debian/golang-any.links diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..bee3f27 --- /dev/null +++ b/debian/control @@ -0,0 +1,172 @@ +Source: golang-defaults +Section: golang +Priority: optional +Maintainer: Debian Go Compiler Team +Uploaders: Michael Stapelberg , + Paul Tagliamonte , + Tianon Gravi , + Michael Hudson-Doyle , + Martina Ferrari , + Dr. Tobias Quathamer , + Anthony Fok +Rules-Requires-Root: no +Build-Depends: debhelper-compat (= 13), + dh-exec +Standards-Version: 4.6.1 +Vcs-Browser: https://salsa.debian.org/go-team/compiler/golang-defaults +Vcs-Git: https://salsa.debian.org/go-team/compiler/golang-defaults.git +Homepage: https://golang.org + +Package: golang-go +Architecture: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el riscv64 s390x +Multi-Arch: same +Depends: golang-${golang:GOVER}-go, + golang-src (>= ${source:Version}), + ${misc:Depends} +Suggests: git +Breaks: gccgo-5 (<< 5.3.1-12~), + gccgo-6 (<< 6-20160319-1~), + golang-go-darwin-386, + golang-go-darwin-amd64, + golang-go-freebsd-386, + golang-go-freebsd-amd64, + golang-go-freebsd-arm, + golang-go-linux-386, + golang-go-linux-amd64, + golang-go-linux-arm, + golang-go-netbsd-386, + golang-go-netbsd-amd64, + golang-go-windows-386, + golang-go-windows-amd64 +Conflicts: gccgo-go +Replaces: golang-go-darwin-386, + golang-go-darwin-amd64, + golang-go-freebsd-386, + golang-go-freebsd-amd64, + golang-go-freebsd-arm, + golang-go-linux-386, + golang-go-linux-amd64, + golang-go-linux-arm, + golang-go-netbsd-386, + golang-go-netbsd-amd64, + golang-go-windows-386, + golang-go-windows-amd64 +Description: Go programming language compiler, linker, compiled stdlib + The Go programming language is an open source project to make programmers more + productive. Go is expressive, concise, clean, and efficient. Its concurrency + mechanisms make it easy to write programs that get the most out of multicore + and networked machines, while its novel type system enables flexible and + modular program construction. Go compiles quickly to machine code yet has the + convenience of garbage collection and the power of run-time reflection. It's a + fast, statically typed, compiled language that feels like a dynamically typed, + interpreted language. + . + This is a dependency package that depends on the default Go toolchain and + compiled standard library. It is only built on architectures that have a + native toolchain ("gc compiler"). Packages that want to build with whichever + of gc or gccgo is available should depend on golang-any. + +Package: golang-any +Architecture: any +Multi-Arch: same +Depends: golang-go (>= ${source:Version}) | gccgo-go (>= ${source:Version}), + ${misc:Depends} +Description: Go programming language -- gccgo on "non-Go" platforms + The Go programming language is an open source project to make programmers more + productive. Go is expressive, concise, clean, and efficient. Its concurrency + mechanisms make it easy to write programs that get the most out of multicore + and networked machines, while its novel type system enables flexible and + modular program construction. Go compiles quickly to machine code yet has the + convenience of garbage collection and the power of run-time reflection. It's a + fast, statically typed, compiled language that feels like a dynamically typed, + interpreted language. + . + This is a dependency package that depends on the default Go toolchain and + compiled standard library or gccgo on architectures that do not have a native + toolchain ("gc compiler") port. Because the gccgo and Go releases are not on + the same schedule, it is not guaranteed that the version of the Go language + provided by the version of gccgo that this package depends upon will match the + version of this package. + +Package: gccgo-go +Architecture: any +Multi-Arch: same +Depends: g++-12, + gccgo-12, + ${misc:Depends} +Conflicts: golang-go +Description: Go programming language -- gccgo + The Go programming language is an open source project to make programmers more + productive. Go is expressive, concise, clean, and efficient. Its concurrency + mechanisms make it easy to write programs that get the most out of multicore + and networked machines, while its novel type system enables flexible and + modular program construction. Go compiles quickly to machine code yet has the + convenience of garbage collection and the power of run-time reflection. It's a + fast, statically typed, compiled language that feels like a dynamically typed, + interpreted language. + . + Installing this package will install the gccgo implementation as /usr/bin/go. + It conflicts with golang-go. + +Package: golang-src +Architecture: all +Multi-Arch: foreign +Depends: golang-${golang:GOVER}-src, + ${misc:Depends} +Description: Go programming language - source files + The Go programming language is an open source project to make programmers more + productive. Go is expressive, concise, clean, and efficient. Its concurrency + mechanisms make it easy to write programs that get the most out of multicore + and networked machines, while its novel type system enables flexible and + modular program construction. Go compiles quickly to machine code yet has the + convenience of garbage collection and the power of run-time reflection. It's a + fast, statically typed, compiled language that feels like a dynamically typed, + interpreted language. + . + This is a dependency package that depends on the default Go standard library + source code, which is needed for the go build process. + +Package: golang-doc +Architecture: all +Multi-Arch: foreign +Section: doc +Depends: golang-${golang:GOVER}-doc, + golang-go (>= ${source:Version}), + ${misc:Depends} +Description: Go programming language - documentation + The Go programming language is an open source project to make + programmers more productive. Go is expressive, concise, clean, and + efficient. Its concurrency mechanisms make it easy to write programs + that get the most out of multicore and networked machines, while its + novel type system enables flexible and modular program construction. + Go compiles quickly to machine code yet has the convenience of + garbage collection and the power of run-time reflection. It's a fast, + statically typed, compiled language that feels like a dynamically + typed, interpreted language. + . + This is a dependency package that depends on the default Go documentation. You + can view the formatted documentation by installing the golang-golang-x-tools + package, running "godoc --http=:6060", and then visiting + http://localhost:6060/doc/install.html. + +Package: golang +Architecture: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el riscv64 s390x +Multi-Arch: same +Depends: golang-${golang:GOVER}, + golang-doc (>= ${source:Version}), + golang-go (>= ${source:Version}), + golang-src (>= ${source:Version}), + ${misc:Depends} +Description: Go programming language compiler - metapackage + The Go programming language is an open source project to make + programmers more productive. Go is expressive, concise, clean, and + efficient. Its concurrency mechanisms make it easy to write programs + that get the most out of multicore and networked machines, while its + novel type system enables flexible and modular program construction. + Go compiles quickly to machine code yet has the convenience of + garbage collection and the power of run-time reflection. It's a + fast, statically typed, compiled language that feels like a + dynamically typed, interpreted language. + . + This package is a metapackage that, when installed, guarantees + that (most of) a full Go development environment is installed. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..22da1d6 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,56 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Comment: This package is entirely derived from the debian/* files in + the golang packaging, so the copyright information has been copied + from there. + +Files: * +Copyright: 2010 Ivan Wong + 2010 Ondřej Surý + 2012 Michael Stapelberg + 2014 Canonical Ltd + 2014 Tianon Gravi +License: Go + +License: Go + Copyright © 2009 The Go Authors. All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + . + Subject to the terms and conditions of this License, Google hereby + grants to You a perpetual, worldwide, non-exclusive, no-charge, + royalty-free, irrevocable (except as stated in this section) patent + license to make, have made, use, offer to sell, sell, import, and + otherwise transfer this implementation of Go, where such license + applies only to those patent claims licensable by Google that are + necessarily infringed by use of this implementation of Go. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that this + implementation of Go or a Contribution incorporated within this + implementation of Go constitutes direct or contributory patent + infringement, then any patent licenses granted to You under this + License for this implementation of Go shall terminate as of the date + such litigation is filed. diff --git a/debian/gccgo-go.links b/debian/gccgo-go.links new file mode 100644 index 0000000..9370164 --- /dev/null +++ b/debian/gccgo-go.links @@ -0,0 +1,2 @@ +usr/bin/go-12 usr/bin/go +usr/bin/gofmt-12 usr/bin/gofmt diff --git a/debian/gccgo-go.manpages b/debian/gccgo-go.manpages new file mode 100644 index 0000000..85c5e00 --- /dev/null +++ b/debian/gccgo-go.manpages @@ -0,0 +1 @@ +man/* diff --git a/debian/gitlab-ci.yml b/debian/gitlab-ci.yml new file mode 100644 index 0000000..5c8c31b --- /dev/null +++ b/debian/gitlab-ci.yml @@ -0,0 +1,28 @@ + +# auto-generated, DO NOT MODIFY. +# The authoritative copy of this file lives at: +# https://salsa.debian.org/go-team/ci/blob/master/cmd/ci/gitlabciyml.go + +# TODO: publish under debian-go-team/ci +image: stapelberg/ci2 + +test_the_archive: + artifacts: + paths: + - before-applying-commit.json + - after-applying-commit.json + script: + # Create an overlay to discard writes to /srv/gopath/src after the build: + - "rm -rf /cache/overlay/{upper,work}" + - "mkdir -p /cache/overlay/{upper,work}" + - "mount -t overlay overlay -o lowerdir=/srv/gopath/src,upperdir=/cache/overlay/upper,workdir=/cache/overlay/work /srv/gopath/src" + - "export GOPATH=/srv/gopath" + - "export GOCACHE=/cache/go" + # Build the world as-is: + - "ci-build -exemptions=/var/lib/ci-build/exemptions.json > before-applying-commit.json" + # Copy this package into the overlay: + - "GBP_CONF_FILES=:debian/gbp.conf gbp buildpackage --git-no-pristine-tar --git-ignore-branch --git-ignore-new --git-export-dir=/tmp/export --git-no-overlay --git-tarball-dir=/nonexistant --git-cleaner=/bin/true --git-builder='dpkg-buildpackage -S -d --no-sign'" + - "pgt-gopath -dsc /tmp/export/*.dsc" + # Rebuild the world: + - "ci-build -exemptions=/var/lib/ci-build/exemptions.json > after-applying-commit.json" + - "ci-diff before-applying-commit.json after-applying-commit.json" diff --git a/debian/golang-go.links b/debian/golang-go.links new file mode 100755 index 0000000..79b7747 --- /dev/null +++ b/debian/golang-go.links @@ -0,0 +1,4 @@ +#!/usr/bin/dh-exec +usr/lib/go-${GOVER} usr/lib/go +usr/lib/go-${GOVER}/bin/go usr/bin/go +usr/lib/go-${GOVER}/bin/gofmt usr/bin/gofmt diff --git a/debian/golang-go.manpages b/debian/golang-go.manpages new file mode 100644 index 0000000..85c5e00 --- /dev/null +++ b/debian/golang-go.manpages @@ -0,0 +1 @@ +man/* diff --git a/debian/golang-go.preinst b/debian/golang-go.preinst new file mode 100755 index 0000000..b089334 --- /dev/null +++ b/debian/golang-go.preinst @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e + +case "$1" in + upgrade) + # When golang-go was not a dependency package, it used alternatives to + # manage /usr/bin/go, and unfortunately did not remove the alternative on + # prerm upgrade (just uninstall|deconfigure). So remove it here. + update-alternatives --remove go /usr/lib/go/bin/go + ;; + install) + ;; + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/debian/golang-src.links b/debian/golang-src.links new file mode 100755 index 0000000..16fbbcc --- /dev/null +++ b/debian/golang-src.links @@ -0,0 +1,2 @@ +#!/usr/bin/dh-exec +usr/share/go-${GOVER} usr/share/go diff --git a/debian/helpers/getver.pl b/debian/helpers/getver.pl new file mode 100755 index 0000000..27a87b4 --- /dev/null +++ b/debian/helpers/getver.pl @@ -0,0 +1,14 @@ +#!/usr/bin/perl + +# Extract upstream version from version in changelog. + +use warnings; +use strict; + +use Dpkg::Changelog::Parse; + +my $fields = changelog_parse(); +my $v = $fields->{Version}->version(); +$v =~ /^([0-9]+\.[0-9]+).*/ or die 'INVALID VERSION! (needs X.Y)'; + +printf("%s\n", $1); diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..53e0bc5 --- /dev/null +++ b/debian/rules @@ -0,0 +1,10 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +export GOVER := $(shell debian/helpers/getver.pl) + +%: + dh $@ + +override_dh_gencontrol: + dh_gencontrol -- -Vgolang:GOVER=$(GOVER) diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..9f67427 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native) \ No newline at end of file diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 0000000..bcf07fd --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,2 @@ +# Thanks for the concern, lintian, but this is OK :-) +golang-defaults: dh-exec-subst-unknown-variable -- cgit v1.2.3