------------------------------------------------------------------------------ This is the build.log for app-accessibility/java-access-bridge-1.6.0-r1 ------------------------------------------------------------------------------ >>> cfg-update-1.8.2-r1: Creating checksum index... setup /usr/lib64/portage/pym/portage_dep.py:39: DeprecationWarning: DEPRECATION NOTICE: The portage_dep module was replaced by portage.dep /usr/lib64/portage/pym/portage_dep.py:39: DeprecationWarning: DEPRECATION NOTICE: The portage_dep module was replaced by portage.dep /usr/lib64/portage/pym/portage_dep.py:39: DeprecationWarning: DEPRECATION NOTICE: The portage_dep module was replaced by portage.dep * Using: sun-jdk-1.6 unpack >>> Unpacking source... >>> Unpacking java-access-bridge-1.6.0.tar.bz2 to /var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work * Fixing OMF Makefiles ...  [ ok ] >>> Source unpacked. compile >>> Compiling source in /var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0 ... * econf: updating java-access-bridge-1.6.0/config.guess with /usr/share/gnuconfig/config.guess * econf: updating java-access-bridge-1.6.0/config.sub with /usr/share/gnuconfig/config.sub ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-java-home=/opt/sun-jdk-1.6.0.06 --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking whether make sets $(MAKE)... yes checking for working aclocal-1.4... found checking for working autoconf... found checking for working automake-1.4... found checking for working autoheader... found checking for working makeinfo... found checking for "/opt/sun-jdk-1.6.0.06/bin/java"... yes checking JDK version... 1.6.0 checking for "/opt/sun-jdk-1.6.0.06/bin/javac"... yes checking for "/opt/sun-jdk-1.6.0.06/bin/idlj"... yes checking for "/opt/sun-jdk-1.6.0.06/bin/jar"... yes checking for x86_64-pc-linux-gnu-pkg-config... no checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for JAVA_BRIDGE... yes configure: creating ./config.status config.status: creating Makefile config.status: creating idlgen/Makefile config.status: creating idlgen/org/Makefile config.status: creating idlgen/org/GNOME/Makefile config.status: creating idlgen/org/GNOME/Accessibility/Makefile config.status: creating idlgen/org/GNOME/Bonobo/Makefile config.status: creating util/Makefile config.status: creating util/org/Makefile config.status: creating util/org/GNOME/Makefile config.status: creating util/org/GNOME/Accessibility/Makefile config.status: creating impl/Makefile config.status: creating impl/org/Makefile config.status: creating impl/org/GNOME/Makefile config.status: creating impl/org/GNOME/Accessibility/Makefile config.status: creating impl/org/GNOME/Bonobo/Makefile config.status: creating bridge/Makefile config.status: creating bridge/org/Makefile config.status: creating bridge/org/GNOME/Makefile config.status: creating bridge/org/GNOME/Accessibility/Makefile config.status: creating at-client/Makefile config.status: creating at-client/org/Makefile config.status: creating at-client/org/GNOME/Makefile config.status: creating at-client/org/GNOME/Accessibility/Makefile config.status: creating registry/Makefile config.status: creating registry/org/Makefile config.status: creating registry/org/GNOME/Makefile config.status: creating registry/org/GNOME/Accessibility/Makefile config.status: creating test/Makefile Making all in idlgen make[1]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen' Making all in org make[2]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org' Making all in GNOME make[3]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME' Making all in Accessibility make[4]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Accessibility' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Accessibility' Making all in Bonobo make[4]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Bonobo' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Bonobo' make[4]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME' make[4]: Nothing to be done for `all-am'. make[4]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME' make[3]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME' make[3]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org' make[2]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org' make[2]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen' /opt/sun-jdk-1.6.0.06/bin/idlj \ -pkgPrefix Bonobo org.GNOME \ -pkgPrefix Accessibility org.GNOME \ -emitAll -i /usr/share/idl/bonobo-activation-2.0 -i /usr/share/idl/at-spi-1.0 -i /usr/share/idl/bonobo-2.0 \ -fallTie /usr/share/idl/at-spi-1.0/Accessibility.idl touch ../jar-stamp /usr/share/idl/at-spi-1.0/Accessibility_Collection.idl (line 66): WARNING: Identifier `object' collides with a keyword; use an escaped identifier to ensure future compatibility. boolean isAncestorOf (in Accessible object); ^ /usr/share/idl/at-spi-1.0/Accessibility_Component.idl (line 83): WARNING: Identifier `Component' collides with a keyword; use an escaped identifier to ensure future compatibility. interface Component : Bonobo::Unknown { ^ make[3]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Bonobo' CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentTypeHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 FIELD_CONTENT_TYPE.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 FIELD_SIZE.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 FIELD_TYPE.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Storage.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageInfo.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageInfoFieldsHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageInfoHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageInfoHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StoragePOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StoragePOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageTypeHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StorageTypeHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StreamHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StreamPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 StreamPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 UnknownHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 UnknownPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 UnknownPOATie.java make[3]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Bonobo' make[3]: Entering directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Accessibility' CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Accessible.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessibleHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessibleHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessibleOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessiblePOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessiblePOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessibleSetHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AccessibleSetHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Action.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ActionHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ActionHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ActionOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ActionPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ActionPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ApplicationHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ApplicationPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ApplicationPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 AttributeSetHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 BoundingBox.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 BoundingBoxHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 BoundingBoxHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Collection.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CollectionHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CollectionHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CollectionOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CollectionPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CollectionPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Command.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListener.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListenerHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListenerHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListenerOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListenerPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 CommandListenerPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Component.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentLayer.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentLayerHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentLayerHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ComponentPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentStream.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentStreamHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentStreamHolder.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentStreamOperations.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentStreamPOA.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ContentStreamPOATie.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 ControllerEventMaskHelper.java CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 Desktop.java ../../../../idlgen/org/GNOME/Accessibility/_ContentStreamStub.java:51: cannot access org.GNOME.Accessibility.ContentStreamPackage.NotSupportedHelper bad class file: ../../../../idlgen/org/GNOME/Accessibility/ContentStreamPackage/NotSupportedHelper.class class file contains wrong class: org.GNOME.Accessibility.ContentStreamPackage.IOErrorHelper Please remove or make sure it appears in the correct subdirectory of the classpath. throw org.GNOME.Accessibility.ContentStreamPackage.NotSupportedHelper.read ($in); ^ 1 error CLASSPATH=../../../../idlgen /opt/sun-jdk-1.6.0.06/bin/javac -source 1.4 -target 1.4 DesktopHelper.java make[3]: *** [ContentStreamHolder.class] Error 1 make[3]: *** Waiting for unfinished jobs.... make[3]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen/org/GNOME/Accessibility' make[2]: *** [org/GNOME/Accessibility/Accessible.class] Error 2 make[2]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0/idlgen' make: *** [all-recursive] Error 1 * * ERROR: app-accessibility/java-access-bridge-1.6.0-r1 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 4385: Called die * The specific snippet of code: * emake JAVAC="${JAVAC} ${JAVACFLAGS}" || die "compile failure" * The die message: * compile failure * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/temp/environment'. * !!! When you file a bug report, please include the following information: GENTOO_VM=sun-jdk-1.6 CLASSPATH="" JAVA_HOME="/opt/sun-jdk-1.6.0.06" JAVACFLAGS="-source 1.4 -target 1.4" COMPILER="" and of course, the output of emerge --info --------------------------------- This was my last "emerge --info" --------------------------------- Portage 2.2_pre5 (default-linux/amd64/2007.0, gcc-4.2.3, glibc-2.7-r2, 2.6.24.4 x86_64) ================================================================= System uname: 2.6.24.4 x86_64 Dual-Core AMD Opteron(tm) Processor 2210 Timestamp of tree: Sat, 10 May 2008 01:45:01 +0000 distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.5.2-r2 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 9999 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.62 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.4 virtual/os-headers: 2.6.25-r1 ABI="amd64" ACCEPT_KEYWORDS="amd64 ~amd64" ADA_INCLUDE_PATH="/usr/lib64/gnat-gcc/x86_64-pc-linux-gnu/4.2/adainclude" ADA_OBJECTS_PATH="/usr/lib64/gnat-gcc/x86_64-pc-linux-gnu/4.2/adalib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ANT_HOME="/usr/share/ant-core" APACHE2_MODULES="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 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" ARCH="amd64" ASFLAGS_x86="--32" AUTOCLEAN="yes" BLASTDB="/usr/share/ncbi/formatdb" BLASTMAT="/usr/share/ncbi/data" CBUILD="x86_64-pc-linux-gnu" CCACHE_DIR="/distccache/.ccache" CCACHE_SIZE="9G" CDEFINE_amd64="__x86_64__" CDEFINE_x86="__i386__" CDF_BASE="/usr" CDF_BIN="${CDF_BASE}/bin" CDF_HELP="${CDF_BASE}/lib/cdf/help" CDF_INC="${CDF_BASE}/include" CDF_LIB="${CDF_BASE}/lib" CFLAGS="-O2 -pipe -march=opteron" CFLAGS_x86="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" CF_LIB="/usr/share/confluence" CHOST="x86_64-pc-linux-gnu" CHOST_amd64="x86_64-pc-linux-gnu" CHOST_x86="i686-pc-linux-gnu" CLASSPATH=".:/usr/lib64/CMT/v1r20p20080222/java/cmt.jar" CLEAN_DELAY="5" CMTBIN="Linux-x86_64" CMTCONFIG="Linux-x86_64" CMTROOT="/usr/lib64/CMT/v1r20p20080222" COLORTERM="" CONFIG_PROTECT="/etc /opt/openjms/config /usr/kde/4.0/env /usr/kde/4.0/share/config /usr/kde/4.0/shutdown /usr/share/config /usr/spool/PBS /var/bind /var/service" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" COOT_REFMAC_LIB_DIR="/usr/share/coot/lib" CPLUS_INCLUDE_PATH="/root/System/Links/Headers:/usr/lib64/qt/include" CVS_RSH="ssh" CXXFLAGS="-O2 -pipe -march=opteron" C_INCLUDE_PATH="/root/System/Links/Headers" DCCC_PATH="/usr/lib/distcc/bin" DEFAULT_ABI="amd64" DISPLAY="localhost:0" DISTCC_DIR="/distccache/.distcc distccmon-text 3" DISTCC_LOG="" DISTCC_VERBOSE="0" DISTDIR="/pub/gentoo/portage/distfiles" EDITOR="/bin/nano" ELIBC="glibc" EMBOSS_ACDROOT="/usr/share/EMBOSS/acd" EMERGE_DEFAULT_OPTS="--tree --verbose --newuse --with-bdeps=y --deep --buildpkg" EMERGE_WARNING_DELAY="10" FEATURES="ccache distlocks fixpackages loadpolicy metadata-transfer parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch" FETCHCOMMAND="/usr/bin/getdelta.sh ${URI}" FLTK_DOCDIR="/usr/share/doc/fltk-1.1.7-r3/html" GAMBCOPT="=/usr/" GCC_SPECS="" GDK_USE_XFT="1" GENERATION="2" GENTOO_MIRRORS="http://gentoo.osuosl.org/" GMTHOME="/usr/share/gmt-4.1.1" GRASS_HOME="/usr/grass62" GRASS_LD_LIBRARY_PATH="/usr/grass62/lib" GS_LIB="/home/shingoshi/.fonts" GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:/home/shingoshi/.gtkrc-2.0:/usr/home/shingoshi/.kde/share/config/gtkrc-2.0" GTK_RC_FILES="/etc/gtk/gtkrc:/home/shingoshi/.gtkrc:/usr/home/shingoshi/.kde/share/config/gtkrc" GUILE_LOAD_PATH="/usr/share/guile/1.8" G_BROKEN_FILENAMES="1" HISTCONTROL="ignoredups" HOME="/root" HOSTNAME="starbase64.intelligencia-one" HUSHLOGIN="FALSE" INFODIR="/usr/GNUstep/System/Library/Documentation/info:/usr/GNUstep/Local/Library/Documentation/info" INFOPATH="/root/System/Links/Manuals/info:/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.18/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.3/info:/usr/share/info/emacs-22:/usr/share/gnat-gcc-data/x86_64-pc-linux-gnu/4.2/info:/usr/brlcad/info:/usr/GNUstep/System/Library/Documentation/info:/usr/GNUstep/Local/Library/Documentation/info" INPUTRC="/etc/inputrc" INPUT_DEVICES="keyboard mouse evdev" JAVAC="/etc/java-config-2/current-system-vm/bin/javac" JAVA_HOME="/etc/java-config-2/current-system-vm" JDK_HOME="/etc/java-config-2/current-system-vm" KDEDIR="/usr" KDEDIRS="/usr:/usr/local:/usr/kde/4.0" KDESU_USER="shingoshi" KDE_MULTIHEAD="false" KDE_SESSION_UID="1002" KERNEL="linux" KONSOLE_DCOP="DCOPRef(konsole-10883,konsole)" KONSOLE_DCOP_SESSION="DCOPRef(konsole-10883,session-1)" LADSPA_PATH="/usr/lib64/ladspa" LANG="en_US.UTF-8" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LC_COLLATE="C" LDFLAGS_x86="-m elf_i386 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" LD_LIBRARY_PATH="/root/System/Links/Libraries" LESS="-MQi" LESSCHARSET="latin1" LESSOPEN="|lesspipe.sh %s" LIBDIR_amd64="lib64" LIBDIR_x86="lib32" LIBXCB_ALLOW_SLOPPY_LOCK="1" LINGUAS="af ar as_IN az be be_BY bg bo bn br bs ca cs cy da de dz el en en_GB en_US en_ZA eo es et eu fa fi fr ga gl gu_IN he hi hi_IN hr hu hy id is it ja km ko ku la lo lt lv mk ml ml_IN mn mr_IN nb nds ne nl nn no nr ns nz or_IN pa pa_IN pl ps pt pt_BR ro ru rw se sh_YU sk sl sq sr sr_CS ss st su sv sw_TZ ta ta_IN te_IN tg th ti_ER tn tr ts uk ur_IN ve vi xh zh zh_CN zh_TW zu" LOGNAME="root" LS_COLORS="rs=0:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:" LS_OPTIONS=" -F -b -T 0 --color=auto " MAKEOPTS="-j8" MANPATH="/root/System/Links/Manuals:/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.18/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.3/man:/opt/intel/cce/10.0.026/man:/opt/blackdown-jdk-1.4.2.03/man:/etc/java-config/system-vm/man/:/usr/lib64/php5/man/:/usr/kde/4.0/share/man:/usr/dx/man:/usr/share/gnat-gcc-data/x86_64-pc-linux-gnu/4.2/man:/usr/lib64/erlang/man:/usr/brlcad/man:/usr/GNUstep/System/Library/Documentation/man:/usr/GNUstep/Local/Library/Documentation/man:/usr/grass62/man:/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.18/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.3/man:/opt/intel/cce/10.0.026/man:/opt/blackdown-jdk-1.4.2.03/man:/usr/lib64/php5/man/:/usr/kde/4.0/share/man:/usr/dx/man:/usr/share/gnat-gcc-data/x86_64-pc-linux-gnu/4.2/man:/usr/lib64/erlang/man:/usr/brlcad/man:/usr/GNUstep/System/Library/Documentation/man:/usr/grass62/man" MINICOM="-c on" MULTILIB_ABIS="amd64 x86" MULTILIB_STRICT_DENY="64-bit.*shared object" MULTILIB_STRICT_DIRS="/lib /usr/lib /usr/kde/*/lib /usr/qt/*/lib /usr/X11R6/lib" MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)" NCBI="/etc/ncbi" NOCOLOR="true" OLDPWD="/" OMNIORB_CONFIG="/etc/omniorb/omniORB.cfg" OPENGL_PROFILE="xorg-x11" PAGER="less" PATH="/root/System/Links/Executables:/usr/bin:/usr/jrockit/bin:/usr/jrockit/jre/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.2.3:/opt/intel/cce/10.0.026/bin:/opt/blackdown-jdk-1.4.2.03/bin:/opt/blackdown-jdk-1.4.2.03/jre/bin:/usr/lib/plan9/bin:/opt/c3-4:/usr/kde/4.0/sbin:/usr/kde/4.0/bin:/usr/x86_64-pc-linux-gnu/gnat-gcc-bin/4.2:/usr/libexec/gnat-gcc/x86_64-pc-linux-gnu/4.2:/opt/firebird/bin:/usr/lib/subversion/bin:/usr/GNUstep/System/Tools:/usr/GNUstep/Local/Tools" PKGDIR="/pub/gentoo/portage/packages" PKG_CONFIG_PATH="/root/System/Links/Libraries/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig" PLAN9="/usr/lib/plan9" PLPLOT_LIB="/usr/share/EMBOSS/" PORTAGE_ARCHLIST="ppc s390 amd64 x86 ppc64 x86-fbsd m68k arm sparc sh mips ia64 alpha hppa sparc-fbsd" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_BIN_PATH="/usr/lib64/portage/bin" PORTAGE_COMPRESS="lzma" PORTAGE_CONFIGROOT="/" PORTAGE_DEBUG="0" PORTAGE_DEPCACHEDIR="/var/cache/edb/dep" PORTAGE_ECLASS_WARNING_ENABLE="0" PORTAGE_ELOG_CLASSES="warn error log" PORTAGE_ELOG_MAILFROM="portage@localhost" PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}" PORTAGE_ELOG_MAILURI="root" PORTAGE_ELOG_SYSTEM="save" PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5" PORTAGE_GID="250" PORTAGE_INST_GID="0" PORTAGE_INST_UID="0" PORTAGE_PYM_PATH="/usr/lib64/portage/pym" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_RSYNC_RETRIES="3" PORTAGE_TMPDIR="/var/tmp" PORTAGE_WORKDIR_MODE="0700" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/opt/layman/portato /opt/layman/zugaina /opt/layman/postgresql-testing /opt/layman/science /opt/layman/kolab /opt/layman/catapult /opt/layman/pro-audio /opt/layman/ltsp /opt/layman" PRELINK_PATH_MASK="/lib/modules:/usr/lib64/locale:/usr/lib64/wine:/usr/lib64/valgrind:*.la:*.png:*.py:*.pl:*.pm:*.sh:*.xml:*.xslt:*.a:*.js:/usr/lib64/klibc" PVM_ARCH="LINUX64" PVM_ROOT="/usr/share/pvm3" PWD="/pub/gentoo/portage" PYMOL_DATA="/usr/share/pymol/data" PYMOL_PATH="/usr/lib64/python2.5/site-packages/pymol" PYMOL_SCRIPTS="/usr/share/pymol/scripts" PYTHONDOCS="/usr/share/doc/python-docs-2.5.1/html/lib" PYTHONPATH="/root/System/Links/Libraries/python2.3/site-packages:/root/System/Links/Libraries/python2.4/site-packages" QRNADB="/usr/share/qrna/data" QTDIR="/usr/lib64/qt" RCSBROOT="/usr/lib/rcsb" RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" ROOT="/" ROOTLESS_GOBOLINUX="1" ROOTPATH="/usr/sbin:/usr/bin:/usr/jrockit/bin:/usr/jrockit/jre/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.2.3:/opt/intel/cce/10.0.026/bin:/opt/blackdown-jdk-1.4.2.03/bin:/opt/blackdown-jdk-1.4.2.03/jre/bin:/usr/lib/plan9/bin:/opt/c3-4:/usr/kde/4.0/sbin:/usr/kde/4.0/bin:/usr/x86_64-pc-linux-gnu/gnat-gcc-bin/4.2:/usr/libexec/gnat-gcc/x86_64-pc-linux-gnu/4.2:/opt/firebird/bin:/usr/lib/subversion/bin:/usr/GNUstep/System/Tools:/usr/GNUstep/Local/Tools" RPMDIR="/usr/portage/rpm" RUBYOPT="-rauto_gem" R_HOME="/usr/lib64/R" SANE_CONFIG_DIR="/etc/sane.d" SCHEME_LIBRARY_PATH="/usr/share/slib/" SESSION_MANAGER="local/starbase64:/tmp/.ICE-unix/9239" SGML_CATALOG_FILES="/etc/sgml/sgml-docbook.cat:/etc/sgml/openjade-1.3.2.cat:/etc/sgml/dsssl-docbook-stylesheets.cat:/etc/sgml/sgml-docbook-3.1.cat:/etc/sgml/sgml-lite.cat:/etc/sgml/sgml-docbook-3.0.cat:/etc/sgml/sgml-docbook-4.1.cat:/etc/sgml/sgml-docbook-4.0.cat:/etc/sgml/xml-simple-docbook-4.1.2.4.cat:/etc/sgml/xml-simple-docbook-1.0.cat:/etc/sgml/xml-docbook-4.1.2.cat:/etc/sgml/xml-docbook-4.4.cat:/etc/sgml/sgml-docbook-4.2.cat:/etc/sgml/sgml-ent.cat:/etc/sgml/sgml-docbook-4.4.cat:/etc/sgml/xml-docbook-4.2.cat:/etc/sgml/xml-docbook-4.5.cat:/etc/sgml/sgml-docbook-4.5.cat:/etc/sgml/linuxdoc.cat:/etc/sgml/xml-docbook-4.3.cat" SHELL="/bin/bash" SHLVL="14" STAGE1_USE="nptl nptlonly unicode" SVCDIR="/service" SVCTIMEOUT="15" SVCVARDIR="/var/service" SYMLINK_LIB="yes" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" T1LIB_CONFIG="/usr/share/t1lib/t1lib.config" TERM="xterm" TEXINPUTS="/usr/lib64/ocaml/ocamldoc:" TINYSCHEMEINIT="/usr/share/tinyscheme/init.scm" USB_DEVFS_PATH="/dev/bus/usb" USE="3dnow 7zip R X Xaw3d a52 aac aalib accessibility acl acpi ada addbookmarks administrator agg alias allegro alsa amarok amd64 ansi antlr apache2 apidocs apm archive artworkextra audacious auto-completion autocreate autoipd automount autoreplace autosieve avalon-framework avalon-logkit bash-completion bcmath berkdb bidi big-tables binary-drivers bindist binfilter bittorrent bjam blas bluetooth boost bugzilla builder bzip2 c++ cairo calendar caps captury ccache cdb cdf cdr cgi chicken chm chroot ciao cjk cli clisp cln cluster colordiff concurrentmodphp contactnotes cpio cracklib crypt cscope ctype cups curl curlwrappers cursors cvs cxx d darcs dbus deprecated devhelp dga directfb discouraged disk-partition djvu dlopen dmi dmx doc dri dv dvd dvdr dvdread dx eds elisp emacs encode epiphany epydoc esd etc-proposals examples exif extensions extra extraengine extrafilters fame fastbuild fat fbcon fbdev ffmpeg fftw file-icons filter finger fits flac flash fltk fontconfig foomaticdb force-cgi-redirect fortran fortran95 fpx ftp g15 galago gcl gconf gd gdal gdbm gdm geos ggi gif ginac git glade glib glut glw gmath gmp gnome gopher gpg gphoto2 gpm grammar graphics graphviz grub gs gsl gsm gstreamer gtk gtkhtml gtkspell gzip-el hal hddtemp hdf hdf5 hdri hesiod heterogeneous hfs highlight hipe history hlapi html htmlhandbook icons iconv icu idled idn ieee1394 image imagemagick imlib imlib2 inode int64 interpreter iodbc ipod iproute2 ipv6 isdnlog itcl ithreads jabber jack jadetex java java6 javamail javascript jbig jce jdepend jfs jikes jingle jms joystick jpeg jpeg2k jrtplib kde kdm kerberos lapack largefile lash latex lcms ldap ldap-sasl libcaca libnotify libwww linuxthreads-tls lm_sensors log4j lua lvm1 lzo mad mailwrapper math max-idx-128 md5sum mdb mdnsresponder-compat mhash midi mikmod mime mjpeg mmap mmx mng mono motif mouse mozdom mp2 mp3 mpe mpe-sdk mpeg mpeg2 mpi mpi_njtree msn mudflap multipath multiprocess multislot musicbrainz mysql mysqli nas ncurses netcdf network networking networkmanager nis njb nls nntp nptl nptlonly nsplugin nspr ntfs numarray numeric objc objc++ objc-gc ocaml octave odbc odk ogg openal openexr opengl openmp openssl ospfapi oss overlays overload pam passwordsave pch pcntl pcre pcsc-lite pda pdf pdo perl php pike pixmaps plasma plib plotutils plplot png portaudio posix pppd prelude profile pulseaudio pvfs2 pymacs pymol pyste python q32 qt3support qt4 quicktime readline realms reflection reiserfs replication resolvconf roundrobin ruby samba sasl scanner script sdl sdl-image sdl-sound sdlaudio seamonkey sendmail sensord serial server servletapi session sharedext slang smp sndfile snmp soap sockets sound source sourceview speedo speex spell spl sqlite sqlite3 sse sse2 ssl startup-notification subversion svg svgz svnserve swig sysfs sysvipc szip t1lib taglib tao tcl tcpd tcpmd5 tcpwrapper tex4ht theora threads threadsafe threadsonly thunderbird tiff tk toolkit-scroll-bars tools transcode translator truetype twisted unicode usb userpriv v4l v4l2 vga vhosts vim vim-pager vim-syntax vim-with-x visualization vorbis waconf wav wavpack webdav wmf wordperfect x11vnc xattr xcb xcf xcomposite xemacs xen xface xforms xfs xft xhtml xim xine xinerama xinetd xml xmlreader xmlrpc xmlwriter xmp xorg xosd xplanet xpm xprint xscreensaver xsl xterm xulrunner xv xvid xvnc yahoo yaz yv12 zip-external zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="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 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="af ar as_IN az be be_BY bg bo bn br bs ca cs cy da de dz el en en_GB en_US en_ZA eo es et eu fa fi fr ga gl gu_IN he hi hi_IN hr hu hy id is it ja km ko ku la lo lt lv mk ml ml_IN mn mr_IN nb nds ne nl nn no nr ns nz or_IN pa pa_IN pl ps pt pt_BR ro ru rw se sh_YU sk sl sq sr sr_CS ss st su sv sw_TZ ta ta_IN te_IN tg th ti_ER tn tr ts uk ur_IN ve vi xh zh zh_CN zh_TW zu" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i810 mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo" USER="root" USERLAND="GNU" USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS USERLAND VIDEO_CARDS" USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND" USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i810 mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo" VMHANDLE="blackdown-jdk-1.4.2" VTKHOME="/usr" VTK_DATA_ROOT="/usr/share/vtk/data" VTK_DIR="/usr/lib/vtk-5.0" WINDOWID="117440552" WINDOWPATH="7" XAUTHORITY="/tmp/xauth.XXXXJ8UbhB" XCURSOR_THEME="redglass" XDG_CONFIG_DIRS="/root/System/Settings/xdg" XDG_DATA_DIRS="/root/System/Variable/xdg:/root/System/Links/Shared:/usr/share:/usr/kde/4.0/share:/usr/local/share" XPVM_ROOT="/usr/local/pvm3/xpvm/src" _="/usr/bin/emerge" goboPrefix="/root" ---------------------------------------------------- java-access-bridge-1.6.0-r1: Build Environment ---------------------------------------------------- ABI=amd64 ADA_INCLUDE_PATH=/usr/lib64/gnat-gcc/x86_64-pc-linux-gnu/4.2/adainclude ADA_OBJECTS_PATH=/usr/lib64/gnat-gcc/x86_64-pc-linux-gnu/4.2/adalib ALSA_CARDS='ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci' ALSA_PCM_PLUGINS='adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol' ANT_HOME=/usr/share/ant-core ANT_OPTS= ANT_TASKS= APACHE2_MODULES='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 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' ARCH=amd64 ASFLAGS_x86=--32 BLASTDB=/usr/share/ncbi/formatdb BLASTMAT=/usr/share/ncbi/data CBUILD=x86_64-pc-linux-gnu CDEFINE_amd64=__x86_64__ CDEFINE_default=__unix__ CDEFINE_x86=__i386__ CDF_BASE=/usr CDF_BIN='${CDF_BASE}/bin' CDF_HELP='${CDF_BASE}/lib/cdf/help' CDF_INC='${CDF_BASE}/include' CDF_LIB='${CDF_BASE}/lib' CFLAGS='-O2 -pipe -march=opteron' CFLAGS_default= CFLAGS_x86='-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib' CF_LIB=/usr/share/confluence CHOST=x86_64-pc-linux-gnu CHOST_amd64=x86_64-pc-linux-gnu CHOST_default=x86_64-pc-linux-gnu CHOST_x86=i686-pc-linux-gnu CLASSPATH= CMTBIN=Linux-x86_64 CMTCONFIG=Linux-x86_64 CMTROOT=/usr/lib64/CMT/v1r20p20080222 COMMON_DEPEND=$'>=gnome-base/libbonobo-2\n\t>=gnome-extra/at-spi-1.7.10' COOT_REFMAC_LIB_DIR=/usr/share/coot/lib CPLUS_INCLUDE_PATH=/root/System/Links/Headers:/usr/lib64/qt/include CTARGET_default=x86_64-pc-linux-gnu CVS_RSH=ssh CXXFLAGS='-O2 -pipe -march=opteron' C_INCLUDE_PATH=/root/System/Links/Headers DCCC_PATH=/usr/lib/distcc/bin DEFAULT_ABI=amd64 DEPEND=$'>=gnome-base/libbonobo-2\n\t>=gnome-extra/at-spi-1.7.10\n\t>=virtual/jdk-1.4\n\t>=dev-util/pkgconfig-0.9 >=dev-java/java-config-2.0.33-r1 >=sys-apps/portage-2.1.2.7 >=sys-apps/sed-4' DESCRIPTION='Gnome Java Accessibility Bridge' DESTTREE=/usr DIROPTIONS=-m0755 DOCS='AUTHORS ChangeLog NEWS README' EAPI= EBUILD_DEATH_HOOKS=' java-pkg_die' ELIBC=glibc ELIBTOOL_VERSION=2.0.2 ELTCONF= ELT_APPLIED_PATCHES= ELT_LTMAIN_SH= ELT_PATCH_DIR=/usr/portage/eclass/ELT-patches EMBOSS_ACDROOT=/usr/share/EMBOSS/acd EPATCH_EXCLUDE= EPATCH_FORCE=no EPATCH_MULTI_MSG='Applying various patches (bugfixes/updates) ...' EPATCH_OPTS='-g0 -E --no-backup-if-mismatch' EPATCH_SINGLE_MSG= EPATCH_SOURCE=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/patch EPATCH_SUFFIX=patch.bz2 EXEOPTIONS=-m0755 FEATURES='ccache distlocks fixpackages loadpolicy metadata-transfer parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch' FLTK_DOCDIR=/usr/share/doc/fltk-1.1.7-r3/html G2CONF=--with-java-home=/opt/sun-jdk-1.6.0.06 GAMBCOPT==/usr/ GCC_SPECS= GCONFTOOL_BIN=/usr/bin/gconftool-2 GDK_USE_XFT=1 GENERATION=2 GENTOO_VM=sun-jdk-1.6 GMTHOME=/usr/share/gmt-4.1.1 GNOME_TARBALL_SUFFIX=bz2 GRASS_HOME=/usr/grass62 GRASS_LD_LIBRARY_PATH=/usr/grass62/lib GS_LIB=/home/shingoshi/.fonts GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/shingoshi/.gtkrc-2.0:/usr/home/shingoshi/.kde/share/config/gtkrc-2.0 GTK_RC_FILES=/etc/gtk/gtkrc:/home/shingoshi/.gtkrc:/usr/home/shingoshi/.kde/share/config/gtkrc GUILE_LOAD_PATH=/usr/share/guile/1.8 G_BROKEN_FILENAMES=1 HISTCONTROL=ignoredups HOMEPAGE=http://developer.gnome.org/projects/gap/ HUSHLOGIN=FALSE INFODIR=/usr/GNUstep/System/Library/Documentation/info:/usr/GNUstep/Local/Library/Documentation/info INHERITED='toolchain-funcs java-pkg-2 portability java-utils-2 versionator multilib gnome2-utils gnome2 gnome.org fdo-mime libtool eutils' INPUTRC=/etc/inputrc INPUT_DEVICES='keyboard mouse evdev' INSDESTTREE= INSOPTIONS=-m0644 IUSE=' elibc_FreeBSD debug' I_WANT_GLOBAL_JAVA_OPTIONS=true JAVA=/opt/sun-jdk-1.6.0.06/bin/java JAVAC=/opt/sun-jdk-1.6.0.06/bin/javac JAVACFLAGS='-source 1.4 -target 1.4' JAVA_HOME=/opt/sun-jdk-1.6.0.06 JAVA_PKG_ALLOW_VM_CHANGE=yes JAVA_PKG_COMPILERS_CONF=/etc/java-config-2/build/compilers.conf JAVA_PKG_COMPILER_DIR=/usr/share/java-config-2/compiler JAVA_PKG_DEPEND_FILE=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/temp/java-pkg-depend JAVA_PKG_ENV=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/image//usr/share/java-access-bridge/package.env JAVA_PKG_EXTRA_ENV=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/temp/java-pkg-extra-env JAVA_PKG_EXTRA_ENV_VARS= JAVA_PKG_E_DEPEND='>=dev-java/java-config-2.0.33-r1 >=sys-apps/portage-2.1.2.7' JAVA_PKG_JARDEST=/usr/share/java-access-bridge/lib JAVA_PKG_LIBDEST=/usr/lib64/java-access-bridge JAVA_PKG_NAME=java-access-bridge JAVA_PKG_OPTIONAL_DEPEND_FILE=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/temp/java-pkg-optional-depend JAVA_PKG_PORTAGE_DEP='>=sys-apps/portage-2.1.2.7' JAVA_PKG_QA_VIOLATIONS=0 JAVA_PKG_SHAREPATH=/usr/share/java-access-bridge JAVA_PKG_SOURCESPATH=/usr/share/java-access-bridge/sources/ JAVA_PKG_VIRTUALS_PATH=/usr/share/java-config-2/virtuals JAVA_PKG_VIRTUAL_PROVIDER=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/image///usr/share/java-config-2/virtuals/java-access-bridge JAVA_PKG_WARDEST=/usr/share/java-access-bridge/webapps JDK_HOME=/opt/sun-jdk-1.6.0.06 KDEDIR=/usr KDEDIRS=/usr:/usr/local:/usr/kde/4.0 KDESU_USER=shingoshi KDE_MULTIHEAD=false KDE_SESSION_UID=1002 KERNEL=linux KERNEL_ABI=amd64 KEYWORDS='~amd64 ~ppc ~ppc64 ~x86' KONSOLE_DCOP='DCOPRef(konsole-10883,konsole)' KONSOLE_DCOP_SESSION='DCOPRef(konsole-10883,session-1)' KV=2.6.24.4 LADSPA_PATH=/usr/lib64/ladspa LANG=C LCD_DEVICES='bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text' LC_ALL=C LC_COLLATE=C LDFLAGS_default= LDFLAGS_x86='-m elf_i386 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib' LD_LIBRARY_PATH=/root/System/Links/Libraries:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/native_threads/:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/xawt/:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/server/ LESSCHARSET=latin1 LIBDIR_amd64=lib64 LIBDIR_default=lib LIBDIR_x86=lib32 LIBOPTIONS=-m0644 LIBXCB_ALLOW_SLOPPY_LOCK=1 LICENSE=LGPL-2 LINGUAS='af ar as_IN az be be_BY bg bo bn br bs ca cs cy da de dz el en en_GB en_US en_ZA eo es et eu fa fi fr ga gl gu_IN he hi hi_IN hr hu hy id is it ja km ko ku la lo lt lv mk ml ml_IN mn mr_IN nb nds ne nl nn no nr ns nz or_IN pa pa_IN pl ps pt pt_BR ro ru rw se sh_YU sk sl sq sr sr_CS ss st su sv sw_TZ ta ta_IN te_IN tg th ti_ER tn tr ts uk ur_IN ve vi xh zh zh_CN zh_TW zu' LS_OPTIONS=' -F -b -T 0 --color=auto ' MAKEOPTS=-j8 MINICOM='-c on' MULTILIB_ABIS='amd64 x86' MULTILIB_STRICT_DENY='64-bit.*shared object' MULTILIB_STRICT_DIRS='/lib /usr/lib /usr/kde/*/lib /usr/qt/*/lib /usr/X11R6/lib' MULTILIB_STRICT_EXEMPT='(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)' NCBI=/etc/ncbi OMNIORB_CONFIG=/etc/omniorb/omniORB.cfg OPENGL_PROFILE=xorg-x11 PDEPEND=' ' PKG_CONFIG_PATH=/root/System/Links/Libraries/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig PLAN9=/usr/lib/plan9 PLPLOT_LIB=/usr/share/EMBOSS/ PORTAGE_COMPRESS=lzma PRELINK_PATH_MASK='/lib/modules:/usr/lib64/locale:/usr/lib64/wine:/usr/lib64/valgrind:*.la:*.png:*.py:*.pl:*.pm:*.sh:*.xml:*.xslt:*.a:*.js:/usr/lib64/klibc' PROVIDE= PVM_ARCH=LINUX64 PVM_ROOT=/usr/share/pvm3 PVP=([0]="1" [1]="6" [2]="0") PYMOL_DATA=/usr/share/pymol/data PYMOL_PATH=/usr/lib64/python2.5/site-packages/pymol PYMOL_SCRIPTS=/usr/share/pymol/scripts PYTHONDOCS=/usr/share/doc/python-docs-2.5.1/html/lib PYTHONPATH=/root/System/Links/Libraries/python2.3/site-packages:/root/System/Links/Libraries/python2.4/site-packages QRNADB=/usr/share/qrna/data QTDIR=/usr/lib64/qt RCSBROOT=/usr/lib/rcsb RDEPEND=$'>=gnome-base/libbonobo-2\n\t>=gnome-extra/at-spi-1.7.10\n\t>=virtual/jre-1.4 >=dev-java/java-config-2.0.33-r1 >=sys-apps/portage-2.1.2.7' RESTRICT= ROOTLESS_GOBOLINUX=1 RUBYOPT=-rauto_gem R_HOME=/usr/lib64/R S=/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0 SANDBOX_DENY=/etc/ld.so.preload SANDBOX_PREDICT=:/dev/console:/dev/random:/proc/self/maps:/usr/lib/python2.0/:/usr/lib/python2.1/:/usr/lib/python2.2/:/usr/lib/python2.3/:/usr/lib/python2.4/:/usr/lib/python2.5/:/usr/lib/python3.0/:/var/db/aliases.db:/var/db/ethers.db:/var/db/group.db:/var/db/hosts.db:/var/db/netgroup.db:/var/db/netmasks.db:/var/db/networks.db:/var/db/passwd.db:/var/db/protocols.db:/var/db/rpc.db:/var/db/services.db:/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/homedir/.: SANDBOX_READ=:/:/dev/shm:/dev/stdin:/distccache/.ccache:/var/tmp: SANDBOX_WRITE=:/dev/console:/dev/fd:/dev/null:/dev/pts/:/dev/pty:/dev/shm:/dev/shm/ngpt:/dev/stderr:/dev/stdout:/dev/tts:/dev/tty:/dev/vc/:/dev/zero:/distccache/.ccache:/proc/self/fd:/tmp:/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/log/scrollkeeper.log:/var/tmp:/var/tmp/:/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/homedir/.bash_history:/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/homedir/.gconfd/lock: SANE_CONFIG_DIR=/etc/sane.d SCHEME_LIBRARY_PATH=/usr/share/slib/ SCROLLKEEPER_DIR=/var/lib/scrollkeeper SCROLLKEEPER_UPDATE=1 SCROLLKEEPER_UPDATE_BIN=/usr/bin/scrollkeeper-update SESSION_MANAGER=local/starbase64:/tmp/.ICE-unix/9239 SGML_CATALOG_FILES=/etc/sgml/sgml-docbook.cat:/etc/sgml/openjade-1.3.2.cat:/etc/sgml/dsssl-docbook-stylesheets.cat:/etc/sgml/sgml-docbook-3.1.cat:/etc/sgml/sgml-lite.cat:/etc/sgml/sgml-docbook-3.0.cat:/etc/sgml/sgml-docbook-4.1.cat:/etc/sgml/sgml-docbook-4.0.cat:/etc/sgml/xml-simple-docbook-4.1.2.4.cat:/etc/sgml/xml-simple-docbook-1.0.cat:/etc/sgml/xml-docbook-4.1.2.cat:/etc/sgml/xml-docbook-4.4.cat:/etc/sgml/sgml-docbook-4.2.cat:/etc/sgml/sgml-ent.cat:/etc/sgml/sgml-docbook-4.4.cat:/etc/sgml/xml-docbook-4.2.cat:/etc/sgml/xml-docbook-4.5.cat:/etc/sgml/sgml-docbook-4.5.cat:/etc/sgml/linuxdoc.cat:/etc/sgml/xml-docbook-4.3.cat SLOT=0 SRC_URI=mirror://gnome/sources/java-access-bridge/1.6/java-access-bridge-1.6.0.tar.bz2 STAGE1_USE='nptl nptlonly unicode' SVCDIR=/service SVCTIMEOUT=15 SVCVARDIR=/var/service SYMLINK_LIB=yes T1LIB_CONFIG=/usr/share/t1lib/t1lib.config TEXINPUTS=/usr/lib64/ocaml/ocamldoc: TINYSCHEMEINIT=/usr/share/tinyscheme/init.scm TMAKEPATH=/usr/lib/tmake/linux-g++ USB_DEVFS_PATH=/dev/bus/usb USE='amd64 elibc_glibc kernel_linux userland_GNU' USERLAND=GNU USE_EINSTALL= VERSIONATOR_OLD_EXTGLOB='shopt -u extglob' VERSIONATOR_RECURSION=0 VIDEO_CARDS='apm ark chips cirrus cyrix dummy fbdev glint i128 i810 mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo' VMHANDLE=blackdown-jdk-1.4.2 VTKHOME=/usr VTK_DATA_ROOT=/usr/share/vtk/data VTK_DIR=/usr/lib/vtk-5.0 WANT_JAVA_CONFIG=2 WINDOWID=117440552 WINDOWPATH=7 XCURSOR_THEME=redglass XDG_CONFIG_DIRS=/root/System/Settings/xdg XDG_DATA_DIRS=/root/System/Variable/xdg:/root/System/Links/Shared:/usr/share:/usr/kde/4.0/share:/usr/local/share XPVM_ROOT=/usr/local/pvm3/xpvm/src _=_RC_GET_KV_CACHE _E_DOCDESTTREE_= _E_EXEDESTTREE_= ___ECLASS_RECUR_MULTILIB=yes ___ECLASS_RECUR_TOOLCHAIN_FUNCS=yes _pipestatus='0 0' conf=java-access-bridge-1.6.0-r1 goboPrefix=/root omf=./registry/Makefile.in str='java-pkg_append_: entering function' ELT_find_ltmain_sh () { local x=; local dirlist=; for x in $(find "${S}" -name 'ltmain.sh'); do dirlist="${dirlist} ${x%/*}"; done; echo "${dirlist}" } ELT_libtool_version () { local ltmain_sh=$1; local version=; version=$(eval $(grep -e '^[[:space:]]*VERSION=' "${ltmain_sh}"); echo "${VERSION}"); [[ -z ${version} ]] && version="0"; echo "${version}" } ELT_try_and_apply_patch () { local ret=0; local file=$1; local patch=$2; if patch -p0 --dry-run "${file}" "${patch}" >&"${T}/elibtool.log"; then einfo " Applying $(basename "$(dirname "${patch}")")-${patch##*/}.patch ..."; patch -p0 -g0 --no-backup-if-mismatch "${file}" "${patch}" >&"${T}/elibtool.log"; ret=$?; export ELT_APPLIED_PATCHES="${ELT_APPLIED_PATCHES} ${patch##*/}"; else ret=1; fi; return "${ret}" } ELT_walk_patches () { local x=; local y=; local ret=1; local file=$1; local patch_set=$2; local patch_dir=; local rem_int_dep=$3; if [[ -n ${patch_set} ]]; then if [[ -d ${ELT_PATCH_DIR}/${patch_set} ]]; then patch_dir="${ELT_PATCH_DIR}/${patch_set}"; else return "${ret}"; fi; for x in $(ls -d "${patch_dir}"/* 2> /dev/null | grep -v 'CVS' | sort -r); do if [[ -n ${x} && -f ${x} ]]; then if [[ -n ${rem_int_dep} ]]; then sed -e "s|@REM_INT_DEP@|${rem_int_dep}|g" ${x} > "${T}/$$.rem_int_deps.patch"; x="${T}/$$.rem_int_deps.patch"; fi; if ELT_try_and_apply_patch "${file}" "${x}"; then ret=0; break; fi; fi; done; fi; return "${ret}" } VER_major () { [[ -z $1 ]] && return 1; local VER=$@; echo "${VER%%[^[:digit:]]*}" } VER_micro () { [[ -z $1 ]] && return 1; local VER=$@; VER=${VER#*.*.}; echo "${VER%%[^[:digit:]]*}" } VER_minor () { [[ -z $1 ]] && return 1; local VER=$@; VER=${VER#*.}; echo "${VER%%[^[:digit:]]*}" } VER_to_int () { [[ -z $1 ]] && return 1; local VER_MAJOR=$(VER_major "$1"); local VER_MINOR=$(VER_minor "$1"); local VER_MICRO=$(VER_micro "$1"); local VER_int=$(( VER_MAJOR * 65536 + VER_MINOR * 256 + VER_MICRO )); if [[ ${VER_int} -ge 65536 ]]; then echo "${VER_int}"; return 0; fi; echo 1; return 1 } __versionator__test_version_compare () { __versionator_shopt_toggle on; local lt=1 eq=2 gt=3 p q; function __versionator__test_version_compare_t () { version_compare "${1}" "${3}"; local r=$?; [[ ${r} -eq ${2} ]] || echo "FAIL: ${@} (got ${r} exp ${2})" }; echo " 0 $lt 1 1 $lt 2 2 $gt 1 2 $eq 2 0 $eq 0 10 $lt 20 68 $eq 068 068 $gt 67 068 $lt 69 1.0 $lt 2.0 2.0 $eq 2.0 2.0 $gt 1.0 1.0 $gt 0.0 0.0 $eq 0.0 0.0 $lt 1.0 0.1 $lt 0.2 0.2 $eq 0.2 0.3 $gt 0.2 1.2 $lt 2.1 2.1 $gt 1.2 1.2.3 $lt 1.2.4 1.2.4 $gt 1.2.3 1.2.0 $eq 1.2 1.2.1 $gt 1.2 1.2 $lt 1.2.1 1.2b $eq 1.2b 1.2b $lt 1.2c 1.2b $gt 1.2a 1.2b $gt 1.2 1.2 $lt 1.2a 1.3 $gt 1.2a 1.3 $lt 1.3a 1.0_alpha7 $lt 1.0_beta7 1.0_beta $lt 1.0_pre 1.0_pre5 $lt 1.0_rc2 1.0_rc2 $lt 1.0 1.0_p1 $gt 1.0 1.0_p1-r1 $gt 1.0_p1 1.0_alpha6-r1 $gt 1.0_alpha6 1.0_beta6-r1 $gt 1.0_alpha6-r2 1.0_pre1 $lt 1.0-p1 1.0p $gt 1.0_p1 1.0r $gt 1.0-r1 1.6.15 $gt 1.6.10-r2 1.6.10-r2 $lt 1.6.15 " | while read a b c; do [[ -z "${a}${b}${c}" ]] && continue; __versionator__test_version_compare_t "${a}" "${b}" "${c}"; done; for q in "alpha beta pre rc=${lt};${gt}" "p r=${gt};${lt}"; do for p in ${q%%=*}; do local c=${q##*=}; local alt=${c%%;*} agt=${c##*;}; __versionator__test_version_compare_t "1.0" $agt "1.0_${p}"; __versionator__test_version_compare_t "1.0" $agt "1.0_${p}1"; __versionator__test_version_compare_t "1.0" $agt "1.0_${p}068"; __versionator__test_version_compare_t "2.0_${p}" $alt "2.0"; __versionator__test_version_compare_t "2.0_${p}1" $alt "2.0"; __versionator__test_version_compare_t "2.0_${p}068" $alt "2.0"; __versionator__test_version_compare_t "1.0_${p}" $eq "1.0_${p}"; __versionator__test_version_compare_t "0.0_${p}" $lt "0.0_${p}1"; __versionator__test_version_compare_t "666_${p}3" $gt "666_${p}"; __versionator__test_version_compare_t "1_${p}7" $lt "1_${p}8"; __versionator__test_version_compare_t "1_${p}7" $eq "1_${p}7"; __versionator__test_version_compare_t "1_${p}7" $gt "1_${p}6"; __versionator__test_version_compare_t "1_${p}09" $eq "1_${p}9"; done; done; for p in "-r" "_p"; do __versionator__test_version_compare_t "7.2${p}1" $lt "7.2${p}2"; __versionator__test_version_compare_t "7.2${p}2" $gt "7.2${p}1"; __versionator__test_version_compare_t "7.2${p}3" $gt "7.2${p}2"; __versionator__test_version_compare_t "7.2${p}2" $lt "7.2${p}3"; done; __versionator_shopt_toggle off } __versionator_shopt_toggle () { VERSIONATOR_RECURSION=${VERSIONATOR_RECURSION:-0}; case "$1" in "on") if [[ $VERSIONATOR_RECURSION -lt 1 ]]; then VERSIONATOR_OLD_EXTGLOB=$(shopt -p extglob); shopt -s extglob; fi; VERSIONATOR_RECURSION=$(( $VERSIONATOR_RECURSION + 1 )) ;; "off") VERSIONATOR_RECURSION=$(( $VERSIONATOR_RECURSION - 1 )); if [[ $VERSIONATOR_RECURSION -lt 1 ]]; then eval $VERSIONATOR_OLD_EXTGLOB; fi ;; esac; return 0 } _cdrom_locate_file_on_cd () { local mline=""; local showedmsg=0 showjolietmsg=0; while [[ -z ${CDROM_ROOT} ]]; do local i=0; local -a cdset=(${*//:/ }); if [[ -n ${CDROM_SET} ]]; then cdset=(${cdset[${CDROM_SET}]}); fi; while [[ -n ${cdset[${i}]} ]]; do local dir=$(dirname ${cdset[${i}]}); local file=$(basename ${cdset[${i}]}); local point= node= fs= foo=; while read point node fs foo; do [[ " cd9660 iso9660 udf " != *" ${fs} "* ]] && ! [[ ${fs} == "subfs" && ",${opts}," == *",fs=cdfss,"* ]] && continue; point=${point//\040/ }; [[ ! -d ${point}/${dir} ]] && continue; [[ -z $(find "${point}/${dir}" -maxdepth 1 -iname "${file}") ]] && continue; export CDROM_ROOT=${point}; export CDROM_SET=${i}; export CDROM_MATCH=${cdset[${i}]}; return; done <<< "$(get_mounts)"; ((++i)); done; echo; if [[ ${showedmsg} -eq 0 ]]; then if [[ ${CDROM_TOTAL_CDS} -eq 1 ]]; then if [[ -z ${CDROM_NAME} ]]; then einfo "Please insert+mount the cdrom for ${PN} now !"; else einfo "Please insert+mount the ${CDROM_NAME} cdrom now !"; fi; else if [[ -z ${CDROM_NAME_1} ]]; then einfo "Please insert+mount cd #${CDROM_CURRENT_CD} for ${PN} now !"; else local var="CDROM_NAME_${CDROM_CURRENT_CD}"; einfo "Please insert+mount the ${!var} cdrom now !"; fi; fi; showedmsg=1; fi; einfo "Press return to scan for the cd again"; einfo "or hit CTRL+C to abort the emerge."; echo; if [[ ${showjolietmsg} -eq 0 ]]; then showjolietmsg=1; else ewarn "If you are having trouble with the detection"; ewarn "of your CD, it is possible that you do not have"; ewarn "Joliet support enabled in your kernel. Please"; ewarn "check that CONFIG_JOLIET is enabled in your kernel."; ebeep 5; fi; read || die "something is screwed with your system"; done } _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 ]] } bashrc_has () { [[ " ${*:2} " == *" $1 "* ]] } built_with_use () { local hidden="no"; if [[ $1 == "--hidden" ]]; then hidden="yes"; shift; fi; local missing_action="die"; if [[ $1 == "--missing" ]]; then missing_action=$2; shift; shift; case ${missing_action} in true | false | die) ;; *) die "unknown action '${missing_action}'" ;; esac; fi; local opt=$1; [[ ${opt:0:1} = "-" ]] && shift || opt="-a"; local PKG=$(best_version $1); [[ -z ${PKG} ]] && die "Unable to resolve $1 to an installed package"; shift; local USEFILE=${ROOT}/var/db/pkg/${PKG}/USE; local IUSEFILE=${ROOT}/var/db/pkg/${PKG}/IUSE; if [[ ! -e ${USEFILE} ]] || [[ ! -e ${IUSEFILE} && ${hidden} == "no" ]]; then case ${missing_action} in true) return 0 ;; false) return 1 ;; die) die "Unable to determine what USE flags $PKG was built with" ;; esac; fi; if [[ ${hidden} == "no" ]]; then local IUSE_BUILT=($(<"${IUSEFILE}")); local expand; for expand in $(echo ${USE_EXPAND} | tr '[:upper:]' '[:lower:]'); do if [[ $1 == ${expand}_* ]]; then expand=""; break; fi; done; if [[ -n ${expand} ]]; then if ! has $1 ${IUSE_BUILT[@]#[-+]}; then case ${missing_action} in true) return 0 ;; false) return 1 ;; die) die "$PKG does not actually support the $1 USE flag!" ;; esac; fi; fi; fi; local USE_BUILT=$(<${USEFILE}); while [[ $# -gt 0 ]]; do if [[ ${opt} = "-o" ]]; then has $1 ${USE_BUILT} && return 0; else has $1 ${USE_BUILT} || return 1; fi; shift; done; [[ ${opt} = "-a" ]] } cdrom_get_cds () { local cdcnt=0; local f=; for f in "$@"; do ((++cdcnt)); export CDROM_CHECK_${cdcnt}="$f"; done; export CDROM_TOTAL_CDS=${cdcnt}; export CDROM_CURRENT_CD=1; if [[ -n ${CD_ROOT}${CD_ROOT_1} ]]; then local var=; cdcnt=0; while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]]; do ((++cdcnt)); var="CD_ROOT_${cdcnt}"; [[ -z ${!var} ]] && var="CD_ROOT"; if [[ -z ${!var} ]]; then eerror "You must either use just the CD_ROOT"; eerror "or specify ALL the CD_ROOT_X variables."; eerror "In this case, you will need ${CDROM_TOTAL_CDS} CD_ROOT_X variables."; die "could not locate CD_ROOT_${cdcnt}"; fi; done; export CDROM_ROOT=${CD_ROOT_1:-${CD_ROOT}}; einfo "Found CD #${CDROM_CURRENT_CD} root at ${CDROM_ROOT}"; export CDROM_SET=-1; for f in ${CDROM_CHECK_1//:/ }; do ((++CDROM_SET)); [[ -e ${CD_ROOT}/${f} ]] && break; done; export CDROM_MATCH=${f}; return; fi; if [[ ${CDROM_TOTAL_CDS} -eq 1 ]]; then einfo "This ebuild will need the ${CDROM_NAME:-cdrom for ${PN}}"; echo; einfo "If you do not have the CD, but have the data files"; einfo "mounted somewhere on your filesystem, just export"; einfo "the variable CD_ROOT so that it points to the"; einfo "directory containing the files."; echo; einfo "For example:"; einfo "export CD_ROOT=/mnt/cdrom"; echo; else if [[ -n ${CDROM_NAME_SET} ]]; then cdcnt=0; while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]]; do ((++cdcnt)); export CDROM_NAME_${cdcnt}="${CDROM_NAME_SET[$((${cdcnt}-1))]}"; done; fi; einfo "This package will need access to ${CDROM_TOTAL_CDS} cds."; cdcnt=0; while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]]; do ((++cdcnt)); var="CDROM_NAME_${cdcnt}"; [[ ! -z ${!var} ]] && einfo " CD ${cdcnt}: ${!var}"; done; echo; einfo "If you do not have the CDs, but have the data files"; einfo "mounted somewhere on your filesystem, just export"; einfo "the following variables so they point to the right place:"; einfon ""; cdcnt=0; while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]]; do ((++cdcnt)); echo -n " CD_ROOT_${cdcnt}"; done; echo; einfo "Or, if you have all the files in the same place, or"; einfo "you only have one cdrom, you can export CD_ROOT"; einfo "and that place will be used as the same data source"; einfo "for all the CDs."; echo; einfo "For example:"; einfo "export CD_ROOT_1=/mnt/cdrom"; echo; fi; export CDROM_SET=""; export CDROM_CURRENT_CD=0; cdrom_load_next_cd } cdrom_load_next_cd () { local var; ((++CDROM_CURRENT_CD)); unset CDROM_ROOT; var=CD_ROOT_${CDROM_CURRENT_CD}; [[ -z ${!var} ]] && var="CD_ROOT"; if [[ -z ${!var} ]]; then var="CDROM_CHECK_${CDROM_CURRENT_CD}"; _cdrom_locate_file_on_cd ${!var}; else export CDROM_ROOT=${!var}; fi; einfo "Found CD #${CDROM_CURRENT_CD} root at ${CDROM_ROOT}" } check_license () { local lic=$1; if [ -z "${lic}" ]; then lic="${PORTDIR}/licenses/${LICENSE}"; else if [ -e "${PORTDIR}/licenses/${lic}" ]; then lic="${PORTDIR}/licenses/${lic}"; else if [ -e "${PWD}/${lic}" ]; then lic="${PWD}/${lic}"; else if [ -e "${lic}" ]; then lic="${lic}"; fi; fi; fi; fi; [ ! -f "${lic}" ] && die "Could not find requested license ${lic}"; local l="`basename ${lic}`"; local shopts=$-; local alic; set -o noglob; for alic in ${ACCEPT_LICENSE}; do if [[ ${alic} == ${l} ]]; then set +o noglob; set -${shopts}; return 0; fi; done; set +o noglob; set -$shopts; local licmsg=$(emktemp); cat > ${licmsg} <<-EOF ********************************************************** The following license outlines the terms of use of this package. You MUST accept this license for installation to continue. When you are done viewing, hit 'q'. If you CTRL+C out of this, the install will not run! ********************************************************** EOF cat ${lic} >> ${licmsg}; ${PAGER:-less} ${licmsg} || die "Could not execute pager (${PAGER}) to accept ${lic}"; einfon "Do you accept the terms of this license (${l})? [yes/no] "; read alic; case ${alic} in yes | Yes | y | Y) return 0 ;; *) echo; echo; echo; eerror "You MUST accept the license to continue! Exiting!"; die "Failed to accept license" ;; esac } create_ml_includes () { local dest=$1; shift; local basedirs=$(create_ml_includes-listdirs "$@"); create_ml_includes-makedestdirs ${dest} ${basedirs}; local file; for file in $(create_ml_includes-allfiles ${basedirs}); do ( echo "/* Autogenerated by create_ml_includes() in multilib.eclass */"; local dir; for dir in ${basedirs}; do if [[ -f ${D}/${dir}/${file} ]]; then echo ""; local sym=$(create_ml_includes-sym_for_dir ${dir} "$@"); if [[ ${sym/=} != "${sym}" ]]; then echo "#if ${sym}"; else if [[ ${sym::1} == "!" ]]; then echo "#ifndef ${sym:1}"; else echo "#ifdef ${sym}"; fi; fi; echo "# include <$(create_ml_includes-absolute ${dir}/${file})>"; echo "#endif /* ${sym} */"; fi; done ) > "${D}/${dest}/${file}"; done } create_ml_includes-absolute () { local dst="$(create_ml_includes-tidy_path $1)"; dst=(${dst//\// }); local i; for ((i=0; i<${#dst[*]}; i++)) do [ "${dst[i]}" == "include" ] && break; done; local strip_upto=$i; for ((i=strip_upto+1; i<${#dst[*]}-1; i++)) do echo -n ${dst[i]}/; done; echo -n ${dst[i]} } create_ml_includes-allfiles () { local basedir file; for basedir in "$@"; do for file in $(find "${D}"/${basedir} -type f); do echo ${file/${D}\/${basedir}\//}; done; done | sort | uniq } create_ml_includes-listdirs () { local dirs; local data; for data in "$@"; do dirs="${dirs} ${data/*:/}"; done; echo ${dirs:1} } create_ml_includes-makedestdirs () { local dest=$1; shift; local basedirs=$@; dodir ${dest}; local basedir; for basedir in ${basedirs}; do local dir; for dir in $(find ${D}/${basedir} -type d); do dodir ${dest}/${dir/${D}\/${basedir}/}; done; done } create_ml_includes-sym_for_dir () { local dir=$1; shift; local data; for data in "$@"; do if [[ ${data} == *:${dir} ]]; then echo ${data/:*/}; return 0; fi; done; echo "Shouldn't be here -- create_ml_includes-sym_for_dir $1 $@"; exit 1 } create_ml_includes-tidy_path () { local removed=$1; if [ -n "${removed}" ]; then while [ "${removed}" != "${removed/\/\//\/}" ]; do removed=${removed/\/\//\/}; done; while [ "${removed}" != "${removed//\/.\//\/}" ]; do removed=${removed//\/.\//\/}; done; [ "${removed##*/}" = "." ] && removed=${removed%/*}; while [ "${removed}" != "${removed//\/..\/}" ]; do local p1="${removed%%\/..\/*}"; local p2="${removed#*\/..\/}"; removed="${p1%\/*}/${p2}"; done; [ "${removed##*/}" = ".." ] && removed=${removed%/*/*}; [ "${removed##*/}" = "" ] && removed=${removed%/*}; echo ${removed}; fi } darwintoolize () { ewarn "darwintoolize() is deprecated, please just use elibtoolize()!"; elibtoolize } delete_all_version_separators () { __versionator_shopt_toggle on; replace_all_version_separators "" "${1}"; __versionator_shopt_toggle off } delete_version_separator () { __versionator_shopt_toggle on; replace_version_separator "${1}" "" "${2}"; __versionator_shopt_toggle off } depend-java-query () { USE="${USE}" /usr/bin/depend-java-query "${@}" } dlopen_lib () { if [[ ${ELIBC} != *BSD ]]; then echo "-ldl"; fi } doicon () { ( local i j ret; insinto /usr/share/pixmaps; for i in "$@"; do if [[ -f ${i} ]]; then doins "${i}"; ((ret+=$?)); else if [[ -d ${i} ]]; then for j in "${i}"/*.png; do doins "${j}"; ((ret+=$?)); done; else ((++ret)); fi; fi; done; exit ${ret} ) } domenu () { ( local i j ret=0; insinto /usr/share/applications; for i in "$@"; do if [[ -f ${i} ]]; then doins "${i}"; ((ret+=$?)); else if [[ -d ${i} ]]; then for j in "${i}"/*.desktop; do doins "${j}"; ((ret+=$?)); done; else ((++ret)); fi; fi; done; exit ${ret} ) } eant () { debug-print-function ${FUNCNAME} $*; if [[ ${EBUILD_PHASE} = compile ]]; then [[ -n "${JAVA_ANT_IGNORE_SYSTEM_CLASSES}" && -n "${JAVA_PKG_BSFIX}" ]] && java-ant_ignore-system-classes "${S}/build.xml"; if hasq java-ant-2 ${INHERITED}; then java-ant_bsfix; fi; JAVA_PKG_BSFIX="off"; if [[ -z ${JAVA_PKG_NO_BUNDLED_SEARCH} ]] && is-java-strict; then echo "Searching for bundled jars:"; java-pkg_find-normal-jars || echo "None found."; echo "Searching for bundled classes (no output if none found):"; find "${WORKDIR}" -name "*.class"; echo "Search done."; JAVA_PKG_NO_BUNDLED_SEARCH=true; fi; fi; if ! hasq java-ant-2 ${INHERITED}; then local msg="You should inherit java-ant-2 when using eant"; java-pkg_announce-qa-violation "${msg}"; fi; local antflags="-Dnoget=true -Dmaven.mode.offline=true -Dbuild.sysclasspath=ignore"; java-pkg_init-compiler_; local compiler="${GENTOO_COMPILER}"; local compiler_env="${JAVA_PKG_COMPILER_DIR}/${compiler}"; local build_compiler="$(source ${compiler_env} 1>/dev/null 2>&1; echo ${ANT_BUILD_COMPILER})"; if [[ "${compiler}" != "javac" && -z "${build_compiler}" ]]; then die "ANT_BUILD_COMPILER undefined in ${compiler_env}"; fi; if [[ ${compiler} != "javac" ]]; then antflags="${antflags} -Dbuild.compiler=${build_compiler}"; local build_compiler_deps="$(source ${JAVA_PKG_COMPILER_DIR}/${compiler} 1>/dev/null 2>&1; echo ${ANT_BUILD_COMPILER_DEPS})"; if [[ -n ${build_compiler_deps} ]]; then antflags="${antflags} -lib $(java-config -p ${build_compiler_deps})"; fi; fi; for arg in "${@}"; do if [[ ${arg} = -lib ]]; then if is-java-strict; then eerror "You should not use the -lib argument to eant because it will fail"; eerror "with JAVA_PKG_STRICT. Please use for example java-pkg_jar-from"; eerror "or ant properties to make dependencies available."; eerror "For ant tasks use WANT_ANT_TASKS or ANT_TASKS from."; eerror "split ant (>=dev-java/ant-core-1.7)."; die "eant -lib is deprecated/forbidden"; else echo "eant -lib is deprecated. Turn JAVA_PKG_STRICT on for"; echo "more info."; fi; fi; done; ANT_TASKS="${ANT_TASKS:-${WANT_ANT_TASKS}}"; ANT_TASKS="${JAVA_PKG_FORCE_ANT_TASKS:-${ANT_TASKS}}"; ANT_TASKS="${ANT_TASKS:-none}"; if [[ "${ANT_TASKS}" == "all" ]]; then einfo "Using all available ANT_TASKS"; else if [[ "${ANT_TASKS}" == "none" ]]; then einfo "Disabling all optional ANT_TASKS"; else einfo "Using following ANT_TASKS: ${ANT_TASKS}"; fi; fi; export ANT_TASKS; [[ -n ${JAVA_PKG_DEBUG} ]] && antflags="${antflags} --execdebug -debug"; [[ -n ${PORTAGE_QUIET} ]] && antflags="${antflags} -q"; local gcp="${EANT_GENTOO_CLASSPATH}"; local getjarsarg=""; if [[ ${EBUILD_PHASE} = "test" ]]; then antflags="${antflags} -DJunit.present=true"; [[ -n ${gcp} && ${ANT_TASKS} = *ant-junit* ]] && gcp="${gcp} junit"; getjarsarg="--with-dependencies"; fi; local cp; for atom in ${gcp}; do cp="${cp}:$(java-pkg_getjars ${getjarsarg} ${atom})"; done; if [[ -n ${cp} ]]; then antflags="${antflags} -Dgentoo.classpath=\"${cp#:}\""; fi; [[ -n ${JAVA_PKG_DEBUG} ]] && echo ant ${antflags} "${@}"; debug-print "Calling ant (GENTOO_VM: ${GENTOO_VM}): ${antflags} ${@}"; ant ${antflags} "${@}" || die "eant failed" } ebeep () { local n; if [[ -z ${EBEEP_IGNORE} ]]; then for ((n=1 ; n <= ${1:-5} ; n++)) do echo -ne "\a"; sleep 0.1 >&/dev/null; sleep 0,1 >&/dev/null; echo -ne "\a"; sleep 1; done; fi } ecvs_clean () { [[ -z $* ]] && set -- .; find "$@" -type d -name 'CVS' -prune -print0 | xargs -0 rm -rf; find "$@" -type f -name '.cvs*' -print0 | xargs -0 rm -rf } edos2unix () { echo "$@" | xargs sed -i 's/\r$//' } egetent () { case ${CHOST} in *-darwin*) case "$2" in *[!0-9]*) nidump $1 . | awk -F":" "{ if (\$1 ~ /^$2$/) {print \$0;exit;} }" ;; *) nidump $1 . | awk -F":" "{ if (\$3 == $2) {print \$0;exit;} }" ;; esac ;; *-freebsd* | *-dragonfly*) local opts action="user"; [[ $1 == "passwd" ]] || action="group"; if [[ $2 == [[:digit:]]* ]]; then [[ ${action} == "user" ]] && opts="-u" || opts="-g"; fi; pw show ${action} ${opts} "$2" -q ;; *-netbsd* | *-openbsd*) grep "$2:\*:" /etc/$1 ;; *) type -p nscd >&/dev/null && nscd -i "$1"; getent "$1" "$2" ;; esac } egethome () { ent=$(egetent passwd $1); case ${CHOST} in *-darwin* | *-freebsd* | *-dragonfly*) echo ${ent} | cut -d: -f9 ;; *) echo ${ent} | cut -d: -f6 ;; esac } egetshell () { ent=$(egetent passwd "$1"); case ${CHOST} in *-darwin* | *-freebsd* | *-dragonfly*) echo ${ent} | cut -d: -f10 ;; *) echo ${ent} cut -d: -f7 ;; esac } ejavac () { debug-print-function ${FUNCNAME} $*; java-pkg_init-compiler_; local compiler_executable; compiler_executable=$(java-pkg_get-javac); if [[ ${?} != 0 ]]; then eerror "There was a problem determining compiler: ${compiler_executable}"; die "get-javac failed"; fi; local javac_args; javac_args="$(java-pkg_javac-args)"; if [[ ${?} != 0 ]]; then eerror "There was a problem determining JAVACFLAGS: ${javac_args}"; die "java-pkg_javac-args failed"; fi; [[ -n ${JAVA_PKG_DEBUG} ]] && echo ${compiler_executable} ${javac_args} "${@}"; ${compiler_executable} ${javac_args} "${@}" || die "ejavac failed" } ejunit () { debug-print-function ${FUNCNAME} $*; local pkgs; if [[ -f ${JAVA_PKG_DEPEND_FILE} ]]; then for atom in $(cat ${JAVA_PKG_DEPEND_FILE} | tr : ' '); do pkgs=${pkgs},$(echo ${atom} | sed -re "s/^.*@//"); done; fi; local cp=$(java-pkg_getjars --with-dependencies junit${pkgs}); if [[ ${1} = -cp || ${1} = -classpath ]]; then cp="${2}:${cp}"; shift 2; else cp=".:${cp}"; fi; local runner=junit.textui.TestRunner; debug-print "Calling: java -cp \"${cp}\" -Djava.awt.headless=true ${runner} ${@}"; java -cp "${cp}" -Djava.awt.headless=true ${runner} "${@}" || die "Running junit failed" } elibtoolize () { local x=; local y=; local do_portage="no"; local do_reversedeps="no"; local do_only_patches="no"; local do_uclibc="yes"; local deptoremove=; local my_dirlist=; local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp"; local start_dir=${PWD}; my_dirlist=$(ELT_find_ltmain_sh); for x in "$@"; do case "${x}" in "--portage") do_portage="yes" ;; "--reverse-deps") do_reversedeps="yes"; elt_patches="${elt_patches} fix-relink" ;; "--patch-only") do_only_patches="yes" ;; "^--remove-internal-dep="*) deptoremove=$(echo "${x}" | sed -e 's|--remove-internal-dep=||'); [[ -n ${deptoremove} ]] && elt_patches="${elt_patches} rem-int-dep" ;; "--shallow") if [[ -f ${S}/ltmain.sh ]]; then my_dirlist=${S}; else my_dirlist=; fi ;; "--no-uclibc") do_uclibc="no" ;; *) eerror "Invalid elibtoolize option: ${x}"; die "elibtoolize called with ${x} ??" ;; esac; done; [[ ${do_uclibc} == "yes" ]] && elt_patches="${elt_patches} uclibc-conf uclibc-ltconf"; [[ ${CHOST} == *"-freebsd"* ]] && elt_patches="${elt_patches} fbsd-conf fbsd-ltconf"; [[ ${CHOST} == *"-darwin"* ]] && elt_patches="${elt_patches} darwin-ltconf darwin-ltmain"; for x in ${my_dirlist}; do local tmp=$(echo "${x}" | sed -e "s|${WORKDIR}||"); export ELT_APPLIED_PATCHES=; export ELT_LTMAIN_SH="${x}/ltmain.sh"; [[ -f ${x}/.elibtoolized ]] && continue; cd ${x}; einfo "Running elibtoolize in: $(echo "/${tmp}" | sed -e 's|//|/|g; s|^/||')"; for y in ${elt_patches}; do local ret=0; case "${y}" in "portage") if [[ -z $(grep 'We do not want portage' "${x}/ltmain.sh") ]]; then ELT_walk_patches "${x}/ltmain.sh" "${y}"; ret=$?; fi ;; "rem-int-dep") ELT_walk_patches "${x}/ltmain.sh" "${y}" "${deptoremove}"; ret=$? ;; "fix-relink") if [[ -n $(grep 'inst_prefix_dir' "${x}/ltmain.sh") ]]; then ELT_walk_patches "${x}/ltmain.sh" "${y}"; ret=$?; fi ;; "max_cmd_len") if [[ -n $(grep 'max_cmd_len' "${x}/ltmain.sh") ]]; then ELT_walk_patches "${x}/ltmain.sh" "${y}"; ret=$?; fi ;; "uclibc-conf") if [[ -e ${x}/configure && -n $(grep 'Transform linux' "${x}/configure") ]]; then ELT_walk_patches "${x}/configure" "${y}"; ret=$?; else if [[ ! -e ${x}/configure && -e ${x}/../configure && -n $(grep 'Transform linux' "${x}/../configure") ]]; then ELT_walk_patches "${x}/../configure" "${y}"; ret=$?; fi; fi ;; "uclibc-ltconf") if [[ -s ${x}/ltconfig ]]; then ELT_walk_patches "${x}/ltconfig" "${y}"; ret=$?; fi ;; "fbsd-conf") if [[ -e ${x}/configure && -n $(grep 'version_type=freebsd-' "${x}/configure") ]]; then ELT_walk_patches "${x}/configure" "${y}"; ret=$?; else if [[ ! -e ${x}/configure && -e ${x}/../configure && -n $(grep 'version_type=freebsd-' "${x}/../configure") ]]; then ELT_walk_patches "${x}/../configure" "${y}"; ret=$?; fi; fi ;; "fbsd-ltconf") if [[ -s ${x}/ltconfig ]]; then ELT_walk_patches "${x}/ltconfig" "${y}"; ret=$?; fi ;; "darwin-ltconf") if [[ -s ${x}/ltconfig ]]; then ELT_walk_patches "${x}/ltconfig" "${y}"; ret=$?; fi ;; "install-sh") ELT_walk_patches "${x}/install-sh" "${y}"; ret=$? ;; *) ELT_walk_patches "${x}/ltmain.sh" "${y}"; ret=$? ;; esac; if [[ ${ret} -ne 0 ]]; then case ${y} in "relink") local version=$(ELT_libtool_version "${x}/ltmain.sh"); if [[ -z $(grep 'inst_prefix_dir' "${x}/ltmain.sh") && $(VER_to_int "${version}") -ge $(VER_to_int "1.4.0") ]]; then ewarn " Could not apply relink.patch!"; fi ;; "portage") if [[ ${do_portage} == "yes" ]]; then if [[ -z $(grep 'We do not want portage' "${x}/ltmain.sh") ]]; then echo; eerror "Portage patch requested, but failed to apply!"; eerror "Please bug azarah or vapier to add proper patch."; die "Portage patch requested, but failed to apply!"; fi; else if [[ -n $(grep 'We do not want portage' "${x}/ltmain.sh") ]]; then :; else local version=$( eval $(grep -e '^[[:space:]]*VERSION=' "${x}/ltmain.sh"); echo "${VERSION}"); echo; eerror "Portage patch failed to apply (ltmain.sh version ${version})!"; eerror "Please bug azarah or vapier to add proper patch."; die "Portage patch failed to apply!"; fi; ELT_APPLIED_PATCHES="portage"; fi ;; "uclibc-"*) [[ ${CHOST} == *"-uclibc" ]] && ewarn " uClibc patch set '${y}' failed to apply!" ;; "fbsd-"*) if [[ ${CHOST} == *"-freebsd"* ]]; then if [[ -z $(grep 'Handle Gentoo/FreeBSD as it was Linux' "${x}/configure" "${x}/../configure" 2>/dev/null) ]]; then eerror " FreeBSD patch set '${y}' failed to apply!"; die "FreeBSD patch set '${y}' failed to apply!"; fi; fi ;; "darwin-"*) [[ ${CHOST} == *"-darwin"* ]] && ewarn " Darwin patch set '${y}' failed to apply!" ;; esac; fi; done; if [[ -z ${ELT_APPLIED_PATCHES} ]]; then if [[ ${do_portage} == "no" && ${do_reversedeps} == "no" && ${do_only_patches} == "no" && ${deptoremove} == "" ]]; then ewarn "Cannot apply any patches, please file a bug about this"; die; fi; fi; [[ -f ${x}/libtool ]] && rm -f "${x}/libtool"; touch "${x}/.elibtoolized"; done; cd "${start_dir}" } emktemp () { local exe="touch"; [[ $1 == -d ]] && exe="mkdir" && shift; local topdir=$1; if [[ -z ${topdir} ]]; then [[ -z ${T} ]] && topdir="/tmp" || topdir=${T}; fi; if ! type -P mktemp > /dev/null; then local tmp=/; while [[ -e ${tmp} ]]; do tmp=${topdir}/tmp.${RANDOM}.${RANDOM}.${RANDOM}; done; ${exe} "${tmp}" || ${exe} -p "${tmp}"; echo "${tmp}"; else if [[ ${exe} == "touch" ]]; then TMPDIR="${topdir}" mktemp -t tmp.XXXXXXXXXX; else TMPDIR="${topdir}" mktemp -dt tmp.XXXXXXXXXX; fi; fi } enewgroup () { case ${EBUILD_PHASE} in unpack | compile | test | install) eerror "'enewgroup()' called from '${EBUILD_PHASE}()' which is not a pkg_* function."; eerror "Package fails at QA and at life. Please file a bug."; die "Bad package! enewgroup is only for use in pkg_* functions!" ;; esac; local egroup="$1"; shift; if [ -z "${egroup}" ]; then eerror "No group specified !"; die "Cannot call enewgroup without a group"; fi; if [[ -n $(egetent group "${egroup}") ]]; then return 0; fi; einfo "Adding group '${egroup}' to your system ..."; local opts=; local egid="$1"; shift; if [ ! -z "${egid}" ]; then if [ "${egid}" -gt 0 ]; then if [ -z "`egetent group ${egid}`" ]; then if [[ "${CHOST}" == *-darwin* ]]; then opts="${opts} ${egid}"; else opts="${opts} -g ${egid}"; fi; else egid="next available; requested gid taken"; fi; else eerror "Groupid given but is not greater than 0 !"; die "${egid} is not a valid GID"; fi; else egid="next available"; fi; einfo " - Groupid: ${egid}"; local eextra="$@"; opts="${opts} ${eextra}"; local oldsandbox="${SANDBOX_ON}"; export SANDBOX_ON="0"; case ${CHOST} in *-darwin*) if [ ! -z "${eextra}" ]; then einfo "Extra options are not supported on Darwin/OS X yet"; einfo "Please report the ebuild along with the info below"; einfo "eextra: ${eextra}"; die "Required function missing"; fi; case ${egid} in *[!0-9]*) for ((egid = 101; egid <= 999; egid++)) do [[ -z $(egetent group ${egid}) ]] && break; done ;; esac; dscl . create /groups/${egroup} gid ${egid}; dscl . create /groups/${egroup} passwd '*' ;; *-freebsd* | *-dragonfly*) case ${egid} in *[!0-9]*) for ((egid = 101; egid <= 999; egid++)) do [[ -z $(egetent group ${egid}) ]] && break; done ;; esac; pw groupadd ${egroup} -g ${egid} || die "enewgroup failed" ;; *-netbsd*) case ${egid} in *[!0-9]*) for ((egid = 101; egid <= 999; egid++)) do [[ -z $(egetent group ${egid}) ]] && break; done ;; esac; groupadd -g ${egid} ${egroup} || die "enewgroup failed" ;; *) groupadd ${opts} ${egroup} || die "enewgroup failed" ;; esac; export SANDBOX_ON="${oldsandbox}" } enewuser () { case ${EBUILD_PHASE} in unpack | compile | test | install) eerror "'enewuser()' called from '${EBUILD_PHASE}()' which is not a pkg_* function."; eerror "Package fails at QA and at life. Please file a bug."; die "Bad package! enewuser is only for use in pkg_* functions!" ;; esac; local euser=$1; shift; if [[ -z ${euser} ]]; then eerror "No username specified !"; die "Cannot call enewuser without a username"; fi; if [[ -n $(egetent passwd "${euser}") ]]; then return 0; fi; einfo "Adding user '${euser}' to your system ..."; local opts=; local euid=$1; shift; if [[ -n ${euid} && ${euid} != -1 ]]; then if [[ ${euid} -gt 0 ]]; then if [[ -n $(egetent passwd ${euid}) ]]; then euid="next"; fi; else eerror "Userid given but is not greater than 0 !"; die "${euid} is not a valid UID"; fi; else euid="next"; fi; if [[ ${euid} == "next" ]]; then for ((euid = 101; euid <= 999; euid++)) do [[ -z $(egetent passwd ${euid}) ]] && break; done; fi; opts="${opts} -u ${euid}"; einfo " - Userid: ${euid}"; local eshell=$1; shift; if [[ ! -z ${eshell} ]] && [[ ${eshell} != "-1" ]]; then if [[ ! -e ${ROOT}${eshell} ]]; then eerror "A shell was specified but it does not exist !"; die "${eshell} does not exist in ${ROOT}"; fi; if [[ ${eshell} == */false || ${eshell} == */nologin ]]; then eerror "Do not specify ${eshell} yourself, use -1"; die "Pass '-1' as the shell parameter"; fi; else for shell in /sbin/nologin /usr/sbin/nologin /bin/false /usr/bin/false /dev/null; do [[ -x ${ROOT}${shell} ]] && break; done; if [[ ${shell} == "/dev/null" ]]; then eerror "Unable to identify the shell to use, proceeding with userland default."; case ${USERLAND} in GNU) shell="/bin/false" ;; BSD) shell="/sbin/nologin" ;; Darwin) shell="/usr/sbin/nologin" ;; *) die "Unable to identify the default shell for userland ${USERLAND}" ;; esac; fi; eshell=${shell}; fi; einfo " - Shell: ${eshell}"; opts="${opts} -s ${eshell}"; local ehome=$1; shift; if [[ -z ${ehome} ]] || [[ ${ehome} == "-1" ]]; then ehome="/dev/null"; fi; einfo " - Home: ${ehome}"; opts="${opts} -d ${ehome}"; local egroups=$1; shift; if [[ ! -z ${egroups} ]]; then local oldifs=${IFS}; local defgroup="" exgroups=""; export IFS=","; for g in ${egroups}; do export IFS=${oldifs}; if [[ -z $(egetent group "${g}") ]]; then eerror "You must add group ${g} to the system first"; die "${g} is not a valid GID"; fi; if [[ -z ${defgroup} ]]; then defgroup=${g}; else exgroups="${exgroups},${g}"; fi; export IFS=","; done; export IFS=${oldifs}; opts="${opts} -g ${defgroup}"; if [[ ! -z ${exgroups} ]]; then opts="${opts} -G ${exgroups:1}"; fi; else egroups="(none)"; fi; einfo " - Groups: ${egroups}"; local oldsandbox=${SANDBOX_ON}; export SANDBOX_ON="0"; case ${CHOST} in *-darwin*) if [[ -z $@ ]]; then dscl . create /users/${euser} uid ${euid}; dscl . create /users/${euser} shell ${eshell}; dscl . create /users/${euser} home ${ehome}; dscl . create /users/${euser} realname "added by portage for ${PN}"; local oldifs=${IFS}; export IFS=","; for g in ${egroups}; do dscl . merge /groups/${g} users ${euser}; done; export IFS=${oldifs}; else einfo "Extra options are not supported on Darwin yet"; einfo "Please report the ebuild along with the info below"; einfo "eextra: $@"; die "Required function missing"; fi ;; *-freebsd* | *-dragonfly*) if [[ -z $@ ]]; then pw useradd ${euser} ${opts} -c "added by portage for ${PN}" die "enewuser failed"; else einfo " - Extra: $@"; pw useradd ${euser} ${opts} "$@" || die "enewuser failed"; fi ;; *-netbsd*) if [[ -z $@ ]]; then useradd ${opts} ${euser} || die "enewuser failed"; else einfo " - Extra: $@"; useradd ${opts} ${euser} "$@" || die "enewuser failed"; fi ;; *-openbsd*) if [[ -z $@ ]]; then useradd -u ${euid} -s ${eshell} -d ${ehome} -c "Added by portage for ${PN}" -g ${egroups} ${euser} || die "enewuser failed"; else einfo " - Extra: $@"; useradd -u ${euid} -s ${eshell} -d ${ehome} -c "Added by portage for ${PN}" -g ${egroups} ${euser} "$@" || die "enewuser failed"; fi ;; *) if [[ -z $@ ]]; then useradd ${opts} ${euser} -c "added by portage for ${PN}" || die "enewuser failed"; else einfo " - Extra: $@"; useradd ${opts} ${euser} "$@" || die "enewuser failed"; fi ;; esac; if [[ ! -e ${ROOT}/${ehome} ]]; then einfo " - Creating ${ehome} in ${ROOT}"; mkdir -p "${ROOT}/${ehome}"; chown ${euser} "${ROOT}/${ehome}"; chmod 755 "${ROOT}/${ehome}"; fi; export SANDBOX_ON=${oldsandbox} } epatch () { function _epatch_draw_line () { [[ -z $1 ]] && set "$(printf "%65s" '')"; echo "${1//?/=}" }; function _epatch_assert () { local _pipestatus=${PIPESTATUS[*]}; [[ ${_pipestatus// /} -eq 0 ]] }; local PIPE_CMD=""; local STDERR_TARGET="${T}/$$.out"; local PATCH_TARGET="${T}/$$.patch"; local PATCH_SUFFIX=""; local SINGLE_PATCH="no"; local x=""; unset P4CONFIG P4PORT P4USER; if [ "$#" -gt 1 ]; then local m=""; for m in "$@"; do epatch "${m}"; done; return 0; fi; if [ -n "$1" -a -f "$1" ]; then SINGLE_PATCH="yes"; local EPATCH_SOURCE="$1"; local EPATCH_SUFFIX="${1##*\.}"; else if [ -n "$1" -a -d "$1" ]; then if [ "${EPATCH_FORCE}" = "yes" ] && [ -z "${EPATCH_SUFFIX}" ]; then local EPATCH_SOURCE="$1/*"; else local EPATCH_SOURCE="$1/*.${EPATCH_SUFFIX}"; fi; else if [[ ! -d ${EPATCH_SOURCE} ]] || [[ -n $1 ]]; then if [ -n "$1" -a "${EPATCH_SOURCE}" = "${WORKDIR}/patch" ]; then EPATCH_SOURCE="$1"; fi; echo; eerror "Cannot find \$EPATCH_SOURCE! Value for \$EPATCH_SOURCE is:"; eerror; eerror " ${EPATCH_SOURCE}"; eerror " ( ${EPATCH_SOURCE##*/} )"; echo; die "Cannot find \$EPATCH_SOURCE!"; fi; local EPATCH_SOURCE="${EPATCH_SOURCE}/*.${EPATCH_SUFFIX}"; fi; fi; case ${EPATCH_SUFFIX##*\.} in bz2) PIPE_CMD="bzip2 -dc"; PATCH_SUFFIX="bz2" ;; gz | Z | z) PIPE_CMD="gzip -dc"; PATCH_SUFFIX="gz" ;; ZIP | zip) PIPE_CMD="unzip -p"; PATCH_SUFFIX="zip" ;; *) PIPE_CMD="cat"; PATCH_SUFFIX="patch" ;; esac; if [ "${SINGLE_PATCH}" = "no" ]; then einfo "${EPATCH_MULTI_MSG}"; fi; for x in ${EPATCH_SOURCE}; do if [ -f ${x} ] && ( [ "${SINGLE_PATCH}" = "yes" -o "${x/_all_}" != "${x}" -o "${x/_${ARCH}_}" != "${x}" ] || [ "${EPATCH_FORCE}" = "yes" ] ); then local count=0; local popts="${EPATCH_OPTS}"; local patchname=${x##*/}; if [ -n "${EPATCH_EXCLUDE}" ]; then if [ "${EPATCH_EXCLUDE/${patchname}}" != "${EPATCH_EXCLUDE}" ]; then continue; fi; fi; if [ "${SINGLE_PATCH}" = "yes" ]; then if [ -n "${EPATCH_SINGLE_MSG}" ]; then einfo "${EPATCH_SINGLE_MSG}"; else einfo "Applying ${patchname} ..."; fi; else einfo " ${patchname} ..."; fi; echo "***** ${patchname} *****" > ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; echo >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; while [ "${count}" -lt 5 ]; do _epatch_draw_line "***** ${patchname} *****" >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; echo >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; if [ "${PATCH_SUFFIX}" != "patch" ]; then echo -n "PIPE_COMMAND: " >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; echo "${PIPE_CMD} ${x} > ${PATCH_TARGET}" >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; else PATCH_TARGET="${x}"; fi; echo -n "PATCH COMMAND: " >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; echo "patch -p${count} ${popts} < ${PATCH_TARGET}" >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; echo >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; _epatch_draw_line "***** ${patchname} *****" >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; if [ "${PATCH_SUFFIX}" != "patch" ]; then if ! ( ${PIPE_CMD} ${x} > ${PATCH_TARGET} ) >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/} 2>&1; then echo; eerror "Could not extract patch!"; count=5; break; fi; fi; if ( cat ${PATCH_TARGET} | patch -p${count} ${popts} --dry-run -f; _epatch_assert ) >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/} 2>&1; then _epatch_draw_line "***** ${patchname} *****" > ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real; echo >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real; echo "ACTUALLY APPLYING ${patchname} ..." >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real; echo >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real; _epatch_draw_line "***** ${patchname} *****" >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real; cat ${PATCH_TARGET} | patch -p${count} ${popts} >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real 2>&1; _epatch_assert; if [ "$?" -ne 0 ]; then cat ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real >> ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; echo; eerror "A dry-run of patch command succeeded, but actually"; eerror "applying the patch failed!"; count=5; fi; rm -f ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}.real; break; fi; count=$((count + 1)); done; if [ "${PATCH_SUFFIX}" != "patch" ]; then rm -f ${PATCH_TARGET}; fi; if [ "${count}" -eq 5 ]; then echo; eerror "Failed Patch: ${patchname} !"; eerror " ( ${PATCH_TARGET} )"; eerror; eerror "Include in your bugreport the contents of:"; eerror; eerror " ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}"; echo; die "Failed Patch: ${patchname}!"; fi; rm -f ${STDERR_TARGET%/*}/${patchname}-${STDERR_TARGET##*/}; eend 0; fi; done; if [ "${SINGLE_PATCH}" = "no" ]; then einfo "Done with patching"; fi } epause () { [[ -z ${EPAUSE_IGNORE} ]] && sleep ${1:-5} } epunt_cxx () { local dir=$1; [[ -z ${dir} ]] && dir=${S}; ebegin "Removing useless C++ checks"; local f; find "${dir}" -name configure | while read f; do patch --no-backup-if-mismatch -p0 "${f}" "${PORTDIR}/eclass/ELT-patches/nocxx/nocxx.patch" > /dev/null; done; eend 0 } esvn_clean () { [[ -z $* ]] && set -- .; find "$@" -type d -name '.svn' -prune -print0 | xargs -0 rm -rf } fdo-mime_desktop_database_update () { if [ -x "${ROOT}/usr/bin/update-desktop-database" ]; then einfo "Updating desktop mime database ..."; "${ROOT}/usr/bin/update-desktop-database" -q "${ROOT}/usr/share/applications"; fi } fdo-mime_mime_database_update () { if [ -x "${ROOT}/usr/bin/update-mime-database" ]; then einfo "Updating shared mime info database ..."; "${ROOT}/usr/bin/update-mime-database" "${ROOT}/usr/share/mime"; fi } filter_invalid_flags () { local flag broken_flags; eval broken_flags=($(get_broken_flags $(getPROG CC gcc) c ${CFLAGS})); for flag in "${broken_flags[@]}"; do ewarn "Filtering out invalid CFLAG \"${flag}\""; CFLAGS="$(remove_flag "${flag}" ${CFLAGS})"; done; eval broken_flags=($(get_broken_flags $(getPROG CXX g++) c++ ${CXXFLAGS})); for flag in "${broken_flags[@]}"; do ewarn "Filtering out invalid CXXFLAG \"${flag}\""; CXXFLAGS="$(remove_flag "${flag}" ${CXXFLAGS})"; done } find_unpackable_file () { local src=$1; if [[ -z ${src} ]]; then src=${DISTDIR}/${A}; else if [[ -e ${DISTDIR}/${src} ]]; then src=${DISTDIR}/${src}; else if [[ -e ${PWD}/${src} ]]; then src=${PWD}/${src}; else if [[ -e ${src} ]]; then src=${src}; fi; fi; fi; fi; [[ ! -e ${src} ]] && return 1; echo "${src}" } gcc-fullversion () { $(tc-getCC "$@") -dumpversion } gcc-major-version () { gcc-version "$@" | cut -f1 -d. } gcc-micro-version () { gcc-fullversion "$@" | cut -f3 -d. | cut -f1 -d- } gcc-minor-version () { gcc-version "$@" | cut -f2 -d. } 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-now () { local directive; directive=$(gcc-specs-directive link_command); return $([[ ${directive/\{!nonow:} != ${directive} ]]) } gcc-specs-pie () { local directive; directive=$(gcc-specs-directive cc1); return $([[ ${directive/\{!nopie:} != ${directive} ]]) } gcc-specs-relro () { local directive; directive=$(gcc-specs-directive link_command); return $([[ ${directive/\{!norelro:} != ${directive} ]]) } gcc-specs-ssp () { local directive; directive=$(gcc-specs-directive cc1); return $([[ ${directive/\{!fno-stack-protector:} != ${directive} ]]) } gcc-specs-ssp-to-all () { local directive; directive=$(gcc-specs-directive cc1); return $([[ ${directive/\{!fno-stack-protector-all:} != ${directive} ]]) } gcc-version () { gcc-fullversion "$@" | cut -f1,2 -d. } gen_usr_ldscript () { local lib libdir=$(get_libdir) output_format=""; dodir /usr/${libdir}; output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p'); [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"; for lib in "$@"; do if [[ ${USERLAND} == "Darwin" ]]; then ewarn "Not creating fake dynamic library for $lib on Darwin;"; ewarn "making a symlink instead."; dosym "/${libdir}/${lib}" "/usr/${libdir}/${lib}"; else cat > "${D}/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. See bug http://bugs.gentoo.org/4411 for more info. */ ${output_format} GROUP ( /${libdir}/${lib} ) END_LDSCRIPT fi fperms a+x "/usr/${libdir}/${lib}" || die "could not change perms on ${lib}"; done } getPROG () { local var=$1 prog=$2; if [[ -n ${!var} ]]; then echo "${!var}"; return 0; fi; local search=; [[ -n $3 ]] && search=$(type -p "$3-${prog}"); [[ -z ${search} && -n ${CHOST} ]] && search=$(type -p "${CHOST}-${prog}"); [[ -n ${search} ]] && prog=${search##*/}; export ${var}=${prog}; echo "${!var}" } get_abi_ASFLAGS () { get_abi_var ASFLAGS "$@" } get_abi_CDEFINE () { get_abi_var CDEFINE "$@" } 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; if [ $# -gt 1 ]; then abi=${2}; else if [ -n "${ABI}" ]; then abi=${ABI}; else if [ -n "${DEFAULT_ABI}" ]; then abi=${DEFAULT_ABI}; else abi="default"; fi; fi; fi; local var="${flag}_${abi}"; echo ${!var} } get_after_major_version () { __versionator_shopt_toggle on; echo $(get_version_component_range 2- "${1:-${PV}}" ); __versionator_shopt_toggle off } get_all_abis () { local order=""; if [[ -z ${MULTILIB_ABIS} ]]; then echo "default"; return 0; fi; for x in ${MULTILIB_ABIS}; do if [[ ${x} != ${DEFAULT_ABI} ]]; then order="${order:+${order} }${x}"; fi; done; order="${order:+${order} }${DEFAULT_ABI}"; echo ${order}; return 0 } get_all_libdirs () { local libdirs="lib"; local abi; local dir; for abi in ${MULTILIB_ABIS}; do [ "$(get_abi_LIBDIR ${abi})" != "lib" ] && libdirs="${libdirs} $(get_abi_LIBDIR ${abi})"; done; echo "${libdirs}" } get_all_version_components () { __versionator_shopt_toggle on; local ver_str=${1:-${PV}} result result_idx=0; result=(); if [[ "${VERSIONATOR_CACHE_VER_STR}" == "${ver_str}" ]]; then echo ${VERSIONATOR_CACHE_RESULT}; __versionator_shopt_toggle off; return; fi; export VERSIONATOR_CACHE_VER_STR="${ver_str}"; while [[ -n "$ver_str" ]]; do case "${ver_str:0:1}" in [[:digit:]]) result[$result_idx]="${ver_str%%[^[:digit:]]*}"; ver_str="${ver_str##+([[:digit:]])}"; result_idx=$(($result_idx + 1)) ;; [-_.]) result[$result_idx]="${ver_str:0:1}"; ver_str="${ver_str:1}"; result_idx=$(($result_idx + 1)) ;; [[:alpha:]]) local not_match="${ver_str##+([[:alpha:]])*([[:digit:]])}"; result[$result_idx]=${ver_str:0:$((${#ver_str} - ${#not_match}))}; ver_str="${not_match}"; result_idx=$(($result_idx + 1)) ;; *) result[$result_idx]="${ver_str:0:1}"; ver_str="${ver_str:1}"; result_idx=$(($result_idx + 1)) ;; esac; done; export VERSIONATOR_CACHE_RESULT="${result[@]}"; echo ${result[@]}; __versionator_shopt_toggle off } get_bmake () { if [[ ${USERLAND} == *BSD ]]; then echo make; else if [[ ${USERLAND} == "Darwin" ]]; then echo bsdmake; else echo pmake; fi; fi } get_broken_flags () { local myprog="${1}" lang="${2}"; shift 2; echo 'main(){}' | LC_ALL=C ${myprog} ${@} -x ${lang} -o /dev/null - 2>&1 | egrep "unrecognized .*option" | egrep -o -- '('\''|\"|`)-.*' | sed -r 's/('\''|`|")//g; s/^/"/; s/$/"/'; echo 'main(){}' | LC_ALL=C ${myprog} ${@} -x ${lang} -o /dev/null - 2>&1 | egrep "unrecognised debug output" | egrep -o -- '('\''|\"|`).*' | sed -r 's/('\''|`|")//g; s/^/"-g/; s/$/"/' } get_install_abis () { local 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 hasq ${x} ${ABI_DENY} || ordera="${ordera} ${x}"; fi; done; hasq ${DEFAULT_ABI} ${ABI_DENY} || order="${ordera} ${DEFAULT_ABI}"; if [[ -n ${ABI_ALLOW} ]]; then local ordera=""; for x in ${order}; do if hasq ${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_last_version_component_index () { __versionator_shopt_toggle on; echo $(( $(get_version_component_count "${1:-${PV}}" ) - 1 )); __versionator_shopt_toggle off } get_libdir () { local CONF_LIBDIR; if [ -n "${CONF_LIBDIR_OVERRIDE}" ]; then echo ${CONF_LIBDIR_OVERRIDE}; else get_abi_LIBDIR; fi } get_libdir_override () { if has_multilib_profile; then eerror "get_libdir_override called, but it shouldn't be needed with the new multilib approach. Please file a bug at http://bugs.gentoo.org and assign it to eradicator@gentoo.org"; exit 1; fi; CONF_LIBDIR="$1"; CONF_LIBDIR_OVERRIDE="$1"; LIBDIR_default="$1" } get_libname () { local libname; local ver=$1; case ${CHOST} in mingw* | *-mingw*) libname="dll" ;; *-darwin*) libname="dylib" ;; *) libname="so" ;; esac; if [[ -z $* ]]; then echo ".${libname}"; else for ver in "$@"; do case ${CHOST} in *-darwin*) echo ".${ver}.${libname}" ;; *) echo ".${libname}.${ver}" ;; esac; done; fi } get_major_version () { __versionator_shopt_toggle on; local c; c=($(get_all_version_components "${1:-${PV}}" )); echo ${c[0]}; __versionator_shopt_toggle off } get_ml_incdir () { local dir=/usr/include; if [[ $# -gt 0 ]]; then incdir=$1; shift; fi; if [[ -z "${MULTILIB_ABIS}" ]]; then echo ${incdir}; return 0; fi; local abi=${ABI-${DEFAULT_ABI}}; if [[ $# -gt 0 ]]; then abi=$1; shift; fi; if [[ -d "${dir}/gentoo-multilib/${abi}" ]]; then echo ${dir}/gentoo-multilib/${abi}; else echo ${dir}; fi } get_mounts () { local point= node= fs= opts= foo=; if [[ $(uname -s) == "Linux" ]]; then while read node point fs opts foo; do echo "${point} ${node} ${fs} ${opts}"; done < /proc/mounts; return; fi; local IFS=' '; LC_ALL=C mount -p | while read node point fs foo; do opts=${fs#* }; fs=${fs%% *}; echo "${point// /\040} ${node// /\040} ${fs%% *} ${opts// /\040}"; done } get_multilibdir () { if has_multilib_profile; then eerror "get_multilibdir called, but it shouldn't be needed with the new multilib approach. Please file a bug at http://bugs.gentoo.org and assign it to eradicator@gentoo.org"; exit 1; fi; echo ${CONF_MULTILIBDIR:=lib32} } get_version_component_count () { __versionator_shopt_toggle on; local a; a=($(get_version_components "${1:-${PV}}" )); echo ${#a[@]}; __versionator_shopt_toggle off } get_version_component_range () { __versionator_shopt_toggle on; local c v="${2:-${PV}}" range="${1}" range_start range_end i=-1 j=0; c=($(get_all_version_components ${v} )); range_start="${range%-*}"; range_start="${range_start:-1}"; range_end="${range#*-}"; range_end="${range_end:-${#c[@]}}"; while (( j < ${range_start} )); do i=$(($i + 1)); [[ $i -gt ${#c[@]} ]] && __versionator_shopt_toggle off && return; [[ -n "${c[${i}]//[-._]}" ]] && j=$(($j + 1)); done; while (( j <= ${range_end} )); do echo -n ${c[$i]}; [[ $i -gt ${#c[@]} ]] && __versionator_shopt_toggle off && return; [[ -n "${c[${i}]//[-._]}" ]] && j=$(($j + 1)); i=$(($i + 1)); done; __versionator_shopt_toggle off } get_version_components () { __versionator_shopt_toggle on; local c="$(get_all_version_components "${1:-${PV}}")"; c=(${c[@]//[-._]/ }); echo ${c[@]}; __versionator_shopt_toggle off } gnome2_gconf_install () { local F; if [[ ! -x "${GCONFTOOL_BIN}" ]]; then return; fi; if [[ -z "${GNOME2_ECLASS_SCHEMAS}" ]]; then einfo "No GNOME 2 GConf schemas found"; return; fi; unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL; export GCONF_CONFIG_SOURCE="$("${GCONFTOOL_BIN}" --get-default-source)"; einfo "Installing GNOME 2 GConf schemas"; for F in ${GNOME2_ECLASS_SCHEMAS}; do if [[ -e "${ROOT}${F}" ]]; then "${GCONFTOOL_BIN}" --makefile-install-rule "${ROOT}${F}" > /dev/null; fi; done; pids=$(pgrep -x gconfd-2); if [[ $? == 0 ]]; then ebegin "Reloading GConf schemas"; kill -HUP ${pids}; eend $?; fi } gnome2_gconf_savelist () { pushd "${D}" >&/dev/null; export GNOME2_ECLASS_SCHEMAS=$(find 'etc/gconf/schemas/' -name '*.schemas' 2> /dev/null); popd >&/dev/null } gnome2_gconf_uninstall () { local F; if [[ ! -x "${GCONFTOOL_BIN}" ]]; then return; fi; if [[ -z "${GNOME2_ECLASS_SCHEMAS}" ]]; then einfo "No GNOME 2 GConf schemas found"; return; fi; unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL; export GCONF_CONFIG_SOURCE=$("${GCONFTOOL_BIN}" --get-default-source); einfo "Uninstalling GNOME 2 GConf schemas"; for F in ${GNOME2_ECLASS_SCHEMAS}; do if [[ -e "${ROOT}${F}" ]]; then "${GCONFTOOL_BIN}" --makefile-uninstall-rule "${ROOT}${F}" > /dev/null; fi; done; pids=$(pgrep -x gconfd-2); if [[ $? == 0 ]]; then ebegin "Reloading GConf schemas"; kill -HUP ${pids}; eend $?; fi } gnome2_icon_cache_update () { local updater="$(type -p gtk-update-icon-cache 2> /dev/null)"; if [[ ! -x "${updater}" ]]; then debug-print "${updater} is not executable"; return; fi; if [[ -z "${GNOME2_ECLASS_ICONS}" ]]; then return; fi; ebegin "Updating icons cache"; local retval=0; local fails=(); for dir in ${GNOME2_ECLASS_ICONS}; do if [[ -f "${ROOT}${dir}/index.theme" ]]; then local rv=0; "${updater}" -qf "${ROOT}${dir}"; rv=$?; if [[ ! $rv -eq 0 ]]; then debug-print "Updating cache failed on ${ROOT}${dir}"; fails[$(( ${#fails[@]} + 1 ))]="${ROOT}${dir}"; retval=2; fi; fi; done; eend ${retval}; for f in "${fails[@]}"; do eerror "Failed to update cache with icon $f"; done } gnome2_icon_savelist () { pushd "${D}" >&/dev/null; export GNOME2_ECLASS_ICONS=$(find 'usr/share/icons' -maxdepth 1 -mindepth 1 -type d 2> /dev/null); popd >&/dev/null } gnome2_omf_fix () { local omf_makefiles filename; omf_makefiles="$@"; if [[ -f ${S}/omf.make ]]; then omf_makefiles="${omf_makefiles} ${S}/omf.make"; fi; for filename in $(find ./ -name "Makefile.in" -o -name "Makefile.am"); do omf_makefiles="${omf_makefiles} ${filename}"; done; ebegin "Fixing OMF Makefiles"; local retval=0; local fails=(); for omf in ${omf_makefiles}; do local rv=0; sed -i -e 's:scrollkeeper-update:true:' "${omf}"; retval=$?; if [[ ! $rv -eq 0 ]]; then debug-print "updating of ${omf} failed"; fails[$(( ${#fails[@]} + 1 ))]=$omf; retval=2; fi; done; eend $retval; for f in "${fails[@]}"; do eerror "Failed to update OMF Makefile $f"; done } gnome2_pkg_postinst () { gnome2_gconf_install; fdo-mime_desktop_database_update; fdo-mime_mime_database_update; gnome2_icon_cache_update; if [[ "${SCROLLKEEPER_UPDATE}" = "1" ]]; then gnome2_scrollkeeper_update; fi } gnome2_pkg_postrm () { fdo-mime_desktop_database_update; fdo-mime_mime_database_update; gnome2_icon_cache_update; if [[ "${SCROLLKEEPER_UPDATE}" = "1" ]]; then gnome2_scrollkeeper_update; fi } gnome2_pkg_preinst () { gnome2_gconf_savelist; gnome2_icon_savelist } gnome2_scrollkeeper_update () { if [[ -x "${SCROLLKEEPER_UPDATE_BIN}" ]]; then einfo "Updating scrollkeeper database ..."; "${SCROLLKEEPER_UPDATE_BIN}" -q -p "${SCROLLKEEPER_DIR}"; fi } gnome2_src_compile () { gnome2_src_configure "$@"; emake || die "compile failure" } gnome2_src_configure () { if [[ ${GCONF_DEBUG} != 'no' ]]; then if use debug; then G2CONF="${G2CONF} --enable-debug=yes"; fi; fi; if hasq doc ${IUSE}; then G2CONF="${G2CONF} $(use_enable doc gtk-doc)"; fi; addwrite "/root/.gnome2"; GST_REGISTRY="${S}/registry.xml" econf "$@" ${G2CONF} || die "configure failed" } gnome2_src_install () { local sk_tmp_dir="/var/lib/scrollkeeper"; dodir "${sk_tmp_dir}"; export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1"; if [[ -z "${USE_EINSTALL}" || "${USE_EINSTALL}" = "0" ]]; then debug-print "Installing with 'make install'"; emake DESTDIR="${D}" "scrollkeeper_localstate_dir=${D}${sk_tmp_dir} " "$@" install || die "install failed"; else debug-print "Installing with 'einstall'"; einstall "scrollkeeper_localstate_dir=${D}${sk_tmp_dir} " "$@" || die "einstall failed"; fi; unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL; [[ -n "${DOCS}" ]] && dodoc ${DOCS}; if [[ -z "$(find "${D}" -name '*.omf')" ]]; then export SCROLLKEEPER_UPDATE="0"; fi; rm -rf "${D}${sk_tmp_dir}"; rm -fr "${D}/usr/share/applications/mimeinfo.cache" } gnome2_src_unpack () { unpack ${A}; cd "${S}"; gnome2_omf_fix; elibtoolize ${ELTCONF} } has_multilib_profile () { [ -n "${MULTILIB_ABIS}" -a "${MULTILIB_ABIS}" != "${MULTILIB_ABIS/ /}" ] } increment-qa-violations () { let "JAVA_PKG_QA_VIOLATIONS+=1"; export JAVA_PKG_QA_VIOLATIONS } is-java-strict () { [[ -n ${JAVA_PKG_STRICT} ]]; return $? } is-login-disabled () { shell=$(egetshell "$1"); case ${shell} in /bin/false | /usr/bin/false | /sbin/nologin | /usr/sbin/nologin) return 0 ;; *) return 1 ;; esac } is_final_abi () { has_multilib_profile || return 0; local ALL_ABIS=$(get_install_abis); local LAST_ABI=${ALL_ABIS/* /}; [[ ${LAST_ABI} == ${ABI} ]] } java-pkg-2_pkg_setup () { java-pkg_init; java-pkg_ensure-test } java-pkg-2_src_compile () { if [[ -e "${EANT_BUILD_XML:=build.xml}" ]]; then [[ -n "${EANT_FILTER_COMPILER}" ]] && java-pkg_filter-compiler ${EANT_FILTER_COMPILER}; local antflags="${EANT_BUILD_TARGET:=jar}"; if hasq doc ${IUSE} && [[ -n "${EANT_DOC_TARGET=javadoc}" ]]; then antflags="${antflags} $(use_doc ${EANT_DOC_TARGET})"; fi; local tasks; [[ -n ${EANT_ANT_TASKS} ]] && tasks="${ANT_TASKS} ${EANT_ANT_TASKS}"; ANT_TASKS="${tasks:-${ANT_TASKS}}" eant ${antflags} -f "${EANT_BUILD_XML}" ${EANT_EXTRA_ARGS} "${@}"; else echo "${FUNCNAME}: ${EANT_BUILD_XML} not found so nothing to do."; fi } java-pkg_addcp () { java-pkg_append_ JAVA_PKG_CLASSPATH "${@}"; java-pkg_do_write_ } java-pkg_announce-qa-violation () { local nodie; if [[ ${1} == "--nodie" ]]; then nodie="true"; shift; fi; echo "Java QA Notice: $@" 1>&2; increment-qa-violations; [[ -z "${nodie}" ]] && is-java-strict && die "${@}" } java-pkg_ant-tasks-depend () { debug-print-function ${FUNCNAME} ${WANT_ANT_TASKS}; if [[ -n "${WANT_ANT_TASKS}" ]]; then local DEP=""; for i in ${WANT_ANT_TASKS}; do if [[ ${i} != ant-* ]]; then echo "Invalid atom in WANT_ANT_TASKS: ${i}"; return 1; fi; DEP="${DEP}dev-java/${i} "; done; echo ${DEP}; return 0; else return 0; fi } java-pkg_append_ () { debug-print-function ${FUNCNAME} $*; local var="${1}" value="${2}"; if [[ -z "${!var}" ]]; then export ${var}="${value}"; else local oldIFS=${IFS} cur haveit; IFS=':'; for cur in ${!var}; do if [[ ${cur} == ${value} ]]; then haveit="yes"; break; fi; done; [[ -z ${haveit} ]] && export ${var}="${!var}:${value}"; IFS=${oldIFS}; fi } java-pkg_check-jikes () { if hasq jikes ${IUSE}; then java-pkg_announce-qa-violation "deprecated USE flag 'jikes' in IUSE"; fi } java-pkg_check-phase () { local phase=${1}; local funcname=${FUNCNAME[1]}; if [[ ${EBUILD_PHASE} != ${phase} ]]; then local msg="${funcname} used outside of src_${phase}"; java-pkg_announce-qa-violation "${msg}"; fi } java-pkg_check-versioned-jar () { local jar=${1}; if [[ ${jar} =~ ${PV} ]]; then java-pkg_announce-qa-violation "installing versioned jar '${jar}'"; fi } java-pkg_current-vm-matches () { hasq $(java-pkg_get-current-vm) ${@}; return $? } java-pkg_die () { echo "!!! When you file a bug report, please include the following information:" 1>&2; echo "GENTOO_VM=${GENTOO_VM} CLASSPATH=\"${CLASSPATH}\" JAVA_HOME=\"${JAVA_HOME}\"" 1>&2; echo "JAVACFLAGS=\"${JAVACFLAGS}\" COMPILER=\"${GENTOO_COMPILER}\"" 1>&2; echo "and of course, the output of emerge --info" 1>&2 } java-pkg_do_write_ () { debug-print-function ${FUNCNAME} $*; java-pkg_init_paths_; dodir "${JAVA_PKG_SHAREPATH}"; if [[ -n "${JAVA_PKG_CLASSPATH}" || -n "${JAVA_PKG_LIBRARY}" || -f "${JAVA_PKG_DEPEND_FILE}" || -f "${JAVA_PKG_OPTIONAL_DEPEND_FILE}" ]]; then ( echo "DESCRIPTION=\"${DESCRIPTION}\""; echo "GENERATION=\"2\""; echo "SLOT=\"${SLOT}\""; [[ -n "${JAVA_PKG_CLASSPATH}" ]] && echo "CLASSPATH=\"${JAVA_PKG_CLASSPATH}\""; [[ -n "${JAVA_PKG_LIBRARY}" ]] && echo "LIBRARY_PATH=\"${JAVA_PKG_LIBRARY}\""; [[ -n "${JAVA_PROVIDE}" ]] && echo "PROVIDES=\"${JAVA_PROVIDE}\""; [[ -f "${JAVA_PKG_DEPEND_FILE}" ]] && echo "DEPEND=\"$(cat "${JAVA_PKG_DEPEND_FILE}" | uniq | tr '\n' ':')\""; [[ -f "${JAVA_PKG_OPTIONAL_DEPEND_FILE}" ]] && echo "OPTIONAL_DEPEND=\"$(cat "${JAVA_PKG_OPTIONAL_DEPEND_FILE}" | uniq | tr '\n' ':')\""; echo "VM=\"$(echo ${RDEPEND} ${DEPEND} | sed -e 's/ /\n/g' | sed -n -e '/virtual\/\(jre\|jdk\)/ { p;q }')\"" ) > "${JAVA_PKG_ENV}"; local target="$(java-pkg_get-target)"; local source="$(java-pkg_get-source)"; [[ -n ${target} ]] && echo "TARGET=\"${target}\"" >> "${JAVA_PKG_ENV}"; [[ -n ${source} ]] && echo "SOURCE=\"${source}\"" >> "${JAVA_PKG_ENV}"; [[ -n ${JAVADOC_PATH} ]] && echo "JAVADOC_PATH=\"${JAVADOC_PATH}\"" >> ${JAVA_PKG_ENV}; [[ -n ${JAVA_SOURCES} ]] && echo "JAVA_SOURCES=\"${JAVA_SOURCES}\"" >> ${JAVA_PKG_ENV}; echo "MERGE_VM=\"${GENTOO_VM}\"" >> "${JAVA_PKG_ENV}"; [[ -n ${GENTOO_COMPILER} ]] && echo "MERGE_COMPILER=\"${GENTOO_COMPILER}\"" >> "${JAVA_PKG_ENV}"; if [[ -n "${JAVA_PKG_EXTRA_ENV_VARS}" ]]; then cat "${JAVA_PKG_EXTRA_ENV}" >> "${JAVA_PKG_ENV}" || die; echo "ENV_VARS=\"$(echo ${JAVA_PKG_EXTRA_ENV_VARS})\"" >> "${JAVA_PKG_ENV}" || die; fi; sed -e "s/=\":/=\"/" -e "s/:\"$/\"/" -i "${JAVA_PKG_ENV}" || die "Did you forget to call java_init ?"; else debug-print "JAVA_PKG_CLASSPATH, JAVA_PKG_LIBRARY, JAVA_PKG_DEPEND_FILE"; debug-print "or JAVA_PKG_OPTIONAL_DEPEND_FILE not defined so can't"; debug-print "write package.env."; fi } java-pkg_doexamples () { debug-print-function ${FUNCNAME} $*; [[ ${#} -lt 1 ]] && die "At least one argument needed"; java-pkg_check-phase install; local dest=/usr/share/doc/${PF}/examples; if [[ ${1} == --subdir ]]; then local dest=${dest}/${2}; dodir ${dest}; shift 2; fi; if [[ ${#} = 1 && -d ${1} ]]; then ( insinto "${dest}"; doins -r ${1}/* ) || die "Installing examples failed"; else ( insinto "${dest}"; doins -r "$@" ) || die "Installing examples failed"; fi } java-pkg_dohtml () { debug-print-function ${FUNCNAME} $*; [[ ${#} -lt 1 ]] && die "At least one argument required for ${FUNCNAME}"; dohtml -f package-list "$@"; java-pkg_recordjavadoc } java-pkg_dojar () { debug-print-function ${FUNCNAME} $*; [[ ${#} -lt 1 ]] && die "At least one argument needed"; java-pkg_check-phase install; java-pkg_init_paths_; dodir ${JAVA_PKG_JARDEST}; local jar; for jar in "${@}"; do local jar_basename=$(basename "${jar}"); java-pkg_check-versioned-jar ${jar_basename}; if [[ -e "${jar}" ]]; then local dest="${D}${JAVA_PKG_JARDEST}/${jar_basename}"; if [[ -e "${dest}" ]]; then ewarn "Overwriting ${dest}"; fi; if [[ ! -L "${jar}" ]]; then is-java-strict && java-pkg_verify-classes "${jar}"; INSDESTTREE="${JAVA_PKG_JARDEST}" doins "${jar}" || die "failed to install ${jar}"; java-pkg_append_ JAVA_PKG_CLASSPATH "${JAVA_PKG_JARDEST}/${jar_basename}"; debug-print "installed ${jar} to ${D}${JAVA_PKG_JARDEST}"; else ln -s "$(readlink "${jar}")" "${D}${JAVA_PKG_JARDEST}/${jar_basename}"; debug-print "${jar} is a symlink, linking accordingly"; fi; else die "${jar} does not exist"; fi; done; java-pkg_do_write_ } java-pkg_dojavadoc () { debug-print-function ${FUNCNAME} $*; local symlink; if [[ ${1} = --symlink ]]; then symlink=${2}; shift 2; fi; local dir="$1"; local dest=/usr/share/doc/${PF}/html; java-pkg_check-phase install; [[ -z "${dir}" ]] && die "Must specify a directory!"; [[ ! -d "${dir}" ]] && die "${dir} does not exist, or isn't a directory!"; if [[ ! -e "${dir}/index.html" ]]; then local msg="No index.html in javadoc directory"; ewarn "${msg}"; is-java-strict && die "${msg}"; fi; if [[ -e ${D}/${dest}/api ]]; then eerror "${dest} already exists. Will not overwrite."; die "${dest}"; fi; local dir_to_install="${dir}"; if [[ "$(basename "${dir}")" != "api" ]]; then dir_to_install="${T}/api"; cp -r "${dir}" "${dir_to_install}" || die "cp failed"; fi; java-pkg_dohtml -r "${dir_to_install}"; dosym ${dest}/api "${JAVA_PKG_SHAREPATH}/api" || die; if [[ -n ${symlink} ]]; then debug-print "symlinking ${dest}/{api,${symlink}}"; dosym ${dest}/{api,${symlink}} || die; fi } java-pkg_dolauncher () { debug-print-function ${FUNCNAME} $*; java-pkg_check-phase install; java-pkg_init_paths_; if [[ ${#} = 0 ]]; then local name="${PN}"; else local name="${1}"; shift; fi; local target="${T}/${name}"; local var_tmp="${T}/launcher_variables_tmp"; local target_dir pre; while [[ -n "${1}" && -n "${2}" ]]; do local var="${1}" value="${2}"; if [[ "${var:0:2}" == "--" ]]; then local var=${var:2}; echo "gjl_${var}=\"${value}\"" >> "${var_tmp}"; local gjl_${var}="${value}"; else if [[ "${var}" == "-into" ]]; then target_dir="${value}"; else if [[ "${var}" == "-pre" ]]; then pre="${value}"; fi; fi; fi; shift 2; done; if [[ -z "${gjl_jar}" && -z "${gjl_main}" ]]; then local cp="${JAVA_PKG_CLASSPATH}"; if [[ "${cp/:}" = "${cp}" && "${cp%.jar}" != "${cp}" ]]; then echo "gjl_jar=\"${JAVA_PKG_CLASSPATH}\"" >> "${var_tmp}"; else local msg="Not enough information to create a launcher given."; msg="${msg} Please give --jar or --main argument to ${FUNCNAME}."; die "${msg}"; fi; fi; echo "#!/bin/bash" > "${target}"; if [[ -n "${pre}" ]]; then if [[ -f "${pre}" ]]; then cat "${pre}" >> "${target}"; else die "-pre specified file '${pre}' does not exist"; fi; fi; echo "gjl_package=${JAVA_PKG_NAME}" >> "${target}"; cat "${var_tmp}" >> "${target}"; rm -f "${var_tmp}"; echo "source /usr/share/java-config-2/launcher/launcher.bash" >> "${target}"; if [[ -n "${target_dir}" ]]; then DESTTREE="${target_dir}" dobin "${target}"; local ret=$?; return ${ret}; else dobin "${target}"; fi } java-pkg_doso () { debug-print-function ${FUNCNAME} $*; [[ ${#} -lt 1 ]] && "At least one argument required for ${FUNCNAME}"; java-pkg_check-phase install; [[ ${#} -lt 1 ]] && die "At least one argument required for ${FUNCNAME}"; java-pkg_init_paths_; local lib; for lib in "$@"; do if [[ -e "${lib}" ]]; then if [[ ! -L "${lib}" ]]; then INSDESTTREE="${JAVA_PKG_LIBDEST}" INSOPTIONS="${LIBOPTIONS}" doins "${lib}" || "failed to install ${lib}"; java-pkg_append_ JAVA_PKG_LIBRARY "${JAVA_PKG_LIBDEST}"; debug-print "Installing ${lib} to ${JAVA_PKG_LIBDEST}"; else ln -s "$(readlink "${lib}")" "${D}${JAVA_PKG_LIBDEST}/$(basename "${lib}")"; debug-print "${lib} is a symlink, linking accordanly"; fi; else die "${lib} does not exist"; fi; done; java-pkg_do_write_ } java-pkg_dosrc () { debug-print-function ${FUNCNAME} $*; [ ${#} -lt 1 ] && die "At least one argument needed"; java-pkg_check-phase install; [[ ${#} -lt 1 ]] && die "At least one argument needed"; if ! [[ ${DEPEND} = *app-arch/zip* ]]; then local msg="${FUNCNAME} called without app-arch/zip in DEPEND"; java-pkg_announce-qa-violation ${msg}; fi; java-pkg_init_paths_; local zip_name="${PN}-src.zip"; local zip_path="${T}/${zip_name}"; local dir; for dir in "${@}"; do local dir_parent=$(dirname "${dir}"); local dir_name=$(basename "${dir}"); pushd ${dir_parent} > /dev/null || die "problem entering ${dir_parent}"; zip -q -r ${zip_path} ${dir_name} -i '*.java'; local result=$?; if [[ ${result} != 12 && ${result} != 0 ]]; then die "failed to zip ${dir_name}"; fi; popd > /dev/null; done; INSDESTTREE=${JAVA_PKG_SOURCESPATH} doins ${zip_path} || die "Failed to install source"; JAVA_SOURCES="${JAVA_PKG_SOURCESPATH}/${zip_name}"; java-pkg_do_write_ } java-pkg_dowar () { debug-print-function ${FUNCNAME} $*; [[ ${#} -lt 1 ]] && die "At least one argument needed"; java-pkg_check-phase install; java-pkg_init_paths_; local war; for war in $*; do local warpath; if [[ -L "${war}" ]]; then cp "${war}" "${T}"; warpath="${T}$(basename "${war}")"; else if [[ -d "${war}" ]]; then echo "dowar: warning, skipping directory ${war}"; continue; else warpath="${war}"; fi; fi; INSOPTIONS="-m 0644" INSDESTTREE=${JAVA_PKG_WARDEST} doins ${warpath}; done } java-pkg_ensure-dep () { debug-print-function ${FUNCNAME} $*; local limit_to="${1}"; local target_pkg="${2}"; local dev_error=""; local stripped_pkg=$(echo "${target_pkg}" | sed 's/-[0-9]*\(\.[0-9]\)*$//'); debug-print "Matching against: ${stripped_pkg}"; if [[ ${limit_to} != runtime && ! ( "${DEPEND}" =~ "$stripped_pkg" ) ]]; then dev_error="The ebuild is attempting to use ${target_pkg} that is not"; dev_error="${dev_error} declared in DEPEND."; if is-java-strict; then eerror "${dev_error}"; die "${dev_error}"; else if [[ ${BASH_SUBSHELL} = 0 ]]; then eerror "${dev_error}"; elog "Because you have this package installed the package will"; elog "build without problems, but please report this to"; elog "http://bugs.gentoo.org"; fi; fi; fi; if [[ ${limit_to} != build ]]; then if [[ ! ( ${RDEPEND} =~ "${stripped_pkg}" ) ]]; then if [[ ! ( ${PDEPEND} =~ "${stripped_pkg}" ) ]]; then dev_error="The ebuild is attempting to use ${target_pkg},"; dev_error="${dev_error} without specifying --build-only, that is not declared in RDEPEND"; dev_error="${dev_error} or PDEPEND."; if is-java-strict; then eerror "${dev_error}"; die "${dev_error}"; else if [[ ${BASH_SUBSHELL} = 0 ]]; then eerror "${dev_error}"; elog "The package will build without problems, but may fail to run"; elog "if you don't have ${target_pkg} installed, so please report"; elog "this to http://bugs.gentoo.org"; fi; fi; fi; fi; fi } java-pkg_ensure-gcj () { if ! built_with_use sys-devel/gcc gcj; then ewarn; ewarn "You must build gcc with the gcj support to build with gcj"; ewarn; ebeep 5; die "No GCJ support found!"; fi } java-pkg_ensure-no-bundled-jars () { debug-print-function ${FUNCNAME} $*; local bundled_jars=$(java-pkg_find-normal-jars); if [[ -n ${bundled_jars} ]]; then echo "Bundled jars found:"; local jar; for jar in ${bundled_jars}; do echo $(pwd)${jar/./}; done; die "Bundled jars found!"; fi } java-pkg_ensure-test () { if hasq test ${FEATURES} && ! hasq -test ${FEATURES} && hasq test ${IUSE} && ! use test; then eerror "You specified FEATURES=test, but USE=test is needed"; eerror "to pull in the additional dependencies for testing"; die "Need USE=test enabled"; fi } java-pkg_ensure-vm-version-eq () { debug-print-function ${FUNCNAME} $*; if ! java-pkg_is-vm-version-eq $@; then debug-print "VM is not suffient"; eerror "This package requires a Java VM version = $@"; einfo "Please use java-config -S to set the correct one"; die "Active Java VM too old"; fi } java-pkg_ensure-vm-version-ge () { debug-print-function ${FUNCNAME} $*; if ! java-pkg_is-vm-version-ge "$@"; then debug-print "vm is not suffient"; eerror "This package requires a Java VM version >= $@"; einfo "Please use java-config -S to set the correct one"; die "Active Java VM too old"; fi } java-pkg_ensure-vm-version-sufficient () { debug-print-function ${FUNCNAME} $*; if ! java-pkg_is-vm-version-sufficient; then debug-print "VM is not suffient"; eerror "Current Java VM cannot build this package"; einfo "Please use java-config -S to set the correct one"; die "Active Java VM cannot build this package"; fi } java-pkg_expand_dir_ () { pushd "$(dirname "${1}")" > /dev/null 2>&1; pwd; popd > /dev/null 2>&1 } java-pkg_filter-compiler () { JAVA_PKG_FILTER_COMPILER="${JAVA_PKG_FILTER_COMPILER} $@" } java-pkg_find-normal-jars () { local dir=$1; [[ -n "${dir}" ]] || dir="${WORKDIR}"; local found; for jar in $(find "${dir}" -name "*.jar" -type f); do echo "${jar}"; found="true"; done; [[ -n "${found}" ]]; return $? } java-pkg_force-compiler () { JAVA_PKG_FORCE_COMPILER="$@" } java-pkg_func-exists () { if [[ -n "$(declare -f ${1})" ]]; then return 0; else return 1; fi } java-pkg_get-current-vm () { java-config -f } java-pkg_get-javac () { debug-print-function ${FUNCNAME} $*; local compiler="${GENTOO_COMPILER}"; local compiler_executable; if [[ "${compiler}" = "javac" ]]; then compiler_executable="javac"; else local compiler_env="/usr/share/java-config-2/compiler/${compiler}"; if [[ -f ${compiler_env} ]]; then local old_javac=${JAVAC}; unset JAVAC; compiler_executable="$(source ${compiler_env} 1>/dev/null 2>&1; echo ${JAVAC})"; export JAVAC=${old_javac}; if [[ -z ${compiler_executable} ]]; then echo "JAVAC is empty or undefined in ${compiler_env}"; return 1; fi; if [[ ! -x ${compiler_executable} ]]; then echo "${compiler_executable} doesn't exist, or isn't executable"; return 1; fi; else echo "Could not find environment file for ${compiler}"; return 1; fi; fi; echo ${compiler_executable} } java-pkg_get-jni-cflags () { local flags="-I${JAVA_HOME}/include"; local platform="linux"; use elibc_FreeBSD && platform="freebsd"; flags="${flags} -I${JAVA_HOME}/include/${platform}"; echo ${flags} } java-pkg_get-source () { echo ${JAVA_PKG_WANT_SOURCE:-$(depend-java-query --get-lowest "${DEPEND} ${RDEPEND}")} } java-pkg_get-target () { echo ${JAVA_PKG_WANT_TARGET:-$(depend-java-query --get-lowest "${DEPEND} ${RDEPEND}")} } java-pkg_get-vm-vendor () { debug-print-function ${FUNCNAME} $*; local vm="$(java-pkg_get-current-vm)"; vm="${vm/-*/}"; echo "${vm}" } java-pkg_get-vm-version () { debug-print-function ${FUNCNAME} $*; java-config -g PROVIDES_VERSION } java-pkg_getjar () { debug-print-function ${FUNCNAME} $*; local build_only=""; local virtual=""; [[ "${EBUILD_PHASE}" == "test" ]] && build_only="build"; while [[ "${1}" == --* ]]; do if [[ "${1}" = "--build-only" ]]; then build_only="build"; else if [[ "${1}" == "--virtual" ]]; then virtual="true"; else die "java-pkg_getjar called with unknown parameter: ${1}"; fi; fi; shift; done; [[ ${#} -ne 2 ]] && die "${FUNCNAME} takes only two arguments besides --*"; local pkg="${1}" target_jar="${2}" jar; if [[ "${EAPI}" == "1" ]]; then pkg="${pkg//:/-}"; fi; [[ -z ${pkg} ]] && die "Must specify package to get a jar from"; [[ -z ${target_jar} ]] && die "Must specify jar to get"; local error_msg="Could not find classpath for ${pkg}. Are you sure its installed?"; local classpath; classpath=$(java-config --classpath=${pkg}); [[ $? != 0 ]] && die ${error_msg}; java-pkg_ensure-dep "${build_only}" "${pkg}"; if [[ -n "${virtual}" ]]; then java-pkg_record-jar_ "${pkg}"; build_only="true"; fi; for jar in ${classpath//:/ }; do if [[ ! -f "${jar}" ]]; then die "Installation problem with jar ${jar} in ${pkg} - is it installed?"; fi; if [[ "$(basename ${jar})" == "${target_jar}" ]]; then [[ -z "${build_only}" ]] && java-pkg_record-jar_ "${pkg}" "${jar}"; echo "${jar}"; return 0; fi; done; die "Could not find ${target_jar} in ${pkg}"; return 1 } java-pkg_getjars () { debug-print-function ${FUNCNAME} $*; local build_only=""; local deep=""; [[ "${EBUILD_PHASE}" == "test" ]] && build_only="build"; while [[ "${1}" == --* ]]; do if [[ "${1}" = "--build-only" ]]; then build_only="build"; else if [[ "${1}" = "--with-dependencies" ]]; then deep="--with-dependencies"; else die "java-pkg_jar-from called with unknown parameter: ${1}"; fi; fi; shift; done; [[ ${#} -ne 1 ]] && die "${FUNCNAME} takes only one argument besides --*"; local pkgs="${1}"; if [[ "${EAPI}" == "1" ]]; then pkgs="${pkgs//:/-}"; fi; jars="$(java-config ${deep} --classpath=${pkgs})"; [[ $? != 0 ]] && die "java-config --classpath=${pkgs} failed"; debug-print "${pkgs}:${jars}"; for pkg in ${pkgs//,/ }; do java-pkg_ensure-dep "${build_only}" "${pkg}"; done; if [[ -z "${build_only}" ]]; then for pkg in ${pkgs//,/ }; do java-pkg_record-jar_ "${pkg}"; done; fi; echo "${jars}" } java-pkg_init () { debug-print-function ${FUNCNAME} $*; unset JAVAC; unset JAVA_HOME; local silence="${SILENCE_JAVA_OPTIONS_WARNING}"; local accept="${I_WANT_GLOBAL_JAVA_OPTIONS}"; if [[ -n ${_JAVA_OPTIONS} && -z ${accept} && -z ${silence} ]]; then ewarn "_JAVA_OPTIONS changes what java -version outputs at least for"; ewarn "sun-jdk vms and and as such break configure scripts that"; ewarn "use it (for example app-office/openoffice) so we filter it out."; ewarn "Use SILENCE_JAVA_OPTIONS_WARNING=true in the environment (use"; ewarn "make.conf for example) to silence this warning or"; ewarn "I_WANT_GLOBAL_JAVA_OPTIONS to not filter it."; fi; if [[ -z ${accept} ]]; then unset _JAVA_OPTIONS; I_WANT_GLOBAL_JAVA_OPTIONS="true"; fi; if java-pkg_func-exists ant_src_unpack; then java-pkg_announce-qa-violation "Using old ant_src_unpack. Should be src_unpack"; fi; java-pkg_init_paths_; java-pkg_switch-vm; PATH=${JAVA_HOME}/bin:${PATH}; java-pkg_check-jikes; export CLASSPATH=; export ANT_TASKS=; export ANT_OPTS= } java-pkg_init-compiler_ () { debug-print-function ${FUNCNAME} $*; if [[ -n ${GENTOO_COMPILER} ]]; then debug-print "GENTOO_COMPILER already set"; return; fi; local compilers; if [[ -z ${JAVA_PKG_FORCE_COMPILER} ]]; then compilers="$(source ${JAVA_PKG_COMPILERS_CONF} 1>/dev/null 2>&1; echo ${COMPILERS})"; else compilers=${JAVA_PKG_FORCE_COMPILER}; fi; debug-print "Read \"${compilers}\" from ${JAVA_PKG_COMPILERS_CONF}"; local compiler; for compiler in ${compilers}; do debug-print "Checking ${compiler}..."; if [[ ${compiler} = "javac" ]]; then debug-print "Found javac... breaking"; export GENTOO_COMPILER="javac"; break; fi; if has ${compiler} ${JAVA_PKG_FILTER_COMPILER}; then if [[ -z ${JAVA_PKG_FORCE_COMPILER} ]]; then einfo "Filtering ${compiler}"; continue; fi; fi; local compiler_env="${JAVA_PKG_COMPILER_DIR}/${compiler}"; if [[ -f ${compiler_env} ]]; then local desired_target="$(java-pkg_get-target)"; local desired_source="$(java-pkg_get-source)"; local supported_target=$(source ${compiler_env} 1>/dev/null 2>&1; echo ${SUPPORTED_TARGET}); if ! has ${desired_target} ${supported_target}; then ewarn "${compiler} does not support -target ${desired_target}, skipping"; continue; fi; if version_is_at_least "${desired_soure}" "1.3"; then local supported_source=$(source ${compiler_env} 1>/dev/null 2>&1; echo ${SUPPORTED_SOURCE}); if ! has ${desired_source} ${supported_source}; then ewarn "${compiler} does not support -source ${desired_source}, skipping"; continue; fi; fi; export GENTOO_COMPILER="${compiler}"; break; else ewarn "Could not find configuration for ${compiler}, skipping"; ewarn "Perhaps it is not installed?"; continue; fi; done; if [[ -z ${GENTOO_COMPILER} ]]; then if [[ -n ${compilers} ]]; then einfo "No suitable compiler found: defaulting to JDK default for compilation"; else :; fi; if java-config -g GENTOO_COMPILER 2> /dev/null; then export GENTOO_COMPILER=$(java-config -g GENTOO_COMPILER); else export GENTOO_COMPILER=javac; fi; else einfo "Using ${GENTOO_COMPILER} for compilation"; fi } java-pkg_init_paths_ () { debug-print-function ${FUNCNAME} $*; local pkg_name; if [[ "$SLOT" == "0" ]]; then JAVA_PKG_NAME="${PN}"; else JAVA_PKG_NAME="${PN}-${SLOT}"; fi; JAVA_PKG_SHAREPATH="${DESTTREE}/share/${JAVA_PKG_NAME}"; JAVA_PKG_SOURCESPATH="${JAVA_PKG_SHAREPATH}/sources/"; JAVA_PKG_ENV="${D}${JAVA_PKG_SHAREPATH}/package.env"; JAVA_PKG_VIRTUALS_PATH="${DESTTREE}/share/java-config-2/virtuals"; JAVA_PKG_VIRTUAL_PROVIDER="${D}/${JAVA_PKG_VIRTUALS_PATH}/${JAVA_PKG_NAME}"; [[ -z "${JAVA_PKG_JARDEST}" ]] && JAVA_PKG_JARDEST="${JAVA_PKG_SHAREPATH}/lib"; [[ -z "${JAVA_PKG_LIBDEST}" ]] && JAVA_PKG_LIBDEST="${DESTTREE}/$(get_libdir)/${JAVA_PKG_NAME}"; [[ -z "${JAVA_PKG_WARDEST}" ]] && JAVA_PKG_WARDEST="${JAVA_PKG_SHAREPATH}/webapps"; debug-print "JAVA_PKG_SHAREPATH: ${JAVA_PKG_SHAREPATH}"; debug-print "JAVA_PKG_ENV: ${JAVA_PKG_ENV}"; debug-print "JAVA_PKG_JARDEST: ${JAVA_PKG_JARDEST}"; debug-print "JAVA_PKG_LIBDEST: ${JAVA_PKG_LIBDEST}"; debug-print "JAVA_PKG_WARDEST: ${JAVA_PKG_WARDEST}" } java-pkg_is-vm-version-eq () { debug-print-function ${FUNCNAME} $*; local needed_version="$@"; [[ -z "${needed_version}" ]] && die "need an argument"; local vm_version="$(java-pkg_get-vm-version)"; vm_version="$(get_version_component_range 1-2 "${vm_version}")"; needed_version="$(get_version_component_range 1-2 "${needed_version}")"; if [[ -z "${vm_version}" ]]; then debug-print "Could not get JDK version from DEPEND"; return 1; else if [[ "${vm_version}" == "${needed_version}" ]]; then debug-print "Detected a JDK(${vm_version}) = ${needed_version}"; return 0; else debug-print "Detected a JDK(${vm_version}) != ${needed_version}"; return 1; fi; fi } java-pkg_is-vm-version-ge () { debug-print-function ${FUNCNAME} $*; local needed_version=$@; local vm_version=$(java-pkg_get-vm-version); if [[ -z "${vm_version}" ]]; then debug-print "Could not get JDK version from DEPEND"; return 1; else if version_is_at_least "${needed_version}" "${vm_version}"; then debug-print "Detected a JDK(${vm_version}) >= ${needed_version}"; return 0; else debug-print "Detected a JDK(${vm_version}) < ${needed_version}"; return 1; fi; fi } java-pkg_is-vm-version-sufficient () { debug-print-function ${FUNCNAME} $*; depend-java-query --is-sufficient "${DEPEND}" > /dev/null; return $? } java-pkg_jar-from () { debug-print-function ${FUNCNAME} $*; local build_only=""; local destdir="."; local deep=""; local virtual=""; [[ "${EBUILD_PHASE}" == "test" ]] && build_only="build"; while [[ "${1}" == --* ]]; do if [[ "${1}" = "--build-only" ]]; then build_only="build"; else if [[ "${1}" = "--with-dependencies" ]]; then deep="--with-dependencies"; else if [[ "${1}" = "--virtual" ]]; then virtual="true"; else if [[ "${1}" = "--into" ]]; then destdir="${2}"; shift; else die "java-pkg_jar-from called with unknown parameter: ${1}"; fi; fi; fi; fi; shift; done; local target_pkg="${1}" target_jar="${2}" destjar="${3}"; [[ -z ${target_pkg} ]] && die "Must specify a package"; if [[ "${EAPI}" == "1" ]]; then target_pkg="${target_pkg//:/-}"; fi; [[ -z "${destjar}" ]] && destjar="${target_jar}"; local error_msg="There was a problem getting the classpath for ${target_pkg}."; local classpath; classpath="$(java-config ${deep} --classpath=${target_pkg})"; [[ $? != 0 ]] && die ${error_msg}; if [[ ${target_pkg} = *,* ]]; then for pkg in ${target_pkg//,/ }; do java-pkg_ensure-dep "${build_only}" "${pkg}"; [[ -z "${build_only}" ]] && java-pkg_record-jar_ "${pkg}"; done; build_only="build"; else java-pkg_ensure-dep "${build_only}" "${target_pkg}"; fi; if [[ -z "${build_only}" && -n "${virtual}" ]]; then java-pkg_record-jar_ "${target_pkg}"; build_only="build"; fi; pushd ${destdir} > /dev/null || die "failed to change directory to ${destdir}"; local jar; for jar in ${classpath//:/ }; do local jar_name=$(basename "${jar}"); if [[ ! -f "${jar}" ]]; then debug-print "${jar} from ${target_pkg} does not exist"; die "Installation problems with jars in ${target_pkg} - is it installed?"; fi; if [[ -z "${target_jar}" ]]; then [[ -f "${target_jar}" ]] && rm "${target_jar}"; ln -snf "${jar}" || die "Failed to make symlink from ${jar} to ${jar_name}"; [[ -z "${build_only}" ]] && java-pkg_record-jar_ "${target_pkg}" "${jar}"; else if [[ "${jar_name}" == "${target_jar}" ]]; then [[ -f "${destjar}" ]] && rm "${destjar}"; ln -snf "${jar}" "${destjar}" || die "Failed to make symlink from ${jar} to ${destjar}"; [[ -z "${build_only}" ]] && java-pkg_record-jar_ "${target_pkg}" "${jar}"; popd > /dev/null; return 0; fi; fi; done; popd > /dev/null; if [[ -z "${target_jar}" ]]; then return 0; else die "Failed to find ${target_jar:-jar} in ${target_pkg}"; fi } java-pkg_jar-list () { if [[ -n "${JAVA_PKG_DEBUG}" ]]; then einfo "Linked Jars"; find "${S}" -type l -name '*.jar' -print0 | xargs -0 -r -n 500 ls -ald | sed -e "s,${WORKDIR},\${WORKDIR},"; einfo "Jars"; find "${S}" -type f -name '*.jar' -print0 | xargs -0 -r -n 500 ls -ald | sed -e "s,${WORKDIR},\${WORKDIR},"; einfo "Classes"; find "${S}" -type f -name '*.class' -print0 | xargs -0 -r -n 500 ls -ald | sed -e "s,${WORKDIR},\${WORKDIR},"; fi } java-pkg_jarfrom () { java-pkg_jar-from "$@" } java-pkg_jarinto () { debug-print-function ${FUNCNAME} $*; JAVA_PKG_JARDEST="${1}" } java-pkg_javac-args () { debug-print-function ${FUNCNAME} $*; local want_source="$(java-pkg_get-source)"; local want_target="$(java-pkg_get-target)"; local source_str="-source ${want_source}"; local target_str="-target ${want_target}"; debug-print "want source: ${want_source}"; debug-print "want target: ${want_target}"; if [[ -z "${want_source}" || -z "${want_target}" ]]; then debug-print "could not find valid -source/-target values for javac"; echo "Could not find valid -source/-target values for javac"; return 1; else if java-pkg_is-vm-version-ge "1.4"; then echo "${source_str} ${target_str}"; else echo "${target_str}"; fi; fi } java-pkg_needs-vm () { debug-print-function ${FUNCNAME} $*; if [[ -n "$(echo ${DEPEND} | sed -e '\:virtual/jdk:!d')" ]]; then return 0; fi; return 1 } java-pkg_newjar () { debug-print-function ${FUNCNAME} $*; local original_jar="${1}"; local new_jar="${2:-${PN}.jar}"; local new_jar_dest="${T}/${new_jar}"; [[ -z ${original_jar} ]] && die "Must specify a jar to install"; [[ ! -f ${original_jar} ]] && die "${original_jar} does not exist or is not a file!"; rm -f "${new_jar_dest}" || die "Failed to remove ${new_jar_dest}"; cp "${original_jar}" "${new_jar_dest}" || die "Failed to copy ${original_jar} to ${new_jar_dest}"; java-pkg_dojar "${new_jar_dest}" } java-pkg_record-jar_ () { debug-print-function ${FUNCNAME} $*; local depend_file="${JAVA_PKG_DEPEND_FILE}"; if [[ "${1}" == "--optional" ]]; then depend_file="${JAVA_PKG_OPTIONAL_DEPEND_FILE}"; shift; fi; local pkg=${1} jar=${2} append; if [[ -z "${jar}" ]]; then append="${pkg}"; else append="$(basename ${jar})@${pkg}"; fi; echo "${append}" >> "${depend_file}" } java-pkg_recordjavadoc () { debug-print-function ${FUNCNAME} $*; JAVADOC_PATH="$(find ${D}/usr/share/doc/ -name allclasses-frame.html -printf '%h:')"; JAVADOC_PATH="${JAVADOC_PATH//${D}}"; if [[ -n "${JAVADOC_PATH}" ]]; then debug-print "javadocs found in ${JAVADOC_PATH%:}"; java-pkg_do_write_; else debug-print "No javadocs found"; fi } java-pkg_register-ant-task () { local TASKS_DIR="tasks"; while [[ -n "${1}" && -n "${2}" ]]; do local var="${1#--}"; local val="${2}"; if [[ "${var}" == "version" ]]; then TASKS_DIR="tasks-${val}"; else die "Unknown parameter passed to java-pkg_register-ant-tasks: ${1} ${2}"; fi; shift 2; done; local TASK_NAME="${1:-${JAVA_PKG_NAME}}"; dodir /usr/share/ant/${TASKS_DIR}; touch "${D}/usr/share/ant/${TASKS_DIR}/${TASK_NAME}" } java-pkg_register-dependency () { debug-print-function ${FUNCNAME} $*; java-pkg_check-phase install; [[ ${#} -gt 2 ]] && die "${FUNCNAME} takes at most two arguments"; local pkgs="${1}"; local jar="${2}"; [[ -z "${pkgs}" ]] && die "${FUNCNAME} called with no package(s) specified"; if [[ "${EAPI}" == "1" ]]; then pkgs="${pkgs//:/-}"; fi; if [[ -z "${jar}" ]]; then for pkg in ${pkgs//,/ }; do java-pkg_ensure-dep runtime "${pkg}"; java-pkg_record-jar_ "${pkg}"; done; else [[ ${pkgs} == *,* ]] && die "${FUNCNAME} called with both package list and jar name"; java-pkg_ensure-dep runtime "${pkgs}"; java-pkg_record-jar_ "${pkgs}" "${jar}"; fi; java-pkg_do_write_ } java-pkg_register-environment-variable () { debug-print-function ${FUNCNAME} $*; java-pkg_check-phase install; [[ ${#} != 2 ]] && die "${FUNCNAME} takes two arguments"; echo "${1}=\"${2}\"" >> ${JAVA_PKG_EXTRA_ENV}; JAVA_PKG_EXTRA_ENV_VARS="${JAVA_PKG_EXTRA_ENV_VARS} ${1}"; java-pkg_do_write_ } java-pkg_register-optional-dependency () { debug-print-function ${FUNCNAME} $*; java-pkg_check-phase install; [[ ${#} -gt 2 ]] && die "${FUNCNAME} takes at most two arguments"; local pkgs="${1}"; local jar="${2}"; [[ -z "${pkgs}" ]] && die "${FUNCNAME} called with no package(s) specified"; if [[ "${EAPI}" == "1" ]]; then pkgs="${pkgs//:/-}"; fi; if [[ -z "${jar}" ]]; then for pkg in ${pkgs//,/ }; do java-pkg_record-jar_ --optional "${pkg}"; done; else [[ ${pkgs} == *,* ]] && die "${FUNCNAME} called with both package list and jar name"; java-pkg_record-jar_ --optional "${pkgs}" "${jar}"; fi; java-pkg_do_write_ } java-pkg_regjar () { debug-print-function ${FUNCNAME} $*; java-pkg_check-phase install; [[ ${#} -lt 1 ]] && die "at least one argument needed"; java-pkg_init_paths_; local jar jar_dir jar_file; for jar in "${@}"; do if [[ -e "${jar}" || -e "${D}${jar}" ]]; then [[ -d "${jar}" || -d "${D}${jar}" ]] && die "Called ${FUNCNAME} on a directory $*"; is-java-strict && java-pkg_verify-classes "${jar}"; java-pkg_append_ JAVA_PKG_CLASSPATH "${jar#${D}}"; else if [[ ${jar} = *\** ]]; then eerror "The argument ${jar} to ${FUNCNAME}"; eerror "has * in it. If you want it to glob in"; eerror '${D} add ${D} to the argument.'; fi; die "${jar} does not exist"; fi; done; java-pkg_do_write_ } java-pkg_regso () { debug-print-function ${FUNCNAME} $*; java-pkg_check-phase install; [[ ${#} -lt 1 ]] && "at least one argument needed"; java-pkg_init_paths_; local lib target_dir; for lib in "$@"; do if [[ -e "${lib}" ]]; then target_dir="$(java-pkg_expand_dir_ ${lib})"; java-pkg_append_ JAVA_PKG_LIBRARY "/${target_dir#${D}}"; else if [[ -e "${D}${lib}" ]]; then target_dir="$(java-pkg_expand_dir_ ${D}${lib})"; java-pkg_append_ JAVA_PKG_LIBRARY "${target_dir}"; else die "${lib} does not exist"; fi; fi; done; java-pkg_do_write_ } java-pkg_set-current-vm () { export GENTOO_VM=${1} } java-pkg_setup-vm () { debug-print-function ${FUNCNAME} $*; export LANG="C" LC_ALL="C"; local vendor="$(java-pkg_get-vm-vendor)"; if [[ "${vendor}" == "sun" ]] && java-pkg_is-vm-version-ge "1.5"; then addpredict "/dev/random"; else if [[ "${vendor}" == "ibm" ]]; then addpredict "/proc/self/maps"; addpredict "/proc/cpuinfo"; else if [[ "${vendor}" == "jrockit" ]]; then addpredict "/proc/cpuinfo"; fi; fi; fi } java-pkg_sointo () { debug-print-function ${FUNCNAME} $*; JAVA_PKG_LIBDEST="${1}" } java-pkg_switch-vm () { debug-print-function ${FUNCNAME} $*; if java-pkg_needs-vm; then if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then debug-print "JAVA_PKG_FORCE_VM used: ${JAVA_PKG_FORCE_VM}"; export GENTOO_VM="${JAVA_PKG_FORCE_VM}"; else if [[ "${JAVA_PKG_ALLOW_VM_CHANGE}" == "yes" ]]; then debug-print "depend-java-query: NV_DEPEND: ${JAVA_PKG_NV_DEPEND:-${DEPEND}} VNEED: ${JAVA_PKG_VNEED}"; if [[ -n ${JAVA_PKG_VNEED} ]]; then GENTOO_VM="$(depend-java-query --need-virtual "${JAVA_PKG_VNEED}" --get-vm "${JAVA_PKG_NV_DEPEND:-${DEPEND}}")"; else GENTOO_VM="$(depend-java-query --get-vm "${JAVA_PKG_NV_DEPEND:-${DEPEND}}")"; fi; if [[ -z "${GENTOO_VM}" || "${GENTOO_VM}" == "None" ]]; then eerror "Unable to determine VM for building from dependencies:"; echo "NV_DEPEND: ${JAVA_PKG_NV_DEPEND:-${DEPEND}}"; echo "VNEED: ${JAVA_PKG_VNEED}"; die "Failed to determine VM for building."; else export GENTOO_VM; fi; else java-pkg_ensure-vm-version-sufficient; fi; fi; debug-print "Using: $(java-config -f)"; java-pkg_setup-vm; export JAVA=$(java-config --java); export JAVAC=$(java-config --javac); JAVACFLAGS="$(java-pkg_javac-args)"; if [[ ${?} != 0 ]]; then eerror "There was a problem determining JAVACFLAGS: ${JAVACFLAGS}"; die "java-pkg_javac-args failed"; fi; [[ -n ${JAVACFLAGS_EXTRA} ]] && JAVACFLAGS="${JAVACFLAGS_EXTRA} ${JAVACFLAGS}"; export JAVACFLAGS; export JAVA_HOME="$(java-config -g JAVA_HOME)"; export JDK_HOME=${JAVA_HOME}; java-pkg_append_ LD_LIBRARY_PATH "$(java-config -g LDPATH)"; local tann="${T}/announced-vm"; if [[ -n "${JAVA_PKG_DEBUG}" ]] || [[ ! -f "${tann}" ]]; then einfo "Using: $(java-config -f)"; [[ ! -f "${tann}" ]] && touch "${tann}"; fi; else [[ -n "${JAVA_PKG_DEBUG}" ]] && ewarn "!!! This package inherits java-pkg but doesn't depend on a JDK. -bin or broken dependency!!!"; fi } java-pkg_verify-classes () { local target=$(java-pkg_get-target); local result; local log="${T}/class-version-verify.log"; if [[ -n "${1}" ]]; then class-version-verify.py -v -t ${target} "${1}" > "${log}"; result=$?; else ebegin "Verifying java class versions (target: ${target})"; class-version-verify.py -v -t ${target} -r "${D}" > "${log}"; result=$?; eend ${result}; fi; [[ -n ${JAVA_PKG_DEBUG} ]] && cat "${log}"; if [[ ${result} != 0 ]]; then eerror "Incorrect bytecode version found"; [[ -n "${1}" ]] && eerror "in file: ${1}"; eerror "See ${log} for more details."; die "Incorrect bytecode found"; fi } make_desktop_entry () { [[ -z $1 ]] && eerror "make_desktop_entry: You must specify the executable" && return 1; local exec=${1}; local name=${2:-${PN}}; local icon=${3:-${PN}}; local type=${4}; local path=${5}; if [[ -z ${type} ]]; then local catmaj=${CATEGORY%%-*}; local catmin=${CATEGORY##*-}; case ${catmaj} in app) case ${catmin} in accessibility) type=Accessibility ;; admin) type=System ;; antivirus) type=System ;; arch) type=Archiving ;; backup) type=Archiving ;; cdr) type=DiscBurning ;; dicts) type=Dictionary ;; doc) type=Documentation ;; editors) type=TextEditor ;; emacs) type=TextEditor ;; emulation) type=Emulator ;; laptop) type=HardwareSettings ;; office) type=Office ;; pda) type=PDA ;; vim) type=TextEditor ;; xemacs) type=TextEditor ;; *) type= ;; esac ;; dev) type="Development" ;; games) case ${catmin} in action | fps) type=ActionGame ;; arcade) type=ArcadeGame ;; board) type=BoardGame ;; emulation) type=Emulator ;; kids) type=KidsGame ;; puzzle) type=LogicGame ;; roguelike) type=RolePlaying ;; rpg) type=RolePlaying ;; simulation) type=Simulation ;; sports) type=SportsGame ;; strategy) type=StrategyGame ;; *) type= ;; esac; type="Game;${type}" ;; gnome) type="Gnome;GTK" ;; kde) type="KDE;Qt" ;; mail) type="Network;Email" ;; media) case ${catmin} in gfx) type=Graphics ;; radio) type=Tuner ;; sound) type=Audio ;; tv) type=TV ;; video) type=Video ;; *) type= ;; esac; type="AudioVideo;${type}" ;; net) case ${catmin} in dialup) type=Dialup ;; ftp) type=FileTransfer ;; im) type=InstantMessaging ;; irc) type=IRCClient ;; mail) type=Email ;; news) type=News ;; nntp) type=News ;; p2p) type=FileTransfer ;; *) type= ;; esac; type="Network;${type}" ;; sci) case ${catmin} in astro*) type=Astronomy ;; bio*) type=Biology ;; calc*) type=Calculator ;; chem*) type=Chemistry ;; elec*) type=Electronics ;; geo*) type=Geology ;; math*) type=Math ;; physics) type=Physics ;; visual*) type=DataVisualization ;; *) type= ;; esac; type="Science;${type}" ;; sys) type="System" ;; www) case ${catmin} in client) type=WebBrowser ;; *) type= ;; esac; type="Network" ;; *) type= ;; esac; fi; if [ "${SLOT}" == "0" ]; then local desktop_name="${PN}"; else local desktop_name="${PN}-${SLOT}"; fi; local desktop="${T}/$(echo ${exec} | sed 's:[[:space:]/:]:_:g')-${desktop_name}.desktop"; cat > "${desktop}" <<-EOF [Desktop Entry] Version=1.0 Name=${name} Type=Application Comment=${DESCRIPTION} Exec=${exec} TryExec=${exec%% *} Icon=${icon} Categories=${type}; EOF [[ -n ${path} ]] && echo "Path=${path}" >> "${desktop}"; ( insinto /usr/share/applications; doins "${desktop}" ) } make_session_desktop () { [[ -z $1 ]] && eerror "make_session_desktop: You must specify the title" && return 1; [[ -z $2 ]] && eerror "make_session_desktop: You must specify the command" && return 1; local title=$1; local command=$2; local desktop=${T}/${wm}.desktop; cat > "${desktop}" <<-EOF [Desktop Entry] Name=${title} Comment=This session logs you into ${title} Exec=${command} TryExec=${command} Type=Application EOF ( insinto /usr/share/xsessions; doins "${desktop}" ) } make_wrapper () { local wrapper=$1 bin=$2 chdir=$3 libdir=$4 path=$5; local tmpwrapper=$(emktemp); cat > "${tmpwrapper}" < [more libraries to preserve]"; has preserve-libs ${FEATURES} && return 0; local lib dir; for lib in "$@"; do [[ -e ${ROOT}/${lib} ]] || continue; dir=${lib%/*}; dodir ${dir} || die "dodir ${dir} failed"; cp "${ROOT}"/${lib} "${D}"/${lib} || die "cp ${lib} failed"; touch "${D}"/${lib}; done } preserve_old_lib_notify () { if [[ ${EBUILD_PHASE} != "postinst" ]]; then eerror "preserve_old_lib_notify() must be called from pkg_postinst() only"; die "Invalid preserve_old_lib_notify() usage"; fi; has preserve-libs ${FEATURES} && return 0; local lib notice=0; for lib in "$@"; do [[ -e ${ROOT}/${lib} ]] || continue; if [[ ${notice} -eq 0 ]]; then notice=1; ewarn "Old versions of installed libraries were detected on your system."; ewarn "In order to avoid breaking packages that depend on these old libs,"; ewarn "the libraries are not being removed. You need to run revdep-rebuild"; ewarn "in order to remove these old dependencies. If you do not have this"; ewarn "helper program, simply emerge the 'gentoolkit' package."; ewarn; fi; ewarn " # revdep-rebuild --library ${lib##*/}"; done; if [[ ${notice} -eq 1 ]]; then ewarn; ewarn "Once you've finished running revdep-rebuild, it should be safe to"; ewarn "delete the old libraries. Here is a copy & paste for the lazy:"; for lib in "$@"; do ewarn " # rm '${lib}'"; done; fi } remove_flag () { local remove="${1}"; shift; while [[ -n "${1}" ]]; do [[ "${1}" != "${remove}" ]] && echo -n "${1} "; shift; done } replace_all_version_separators () { __versionator_shopt_toggle on; local c; c=($(get_all_version_components "${2:-${PV}}" )); c="${c[@]//[-._]/$1}"; echo ${c// }; __versionator_shopt_toggle off } replace_version_separator () { __versionator_shopt_toggle on; local w i c found=0 v="${3:-${PV}}"; w=${1:-1}; c=($(get_all_version_components ${v} )); if [[ "${w//[[:digit:]]/}" == "${w}" ]]; then for ((i = 0 ; i < ${#c[@]} ; i = $i + 1 )) do if [[ "${c[${i}]}" == "${w}" ]]; then c[${i}]="${2}"; break; fi; done; else for ((i = 0 ; i < ${#c[@]} ; i = $i + 1 )) do if [[ -n "${c[${i}]//[^-._]}" ]]; then found=$(($found + 1)); if [[ "$found" == "${w}" ]]; then c[${i}]="${2}"; break; fi; fi; done; fi; c=${c[@]}; echo ${c// }; __versionator_shopt_toggle off } seq () { local p=$(type -P seq); case $# in 1) min=1 max=$1 step=1 ;; 2) min=$1 max=$2 step=1 ;; 3) min=$1 max=$3 step=$2 ;; *) die "seq called with wrong number of arguments" ;; esac; if [[ -z ${p} ]]; then local reps; if [[ ${step} != 0 ]]; then reps=$(( ($max-$min) / $step +1 )); else reps=0; fi; jot $reps $min $max $step; else "${p}" $min $step $max; fi } src_compile () { gnome2_src_configure; emake JAVAC="${JAVAC} ${JAVACFLAGS}" || die "compile failure" } src_install () { gnome2_src_install; java-pkg_dojar ${D}/usr/share/jar/*.jar; insinto /usr/share/${PN}; doins ${D}/usr/share/jar/*.properties; rm -rf ${D}/usr/share/jar } src_test () { if emake -j1 check -n >&/dev/null; then vecho ">>> Test phase [check]: ${CATEGORY}/${PF}"; if ! emake -j1 check; then hasq test $FEATURES && die "Make check failed. See above for details."; hasq test $FEATURES || eerror "Make check failed. See above for details."; fi; else if emake -j1 test -n >&/dev/null; then vecho ">>> Test phase [test]: ${CATEGORY}/${PF}"; if ! emake -j1 test; then hasq test $FEATURES && die "Make test failed. See above for details."; hasq test $FEATURES || eerror "Make test failed. See above for details."; fi; else vecho ">>> Test phase [none]: ${CATEGORY}/${PF}"; fi; fi } src_unpack () { gnome2_src_unpack $@ } strip-linguas () { local ls newls nols; if [[ $1 == "-i" ]] || [[ $1 == "-u" ]]; then local op=$1; shift; ls=$(find "$1" -name '*.po' -exec basename {} .po \;); shift; local d f; for d in "$@"; do if [[ ${op} == "-u" ]]; then newls=${ls}; else newls=""; fi; for f in $(find "$d" -name '*.po' -exec basename {} .po \;); do if [[ ${op} == "-i" ]]; then hasq ${f} ${ls} && newls="${newls} ${f}"; else hasq ${f} ${ls} || newls="${newls} ${f}"; fi; done; ls=${newls}; done; else ls="$@"; fi; nols=""; newls=""; for f in ${LINGUAS}; do if hasq ${f} ${ls}; then newls="${newls} ${f}"; else nols="${nols} ${f}"; fi; done; [[ -n ${nols} ]] && ewarn "Sorry, but ${PN} does not support the LINGUAs:" ${nols}; export LINGUAS=${newls:1} } tc-arch () { tc-ninja_magic_to_arch portage "$@" } tc-arch-kernel () { tc-ninja_magic_to_arch kern "$@" } tc-endian () { local host=$1; [[ -z ${host} ]] && host=${CTARGET:-${CHOST}}; host=${host%%-*}; case ${host} in alpha*) echo big ;; arm*b*) echo big ;; arm*) echo little ;; cris*) echo little ;; hppa*) echo big ;; i?86*) echo little ;; ia64*) echo little ;; m68*) echo big ;; mips*l*) echo little ;; mips*) echo big ;; powerpc*) echo big ;; s390*) echo big ;; sh*b*) echo big ;; sh*) echo little ;; sparc*) echo big ;; x86_64*) echo little ;; *) echo wtf ;; esac } tc-export () { local var; for var in "$@"; do eval tc-get${var} > /dev/null; done } tc-getAR () { tc-getPROG AR ar "$@" } tc-getAS () { tc-getPROG AS as "$@" } tc-getBUILD_CC () { local v; for v in CC_FOR_BUILD BUILD_CC HOSTCC; do if [[ -n ${!v} ]]; then export BUILD_CC=${!v}; echo "${!v}"; return 0; fi; done; local search=; if [[ -n ${CBUILD} ]]; then search=$(type -p ${CBUILD}-gcc); search=${search##*/}; fi; search=${search:-gcc}; export BUILD_CC=${search}; echo "${search}" } tc-getCC () { tc-getPROG CC gcc "$@" } tc-getCPP () { tc-getPROG CPP cpp "$@" } tc-getCXX () { tc-getPROG CXX g++ "$@" } tc-getF77 () { tc-getPROG F77 f77 "$@" } tc-getF90 () { tc-getPROG F90 gfortran "$@" } tc-getFORTRAN () { tc-getPROG FORTRAN gfortran "$@" } tc-getGCJ () { tc-getPROG GCJ gcj "$@" } tc-getLD () { tc-getPROG LD ld "$@" } tc-getNM () { tc-getPROG NM nm "$@" } tc-getPROG () { local var=$1; local prog=$2; if [[ -n ${!var} ]]; then echo "${!var}"; return 0; fi; local search=; [[ -n $3 ]] && search=$(type -p "$3-${prog}"); [[ -z ${search} && -n ${CHOST} ]] && search=$(type -p "${CHOST}-${prog}"); [[ -n ${search} ]] && prog=${search##*/}; export ${var}=${prog}; echo "${!var}" } tc-getRANLIB () { tc-getPROG RANLIB ranlib "$@" } tc-getSTRIP () { tc-getPROG STRIP strip "$@" } tc-is-cross-compiler () { return $([[ ${CBUILD:-${CHOST}} != ${CHOST} ]]) } tc-is-softfloat () { case ${CTARGET} in bfin* | h8300*) echo "only" ;; *) [[ ${CTARGET//_/-} == *-softfloat-* ]] && echo "yes" || echo "no" ;; esac } 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 alpha*) echo alpha ;; arm*) echo arm ;; avr*) ninj avr32 avr ;; bfin*) ninj blackfin bfin ;; cris*) echo cris ;; hppa*) ninj parisc hppa ;; i?86*) if [[ ${type} == "kern" ]] && [[ $(KV_to_int ${KV}) -lt $(KV_to_int 2.6.24) ]]; then echo i386; else echo x86; fi ;; ia64*) echo ia64 ;; m68*) echo m68k ;; mips*) echo mips ;; nios2*) echo nios2 ;; nios*) echo nios ;; powerpc*) if [[ $(KV_to_int ${KV}) -ge $(KV_to_int 2.6.16) ]] && [[ ${type} == "kern" ]]; then echo powerpc; else if [[ $(KV_to_int ${KV}) -eq $(KV_to_int 2.6.15) ]] && [[ ${type} == "kern" ]]; then if [[ ${host} == powerpc64* ]] || [[ ${PROFILE_ARCH} == "ppc64" ]]; then echo powerpc; else echo ppc; fi; else if [[ ${host} == powerpc64* ]]; then echo ppc64; else if [[ ${PROFILE_ARCH} == "ppc64" ]]; then ninj ppc64 ppc; else echo ppc; fi; fi; fi; fi ;; s390*) echo s390 ;; sh64*) ninj sh64 sh ;; sh*) echo sh ;; sparc64*) ninj sparc64 sparc ;; sparc*) [[ ${PROFILE_ARCH} == "sparc64" ]] && ninj sparc64 sparc || echo sparc ;; vax*) echo vax ;; x86_64*) if [[ ${type} == "kern" ]] && [[ $(KV_to_int ${KV}) -ge $(KV_to_int 2.6.24) ]]; then echo x86; else ninj x86_64 amd64; fi ;; *) echo unknown ;; esac } treecopy () { dest=${!#}; files_count=$#; while (( $# > 1 )); do dirstruct=$(dirname "$1"); mkdir -p "${dest}/${dirstruct}"; cp -pPR "$1" "${dest}/${dirstruct}"; shift; done } uclibctoolize () { ewarn "uclibctoolize() is deprecated, please just use elibtoolize()!"; elibtoolize } unpack_makeself () { local src_input=${1:-${A}}; local src=$(find_unpackable_file "${src_input}"); local skip=$2; local exe=$3; [[ -z ${src} ]] && die "Could not locate source for '${src_input}'"; local shrtsrc=$(basename "${src}"); echo ">>> Unpacking ${shrtsrc} to ${PWD}"; if [[ -z ${skip} ]]; then local ver=$(grep -a '#.*Makeself' "${src}" | awk '{print $NF}'); local skip=0; exe=tail; case ${ver} in 1.5.* | 1.6.0-nv) skip=$(grep -a ^skip= "${src}" | cut -d= -f2) ;; 2.0 | 2.0.1) skip=$(grep -a ^' 'tail "${src}" | awk '{print $2}' | cut -b2-) ;; 2.1.1) skip=$(grep -a ^offset= "${src}" | awk '{print $2}' | cut -b2-); let skip="skip + 1" ;; 2.1.2) skip=$(grep -a ^offset= "${src}" | awk '{print $3}' | head -n 1); let skip="skip + 1" ;; 2.1.3) skip=`grep -a ^offset= "${src}" | awk '{print $3}'`; let skip="skip + 1" ;; 2.1.4 | 2.1.5) skip=$(grep -a offset=.*head.*wc "${src}" | awk '{print $3}' | head -n 1); skip=$(head -n ${skip} "${src}" | wc -c); exe="dd" ;; *) eerror "I'm sorry, but I was unable to support the Makeself file."; eerror "The version I detected was '${ver}'."; eerror "Please file a bug about the file ${shrtsrc} at"; eerror "http://bugs.gentoo.org/ so that support can be added."; die "makeself version '${ver}' not supported" ;; esac; debug-print "Detected Makeself version ${ver} ... using ${skip} as offset"; fi; case ${exe} in tail) exe="tail -n +${skip} '${src}'" ;; dd) exe="dd ibs=${skip} skip=1 obs=1024 conv=sync if='${src}'" ;; *) die "makeself cant handle exe '${exe}'" ;; esac; local tmpfile=$(emktemp); eval ${exe} 2> /dev/null | head -c 512 > "${tmpfile}"; local filetype=$(file -b "${tmpfile}"); case ${filetype} in *tar\ archive*) eval ${exe} | tar --no-same-owner -xf - ;; bzip2*) eval ${exe} | bzip2 -dc | tar --no-same-owner -xf - ;; gzip*) eval ${exe} | tar --no-same-owner -xzf - ;; compress*) eval ${exe} | gunzip | tar --no-same-owner -xf - ;; *) eerror "Unknown filetype \"${filetype}\" ?"; false ;; esac; _pipestatus="${PIPESTATUS[*]}"; [[ "${_pipestatus// /}" -eq 0 ]] || die "failure unpacking (${filetype}) makeself ${shrtsrc} ('${ver}' +${skip})" } unpack_pdv () { local src=$(find_unpackable_file "$1"); local sizeoff_t=$2; [[ -z ${src} ]] && die "Could not locate source for '$1'"; [[ -z ${sizeoff_t} ]] && die "No idea what off_t size was used for this pdv :("; local shrtsrc=$(basename "${src}"); echo ">>> Unpacking ${shrtsrc} to ${PWD}"; local metaskip=$(tail -c ${sizeoff_t} "${src}" | hexdump -e \"%i\"); local tailskip=$(tail -c $((${sizeoff_t}*2)) "${src}" | head -c ${sizeoff_t} | hexdump -e \"%i\"); local metafile=$(emktemp); tail -c +$((${metaskip}+1)) "${src}" > "${metafile}"; local datafile=$(tail -c +$((${metaskip}+1)) "${src}" | strings | head -n 1); datafile=$(basename "${datafile}"); local tmpfile=$(emktemp); tail -c +$((${tailskip}+1)) ${src} 2> /dev/null | head -c 512 > ${tmpfile}; local iscompressed=$(file -b "${tmpfile}"); if [[ ${iscompressed:0:8} == "compress" ]]; then iscompressed=1; mv ${tmpfile}{,.Z}; gunzip ${tmpfile}; else iscompressed=0; fi; local istar=$(file -b "${tmpfile}"); if [[ ${istar:0:9} == "POSIX tar" ]]; then istar=1; else istar=0; fi; if [ ${iscompressed} -eq 1 ]; then if [ ${istar} -eq 1 ]; then tail -c +$((${tailskip}+1)) ${src} 2> /dev/null | head -c $((${metaskip}-${tailskip})) | tar -xzf -; else tail -c +$((${tailskip}+1)) ${src} 2> /dev/null | head -c $((${metaskip}-${tailskip})) | gzip -dc > ${datafile}; fi; else if [ ${istar} -eq 1 ]; then tail -c +$((${tailskip}+1)) ${src} 2> /dev/null | head -c $((${metaskip}-${tailskip})) | tar --no-same-owner -xf -; else tail -c +$((${tailskip}+1)) ${src} 2> /dev/null | head -c $((${metaskip}-${tailskip})) > ${datafile}; fi; fi; true } use_doc () { use doc && echo ${@:-javadoc} } validate_desktop_entries () { if [[ -x /usr/bin/desktop-file-validate ]]; then einfo "Checking desktop entry validity"; local directories=""; for d in /usr/share/applications $@; do [[ -d ${D}${d} ]] && directories="${directories} ${D}${d}"; done; if [[ -n ${directories} ]]; then for FILE in $(find ${directories} -name "*\.desktop" -not -path '*.hidden*' | sort -u 2>/dev/null); do local temp=$(desktop-file-validate ${FILE} | grep -v "warning:" | sed -e "s|error: ||" -e "s|${FILE}:|--|g" ); [[ -n $temp ]] && elog ${temp/--/${FILE/${D}/}:}; done; fi; echo ""; else einfo "Passing desktop entry validity check. Install dev-util/desktop-file-utils, if you want to help to improve Gentoo."; fi } version_compare () { __versionator_shopt_toggle on; local ver_a=${1} ver_b=${2} parts_a parts_b cur_idx_a=0 cur_idx_b=0; parts_a=($(get_all_version_components "${ver_a}" )); parts_b=($(get_all_version_components "${ver_b}" )); local inf_loop=0; while true; do inf_loop=$(( ${inf_loop} + 1 )); [[ ${inf_loop} -gt 20 ]] && die "versionator compare bug [numbers, ${ver_a}, ${ver_b}]"; local cur_tok_a=${parts_a[${cur_idx_a}]}; local cur_tok_b=${parts_b[${cur_idx_b}]}; if [[ -n ${cur_tok_a} ]] && [[ -z ${cur_tok_a//[[:digit:]]} ]]; then cur_idx_a=$(( ${cur_idx_a} + 1 )); [[ ${parts_a[${cur_idx_a}]} == "." ]] && cur_idx_a=$(( ${cur_idx_a} + 1 )); else cur_tok_a=""; fi; if [[ -n ${cur_tok_b} ]] && [[ -z ${cur_tok_b//[[:digit:]]} ]]; then cur_idx_b=$(( ${cur_idx_b} + 1 )); [[ ${parts_b[${cur_idx_b}]} == "." ]] && cur_idx_b=$(( ${cur_idx_b} + 1 )); else cur_tok_b=""; fi; [[ -z ${cur_tok_a} ]] && [[ -z ${cur_tok_b} ]] && break; cur_tok_a=${cur_tok_a##+(0)}; cur_tok_b=${cur_tok_b##+(0)}; [[ -z ${cur_tok_a} ]] && cur_tok_a=0; [[ -z ${cur_tok_b} ]] && cur_tok_b=0; [[ ${cur_tok_a} -lt ${cur_tok_b} ]] && __versionator_shopt_toggle off && return 1; [[ ${cur_tok_a} -gt ${cur_tok_b} ]] && __versionator_shopt_toggle off && return 3; done; local letter_a=; letter_a=${parts_a[${cur_idx_a}]}; if [[ ${#letter_a} -eq 1 ]] && [[ -z ${letter_a/[a-z]} ]]; then cur_idx_a=$(( ${cur_idx_a} + 1 )); else letter_a="@"; fi; local letter_b=; letter_b=${parts_b[${cur_idx_b}]}; if [[ ${#letter_b} -eq 1 ]] && [[ -z ${letter_b/[a-z]} ]]; then cur_idx_b=$(( ${cur_idx_b} + 1 )); else letter_b="@"; fi; [[ ${letter_a} < ${letter_b} ]] && __versionator_shopt_toggle off && return 1; [[ ${letter_a} > ${letter_b} ]] && __versionator_shopt_toggle off && return 3; local suffix rule part r_lt r_gt; for rule in "alpha=1" "beta=1" "pre=1" "rc=1" "p=3" "r=3"; do suffix=${rule%%=*}; r_lt=${rule##*=}; [[ ${r_lt} -eq 1 ]] && r_gt=3 || r_gt=1; local suffix_a=; for part in ${parts_a[@]}; do [[ ${part#${suffix}} != ${part} ]] && [[ -z ${part##${suffix}*([[:digit:]])} ]] && suffix_a=${part#${suffix}}0; done; local suffix_b=; for part in ${parts_b[@]}; do [[ ${part#${suffix}} != ${part} ]] && [[ -z ${part##${suffix}*([[:digit:]])} ]] && suffix_b=${part#${suffix}}0; done; [[ -z ${suffix_a} ]] && [[ -z ${suffix_b} ]] && continue; [[ -z ${suffix_a} ]] && __versionator_shopt_toggle off && return ${r_gt}; [[ -z ${suffix_b} ]] && __versionator_shopt_toggle off && return ${r_lt}; suffix_a=${suffix_a##+(0)}; suffix_a=${suffix_a:-0}; suffix_b=${suffix_b##+(0)}; suffix_b=${suffix_b:-0}; [[ ${suffix_a} -lt ${suffix_b} ]] && __versionator_shopt_toggle off && return 1; [[ ${suffix_a} -gt ${suffix_b} ]] && __versionator_shopt_toggle off && return 3; done; __versionator_shopt_toggle off; return 2 } version_is_at_least () { __versionator_shopt_toggle on; local want_s="$1" have_s="${2:-${PVR}}" r; version_compare "${want_s}" "${have_s}"; r=$?; case $r in 1 | 2) __versionator_shopt_toggle off; return 0 ;; 3) __versionator_shopt_toggle off; return 1 ;; *) __versionator_shopt_toggle off; die "versionator compare bug [atleast, ${want_s}, ${have_s}, ${r}]" ;; esac; __versionator_shopt_toggle off } version_sort () { __versionator_shopt_toggle on; local items= left=0; items=($@); while [[ ${left} -lt ${#items[@]} ]]; do local lowest_idx=${left}; local idx=$(( ${lowest_idx} + 1 )); while [[ ${idx} -lt ${#items[@]} ]]; do version_compare "${items[${lowest_idx}]}" "${items[${idx}]}"; [[ $? -eq 3 ]] && lowest_idx=${idx}; idx=$(( ${idx} + 1 )); done; local tmp=${items[${lowest_idx}]}; items[${lowest_idx}]=${items[${left}]}; items[${left}]=${tmp}; left=$(( ${left} + 1 )); done; echo ${items[@]}; __versionator_shopt_toggle off } declare -x ABI="amd64" declare -x ADA_INCLUDE_PATH="/usr/lib64/gnat-gcc/x86_64-pc-linux-gnu/4.2/adainclude" declare -x ADA_OBJECTS_PATH="/usr/lib64/gnat-gcc/x86_64-pc-linux-gnu/4.2/adalib" declare -x ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" declare -x ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" declare -x ANT_HOME="/usr/share/ant-core" declare -x ANT_OPTS="" declare -x ANT_TASKS="" declare -x APACHE2_MODULES="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 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" declare -x ARCH="amd64" declare -x ASFLAGS_x86="--32" declare -x BLASTDB="/usr/share/ncbi/formatdb" declare -x BLASTMAT="/usr/share/ncbi/data" declare -x CBUILD="x86_64-pc-linux-gnu" declare -x CDEFINE_amd64="__x86_64__" declare -x CDEFINE_default="__unix__" declare -x CDEFINE_x86="__i386__" declare -x CDF_BASE="/usr" declare -x CDF_BIN="\${CDF_BASE}/bin" declare -x CDF_HELP="\${CDF_BASE}/lib/cdf/help" declare -x CDF_INC="\${CDF_BASE}/include" declare -x CDF_LIB="\${CDF_BASE}/lib" declare -x CFLAGS="-O2 -pipe -march=opteron" declare -x CFLAGS_default="" declare -x CFLAGS_x86="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" declare -x CF_LIB="/usr/share/confluence" 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_x86="i686-pc-linux-gnu" declare -x CLASSPATH="" declare -x CMTBIN="Linux-x86_64" declare -x CMTCONFIG="Linux-x86_64" declare -x CMTROOT="/usr/lib64/CMT/v1r20p20080222" declare -x COOT_REFMAC_LIB_DIR="/usr/share/coot/lib" declare -x CPLUS_INCLUDE_PATH="/root/System/Links/Headers:/usr/lib64/qt/include" declare -x CTARGET_default="x86_64-pc-linux-gnu" declare -x CVS_RSH="ssh" declare -x CXXFLAGS="-O2 -pipe -march=opteron" declare -x C_INCLUDE_PATH="/root/System/Links/Headers" declare -x DCCC_PATH="/usr/lib/distcc/bin" declare -x DEFAULT_ABI="amd64" declare -x DESTTREE="/usr" declare -x DIROPTIONS="-m0755" declare -x ELIBC="glibc" declare -x EMBOSS_ACDROOT="/usr/share/EMBOSS/acd" declare -x EXEOPTIONS="-m0755" declare -x FEATURES="ccache distlocks fixpackages loadpolicy metadata-transfer parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch" declare -x FLTK_DOCDIR="/usr/share/doc/fltk-1.1.7-r3/html" declare -x GAMBCOPT="=/usr/" declare -x GCC_SPECS="" declare -x GDK_USE_XFT="1" declare -x GENERATION="2" declare -x GENTOO_VM="sun-jdk-1.6" declare -x GMTHOME="/usr/share/gmt-4.1.1" declare -x GNOME_TARBALL_SUFFIX="bz2" declare -x GRASS_HOME="/usr/grass62" declare -x GRASS_LD_LIBRARY_PATH="/usr/grass62/lib" declare -x GS_LIB="/home/shingoshi/.fonts" declare -x GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:/home/shingoshi/.gtkrc-2.0:/usr/home/shingoshi/.kde/share/config/gtkrc-2.0" declare -x GTK_RC_FILES="/etc/gtk/gtkrc:/home/shingoshi/.gtkrc:/usr/home/shingoshi/.kde/share/config/gtkrc" declare -x GUILE_LOAD_PATH="/usr/share/guile/1.8" declare -x G_BROKEN_FILENAMES="1" declare -x HISTCONTROL="ignoredups" declare -x HUSHLOGIN="FALSE" declare -x INFODIR="/usr/GNUstep/System/Library/Documentation/info:/usr/GNUstep/Local/Library/Documentation/info" declare -x INHERITED="toolchain-funcs java-pkg-2 portability java-utils-2 versionator multilib gnome2-utils gnome2 gnome.org fdo-mime libtool eutils" declare -x INPUTRC="/etc/inputrc" declare -x INPUT_DEVICES="keyboard mouse evdev" declare -x INSDESTTREE="" declare -x INSOPTIONS="-m0644" declare -x IUSE=" elibc_FreeBSD debug" declare -x JAVA="/opt/sun-jdk-1.6.0.06/bin/java" declare -x JAVAC="/opt/sun-jdk-1.6.0.06/bin/javac" declare -x JAVACFLAGS="-source 1.4 -target 1.4" declare -x JAVA_HOME="/opt/sun-jdk-1.6.0.06" declare -x JDK_HOME="/opt/sun-jdk-1.6.0.06" declare -x KDEDIR="/usr" declare -x KDEDIRS="/usr:/usr/local:/usr/kde/4.0" declare -x KDESU_USER="shingoshi" declare -x KDE_MULTIHEAD="false" declare -x KDE_SESSION_UID="1002" declare -x KERNEL="linux" declare -x KERNEL_ABI="amd64" declare -x KONSOLE_DCOP="DCOPRef(konsole-10883,konsole)" declare -x KONSOLE_DCOP_SESSION="DCOPRef(konsole-10883,session-1)" declare -x KV="2.6.24.4" declare -x LADSPA_PATH="/usr/lib64/ladspa" declare -x LANG="C" declare -x LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" declare -x LC_ALL="C" declare -x LC_COLLATE="C" declare -x LDFLAGS_default="" declare -x LDFLAGS_x86="-m elf_i386 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" declare -x LD_LIBRARY_PATH="/root/System/Links/Libraries:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/native_threads/:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/xawt/:/opt/sun-jdk-1.6.0.06/jre/lib/amd64/server/" declare -x LESSCHARSET="latin1" declare -x LIBDIR_amd64="lib64" declare -x LIBDIR_default="lib" declare -x LIBDIR_x86="lib32" declare -x LIBOPTIONS="-m0644" declare -x LIBXCB_ALLOW_SLOPPY_LOCK="1" declare -x LINGUAS="af ar as_IN az be be_BY bg bo bn br bs ca cs cy da de dz el en en_GB en_US en_ZA eo es et eu fa fi fr ga gl gu_IN he hi hi_IN hr hu hy id is it ja km ko ku la lo lt lv mk ml ml_IN mn mr_IN nb nds ne nl nn no nr ns nz or_IN pa pa_IN pl ps pt pt_BR ro ru rw se sh_YU sk sl sq sr sr_CS ss st su sv sw_TZ ta ta_IN te_IN tg th ti_ER tn tr ts uk ur_IN ve vi xh zh zh_CN zh_TW zu" declare -x LS_OPTIONS=" -F -b -T 0 --color=auto " declare -x MAKEOPTS="-j8" declare -x MINICOM="-c on" declare -x MULTILIB_ABIS="amd64 x86" declare -x MULTILIB_STRICT_DENY="64-bit.*shared object" declare -x MULTILIB_STRICT_DIRS="/lib /usr/lib /usr/kde/*/lib /usr/qt/*/lib /usr/X11R6/lib" declare -x MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)" declare -x NCBI="/etc/ncbi" declare -x OMNIORB_CONFIG="/etc/omniorb/omniORB.cfg" declare -x OPENGL_PROFILE="xorg-x11" declare -x PKG_CONFIG_PATH="/root/System/Links/Libraries/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig" declare -x PLAN9="/usr/lib/plan9" declare -x PLPLOT_LIB="/usr/share/EMBOSS/" declare -x PORTAGE_COMPRESS="lzma" declare -x PRELINK_PATH_MASK="/lib/modules:/usr/lib64/locale:/usr/lib64/wine:/usr/lib64/valgrind:*.la:*.png:*.py:*.pl:*.pm:*.sh:*.xml:*.xslt:*.a:*.js:/usr/lib64/klibc" declare -x PVM_ARCH="LINUX64" declare -x PVM_ROOT="/usr/share/pvm3" declare -x PYMOL_DATA="/usr/share/pymol/data" declare -x PYMOL_PATH="/usr/lib64/python2.5/site-packages/pymol" declare -x PYMOL_SCRIPTS="/usr/share/pymol/scripts" declare -x PYTHONDOCS="/usr/share/doc/python-docs-2.5.1/html/lib" declare -x PYTHONPATH="/root/System/Links/Libraries/python2.3/site-packages:/root/System/Links/Libraries/python2.4/site-packages" declare -x QRNADB="/usr/share/qrna/data" declare -x QTDIR="/usr/lib64/qt" declare -x RCSBROOT="/usr/lib/rcsb" declare -x RESTRICT="" declare -x ROOTLESS_GOBOLINUX="1" declare -x RUBYOPT="-rauto_gem" declare -x R_HOME="/usr/lib64/R" declare -x S="/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/work/java-access-bridge-1.6.0" declare -x SANDBOX_DENY="/etc/ld.so.preload" declare -x SANDBOX_PREDICT=":/dev/console:/dev/random:/proc/self/maps:/usr/lib/python2.0/:/usr/lib/python2.1/:/usr/lib/python2.2/:/usr/lib/python2.3/:/usr/lib/python2.4/:/usr/lib/python2.5/:/usr/lib/python3.0/:/var/db/aliases.db:/var/db/ethers.db:/var/db/group.db:/var/db/hosts.db:/var/db/netgroup.db:/var/db/netmasks.db:/var/db/networks.db:/var/db/passwd.db:/var/db/protocols.db:/var/db/rpc.db:/var/db/services.db:/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/homedir/.:" declare -x SANDBOX_READ=":/:/dev/shm:/dev/stdin:/distccache/.ccache:/var/tmp:" declare -x SANDBOX_WRITE=":/dev/console:/dev/fd:/dev/null:/dev/pts/:/dev/pty:/dev/shm:/dev/shm/ngpt:/dev/stderr:/dev/stdout:/dev/tts:/dev/tty:/dev/vc/:/dev/zero:/distccache/.ccache:/proc/self/fd:/tmp:/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/log/scrollkeeper.log:/var/tmp:/var/tmp/:/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/homedir/.bash_history:/var/tmp/portage/app-accessibility/java-access-bridge-1.6.0-r1/homedir/.gconfd/lock:" declare -x SANE_CONFIG_DIR="/etc/sane.d" declare -x SCHEME_LIBRARY_PATH="/usr/share/slib/" declare -x SESSION_MANAGER="local/starbase64:/tmp/.ICE-unix/9239" declare -x SGML_CATALOG_FILES="/etc/sgml/sgml-docbook.cat:/etc/sgml/openjade-1.3.2.cat:/etc/sgml/dsssl-docbook-stylesheets.cat:/etc/sgml/sgml-docbook-3.1.cat:/etc/sgml/sgml-lite.cat:/etc/sgml/sgml-docbook-3.0.cat:/etc/sgml/sgml-docbook-4.1.cat:/etc/sgml/sgml-docbook-4.0.cat:/etc/sgml/xml-simple-docbook-4.1.2.4.cat:/etc/sgml/xml-simple-docbook-1.0.cat:/etc/sgml/xml-docbook-4.1.2.cat:/etc/sgml/xml-docbook-4.4.cat:/etc/sgml/sgml-docbook-4.2.cat:/etc/sgml/sgml-ent.cat:/etc/sgml/sgml-docbook-4.4.cat:/etc/sgml/xml-docbook-4.2.cat:/etc/sgml/xml-docbook-4.5.cat:/etc/sgml/sgml-docbook-4.5.cat:/etc/sgml/linuxdoc.cat:/etc/sgml/xml-docbook-4.3.cat" declare -x SLOT="0" declare -x STAGE1_USE="nptl nptlonly unicode" declare -x SVCDIR="/service" declare -x SVCTIMEOUT="15" declare -x SVCVARDIR="/var/service" declare -x SYMLINK_LIB="yes" declare -x T1LIB_CONFIG="/usr/share/t1lib/t1lib.config" declare -x TEXINPUTS="/usr/lib64/ocaml/ocamldoc:" declare -x TINYSCHEMEINIT="/usr/share/tinyscheme/init.scm" declare -x TMAKEPATH="/usr/lib/tmake/linux-g++" declare -x USB_DEVFS_PATH="/dev/bus/usb" declare -x USE="amd64 elibc_glibc kernel_linux userland_GNU" declare -x USERLAND="GNU" declare -x VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i810 mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo" declare -x VMHANDLE="blackdown-jdk-1.4.2" declare -x VTKHOME="/usr" declare -x VTK_DATA_ROOT="/usr/share/vtk/data" declare -x VTK_DIR="/usr/lib/vtk-5.0" declare -x WANT_JAVA_CONFIG="2" declare -x WINDOWID="117440552" declare -x WINDOWPATH="7" declare -x XCURSOR_THEME="redglass" declare -x XDG_CONFIG_DIRS="/root/System/Settings/xdg" declare -x XDG_DATA_DIRS="/root/System/Variable/xdg:/root/System/Links/Shared:/usr/share:/usr/kde/4.0/share:/usr/local/share" declare -x XPVM_ROOT="/usr/local/pvm3/xpvm/src" declare -x _E_DOCDESTTREE_="" declare -x _E_EXEDESTTREE_="" declare -x goboPrefix="/root"