From 0020a697dabc10a88c192fab2ff9bfc60a72c390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?= Date: Mon, 13 Jun 2022 14:46:00 +0200 Subject: [PATCH 1/2] New build-helper: go This moves most of the go environment definition into a go build helper, allowing projects that don't use the go build-style to use those environment variables. --- common/build-helper/go.sh | 45 +++++++++++++++++++++++++++ common/environment/build-style/go.sh | 46 +--------------------------- 2 files changed, 46 insertions(+), 45 deletions(-) create mode 100644 common/build-helper/go.sh diff --git a/common/build-helper/go.sh b/common/build-helper/go.sh new file mode 100644 index 000000000000..afa9082c927a --- /dev/null +++ b/common/build-helper/go.sh @@ -0,0 +1,45 @@ +if [ -z "$hostmakedepends" -o "${hostmakedepends##*gcc-go-tools*}" ]; then + # gc compiler + if [ -z "$archs" ]; then + archs="aarch64* armv[567]* i686* x86_64* ppc64le*" + fi + hostmakedepends+=" go" + nopie=yes +else + # gccgo compiler + if [ -z "$archs" ]; then + # we have support for these in our gcc + archs="aarch64* armv[567]* i686* x86_64* ppc64*" + fi + if [ "$CROSS_BUILD" ]; then + # target compiler to use; otherwise it'll just call gccgo + export GCCGO="${XBPS_CROSS_TRIPLET}-gccgo" + fi +fi + +case "$XBPS_TARGET_MACHINE" in + aarch64*) export GOARCH=arm64;; + armv5*) export GOARCH=arm; export GOARM=5;; + armv6*) export GOARCH=arm; export GOARM=6;; + armv7*) export GOARCH=arm; export GOARM=7;; + i686*) export GOARCH=386;; + x86_64*) export GOARCH=amd64;; + ppc64le*) export GOARCH=ppc64le;; + ppc64*) export GOARCH=ppc64;; + ppc*) export GOARCH=ppc;; + mipsel*) export GOARCH=mipsle;; + mips*) export GOARCH=mips;; +esac + +export GOPATH="${wrksrc}/_build-${pkgname}-xbps" +GOSRCPATH="${GOPATH}/src/${go_import_path}" +export CGO_CFLAGS="$CFLAGS" +export CGO_CPPFLAGS="$CPPFLAGS" +export CGO_CXXFLAGS="$CXXFLAGS" +export CGO_LDFLAGS="$LDFLAGS" +export CGO_ENABLED=1 +export GO111MODULE=auto +case "$XBPS_TARGET_MACHINE" in + *-musl) export GOCACHE="${XBPS_HOSTDIR}/gocache-muslc" ;; + *) export GOCACHE="${XBPS_HOSTDIR}/gocache-glibc" ;; +esac diff --git a/common/environment/build-style/go.sh b/common/environment/build-style/go.sh index afa9082c927a..a765f7bab896 100644 --- a/common/environment/build-style/go.sh +++ b/common/environment/build-style/go.sh @@ -1,45 +1 @@ -if [ -z "$hostmakedepends" -o "${hostmakedepends##*gcc-go-tools*}" ]; then - # gc compiler - if [ -z "$archs" ]; then - archs="aarch64* armv[567]* i686* x86_64* ppc64le*" - fi - hostmakedepends+=" go" - nopie=yes -else - # gccgo compiler - if [ -z "$archs" ]; then - # we have support for these in our gcc - archs="aarch64* armv[567]* i686* x86_64* ppc64*" - fi - if [ "$CROSS_BUILD" ]; then - # target compiler to use; otherwise it'll just call gccgo - export GCCGO="${XBPS_CROSS_TRIPLET}-gccgo" - fi -fi - -case "$XBPS_TARGET_MACHINE" in - aarch64*) export GOARCH=arm64;; - armv5*) export GOARCH=arm; export GOARM=5;; - armv6*) export GOARCH=arm; export GOARM=6;; - armv7*) export GOARCH=arm; export GOARM=7;; - i686*) export GOARCH=386;; - x86_64*) export GOARCH=amd64;; - ppc64le*) export GOARCH=ppc64le;; - ppc64*) export GOARCH=ppc64;; - ppc*) export GOARCH=ppc;; - mipsel*) export GOARCH=mipsle;; - mips*) export GOARCH=mips;; -esac - -export GOPATH="${wrksrc}/_build-${pkgname}-xbps" -GOSRCPATH="${GOPATH}/src/${go_import_path}" -export CGO_CFLAGS="$CFLAGS" -export CGO_CPPFLAGS="$CPPFLAGS" -export CGO_CXXFLAGS="$CXXFLAGS" -export CGO_LDFLAGS="$LDFLAGS" -export CGO_ENABLED=1 -export GO111MODULE=auto -case "$XBPS_TARGET_MACHINE" in - *-musl) export GOCACHE="${XBPS_HOSTDIR}/gocache-muslc" ;; - *) export GOCACHE="${XBPS_HOSTDIR}/gocache-glibc" ;; -esac +build_helper+=" go" From 714c7678a2d114c2ae7376740b087ef465a2520b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?= Date: Sun, 14 Nov 2021 22:42:21 +0100 Subject: [PATCH 2/2] New package: teleport-9.3.4 --- srcpkgs/teleport-client | 1 + srcpkgs/teleport/template | 55 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 120000 srcpkgs/teleport-client create mode 100644 srcpkgs/teleport/template diff --git a/srcpkgs/teleport-client b/srcpkgs/teleport-client new file mode 120000 index 000000000000..27d1669ea808 --- /dev/null +++ b/srcpkgs/teleport-client @@ -0,0 +1 @@ +teleport \ No newline at end of file diff --git a/srcpkgs/teleport/template b/srcpkgs/teleport/template new file mode 100644 index 000000000000..048c0cbeaabf --- /dev/null +++ b/srcpkgs/teleport/template @@ -0,0 +1,55 @@ +# Template file for 'teleport' +pkgname=teleport +version=9.3.4 +revision=1 +_webassets_ref="e53be3321bece0a3a7bbbc25b406d6131243409d" +create_wrksrc=yes +build_style=gnu-makefile +build_heler=go +hostmakedepends="go" +short_desc="Identity aware access proxy" +maintainer="Jan Christian Grünhage " +license="Apache-2.0" +homepage="https://goteleport.com/" +distfiles="https://github.com/gravitational/teleport/archive/refs/tags/v${version}.tar.gz + https://github.com/gravitational/webassets/archive/${_webassets_ref}.tar.gz" + +checksum="4561a069e87ab9e9cededa12b8ba1e7373b8aba47ebf48c6f3c02c8b23a0ccd0 + bc31a5400acfc85e842be98055a764da41a83c385420a8afac19a801f4d609c8" +make_dirs="/var/lib/teleport 755 root root" + +do_extract() { + local f curfile + + mkdir -p "${wrksrc}" + for f in ${distfiles}; do + curfile="${f#*>}" + curfile="${curfile##*/}" + cp ${XBPS_SRCDISTDIR}/${pkgname}-${version}/${curfile} "${wrksrc}/${curfile}" + done +} + +post_extract() { + bsdtar -xf "v${version}.tar.gz" + bsdtar -xf ${_webassets_ref}.tar.gz + mv webassets-${_webassets_ref}/* teleport-${version}/webassets + rm v${version}.tar.gz ${_webassets_ref}.tar.gz webassets-${_webassets_ref} -r + mv teleport-${version}/* . + rm teleport-${version} -r +} + +pre_build() { + export ADDFLAGS="-buildmode=pie" +} + +do_install() { + vbin build/teleport +} + +teleport-client_package() { + short_desc+=" - client binaries" + pkg_install() { + vbin build/tsh + vbin build/tctl + } +}