summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorShohei Maruyama2022-04-18 20:58:51 +0900
committerShohei Maruyama2022-04-18 21:05:36 +0900
commit0346a63f2e85cd1183f336a15b18a0e3d9116aa6 (patch)
treee1af99360f386db922196a3c8781e70351366920
parent379824f4a276d5a4e295326ef984530f0a91fba7 (diff)
downloadaur-0346a63f2e85cd1183f336a15b18a0e3d9116aa6.tar.gz
PKGBUILD: Build binaries with RELRO
According the guidelines, Need to build go binary with RELRO. Ref: https://wiki.archlinux.org/title/Go_package_guidelines#Sample_PKGBUILD Signed-off-by: Shohei Maruyama <cheat.sc.linux@outlook.com>
-rw-r--r--.SRCINFO2
-rw-r--r--PKGBUILD13
2 files changed, 10 insertions, 5 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 806ad360df06..771657b969b5 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = concourse
pkgver = 7.7.1
- pkgrel = 2
+ pkgrel = 3
url = https://concourse-ci.org
arch = x86_64
license = Apache-2.0
diff --git a/PKGBUILD b/PKGBUILD
index d6f8223d7e82..118b5d42e9bd 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,7 +5,7 @@
pkgbase='concourse'
pkgname=('concourse' 'concourse-fly-cli' 'concourse-resource-types')
pkgver=7.7.1
-pkgrel=2
+pkgrel=3
arch=('x86_64')
url='https://concourse-ci.org'
license=('Apache-2.0')
@@ -34,10 +34,15 @@ build() {
cd "${srcdir}/${pkgname}-${pkgver}"
export GOPATH="${srcdir}/go"
export PATH=$PATH:"$GOPATH/bin"
- ldflags="-X github.com/concourse/concourse.Version=${pkgver}"
+ export CGO_CPPFLAGS="${CPPFLAGS}"
+ export CGO_CFLAGS="${CFLAGS}"
+ export CGO_CXXFLAGS="${CXXFLAGS}"
+ export CGO_LDFLAGS="${LDFLAGS}"
+ export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -ldflags=-X=github.com/concourse/concourse.Version=${pkgver} -mod=readonly -modcacherw"
+
yarn build
- go build -o concourse -trimpath -ldflags "${ldflags}" ./cmd/concourse
- go build -o fly -trimpath -ldflags "${ldflags}" ./fly
+ go build -o concourse ./cmd/concourse
+ go build -o fly ./fly
gcc -O2 -static cmd/init/init.c -o init
}