From 0256a7478c8a671c20708824554501b315dcb634 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Sat, 12 Sep 2020 07:07:13 +0700 Subject: [PATCH 1/8] build-style: go: allow -buildmode=pie --- common/build-style/go.sh | 8 ++++++-- common/environment/build-style/go.sh | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/common/build-style/go.sh b/common/build-style/go.sh index 50524b07f768c..a54f3813183cc 100644 --- a/common/build-style/go.sh +++ b/common/build-style/go.sh @@ -29,7 +29,11 @@ do_build() { fi done + local buildmode go_package=${go_package:-$go_import_path} + if [ -z "$nopie" ]; then + buildmode=-buildmode=pie + fi # Build using Go modules if there's a go.mod file if [ "${go_mod_mode}" != "off" ] && [ -f go.mod ]; then @@ -50,13 +54,13 @@ do_build() { # default behavior. go_mod_mode= fi - go install -p "$XBPS_MAKEJOBS" -mod="${go_mod_mode}" -modcacherw -v -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package} + go install -p "$XBPS_MAKEJOBS" -mod="${go_mod_mode}" $buildmode -modcacherw -v -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package} if [[ -n "${_go_mod_path}" ]]; then popd fi else # Otherwise, build using GOPATH - go get -p "$XBPS_MAKEJOBS" -v -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package} + go get -p "$XBPS_MAKEJOBS" $buildmode -v -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package} fi } diff --git a/common/environment/build-style/go.sh b/common/environment/build-style/go.sh index 223bba83ff11b..a07e83521b646 100644 --- a/common/environment/build-style/go.sh +++ b/common/environment/build-style/go.sh @@ -4,7 +4,6 @@ if [ -z "$hostmakedepends" -o "${hostmakedepends##*gcc-go-tools*}" ]; then archs="aarch64* armv[567]* i686* x86_64* ppc64le* riscv64*" fi hostmakedepends+=" go" - nopie=yes else # gccgo compiler if [ -z "$archs" ]; then @@ -15,6 +14,7 @@ else # target compiler to use; otherwise it'll just call gccgo export GCCGO="${XBPS_CROSS_TRIPLET}-gccgo" fi + nostrip=yes fi case "$XBPS_TARGET_MACHINE" in From 3ca4d82a2d166aea36d6f70d15bd880c8de0ecbb Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:00:39 -0500 Subject: [PATCH 2/8] booster: set nopie, nostrip --- srcpkgs/booster/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/booster/template b/srcpkgs/booster/template index 1e904ae1d8664..d0874cfe98cb8 100644 --- a/srcpkgs/booster/template +++ b/srcpkgs/booster/template @@ -17,6 +17,8 @@ alternatives=" initramfs:/etc/kernel.d/post-install/20-initramfs:/usr/libexec/booster/kernel-hook-postinst initramfs:/etc/kernel.d/post-remove/20-initramfs:/usr/libexec/booster/kernel-hook-postrm " +nopie=unverified +nostrip=nopie _build_component() { go install -p "$XBPS_MAKEJOBS" -mod=readonly -x From 3a242c9a99c7833113670baca09420d6abf35d9e Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:01:32 -0500 Subject: [PATCH 3/8] cni-plugins: set nopie, nostrip --- srcpkgs/cni-plugins/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/cni-plugins/template b/srcpkgs/cni-plugins/template index 589913adc6268..041f3352da6c5 100644 --- a/srcpkgs/cni-plugins/template +++ b/srcpkgs/cni-plugins/template @@ -10,6 +10,8 @@ license="Apache-2.0" homepage="https://github.com/containernetworking/plugins" distfiles="https://github.com/containernetworking/plugins/archive/v${version}.tar.gz" checksum=f3496ddda9c7770a0b695b67ae7ee80a4ee331ac2745af4830054b81627f79b7 +nopie=unverified +nostrip=nopie do_build() { ./build_linux.sh \ From 7121f093fea86ab69599bebb899149f85ee8d205 Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:02:54 -0500 Subject: [PATCH 4/8] coyim: set nopie, nostrip --- srcpkgs/coyim/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/coyim/template b/srcpkgs/coyim/template index 0d928b05cfde3..ca4e1aa222d35 100644 --- a/srcpkgs/coyim/template +++ b/srcpkgs/coyim/template @@ -12,6 +12,8 @@ license="GPL-3.0-only" homepage="https://coy.im" distfiles="https://github.com/coyim/coyim/archive/v${version}.tar.gz" checksum=f2bf1e73562fbcc3a0b264a30f92dfe427dffe2046e9f44459087ecac5890098 +nopie=unverified +nostrip=nopie case "$XBPS_TARGET_MACHINE" in x86_64*) ;; From cd4a09d9c41fdd0847a4974936b0b4b7507abc10 Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:03:42 -0500 Subject: [PATCH 5/8] kubernetes: set nopie, nostrip --- srcpkgs/kubernetes/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/kubernetes/template b/srcpkgs/kubernetes/template index 24486643745fd..5ca2aa8efc4d9 100644 --- a/srcpkgs/kubernetes/template +++ b/srcpkgs/kubernetes/template @@ -17,6 +17,8 @@ nocross=yes system_accounts="kube" make_dirs="/var/lib/kubelet 0755 kube kube" conf_files="/etc/kubernetes/*" +nopie=unverified +nostrip=nopie do_build() { make From 03d488a4b2a0822712d2f4f6f0661784a63daa8c Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:04:26 -0500 Subject: [PATCH 6/8] moby: set nopie, nostrip --- srcpkgs/moby/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/moby/template b/srcpkgs/moby/template index 50e0e83c70918..e309e77c1efea 100644 --- a/srcpkgs/moby/template +++ b/srcpkgs/moby/template @@ -21,6 +21,8 @@ distfiles="https://github.com/moby/moby/archive/v${version}.tar.gz>moby-$version checksum="16a2cb4cf4d314a070085e0df06e3a6bd9ec678d28715b64060af694fc9051d5 5c5e3aa7599e85036438a65016796aa11df4afb44d13b5927dcfb0ec5947a86b" system_groups="docker" +nopie=unverified +nostrip=nopie _moby_builddir="moby-$version" _libnetwork_builddir="libnetwork-$_libnetwork_commit" From ab4a0f1cc3cc79b9a9fa45766100fd65a6373fa7 Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:05:07 -0500 Subject: [PATCH 7/8] nncp: set nopie, nostrip --- srcpkgs/nncp/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/nncp/template b/srcpkgs/nncp/template index 6975d7a51ef1b..48b026350735a 100644 --- a/srcpkgs/nncp/template +++ b/srcpkgs/nncp/template @@ -10,6 +10,8 @@ license="GPL-3.0-only" homepage="http://www.nncpgo.org/" distfiles="http://www.nncpgo.org/download/${pkgname}-${version}.tar.xz" checksum=154e13ba15c0ea93f54525793b0699e496b2db7281e1555f08d785a528f3f7fc +nopie=unverified +nostrip=nopie do_build() { ./bin/build From a651f0b32f32b3c7a8c4b2cd56fc8cd1f774cc58 Mon Sep 17 00:00:00 2001 From: dkwo Date: Tue, 28 Nov 2023 16:05:49 -0500 Subject: [PATCH 8/8] yggdrasil: set nopie, nostrip --- srcpkgs/yggdrasil/template | 2 ++ 1 file changed, 2 insertions(+) diff --git a/srcpkgs/yggdrasil/template b/srcpkgs/yggdrasil/template index ffe828d3e9cc4..90438a30bfcf1 100644 --- a/srcpkgs/yggdrasil/template +++ b/srcpkgs/yggdrasil/template @@ -11,6 +11,8 @@ homepage="https://yggdrasil-network.github.io/" changelog="https://raw.githubusercontent.com/yggdrasil-network/yggdrasil-go/develop/CHANGELOG.md" distfiles="https://github.com/yggdrasil-network/yggdrasil-go/archive/v${version}.tar.gz" checksum=47429f75b87d9b2450108471991e84c90d748606642e8778e9f578485b05a56f +nopie=unverified +nostrip=nopie do_build() { PKGNAME=${pkgname} PKGVER=${version} ./build