From 4e7326fd47126e8da1124bf4a02de017323ba7e3 Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Fri, 3 May 2024 23:21:10 -0500 Subject: dev-lang/go: drop 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.22.1 Bug: https://bugs.gentoo.org/928539 Signed-off-by: William Hubbs --- dev-lang/go/Manifest | 5 - dev-lang/go/go-1.21.5.ebuild | 210 ------------------------------------------ dev-lang/go/go-1.21.6.ebuild | 210 ------------------------------------------ dev-lang/go/go-1.21.7.ebuild | 210 ------------------------------------------ dev-lang/go/go-1.21.8.ebuild | 210 ------------------------------------------ dev-lang/go/go-1.22.1.ebuild | 213 ------------------------------------------- 6 files changed, 1058 deletions(-) delete mode 100644 dev-lang/go/go-1.21.5.ebuild delete mode 100644 dev-lang/go/go-1.21.6.ebuild delete mode 100644 dev-lang/go/go-1.21.7.ebuild delete mode 100644 dev-lang/go/go-1.21.8.ebuild delete mode 100644 dev-lang/go/go-1.22.1.ebuild diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest index 0fa970ad5053..24ea573a84fe 100644 --- a/dev-lang/go/Manifest +++ b/dev-lang/go/Manifest @@ -1,7 +1,2 @@ -DIST go1.21.5.src.tar.gz 26986890 BLAKE2B a57550a3f586060d8efa93b6c8d9bf3f87d791ebf66767c9a3344983111aa14ed88c71fe44aabe79b64dcdad85426de647eaf5845d9a5cac082b42969f9a27cb SHA512 c064b7cb3c47d8fb99fc181a3cddf327a4b7a8c6af39a8ac568e9d74cd44903141680903ca48673bb02a7a159cce4f32a94f3b37fc65a9549d3518ad7c731fa3 -DIST go1.21.6.src.tar.gz 27058459 BLAKE2B 04909d067f8dc1c1bb45d9d0a87f9d0fedb69b42a4eb89ddb24d19df7c0f77c86c6283b579f3b3f9caa3ffba6ab5f325a71552e37b38ba4082e878bd0bc942a3 SHA512 8472c1c6c3fae9fecfb512a16f18ed531c04c087429a75086b9999069330c1b1e4a01a30c6561b5092169144cbc0d787ec2f5f4a50dfc4f79e74398f16423cfd -DIST go1.21.7.src.tar.gz 26991014 BLAKE2B 7002b8a6662594f9dc44f215f8c76c2d17057a117c6d8b24929b5fa015a7222a1fe56d3091fcabb74f993c22000c3239645b12b94303751053be83336120cfa0 SHA512 5cadc458265deea2650fbbc5b0652e19e858fa7a7b929ea717e82ee4be2af45214a9dfc5b8b799003e83b92aa80141962a472d1d4f0653e97e99df5b68c88e5d -DIST go1.21.8.src.tar.gz 26992984 BLAKE2B bebcd1a0b5e6d844d272fbd351709344a41856d16ebedad5ab58ac905695dcdd8ca29936a0534a895de7d0bffabed395a6169f1671bcca01e449e960405a4b0b SHA512 dde764ee12fbf58a603d31c20ea239805ffec359a90b0aad7575cc857e241393c2adc47d2f00136db5dff2cbe11b90e8d009d67f9329d363e75a0720067123b0 DIST go1.21.9.src.tar.gz 26993426 BLAKE2B 08eb5a78e1d4933de63105a886e0b0d9d8582edbd18b2a40f7655628a3d5627102abf8d25b3190751109273962b731d16c25bdc58b370b6a39faa6e5c3ef3736 SHA512 e1cf7e458d41f8b343c34b7d35dc4a1696bacbad2ad64abac36dbbeaf1e0a1b71cdb32cebb1686c6e5c90bf0ad3474714d09acea010d6c074730c59d71e79f4e -DIST go1.22.1.src.tar.gz 27548577 BLAKE2B 589c2e8677d6787d2ffe68b81722da8aa5d668a7ce09faac9433514729a33e7150a72a35ab313cf3559958069e8ede2a106ba77476d7c6027a5d082bb1f80a52 SHA512 627530c3fa2ea872478e1df8ee20db2ddc3c94581fff4e66bda21ca45a643e9915f97115401f79667cd7e856ccca1b40a842f4c0b509a472c75696e3bdb3a908 DIST go1.22.2.src.tar.gz 27551470 BLAKE2B f8994f7868f14b68d5b57a251ff4b79f26cd2dbee69e93887165a37dbdb74a0004998c2666e0bb1673a0f0efcbe58b10e2437f6ce06340fad004628e3a9cca1c SHA512 f2491d2b5d4ef2dd86ca7820503a2534cd1860822049dc01a6cb40b556a0812cfc4196fa83173765816060253ac949f4165b0fb4b2bed5d45e30d03bb69e434d diff --git a/dev-lang/go/go-1.21.5.ebuild b/dev-lang/go/go-1.21.5.ebuild deleted file mode 100644 index 7588d8461f60..000000000000 --- a/dev-lang/go/go-1.21.5.ebuild +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -# See "Bootstrap" in release notes -GO_BOOTSTRAP_MIN=1.17.13 -MY_PV=${PV/_/} - -inherit toolchain-funcs - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" - ;; - esac -esac - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://go.dev" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2" - -RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" -BDEPEND="|| ( - >=dev-lang/go-${GO_BOOTSTRAP_MIN} - >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" - -# the *.syso files have writable/executable stacks -QA_EXECSTACK='*.syso' - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# This package triggers "unrecognized elf file(s)" notices on riscv. -# https://bugs.gentoo.org/794046 -QA_PREBUILT='.*' - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT+=" strip" - -DOCS=( - CONTRIBUTING.md - PATENTS - README.md - SECURITY.md -) - -go_arch() { - # By chance most portage arch names match Go - local tc_arch=$(tc-arch $@) - case "${tc_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - loong) echo loong64;; - mips) if use abi_mips_o32; then - [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle - elif use abi_mips_n64; then - [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le - fi ;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - riscv) echo riscv64 ;; - s390) echo s390x ;; - *) echo "${tc_arch}";; - esac -} - -go_arm() { - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() { - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() { - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() { - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -PATCHES=( - "${FILESDIR}"/go-never-download-newer-toolchains.patch -) - -src_compile() { - if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - fi - - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="${PWD}" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - use arm && export GOARM=$(go_arm) - use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat') - - cd src - bash -x ./make.bash || die "build failed" -} - -src_test() { - go_cross_compile && return 0 - - cd src - - # https://github.com/golang/go/issues/42005 - rm cmd/link/internal/ld/fallocate_test.go || die - - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild -k || die "tests failed" -} - -src_install() { - dodir /usr/lib/go - # The use of cp is deliberate in order to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - einstalldocs - - insinto /usr/lib/go - doins go.env VERSION - - # testdata directories are not needed on the installed system - rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) - - local bin_path - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - local f x - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - - # install the @golang-rebuild set for Portage - insinto /usr/share/portage/config/sets - newins "${FILESDIR}"/go-sets.conf go.conf -} - -pkg_postinst() { - [[ -z ${REPLACING_VERSIONS} ]] && return - elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" - elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" - elog "due to the static linking nature of go." - elog "If this is not done, the packages compiled with the older" - elog "version of the compiler will not be updated until they are" - elog "updated individually, which could mean they will have" - elog "vulnerabilities." - elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" - elog "See https://bugs.gentoo.org/752153 for more info" -} diff --git a/dev-lang/go/go-1.21.6.ebuild b/dev-lang/go/go-1.21.6.ebuild deleted file mode 100644 index 98b8a72a4f95..000000000000 --- a/dev-lang/go/go-1.21.6.ebuild +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -# See "Bootstrap" in release notes -GO_BOOTSTRAP_MIN=1.17.13 -MY_PV=${PV/_/} - -inherit toolchain-funcs - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm ~arm64 ~loong ~mips ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" - ;; - esac -esac - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://go.dev" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2" - -RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" -BDEPEND="|| ( - >=dev-lang/go-${GO_BOOTSTRAP_MIN} - >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" - -# the *.syso files have writable/executable stacks -QA_EXECSTACK='*.syso' - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# This package triggers "unrecognized elf file(s)" notices on riscv. -# https://bugs.gentoo.org/794046 -QA_PREBUILT='.*' - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT+=" strip" - -DOCS=( - CONTRIBUTING.md - PATENTS - README.md - SECURITY.md -) - -go_arch() { - # By chance most portage arch names match Go - local tc_arch=$(tc-arch $@) - case "${tc_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - loong) echo loong64;; - mips) if use abi_mips_o32; then - [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle - elif use abi_mips_n64; then - [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le - fi ;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - riscv) echo riscv64 ;; - s390) echo s390x ;; - *) echo "${tc_arch}";; - esac -} - -go_arm() { - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() { - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() { - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() { - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -PATCHES=( - "${FILESDIR}"/go-never-download-newer-toolchains.patch -) - -src_compile() { - if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - fi - - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="${PWD}" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - use arm && export GOARM=$(go_arm) - use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat') - - cd src - bash -x ./make.bash || die "build failed" -} - -src_test() { - go_cross_compile && return 0 - - cd src - - # https://github.com/golang/go/issues/42005 - rm cmd/link/internal/ld/fallocate_test.go || die - - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild -k || die "tests failed" -} - -src_install() { - dodir /usr/lib/go - # The use of cp is deliberate in order to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - einstalldocs - - insinto /usr/lib/go - doins go.env VERSION - - # testdata directories are not needed on the installed system - rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) - - local bin_path - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - local f x - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - - # install the @golang-rebuild set for Portage - insinto /usr/share/portage/config/sets - newins "${FILESDIR}"/go-sets.conf go.conf -} - -pkg_postinst() { - [[ -z ${REPLACING_VERSIONS} ]] && return - elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" - elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" - elog "due to the static linking nature of go." - elog "If this is not done, the packages compiled with the older" - elog "version of the compiler will not be updated until they are" - elog "updated individually, which could mean they will have" - elog "vulnerabilities." - elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" - elog "See https://bugs.gentoo.org/752153 for more info" -} diff --git a/dev-lang/go/go-1.21.7.ebuild b/dev-lang/go/go-1.21.7.ebuild deleted file mode 100644 index 7588d8461f60..000000000000 --- a/dev-lang/go/go-1.21.7.ebuild +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -# See "Bootstrap" in release notes -GO_BOOTSTRAP_MIN=1.17.13 -MY_PV=${PV/_/} - -inherit toolchain-funcs - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" - ;; - esac -esac - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://go.dev" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2" - -RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" -BDEPEND="|| ( - >=dev-lang/go-${GO_BOOTSTRAP_MIN} - >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" - -# the *.syso files have writable/executable stacks -QA_EXECSTACK='*.syso' - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# This package triggers "unrecognized elf file(s)" notices on riscv. -# https://bugs.gentoo.org/794046 -QA_PREBUILT='.*' - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT+=" strip" - -DOCS=( - CONTRIBUTING.md - PATENTS - README.md - SECURITY.md -) - -go_arch() { - # By chance most portage arch names match Go - local tc_arch=$(tc-arch $@) - case "${tc_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - loong) echo loong64;; - mips) if use abi_mips_o32; then - [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle - elif use abi_mips_n64; then - [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le - fi ;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - riscv) echo riscv64 ;; - s390) echo s390x ;; - *) echo "${tc_arch}";; - esac -} - -go_arm() { - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() { - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() { - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() { - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -PATCHES=( - "${FILESDIR}"/go-never-download-newer-toolchains.patch -) - -src_compile() { - if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - fi - - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="${PWD}" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - use arm && export GOARM=$(go_arm) - use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat') - - cd src - bash -x ./make.bash || die "build failed" -} - -src_test() { - go_cross_compile && return 0 - - cd src - - # https://github.com/golang/go/issues/42005 - rm cmd/link/internal/ld/fallocate_test.go || die - - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild -k || die "tests failed" -} - -src_install() { - dodir /usr/lib/go - # The use of cp is deliberate in order to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - einstalldocs - - insinto /usr/lib/go - doins go.env VERSION - - # testdata directories are not needed on the installed system - rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) - - local bin_path - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - local f x - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - - # install the @golang-rebuild set for Portage - insinto /usr/share/portage/config/sets - newins "${FILESDIR}"/go-sets.conf go.conf -} - -pkg_postinst() { - [[ -z ${REPLACING_VERSIONS} ]] && return - elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" - elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" - elog "due to the static linking nature of go." - elog "If this is not done, the packages compiled with the older" - elog "version of the compiler will not be updated until they are" - elog "updated individually, which could mean they will have" - elog "vulnerabilities." - elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" - elog "See https://bugs.gentoo.org/752153 for more info" -} diff --git a/dev-lang/go/go-1.21.8.ebuild b/dev-lang/go/go-1.21.8.ebuild deleted file mode 100644 index 7588d8461f60..000000000000 --- a/dev-lang/go/go-1.21.8.ebuild +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -# See "Bootstrap" in release notes -GO_BOOTSTRAP_MIN=1.17.13 -MY_PV=${PV/_/} - -inherit toolchain-funcs - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" - ;; - esac -esac - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://go.dev" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2" - -RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" -BDEPEND="|| ( - >=dev-lang/go-${GO_BOOTSTRAP_MIN} - >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" - -# the *.syso files have writable/executable stacks -QA_EXECSTACK='*.syso' - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# This package triggers "unrecognized elf file(s)" notices on riscv. -# https://bugs.gentoo.org/794046 -QA_PREBUILT='.*' - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT+=" strip" - -DOCS=( - CONTRIBUTING.md - PATENTS - README.md - SECURITY.md -) - -go_arch() { - # By chance most portage arch names match Go - local tc_arch=$(tc-arch $@) - case "${tc_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - loong) echo loong64;; - mips) if use abi_mips_o32; then - [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle - elif use abi_mips_n64; then - [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le - fi ;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - riscv) echo riscv64 ;; - s390) echo s390x ;; - *) echo "${tc_arch}";; - esac -} - -go_arm() { - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() { - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() { - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() { - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -PATCHES=( - "${FILESDIR}"/go-never-download-newer-toolchains.patch -) - -src_compile() { - if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - fi - - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="${PWD}" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - use arm && export GOARM=$(go_arm) - use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat') - - cd src - bash -x ./make.bash || die "build failed" -} - -src_test() { - go_cross_compile && return 0 - - cd src - - # https://github.com/golang/go/issues/42005 - rm cmd/link/internal/ld/fallocate_test.go || die - - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild -k || die "tests failed" -} - -src_install() { - dodir /usr/lib/go - # The use of cp is deliberate in order to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - einstalldocs - - insinto /usr/lib/go - doins go.env VERSION - - # testdata directories are not needed on the installed system - rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) - - local bin_path - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - local f x - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - - # install the @golang-rebuild set for Portage - insinto /usr/share/portage/config/sets - newins "${FILESDIR}"/go-sets.conf go.conf -} - -pkg_postinst() { - [[ -z ${REPLACING_VERSIONS} ]] && return - elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" - elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" - elog "due to the static linking nature of go." - elog "If this is not done, the packages compiled with the older" - elog "version of the compiler will not be updated until they are" - elog "updated individually, which could mean they will have" - elog "vulnerabilities." - elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" - elog "See https://bugs.gentoo.org/752153 for more info" -} diff --git a/dev-lang/go/go-1.22.1.ebuild b/dev-lang/go/go-1.22.1.ebuild deleted file mode 100644 index 38f5a0419240..000000000000 --- a/dev-lang/go/go-1.22.1.ebuild +++ /dev/null @@ -1,213 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -# See "Bootstrap" in release notes -GO_BOOTSTRAP_MIN=1.20.14 -MY_PV=${PV/_/} - -inherit toolchain-funcs - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" - ;; - esac -esac - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://go.dev" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2" - -RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" -BDEPEND="|| ( - >=dev-lang/go-${GO_BOOTSTRAP_MIN} - >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" - -# the *.syso files have writable/executable stacks -QA_EXECSTACK='*.syso' - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# This package triggers "unrecognized elf file(s)" notices on riscv. -# https://bugs.gentoo.org/794046 -QA_PREBUILT='.*' - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT=" strip" - -DOCS=( - CONTRIBUTING.md - PATENTS - README.md - SECURITY.md -) - -go_arch() { - # By chance most portage arch names match Go - local tc_arch=$(tc-arch $@) - case "${tc_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - loong) echo loong64;; - mips) if use abi_mips_o32; then - [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle - elif use abi_mips_n64; then - [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le - fi ;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - riscv) echo riscv64 ;; - s390) echo s390x ;; - *) echo "${tc_arch}";; - esac -} - -go_arm() { - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() { - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() { - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() { - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -PATCHES=( - "${FILESDIR}"/go-never-download-newer-toolchains.patch -) - -src_compile() { - if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - fi - - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="${PWD}" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - use arm && export GOARM=$(go_arm) - use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat') - - cd src - bash -x ./make.bash || die "build failed" -} - -src_test() { - go_cross_compile && return 0 - - cd src - - # https://github.com/golang/go/issues/42005 - rm cmd/link/internal/ld/fallocate_test.go || die - - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild -k || die "tests failed" - cd .. - rm -fr pkg/*_race || die - rm -fr pkg/obj/go-build || die -} - -src_install() { - dodir /usr/lib/go - # The use of cp is deliberate in order to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - einstalldocs - - insinto /usr/lib/go - doins go.env VERSION* - - # testdata directories are not needed on the installed system - rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) - - local bin_path - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - local f x - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - - # install the @golang-rebuild set for Portage - insinto /usr/share/portage/config/sets - newins "${FILESDIR}"/go-sets.conf go.conf -} - -pkg_postinst() { - [[ -z ${REPLACING_VERSIONS} ]] && return - elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" - elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" - elog "due to the static linking nature of go." - elog "If this is not done, the packages compiled with the older" - elog "version of the compiler will not be updated until they are" - elog "updated individually, which could mean they will have" - elog "vulnerabilities." - elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" - elog "See https://bugs.gentoo.org/752153 for more info" -} -- cgit v1.2.3-65-gdbad