declare -x ABI="amd64" declare -x ABI_MIPS="" declare -x ABI_PPC="" declare -x ABI_S390="" declare -x ABI_X86="64" declare -x ALSA_CARDS="" declare -x APACHE2_MODULES="" declare -x APACHE2_MPMS="" declare -x ARCH="amd64" declare -- ARCHIVE_URI="https://github.com/bcicen/ctop/archive/v0.5.1.tar.gz -> ctop-0.5.1.tar.gz" declare BDEPEND="" declare -x BOOTSTRAP_USE="unicode internal-glib pkg-config split-usr python_targets_python3_6 python_targets_python2_7 multilib systemd udev" declare -x CALLIGRA_FEATURES="" declare -x CAMERAS="" declare -x CATKIN_PREFIX_PATH="/usr" declare -x CBUILD="x86_64-pc-linux-gnu" declare -x CCL_DEFAULT_DIRECTORY="/usr/lib64/clozurecl" declare -x CFLAGS="-O2 -pipe -march=native" declare -x CFLAGS_amd64="-m64" declare -x CFLAGS_x32="-mx32" declare -x CFLAGS_x86="-m32" declare -x CHOST="x86_64-pc-linux-gnu" declare -x CHOST_amd64="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="-O2 -pipe" declare -x CPU_FLAGS_ARM="" declare -x CPU_FLAGS_X86="" declare -x CSSTRNGS="/usr/share/locale" declare -x CURL_SSL="" declare -x CXXFLAGS="-O2 -pipe -march=native" declare -x DEFAULT_ABI="amd64" declare -x DEFINED_PHASES=" compile install test unpack" declare DEPEND=">=dev-lang/go-1.10" declare DESCRIPTION="Top-like interface for container-metrics" declare -x DESTTREE="/usr" declare -x DIROPTIONS="-m0755" declare -x DSM_CONFIG="/etc/tivoli/dsm.opt" declare -x DSM_DIR="/opt/tivoli/tsm/client/ba/bin" declare -x DSM_LOG="/var/log/tsm" declare -x EAPI="6" declare -x EC2_AMITOOL_HOME="/usr" declare -- EGIT_COMMIT="5db90f31dcfed7dbd1473d771ba72c08e5b28ec7" declare -x EGO_BUILD_FLAGS="-p 1" declare -- EGO_PN="github.com/bcicen/ctop/..." declare -a EGO_VENDOR=([0]="github.com/fsouza/go-dockerclient 87c7e50e0bcf800ed863c3c3b0fbcc67e3029140" [1]="github.com/docker/docker c5f178da05b27bda40c863b7d65ef8ef11eb1fbe" [2]="github.com/docker/go-units 0dadbb0345b35ec7ef35e228dabb8de89a65bf52" [3]="github.com/gizak/termui ea10e6ccee219e572ffad0ac1909f1a17f6db7d6 github.com/bcicen/termui" [4]="github.com/hashicorp/go-cleanhttp 3573b8b52aa7b37b9358d966a898feb387f62437" [5]="github.com/jgautheron/codename-generator 16d037c7cc3c9b552fe4af9828b7338d752dbaf9" [6]="github.com/maruel/panicparse 25bcac0d793cf4109483505a0d66e066a3a90a80" [7]="github.com/mattn/go-runewidth 14207d285c6c197daabb5c9793d63e7af9ab2d50" [8]="github.com/mitchellh/go-wordwrap ad45545899c7b13c020ea92b2072220eefad42b8" [9]="github.com/nsf/termbox-go 7994c181db7761ca3c67a217068cf31826113f5f" [10]="github.com/op/go-logging 970db520ece77730c7e4724c61121037378659d9" [11]="github.com/nu7hatch/gouuid 179d4d0c4d8d407a32af483c2354df1d2c91e6c3" [12]="golang.org/x/net 6c23252515492caf9b228a9d5cabcdbde29f7f82 github.com/golang/net") declare -- EGO_VENDOR_URI=" https://github.com/fsouza/go-dockerclient/archive/87c7e50e0bcf800ed863c3c3b0fbcc67e3029140.tar.gz -> github.com-fsouza-go-dockerclient-87c7e50e0bcf800ed863c3c3b0fbcc67e3029140.tar.gz https://github.com/docker/docker/archive/c5f178da05b27bda40c863b7d65ef8ef11eb1fbe.tar.gz -> github.com-docker-docker-c5f178da05b27bda40c863b7d65ef8ef11eb1fbe.tar.gz https://github.com/docker/go-units/archive/0dadbb0345b35ec7ef35e228dabb8de89a65bf52.tar.gz -> github.com-docker-go-units-0dadbb0345b35ec7ef35e228dabb8de89a65bf52.tar.gz https://github.com/bcicen/termui/archive/ea10e6ccee219e572ffad0ac1909f1a17f6db7d6.tar.gz -> github.com-bcicen-termui-ea10e6ccee219e572ffad0ac1909f1a17f6db7d6.tar.gz https://github.com/hashicorp/go-cleanhttp/archive/3573b8b52aa7b37b9358d966a898feb387f62437.tar.gz -> github.com-hashicorp-go-cleanhttp-3573b8b52aa7b37b9358d966a898feb387f62437.tar.gz https://github.com/jgautheron/codename-generator/archive/16d037c7cc3c9b552fe4af9828b7338d752dbaf9.tar.gz -> github.com-jgautheron-codename-generator-16d037c7cc3c9b552fe4af9828b7338d752dbaf9.tar.gz https://github.com/maruel/panicparse/archive/25bcac0d793cf4109483505a0d66e066a3a90a80.tar.gz -> github.com-maruel-panicparse-25bcac0d793cf4109483505a0d66e066a3a90a80.tar.gz https://github.com/mattn/go-runewidth/archive/14207d285c6c197daabb5c9793d63e7af9ab2d50.tar.gz -> github.com-mattn-go-runewidth-14207d285c6c197daabb5c9793d63e7af9ab2d50.tar.gz https://github.com/mitchellh/go-wordwrap/archive/ad45545899c7b13c020ea92b2072220eefad42b8.tar.gz -> github.com-mitchellh-go-wordwrap-ad45545899c7b13c020ea92b2072220eefad42b8.tar.gz https://github.com/nsf/termbox-go/archive/7994c181db7761ca3c67a217068cf31826113f5f.tar.gz -> github.com-nsf-termbox-go-7994c181db7761ca3c67a217068cf31826113f5f.tar.gz https://github.com/op/go-logging/archive/970db520ece77730c7e4724c61121037378659d9.tar.gz -> github.com-op-go-logging-970db520ece77730c7e4724c61121037378659d9.tar.gz https://github.com/nu7hatch/gouuid/archive/179d4d0c4d8d407a32af483c2354df1d2c91e6c3.tar.gz -> github.com-nu7hatch-gouuid-179d4d0c4d8d407a32af483c2354df1d2c91e6c3.tar.gz https://github.com/golang/net/archive/6c23252515492caf9b228a9d5cabcdbde29f7f82.tar.gz -> github.com-golang-net-6c23252515492caf9b228a9d5cabcdbde29f7f82.tar.gz" declare -x ELIBC="glibc" declare -x ENLIGHTENMENT_MODULES="" declare -x ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" declare -- EPOCHREALTIME="1551834788.581659" declare -- EPOCHSECONDS="1551834788" declare -x ETCKEEPER_CONF_DIR="/etc/etckeeper" declare -x EXEOPTIONS="-m0755" declare -x FCFLAGS="-O2 -pipe" 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="-O2 -pipe" declare -x FFTOOLS="" declare -x FLTK_DOCDIR="/usr/share/doc/fltk-1.3.4/html" declare -x GCC_COLORS="" declare -x GCC_SPECS="" declare -x GO19CONCURRENTCOMPILATION="0" declare -x GOMAXPROCS="1" declare -- GO_DEPEND=">=dev-lang/go-1.10" declare -x GPSD_PROTOCOLS="" declare -x GREP_COLORS="never" declare -x GRUB_PLATFORMS="" declare -x GSETTINGS_BACKEND="gconf" declare HDEPEND="" declare HOMEPAGE="https://ctop.sh https://github.com/bcicen/ctop" declare -x INHERITED=" golang-base golang-build golang-vcs-snapshot" declare -x INPUT_DEVICES="" declare -x INSDESTTREE="" declare -x INSOPTIONS="-m0644" declare IUSE="hardened " declare -x IUSE_EFFECTIVE="abi_x86_64 alpha amd64 amd64-fbsd amd64-linux arm arm64 elibc_AIX elibc_Cygwin elibc_Darwin elibc_DragonFly elibc_FreeBSD elibc_HPUX elibc_Interix elibc_NetBSD elibc_OpenBSD elibc_SunOS elibc_Winnt elibc_bionic elibc_glibc elibc_mingw elibc_mintlib elibc_musl elibc_uclibc hardened hppa ia64 kernel_AIX kernel_Darwin kernel_FreeBSD kernel_HPUX kernel_NetBSD kernel_OpenBSD kernel_SunOS kernel_Winnt kernel_freemint kernel_linux m68k m68k-mint mips ppc ppc-aix ppc-macos ppc64 ppc64-linux prefix prefix-chain prefix-guest s390 sh sparc sparc-solaris sparc64-solaris userland_BSD userland_GNU x64-cygwin x64-macos x64-solaris x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt" declare -x IUSE_IMPLICIT="abi_x86_64 prefix prefix-chain prefix-guest" declare -x KERNEL="linux" declare -x KEYWORDS="~amd64" declare -x L10N="" declare -x LADSPA_PATH="/usr/lib64/ladspa" declare -x LANG="en_US.UTF-8" declare -x LCD_DEVICES="" declare -x LC_COLLATE="C" declare -x LC_MESSAGES="C" declare -x LDFLAGS="-Wl,-O1 -Wl,--as-needed" declare -x LDFLAGS_amd64="-m elf_x86_64" declare -x LDFLAGS_x32="-m elf32_x86_64" declare -x LDFLAGS_x86="-m elf_i386" declare -x LE_CONFIG_HOME="/etc/acme-sh/" declare -x LE_WORKING_DIR="/etc/acme-sh/" declare -x LIBDIR_amd64="lib64" declare -x LIBDIR_x32="libx32" declare -x LIBDIR_x86="lib32" declare -x LIBOPTIONS="-m0644" declare -x LIBREOFFICE_EXTENSIONS="" declare -x LICENSE="MIT" declare -x LIRC_DEVICES="" declare -x LLVM_TARGETS="" declare -x LOGTALKHOME="/usr/share/logtalk-3.18.0" declare -x MAKEOPTS="-j1" declare -x MANPAGER="manpager" declare -x MONKEYD_PLUGINS="" 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|gcc-lib|binutils|eclipse-3|debug|portage|udev|systemd|clang|python-exec|llvm)" declare -x NETBEANS_MODULES="" declare -x NGINX_MODULES_HTTP="" declare -x NGINX_MODULES_MAIL="" declare -x NGINX_MODULES_STREAM="" declare -x NINJAFLAGS="-j1" declare -x OFED_DRIVERS="" declare -x OFFICE_IMPLEMENTATION="" declare -x OPCODEDIR="/usr/lib64/csound/plugins" declare -x OPENGL_PROFILE="xorg-x11" declare -x OPENMPI_FABRICS="" declare -x OPENMPI_OFED_FEATURES="" declare -x OPENMPI_RM="" declare -x PATH="/usr/lib/portage/python3.6/ebuild-helpers/xattr:/usr/lib/portage/python3.6/ebuild-helpers:/usr/lib/llvm/7/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/opt/tivoli/tsm/client/ba/bin" declare -x PAX_MARKINGS="none" declare PDEPEND="" declare -x PGPLOT_FONT="/usr/lib64/pgplot/grfont.dat" declare -x PHP_TARGETS="" declare -x PKG_CONFIG_PATH="/usr/lib64/pkgconfig" declare -x PORTAGE_COMPRESSION_COMMAND="bzip2" 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/ctop-0.5.1/html") declare -a PORTAGE_DOSTRIP=([0]="/") declare -a PORTAGE_DOSTRIP_SKIP=() declare -x PORT_LOGDIR="/var/log/portage" declare -x POSTGRES_TARGETS="" 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 -x PROPERTIES="" declare -x PYTHIA8DATA="/usr/share/pythia8/xmldoc" declare -x PYTHONDONTWRITEBYTECODE="1" declare -x PYTHON_SINGLE_TARGET="" declare -x PYTHON_TARGETS="" declare -- QA_FLAGS_IGNORED=".*" declare -x QEMU_SOFTMMU_TARGETS="" declare -x QEMU_USER_TARGETS="" declare -x QPSMTPD_CONFIG="/etc/qpsmtpd" declare RDEPEND="" declare REPOSITORY declare REQUIRED_USE="" declare -x RESTRICT="test" 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 RUSTFLAGS="-C codegen-units=1" declare -x RUST_TEST_TASKS="1" declare -x RUST_TEST_THREADS="1" declare -x S="/var/tmp/portage/sys-process/ctop-0.5.1/work/ctop-0.5.1" declare -x SANDBOX_DEBUG="0" declare -x SANDBOX_DENY="" declare -x SANDBOX_PREDICT="/var/tmp/portage/sys-process/ctop-0.5.1/homedir:/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/cf:/usr/tmp/conftest:/var/tmp/:/var/tmp/portage:/var/tmp/portage/sys-process/ctop-0.5.1/homedir/.bash_history" declare -x SANE_BACKENDS="" declare -x SBCL_HOME="/usr/lib64/sbcl" declare -x SBCL_SOURCE_ROOT="/usr/lib64/sbcl/src" declare -x SHELL="/bin/bash" declare -x SLOT="0" declare SRC_URI="https://github.com/bcicen/ctop/archive/v0.5.1.tar.gz -> ctop-0.5.1.tar.gz https://github.com/fsouza/go-dockerclient/archive/87c7e50e0bcf800ed863c3c3b0fbcc67e3029140.tar.gz -> github.com-fsouza-go-dockerclient-87c7e50e0bcf800ed863c3c3b0fbcc67e3029140.tar.gz https://github.com/docker/docker/archive/c5f178da05b27bda40c863b7d65ef8ef11eb1fbe.tar.gz -> github.com-docker-docker-c5f178da05b27bda40c863b7d65ef8ef11eb1fbe.tar.gz https://github.com/docker/go-units/archive/0dadbb0345b35ec7ef35e228dabb8de89a65bf52.tar.gz -> github.com-docker-go-units-0dadbb0345b35ec7ef35e228dabb8de89a65bf52.tar.gz https://github.com/bcicen/termui/archive/ea10e6ccee219e572ffad0ac1909f1a17f6db7d6.tar.gz -> github.com-bcicen-termui-ea10e6ccee219e572ffad0ac1909f1a17f6db7d6.tar.gz https://github.com/hashicorp/go-cleanhttp/archive/3573b8b52aa7b37b9358d966a898feb387f62437.tar.gz -> github.com-hashicorp-go-cleanhttp-3573b8b52aa7b37b9358d966a898feb387f62437.tar.gz https://github.com/jgautheron/codename-generator/archive/16d037c7cc3c9b552fe4af9828b7338d752dbaf9.tar.gz -> github.com-jgautheron-codename-generator-16d037c7cc3c9b552fe4af9828b7338d752dbaf9.tar.gz https://github.com/maruel/panicparse/archive/25bcac0d793cf4109483505a0d66e066a3a90a80.tar.gz -> github.com-maruel-panicparse-25bcac0d793cf4109483505a0d66e066a3a90a80.tar.gz https://github.com/mattn/go-runewidth/archive/14207d285c6c197daabb5c9793d63e7af9ab2d50.tar.gz -> github.com-mattn-go-runewidth-14207d285c6c197daabb5c9793d63e7af9ab2d50.tar.gz https://github.com/mitchellh/go-wordwrap/archive/ad45545899c7b13c020ea92b2072220eefad42b8.tar.gz -> github.com-mitchellh-go-wordwrap-ad45545899c7b13c020ea92b2072220eefad42b8.tar.gz https://github.com/nsf/termbox-go/archive/7994c181db7761ca3c67a217068cf31826113f5f.tar.gz -> github.com-nsf-termbox-go-7994c181db7761ca3c67a217068cf31826113f5f.tar.gz https://github.com/op/go-logging/archive/970db520ece77730c7e4724c61121037378659d9.tar.gz -> github.com-op-go-logging-970db520ece77730c7e4724c61121037378659d9.tar.gz https://github.com/nu7hatch/gouuid/archive/179d4d0c4d8d407a32af483c2354df1d2c91e6c3.tar.gz -> github.com-nu7hatch-gouuid-179d4d0c4d8d407a32af483c2354df1d2c91e6c3.tar.gz https://github.com/golang/net/archive/6c23252515492caf9b228a9d5cabcdbde29f7f82.tar.gz -> github.com-golang-net-6c23252515492caf9b228a9d5cabcdbde29f7f82.tar.gz" declare -x SYMLINK_LIB="yes" declare -x TASKDDATA="/var/lib/taskd" declare -x TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE="1" declare -x USE="abi_x86_64 amd64 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-fbsd amd64-linux arm arm64 hppa ia64 m68k m68k-mint mips ppc ppc64 ppc64-linux ppc-aix ppc-macos s390 sh sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt" declare -x USE_EXPAND_VALUES_ELIBC="AIX bionic Cygwin Darwin DragonFly FreeBSD glibc HPUX Interix mingw mintlib musl NetBSD OpenBSD SunOS uclibc Winnt" declare -x USE_EXPAND_VALUES_KERNEL="AIX Darwin FreeBSD freemint HPUX linux NetBSD OpenBSD SunOS Winnt" declare -x USE_EXPAND_VALUES_USERLAND="BSD GNU" declare -x UWSGI_PLUGINS="" declare -x VIDEO_CARDS="" declare -x VOICEMAIL_STORAGE="" declare -x XDG_CACHE_HOME="/root/cache" declare -x XDG_CONFIG_DIRS="/etc/xdg" declare -x XDG_CONFIG_HOME="/root/config" declare -x XDG_DATA_DIRS="/usr/local/share:/usr/share" declare -x XDG_DATA_HOME="/root/share" declare -x XDG_DESKTOP_DIR="/root/Desktop" declare -x XDG_DOCUMENTS_DIR="/root/Documents" declare -x XDG_DOWNLOAD_DIR="/root/Downloads" declare -x XDG_MUSIC_DIR="/root/Music" declare -x XDG_PICTURES_DIR="/root/Pictures" declare -x XDG_PUBLICSHARE_DIR="/root/Public" declare -x XDG_RUNTIME_DIR="/root/run" declare -x XDG_TEMPLATES_DIR="/root/Templates" declare -x XDG_VIDEOS_DIR="/root/Videos" declare -x XFCE_PLUGINS="" declare -x XTABLES_ADDONS="" declare -x _E_DOCDESTTREE_="" declare -x _E_EXEDESTTREE_="" declare -- _GOLANG_BASE="1" declare -- _GOLANG_BUILD="1" declare -- phase_func __eapi6_src_install () { if [[ -f Makefile || -f GNUmakefile || -f makefile ]]; then emake DESTDIR="${D}" install; fi; einstalldocs } __eapi6_src_prepare () { if [[ $(declare -p PATCHES 2>/dev/null) == "declare -a"* ]]; then [[ ${#PATCHES[@]} -gt 0 ]] && eapply "${PATCHES[@]}"; else if [[ -n ${PATCHES} ]]; then eapply ${PATCHES}; fi; fi; eapply_user } _golang-vcs-snapshot_dovendor () { local VENDOR_PATH=$1 VENDORPN=$2 TARBALL=$3; rm -fr "${VENDOR_PATH}/${VENDORPN}" || die; mkdir -p "${VENDOR_PATH}/${VENDORPN}" || die; tar -C "${VENDOR_PATH}/${VENDORPN}" -x --strip-components 1 -f "${DISTDIR}"/${TARBALL} || die } 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}; started_applying=1; ebegin "${prefix:-Applying }${f##*/}"; ${patch_cmd} -p1 -f -s -g0 --no-backup-if-mismatch "${patch_options[@]}" < "${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 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 eapply "${f}"; applied=1; fi; done < <(printf -- '%s\0' "${!_eapply_user_patches[@]}" | LC_ALL=C sort -z); fi; ${prev_shopt}; [[ -n ${applied} ]] && ewarn "User patches applied." } ego_pn_check () { [[ -z "${EGO_PN}" ]] && die "${ECLASS}.eclass: EGO_PN is not set"; return 0 } einstalldocs () { ( if ! declare -p DOCS &> /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 [[ $(declare -p DOCS) == "declare -a"* ]]; then [[ ${#DOCS[@]} -gt 0 ]] && docinto / && dodoc -r "${DOCS[@]}"; else [[ -n ${DOCS} ]] && docinto / && dodoc -r ${DOCS}; fi; fi ); ( if [[ $(declare -p HTML_DOCS 2>/dev/null) == "declare -a"* ]]; then [[ ${#HTML_DOCS[@]} -gt 0 ]] && docinto html && dodoc -r "${HTML_DOCS[@]}"; else [[ -n ${HTML_DOCS} ]] && docinto html && dodoc -r ${HTML_DOCS}; fi ) } get_golibdir () { echo /usr/lib/go-gentoo } get_golibdir_gopath () { echo "${EPREFIX}$(get_golibdir)" } get_libdir () { local libdir_var="LIBDIR_${ABI}"; local libdir="lib"; [[ -n ${ABI} && -n ${!libdir_var} ]] && libdir=${!libdir_var}; echo "${libdir}" } golang-build_src_compile () { debug-print-function ${FUNCNAME} "$@"; ego_pn_check; set -- env GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" GOCACHE="${T}/go-cache" go build -v -work -x ${EGO_BUILD_FLAGS} "${EGO_PN}"; echo "$@"; "$@" || die } golang-build_src_install () { debug-print-function ${FUNCNAME} "$@"; ego_pn_check; set -- env GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" go install -v -work -x ${EGO_BUILD_FLAGS} "${EGO_PN}"; echo "$@"; "$@" || die; golang_install_pkgs } golang-build_src_test () { debug-print-function ${FUNCNAME} "$@"; ego_pn_check; set -- env GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" go test -v -work -x "${EGO_PN}"; echo "$@"; "$@" || die } golang-vcs-snapshot_src_unpack () { local lib vendor_path x; ego_pn_check; set -- ${A}; x="$1"; mkdir -p "${WORKDIR}/${P}/src/${EGO_PN%/...}" || die; tar -C "${WORKDIR}/${P}/src/${EGO_PN%/...}" -x --strip-components 1 -f "${DISTDIR}/${x}" || die; if [[ -n "${EGO_VENDOR}" ]]; then vendor_path="${WORKDIR}/${P}/src/${EGO_PN%/...}/vendor"; mkdir -p "${vendor_path}" || die; for lib in "${EGO_VENDOR[@]}"; do lib=(${lib}); if [[ -n ${lib[2]} ]]; then einfo "Vendoring ${lib[0]} ${lib[2]//\//-}-${lib[1]}.tar.gz"; _golang-vcs-snapshot_dovendor "${vendor_path}" ${lib[0]} ${lib[2]//\//-}-${lib[1]}.tar.gz; else einfo "Vendoring ${lib[0]} ${lib[0]//\//-}-${lib[1]}.tar.gz"; _golang-vcs-snapshot_dovendor "${vendor_path}" ${lib[0]} ${lib[0]//\//-}-${lib[1]}.tar.gz; fi; done; fi } golang_install_pkgs () { debug-print-function ${FUNCNAME} "$@"; ego_pn_check; insinto "$(get_golibdir)"; insopts -m0644 -p; doins -r pkg src } in_iuse () { local use=${1}; if [[ -z "${use}" ]]; then echo "!!! in_iuse() called without a parameter." 1>&2; echo "!!! in_iuse " 1>&2; die "in_iuse() called without a parameter"; fi; local liuse=(${IUSE_EFFECTIVE}); has "${use}" "${liuse[@]#[+-]}" } pkg_nofetch () { default } src_compile () { export CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')"; pushd src/${EGO_PN%/*} || die; GOPATH="${WORKDIR}/${P}" go build -tags release -ldflags "-X main.version=${PV} -X main.build=${EGIT_COMMIT:0:7}" -o ${PN} || die; popd || die } src_configure () { default } src_install () { pushd src/${EGO_PN%/*} || die; dobin ${PN}; dodoc README.md; popd || die } src_prepare () { default } src_test () { golang-build_src_test "$@" } src_unpack () { golang-vcs-snapshot_src_unpack "$@" }