[Pkg-golang-commits] [golang] 01/01: Package compiled PIE-mode stdlib (Closes: #823014)
Peter Colberg
peter at colberg.org
Wed Jun 22 23:42:04 UTC 2016
This is an automated email from the git hooks/post-receive script.
pc-guest pushed a commit to branch pc/debian-sid
in repository golang.
commit 491e86350fe3b50d94a7927915dbf734e46e74a9
Author: Peter Colberg <peter at colberg.org>
Date: Wed Jun 22 18:09:34 2016 -0400
Package compiled PIE-mode stdlib (Closes: #823014)
---
debian/control | 17 +++++++++++++++++
debian/control.in | 17 +++++++++++++++++
debian/golang-X.Y-pie-dev.dirs | 1 +
debian/rules | 7 +++++++
4 files changed, 42 insertions(+)
diff --git a/debian/control b/debian/control
index fb7d3da..70a1e71 100644
--- a/debian/control
+++ b/debian/control
@@ -40,6 +40,23 @@ Description: Go programming language compiler, linker, compiled stdlib
Go supports cross-compilation, but as of Go 1.5, it is no longer necessary to
pre-compile the standard library inside GOROOT for cross-compilation to work.
+Package: golang-1.6-pie-dev
+Depends: golang-1.6-go (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
+Architecture: amd64 arm64 armel armhf i386 ppc64 ppc64el
+Build-Profiles: <!cross>
+Description: Go programming language - compiled PIE-mode 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 package provides the compiled Go standard library for building
+ position-independent executables (PIE).
+
Package: golang-1.6-src
Architecture: amd64 arm64 armel armhf i386 ppc64 ppc64el
Depends: ${misc:Depends}, ${shlibs:Depends}
diff --git a/debian/control.in b/debian/control.in
index eff79ee..caf5728 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -36,6 +36,23 @@ Description: Go programming language compiler, linker, compiled stdlib
Go supports cross-compilation, but as of Go 1.5, it is no longer necessary to
pre-compile the standard library inside GOROOT for cross-compilation to work.
+Package: golang-X.Y-pie-dev
+Depends: golang-X.Y-go (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
+Architecture: amd64 arm64 armel armhf i386 ppc64 ppc64el
+Build-Profiles: <!cross>
+Description: Go programming language - compiled PIE-mode 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 package provides the compiled Go standard library for building
+ position-independent executables (PIE).
+
Package: golang-X.Y-src
Architecture: amd64 arm64 armel armhf i386 ppc64 ppc64el
Depends: ${misc:Depends}, ${shlibs:Depends}
diff --git a/debian/golang-X.Y-pie-dev.dirs b/debian/golang-X.Y-pie-dev.dirs
new file mode 100644
index 0000000..93c0967
--- /dev/null
+++ b/debian/golang-X.Y-pie-dev.dirs
@@ -0,0 +1 @@
+/usr/lib/go-X.Y/pkg
diff --git a/debian/rules b/debian/rules
index 573fde2..1580b57 100755
--- a/debian/rules
+++ b/debian/rules
@@ -84,6 +84,10 @@ override_dh_install-arch:
# Touch built and installed files and directories to have same timestamp
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 {} \;
+ifeq (,$(filter cross,$(DEB_BUILD_PROFILES)))
+ # Move compiled PIE-mode stdlib to separate package
+ mv debian/golang-$(GOVER)-go/usr/lib/go-$(GOVER)/pkg/*_*_shared debian/golang-$(GOVER)-pie-dev/usr/lib/go-$(GOVER)/pkg
+endif
override_dh_strip:
dh_strip -Xtestdata
@@ -97,6 +101,9 @@ override_dh_auto_build-arch:
&& cd src \
&& $(CURDIR)/debian/helpers/goenv.sh \
bash ./make.bash --no-banner
+ifeq (,$(filter cross,$(DEB_BUILD_PROFILES)))
+ $(GOROOT)/bin/go install -v -buildmode=pie std
+endif
opt_no_act :=
ifneq (,$(findstring n,$(MAKEFLAGS)))
--
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