Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 153489 Details for
Bug 222587
net-fs/shfs-0.35-r4
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
All logs in one file.
shfs-0.35-r4-x86_64-config+build-logs_emergeinfo_environment-2008.05.17_22:40:44 (text/plain), 158.67 KB, created by
Xavian-Anderson Macpherson
on 2008-05-18 05:50:32 UTC
(
hide
)
Description:
All logs in one file.
Filename:
MIME Type:
Creator:
Xavian-Anderson Macpherson
Created:
2008-05-18 05:50:32 UTC
Size:
158.67 KB
patch
obsolete
>------------------------------------------------------------------------------ >This is the config.log for net-fs/shfs-0.35-r4 >------------------------------------------------------------------------------ > > > > >------------------------------------------------------------------------------ >This is the build.log for net-fs/shfs-0.35-r4 >------------------------------------------------------------------------------ > > >setup > [32;01m*[0m Determining the location of the kernel source code > [32;01m*[0m Found kernel source directory: > [32;01m*[0m /usr/src/linux > [32;01m*[0m Found kernel object directory: > [32;01m*[0m /lib/modules/2.6.24.4/build > [32;01m*[0m Found sources for kernel version: > [32;01m*[0m 2.6.24.4 > [32;01m*[0m Checking for suitable kernel configuration options... >[A[170C [34;01m[ [32;01mok[34;01m ][0m >unpack >>>> Unpacking source... >>>> Unpacking shfs-0.35.tar.gz to /var/tmp/portage/net-fs/shfs-0.35-r4/work > [32;01m*[0m Applying df.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying shfs-0.35-2.6.18-dentry.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying shfs-0.35-clean-inode-clear.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying shfs-0.35-gcc4.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying shfs-0.35-inode-and-fs.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying space_chars.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying uidgid32.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Converting shfs-0.35/shfs/Linux-2.6/Makefile to use M= instead of SUBDIRS= ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m > [32;01m*[0m Applying shfs-0.35-2.6.16-dentry.patch ... >[A[170C [34;01m[ [32;01mok[34;01m ][0m >>>> Source unpacked. >compile >>>> Compiling source in /var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35 ... > [32;01m*[0m Preparing shfs module >make -C /usr/src/linux M=/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6 modules >make[1]: Entering directory `/usr/src/linux-2.6.24.4' > CC [M] /var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/dcache.o >In file included from /var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/dcache.c:24: >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:82: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â*â token >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:83: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â*â token >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:84: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â*â token >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:85: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â*â token >In file included from /var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/dcache.c:26: >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:22: error: expected declaration specifiers or â...â before âkmem_cache_tâ >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: In function â__kmem_malloc_debugâ: >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: âcacheâ undeclared (first use in this function) >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: (Each undeclared identifier is reported only once >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: for each function it appears in.) >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: At top level: >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:35: error: expected declaration specifiers or â...â before âkmem_cache_tâ >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: In function â__kmem_free_debugâ: >/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:41: error: âcacheâ undeclared (first use in this function) >make[2]: *** [/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6/dcache.o] Error 1 >make[1]: *** [_module_/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6] Error 2 >make[1]: Leaving directory `/usr/src/linux-2.6.24.4' >make: *** [default] Error 2 > [31;01m*[0m > [31;01m*[0m ERROR: net-fs/shfs-0.35-r4 failed. > [31;01m*[0m Call stack: > [31;01m*[0m ebuild.sh, line 49: Called src_compile > [31;01m*[0m environment, line 3303: Called linux-mod_src_compile > [31;01m*[0m environment, line 2544: Called die > [31;01m*[0m The specific snippet of code: > [31;01m*[0m eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CC=\"$(get-KERNEL_CC)\" LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CC="$(get-KERNEL_CC)" LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; > [31;01m*[0m The die message: > [31;01m*[0m Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CC=x86_64-pc-linux-gnu-gcc LDFLAGS= -j1 KERNEL_SOURCES=/usr/src/linux default > [31;01m*[0m > [31;01m*[0m If you need support, post the topmost build error, and the call stack if relevant. > [31;01m*[0m A complete build log is located at '/var/tmp/portage/net-fs/shfs-0.35-r4/temp/build.log'. > [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/net-fs/shfs-0.35-r4/temp/environment'. > [31;01m*[0m > >---------------------------------------------------- >shfs-0.35-r4: 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= >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 >BLASTDB=/usr/share/ncbi/formatdb >BLASTMAT=/usr/share/ncbi/data >BUILD_PARAMS='-j1 KERNEL_SOURCES=/usr/src/linux' >BUILD_TARGETS=default >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' >CEL=/opt/planeshift/cel/lib/cel-1.2 >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 >CG_COMPILER_EXE=/usr/bin/cgc >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=.:/usr/lib64/CMT/v1r20p20080222/java/cmt.jar >CMTBIN=Linux-x86_64 >CMTCONFIG=Linux-x86_64 >CMTROOT=/usr/lib64/CMT/v1r20p20080222 >CONFIG_CHECK=@SH_FS:shfs >COOT_REFMAC_LIB_DIR=/usr/share/coot/lib >COUNTER=7592 >CPLUS_INCLUDE_PATH=/root/System/Links/Headers:/usr/lib64/qt/include >CRYSTAL=/opt/planeshift/crystalspace >CRYSTAL_CONFIG=/opt/planeshift/crystalspace/etc/crystalspace-1.2 >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=$'net-misc/openssh\n\t\t amd? ( net-fs/am-utils ) kernel_linux? ( virtual/linux-sources ) kernel_linux? ( virtual/modutils )\n\tsys-apps/sed' >DESCRIPTION='Secure Shell File System' >DESTTREE=/usr >DIROPTIONS=-m0755 >EAPI= >ELIBC=glibc >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/net-fs/shfs-0.35-r4/work/patch >EPATCH_SUFFIX=patch.bz2 >EXEOPTIONS=-m0755 >FEATURES='ccache distlocks fixpackages loadpolicy parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch' >FLTK_DOCDIR=/usr/share/doc/fltk-1.1.7-r3/html >GAMBCOPT==/usr/ >GCC_SPECS= >GDK_USE_XFT=1 >GENERATION=2 >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 >HOMEPAGE=http://shfs.sourceforge.net/ >HUSHLOGIN=FALSE >INFODIR=/usr/GNUstep/System/Library/Documentation/info:/usr/GNUstep/Local/Library/Documentation/info >INHERITED='toolchain-funcs portability versionator multilib linux-info linux-mod eutils' >INPUTRC=/etc/inputrc >INPUT_DEVICES='keyboard mouse evdev' >INSDESTTREE= >INSOPTIONS=-m0644 >IUSE='X amd doc kernel_linux' >JAVAC=/etc/java-config-2/current-system-vm/bin/javac >JAVACC_HOME=/usr/share/javacc/ >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 >KERNEL_ABI=amd64 >KERNEL_DIR=/usr/src/linux >KEYWORDS='~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86' >KONSOLE_DCOP='DCOPRef(konsole-10883,konsole)' >KONSOLE_DCOP_SESSION='DCOPRef(konsole-10883,session-1)' >KV=2.6.24.4 >KV_DIR=/usr/src/linux >KV_EXTRA=.4 >KV_FULL=2.6.24.4 >KV_LOCAL= >KV_MAJOR=2 >KV_MINOR=6 >KV_OBJ=ko >KV_OUT_DIR=/lib/modules/2.6.24.4/build >KV_PATCH=24 >LADSPA_PATH=/usr/lib64/ladspa >LANG=en_US.UTF-8 >LCD_DEVICES= >LC_COLLATE=C >LDFLAGS= >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 >LESSCHARSET=latin1 >LIBDIR_amd64=lib64 >LIBDIR_default=lib >LIBDIR_x86=lib32 >LIBGL_DRIVERS_PATH=/usr/lib64/dri:/usr/lib32/dri >LIBOPTIONS=-m0644 >LIBXCB_ALLOW_SLOPPY_LOCK=1 >LICENSE=GPL-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' >MODULE_NAMES='shfs(misc/fs:/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35/shfs/Linux-2.6)' >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 >OUTPUT_DIR=/lib/modules/2.6.24.4/build >PDEPEND='X? ( net-misc/x11-ssh-askpass ) ' >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 >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=$'net-misc/openssh\n\t\t amd? ( net-fs/am-utils ) kernel_linux? ( virtual/modutils )' >RESTRICT= >ROOTLESS_GOBOLINUX=1 >RUBYOPT=-rauto_gem >R_HOME=/usr/lib64/R >S=/var/tmp/portage/net-fs/shfs-0.35-r4/work/shfs-0.35 >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/net-fs/shfs-0.35-r4/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/net-fs/shfs-0.35-r4/homedir/.bash_history:/var/tmp/portage/net-fs/shfs-0.35-r4/homedir/.gconfd/lock: >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 >SH_FS_ERROR='SHFS is built into the kernel. Only userland utilities will be provided.' >SLOT=0 >SRC_URI=mirror://sourceforge/shfs/shfs-0.35.tar.gz >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='X amd64 doc elibc_glibc kernel_linux userland_GNU' >USERLAND=GNU >VIDEO_CARDS= >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 >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 >XERCESC_NLS_HOME=/usr/share/xerces-c/msg >XPVM_ROOT=/usr/local/pvm3/xpvm/src >_=PKG_INSTALL_MASK >_E_DOCDESTTREE_= >_E_EXEDESTTREE_= >___ECLASS_RECUR_MULTILIB=yes >___ECLASS_RECUR_TOOLCHAIN_FUNCS=yes >conf=shfs-0.35-r4 >goboPrefix=/root >str='use_m: entering function' >__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 >} >_epatch_assert () >{ > local _pipestatus=${PIPESTATUS[*]}; > [[ ${_pipestatus// /} -eq 0 ]] >} >_epatch_draw_line () >{ > [[ -z $1 ]] && set "$(printf "%65s" '')"; > echo "${1//?/=}" >} >_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_extra_config () >{ > local config negate die error reworkmodulenames; > local soft_errors_count=0 hard_errors_count=0 config_required=0; > get_version; > for config in ${CONFIG_CHECK}; > do > if [[ "${config:0:1}" != "~" ]]; then > config_required=1; > break; > fi; > done; > if [[ ${config_required} == 0 ]]; then > if ! linux_config_exists; then > return 0; > fi; > else > require_configured_kernel; > fi; > einfo "Checking for suitable kernel configuration options..."; > for config in ${CONFIG_CHECK}; > do > die=1; > error=0; > negate=0; > reworkmodulenames=0; > if [[ ${config:0:1} == "~" ]]; then > die=0; > config=${config:1}; > else > if [[ ${config:0:1} == "@" ]]; then > die=0; > reworkmodulenames=1; > config=${config:1}; > fi; > fi; > if [[ ${config:0:1} == "!" ]]; then > negate=1; > config=${config:1}; > fi; > if [[ ${negate} == 1 ]]; then > linux_chkconfig_present ${config} && error=2; > else > if [[ ${reworkmodulenames} == 1 ]]; then > local temp_config="${config//*:}" i n; > config="${config//:*}"; > if linux_chkconfig_present ${config}; then > for i in ${MODULE_NAMES}; > do > n="${i//${temp_config}}"; > [[ -z ${n//\(*} ]] && MODULE_IGNORE="${MODULE_IGNORE} ${temp_config}"; > done; > error=2; > fi; > else > linux_chkconfig_present ${config} || error=1; > fi; > fi; > if [[ ${error} > 0 ]]; then > local report_func="eerror" local_error; > local_error="ERROR_${config}"; > local_error="${!local_error}"; > if [[ -z "${local_error}" ]]; then > local_error="${config}_ERROR"; > local_error="${!local_error}"; > fi; > if [[ ${die} == 0 && -z "${local_error}" ]]; then > local_error="WARNING_${config}"; > local_error="${!local_error}"; > if [[ -n "${local_error}" ]]; then > report_func="ewarn"; > fi; > fi; > if [[ -z "${local_error}" ]]; then > [[ ${error} == 1 ]] && local_error="is not set when it should be." || local_error="should not be set. But it is."; > local_error="CONFIG_${config}:\t ${local_error}"; > fi; > if [[ ${die} == 0 ]]; then > ${report_func} " ${local_error}"; > soft_errors_count=$[soft_errors_count + 1]; > else > ${report_func} " ${local_error}"; > hard_errors_count=$[hard_errors_count + 1]; > fi; > fi; > done; > if [[ ${hard_errors_count} > 0 ]]; then > eerror "Please check to make sure these options are set correctly."; > eerror "Failure to do so may cause unexpected problems."; > eerror "Once you have satisfied these options, please try merging"; > eerror "this package again."; > die "Incorrect kernel configuration options"; > else > if [[ ${soft_errors_count} > 0 ]]; then > ewarn "Please check to make sure these options are set correctly."; > ewarn "Failure to do so may cause unexpected problems."; > else > eend 0; > fi; > fi >} >check_kernel_built () >{ > require_configured_kernel; > get_version; > if [ ! -f "${KV_OUT_DIR}/include/linux/version.h" ]; then > eerror "These sources have not yet been prepared."; > eerror "We cannot build against an unprepared tree."; > eerror "To resolve this, please type the following:"; > eerror; > eerror "# cd ${KV_DIR}"; > eerror "# make oldconfig"; > eerror "# make modules_prepare"; > eerror; > eerror "Then please try merging this module again."; > die "Kernel sources need compiling first"; > fi >} >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 >} >check_modules_supported () >{ > require_configured_kernel; > get_version; > if ! linux_chkconfig_builtin "MODULES"; then > eerror "These sources do not support loading external modules."; > eerror "to be able to use this module please enable \"Loadable modules support\""; > eerror "in your kernel, recompile and then try merging this module again."; > die "No support for external modules in ${KV_FULL} config"; > fi >} >check_vermagic () >{ > debug-print-function ${FUNCNAME} $*; > local curr_gcc_ver=$(gcc -dumpversion); > local tmpfile old_chost old_gcc_ver result=0; > tmpfile=`find ${KV_DIR}/ -iname "*.o.cmd" -exec grep usr/lib/gcc {} \; -quit`; > tmpfile=${tmpfile//*usr/lib}; > tmpfile=${tmpfile//\/include*}; > old_chost=${tmpfile//*gcc\/}; > old_chost=${old_chost//\/*}; > old_gcc_ver=${tmpfile//*\/}; > if [[ -z ${old_gcc_ver} || -z ${old_chost} ]]; then > ewarn ""; > ewarn "Unable to detect what version of GCC was used to compile"; > ewarn "the kernel. Build will continue, but you may experience problems."; > else > if [[ ${curr_gcc_ver} != ${old_gcc_ver} ]]; then > ewarn ""; > ewarn "The version of GCC you are using (${curr_gcc_ver}) does"; > ewarn "not match the version of GCC used to compile the"; > ewarn "kernel (${old_gcc_ver})."; > result=1; > else > if [[ ${CHOST} != ${old_chost} ]]; then > ewarn ""; > ewarn "The current CHOST (${CHOST}) does not match the chost"; > ewarn "used when compiling the kernel (${old_chost})."; > result=1; > fi; > fi; > fi; > if [[ ${result} -gt 0 ]]; then > ewarn ""; > ewarn "Build will not continue, because you will experience problems."; > ewarn "To fix this either change the version of GCC you wish to use"; > ewarn "to match the kernel, or recompile the kernel first."; > die "GCC Version Mismatch."; > fi >} >check_zlibinflate () >{ > require_configured_kernel; > get_version; > local INFLATE; > local DEFLATE; > einfo "Determining the usability of ZLIB_INFLATE support in your kernel"; > ebegin "checking ZLIB_INFLATE"; > getfilevar_isbuiltin CONFIG_ZLIB_INFLATE ${KV_DIR}/.config; > eend $?; > [ "$?" != 0 ] && die; > ebegin "checking ZLIB_DEFLATE"; > getfilevar_isbuiltin CONFIG_ZLIB_DEFLATE ${KV_DIR}/.config; > eend $?; > [ "$?" != 0 ] && die; > local LINENO_START; > local LINENO_END; > local SYMBOLS; > local x; > LINENO_END="$(grep -n 'CONFIG_ZLIB_INFLATE y' ${KV_DIR}/lib/Config.in | cut -d : -f 1)"; > LINENO_START="$(head -n $LINENO_END ${KV_DIR}/lib/Config.in | grep -n 'if \[' | tail -n 1 | cut -d : -f 1)"; > (( LINENO_AMOUNT = $LINENO_END - $LINENO_START )); > (( LINENO_END = $LINENO_END - 1 )); > SYMBOLS="$(head -n $LINENO_END ${KV_DIR}/lib/Config.in | tail -n $LINENO_AMOUNT | sed -e 's/^.*\(CONFIG_[^\" ]*\).*/\1/g;')"; > for x in $SYMBOLS; > do > if [ "${!x}" = "y" ]; then > einfo "${x} ensures zlib is linked into your kernel - excellent"; > return 0; > fi; > done; > eerror; > eerror "This kernel module requires ZLIB library support."; > eerror "You have enabled zlib support in your kernel, but haven't enabled"; > eerror "enabled any option that will ensure that zlib is linked into your"; > eerror "kernel."; > eerror; > eerror "Please ensure that you enable at least one of these options:"; > eerror; > for x in $SYMBOLS; > do > eerror " * $x"; > done; > eerror; > eerror "Please remember to recompile and install your kernel, and reboot"; > eerror "into your new kernel before attempting to load this kernel module."; > die "Kernel doesn't include zlib support" >} >convert_to_m () >{ > debug-print-function ${FUNCNAME} $*; > if use_m; then > [ ! -f "${1}" ] && die "convert_to_m() requires a filename as an argument"; > ebegin "Converting ${1/${WORKDIR}\//} to use M= instead of SUBDIRS="; > sed -i 's:SUBDIRS=:M=:g' ${1}; > eend $?; > fi >} >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 >} >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 >} >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} ) >} >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 >} >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 >} >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_module_params () >{ > debug-print-function ${FUNCNAME} $*; > local matched_offset=0 matched_opts=0 test="${@}" temp_var result; > local i=0 y=0 z=0; > for ((i=0; i<=${#test}; i++)) > do > case ${test:${i}:1} in > \() > matched_offset[0]=${i} > ;; > \:) > matched_opts=$((${matched_opts} + 1)); > matched_offset[${matched_opts}]="${i}" > ;; > \)) > matched_opts=$((${matched_opts} + 1)); > matched_offset[${matched_opts}]="${i}" > ;; > esac; > done; > for ((i=0; i<=${matched_opts}; i++)) > do > case ${i} in > 0) > tempvar=${test:0:${matched_offset[0]}} > ;; > *) > y=$((${matched_offset[$((${i} - 1))]} + 1)); > z=$((${matched_offset[${i}]} - ${matched_offset[$((${i} - 1))]})); > z=$((${z} - 1)); > tempvar=${test:${y}:${z}} > ;; > esac; > case ${i} in > 0) > result="${result} modulename:${tempvar}" > ;; > 1) > result="${result} libdir:${tempvar}" > ;; > 2) > result="${result} srcdir:${tempvar}" > ;; > 3) > result="${result} objdir:${tempvar}" > ;; > esac; > done; > echo ${result} >} >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 >} >generate_modulesd () >{ > debug-print-function ${FUNCNAME} $*; > local currm_path currm currm_t t myIFS myVAR; > local module_docs module_enabled module_aliases module_additions module_examples module_modinfo module_opts; > for currm_path in ${@}; > do > currm=${currm_path//*\/}; > currm=$(echo ${currm} | tr '[:lower:]' '[:upper:]'); > currm_t=${currm}; > while [[ -z ${currm_t//*-*} ]]; do > currm_t=${currm_t/-/_}; > done; > module_docs="$(eval echo \${MODULESD_${currm_t}_DOCS})"; > module_enabled="$(eval echo \${MODULESD_${currm_t}_ENABLED})"; > module_aliases="$(eval echo \${#MODULESD_${currm_t}_ALIASES[*]})"; > module_additions="$(eval echo \${#MODULESD_${currm_t}_ADDITIONS[*]})"; > module_examples="$(eval echo \${#MODULESD_${currm_t}_EXAMPLES[*]})"; > [[ ${module_aliases} -eq 0 ]] && unset module_aliases; > [[ ${module_additions} -eq 0 ]] && unset module_additions; > [[ ${module_examples} -eq 0 ]] && unset module_examples; > [[ ${module_enabled} == no ]] && return 0; > for t in ${!module_*}; > do > [[ -z ${!t} ]] && unset ${t}; > done; > [[ -z ${!module_*} ]] && return 0; > module_modinfo="$(modinfo -p ${currm_path}.${KV_OBJ})"; > module_config="${T}/modulesd-${currm}"; > ebegin "Preparing file for modules.d"; > echo "# modules.d configuration file for ${currm}" >> ${module_config}; > [[ -n ${module_docs} ]] && echo "# For more information please read:" >> ${module_config}; > for t in ${module_docs}; > do > echo "# ${t//*\/}" >> ${module_config}; > done; > echo >> ${module_config}; > if [[ ${module_aliases} -gt 0 ]]; then > echo "# Internal Aliases - Do not edit" >> ${module_config}; > echo "# ------------------------------" >> ${module_config}; > for ((t=0; t<${module_aliases}; t++)) > do > echo "alias $(eval echo \${MODULESD_${currm}_ALIASES[$t]})" >> ${module_config}; > done; > echo '' >> ${module_config}; > fi; > if [[ -n ${module_modinfo} ]]; then > echo >> ${module_config}; > echo "# Configurable module parameters" >> ${module_config}; > echo "# ------------------------------" >> ${module_config}; > myIFS="${IFS}"; > IFS="$(echo -en "\n\b")"; > for t in ${module_modinfo}; > do > myVAR="$(echo ${t#*:} | grep -e " [0-9][ =]" | sed "s:.*\([01][= ]\).*:\1:")"; > if [[ -n ${myVAR} ]]; then > module_opts="${module_opts} ${t%%:*}:${myVAR}"; > fi; > echo -e "# ${t%%:*}:\t${t#*:}" >> ${module_config}; > done; > IFS="${myIFS}"; > echo '' >> ${module_config}; > fi; > if [[ $(eval echo \${MODULESD_${currm}_ALIASES[0]}) == guess ]]; then > if [[ -n ${module_opts} ]]; then > echo "# For Example..." >> ${module_config}; > echo "# --------------" >> ${module_config}; > for t in ${module_opts}; > do > echo "# options ${currm} ${t//:*}=${t//*:}" >> ${module_config}; > done; > echo '' >> ${module_config}; > fi; > else > if [[ ${module_examples} -gt 0 ]]; then > echo "# For Example..." >> ${module_config}; > echo "# --------------" >> ${module_config}; > for ((t=0; t<${module_examples}; t++)) > do > echo "options $(eval echo \${MODULESD_${currm}_EXAMPLES[$t]})" >> ${module_config}; > done; > echo '' >> ${module_config}; > fi; > fi; > if [[ ${module_additions} -gt 0 ]]; then > for ((t=0; t<${module_additions}; t++)) > do > echo "$(eval echo \${MODULESD_${currm}_ADDITIONS[$t]})" >> ${module_config}; > done; > echo '' >> ${module_config}; > fi; > if kernel_is ge 2 6; then > insinto /etc/modprobe.d; > else > insinto /etc/modules.d; > fi; > newins ${module_config} ${currm_path//*\/}; > [[ -n ${module_docs} ]] && dodoc ${module_docs}; > done; > eend 0; > return 0 >} >get-KERNEL_CC () >{ > debug-print-function ${FUNCNAME} $*; > local kernel_cc; > if [ -n "${KERNEL_ABI}" ]; then > kernel_cc="$(tc-getCC $(ABI=${KERNEL_ABI} get_abi_CHOST))"; > else > kernel_cc=$(tc-getCC); > fi; > echo "${kernel_cc}" >} >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_localversion () >{ > local lv_list i x; > for i in $(ls ${1}/localversion* 2>/dev/null); > do > [[ -n ${i//*~*} ]] && lv_list="${lv_list} ${i}"; > done; > for i in ${lv_list}; > do > x="${x}$(<${i})"; > done; > x=${x/ /}; > echo ${x} >} >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_running_version () >{ > KV_FULL=$(uname -r); > if [[ -f ${ROOT}/lib/modules/${KV_FULL}/source/Makefile ]]; then > KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/source); > unset KV_FULL; > get_version; > return $?; > else > if [[ -f ${ROOT}/lib/modules/${KV_FULL}/build/Makefile ]]; then > KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/build); > unset KV_FULL; > get_version; > return $?; > else > KV_MAJOR=$(get_version_component_range 1 ${KV_FULL}); > KV_MINOR=$(get_version_component_range 2 ${KV_FULL}); > KV_PATCH=$(get_version_component_range 3- ${KV_FULL}); > KV_PATCH=${KV_PATCH//-*}; > [[ -n ${KV_FULL#*-} ]] && [[ -n ${KV_FULL//${KV_FULL#*-}} ]] && KV_EXTRA="-${KV_FULL#*-}"; > fi; > fi; > return 0 >} >get_version () >{ > local kbuild_output; > [ -n "${KV_FULL}" ] && return 0; > unset KV_DIR; > qeinfo "Determining the location of the kernel source code"; > [ -h "${KERNEL_DIR}" ] && KV_DIR="$(readlink -f ${KERNEL_DIR})"; > [ -d "${KERNEL_DIR}" ] && KV_DIR="${KERNEL_DIR}"; > if [ -z "${KV_DIR}" ]; then > qeerror "Unable to find kernel sources at ${KERNEL_DIR}"; > qeinfo "This package requires Linux sources."; > if [ "${KERNEL_DIR}" == "/usr/src/linux" ]; then > qeinfo "Please make sure that ${KERNEL_DIR} points at your running kernel, "; > qeinfo "(or the kernel you wish to build against)."; > qeinfo "Alternatively, set the KERNEL_DIR environment variable to the kernel sources location"; > else > qeinfo "Please ensure that the KERNEL_DIR environment variable points at full Linux sources of the kernel you wish to compile against."; > fi; > return 1; > fi; > qeinfo "Found kernel source directory:"; > qeinfo " ${KV_DIR}"; > if [ ! -s "${KV_DIR}/Makefile" ]; then > qeerror "Could not find a Makefile in the kernel source directory."; > qeerror "Please ensure that ${KERNEL_DIR} points to a complete set of Linux sources"; > return 1; > fi; > OUTPUT_DIR="${OUTPUT_DIR:-${KBUILD_OUTPUT}}"; > kbuild_output="$(getfilevar KBUILD_OUTPUT ${KV_DIR}/Makefile)"; > OUTPUT_DIR="${OUTPUT_DIR:-${kbuild_output}}"; > KV_MAJOR="$(getfilevar VERSION ${KV_DIR}/Makefile)"; > KV_MINOR="$(getfilevar PATCHLEVEL ${KV_DIR}/Makefile)"; > KV_PATCH="$(getfilevar SUBLEVEL ${KV_DIR}/Makefile)"; > KV_EXTRA="$(getfilevar EXTRAVERSION ${KV_DIR}/Makefile)"; > if [ -z "${KV_MAJOR}" -o -z "${KV_MINOR}" -o -z "${KV_PATCH}" ]; then > qeerror "Could not detect kernel version."; > qeerror "Please ensure that ${KERNEL_DIR} points to a complete set of Linux sources."; > return 1; > fi; > [ "${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}" == "$(uname -r)" ] && OUTPUT_DIR="${OUTPUT_DIR:-/lib/modules/${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}/build}"; > [ -h "${OUTPUT_DIR}" ] && KV_OUT_DIR="$(readlink -f ${OUTPUT_DIR})"; > [ -d "${OUTPUT_DIR}" ] && KV_OUT_DIR="${OUTPUT_DIR}"; > if [ -n "${KV_OUT_DIR}" ]; then > qeinfo "Found kernel object directory:"; > qeinfo " ${KV_OUT_DIR}"; > KV_LOCAL="$(get_localversion ${KV_OUT_DIR})"; > fi; > KV_OUT_DIR="${KV_OUT_DIR:-${KV_DIR}}"; > KV_LOCAL="${KV_LOCAL}$(get_localversion ${KV_DIR})"; > if linux_config_exists; then > KV_LOCAL="${KV_LOCAL}$(linux_chkconfig_string LOCALVERSION)"; > KV_LOCAL="${KV_LOCAL//\"/}"; > [ -e ${KV_DIR}/scripts/setlocalversion ] && linux_chkconfig_builtin LOCALVERSION_AUTO && KV_LOCAL="${KV_LOCAL}$(sh ${KV_DIR}/scripts/setlocalversion ${KV_DIR})"; > fi; > KV_FULL="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}${KV_LOCAL}"; > qeinfo "Found sources for kernel version:"; > qeinfo " ${KV_FULL}"; > return 0 >} >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 >} >getfilevar () >{ > local ERROR workingdir basefname basedname myARCH="${ARCH}"; > ERROR=0; > [ -z "${1}" ] && ERROR=1; > [ ! -f "${2}" ] && ERROR=1; > if [ "${ERROR}" = 1 ]; then > echo -e "\n"; > eerror "getfilevar requires 2 variables, with the second a valid file."; > eerror " getfilevar <VARIABLE> <CONFIGFILE>"; > else > workingdir="${PWD}"; > basefname="$(basename ${2})"; > basedname="$(dirname ${2})"; > unset ARCH; > cd "${basedname}"; > echo -e "e:\\n\\t@echo \$(${1})\\ninclude ${basefname}" | make M="${S}" ${BUILD_FIXES} -s -f - 2> /dev/null; > cd "${workingdir}"; > ARCH=${myARCH}; > fi >} >has_multilib_profile () >{ > [ -n "${MULTILIB_ABIS}" -a "${MULTILIB_ABIS}" != "${MULTILIB_ABIS/ /}" ] >} >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} ]] >} >kernel_is () >{ > get_version; > local operator test value x=0 y=0 z=0; > case ${1} in > lt) > operator="-lt"; > shift > ;; > gt) > operator="-gt"; > shift > ;; > le) > operator="-le"; > shift > ;; > ge) > operator="-ge"; > shift > ;; > eq) > operator="-eq"; > shift > ;; > *) > operator="-eq" > ;; > esac; > for x in ${@}; > do > for ((y=0; y<$((3 - ${#x})); y++)) > do > value="${value}0"; > done; > value="${value}${x}"; > z=$((${z} + 1)); > case ${z} in > 1) > for ((y=0; y<$((3 - ${#KV_MAJOR})); y++)) > do > test="${test}0"; > done; > test="${test}${KV_MAJOR}" > ;; > 2) > for ((y=0; y<$((3 - ${#KV_MINOR})); y++)) > do > test="${test}0"; > done; > test="${test}${KV_MINOR}" > ;; > 3) > for ((y=0; y<$((3 - ${#KV_PATCH})); y++)) > do > test="${test}0"; > done; > test="${test}${KV_PATCH}" > ;; > *) > die "Error in kernel-2_kernel_is(): Too many parameters." > ;; > esac; > done; > [ ${test} ${operator} ${value} ] && return 0 || return 1 >} >linux-info_pkg_setup () >{ > get_version || die "Unable to calculate Linux Kernel version"; > if kernel_is 2 4; then > if [ "$( gcc-major-version )" -eq "4" ]; then > echo; > ewarn "Be warned !! >=sys-devel/gcc-4.0.0 isn't supported with"; > ewarn "linux-2.4 (or modules building against a linux-2.4 kernel)!"; > echo; > ewarn "Either switch to another gcc-version (via gcc-config) or use a"; > ewarn "newer kernel that supports gcc-4."; > echo; > ewarn "Also be aware that bugreports about gcc-4 not working"; > ewarn "with linux-2.4 based ebuilds will be closed as INVALID!"; > echo; > epause 10; > fi; > fi; > [ -n "${CONFIG_CHECK}" ] && check_extra_config >} >linux-mod_pkg_postinst () >{ > debug-print-function ${FUNCNAME} $*; > ${UPDATE_DEPMOD} && update_depmod; > ${UPDATE_MODULES} && update_modules; > ${UPDATE_MODULEDB} && update_moduledb >} >linux-mod_pkg_postrm () >{ > debug-print-function ${FUNCNAME} $*; > remove_moduledb >} >linux-mod_pkg_preinst () >{ > debug-print-function ${FUNCNAME} $*; > [ -d "${D}lib/modules" ] && UPDATE_DEPMOD=true || UPDATE_DEPMOD=false; > [ -d "${D}etc/modules.d" ] && UPDATE_MODULES=true || UPDATE_MODULES=false; > [ -d "${D}lib/modules" ] && UPDATE_MODULEDB=true || UPDATE_MODULEDB=false >} >linux-mod_pkg_setup () >{ > debug-print-function ${FUNCNAME} $*; > linux-info_pkg_setup; > require_configured_kernel; > check_kernel_built; > strip_modulenames; > [[ -n ${MODULE_NAMES} ]] && check_modules_supported; > set_kvobj >} >linux-mod_src_compile () >{ > debug-print-function ${FUNCNAME} $*; > local modulename libdir srcdir objdir i n myARCH="${ARCH}" myABI="${ABI}"; > ARCH="$(tc-arch-kernel)"; > ABI="${KERNEL_ABI}"; > BUILD_TARGETS=${BUILD_TARGETS:-clean module}; > strip_modulenames; > cd "${S}"; > for i in ${MODULE_NAMES}; > do > unset libdir srcdir objdir; > for n in $(find_module_params ${i}); > do > eval ${n/:*}=${n/*:/}; > done; > libdir=${libdir:-misc}; > srcdir=${srcdir:-${S}}; > objdir=${objdir:-${srcdir}}; > if [ ! -f "${srcdir}/.built" ]; then > cd ${srcdir}; > einfo "Preparing ${modulename} module"; > if [[ -n ${ECONF_PARAMS} ]]; then > econf ${ECONF_PARAMS} || die "Unable to run econf ${ECONF_PARAMS}"; > fi; > eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CC=\"$(get-KERNEL_CC)\" LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CC="$(get-KERNEL_CC)" LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; > touch ${srcdir}/.built; > cd ${OLDPWD}; > fi; > done; > ARCH="${myARCH}"; > ABI="${myABI}" >} >linux-mod_src_install () >{ > debug-print-function ${FUNCNAME} $*; > local modulename libdir srcdir objdir i n; > strip_modulenames; > for i in ${MODULE_NAMES}; > do > unset libdir srcdir objdir; > for n in $(find_module_params ${i}); > do > eval ${n/:*}=${n/*:/}; > done; > libdir=${libdir:-misc}; > srcdir=${srcdir:-${S}}; > objdir=${objdir:-${srcdir}}; > einfo "Installing ${modulename} module"; > cd ${objdir} || die "${objdir} does not exist"; > insinto /lib/modules/${KV_FULL}/${libdir}; > doins ${modulename}.${KV_OBJ} || die "doins ${modulename}.${KV_OBJ} failed"; > cd ${OLDPWD}; > generate_modulesd ${objdir}/${modulename}; > done >} >linux_chkconfig_builtin () >{ > local RESULT; > require_configured_kernel; > RESULT="$(getfilevar CONFIG_${1} ${KV_OUT_DIR}/.config)"; > [ "${RESULT}" = "y" ] && return 0 || return 1 >} >linux_chkconfig_module () >{ > local RESULT; > require_configured_kernel; > RESULT="$(getfilevar CONFIG_${1} ${KV_OUT_DIR}/.config)"; > [ "${RESULT}" = "m" ] && return 0 || return 1 >} >linux_chkconfig_present () >{ > local RESULT; > require_configured_kernel; > RESULT="$(getfilevar CONFIG_${1} ${KV_OUT_DIR}/.config)"; > [ "${RESULT}" = "m" -o "${RESULT}" = "y" ] && return 0 || return 1 >} >linux_chkconfig_string () >{ > require_configured_kernel; > getfilevar "CONFIG_${1}" "${KV_OUT_DIR}/.config" >} >linux_config_exists () >{ > [ -s "${KV_OUT_DIR}/.config" ] >} >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}" <<EOF >#!/bin/sh >cd "${chdir:-.}" >if [ -n "${libdir}" ] ; then > if [ "\${LD_LIBRARY_PATH+set}" = "set" ] ; then > export LD_LIBRARY_PATH="\${LD_LIBRARY_PATH}:${libdir}" > else > export LD_LIBRARY_PATH="${libdir}" > fi >fi >exec ${bin} "\$@" >EOF > > chmod go+rx "${tmpwrapper}"; > if [[ -n ${path} ]]; then > ( exeinto "${path}"; > newexe "${tmpwrapper}" "${wrapper}" ) || die; > else > newbin "${tmpwrapper}" "${wrapper}" || die; > fi >} >move_old_moduledb () >{ > debug-print-function ${FUNCNAME} $*; > local OLDDIR=${ROOT}/usr/share/module-rebuild/; > local NEWDIR=${ROOT}/var/lib/module-rebuild/; > if [[ -f ${OLDDIR}/moduledb ]]; then > [[ ! -d ${NEWDIR} ]] && mkdir -p ${NEWDIR}; > [[ ! -f ${NEWDIR}/moduledb ]] && mv ${OLDDIR}/moduledb ${NEWDIR}/moduledb; > rm -f ${OLDDIR}/*; > rmdir ${OLDDIR}; > fi >} >multilib_env () >{ > local CTARGET=${1:-${CTARGET}}; > case ${CTARGET} in > x86_64*) > export CFLAGS_x86=${CFLAGS_x86--m32}; > export CHOST_x86=${CTARGET/x86_64/i686}; > export CTARGET_x86=${CHOST_x86}; > export CDEFINE_x86="__i386__"; > export LIBDIR_x86="lib"; > export CFLAGS_amd64=${CFLAGS_amd64--m64}; > export CHOST_amd64=${CTARGET}; > export CTARGET_amd64=${CHOST_amd64}; > export CDEFINE_amd64="__x86_64__"; > export LIBDIR_amd64="lib64"; > export MULTILIB_ABIS="amd64 x86"; > export DEFAULT_ABI="amd64" > ;; > mips64*) > export CFLAGS_o32=${CFLAGS_o32--mabi=32}; > export CHOST_o32=${CTARGET/mips64/mips}; > export CTARGET_o32=${CHOST_o32}; > export CDEFINE_o32="_MIPS_SIM == _ABIO32"; > export LIBDIR_o32="lib"; > export CFLAGS_n32=${CFLAGS_n32--mabi=n32}; > export CHOST_n32=${CTARGET}; > export CTARGET_n32=${CHOST_n32}; > export CDEFINE_n32="_MIPS_SIM == _ABIN32"; > export LIBDIR_n32="lib32"; > export CFLAGS_n64=${CFLAGS_n64--mabi=64}; > export CHOST_n64=${CTARGET}; > export CTARGET_n64=${CHOST_n64}; > export CDEFINE_n64="_MIPS_SIM == _ABI64"; > export LIBDIR_n64="lib64"; > export MULTILIB_ABIS="n64 n32 o32"; > export DEFAULT_ABI="n32" > ;; > powerpc64*) > export CFLAGS_ppc=${CFLAGS_ppc--m32}; > export CHOST_ppc=${CTARGET/powerpc64/powerpc}; > export CTARGET_ppc=${CHOST_ppc}; > export CDEFINE_ppc="!__powerpc64__"; > export LIBDIR_ppc="lib"; > export CFLAGS_ppc64=${CFLAGS_ppc64--m64}; > export CHOST_ppc64=${CTARGET}; > export CTARGET_ppc64=${CHOST_ppc64}; > export CDEFINE_ppc64="__powerpc64__"; > export LIBDIR_ppc64="lib64"; > export MULTILIB_ABIS="ppc64 ppc"; > export DEFAULT_ABI="ppc64" > ;; > s390x*) > export CFLAGS_s390=${CFLAGS_s390--m31}; > export CHOST_s390=${CTARGET/s390x/s390}; > export CTARGET_s390=${CHOST_s390}; > export CDEFINE_s390="!__s390x__"; > export LIBDIR_s390="lib"; > export CFLAGS_s390x=${CFLAGS_s390x--m64}; > export CHOST_s390x=${CTARGET}; > export CTARGET_s390x=${CHOST_s390x}; > export CDEFINE_s390x="__s390x__"; > export LIBDIR_s390x="lib64"; > export MULTILIB_ABIS="s390x s390"; > export DEFAULT_ABI="s390x" > ;; > sparc64*) > export CFLAGS_sparc32=${CFLAGS_sparc32--m32}; > export CHOST_sparc32=${CTARGET/sparc64/sparc}; > export CTARGET_sparc32=${CHOST_sparc32}; > export CDEFINE_sparc32="!__arch64__"; > export LIBDIR_sparc32="lib"; > export CFLAGS_sparc64=${CFLAGS_sparc64--m64}; > export CHOST_sparc64=${CTARGET}; > export CTARGET_sparc64=${CHOST_sparc64}; > export CDEFINE_sparc64="__arch64__"; > export LIBDIR_sparc64="lib64"; > export MULTILIB_ABIS="sparc64 sparc32"; > export DEFAULT_ABI="sparc64" > ;; > *) > export MULTILIB_ABIS="default"; > export DEFAULT_ABI="default" > ;; > esac >} >multilib_toolchain_setup () >{ > export ABI=$1; > if has_version app-admin/eselect-compiler; then > export LD="ld $(get_abi_LDFLAGS $1)"; > export AS="as $(get_abi_ASFLAGS $1)"; > export CHOST=$(get_abi_CHOST $1); > export CBUILD=$(get_abi_CHOST $1); > else > tc-export CC; > fi >} >newicon () >{ > ( insinto /usr/share/pixmaps; > newins "$@" ) >} >newmenu () >{ > ( insinto /usr/share/applications; > newins "$@" ) >} >number_abis () >{ > get_install_abis | wc -w >} >pkg_nofetch () >{ > [ -z "${SRC_URI}" ] && return; > echo "!!! The following are listed in SRC_URI for ${PN}:"; > local x; > for x in $(echo ${SRC_URI}); > do > echo "!!! ${x}"; > done >} >pkg_postinst () >{ > linux-mod_pkg_postinst; > echo; > elog "Use either 'shfsmount' or 'mount -t shfs' to mount remote"; > elog "filesystems into your local filesystem."; > elog; > elog "Note the following:"; > elog; > elog " 1. The shfs kernel module has to be loaded first before you can"; > elog " start mounting filesystems."; > elog " Try: 'modprobe shfs' as root."; > elog; > elog " 2. When mouting, you must enter the absolute path of the remote"; > elog " filesystem without any special characters such as tilde (~),"; > elog " for example as they will not be evaluated."; > echo >} >pkg_postrm () >{ > linux-mod_pkg_postrm $@ >} >pkg_preinst () >{ > linux-mod_pkg_preinst $@ >} >pkg_setup () >{ > linux-mod_pkg_setup; > BUILD_PARAMS="-j1 KERNEL_SOURCES=${KV_DIR}"; > MODULE_NAMES="shfs(misc/fs:${S}/shfs/Linux-${KV_MAJOR}.${KV_MINOR})"; > case "${KV_MAJOR}.${KV_MINOR}" in > "2.4") > BUILD_TARGETS="all" > ;; > "2.6") > BUILD_TARGETS="default" > ;; > esac >} >prep_ml_includes () >{ > if [[ $(number_abis) -gt 1 ]]; then > local dir; > local dirs; > local base; > if [[ $# -eq 0 ]]; then > dirs=/usr/include; > else > dirs="$@"; > fi; > for dir in ${dirs}; > do > base=${T}/gentoo-multilib/${dir}/gentoo-multilib; > mkdir -p "${base}"; > [[ -d ${base}/${ABI} ]] && rm -rf "${base}/${ABI}"; > mv "${D}/${dir}" "${base}/${ABI}"; > done; > if is_final_abi; then > base=${T}/gentoo-multilib; > pushd "${base}"; > find . | tar -c -T - -f - | tar -x --no-same-owner -f - -C ${D}; > popd; > set --; > for dir in ${dirs}; > do > set -- "$@" "${dir}"; > local abi; > for abi in $(get_install_abis); > do > set -- "$@" "$(get_abi_CDEFINE ${abi}):${dir}/gentoo-multilib/${abi}"; > done; > create_ml_includes "$@"; > done; > fi; > fi >} >preserve_old_lib () >{ > if [[ ${EBUILD_PHASE} != "preinst" ]]; then > eerror "preserve_old_lib() must be called from pkg_preinst() only"; > die "Invalid preserve_old_lib() usage"; > fi; > [[ -z $1 ]] && die "Usage: preserve_old_lib <library to preserve> [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 >} >qeerror () >{ > qout eerror "${@}" >} >qeinfo () >{ > qout einfo "${@}" >} >qout () >{ > local outputmsg type; > type=${1}; > shift; > outputmsg="${@}"; > case "${EBUILD_PHASE}" in > depend) > unset outputmsg > ;; > clean) > unset outputmsg > ;; > preinst) > unset outputmsg > ;; > esac; > [ -n "${outputmsg}" ] && ${type} "${outputmsg}" >} >remove_flag () >{ > local remove="${1}"; > shift; > while [[ -n "${1}" ]]; do > [[ "${1}" != "${remove}" ]] && echo -n "${1} "; > shift; > done >} >remove_moduledb () >{ > debug-print-function ${FUNCNAME} $*; > local MODULEDB_DIR=${ROOT}/var/lib/module-rebuild/; > move_old_moduledb; > if grep -qs ${CATEGORY}/${PN}-${PVR} ${MODULEDB_DIR}/moduledb; then > einfo "Removing ${CATEGORY}/${PN}-${PVR} from moduledb."; > sed -i -e "/.*${CATEGORY}\/${PN}-${PVR}.*/d" ${MODULEDB_DIR}/moduledb; > fi >} >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 >} >require_configured_kernel () >{ > if ! linux_config_exists; then > qeerror "Could not find a usable .config in the kernel source directory."; > qeerror "Please ensure that ${KERNEL_DIR} points to a configured set of Linux sources."; > qeerror "If you are using KBUILD_OUTPUT, please set the environment var so that"; > qeerror "it points to the necessary object directory so that it might find .config."; > die "Kernel not configured; no .config found in ${KV_OUT_DIR}"; > fi >} >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 >} >set_arch_to_kernel () >{ > export ARCH=$(tc-arch-kernel) >} >set_arch_to_portage () >{ > export ARCH=$(tc-arch) >} >set_kvobj () >{ > debug-print-function ${FUNCNAME} $*; > if kernel_is 2 6; then > KV_OBJ="ko"; > else > KV_OBJ="o"; > fi >} >src_compile () >{ > linux-mod_src_compile; > cd ${S}/shfsmount; > emake || die "failed to build userland utilities" >} >src_install () >{ > linux-mod_src_install; > cd ${S}/shfsmount; > dobin shfsmount; > dobin shfsumount; > if use amd; then > insinto /etc/amd; > doins ${FILESDIR}/amd.conf; > doins ${FILESDIR}/amd.shfs; > exeinto /etc/amd; > doexe ${FILESDIR}/shfs.mount; > dosym /etc/amd/shfs.mount /etc/amd/shfs.unmount; > fi; > einfo "Setting SUID bit on /usr/bin executables..."; > fperms 4511 /usr/bin/shfsmount; > fperms 4511 /usr/bin/shfsumount; > einfo "Adding /sbin/mount.shfs symlink..."; > dodir /sbin; > dosym /usr/bin/shfsmount /sbin/mount.shfs; > doman ${S}/docs/manpages/shfsmount.8 ${S}/docs/manpages/shfsumount.8; > use doc && dohtml -r ${S}/docs/html >} >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 () >{ > unpack ${A}; > cd ${S}; > epatch ${FILESDIR}/0.35/*.patch; > if [[ "${KV_MAJOR}.${KV_MINOR}" == "2.6" ]]; then > convert_to_m ${S}/shfs/Linux-2.6/Makefile; > fi; > if kernel_is ge 2 6 16; then > epatch ${FILESDIR}/${PN}-0.35-2.6.16-dentry.patch; > fi >} >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} >} >strip_modulenames () >{ > debug-print-function ${FUNCNAME} $*; > local i; > for i in ${MODULE_IGNORE}; > do > MODULE_NAMES=${MODULE_NAMES//${i}(*}; > done >} >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 >} >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 >} >update_depmod () >{ > debug-print-function ${FUNCNAME} $*; > get_version; > ebegin "Updating module dependencies for ${KV_FULL}"; > if [ -r ${KV_OUT_DIR}/System.map ]; then > depmod -ae -F ${KV_OUT_DIR}/System.map -b ${ROOT} -r ${KV_FULL}; > eend $?; > else > ewarn; > ewarn "${KV_OUT_DIR}/System.map not found."; > ewarn "You must manually update the kernel module dependencies using depmod."; > eend 1; > ewarn; > fi >} >update_moduledb () >{ > debug-print-function ${FUNCNAME} $*; > local MODULEDB_DIR=${ROOT}/var/lib/module-rebuild/; > move_old_moduledb; > if [[ ! -f ${MODULEDB_DIR}/moduledb ]]; then > [[ ! -d ${MODULEDB_DIR} ]] && mkdir -p ${MODULEDB_DIR}; > touch ${MODULEDB_DIR}/moduledb; > fi; > if ! grep -qs ${CATEGORY}/${PN}-${PVR} ${MODULEDB_DIR}/moduledb; then > einfo "Adding module to moduledb."; > echo "a:1:${CATEGORY}/${PN}-${PVR}" >> ${MODULEDB_DIR}/moduledb; > fi >} >update_modules () >{ > debug-print-function ${FUNCNAME} $*; > if [ -x /sbin/update-modules ] && grep -v -e "^#" -e "^$" ${D}/etc/modules.d/* > /dev/null 2>&1; then > ebegin "Updating modules.conf"; > /sbin/update-modules; > eend $?; > else > if [ -x /sbin/update-modules ] && grep -v -e "^#" -e "^$" ${D}/etc/modules.d/* > /dev/null 2>&1; then > ebegin "Updating modules.conf"; > /sbin/update-modules; > eend $?; > fi; > fi >} >use_m () >{ > debug-print-function ${FUNCNAME} $*; > get_version; > [ ${KV_MAJOR} -eq 2 -a ${KV_MINOR} -gt 5 -a ${KV_PATCH} -gt 5 ] && return 0 || return 1 >} >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="" >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 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 CEL="/opt/planeshift/cel/lib/cel-1.2" >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 CG_COMPILER_EXE="/usr/bin/cgc" >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=".:/usr/lib64/CMT/v1r20p20080222/java/cmt.jar" >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 COUNTER="7592" >declare -x CPLUS_INCLUDE_PATH="/root/System/Links/Headers:/usr/lib64/qt/include" >declare -x CRYSTAL="/opt/planeshift/crystalspace" >declare -x CRYSTAL_CONFIG="/opt/planeshift/crystalspace/etc/crystalspace-1.2" >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 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 GMTHOME="/usr/share/gmt-4.1.1" >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 portability versionator multilib linux-info linux-mod eutils" >declare -x INPUTRC="/etc/inputrc" >declare -x INPUT_DEVICES="keyboard mouse evdev" >declare -x INSDESTTREE="" >declare -x INSOPTIONS="-m0644" >declare -x JAVAC="/etc/java-config-2/current-system-vm/bin/javac" >declare -x JAVACC_HOME="/usr/share/javacc/" >declare -x JAVA_HOME="/etc/java-config-2/current-system-vm" >declare -x JDK_HOME="/etc/java-config-2/current-system-vm" >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="en_US.UTF-8" >declare -x LCD_DEVICES="" >declare -x LC_COLLATE="C" >declare -x LDFLAGS="" >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" >declare -x LESSCHARSET="latin1" >declare -x LIBDIR_amd64="lib64" >declare -x LIBDIR_default="lib" >declare -x LIBDIR_x86="lib32" >declare -x LIBGL_DRIVERS_PATH="/usr/lib64/dri:/usr/lib32/dri" >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/net-fs/shfs-0.35-r4/work/shfs-0.35" >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/net-fs/shfs-0.35-r4/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/net-fs/shfs-0.35-r4/homedir/.bash_history:/var/tmp/portage/net-fs/shfs-0.35-r4/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="X amd64 doc elibc_glibc kernel_linux userland_GNU" >declare -x USERLAND="GNU" >declare -x VIDEO_CARDS="" >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 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 XERCESC_NLS_HOME="/usr/share/xerces-c/msg" >declare -x XPVM_ROOT="/usr/local/pvm3/xpvm/src" >declare -x _E_DOCDESTTREE_="" >declare -x _E_EXEDESTTREE_="" >declare -x goboPrefix="/root" > > >--------------------------------- >This was my last "emerge --info" >--------------------------------- > > >Portage 2.2_pre6 (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: Thu, 15 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-r3 >dev-python/pycrypto: 2.0.1-r6 >dev-util/ccache: 2.4-r7 >sys-apps/baselayout: 2.0.0 >sys-apps/openrc: 0.2.4-r1 >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: 1.5.26 >virtual/os-headers: 2.6.25-r2 >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" >CEL="/opt/planeshift/cel/lib/cel-1.2" >CFLAGS="-O2 -pipe -march=opteron" >CFLAGS_x86="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" >CF_LIB="/usr/share/confluence" >CG_COMPILER_EXE="/usr/bin/cgc" >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" >CRYSTAL="/opt/planeshift/crystalspace" >CRYSTAL_CONFIG="/opt/planeshift/crystalspace/etc/crystalspace-1.2" >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 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="" >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" >LIBGL_DRIVERS_PATH="/usr/lib64/dri:/usr/lib32/dri" >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_FETCH_RESUME_MIN_SIZE="350K" >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" >TMAKEPATH="/usr/lib/tmake/linux-g++" >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" >XERCESC_NLS_HOME="/usr/share/xerces-c/msg" >XPVM_ROOT="/usr/local/pvm3/xpvm/src" >_="/usr/bin/emerge" >goboPrefix="/root" >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 222587
: 153489