Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 825663 Details for
Bug 878489
dev-lang/go-1.19.2 fails to build
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
the typical requested command output all in one file
gocompilefailure.log (text/x-log), 79.67 KB, created by
dbobdies
on 2022-10-28 02:08:59 UTC
(
hide
)
Description:
the typical requested command output all in one file
Filename:
MIME Type:
Creator:
dbobdies
Created:
2022-10-28 02:08:59 UTC
Size:
79.67 KB
patch
obsolete
>Portage 3.0.38.1 (python 3.10.8-final-0, default/linux/amd64/17.1/hardened, gcc-11.3.0, glibc-2.35-r8, 5.15.74-gentoo-dist-hardened x86_64) >================================================================= > System Settings >================================================================= >System uname: Linux-5.15.74-gentoo-dist-hardened-x86_64-Intel-R-_Core-TM-_i7-8565U_CPU_@_1.80GHz-with-glibc2.35 >KiB Mem: 16199476 total, 429620 free >KiB Swap: 14150652 total, 11545084 free >Timestamp of repository gentoo: Wed, 26 Oct 2022 00:30:01 +0000 >Head commit of repository gentoo: 35c5ad765e20f14e514f79b77d633a4c2e220d4d >Timestamp of repository frr-gentoo: Wed, 19 Oct 2022 17:46:50 +0000 >Head commit of repository frr-gentoo: f6e2995daa0b423999d63336e9a92a1f5318bf18 > >Timestamp of repository pentoo: Tue, 25 Oct 2022 04:01:55 +0000 >Head commit of repository pentoo: b5ca641cc52e3475b8fab523766e205f9be88dcd > >Timestamp of repository torbrowser: Fri, 21 Oct 2022 23:01:53 +0000 >Head commit of repository torbrowser: 5b5499df9ec3364c0a0e33a66f5077dc07cfbd3f > >sh bash 5.1_p16-r1 >ld GNU ld (Gentoo 2.38 p4) 2.38 >distcc 3.4 x86_64-pc-linux-gnu [disabled] >app-misc/pax-utils: 1.3.5::gentoo >app-shells/bash: 5.1_p16-r1::gentoo >dev-java/java-config: 2.3.1::gentoo >dev-lang/perl: 5.34.1-r3::gentoo >dev-lang/python: 3.8.15::gentoo, 3.9.15::gentoo, 3.10.8::gentoo >dev-lang/rust: 1.64.0-r1::gentoo >dev-util/cmake: 3.24.2::gentoo >dev-util/meson: 0.63.2-r1::gentoo >sys-apps/baselayout: 2.8::gentoo >sys-apps/openrc: 0.45.2-r1::gentoo >sys-apps/sandbox: 2.29::gentoo >sys-devel/autoconf: 2.13-r2::gentoo, 2.71-r1::gentoo >sys-devel/automake: 1.16.5::gentoo >sys-devel/binutils: 2.38-r2::gentoo >sys-devel/binutils-config: 5.4.1::gentoo >sys-devel/clang: 14.0.6-r1::gentoo >sys-devel/gcc: 11.3.0::gentoo >sys-devel/gcc-config: 2.5-r1::gentoo >sys-devel/libtool: 2.4.7::gentoo >sys-devel/lld: 14.0.6-r1::gentoo >sys-devel/llvm: 14.0.6-r2::gentoo >sys-devel/make: 4.3::gentoo >sys-kernel/linux-headers: 5.15-r3::gentoo (virtual/os-headers) >sys-libs/glibc: 2.35-r8::gentoo >Repositories: > >gentoo > location: /var/db/repos/gentoo > sync-type: rsync > sync-uri: rsync://rsync.gentoo.org/gentoo-portage > priority: -1000 > sync-rsync-extra-opts: > sync-rsync-verify-metamanifest: yes > sync-rsync-verify-max-age: 24 > sync-rsync-verify-jobs: 1 > >frr-gentoo > location: /var/db/repos/frr-gentoo > sync-type: git > sync-uri: https://github.com/gentoo-mirror/frr-gentoo.git > masters: gentoo > >pentoo > location: /var/db/repos/pentoo > sync-type: git > sync-uri: https://github.com/gentoo-mirror/pentoo.git > masters: gentoo > >torbrowser > location: /var/db/repos/torbrowser > sync-type: git > sync-uri: https://github.com/gentoo-mirror/torbrowser.git > masters: gentoo > >ACCEPT_KEYWORDS="amd64" >ACCEPT_LICENSE="@FREE" >CBUILD="x86_64-pc-linux-gnu" >CFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >CHOST="x86_64-pc-linux-gnu" >CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/i2pd/certificates" >CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" >CXXFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >DISTDIR="/var/cache/distfiles" >EMERGE_DEFAULT_OPTS=" --backtrack 1000 --with-bdeps y --complete-graph y --tree --unordered-display --alert --color y --keep-going y " >ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME" >FCFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" >FFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >GENTOO_MIRRORS="rsync://gentoo.gossamerhost.com/gentoo-distfiles/ rsync://mirrors.tera-byte.com/gentoo https://mirror.csclub.uwaterloo.ca/gentoo-distfiles/ rsync://mirror.csclub.uwaterloo.ca/gentoo-distfiles rsync://gentoo.bloodhost.ru/gentoo-distfiles https://mirror.yandex.ru/gentoo-distfiles/" >LANG="en_US.utf8" >LDFLAGS="-Wl,-O1 -Wl,--as-needed" >MAKEOPTS="-j7" >PKGDIR="/var/cache/binpkgs" >PORTAGE_CONFIGROOT="/" >PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" >PORTAGE_TMPDIR="/var/tmp" >SHELL="/bin/bash" >USE="X acl activefilter alsa amd64 apparmor archive atm autotype bash-completion bcrypt bpf browser bzip2 caps capstone clang cli clippy connection-sharing crypt cryptsetup dbus dmabuf dnssec dri dtrace echo-cancel efi egl elogind eme-free ffmpeg filecaps firewalld firmware flac fortran gdbm georeplication glusterfs gnome gphoto2 gr-audio gtk gui hackrf hardened hpn hwloc i2p-hardening iconv icu infiniband io-uring ipv6 iscsi jpeg jpeg2k lcms ldns libglvnd libinput libtirpc libvirt lkrn lz4 lzo man modemmanager mpfr multilib nautilus ncurses networkmanager nftables nls notification nptl numa office opengl openmp pam parted pcap pcre pie pipewire pipewire-alsa png policykit qrcode radius rdma readline resolvconf sasl scanner screencast seccomp slirp snappy sound-server spell spellcheck split-usr sqlite ssh ssl ssp svg system-zlib systemtap telepathy test-rust text tiff tor-hardening udev unicode usb usbredir v4l vaapi vde verify-sig virgl virtualbox wallpapers wayland widgets wireshark-plugins xattr xcsecurity xml xmss xtpax xxhash zeroconf zlib zstd" ABI_X86="64" ADA_TARGET="gnat_2020" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput" KERNEL="linux" L10N="en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" QEMU_SOFTMMU_TARGETS="x86_64 arm" QEMU_USER_TARGETS="x86_64" RUBY_TARGETS="ruby27" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account" >Unset: ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS > >[[32;01mebuild[39;49;00m [36;01mU[39;49;00m ] [32;01mdev-lang/go-1.19.2[39;49;00m [34;01m[1.18.5][39;49;00m CPU_FLAGS_X86="[31;01msse2[39;49;00m" >[32m * [39;49;00mPackage: dev-lang/go-1.19.2:0/1.19.2 >[32m * [39;49;00mRepository: gentoo >[32m * [39;49;00mMaintainer: williamh@gentoo.org >[32m * [39;49;00mUSE: abi_x86_64 amd64 cpu_flags_x86_sse2 elibc_glibc kernel_linux userland_GNU >[32m * [39;49;00mFEATURES: network-sandbox sandbox userpriv usersandbox >>>> Unpacking source... >>>> Unpacking go1.19.2.src.tar.gz to /var/tmp/portage/dev-lang/go-1.19.2/work >>>> Source unpacked in /var/tmp/portage/dev-lang/go-1.19.2/work >>>> Preparing source in /var/tmp/portage/dev-lang/go-1.19.2/work/go ... >>>> Source prepared. >>>> Configuring source in /var/tmp/portage/dev-lang/go-1.19.2/work/go ... >>>> Source configured. >>>> Compiling source in /var/tmp/portage/dev-lang/go-1.19.2/work/go ... >+ set -e >+ '[' '!' -f run.bash ']' >+ '[' '' '!=' '' ']' >+ case "$(uname)" in >++ uname >+ ld --version >+ grep 'gold.* 2\.20' >+ for se_mount in /selinux /sys/fs/selinux >+ '[' -d /selinux -a -f /selinux/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ']' >+ for se_mount in /selinux /sys/fs/selinux >+ '[' -d /sys/fs/selinux -a -f /sys/fs/selinux/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ']' >++ uname -s >+ '[' Linux = GNU/kFreeBSD ']' >+ '[' -z '' ']' >+ type readelf >+ echo 'int main() { return 0; }' >+ x86_64-pc-linux-gnu-gcc -o ./test-musl-ldso -x c - >++ readelf -l ./test-musl-ldso >++ grep interpreter: >++ sed -e 's/^.*interpreter: \(.*\)[]]/\1/' >+ LDSO=/lib64/ld-linux-x86-64.so.2 >+ '[' -z /lib64/ld-linux-x86-64.so.2 ']' >+ export GO_LDSO=/lib64/ld-linux-x86-64.so.2 >+ GO_LDSO=/lib64/ld-linux-x86-64.so.2 >+ rm -f ./test-musl-ldso >+ rm -f ./runtime/runtime_defs.go >+ verbose=false >+ vflag= >+ '[' '' = -v ']' >+ goroot_bootstrap_set=true >+ '[' -z /usr/lib/go ']' >+ export GOROOT_BOOTSTRAP >++ cd .. >++ pwd >+ export GOROOT=/var/tmp/portage/dev-lang/go-1.19.2/work/go >+ GOROOT=/var/tmp/portage/dev-lang/go-1.19.2/work/go >+ IFS=' >' >++ type -ap go >+ for go_exe in $(type -ap go) >+ '[' '!' -x /usr/lib/go/bin/go ']' >+ unset IFS >+ '[' '!' -x /usr/lib/go/bin/go ']' >++ GOOS= >++ GOARCH= >++ GOEXPERIMENT= >++ /usr/lib/go/bin/go version >++ sed 's/go version //' >+ GOROOT_BOOTSTRAP_VERSION='go1.18.5 linux/amd64' >+ echo 'Building Go cmd/dist using /usr/lib/go. (go1.18.5 linux/amd64)' >Building Go cmd/dist using /usr/lib/go. (go1.18.5 linux/amd64) >+ false >+ '[' /usr/lib/go = /var/tmp/portage/dev-lang/go-1.19.2/work/go ']' >+ rm -f cmd/dist/dist >+ GOROOT=/usr/lib/go >+ GOOS= >+ GOARCH= >+ GO111MODULE=off >+ GOEXPERIMENT= >+ GOENV=off >+ GOFLAGS= >+ /usr/lib/go/bin/go build -o cmd/dist/dist ./cmd/dist >++ ./cmd/dist/dist env -p >+ eval 'GO111MODULE=""' 'GOARCH="amd64"' 'GOBIN="/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin"' 'GOCACHE="/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/obj/go-build"' 'GODEBUG=""' 'GOENV="off"' 'GOFLAGS=""' 'GOHOSTARCH="amd64"' 'GOHOSTOS="linux"' 'GOOS="linux"' 'GOPROXY=""' 'GOROOT="/var/tmp/portage/dev-lang/go-1.19.2/work/go"' 'GOTMPDIR=""' 'GOTOOLDIR="/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/tool/linux_amd64"' 'GOAMD64="v1"' 'GOWORK="off"' 'PATH="/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin:/usr/lib/portage/python3.10/ebuild-helpers/xattr:/usr/lib/portage/python3.10/ebuild-helpers:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/14/bin"' >++ GO111MODULE= >++ GOARCH=amd64 >++ GOBIN=/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin >++ GOCACHE=/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/obj/go-build >++ GODEBUG= >++ GOENV=off >++ GOFLAGS= >++ GOHOSTARCH=amd64 >++ GOHOSTOS=linux >++ GOOS=linux >++ GOPROXY= >++ GOROOT=/var/tmp/portage/dev-lang/go-1.19.2/work/go >++ GOTMPDIR= >++ GOTOOLDIR=/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/tool/linux_amd64 >++ GOAMD64=v1 >++ GOWORK=off >++ PATH=/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin:/usr/lib/portage/python3.10/ebuild-helpers/xattr:/usr/lib/portage/python3.10/ebuild-helpers:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/14/bin >+ '[' '' = true ']' >+ false >+ '[' '' = --dist-tool ']' >+ ./cmd/dist/dist bootstrap -a >Building Go toolchain1 using /usr/lib/go. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >go tool dist: FAILED: /usr/lib/go/bin/go install -gcflags=-l -tags=math_big_pure_go compiler_bootstrap purego bootstrap/cmd/...: exit status 1 > [31;01m*[0m ERROR: dev-lang/go-1.19.2::gentoo failed (compile phase): > [31;01m*[0m build failed > [31;01m*[0m > [31;01m*[0m Call stack: > [31;01m*[0m ebuild.sh, line 122: Called src_compile > [31;01m*[0m environment, line 1297: Called die > [31;01m*[0m The specific snippet of code: > [31;01m*[0m bash -x ./make.bash || die "build failed" > [31;01m*[0m > [31;01m*[0m If you need support, post the output of `emerge --info '=dev-lang/go-1.19.2::gentoo'`, > [31;01m*[0m the complete build log and the output of `emerge -pqv '=dev-lang/go-1.19.2::gentoo'`. > [31;01m*[0m The complete build log is located at '/var/tmp/portage/dev-lang/go-1.19.2/temp/build.log'. > [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/dev-lang/go-1.19.2/temp/environment'. > [31;01m*[0m Working directory: '/var/tmp/portage/dev-lang/go-1.19.2/work/go/src' > [31;01m*[0m S: '/var/tmp/portage/dev-lang/go-1.19.2/work/go' >declare -x ABI="amd64" >declare -x ABI_MIPS="" >declare -x ABI_S390="" >declare -x ABI_X86="64" >declare -x ADA_TARGET="" >declare -x ALSA_CARDS="" >declare -x AMDGPU_TARGETS="" >declare -x ANT_HOME="/usr/share/ant" >declare -x APACHE2_MODULES="" >declare -x APACHE2_MPMS="" >declare -x ARCH="amd64" >declare BDEPEND="|| ( > dev-lang/go > dev-lang/go-bootstrap ) " >declare -x BINPKG_FORMAT="xpak" >declare -x BINPKG_GPG_SIGNING_BASE_COMMAND="/usr/bin/flock /run/lock/portage-binpkg-gpg.lock /usr/bin/gpg --sign --armor [PORTAGE_CONFIG]" >declare -x BINPKG_GPG_SIGNING_DIGEST="SHA512" >declare -x BINPKG_GPG_VERIFY_BASE_COMMAND="/usr/bin/gpg --verify --batch --no-tty --no-auto-check-trustdb --status-fd 2 [PORTAGE_CONFIG] [SIGNATURE]" >declare -x BINPKG_GPG_VERIFY_GPG_HOME="/etc/portage/gnupg" >declare -x BOOTSTRAP_USE="unicode internal-glib pkg-config split-usr xml python_targets_python3_10 multilib hardened pic xtpax -jit -orc" >declare -x CALLIGRA_FEATURES="" >declare -x CAMERAS="" >declare -x CATKIN_PREFIX_PATH="/usr" >declare -x CBUILD="x86_64-pc-linux-gnu" >declare -x CFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >declare -x CFLAGS_amd64="-m64" >declare -x CFLAGS_default >declare -x CFLAGS_x32="-mx32" >declare -x CFLAGS_x86="-m32 -mfpmath=sse" >declare -x CHOST="x86_64-pc-linux-gnu" >declare -x CHOST_amd64="x86_64-pc-linux-gnu" >declare -x CHOST_default="x86_64-pc-linux-gnu" >declare -x CHOST_x32="x86_64-pc-linux-gnux32" >declare -x CHOST_x86="i686-pc-linux-gnu" >declare -x COLLECTD_PLUGINS="" >declare -x COMMON_FLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >declare -x CPU_FLAGS_ARM="" >declare -x CPU_FLAGS_PPC="" >declare -x CPU_FLAGS_X86="sse2" >declare -x CTARGET="x86_64-pc-linux-gnu" >declare -x CTARGET_default="x86_64-pc-linux-gnu" >declare -x CURL_SSL="" >declare -x CXXFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >declare -x DCC_EMAILLOG_WHOM_TO_BLAME="" >declare -x DEBUGBUILD="1" >declare -x DEFAULT_ABI="amd64" >declare -x DEFINED_PHASES=" compile install postinst test" >declare DEPEND="" >declare DESCRIPTION="A concurrent garbage collected and typesafe programming language" >declare -x DIROPTIONS="-m0755" >declare -x DOAS_USER="tinywizard" >declare -a DOCS=([0]="CONTRIBUTING.md" [1]="PATENTS" [2]="README.md" [3]="SECURITY.md") >declare -x EAPI="7" >declare -x ELIBC="glibc" >declare -x ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME" >declare -- EPOCHREALTIME="1666920000.556397" >declare -- EPOCHSECONDS="1666920000" >declare -x ETCKEEPER_CONF_DIR="/etc/etckeeper" >declare -x EXEOPTIONS="-m0755" >declare -x FCFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >declare -x FETCHCOMMAND_SSH="bash -c \"x=\\\${2#ssh://} ; host=\\\${x%%/*} ; port=\\\${host##*:} ; host=\\\${host%:*} ; [[ \\\${host} = \\\${port} ]] && port= ; exec rsync --rsh=\\\"ssh \\\${port:+-p\\\${port}} \\\${3}\\\" -avP \\\"\\\${host}:/\\\${x#*/}\\\" \\\"\\\$1\\\"\" rsync \"\${DISTDIR}/\${FILE}\" \"\${URI}\" \"\${PORTAGE_SSH_OPTS}\"" >declare -x FFLAGS=" -mtune=skylake -pipe -O2 -march=skylake " >declare -x FFTOOLS="" >declare -x GCC_SPECS="" >declare -x GPG_VERIFY_GROUP_DROP="nogroup" >declare -x GPG_VERIFY_USER_DROP="nobody" >declare -x GPSD_PROTOCOLS="" >declare -x GRUB_PLATFORMS="" >declare -x GSETTINGS_BACKEND="dconf" >declare HOMEPAGE="https://go.dev" >declare IDEPEND="" >declare -x INHERITED=" toolchain-funcs multilib" >declare -x INPUT_DEVICES="" >declare -x INSOPTIONS="-m0644" >declare IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2 " >declare -x IUSE_EFFECTIVE="abi_mips_n64 abi_mips_o32 abi_x86_64 alpha amd64 amd64-linux arm arm64 arm64-macos cpu_flags_x86_sse2 elibc_Cygwin elibc_Darwin elibc_SunOS elibc_Winnt elibc_bionic elibc_glibc elibc_mingw elibc_musl hppa ia64 kernel_Darwin kernel_SunOS kernel_Winnt kernel_linux loong m68k mips ppc ppc-macos ppc64 ppc64-linux prefix prefix-guest prefix-stack riscv s390 sparc sparc-solaris sparc64-solaris userland_BSD userland_GNU x64-cygwin x64-macos x64-solaris x64-winnt x86 x86-linux x86-solaris x86-winnt" >declare -x IUSE_IMPLICIT="abi_x86_64 prefix prefix-guest prefix-stack" >declare -x KERNEL="linux" >declare -x KERNEL_ABI="amd64" >declare -x KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" >declare -x L10N="" >declare -x LANG="en_US.utf8" >declare -x LCD_DEVICES="" >declare -x LC_COLLATE="C" >declare -x LC_CTYPE="C.UTF-8" >declare -x LC_MESSAGES="C" >declare -x LDFLAGS="-Wl,-O1 -Wl,--as-needed" >declare -x LDFLAGS_amd64="-m elf_x86_64" >declare -x LDFLAGS_default >declare -x LDFLAGS_x32="-m elf32_x86_64" >declare -x LDFLAGS_x86="-m elf_i386" >declare -x LIBDIR_amd64="lib64" >declare -x LIBDIR_default="lib" >declare -x LIBDIR_x32="libx32" >declare -x LIBDIR_x86="lib" >declare -x LIBOPTIONS="-m0644" >declare -x LIBREOFFICE_EXTENSIONS="" >declare -x LICENSE="BSD" >declare -x LLVM_TARGETS="" >declare -x LUA_SINGLE_TARGET="" >declare -x LUA_TARGETS="" >declare -x MAKEOPTS="-j7" >declare -x MANPAGER="manpager" >declare -x MONKEYD_PLUGINS="" >declare -x MOZ_GMP_PATH="/usr/lib64/nsbrowser/plugins/gmp-gmpopenh264/system-installed" >declare -x MSF_DATABASE_CONFIG="/usr/lib/metasploit/config/database.yml" >declare -x MSF_LOCAL_LIB="/usr/lib/metasploit/lib/metasm" >declare -x MSF_ROOT="/usr/lib/metasploit" >declare -x MULTILIB_ABIS="amd64 x86" >declare -x MULTILIB_STRICT_DENY="64-bit.*shared object" >declare -x MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib" >declare -x MULTILIB_STRICT_EXEMPT="(perl5|gcc|binutils|eclipse-3|debug|portage|udev|systemd|clang|python-exec|llvm)" >declare -- MY_PV="1.19.2" >declare -x NGINX_MODULES_HTTP="" >declare -x NGINX_MODULES_MAIL="" >declare -x NGINX_MODULES_STREAM="" >declare -x OFFICE_IMPLEMENTATION="" >declare -x OPENMPI_FABRICS="" >declare -x OPENMPI_OFED_FEATURES="" >declare -x OPENMPI_RM="" >declare -x PATH="/usr/lib/portage/python3.10/ebuild-helpers/xattr:/usr/lib/portage/python3.10/ebuild-helpers:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/14/bin" >declare -x PAX_MARKINGS="none" >declare PDEPEND="" >declare -x PHP_TARGETS="" >declare -x PORTAGE_COMPRESSION_COMMAND="zstd -9" >declare -a PORTAGE_DOCOMPRESS=([0]="/usr/share/doc" [1]="/usr/share/info" [2]="/usr/share/man") >declare -x PORTAGE_DOCOMPRESS_SIZE_LIMIT="128" >declare -a PORTAGE_DOCOMPRESS_SKIP=([0]="/usr/share/doc/go-1.19.2/html") >declare -a PORTAGE_DOSTRIP=() >declare -a PORTAGE_DOSTRIP_SKIP=() >declare -x PORTAGE_SCHEDULING_POLICY="idle" >declare -x POSTGRES_TARGETS="" >declare -x PROFILE_IS_HARDENED="1" >declare -x PROFILE_ONLY_VARIABLES="ARCH ELIBC IUSE_IMPLICIT KERNEL USERLAND USE_EXPAND_IMPLICIT USE_EXPAND_UNPREFIXED USE_EXPAND_VALUES_ARCH USE_EXPAND_VALUES_ELIBC USE_EXPAND_VALUES_KERNEL USE_EXPAND_VALUES_USERLAND" >declare -- PROPERTIES="" >declare -x PYTHONDONTWRITEBYTECODE="1" >declare -x PYTHON_SINGLE_TARGET="" >declare -x PYTHON_TARGETS="" >declare -- QA_EXECSTACK="*.syso" >declare -- QA_FLAGS_IGNORED=".*" >declare -- QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" >declare -- QA_PREBUILT=".*" >declare -x QEMU_SOFTMMU_TARGETS="" >declare -x QEMU_USER_TARGETS="" >declare RDEPEND="" >declare REPOSITORY >declare REQUIRED_USE="" >declare RESTRICT="strip" >declare -x RESUMECOMMAND_SSH="bash -c \"x=\\\${2#ssh://} ; host=\\\${x%%/*} ; port=\\\${host##*:} ; host=\\\${host%:*} ; [[ \\\${host} = \\\${port} ]] && port= ; exec rsync --rsh=\\\"ssh \\\${port:+-p\\\${port}} \\\${3}\\\" -avP \\\"\\\${host}:/\\\${x#*/}\\\" \\\"\\\$1\\\"\" rsync \"\${DISTDIR}/\${FILE}\" \"\${URI}\" \"\${PORTAGE_SSH_OPTS}\"" >declare -x ROS_MESSAGES="" >declare -x ROS_PACKAGE_PATH="/usr/share/ros_packages" >declare -x ROS_ROOT="/usr/share/ros" >declare -x RUBY_TARGETS="" >declare -x S="/var/tmp/portage/dev-lang/go-1.19.2/work/go" >declare -x SANDBOX_DEBUG="0" >declare -x SANDBOX_DENY="" >declare -x SANDBOX_METHOD="any" >declare -x SANDBOX_PREDICT="/var/tmp/portage/dev-lang/go-1.19.2/homedir:/dev/crypto:/var/cache/man:/dev/random:/proc/self/coredump_filter:/dev/random:/proc/self/coredump_filter:/dev/random:/proc/self/coredump_filter:/var/cache/fontconfig" >declare -x SANDBOX_READ="/:/var/tmp/portage" >declare -x SANDBOX_VERBOSE="1" >declare -x SANDBOX_WRITE=":/dev/console:/dev/fd:/dev/full:/dev/null:/dev/ptmx:/dev/pts/:/dev/pty:/dev/shm:/dev/tts:/dev/tty:/dev/vc/:/dev/zero:/proc/self/fd:/tmp/:/usr/lib/cf:/usr/lib/conftest:/usr/lib32/cf:/usr/lib32/conftest:/usr/lib64/cf:/usr/lib64/conftest:/usr/tmp/:/usr/tmp/cf:/usr/tmp/conftest:/var/tmp/:/var/tmp/portage:/var/tmp/portage/dev-lang/go-1.19.2/homedir/.bash_history" >declare -x SANE_BACKENDS="" >declare -x SHELL="/bin/bash" >declare -x SLOT="0/1.19.2" >declare -i SRANDOM="2119339167" >declare SRC_URI="https://storage.googleapis.com/golang/go1.19.2.src.tar.gz " >declare -x SYMLINK_LIB="no" >declare -x TERMINFO_DIRS="/usr/share/st/terminfo" >declare -x TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE="1" >declare -x UNCACHED_ERR_FD="" >declare -x USE="abi_x86_64 amd64 cpu_flags_x86_sse2 elibc_glibc kernel_linux userland_GNU" >declare -x USERLAND="GNU" >declare -x USE_EXPAND_IMPLICIT="ARCH ELIBC KERNEL USERLAND" >declare -x USE_EXPAND_UNPREFIXED="ARCH" >declare -x USE_EXPAND_VALUES_ARCH="alpha amd64 amd64-linux arm arm64 arm64-macos hppa ia64 loong m68k mips ppc ppc64 ppc64-linux ppc-macos riscv s390 sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x64-winnt x86 x86-linux x86-solaris x86-winnt" >declare -x USE_EXPAND_VALUES_ELIBC="bionic Cygwin Darwin glibc mingw musl SunOS Winnt" >declare -x USE_EXPAND_VALUES_KERNEL="Darwin linux SunOS Winnt" >declare -x USE_EXPAND_VALUES_USERLAND="BSD GNU" >declare -x UWSGI_PLUGINS="" >declare -x VIDEOCARDS="nouveau intel -amdgpu -radeon" >declare -x VIDEO_CARDS="" >declare -x VOICEMAIL_STORAGE="" >declare -x XDG_CONFIG_DIRS="/etc/xdg" >declare -x XDG_DATA_DIRS="/usr/local/share:/usr/share:/usr/share/gdm" >declare -x XTABLES_ADDONS="" >declare -x _E_DESTTREE_="/usr" >declare -x _E_DOCDESTTREE_="" >declare -x _E_EXEDESTTREE_="" >declare -x _E_INSDESTTREE_="" >declare -- _MULTILIB_ECLASS="1" >declare -- _TOOLCHAIN_FUNCS_ECLASS="1" >declare -x enable_year2038="no" >__eapi6_src_install () >{ > if [[ -f Makefile || -f GNUmakefile || -f makefile ]]; then > emake DESTDIR="${D}" install; > fi; > einstalldocs >} >__eapi6_src_prepare () >{ > if ___is_indexed_array_var PATCHES; then > [[ ${#PATCHES[@]} -gt 0 ]] && eapply "${PATCHES[@]}"; > else > if [[ -n ${PATCHES} ]]; then > eapply ${PATCHES}; > fi; > fi; > eapply_user >} >__eapi7_ver_compare () >{ > local va=${1} vb=${2} a an al as ar b bn bl bs br re LC_ALL=C; > re="^([0-9]+(\.[0-9]+)*)([a-z]?)((_(alpha|beta|pre|rc|p)[0-9]*)*)(-r[0-9]+)?$"; > [[ ${va} =~ ${re} ]] || die "${FUNCNAME}: invalid version: ${va}"; > an=${BASH_REMATCH[1]}; > al=${BASH_REMATCH[3]}; > as=${BASH_REMATCH[4]}; > ar=${BASH_REMATCH[7]}; > [[ ${vb} =~ ${re} ]] || die "${FUNCNAME}: invalid version: ${vb}"; > bn=${BASH_REMATCH[1]}; > bl=${BASH_REMATCH[3]}; > bs=${BASH_REMATCH[4]}; > br=${BASH_REMATCH[7]}; > __eapi7_ver_compare_int "${an%%.*}" "${bn%%.*}" || return; > while [[ ${an} == *.* && ${bn} == *.* ]]; do > an=${an#*.}; > bn=${bn#*.}; > a=${an%%.*}; > b=${bn%%.*}; > if [[ ${a} == 0* || ${b} == 0* ]]; then > [[ ${a} =~ 0+$ ]] && a=${a%"${BASH_REMATCH[0]}"}; > [[ ${b} =~ 0+$ ]] && b=${b%"${BASH_REMATCH[0]}"}; > [[ ${a} > ${b} ]] && return 3; > [[ ${a} < ${b} ]] && return 1; > else > __eapi7_ver_compare_int "${a}" "${b}" || return; > fi; > done; > [[ ${an} == *.* ]] && return 3; > [[ ${bn} == *.* ]] && return 1; > [[ ${al} > ${bl} ]] && return 3; > [[ ${al} < ${bl} ]] && return 1; > as=${as#_}${as:+_}; > bs=${bs#_}${bs:+_}; > while [[ -n ${as} && -n ${bs} ]]; do > a=${as%%_*}; > b=${bs%%_*}; > if [[ ${a%%[0-9]*} == "${b%%[0-9]*}" ]]; then > __eapi7_ver_compare_int "${a##*[a-z]}" "${b##*[a-z]}" || return; > else > [[ ${a%%[0-9]*} == p ]] && return 3; > [[ ${b%%[0-9]*} == p ]] && return 1; > [[ ${a} > ${b} ]] && return 3 || return 1; > fi; > as=${as#*_}; > bs=${bs#*_}; > done; > if [[ -n ${as} ]]; then > [[ ${as} == p[_0-9]* ]] && return 3 || return 1; > else > if [[ -n ${bs} ]]; then > [[ ${bs} == p[_0-9]* ]] && return 1 || return 3; > fi; > fi; > __eapi7_ver_compare_int "${ar#-r}" "${br#-r}" || return; > return 2 >} >__eapi7_ver_compare_int () >{ > local a=$1 b=$2 d=$(( ${#1}-${#2} )); > if [[ ${d} -gt 0 ]]; then > printf -v b "%0${d}d%s" 0 "${b}"; > else > if [[ ${d} -lt 0 ]]; then > printf -v a "%0$(( -d ))d%s" 0 "${a}"; > fi; > fi; > [[ ${a} > ${b} ]] && return 3; > [[ ${a} == "${b}" ]] >} >__eapi7_ver_parse_range () >{ > local range=${1}; > local max=${2}; > [[ ${range} == [0-9]* ]] || die "${FUNCNAME}: range must start with a number"; > start=${range%-*}; > [[ ${range} == *-* ]] && end=${range#*-} || end=${start}; > if [[ -n ${end} ]]; then > [[ ${start} -le ${end} ]] || die "${FUNCNAME}: end of range must be >= start"; > [[ ${end} -le ${max} ]] || end=${max}; > else > end=${max}; > fi >} >__eapi7_ver_split () >{ > local v=${1} LC_ALL=C; > comp=(); > local s c; > while [[ -n ${v} ]]; do > s=${v%%[a-zA-Z0-9]*}; > v=${v:${#s}}; > [[ ${v} == [0-9]* ]] && c=${v%%[^0-9]*} || c=${v%%[^a-zA-Z]*}; > v=${v:${#c}}; > comp+=("${s}" "${c}"); > done >} >__eapi8_src_prepare () >{ > local f; > if ___is_indexed_array_var PATCHES; then > [[ ${#PATCHES[@]} -gt 0 ]] && eapply -- "${PATCHES[@]}"; > else > if [[ -n ${PATCHES} ]]; then > eapply -- ${PATCHES}; > fi; > fi; > eapply_user >} >_clang_fullversion () >{ > local ver="$1"; > shift; > set -- $($(tc-getCPP "$@") -E -P - <<<"__clang_major__ __clang_minor__ __clang_patchlevel__"); > eval echo "$ver" >} >_gcc-install-dir () >{ > echo "$(LC_ALL=C $(tc-getCC) -print-search-dirs 2> /dev/null | awk '$1=="install:" {print $2}')" >} >_gcc-specs-directive_raw () >{ > local cc=$(tc-getCC); > local specfiles=$(LC_ALL=C ${cc} -v 2>&1 | awk '$1=="Reading" {print $NF}'); > ${cc} -dumpspecs 2> /dev/null | cat - ${specfiles} | awk -v directive=$1 'BEGIN { pspec=""; spec=""; outside=1 } >$1=="*"directive":" { pspec=spec; spec=""; outside=0; next } > outside || NF==0 || ( substr($1,1,1)=="*" && substr($1,length($1),1)==":" ) { outside=1; next } > spec=="" && substr($0,1,1)=="+" { spec=pspec " " substr($0,2); next } > { spec=spec $0 } >END { print spec }'; > return 0 >} >_gcc-specs-exists () >{ > [[ -f $(_gcc-install-dir)/$1 ]] >} >_gcc_fullversion () >{ > local ver="$1"; > shift; > set -- $($(tc-getCPP "$@") -E -P - <<<"__GNUC__ __GNUC_MINOR__ __GNUC_PATCHLEVEL__"); > eval echo "$ver" >} >_tc-getPROG () >{ > local tuple=$1; > local v var vars=$2; > local prog=($3); > var=${vars%% *}; > for v in ${vars}; > do > if [[ -n ${!v} ]]; then > export ${var}="${!v}"; > echo "${!v}"; > return 0; > fi; > done; > local search=; > [[ -n $4 ]] && search=$(type -p $4-${prog[0]}); > [[ -z ${search} && -n ${!tuple} ]] && search=$(type -p ${!tuple}-${prog[0]}); > [[ -n ${search} ]] && prog[0]=${search##*/}; > export ${var}="${prog[*]}"; > echo "${!var}" >} >_tc-has-openmp () >{ > local base="${T}/test-tc-openmp"; > cat <<-EOF > "${base}.c" >#include <omp.h> >int main() { >int nthreads, tid, ret = 0; >#pragma omp parallel private(nthreads, tid) >{ >tid = omp_get_thread_num(); >nthreads = omp_get_num_threads(); ret += tid + nthreads; >} >return ret; >} >EOF > > $(tc-getCC "$@") -fopenmp "${base}.c" -o "${base}" &> /dev/null; > local ret=$?; > rm -f "${base}"*; > return ${ret} >} >clang-fullversion () >{ > _clang_fullversion '$1.$2.$3' "$@" >} >clang-major-version () >{ > _clang_fullversion '$1' "$@" >} >clang-micro-version () >{ > _clang_fullversion '$3' "$@" >} >clang-minor-version () >{ > _clang_fullversion '$2' "$@" >} >clang-version () >{ > _clang_fullversion '$1.$2' "$@" >} >eapply () >{ > local failed patch_cmd=patch; > local -x LC_COLLATE=POSIX; > type -P gpatch > /dev/null && patch_cmd=gpatch; > function _eapply_patch () > { > local f=${1}; > local prefix=${2}; > ebegin "${prefix:-Applying }${f##*/}"; > local all_opts=(-p1 -f -g0 --no-backup-if-mismatch "${patch_options[@]}"); > if ${patch_cmd} "${all_opts[@]}" --dry-run -s -F0 < "${f}" &> /dev/null; then > all_opts+=(-s -F0); > fi; > ${patch_cmd} "${all_opts[@]}" < "${f}"; > failed=${?}; > if ! eend "${failed}"; then > __helpers_die "patch -p1 ${patch_options[*]} failed with ${f}"; > fi > }; > local patch_options=() files=(); > local i found_doublehyphen; > for ((i = 1; i <= ${#@}; ++i )) > do > if [[ ${@:i:1} == -- ]]; then > patch_options=("${@:1:i-1}"); > files=("${@:i+1}"); > found_doublehyphen=1; > break; > fi; > done; > if [[ -z ${found_doublehyphen} ]]; then > for ((i = 1; i <= ${#@}; ++i )) > do > if [[ ${@:i:1} != -* ]]; then > patch_options=("${@:1:i-1}"); > files=("${@:i}"); > break; > fi; > done; > for i in "${files[@]}"; > do > if [[ ${i} == -* ]]; then > die "eapply: all options must be passed before non-options"; > fi; > done; > fi; > if [[ ${#files[@]} -eq 0 ]]; then > die "eapply: no files specified"; > fi; > local f; > for f in "${files[@]}"; > do > if [[ -d ${f} ]]; then > function _eapply_get_files () > { > local LC_ALL=POSIX; > local prev_shopt=$(shopt -p nullglob); > shopt -s nullglob; > local f; > for f in "${1}"/*; > do > if [[ ${f} == *.diff || ${f} == *.patch ]]; then > files+=("${f}"); > fi; > done; > ${prev_shopt} > }; > local files=(); > _eapply_get_files "${f}"; > [[ ${#files[@]} -eq 0 ]] && die "No *.{patch,diff} files in directory ${f}"; > einfo "Applying patches from ${f} ..."; > local f2; > for f2 in "${files[@]}"; > do > _eapply_patch "${f2}" ' '; > [[ ${failed} -ne 0 ]] && return "${failed}"; > done; > else > _eapply_patch "${f}"; > [[ ${failed} -ne 0 ]] && return "${failed}"; > fi; > done; > return 0 >} >eapply_user () >{ > [[ ${EBUILD_PHASE} == prepare ]] || die "eapply_user() called during invalid phase: ${EBUILD_PHASE}"; > local tagfile=${T}/.portage_user_patches_applied; > [[ -f ${tagfile} ]] && return; > >> "${tagfile}"; > local basedir=${PORTAGE_CONFIGROOT%/}/etc/portage/patches; > local columns=${COLUMNS:-0}; > [[ ${columns} == 0 ]] && columns=$(set -- $( ( stty size </dev/tty ) 2>/dev/null || echo 24 80 ) ; echo $2); > (( columns > 0 )) || (( columns = 80 )); > local applied d f; > local -A _eapply_user_patches; > local prev_shopt=$(shopt -p nullglob); > shopt -s nullglob; > for d in "${basedir}"/${CATEGORY}/{${P}-${PR},${P},${PN}}{:${SLOT%/*},}; > do > for f in "${d}"/*; > do > if [[ ( ${f} == *.diff || ${f} == *.patch ) && -z ${_eapply_user_patches[${f##*/}]} ]]; then > _eapply_user_patches[${f##*/}]=${f}; > fi; > done; > done; > if [[ ${#_eapply_user_patches[@]} -gt 0 ]]; then > while read -r -d '' f; do > f=${_eapply_user_patches[${f}]}; > if [[ -s ${f} ]]; then > if [[ -z ${applied} ]]; then > einfo "${PORTAGE_COLOR_INFO}$(for ((column = 0; column < ${columns} - 3; column++)); do echo -n =; done)${PORTAGE_COLOR_NORMAL}"; > einfo "Applying user patches from ${basedir} ..."; > fi; > eapply "${f}"; > applied=1; > fi; > done < <(printf -- '%s\0' "${!_eapply_user_patches[@]}" | > LC_ALL=C sort -z); > fi; > ${prev_shopt}; > if [[ -n ${applied} ]]; then > einfo "User patches applied."; > einfo "${PORTAGE_COLOR_INFO}$(for ((column = 0; column < ${columns} - 3; column++)); do echo -n =; done)${PORTAGE_COLOR_NORMAL}"; > fi >} >econf_build () >{ > local CBUILD=${CBUILD:-${CHOST}}; > tc-env_build econf --build=${CBUILD} --host=${CBUILD} "$@" >} >einstalldocs () >{ > ( if [[ $(declare -p DOCS 2>/dev/null) != *=* ]]; then > local d; > for d in README* ChangeLog AUTHORS NEWS TODO CHANGES THANKS BUGS FAQ CREDITS CHANGELOG; > do > [[ -f ${d} && -s ${d} ]] && docinto / && dodoc "${d}"; > done; > else > if ___is_indexed_array_var DOCS; then > [[ ${#DOCS[@]} -gt 0 ]] && docinto / && dodoc -r "${DOCS[@]}"; > else > [[ -n ${DOCS} ]] && docinto / && dodoc -r ${DOCS}; > fi; > fi ); > ( if ___is_indexed_array_var HTML_DOCS; then > [[ ${#HTML_DOCS[@]} -gt 0 ]] && docinto html && dodoc -r "${HTML_DOCS[@]}"; > else > [[ -n ${HTML_DOCS} ]] && docinto html && dodoc -r ${HTML_DOCS}; > fi ) >} >gcc-fullversion () >{ > _gcc_fullversion '$1.$2.$3' "$@" >} >gcc-major-version () >{ > _gcc_fullversion '$1' "$@" >} >gcc-micro-version () >{ > _gcc_fullversion '$3' "$@" >} >gcc-minor-version () >{ > _gcc_fullversion '$2' "$@" >} >gcc-specs-directive () >{ > local directive subdname subdirective; > directive="$(_gcc-specs-directive_raw $1)"; > while [[ ${directive} == *%\(*\)* ]]; do > subdname=${directive/*%\(}; > subdname=${subdname/\)*}; > subdirective="$(_gcc-specs-directive_raw ${subdname})"; > directive="${directive//\%(${subdname})/${subdirective}}"; > done; > echo "${directive}"; > return 0 >} >gcc-specs-nostrict () >{ > local directive; > directive=$(gcc-specs-directive cc1); > [[ "${directive/\{!fstrict-overflow:}" != "${directive}" ]] >} >gcc-specs-now () >{ > local directive; > directive=$(gcc-specs-directive link_command); > [[ "${directive/\{!nonow:}" != "${directive}" ]] >} >gcc-specs-pie () >{ > local directive; > directive=$(gcc-specs-directive cc1); > [[ "${directive/\{!nopie:}" != "${directive}" ]] >} >gcc-specs-relro () >{ > local directive; > directive=$(gcc-specs-directive link_command); > [[ "${directive/\{!norelro:}" != "${directive}" ]] >} >gcc-specs-ssp () >{ > local directive; > directive=$(gcc-specs-directive cc1); > [[ "${directive/\{!fno-stack-protector:}" != "${directive}" ]] >} >gcc-specs-ssp-to-all () >{ > local directive; > directive=$(gcc-specs-directive cc1); > [[ "${directive/\{!fno-stack-protector-all:}" != "${directive}" ]] >} >gcc-specs-stack-check () >{ > local directive; > directive=$(gcc-specs-directive cc1); > [[ "${directive/\{!fno-stack-check:}" != "${directive}" ]] >} >gcc-version () >{ > _gcc_fullversion '$1.$2' "$@" >} >gen_usr_ldscript () >{ > ewarn "${FUNCNAME}: Please migrate to usr-ldscript.eclass"; > local lib libdir=$(get_libdir) output_format="" auto=false suffix=$(get_libname); > [[ -z ${ED+set} ]] && local ED=${D%/}${EPREFIX}/; > tc-is-static-only && return; > if [[ $(type -t multilib_is_native_abi) == "function" ]]; then > multilib_is_native_abi || return 0; > fi; > case ${CTARGET:-${CHOST}} in > *-darwin*) > > ;; > *-android*) > return 0 > ;; > *linux* | *-freebsd* | *-openbsd* | *-netbsd*) > use prefix && return 0 > ;; > *) > return 0 > ;; > esac; > dodir /usr/${libdir}; > if [[ $1 == "-a" ]]; then > auto=true; > shift; > dodir /${libdir}; > fi; > local flags=(${CFLAGS} ${LDFLAGS} -Wl,--verbose); > if $(tc-getLD) --version | grep -q 'GNU gold'; then > local d="${T}/bfd-linker"; > mkdir -p "${d}"; > ln -sf $(which ${CHOST}-ld.bfd) "${d}"/ld; > flags+=(-B"${d}"); > fi; > output_format=$($(tc-getCC) "${flags[@]}" 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p'); > [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"; > for lib in "$@"; > do > local tlib; > if ${auto}; then > lib="lib${lib}${suffix}"; > else > [[ -r ${ED}/${libdir}/${lib} ]] || continue; > fi; > case ${CTARGET:-${CHOST}} in > *-darwin*) > if ${auto}; then > tlib=$(scanmacho -qF'%S#F' "${ED}"/usr/${libdir}/${lib}); > else > tlib=$(scanmacho -qF'%S#F' "${ED}"/${libdir}/${lib}); > fi; > [[ -z ${tlib} ]] && die "unable to read install_name from ${lib}"; > tlib=${tlib##*/}; > if ${auto}; then > mv "${ED}"/usr/${libdir}/${lib%${suffix}}.*${suffix#.} "${ED}"/${libdir}/ || die; > if [[ ${tlib} != ${lib%${suffix}}.*${suffix#.} ]]; then > mv "${ED}"/usr/${libdir}/${tlib%${suffix}}.*${suffix#.} "${ED}"/${libdir}/ || die; > fi; > rm -f "${ED}"/${libdir}/${lib}; > fi; > if [[ ! -w "${ED}/${libdir}/${tlib}" ]]; then > chmod u+w "${ED}${libdir}/${tlib}"; > local nowrite=yes; > fi; > install_name_tool -id "${EPREFIX}"/${libdir}/${tlib} "${ED}"/${libdir}/${tlib} || die "install_name_tool failed"; > [[ -n ${nowrite} ]] && chmod u-w "${ED}${libdir}/${tlib}"; > pushd "${ED}/usr/${libdir}" > /dev/null; > ln -snf "../../${libdir}/${tlib}" "${lib}"; > popd > /dev/null > ;; > *) > if ${auto}; then > tlib=$(scanelf -qF'%S#F' "${ED}"/usr/${libdir}/${lib}); > [[ -z ${tlib} ]] && die "unable to read SONAME from ${lib}"; > mv "${ED}"/usr/${libdir}/${lib}* "${ED}"/${libdir}/ || die; > if [[ ${tlib} != ${lib}* ]]; then > mv "${ED}"/usr/${libdir}/${tlib}* "${ED}"/${libdir}/ || die; > fi; > rm -f "${ED}"/${libdir}/${lib}; > else > tlib=${lib}; > fi; > cat > "${ED}/usr/${libdir}/${lib}" <<-END_LDSCRIPT >/* GNU ld script > Since Gentoo has critical dynamic libraries in /lib, and the static versions > in /usr/lib, we need to have a "fake" dynamic lib in /usr/lib, otherwise we > run into linking problems. This "fake" dynamic lib is a linker script that > redirects the linker to the real lib. And yes, this works in the cross- > compiling scenario as the sysroot-ed linker will prepend the real path. > > See bug https://bugs.gentoo.org/4411 for more info. > */ >${output_format} >GROUP ( ${EPREFIX}/${libdir}/${tlib} ) >END_LDSCRIPT > > ;; > esac > fperms a+x "/usr/${libdir}/${lib}" || die "could not change perms on ${lib}"; > done >} >get_abi_CFLAGS () >{ > get_abi_var CFLAGS "$@" >} >get_abi_CHOST () >{ > get_abi_var CHOST "$@" >} >get_abi_CTARGET () >{ > get_abi_var CTARGET "$@" >} >get_abi_FAKE_TARGETS () >{ > get_abi_var FAKE_TARGETS "$@" >} >get_abi_LDFLAGS () >{ > get_abi_var LDFLAGS "$@" >} >get_abi_LIBDIR () >{ > get_abi_var LIBDIR "$@" >} >get_abi_var () >{ > local flag=$1; > local abi=${2:-${ABI:-${DEFAULT_ABI:-default}}}; > local var="${flag}_${abi}"; > echo ${!var} >} >get_all_abis () >{ > local x order="" mvar dvar; > mvar="MULTILIB_ABIS"; > dvar="DEFAULT_ABI"; > if [[ -n $1 ]]; then > mvar="$1_${mvar}"; > dvar="$1_${dvar}"; > fi; > if [[ -z ${!mvar} ]]; then > echo "default"; > return 0; > fi; > for x in ${!mvar}; > do > if [[ ${x} != ${!dvar} ]]; then > order="${order:+${order} }${x}"; > fi; > done; > order="${order:+${order} }${!dvar}"; > echo ${order}; > return 0 >} >get_all_libdirs () >{ > local libdirs abi; > for abi in ${MULTILIB_ABIS}; > do > libdirs+=" $(get_abi_LIBDIR ${abi})"; > done; > [[ " ${libdirs} " != *" lib "* ]] && libdirs+=" lib"; > echo "${libdirs}" >} >get_exeext () >{ > case ${CHOST} in > *-cygwin* | mingw* | *-mingw*) > echo ".exe" > ;; > esac >} >get_install_abis () >{ > local x order=""; > if [[ -z ${MULTILIB_ABIS} ]]; then > echo "default"; > return 0; > fi; > if [[ ${EMULTILIB_PKG} == "true" ]]; then > for x in ${MULTILIB_ABIS}; > do > if [[ ${x} != "${DEFAULT_ABI}" ]]; then > has ${x} ${ABI_DENY} || order="${order} ${x}"; > fi; > done; > has ${DEFAULT_ABI} ${ABI_DENY} || order="${order} ${DEFAULT_ABI}"; > if [[ -n ${ABI_ALLOW} ]]; then > local ordera=""; > for x in ${order}; > do > if has ${x} ${ABI_ALLOW}; then > ordera="${ordera} ${x}"; > fi; > done; > order=${ordera}; > fi; > else > order=${DEFAULT_ABI}; > fi; > if [[ -z ${order} ]]; then > die "The ABI list is empty. Are you using a proper multilib profile? Perhaps your USE flags or MULTILIB_ABIS are too restrictive for this package."; > fi; > echo ${order}; > return 0 >} >get_libdir () >{ > local libdir_var="LIBDIR_${ABI}"; > local libdir="lib"; > [[ -n ${ABI} && -n ${!libdir_var} ]] && libdir=${!libdir_var}; > echo "${libdir}" >} >get_libname () >{ > local libname; > local ver=$1; > case ${CHOST} in > *-cygwin*) > libname="dll.a" > ;; > mingw* | *-mingw*) > libname="dll" > ;; > *-darwin*) > libname="dylib" > ;; > *-mint*) > libname="irrelevant" > ;; > hppa*-hpux*) > libname="sl" > ;; > *) > libname="so" > ;; > esac; > if [[ -z $* ]]; then > echo ".${libname}"; > else > for ver in "$@"; > do > case ${CHOST} in > *-cygwin*) > echo ".${ver}.${libname}" > ;; > *-darwin*) > echo ".${ver}.${libname}" > ;; > *-mint*) > echo ".${libname}" > ;; > *) > echo ".${libname}.${ver}" > ;; > esac; > done; > fi >} >get_modname () >{ > local modname; > local ver=$1; > case ${CHOST} in > *-darwin*) > modname="bundle" > ;; > *) > modname="so" > ;; > esac; > echo ".${modname}" >} >go_arch () >{ > 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; > else > if use abi_mips_n64; then > [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le; > fi; > 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_cross_compile () >{ > [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] >} >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 $@)" >} >has_multilib_profile () >{ > [ -n "${MULTILIB_ABIS}" -a "${MULTILIB_ABIS}" != "${MULTILIB_ABIS/ /}" ] >} >in_iuse () >{ > local use=${1}; > if [[ -z "${use}" ]]; then > echo "!!! in_iuse() called without a parameter." 1>&2; > echo "!!! in_iuse <USEFLAG>" 1>&2; > die "in_iuse() called without a parameter"; > fi; > local liuse=(${IUSE_EFFECTIVE}); > has "${use}" "${liuse[@]#[+-]}" >} >is_final_abi () >{ > has_multilib_profile || return 0; > set -- $(get_install_abis); > local LAST_ABI=$#; > [[ ${!LAST_ABI} == ${ABI} ]] >} >multilib_env () >{ > local CTARGET=${1:-${CTARGET}}; > local cpu=${CTARGET%%*-}; > if [[ ${CTARGET} = *-musl* ]]; then > : ${MULTILIB_ABIS=default}; > : ${DEFAULT_ABI=default}; > export MULTILIB_ABIS DEFAULT_ABI; > return; > fi; > case ${cpu} in > aarch64*) > export CFLAGS_arm=${CFLAGS_arm-}; > case ${cpu} in > aarch64*be) > export CHOST_arm="armv8b-${CTARGET#*-}" > ;; > *) > export CHOST_arm="armv8l-${CTARGET#*-}" > ;; > esac; > CHOST_arm=${CHOST_arm/%-gnu/-gnueabi}; > export CTARGET_arm=${CHOST_arm}; > export LIBDIR_arm="lib"; > export CFLAGS_arm64=${CFLAGS_arm64-}; > export CHOST_arm64=${CTARGET}; > export CTARGET_arm64=${CHOST_arm64}; > export LIBDIR_arm64="lib64"; > : ${MULTILIB_ABIS=arm64}; > : ${DEFAULT_ABI=arm64} > ;; > x86_64*) > export CFLAGS_x86=${CFLAGS_x86--m32}; > export CHOST_x86=${CTARGET/x86_64/i686}; > CHOST_x86=${CHOST_x86/%-gnux32/-gnu}; > export CTARGET_x86=${CHOST_x86}; > if [[ ${SYMLINK_LIB} == "yes" ]]; then > export LIBDIR_x86="lib32"; > else > export LIBDIR_x86="lib"; > fi; > export CFLAGS_amd64=${CFLAGS_amd64--m64}; > export CHOST_amd64=${CTARGET/%-gnux32/-gnu}; > export CTARGET_amd64=${CHOST_amd64}; > export LIBDIR_amd64="lib64"; > export CFLAGS_x32=${CFLAGS_x32--mx32}; > export CHOST_x32=${CTARGET/%-gnu/-gnux32}; > export CTARGET_x32=${CHOST_x32}; > export LIBDIR_x32="libx32"; > case ${CTARGET} in > *-gnux32) > : ${MULTILIB_ABIS=x32 amd64 x86}; > : ${DEFAULT_ABI=x32} > ;; > *) > : ${MULTILIB_ABIS=amd64 x86}; > : ${DEFAULT_ABI=amd64} > ;; > esac > ;; > loongarch64*) > export CFLAGS_lp64d=${CFLAGS_lp64d--mabi=lp64d}; > export CHOST_lp64d=${CTARGET}; > export CTARGET_lp64d=${CTARGET}; > export LIBDIR_lp64d=${LIBDIR_lp64d-lib64}; > : ${MULTILIB_ABIS=lp64d}; > : ${DEFAULT_ABI=lp64d} > ;; > mips64* | mipsisa64*) > export CFLAGS_o32=${CFLAGS_o32--mabi=32}; > export CHOST_o32=${CTARGET/mips64/mips}; > export CHOST_o32=${CHOST_o32/mipsisa64/mipsisa32}; > export CTARGET_o32=${CHOST_o32}; > export LIBDIR_o32="lib"; > export CFLAGS_n32=${CFLAGS_n32--mabi=n32}; > export CHOST_n32=${CTARGET}; > export CTARGET_n32=${CHOST_n32}; > export LIBDIR_n32="lib32"; > export CFLAGS_n64=${CFLAGS_n64--mabi=64}; > export CHOST_n64=${CTARGET}; > export CTARGET_n64=${CHOST_n64}; > export LIBDIR_n64="lib64"; > : ${MULTILIB_ABIS=n64 n32 o32}; > : ${DEFAULT_ABI=n32} > ;; > powerpc64*) > export CFLAGS_ppc=${CFLAGS_ppc--m32}; > export CHOST_ppc=${CTARGET/powerpc64/powerpc}; > export CTARGET_ppc=${CHOST_ppc}; > export LIBDIR_ppc="lib"; > export CFLAGS_ppc64=${CFLAGS_ppc64--m64}; > export CHOST_ppc64=${CTARGET}; > export CTARGET_ppc64=${CHOST_ppc64}; > export LIBDIR_ppc64="lib64"; > : ${MULTILIB_ABIS=ppc64 ppc}; > : ${DEFAULT_ABI=ppc64} > ;; > riscv64*) > : ${MULTILIB_ABIS=lp64d lp64 ilp32d ilp32}; > : ${DEFAULT_ABI=lp64d}; > local _libdir_riscvdefaultabi_variable="LIBDIR_${DEFAULT_ABI}"; > local _libdir_riscvdefaultabi=${!_libdir_riscvdefaultabi_variable}; > export ${_libdir_riscvdefaultabi_variable}=${_libdir_riscvdefaultabi:-lib64}; > export CFLAGS_lp64d=${CFLAGS_lp64d--mabi=lp64d -march=rv64gc}; > export CHOST_lp64d=${CTARGET}; > export CTARGET_lp64d=${CTARGET}; > export LIBDIR_lp64d=${LIBDIR_lp64d-lib64/lp64d}; > export CFLAGS_lp64=${CFLAGS_lp64--mabi=lp64 -march=rv64imac}; > export CHOST_lp64=${CTARGET}; > export CTARGET_lp64=${CTARGET}; > export LIBDIR_lp64=${LIBDIR_lp64-lib64/lp64}; > export CFLAGS_ilp32d=${CFLAGS_ilp32d--mabi=ilp32d -march=rv32imafdc}; > export CHOST_ilp32d=${CTARGET/riscv64/riscv32}; > export CTARGET_ilp32d=${CTARGET/riscv64/riscv32}; > export LIBDIR_ilp32d=${LIBDIR_ilp32d-lib32/ilp32d}; > export CFLAGS_ilp32=${CFLAGS_ilp32--mabi=ilp32 -march=rv32imac}; > export CHOST_ilp32=${CTARGET/riscv64/riscv32}; > export CTARGET_ilp32=${CTARGET/riscv64/riscv32}; > export LIBDIR_ilp32=${LIBDIR_ilp32-lib32/ilp32} > ;; > riscv32*) > : ${MULTILIB_ABIS=ilp32d ilp32}; > : ${DEFAULT_ABI=ilp32d}; > local _libdir_riscvdefaultabi_variable="LIBDIR_${DEFAULT_ABI}"; > local _libdir_riscvdefaultabi=${!_libdir_riscvdefaultabi_variable}; > export ${_libdir_riscvdefaultabi_variable}=${_libdir_riscvdefaultabi:-lib}; > export CFLAGS_ilp32d=${CFLAGS_ilp32d--mabi=ilp32d -march=rv32imafdc}; > export CHOST_ilp32d=${CTARGET}; > export CTARGET_ilp32d=${CTARGET}; > export LIBDIR_ilp32d=${LIBDIR_ilp32d-lib32/ilp32d}; > export CFLAGS_ilp32=${CFLAGS_ilp32--mabi=ilp32 -march=rv32imac}; > export CHOST_ilp32=${CTARGET}; > export CTARGET_ilp32=${CTARGET}; > export LIBDIR_ilp32=${LIBDIR_ilp32-lib32/ilp32} > ;; > s390x*) > export CFLAGS_s390=${CFLAGS_s390--m31}; > export CHOST_s390=${CTARGET/s390x/s390}; > export CTARGET_s390=${CHOST_s390}; > export LIBDIR_s390="lib"; > export CFLAGS_s390x=${CFLAGS_s390x--m64}; > export CHOST_s390x=${CTARGET}; > export CTARGET_s390x=${CHOST_s390x}; > export LIBDIR_s390x="lib64"; > : ${MULTILIB_ABIS=s390x s390}; > : ${DEFAULT_ABI=s390x} > ;; > sparc64*) > export CFLAGS_sparc32=${CFLAGS_sparc32--m32}; > export CHOST_sparc32=${CTARGET/sparc64/sparc}; > export CTARGET_sparc32=${CHOST_sparc32}; > export LIBDIR_sparc32="lib"; > export CFLAGS_sparc64=${CFLAGS_sparc64--m64}; > export CHOST_sparc64=${CTARGET}; > export CTARGET_sparc64=${CHOST_sparc64}; > export LIBDIR_sparc64="lib64"; > : ${MULTILIB_ABIS=sparc64 sparc32}; > : ${DEFAULT_ABI=sparc64} > ;; > *) > : ${MULTILIB_ABIS=default}; > : ${DEFAULT_ABI=default} > ;; > esac; > export MULTILIB_ABIS DEFAULT_ABI >} >multilib_toolchain_setup () >{ > local v vv; > export ABI=$1; > local save_restore_variables=(CBUILD CHOST AR CC CXX F77 FC LD NM OBJCOPY OBJDUMP PKG_CONFIG RANLIB READELF STRINGS STRIP PKG_CONFIG_LIBDIR PKG_CONFIG_PATH PKG_CONFIG_SYSTEM_INCLUDE_PATH PKG_CONFIG_SYSTEM_LIBRARY_PATH); > if [[ ${_DEFAULT_ABI_SAVED} == "true" ]]; then > for v in "${save_restore_variables[@]}"; > do > vv="_abi_saved_${v}"; > [[ ${!vv+set} == "set" ]] && export ${v}="${!vv}" || unset ${v}; > unset ${vv}; > done; > unset _DEFAULT_ABI_SAVED; > fi; > if [[ ${ABI} != ${DEFAULT_ABI} ]]; then > for v in "${save_restore_variables[@]}"; > do > vv="_abi_saved_${v}"; > [[ ${!v+set} == "set" ]] && export ${vv}="${!v}" || unset ${vv}; > done; > export _DEFAULT_ABI_SAVED="true"; > if [[ ${CBUILD} == "${CHOST}" ]]; then > export CBUILD=$(get_abi_CHOST $1); > fi; > export CHOST=$(get_abi_CHOST ${DEFAULT_ABI}); > export AR="$(tc-getAR)"; > export CC="$(tc-getCC) $(get_abi_CFLAGS)"; > export CXX="$(tc-getCXX) $(get_abi_CFLAGS)"; > export F77="$(tc-getF77) $(get_abi_CFLAGS)"; > export FC="$(tc-getFC) $(get_abi_CFLAGS)"; > export LD="$(tc-getLD) $(get_abi_LDFLAGS)"; > export NM="$(tc-getNM)"; > export OBJCOPY="$(tc-getOBJCOPY)"; > export OBJDUMP="$(tc-getOBJDUMP)"; > export PKG_CONFIG="$(tc-getPKG_CONFIG)"; > export RANLIB="$(tc-getRANLIB)"; > export READELF="$(tc-getREADELF)"; > export STRINGS="$(tc-getSTRINGS)"; > export STRIP="$(tc-getSTRIP)"; > export CHOST=$(get_abi_CHOST $1); > export PKG_CONFIG_LIBDIR=${EPREFIX}/usr/$(get_libdir)/pkgconfig; > export PKG_CONFIG_PATH=${EPREFIX}/usr/share/pkgconfig; > export PKG_CONFIG_SYSTEM_INCLUDE_PATH=${EPREFIX}/usr/include; > export PKG_CONFIG_SYSTEM_LIBRARY_PATH=${EPREFIX}/$(get_libdir):${EPREFIX}/usr/$(get_libdir); > fi >} >number_abis () >{ > set -- `get_install_abis`; > echo $# >} >pkg_nofetch () >{ > default >} >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" >} >pre_pkg_setup () >{ > [[ $ROOT = / ]] && : cfg-update --index >} >src_compile () >{ > if has_version -b dev-lang/go; then > export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"; > else > if has_version -b dev-lang/go-bootstrap; 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; > fi; > export GOROOT_FINAL="${EPREFIX}"/usr/lib/go; > export GOROOT="${PWD}"; > export GOBIN="${GOROOT}/bin"; > 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_configure () >{ > default >} >src_install () >{ > dodir /usr/lib/go; > cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go; > einstalldocs; > 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; > insinto /usr/share/portage/config/sets; > newins "${FILESDIR}"/go-sets.conf go.conf >} >src_prepare () >{ > default >} >src_test () >{ > go_cross_compile && return 0; > cd src; > PATH="${GOBIN}:${PATH}" ./run.bash -no-rebuild || die "tests failed"; > cd ..; > rm -fr pkg/*_race || die; > rm -fr pkg/obj/go-build || die >} >src_unpack () >{ > default >} >tc-arch () >{ > tc-ninja_magic_to_arch portage "$@" >} >tc-arch-kernel () >{ > tc-ninja_magic_to_arch kern "$@" >} >tc-check-openmp () >{ > if ! _tc-has-openmp; then > eerror "Your current compiler does not support OpenMP!"; > if tc-is-gcc; then > eerror "Enable OpenMP support by building sys-devel/gcc with USE=\"openmp\"."; > else > if tc-is-clang; then > eerror "OpenMP support in sys-devel/clang is provided by sys-libs/libomp."; > fi; > fi; > die "Active compiler does not have required support for OpenMP"; > fi >} >tc-cpp-is-true () >{ > local CONDITION=${1}; > shift; > $(tc-getTARGET_CPP) "${@}" -P - <<-EOF > /dev/null 2>&1 >#if ${CONDITION} >true >#else >#error false >#endif >EOF > >} >tc-detect-is-softfloat () >{ > [[ $(tc-getTARGET_CPP) == "gcc -E" ]] && return 1; > case ${CTARGET:-${CHOST}} in > *-newlib | *-elf | *-eabi) > return 1 > ;; > arm*) > if tc-cpp-is-true "defined(__ARM_PCS_VFP)"; then > echo "no"; > else > if tc-cpp-is-true "defined(__SOFTFP__)"; then > echo "yes"; > else > echo "softfp"; > fi; > fi; > return 0 > ;; > *) > return 1 > ;; > esac >} >tc-enables-pie () >{ > tc-cpp-is-true "defined(__PIE__)" ${CPPFLAGS} ${CFLAGS} >} >tc-enables-ssp () >{ > tc-cpp-is-true "defined(__SSP__) || defined(__SSP_STRONG__) || defined(__SSP_ALL__)" ${CPPFLAGS} ${CFLAGS} >} >tc-enables-ssp-all () >{ > tc-cpp-is-true "defined(__SSP_ALL__)" ${CPPFLAGS} ${CFLAGS} >} >tc-enables-ssp-strong () >{ > tc-cpp-is-true "defined(__SSP_STRONG__) || defined(__SSP_ALL__)" ${CPPFLAGS} ${CFLAGS} >} >tc-endian () >{ > local host=$1; > [[ -z ${host} ]] && host=${CTARGET:-${CHOST}}; > host=${host%%-*}; > case ${host} in > aarch64*be) > echo big > ;; > aarch64) > echo little > ;; > alpha*) > echo little > ;; > arm*b*) > echo big > ;; > arm*) > echo little > ;; > cris*) > echo little > ;; > hppa*) > echo big > ;; > i?86*) > echo little > ;; > ia64*) > echo little > ;; > loongarch*) > echo little > ;; > m68*) > echo big > ;; > mips*l*) > echo little > ;; > mips*) > echo big > ;; > powerpc*le) > echo little > ;; > powerpc*) > echo big > ;; > riscv*) > echo little > ;; > s390*) > echo big > ;; > sh*b*) > echo big > ;; > sh*) > echo little > ;; > sparc*) > echo big > ;; > x86_64*) > echo little > ;; > *) > echo wtf > ;; > esac >} >tc-env_build () >{ > tc-export_build_env; > CFLAGS=${BUILD_CFLAGS} CXXFLAGS=${BUILD_CXXFLAGS} CPPFLAGS=${BUILD_CPPFLAGS} LDFLAGS=${BUILD_LDFLAGS} AR=$(tc-getBUILD_AR) AS=$(tc-getBUILD_AS) CC=$(tc-getBUILD_CC) CPP=$(tc-getBUILD_CPP) CXX=$(tc-getBUILD_CXX) LD=$(tc-getBUILD_LD) NM=$(tc-getBUILD_NM) PKG_CONFIG=$(tc-getBUILD_PKG_CONFIG) RANLIB=$(tc-getBUILD_RANLIB) READELF=$(tc-getBUILD_READELF) "$@" >} >tc-export () >{ > local var; > for var in "$@"; > do > [[ $(type -t "tc-get${var}") != "function" ]] && die "tc-export: invalid export variable '${var}'"; > "tc-get${var}" > /dev/null; > done >} >tc-export_build_env () >{ > tc-export "$@"; > if tc-is-cross-compiler; then > : ${BUILD_CFLAGS:=-O1 -pipe}; > : ${BUILD_CXXFLAGS:=-O1 -pipe}; > : ${BUILD_CPPFLAGS:= }; > : ${BUILD_LDFLAGS:= }; > else > : ${BUILD_CFLAGS:=${CFLAGS}}; > : ${BUILD_CXXFLAGS:=${CXXFLAGS}}; > : ${BUILD_CPPFLAGS:=${CPPFLAGS}}; > : ${BUILD_LDFLAGS:=${LDFLAGS}}; > fi; > export BUILD_{C,CXX,CPP,LD}FLAGS; > local v; > for v in BUILD_{C,CXX,CPP,LD}FLAGS; > do > export ${v#BUILD_}_FOR_BUILD="${!v}"; > done >} >tc-get-c-rtlib () >{ > local res=$( > $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -print-libgcc-file-name 2>/dev/null > ); > case ${res} in > *libclang_rt*) > echo compiler-rt > ;; > *libgcc*) > echo libgcc > ;; > *) > return 1 > ;; > esac; > return 0 >} >tc-get-compiler-type () >{ > local code=' >#if defined(__PATHSCALE__) > HAVE_PATHCC >#elif defined(__clang__) > HAVE_CLANG >#elif defined(__GNUC__) > HAVE_GCC >#endif >'; > local res=$($(tc-getCPP "$@") -E -P - <<<"${code}"); > case ${res} in > *HAVE_PATHCC*) > echo pathcc > ;; > *HAVE_CLANG*) > echo clang > ;; > *HAVE_GCC*) > echo gcc > ;; > *) > echo unknown > ;; > esac >} >tc-get-cxx-stdlib () >{ > local code='#include <ciso646> > >#if defined(_LIBCPP_VERSION) > HAVE_LIBCXX >#elif defined(__GLIBCXX__) > HAVE_LIBSTDCPP >#endif >'; > local res=$( > $(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}" 2>/dev/null > ); > case ${res} in > *HAVE_LIBCXX*) > echo libc++ > ;; > *HAVE_LIBSTDCPP*) > echo libstdc++ > ;; > *) > return 1 > ;; > esac; > return 0 >} >tc-getAR () >{ > tc-getPROG AR ar "$@" >} >tc-getAS () >{ > tc-getPROG AS as "$@" >} >tc-getBUILD_AR () >{ > tc-getBUILD_PROG AR ar "$@" >} >tc-getBUILD_AS () >{ > tc-getBUILD_PROG AS as "$@" >} >tc-getBUILD_CC () >{ > tc-getBUILD_PROG CC gcc "$@" >} >tc-getBUILD_CPP () >{ > tc-getBUILD_PROG CPP "$(tc-getBUILD_CC) -E" "$@" >} >tc-getBUILD_CXX () >{ > tc-getBUILD_PROG CXX g++ "$@" >} >tc-getBUILD_LD () >{ > tc-getBUILD_PROG LD ld "$@" >} >tc-getBUILD_NM () >{ > tc-getBUILD_PROG NM nm "$@" >} >tc-getBUILD_OBJCOPY () >{ > tc-getBUILD_PROG OBJCOPY objcopy "$@" >} >tc-getBUILD_PKG_CONFIG () >{ > tc-getBUILD_PROG PKG_CONFIG pkg-config "$@" >} >tc-getBUILD_PROG () >{ > local vars="BUILD_$1 $1_FOR_BUILD HOST$1"; > tc-is-cross-compiler || vars+=" $1"; > _tc-getPROG CBUILD "${vars}" "${@:2}" >} >tc-getBUILD_RANLIB () >{ > tc-getBUILD_PROG RANLIB ranlib "$@" >} >tc-getBUILD_READELF () >{ > tc-getBUILD_PROG READELF readelf "$@" >} >tc-getBUILD_STRINGS () >{ > tc-getBUILD_PROG STRINGS strings "$@" >} >tc-getBUILD_STRIP () >{ > tc-getBUILD_PROG STRIP strip "$@" >} >tc-getCC () >{ > tc-getPROG CC gcc "$@" >} >tc-getCPP () >{ > tc-getPROG CPP "${CC:-gcc} -E" "$@" >} >tc-getCXX () >{ > tc-getPROG CXX g++ "$@" >} >tc-getDLLWRAP () >{ > tc-getPROG DLLWRAP dllwrap "$@" >} >tc-getF77 () >{ > tc-getPROG F77 gfortran "$@" >} >tc-getFC () >{ > tc-getPROG FC gfortran "$@" >} >tc-getGCJ () >{ > tc-getPROG GCJ gcj "$@" >} >tc-getGO () >{ > tc-getPROG GO gccgo "$@" >} >tc-getLD () >{ > tc-getPROG LD ld "$@" >} >tc-getNM () >{ > tc-getPROG NM nm "$@" >} >tc-getOBJCOPY () >{ > tc-getPROG OBJCOPY objcopy "$@" >} >tc-getOBJDUMP () >{ > tc-getPROG OBJDUMP objdump "$@" >} >tc-getPKG_CONFIG () >{ > tc-getPROG PKG_CONFIG pkg-config "$@" >} >tc-getPROG () >{ > _tc-getPROG CHOST "$@" >} >tc-getRANLIB () >{ > tc-getPROG RANLIB ranlib "$@" >} >tc-getRC () >{ > tc-getPROG RC windres "$@" >} >tc-getREADELF () >{ > tc-getPROG READELF readelf "$@" >} >tc-getSTRINGS () >{ > tc-getPROG STRINGS strings "$@" >} >tc-getSTRIP () >{ > tc-getPROG STRIP strip "$@" >} >tc-getTARGET_CPP () >{ > if [[ -n ${CTARGET} ]]; then > _tc-getPROG CTARGET TARGET_CPP "gcc -E" "$@"; > else > tc-getCPP "$@"; > fi >} >tc-has-openmp () >{ > _tc-has-openmp "$@" >} >tc-has-tls () >{ > local base="${T}/test-tc-tls"; > cat <<-EOF > "${base}.c" >int foo(int *i) { >static __thread int j = 0; >return *i ? j : *i; >} >EOF > > local flags; > case $1 in > -s) > flags="-S" > ;; > -c) > flags="-c" > ;; > -l) > > ;; > -*) > die "Usage: tc-has-tls [-c|-l] [toolchain prefix]" > ;; > esac; > : ${flags:=-fPIC -shared -Wl,-z,defs}; > [[ $1 == -* ]] && shift; > $(tc-getCC "$@") ${flags} "${base}.c" -o "${base}" &> /dev/null; > local ret=$?; > rm -f "${base}"*; > return ${ret} >} >tc-is-clang () >{ > [[ $(tc-get-compiler-type) == clang ]] >} >tc-is-cross-compiler () >{ > [[ ${CBUILD:-${CHOST}} != ${CHOST} ]] >} >tc-is-gcc () >{ > [[ $(tc-get-compiler-type) == gcc ]] >} >tc-is-softfloat () >{ > tc-detect-is-softfloat || tc-tuple-is-softfloat >} >tc-is-static-only () >{ > local host=${CTARGET:-${CHOST}}; > [[ ${host} == *-mint* ]] >} >tc-ld-disable-gold () >{ > tc-ld-is-gold "$@" && tc-ld-force-bfd "$@" >} >tc-ld-force-bfd () >{ > if ! tc-ld-is-gold "$@" && ! tc-ld-is-lld "$@"; then > return; > fi; > ewarn "Forcing usage of the BFD linker"; > local ld=$(tc-getLD "$@"); > local bfd_ld="${ld%% *}.bfd"; > local path_ld=$(which "${bfd_ld}" 2>/dev/null); > [[ -e ${path_ld} ]] && export LD=${bfd_ld}; > local fallback="true"; > if tc-is-gcc; then > local major=$(gcc-major-version "$@"); > local minor=$(gcc-minor-version "$@"); > if [[ ${major} -gt 4 ]] || [[ ${major} -eq 4 && ${minor} -ge 8 ]]; then > export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"; > fallback="false"; > fi; > else > if tc-is-clang; then > local major=$(clang-major-version "$@"); > local minor=$(clang-minor-version "$@"); > if [[ ${major} -gt 3 ]] || [[ ${major} -eq 3 && ${minor} -ge 5 ]]; then > export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"; > fallback="false"; > fi; > fi; > fi; > if [[ ${fallback} == "true" ]]; then > if [[ -e ${path_ld} ]]; then > local d="${T}/bfd-linker"; > mkdir -p "${d}"; > ln -sf "${path_ld}" "${d}"/ld; > export LDFLAGS="${LDFLAGS} -B${d}"; > else > die "unable to locate a BFD linker"; > fi; > fi >} >tc-ld-is-gold () >{ > local out; > local -x LC_ALL=C; > out=$($(tc-getLD "$@") --version 2>&1); > if [[ ${out} == *"GNU gold"* ]]; then > return 0; > fi; > local base="${T}/test-tc-gold"; > cat <<-EOF > "${base}.c" >int main() { return 0; } >EOF > > out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1); > rm -f "${base}"*; > if [[ ${out} == *"GNU gold"* ]]; then > return 0; > fi; > return 1 >} >tc-ld-is-lld () >{ > local out; > local -x LC_ALL=C; > out=$($(tc-getLD "$@") --version 2>&1); > if [[ ${out} == *"LLD"* ]]; then > return 0; > fi; > local base="${T}/test-tc-lld"; > cat <<-EOF > "${base}.c" >int main() { return 0; } >EOF > > out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1); > rm -f "${base}"*; > if [[ ${out} == *"LLD"* ]]; then > return 0; > fi; > return 1 >} >tc-ninja_magic_to_arch () >{ > function ninj () > { > [[ ${type} == "kern" ]] && echo $1 || echo $2 > }; > local type=$1; > local host=$2; > [[ -z ${host} ]] && host=${CTARGET:-${CHOST}}; > case ${host} in > aarch64*) > echo arm64 > ;; > alpha*) > echo alpha > ;; > arm*) > echo arm > ;; > avr*) > ninj avr32 avr > ;; > bfin*) > ninj blackfin bfin > ;; > c6x*) > echo c6x > ;; > cris*) > echo cris > ;; > frv*) > echo frv > ;; > hexagon*) > echo hexagon > ;; > hppa*) > ninj parisc hppa > ;; > i?86*) > if [[ ${type} == "kern" && ${host} == *freebsd* ]]; then > echo i386; > else > echo x86; > fi > ;; > ia64*) > echo ia64 > ;; > loongarch*) > ninj loongarch loong > ;; > m68*) > echo m68k > ;; > metag*) > echo metag > ;; > microblaze*) > echo microblaze > ;; > mips*) > echo mips > ;; > nios2*) > echo nios2 > ;; > nios*) > echo nios > ;; > or1k* | or32*) > echo openrisc > ;; > powerpc*) > if [[ ${type} == "kern" ]]; then > echo powerpc; > else > if [[ ${host} == powerpc64* ]]; then > echo ppc64; > else > echo ppc; > fi; > fi > ;; > riscv*) > echo riscv > ;; > s390*) > echo s390 > ;; > score*) > echo score > ;; > sh64*) > ninj sh64 sh > ;; > sh*) > echo sh > ;; > sparc64*) > ninj sparc64 sparc > ;; > sparc*) > [[ ${PROFILE_ARCH} == "sparc64" ]] && ninj sparc64 sparc || echo sparc > ;; > tile*) > echo tile > ;; > vax*) > echo vax > ;; > x86_64*freebsd*) > echo amd64 > ;; > x86_64*) > if [[ ${type} == "kern" ]]; then > echo x86; > else > echo amd64; > fi > ;; > xtensa*) > echo xtensa > ;; > *) > echo unknown > ;; > esac >} >tc-stack-grows-down () >{ > case ${ARCH} in > hppa | metag) > return 1 > ;; > esac; > return 0 >} >tc-tuple-is-softfloat () >{ > local CTARGET=${CTARGET:-${CHOST}}; > case ${CTARGET//_/-} in > bfin* | h8300*) > echo "only" > ;; > *-softfloat-*) > echo "yes" > ;; > *-softfp-*) > echo "softfp" > ;; > arm*-hardfloat-* | arm*eabihf) > echo "no" > ;; > *-newlib | *-elf | *-eabi) > echo "no" > ;; > arm*) > echo "yes" > ;; > *) > echo "no" > ;; > esac >} >ver_cut () >{ > local range=${1}; > local v=${2:-${PV}}; > local start end; > local -a comp; > __eapi7_ver_split "${v}"; > local max=$((${#comp[@]}/2)); > __eapi7_ver_parse_range "${range}" "${max}"; > local IFS=; > if [[ ${start} -gt 0 ]]; then > start=$(( start*2 - 1 )); > fi; > echo "${comp[*]:start:end*2-start}" >} >ver_rs () >{ > local v; > (( ${#} & 1 )) && v=${@: -1} || v=${PV}; > local start end i; > local -a comp; > __eapi7_ver_split "${v}"; > local max=$((${#comp[@]}/2 - 1)); > while [[ ${#} -ge 2 ]]; do > __eapi7_ver_parse_range "${1}" "${max}"; > for ((i = start*2; i <= end*2; i+=2 )) > do > [[ ${i} -eq 0 && -z ${comp[i]} ]] && continue; > comp[i]=${2}; > done; > shift 2; > done; > local IFS=; > echo "${comp[*]}" >} >ver_test () >{ > local va op vb; > if [[ $# -eq 3 ]]; then > va=${1}; > shift; > else > va=${PVR}; > fi; > [[ $# -eq 2 ]] || die "${FUNCNAME}: bad number of arguments"; > op=${1}; > vb=${2}; > case ${op} in > -eq | -ne | -lt | -le | -gt | -ge) > > ;; > *) > die "${FUNCNAME}: invalid operator: ${op}" > ;; > esac; > __eapi7_ver_compare "${va}" "${vb}"; > test $? "${op}" 2 >} > >[32mThese are the packages that would be merged:[39;49;00m > >Calculating dependencies ....... done! >[[32;01mebuild[39;49;00m [36;01mU[39;49;00m ] [32;01mdev-lang/go-1.19.2:0/1.19.2::gentoo[39;49;00m [34;01m[1.18.5:0/1.18.5::gentoo][39;49;00m CPU_FLAGS_X86="[31;01msse2[39;49;00m" 0 KiB > >Total: 1 package (1 upgrade), Size of downloads: 0 KiB > >>>> Verifying ebuild manifests > > >>>> Emerging ([33;01m1[39;49;00m of [33;01m1[39;49;00m) [32mdev-lang/go-1.19.2::gentoo[39;49;00m >[32m * [39;49;00mgo1.19.2.src.tar.gz BLAKE2B SHA512 size ;-) ... [34;01m[ [39;49;00m[32;01mok[39;49;00m[34;01m ][39;49;00m >>>> Unpacking source... >>>> Unpacking go1.19.2.src.tar.gz to /var/tmp/portage/dev-lang/go-1.19.2/work >>>> Source unpacked in /var/tmp/portage/dev-lang/go-1.19.2/work >>>> Preparing source in /var/tmp/portage/dev-lang/go-1.19.2/work/go ... >>>> Source prepared. >>>> Configuring source in /var/tmp/portage/dev-lang/go-1.19.2/work/go ... >>>> Source configured. >>>> Compiling source in /var/tmp/portage/dev-lang/go-1.19.2/work/go ... >+ set -e >+ '[' '!' -f run.bash ']' >+ '[' '' '!=' '' ']' >+ case "$(uname)" in >++ uname >+ ld --version >+ grep 'gold.* 2\.20' >+ for se_mount in /selinux /sys/fs/selinux >+ '[' -d /selinux -a -f /selinux/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ']' >+ for se_mount in /selinux /sys/fs/selinux >+ '[' -d /sys/fs/selinux -a -f /sys/fs/selinux/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ']' >++ uname -s >+ '[' Linux = GNU/kFreeBSD ']' >+ '[' -z '' ']' >+ type readelf >+ echo 'int main() { return 0; }' >+ x86_64-pc-linux-gnu-gcc -o ./test-musl-ldso -x c - >++ readelf -l ./test-musl-ldso >++ grep interpreter: >++ sed -e 's/^.*interpreter: \(.*\)[]]/\1/' >+ LDSO=/lib64/ld-linux-x86-64.so.2 >+ '[' -z /lib64/ld-linux-x86-64.so.2 ']' >+ export GO_LDSO=/lib64/ld-linux-x86-64.so.2 >+ GO_LDSO=/lib64/ld-linux-x86-64.so.2 >+ rm -f ./test-musl-ldso >+ rm -f ./runtime/runtime_defs.go >+ verbose=false >+ vflag= >+ '[' '' = -v ']' >+ goroot_bootstrap_set=true >+ '[' -z /usr/lib/go ']' >+ export GOROOT_BOOTSTRAP >++ cd .. >++ pwd >+ export GOROOT=/var/tmp/portage/dev-lang/go-1.19.2/work/go >+ GOROOT=/var/tmp/portage/dev-lang/go-1.19.2/work/go >+ IFS=' >' >++ type -ap go >+ for go_exe in $(type -ap go) >+ '[' '!' -x /usr/lib/go/bin/go ']' >+ unset IFS >+ '[' '!' -x /usr/lib/go/bin/go ']' >++ GOOS= >++ GOARCH= >++ GOEXPERIMENT= >++ /usr/lib/go/bin/go version >++ sed 's/go version //' >+ GOROOT_BOOTSTRAP_VERSION='go1.18.5 linux/amd64' >+ echo 'Building Go cmd/dist using /usr/lib/go. (go1.18.5 linux/amd64)' >Building Go cmd/dist using /usr/lib/go. (go1.18.5 linux/amd64) >+ false >+ '[' /usr/lib/go = /var/tmp/portage/dev-lang/go-1.19.2/work/go ']' >+ rm -f cmd/dist/dist >+ GOROOT=/usr/lib/go >+ GOOS= >+ GOARCH= >+ GO111MODULE=off >+ GOEXPERIMENT= >+ GOENV=off >+ GOFLAGS= >+ /usr/lib/go/bin/go build -o cmd/dist/dist ./cmd/dist >++ ./cmd/dist/dist env -p >+ eval 'GO111MODULE=""' 'GOARCH="amd64"' 'GOBIN="/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin"' 'GOCACHE="/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/obj/go-build"' 'GODEBUG=""' 'GOENV="off"' 'GOFLAGS=""' 'GOHOSTARCH="amd64"' 'GOHOSTOS="linux"' 'GOOS="linux"' 'GOPROXY=""' 'GOROOT="/var/tmp/portage/dev-lang/go-1.19.2/work/go"' 'GOTMPDIR=""' 'GOTOOLDIR="/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/tool/linux_amd64"' 'GOAMD64="v1"' 'GOWORK="off"' 'PATH="/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin:/usr/lib/portage/python3.10/ebuild-helpers/xattr:/usr/lib/portage/python3.10/ebuild-helpers:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/14/bin"' >++ GO111MODULE= >++ GOARCH=amd64 >++ GOBIN=/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin >++ GOCACHE=/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/obj/go-build >++ GODEBUG= >++ GOENV=off >++ GOFLAGS= >++ GOHOSTARCH=amd64 >++ GOHOSTOS=linux >++ GOOS=linux >++ GOPROXY= >++ GOROOT=/var/tmp/portage/dev-lang/go-1.19.2/work/go >++ GOTMPDIR= >++ GOTOOLDIR=/var/tmp/portage/dev-lang/go-1.19.2/work/go/pkg/tool/linux_amd64 >++ GOAMD64=v1 >++ GOWORK=off >++ PATH=/var/tmp/portage/dev-lang/go-1.19.2/work/go/bin:/usr/lib/portage/python3.10/ebuild-helpers/xattr:/usr/lib/portage/python3.10/ebuild-helpers:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/14/bin >+ '[' '' = true ']' >+ false >+ '[' '' = --dist-tool ']' >+ ./cmd/dist/dist bootstrap -a >Building Go toolchain1 using /usr/lib/go. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >error obtaining VCS status: exit status 128 > Use -buildvcs=false to disable VCS stamping. >go tool dist: FAILED: /usr/lib/go/bin/go install -gcflags=-l -tags=math_big_pure_go compiler_bootstrap purego bootstrap/cmd/...: exit status 1 > [31;01m*[0m ERROR: dev-lang/go-1.19.2::gentoo failed (compile phase): > [31;01m*[0m build failed > [31;01m*[0m > [31;01m*[0m Call stack: > [31;01m*[0m ebuild.sh, line 122: Called src_compile > [31;01m*[0m environment, line 1297: Called die > [31;01m*[0m The specific snippet of code: > [31;01m*[0m bash -x ./make.bash || die "build failed" > [31;01m*[0m > [31;01m*[0m If you need support, post the output of `emerge --info '=dev-lang/go-1.19.2::gentoo'`, > [31;01m*[0m the complete build log and the output of `emerge -pqv '=dev-lang/go-1.19.2::gentoo'`. > [31;01m*[0m The complete build log is located at '/var/tmp/portage/dev-lang/go-1.19.2/temp/build.log'. > [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/dev-lang/go-1.19.2/temp/environment'. > [31;01m*[0m Working directory: '/var/tmp/portage/dev-lang/go-1.19.2/work/go/src' > [31;01m*[0m S: '/var/tmp/portage/dev-lang/go-1.19.2/work/go' > >>>> [31;01mFailed[39;49;00m to emerge [32mdev-lang/go-1.19.2[39;49;00m, Log file: > >>>> '[32m/var/tmp/portage/dev-lang/go-1.19.2/temp/build.log[39;49;00m' >[32m * [39;49;00mMessages for package [32mdev-lang/go-1.19.2[39;49;00m: >[31;01m * [39;49;00mERROR: dev-lang/go-1.19.2::gentoo failed (compile phase): >[31;01m * [39;49;00m build failed >[31;01m * [39;49;00m >[31;01m * [39;49;00mCall stack: >[31;01m * [39;49;00m ebuild.sh, line 122: Called src_compile >[31;01m * [39;49;00m environment, line 1297: Called die >[31;01m * [39;49;00mThe specific snippet of code: >[31;01m * [39;49;00m bash -x ./make.bash || die "build failed" >[31;01m * [39;49;00m >[31;01m * [39;49;00mIf you need support, post the output of `emerge --info '=dev-lang/go-1.19.2::gentoo'`, >[31;01m * [39;49;00mthe complete build log and the output of `emerge -pqv '=dev-lang/go-1.19.2::gentoo'`. >[31;01m * [39;49;00mThe complete build log is located at '/var/tmp/portage/dev-lang/go-1.19.2/temp/build.log'. >[31;01m * [39;49;00mThe ebuild environment file is located at '/var/tmp/portage/dev-lang/go-1.19.2/temp/environment'. >[31;01m * [39;49;00mWorking directory: '/var/tmp/portage/dev-lang/go-1.19.2/work/go/src' >[31;01m * [39;49;00mS: '/var/tmp/portage/dev-lang/go-1.19.2/work/go' > >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 878489
: 825663