aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMacRoot <root@mac>2013-01-12 18:49:53 +0100
committerMacRoot <root@mac>2013-01-12 18:49:53 +0100
commit5e541879abdbb36c4532db55b3615bc40042d1b6 (patch)
treea93b629e8d40c5b1ede0334bf8a80319742c529d
parentAdded local ebuilds from Aug 2007 - Feb 2012 (diff)
downloadAstroFloyd-5e541879abdbb36c4532db55b3615bc40042d1b6.tar.gz
AstroFloyd-5e541879abdbb36c4532db55b3615bc40042d1b6.tar.bz2
AstroFloyd-5e541879abdbb36c4532db55b3615bc40042d1b6.zip
Added all files to git repo
-rw-r--r--app-doc/doxygen/Manifest14
-rw-r--r--app-doc/doxygen/files/bsd-configure.patch16
-rw-r--r--app-doc/doxygen/files/doxygen-1.4.3-cp1251.patch35
-rw-r--r--app-doc/doxygen/files/doxygen-1.4.3-nls.patch15
-rw-r--r--app-doc/doxygen/files/doxygen-1.4.4-darwin.patch18
-rw-r--r--app-doc/doxygen/files/doxygen-1.5-legacy-patches.diff203
-rw-r--r--app-doc/doxygen/files/doxygen-1.5-qtlibdir.patch11
-rw-r--r--app-doc/doxygen/files/doxygen-1.5-system-libpng.patch105
-rw-r--r--app-doc/doxygen/files/doxygen-1.5.7.1-substitute.patch24
-rw-r--r--app-doc/doxygen/files/doxygen-1.5.8-fortran.patch105
-rw-r--r--app-doc/doxygen/files/doxygen-1.5.8-kdedocs.patch32
-rw-r--r--app-doc/doxygen/files/doxygen-gcc4.patch11
-rw-r--r--app-doc/doxygen/files/doxywizard.pngbin0 -> 4231 bytes
-rw-r--r--app-laptop/thinkfan/Manifest2
-rw-r--r--app-misc/i810switch/Manifest3
-rw-r--r--app-misc/i810switch/files/digest-i810switch-0.6.5-r23
-rw-r--r--app-misc/i810switch/files/i810switch-macbook-support.patch24
-rw-r--r--app-text/acroread/Manifest7
-rw-r--r--app-text/acroread/files/acroread-expr.patch21
-rw-r--r--app-text/acroread/files/acroread-low-startup-fontissue.patch11
-rw-r--r--app-text/acroread/files/acroread-scim.patch14
-rw-r--r--app-text/acroread/files/gentoo_config10
-rw-r--r--app-text/epubcheck/Manifest2
-rw-r--r--app-text/odf-converter-integrator-bin/Manifest2
-rw-r--r--dev-lang/g95/Manifest5
-rw-r--r--dev-lang/g95/eclass/g95.eclass295
-rw-r--r--dev-lang/g95/g95-0.90-libdir.patch21
-rw-r--r--dev-lang/g95/g95.eclass295
-rw-r--r--dev-python/tweepy/Manifest2
-rw-r--r--dev-util/cmake/Manifest19
-rw-r--r--dev-util/cmake/cmake-2.8.8-r3.ebuild178
-rw-r--r--dev-util/cmake/files/50cmake-gentoo.el4
-rw-r--r--dev-util/cmake/files/cmake-2.6.3-darwin-bundle.patch23
-rw-r--r--dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch39
-rw-r--r--dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch19
-rw-r--r--dev-util/cmake/files/cmake-2.8.0-darwin-default-install_name.patch20
-rw-r--r--dev-util/cmake/files/cmake-2.8.1-libform.patch50
-rw-r--r--dev-util/cmake/files/cmake-2.8.4-FindPythonLibs.patch12
-rw-r--r--dev-util/cmake/files/cmake-2.8.7-FindBLAS.patch45
-rw-r--r--dev-util/cmake/files/cmake-2.8.7-FindBoost-python.patch73
-rw-r--r--dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch44
-rw-r--r--dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch18
-rw-r--r--dev-util/cmake/files/cmake-2.8.8-more-no_host_paths.patch113
-rw-r--r--dev-util/cmake/files/cmake-2.8.8-pkgconfig.patch62
-rw-r--r--dev-util/cmake/files/cmake-2.8.8-tests.patch58
-rw-r--r--dev-util/cmake/files/cmake-2.8.9-more-no_host_paths.patch133
-rw-r--r--dev-util/cmake/files/cmake-2.8.9-tests.patch81
-rw-r--r--dev-util/cmake/files/cmake.vim3
-rw-r--r--dev-util/ndiff/ChangeLog11
-rw-r--r--dev-util/ndiff/Manifest4
-rw-r--r--dev-util/ndiff/metadata.xml9
-rw-r--r--gnome-extra/nautilus-dropbox/Manifest2
-rw-r--r--kde-base/okular/Manifest2
-rw-r--r--kde-base/okular/okular-4.7.4.ebuild44
-rw-r--r--kde-base/pykde4/Manifest7
-rw-r--r--kde-base/pykde4/files/kpythonpluginfactorywrapper.c52
-rw-r--r--kde-base/pykde4/files/kpythonpluginfactorywrapper.c-r160
-rw-r--r--kde-base/pykde4/files/pykde4-4.4.4-arm-sip.patch22
-rw-r--r--kde-base/pykde4/files/pykde4-4.6.3-python-3.2.patch17
-rw-r--r--kde-base/pykde4/files/pykde4-4.9.2-pyqt45.patch54
-rw-r--r--kde-base/pykde4/pykde4-4.7.4.ebuild158
-rw-r--r--kde-misc/akonadi-googledata/ChangeLog4
-rw-r--r--kde-misc/akonadi-googledata/Manifest5
-rw-r--r--kde-misc/akonadi-googledata/metadata.xml5
-rw-r--r--kde-misc/kdnssd-avahi/Manifest3
-rw-r--r--kde-misc/ksynaptics/Manifest2
-rw-r--r--kde-misc/touchfreeze/Manifest2
-rw-r--r--media-gfx/tex2im/Manifest2
-rw-r--r--media-video/nvidia-settings/Manifest2
-rw-r--r--net-im/skype/Manifest3
-rw-r--r--net-misc/networkmanager/ChangeLog197
-rw-r--r--net-misc/networkmanager/Manifest10
-rw-r--r--net-misc/networkmanager/files/NetworkManagerDispatcher48
-rw-r--r--net-misc/networkmanager/files/networkmanager-0.6.5-confchanges.patch21
-rw-r--r--net-misc/networkmanager/files/networkmanager-memoryleak_MvdS.patch14
-rw-r--r--net-misc/networkmanager/files/networkmanager-resolvconf-perms.patch19
-rw-r--r--net-misc/networkmanager/files/networkmanager-updatedbackend.patch657
-rw-r--r--net-misc/networkmanager/files/networkmanager-use-kernel-headers.patch12
-rw-r--r--net-misc/networkmanager/metadata.xml13
-rw-r--r--net-wireless/madwifi-ng-tools/Manifest2
-rw-r--r--net-wireless/madwifi-ng/Manifest2
-rw-r--r--profiles/repo_name1
-rw-r--r--sci-astronomy/amuse/Manifest2
-rw-r--r--sci-astronomy/analysemcmc/Manifest2
-rw-r--r--sci-astronomy/evtools/Manifest2
-rw-r--r--sci-astronomy/gwtool/Manifest2
-rw-r--r--sci-astronomy/spinspiral/Manifest2
-rw-r--r--sci-calculators/gfm/Manifest2
-rw-r--r--sci-calculators/qalculate-kde/Manifest4
-rw-r--r--sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-cln-config.patch32
-rw-r--r--sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-remove-link.patch30
-rw-r--r--sci-libs/fgsl/Manifest10
-rw-r--r--sci-libs/fgsl/fgsl-0.9.1.ebuild.tar.bz2bin0 -> 1525 bytes
-rw-r--r--sci-libs/fgsl/fgsl-0.9.ebuild.tar.bz2bin0 -> 1683 bytes
-rw-r--r--sci-libs/fgsl/files/fgsl-0.9-Makefile.patch45
-rw-r--r--sci-libs/fgsl/files/fgsl-0.9-configure.patch22
-rw-r--r--sci-libs/fgsl/files/fgsl-0.9.1-Makefile.patch21
-rw-r--r--sci-libs/fgsl/files/fgsl-0.9.1-configure.patch23
-rw-r--r--sci-libs/k3match/ChangeLog10
-rw-r--r--sci-libs/k3match/Manifest4
-rw-r--r--sci-libs/k3match/metadata.xml9
-rw-r--r--sci-libs/lal/Manifest10
-rw-r--r--sci-libs/lalframe/Manifest2
-rw-r--r--sci-libs/lalinference/Manifest2
-rw-r--r--sci-libs/lalinspiral/Manifest3
-rw-r--r--sci-libs/lalinspiral/files/lalinspiral-1.1.0-NRWaveInject.patch20
-rw-r--r--sci-libs/lalmetaio/Manifest6
-rw-r--r--sci-libs/lalxml/Manifest2
-rw-r--r--sci-libs/libframe/Manifest6
-rw-r--r--sci-libs/libsufr/ChangeLog18
-rw-r--r--sci-libs/libsufr/Manifest6
-rw-r--r--sci-libs/libsufr/metadata.xml13
-rw-r--r--sci-libs/metaio/Manifest4
-rw-r--r--sci-libs/pg2plplot/Manifest4
-rw-r--r--sci-libs/pg2plplot/pg2plplot-0.2.0.ebuild37
-rw-r--r--sci-libs/pgplot/000_readme.txt13
-rw-r--r--sci-libs/pgplot/ChangeLog87
-rw-r--r--sci-libs/pgplot/Manifest13
-rw-r--r--sci-libs/pgplot/files/pgplot-compile-setup.patch96
-rw-r--r--sci-libs/pgplot/files/pgplot-drivers-nox.patch50
-rw-r--r--sci-libs/pgplot/files/pgplot-drivers-ppmonly.patch36
-rw-r--r--sci-libs/pgplot/files/pgplot-drivers.patch61
-rw-r--r--sci-libs/pgplot/files/pgplot-headers.patch109
-rw-r--r--sci-libs/pgplot/files/pgplot-ldflags.patch20
-rw-r--r--sci-libs/pgplot/files/pgplot-makemake.patch143
-rw-r--r--sci-libs/pgplot/files/pgplot-pgdisp.patch11
-rw-r--r--sci-libs/pgplot/metadata.xml12
-rw-r--r--sci-libs/plplot/ChangeLog119
-rw-r--r--sci-libs/plplot/Manifest7
-rw-r--r--sci-libs/plplot/files/plplot-5.9.0-python.patch11
-rw-r--r--sci-libs/plplot/metadata.xml24
-rw-r--r--sys-devel/gcc/Manifest56
-rw-r--r--sys-devel/gcc/files/3.2.1/gcc31-loop-load-final-value.patch79
-rw-r--r--sys-devel/gcc/files/3.2.1/gcc32-arm-disable-mathf.patch142
-rw-r--r--sys-devel/gcc/files/3.2.1/gcc32-arm-reload1-fix.patch21
-rw-r--r--sys-devel/gcc/files/3.2.1/gcc32-athlon-alignment.patch11
-rw-r--r--sys-devel/gcc/files/3.2.1/gcc32-sparc32-hack.patch66
-rw-r--r--sys-devel/gcc/files/3.2.1/gcc32-strip-dotdot.patch84
-rw-r--r--sys-devel/gcc/files/3.2.2/gcc-3.2.2-cross-compile.patch11
-rw-r--r--sys-devel/gcc/files/3.2.2/gcc-3.2.2-no-COPYING-cross-compile.patch40
-rw-r--r--sys-devel/gcc/files/3.2.2/gcc32-pr7768.patch65
-rw-r--r--sys-devel/gcc/files/3.2.2/gcc32-pr8213.patch69
-rw-r--r--sys-devel/gcc/files/3.2.2/gcc322-ggc_page-speedup.patch17
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc-3.2.3-mergel-fix.patch61
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch120
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch41
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc-323-propolice-version.patch17
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc32-c++-classfn-member-template.patch108
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc32-mklibgcc-serialize-crtfiles.patch27
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc323-gentoo-branding.patch42
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc323-hppa-default_assemble_visibility.patch17
-rw-r--r--sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch22
-rw-r--r--sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch62
-rw-r--r--sys-devel/gcc/files/3.4.0/gcc-3.4.0-cc1-no-stack-protector.patch11
-rw-r--r--sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n32only.patch17
-rw-r--r--sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n64only.patch17
-rw-r--r--sys-devel/gcc/files/3.4.1/gcc-3.4.1-r2-gentoo-branding.patch17
-rw-r--r--sys-devel/gcc/files/3.4.2/gcc-3.4.2-mips-ip28_cache_barriers-v4.patch366
-rw-r--r--sys-devel/gcc/files/3.4.2/gcc-3.4.x-mips-add-march-r10k.patch460
-rw-r--r--sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch40
-rw-r--r--sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch40
-rw-r--r--sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch63
-rw-r--r--sys-devel/gcc/files/3.4.4/gcc-3.4.4-softfloat.patch156
-rw-r--r--sys-devel/gcc/files/4.0.2/gcc-4.0.2-cross-compile.patch40
-rw-r--r--sys-devel/gcc/files/4.0.2/gcc-4.0.2-softfloat.patch84
-rw-r--r--sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch40
-rw-r--r--sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch64
-rw-r--r--sys-devel/gcc/files/4.3.2/gcc-4.3.2-softfloat.patch88
-rw-r--r--sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch89
-rw-r--r--sys-devel/gcc/files/awk/fixlafiles.awk314
-rw-r--r--sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la335
-rwxr-xr-xsys-devel/gcc/files/c8920
-rwxr-xr-xsys-devel/gcc/files/c9921
-rw-r--r--sys-devel/gcc/files/fix_libtool_files.sh68
-rw-r--r--sys-devel/gcc/files/gcc-configure-LANG.patch64
-rw-r--r--sys-devel/gcc/files/gcc-configure-texinfo.patch16
-rw-r--r--sys-devel/gcc/files/gcc-spec-env.patch42
-rw-r--r--sys-devel/gcc/files/gfortran-unused-mod-namelist.patch52
-rw-r--r--sys-devel/gcc/files/gfortran-unused-mod-namelist.patch.152
-rwxr-xr-xsys-devel/gcc/files/mkinfodir233
-rw-r--r--sys-devel/gcc/files/pro-police-docs.patch74
-rw-r--r--sys-devel/gcc/gcc-4.7.2-r99.ebuild67
-rw-r--r--sys-kernel/gentoo-sources/Manifest83
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-3.3.8.ebuild29
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-3.4.9.ebuild29
-rw-r--r--www-apps/redmine/Manifest4
-rw-r--r--www-apps/redmine/files/10_redmine_vhost.conf12
-rw-r--r--x11-base/xorg-drivers/Manifest2
-rw-r--r--x11-base/xorg-server/Manifest10
-rw-r--r--x11-base/xorg-server/files/xdm-setup.initd-114
-rw-r--r--x11-base/xorg-server/files/xdm.confd-316
-rw-r--r--x11-base/xorg-server/files/xdm.initd-3218
-rw-r--r--x11-base/xorg-server/files/xorg-cve-2011-4028+4029.patch22
-rw-r--r--x11-base/xorg-server/files/xorg-server-1.9-nouveau-default.patch30
-rw-r--r--x11-base/xorg-server/files/xorg-server-disable-acpi.patch31
-rw-r--r--x11-base/xorg-server/files/xorg-sets.conf6
-rw-r--r--x11-drivers/nvidia-drivers/Manifest7
-rw-r--r--x11-drivers/nvidia-drivers/files/256.35-unified-arch.patch31
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-169.0714
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-drivers-260.19.44-2.6.39.patch14
200 files changed, 9633 insertions, 0 deletions
diff --git a/app-doc/doxygen/Manifest b/app-doc/doxygen/Manifest
new file mode 100644
index 0000000..4175ef6
--- /dev/null
+++ b/app-doc/doxygen/Manifest
@@ -0,0 +1,14 @@
+AUX bsd-configure.patch 504 RMD160 4d3321c677bbfcae2c25c7937ef015ff41812594 SHA1 df68c4be15c41b02c822364b5f54214ce65b3fc0 SHA256 8aa47622750701cd492b35e8037b3b8a5ed1c13e564d0a0081a09877717b9cf1
+AUX doxygen-1.4.3-cp1251.patch 683 RMD160 732924265c1ae02cb1d66ad8857e5969f2285751 SHA1 9dbaffced9b125258529fd8290c1aa33ad76f99f SHA256 782c207692ff691936d010f5c8e25858722e29a9a23ee940305aeb38f2b23e8e
+AUX doxygen-1.4.3-nls.patch 1019 RMD160 e8899cc8c20ee501c57106c065926624c28669a1 SHA1 086b81341bd81e6b589356896ed9379663226496 SHA256 44a603217bb38844bdb7ed13396fd3bfd96e36763952354c10e706dab788e5c7
+AUX doxygen-1.4.4-darwin.patch 536 RMD160 367a923f0ddda5f52487896d86301aaef7328ddb SHA1 230823cec84a2ea7bc0986f1f22f52856a522848 SHA256 a7a0ff21dbff292e389d7c5a6ce26b7059ea8bf3aebc2187a78b88afc3f49b41
+AUX doxygen-1.5-legacy-patches.diff 7242 RMD160 0100a2305101b392764eaf867a32e0d14dcf9208 SHA1 bb564532f157e72436e0c8ecbbed163d96db3674 SHA256 f696c10fe571d281ed8178e7a07864c7a5bba9cc21ac723ee9669ac32e43e114
+AUX doxygen-1.5-qtlibdir.patch 354 RMD160 9c9491d89379f1e68e57722be438ce6af80110cd SHA1 7a26ec0fdc2dd22f97c1fd2acad21188137c71b2 SHA256 602038066a93ffd163c7f18b15362a9f2443bb7e842675d7de81bf5026ca9c2e
+AUX doxygen-1.5-system-libpng.patch 5332 RMD160 cfa7709a0f867609cf149407d19df2ecf53af750 SHA1 9b0547b64fd9b15406a72b18fe19673f784c50f9 SHA256 5800013e75e3fdb4a6dbc513a25393ec9cef0dfa412032c1c3de562829ddaeab
+AUX doxygen-1.5.7.1-substitute.patch 656 RMD160 3730347b9fba4ceef96b6852c164ca4c9037c250 SHA1 e470ee8ede9293cda8ef00d059ca338c725e8523 SHA256 204f140187865c9eb5ca76a421cf1271dfb696858269477468bd605070bd41fd
+AUX doxygen-1.5.8-fortran.patch 5473 RMD160 980c815a91b5bc68509a7e12a49e278bae2bda30 SHA1 d37eae8979684ea9313916d780d5a9980f01c909 SHA256 451ba5124f721ca5e69d2a236dc281f6664c67ef830a43f2ba7bac7738c6c6aa
+AUX doxygen-1.5.8-kdedocs.patch 854 RMD160 945e07ab7f5f168d63f5a99423a56d9b12477df8 SHA1 5e987c64b95500441a668fd4912db32714de495d SHA256 48703fc843633e774e05c64e6903badfd74f456f7099399d44b3150f9b964e6c
+AUX doxygen-gcc4.patch 267 RMD160 f96f301331db451247fc1fb061f35e173ec1cff8 SHA1 ac7ed139251d87876e67b3e5ce04652b3ac27795 SHA256 df914a5303499c5293c0fcec3e126260157a15bbdc605040d4161ef9599fa2ce
+AUX doxywizard.png 4231 RMD160 b194049b42aad3466a5ef9c69ff3504536223dae SHA1 0902260c7169e60a504b29feec419b3a4183081f SHA256 eb648ebd3a194a56d9ed6e47cc8dbf1af2e124d83c2c42af9bf86bd837984209
+DIST doxygen-1.5.8.src.tar.gz 4125837 RMD160 e392cd00960c4036661c8cda3ec6bc6ee3fe300c SHA1 a55b1c41417be8acb3ac5e1553a711ffa437cba2 SHA256 01540aaf7e929e7784e3392331f2c915480acb174a16e8652855d90965f44ff8
+EBUILD doxygen-1.5.8-r99.ebuild 5348 RMD160 9b7fb0df8722cba24c6a2e0b3cd7a1e2f204ef81 SHA1 7a76deafbf5a29009bec5a3c226fd4a92d1eac71 SHA256 045f0df54133415ba491e64f03e19c59a810f33d575f58deaae801f1a1e9c827
diff --git a/app-doc/doxygen/files/bsd-configure.patch b/app-doc/doxygen/files/bsd-configure.patch
new file mode 100644
index 0000000..fce643f
--- /dev/null
+++ b/app-doc/doxygen/files/bsd-configure.patch
@@ -0,0 +1,16 @@
+--- doxygen-1.4.1/configure.orig Fri Feb 18 23:13:20 2005
++++ doxygen-1.4.1/configure Fri Feb 18 23:13:37 2005
+@@ -305,11 +305,11 @@
+ for i in $install_names; do
+ for j in $install_dirs; do
+ if test -x "$j/$i"; then
+- if test -n "`$j/$i --version 2>/dev/null | grep utils`"; then
++ #if test -n "`$j/$i --version 2>/dev/null | grep utils`"; then
+ install_found=YES
+ install_prog="$j/$i"
+ break 2
+- fi
++ #fi
+ fi
+ done
+ done
diff --git a/app-doc/doxygen/files/doxygen-1.4.3-cp1251.patch b/app-doc/doxygen/files/doxygen-1.4.3-cp1251.patch
new file mode 100644
index 0000000..0ffed14
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.4.3-cp1251.patch
@@ -0,0 +1,35 @@
+--- qtools/qtextcodec.cpp.orig 2003-12-14 14:00:57.000000000 -0800
++++ qtools/qtextcodec.cpp 2005-05-29 19:13:17.000000000 -0700
+@@ -1321,7 +1321,7 @@
+
+
+
+-#ifndef QT_NO_CODECS
++// #ifndef QT_NO_CODECS
+
+ class QSimpleTextCodec: public QTextCodec
+ {
+@@ -1948,7 +1948,7 @@
+ }
+
+
+-#endif // QT_NO_CODECS
++// #endif // QT_NO_CODECS
+
+ class QLatin1Codec: public QTextCodec
+ {
+@@ -2048,12 +2048,13 @@
+ {
+ (void)new QLatin1Codec;
+
+-#ifndef QT_NO_CODECS
++
+ int i = 0;
+ do {
+ (void)new QSimpleTextCodec( i );
+ } while( unicodevalues[i++].mib != LAST_MIB );
+
++#ifndef QT_NO_CODECS
+ (void)new QEucJpCodec;
+ (void)new QSjisCodec;
+ (void)new QJisCodec;
diff --git a/app-doc/doxygen/files/doxygen-1.4.3-nls.patch b/app-doc/doxygen/files/doxygen-1.4.3-nls.patch
new file mode 100644
index 0000000..9c863da
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.4.3-nls.patch
@@ -0,0 +1,15 @@
+--- Makefile.in.old 2005-06-10 12:23:32.000000000 +0900
++++ Makefile.in 2005-06-10 12:23:52.000000000 +0900
+@@ -53,9 +53,9 @@
+ $(INSTTOOL) -m 755 bin/doxygen $(INSTALL)/bin
+ $(INSTTOOL) -m 755 bin/doxytag $(INSTALL)/bin
+ $(INSTTOOL) -d $(INSTALL)/$(MAN1DIR)
+- cat doc/doxygen.1 | sed -e "s/DATE/\$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > $(INSTALL)/$(MAN1DIR)/doxygen.1 ; \
+- cat doc/doxytag.1 | sed -e "s/DATE/\$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > $(INSTALL)/$(MAN1DIR)/doxytag.1 ; \
+- cat doc/doxywizard.1 | sed -e "s/DATE/\$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > $(INSTALL)/$(MAN1DIR)/doxywizard.1 ;
++ cat doc/doxygen.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > $(INSTALL)/$(MAN1DIR)/doxygen.1 ; \
++ cat doc/doxytag.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > $(INSTALL)/$(MAN1DIR)/doxytag.1 ; \
++ cat doc/doxywizard.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > $(INSTALL)/$(MAN1DIR)/doxywizard.1 ;
+
+ install_docs:
+ $(INSTTOOL) -d $(DOCDIR)
diff --git a/app-doc/doxygen/files/doxygen-1.4.4-darwin.patch b/app-doc/doxygen/files/doxygen-1.4.4-darwin.patch
new file mode 100644
index 0000000..8df74b8
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.4.4-darwin.patch
@@ -0,0 +1,18 @@
+--- doxygen-1.4.4/tmake/lib/macosx-c++/tmake.conf.orig 2005-10-08 18:06:08.000000000 +0200
++++ doxygen-1.4.4/tmake/lib/macosx-c++/tmake.conf 2005-10-08 18:17:33.000000000 +0200
+@@ -36,13 +36,12 @@
+
+ TMAKE_LINK = c++
+ TMAKE_LINK_SHLIB = c++
+-TMAKE_LFLAGS =
++TMAKE_LFLAGS = -Wl,-search_paths_first
+ TMAKE_LFLAGS_RELEASE =
+ TMAKE_LFLAGS_DEBUG =
+ TMAKE_LFLAGS_SHLIB = -shared
+
+-# soname does not work on fbsd 2.x
+-#TMAKE_LFLAGS_SONAME = -Wl,-soname
++TMAKE_LFLAGS_SONAME = -dynamiclib -install_name
+
+ TMAKE_LIBS =
+ TMAKE_LIBS_X11 =
diff --git a/app-doc/doxygen/files/doxygen-1.5-legacy-patches.diff b/app-doc/doxygen/files/doxygen-1.5-legacy-patches.diff
new file mode 100644
index 0000000..2ceb262
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.5-legacy-patches.diff
@@ -0,0 +1,203 @@
+--- qtools/qtextcodec.cpp.orig 2003-12-14 14:00:57.000000000 -0800
++++ qtools/qtextcodec.cpp 2005-05-29 19:13:17.000000000 -0700
+@@ -1321,7 +1321,7 @@
+
+
+
+-#ifndef QT_NO_CODECS
++// #ifndef QT_NO_CODECS
+
+ class QSimpleTextCodec: public QTextCodec
+ {
+@@ -1948,7 +1948,7 @@
+ }
+
+
+-#endif // QT_NO_CODECS
++// #endif // QT_NO_CODECS
+
+ class QLatin1Codec: public QTextCodec
+ {
+@@ -2048,12 +2048,13 @@
+ {
+ (void)new QLatin1Codec;
+
+-#ifndef QT_NO_CODECS
++
+ int i = 0;
+ do {
+ (void)new QSimpleTextCodec( i );
+ } while( unicodevalues[i++].mib != LAST_MIB );
+
++#ifndef QT_NO_CODECS
+ (void)new QEucJpCodec;
+ (void)new QSjisCodec;
+ (void)new QJisCodec;
+--- doxygen-1.4.6.orig/debian/patches/system-libpng.dpatch
++++ doxygen-1.4.6/debian/patches/system-libpng.dpatch
+@@ -0,0 +1,121 @@
++#! /bin/sh -e
++
++# DP: Use the system libpng library
++
++dir=
++if [ $# -eq 3 -a "$2" = '-d' ]; then
++ pdir="-d $3"
++ dir="$3/"
++elif [ $# -ne 1 ]; then
++ echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++ exit 1
++fi
++case "$1" in
++ -patch)
++ patch $pdir -f --no-backup-if-mismatch -p1 < $0
++ ;;
++ -unpatch)
++ patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
++ ;;
++ *)
++ echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++ exit 1
++esac
++exit 0
++
++diff -u ./src/pngenc.cpp.orig ./src/pngenc.cpp
++--- ./src/pngenc.cpp.orig 2004-01-06 04:40:25.000000000 +0100
+++++ ./src/pngenc.cpp 2004-09-21 09:04:40.000000000 +0200
++@@ -25,7 +25,7 @@
++ #endif
++
++ #define ALL_STATIC
++-#include <../libpng/png.h>
+++#include <png.h>
++ #include <stdio.h>
++ #include <stdlib.h>
++ #include <string.h>
++diff -u ./Makefile.in.orig ./Makefile.in
++--- ./Makefile.in.orig 2003-11-13 04:40:21.000000000 +0100
+++++ ./Makefile.in 2004-09-21 09:04:40.000000000 +0200
++@@ -7,7 +7,6 @@
++ cd doc ; $(MAKE) clean
++ cd qtools ; $(MAKE) clean
++ cd src ; $(MAKE) clean
++- cd libpng ; $(MAKE) clean
++ cd libmd5 ; $(MAKE) clean
++ cd addon/doxywizard ; $(MAKE) clean
++ cd addon/doxmlparser/src ; $(MAKE) clean
++@@ -18,7 +17,6 @@
++
++ distclean: clean
++ cd src ; $(MAKE) distclean
++- cd libpng ; $(MAKE) distclean
++ cd libmd5 ; $(MAKE) distclean
++ cd addon/doxywizard ; $(MAKE) distclean
++ cd addon/doxmlparser/src ; $(MAKE) distclean
++@@ -31,11 +29,10 @@
++ -rm -f objects/*.o
++ -rm -f src/Makefile.doxygen src/Makefile.libdoxygen
++ -rm -f src/Makefile.doxytag src/Makefile.libdoxycfg
++- -rm -f libpng/Makefile.libpng
++ -rm -f libmd5/Makefile.libmd5
++ -rm -f Makefile qtools/Makefile src/Makefile examples/Makefile doc/Makefile
++ -rm -f .makeconfig .tmakeconfig
++- -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro qtools/qtools.pro src/libdoxycfg.pro libpng/libpng.pro libmd5/libmd5.pro
+++ -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro qtools/qtools.pro src/libdoxycfg.pro libmd5/libmd5.pro
++ -rm -f src/version.cpp
++ -rm -r addon/doxywizard/Makefile
++ -rm -f addon/doxywizard/Makefile.doxywizard
++diff -u ./configure.orig ./configure
++--- ./configure.orig 2004-09-14 04:40:12.000000000 +0200
+++++ ./configure 2004-09-21 09:09:06.000000000 +0200
++@@ -457,7 +457,7 @@
++ EOF
++ fi
++
++-f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in addon/doxmlparser/examples/metrics/Makefile.in libpng/Makefile.in libmd5/Makefile.in"
+++f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in addon/doxmlparser/examples/metrics/Makefile.in libmd5/Makefile.in"
++
++ for i in $f_inmakefiles ; do
++ SRC=$i
++@@ -474,7 +474,6 @@
++ echo "" >> $DST
++ echo "all: src/version.cpp " >> $DST
++ echo " \$(MAKE) -C qtools" >> $DST
++- echo " \$(MAKE) -C libpng" >> $DST
++ echo " \$(MAKE) -C libmd5" >> $DST
++ echo " \$(MAKE) -C src" >> $DST
++ if test $f_wizard = YES; then
++@@ -491,7 +490,7 @@
++ echo " Created $DST from $SRC..."
++ done
++
++-f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in addon/doxmlparser/test/xmlparse.pro.in addon/doxmlparser/examples/metrics/metrics.pro.in libpng/libpng.pro.in libmd5/libmd5.pro.in"
+++f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in addon/doxmlparser/test/xmlparse.pro.in addon/doxmlparser/examples/metrics/metrics.pro.in libmd5/libmd5.pro.in"
++
++ for i in $f_inprofiles ; do
++ SRC=$i
++diff -u ./src/doxygen.pro.in.orig ./src/doxygen.pro.in
++--- ./src/doxygen.pro.in.orig 2004-05-18 04:40:13.000000000 +0200
+++++ ./src/doxygen.pro.in 2004-09-21 09:58:06.000000000 +0200
++@@ -28,7 +28,7 @@
++ win32:TMAKE_CXXFLAGS += -DQT_NODLL
++ win32-g++:LIBS = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
++ win32-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti
++-INCLUDEPATH += ../qtools ../libpng ../libmd5 .
+++INCLUDEPATH += ../qtools ../libmd5 .
++ #win32-g++:INCLUDEPATH -= ../libpng
++ DESTDIR = ../bin
++ TARGET = doxygen
++diff -u ./src/libdoxygen.pro.in.orig ./src/libdoxygen.pro.in
++--- ./src/libdoxygen.pro.in.orig 2004-08-25 04:40:18.000000000 +0200
+++++ ./src/libdoxygen.pro.in 2004-09-21 09:58:55.000000000 +0200
++@@ -189,7 +189,6 @@
++ win32-msvc:TMAKE_CXXFLAGS += -Zm200
++ win32-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti
++ INCLUDEPATH += ../qtools
++-INCLUDEPATH += ../libpng
++ INCLUDEPATH += ../libmd5
++ win32:INCLUDEPATH += .
++ win32-g++:INCLUDEPATH = ../qtools /usr/include/libpng12 ../libmd5
+--- doxygen-1.4.6.orig/debian/patches/qstring-gcc40.dpatch
++++ doxygen-1.4.6/debian/patches/qstring-gcc40.dpatch
+@@ -0,0 +1,41 @@
++#! /bin/sh -e
++
++# DP: Remove unused code that does not build with gcc 4.0 (#338099).
++
++dir=
++if [ $# -eq 3 -a "$2" = '-d' ]; then
++ pdir="-d $3"
++ dir="$3/"
++elif [ $# -ne 1 ]; then
++ echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++ exit 1
++fi
++case "$1" in
++ -patch)
++ patch $pdir -f --no-backup-if-mismatch -p0 < $0
++ ;;
++ -unpatch)
++ patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
++ ;;
++ *)
++ echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++ exit 1
++esac
++exit 0
++
++--- qtools/qstring.h.orig 2004-12-01 19:26:16.000000000 +0000
+++++ qtools/qstring.h 2005-12-04 20:09:01.000000000 +0000
++@@ -163,8 +163,13 @@
++ bool isLetterOrNumber() const;
++ bool isDigit() const;
++
+++ // the non-const ::cell and ::row cannot be compiled with gcc 4.0 on ARM,
+++ // so they have been removed; the methods are not needed for doxygen
+++#if 0
++ uchar& cell() { return cl; }
++ uchar& row() { return rw; }
+++#endif
+++
++ uchar cell() const { return cl; }
++ uchar row() const { return rw; }
++
diff --git a/app-doc/doxygen/files/doxygen-1.5-qtlibdir.patch b/app-doc/doxygen/files/doxygen-1.5-qtlibdir.patch
new file mode 100644
index 0000000..34aaef4
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.5-qtlibdir.patch
@@ -0,0 +1,11 @@
+--- configure.orig 2008-02-15 18:40:57.000000000 -0800
++++ configure 2008-02-15 19:06:13.000000000 -0800
+@@ -276,6 +276,8 @@
+ echo "QTDIR is set to $QTDIR, but library directory $QTDIR/lib does not exist!"
+ exit 2
+ fi
++ fi
++ if test -d "$QTDIR/lib64"; then
+ LIBDIR=lib64
+ fi
+ if test ! -d "$QTDIR/include"; then
diff --git a/app-doc/doxygen/files/doxygen-1.5-system-libpng.patch b/app-doc/doxygen/files/doxygen-1.5-system-libpng.patch
new file mode 100644
index 0000000..dbd95b8
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.5-system-libpng.patch
@@ -0,0 +1,105 @@
+diff -ur doxygen-1.5.1/configure doxygen-fixed/configure
+--- doxygen-1.5.1/configure 2006-11-01 22:52:27.711364356 +0200
++++ doxygen-fixed/configure 2006-11-01 22:54:09.086952924 +0200
+@@ -525,7 +525,7 @@
+ EOF
+ fi
+
+-f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in addon/doxmlparser/examples/metrics/Makefile.in libpng/Makefile.in libmd5/Makefile.in addon/doxyapp/Makefile.in"
++f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in addon/doxmlparser/examples/metrics/Makefile.in libmd5/Makefile.in addon/doxyapp/Makefile.in"
+
+ for i in $f_inmakefiles ; do
+ SRC=$i
+@@ -542,7 +542,6 @@
+ echo "" >> $DST
+ echo "all: src/version.cpp " >> $DST
+ echo " \$(MAKE) -C qtools" >> $DST
+- echo " \$(MAKE) -C libpng" >> $DST
+ echo " \$(MAKE) -C libmd5" >> $DST
+ echo " \$(MAKE) -C src" >> $DST
+ if test $f_wizard = YES; then
+@@ -562,7 +561,7 @@
+ echo " Created $DST from $SRC..."
+ done
+
+-f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in addon/doxmlparser/test/xmlparse.pro.in addon/doxmlparser/examples/metrics/metrics.pro.in libpng/libpng.pro.in libmd5/libmd5.pro.in addon/doxyapp/doxyapp.pro.in"
++f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in addon/doxmlparser/test/xmlparse.pro.in addon/doxmlparser/examples/metrics/metrics.pro.in libmd5/libmd5.pro.in addon/doxyapp/doxyapp.pro.in"
+
+ for i in $f_inprofiles ; do
+ SRC=$i
+diff -ur doxygen-1.5.1/Makefile.in doxygen-fixed/Makefile.in
+--- doxygen-1.5.1/Makefile.in 2006-11-01 22:52:31.257825212 +0200
++++ doxygen-fixed/Makefile.in 2006-11-01 22:53:44.182738940 +0200
+@@ -7,7 +7,6 @@
+ cd doc ; $(MAKE) clean
+ cd qtools ; $(MAKE) clean
+ cd src ; $(MAKE) clean
+- cd libpng ; $(MAKE) clean
+ cd libmd5 ; $(MAKE) clean
+ cd addon/doxywizard ; $(MAKE) clean
+ cd addon/doxmlparser/src ; $(MAKE) clean
+@@ -18,7 +17,6 @@
+
+ distclean: clean
+ cd src ; $(MAKE) distclean
+- cd libpng ; $(MAKE) distclean
+ cd libmd5 ; $(MAKE) distclean
+ cd addon/doxywizard ; $(MAKE) distclean
+ cd addon/doxmlparser/src ; $(MAKE) distclean
+@@ -32,11 +30,10 @@
+ -rm -f objects/*.o
+ -rm -f src/Makefile.doxygen src/Makefile.libdoxygen
+ -rm -f src/Makefile.doxytag src/Makefile.libdoxycfg
+- -rm -f libpng/Makefile.libpng
+ -rm -f libmd5/Makefile.libmd5
+ -rm -f Makefile qtools/Makefile src/Makefile examples/Makefile doc/Makefile
+ -rm -f .makeconfig .tmakeconfig
+- -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro qtools/qtools.pro src/libdoxycfg.pro libpng/libpng.pro libmd5/libmd5.pro
++ -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro qtools/qtools.pro src/libdoxycfg.pro libmd5/libmd5.pro
+ -rm -f src/version.cpp
+ -rm -r addon/doxywizard/Makefile
+ -rm -f addon/doxywizard/Makefile.doxywizard
+@@ -81,7 +78,7 @@
+ pdf: docs
+ cd latex ; $(MAKE)
+
+-DISTFILES = Doxyfile libpng libmd5 addon tmake doc wintools examples bin lib objects \
++DISTFILES = Doxyfile libmd5 addon tmake doc wintools examples bin lib objects \
+ qtools src configure configure.bin Makefile.in Makefile.win_nmake.in \
+ Makefile.win_make.in INSTALL make.bat LANGUAGE.HOWTO LICENSE PLATFORMS \
+ VERSION packages winbuild
+diff -ur doxygen-1.5.1/src/doxygen.pro.in doxygen-fixed/src/doxygen.pro.in
+--- doxygen-1.5.1/src/doxygen.pro.in 2006-11-01 22:52:32.611619404 +0200
++++ doxygen-fixed/src/doxygen.pro.in 2006-11-01 22:54:39.508328172 +0200
+@@ -28,7 +28,7 @@
+ win32:TMAKE_CXXFLAGS += -DQT_NODLL
+ win32-g++:LIBS = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
+ win32-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti
+-INCLUDEPATH += ../qtools ../libpng ../libmd5 .
++INCLUDEPATH += ../qtools ../libmd5 .
+ #win32-g++:INCLUDEPATH -= ../libpng
+ DESTDIR = ../bin
+ TARGET = doxygen
+diff -ur doxygen-1.5.1/src/libdoxygen.pro.in doxygen-fixed/src/libdoxygen.pro.in
+--- doxygen-1.5.1/src/libdoxygen.pro.in 2006-11-01 22:52:33.704453268 +0200
++++ doxygen-fixed/src/libdoxygen.pro.in 2006-11-01 22:54:50.479660276 +0200
+@@ -207,7 +207,6 @@
+ win32-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti
+ linux-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti
+ INCLUDEPATH += ../qtools
+-INCLUDEPATH += ../libpng
+ INCLUDEPATH += ../libmd5
+ win32:INCLUDEPATH += .
+ win32-g++:INCLUDEPATH = ../qtools /usr/include/libpng12 ../libmd5
+diff -ur doxygen-1.5.1/src/pngenc.cpp doxygen-fixed/src/pngenc.cpp
+--- doxygen-1.5.1/src/pngenc.cpp 2006-11-01 22:52:34.006407364 +0200
++++ doxygen-fixed/src/pngenc.cpp 2006-11-01 22:53:13.023475868 +0200
+@@ -25,7 +25,7 @@
+ #endif
+
+ #define ALL_STATIC
+-#include <../libpng/png.h>
++#include <png.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/app-doc/doxygen/files/doxygen-1.5.7.1-substitute.patch b/app-doc/doxygen/files/doxygen-1.5.7.1-substitute.patch
new file mode 100644
index 0000000..7d87d4a
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.5.7.1-substitute.patch
@@ -0,0 +1,24 @@
+--- doxygen-1.5.7.1-orig/src/util.cpp 2008-10-04 14:28:00.000000000 +0200
++++ doxygen-1.5.7.1/src/util.cpp 2008-12-18 20:55:15.000000000 +0100
+@@ -4447,10 +4447,10 @@
+
+ QCString substitute(const char *s,const char *src,const char *dst)
+ {
+- if (s==0 || src==0 || dst==0) return s;
++ if (s==0 || src==0) return s;
+ const char *p, *q;
+ int srcLen = strlen(src);
+- int dstLen = strlen(dst);
++ int dstLen = dst ? strlen(dst) : 0;
+ int resLen;
+ if (srcLen!=dstLen)
+ {
+@@ -4469,7 +4469,7 @@
+ int l = (int)(q-p);
+ memcpy(r,p,l);
+ r+=l;
+- memcpy(r,dst,dstLen);
++ if (dst) memcpy(r,dst,dstLen);
+ r+=dstLen;
+ }
+ strcpy(r,p);
diff --git a/app-doc/doxygen/files/doxygen-1.5.8-fortran.patch b/app-doc/doxygen/files/doxygen-1.5.8-fortran.patch
new file mode 100644
index 0000000..01b5235
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.5.8-fortran.patch
@@ -0,0 +1,105 @@
+--- doxygen-1.5.8-r1/work/doxygen-1.5.8/src/fortrancode.l 2008-12-25 14:48:57.000000000 -0600
++++ doxygen-1.5.8-r2/work/doxygen-1.5.8/src/fortrancode.l 2009-06-20 11:51:47.000000000 -0500
+@@ -611,7 +611,7 @@
+
+ IDSYM [a-z_A-Z0-9]
+ ID [a-z_A-Z]+{IDSYM}*
+-SUBPROG (subroutine|function)
++SUBPROG (program|subroutine|function)
+ B [ \t]
+ BS [ \t]*
+ BS_ [ \t]+
+@@ -708,7 +708,7 @@
+ }
+
+ /*-------- fortran module -----------------------------------------*/
+-<Start>("program"|"module"|"type"|"interface")/{BS_}|({COMMA}{ACCESS_SPEC})|\n { //
++<Start>("module"|"type"|"interface")/{BS_}|({COMMA}{ACCESS_SPEC})|\n { //
+ startUseScope();
+ startFontClass("keyword");
+ codifyLines(yytext);
+@@ -730,7 +730,7 @@
+ currentModule=0;
+ REJECT;
+ }
+-<Start>^{BS}"end"({BS}("program"|"module"|"type"|"interface")({BS_}{ID})?)?{BS}/(\n|!) { //
++<Start>^{BS}"end"({BS}("module"|"type"|"interface")({BS_}{ID})?)?{BS}/(\n|!) { //
+ endUseScope();
+ startFontClass("keyword");
+ codifyLines(yytext);
+@@ -743,14 +743,14 @@
+ codifyLines(yytext);
+ endFontClass();
+ }
+-<Start>{SUBPROG}{BS_} { // Fortran subroutine or function found
++<Start>{SUBPROG}{BS_} { // Fortran program, subroutine or function found
+ startFontClass("keyword");
+ codifyLines(yytext);
+ endFontClass();
+ yy_push_state(YY_START);
+ BEGIN(Subprog);
+ }
+-<Subprog>{ID} { // subroutine/function name
++<Subprog>{ID} { // program/subroutine/function name
+ //cout << "===> start procedure " << yytext << endl;
+ startUseScope();
+ generateLink(*g_code,yytext);
+@@ -761,7 +761,7 @@
+ <Subprog>"\n" { codifyLines(yytext);
+ yy_pop_state();
+ }
+-<Start>"^{BS}end"({BS}{SUBPROG}({BS_}{ID})?)?{BS}/(\n|!) { // Fortran subroutine or function ends
++<Start>"^{BS}end"({BS}{SUBPROG}({BS_}{ID})?)?{BS}/(\n|!) { // Fortran program, subroutine or function ends
+ //cout << "===> end function " << yytext << endl;
+ endUseScope();
+ startFontClass("keyword");
+--- doxygen-1.5.8-r1/work/doxygen-1.5.8/src/fortranscanner.l 2008-12-22 08:33:27.000000000 -0600
++++ doxygen-1.5.8-r2/work/doxygen-1.5.8/src/fortranscanner.l 2009-06-20 11:56:03.000000000 -0500
+@@ -204,7 +204,7 @@
+ ID [a-z_A-Z%]+{IDSYM}*
+ PP_ID {ID}
+ LABELID [a-z_A-Z]+[a-z_A-Z0-9\-]*
+-SUBPROG (subroutine|function|block)
++SUBPROG (program|subroutine|function|block)
+ B [ \t]
+ BS [ \t]*
+ BS_ [ \t]+
+@@ -434,11 +434,11 @@
+ <SubprogBody>^{BS}{CONTAINS}/({BS}|\n|!) { BEGIN(SubprogBodyContains); }
+
+ /*------ module handling ------------------------------------------------------------*/
+-<Start>module|program{BS_} { //
++<Start>module{BS_} { //
+ yy_push_state(Module);
+ defaultProtection = Public;
+ }
+-<Start,ModuleBody,ModuleBodyContains>^{BS}"end"({BS}(module|program)({BS_}{ID})?)?{BS}/(\n|!) { // end module
++<Start,ModuleBody,ModuleBodyContains>^{BS}"end"({BS}(module)({BS_}{ID})?)?{BS}/(\n|!) { // end module
+ resolveModuleProcedures(moduleProcedures, current_root);
+ if (!endScope(current_root))
+ yyterminate();
+@@ -651,7 +651,7 @@
+ }
+ <Initialization>. { initializer+=yytext; }
+
+- /*------ fortran subroutine/function handling ------------------------------------------------------------*/
++ /*------ fortran program/subroutine/function handling ------------------------------------------------------------*/
+ /* Start is initial condition */
+
+ <Start,ModuleBody,SubprogBody,InterfaceBody,ModuleBodyContains,SubprogBodyContains>^{BS}({PREFIX}{BS_})?{TYPE_SPEC}{BS}/{SUBPROG}{BS_} {
+@@ -665,13 +665,13 @@
+ }
+
+ <SubprogPrefix>{BS}{SUBPROG}{BS_} {
+- // Fortran subroutine or function found
++ // Fortran program, subroutine or function found
+ addSubprogram(yytext);
+ BEGIN(Subprog);
+ }
+
+ <Start,ModuleBody,SubprogBody,InterfaceBody,ModuleBodyContains,SubprogBodyContains>^{BS}({PREFIX}{BS_})?{SUBPROG}{BS_} {
+- // Fortran subroutine or function found
++ // Fortran program, subroutine or function found
+ result= yytext;
+ result= result.stripWhiteSpace();
+ extractPrefix(result);
diff --git a/app-doc/doxygen/files/doxygen-1.5.8-kdedocs.patch b/app-doc/doxygen/files/doxygen-1.5.8-kdedocs.patch
new file mode 100644
index 0000000..bf3d005
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-1.5.8-kdedocs.patch
@@ -0,0 +1,32 @@
+Avoid infinite loop in resolveSymlink.
+Backported from doxygen trunk to 1.5.8.
+Reference: http://bugs.gentoo.org/266693
+2009-04-19 Martin von Gagern
+
+--- trunk/src/doxygen.cpp 2009/01/17 16:16:15 677
++++ trunk/src/doxygen.cpp 2009/01/29 20:13:23 678
+@@ -8617,6 +8617,7 @@
+ QDict<void> nonSymlinks;
+ QDict<void> known;
+ QCString result = path;
++ QCString oldPrefix = "/";
+ do
+ {
+ #ifdef WIN32
+@@ -8637,7 +8638,7 @@
+ QString target = fi.readLink();
+ if (QFileInfo(target).isRelative())
+ {
+- target = QDir::cleanDirPath(prefix+"/"+target.data());
++ target = QDir::cleanDirPath(oldPrefix+"/"+target.data());
+ }
+ if (sepPos!=-1)
+ {
+@@ -8656,6 +8657,7 @@
+ {
+ nonSymlinks.insert(prefix,(void*)0x8);
+ }
++ oldPrefix = prefix;
+ }
+ }
+ while (sepPos!=-1);
diff --git a/app-doc/doxygen/files/doxygen-gcc4.patch b/app-doc/doxygen/files/doxygen-gcc4.patch
new file mode 100644
index 0000000..ea81015
--- /dev/null
+++ b/app-doc/doxygen/files/doxygen-gcc4.patch
@@ -0,0 +1,11 @@
+--- qtools/qvaluestack.h.orig
++++ qtools/qvaluestack.h
+@@ -54,7 +54,7 @@
+ {
+ T elem( this->last() );
+ if ( !this->isEmpty() )
+- remove( this->fromLast() );
++ this->remove( this->fromLast() );
+ return elem;
+ }
+ T& top() { return this->last(); }
diff --git a/app-doc/doxygen/files/doxywizard.png b/app-doc/doxygen/files/doxywizard.png
new file mode 100644
index 0000000..c648231
--- /dev/null
+++ b/app-doc/doxygen/files/doxywizard.png
Binary files differ
diff --git a/app-laptop/thinkfan/Manifest b/app-laptop/thinkfan/Manifest
new file mode 100644
index 0000000..f52b9c6
--- /dev/null
+++ b/app-laptop/thinkfan/Manifest
@@ -0,0 +1,2 @@
+DIST thinkfan-0.5.tar.bz2 11423 RMD160 765c7e5de7610b9823f5e799b8f456f7e9940fd1 SHA1 7ba184f096e59cbfa01552e94de402ffae549780 SHA256 5153bf15e81ae47a25ac14746b1ebd5cadb2f6a4a7f25b32d45467b5db298859
+EBUILD thinkfan-0.5.ebuild 1142 RMD160 6024470b6a3061db9d7fe3e7cacb886e8349787c SHA1 eaeac6def7701611698062c00fda0d35406c3a8c SHA256 89bf7dd82314a3350a2d62a87f6dc89aa339cd008e4497af8ee76bd75cdc1241
diff --git a/app-misc/i810switch/Manifest b/app-misc/i810switch/Manifest
new file mode 100644
index 0000000..4530a16
--- /dev/null
+++ b/app-misc/i810switch/Manifest
@@ -0,0 +1,3 @@
+AUX i810switch-macbook-support.patch 657 RMD160 0142af968bb6dd919f06e75f15cc7766fd262554 SHA1 d0651f691b1ede9c5368c037a000e66518664883 SHA256 b2d0e1ac9322de1b3bea27eb66516880b65b3b259330d77145d29243d4c3884a
+DIST i810switch-0.6.5.tar.gz 24287 RMD160 4acaea0c7c4197cdff30885a51f65cda3d3a6df9 SHA1 437adeb38f6530b5e68810fc5ee65fb5adaafd97 SHA256 d714840e3b14e1fa9c432c4be0044b7c008d904dece0d611554655b979cad4c3
+EBUILD i810switch-0.6.5-r03.ebuild 828 RMD160 091c70ba0dd0ee94eeeec39a001f454fab771d0f SHA1 c420e14f944f2954ec4bd836b45bf7394b180cbe SHA256 a3dcfbe51a525aed5a388a2ecdfac2ec5fb6904c5bfb341283a5af4d37d62c3f
diff --git a/app-misc/i810switch/files/digest-i810switch-0.6.5-r2 b/app-misc/i810switch/files/digest-i810switch-0.6.5-r2
new file mode 100644
index 0000000..d3e952b
--- /dev/null
+++ b/app-misc/i810switch/files/digest-i810switch-0.6.5-r2
@@ -0,0 +1,3 @@
+MD5 5ca07aee624589bdce5761c796e5f9a8 i810switch-0.6.5.tar.gz 24287
+RMD160 4acaea0c7c4197cdff30885a51f65cda3d3a6df9 i810switch-0.6.5.tar.gz 24287
+SHA256 d714840e3b14e1fa9c432c4be0044b7c008d904dece0d611554655b979cad4c3 i810switch-0.6.5.tar.gz 24287
diff --git a/app-misc/i810switch/files/i810switch-macbook-support.patch b/app-misc/i810switch/files/i810switch-macbook-support.patch
new file mode 100644
index 0000000..ff16ed2
--- /dev/null
+++ b/app-misc/i810switch/files/i810switch-macbook-support.patch
@@ -0,0 +1,24 @@
+--- i810switch.c.old 2005-06-12 06:36:36.000000000 +0200
++++ i810switch.c 2007-07-03 02:06:31.000000000 +0200
+@@ -60,6 +60,7 @@
+ #define I855STR "8086:3582"
+ //#define I865STR "8086:2572"
+ #define I915STR "8086:2592"
++#define I945STR "8086:27a2"
+ #define MEMSTR "Memory at"
+ #define NONPRSTR "32-bit, non-prefetchable"
+
+@@ -279,6 +280,13 @@
+ return p;
+ }
+
++ i = (p = strstr(*buff_ptr, I945STR)) != NULL;
++ if (i)
++ {
++ *chiptype = I855;
++ return p;
++ }
++
+ i = (p = strstr(*buff_ptr, I915STR)) != NULL;
+ if (i)
+ {
diff --git a/app-text/acroread/Manifest b/app-text/acroread/Manifest
new file mode 100644
index 0000000..052d7f2
--- /dev/null
+++ b/app-text/acroread/Manifest
@@ -0,0 +1,7 @@
+AUX acroread-expr.patch 959 RMD160 8ccb8bed1f96b0f75453963b40ae5f8ca198be79 SHA1 d00decfaaefa8d2679c5ab16a3731f4bb7df01c2 SHA256 2ee1362347f32d25fd0c7abdcd017d5fd997e4724ca7f58ac81fee715202261e
+AUX acroread-low-startup-fontissue.patch 265 RMD160 1e3d85f3f7b965675d5cf8af4b6f1876c01253c5 SHA1 e15ebb8711a3834cf120c494c7575f9ee132ec70 SHA256 b48fb59d4a66f62f8684ce8b1b5ed613ae6d58af1b8af3c2d18291778827bae9
+AUX acroread-scim.patch 329 RMD160 8f012d0b55ac8acdf985cfac2edb9d0ee4498fec SHA1 43333a16e36add0e1c0dc3b25686fe41c30bf689 SHA256 a2458a86fd2cad7d1a01dbe496d43c743cb6f4df9ec945bfe1657c6223854ce3
+AUX gentoo_config 356 RMD160 fde2e1f78d39d39611ea91fc94f8c31bc8634425 SHA1 ce38b7160e842d970804216e156d5edbcbfd3e1d SHA256 f7742c4df12cf080fbd763a78cb367b1015b57b58a00896b12931c0416bfc68f
+DIST AdobeReader_enu-7.0.9-1.i386.tar.gz 44165526 RMD160 b9d7b2068be3314054581ff129d6cb5fee7677f6 SHA1 793cc8bcf59a6c24b6e74881bad978efcd447df9 SHA256 1e161174d932788c17e784a626ec02eec79158ecd813e206117356f54ed94863
+DIST libcups.so-i386.bz2 50564 RMD160 a8bedc7151eb1d547616124bfdd4844699a33c15 SHA1 d55609b2889c0cb668fb73b59d9d0ea4b3094a47 SHA256 77eb5cd6aeab630812f7e911db04b6042cd6dee6aa7b9d8cf7756dca14e24b38
+EBUILD acroread-7.0.9-r1.ebuild 7461 RMD160 3db2c90639ba9076619d50e53088329805d3df76 SHA1 2b545a22e2bff9dc30fcbcda78a658e4e7668c62 SHA256 258a17450144a7e6e56ae8f8559897d3b6ff2dadf6f0e40d447809fd77cc16f4
diff --git a/app-text/acroread/files/acroread-expr.patch b/app-text/acroread/files/acroread-expr.patch
new file mode 100644
index 0000000..247cc37
--- /dev/null
+++ b/app-text/acroread/files/acroread-expr.patch
@@ -0,0 +1,21 @@
+--- Acrobat7.0/bin/acroread.orig 2006-05-21 11:21:23.000000000 +0200
++++ Acrobat7.0/bin/acroread 2006-05-21 11:30:06.000000000 +0200
+@@ -424,13 +424,13 @@
+ continue
+ fi
+
+- len_version=`expr length $version`
+- base_version=`expr substr "${base_version}0000000000" 1 $len_version`
+- len_base_version=`expr length $base_version`
++ len_version=`expr length "$version"`
++ base_version=`expr substr "${base_version}0000000000" 1 "$len_version"`
++ len_base_version=`expr length "$base_version"`
+
+ while [ $len_version -gt $len_base_version ]; do
+- base_version=`expr substr "${base_version}0000000000" 1 $len_version`
+- len_base_version=`expr length $base_version`
++ base_version=`expr substr "${base_version}0000000000" 1 "$len_version"`
++ len_base_version=`expr length "$base_version"`
+ done
+
+ if [ $version -ge $base_version ]; then
diff --git a/app-text/acroread/files/acroread-low-startup-fontissue.patch b/app-text/acroread/files/acroread-low-startup-fontissue.patch
new file mode 100644
index 0000000..93024ab
--- /dev/null
+++ b/app-text/acroread/files/acroread-low-startup-fontissue.patch
@@ -0,0 +1,11 @@
+--- Acrobat7.0/bin/acroread 2005-05-18 09:05:35.000000000 +0200
++++ Acrobat7.0/bin/acroread 2005-05-18 09:06:29.000000000 +0200
+@@ -1,6 +1,8 @@
+ #!/bin/sh
+ #
+
++FC=~/.adobe/Acrobat/7.0/Cache/UnixFnt07.lst
++[ -s ${FC} ] && rm ${FC} && touch ${FC}
+
+ setLangDEU()
+ {
diff --git a/app-text/acroread/files/acroread-scim.patch b/app-text/acroread/files/acroread-scim.patch
new file mode 100644
index 0000000..3ef5674
--- /dev/null
+++ b/app-text/acroread/files/acroread-scim.patch
@@ -0,0 +1,14 @@
+--- Acrobat7.0/bin/acroread 2005-05-18 09:05:35.000000000 +0200
++++ Acrobat7.0/bin/acroread 2005-05-18 09:06:29.000000000 +0200
+@@ -255,6 +255,11 @@
+ fi
+ fi
+
++if [ "$GTK_IM_MODULE" = "scim" ]; then
++ GTK_IM_MODULE=xim
++ export GTK_IM_MODULE
++fi
++
+ if [ "$1" = "-DEBUG" ] ; then
+ if [ $# = 1 ] ; then
+ export ACRO_EXEC_CMD \ No newline at end of file
diff --git a/app-text/acroread/files/gentoo_config b/app-text/acroread/files/gentoo_config
new file mode 100644
index 0000000..1ca8729
--- /dev/null
+++ b/app-text/acroread/files/gentoo_config
@@ -0,0 +1,10 @@
+# Enable this if you want Adobe Reader to cache Font-config fonts
+ACRO_ENABLE_FONT_CONFIG=1
+export ACRO_ENABLE_FONT_CONFIG
+
+# Enable this if you want to set the MOZILLA_COMP_PATH globally (for all the users)
+if [ -f "$ACRO_INSTALL_DIR/GlobalPrefs/mozilla_config" ]; then
+ . "$ACRO_INSTALL_DIR/GlobalPrefs/mozilla_config"
+ export MOZILLA_COMP_PATH
+fi
+
diff --git a/app-text/epubcheck/Manifest b/app-text/epubcheck/Manifest
new file mode 100644
index 0000000..413792f
--- /dev/null
+++ b/app-text/epubcheck/Manifest
@@ -0,0 +1,2 @@
+DIST epubcheck-src-1.0.5.zip 1451354 RMD160 4b13c399eb14508325729418f063027fb5692659 SHA1 bdaba7a811a09f076457d35feb94ecdd31676bd1 SHA256 86aa499ae8518a9d457a65ee92d08130ad13626ef26c27bae6f02564066be119
+EBUILD epubcheck-1.0.5.ebuild 1008 RMD160 b59f137aa4ce54ba19bda6585610a472b0689813 SHA1 34872c850f6564f525f94a216a3521d3d5970c91 SHA256 5ffd3642bf91dd90c4486b30298ed7cbadab240282bdd68f9cd6be0d682af029
diff --git a/app-text/odf-converter-integrator-bin/Manifest b/app-text/odf-converter-integrator-bin/Manifest
new file mode 100644
index 0000000..a4e3ef3
--- /dev/null
+++ b/app-text/odf-converter-integrator-bin/Manifest
@@ -0,0 +1,2 @@
+DIST odf-converter-integrator-0.2.3.tar.bz2 7855190 RMD160 5df0aac34948b99f28809c99567bc14d02a3d1c1 SHA1 39885c7593aee4e70df0e7be48df6a04a814263d SHA256 f275f6787fa697e442984e12815e71c2ed99b9aad4c4456f57d125dada2dd23b
+EBUILD odf-converter-integrator-bin-0.2.3.ebuild 563 RMD160 accc84337e0df278ddbd1f17ea977b88146dc28c SHA1 4fa38238d7f5a47b1342905d87af2432dfc79b99 SHA256 4c6186e79cc4cc529cfb28a99c5fc01169182f3fc1502bb8053067869afcfd13
diff --git a/dev-lang/g95/Manifest b/dev-lang/g95/Manifest
new file mode 100644
index 0000000..51d778f
--- /dev/null
+++ b/dev-lang/g95/Manifest
@@ -0,0 +1,5 @@
+DIST g95_source.tgz 1355198 RMD160 98d03e9a1835f4b3553a72a798bdf1d90a757176 SHA1 b5e503fd6459b65cbda73190685f9490230d9cff SHA256 6949b3485b1d8a0f4349fff06d8b8a6e262bddae9314909cd5b4e45d112e47bb
+DIST gcc-4.1.1.tar.bz2 39172003 RMD160 0edeac242d900b075a7e36796380492b5b3c8564 SHA1 a398b95d38b6e35f4c4e02c34c0a3bff79811f8f SHA256 985cbb23a486570a8783395a42a8689218f5218a0ccdd6bec590eef341367bb7
+EBUILD g95-0.90-r2.ebuild 2474 RMD160 dd77fd36ba2e6b01944a2d9a166e186b7265116a SHA1 6893bf4360d38139c0569bd8ce2f9a75cd57f834 SHA256 95fd5f84c998aeac372cd58ae590daf51771325d3466bb295bbac0855a6c19e5
+MISC g95-0.90-libdir.patch 612 RMD160 d304fcdd572ffb5807bc4394fe4d33c7bda9114a SHA1 7ee70787731c1847fed18c54a016e98c99b0122f SHA256 bc0d8341d187ee900c3f14e59bf47cfba342194a198ce4a584b69d01147aaeb9
+MISC g95.eclass 8923 RMD160 7f2e6299f9817725f41fb2278d97e908ca5ff7a8 SHA1 54f1ad2653e17095b6157f481cbd9974131629d8 SHA256 53f7ee7f82c39fd4e8c2b0b8ed5127816927d2c963a4abfb031cf4272ad9a8db
diff --git a/dev-lang/g95/eclass/g95.eclass b/dev-lang/g95/eclass/g95.eclass
new file mode 100644
index 0000000..89689c9
--- /dev/null
+++ b/dev-lang/g95/eclass/g95.eclass
@@ -0,0 +1,295 @@
+inherit toolchain
+
+ETYPE="gcc-compiler"
+
+g95-compiler-configure() {
+ # multilib support
+ if is_multilib ; then
+ confgcc="${confgcc} --enable-multilib"
+ elif [[ ${CTARGET} == *-linux* ]] ; then
+ confgcc="${confgcc} --disable-multilib"
+ fi
+
+ if tc_version_is_at_least "4.0" ; then
+ confgcc="${confgcc} $(use_enable mudflap libmudflap)"
+
+ if want_libssp ; then
+ confgcc="${confgcc} --enable-libssp"
+ else
+ export gcc_cv_libc_provides_ssp=yes
+ confgcc="${confgcc} --disable-libssp"
+ fi
+ fi
+
+ # GTK+ is preferred over xlib in 3.4.x (xlib is unmaintained
+ # right now). Much thanks to <csm@gnu.org> for the heads up.
+ # Travis Tilley <lv@gentoo.org> (11 Jul 2004)
+ if ! is_gcj ; then
+ confgcc="${confgcc} --disable-libgcj"
+ elif use gtk ; then
+ confgcc="${confgcc} --enable-java-awt=gtk"
+ fi
+
+ case $(tc-arch) in
+ # Add --with-abi flags to set default MIPS ABI
+ mips)
+ local mips_abi=""
+ use n64 && mips_abi="--with-abi=64"
+ use n32 && mips_abi="--with-abi=n32"
+ [[ -n ${mips_abi} ]] && confgcc="${confgcc} ${mips_abi}"
+ ;;
+ # Enable sjlj exceptions for backward compatibility on hppa
+ hppa)
+ [[ ${GCC_PV:0:1} == "3" ]] && \
+ confgcc="${confgcc} --enable-sjlj-exceptions"
+ ;;
+ esac
+
+ GCC_LANG="c"
+
+ einfo "configuring for GCC_LANG: ${GCC_LANG}"
+}
+
+# g95_gcc_do_configure adapted from gcc_do_configure
+#
+# Other than the variables described for gcc_setup_variables, the following
+# will alter tha behavior of gcc_do_configure:
+#
+# CTARGET
+# CBUILD
+# Enable building for a target that differs from CHOST
+#
+# GCC_TARGET_NO_MULTILIB
+# Disable multilib. Useful when building single library targets.
+#
+# GCC_LANG
+# Enable support for ${GCC_LANG} languages. defaults to just "c"
+#
+# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
+#
+g95_gcc_do_configure() {
+ local confgcc
+
+ # Set configuration based on path variables
+ confgcc="${confgcc} \
+ --prefix=${PREFIX} \
+ --bindir=${BINPATH} \
+ --includedir=${INCLUDEPATH} \
+ --datadir=${DATAPATH} \
+ --mandir=${DATAPATH}/man \
+ --infodir=${DATAPATH}/info \
+ --with-gxx-include-dir=${STDCXX_INCDIR}"
+
+ # All our cross-compile logic goes here ! woo !
+ confgcc="${confgcc} --host=${CHOST}"
+ if is_crosscompile || tc-is-cross-compiler ; then
+ # Straight from the GCC install doc:
+ # "GCC has code to correctly determine the correct value for target
+ # for nearly all native systems. Therefore, we highly recommend you
+ # not provide a configure target when configuring a native compiler."
+ confgcc="${confgcc} --target=${CTARGET}"
+ fi
+ [[ -n ${CBUILD} ]] && confgcc="${confgcc} --build=${CBUILD}"
+
+ # ppc altivec support
+ confgcc="${confgcc} $(use_enable altivec)"
+
+ [[ ${CTARGET} == *-softfloat-* ]] && confgcc="${confgcc} --with-float=soft"
+
+ # Native Language Support
+ if use nls && ! use build ; then
+ confgcc="${confgcc} --enable-nls --without-included-gettext"
+ else
+ confgcc="${confgcc} --disable-nls"
+ fi
+
+ # reasonably sane globals (hopefully)
+ # --disable-libunwind-exceptions needed till unwind sections get fixed. see ps.m for details
+ confgcc="${confgcc} \
+ --with-system-zlib \
+ --disable-checking \
+ --disable-werror \
+ --disable-libunwind-exceptions"
+
+ # etype specific configuration
+ einfo "running ${ETYPE}-configure"
+ g95-compiler-configure || die
+
+ # if not specified, assume we are building for a target that only
+ # requires C support
+ GCC_LANG=c
+ confgcc="${confgcc} --enable-languages=${GCC_LANG}"
+
+ if is_crosscompile ; then
+ # When building a stage1 cross-compiler (just C compiler), we have to
+ # disable a bunch of features or gcc goes boom
+ local needed_libc=""
+ case ${CTARGET} in
+ *-dietlibc) needed_libc=dietlibc;;
+ *-freebsd*) needed_libc=freebsd-lib;;
+ *-gnu*) needed_libc=glibc;;
+ *-klibc) needed_libc=klibc;;
+ *-uclibc) needed_libc=uclibc;;
+ avr) confgcc="${confgcc} --enable-shared --disable-threads";;
+ esac
+ if [[ -n ${needed_libc} ]] ; then
+ if ! has_version ${CATEGORY}/${needed_libc} ; then
+ confgcc="${confgcc} --disable-shared --disable-threads --without-headers"
+ elif built_with_use ${CATEGORY}/${needed_libc} crosscompile_opts_headers-only ; then
+ confgcc="${confgcc} --disable-shared --with-sysroot=${PREFIX}/${CTARGET}"
+ else
+ confgcc="${confgcc} --with-sysroot=${PREFIX}/${CTARGET}"
+ fi
+ fi
+
+ if [[ ${GCCMAJOR}.${GCCMINOR} > 4.1 ]] ; then
+ confgcc="${confgcc} --disable-bootstrap"
+ fi
+ else
+ confgcc="${confgcc} --enable-shared --enable-threads=posix"
+
+ if [[ ${GCCMAJOR}.${GCCMINOR} > 4.1 ]] ; then
+ confgcc="${confgcc} --enable-bootstrap"
+ fi
+ fi
+ # __cxa_atexit is "essential for fully standards-compliant handling of
+ # destructors", but apparently requires glibc.
+ # --enable-sjlj-exceptions : currently the unwind stuff seems to work
+ # for statically linked apps but not dynamic
+ # so use setjmp/longjmp exceptions by default
+ if is_uclibc ; then
+ confgcc="${confgcc} --disable-__cxa_atexit --enable-target-optspace"
+ [[ ${GCCMAJOR}.${GCCMINOR} == 3.3 ]] && \
+ confgcc="${confgcc} --enable-sjlj-exceptions"
+ else
+ confgcc="${confgcc} --enable-__cxa_atexit"
+ fi
+ [[ ${CTARGET} == *-gnu* ]] && confgcc="${confgcc} --enable-clocale=gnu"
+ [[ ${CTARGET} == *-uclibc* ]] && [[ ${GCCMAJOR}.${GCCMINOR} > 3.3 ]] \
+ && confgcc="${confgcc} --enable-clocale=uclibc"
+
+ # Nothing wrong with a good dose of verbosity
+ echo
+ einfo "PREFIX: ${PREFIX}"
+ einfo "BINPATH: ${BINPATH}"
+ einfo "LIBPATH: ${LIBPATH}"
+ einfo "DATAPATH: ${DATAPATH}"
+ einfo "STDCXX_INCDIR: ${STDCXX_INCDIR}"
+ echo
+ einfo "Configuring GCC with: ${confgcc//--/\n\t--} ${@} ${EXTRA_ECONF}"
+ echo
+
+ # and now to do the actual configuration
+ addwrite /dev/zero
+ ../configure ${confgcc} $@ ${EXTRA_ECONF} \
+ || die "failed to run configure"
+
+}
+
+# This function accepts one optional argument, the make target to be used.
+# If ommitted, gcc_do_make will try to guess whether it should use all,
+# profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
+# example of how to use this function:
+#
+# gcc_do_make all-target-libstdc++-v3
+#
+# In addition to the target to be used, the following variables alter the
+# behavior of this function:
+#
+# LDFLAGS
+# Flags to pass to ld
+#
+# STAGE1_CFLAGS
+# CFLAGS to use during stage1 of a gcc bootstrap
+#
+# BOOT_CFLAGS
+# CFLAGS to use during stages 2+3 of a gcc bootstrap.
+#
+# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
+#
+g95_gcc_do_make() {
+ # Fix for libtool-portage.patch
+ local OLDS=${S}
+ S=${WORKDIR}/build
+
+ # Set make target to $1 if passed
+ [[ -n $1 ]] && GCC_MAKE_TARGET=$1
+ # default target
+ if is_crosscompile || tc-is-cross-compiler ; then
+ # 3 stage bootstrapping doesnt quite work when you cant run the
+ # resulting binaries natively ^^;
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
+ elif [[ $(tc-arch) == "x86" || $(tc-arch) == "amd64" || $(tc-arch) == "ppc64" ]] \
+ && [[ ${GCCMAJOR}.${GCCMINOR} > 3.3 ]]
+ then
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-profiledbootstrap}
+ else
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
+ fi
+
+ # the gcc docs state that parallel make isnt supported for the
+ # profiledbootstrap target, as collisions in profile collecting may occur.
+ [[ ${GCC_MAKE_TARGET} == "profiledbootstrap" ]] && export MAKEOPTS="${MAKEOPTS} -j1"
+
+ # boundschecking seems to introduce parallel build issues
+ want_boundschecking && export MAKEOPTS="${MAKEOPTS} -j1"
+
+ if [[ ${GCC_MAKE_TARGET} == "all" ]] ; then
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"${CFLAGS}"}
+ elif [[ $(gcc-version) == "3.4" && ${GCC_BRANCH_VER} == "3.4" ]] && gcc-specs-ssp ; then
+ # See bug #79852
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"-O2"}
+ else
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"-O"}
+ fi
+
+ if is_crosscompile; then
+ # In 3.4, BOOT_CFLAGS is never used on a crosscompile...
+ # but I'll leave this in anyways as someone might have had
+ # some reason for putting it in here... --eradicator
+ BOOT_CFLAGS=${BOOT_CFLAGS-"-O2"}
+ else
+ # we only want to use the system's CFLAGS if not building a
+ # cross-compiler.
+ BOOT_CFLAGS=${BOOT_CFLAGS-"$(get_abi_CFLAGS) ${CFLAGS}"}
+ fi
+
+ pushd "${WORKDIR}"/build
+ einfo "Running make LDFLAGS=\"${LDFLAGS}\" STAGE1_CFLAGS=\"${STAGE1_CFLAGS}\" LIBPATH=\"${LIBPATH}\" BOOT_CFLAGS=\"${BOOT_CFLAGS}\" ${GCC_MAKE_TARGET}"
+
+ emake \
+ LDFLAGS="${LDFLAGS}" \
+ STAGE1_CFLAGS="${STAGE1_CFLAGS}" \
+ LIBPATH="${LIBPATH}" \
+ BOOT_CFLAGS="${BOOT_CFLAGS}" \
+ ${GCC_MAKE_TARGET} \
+ || die "emake failed with ${GCC_MAKE_TARGET}"
+
+ if ! use build && ! is_crosscompile && ! use nocxx && use doc ; then
+ if type -p doxygen > /dev/null ; then
+ cd "${CTARGET}"/libstdc++-v3
+ make doxygen-man || ewarn "failed to make docs"
+ else
+ ewarn "Skipping libstdc++ manpage generation since you don't have doxygen installed"
+ fi
+ fi
+
+ popd
+}
+
+pkg_preinst() {
+ einfo "Hoping that no preinst needed"
+}
+
+pkg_postinst() {
+ einfo "Hoping that no postinst needed"
+}
+
+pkg_prerm() {
+ einfo "Hoping that no prerm needed"
+}
+
+pkg_postrm() {
+ einfo "Hoping that no postrm needed"
+}
+
diff --git a/dev-lang/g95/g95-0.90-libdir.patch b/dev-lang/g95/g95-0.90-libdir.patch
new file mode 100644
index 0000000..1e2791e
--- /dev/null
+++ b/dev-lang/g95/g95-0.90-libdir.patch
@@ -0,0 +1,21 @@
+diff -Naur tmp-old/configure tmp-new/configure
+--- configure 2006-08-30 20:08:04.000000000 +0000
++++ configure 2006-08-31 03:01:38.000000000 +0000
+@@ -3855,7 +3855,7 @@
+ echo "$as_me:$LINENO: result: $gcc_version" >&5
+ echo "${ECHO_T}$gcc_version" >&6
+
+- DEST_LIBDIR=$prefix/lib/gcc-lib/$host/$gcc_version
++ DEST_LIBDIR=$prefix/lib/gcc-lib/$host/$gcc_version/
+ SAVE_DIR=`pwd`
+ PREFIX=$prefix
+
+@@ -4397,7 +4397,7 @@
+ case $host in
+ *x86_64* | *amd64* | *powerpc64* )
+ if test -d /usr/lib64 ; then
+- STARTFILE_PREFIX_2=/usr/lib64
++ STARTFILE_PREFIX_2=/usr/lib64/
+ fi
+ ;;
+
diff --git a/dev-lang/g95/g95.eclass b/dev-lang/g95/g95.eclass
new file mode 100644
index 0000000..89689c9
--- /dev/null
+++ b/dev-lang/g95/g95.eclass
@@ -0,0 +1,295 @@
+inherit toolchain
+
+ETYPE="gcc-compiler"
+
+g95-compiler-configure() {
+ # multilib support
+ if is_multilib ; then
+ confgcc="${confgcc} --enable-multilib"
+ elif [[ ${CTARGET} == *-linux* ]] ; then
+ confgcc="${confgcc} --disable-multilib"
+ fi
+
+ if tc_version_is_at_least "4.0" ; then
+ confgcc="${confgcc} $(use_enable mudflap libmudflap)"
+
+ if want_libssp ; then
+ confgcc="${confgcc} --enable-libssp"
+ else
+ export gcc_cv_libc_provides_ssp=yes
+ confgcc="${confgcc} --disable-libssp"
+ fi
+ fi
+
+ # GTK+ is preferred over xlib in 3.4.x (xlib is unmaintained
+ # right now). Much thanks to <csm@gnu.org> for the heads up.
+ # Travis Tilley <lv@gentoo.org> (11 Jul 2004)
+ if ! is_gcj ; then
+ confgcc="${confgcc} --disable-libgcj"
+ elif use gtk ; then
+ confgcc="${confgcc} --enable-java-awt=gtk"
+ fi
+
+ case $(tc-arch) in
+ # Add --with-abi flags to set default MIPS ABI
+ mips)
+ local mips_abi=""
+ use n64 && mips_abi="--with-abi=64"
+ use n32 && mips_abi="--with-abi=n32"
+ [[ -n ${mips_abi} ]] && confgcc="${confgcc} ${mips_abi}"
+ ;;
+ # Enable sjlj exceptions for backward compatibility on hppa
+ hppa)
+ [[ ${GCC_PV:0:1} == "3" ]] && \
+ confgcc="${confgcc} --enable-sjlj-exceptions"
+ ;;
+ esac
+
+ GCC_LANG="c"
+
+ einfo "configuring for GCC_LANG: ${GCC_LANG}"
+}
+
+# g95_gcc_do_configure adapted from gcc_do_configure
+#
+# Other than the variables described for gcc_setup_variables, the following
+# will alter tha behavior of gcc_do_configure:
+#
+# CTARGET
+# CBUILD
+# Enable building for a target that differs from CHOST
+#
+# GCC_TARGET_NO_MULTILIB
+# Disable multilib. Useful when building single library targets.
+#
+# GCC_LANG
+# Enable support for ${GCC_LANG} languages. defaults to just "c"
+#
+# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
+#
+g95_gcc_do_configure() {
+ local confgcc
+
+ # Set configuration based on path variables
+ confgcc="${confgcc} \
+ --prefix=${PREFIX} \
+ --bindir=${BINPATH} \
+ --includedir=${INCLUDEPATH} \
+ --datadir=${DATAPATH} \
+ --mandir=${DATAPATH}/man \
+ --infodir=${DATAPATH}/info \
+ --with-gxx-include-dir=${STDCXX_INCDIR}"
+
+ # All our cross-compile logic goes here ! woo !
+ confgcc="${confgcc} --host=${CHOST}"
+ if is_crosscompile || tc-is-cross-compiler ; then
+ # Straight from the GCC install doc:
+ # "GCC has code to correctly determine the correct value for target
+ # for nearly all native systems. Therefore, we highly recommend you
+ # not provide a configure target when configuring a native compiler."
+ confgcc="${confgcc} --target=${CTARGET}"
+ fi
+ [[ -n ${CBUILD} ]] && confgcc="${confgcc} --build=${CBUILD}"
+
+ # ppc altivec support
+ confgcc="${confgcc} $(use_enable altivec)"
+
+ [[ ${CTARGET} == *-softfloat-* ]] && confgcc="${confgcc} --with-float=soft"
+
+ # Native Language Support
+ if use nls && ! use build ; then
+ confgcc="${confgcc} --enable-nls --without-included-gettext"
+ else
+ confgcc="${confgcc} --disable-nls"
+ fi
+
+ # reasonably sane globals (hopefully)
+ # --disable-libunwind-exceptions needed till unwind sections get fixed. see ps.m for details
+ confgcc="${confgcc} \
+ --with-system-zlib \
+ --disable-checking \
+ --disable-werror \
+ --disable-libunwind-exceptions"
+
+ # etype specific configuration
+ einfo "running ${ETYPE}-configure"
+ g95-compiler-configure || die
+
+ # if not specified, assume we are building for a target that only
+ # requires C support
+ GCC_LANG=c
+ confgcc="${confgcc} --enable-languages=${GCC_LANG}"
+
+ if is_crosscompile ; then
+ # When building a stage1 cross-compiler (just C compiler), we have to
+ # disable a bunch of features or gcc goes boom
+ local needed_libc=""
+ case ${CTARGET} in
+ *-dietlibc) needed_libc=dietlibc;;
+ *-freebsd*) needed_libc=freebsd-lib;;
+ *-gnu*) needed_libc=glibc;;
+ *-klibc) needed_libc=klibc;;
+ *-uclibc) needed_libc=uclibc;;
+ avr) confgcc="${confgcc} --enable-shared --disable-threads";;
+ esac
+ if [[ -n ${needed_libc} ]] ; then
+ if ! has_version ${CATEGORY}/${needed_libc} ; then
+ confgcc="${confgcc} --disable-shared --disable-threads --without-headers"
+ elif built_with_use ${CATEGORY}/${needed_libc} crosscompile_opts_headers-only ; then
+ confgcc="${confgcc} --disable-shared --with-sysroot=${PREFIX}/${CTARGET}"
+ else
+ confgcc="${confgcc} --with-sysroot=${PREFIX}/${CTARGET}"
+ fi
+ fi
+
+ if [[ ${GCCMAJOR}.${GCCMINOR} > 4.1 ]] ; then
+ confgcc="${confgcc} --disable-bootstrap"
+ fi
+ else
+ confgcc="${confgcc} --enable-shared --enable-threads=posix"
+
+ if [[ ${GCCMAJOR}.${GCCMINOR} > 4.1 ]] ; then
+ confgcc="${confgcc} --enable-bootstrap"
+ fi
+ fi
+ # __cxa_atexit is "essential for fully standards-compliant handling of
+ # destructors", but apparently requires glibc.
+ # --enable-sjlj-exceptions : currently the unwind stuff seems to work
+ # for statically linked apps but not dynamic
+ # so use setjmp/longjmp exceptions by default
+ if is_uclibc ; then
+ confgcc="${confgcc} --disable-__cxa_atexit --enable-target-optspace"
+ [[ ${GCCMAJOR}.${GCCMINOR} == 3.3 ]] && \
+ confgcc="${confgcc} --enable-sjlj-exceptions"
+ else
+ confgcc="${confgcc} --enable-__cxa_atexit"
+ fi
+ [[ ${CTARGET} == *-gnu* ]] && confgcc="${confgcc} --enable-clocale=gnu"
+ [[ ${CTARGET} == *-uclibc* ]] && [[ ${GCCMAJOR}.${GCCMINOR} > 3.3 ]] \
+ && confgcc="${confgcc} --enable-clocale=uclibc"
+
+ # Nothing wrong with a good dose of verbosity
+ echo
+ einfo "PREFIX: ${PREFIX}"
+ einfo "BINPATH: ${BINPATH}"
+ einfo "LIBPATH: ${LIBPATH}"
+ einfo "DATAPATH: ${DATAPATH}"
+ einfo "STDCXX_INCDIR: ${STDCXX_INCDIR}"
+ echo
+ einfo "Configuring GCC with: ${confgcc//--/\n\t--} ${@} ${EXTRA_ECONF}"
+ echo
+
+ # and now to do the actual configuration
+ addwrite /dev/zero
+ ../configure ${confgcc} $@ ${EXTRA_ECONF} \
+ || die "failed to run configure"
+
+}
+
+# This function accepts one optional argument, the make target to be used.
+# If ommitted, gcc_do_make will try to guess whether it should use all,
+# profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
+# example of how to use this function:
+#
+# gcc_do_make all-target-libstdc++-v3
+#
+# In addition to the target to be used, the following variables alter the
+# behavior of this function:
+#
+# LDFLAGS
+# Flags to pass to ld
+#
+# STAGE1_CFLAGS
+# CFLAGS to use during stage1 of a gcc bootstrap
+#
+# BOOT_CFLAGS
+# CFLAGS to use during stages 2+3 of a gcc bootstrap.
+#
+# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
+#
+g95_gcc_do_make() {
+ # Fix for libtool-portage.patch
+ local OLDS=${S}
+ S=${WORKDIR}/build
+
+ # Set make target to $1 if passed
+ [[ -n $1 ]] && GCC_MAKE_TARGET=$1
+ # default target
+ if is_crosscompile || tc-is-cross-compiler ; then
+ # 3 stage bootstrapping doesnt quite work when you cant run the
+ # resulting binaries natively ^^;
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
+ elif [[ $(tc-arch) == "x86" || $(tc-arch) == "amd64" || $(tc-arch) == "ppc64" ]] \
+ && [[ ${GCCMAJOR}.${GCCMINOR} > 3.3 ]]
+ then
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-profiledbootstrap}
+ else
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
+ fi
+
+ # the gcc docs state that parallel make isnt supported for the
+ # profiledbootstrap target, as collisions in profile collecting may occur.
+ [[ ${GCC_MAKE_TARGET} == "profiledbootstrap" ]] && export MAKEOPTS="${MAKEOPTS} -j1"
+
+ # boundschecking seems to introduce parallel build issues
+ want_boundschecking && export MAKEOPTS="${MAKEOPTS} -j1"
+
+ if [[ ${GCC_MAKE_TARGET} == "all" ]] ; then
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"${CFLAGS}"}
+ elif [[ $(gcc-version) == "3.4" && ${GCC_BRANCH_VER} == "3.4" ]] && gcc-specs-ssp ; then
+ # See bug #79852
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"-O2"}
+ else
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"-O"}
+ fi
+
+ if is_crosscompile; then
+ # In 3.4, BOOT_CFLAGS is never used on a crosscompile...
+ # but I'll leave this in anyways as someone might have had
+ # some reason for putting it in here... --eradicator
+ BOOT_CFLAGS=${BOOT_CFLAGS-"-O2"}
+ else
+ # we only want to use the system's CFLAGS if not building a
+ # cross-compiler.
+ BOOT_CFLAGS=${BOOT_CFLAGS-"$(get_abi_CFLAGS) ${CFLAGS}"}
+ fi
+
+ pushd "${WORKDIR}"/build
+ einfo "Running make LDFLAGS=\"${LDFLAGS}\" STAGE1_CFLAGS=\"${STAGE1_CFLAGS}\" LIBPATH=\"${LIBPATH}\" BOOT_CFLAGS=\"${BOOT_CFLAGS}\" ${GCC_MAKE_TARGET}"
+
+ emake \
+ LDFLAGS="${LDFLAGS}" \
+ STAGE1_CFLAGS="${STAGE1_CFLAGS}" \
+ LIBPATH="${LIBPATH}" \
+ BOOT_CFLAGS="${BOOT_CFLAGS}" \
+ ${GCC_MAKE_TARGET} \
+ || die "emake failed with ${GCC_MAKE_TARGET}"
+
+ if ! use build && ! is_crosscompile && ! use nocxx && use doc ; then
+ if type -p doxygen > /dev/null ; then
+ cd "${CTARGET}"/libstdc++-v3
+ make doxygen-man || ewarn "failed to make docs"
+ else
+ ewarn "Skipping libstdc++ manpage generation since you don't have doxygen installed"
+ fi
+ fi
+
+ popd
+}
+
+pkg_preinst() {
+ einfo "Hoping that no preinst needed"
+}
+
+pkg_postinst() {
+ einfo "Hoping that no postinst needed"
+}
+
+pkg_prerm() {
+ einfo "Hoping that no prerm needed"
+}
+
+pkg_postrm() {
+ einfo "Hoping that no postrm needed"
+}
+
diff --git a/dev-python/tweepy/Manifest b/dev-python/tweepy/Manifest
new file mode 100644
index 0000000..958f9e1
--- /dev/null
+++ b/dev-python/tweepy/Manifest
@@ -0,0 +1,2 @@
+DIST tweepy-1.7.1.tar.gz 19958 RMD160 3741c895d7352644d463218fd5fd2e492bd457b9 SHA1 dfd15e00bb8edd5e0f77cf4ccd90cf88f8f1ab65 SHA256 39f0b39be41bf00c00e2dae3c1e621908c3fada7a93b6a5012c28a4db1928c86
+EBUILD tweepy-1.7.1.ebuild 822 RMD160 f4e052636ee5585adcccd258aeec0a784211faa9 SHA1 2fd7384982dab044e2557f1e338f47828d554682 SHA256 d147619dcf319f3414693d5e52255d4dcf809ba755cb1307fb6df8758f86806e
diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
new file mode 100644
index 0000000..82eedd3
--- /dev/null
+++ b/dev-util/cmake/Manifest
@@ -0,0 +1,19 @@
+AUX 50cmake-gentoo.el 244 SHA256 6010e6df84aa23050fcbc490ae2b22802ede0870ff2e96c43fe541e97e0d6c00 SHA512 70af0b9dd41f08531d3c754dc8af3662df8a22b469b79e8c40b7caae3205be1d4dc81d8b41837d1b6a46f2c348f5407e09e02269823c45c3366777e3bc7a0dcb WHIRLPOOL aa60ffe7e5edd00fdbb32ce2c9aee24fddd6e4d064b8bde55c7ff3b42196c3420596653aade9cc447a3293050c5ab23a27a556f26806e4d67139d264a38d1aaa
+AUX cmake-2.6.3-darwin-bundle.patch 952 SHA256 5429d3d7ba0d2bf2528b4cbf2bd36d3c83a051c064faa9c308d9adfeee334bca SHA512 c355e4f7e578d9837bc172ce22104103f9783390b97cec7bdd2e167880d2c70bc115a1c1146a125e1c501c42c9045d0997ce966edd69fbd791841365fe92c9e0 WHIRLPOOL ecd7cf46c1f07b8bccc8948904710895dd581764f12af5cf0ca0770e9c3b89a30019f59429dc628a42e320e67039ab985e982a3ad6932c7d42c2877af1c9aa7b
+AUX cmake-2.6.3-fix_broken_lfs_on_aix.patch 1366 SHA256 e403b204b3f64e5fb01af631c0bb72f083c3994cb7af91dd54b92458bd08a439 SHA512 fe3148f9a09363c5943f09b963391a4276f2da6095e66c28a1c365fd655e2124e1931b40890152836e24a3c9e330db799199d8ae295fe4581f7124b42f09f928 WHIRLPOOL 322a805a2df9afa40c7ff217481819462d90d8259856696fa4ef76fda1571fa081577eb8cd06fbee899911b01243a912e43a9dcc667932f9885492fcb92c0f98
+AUX cmake-2.6.3-no-duplicates-in-rpath.patch 794 SHA256 908ea65a9db5ca85b2061ad63de714e59930aafeff010939be4829eb60b301c7 SHA512 13dfb5d1ed271eaf673aa53c40a5a17a89812c7617e840ffd3df962e9ed6e46da7b507121f56314a2ef8b86a80b2453cf327684e2c4e82bb903cd8210807f507 WHIRLPOOL b43a187a6f90590460b6e499630a6f6d550cee09309c4c32c0b7d68189bcd84dac309ae4b80bc345de5b32dcc4ac94f789c1fea8162cea4175847c49dc862ccf
+AUX cmake-2.8.0-darwin-default-install_name.patch 911 SHA256 98b93389ad9a39c819b90f8694a9fb208da6bad15dbe1ca72e62783803ff5b6d SHA512 53308a020f2fba9e398a3adfc87af57a270cd2aad2aa982ea41a80fc4af9b64f4bfce4499ef7c64794fe1a11b60f28ab4dd95600378523c9397c5d8ab9f94611 WHIRLPOOL b9db2843408df967e6bb07cb34ea56a90982d5e640e59a10ae39436ca9312c32f7b4b4ce058ff8ec06bddd1400957930574191a793af7f930def5ba17f457453
+AUX cmake-2.8.1-libform.patch 1818 SHA256 3b4ee03c7733b3fb468c5d4c6b139358be751b2398b56ca4ecdbf8a86b1f1ed5 SHA512 10ca910bc86c19beb00dc532c076bd0645b9e54a7472e24438f46a6eedce00855017cbe360b5552df05fec9ca5233cd1c2ca13d6f2e103791e9be2a5e23c1c68 WHIRLPOOL 7ea84d6b61a847d70e60380c7a7842e7e0c7d9e55d19c28557ad63e332f48adf0db58b946d00eeaf0842e51d52a2a90a30aca11bf45e6a21ea01b7f8e0fe3557
+AUX cmake-2.8.4-FindPythonLibs.patch 642 SHA256 5c9be7cad3446dc07ad75cc221a2de7df073fb35670ed5325516ef7db4b0c7a3 SHA512 5baa7080e920cf835fcb9defa1298ebb7fde87eb322d6eacde79ae344870a97a4f7d58d307da77c1f4d2beffc1c76058aaa7189b3f4fdd79c6270f6d3f387065 WHIRLPOOL a289a2e82976d7aa3ef2f86aeb394c46df391780d751d2f463ef816a9cf0b7c723cdab32d120ffd90be38daeb4b4baef00cb8597c3e9f9c98a36e6d57ae6b5be
+AUX cmake-2.8.7-FindBLAS.patch 1641 SHA256 be0d7ce6b59171c9e32ce7fe2ab4ae4a351640a7fa07920ae9230047eb0495ac SHA512 91a38e22d183ca4b501b305e6ba5068397b09b02bd39e7bdf27bf4a7771f432acaf099d0840260ce815f4d254d704036d022aaeec5b8c27dea1e4ca78112731b WHIRLPOOL e9734f0671918be36c5c1ec78f5185b21b17ef3a216b2c988d0951652db8c705e587df80f3e2c544c6e5a5080d5fc403a6554724c82055e3448f661df147205a
+AUX cmake-2.8.7-FindBoost-python.patch 5334 SHA256 1f7ab1facbb332cf6a2d6f770ea77eff00cd7137990d3254ee6c1a9ecd22ed68 SHA512 81d6ef46f006a42d1234f7a2aec3e18052ff5f5cca3019b42a5b3be77978babf75265db61eb32b4b28156a320506fbb6f7dc1038c9b01d13ed92cb7d0a25da4e WHIRLPOOL 3f6a52259e85d07e3209b6639fc1ccceda67f80a99f94ebe8a069a67d706e1e6cf16e30c8da0be6eff67793b30c49e006ea9b8d3f7a8cad562f90db5f7eebcdc
+AUX cmake-2.8.7-FindLAPACK.patch 1744 SHA256 5dbbeaf0532fbdbd24f94175f24c26567d1ec32d409d91de9558f7e8f567323e SHA512 c5dab9c697df3593b8fb5222e619ccc1b1cc82beae0cd685ecabb1a0e31193cf663e95dc4d556e338c9f45e451fcb0fbc1a5f0bc39a65c67e6d9d9193f049990 WHIRLPOOL bc42012b830f998c5b8b892b84314fbc5ec6fdbdae627c2364d112a3e48c5350df9334b17e8b91bb4bd6377f10cc927fd3c3c8008370343fc19d43eef1fda005
+AUX cmake-2.8.8-FindPkgConfig.patch 658 SHA256 3261fce9682f476f121aa3d30126e4f8d866b138c887c19d6f47b60df3de9cbe SHA512 b52986a9faf2329096452c3cf4b3066c2eb51b37d057bf46527dc7797fcd795936d63ad287419c2eba6ffcb0134b24544d62fb5c449e6a25354b65a4d5c63d8f WHIRLPOOL b444f6524b1e24d0c1040508babc03b229e7bac7ba11c978d155252fc8df9d052f7f23010c0db027af9f41e594d6ca131e6018f58a21d83f797762ddf644b911
+AUX cmake-2.8.8-more-no_host_paths.patch 3253 SHA256 8cd923e2b9e9f588e5eb00ea7de4eba17585937d913195fc2a8eb78e1819cac6 SHA512 95111576cfebad57dec11ba0218e0097125d99f89991f711e7051a95c49785a1640d2a93e2bdc9ffda51fcbbda6182e1c90bae63898cc88af7a09e97dade1679 WHIRLPOOL c0fec91d4aec045a51edd4a722c9afe1dffc7c25a9034442d108c33d82a8ebd54f2774f3f9c3afabc0ef363260c588a5bef6d78fa034d7e2f6b653ee1fd661ca
+AUX cmake-2.8.8-pkgconfig.patch 2773 SHA256 6e9fd1a691b74facf59dbce344d1dd92fc95da0e8acfc77feb8bf5bab06f50bd SHA512 a17aa40104651841741fd7ea560b96c083096edfee30b21a242efd18f7fb994010f5875bbf3b444627418dd17e5045d55febe1bbcedc721ec4ffe61e8dd5335b WHIRLPOOL 1472d76e96d4a1755f5f13ac053af3f5f9b78465ef7ab753d366ab3b8e13d6cece137e0da88a9252bb16af56dcccd5c4bd4cc3e6a2563972f27ae14e63233867
+AUX cmake-2.8.8-tests.patch 2492 SHA256 07800482bcbf336eafc9132037a26dc16bffc3d31cda8732604c847ea1c1c860 SHA512 675dae75ca54a264f285c7d678669a75f02438de13c6abed52bcd8223e968a8d0474660f0a7e2432d2b90caaf85cdee0489db90366226bcf7b09067b58088611 WHIRLPOOL dd5ce7c898a5cf5776277be2f9d7ee6b51adbe7bcc6dfa0b02df9230f7dab2bbc4bd4dd8ce1fe740b6570714cc93bdfcd759cab40dadb389e8010e3971df6b98
+AUX cmake-2.8.9-more-no_host_paths.patch 4177 SHA256 376586fd32013150f75aed0b48e54751d9770e9b4756de60eb0a62005894538f SHA512 beb0b2849afbd50bf2cd6562392f96aff351578c873f7d117c4f5cfc5c25bfb3fc4f55cdc78824a2fca81e555ddb111c874086e5862e748a5dd1ab1fb2712c86 WHIRLPOOL 3b12790baac161c487df61077031d9452fe1e195d3028bf6024866c8436e08a51f64315d8fb6dfb648b32750e071faa2cf790ef19e0c12e75f48b85451b10ac1
+AUX cmake-2.8.9-tests.patch 3259 SHA256 969187f56aa38132c3e97e6fdee5f1ee0b028627cf86bdb81a9d6108c432214e SHA512 c2a4f79d6d1d28f8db1ac7c367bd868ff1b931415e12b55b312ce2b037b02d59995d5930cc8c9163784c43cd9c108da4b37daefd089fc2cfe04e582801b5a0b8 WHIRLPOOL 5bb7c23080c44d643cec78be172f6a2ffea6df8d2cb0aa85306edfe45a7de9eb92aa548fc4cc6adac9ca7c00f143d66bb1456e255b9d68f241252cf89db60b60
+AUX cmake.vim 217 SHA256 7366c1d45bdcc93efb1954216a5427a5f9df7e98a1f706c357576d7835aaebc5 SHA512 2f7e9e949f8f3030a0dfcef56f4effea703ee60555c22f6a2d1dfeaf3334f33a3e88910c666f704e4ab60cde4ebb509c7d85d812a3c1627010e52fc757f15cdf WHIRLPOOL 088ae1f0a4f32ea872deaf1d4e8d21d6853d3cecb903ea8abfb06c85de8c200757c2cfb34ec25cd0d8ef2a3c12b3cc9472e9ef0b5ce3f702502100806e0e73fc
+DIST cmake-2.8.8.tar.gz 5691656 SHA256 2b59897864d6220ff20aa8eac64cac8994e004898a1c0f899c8cb4d7b7570b46 SHA512 db31b1335c9964504a080a665c9e23010e081e973ba948b2d55a5adff76183271677c94830f2b604b06337df110eec29a8e8749795576c662c0b2f50fe69c882 WHIRLPOOL 2d0f388de643801cf2f389e9a84d218f09be28226e9b2e11d4a1f60222e3dfdd861b603f919b4b321c926612035944a4903ba4efd1d5397ae56068bfef40e6bd
+EBUILD cmake-2.8.8-r3.ebuild 4927 SHA256 1091cd73137f3a3beacb08b2bfd4c2399c67f21f92e7924d919ae63cb944a00b SHA512 ca17b0650b1ec7de1a5ebefda90284a8a198eee790d458df2749809f3b3b9c7c6d62cd5951a97cc6841e037c00fd733b75ca635b820f51cd5af18f734c55bc54 WHIRLPOOL fdfe46a0209172ecd97ff317229574bff1775e7f97c58aeac33a61a21b21f86dbf11468778d0a5c7043fd6bca85ec7758728196d71230946713297acad7edd36
diff --git a/dev-util/cmake/cmake-2.8.8-r3.ebuild b/dev-util/cmake/cmake-2.8.8-r3.ebuild
new file mode 100644
index 0000000..c733654
--- /dev/null
+++ b/dev-util/cmake/cmake-2.8.8-r3.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/Attic/cmake-2.8.8-r3.ebuild,v 1.10 2012/10/01 11:28:38 johu dead $
+
+EAPI=4
+
+CMAKE_REMOVE_MODULES="no"
+inherit elisp-common toolchain-funcs eutils versionator flag-o-matic base cmake-utils virtualx
+
+MY_P="${PN}-$(replace_version_separator 3 - ${MY_PV})"
+
+DESCRIPTION="Cross platform Make"
+HOMEPAGE="http://www.cmake.org/"
+SRC_URI="http://www.cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
+
+LICENSE="CMake"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+SLOT="0"
+IUSE="emacs ncurses qt4 vim-syntax"
+
+DEPEND="
+ >=app-arch/libarchive-2.8.0
+ >=net-misc/curl-7.20.0-r1[ssl]
+ >=dev-libs/expat-2.0.1
+ virtual/pkgconfig
+ sys-libs/zlib
+ ncurses? ( sys-libs/ncurses )
+ qt4? ( x11-libs/qt-gui:4 )
+"
+RDEPEND="${DEPEND}
+ emacs? ( virtual/emacs )
+ vim-syntax? (
+ || (
+ app-editors/vim
+ app-editors/gvim
+ )
+ )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+VIMFILE="${PN}.vim"
+
+S="${WORKDIR}/${MY_P}"
+
+CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.6.3-darwin-bundle.patch
+ "${FILESDIR}"/${PN}-2.6.3-no-duplicates-in-rpath.patch
+ "${FILESDIR}"/${PN}-2.6.3-fix_broken_lfs_on_aix.patch
+ "${FILESDIR}"/${PN}-2.8.0-darwin-default-install_name.patch
+ "${FILESDIR}"/${PN}-2.8.1-libform.patch
+ "${FILESDIR}"/${PN}-2.8.4-FindPythonLibs.patch
+ "${FILESDIR}"/${PN}-2.8.7-FindBoost-python.patch
+ "${FILESDIR}"/${PN}-2.8.7-FindBLAS.patch
+ "${FILESDIR}"/${PN}-2.8.7-FindLAPACK.patch
+ "${FILESDIR}"/${PN}-2.8.8-FindPkgConfig.patch
+ "${FILESDIR}"/${PN}-2.8.8-more-no_host_paths.patch
+ "${FILESDIR}"/${PN}-2.8.8-tests.patch
+ "${FILESDIR}"/${PN}-2.8.8-pkgconfig.patch
+)
+
+cmake_src_bootstrap() {
+ # Cleanup args to extract only JOBS.
+ # Because bootstrap does not know anything else.
+ echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
+ if [ $? -eq 0 ]; then
+ par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | egrep -o '[[:digit:]]+')
+ par_arg="--parallel=${par_arg}"
+ else
+ par_arg="--parallel=1"
+ fi
+
+ tc-export CC CXX LD
+
+ # bootstrap script isn't exactly /bin/sh compatible
+ ${CONFIG_SHELL:-sh} ./bootstrap \
+ --prefix="${T}/cmakestrap/" \
+ ${par_arg} \
+ || die "Bootstrap failed"
+}
+
+cmake_src_test() {
+ # fix OutDir test
+ # this is altered thanks to our eclass
+ sed -i -e 's:#IGNORE ::g' "${S}"/Tests/OutDir/CMakeLists.txt || die
+
+ pushd "${CMAKE_BUILD_DIR}" > /dev/null
+
+ local ctestargs
+ [[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+ # Excluded tests:
+ # BootstrapTest: we actualy bootstrap it every time so why test it.
+ # SimpleCOnly_sdcc: sdcc choke on global cflags so just skip the test
+ # as it was never intended to be used this way.
+ "${CMAKE_BUILD_DIR}"/bin/ctest ${ctestargs} \
+ -E BootstrapTest SimpleCOnly_sdcc \
+ || die "Tests failed"
+
+ popd > /dev/null
+}
+
+pkg_setup() {
+ einfo "Fixing java access violations ..."
+ # bug 387227
+ addpredict /proc/self/coredump_filter
+}
+
+src_prepare() {
+ base_src_prepare
+
+ # disable running of cmake in boostrap command
+ sed -i \
+ -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+ bootstrap || die "sed failed"
+
+ # Add gcc libs to the default link paths
+ sed -i \
+ -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+ -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+ Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+
+ cmake_src_bootstrap
+}
+
+src_configure() {
+ # make things work with gentoo java setup
+ # in case java-config cannot be run, the variable just becomes unset
+ # per bug #315229
+ export JAVA_HOME=$(java-config -g JAVA_HOME 2> /dev/null)
+
+ local mycmakeargs=(
+ -DCMAKE_USE_SYSTEM_LIBRARIES=ON
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+ -DCMAKE_DOC_DIR=/share/doc/${PF}
+ -DCMAKE_MAN_DIR=/share/man
+ -DCMAKE_DATA_DIR=/share/${PN}
+ $(cmake-utils_use_build ncurses CursesDialog)
+ $(cmake-utils_use_build qt4 QtDialog)
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use emacs && elisp-compile Docs/cmake-mode.el
+}
+
+src_test() {
+ VIRTUALX_COMMAND="cmake_src_test" virtualmake
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use emacs; then
+ elisp-install ${PN} Docs/cmake-mode.el Docs/cmake-mode.elc
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+ if use vim-syntax; then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins Docs/cmake-syntax.vim
+
+ insinto /usr/share/vim/vimfiles/indent
+ doins Docs/cmake-indent.vim
+
+ insinto /usr/share/vim/vimfiles/ftdetect
+ doins "${FILESDIR}/${VIMFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-util/cmake/files/50cmake-gentoo.el b/dev-util/cmake/files/50cmake-gentoo.el
new file mode 100644
index 0000000..e4a1a6d
--- /dev/null
+++ b/dev-util/cmake/files/50cmake-gentoo.el
@@ -0,0 +1,4 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'cmake-mode "cmake-mode" "Major mode for editing CMake files." t)
+(add-to-list 'auto-mode-alist '("CMakeLists\\.txt\\'" . cmake-mode))
+(add-to-list 'auto-mode-alist '("\\.cmake\\'" . cmake-mode))
diff --git a/dev-util/cmake/files/cmake-2.6.3-darwin-bundle.patch b/dev-util/cmake/files/cmake-2.6.3-darwin-bundle.patch
new file mode 100644
index 0000000..6ee9b70
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.6.3-darwin-bundle.patch
@@ -0,0 +1,23 @@
+Don't use .so for modules on darwin/macos. Use .bundle instead.
+Patch by Heiko Przybyl
+
+--- Modules/Platform/Darwin.cmake
++++ Modules/Platform/Darwin.cmake
+@@ -23,7 +23,7 @@
+ SET(CMAKE_SHARED_LIBRARY_PREFIX "lib")
+ SET(CMAKE_SHARED_LIBRARY_SUFFIX ".dylib")
+ SET(CMAKE_SHARED_MODULE_PREFIX "lib")
+-SET(CMAKE_SHARED_MODULE_SUFFIX ".so")
++SET(CMAKE_SHARED_MODULE_SUFFIX ".bundle")
+ SET(CMAKE_MODULE_EXISTS 1)
+ SET(CMAKE_DL_LIBS "")
+
+@@ -45,7 +45,7 @@
+ SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS "-bundle -headerpad_max_install_names")
+ SET(CMAKE_SHARED_MODULE_LOADER_C_FLAG "-Wl,-bundle_loader,")
+ SET(CMAKE_SHARED_MODULE_LOADER_CXX_FLAG "-Wl,-bundle_loader,")
+-SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".so" ".a")
++SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".bundle" ".a")
+
+ # hack: if a new cmake (which uses CMAKE_INSTALL_NAME_TOOL) runs on an old build tree
+ # (where install_name_tool was hardcoded) and where CMAKE_INSTALL_NAME_TOOL isn't in the cache
diff --git a/dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch b/dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch
new file mode 100644
index 0000000..02c3011
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch
@@ -0,0 +1,39 @@
+http://public.kitware.com/Bug/view.php?id=7933
+
+diff -ur cmake-2.6.2/Source/kwsys/kwsysPlatformTestsCXX.cxx cmake-2.6.2-p/Source/kwsys/kwsysPlatformTestsCXX.cxx
+--- cmake-2.6.2/Source/kwsys/kwsysPlatformTestsCXX.cxx Wed Sep 24 20:34:37 2008
++++ cmake-2.6.2-p/Source/kwsys/kwsysPlatformTestsCXX.cxx Tue Nov 4 11:18:32 2008
+@@ -38,6 +38,13 @@
+ int main() { return 0; }
+ #endif
+
++#ifdef TEST_KWSYS_LFS_SUPPORT
++#define _LARGE_FILES
++#include <iostream>
++int main() { return 0; }
++#endif
++
++
+ #ifdef TEST_KWSYS_IOS_HAVE_STD
+ #include <iosfwd>
+ void f(std ::ostream*) {}
+diff -ur cmake-2.6.2/bootstrap cmake-2.6.2-p/bootstrap
+--- cmake-2.6.2/bootstrap Wed Sep 24 20:34:33 2008
++++ cmake-2.6.2-p/bootstrap Tue Nov 4 11:17:11 2008
+@@ -1005,6 +1005,16 @@
+ echo "${cmake_cxx_compiler} does not have stl iterator_traits"
+ fi
+
++if cmake_try_run "${cmake_cxx_compiler}" \
++ "${cmake_cxx_flags} -DTEST_KWSYS_LFS_SUPPORT" \
++ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then
++ KWSYS_LFS_AVAILABLE=1
++ echo "LFS support available"
++else
++ KWSYS_LFS_AVAILABLE=0
++ echo "LFS support unavailable, disabled"
++fi
++
+ if [ "x${KWSYS_STL_HAS_ITERATOR_TRAITS}" = "x0" ]; then
+ if cmake_try_run "${cmake_cxx_compiler}" \
+ "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ITERATOR_CATEGORY -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \
diff --git a/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch b/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch
new file mode 100644
index 0000000..ceb205f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch
@@ -0,0 +1,19 @@
+Patch by Heiko Przybyl
+
+--- Source/cmComputeLinkInformation.cxx
++++ Source/cmComputeLinkInformation.cxx
+@@ -1686,6 +1686,14 @@ std::string cmComputeLinkInformation::Ge
+ for(std::vector<std::string>::const_iterator ri = runtimeDirs.begin();
+ ri != runtimeDirs.end(); ++ri)
+ {
++ // Do not add duplicates.
++ // I'd like to have that check already in the list generation code
++ // but that would need lots of more changes, even in ExpandListArgument().
++ if(*sep != '\0' && (rpath + sep).find(*ri + sep) != std::string::npos)
++ {
++ //std::cerr << "ignoring duplicate: '" << *ri << "' in '" << rpath << "'" << std::endl;
++ continue;
++ }
+ // Separate from previous path.
+ rpath += sep;
+ sep = this->GetRuntimeSep().c_str();
diff --git a/dev-util/cmake/files/cmake-2.8.0-darwin-default-install_name.patch b/dev-util/cmake/files/cmake-2.8.0-darwin-default-install_name.patch
new file mode 100644
index 0000000..4ef0c7b
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.0-darwin-default-install_name.patch
@@ -0,0 +1,20 @@
+The install_name of a library can be compared to the ELF soname, setting
+it to just the library name (libx.1.dylib) is not sufficient on Mach-O,
+as it uses full paths. Most apps have no clue about that, so they don't
+do something like http://www.cmake.org/pipermail/cmake/2006-June/009758.html
+
+Provide a sane default that will allow merging most cmake-based
+packages. If this location is not correct, Portage's QA checks will
+catch that.
+
+--- Source/cmTarget.cxx
++++ Source/cmTarget.cxx
+@@ -974,7 +974,7 @@
+ this->Makefile->IsOn("MINGW"));
+
+ // Setup default property values.
+- this->SetPropertyDefault("INSTALL_NAME_DIR", "");
++ this->SetPropertyDefault("INSTALL_NAME_DIR", "${CMAKE_INSTALL_PREFIX}/lib");
+ this->SetPropertyDefault("INSTALL_RPATH", "");
+ this->SetPropertyDefault("INSTALL_RPATH_USE_LINK_PATH", "OFF");
+ this->SetPropertyDefault("SKIP_BUILD_RPATH", "OFF");
diff --git a/dev-util/cmake/files/cmake-2.8.1-libform.patch b/dev-util/cmake/files/cmake-2.8.1-libform.patch
new file mode 100644
index 0000000..87c7247
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.1-libform.patch
@@ -0,0 +1,50 @@
+diff -u -r cmake-2.8.1.medium/CMakeLists.txt cmake-2.8.1/CMakeLists.txt
+--- cmake-2.8.1.medium/CMakeLists.txt 2010-03-16 21:29:28.000000000 +0100
++++ cmake-2.8.1/CMakeLists.txt 2010-04-04 20:04:47.000000000 +0200
+@@ -314,9 +314,6 @@
+ ELSE (UNIX)
+ SET(BUILD_CursesDialog 0)
+ ENDIF (UNIX)
+- IF(BUILD_CursesDialog)
+- ADD_SUBDIRECTORY(Source/CursesDialog/form)
+- ENDIF(BUILD_CursesDialog)
+ ENDMACRO (CMAKE_BUILD_UTILITIES)
+
+
+diff -u -r cmake-2.8.1.medium/Source/CursesDialog/CMakeLists.txt cmake-2.8.1/Source/CursesDialog/CMakeLists.txt
+--- cmake-2.8.1.medium/Source/CursesDialog/CMakeLists.txt 2010-03-16 21:29:34.000000000 +0100
++++ cmake-2.8.1/Source/CursesDialog/CMakeLists.txt 2010-04-04 20:01:38.000000000 +0200
+@@ -25,13 +25,18 @@
+ CursesDialog/ccmake
+ )
+
+-INCLUDE_DIRECTORIES(${CMake_SOURCE_DIR}/Source/CursesDialog/form
+- ${CMake_BINARY_DIR}/Source/CursesDialog/form)
+ INCLUDE_DIRECTORIES(${CURSES_INCLUDE_PATH})
+
+
+ ADD_EXECUTABLE(ccmake ${CURSES_SRCS} )
+ TARGET_LINK_LIBRARIES(ccmake CMakeLib)
+-TARGET_LINK_LIBRARIES(ccmake cmForm)
++TARGET_LINK_LIBRARIES(ccmake form)
++TARGET_LINK_LIBRARIES(ccmake ${CURSES_LIBRARY})
++IF(CURSES_EXTRA_LIBRARY)
++ TARGET_LINK_LIBRARIES(ccmake ${CURSES_EXTRA_LIBRARY})
++ENDIF(CURSES_EXTRA_LIBRARY)
++
+
+ INSTALL_TARGETS(/bin ccmake)
++
++
+diff -u -r cmake-2.8.1.medium/Source/CursesDialog/cmCursesStandardIncludes.h cmake-2.8.1/Source/CursesDialog/cmCursesStandardIncludes.h
+--- cmake-2.8.1.medium/Source/CursesDialog/cmCursesStandardIncludes.h 2010-03-16 21:29:35.000000000 +0100
++++ cmake-2.8.1/Source/CursesDialog/cmCursesStandardIncludes.h 2010-04-04 20:01:38.000000000 +0200
+@@ -15,8 +15,6 @@
+ #define _MSE_INT_H
+ #endif
+
+-#include <cmFormConfigure.h>
+-
+ #if defined(__hpux)
+ # define _BOOL_DEFINED
+ # include <sys/time.h>
diff --git a/dev-util/cmake/files/cmake-2.8.4-FindPythonLibs.patch b/dev-util/cmake/files/cmake-2.8.4-FindPythonLibs.patch
new file mode 100644
index 0000000..28d2e4f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.4-FindPythonLibs.patch
@@ -0,0 +1,12 @@
+diff -urN cmake-2.8.4.old/Modules/FindPythonLibs.cmake cmake-2.8.4/Modules/FindPythonLibs.cmake
+--- cmake-2.8.4.old/Modules/FindPythonLibs.cmake 2011-02-20 19:32:16.363655002 +0100
++++ cmake-2.8.4/Modules/FindPythonLibs.cmake 2011-02-20 19:33:51.905655001 +0100
+@@ -33,6 +33,8 @@
+ ${Python_ADDITIONAL_VERSIONS}
+ 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0 1.6 1.5)
+
++EXECUTE_PROCESS(COMMAND python -c "import sys; sys.stdout.write('.'.join([str(x) for x in sys.version_info[:2]]))"
++ OUTPUT_VARIABLE _Python_VERSIONS)
+ FOREACH(_CURRENT_VERSION ${_Python_VERSIONS})
+ STRING(REPLACE "." "" _CURRENT_VERSION_NO_DOTS ${_CURRENT_VERSION})
+ IF(WIN32)
diff --git a/dev-util/cmake/files/cmake-2.8.7-FindBLAS.patch b/dev-util/cmake/files/cmake-2.8.7-FindBLAS.patch
new file mode 100644
index 0000000..a91214c
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.7-FindBLAS.patch
@@ -0,0 +1,45 @@
+diff -ruN cmake-2.8.7.orig/Modules/FindBLAS.cmake cmake-2.8.7/Modules/FindBLAS.cmake
+--- cmake-2.8.7.orig/Modules/FindBLAS.cmake 2011-12-30 17:49:56.000000000 +0100
++++ cmake-2.8.7/Modules/FindBLAS.cmake 2012-03-08 05:38:47.000000000 +0100
+@@ -1,3 +1,9 @@
++#
++# Version modified for Gentoo Linux
++# If a valid PkgConfig configuration for blas is found, this overrides and cancels
++# all further checks.
++#
++
+ # - Find BLAS library
+ # This module finds an installed fortran library that implements the BLAS
+ # linear-algebra interface (see http://www.netlib.org/blas/).
+@@ -39,6 +45,24 @@
+ # (To distribute this file outside of CMake, substitute the full
+ # License text for the above reference.)
+
++#
++# first, try PkgConfig
++#
++find_package(PkgConfig REQUIRED)
++pkg_check_modules(PC_BLAS blas)
++if(PC_BLAS_FOUND)
++ foreach(PC_LIB ${PC_BLAS_LIBRARIES})
++ find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS ${PC_BLAS_LIBRARY_DIRS} )
++ if (NOT ${PC_LIB}_LIBRARY)
++ message(FATAL_ERROR "Something is wrong in your pkg-config file - lib ${PC_LIB} not found in ${PC_BLAS_LIBRARY_DIRS}")
++ endif (NOT ${PC_LIB}_LIBRARY)
++ list(APPEND BLAS_LIBRARIES ${${PC_LIB}_LIBRARY})
++ endforeach(PC_LIB)
++ find_package_handle_standard_args(BLAS DEFAULT_MSG BLAS_LIBRARIES)
++ mark_as_advanced(BLAS_LIBRARIES)
++else(PC_BLAS_FOUND)
++message(STATUS "No PkgConfig configuration for BLAS found; starting more extensive search.")
++
+ include(CheckFunctionExists)
+ include(CheckFortranFunctionExists)
+
+@@ -622,3 +646,6 @@
+ endif(BLA_F95)
+
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
++
++endif(PC_BLAS_FOUND)
++
diff --git a/dev-util/cmake/files/cmake-2.8.7-FindBoost-python.patch b/dev-util/cmake/files/cmake-2.8.7-FindBoost-python.patch
new file mode 100644
index 0000000..edaa91f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.7-FindBoost-python.patch
@@ -0,0 +1,73 @@
+--- Modules/FindBoost.cmake
++++ Modules/FindBoost.cmake
+@@ -953,6 +953,11 @@
+ set( _boost_docstring_release "Boost ${COMPONENT} library (release)")
+ set( _boost_docstring_debug "Boost ${COMPONENT} library (debug)")
+
++ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
++ # CPython-specific version of _PYTHON_ABI_EXTRACTION_COMMAND variable from python.eclass.
++ execute_process(COMMAND python -c "import sys; sys.stdout.write('.'.join(str(x) for x in sys.version_info[:2]))" OUTPUT_VARIABLE _python_abi)
++ endif()
++
+ #
+ # Find RELEASE libraries
+ #
+@@ -962,6 +967,14 @@
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT} )
++ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
++ list(APPEND _boost_RELEASE_NAMES
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi} )
++ endif()
+ if(_boost_STATIC_RUNTIME_WORKAROUND)
+ set(_boost_RELEASE_STATIC_ABI_TAG "-s${_boost_RELEASE_ABI_TAG}")
+ list(APPEND _boost_RELEASE_NAMES
+@@ -969,6 +982,13 @@
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
++ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
++ list(APPEND _boost_RELEASE_NAMES
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
++ endif()
+ endif()
+ if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
+ _Boost_PREPEND_LIST_WITH_THREADAPI(_boost_RELEASE_NAMES ${_boost_RELEASE_NAMES})
+@@ -994,6 +1014,15 @@
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT} )
++ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
++ list(APPEND _boost_DEBUG_NAMES
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi} )
++ endif()
+ if(_boost_STATIC_RUNTIME_WORKAROUND)
+ set(_boost_DEBUG_STATIC_ABI_TAG "-s${_boost_DEBUG_ABI_TAG}")
+ list(APPEND _boost_DEBUG_NAMES
+@@ -1001,6 +1030,13 @@
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
++ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
++ list(APPEND _boost_DEBUG_NAMES
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_abi}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
++ endif()
+ endif()
+ if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
+ _Boost_PREPEND_LIST_WITH_THREADAPI(_boost_DEBUG_NAMES ${_boost_DEBUG_NAMES})
diff --git a/dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch b/dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch
new file mode 100644
index 0000000..6808b80
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch
@@ -0,0 +1,44 @@
+diff -ruN cmake-2.8.7.orig/Modules/FindLAPACK.cmake cmake-2.8.7/Modules/FindLAPACK.cmake
+--- cmake-2.8.7.orig/Modules/FindLAPACK.cmake 2011-12-30 17:49:56.000000000 +0100
++++ cmake-2.8.7/Modules/FindLAPACK.cmake 2012-03-09 02:15:46.000000000 +0100
+@@ -1,3 +1,9 @@
++#
++# Version modified for Gentoo Linux
++# If a valid PkgConfig configuration is found, this overrides and cancels
++# all further checks.
++#
++
+ # - Find LAPACK library
+ # This module finds an installed fortran library that implements the LAPACK
+ # linear-algebra interface (see http://www.netlib.org/lapack/).
+@@ -36,6 +42,24 @@
+ # (To distribute this file outside of CMake, substitute the full
+ # License text for the above reference.)
+
++#
++# first, try PkgConfig
++#
++find_package(PkgConfig REQUIRED)
++pkg_check_modules(PC_LAPACK lapack)
++if(PC_LAPACK_FOUND)
++ foreach(PC_LIB ${PC_LAPACK_LIBRARIES})
++ find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS ${PC_LAPACK_LIBRARY_DIRS} )
++ if (NOT ${PC_LIB}_LIBRARY)
++ message(FATAL_ERROR "Something is wrong in your pkg-config file - lib ${PC_LIB} not found in ${PC_LAPACK_LIBRARY_DIRS}")
++ endif (NOT ${PC_LIB}_LIBRARY)
++ list(APPEND LAPACK_LIBRARIES ${${PC_LIB}_LIBRARY})
++ endforeach(PC_LIB)
++ find_package_handle_standard_args(LAPACK DEFAULT_MSG LAPACK_LIBRARIES)
++ mark_as_advanced(LAPACK_LIBRARIES)
++else(PC_LAPACK_FOUND)
++message(STATUS "No PkgConfig configuration for LAPACK found; starting more extensive search.")
++
+ set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
+
+ get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES)
+@@ -305,3 +329,5 @@
+ endif(BLA_F95)
+
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
++
++endif(PC_LAPACK_FOUND)
diff --git a/dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch b/dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch
new file mode 100644
index 0000000..c5e17c5
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch
@@ -0,0 +1,18 @@
+diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
+index c47f583..5783d37 100644
+--- a/Modules/FindPkgConfig.cmake
++++ b/Modules/FindPkgConfig.cmake
+@@ -87,7 +87,12 @@
+ set(PKG_CONFIG_VERSION 1)
+ set(PKG_CONFIG_FOUND 0)
+
+-find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
++if(NOT PKG_CONFIG_EXECUTABLE)
++ set(PKG_CONFIG_EXECUTABLE $ENV{PKG_CONFIG})
++ if(NOT PKG_CONFIG_EXECUTABLE)
++ find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
++ endif(NOT PKG_CONFIG_EXECUTABLE)
++endif(NOT PKG_CONFIG_EXECUTABLE)
+ mark_as_advanced(PKG_CONFIG_EXECUTABLE)
+
+ if(PKG_CONFIG_EXECUTABLE)
diff --git a/dev-util/cmake/files/cmake-2.8.8-more-no_host_paths.patch b/dev-util/cmake/files/cmake-2.8.8-more-no_host_paths.patch
new file mode 100644
index 0000000..b9bf288
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.8-more-no_host_paths.patch
@@ -0,0 +1,113 @@
+Set some proper paths to make cmake find our tools.
+Original patch by Heiko Przybyl, updated for cmake-2.8.8 by Chris Reffett
+
+The ebuild now adds an extra / at the end of $EPREFIX so that it is
+never the empty string (so that CMAKE_SYSTEM_PREFIX_PATH remains
+correct)
+
+--- cmake-2.8.8/Modules/Platform/Darwin.cmake
++++ cmake-2.8.8/Modules/Platform/Darwin.cmake
+@@ -229,20 +229,24 @@
+
+
+
+-# default to searching for frameworks first
+-SET(CMAKE_FIND_FRAMEWORK FIRST)
++# default to searching for frameworks last
++SET(CMAKE_FIND_FRAMEWORK LAST)
+ # set up the default search directories for frameworks
+ SET(CMAKE_SYSTEM_FRAMEWORK_PATH
++ @GENTOO_PORTAGE_EPREFIX@Frameworks
++ @GENTOO_PORTAGE_EPREFIX@usr/lib
+ ~/Library/Frameworks
+ /Library/Frameworks
+ /Network/Library/Frameworks
+ /System/Library/Frameworks)
+
+-# default to searching for application bundles first
+-SET(CMAKE_FIND_APPBUNDLE FIRST)
++# default to searching for application bundles last
++SET(CMAKE_FIND_APPBUNDLE LAST)
+ # set up the default search directories for application bundles
+ SET(_apps_paths)
+ FOREACH(_path
++ @GENTOO_PORTAGE_EPREFIX@Applications
++ @GENTOO_PORTAGE_EPREFIX@usr/bin
+ "~/Applications"
+ "/Applications"
+ "${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+
+diff -ruN cmake-2.8.8.orig/Modules/Platform/UnixPaths.cmake cmake-2.8.8/Modules/Platform/UnixPaths.cmake
+--- cmake-2.8.8/Modules/Platform/UnixPaths.cmake
++++ cmake-2.8.8/Modules/Platform/UnixPaths.cmake
+@@ -33,6 +33,7 @@
+ # search types.
+ LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH
+ # Standard
++ @GENTOO_PORTAGE_EPREFIX@usr/local @GENTOO_PORTAGE_EPREFIX@usr @GENTOO_PORTAGE_EPREFIX@
+ /usr/local /usr /
+
+ # CMake install location
+@@ -44,43 +45,41 @@
+
+ # List common include file locations not under the common prefixes.
+ LIST(APPEND CMAKE_SYSTEM_INCLUDE_PATH
+- # Windows API on Cygwin
+- /usr/include/w32api
+-
+- # X11
+- /usr/X11R6/include /usr/include/X11
+-
+- # Other
+- /usr/pkg/include
+- /opt/csw/include /opt/include
+- /usr/openwin/include
++ @GENTOO_PORTAGE_EPREFIX@usr/include
+ )
+
+ LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH
+- # Windows API on Cygwin
+- /usr/lib/w32api
+-
+- # X11
+- /usr/X11R6/lib /usr/lib/X11
+-
+- # Other
+- /usr/pkg/lib
+- /opt/csw/lib /opt/lib
+- /usr/openwin/lib
++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc
++ @GENTOO_PORTAGE_GCCLIBDIR@
++ @GENTOO_PORTAGE_EPREFIX@usr/lib64
++ @GENTOO_PORTAGE_EPREFIX@usr/libx32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib
++ @GENTOO_PORTAGE_EPREFIX@lib
+ )
+
+ LIST(APPEND CMAKE_SYSTEM_PROGRAM_PATH
+- /usr/pkg/bin
++ @GENTOO_PORTAGE_EPREFIX@usr/bin
++ @GENTOO_PORTAGE_EPREFIX@bin
+ )
+
+ LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES
++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc
++ @GENTOO_PORTAGE_GCCLIBDIR@
++ @GENTOO_PORTAGE_EPREFIX@usr/lib64
++ @GENTOO_PORTAGE_EPREFIX@usr/libx32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib
++ @GENTOO_PORTAGE_EPREFIX@lib
++ /lib /usr/lib /usr/lib32 /usr/lib64 /usr/libx32
+- /lib /usr/lib /usr/lib32 /usr/lib64
+ )
+
+ LIST(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES
++ @GENTOO_PORTAGE_EPREFIX@usr/include
+ /usr/include
+ )
+ LIST(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
++ @GENTOO_PORTAGE_EPREFIX@usr/include
+ /usr/include
+ )
+
diff --git a/dev-util/cmake/files/cmake-2.8.8-pkgconfig.patch b/dev-util/cmake/files/cmake-2.8.8-pkgconfig.patch
new file mode 100644
index 0000000..e5eed4d
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.8-pkgconfig.patch
@@ -0,0 +1,62 @@
+From 3ea850a5023060b84dcc0e6f0098c32c28b15807 Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <eike@sf-mail.de>
+Date: Fri, 13 Apr 2012 08:50:49 +0200
+Subject: [PATCH] FindPkgConfig.cmake: fix documented output variable not set (#13125,#13132)
+
+The real fix is from Yury G. Kudryashov while I added the surrounding cleanups.
+An additional hint to really get this fixed came from Rex Dieter.
+---
+ Modules/FindPkgConfig.cmake | 8 ++++++--
+ Tests/CMakeOnly/AllFindModules/CMakeLists.txt | 3 +--
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
+index 5d93ab1..39d3a76 100644
+--- a/Modules/FindPkgConfig.cmake
++++ b/Modules/FindPkgConfig.cmake
+@@ -13,11 +13,10 @@
+ # When the 'QUIET' argument is set, no status messages will be printed.
+ #
+ # It sets the following variables:
+-# PKG_CONFIG_FOUND ... true if pkg-config works on the system
++# PKG_CONFIG_FOUND ... if pkg-config executable was found
+ # PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
+ # PKG_CONFIG_VERSION_STRING ... the version of the pkg-config program found
+ # (since CMake 2.8.8)
+-# PKG_CONFIG_FOUND ... if pkg-config executable was found
+ #
+ # For the following variables two sets of values exist; first one is the
+ # common one and has the given PREFIX. The second set contains flags
+@@ -104,6 +103,11 @@ find_package_handle_standard_args(PkgConfig
+ REQUIRED_VARS PKG_CONFIG_EXECUTABLE
+ VERSION_VAR PKG_CONFIG_VERSION_STRING)
+
++# This is needed because the module name is "PkgConfig" but the name of
++# this variable has always been PKG_CONFIG_FOUND so this isn't automatically
++# handled by FPHSA.
++set(PKG_CONFIG_FOUND "${PKGCONFIG_FOUND}")
++
+ # Unsets the given variables
+ macro(_pkgconfig_unset var)
+ set(${var} "" CACHE INTERNAL "")
+diff --git a/Tests/CMakeOnly/AllFindModules/CMakeLists.txt b/Tests/CMakeOnly/AllFindModules/CMakeLists.txt
+index 6604208..fc65e58 100644
+--- a/Tests/CMakeOnly/AllFindModules/CMakeLists.txt
++++ b/Tests/CMakeOnly/AllFindModules/CMakeLists.txt
+@@ -71,7 +71,7 @@ endmacro(check_version_string)
+ # reported.
+
+ foreach(VTEST ALSA ARMADILLO BZIP2 CUPS CURL EXPAT FREETYPE GETTEXT GIT HSPELL
+- JASPER LIBXML2 LIBXSLT PERL PostgreSQL TIFF ZLIB)
++ JASPER LIBXML2 LIBXSLT PERL PKG_CONFIG PostgreSQL TIFF ZLIB)
+ check_version_string(${VTEST} ${VTEST}_VERSION_STRING)
+ endforeach(VTEST)
+
+@@ -82,4 +82,3 @@ endforeach(VTEST)
+
+ check_version_string(PYTHONINTERP PYTHON_VERSION_STRING)
+ check_version_string(SUBVERSION Subversion_VERSION_SVN)
+-check_version_string(PKGCONFIG PKG_CONFIG_VERSION_STRING)
+--
+1.7.0
+
diff --git a/dev-util/cmake/files/cmake-2.8.8-tests.patch b/dev-util/cmake/files/cmake-2.8.8-tests.patch
new file mode 100644
index 0000000..64af9d3
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.8-tests.patch
@@ -0,0 +1,58 @@
+Remove DeployQt4 test, which tries to break sandbox and ignores prefix, and CTest.updatecvs, which fails to commit as root
+--- cmake-2.8.8/Tests/CMakeLists.txt
++++ cmake-2.8.8/Tests/CMakeLists.txt
+@@ -273,23 +273,6 @@
+ )
+ LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleUtilities")
+
+- # run test for DeployQt4 on supported platforms/compilers (which depends on BundleUtilities)
+- # this test also depends on the existence of the standard qtiff plugin
+- if(QT4_WORKS AND QT_QTSQL_FOUND)
+- ADD_TEST(Qt4Deploy ${CMAKE_CTEST_COMMAND}
+- --build-and-test
+- "${CMake_SOURCE_DIR}/Tests/Qt4Deploy"
+- "${CMake_BINARY_DIR}/Tests/Qt4Deploy"
+- --build-generator ${CMAKE_TEST_GENERATOR}
+- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+- --build-project Qt4Deploy
+- --build-options
+- -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+- -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
+- )
+- LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Qt4Deploy")
+- endif()
+-
+ endif()
+ endif()
+
+@@ -1548,30 +1531,6 @@
+ LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${CTestUpdateSVN_DIR}")
+ ENDIF(Subversion_FOUND)
+
+- # Test CTest Update with CVS
+- IF(EXISTS ${CMAKE_ROOT}/Modules/FindCVS.cmake)
+- FIND_PACKAGE(CVS QUIET)
+- ELSE(EXISTS ${CMAKE_ROOT}/Modules/FindCVS.cmake)
+- FIND_PROGRAM(CVS_EXECUTABLE NAMES cvs)
+- SET(CVS_FOUND ${CVS_EXECUTABLE})
+- ENDIF(EXISTS ${CMAKE_ROOT}/Modules/FindCVS.cmake)
+- SET(CTEST_TEST_UPDATE_CVS ${CVS_FOUND})
+- IF(CTEST_TEST_UPDATE_CVS AND NOT UNIX)
+- IF("${CVS_EXECUTABLE}" MATCHES "cygwin")
+- MESSAGE(STATUS "No CTest.UpdateCVS test with cygwin cvs.exe outside cygwin!")
+- SET(CTEST_TEST_UPDATE_CVS 0)
+- ENDIF("${CVS_EXECUTABLE}" MATCHES "cygwin")
+- ENDIF(CTEST_TEST_UPDATE_CVS AND NOT UNIX)
+- IF(CTEST_TEST_UPDATE_CVS)
+- SET(CTestUpdateCVS_DIR "CTest UpdateCVS")
+- CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestUpdateCVS.cmake.in"
+- "${CMake_BINARY_DIR}/Tests/CTestUpdateCVS.cmake" @ONLY)
+- ADD_TEST(CTest.UpdateCVS ${CMAKE_CMAKE_COMMAND}
+- -P "${CMake_BINARY_DIR}/Tests/CTestUpdateCVS.cmake"
+- )
+- LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${CTestUpdateCVS_DIR}")
+- ENDIF(CTEST_TEST_UPDATE_CVS)
+-
+ # Test CTest Update with BZR
+ FIND_PROGRAM(BZR_EXECUTABLE NAMES bzr)
+ MARK_AS_ADVANCED(BZR_EXECUTABLE)
diff --git a/dev-util/cmake/files/cmake-2.8.9-more-no_host_paths.patch b/dev-util/cmake/files/cmake-2.8.9-more-no_host_paths.patch
new file mode 100644
index 0000000..4e833ca
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.9-more-no_host_paths.patch
@@ -0,0 +1,133 @@
+From 3f5fa933d17e24cafd75ae28c00f4fc0292eae92 Mon Sep 17 00:00:00 2001
+From: Johannes Huber <johu@gentoo.org>
+Date: Wed, 15 Aug 2012 14:42:16 +0200
+Subject: [PATCH] Set some proper paths to make cmake find our tools.
+
+The ebuild now adds an extra / at the end of $EPREFIX so that it is
+never the empty string (so that CMAKE_SYSTEM_PREFIX_PATH remains
+correct)
+
+Original patch by Heiko Przybyl.
+Updated by Chris Reffett (cmake-2.8.8)
+Update by Johannes Huber (cmake-2.8.9)
+---
+ Modules/Platform/Darwin.cmake | 12 +++++++----
+ Modules/Platform/UnixPaths.cmake | 43 +++++++++++++++++++-------------------
+ 2 files changed, 29 insertions(+), 26 deletions(-)
+
+diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake
+index eff07b2..cbedc47 100644
+--- a/Modules/Platform/Darwin.cmake
++++ b/Modules/Platform/Darwin.cmake
+@@ -228,24 +228,28 @@ SET(CMAKE_CXX_CREATE_MACOSX_FRAMEWORK
+ "<CMAKE_CXX_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <LINK_FLAGS> -o <TARGET> <SONAME_FLAG> <TARGET_INSTALLNAME_DIR><TARGET_SONAME> <OBJECTS> <LINK_LIBRARIES>")
+
+
+-# default to searching for frameworks first
++# default to searching for frameworks last
+ IF(NOT DEFINED CMAKE_FIND_FRAMEWORK)
+- SET(CMAKE_FIND_FRAMEWORK FIRST)
++ SET(CMAKE_FIND_FRAMEWORK LAST)
+ ENDIF()
+ # set up the default search directories for frameworks
+ SET(CMAKE_SYSTEM_FRAMEWORK_PATH
++ @GENTOO_PORTAGE_EPREFIX@Frameworks
++ @GENTOO_PORTAGE_EPREFIX@usr/lib
+ ~/Library/Frameworks
+ /Library/Frameworks
+ /Network/Library/Frameworks
+ /System/Library/Frameworks)
+
+-# default to searching for application bundles first
++# default to searching for application bundles last
+ IF(NOT DEFINED CMAKE_FIND_APPBUNDLE)
+- SET(CMAKE_FIND_APPBUNDLE FIRST)
++ SET(CMAKE_FIND_APPBUNDLE LAST)
+ ENDIF()
+ # set up the default search directories for application bundles
+ SET(_apps_paths)
+ FOREACH(_path
++ @GENTOO_PORTAGE_EPREFIX@Applications
++ @GENTOO_PORTAGE_EPREFIX@usr/bin
+ "~/Applications"
+ "/Applications"
+ "${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+
+diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake
+index 5ee7ddb..961746d 100644
+--- a/Modules/Platform/UnixPaths.cmake
++++ b/Modules/Platform/UnixPaths.cmake
+@@ -33,6 +33,7 @@ GET_FILENAME_COMPONENT(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH)
+ # search types.
+ LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH
+ # Standard
++ @GENTOO_PORTAGE_EPREFIX@usr/local @GENTOO_PORTAGE_EPREFIX@usr @GENTOO_PORTAGE_EPREFIX@
+ /usr/local /usr /
+
+ # CMake install location
+@@ -44,43 +45,41 @@ LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH
+
+ # List common include file locations not under the common prefixes.
+ LIST(APPEND CMAKE_SYSTEM_INCLUDE_PATH
+- # Windows API on Cygwin
+- /usr/include/w32api
+-
+- # X11
+- /usr/X11R6/include /usr/include/X11
+-
+- # Other
+- /usr/pkg/include
+- /opt/csw/include /opt/include
+- /usr/openwin/include
++ @GENTOO_PORTAGE_EPREFIX@usr/include
+ )
+
+ LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH
+- # Windows API on Cygwin
+- /usr/lib/w32api
+-
+- # X11
+- /usr/X11R6/lib /usr/lib/X11
+-
+- # Other
+- /usr/pkg/lib
+- /opt/csw/lib /opt/lib
+- /usr/openwin/lib
++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc
++ @GENTOO_PORTAGE_GCCLIBDIR@
++ @GENTOO_PORTAGE_EPREFIX@usr/lib64
++ @GENTOO_PORTAGE_EPREFIX@usr/libx32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib
++ @GENTOO_PORTAGE_EPREFIX@lib
+ )
+
+ LIST(APPEND CMAKE_SYSTEM_PROGRAM_PATH
+- /usr/pkg/bin
++ @GENTOO_PORTAGE_EPREFIX@usr/bin
++ @GENTOO_PORTAGE_EPREFIX@bin
+ )
+
+ LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES
+- /lib /usr/lib /usr/lib32 /usr/lib64
++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc
++ @GENTOO_PORTAGE_GCCLIBDIR@
++ @GENTOO_PORTAGE_EPREFIX@usr/lib64
++ @GENTOO_PORTAGE_EPREFIX@usr/libx32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib32
++ @GENTOO_PORTAGE_EPREFIX@usr/lib
++ @GENTOO_PORTAGE_EPREFIX@lib
++ /lib /usr/lib /usr/lib32 /usr/lib64 /usr/libx32
+ )
+
+ LIST(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES
++ @GENTOO_PORTAGE_EPREFIX@usr/include
+ /usr/include
+ )
+ LIST(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
++ @GENTOO_PORTAGE_EPREFIX@usr/include
+ /usr/include
+ )
+
+--
+1.7.9.7
+
diff --git a/dev-util/cmake/files/cmake-2.8.9-tests.patch b/dev-util/cmake/files/cmake-2.8.9-tests.patch
new file mode 100644
index 0000000..251a87f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.9-tests.patch
@@ -0,0 +1,81 @@
+Removes the following tests:
+
+- DeployQt4, which tries to break sandbox and ignores prefix
+- CTest.updatecvs, which fails to commit as root
+- TestUpload, which requires network access
+
+--- Tests/CMakeLists.txt
++++ Tests/CMakeLists.txt
+@@ -273,23 +273,6 @@
+ )
+ LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleUtilities")
+
+- # run test for DeployQt4 on supported platforms/compilers (which depends on BundleUtilities)
+- # this test also depends on the existence of the standard qtiff plugin
+- if(QT4_WORKS AND QT_QTSQL_FOUND)
+- ADD_TEST(Qt4Deploy ${CMAKE_CTEST_COMMAND}
+- --build-and-test
+- "${CMake_SOURCE_DIR}/Tests/Qt4Deploy"
+- "${CMake_BINARY_DIR}/Tests/Qt4Deploy"
+- --build-generator ${CMAKE_TEST_GENERATOR}
+- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+- --build-project Qt4Deploy
+- --build-options
+- -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+- -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
+- )
+- LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Qt4Deploy")
+- endif()
+-
+ endif()
+ endif()
+
+@@ -1582,30 +1565,6 @@
+ LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${CTestUpdateSVN_DIR}")
+ ENDIF(Subversion_FOUND)
+
+- # Test CTest Update with CVS
+- IF(EXISTS ${CMAKE_ROOT}/Modules/FindCVS.cmake)
+- FIND_PACKAGE(CVS QUIET)
+- ELSE(EXISTS ${CMAKE_ROOT}/Modules/FindCVS.cmake)
+- FIND_PROGRAM(CVS_EXECUTABLE NAMES cvs)
+- SET(CVS_FOUND ${CVS_EXECUTABLE})
+- ENDIF(EXISTS ${CMAKE_ROOT}/Modules/FindCVS.cmake)
+- SET(CTEST_TEST_UPDATE_CVS ${CVS_FOUND})
+- IF(CTEST_TEST_UPDATE_CVS AND NOT UNIX)
+- IF("${CVS_EXECUTABLE}" MATCHES "cygwin")
+- MESSAGE(STATUS "No CTest.UpdateCVS test with cygwin cvs.exe outside cygwin!")
+- SET(CTEST_TEST_UPDATE_CVS 0)
+- ENDIF("${CVS_EXECUTABLE}" MATCHES "cygwin")
+- ENDIF(CTEST_TEST_UPDATE_CVS AND NOT UNIX)
+- IF(CTEST_TEST_UPDATE_CVS)
+- SET(CTestUpdateCVS_DIR "CTest UpdateCVS")
+- CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestUpdateCVS.cmake.in"
+- "${CMake_BINARY_DIR}/Tests/CTestUpdateCVS.cmake" @ONLY)
+- ADD_TEST(CTest.UpdateCVS ${CMAKE_CMAKE_COMMAND}
+- -P "${CMake_BINARY_DIR}/Tests/CTestUpdateCVS.cmake"
+- )
+- LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${CTestUpdateCVS_DIR}")
+- ENDIF(CTEST_TEST_UPDATE_CVS)
+-
+ # Test CTest Update with BZR
+ FIND_PROGRAM(BZR_EXECUTABLE NAMES bzr)
+ MARK_AS_ADVANCED(BZR_EXECUTABLE)
+@@ -1701,17 +1660,6 @@
+ FAIL_REGULAR_EXPRESSION "SegFault")
+
+ CONFIGURE_FILE(
+- "${CMake_SOURCE_DIR}/Tests/CTestTestUpload/test.cmake.in"
+- "${CMake_BINARY_DIR}/Tests/CTestTestUpload/test.cmake"
+- @ONLY ESCAPE_QUOTES)
+- ADD_TEST(CTestTestUpload ${CMAKE_CTEST_COMMAND}
+- -S "${CMake_BINARY_DIR}/Tests/CTestTestUpload/test.cmake" -V
+- --output-log "${CMake_BINARY_DIR}/Tests/CTestTestUpload/testOut.log"
+- )
+- SET_TESTS_PROPERTIES(CTestTestUpload PROPERTIES
+- PASS_REGULAR_EXPRESSION "Upload\\.xml")
+-
+- CONFIGURE_FILE(
+ "${CMake_SOURCE_DIR}/Tests/CTestTestConfigFileInBuildDir/test1.cmake.in"
+ "${CMake_BINARY_DIR}/Tests/CTestTestConfigFileInBuildDir1/test1.cmake"
+ @ONLY ESCAPE_QUOTES)
diff --git a/dev-util/cmake/files/cmake.vim b/dev-util/cmake/files/cmake.vim
new file mode 100644
index 0000000..5cecd7d
--- /dev/null
+++ b/dev-util/cmake/files/cmake.vim
@@ -0,0 +1,3 @@
+autocmd BufRead,BufNewFile *.cmake,CMakeLists.txt,*.cmake.in runtime! indent/cmake.vim
+autocmd BufRead,BufNewFile *.cmake,CMakeLists.txt,*.cmake.in setf cmake
+autocmd BufRead,BufNewFile *.ctest,*.ctest.in setf cmake
diff --git a/dev-util/ndiff/ChangeLog b/dev-util/ndiff/ChangeLog
new file mode 100644
index 0000000..17a9585
--- /dev/null
+++ b/dev-util/ndiff/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for dev-util/ndiff
+
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*ndiff-2.00 (7 Dec 2011)
+
+ 07 Dec 2011; Marc van der Sluys <AstroFloyd@gmail.com> +ndiff-2.00.ebuild,
+ +metadata.xml:
+ Initial import
+
diff --git a/dev-util/ndiff/Manifest b/dev-util/ndiff/Manifest
new file mode 100644
index 0000000..d1bbd46
--- /dev/null
+++ b/dev-util/ndiff/Manifest
@@ -0,0 +1,4 @@
+DIST ndiff-2.00.tar.gz 230850 RMD160 e43154f80b988d0e50507bfc301e3ef09b806915 SHA1 b9ef2eb0de0cd26c3c92e0b3342d0ea4c37e8975 SHA256 f2bbd9a2c8ada7f4161b5e76ac5ebf9a2862cab099933167fe604b88f000ec2c
+EBUILD ndiff-2.00.ebuild 849 RMD160 e42f8661d04af3734985197deb42b0bfd5169236 SHA1 37ff08b16ca17c5232187697a39d13644f1ff034 SHA256 f5b3e0cdfee215dbe306f0db2e6ac390f459cc85afc683930d0b0306f2ecfbdd
+MISC ChangeLog 254 RMD160 051818a6ccd15066b3115dbb9be5b55dc5cb2a7c SHA1 e3111df7d486d8282fa95d1127f520585c816b65 SHA256 96e57d7764620f4dfedce6e36edcbec44f6212f0e089ea7108b8fc2b1f96b3aa
+MISC metadata.xml 258 RMD160 928fbdaa58fc02b10ffd96fc26322b4115978bdc SHA1 d159f126f8751fffb8a1fce67ff4c20d22183841 SHA256 078d1bb3cc9e6faf47ce4597e2552ca1892e79dedc65d849fc7f82682e5d03f0
diff --git a/dev-util/ndiff/metadata.xml b/dev-util/ndiff/metadata.xml
new file mode 100644
index 0000000..eeff77c
--- /dev/null
+++ b/dev-util/ndiff/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>AstroFloyd@gmail.com</email>
+ <name>Marc van der Sluys</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/gnome-extra/nautilus-dropbox/Manifest b/gnome-extra/nautilus-dropbox/Manifest
new file mode 100644
index 0000000..52bc8e3
--- /dev/null
+++ b/gnome-extra/nautilus-dropbox/Manifest
@@ -0,0 +1,2 @@
+DIST nautilus-dropbox-0.6.1.tar.bz2 306545 RMD160 52638938e453dc3b7e13d52fda41c964d6338892 SHA1 c22c91a368fc03daac44db95d43fb9aa6ff0a92a SHA256 104520fc0a16c733cfd1e9a4ffa0ab1f4ad9a2a5dbf15357011ea3b9c331e36f
+EBUILD nautilus-dropbox-0.6.1.ebuild 1480 RMD160 6022ba8fd61a17647c381e291711b5e193b17317 SHA1 a7431e6e4c53c5f32dbfd5fa1444f85abaaa4c38 SHA256 ba32db35e188953aa7b6c2e1bc50ec96f235740997e3129b989ae9587ab99c42
diff --git a/kde-base/okular/Manifest b/kde-base/okular/Manifest
new file mode 100644
index 0000000..cb6d65d
--- /dev/null
+++ b/kde-base/okular/Manifest
@@ -0,0 +1,2 @@
+DIST okular-4.7.4.tar.bz2 1172730 SHA256 2b22733a253dc47547229e02fcb4366bad8cf339b7cd3b243f41836fdb73a10f SHA512 615cfcf617634f192c7c47683db758036b1945b624147ba45535364bfac22425605813bae49f00a3aa1149b4a20569efeb99d180203e02a55db3f767256f380f WHIRLPOOL 9da3e6e09c79db84ce9afd8b9317e7fe28e91a583d459c2f0b428134520a2d697b87456c7a4e3763c066c21a0ade9b8af8cdcc9e0ac01ff43dcbf03fa1465f0a
+EBUILD okular-4.7.4.ebuild 1237 SHA256 38fe3ec30477a4a00ee9d0046585667fc7fc7133abab550a90d491b7ffb83abd SHA512 35ee6e140ccdd3aebd6ca2f1c456fd15aa07ea6f656de33e66807e2bd38825ab12ac18cd2e46d5ccba2c40d512dd818b3c86c86bd91bfb7bc5c096af7a8ccbd3 WHIRLPOOL f31b23a0f54e618034c83b5f63867e031477ca5ccc2bb62609b1fbd6b7e928b27b75da37df57749506e685316a2f1ea0400091d11684b512b948b568f6bb5d76
diff --git a/kde-base/okular/okular-4.7.4.ebuild b/kde-base/okular/okular-4.7.4.ebuild
new file mode 100644
index 0000000..d4d0597
--- /dev/null
+++ b/kde-base/okular/okular-4.7.4.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/okular/Attic/okular-4.7.4.ebuild,v 1.7 2012/09/03 13:29:57 johu dead $
+
+EAPI=4
+
+KDE_HANDBOOK="optional"
+KDE_SCM="git"
+inherit kde4-base
+
+DESCRIPTION="Okular is an universal document viewer based on KPDF for KDE 4."
+KEYWORDS="amd64 ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="chm crypt debug djvu ebook +jpeg +postscript +pdf +tiff"
+
+DEPEND="
+ media-libs/freetype
+ media-libs/qimageblitz
+ sys-libs/zlib
+ chm? ( dev-libs/chmlib )
+ crypt? ( app-crypt/qca:2 )
+ djvu? ( app-text/djvu )
+ ebook? ( app-text/ebook-tools )
+ jpeg? ( virtual/jpeg:0 )
+ pdf? ( >=app-text/poppler-0.12.3-r3[qt4,-exceptions(-)] )
+ postscript? ( app-text/libspectre )
+ tiff? ( media-libs/tiff )
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ mycmakeargs=(
+ $(cmake-utils_use_with chm)
+ $(cmake-utils_use_with crypt QCA2)
+ $(cmake-utils_use_with djvu DjVuLibre)
+ $(cmake-utils_use_with ebook EPub)
+ $(cmake-utils_use_with jpeg)
+ $(cmake-utils_use_with postscript LibSpectre)
+ $(cmake-utils_use_with pdf PopplerQt4)
+ $(cmake-utils_use_with pdf Poppler)
+ $(cmake-utils_use_with tiff)
+ )
+
+ kde4-base_src_configure
+}
diff --git a/kde-base/pykde4/Manifest b/kde-base/pykde4/Manifest
new file mode 100644
index 0000000..909db2c
--- /dev/null
+++ b/kde-base/pykde4/Manifest
@@ -0,0 +1,7 @@
+AUX kpythonpluginfactorywrapper.c 1167 SHA256 e8658cb7d518fa4840a0346f775a498807e00c8f3543544c080d6ed6810924e0 SHA512 56184ffe7ad161e7e9e494b5bceb6baa4acfde628df8665022aa4704a2bedc7abd2925dce53cb35e6e05b841e9992103e198f817a2163dd229c1b4d1b3509989 WHIRLPOOL 51b75d12b4e9130943c5118db7b132bf1688845cd8ec2c592e3e4cb99483567b95e73eb63edd4a51d36d020fb03bbfa9011838d2f6d69e1d2f05896ab89bddfb
+AUX kpythonpluginfactorywrapper.c-r1 1255 SHA256 f89773e5b44515093a0434a2c8925097d0dc358b58fa11a125e732d191727576 SHA512 aa167083a56dc0f7d03c282cc4adec062f56d610ed39c55fbe1dea918d08427e86da392b25b0982c7db6c69adeb342bd6e53b290f24c1de028d9f945e0df1229 WHIRLPOOL 96a08f80bc88cf1d278dc7980a585d8e7b29945a6a9df1cdf6d685434996f861cc9b50a849848415298953a922892e7096d32b2d37aa8edc47755b9506d6b77d
+AUX pykde4-4.4.4-arm-sip.patch 822 SHA256 c2defa87628148fe77eb82f43f5904ace4bb66898424218423c79c7fa40613e2 SHA512 047c20ae42030c434bbcc0b4c522ecc9b5ded43631362390666a20aadbc8d9a0c4d76ddcfee1c805b161dddfa62eede48281e6c4f985c940e2d9bf30af0eb3f3 WHIRLPOOL 82bc0045cc48773b075270f49c1b583f419929317ee574ba0ed9851573dcfd2d6c9b40aae3f12d492450fb32e16a4f71127b9eb2b1d1215209c9fee8f2c5f175
+AUX pykde4-4.6.3-python-3.2.patch 488 SHA256 6b54c9ce2c82b4affb4d1e6f9af0f2bd1873387570043561fc989881e26e89a2 SHA512 e12f6fa1c4ab240eabbc7537bbd1dbf9666e84fbbee0144680d2385ce0aace60f70e15caf774e94099d76205451a78ee61a6c804f656077bed89bc7c93eb264c WHIRLPOOL a87f95ddc5b8a8363574bcc970845ace9f95e8f383582743122d9b38112f7a76dea1f8afd7555d8f9d8cd7357ba99e2ab0576de096ae5eac68a9e29b2d6c8a34
+AUX pykde4-4.9.2-pyqt45.patch 1852 SHA256 550bf76dcf533a44683ab22fa5d729f1e5e9c5d90583f9c24e1e974e2f59e9a8 SHA512 7d81f8aba7c59e9f2951b5009719e354deae8f03cc65fb81bc6ec25d60e1837e0c56a061d275101816a663eda457818cdfe0855154c952724fa2f9c0812f4cb2 WHIRLPOOL 1da66193630b19cb3528405a9b29bf4c2e7a66b34a10b6954d12bbc4ad1dd9af3609c17522bf9abef9e7deca2652b64adb73cc5bd06c14035bf0d79fb99d37ac
+DIST pykde4-4.7.4.tar.bz2 2106112 SHA256 ff9ec71867dec95086c5ec5dfc4d4a681bb3c76ff4942a12cc4efd0ce2cf871d SHA512 a750d03db6204c30b530799ae3ca8e963c3f7798c73983d938e6d961f93280b6e05d2dcf65bc74c4344169be4b5532f9c820c98764476a1c0bf0759770306fb5 WHIRLPOOL c1019be71575ee49c5abb60ffcdeeb70b6fda8cc05722358153e28c6ba045a48dbe7623ef8eb983817bcc94ceb27ad9ad842debe3f999135a642091edcef7b85
+EBUILD pykde4-4.7.4.ebuild 4210 SHA256 8f3fcb4267bcb714905c435a570888aa35870d792b94066cc8fbde20ba2eb51d SHA512 382a85a5da197e94937eeee732734f21b9dfe0e5768fa4a913e67a307a06e5fa545488af095fb125fb1860b9c6dd38c69655548185d3a4418f103f9802f16ab8 WHIRLPOOL d23e1c8e29fd965e80975790027d83fcab1c08d149b425eac4d45cbaaaca9b5ac3dfe2a1b3a66317150262380594f8aa19d5b4b6ad567c4747d9278d80c5e00c
diff --git a/kde-base/pykde4/files/kpythonpluginfactorywrapper.c b/kde-base/pykde4/files/kpythonpluginfactorywrapper.c
new file mode 100644
index 0000000..3915a0d
--- /dev/null
+++ b/kde-base/pykde4/files/kpythonpluginfactorywrapper.c
@@ -0,0 +1,52 @@
+#include <dlfcn.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#define VERSION_LEN 10
+
+#define FORMAT EPREFIX PLUGIN_DIR "/kpython%spluginfactory.so"
+
+static void *handle;
+static void *(*wrapped_qt_plugin_instance)();
+
+static void get_python_version(char* out) {
+ int pipefd[2];
+ pipe(pipefd);
+ pid_t cpid = fork();
+ if (cpid == 0) {
+ close(pipefd[1]);
+ read(pipefd[0], out, VERSION_LEN);
+ } else {
+ close(pipefd[0]);
+ close(1);
+ dup2(pipefd[1], 1);
+ close(pipefd[1]);
+ close(0);
+ char *args[] = { "eselect", "python", "show", "--ABI", "--python2", 0 };
+ execv(EPREFIX "/usr/bin/eselect", args);
+ }
+}
+
+__attribute__((constructor))
+static void init() {
+ char buf[VERSION_LEN + 1];
+ memset(buf, 0, VERSION_LEN + 1);
+ get_python_version(buf);
+ int length = strlen(FORMAT) + strlen(buf) + 1;
+ char *name = malloc(length + 1);
+ snprintf(name, length, FORMAT, buf);
+ void *handle = dlopen(name, RTLD_NOW);
+ free(name);
+ wrapped_qt_plugin_instance = dlsym(handle, "qt_plugin_instance");
+}
+
+__attribute__((destructor))
+static void fini() {
+ dlclose(handle);
+}
+
+void *qt_plugin_instance() {
+ return wrapped_qt_plugin_instance();
+}
diff --git a/kde-base/pykde4/files/kpythonpluginfactorywrapper.c-r1 b/kde-base/pykde4/files/kpythonpluginfactorywrapper.c-r1
new file mode 100644
index 0000000..b5d152f
--- /dev/null
+++ b/kde-base/pykde4/files/kpythonpluginfactorywrapper.c-r1
@@ -0,0 +1,60 @@
+#include <dlfcn.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#define VERSION_LEN 10
+
+#define FORMAT EPREFIX PLUGIN_DIR "/kpython%spluginfactory.so"
+
+static void *handle;
+static void *(*wrapped_qt_plugin_instance)();
+
+static void get_python_version(char* out) {
+ int pipefd[2];
+ pipe(pipefd);
+ pid_t cpid = fork();
+ if (cpid == 0) {
+ close(pipefd[1]);
+ read(pipefd[0], out, VERSION_LEN);
+ } else {
+ close(pipefd[0]);
+ close(1);
+ dup2(pipefd[1], 1);
+ close(pipefd[1]);
+ close(0);
+ char *args[] = { "eselect", "python", "show", "--ABI", "--python2", 0 };
+ execv(EPREFIX "/usr/bin/eselect", args);
+ }
+}
+
+__attribute__((constructor))
+static void init() {
+ char buf[VERSION_LEN + 1];
+ memset(buf, 0, VERSION_LEN + 1);
+ get_python_version(buf);
+ char *s = buf;
+ while(*s != '\0') {
+ if(*s == '\n') {
+ *s = '\0';
+ break;
+ }
+ ++s;
+ }
+ int length = strlen(FORMAT) + strlen(buf) + 1;
+ char *name = malloc(length + 1);
+ snprintf(name, length, FORMAT, buf);
+ handle = dlopen(name, RTLD_NOW);
+ free(name);
+ wrapped_qt_plugin_instance = dlsym(handle, "qt_plugin_instance");
+}
+
+__attribute__((destructor))
+static void fini() {
+ dlclose(handle);
+}
+
+void *qt_plugin_instance() {
+ return wrapped_qt_plugin_instance();
+}
diff --git a/kde-base/pykde4/files/pykde4-4.4.4-arm-sip.patch b/kde-base/pykde4/files/pykde4-4.4.4-arm-sip.patch
new file mode 100644
index 0000000..f967c45
--- /dev/null
+++ b/kde-base/pykde4/files/pykde4-4.4.4-arm-sip.patch
@@ -0,0 +1,22 @@
+diff -Naur pykde4-4.4.3.orig/python/pykde4/CMakeLists.txt pykde4-4.4.3/python/pykde4/CMakeLists.txt
+--- pykde4-4.4.3.orig/python/pykde4/CMakeLists.txt 2010-03-29 14:57:40.000000000 +0200
++++ pykde4-4.4.3/python/pykde4/CMakeLists.txt 2010-05-31 15:49:17.095615617 +0200
+@@ -75,6 +75,9 @@
+ ${KDEPIMLIBS_INCLUDE_DIRS}
+ )
+
++# Pull in ARM configuration options if needed
++STRING(REGEX MATCH "PyQt_qreal_double" SIP_ARM_HACK ${PYQT4_SIP_FLAGS} "")
++
+ SET(SIP_INCLUDES ${PYQT4_SIP_DIR} sip)
+ SET(SIP_CONCAT_PARTS 8)
+ IF (WIN32)
+@@ -82,7 +85,7 @@
+ ELSE (WIN32)
+ SET(SIP_TAGS ALL WS_X11 ${PYQT4_VERSION_TAG})
+ ENDIF (WIN32)
+-SET(SIP_DISABLE_FEATURES VendorID PyQt_NoPrintRangeBug)
++SET(SIP_DISABLE_FEATURES VendorID PyQt_NoPrintRangeBug ${SIP_ARM_HACK})
+
+ # Use an extra option when compiling on Python 3.
+ IF (PYTHON_3)
diff --git a/kde-base/pykde4/files/pykde4-4.6.3-python-3.2.patch b/kde-base/pykde4/files/pykde4-4.6.3-python-3.2.patch
new file mode 100644
index 0000000..62abdf0
--- /dev/null
+++ b/kde-base/pykde4/files/pykde4-4.6.3-python-3.2.patch
@@ -0,0 +1,17 @@
+--- python/pykde4/sip/kio/kfileitem.sip
++++ python/pykde4/sip/kio/kfileitem.sip
+@@ -236,7 +236,13 @@
+
+ len = sipCpp->count();
+
+- if (PySlice_GetIndicesEx((PySliceObject *)a0, len, &start, &stop, &step, &slicelength) < 0)
++ if (PySlice_GetIndicesEx(
++#if PY_VERSION_HEX >= 0x03020000
++ a0,
++#else
++ (PySliceObject *)a0,
++#endif
++ len, &start, &stop, &step, &slicelength) < 0)
+ sipIsErr = 1;
+ else
+ {
diff --git a/kde-base/pykde4/files/pykde4-4.9.2-pyqt45.patch b/kde-base/pykde4/files/pykde4-4.9.2-pyqt45.patch
new file mode 100644
index 0000000..9fcced5
--- /dev/null
+++ b/kde-base/pykde4/files/pykde4-4.9.2-pyqt45.patch
@@ -0,0 +1,54 @@
+Index: pykde4-4.9.2/CMakeLists.txt
+===================================================================
+--- pykde4-4.9.2.orig/CMakeLists.txt
++++ pykde4-4.9.2/CMakeLists.txt
+@@ -33,7 +33,7 @@ INCLUDE(SIPMacros)
+
+ FIND_PACKAGE(PyQt4 REQUIRED)
+ IF(PYQT4_VERSION STRLESS "040900") # These version numbers also appear in ../CMakeLists.txt
+- MESSAGE(FATAL_ERROR "The version of PyQt found is too old. 4.9 or later is required.")
++ MESSAGE(FATAL_ERROR "The version of PyQt found is too old. 4.9.5 or later is required.")
+ ENDIF(PYQT4_VERSION STRLESS "040900")
+
+
+@@ -95,9 +95,19 @@ SET(SIP_DISABLE_FEATURES VendorID PyQt_N
+
+ # Use an extra option when compiling on Python 3.
+ IF (PYTHON_3)
+- SET(SIP_EXTRA_OPTIONS -g -x Py_v3)
++ IF(PYQT4_VERSION STRGREATER "040904")
++ #Disable for newer PyQt
++ SET(SIP_EXTRA_OPTIONS -g -x PyKDE_QVector -x Py_v3)
++ ELSE(PYQT4_VERSION STRGREATER "040904")
++ SET(SIP_EXTRA_OPTIONS -g -x Py_v3)
++ ENDIF(PYQT4_VERSION STRGREATER "040904")
+ ELSE (PYTHON_3)
+- SET(SIP_EXTRA_OPTIONS -g)
++ IF(PYQT4_VERSION STRGREATER "040904")
++ #Disable for newer PyQt
++ SET(SIP_EXTRA_OPTIONS -g -x PyKDE_QVector)
++ ELSE(PYQT4_VERSION STRGREATER "040904")
++ SET(SIP_EXTRA_OPTIONS -g -x Py_v3)
++ ENDIF(PYQT4_VERSION STRGREATER "040904")
+ ENDIF (PYTHON_3)
+
+ ADD_DEFINITIONS(-D_REENTRANT -DQT_CORE_LIB -DQT_GUI_LIB -DUSING_SOPRANO_NRLMODEL_UNSTABLE_API)
+Index: pykde4-4.9.2/sip/kdecore/typedefs.sip
+===================================================================
+--- pykde4-4.9.2.orig/sip/kdecore/typedefs.sip
++++ pykde4-4.9.2/sip/kdecore/typedefs.sip
+@@ -951,6 +951,9 @@ template <TYPE1>
+ %End
+ };
+
++%Feature PyKDE_QVector
++
++%If(PyKDE_QVector)
+ %MappedType QVector<int>
+ {
+ %TypeHeaderCode
+@@ -1025,3 +1028,4 @@ template <TYPE1>
+ return sipGetState(sipTransferObj);
+ %End
+ };
++%End
diff --git a/kde-base/pykde4/pykde4-4.7.4.ebuild b/kde-base/pykde4/pykde4-4.7.4.ebuild
new file mode 100644
index 0000000..6909c21
--- /dev/null
+++ b/kde-base/pykde4/pykde4-4.7.4.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/pykde4/Attic/pykde4-4.7.4.ebuild,v 1.6 2012/09/03 13:30:01 johu dead $
+
+EAPI=4
+
+PYTHON_DEPEND="*:2.5"
+RESTRICT_PYTHON_ABIS="*-jython 2.4 2.7-pypy-*"
+PYTHON_USE_WITH="threads"
+SUPPORT_PYTHON_ABIS="1"
+
+OPENGL_REQUIRED="always"
+KDE_SCM="git"
+inherit python portability kde4-base
+
+DESCRIPTION="Python bindings for KDE4"
+KEYWORDS="amd64 ~arm ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="debug doc examples semantic-desktop"
+
+# blocker added due to compatibility issues and error during compile time
+RDEPEND="
+ >=dev-python/sip-4.12.3-r2
+ $(add_kdebase_dep kdelibs 'opengl,semantic-desktop=')
+ semantic-desktop? ( $(add_kdebase_dep kdepimlibs 'semantic-desktop') )
+ aqua? ( >=dev-python/PyQt4-4.8.2[dbus,declarative,sql,svg,webkit,aqua] )
+ !aqua? ( >=dev-python/PyQt4-4.8.2[dbus,declarative,sql,svg,webkit,X] )
+"
+DEPEND="${RDEPEND}
+ sys-devel/libtool
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.6.3-python-3.2.patch
+)
+
+pkg_setup() {
+ python_pkg_setup
+ kde4-base_pkg_setup
+
+ have_python2=false
+
+ scan_python_versions() {
+ [[ ${PYTHON_ABI} == 2.* ]] && have_python2=true
+ :
+ }
+ python_execute_function -q scan_python_versions
+ if ! ${have_python2}; then
+ ewarn "You do not have a Python 2 version selected."
+ ewarn "kpythonpluginfactory will not be built"
+ fi
+}
+
+src_prepare() {
+ kde4-base_src_prepare
+
+ if ! use examples; then
+ sed -e '/^ADD_SUBDIRECTORY(examples)/s/^/# DISABLED /' -i CMakeLists.txt \
+ || die "Failed to disable examples"
+ fi
+
+ # See bug 322351
+ use arm && epatch "${FILESDIR}/${PN}-4.4.4-arm-sip.patch"
+
+ sed -i -e 's/kpythonpluginfactory /kpython${PYTHON_SHORT_VERSION}pluginfactory /g' kpythonpluginfactory/CMakeLists.txt
+
+ if ${have_python2}; then
+ mkdir -p "${WORKDIR}/wrapper" || die "failed to copy wrapper"
+ cp "${FILESDIR}/kpythonpluginfactorywrapper.c" "${WORKDIR}/wrapper" || die "failed to copy wrapper"
+ fi
+}
+
+src_configure() {
+ configuration() {
+ local mycmakeargs=(
+ -DWITH_PolkitQt=OFF
+ -DWITH_QScintilla=OFF
+ $(cmake-utils_use_with semantic-desktop Soprano)
+ $(cmake-utils_use_with semantic-desktop Nepomuk)
+ $(cmake-utils_use_with semantic-desktop KdepimLibs)
+ -DPYTHON_EXECUTABLE=$(PYTHON -a)
+ )
+ local CMAKE_BUILD_DIR=${S}_build-${PYTHON_ABI}
+ kde4-base_src_configure
+ }
+
+ python_execute_function configuration
+}
+
+echo_and_run() {
+ echo "$@"
+ "$@"
+}
+
+src_compile() {
+ compilation() {
+ local CMAKE_BUILD_DIR=${S}_build-${PYTHON_ABI}
+ kde4-base_src_compile
+ }
+ python_execute_function compilation
+
+ if ${have_python2}; then
+ cd "${WORKDIR}/wrapper"
+ echo_and_run libtool --tag=CC --mode=compile $(tc-getCC) \
+ -shared \
+ ${CFLAGS} ${CPPFLAGS} \
+ -DEPREFIX="\"${EPREFIX}\"" \
+ -DPLUGIN_DIR="\"/usr/$(get_libdir)/kde4\"" -c \
+ -o kpythonpluginfactorywrapper.lo \
+ kpythonpluginfactorywrapper.c
+ echo_and_run libtool --tag=CC --mode=link $(tc-getCC) \
+ -shared -module -avoid-version \
+ ${CFLAGS} ${LDFLAGS} \
+ -o kpythonpluginfactory.la \
+ -rpath "${EPREFIX}/usr/$(get_libdir)/kde4" \
+ kpythonpluginfactorywrapper.lo \
+ $(dlopen_lib)
+ fi
+}
+
+src_install() {
+ installation() {
+ cd "${S}_build-${PYTHON_ABI}"
+ emake DESTDIR="${T}/images/${PYTHON_ABI}" install
+ }
+ python_execute_function installation
+
+ python_merge_intermediate_installation_images "${T}/images"
+
+ # As we don't call the eclass's src_install, we have to install the docs manually
+ DOCS=("${S}"/{AUTHORS,NEWS,README})
+ use doc && HTML_DOCS=("${S}/docs/html/")
+ base_src_install_docs
+
+ if ${have_python2}; then
+ cd "${WORKDIR}/wrapper"
+ echo_and_run libtool --mode=install install kpythonpluginfactory.la "${ED}/usr/$(get_libdir)/kde4/kpythonpluginfactory.la"
+ rm "${ED}/usr/$(get_libdir)/kde4/kpythonpluginfactory.la"
+ fi
+}
+
+pkg_postinst() {
+ kde4-base_pkg_postinst
+
+ python_mod_optimize PyKDE4 PyQt4/uic/pykdeuic4.py PyQt4/uic/widget-plugins/kde4.py
+
+ if use examples; then
+ echo
+ elog "PyKDE4 examples have been installed to"
+ elog "${EPREFIX}/usr/share/apps/${PN}/examples"
+ echo
+ fi
+}
+
+pkg_postrm() {
+ kde4-base_pkg_postrm
+
+ python_mod_cleanup PyKDE4 PyQt4/uic/pykdeuic4.py PyQt4/uic/widget-plugins/kde4.py
+}
diff --git a/kde-misc/akonadi-googledata/ChangeLog b/kde-misc/akonadi-googledata/ChangeLog
new file mode 100644
index 0000000..f268c6c
--- /dev/null
+++ b/kde-misc/akonadi-googledata/ChangeLog
@@ -0,0 +1,4 @@
+ * 21/11/2011: MvdS:
+ copied from kde overlay to local MvdS overlay
+
+
diff --git a/kde-misc/akonadi-googledata/Manifest b/kde-misc/akonadi-googledata/Manifest
new file mode 100644
index 0000000..98bded2
--- /dev/null
+++ b/kde-misc/akonadi-googledata/Manifest
@@ -0,0 +1,5 @@
+DIST akonadi-googledata-1.2.0.tar.bz2 126372 RMD160 1ade12b9705e6341a5fcb765e4e65b6170fe3633 SHA1 4cf707cce882166aa00ece78a4e7152410ba54b8 SHA256 b2c29e78e1c6d9ffbc5052113d39bd12277803bf74e4ca70c805e2963f0f8974
+EBUILD akonadi-googledata-1.2.0.ebuild 707 RMD160 e41c90e7a3afffc65886eba8089a27602829cdd3 SHA1 3b17f35d58f83a486eee3bb1f421c49352dc11a6 SHA256 7e054b079d5847db5b0ca381b4d1ad9fe156bb1556ba5faddced1f683895786d
+EBUILD akonadi-googledata-9999.ebuild 629 RMD160 3785116b84c7d2f491cccb88d713617f12548a4b SHA1 cc176736421aa2a1de67edde3826595dd3520e66 SHA256 15c53f995ea55d1a1d070dcb620190f3ce909a29119cbc69cb9367d7bef92f84
+MISC ChangeLog 70 RMD160 b4afb7bc715f0672f425badd4b1bf6e849d0febf SHA1 30403377911d10a2746c5ed9988a0356b37d7457 SHA256 cb3f4457de2552b64e474166744701fede33ac2df7bd0ac8196f6751f42da716
+MISC metadata.xml 157 RMD160 09fb7b798f3f68127626e97c69e5215a0513ecbb SHA1 d5ffebb2f4248fc8f65ab21c3af6e4f5dbf8bf6e SHA256 01f6fa4357ce08e8b0f7900a51fa78c7f060fefc7c7da98acaec1e283dd59892
diff --git a/kde-misc/akonadi-googledata/metadata.xml b/kde-misc/akonadi-googledata/metadata.xml
new file mode 100644
index 0000000..a23f444
--- /dev/null
+++ b/kde-misc/akonadi-googledata/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>kde</herd>
+</pkgmetadata>
diff --git a/kde-misc/kdnssd-avahi/Manifest b/kde-misc/kdnssd-avahi/Manifest
new file mode 100644
index 0000000..fdfff99
--- /dev/null
+++ b/kde-misc/kdnssd-avahi/Manifest
@@ -0,0 +1,3 @@
+DIST kde-admindir-3.5.5.tar.bz2 187274 RMD160 24528f3bf94e7d1a1036b6e5af180719785839ed SHA1 b640d2606305201b0ec030555c324d326440efff SHA256 1aa56856e432839ec74a67ab33fc21b56ed4f1b4b5c60bfd5b953cb2d3423153
+DIST kdnssd-avahi_0.1.2.orig.tar.gz 569115 RMD160 a9ee8286931f60acddce338abcadf2447a803ab6 SHA1 ac7372beb6baa62dc99cc729ce3a2ff3c6300c7c SHA256 ec7075875b1e64910e6be4aecfbff691964079abcd1b2ac46d066e836bd5b8fb
+EBUILD kdnssd-avahi-0.1.2-r1.ebuild 1182 RMD160 744ca0a70978a8a7de9d539a9c935342ca9f800a SHA1 6285a0f615e379d02709a2f1c05f007e8b6c8cf0 SHA256 d188f636dcaae3a85b0affc81ffc09114f6fd849fdcc92227ad715624bd0336d
diff --git a/kde-misc/ksynaptics/Manifest b/kde-misc/ksynaptics/Manifest
new file mode 100644
index 0000000..4e6d754
--- /dev/null
+++ b/kde-misc/ksynaptics/Manifest
@@ -0,0 +1,2 @@
+DIST ksynaptics-0.3.3.tar.bz2 834292 RMD160 bc275e3bde0b07a0d99c2535b45d86429a6de11c SHA1 0b4c5cb1bf992bf1ba96603b782d5b7228f70d5a SHA256 de514ea2b53f2a3db0013dd0da8ec7375c0176f40513c50f1ae6b9f5c3d5ffe4
+EBUILD ksynaptics-0.3.3-r1.ebuild 539 RMD160 4ba91cfe8186b4f78f17ee308b1862bedb5acfd1 SHA1 0843c67753737903707c1c7722c2dc957cc64b18 SHA256 a044861472433e5620ebd83fab41edf10eebc1ce778da016819344361ed754f5
diff --git a/kde-misc/touchfreeze/Manifest b/kde-misc/touchfreeze/Manifest
new file mode 100644
index 0000000..2d97797
--- /dev/null
+++ b/kde-misc/touchfreeze/Manifest
@@ -0,0 +1,2 @@
+DIST touchfreeze-0.2.3.tar.gz 23109 RMD160 3b4d9f57b72fde1ff56b5654d2f36a3ae000a7b3 SHA1 c4e3cfada6edea88175dbb697c8043f0e03c306c SHA256 82b3e5e35db8bbaab35ae9f6309851df82fa66857b6f015496cb833756188e8f
+EBUILD touchfreeze-0.2.3.ebuild 630 RMD160 bf8b94a9f57a63aebed2a695e673eb9e65f6151d SHA1 b1fc09d25b19115e5f30a855a540d487bc36efe9 SHA256 af366e004f5e2405e70d09560f310f572bbc257f4656491672a14c467372e610
diff --git a/media-gfx/tex2im/Manifest b/media-gfx/tex2im/Manifest
new file mode 100644
index 0000000..74f1a9c
--- /dev/null
+++ b/media-gfx/tex2im/Manifest
@@ -0,0 +1,2 @@
+DIST tex2im-1.8.tar.gz 28727 RMD160 e43eb3c24b4f4cc6f5b73ce1eda0ce396dc8979e SHA1 d2022e3b02fea61dfbb64d9a28a562494f2fa6eb SHA256 e97f771eacb4e4bd82476d1ee559f8aaa2f40bd93650895e766b37169d3006ee
+EBUILD tex2im-1.8.ebuild 1115 RMD160 ccdfb973060df43b5b1fd5c035c6f10cd3e306e6 SHA1 f1903761b7ba3177b6e7ee6bbad17dafe848df60 SHA256 7bca158e5b55abc794202fd8ed6b5ea5c4e609dc76110101098a6283108e88a8
diff --git a/media-video/nvidia-settings/Manifest b/media-video/nvidia-settings/Manifest
new file mode 100644
index 0000000..403c5bd
--- /dev/null
+++ b/media-video/nvidia-settings/Manifest
@@ -0,0 +1,2 @@
+DIST nvidia-settings-260.19.29.tar.bz2 1536011 RMD160 a1fcb31d6e23a96530e6c9e9b871deaf220bfd2c SHA1 d73c5274e95cd4ede405c4e7e9d5ad02da3bdcfd SHA256 60dc2e2693ac1950301f3a3f837e5ca6470087b1509efa54c26b6bd5544974f5
+EBUILD nvidia-settings-260.19.29.ebuild 1944 RMD160 5e0142afc4893181fe9994d3b295020d3b0e2c76 SHA1 242864e8da517bc467f5ab4d37c0b43fbf41dbc5 SHA256 cce97fc9d2e4cc079a7d68945dbdbf162b3250e4c52b8d9dc7bda936972ae97a
diff --git a/net-im/skype/Manifest b/net-im/skype/Manifest
new file mode 100644
index 0000000..ebac198
--- /dev/null
+++ b/net-im/skype/Manifest
@@ -0,0 +1,3 @@
+DIST skype-2.1.0.81.tar.bz2 19659673 RMD160 0b145ee9e89ab2592fc7d3590412da0a36eb903f SHA1 8d4fbb26eb1a791f2e6f2da7bba8a698377b8592 SHA256 5f1218b658fb7d22f03ffdeb660c74896ffe20ac68f392b0d21a300012a928f4
+DIST skype_static-2.1.0.81.tar.bz2 27555345 RMD160 bdc6f4b04ec61d1002cca8ff3def331102c53011 SHA1 8839a80b2fe7276c53ac4ec5b0fd77f2e8d63904 SHA256 5cbdc7c07b47af01607ac6d0b7285368866f92a244f52aed68c4f7c227d466ae
+EBUILD skype-2.1.0.81.ebuild 2767 RMD160 fc7faabedad29c713c4f92bc0a067227c6eca6d2 SHA1 b789b801a7bb8e7e2b0d8ccb522dc01c3d92d956 SHA256 15e45595dc3f1b690e834275dd51112158c66485cae6507a874aa22d5816d919
diff --git a/net-misc/networkmanager/ChangeLog b/net-misc/networkmanager/ChangeLog
new file mode 100644
index 0000000..c9a5ca5
--- /dev/null
+++ b/net-misc/networkmanager/ChangeLog
@@ -0,0 +1,197 @@
+# ChangeLog for net-misc/networkmanager
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/networkmanager/ChangeLog,v 1.33 2008/08/17 16:16:38 maekke Exp $
+
+ 17 Aug 2008; Markus Meier <maekke@gentoo.org> networkmanager-0.6.6.ebuild:
+ x86 stable, bug #228837
+
+ 28 Jul 2008; Kenneth Prugh <ken69267@gentoo.org>
+ networkmanager-0.6.6.ebuild:
+ amd64 stable, bug #228837. Removed unused autotools inherit.
+
+ 26 Jun 2008; Robert Buchholz <rbu@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild,
+ -networkmanager-0.6.5_p20080205.ebuild, networkmanager-0.6.6.ebuild:
+ Readd ~ppc which was dropped due to >=hal-0.5.10 dependency, and remove old
+ version. Block latest version of libnl (bug #223381).
+
+ 07 Mar 2008; Steev Klimaszewski <steev@gentoo.org>
+ -files/NM-po-linguas.patch, -networkmanager-0.6.5.98.ebuild,
+ +networkmanager-0.6.6.ebuild:
+ Remove the patches that 0.6.5.98 were using
+
+*networkmanager-0.6.6 (07 Mar 2008)
+
+ 07 Mar 2008; Steev Klimaszewski <steev@gentoo.org>
+ -networkmanager-0.6.5.98.ebuild, +networkmanager-0.6.6.ebuild:
+ New upstream release. Unmentioned changes in the release notes include the
+ updated backend being committed for Gentoo, as well as new init scripts from
+ compnerd.
+
+*networkmanager-0.6.5.98 (14 Feb 2008)
+
+ 14 Feb 2008; Steev Klimaszewski <steev@gentoo.org>
+ +files/NM-po-linguas.patch, +networkmanager-0.6.5.98.ebuild:
+ Add 0.6.5.98 (aka 0.6.6rc1) to the tree, include patch from Debian to use
+ po/LINGUAS.
+
+ 14 Feb 2008; Steev Klimaszewski <steev@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild,
+ networkmanager-0.6.5_p20080205.ebuild:
+ Fix the libnotify dependency, this is unneeded in NetworkManager as the
+ graphical bits have been split out.
+
+*networkmanager-0.6.5_p20080205 (10 Feb 2008)
+
+ 10 Feb 2008; Steev Klimaszewski <steev@gentoo.org>
+ -networkmanager-0.6.5_p20080130.ebuild,
+ +networkmanager-0.6.5_p20080205.ebuild:
+ Bump NetworkManager snapshot
+
+ 04 Feb 2008; Steev Klimaszewski <steev@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild:
+ Update the dependency to be 1.0_pre6* not just 1.0_pre6.
+
+ 02 Feb 2008; Steev Klimaszewski <steev@gentoo.org>
+ +files/NetworkManagerDispatcher, networkmanager-0.6.5_p20080130.ebuild:
+ Add NetworkManagerDispatcher init script for the latest snapshot
+
+*networkmanager-0.6.5_p20080130 (02 Feb 2008)
+
+ 02 Feb 2008; Steev Klimaszewski <steev@gentoo.org>
+ -files/networkmanager-0.6.4-Gentoo-checklo.patch,
+ -files/networkmanager-0.6.4-confchanges.patch,
+ -files/networkmanager-0.6.4-dbus-1.patch,
+ -files/networkmanager-0.6.4-gentooinitscript.patch,
+ -networkmanager-0.6.4_pre20061028.ebuild,
+ -networkmanager-0.6.4_pre20061028-r1.ebuild, -networkmanager-0.6.5.ebuild,
+ networkmanager-0.6.5_p20070823.ebuild,
+ +networkmanager-0.6.5_p20080130.ebuild:
+ Remove old versions of NetworkManager and add a bump that works with libnl 1.1
+
+ 25 Dec 2007; Christian Heim <phreak@gentoo.org> metadata.xml:
+ Removing metalgod from metadata.xml as per #99350.
+
+ 16 Sep 2007; Markus Meier <maekke@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild:
+ x86 stable, bug #191302
+
+ 08 Sep 2007; Joseph Jezak <josejx@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild:
+ Marked ppc stable for bug #191302.
+
+ 05 Sep 2007; Robert Buchholz <rbu@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild:
+ Add die with iproute minimal build (bug #190046)
+
+ 05 Sep 2007; Wulf C. Krueger <philantrop@gentoo.org>
+ networkmanager-0.6.5_p20070823.ebuild:
+ Marked stable on amd64 as per bug 191302 to make sure stable systems
+ actually work.
+
+ 28 Aug 2007; nixnut <nixnut@gentoo.org> networkmanager-0.6.5.ebuild:
+ Stable on ppc wrt bug 189781
+
+ 26 Aug 2007; Wulf C. Krueger <philantrop@gentoo.org>
+ networkmanager-0.6.5.ebuild:
+ Marked stable on amd64 as per bug 189781.
+
+ 24 Aug 2007; Christian Faulhammer <opfer@gentoo.org>
+ networkmanager-0.6.5.ebuild:
+ stable x86, bug 189781
+
+*networkmanager-0.6.5_p20070823 (23 Aug 2007)
+
+ 23 Aug 2007; Robert Buchholz <rbu@gentoo.org> metadata.xml,
+ +networkmanager-0.6.5_p20070823.ebuild:
+ Version bump to a current 0.6 branch state, adding myself to metadata
+
+ 15 May 2007; Thilo Bangert <bangert@gentoo.org> metadata.xml:
+ add <herd>no-herd</herd>
+
+ 14 May 2007; Steev Klimaszewski <steev@gentoo.org>
+ networkmanager-0.6.5.ebuild:
+ Fix homepage url, fixes bug #178101. Thanks to Pacho Ramos for reporting
+
+ 11 May 2007; Gustavo Zacarias <gustavoz@gentoo.org>
+ networkmanager-0.6.5.ebuild:
+ Keyworded ~ppc
+
+ 03 May 2007; Steev Klimaszewski <steev@gentoo.org>
+ networkmanager-0.6.5.ebuild:
+ Add use_with gnome to G2CONF. Fixes bug #176867, thanks to Ingmar Vanhassel
+ <ingmar.vanhassel@gmail.com> for reporting
+
+*networkmanager-0.6.5 (02 May 2007)
+
+ 02 May 2007; Steev Klimaszewski <steev@gentoo.org>
+ +files/networkmanager-0.6.5-confchanges.patch,
+ +networkmanager-0.6.5.ebuild:
+ New upstream release of NetworkManager.
+
+ 26 Jan 2007; Mart Raudsepp <leio@gentoo.org>
+ networkmanager-0.6.4_pre20061028.ebuild,
+ networkmanager-0.6.4_pre20061028-r1.ebuild:
+ Really fix gnome and gcrypt use on configure
+
+ 14 Jan 2007; Markus Rothe <corsair@gentoo.org>
+ networkmanager-0.6.4_pre20061028-r1.ebuild:
+ Added ~ppc and ~ppc64
+
+ 05 Jan 2007; Diego Pettenò <flameeyes@gentoo.org>
+ networkmanager-0.6.4_pre20061028.ebuild,
+ networkmanager-0.6.4_pre20061028-r1.ebuild:
+ Remove debug.eclass usage.
+
+ 06 Dec 2006; Steev Klimaszewski <steev@gentoo.org>
+ +files/networkmanager-0.6.4-dbus-1.patch,
+ networkmanager-0.6.4_pre20061028-r1.ebuild:
+ Add patch from the NetworkManager mailing list to fix compilation against
+ D-Bus 1.x. Fixes bug #155279. Thanks to Priit Laes for reporting.
+
+ 04 Dec 2006; Luis Medinas <metalgod@gentoo.org>
+ networkmanager-0.6.4_pre20061028.ebuild,
+ networkmanager-0.6.4_pre20061028-r1.ebuild:
+ Fix gnome use on configure. Closes bug #155192.
+
+*networkmanager-0.6.4_pre20061028-r1 (26 Nov 2006)
+
+ 26 Nov 2006; Luis Medinas <metalgod@gentoo.org>
+ +files/networkmanager-updatedbackend.patch,
+ +networkmanager-0.6.4_pre20061028-r1.ebuild:
+ Added a patch with Gentoo backend updated done by Nathan Caldwell
+ <saintdev@gmail.com>. Please test the backend and report any bug.
+
+ 05 Nov 2006; Steev Klimaszewski <steev@gentoo.org>
+ networkmanager-0.6.4_pre20061028.ebuild:
+ Fix the names of patches since epkgmove apparently renamed the patches as
+ well.
+
+*networkmanager-0.6.4_pre20061028 (05 Nov 2006)
+
+ 05 Nov 2006; Steev Klimaszewski <steev@gentoo.org>
+ +files/networkmanager-0.6.4-Gentoo-checklo.patch,
+ +files/networkmanager-0.6.4-confchanges.patch,
+ +files/networkmanager-0.6.4-gentooinitscript.patch,
+ +files/networkmanager-resolvconf-perms.patch,
+ +files/networkmanager-use-kernel-headers.patch, +metadata.xml,
+ +networkmanager-0.6.4_pre20061028.ebuild:
+ Moved from net-misc/NetworkManager to net-misc/networkmanager.
+
+ 04 Nov 2006; Luis Medinas <metalgod@gentoo.org>
+ NetworkManager-0.6.4_pre20061028.ebuild:
+ Remove pam_console from dependencies since our patch makes it work with
+ hal/dbus instead of pam_console.
+
+*NetworkManager-0.6.4_pre20061028 (31 Oct 2006)
+
+ 31 Oct 2006; Luis Medinas <metalgod@gentoo.org>
+ +files/NetworkManager-0.6.4-Gentoo-checklo.patch,
+ +files/NetworkManager-0.6.4-confchanges.patch,
+ +files/NetworkManager-0.6.4-gentooinitscript.patch,
+ +files/NetworkManager-resolvconf-perms.patch,
+ +files/NetworkManager-use-kernel-headers.patch, +metadata.xml,
+ +NetworkManager-0.6.4_pre20061028.ebuild:
+ Initial import. This ebuild was made by Luis Medinas <metalgod@gentoo.org>
+ and Stephen Klimaszewski <steev@gentoo.org>.
+
diff --git a/net-misc/networkmanager/Manifest b/net-misc/networkmanager/Manifest
new file mode 100644
index 0000000..9998884
--- /dev/null
+++ b/net-misc/networkmanager/Manifest
@@ -0,0 +1,10 @@
+AUX NetworkManagerDispatcher 1198 RMD160 4345870ab40607b9aed80c8da383b604f032b98e SHA1 1dd2250c746b25566fceaab551f4ef8335fe4f55 SHA256 f8cb5d0470619cf1f0812fffcf1bf2091e3c44a757899c07164f80ddd6a2641e
+AUX networkmanager-0.6.5-confchanges.patch 1053 RMD160 ae76d5c029090848a9264e7559aaab90e7f3c084 SHA1 4847532aa15316a1a45e8667cd7947b514a1833f SHA256 bf3418ccbf8643d14b0413cf7a9d25290003d4443a7a051bb54f953aebede84f
+AUX networkmanager-memoryleak_MvdS.patch 589 RMD160 699c041dfa6a5a5d94f3c7c43520bc9cdfef9b3c SHA1 42f01e9c6a2722f29db9ae21bbb5a1a43e341df4 SHA256 d160cf690d61224bbf9b7668f4c83f6c5b56ee2ef292c94e6b759b70b6274836
+AUX networkmanager-resolvconf-perms.patch 532 RMD160 453ce19560e1872d1da1fa48e0c9a365025e6b1b SHA1 a81be4e9c9bac854e092b82529c4ae2c12cdf91c SHA256 e1786f34a75d2e0a27ceccb960cf975176260886f70cc3e9b172180f8a1d2e6e
+AUX networkmanager-updatedbackend.patch 17700 RMD160 685132b4a98843416264f06c480ff205fa87f789 SHA1 a83d2b0ea7e4a563af3d14567ba1da3605fbf654 SHA256 ee4a1583db867fd6a1851a9dd243401166f29ee9d00ad6e03e5b677915e5bf43
+AUX networkmanager-use-kernel-headers.patch 466 RMD160 cd16279966d4e3594a20aa0b89d08f3baa3c2e58 SHA1 a9e269c9021888ca058b9fb72f9a71dc25a7488b SHA256 952948f41676fafcf76210cbef46728cbb219d6c851d5417d892b984fd725402
+DIST NetworkManager-0.6.6.tar.gz 984114 RMD160 f0672ee31001f83b06f6b93c30a01f37ee12ed6e SHA1 c5d0bcf7d262e1b600df6dad9f6f4baada293634 SHA256 36d48a11957e1c4f53a685b0fcc7d060e8972b435501c92b10737bb844dd95e2
+EBUILD networkmanager-0.6.6-r01.ebuild 2922 RMD160 078937e404ef8a7b9514bbd5f9de69767835490a SHA1 053a9817070241b9deaf1831c9209225bf5c27b4 SHA256 8b6a77bc80b6fbad1b371706111e460fbbc105aa951d663bfa486c75e7b8aca2
+MISC ChangeLog 7652 RMD160 b513c7f896b3b3be1f2faf0d7cefdf495aacb153 SHA1 0a30614cb5070a123e60084741258086230361b0 SHA256 5044837b5172885dd804ad98dde6aa1c1bbe7420a63c66cf54a4bec55572cb60
+MISC metadata.xml 352 RMD160 dc1d33b6866b7a51fd60cc8508668cb80ccdf797 SHA1 401add51065c746c71da8b5992874c0556cedc04 SHA256 c5b303e6d5dbe90d34284c51a1c7ea8015e87c41d6f63446a1bf7ba5daf0d26d
diff --git a/net-misc/networkmanager/files/NetworkManagerDispatcher b/net-misc/networkmanager/files/NetworkManagerDispatcher
new file mode 100644
index 0000000..24aa37b
--- /dev/null
+++ b/net-misc/networkmanager/files/NetworkManagerDispatcher
@@ -0,0 +1,48 @@
+#!/sbin/runscript
+#
+# NetworkManagerDispatcher: NetworkManagerDispatcher daemon
+#
+# chkconfig: 345 98 02
+# description: This is a daemon for automatically executing certain
+# actions, when switching networks
+#
+# processname: NetworkManagerDispatcher
+# pidfile: /var/run/NetworkManagerDispatcher.pid
+
+prefix=/usr
+exec_prefix=/usr
+sbindir=${exec_prefix}/sbin
+
+NETWORKMANAGERDISPATCHER_BIN=${sbindir}/NetworkManagerDispatcher
+
+# Sanity checks.
+[ -x $NETWORKMANAGERDISPATCHER_BIN ] || exit 0
+
+# so we can rearrange this easily
+processname=$NETWORKMANAGERDISPATCHER_BIN
+pidfile=/var/run/NetworkManagerDispatcher.pid
+
+depend() {
+ need NetworkManager
+}
+
+start()
+{
+ if [ -e ${pidfile} ]; then
+ rm -f ${pidfile}
+ fi
+ ebegin "Starting NetworkManagerDispatcher"
+ start-stop-daemon --start --quiet --exec ${processname}
+ eend $?
+ echo $(/bin/pidof NetworkManagerDispatcher) > ${pidfile}
+}
+
+stop()
+{
+ ebegin "Stopping NetworkManagerDispatcher"
+ start-stop-daemon --stop --quiet --exec ${processname} --pidfile ${pidfile}
+ eend $?
+ if [ -e ${pidfile} ]; then
+ rm -f $pidfile
+ fi
+}
diff --git a/net-misc/networkmanager/files/networkmanager-0.6.5-confchanges.patch b/net-misc/networkmanager/files/networkmanager-0.6.5-confchanges.patch
new file mode 100644
index 0000000..8969cda
--- /dev/null
+++ b/net-misc/networkmanager/files/networkmanager-0.6.5-confchanges.patch
@@ -0,0 +1,21 @@
+--- src/NetworkManager.conf.orig 2006-10-28 04:43:50.426682976 +0100
++++ src/NetworkManager.conf 2006-10-28 04:44:36.883620448 +0100
+@@ -8,14 +8,14 @@
+ <allow send_destination="org.freedesktop.NetworkManager"/>
+ <allow send_interface="org.freedesktop.NetworkManager"/>
+ </policy>
+- <policy at_console="true">
++ <policy group="plugdev">
+ <allow send_destination="org.freedesktop.NetworkManager"/>
+ <allow send_interface="org.freedesktop.NetworkManager"/>
+ </policy>
+ <policy context="default">
+- <deny own="org.freedesktop.NetworkManager"/>
+- <deny send_destination="org.freedesktop.NetworkManager"/>
+- <deny send_interface="org.freedesktop.NetworkManager"/>
++ <allow own="org.freedesktop.NetworkManager"/>
++ <allow send_destination="org.freedesktop.NetworkManager"/>
++ <allow send_interface="org.freedesktop.NetworkManager"/>
+ </policy>
+ </busconfig>
+
diff --git a/net-misc/networkmanager/files/networkmanager-memoryleak_MvdS.patch b/net-misc/networkmanager/files/networkmanager-memoryleak_MvdS.patch
new file mode 100644
index 0000000..c4a753e
--- /dev/null
+++ b/net-misc/networkmanager/files/networkmanager-memoryleak_MvdS.patch
@@ -0,0 +1,14 @@
+Index: NetworkManager-0.6.6/src/nm-dbus-net.c
+===================================================================
+--- NetworkManager-0.6.6.orig/src/nm-dbus-net.c
++++ NetworkManager-0.6.6/src/nm-dbus-net.c
+@@ -70,6 +70,9 @@ static NMAccessPoint *nm_dbus_get_ap_fro
+ compare_path = g_strdup_printf ("%s/%s/Networks/%s",
+ NM_DBUS_PATH_DEVICES, escaped_dev, escaped_ssid);
+
++ g_free(escaped_dev);
++ g_free(escaped_ssid);
++
+ len = strlen (compare_path);
+ if (strncmp (path, compare_path, len) == 0) {
+ /* Differentiate between 'foo' and 'foo-a' */
diff --git a/net-misc/networkmanager/files/networkmanager-resolvconf-perms.patch b/net-misc/networkmanager/files/networkmanager-resolvconf-perms.patch
new file mode 100644
index 0000000..a76c419
--- /dev/null
+++ b/net-misc/networkmanager/files/networkmanager-resolvconf-perms.patch
@@ -0,0 +1,19 @@
+--- src/named-manager/nm-named-manager.c.orig 2006-03-25 00:38:24.000000000 -0500
++++ src/named-manager/nm-named-manager.c 2006-03-25 00:44:15.000000000 -0500
+@@ -31,6 +31,7 @@
+ #include <resolv.h>
+ #include <sys/socket.h>
+ #include <sys/types.h>
++#include <sys/stat.h>
+ #include <arpa/inet.h>
+ #include <syslog.h>
+ #include <glib.h>
+@@ -396,6 +397,8 @@
+ if (rename (tmp_resolv_conf, RESOLV_CONF) < 0)
+ goto lose;
+ nm_system_update_dns ();
++
++ chmod(RESOLV_CONF, S_IREAD | S_IWRITE | S_IRGRP | S_IROTH);
+ return TRUE;
+
+ lose:
diff --git a/net-misc/networkmanager/files/networkmanager-updatedbackend.patch b/net-misc/networkmanager/files/networkmanager-updatedbackend.patch
new file mode 100644
index 0000000..767284a
--- /dev/null
+++ b/net-misc/networkmanager/files/networkmanager-updatedbackend.patch
@@ -0,0 +1,657 @@
+Index: NetworkManager/trunk/src/backends/NetworkManagerGentoo.c
+===================================================================
+--- NetworkManagerGentoo.c (revision 15)
++++ NetworkManagerGentoo.c (revision 38)
+@@ -1,2 +1,3 @@
++
+ /* NetworkManager -- Network link manager
+ *
+@@ -250,8 +251,20 @@
+ */
+ void nm_system_restart_mdns_responder (void)
+-{
+- nm_spawn_process("/etc/init.d/mDNSResponder stop");
+- nm_spawn_process("/etc/init.d/mDNSResponder zap");
+- nm_spawn_process("/etc/init.d/mDNSResponder start");
++{
++ /* Check if the daemon was already running - do not start a new instance */
++ /* Howl */
++ if (g_file_test("/var/run/mDNSResponder.pid", G_FILE_TEST_EXISTS))
++ {
++ nm_info("Restarting mDNSResponder");
++ nm_spawn_process("/etc/init.d/mDNSResponder stop");
++ nm_spawn_process("/etc/init.d/mDNSResponder zap");
++ nm_spawn_process("/etc/init.d/mDNSResponder start");
++ }
++ /* Apple's mDNSResponder */
++ if (g_file_test("/var/run/mDNSResponderPosix.pid", G_FILE_TEST_EXISTS))
++ {
++ nm_info("Restarting mDNSResponderPosix");
++ nm_spawn_process("/etc/init.d/mDNSResponderPosix restart");
++ }
+ }
+
+@@ -266,5 +279,4 @@
+ {
+ char *buf;
+- char *addr;
+ struct ether_addr hw_addr;
+ unsigned char eui[8];
+@@ -288,4 +300,258 @@
+ g_free(buf);
+ }
++/* Get the array associated with the key, and leave the current pointer
++ * pointing at the line containing the key. The char** returned MUST
++ * be freed by the caller.
++ */
++gchar **
++svGetArray(shvarFile *s, const char *key)
++{
++ gchar **values = NULL, **lines, *line, *value;
++ GList *restore;
++ int len, strvlen, i, j;
++
++ g_assert(s);
++ g_assert(key);
++
++ /* Attempt to do things the easy way first */
++ line = svGetValue(s, key);
++ if (!line)
++ return NULL;
++
++ restore = s->current;
++
++ g_strstrip(strtok(line, "#")); /* Remove comments and whitespace */
++
++ if (line[0] != '(')
++ {
++ /* This isn't an array, so pretend it's a one item array. */
++ values = g_renew(char*, values, 2);
++ values[0] = line;
++ values[1] = NULL;
++ return values;
++ }
++
++ while(!strrchr(line, ')'))
++ {
++ s->current = s->current->next;
++ value = g_strjoin(" ", line, g_strstrip(strtok(s->current->data, "#")), NULL);
++ g_free(line);
++ line = value;
++ value = NULL;
++ }
++
++ lines = g_strsplit(line, "\"", 0);
++
++ strvlen = g_strv_length(lines);
++ if (strvlen == 0)
++ {
++ /* didn't split, something's wrong */
++ g_free(line);
++ return NULL;
++ }
++
++ j = 0;
++ for (i = 0; i <= strvlen - 1; i++)
++ {
++ value = lines[i];
++ len = strlen(g_strstrip(value));
++ if ((value[0] == '(') || (value[0] == ')') || (len == 0))
++ continue;
++
++ values = g_renew(char*, values, j + 2);
++ values[j+1] = NULL;
++ values[j++] = g_strdup(value);
++ }
++
++ g_free(line);
++ g_strfreev(lines);
++ s->current = restore;
++
++ return values;
++}
++
++/*
++* GentooReadConfig
++*
++* Most of this comes from the arch backend, no need to re-invent.
++* Read platform dependant config file and fill hash with relevant info
++*/
++static GHashTable * GentooReadConfig(const char* dev)
++{
++ GHashTable *ifs;
++ shvarFile *file;
++ int len, hits, i = 0;
++ guint32 maskval;
++ gchar buf[16], *value, *cidrprefix, *gateway;
++ gchar *config_str, *iface_str, *route_str, *mtu_str, *dnsserver_str, *dnssearch_str; /* Lookup keys */
++ gchar **conf, **config = NULL, **routes = NULL;
++ struct in_addr mask;
++
++ file = svNewFile(SYSCONFDIR"/conf.d/net");
++ if (!file)
++ return NULL;
++
++ ifs = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
++ if (ifs == NULL)
++ {
++ nm_debug("Unable to create g_hash_table.");
++ svCloseFile(file);
++ return NULL;
++ }
++
++ /* Keys we will use for lookups later */
++ config_str = g_strdup_printf("config_%s", dev);
++ iface_str = g_strdup_printf("iface_%s", dev);
++ route_str = g_strdup_printf("routes_%s", dev);
++ mtu_str = g_strdup_printf("mtu_%s", dev);
++ dnsserver_str = g_strdup_printf("dns_servers_%s", dev);
++ dnssearch_str = g_strdup_printf("dns_search_%s", dev);
++
++
++ if ((config = svGetArray(file, iface_str)))
++ {
++ /* This isn't tested, (or supported, really) so hopefully it works */
++ nm_info("You are using a deprecated configuration syntax for %s.", dev);
++ nm_info("You are advised to read /etc/conf.d/net.example and upgrade it accordingly.");
++ value = svGetValue(file, "gateway");
++ if ((value) && (gateway = strstr(value, dev)) && strtok(gateway, "/"))
++ {
++ /* Is it possible to specify multiple gateways using this variable? */
++ gateway = strtok(NULL, "/");
++ routes = g_renew(char*, routes, 2);
++ routes[0] = g_strdup_printf("default via %s", gateway);
++ routes[1] = NULL;
++ g_free(value);
++ }
++ }
++ else
++ {
++ config = svGetArray(file, config_str);
++ routes = svGetArray(file, route_str);
++ }
++
++
++ if ((config) && g_ascii_strcasecmp(config[0], "dhcp"))
++ {
++ nm_debug("Found %s in %s.", config_str, SYSCONFDIR"/conf.d/net");
++
++ if (!g_ascii_strcasecmp(config[0], "null"))
++ {
++ nm_debug("Config disables device %s.", dev);
++ g_hash_table_insert(ifs, g_strdup("disabled"), g_strdup("true"));
++ }
++ else
++ {
++ /* TODO: Handle "noop". */
++ conf = g_strsplit(config[0], " ", 0);
++ hits = g_strv_length(conf);
++
++ strtok(conf[0], "/");
++ if ((cidrprefix = strtok(NULL, "/")))
++ {
++ maskval = 0xffffffff;
++ maskval <<= (32 - atoi(cidrprefix));
++ mask.s_addr = htonl(maskval);
++ g_hash_table_insert(ifs, g_strdup("netmask"), g_strdup(inet_ntoa(mask)));
++ }
++
++
++ if ((hits > 0) && inet_aton(conf[0], &mask))
++ {
++ g_hash_table_insert(ifs, g_strdup(dev), g_strdup(conf[i++]));
++ while ((hits -= 2) > 0)
++ {
++ g_hash_table_insert(ifs, g_strdup(conf[i]), g_strdup(conf[i+1]));
++ i += 2;
++ }
++ }
++ else
++ {
++ nm_debug("Unhandled configuration. Switching to DHCP.");
++ nm_debug("\t%s = %s", config_str, config[0]);
++ g_hash_table_insert(ifs, g_strdup("dhcp"), g_strdup("true"));
++ }
++ g_strfreev(conf);
++ }
++ }
++ else
++ {
++ nm_debug("Enabling DHCP for device %s.", dev);
++ g_hash_table_insert(ifs, g_strdup("dhcp"), g_strdup("true"));
++ }
++
++ g_strfreev(config);
++
++ if (routes)
++ {
++ nm_debug("Found %s in config.", route_str);
++
++ len = g_strv_length(routes);
++ for (i = 0; i < len; i++)
++ {
++ if (!sscanf(routes[i], "default via %[0-9.:]", buf))
++ continue;
++
++ g_hash_table_insert(ifs,g_strdup("gateway"),g_strdup( (char*) buf));
++ }
++ }
++
++ g_strfreev(routes);
++
++ if ((value = svGetValue(file, mtu_str)))
++ {
++ nm_debug("Found %s in config.", mtu_str);
++ g_hash_table_insert(ifs, g_strdup("mtu"), g_strdup(value));
++ }
++
++ g_free(value);
++
++ if (!(value = svGetValue(file, dnsserver_str)))
++ {
++ value = svGetValue(file, "dns_servers");
++ }
++ if (value)
++ {
++ nm_debug("Found DNS nameservers in config.");
++ g_hash_table_insert(ifs, g_strdup("nameservers"), g_strdup(value));
++ }
++
++ g_free(value);
++
++ if (!(value = svGetValue(file, dnssearch_str)))
++ {
++ value = svGetValue(file, "dns_search");
++ }
++ if (value)
++ {
++ nm_debug("Found DNS search in config.");
++ g_hash_table_insert(ifs, g_strdup("dnssearch"), g_strdup(value));
++ }
++
++ g_free(value);
++ svCloseFile(file);
++
++ if ((file = svNewFile(SYSCONFDIR"/conf.d/hostname")))
++ {
++ if ((value = svGetValue(file, "HOSTNAME")) && (strlen(value) > 0))
++ {
++ nm_debug("Found hostname.");
++ g_hash_table_insert(ifs, g_strdup("hostname"), g_strdup(value));
++ }
++
++ g_free(value);
++ svCloseFile(file);
++ }
++
++
++ g_free(config_str);
++ g_free(iface_str);
++ g_free(route_str);
++ g_free(mtu_str);
++ g_free(dnsserver_str);
++ g_free(dnssearch_str);
++
++ return ifs;
++}
+
+ typedef struct GentooSystemConfigData
+@@ -293,6 +559,7 @@
+ NMIP4Config * config;
+ gboolean use_dhcp;
++ gboolean system_disabled;
++ guint32 mtu;
+ } GentooSystemConfigData;
+-
+
+ /*
+@@ -304,133 +571,172 @@
+ *
+ */
+-void *nm_system_device_get_system_config (NMDevice *dev, NMData *app_data)
+-{
+- char *cfg_file_path = NULL;
+- FILE *file = NULL;
+- char buffer[100];
+- char confline[100], dhcpline[100], ipline[100];
+- int ipa, ipb, ipc, ipd;
+- int nNext = 0, bNext = 0, count = 0;
+- char *confToken;
+- gboolean data_good = FALSE;
+- gboolean use_dhcp = TRUE;
+- GentooSystemConfigData *sys_data = NULL;
+- guint32 ip4_address = 0;
+- guint32 ip4_netmask = 0;
+- guint32 ip4_gateway = 0;
+- guint32 ip4_broadcast = 0;
+-
+- g_return_val_if_fail (dev != NULL, NULL);
+-
+- sys_data = g_malloc0 (sizeof (GentooSystemConfigData));
+- sys_data->config = nm_device_get_ip4_config(dev);
+- /* We use DHCP on an interface unless told not to */
++void* nm_system_device_get_system_config (NMDevice * dev, NMData *app_data)
++{
++ GHashTable* ifh;
++ gpointer val;
++ gchar **strarr;
++ GentooSystemConfigData* sys_data = NULL;
++ int len, i;
++
++ g_return_val_if_fail(dev != NULL, NULL);
++
++ sys_data = g_malloc0(sizeof (GentooSystemConfigData));
+ sys_data->use_dhcp = TRUE;
+- nm_device_set_use_dhcp (dev, TRUE);
+-// nm_ip4_config_set_address (sys_data->config, 0);
+-// nm_ip4_config_set_gateway (sys_data->config, 0);
+-// nm_ip4_config_set_netmask (sys_data->config, 0);
+-
+- /* Gentoo systems store this information in
+- * /etc/conf.d/net, this is for all interfaces.
+- */
+-
+- cfg_file_path = g_strdup_printf ("/etc/conf.d/net");
+- if (!cfg_file_path)
++ sys_data->system_disabled = FALSE;
++ sys_data->mtu = 0;
++ sys_data->config=NULL;
++
++ ifh = GentooReadConfig(nm_device_get_iface(dev));
++ if (ifh == NULL)
++ {
++ g_free(sys_data);
+ return NULL;
+-
+- if (!(file = fopen (cfg_file_path, "r")))
+- {
+- g_free (cfg_file_path);
+- return NULL;
+- }
+- sprintf(confline, "iface_%s", nm_device_get_iface (dev));
+- sprintf(dhcpline, "iface_%s=\"dhcp\"", nm_device_get_iface (dev));
+- while (fgets (buffer, 499, file) && !feof (file))
+- {
+- /* Kock off newline if any */
+- g_strstrip (buffer);
+-
+- if (strncmp (buffer, confline, strlen(confline)) == 0)
++ }
++
++ val = g_hash_table_lookup(ifh, "disabled");
++ if (val)
++ {
++ if (!strcasecmp (val, "true"))
++ {
++ nm_info ("System configuration disables device %s", nm_device_get_iface (dev));
++ sys_data->system_disabled = TRUE;
++ }
++ }
++
++ val = g_hash_table_lookup(ifh, "mtu");
++ if (val)
++ {
++ guint32 mtu;
++
++ mtu = strtoul(val, NULL, 10);
++ if (mtu > 500 && mtu < INT_MAX)
++ {
++ nm_debug("System configuration specifies a MTU of %i for device %s", mtu, nm_device_get_iface(dev));
++ sys_data->mtu = mtu;
++ }
++ }
++ val = g_hash_table_lookup(ifh, "hostname");
++ if (val)
++ {
++ nm_ip4_config_set_hostname(sys_data->config, val);
++ }
++
++ val = g_hash_table_lookup(ifh, nm_device_get_iface(dev));
++ if (val && !g_hash_table_lookup(ifh, "dhcp"))
++ {
++ /* This device does not use DHCP */
++
++ sys_data->use_dhcp=FALSE;
++ sys_data->config = nm_ip4_config_new();
++
++ nm_ip4_config_set_address (sys_data->config, inet_addr (val));
++
++ val = g_hash_table_lookup(ifh, "gateway");
++ if (val)
++ nm_ip4_config_set_gateway (sys_data->config, inet_addr (val));
++ else
++ {
++ nm_info ("Network configuration for device '%s' does not specify a gateway but is "
++ "statically configured (non-DHCP).", nm_device_get_iface (dev));
++ }
++
++ val = g_hash_table_lookup(ifh, "netmask");
++ if (val)
++ nm_ip4_config_set_netmask (sys_data->config, inet_addr (val));
++ else
++ {
++ guint32 addr = nm_ip4_config_get_address (sys_data->config);
++
++ /* Make a default netmask if we have an IP address */
++ if (((ntohl (addr) & 0xFF000000) >> 24) <= 127)
++ nm_ip4_config_set_netmask (sys_data->config, htonl (0xFF000000));
++ else if (((ntohl (addr) & 0xFF000000) >> 24) <= 191)
++ nm_ip4_config_set_netmask (sys_data->config, htonl (0xFFFF0000));
++ else
++ nm_ip4_config_set_netmask (sys_data->config, htonl (0xFFFFFF00));
++ }
++
++ val = g_hash_table_lookup(ifh, "broadcast");
++ if (val)
++ nm_ip4_config_set_broadcast (sys_data->config, inet_addr (val));
++ else if ((val = g_hash_table_lookup(ifh, "brd")))
++ nm_ip4_config_set_broadcast (sys_data->config, inet_addr (val));
++ else
++ {
++ guint32 broadcast = ((nm_ip4_config_get_address (sys_data->config) & nm_ip4_config_get_netmask (sys_data->config))
++ | ~nm_ip4_config_get_netmask (sys_data->config));
++ nm_ip4_config_set_broadcast (sys_data->config, broadcast);
++ }
++
++ val = g_hash_table_lookup(ifh, "nameservers");
++ if (val)
++ {
++ nm_debug("Using DNS nameservers \"%s\" from config for device %s.", val, nm_device_get_iface(dev));
++ if ((strarr = g_strsplit(val, " ", 0)))
+ {
+- /* Make sure this config file is for this device */
+- if (strncmp (&buffer[strlen(confline) - strlen(nm_device_get_iface (dev))],
+- nm_device_get_iface (dev), strlen(nm_device_get_iface (dev))) != 0)
++ len = g_strv_length(strarr);
++ for(i = 0; i < len; i++)
+ {
+- nm_warning ("System config file '%s' does not define device '%s'\n",
+- cfg_file_path, nm_device_get_iface (dev));
+- break;
+- }
+- else
+- data_good = TRUE;
+-
+- if (strncmp (buffer, dhcpline, strlen(dhcpline)) == 0)
+- {
+- use_dhcp = TRUE;
++ guint32 addr = (guint32) (inet_addr (strarr[i]));
++
++ if (addr != (guint32) -1)
++ nm_ip4_config_add_nameserver(sys_data->config, addr);
++ }
++
++ g_strfreev(strarr);
+ }
+ else
+ {
+- use_dhcp = FALSE;
+- confToken = strtok(&buffer[strlen(confline) + 2], " ");
+- while (count < 3)
+- {
+- if (nNext == 1 && bNext == 1)
+- {
+- ip4_address = inet_addr (confToken);
+- count++;
+- continue;
+- }
+- if (strcmp(confToken, "netmask") == 0)
+- {
+- confToken = strtok(NULL, " ");
+- ip4_netmask = inet_addr (confToken);
+- count++;
+- nNext = 1;
+- }
+- else if (strcmp(confToken, "broadcast") == 0)
+- {
+- confToken = strtok(NULL, " ");
+- count++;
+- bNext = 1;
+- }
+- else
+- {
+- ip4_address = inet_addr (confToken);
+- count++;
+- }
+- confToken = strtok(NULL, " ");
+- }
++ guint32 addr = (guint32) (inet_addr (val));
++
++ if (addr != (guint32) -1)
++ nm_ip4_config_add_nameserver(sys_data->config, addr);
++ }
++ }
++
++ val = g_hash_table_lookup(ifh, "dnssearch");
++ if (val)
++ {
++ nm_debug("Using DNS search \"%s\" from config for device %s.", val, nm_device_get_iface(dev));
++ if ((strarr = g_strsplit(val, " ", 0)))
++ {
++ len = g_strv_length(strarr);
++ for(i = 0; i < len; i++)
++ {
++ if (strarr[i])
++ nm_ip4_config_add_domain(sys_data->config, strarr[i]);
+ }
++
++ g_strfreev(strarr);
+ }
+- /* If we aren't using dhcp, then try to get the gateway */
+- if (!use_dhcp)
++ else
+ {
+- sprintf(ipline, "gateway=\"%s/", nm_device_get_iface (dev));
+- if (strncmp(buffer, ipline, strlen(ipline) - 1) == 0)
++ nm_ip4_config_add_domain(sys_data->config, val);
++ }
++ }
++
++ nm_ip4_config_set_mtu (sys_data->config, sys_data->mtu);
++
++#if 0
++ {
++ int j;
++ nm_debug ("------ Config (%s)", nm_device_get_iface (dev));
++ nm_debug (" ADDR=%d", nm_ip4_config_get_address (sys_data->config));
++ nm_debug (" GW =%d", nm_ip4_config_get_gateway (sys_data->config));
++ nm_debug (" NM =%d", nm_ip4_config_get_netmask (sys_data->config));
++ nm_debug (" NSs =%d",nm_ip4_config_get_num_nameservers(sys_data->config));
++ for (j=0;j<nm_ip4_config_get_num_nameservers(sys_data->config);j++)
+ {
+- sprintf(ipline, "gateway=\"%s/%%d.%%d.%%d.%%d\"", nm_device_get_iface (dev) );
+- sscanf(buffer, ipline, &ipa, &ipb, &ipc, &ipd);
+- sprintf(ipline, "%d.%d.%d.%d", ipa, ipb, ipc, ipd);
+- ip4_gateway = inet_addr (ipline);
++ nm_debug (" NS =%d",nm_ip4_config_get_nameserver(sys_data->config,j));
+ }
+- }
+- }
+- fclose (file);
+- g_free (cfg_file_path);
+-
+- /* If successful, set values on the device */
+- if (data_good)
+- {
+- nm_warning("data good :-)");
+- nm_device_set_use_dhcp (dev, use_dhcp);
+- if (ip4_address)
+- nm_ip4_config_set_address (sys_data->config, ip4_address);
+- if (ip4_gateway)
+- nm_ip4_config_set_gateway (sys_data->config, ip4_gateway);
+- if (ip4_netmask)
+- nm_ip4_config_set_netmask (sys_data->config, ip4_netmask);
+- if (ip4_broadcast)
+- nm_ip4_config_set_broadcast (sys_data->config, ip4_broadcast);
+- }
++ nm_debug ("---------------------\n");
++ }
++#endif
++
++ }
++
++ g_hash_table_destroy(ifh);
++
++
+ return (void *)sys_data;
+ }
+@@ -519,4 +825,11 @@
+ gboolean nm_system_device_get_disabled (NMDevice *dev)
+ {
++ GentooSystemConfigData *sys_data;
++
++ g_return_val_if_fail (dev != NULL, FALSE);
++
++ if ((sys_data = nm_device_get_system_config_data (dev)))
++ return sys_data->system_disabled;
++
+ return FALSE;
+ }
+@@ -576,4 +889,35 @@
+ void nm_system_set_hostname (NMIP4Config *config)
+ {
++ char *h_name = NULL;
++ const char *hostname;
++
++ g_return_if_fail (config != NULL);
++
++ hostname = nm_ip4_config_get_hostname (config);
++ if (!hostname)
++ {
++ struct in_addr temp_addr;
++ struct hostent *host;
++
++ /* try to get hostname via dns */
++ temp_addr.s_addr = nm_ip4_config_get_address (config);
++ host = gethostbyaddr ((char *) &temp_addr, sizeof (temp_addr), AF_INET);
++ if (host)
++ {
++ h_name = g_strdup (host->h_name);
++ hostname = strtok (h_name, ".");
++ }
++ else
++ nm_warning ("nm_system_set_hostname(): gethostbyaddr failed, h_errno = %d", h_errno);
++ }
++
++ if (hostname)
++ {
++ nm_info ("Setting hostname to '%s'", hostname);
++ if (sethostname (hostname, strlen (hostname)) < 0)
++ nm_warning ("Could not set hostname.");
++ }
++
++ g_free (h_name);
+ }
+
+@@ -596,4 +940,11 @@
+ guint32 nm_system_get_mtu (NMDevice *dev)
+ {
++ GentooSystemConfigData *sys_data;
++
++ g_return_val_if_fail (dev != NULL, 0);
++
++ if ((sys_data = nm_device_get_system_config_data (dev)))
++ return sys_data->mtu;
++
+ return 0;
+ }
diff --git a/net-misc/networkmanager/files/networkmanager-use-kernel-headers.patch b/net-misc/networkmanager/files/networkmanager-use-kernel-headers.patch
new file mode 100644
index 0000000..e74c3c5
--- /dev/null
+++ b/net-misc/networkmanager/files/networkmanager-use-kernel-headers.patch
@@ -0,0 +1,12 @@
+diff -urN NetworkManager-0.5.2.orig/src/nm-device-802-3-ethernet.c NetworkManager-0.5.2/src/nm-device-802-3-ethernet.c
+--- NetworkManager-0.5.2.orig/src/nm-device-802-3-ethernet.c 2006-02-04 05:20:00.000000000 -0600
++++ NetworkManager-0.5.2/src/nm-device-802-3-ethernet.c 2006-02-04 05:20:26.000000000 -0600
+@@ -18,7 +18,7 @@
+ *
+ * (C) Copyright 2005 Red Hat, Inc.
+ */
+-
++#define HEADERS_KERNEL
+ #include <glib.h>
+ #include <glib/gi18n.h>
+ #include <dbus/dbus.h>
diff --git a/net-misc/networkmanager/metadata.xml b/net-misc/networkmanager/metadata.xml
new file mode 100644
index 0000000..08c2647
--- /dev/null
+++ b/net-misc/networkmanager/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>no-herd</herd>
+ <maintainer>
+ <email>steev@gentoo.org</email>
+ <name>Stephen Klimaszewski</name>
+ </maintainer>
+ <maintainer>
+ <email>rbu@gentoo.org</email>
+ <name>Robert Buchholz</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-wireless/madwifi-ng-tools/Manifest b/net-wireless/madwifi-ng-tools/Manifest
new file mode 100644
index 0000000..6ff0c59
--- /dev/null
+++ b/net-wireless/madwifi-ng-tools/Manifest
@@ -0,0 +1,2 @@
+DIST madwifi-0.9.4-r4176-20111123.tar.gz 3534939 RMD160 5368b7baf31d4dccd957533b64e8e9b4d406beae SHA1 7c1bbe895d3eca8e32173cb80ce8f85b036317cb SHA256 d93df106f31995ec9c3726cf9744cc17cb589e4c45b6af75e5e3989e69ad7bdc
+EBUILD madwifi-ng-tools-0.9.4.4176.20111123.ebuild 2055 RMD160 b30b53d2611ea7962f08f42d5c323e2b1c286b4b SHA1 5c54445f71af3855faa38779e174a14e4712eea8 SHA256 8d3057eeade58b7b53f3d95da63e7d58c0fbbe617f7ef80d39019f839591c5df
diff --git a/net-wireless/madwifi-ng/Manifest b/net-wireless/madwifi-ng/Manifest
new file mode 100644
index 0000000..64b13bc
--- /dev/null
+++ b/net-wireless/madwifi-ng/Manifest
@@ -0,0 +1,2 @@
+DIST madwifi-0.9.4-r4176-20111123.tar.gz 3534939 RMD160 5368b7baf31d4dccd957533b64e8e9b4d406beae SHA1 7c1bbe895d3eca8e32173cb80ce8f85b036317cb SHA256 d93df106f31995ec9c3726cf9744cc17cb589e4c45b6af75e5e3989e69ad7bdc
+EBUILD madwifi-ng-0.9.4.4176.20111123.ebuild 3449 RMD160 0f58e96d65018934cb2b48d3c4225797f83686ad SHA1 2453b4aabac2582f00e02db6026eadf9f2889244 SHA256 5a4bc282eeb179471eb234927347bac340d362ecfbfb1c045e137542ce7107f4
diff --git a/profiles/repo_name b/profiles/repo_name
new file mode 100644
index 0000000..2cc4579
--- /dev/null
+++ b/profiles/repo_name
@@ -0,0 +1 @@
+MvdS
diff --git a/sci-astronomy/amuse/Manifest b/sci-astronomy/amuse/Manifest
new file mode 100644
index 0000000..2a3f13f
--- /dev/null
+++ b/sci-astronomy/amuse/Manifest
@@ -0,0 +1,2 @@
+DIST amuse-5.0.tar.gz 82161180 RMD160 b57067209ccbe45638e4cbccffa7e96ac9930646 SHA1 c927a73f9b05eaa349ae66a88612d2097cb7c0ea SHA256 9b33f432b8c12bb8a35d82aedb714477ed5322d57faec03985866edc81ea80e5
+EBUILD amuse-5.0.ebuild 1095 RMD160 1f0c6222c8f0526c33b90ca4ff977f3cc9e57e72 SHA1 02abea292f5985289e18bdae504877c856068d5d SHA256 3db4b049b8d9451f4b30ef12c5349cb658c3d3daceb8068c8d86e64eb6861095
diff --git a/sci-astronomy/analysemcmc/Manifest b/sci-astronomy/analysemcmc/Manifest
new file mode 100644
index 0000000..838ca17
--- /dev/null
+++ b/sci-astronomy/analysemcmc/Manifest
@@ -0,0 +1,2 @@
+DIST analysemcmc-0.5.1.tar.gz 117584 RMD160 e0b56b4498fa7e1adc008e21ef94766cbd559617 SHA1 e860911fde6a3c8b2dd6493bf4806221bab8c6ec SHA256 fd0222415d46202dcd276de223cac9e5d19ba6ee10edfe1a9bf51b7425976f42
+EBUILD analysemcmc-0.5.1.ebuild 775 RMD160 efa8956fd0c6575cdc3b175775c7c9cd8fc93c34 SHA1 b1bbef2bbee5c664320b1320ca2e946c6dcf1d60 SHA256 94f924bf8432d272d7ee64c755843b5ff9a5923fa4d53885e062a08446890f5e
diff --git a/sci-astronomy/evtools/Manifest b/sci-astronomy/evtools/Manifest
new file mode 100644
index 0000000..49807a8
--- /dev/null
+++ b/sci-astronomy/evtools/Manifest
@@ -0,0 +1,2 @@
+DIST evtools-0.2.1.tar.gz 101054 RMD160 f884ef19815a399a0a2cd1688ded9ebf62f39cd9 SHA1 cf16eab2b283acabc14f6ff041abb82f38dc5dc5 SHA256 298e0e2c1f0ee71ec10ff6af5298acd90826a85be86d54245f2e7517d9d862e8
+EBUILD evtools-0.2.1.ebuild 510 RMD160 35b0896454fecaaa07b4e6ce213c6f83a1c74f0c SHA1 83b7d77f3692466dd3007827ef7b1f20a024a6c3 SHA256 09c9fa5fb34f9639e58dd743f73cb406f0bcc908465844d629df5d1dd1344d94
diff --git a/sci-astronomy/gwtool/Manifest b/sci-astronomy/gwtool/Manifest
new file mode 100644
index 0000000..c969169
--- /dev/null
+++ b/sci-astronomy/gwtool/Manifest
@@ -0,0 +1,2 @@
+DIST gwtool-0.1.3.tar.gz 20392 RMD160 8082cc08d9b7ebca6552cad85ea45d334909b7f6 SHA1 7b1a092af3ebd06d77d430a6c614753079cdd8c1 SHA256 e9779de09d89bca53fb73e25a7a3f772df2b454ef03339b16d8f1558e039ab60
+EBUILD gwtool-0.1.3.ebuild 452 RMD160 e2ccfc414b6de0d3692283c713fc7c83c024114e SHA1 c558107a67b6e5cde4a16d9891f6a0f5dfc0a904 SHA256 871e39d0f0d4a7185f2a0aca76bd9edb250559ccf01f5cbeb51de2bfee3c179f
diff --git a/sci-astronomy/spinspiral/Manifest b/sci-astronomy/spinspiral/Manifest
new file mode 100644
index 0000000..4b900db
--- /dev/null
+++ b/sci-astronomy/spinspiral/Manifest
@@ -0,0 +1,2 @@
+DIST spinspiral-0.5.1.tar.gz 916717 RMD160 eb17e6e714305516dff25e24044db6cc828bf0ee SHA1 459daa0c615bd12024275686f371a4cbf8eefed7 SHA256 e7cc31b29d435adcab86a443eecedea667a68001081f0aa09f2dbd80c29a1d5c
+EBUILD spinspiral-0.5.1.ebuild 1986 RMD160 3e4b804a4afa492ca02f95ae57a1d775f9de1a7e SHA1 af540046ea59362e02d02fb5b243599b69d89130 SHA256 24bb6c735d68d38020e4ab533a6ed801367035d7a7cee2688da7e67562cad3e0
diff --git a/sci-calculators/gfm/Manifest b/sci-calculators/gfm/Manifest
new file mode 100644
index 0000000..a10527f
--- /dev/null
+++ b/sci-calculators/gfm/Manifest
@@ -0,0 +1,2 @@
+DIST gfm-1.04.tar.gz 572474 RMD160 086aae63acf4800b4af6dc3ed84329376efb241b SHA1 f698025969ab6e7a1e23eca22893425362a3fe55 SHA256 10134283c421ff34afa72c2191cc31355e17efcdaa94de30c8cfcc14da1abe58
+EBUILD gfm-1.04.ebuild 962 RMD160 72d20d21e127297560db77d2c5c674ecb885475d SHA1 f89fed2aa8a75b67ddd846fee92c06d44ec9e79b SHA256 1d66f5039587a2ad129478b925d1a86d0784e2cdc118c141cc5839913767b91e
diff --git a/sci-calculators/qalculate-kde/Manifest b/sci-calculators/qalculate-kde/Manifest
new file mode 100644
index 0000000..821a908
--- /dev/null
+++ b/sci-calculators/qalculate-kde/Manifest
@@ -0,0 +1,4 @@
+AUX qalculate-kde-0.9.6-cln-config.patch 1164 RMD160 6adf5b70a0e4cd2aed836104e7add14379a471fb SHA1 5792b6b4ba5bebf3b309725bd77a631423bc2e83 SHA256 1d44d432d4963b6bf373c108b7e478c0d7b3c40f6fa0bdb75a047fcd2218ef9b
+AUX qalculate-kde-0.9.6-remove-link.patch 1338 RMD160 de20af106712466f95e33e7a0f9aa2a966285b1c SHA1 f37e82b66fc000ec55a546bbcfde5d31f566a02a SHA256 f890a91ff13f5609423abc7252b4be5fe2f2d760d5770d8f7618d0baae7cad7e
+DIST qalculate-kde-0.9.6.tar.gz 1520061 RMD160 49ffbf2eb0634c2b47fcba8b6ccac9ee7ebaab95 SHA1 f9ebf4e3b7a94d867f45061bc528f0b1e31f72d6 SHA256 5235fc4bae44a88dd226ada94c662e7889ae3faa91d722c14b61702fc34d021a
+EBUILD qalculate-kde-0.9.6-r2.ebuild 1044 RMD160 26a9e532fa46b0099e09380f1a9fcd021e561e53 SHA1 ee22a168f3241a74ada2bbeb6157012332458087 SHA256 c9d9f807745027a7a72c55407238e50ce9eeadaaa39907393ff606070e94ac3d
diff --git a/sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-cln-config.patch b/sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-cln-config.patch
new file mode 100644
index 0000000..0978d0a
--- /dev/null
+++ b/sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-cln-config.patch
@@ -0,0 +1,32 @@
+diff -Naur qalculate-kde-0.9.6/configure.in qalculate-kde-0.9.6.new/configure.in
+--- qalculate-kde-0.9.6/configure.in 2007-06-17 07:33:58.000000000 -0400
++++ qalculate-kde-0.9.6.new/configure.in 2008-06-15 07:20:32.000000000 -0400
+@@ -73,11 +73,7 @@
+
+ AC_LANG([C++])
+
+-AC_PATH_CLN(1.1.0, [
+- LIBS="$LIBS $CLN_LIBS"
+- CPPFLAGS="$CPPFLAGS $CLN_CPPFLAGS"
+- AC_DEFINE(HAVE_LIBCLN,1,[If CLN can be used])
+-], AC_MSG_ERROR([No suitable installed version of CLN could be found.]))
++PKG_CHECK_MODULES([CLN], [cln >= 1.1.0])
+
+ PKG_CHECK_MODULES(QALCULATE, [
+ libxml-2.0
+diff -Naur qalculate-kde-0.9.6/configure.in.in qalculate-kde-0.9.6.new/configure.in.in
+--- qalculate-kde-0.9.6/configure.in.in 2007-05-18 04:10:17.000000000 -0400
++++ qalculate-kde-0.9.6.new/configure.in.in 2008-06-15 07:20:47.000000000 -0400
+@@ -8,11 +8,7 @@
+
+ AC_LANG([C++])
+
+-AC_PATH_CLN(1.1.0, [
+- LIBS="$LIBS $CLN_LIBS"
+- CPPFLAGS="$CPPFLAGS $CLN_CPPFLAGS"
+- AC_DEFINE(HAVE_LIBCLN,1,[If CLN can be used])
+-], AC_MSG_ERROR([No suitable installed version of CLN could be found.]))
++PKG_CHECK_MODULES([CLN], [cln >= 1.1.0])
+
+ PKG_CHECK_MODULES(QALCULATE, [
+ libxml-2.0
diff --git a/sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-remove-link.patch b/sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-remove-link.patch
new file mode 100644
index 0000000..b6daf11
--- /dev/null
+++ b/sci-calculators/qalculate-kde/files/qalculate-kde-0.9.6-remove-link.patch
@@ -0,0 +1,30 @@
+diff -Naur qalculate-kde-0.9.6/src/Makefile.in qalculate-kde-0.9.6-new/src/Makefile.in
+--- qalculate-kde-0.9.6/src/Makefile.in 2007-06-17 07:34:19.000000000 -0400
++++ qalculate-kde-0.9.6-new/src/Makefile.in 2007-09-24 09:44:29.000000000 -0400
+@@ -772,7 +772,7 @@
+ #>+ 1
+ install-data-am: install-kde-icons install-shelldesktopDATA install-shellrcDATA
+
+-install-exec-am: install-binPROGRAMS install-exec-local
++install-exec-am: install-binPROGRAMS
+
+ install-info: install-info-am
+
+@@ -809,7 +809,7 @@
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-binPROGRAMS install-data install-data-am install-exec \
+- install-exec-am install-exec-local install-info \
++ install-exec-am install-info \
+ install-info-am install-man install-shelldesktopDATA \
+ install-shellrcDATA install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+@@ -823,8 +823,6 @@
+ $(EXTRACTRC) `find . -name \*.ui -o -name \*.rc` > rc.cpp
+ $(XGETTEXT) *.cpp -o $(podir)/qalculate_kde.pot
+
+-install-exec-local:
+- cd $(DESTDIR)$(bindir) && rm -f qalculate; $(LN_S) qalculate-kde qalculate
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
diff --git a/sci-libs/fgsl/Manifest b/sci-libs/fgsl/Manifest
new file mode 100644
index 0000000..c254472
--- /dev/null
+++ b/sci-libs/fgsl/Manifest
@@ -0,0 +1,10 @@
+AUX fgsl-0.9-Makefile.patch 1313 RMD160 9b799b5d992217d3c0a3ac709c91722dc377adf6 SHA1 fbf3bb3cfb681881fc5ad8080d550a26e00b2690 SHA256 f68dc4fbf707600de8ab445ebddc9725b645499fff4e6398f364f7858c1401be
+AUX fgsl-0.9-configure.patch 446 RMD160 e30274cec502c0bb709589b74ffaa208aecdd348 SHA1 a39a64472bee2803dba44235b645009bca68144c SHA256 468dbbc4aed9f66a91c3c841e322c017bee5ba4fce8109eb6985431f077fb920
+AUX fgsl-0.9.1-Makefile.patch 795 RMD160 fa3c05918160b5d4984112ce5e1262633f5146dc SHA1 f3af1104be22aca8e22debb887348c06c12840e1 SHA256 01c2782e6f4ec98699ec2a0674e89f147a63ee519a513242c75c52c84bf8da01
+AUX fgsl-0.9.1-configure.patch 474 RMD160 e5d0089f038c843cb438058bbcc5211dbb3a18f9 SHA1 ca39369cc2d883b3540f7d462e5e9edcc44b87e2 SHA256 ca4f04dc8adfea61276d507240d89d59b5c636f8943720feff254c9a882c7200
+DIST fgsl-0.9.1.tar.gz 289994 RMD160 20b58abb29a44a952729170ccca20e03392c1333 SHA1 071764fea2efb2a29fabd95d6f3ead3d6434f63d SHA256 ba14fdddcfc0f960308a208849f9315ace5dca64afd25c3072a8daf6e057cf1a
+DIST fgsl-0.9.tar.gz 286033 RMD160 d1ab20126c0c3cfcaf283d021db599a45eddce35 SHA1 6148a14fe4a1b7c64001f9bf5231ace786118562 SHA256 a4961bdccb9e0c353ed11bb009d46e0e941f7586621da6100d7303605e9d6795
+EBUILD fgsl-0.9.1.ebuild 1353 RMD160 2282c4f45d36f69c660ca59bb5eff0d07a314bc9 SHA1 e5d0ad8344983439cc7ce394347b40713f88cb3b SHA256 7e20f5c506301a1997059a352b343866c1d9c1b53666369039b9dd3d63660641
+EBUILD fgsl-0.9.ebuild 1353 RMD160 2282c4f45d36f69c660ca59bb5eff0d07a314bc9 SHA1 e5d0ad8344983439cc7ce394347b40713f88cb3b SHA256 7e20f5c506301a1997059a352b343866c1d9c1b53666369039b9dd3d63660641
+MISC fgsl-0.9.1.ebuild.tar.bz2 1525 RMD160 0d45586872edec513f238cce01e0a11d47bb7b18 SHA1 5f8afa8d6f3c84a6fd1c0124c62902b0a923d343 SHA256 562a476860203b4bfa809ed66b5d6c1b2a11d7d677900f656676c287100a33cf
+MISC fgsl-0.9.ebuild.tar.bz2 1683 RMD160 7ca83522635345b2ea5e7809603d497b5f03b869 SHA1 07a172aa2e23a0b9659a7baac3f2062ad64e291a SHA256 f02c32e5f9cef4d145b5d6579b726a241bb60cfb0acecdebfa1e1e536a231e76
diff --git a/sci-libs/fgsl/fgsl-0.9.1.ebuild.tar.bz2 b/sci-libs/fgsl/fgsl-0.9.1.ebuild.tar.bz2
new file mode 100644
index 0000000..2aa895b
--- /dev/null
+++ b/sci-libs/fgsl/fgsl-0.9.1.ebuild.tar.bz2
Binary files differ
diff --git a/sci-libs/fgsl/fgsl-0.9.ebuild.tar.bz2 b/sci-libs/fgsl/fgsl-0.9.ebuild.tar.bz2
new file mode 100644
index 0000000..8f1ccea
--- /dev/null
+++ b/sci-libs/fgsl/fgsl-0.9.ebuild.tar.bz2
Binary files differ
diff --git a/sci-libs/fgsl/files/fgsl-0.9-Makefile.patch b/sci-libs/fgsl/files/fgsl-0.9-Makefile.patch
new file mode 100644
index 0000000..417b2ee
--- /dev/null
+++ b/sci-libs/fgsl/files/fgsl-0.9-Makefile.patch
@@ -0,0 +1,45 @@
+--- Makefile 2009-05-16 18:07:01.000000000 -0500
++++ Makefile.new 2009-05-16 20:12:11.000000000 -0500
+@@ -11,31 +11,31 @@
+ endif
+
+ test : lib
+- @cd tests; $(MAKE) clean; $(MAKE) -j 8 run
++ cd tests; $(MAKE) clean; $(MAKE) -j 8 run
+
+
+ lib : libfgsl_$(F90).a
+
+ libfgsl_$(F90).a : fgsl.o fgsl_utils.o
+- @ar $(ARFLAGS) libfgsl_$(F90).a $^
++ ar $(ARFLAGS) libfgsl_$(F90).a $^
+ @echo "Build complete"
+
+ fgsl.o : fgsl.f90 api/*.finc interface/*.finc
+- @$(F90) $(FFLAGS) -c fgsl.f90
++ $(F90) $(FFLAGS) -c fgsl.f90
+
+ %.o : %.f90
+- @$(F90) $(FFLAGS) -c -o $@ $^
++ $(F90) $(FFLAGS) -c -o $@ $^
+
+ %.o : %.c
+- @$(CC) -c $(GSL_INC) $(CFLAGS) -o $@ $^
++ $(CC) -c $(GSL_INC) $(CFLAGS) -o $@ $^
+
+ install : lib
+- mkdir -p $(PREFIX)
+- cp -p libfgsl_$(F90).a $(PREFIX)/$(LIB)
+- chmod ugo+r $(PREFIX)/$(LIB)/libfgsl_$(F90).a
+- mkdir -p $(PREFIX)/include/$(F90)
+- cp -p fgsl.mod $(PREFIX)/include/$(F90)
+- chmod ugo+r $(PREFIX)/include/$(F90)/fgsl.mod
++ mkdir -p $(DESTDIR)$(VENDORPREFIX)/$(LIB)
++ cp -p libfgsl_$(F90).a $(DESTDIR)$(VENDORPREFIX)/$(LIB)
++ chmod ugo+r $(DESTDIR)$(VENDORPREFIX)/$(LIB)/libfgsl_$(F90).a
++ mkdir -p $(DESTDIR)$(VENDORPREFIX)/include
++ cp -p fgsl.mod $(DESTDIR)$(VENDORPREFIX)/include/fgsl_$(F90).mod
++ chmod ugo+r $(DESTDIR)$(VENDORPREFIX)/include/fgsl_$(F90).mod
+
+ doc :
+ cd doc; $(MAKE)
diff --git a/sci-libs/fgsl/files/fgsl-0.9-configure.patch b/sci-libs/fgsl/files/fgsl-0.9-configure.patch
new file mode 100644
index 0000000..c490155
--- /dev/null
+++ b/sci-libs/fgsl/files/fgsl-0.9-configure.patch
@@ -0,0 +1,22 @@
+--- configure 2008-08-31 20:37:23.000000000 +0200
++++ configure.new 2009-09-19 14:31:14.612919757 +0200
+@@ -53,8 +53,9 @@
+ exit 0
+ ;;
+ * )
+- usage
+- exit 1
++ # The next two lines were commented out by the Gentoo ebuild to allow the default flags from econf:
++ #usage
++ #exit 1
+ ;;
+ esac
+ shift
+@@ -266,6 +267,7 @@
+ FPP=-fpp
+ ;;
+ ifort)
++ FFLAGS="$FFLAGS -vec-report0"
+ FPP=-fpp
+ ;;
+ pgf90)
diff --git a/sci-libs/fgsl/files/fgsl-0.9.1-Makefile.patch b/sci-libs/fgsl/files/fgsl-0.9.1-Makefile.patch
new file mode 100644
index 0000000..9cbd168
--- /dev/null
+++ b/sci-libs/fgsl/files/fgsl-0.9.1-Makefile.patch
@@ -0,0 +1,21 @@
+--- Makefile 2009-09-05 17:33:56.000000000 +0200
++++ Makefile.new 2009-09-19 17:00:50.421910947 +0200
+@@ -30,12 +30,12 @@
+ $(CC) -c $(GSL_INC) $(CFLAGS) $(CDEBUG) -o $@ $^
+
+ install : lib
+- mkdir -p $(PREFIX)
+- cp -p libfgsl_$(F90).a $(PREFIX)/$(LIB)
+- chmod ugo+r $(PREFIX)/$(LIB)/libfgsl_$(F90).a
+- mkdir -p $(PREFIX)/include/$(F90)
+- cp -p fgsl.mod $(PREFIX)/include/$(F90)
+- chmod ugo+r $(PREFIX)/include/$(F90)/fgsl.mod
++ mkdir -p $(DESTDIR)$(VENDORPREFIX)/$(LIB)
++ cp -p libfgsl_$(F90).a $(DESTDIR)$(VENDORPREFIX)/$(LIB)
++ chmod ugo+r $(DESTDIR)$(VENDORPREFIX)/$(LIB)/libfgsl_$(F90).a
++ mkdir -p $(DESTDIR)$(VENDORPREFIX)/include/$(F90)
++ cp -p fgsl.mod $(DESTDIR)$(VENDORPREFIX)/include/$(F90)
++ chmod ugo+r $(DESTDIR)$(VENDORPREFIX)/include/$(F90)/fgsl.mod
+
+ doc :
+ cd doc; $(MAKE)
diff --git a/sci-libs/fgsl/files/fgsl-0.9.1-configure.patch b/sci-libs/fgsl/files/fgsl-0.9.1-configure.patch
new file mode 100644
index 0000000..3a65b63
--- /dev/null
+++ b/sci-libs/fgsl/files/fgsl-0.9.1-configure.patch
@@ -0,0 +1,23 @@
+--- configure 2009-09-05 17:33:56.000000000 +0200
++++ configure.new 2009-09-19 16:46:10.966008667 +0200
+@@ -59,8 +59,9 @@
+ exit 0
+ ;;
+ * )
+- usage
+- exit 1
++ #The next two lines were commented out by the Gentoo ebuild to allow the default flags from econf:
++ #usage
++ #exit 1
+ ;;
+ esac
+ shift
+@@ -282,7 +283,7 @@
+ FPP=-fpp
+ ;;
+ ifort)
+- FFLAGS="$FFLAGS"
++ FFLAGS="$FFLAGS -vec-report0"
+ FPP=-fpp
+ DEB="-g -check all"
+ ;;
diff --git a/sci-libs/k3match/ChangeLog b/sci-libs/k3match/ChangeLog
new file mode 100644
index 0000000..ed8ed00
--- /dev/null
+++ b/sci-libs/k3match/ChangeLog
@@ -0,0 +1,10 @@
+# ChangeLog for sci-libs/k3match
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*k3match-1.0 (7 Dec 2011)
+
+ 7 Dec 2011; Marc van der Sluys <gentoo@vandersluys.nl>
+ +k3match-1.0.ebuild +metadata.xml
+ Initial import.
+
diff --git a/sci-libs/k3match/Manifest b/sci-libs/k3match/Manifest
new file mode 100644
index 0000000..6c4cbfd
--- /dev/null
+++ b/sci-libs/k3match/Manifest
@@ -0,0 +1,4 @@
+DIST k3match-1.0.tar.gz 19125 RMD160 afa7f398884a923293a639f244b6ce8218a5ac40 SHA1 94c8759c9b43f2a3d7db8b8056cd32abe210bf09 SHA256 47e1e456a1b5c1205f1e202028d74a48a7540557741b61a11388b02ef3d9a023
+EBUILD k3match-1.0.ebuild 540 RMD160 2034fab6e2947e7550b5cd32c51a23f89965bb91 SHA1 4fe58a2056d01d14fcae24151274e6da40fcfd2e SHA256 4025751bf46c040c92919209e6ceb03d1f5340571f9d4e1adee45c15b8944e85
+MISC ChangeLog 254 RMD160 facdde5238bdd5b3d749e073185f1d6e028078c9 SHA1 2fb89d4a1907c8dc8e051177038b772e6c1e33d4 SHA256 c5a2b4dc56812b9edd900a001e5cc21e84eddd560a4d55d3abecc560dfa99cfe
+MISC metadata.xml 258 RMD160 928fbdaa58fc02b10ffd96fc26322b4115978bdc SHA1 d159f126f8751fffb8a1fce67ff4c20d22183841 SHA256 078d1bb3cc9e6faf47ce4597e2552ca1892e79dedc65d849fc7f82682e5d03f0
diff --git a/sci-libs/k3match/metadata.xml b/sci-libs/k3match/metadata.xml
new file mode 100644
index 0000000..eeff77c
--- /dev/null
+++ b/sci-libs/k3match/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>AstroFloyd@gmail.com</email>
+ <name>Marc van der Sluys</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-libs/lal/Manifest b/sci-libs/lal/Manifest
new file mode 100644
index 0000000..4b73510
--- /dev/null
+++ b/sci-libs/lal/Manifest
@@ -0,0 +1,10 @@
+DIST lal-5.2.tar.gz 32116894 RMD160 28a4d60faaf12a7756b93163b5d0b39ba465c39f SHA1 360827eb12215c7aeff5474d58d9da8b0d2af672 SHA256 b6f9ce631e2b4433ea7a0e90043b826fe529d0944566339d1e1cb84646cd53a8
+DIST lal-6.0.2.tar.gz 34558391 RMD160 36f6b7ad51de5fa062e7690f33ccaa8ccfeb1649 SHA1 191f13dafb9f87aa2d4a93065ec0f32e66e23437 SHA256 fb4ebd14e115da2a5b364567f78a734f2fb07a5f8c915a9908998ac0ac713e28
+DIST lal-6.1.tar.gz 34442921 RMD160 c511cd1a6188663672f901e2dab82ec82ea2af62 SHA1 efb2c380f9ff2ba36c57497b3a71909dbc7c0f3d SHA256 b0354f2cb95f487193068cf827d60bc3dc97dc06c0d1593e5984a1b8f53f7c75
+DIST lal-6.5.0.tar.gz 3567846 RMD160 75b37d6068ecb5ca2a3cf4f6e2b0dcb1df8f4e0b SHA1 71e03a546dbdd99e8dd512604c89966b98dfc026 SHA256 34e775072534aa2c4ed23b7b437d4c085e707c7776e47529ed24061b05fbba06
+DIST lal-6.6.1.tar.gz 4114075 RMD160 7afc978313c7d98125ea2bb988a4b2ddd76ee633 SHA1 ff5fa3907f1a22c78dd1d59fa593858bc014d9c2 SHA256 0afe727fa3f0aef3a771c4daf670c12fc65b670b40f43db3cf97dc8af03e09b1
+EBUILD lal-5.2.ebuild 2987 RMD160 15f714def1e41bfd98152fd77b97b876e4eddbee SHA1 dd77661081f8bfbbe36584aea89c9ed5777118f7 SHA256 793713e14b2ab46aac0937d724335bd8c5ab1339be3d01d027d1a589a95e2caf
+EBUILD lal-6.0.2.ebuild 2936 RMD160 0307f61f8f950a58168ec5a8fff0f1d2c161dd93 SHA1 5afd188bc3a305e982bea391365a047ccca952b0 SHA256 72c627d14abb3027776d8c224901d90a96e87991faa7daea156f6d3638390c16
+EBUILD lal-6.1.ebuild 2936 RMD160 0307f61f8f950a58168ec5a8fff0f1d2c161dd93 SHA1 5afd188bc3a305e982bea391365a047ccca952b0 SHA256 72c627d14abb3027776d8c224901d90a96e87991faa7daea156f6d3638390c16
+EBUILD lal-6.5.0.ebuild 2974 RMD160 758ec0dba99f437647ab8ab8a9caf7f6f9da87f7 SHA1 a3194bdf3c38bc65a2b1b3d11bec812b20d9b31e SHA256 bd09d05f53b833bbaa25d681724fc18f4263e8fedd9c7800ddcd6a4c83f2d6ad
+EBUILD lal-6.6.1.ebuild 2405 RMD160 7aab85d4c9b29967669e14f8a2d9113c39931597 SHA1 408a3c073f1411e77bdacca962b19998064b8561 SHA256 09038c8c2f796aed1a73315b07a35599d404c5293a2fa4e3d64b86b4088c31f2
diff --git a/sci-libs/lalframe/Manifest b/sci-libs/lalframe/Manifest
new file mode 100644
index 0000000..c0dae6b
--- /dev/null
+++ b/sci-libs/lalframe/Manifest
@@ -0,0 +1,2 @@
+DIST lalframe-1.0.2.tar.gz 17579324 RMD160 d8876e23f989fc360e46b4582319c25a5d26ab21 SHA1 246c9abc9c4fcfe45c7e7cba48518a350385cb5e SHA256 28af0b8b0f1826eb910ffd3625b8b6689aad7e1b6bafe3bb3bcb6753df0909a9
+EBUILD lalframe-1.0.2.ebuild 922 RMD160 1470950fb5ff9825da9873648ecd51bc5927500a SHA1 26fffaef831bae6539716c11f5c97f3f386e8232 SHA256 2c2b6dd1639e19d0c2e7d540dec2e634c35b40ef67417ec353e4fb2759dfd151
diff --git a/sci-libs/lalinference/Manifest b/sci-libs/lalinference/Manifest
new file mode 100644
index 0000000..14ea106
--- /dev/null
+++ b/sci-libs/lalinference/Manifest
@@ -0,0 +1,2 @@
+DIST lalinference-0.1.1.tar.gz 483666 RMD160 2821193bd5c53cb6d8058e80bc58b61ad88f6d5c SHA1 3bc5c3299d5d79f2ba7e0183422d60ac902173c9 SHA256 bc9a123002fe4740318080f021e7d04af6025d8d78ffc24cf7a3e83cb24dc501
+EBUILD lalinference-0.1.1.ebuild 1194 RMD160 00b92f00a7b0fd0a6cbe326fd6fc96a89b697353 SHA1 c53162bbcf66fa2f4aef4c73b9534948ab42259b SHA256 7d3f43bf011398f750c5e38a24ec5b344e00b08ca4be641781bac8850daa0f03
diff --git a/sci-libs/lalinspiral/Manifest b/sci-libs/lalinspiral/Manifest
new file mode 100644
index 0000000..06e2ebe
--- /dev/null
+++ b/sci-libs/lalinspiral/Manifest
@@ -0,0 +1,3 @@
+AUX lalinspiral-1.1.0-NRWaveInject.patch 726 RMD160 d846cbfa0e84025094fbc38b1454feeca2ace98f SHA1 48b9ecd96f3fa86131997d56690e3bea8b51b85d SHA256 36dcd41c3e455bb71a2c6de89636d502a1df9d2cce346a366765c1484fa4c304
+DIST lalinspiral-1.1.0.tar.gz 992378 RMD160 adbf28cd8d5993c7060dbf200210c33d8756ac8a SHA1 2f4c9313776acaaa84fac7d2ded33c621c2b8f3d SHA256 1ec0d4920216ca13e1cc1d875f18517b1f3c767eae22e60052852325ee2623fc
+EBUILD lalinspiral-1.1.0.ebuild 1192 RMD160 8f7f8c762344359c49f725867a981a85de1024c2 SHA1 360e22b88dc310b6854aa71d2676a4dc00e08463 SHA256 19a74671d0d2e455daebcd64ed27f78edc8323168dce93a00a2aa7913bd8d0fd
diff --git a/sci-libs/lalinspiral/files/lalinspiral-1.1.0-NRWaveInject.patch b/sci-libs/lalinspiral/files/lalinspiral-1.1.0-NRWaveInject.patch
new file mode 100644
index 0000000..c17d322
--- /dev/null
+++ b/sci-libs/lalinspiral/files/lalinspiral-1.1.0-NRWaveInject.patch
@@ -0,0 +1,20 @@
+--- src/NRWaveInject.c.orig 2010-12-03 23:33:04.000000000 +0100
++++ src/NRWaveInject.c 2011-10-24 19:41:48.224393124 +0200
+@@ -1182,7 +1182,7 @@
+ ENDFAIL( status );
+
+ /* set channel name */
+- snprintf( injData->name, LIGOMETA_CHANNEL_MAX * sizeof( CHAR ),
++ snprintf( injData->name, (LIGOMETA_CHANNEL_MAX-1) * sizeof( CHAR ),
+ "%s:STRAIN", ifo );
+
+ XLALDestroyREAL4Vector ( htData->data);
+@@ -1249,7 +1249,7 @@
+ XLALSimAddInjectionREAL8TimeSeries( injData, htData, NULL);
+
+ /* set channel name */
+- snprintf( injData->name, LIGOMETA_CHANNEL_MAX * sizeof( CHAR ),
++ snprintf( injData->name, (LIGOMETA_CHANNEL_MAX-1) * sizeof( CHAR ),
+ "%s:STRAIN", ifo );
+
+ XLALDestroyREAL8TimeSeries ( htData);
diff --git a/sci-libs/lalmetaio/Manifest b/sci-libs/lalmetaio/Manifest
new file mode 100644
index 0000000..bdecf1d
--- /dev/null
+++ b/sci-libs/lalmetaio/Manifest
@@ -0,0 +1,6 @@
+DIST lalmetaio-1.0.1.tar.gz 386061 RMD160 c6184748d82d014aa79cd0bd39d3ef8b60b14220 SHA1 841a9fa723298ea7f8f830556ef54ea79244a37c SHA256 3a2e1065f2bfab472af8dbe0de9c676cae5f7afed0bc69476a16b63700db7cfc
+DIST lalmetaio-1.0.2.tar.gz 391954 RMD160 154c03f01287b3fd67cf9a1d9ab6920a1779ba5d SHA1 673772420d1a28aadf9fd004213c71ecd86d31af SHA256 67c03a3680839417b7dd2cf2444f79333533027618381d03393be773235a96ab
+DIST lalmetaio-1.0.3.tar.gz 393334 RMD160 ec51dcb17e7b4ad2e8a44249c25a9bd4506adfb6 SHA1 d1669e13b4e292554548b6c312ff383fb4a190f1 SHA256 920582a713c285825706f5427165287170821066f903c3e3ac24e70e39353aa3
+EBUILD lalmetaio-1.0.1.ebuild 932 RMD160 9d63094d92037cc2df63147ab1ca90a39b1293d6 SHA1 cbad2db63d2d729abfd3951de4aa57963f415c31 SHA256 c8ebe9f5eca21bed9e02bc68eb922e1d30c6fce4909b2b753bc81184b138d906
+EBUILD lalmetaio-1.0.2.ebuild 957 RMD160 c08378b6013b40da5d98da6e8a278e575ead925c SHA1 18f50b6387888e64d4fcbd0502a2f29b9d0dfd06 SHA256 cf0719791d9a5b9318fbfde7734513523a4d76fe167ce61d930e1c1cd4e77084
+EBUILD lalmetaio-1.0.3.ebuild 957 RMD160 c08378b6013b40da5d98da6e8a278e575ead925c SHA1 18f50b6387888e64d4fcbd0502a2f29b9d0dfd06 SHA256 cf0719791d9a5b9318fbfde7734513523a4d76fe167ce61d930e1c1cd4e77084
diff --git a/sci-libs/lalxml/Manifest b/sci-libs/lalxml/Manifest
new file mode 100644
index 0000000..a5ae0a6
--- /dev/null
+++ b/sci-libs/lalxml/Manifest
@@ -0,0 +1,2 @@
+DIST lalxml-1.1.0.tar.gz 389291 RMD160 32adbf57d932b95cc87cbe2ef8839eeae25cffa2 SHA1 0a5d4a0824942e70bd229ee8f1052e5554ba535f SHA256 92043e971f5d9b54199862b85155c33232375c65fb27083753f93c70c580b8a7
+EBUILD lalxml-1.1.0.ebuild 937 RMD160 69f770464642527324aa60ce4578d784bda16ddb SHA1 e8093944dfa19672e746d38cae8cc92493c87f8d SHA256 0ab7b13e28eeab1e7615cda46e26f45597c7ca5404d9eae79ab86cb6b5992fb7
diff --git a/sci-libs/libframe/Manifest b/sci-libs/libframe/Manifest
new file mode 100644
index 0000000..711aed3
--- /dev/null
+++ b/sci-libs/libframe/Manifest
@@ -0,0 +1,6 @@
+DIST libframe-8.08.tar.gz 912629 RMD160 853b9a6de072847446e23394ad7a2532a0cc9301 SHA1 ebe6e955c4a0366eea7618cbe80758e6bdfc2387 SHA256 4a50d34e2fbe2ff7b52eb401473d7b2a4ecf79a9602218bb97d8be9d64fe6907
+DIST libframe-8.15.tar.gz 946183 RMD160 cd79f9b97ae48e4c549a0f09d0f16c4c8285b01a SHA1 9850b7063ddd18c23aa0fd7c32bb49915028d0ad SHA256 8b7108e9bdccc6d383e84f59c9aa8250664be755545dbf5543afaca1919334d7
+DIST v8r04.tar.gz 640009 RMD160 2fc19943878948f4dc3deb13c0992e8048a9fcc9 SHA1 d2d9c1e826f12223a0c2186d1113608633463e9b SHA256 137240244919e5bd9432b536f82d61d7bf0401a69f2d7ba5ffa72c51f63e8f1c
+EBUILD libframe-8.04.ebuild 973 RMD160 7e7d5081a37835a6d0d7ebc72141030faf389d0b SHA1 613982b46e24f71ff78b153d3c3649532b7521e5 SHA256 c9caf9bc900765b2878b6778b91315aee959cc720ae3fa15863b531e5f675e3e
+EBUILD libframe-8.08.ebuild 963 RMD160 865db92b048f4d9041cef6295cefa1a1eea6b30e SHA1 f38a61579ed66c9fe0de47f8d5213263b32e4315 SHA256 10ab6bcd39a219aa654436012e93f89559ecc87fe1e9122d86757dbc1cad9fcb
+EBUILD libframe-8.15.ebuild 1015 RMD160 a62083f9ae094001574b22a4a73076966da54b7d SHA1 0edf121d1bedd455e2bea498093279794cd40c85 SHA256 67beec75593fb5dfa55c25ad7d00fe20863b967e1ac5a1aa80f85be750fa4f59
diff --git a/sci-libs/libsufr/ChangeLog b/sci-libs/libsufr/ChangeLog
new file mode 100644
index 0000000..7c5313f
--- /dev/null
+++ b/sci-libs/libsufr/ChangeLog
@@ -0,0 +1,18 @@
+# ChangeLog for sci-libs/libsufr
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*libsufr-0.3.1 (14 Nov 2011)
+
+ 14 Nov 2011; Marc van der Sluys <gentoo@vandersluys.nl> +libsufr-0.3.1.ebuild,
+ edited metadata.xml:
+ Added ebuild for version 0.3.1; files/libsufr-0.3.0-multilib.patch no longer
+ needed
+
+*libsufr-0.3.0 (09 Nov 2011)
+
+ 09 Nov 2011; Kacper Kowalik <xarthisius@gentoo.org> +libsufr-0.3.0.ebuild,
+ +files/libsufr-0.3.0-multilib.patch, +metadata.xml:
+ Initial import, ebuild written by Marc van der Sluys <gentoo@vandersluys.nl>,
+ edited by me
+
diff --git a/sci-libs/libsufr/Manifest b/sci-libs/libsufr/Manifest
new file mode 100644
index 0000000..e4f0bb4
--- /dev/null
+++ b/sci-libs/libsufr/Manifest
@@ -0,0 +1,6 @@
+DIST libSUFR-0.3.0.tar.gz 41834 RMD160 a1ac29d975525dbef3737f18ec70806a823dbf9c SHA1 73bc4ba2a5ed53ae2f0805eaed84f4ee2915e116 SHA256 710f0a48f041d1b43b499ee1c2a68514860a4b07f85f914f910fd211611d0553
+DIST libsufr-0.3.1.tar.gz 42315 RMD160 e98ad4bc4f16eee9f99810d81b6fb5598e4c0c33 SHA1 45436e798dd105ce690444ba755be82fe2a163cd SHA256 b7b82405df9df3a53a00c2920319c59d68e188a4758c84cfe0cbdb7c2ee35f2e
+EBUILD libsufr-0.3.0.ebuild 658 RMD160 9a2d4d77216cde3e9717e7b4b0f3719397d927b9 SHA1 6cdf663d98303601f82fa39eafbdd15f98cf794a SHA256 1614773da09679917cd818558bebee235bfbf8d6447977e8ec4bcd438e59e4bd
+EBUILD libsufr-0.3.1.ebuild 593 RMD160 02cbdd072e2f6cbc82b98ea4de394f36e6509808 SHA1 e2289e61263fca611d6dd7180bea322817bc64f8 SHA256 e2a253f515828a9723f5b258cc0344f2ceddb33d54c2beb128a572cc00a9e18c
+MISC ChangeLog 597 RMD160 0c356430b7b2487575bd75dc5198f8e1802eba1e SHA1 6c41b72c70754288dade985f61273154116045b4 SHA256 c9f24073cab67c7649143be2e80a1073b4d273cf57bfc406c487d72e18ee8065
+MISC metadata.xml 356 RMD160 2b510ef1c89ed92cecbbb03e5f5548ec22bbe2d4 SHA1 1a946d2194ef5478e60055fe764dbd9ec82e36e7 SHA256 e1087d58875a98189f26e725970238de9e02c3f1e7ac02dd32bcdb9deb83d77d
diff --git a/sci-libs/libsufr/metadata.xml b/sci-libs/libsufr/metadata.xml
new file mode 100644
index 0000000..7b2b4ed
--- /dev/null
+++ b/sci-libs/libsufr/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>AstroFloyd@gmail.com</email>
+ <name>Marc van der Sluys</name>
+ </maintainer>
+ <maintainer>
+ <email>xarthisius@gentoo.org</email>
+ <name>Kacper Kowalik</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-libs/metaio/Manifest b/sci-libs/metaio/Manifest
new file mode 100644
index 0000000..57b8496
--- /dev/null
+++ b/sci-libs/metaio/Manifest
@@ -0,0 +1,4 @@
+DIST metaio-7.2.tar.gz 699595 RMD160 1c84d5b9e1ce62b6e4bebff534b33220b951f58c SHA1 72a8b0b593b8169517b655b27b058ec000c44bcf SHA256 914e59b3ab1641ecd6902c10e332e3dc763736c3571c60b6c7e5d6f403816773
+DIST metaio-8.2.tar.gz 1056987 RMD160 8661bf8d239ae59c0ad9b117441310d100ac884e SHA1 2702cfd5278dace668b4f376c5e3f3f383a3bcf2 SHA256 3aa55134817ef9bec7d1df09324054ef7fb6cc003db084ed7c2f1613c6f9f522
+EBUILD metaio-7.2.ebuild 853 RMD160 e17cf05a29768f24b97c55664b255ed15918f7c6 SHA1 7d8697b50512cf602f0093aeee1e3506507792d8 SHA256 eb2f8497ac49f0201d3b4fd25bdae8d0989098fee44166b5b08edac3d7cbde38
+EBUILD metaio-8.2.ebuild 891 RMD160 e190511c4b9bd1aa7a3e14d1e625e73a079db00e SHA1 9b75972f7ce4ce66e215e7ce50fe694294213533 SHA256 66c19b1c7207e711773e54f3a7ae9853de0e7a8c95f6109cf6f5d60380a4c064
diff --git a/sci-libs/pg2plplot/Manifest b/sci-libs/pg2plplot/Manifest
new file mode 100644
index 0000000..bbf380b
--- /dev/null
+++ b/sci-libs/pg2plplot/Manifest
@@ -0,0 +1,4 @@
+DIST pg2plplot-0.1.4.tar.gz 25546 SHA256 a2e34dc92af07838ac76331503c9d74995db82e1645a9c7e4a9b14cfd4042445
+DIST pg2plplot-0.2.0.tar.gz 34232 SHA256 b4ee8a52619b49d1b1d6fc0b982a20f0c1dcb33a0c725526fd55180b9d5dff4e SHA512 04d79f5c730965450d2cebd3a28d9d7908ccda9dcb6d6c0ae6fd91dae4149f2b837006eb35cd7f9e4fdb7245a971eb575a40abb8a445904614815af164e3cc8d WHIRLPOOL b3444ca96cd62a3510dc4336e0aede821901f68eeacee949dffa80780921e83f91762ccfefd5996034d033639561e36a40b0c0f2b31a5ef7d047b7501c489e50
+EBUILD pg2plplot-0.1.4.ebuild 790 SHA256 b2cfe0b2a6fc5b1f10858205800c3317bb92a2ebf2cfba39ecf15bf6f370bdd4 SHA512 07467f17412f2c25c7b6fbfe196a132884ed5d5b9299406a41001d878ac595424cd5a3ad4afc3bd0822dbf98abf6761f5272cf01a9babf418e9aadd27e335433 WHIRLPOOL 11307f7a87b791c639e1e668559306620a6bfae2d7e2fa2ca7a1d68c805d3edfd81f1508dea067c12ae468e1ce70de1013e13ffe99f6f93ba18b49ed0fa3e863
+EBUILD pg2plplot-0.2.0.ebuild 774 SHA256 0b0bb7c4bcdde6800eea1da3f23b054e9295858f5c211c2a5f38c84402031011 SHA512 4d25b64967afb53c972f925032e39990de61a093cbfcf75327db150912ec355e98c54d0df610b6b14c8466d733493bdf9d2f287c4c9937ec729cbd699ee5a9a7 WHIRLPOOL 956dde2437cb3b2c8bafa045076547883354f3b928d21c3a71c4ce2f31e375fb95fa4bfdbe7e0bfb1a1d6dfaea7beb1fb5d335aae25c4e2d96de2779681d996f
diff --git a/sci-libs/pg2plplot/pg2plplot-0.2.0.ebuild b/sci-libs/pg2plplot/pg2plplot-0.2.0.ebuild
new file mode 100644
index 0000000..0d4321c
--- /dev/null
+++ b/sci-libs/pg2plplot/pg2plplot-0.2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+CMAKE_VERBOSE=1
+
+inherit cmake-utils fortran-2
+
+DESCRIPTION="Assist the transition from PGPlot to PLplot in Fortran programs"
+HOMEPAGE="http://${PN}.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/fortran
+ sci-libs/libsufr"
+
+RDEPEND=${DEPEND}
+
+src_configure() {
+ mycmakeargs=(
+ $(cmake-utils_use static-libs CREATE_STATICLIB)
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ # Install binary:
+ cmake-utils_src_install || die "install failed"
+
+ # Install documentation:
+ dodoc CHANGELOG INSTALL LICENCE README VERSION || die "installing doc failed"
+}
diff --git a/sci-libs/pgplot/000_readme.txt b/sci-libs/pgplot/000_readme.txt
new file mode 100644
index 0000000..202b07d
--- /dev/null
+++ b/sci-libs/pgplot/000_readme.txt
@@ -0,0 +1,13 @@
+In pgplot-5.2.2-r99.ebuild, you can uncomment different lines for the drivers patch:
+
+ epatch "${FILESDIR}"/${PN}-drivers.patch
+ #epatch "${FILESDIR}"/${PN}-drivers-nox.patch
+ #epatch "${FILESDIR}"/${PN}-drivers-ppmonly.patch
+
+ the -nox has no support for X (and doesn't need libX11 and other
+ libraries when linking statically)
+ the -ppmonly has support for .ppm files only, and is only slightly
+ smaller than -nox
+
+ use /root/drivers.list.orig to make additional patches.
+
diff --git a/sci-libs/pgplot/ChangeLog b/sci-libs/pgplot/ChangeLog
new file mode 100644
index 0000000..7a65a45
--- /dev/null
+++ b/sci-libs/pgplot/ChangeLog
@@ -0,0 +1,87 @@
+# ChangeLog for sci-libs/pgplot
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/pgplot/ChangeLog,v 1.17 2009/02/23 17:30:38 bicatali Exp $
+
+ 23 Feb 2009; Sébastien Fabbro <bicatali@gentoo.org> metadata.xml,
+ pgplot-5.2.2-r3.ebuild:
+ Added ~ppc, thanks to Pierre Martin.
+
+ 13 Feb 2009; Patrick Kursawe <phosphan@gentoo.org>
+ -pgplot-5.2.2-r2.ebuild, pgplot-5.2.2-r3.ebuild:
+ Setting VARTEXFONTS (see bug #223077).
+ Removed obsolete revision.
+
+ 07 Nov 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ files/pgplot-makemake.patch, pgplot-5.2.2-r3.ebuild:
+ Fixed for parallel build
+
+*pgplot-5.2.2-r3 (05 Nov 2008)
+
+ 05 Nov 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ files/pgplot-compile-setup.patch, +files/pgplot-headers.patch,
+ files/pgplot-makemake.patch, +pgplot-5.2.2-r3.ebuild:
+ Fix further missing headers, added soname in libcgplot, and as-needed
+ fixes
+
+ 29 Jun 2008; Torsten Veller <tove@gentoo.org> pgplot-5.2.2-r2.ebuild:
+ Add missing die: || "..." -> || die "..."
+
+ 27 Jun 2008; Ulrich Mueller <ulm@gentoo.org> pgplot-5.2.2-r2.ebuild:
+ Change dependency from virtual/motif to x11-libs/openmotif, bug 224749.
+
+ 23 Jun 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ pgplot-5.2.2-r2.ebuild:
+ Enabling gif, wd and ppd drivers to be compiled when gfortran >= 4.3, some
+ minor qa fixes
+
+ 11 Oct 2007; Sébastien Fabbro <bicatali@gentoo.org> -pgplot-5.2.2.ebuild,
+ -pgplot-5.2.2-r1.ebuild, pgplot-5.2.2-r2.ebuild:
+ Added ifc as a possible fortran compiler, x11-libs/libXt as a dep, more
+ cleaning.
+
+ 22 Jul 2007; Donnie Berkholz <dberkholz@gentoo.org>; pgplot-5.2.2.ebuild:
+ Drop virtual/x11 references.
+
+ 23 Apr 2007; Sébastien Fabbro <bicatali@gentoo.org>
+ pgplot-5.2.2-r2.ebuild:
+ fixed a bad link for shared lib
+
+*pgplot-5.2.2-r2 (09 Mar 2007)
+
+ 09 Mar 2007; Sébastien Fabbro <bicatali@gentoo.org>
+ files/pgplot-drivers.patch, -files/pgplot-path.patch,
+ +files/pgplot-pgdisp.patch, +pgplot-5.2.2-r2.ebuild:
+ Now install pgdisp, more drivers, and more doc. Add a motif and tk flag
+ to allow these two drivers to be built. Remove drivers using the non
+ standard fortran %val for gfortran to compile (if g77 selected, drivers
+ won't be removed). Did some cleaning as well.
+
+*pgplot-5.2.2-r1 (05 Mar 2007)
+
+ 05 Mar 2007; Sébastien Fabbro <bicatali@gentoo.org>
+ +files/pgplot-path.patch, metadata.xml, +pgplot-5.2.2-r1.ebuild:
+ General cleaning, added patches, a src_test, now does full
+ installation, and a longdescrption in metadata.xml. Also tested on
+ amd64.
+
+ 22 Feb 2007; Markus Ullmann <jokey@gentoo.org> ChangeLog:
+ Redigest for Manifest2
+
+ 05 Aug 2006; Donnie Berkholz <dberkholz@gentoo.org>; metadata.xml:
+ Remove myself as maintainer, anyone feel free to work on this, although I'll
+ continue to do so as well.
+
+ 07 Jul 2006; Donnie Berkholz <dberkholz@gentoo.org>; metadata.xml:
+ Update to my new email address.
+
+ 30 Mar 2006; Aron Griffis <agriffis@gentoo.org> pgplot-5.2.2.ebuild:
+ Mark 5.2.2 ~ia64
+
+*pgplot-5.2.2 (16 Dec 2005)
+
+ 16 Dec 2005; Donnie Berkholz <dberkholz@gentoo.org>;
+ +files/pgplot-compile-setup.patch, +files/pgplot-drivers.patch,
+ +files/pgplot-makemake.patch, +metadata.xml, +pgplot-5.2.2.ebuild:
+ A Fortran- or C-callable, device-independent graphics package for making
+ simple scientific graphs.
+
diff --git a/sci-libs/pgplot/Manifest b/sci-libs/pgplot/Manifest
new file mode 100644
index 0000000..ae6c676
--- /dev/null
+++ b/sci-libs/pgplot/Manifest
@@ -0,0 +1,13 @@
+AUX pgplot-compile-setup.patch 3088 RMD160 55d3b2be039338c042b14d97b868946976dbd145 SHA1 971209c62e173738a3fcda2c7fdbc91393915384 SHA256 dc52b2136b2c2bc8dfa825dc121ec89750858103b316a9c132afde165140ff3d
+AUX pgplot-drivers-nox.patch 2970 RMD160 a73fea68f343bb1a9ffb67ea2513bff76d302266 SHA1 07703e69161d142bb4255df51a5b54e5c72efc59 SHA256 aa557844b7a0f93ebef5e51866532409656269fbb48dabc891842dbf40b1fa65
+AUX pgplot-drivers-ppmonly.patch 2075 RMD160 11f34bc126e5b6a66ae5500e11fcb0d7da1a3e1b SHA1 f59c88b9ea3a6e4435779f883de164999f33499d SHA256 1dc5eb941ec379266c9c170933007ff5219cd679cce558271d34ad5327196d49
+AUX pgplot-drivers.patch 3694 RMD160 1e0888a1e09aad0b7413231a1c769fc5ca6b2f2d SHA1 c6f10d2cddd1765d9caf19f61aad0531435195eb SHA256 5daba8560591418df85596e396ebf61bb0a8a884046bc5abce4ff1946c364f66
+AUX pgplot-headers.patch 2716 RMD160 aaad73bfbea9b4f731346a02c390e0adc318f8d0 SHA1 e6b95497b519a5450a24bb5997e18019c73e33eb SHA256 e92a07e38fff278218c09b84453d5c75be663576bdbe19ed9259615bd7a0be7c
+AUX pgplot-ldflags.patch 1005 RMD160 b7dbadeb1ccac887083c76b570acd80749b5163d SHA1 58ddaaa152777ff613df92b37982fb727f961941 SHA256 5d065415a304fb5650fc3db1294961b1208a75f0b72e0af34edc3e88dbe3b31d
+AUX pgplot-makemake.patch 4417 RMD160 1048def60e9d1bbab675e58269d0cc4fef78cda6 SHA1 b00da00521863239f1c32df5d48012cf89777eb3 SHA256 2e9515c5154da98cb385e8d56b9b106c0415aed268ce5d366d37b12a97ade4aa
+AUX pgplot-pgdisp.patch 332 RMD160 1bd3c2ed7770bb60be19c50c4610c35d67bf92e9 SHA1 891475823d011156aa919fc2b844d1786ae6d85f SHA256 3aac6127d35f4039023a13182553b24e1902d6e1b46530fbd68e034357d0b078
+DIST pgplot522.tar.gz 1197397 RMD160 4c21cad6613772f4104c65ac3d8d9a42e3c4afe1 SHA1 1f1c9aa17eeec9a2fb23fd15a0e4a91dcc49ddc1 SHA256 a5799ff719a510d84d26df4ae7409ae61fe66477e3f1e8820422a9a4727a5be4
+EBUILD pgplot-5.2.2-r99.ebuild 4963 RMD160 685bfa33546cc9934624d223d1a5d547632b28e3 SHA1 a9ef521474866da5a898fca3b4ca9e9d07e0517b SHA256 713a4cd98c621a425dddafe11783459df5b4e1fc219e8fe3b627d055413b7671
+MISC 000_readme.txt 498 RMD160 6f20a26a6a8bfc6dc50651b76a21e5e4a30aab23 SHA1 3b7ca6a1b7ef6255a08f7e0727c495979394147a SHA256 66b8146252d208c112b4488491d7aa5b2968c91243387fab169b99ab6d741856
+MISC ChangeLog 3367 RMD160 d4df7ce789961fa11f5f7928bce02d348f4c5c50 SHA1 19af82d8f8ae6d61f782a47aa87a44ee9e43c5c0 SHA256 a20511e71691aad51e48a0df9141807097b814a1e0b7246398e16b47a32bb4cf
+MISC metadata.xml 517 RMD160 27e91597c28b40b94a27548baeb7d1c6768eff77 SHA1 cabae2f60e330d39b41be431df8cf8b4ff84c642 SHA256 c0a4ba04ced31cde679aa0a17c19d313bbe9a5d4cd0771ba9b4af968c92c79f1
diff --git a/sci-libs/pgplot/files/pgplot-compile-setup.patch b/sci-libs/pgplot/files/pgplot-compile-setup.patch
new file mode 100644
index 0000000..8f7f60a
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-compile-setup.patch
@@ -0,0 +1,96 @@
+--- sys_linux/g77_gcc.conf.orig 1999-07-05 19:10:33.000000000 +0100
++++ sys_linux/g77_gcc.conf 2008-10-29 18:30:33.000000000 +0000
+@@ -1,4 +1,4 @@
+-# The GNU g77 FORTRAN compiler and Gnu gcc C compiler on an elf-system.
++# The GNU gfortran FORTRAN compiler and Gnu gcc C compiler on an elf-system.
+ #-----------------------------------------------------------------------
+
+ # Optional: Needed by XWDRIV (/xwindow and /xserve) and
+@@ -23,7 +23,7 @@
+ # The arguments needed by the C compiler to locate Tcl, Tk and
+ # X-window include files.
+
+- TK_INCL="-I/usr/include $XINCL"
++ TK_INCL="$XINCL"
+
+ # Optional: Needed by RVDRIV (/xrv).
+ # The arguments needed by the C compiler to locate Rivet, Tcl, Tk and
+@@ -34,13 +34,13 @@
+ # Mandatory.
+ # The FORTRAN compiler to use.
+
+- FCOMPL="g77"
++ FCOMPL="gfortran-4.3.2"
+
+ # Mandatory.
+ # The FORTRAN compiler flags to use when compiling the pgplot library.
+ # (NB. makemake prepends -c to $FFLAGC where needed)
+
+- FFLAGC="-u -Wall -fPIC -O"
++ FFLAGC="-u -Wall -O2"
+
+ # Mandatory.
+ # The FORTRAN compiler flags to use when compiling fortran demo programs.
+@@ -57,12 +57,12 @@
+ # Mandatory.
+ # The C compiler flags to use when compiling the pgplot library.
+
+- CFLAGC="-Wall -fPIC -DPG_PPU -O"
++ CFLAGC="-Wall -DPG_PPU"
+
+ # Mandatory.
+ # The C compiler flags to use when compiling C demo programs.
+
+- CFLAGD="-Wall -O"
++ CFLAGD="-Wall"
+
+ # Optional: Only needed if the cpgplot library is to be compiled.
+ # The flags to use when running pgbind to create the C pgplot wrapper
+@@ -74,7 +74,7 @@
+ # The library-specification flags to use when linking normal pgplot
+ # demo programs.
+
+- LIBS="-L/usr/X11R6/lib -lX11"
++ LIBS="-lX11"
+
+ # Optional: Needed by XMDRIV (/xmotif).
+ # The library-specification flags to use when linking motif
+@@ -92,7 +92,7 @@
+ # The library-specification flags to use when linking Tk demo programs.
+ # Note that you may need to append version numbers to -ltk and -ltcl.
+
+- TK_LIBS="-L/usr/lib -ltk -ltcl $LIBS -ldl"
++ TK_LIBS="-ltk -ltcl $LIBS -ldl"
+
+ # Mandatory.
+ # On systems that have a ranlib utility, put "ranlib" here. On other
+@@ -103,12 +103,18 @@
+ # Optional: Needed on systems that support shared libraries.
+ # The name to give the shared pgplot library.
+
+- SHARED_LIB="libpgplot.so"
++ MV=5
++ SHARED_LIB="libpgplot.so.$MV"
++ SHARED_CLIB="libcpgplot.so.$MV"
+
+ # Optional: Needed if SHARED_LIB is set.
+ # How to create a shared library from a trailing list of object files.
+
+- SHARED_LD="gcc -shared -o $SHARED_LIB"
++ SHARED_LD_PGPLOT_OPTS="-o $SHARED_LIB -Wl,-soname,$SHARED_LIB $LDFLAGS"
++
++ SHARED_LD_CPGPLOT_OPTS="-o $SHARED_CLIB -Wl,-soname,$SHARED_CLIB -L. -lpgplot $LDFLAGS"
++
++ SHARED_LD="$FCOMPL -shared"
+
+ # Optional:
+ # On systems such as Solaris 2.x, that allow specification of the
+@@ -117,7 +123,7 @@
+ # library-specification flags used to specify these libraries to
+ # $SHARED_LD
+
+- SHARED_LIB_LIBS=""
++ SHARED_LIB_LIBS="-lX11 -lXt -lpng"
+
+ # Optional:
+ # Compiler name used on Next systems to compile objective-C files.
diff --git a/sci-libs/pgplot/files/pgplot-drivers-nox.patch b/sci-libs/pgplot/files/pgplot-drivers-nox.patch
new file mode 100644
index 0000000..97733bc
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-drivers-nox.patch
@@ -0,0 +1,50 @@
+--- drivers.list.orig 1999-05-04 00:02:15.000000000 -0500
++++ drivers.list 2009-07-28 18:08:55.000000000 -0500
+@@ -16,8 +16,8 @@
+ ! EXDRIV 2 /EXCL Talaris/EXCL printers, portrait
+ ! GCDRIV 0 /GENICOM Genicom 4410 dot-matrix printer, landscape
+ ! Caution: use of GIDRIV may require a license from Unisys:
+-! GIDRIV 1 /GIF GIF-format file, landscape
+-! GIDRIV 2 /VGIF GIF-format file, portrait
++ GIDRIV 1 /GIF GIF-format file, landscape
++ GIDRIV 2 /VGIF GIF-format file, portrait
+ ! GLDRIV 1 /HPGL Hewlett-Packard HP-GL plotters, landscape Std F77
+ ! GLDRIV 2 /VHPGL Hewlett-Packard HP-GL plotters, portrait Std F77
+ ! GODRIV 0 /GOC GOC Sigma T5670 terminal VMS
+@@ -39,12 +39,12 @@
+ ! PGDRIV 0 /PGMF PGPLOT metafile (new format, experimental) Std F77
+ ! PNDRIV 1 /PNG Portable Network Graphics file C
+ ! PNDRIV 2 /TPNG Portable Network Graphics file - transparent background C
+-! PPDRIV 1 /PPM Portable Pixel Map file, landscape
+-! PPDRIV 2 /VPPM Portable PIxel Map file, portrait
+-! PSDRIV 1 /PS PostScript printers, monochrome, landscape Std F77
+-! PSDRIV 2 /VPS Postscript printers, monochrome, portrait Std F77
+-! PSDRIV 3 /CPS PostScript printers, color, landscape Std F77
+-! PSDRIV 4 /VCPS PostScript printers, color, portrait Std F77
++ PPDRIV 1 /PPM Portable Pixel Map file, landscape
++ PPDRIV 2 /VPPM Portable PIxel Map file, portrait
++ PSDRIV 1 /PS PostScript printers, monochrome, landscape Std F77
++ PSDRIV 2 /VPS Postscript printers, monochrome, portrait Std F77
++ PSDRIV 3 /CPS PostScript printers, color, landscape Std F77
++ PSDRIV 4 /VCPS PostScript printers, color, portrait Std F77
+ ! PXDRIV 0 /PRINTRONI Printronix P300 or P600 dot-matrix printer
+ ! QMDRIV 1 /QMS QUIC devices (QMS and Talaris), landscape Std F77
+ ! QMDRIV 2 /VQMS QUIC devices (QMS and Talaris), portrait Std F77
+@@ -62,7 +62,7 @@
+ ! TTDRIV 10 /VMAC Macintosh VersaTerm-PRO Tektronix-4105 emulator Std F77
+ ! TXDRIV 0 /TX TeX PK Font Output files
+ ! VADRIV 0 /VCANON Canon Laser printer, LBP-8/A2, portrait
+-! VBDRIV 0 /VBCANON Canon Laser printer (bitmap version), portrait
++! VBDRIV 0 /VBCANON Canon Laser printer (bitmap version), portrait
+ ! VTDRIV 0 /VT125 Dec Regis terminals (VT125 etc.) Std F77
+ ! WDDRIV 1 /WD X Window dump file, landscape
+ ! WDDRIV 2 /VWD X Window dump file, portrait
+@@ -70,7 +70,7 @@
+ ! X2DRIV 0 /XDISP PGDISP or FIGDISP server for X workstations C
+ ! XWDRIV 1 /XWINDOW Workstations running X Window System C
+ ! XWDRIV 2 /XSERVE Persistent window on X Window System C
+-! ZEDRIV 0 /ZETA Zeta 8 Digital Plotter
++! ZEDRIV 0 /ZETA Zeta 8 Digital Plotter
+ !
+ ! The following drivers can only be used in PGPLOT installations on MS-DOS
+ ! systems with appropriate hardware and software. Do not select these
diff --git a/sci-libs/pgplot/files/pgplot-drivers-ppmonly.patch b/sci-libs/pgplot/files/pgplot-drivers-ppmonly.patch
new file mode 100644
index 0000000..410bd01
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-drivers-ppmonly.patch
@@ -0,0 +1,36 @@
+--- drivers.list.orig 1999-05-04 00:02:15.000000000 -0500
++++ drivers.list 2009-07-28 19:19:39.000000000 -0500
+@@ -35,12 +35,12 @@
+ ! LXDRIV 0 /LATEX LaTeX picture environment
+ ! MFDRIV 0 /FILE PGPLOT graphics metafile
+ ! NEDRIV 0 /NEXT Computers running NeXTstep operating system
+- NUDRIV 0 /NULL Null device (no output) Std F77
++! NUDRIV 0 /NULL Null device (no output) Std F77
+ ! PGDRIV 0 /PGMF PGPLOT metafile (new format, experimental) Std F77
+ ! PNDRIV 1 /PNG Portable Network Graphics file C
+ ! PNDRIV 2 /TPNG Portable Network Graphics file - transparent background C
+-! PPDRIV 1 /PPM Portable Pixel Map file, landscape
+-! PPDRIV 2 /VPPM Portable PIxel Map file, portrait
++ PPDRIV 1 /PPM Portable Pixel Map file, landscape
++ PPDRIV 2 /VPPM Portable PIxel Map file, portrait
+ ! PSDRIV 1 /PS PostScript printers, monochrome, landscape Std F77
+ ! PSDRIV 2 /VPS Postscript printers, monochrome, portrait Std F77
+ ! PSDRIV 3 /CPS PostScript printers, color, landscape Std F77
+@@ -62,7 +62,7 @@
+ ! TTDRIV 10 /VMAC Macintosh VersaTerm-PRO Tektronix-4105 emulator Std F77
+ ! TXDRIV 0 /TX TeX PK Font Output files
+ ! VADRIV 0 /VCANON Canon Laser printer, LBP-8/A2, portrait
+-! VBDRIV 0 /VBCANON Canon Laser printer (bitmap version), portrait
++! VBDRIV 0 /VBCANON Canon Laser printer (bitmap version), portrait
+ ! VTDRIV 0 /VT125 Dec Regis terminals (VT125 etc.) Std F77
+ ! WDDRIV 1 /WD X Window dump file, landscape
+ ! WDDRIV 2 /VWD X Window dump file, portrait
+@@ -70,7 +70,7 @@
+ ! X2DRIV 0 /XDISP PGDISP or FIGDISP server for X workstations C
+ ! XWDRIV 1 /XWINDOW Workstations running X Window System C
+ ! XWDRIV 2 /XSERVE Persistent window on X Window System C
+-! ZEDRIV 0 /ZETA Zeta 8 Digital Plotter
++! ZEDRIV 0 /ZETA Zeta 8 Digital Plotter
+ !
+ ! The following drivers can only be used in PGPLOT installations on MS-DOS
+ ! systems with appropriate hardware and software. Do not select these
diff --git a/sci-libs/pgplot/files/pgplot-drivers.patch b/sci-libs/pgplot/files/pgplot-drivers.patch
new file mode 100644
index 0000000..5888679
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-drivers.patch
@@ -0,0 +1,61 @@
+--- drivers.list.orig 1999-05-04 00:02:15.000000000 -0500
++++ drivers.list 2009-07-28 16:10:09.000000000 -0500
+@@ -16,8 +16,8 @@
+ ! EXDRIV 2 /EXCL Talaris/EXCL printers, portrait
+ ! GCDRIV 0 /GENICOM Genicom 4410 dot-matrix printer, landscape
+ ! Caution: use of GIDRIV may require a license from Unisys:
+-! GIDRIV 1 /GIF GIF-format file, landscape
+-! GIDRIV 2 /VGIF GIF-format file, portrait
++ GIDRIV 1 /GIF GIF-format file, landscape
++ GIDRIV 2 /VGIF GIF-format file, portrait
+ ! GLDRIV 1 /HPGL Hewlett-Packard HP-GL plotters, landscape Std F77
+ ! GLDRIV 2 /VHPGL Hewlett-Packard HP-GL plotters, portrait Std F77
+ ! GODRIV 0 /GOC GOC Sigma T5670 terminal VMS
+@@ -32,19 +32,19 @@
+ ! LSDRIV 2 /VLIPS2 Canon LaserShot printer (portrait)
+ ! LNDRIV 0 /LN03 Dec LN03-PLUS Laser printer (landscape) VMS
+ ! LVDRIV 0 /LVN03 Dec LN03-PLUS Laser printer (portrait) VMS
+-! LXDRIV 0 /LATEX LaTeX picture environment
++ LXDRIV 0 /LATEX LaTeX picture environment
+ ! MFDRIV 0 /FILE PGPLOT graphics metafile
+ ! NEDRIV 0 /NEXT Computers running NeXTstep operating system
+ NUDRIV 0 /NULL Null device (no output) Std F77
+ ! PGDRIV 0 /PGMF PGPLOT metafile (new format, experimental) Std F77
+ ! PNDRIV 1 /PNG Portable Network Graphics file C
+ ! PNDRIV 2 /TPNG Portable Network Graphics file - transparent background C
+-! PPDRIV 1 /PPM Portable Pixel Map file, landscape
+-! PPDRIV 2 /VPPM Portable PIxel Map file, portrait
+-! PSDRIV 1 /PS PostScript printers, monochrome, landscape Std F77
+-! PSDRIV 2 /VPS Postscript printers, monochrome, portrait Std F77
+-! PSDRIV 3 /CPS PostScript printers, color, landscape Std F77
+-! PSDRIV 4 /VCPS PostScript printers, color, portrait Std F77
++ PPDRIV 1 /PPM Portable Pixel Map file, landscape
++ PPDRIV 2 /VPPM Portable PIxel Map file, portrait
++ PSDRIV 1 /PS PostScript printers, monochrome, landscape Std F77
++ PSDRIV 2 /VPS Postscript printers, monochrome, portrait Std F77
++ PSDRIV 3 /CPS PostScript printers, color, landscape Std F77
++ PSDRIV 4 /VCPS PostScript printers, color, portrait Std F77
+ ! PXDRIV 0 /PRINTRONI Printronix P300 or P600 dot-matrix printer
+ ! QMDRIV 1 /QMS QUIC devices (QMS and Talaris), landscape Std F77
+ ! QMDRIV 2 /VQMS QUIC devices (QMS and Talaris), portrait Std F77
+@@ -62,15 +62,15 @@
+ ! TTDRIV 10 /VMAC Macintosh VersaTerm-PRO Tektronix-4105 emulator Std F77
+ ! TXDRIV 0 /TX TeX PK Font Output files
+ ! VADRIV 0 /VCANON Canon Laser printer, LBP-8/A2, portrait
+-! VBDRIV 0 /VBCANON Canon Laser printer (bitmap version), portrait
++! VBDRIV 0 /VBCANON Canon Laser printer (bitmap version), portrait
+ ! VTDRIV 0 /VT125 Dec Regis terminals (VT125 etc.) Std F77
+ ! WDDRIV 1 /WD X Window dump file, landscape
+ ! WDDRIV 2 /VWD X Window dump file, portrait
+ ! WSDRIV 0 /WS VAX workstations running VWS software VMS
+-! X2DRIV 0 /XDISP PGDISP or FIGDISP server for X workstations C
+-! XWDRIV 1 /XWINDOW Workstations running X Window System C
+-! XWDRIV 2 /XSERVE Persistent window on X Window System C
+-! ZEDRIV 0 /ZETA Zeta 8 Digital Plotter
++ X2DRIV 0 /XDISP PGDISP or FIGDISP server for X workstations C
++ XWDRIV 1 /XWINDOW Workstations running X Window System C
++ XWDRIV 2 /XSERVE Persistent window on X Window System C
++! ZEDRIV 0 /ZETA Zeta 8 Digital Plotter
+ !
+ ! The following drivers can only be used in PGPLOT installations on MS-DOS
+ ! systems with appropriate hardware and software. Do not select these
diff --git a/sci-libs/pgplot/files/pgplot-headers.patch b/sci-libs/pgplot/files/pgplot-headers.patch
new file mode 100644
index 0000000..7bde726
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-headers.patch
@@ -0,0 +1,109 @@
+--- ./sys/grtermio.c.orig 2008-10-29 17:42:48.000000000 +0000
++++ ./sys/grtermio.c 2008-10-29 19:54:43.000000000 +0000
+@@ -7,6 +7,10 @@
+
+ #include <stdio.h>
+ #include <termios.h>
++#include <stdlib.h>
++#include <unistd.h>
++#include <string.h>
++#include <fcntl.h>
+
+ #ifdef PG_PPU
+ #define GROTER groter_
+--- ./sys/grfileio.c.orig 2008-10-29 15:10:02.000000000 +0000
++++ ./sys/grfileio.c 2008-10-29 17:56:50.000000000 +0000
+@@ -17,7 +17,9 @@
+ */
+
+ #include <stdlib.h>
++#include <unistd.h>
+ #include <stdio.h>
++#include <string.h>
+ #include <sys/types.h>
+ #include <fcntl.h>
+
+--- ./drivers/figdisp_comm.c.orig 2008-10-29 15:09:15.000000000 +0000
++++ ./drivers/figdisp_comm.c 2008-10-29 17:54:08.000000000 +0000
+@@ -17,6 +17,8 @@
+
+ /* The system include files */
+ #include <stdio.h>
++#include <stdlib.h>
++#include <unistd.h>
+
+ /* Get ntohs prototype or macro */
+
+--- ./pgdispd/resdb.c.orig 2008-10-29 18:22:41.000000000 +0000
++++ ./pgdispd/resdb.c 2008-10-29 20:10:22.000000000 +0000
+@@ -47,6 +47,8 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
++
+ #ifndef VMS
+ #include <pwd.h>
+ #endif
+@@ -1042,7 +1044,6 @@
+ int uid;
+
+ extern char *getenv();
+- extern int getuid();
+ extern struct passwd *getpwuid();
+ struct passwd *pw;
+ register char *ptr;
+--- ./pgdispd/proccom.c.orig 2008-10-29 15:03:34.000000000 +0000
++++ ./pgdispd/proccom.c 2008-10-29 18:15:48.000000000 +0000
+@@ -90,6 +90,7 @@
+
+ /* The system include files */
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <sys/types.h>
+ #include <netinet/in.h>
+
+@@ -163,7 +164,6 @@
+ void drawline(); /* draw a line in the bitmap window */
+ Pixmap XCreatePixmap();
+
+- char *malloc();
+
+ if (!len & savedshorts)
+ { /* an incomplete command was sent! */
+--- ./pgdispd/getvisuals.c.orig 2008-10-29 17:59:37.000000000 +0000
++++ ./pgdispd/getvisuals.c 2008-10-29 18:00:18.000000000 +0000
+@@ -30,6 +30,7 @@
+ #include "messages.h"
+
+ #include <stdio.h>
++#include <stdlib.h>
+
+ #define MAX_DEPTH 24 /* the maximum visual depth to use */
+
+--- ./pgdispd/figcurs.c.orig 2008-10-29 17:58:22.000000000 +0000
++++ ./pgdispd/figcurs.c 2008-10-29 18:14:02.000000000 +0000
+@@ -19,6 +19,7 @@
+
+ /* The standard include files */
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <sys/types.h>
+ #include <netinet/in.h>
+
+@@ -113,7 +114,6 @@
+ void getbuttonval();
+ int getkeyval();
+
+- char *malloc();
+
+ if (event.type == ButtonPress) getbuttonval(event.xbutton.button, &val);
+ else if (!getkeyval(event, &val)) return(1);
+@@ -167,7 +167,6 @@
+ void getbuttonval();
+ int getkeyval();
+
+- char *malloc();
+
+ if (event.type == ButtonPress) getbuttonval(event.xbutton.button, &val);
+ else if (!getkeyval(event, &val)) return(1);
diff --git a/sci-libs/pgplot/files/pgplot-ldflags.patch b/sci-libs/pgplot/files/pgplot-ldflags.patch
new file mode 100644
index 0000000..30e288f
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-ldflags.patch
@@ -0,0 +1,20 @@
+diff --git a/makemake b/makemake
+index 2055125..a5968c7 100755
+--- a/makemake
++++ b/makemake
+@@ -935,13 +935,13 @@ cat >> makefile << \EOD
+ # Target "pgxwin_server" is the server program for the XW driver
+ #-----------------------------------------------------------------------
+ pgxwin_server: $(DRVDIR)/pgxwin_server.c
+- $(CCOMPL) $(CFLAGC) $(XINCL) -o pgxwin_server $(DRVDIR)/pgxwin_server.c $(LIBS)
++ $(CCOMPL) $(CFLAGC) $(LDFLAGS) $(XINCL) -o pgxwin_server $(DRVDIR)/pgxwin_server.c $(LIBS)
+
+ #-----------------------------------------------------------------------
+ # Target "pgdisp" is the pgdisp server program for /XDISP driver
+ #-----------------------------------------------------------------------
+ pgdisp: $(PGDISP_ROUTINES)
+- $(CCOMPL) $(CFLAGC) -o pgdisp $(PGDISP_ROUTINES) $(LIBS)
++ $(CCOMPL) $(LDFLAGS) $(CFLAGC) -o pgdisp $(PGDISP_ROUTINES) $(LIBS)
+
+ #-----------------------------------------------------------------------
+ # Target "libxmpgplot.a" contains the Motif widget driver.
diff --git a/sci-libs/pgplot/files/pgplot-makemake.patch b/sci-libs/pgplot/files/pgplot-makemake.patch
new file mode 100644
index 0000000..667ce2f
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-makemake.patch
@@ -0,0 +1,143 @@
+--- makemake.orig 2008-11-07 12:53:03.000000000 +0000
++++ makemake 2008-11-07 12:52:33.000000000 +0000
+@@ -73,7 +73,7 @@
+
+ # List the default make targets.
+
+-DEFAULT_TARGETS="lib grfont.dat prog pgplot.doc"
++DEFAULT_TARGETS="lib grfont.dat pgplot.doc"
+
+ # Get the configuration variables.
+
+@@ -199,17 +199,17 @@
+ fi
+
+ if (echo $DRIV_LIST | grep -s xmdriv 2>&1 1>/dev/null); then
+- DEFAULT_TARGETS="$DEFAULT_TARGETS libXmPgplot.a pgmdemo"
++ DEFAULT_TARGETS="$DEFAULT_TARGETS libXmPgplot.a"
+ INSTALL_LIST="$INSTALL_LIST libXmPgplot.a XmPgplot.h"
+ fi
+
+ if (echo $DRIV_LIST | grep -s xadriv 2>&1 1>/dev/null); then
+- DEFAULT_TARGETS="$DEFAULT_TARGETS libXaPgplot.a pgawdemo"
++ DEFAULT_TARGETS="$DEFAULT_TARGETS libXaPgplot.a"
+ INSTALL_LIST="$INSTALL_LIST libXaPgplot.a XaPgplot.h"
+ fi
+
+ if (echo $DRIV_LIST | grep -s tkdriv 2>&1 1>/dev/null); then
+- DEFAULT_TARGETS="$DEFAULT_TARGETS libtkpgplot.a pgtkdemo pgtkdemo.tcl"
++ DEFAULT_TARGETS="$DEFAULT_TARGETS libtkpgplot.a"
+ INSTALL_LIST="$INSTALL_LIST libtkpgplot.a tkpgplot.h"
+ fi
+
+@@ -622,7 +622,7 @@
+ # Fortran compiler and compilation flags
+ #
+ FCOMPL=$FCOMPL
+-FFLAGC=$FFLAGC
++FFLAGC=$FFLAGC \$(FFLAGS)
+ FFLAGD=$FFLAGD
+ #
+ # C compiler and compilation flags
+@@ -633,7 +633,7 @@
+ TK_INCL=$TK_INCL
+ RV_INCL=$RV_INCL
+ CCOMPL=$CCOMPL
+-CFLAGC=$CFLAGC -I.
++CFLAGC=$CFLAGC -I. \$(CFLAGS)
+ CFLAGD=$CFLAGD
+ MCOMPL=$MCOMPL
+ MFLAGC=$MFLAGC
+@@ -657,7 +657,10 @@
+ # Shared library creation.
+ #
+ SHARED_LIB=$SHARED_LIB
++SHARED_CLIB=$SHARED_CLIB
+ SHARED_LD=$SHARED_LD
++SHARED_LD_PGPLOT_OPTS=$SHARED_LD_PGPLOT_OPTS
++SHARED_LD_CPGPLOT_OPTS=$SHARED_LD_CPGPLOT_OPTS
+ #
+ # The libraries that the shared PGPLOT library depends upon.
+ # This is for systems that allow one to specify what libraries
+@@ -806,7 +809,8 @@
+ # libraries.
+ #-----------------------------------------------------------------------
+
+-lib : libpgplot.a $(SHARED_LIB)
++#lib : libpgplot.a $(SHARED_LIB)
++lib : libpgplot.a
+
+ libpgplot.a : $(PG_ROUTINES) $(PG_NON_STANDARD) $(GR_ROUTINES) \
+ $(DISPATCH_ROUTINE) $(DRIVERS) $(SYSTEM_ROUTINES)
+@@ -816,6 +820,16 @@
+ $(DRIVERS) $(SYSTEM_ROUTINES) | sort | uniq`
+ $(RANLIB) libpgplot.a
+
++#shared: $(PG_ROUTINES) $(PG_NON_STANDARD) $(GR_ROUTINES) \
++# $(DISPATCH_ROUTINE) $(DRIVERS) $(SYSTEM_ROUTINES)
++# $(SHARED_LD)
++
++shared: $(PG_ROUTINES) $(PG_NON_STANDARD) \
++ $(GR_ROUTINES) $(DISPATCH_ROUTINE) $(DRIVERS) $(SYSTEM_ROUTINES)
++ $(SHARED_LD) $(SHARED_LD_PGPLOT_OPTS) `ls $(PG_ROUTINES) \
++ $(PG_NON_STANDARD) $(GR_ROUTINES) $(DISPATCH_ROUTINE) \
++ $(DRIVERS) $(SYSTEM_ROUTINES) | sort | uniq` $(SHARED_LIB_LIBS)
++ ln -s $(SHARED_LIB) libpgplot.so
+ EOD
+
+ # Emit the shared library dependency if requested.
+@@ -824,7 +838,7 @@
+ cat >> makefile << \EOD
+ $(SHARED_LIB): $(PG_ROUTINES) $(PG_NON_STANDARD) \
+ $(GR_ROUTINES) $(DISPATCH_ROUTINE) $(DRIVERS) $(SYSTEM_ROUTINES)
+- $(SHARED_LD) `ls $(PG_ROUTINES) \
++ $(SHARED_LD) $(SHARED_LD_PGPLOT_OPTS) `ls $(PG_ROUTINES) \
+ $(PG_NON_STANDARD) $(GR_ROUTINES) $(DISPATCH_ROUTINE) \
+ $(DRIVERS) $(SYSTEM_ROUTINES) | sort | uniq` $(SHARED_LIB_LIBS)
+ EOD
+@@ -1025,12 +1039,12 @@
+ grivas.o : $(DRVDIR)/gadef.h
+ grtv00.o : $(DRVDIR)/imdef.h
+ pgxwin.o : $(DRVDIR)/pgxwin.h
+-pndriv.o : ./png.h ./pngconf.h ./zlib.h ./zconf.h
++pndriv.o : /usr/include/png.h /usr/include/pngconf.h /usr/include/zlib.h /usr/include/zconf.h
+
+ x2driv.o figdisp_comm.o: $(DRVDIR)/commands.h
+
+
+-cpg: libcpgplot.a cpgplot.h cpgdemo
++cpg: cpgplot.h libcpgplot.a
+ @echo ' '
+ @echo '*** Finished compilation of the C PGPLOT wrapper library ***'
+ @echo ' '
+@@ -1039,17 +1053,29 @@
+ @echo 'will be needed.'
+ @echo ' '
+
++cpg-shared: libcpgplot.so
++
+ pgbind: $(SRC)/cpg/pgbind.c
+ $(CCOMPL) $(CFLAGC) $(SRC)/cpg/pgbind.c -o pgbind
+
+-libcpgplot.a cpgplot.h: $(PG_SOURCE) pgbind
++cpgplot.h: $(PG_SOURCE) pgbind
+ ./pgbind $(PGBIND_FLAGS) -h -w $(PG_SOURCE)
++
++libcpgplot.a: cpgplot.h
+ $(CCOMPL) -c $(CFLAGC) cpg*.c
+ rm -f cpg*.c
+ ar ru libcpgplot.a cpg*.o
+ $(RANLIB) libcpgplot.a
+ rm -f cpg*.o
+
++libcpgplot.so: $(PG_SOURCE) pgbind
++ ./pgbind $(PGBIND_FLAGS) -w $(PG_SOURCE)
++ $(CCOMPL) -c $(CFLAGC) cpg*.c
++ rm -f cpg*.c
++ $(SHARED_LD) $(SHARED_LD_CPGPLOT_OPTS) cpg*.o -lpgplot $(SHARED_LIB_LIBS)
++ ln -s $(SHARED_CLIB) libcpgplot.so
++ rm -f cpg*.o
++
+ cpgdemo: cpgplot.h $(SRC)/cpg/cpgdemo.c libcpgplot.a
+ $(CCOMPL) $(CFLAGD) -c -I. $(SRC)/cpg/cpgdemo.c
+ $(FCOMPL) -o cpgdemo cpgdemo.o $(CPGPLOT_LIB) $(LIBS)
diff --git a/sci-libs/pgplot/files/pgplot-pgdisp.patch b/sci-libs/pgplot/files/pgplot-pgdisp.patch
new file mode 100644
index 0000000..9828a3b
--- /dev/null
+++ b/sci-libs/pgplot/files/pgplot-pgdisp.patch
@@ -0,0 +1,11 @@
+--- pgdispd/proccom.c 2007-03-08 14:47:15.000000000 +0000
++++ pgdispd/proccom.c.new 2007-03-08 15:34:36.000000000 +0000
+@@ -163,8 +163,6 @@
+ void drawline(); /* draw a line in the bitmap window */
+ Pixmap XCreatePixmap();
+
+- char *malloc();
+-
+ if (!len & savedshorts)
+ { /* an incomplete command was sent! */
+ savedshorts=0;
diff --git a/sci-libs/pgplot/metadata.xml b/sci-libs/pgplot/metadata.xml
new file mode 100644
index 0000000..87378f8
--- /dev/null
+++ b/sci-libs/pgplot/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ PGPLOT is a Fortran subroutine package for drawing graphs on a variety
+ of display devices. The CPGPLOT library adds an intermediate level of
+ wrapper functions between C programs and the PGPLOT library. These
+ functions hide the system dependencies of calling PGPLOT behind a
+ system independent interface.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-libs/plplot/ChangeLog b/sci-libs/plplot/ChangeLog
new file mode 100644
index 0000000..2bba1d5
--- /dev/null
+++ b/sci-libs/plplot/ChangeLog
@@ -0,0 +1,119 @@
+# ChangeLog for sci-libs/plplot
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/plplot/ChangeLog,v 1.27 2009/12/26 17:45:27 pva Exp $
+
+ 26 Dec 2009; Peter Volkov <pva@gentoo.org> plplot-5.9.5.ebuild:
+ virtual/ghostscript->app-text/ghostscript-gpl: ghostscript-gpl is the only
+ implementation left in the tree.
+
+ 03 Dec 2009; Sébastien Fabbro <bicatali@gentoo.org> -plplot-5.9.2.ebuild,
+ plplot-5.9.5.ebuild, +files/plplot-5.9.5-wxwidgets-cmake.patch:
+ Fixed for wxwidgets build (thanks dirtyepic for his patches, bug #242212,
+ and removed dirty fortran eclass
+
+*plplot-5.9.5 (04 Nov 2009)
+
+ 04 Nov 2009; Markus Dittrich <markusle@gentoo.org> -plplot-5.9.4.ebuild,
+ -files/plplot-5.9.4-pdf-driver.patch, +plplot-5.9.5.ebuild:
+ Version bump and removed old version.
+
+ 23 Sep 2009; Patrick Lauer <patrick@gentoo.org> plplot-5.5.2.ebuild:
+ Remove virtual/libc
+
+ 02 Sep 2009; Markus Dittrich <markusle@gentoo.org> plplot-5.9.4.ebuild,
+ +files/plplot-5.9.4-pdf-driver.patch:
+ Fixed error due to missing pdf.rc reference file (see #282688).
+
+*plplot-5.9.4 (25 Aug 2009)
+
+ 25 Aug 2009; Markus Dittrich <markusle@gentoo.org> +plplot-5.9.4.ebuild:
+ Version bump.
+
+ 14 Mar 2009; Sébastien Fabbro <bicatali@gentoo.org> -plplot-5.9.0.ebuild,
+ plplot-5.9.2.ebuild:
+ Fixed support for cairo (bug #262001) and some automagic dependencies
+
+*plplot-5.9.2 (29 Jan 2009)
+
+ 29 Jan 2009; Sébastien Fabbro <bicatali@gentoo.org> +plplot-5.9.2.ebuild:
+ Version bump. Removed the wxwidgets hack since it broke parallel building
+
+ 02 Jan 2009; Marcus D. Hanwell <cryos@gentoo.org> metadata.xml:
+ Removed myself as maintainer.
+
+ 26 Nov 2008; Ryan Hill <dirtyepic@gentoo.org> plplot-5.9.0.ebuild:
+ Call wxwidgets_pkg_setup.
+
+ 22 Oct 2008; Sébastien Fabbro <bicatali@gentoo.org> plplot-5.9.0.ebuild:
+ Removed gif flag (not used) and merged fortranrtran and fortran95 flag,
+ since they use the same compiler
+
+*plplot-5.9.0 (21 Oct 2008)
+
+ 21 Oct 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ +files/plplot-5.9.0-cmake.patch, +files/plplot-5.9.0-pdftex.patch,
+ +files/plplot-5.9.0-python.patch, metadata.xml, +plplot-5.9.0.ebuild:
+ Version bump. Major new features and completely reworked ebuild. Tested
+ with many options, but not all combinations. Thanks for markusle and
+ Joshua Rich for their initial work.
+
+ 07 Aug 2008; Ulrich Mueller <ulm@gentoo.org> metadata.xml:
+ Add USE flag description to metadata wrt GLEP 56.
+
+ 12 Apr 2008; Sébastien Fabbro <bicatali@gentoo.org> plplot-5.5.2.ebuild:
+ Switch tetex to local jadetex, bug #196745
+
+ 05 Apr 2008; Sébastien Fabbro <bicatali@gentoo.org> plplot-5.5.2.ebuild:
+ Removed ifc use flag (see bug #97929)
+
+ 14 Aug 2007; Markus Dittrich <markusle@gentoo.org>
+ +files/plplot-5.5.2-macro-fix.patch, plplot-5.5.2.ebuild:
+ Fixed problems with octave files and added a patch to correct
+ a bug in a C macro (see bug #182949).
+
+ 22 Jul 2007; Donnie Berkholz <dberkholz@gentoo.org>; plplot-5.5.2.ebuild:
+ Drop virtual/x11 references.
+
+ 13 Mar 2007; Danny van Dyk <kugelfang@gentoo.org> plplot-5.5.2.ebuild:
+ QA: which -> type -P
+
+ 28 Nov 2006; Christian Faulhammer <opfer@gentoo.org> plplot-5.5.2.ebuild:
+ moved tcltk USE flag over to separate tk and tcl flags, see bug #17808
+
+ 18 Nov 2006; Saleem Abdulrasool <compnerd@gentoo.org> plplot-5.5.2.ebuild:
+ Drop gnome useflag for gnome-1.x removal
+
+ 27 Aug 2006; Michael Sterrett <mr_bones_@gentoo.org>
+ -files/plplot-5.3.1-gcc-3.4-fix.patch, -plplot-5.3.1.ebuild:
+ clean out older, non-modX ebuild
+
+ 11 Jun 2006; Robin H. Johnson <robbat2@gentoo.org> plplot-5.5.2.ebuild:
+ Bug #119388, fix plplot for modular-X. This ebuild is a big mess, and
+ doesn't appear to have much demand.
+
+ 20 Aug 2005; Marcus D. Hanwell <cryos@gentoo.org> plplot-5.3.1.ebuild,
+ -plplot-5.5.1.ebuild, plplot-5.5.2.ebuild:
+ Fixed gd-external issues, closes bug 98065. A few small cleanups too.
+
+*plplot-5.5.2 (03 May 2005)
+
+ 03 May 2005; Marcus D. Hanwell <cryos@gentoo.org>
+ files/plplot-5.5.1-gcc-3.4-fix.patch, plplot-5.5.1.ebuild,
+ +plplot-5.5.2.ebuild:
+ Version bump. Changed the octave patch to apply more generically.
+
+*plplot-5.5.1 (08 Apr 2005)
+
+ 08 Apr 2005; Marcus D. Hanwell <cryos@gentoo.org>
+ +files/plplot-5.5.1-gcc-3.4-fix.patch, +plplot-5.5.1.ebuild:
+ Version bump.
+
+*plplot-5.3.1 (30 Jan 2005)
+
+ 30 Jan 2005; Marcus D. Hanwell <cryos@gentoo.org> +metadata.xml,
+ +files/plplot-5.3.1-gcc-3.4-fix.patch, +plplot-5.3.1.ebuild:
+ Initial import of ebuild. Thanks go to Tyler Nielsen <tyler@mithander.com> for
+ the original ebuild as well as Olivier Fisette <ribosome@gentoo.org>, Colin
+ Macdonald <cbm@sfu.ca> and myself who provided numerous improvements to the
+ ebuild in bug 31554.
+
diff --git a/sci-libs/plplot/Manifest b/sci-libs/plplot/Manifest
new file mode 100644
index 0000000..6b7f314
--- /dev/null
+++ b/sci-libs/plplot/Manifest
@@ -0,0 +1,7 @@
+AUX plplot-5.9.0-python.patch 283 RMD160 6252e5a37fd79aafc2e6333cc67fe7fddc76e54e SHA1 a7ebf85d462a3abd555d3acee6cfacecc266377e SHA256 25138e47df484955b67cc723ad2ccd3666ab3e9335f0838f82e569ff1e6d2f9a
+DIST plplot-5.9.5-wxwidgets-cmake.patch.bz2 9827 RMD160 cfcedd58cfcdba8bbcdc9b650b57e15693e8ce89 SHA1 6d4d16140f6764507f9db5c9bd979d7cee280f94 SHA256 44c91584721864b6fb0f217b1ff6e511484b6e44b9ca11d08367a3427befbb0e
+DIST plplot-5.9.5.tar.gz 7071486 RMD160 75f21ad12fbe952c964e0a9b3d298a4f059157c2 SHA1 f24d096238398b5519427145f0134ce1c180f0e8 SHA256 094cdfa1fced0cf86a52fdc3dae062a120f025ac271ddc3676a3fba7134538c3
+EBUILD plplot-5.9.5-r99.ebuild 5374 RMD160 967231d5c9f99889996d520ca799f9c4d8ba7046 SHA1 5747f86763d356e90e1a21b4e546f0ef476a1db4 SHA256 b01b316e3e301f4f4661d85de3300b7c2c4db71a1a3470bbb7fd2c7a198e90a4
+EBUILD plplot-5.9.5.ebuild 5201 RMD160 af81da6414c86368474651a363cf936945bd63c6 SHA1 349c0eb6b3e56a00e1b858f1f95760dfda480b6e SHA256 7ca882b6fa675e827bcb5f106340976d2807e4a00fe82c54a22a238c9f1e55fe
+MISC ChangeLog 4779 RMD160 06f9747d7af7828b3b32c30ab4ae64bc8259f5df SHA1 e3e938ec2977a63fdb06776e1e8c7d48f73ed6d3 SHA256 ca68aa28364d12cc2acb4415c83a35ec7305b2613cb4fbd98db781369511f500
+MISC metadata.xml 1219 RMD160 f221eb3d8c1967c473532291a0605628d95a9c68 SHA1 bd13e4b7ccfd9cdf2d5b129476f3f4d9f6875a15 SHA256 2d3438d25fa17ccdf08c18aa421a442f86a0dce5cef5753811e8aa7109adc74a
diff --git a/sci-libs/plplot/files/plplot-5.9.0-python.patch b/sci-libs/plplot/files/plplot-5.9.0-python.patch
new file mode 100644
index 0000000..8631502
--- /dev/null
+++ b/sci-libs/plplot/files/plplot-5.9.0-python.patch
@@ -0,0 +1,11 @@
+--- plplot/examples/python/CMakeLists.txt.orig
++++ plplot/examples/python/CMakeLists.txt
+@@ -147,7 +147,7 @@
+ @ONLY
+ )
+
+-set(python_location1 ${PYTHON_INSTDIR})
++set(python_location1)
+ set(python_location2)
+ configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/plplot_python_start.py.cmake
diff --git a/sci-libs/plplot/metadata.xml b/sci-libs/plplot/metadata.xml
new file mode 100644
index 0000000..9648359
--- /dev/null
+++ b/sci-libs/plplot/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription>
+ PLplot is a library of functions that are useful for making scientific
+ plots. It can be used from within compiled languages such as C, C++,
+ FORTRAN and Java, as well as interactively from interpreted languages such
+ as Octave, Python, Perl and Tcl. It is capable of producing standard x-y
+ plots, semilog plots, log-log plots, contour plots, 3D surface plots, mesh
+ plots, bar charts and pie charts. Multiple graphs may be composited, and it
+ also supports a large variety of output file devices such as Postscript,
+ PNG, JPEG, LaTeX and others. It is also possible to to use interactive
+ devices such as xwin, tk and xterm as output devices. PLplot also offers
+ support for extended characters inculding the Greek alphabet and a host of
+ mathematical symbols.
+</longdescription>
+<use>
+ <flag name='ada'>Add bindings for the ADA programming language</flag>
+ <flag name='octave'>Add bindings for <pkg>sci-mathematics/octave</pkg></flag>
+ <flag name='qhull'>Add bindings for <pkg>media-libs/qhull</pkg>
+ bindings</flag>
+</use>
+</pkgmetadata>
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
new file mode 100644
index 0000000..964ff4b
--- /dev/null
+++ b/sys-devel/gcc/Manifest
@@ -0,0 +1,56 @@
+AUX 3.2.1/gcc31-loop-load-final-value.patch 3324 SHA256 70aa8433fb19c95f334b6cbc155cae22a3b61a6892ed9e18f95860509d0091a8 SHA512 99a4a598f4bbd959d44ea8e8da93c6ec9b031347176e863aa1e236c9e6ce4a2ac094d55812749a1fbbd810555e159762400c6e2965881d11bccd7cfafd586301 WHIRLPOOL 7b72a682095c86afcc0698b79def8d90048ab32a80348bd8d1712bcc95bbb007356b2ef19f5e5b075ad6504c4220ac1c9e5a4cfabb9e8c79a2ba14332b1ae36c
+AUX 3.2.1/gcc32-arm-disable-mathf.patch 2229 SHA256 808368680a4635cdf46844e63342a8ca387769b2323ef99f90530d3bbc622587 SHA512 85f5e573e7c44d136dd69a4268e3dfde4cd99514a709c93fe3bb02144b566b991f5df747d02b4dfcbeefd1257b478109896b5f3b01ab04f90c195961244f3ceb WHIRLPOOL 6e7cae4c114d095d9270beb30a8daaded6e454c447102928965a09ea326e243c1fee6be9997b6b08d2db19b230fc2e0140b6ae67709e214d99ca1669167ac4f5
+AUX 3.2.1/gcc32-arm-reload1-fix.patch 932 SHA256 d1158fa35b98cf72565e9b12cfd3f92a1eb14f0abfc5bf86d5990792cf1fefc3 SHA512 047fa3972174ac73f8aab876530658adf05d66d95e5d11cf42ab4dd012e455cd8ee5b904d839717b129af6a8ba0fb033c64fd369e0d0a84c6beb95baf011d0ab WHIRLPOOL 09e73ab4aadbcb000d69f62ed4127ec9b84861924947fd2aef7cf2a80104cde64c41593e6f7aa4d0ad2accaca8a5b2f1d4329cdca4388aad58494d4ec5c9553f
+AUX 3.2.1/gcc32-athlon-alignment.patch 509 SHA256 1e6f86716e6daa2840e66d49ca90a528cf5c1cba733d2ceecba5fd0805a5e1c3 SHA512 60b122f321d1e5d2e44fe4de17fd64a0adba83ddb15ebe38c6e6e559c746fbdcdcfff05ab869e8148f659f66c9dc661be16443b20941c6f6f441d1c31bc6b438 WHIRLPOOL 2a07a306ac053aecb924d9403f2b5bb9b2152943bd2ebc1197498074f9d8287756be6e27a68211732ba0c180185d7483c2a0dc3c41182a7d378ffbffcfb414b6
+AUX 3.2.1/gcc32-sparc32-hack.patch 2192 SHA256 b89cfccb9f4ebb0929ff404428a1ec820fb580baa4c53eae2640f8fbf9b26b78 SHA512 faf9bba214c218aad5f7f9eaa4f1413d61af12dcdb42856b2f8cbb97e95b7391a29ed8688e7ebbb8eff0cef6763026441942204e30dc53af0c12a9bf577ac791 WHIRLPOOL c7aac229d9216a6a4c3d41d0f4129eb2d39f60d4125048d6461706e5eb5651f9bc93716bfc65f4b2712e712f6d36f0bfd2ec095278606ab95a48e2a5a7d1b51e
+AUX 3.2.1/gcc32-strip-dotdot.patch 2071 SHA256 66605306254840e7584feb97e2ecb1a1158c4a66fc274e523ede40349ef1390e SHA512 f3734efdcd903d1c17bf90805c643fe21519c0c263b173fecc8ce54d0bce6bf9e5acd19530a0ad7f85fa5fd0c673c1c2624b344f3f100ab8f9485a670aa9513c WHIRLPOOL 7a6d6feb29263596d6125403e2d957d1ebe3120c58ebc97ba5332a52038f5718d19af854241995a53435d5c6fb918767e3324444ec71beb1cddcf8ecbed6c5c1
+AUX 3.2.2/gcc-3.2.2-cross-compile.patch 479 SHA256 162d461ae205f470f89afa562f95d777f3d272689dbe4e9e91166ebbea34c383 SHA512 eaf1e4f94a90db2e81b85414dfc96f5ce1747accf833682cf5b689ffe68524820d7bed63bbf1affc8bd8028a86f25b7a76c07173b2aef5574808a882e0f2ed02 WHIRLPOOL a67a558c1cc554af6312932b017d81a7249b9caeb3dd952b732a7bd25aede7c9d4a26b6d83ca54a21dcae145fd32d3d37d68a6b3225a4c5afa25793668730682
+AUX 3.2.2/gcc-3.2.2-no-COPYING-cross-compile.patch 1001 SHA256 abdb66e19439fabb2b2249f374c1a0071f791859e8592e78cfcc894c323d7458 SHA512 3526cfc995281ad8a76a7af55d3c410552eefcaeb2635bca762a6449e318e31b0e40969bc9c1d2a09ba1ef243df10996b36147da7b70c06442a547b1cec792ad WHIRLPOOL 6f9612ee832677ad4668acc04d52fdf1610515033d4f401acd0a0a2c9e7cfeb744a51156cac248ad8a5e34853eefc1084b5064e6626ded34333619c07029507f
+AUX 3.2.2/gcc32-pr7768.patch 1789 SHA256 1f66eae379ef25a618d460ccee1fe3d876fe8e708af6b9bf3aad73803135a559 SHA512 dc7841ccb29c9494b1c9b53f4bbd804e8808381f63e24a276c4f9b3badea662d93612199863a299b756e431523bc601b263baa931762ffc38c72852928724007 WHIRLPOOL ac9a20b295dd5a546f4b4812d5f946abc5edaccb4c9b8db6d206fca428691a1651f3c77bb617734abfc284ac5e0afef6d506390a817a64260ba2d5d4911d076a
+AUX 3.2.2/gcc32-pr8213.patch 2036 SHA256 44215ac0f877d01241a789675b3bee3c8206d6fabffd6134f05c9edfaf8ff338 SHA512 09c30cbd8da4b0db759ebb9488ee242082bd6b7c4ad18ba23076ec8f87cc509fcf10b1e96cec228192ecaebdaf12ac78b1a4c8980e46fac16a37c2d8e746676d WHIRLPOOL 0d3340d7a4d190d88f805010ddf4c0b998a99159258e2305a3e0aafcde39cabd7dad6af40bf1377aff14593be8aa561d7ddc303b3e9c436eef7c5e5ce9c4a4d6
+AUX 3.2.2/gcc322-ggc_page-speedup.patch 872 SHA256 a193b395aff6dd272de5a92e83ef65c05ae5b42d382647ff847a2b25388d3006 SHA512 32d7a50f9552b4b1217c71a4a9cd951f3115813761e28e9c9ca7e39bddfeb1455f4a618f9c0dc28f8522413327006a34e0de4a1d542e9ed71cfff5d5735d0a54 WHIRLPOOL 9475940d738cc0997a4b655d2efe2ef79a45cd3f12d141707dad5e1ac8a55e5eebc2f682d2a9a9474bbae718ad18d672bd59d1b3aeb2b67ea5dfaee2ed31a485
+AUX 3.2.3/gcc-3.2.3-mergel-fix.patch 2749 SHA256 7958b2db54d4805ba7656628df6d9c00406eae54b566e1bfb0a882e9070a120c SHA512 9236d3d2b1caea57ccbb8e137a75cedc88121c6da3867d541b4bb039dbd9b36ed5330f1ec1f08977da9fa402dcb1c6fb5d06be0efb4d274d3fcbf4816e8d7775 WHIRLPOOL 6db6d824017157c683da7ad16ce593f9069f7cee9ffdfebd617add241f6f2bb91ffebd1ef987a25e403f4498187bf2ec2b9a9438b6d9d6172525c9928ba2d512
+AUX 3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch 3534 SHA256 8f904a2d638d40faa0c41200963bf0a86f2161ed26f0cf4307ab0d5d1c07b68d SHA512 26514adc0a0488c7d3e9997fb482ab2ade579273cbea54bbfbb33a290f9ecd0df49206718d8456cf88eeb06c85b08d520e06905023ddadb2349ab2f5a9b804d9 WHIRLPOOL 613717d1f6f672a6299b60d980d81025a8bea633dfd3c2d6c96ec44abeba764de50e7f5597d26f63d2f71ac23cfb60f16166bde03d91faabc647c27903edb341
+AUX 3.2.3/gcc-3.2.3-poisoned-malloc.patch 1217 SHA256 713e779ec708de4b341c9fd0b0c9c790170d221b4765fdc2d5bd2955e3f3e5b6 SHA512 07f25ad2450d0c0003834122b452ccd067222af03d1538a1ae911de340c499d053bdd8b54ac6f13e0ef40e83bb55f02ffadc0b6b432ee09b5a38c7e3912e5776 WHIRLPOOL cc3028476208ed5fae525d263c912f08256e4e869c6001413f8a4f597dcb9755fe2a2bca3fe0e98a9cfe2fa2243581ba9d54fa0610be23cae879c316b381c34a
+AUX 3.2.3/gcc-323-propolice-version.patch 700 SHA256 fc963759d98c659fc96b33995d527456b20c37db3166d50d15454595d993ba84 SHA512 848a2c79d6f4b5d6d8029c4ed2b4f1688bda18b6e8898f51c092fdfd5aba9e112d01a43c7d7b6067f00a443a76ee34f4471aec063be5019ba4f0eec34516cfb1 WHIRLPOOL 907c59cabbbcc017e1b88a61787ecb1003ae20ddccfc1f42d527e9b06890111d3a7d64bcc6d98c56937f3c4cedd85fef08f483d5fe471b3d0757d17cc5088732
+AUX 3.2.3/gcc32-c++-classfn-member-template.patch 3219 SHA256 c923b09eb0f16224c964d417280f80be0736cafe0ecb88796d3c4e27aaa24dc3 SHA512 e49982efc6a7c1f3a9ba4720bd0aec7a922d7e973d72f065d6c4e90c00f3f20a4d31a86297461aacea0d7f2fb76489dacdcaec927c87331cd11f926f3e7647da WHIRLPOOL 8414be1885d9284fd64e10f684d31b4510f2e01f5335c9d914a21d5a9f26c0e21a34aff548a8edf9e72ad80c97d6bd1aa4e660b0922d4fd922adc8d4cdcffe76
+AUX 3.2.3/gcc32-mklibgcc-serialize-crtfiles.patch 926 SHA256 ad3f723715298a85bc0080ec8661f76e549a02bfd052be349774f4eb15eabdf0 SHA512 af27904a496c3cc20ca76eb21eaff09329639572dcd0bd4b6f04c98f45709ce13f5e3c70a63472f34ec0f94c91e4b1b7250f4cd62973bcee71c5a49e4d406958 WHIRLPOOL 587f64a21dc608bf7a51d42456f851c4814a41f55dce5f01409768756a29dd43a9872849b008a6ae1a21f198952904828d308ed02663d70ec07e5d297e7b1edd
+AUX 3.2.3/gcc323-gentoo-branding.patch 2058 SHA256 65c7c0dbead0a742864501664f2aa05b3df2a3445e8b88f3ff6eb2c7f5249e6d SHA512 497cb4ec41423d262518a5b71abec6e3394384e78a38f3389e175067a732d455d3c994d7dc9bc5b868e71f28e33c8fd6713bdfa3bf81b810e834a9857baad826 WHIRLPOOL f59f646e26dca5e09aed1d4814622cefde25be26a41f205659423b8782efe56647f84a83ea686385a59120710114c5f30a52e3a973f78cc6b9192571f0b990ef
+AUX 3.2.3/gcc323-hppa-default_assemble_visibility.patch 571 SHA256 1b023f0224054ebc482762ab4bbebc8a9f5329c4c34ed3d124ce32a9b01aa17a SHA512 33c0a2f079128f602c64ab0260161ecc7c4de72ae7a82e52045d818f830659b6c233849896dfcf3c0c4ff3979a7e63912c37fdad2a3f7b98391a8b795569ef62 WHIRLPOOL 86646bb931a09015b224b38f27b879e0754141c23825f5b3075c04742dbaba6b0e79e8413caaf522d5bea7a83ceaa2d0617e55c728456f1a25fa23706966fa5a
+AUX 3.3.4/libffi-without-libgcj.patch 890 SHA256 a422ebf05e279bdcb15627363af8101e4d6a54ca037d6da11c13b4768799d974 SHA512 6204588808a37a13dffc8c6bdf70eb453107413d0c8fffddeb360444e3e605f1ceb42c41905cfa1c4f9cbb1b22dc290e68d2728dbddb0f4d0406dd8dca6789a0 WHIRLPOOL 7260ba32fc7d60f1fa4d8667c929e16f3bdf9fe953c823c5b6876d4fea4d4fed52e67aec92cbb599d6327eac009bc4fbbc06ba85acf9848bf346384af0523363
+AUX 3.3.6/gcc-3.3.6-cross-compile.patch 2202 SHA256 00e5152f211a2c0892ba4f5a7ebb078c1d5d1dfc77bd0ba81ab8dfcd2924ffb3 SHA512 0d81d516a3635eb303d8f75099bf8fbbf1ffcd771c9cb4a770a55189232ed53e15728191a3e8c5339cc1562bbe4bcaa4b6c0d1c1d264287216abe715ca734829 WHIRLPOOL 579e035254ed4500acdbf23872e0b30d81b914f080054dbe7ebd16c483a0fb6bd787b41d570c0f1338dc8e3c5f03dceb94cfadc6d73d68fb230d839f896142f2
+AUX 3.4.0/gcc-3.4.0-cc1-no-stack-protector.patch 563 SHA256 abf20019827d50b4e4fa6bd27803083930a79a31ba7392ddf4fa3fcb5a2aee42 SHA512 b60b4c5c425705bb444d52515434f514ff9524969aee52b15ba55b94fe5cf4fb32899466e5f5903e0c6d165e9f93494e914a24bdde2bdaa3426db3ae6e22991d WHIRLPOOL c33ec337f27710148e3882763b5b6f435242b4f0e5bd94a6c70027b72cea055251af1d8df96844538e868d4cd37e1183630187ece2a329ca924789a51282a9bf
+AUX 3.4.1/gcc-3.4.1-mips-n32only.patch 614 SHA256 f75cbf7aab59b73f23f2a6b327f9c00bfa87f38a67a054c4aa5637dcbb8dad1e SHA512 afdbf733c7325d0a7c34c6027c49a4e18af64f2e042680756ebfdd836084e050301d748a2f3ef20c73d20078082b95a6a9d9a1ed05222db4d82be213ebc0f6a2 WHIRLPOOL c291003a930d71b285bd5d4422a3c1a60290ed9499011e04def90c92e755658a8f04a9d30d23d011cdfc2e6caa92348ee25fba14aba195008f62be30b3bf2c14
+AUX 3.4.1/gcc-3.4.1-mips-n64only.patch 614 SHA256 4e94950bdaec5d089af8a60471e75dd1bf117a2eff9867aa95ebc7800dcdb6c7 SHA512 f12473edc818285e44a745fde700ee6cda397c8452705464f357815cc2d764f7a3933071495a03617c7c9f4254072cbb7ee11b2d5da943a7e1b4ffb3bd3d7052 WHIRLPOOL 8708b686d8daf36b3b646a870210b19826806990a4b3f0b1166a459579281dfcb02488548810a1eec22b0670f099d9930c4bd21b14155136947f180e414917eb
+AUX 3.4.1/gcc-3.4.1-r2-gentoo-branding.patch 781 SHA256 a04c4722eefd73cdb56b0ad98d453e5ece9b1ae22d5360a2dad94f89b1278900 SHA512 6dd6cabe624b37c43419635763e8743b6c9acbb4b707f3dd8ed57a911d16aca63e7676c2bf98f8db45fa50a89e7c9ecbedba10eeae9cf49a6f05f5caadf918a9 WHIRLPOOL 0b62dfa0eb87411aca8cad34905ae6bcf5dedbded09c16ed33cc83d6508a52bae133a0866fddf14cc010baeb4ce622f2be56540dcf1c64e45e40b275834b3fd3
+AUX 3.4.2/gcc-3.4.2-mips-ip28_cache_barriers-v4.patch 12951 SHA256 8cef3779bc962b9a9c20daabea28791514b6f54824659e2f5824c493cdc3f6c7 SHA512 7bbab9528d7f65d9c9226fc4063c6a73861300b65f02132cd149dc224b3ca98741824252d0fdc83aaeaf65f7d93db85d34028f1e10bcd5390b6b30d9f2be13a8 WHIRLPOOL a77d8c7ba610967a33675b9c1acf3c48730df84efdad6f66efc8ca9b9af5e4ad38271b0b41f7df8248b4571b22d783fe8ea7e314530620df9ec4d6e8b747c14b
+AUX 3.4.2/gcc-3.4.x-mips-add-march-r10k.patch 14248 SHA256 10d6947954f03145d8ac16f497826cf25583d37f0e1e63b9df1a33d91f59e2c8 SHA512 7bcb5ff9d187c2c16adea780a77fe19b053a6b63b33a10352c0ef42e1b31616d5ff8280e45d5292eb03c92970f420d2021c7e58dfe704ff956f0113689206c25 WHIRLPOOL ac914bad42469b56e635ff3225864aa48a6fc1fef8c8abd4fd11eaac232b7e01d8ae29e252702cd719ab446438846fb673003c95536155da513aabb2a3aa3cde
+AUX 3.4.3/libffi-nogcj-lib-path-fix.patch 1691 SHA256 030e2c9f31b325ea975792bdfee88272d1065b8794511410dc30bd2caf8b3451 SHA512 001e3c1c585c3ab641a540eb5502788dd1151cb66fc9f0196ae79e3ad7f01a291812511bd19114fdffc9d8b71987623f1dcccefed3546cb9e0f0e6abd55f093c WHIRLPOOL ffda82e69885c7691f7746188f3565dd90fa9a33be1426155ccf8f5cc40f910ac8bdac14accef120c379bbddc589732028cff94377a6bfffc080789d7a825d15
+AUX 3.4.3/libffi-without-libgcj.patch 1658 SHA256 41fd051cc16b61da4abf4f696f13b8b574fce76c65d1a731de3dd0d39f335037 SHA512 f277f4dff390ead308b897bf06ad53584f11d8234f49f5c41c6966204652113d015c1c6a240d8e9d121af285d4491cfd15a3934c37588b66007423b9050cb42f WHIRLPOOL 82350dd81e502b037d767f066abc1277ed69a2b0d404973e001b7af126aa4c03ddba04ff094fb8ae3b29b9690e78ee0fd71ede2c29bd1c944fc9516199d547a5
+AUX 3.4.4/gcc-3.4.4-cross-compile.patch 1912 SHA256 f8bc4cb8cc012f40f9a988ed8344e9e75df5cb3714d98a2eb19e5320e32c7724 SHA512 c31cc4c77bb9a5f01a7a7969dad862fc5d7f9916adf67e039a71714e0eca02b13a576bdfbab50c069cc8020ef4dc335ed20bb10214f714a089b8daa02e849d2c WHIRLPOOL a96f689f8b97f960e7e33c6bb0fe13e502bf1a180ba8c0f49a9538f842bbb9c736e3162643e2401bccb8ff2f98622e9b1d0e1959ad5728d18130d4b5b927dfa1
+AUX 3.4.4/gcc-3.4.4-softfloat.patch 5242 SHA256 fd4bf1bf8e78e2c7f041866594351be359341db876d81c0e9ad089db8e84a516 SHA512 eb95daa0f14f30c3b31d0f9c345f8e26214ae48ddc3aba232a6e638b439b6a8b79f20c98d4e82029241a385bcc1e62856ace5bec9cf01809bbc0ff5a0f1aee1f WHIRLPOOL ea85014c7619ab49a0185851f92aa2244ab1f46e3894e6306f6d321d6b5321cff7629e40e9b983c1d09dcb1c2542ead0b0527cedc827deb554110b1f191df267
+AUX 4.0.2/gcc-4.0.2-cross-compile.patch 1283 SHA256 f86427e8a73aa28e1f2e2f19bf27a9ed92c716319543c8bad8b3247fc7627182 SHA512 0fa40a7c8a2bc62a126e0f53b637fe2934ae99a5413bf07bacd1115fd8af922f06354c33e52f0c96177ee521a4db69ffb28c918892b556674963f1d51ff33832 WHIRLPOOL 2e92cce5e8fd56f4efc5da4a989d88ffedab89e15eeb6c41a0596ab727bbeb1bd3a611c8b8ae735ffba9d0313d4568be14ae8d5189c18655152bf4c34c61de92
+AUX 4.0.2/gcc-4.0.2-softfloat.patch 2790 SHA256 1525a48bd087c0f0d89db128a16ee106252daf7bf34ffb45867d30f6c452de2c SHA512 e6b20399c86f386726f3bb9001bcbbb83ca572c80808193d4f5e6439abf84e2e708830f278d622a384fbf36ff26c9ec4d7d05ef7a33bdc3d2313973f47d5f475 WHIRLPOOL 706cc1b806c4f7cbe1e6693d802d34341857cdbacf2f66a8d8941a9d2619e7e22be42a92a750d29ffb4fc0add0c9de1640a43be9b1b0c0f1c6686b2743d6759d
+AUX 4.1.0/gcc-4.1.0-cross-compile.patch 1134 SHA256 8ee57285151659793df88e025f1225b401a0c805bfc8d1685e04ef75393a24ab SHA512 84d0ab9bcfdd18148392a7219ec0ad4a1e63d43bda3f45a13e22f551f2f119822fed700570bd659f9260b09b0958d4c49e339ad4f135740e5b60e46462de7f20 WHIRLPOOL 1252a62c809523fb0669cf1c4f056d98c6fa4d24a3f97339be828fea8fcd66254b2e1112d6c4c628deddf71418dcf8e6a8846013bf6683efbe4cc3bfdd8f6cb4
+AUX 4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch 1686 SHA256 7547293b945808f63b70aafed644a43c99e19f82aaf1d2f2df8502d87ab3f01d SHA512 cb0268c64d8d50ee3c95e9c6ca9242be1cb08382c7b081c129045a4852a7b3ed5c48124b33aa51816d80f5c930929bdc097644e817d77b5e186442248a609f2f WHIRLPOOL 7c152c59e7cffe1730bfb20e9ac97aba8a2bad583d9b6daff0ea0be90ca0d4a153bc40c169e1f4831c87c88b4ac5b41bef0cb019e8bbe69a72b702916770a765
+AUX 4.3.2/gcc-4.3.2-softfloat.patch 2800 SHA256 ab09b2c794b3afd7da3c7ee5a12ed235265334a5fa57f8971bbd6c82dd17f243 SHA512 e821a026f470ae84d0427749dff32da5a0f1a94cb54a0c0155d2fb3c7f0105db93675182de19d6ae7395ddb3c65ae35984d6f3f31e82c71227e255d3abe78d4b WHIRLPOOL cbfa548ecd867527d14a59affa5cd3927f0f7ec58a109285ebd3f627b9ddf936b13f4c3cf06544ac49cb0ed6ab0a4f241d414ca2c1e142c242a115a5956452f0
+AUX 4.4.0/gcc-4.4.0-softfloat.patch 2833 SHA256 ddb7b8d9770f64a32096a32c4f5ad2571ffcafe617991b492e7eee823878c4fc SHA512 a3f50a90d3f5ed4687bd0e55621b7d108713d62c295ce82af2869f08320336189bde85980cd34b61b79f49d57f0b334f6fe2612317062411eca24a06b4dcaa4b WHIRLPOOL 22745b8047d136501f96d2e3ee040ce89206176e412daa3578fe9846c32bc8c0fbd543afa0442e1dff1b4ed52aa1d8848db328df6ebbbb66d23cd2bd3477c28f
+AUX awk/fixlafiles.awk 7807 SHA256 3cae4890a295adef50c6cf8a7e14d1be4e7a2356479c073e5c29433c3cdf9c5c SHA512 a39e09db4f34d1358de9e929b4c1e10b677d7e8aeffd6afb36d42543b18f1dfa77e3e26331e3fa1b556bae3d8c75ab4bd5796c7ccf2dda4eb365edb307828bed WHIRLPOOL 0cb6e5e96460514c17f3242d8fe936dc2545c07ca08c03ceb34730935435fde24d197300da54d4a19de86067f9e4bbc14178da2f7c03f4be57c89c81307f5d82
+AUX awk/fixlafiles.awk-no_gcc_la 8596 SHA256 91e36c29133b6ff854bc84acd6cd2e9d07be6eaa73ef9b23e4f7bc6371107fab SHA512 a970ade3e0b57b3280dd01036a95338c4a7f0c7ec45e7aeb7255197df43e13a5fad8c565b4b345e3a0c8326f71ae7ab598b804eaeaa9d59eda8683195bccfe45 WHIRLPOOL e3da866b8902fbf639af545b43c3b6ccaca0f5d543647007f02e0b8bfc16a675463b8681e9fad11d6ce29517e099636f43708f880ef7a433e4578ee408c3b099
+AUX c89 412 SHA256 29ad5dd697135c2892067e780447894dc1cd071708157e46d21773ab99c5022c SHA512 71d33a147339d8d70a62aa22a95d3e70e445d8435d6ac05893f7da19ae851b89bea851f6ce213fbd22470f13572ae13b83cf02f0621333f07d7b0c68a79b7924 WHIRLPOOL d9707a2be8da7a709b54fcb1154cfa05e479f8c3bdd6173822ee1f1bc265b2a0d04741c0685bfb0db68e1e4297fb032d2f8ff94da88014575d947054474d8295
+AUX c99 446 SHA256 057b348cf5be9b4fb9db99a4549f6433c89d21e5f91dc5e46b0b4dc6b70432f5 SHA512 bf3b0eb1125d5e89b433954fcbf805cd86dec5a6eeb23df685ebf3ff83a610573f2ffcec65d893244c845936a73918387cba026710c65c854b2c94a78b007989 WHIRLPOOL b888038b96615c7a0363555b407a3de2c1f17e34428fa16dfbf56fcf68875d6bcdecbc61b545d7f71842ff1909a3ffeff17165fa7f56b48f95adae22f5f8bff1
+AUX fix_libtool_files.sh 1679 SHA256 0037e3f1303560f1ffadc61c7ed6bca13a41d6f2f70f196276938cda9dd158f0 SHA512 834beeb04f1057a0b1f79025fc9bbe0193ea8457055cc10b5b4c528a60e37ead7614a686aa6e7285e040161a91d4b5ff394539a33fc2f4b44be5c2514d0bb283 WHIRLPOOL c7e2f517e0c5c9a8930cd615f68222b44a6f227518ea71b5eb9b6436e1642be748d9cb4c0732f27df6c2ded2eb2c758d67ee9cb58e409f30814f988523dc649b
+AUX gcc-configure-LANG.patch 2052 SHA256 63de6d2dcfe14f21d147abeb1390405b9220c03f8e968f482d4b4c1cf279c88b SHA512 a694c7ac2f45cc657097ff5b0cf1356ac88a9c06035c9ba15167e9d444844d0d8a478eb1b9b62195dd063774f79697b9148b9cdb6c261640b472c291061b2129 WHIRLPOOL 3cc1ec912fb192ff1058de5b93e49a994ba30d1501a932290dd5b3df1cd783875621cda56edeb41894cd5fa10c04917e693a40a60be8d742ddd7992bf5d8afeb
+AUX gcc-configure-texinfo.patch 337 SHA256 74b73a7ecec2d88889876b4db480cd173632f49d5396bb8e5b3c93673f9b5b98 SHA512 a15fba8bf2ff02bdeca54d6f186bfa08c1079c6a8ba0a3beef154483ce5c1b8c497e7ffeec32371968f0037e0ff8384609eb0c367d0155a4e5a7eef8aad084d5 WHIRLPOOL 39d008aad06f7621e4e5db15f5e85a59e583b43f8d247029bd4944466bb60a9795bda157d185c45c329294078e282703a243aad5c468d90c77665dd6336870d4
+AUX gcc-spec-env.patch 1544 SHA256 64b01f29fb853fee5ecda998b66eeaa7ec86ff1fc3b21432bfd69eb543c93e6a SHA512 ce9c1f923e2c6d17347ec2d3d8482351a9644194b2753627389294d43bb4f11b9c2ef41eda1b46ad83d09901a0bedebd5b6b8a57a198646030ab61e8d2d8cb48 WHIRLPOOL b88c9c18e20868b3ff535c3390408ebe8f1304bcec6e70b6472781f684671265860dff4335f2301d3b4d3b73395283b29673f0f5da62414e1094cfcb8130e8d8
+AUX gfortran-unused-mod-namelist.patch 1977 SHA256 a994b273cef4c527686e50edd9cad31c27c5b12bd006a90be5ed18b62e6bd606 SHA512 d80e678bc553416176113f6c876ff0151ad465a9dd92e1b4d4da965ae255e010bccd591ab3c1f6dd1e9db5684ab38abc90e057bb30f815ae7524e43bc321c784 WHIRLPOOL e6d65bd5b88edee1e63904e2fecb2ce5ad2151894b183a52c93b7337b7db5bd8c4d300d283ee284b613f92c33f2841cc0519f923e466ec55c7b348739e5319a9
+AUX gfortran-unused-mod-namelist.patch.1 2136 SHA256 83a7d118e58e191cd935aa6273899ddffb698f82621974cfec8e07750b8fbd85 SHA512 22ebd82deba248caaa54f1dc0746d5a009be73503a11e923f7e55d0d30db09ceba7c3f6cf799e65f0433e82b87bb92d8a83c28b8cde30ebe99a087b6f0dd49e3 WHIRLPOOL a2c70f0c70055347896486e5a6b3e563219a5eb42f8479579b5f1047edc35e4fcdce5ed1858eff91cdf3bd3c958c2daaf58d9168e3ebf2bbcf26f13d02baa568
+AUX mkinfodir 7324 SHA256 0565353e767e253207adb8b5c9be9ba215a628447e075a4dc7bb3183ed099d2a SHA512 a05f9130d98e4cb4d3254b757de06d772d0a965ac4b5a9a15082b1cb694a2fd32c9c8f550745a9423ba3cfdd1c5e87b6d568a809301772a24cc6e1a414d5f98b WHIRLPOOL 4001ae3f7fb666a84e12432a1a41eacf62ebf922181c279e4d06dad32e44d0b499d13e098e794fdd19a9cff5c438a28e5e9e125fb78e72bb913fa5ddd8e44bae
+AUX pro-police-docs.patch 3287 SHA256 ec012aed77285545b9d993cba1bc5fdb402c8dc9a17040f48b8b354746ede627 SHA512 1ba939ff035b33dbbeca2bca6b4240ac0408bb1648eebc4a5d890f0c7926dd0184e5b29f73412d20bf862977c172dcbdfd908c156a367ddaeada5774c94befd0 WHIRLPOOL 48a31408fc03bc178a9799b5a5668d5ae2b0f02d51ef75f5f86e30ca6912c2c3e01364a67c3986918e3a7e3c082d931cb8fb22b6c0db8c8a41fb8da967ad129e
+DIST ecj-4.5.jar 1470676 SHA256 98fd128f1d374d9e42fd9d4836bdd249c6d511ebc6c0df17fbc1b9df96c3d781 SHA512 d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e WHIRLPOOL db54206cfd5eba935e707b8d36ebac40f3c4ed3c1f06ede794288cbdd9c7da9d90c0898e8c98b383af276ea4c1b40c861ebd9e1fc1dce712946184321339d3ad
+DIST gcc-4.4.3-specs-0.2.0.tar.bz2 2004 SHA256 f6c7cb99beead66dd4d06f7004c5731a9360330cbe878ce79792c618e008eed2 SHA512 779ecb0a064d2138b54569c8ae501975b8a6b72e5a3acbf8597619a8db77ee42ef9b0e62608d5192a15e4393e7dfc009bb50b994782236faa744b2c46b5fe517 WHIRLPOOL 8a1e45aad9d306cb19de93c63b5854a97e629d90852feb6861dcfca042b6257705304fc13ad65655a4cb227d36b83fc6063648c94f270821574ee0e85307094e
+DIST gcc-4.7.2-patches-1.3.tar.bz2 37988 SHA256 f9175b74d418da76911cba620162d5545a46ab1ec05b6e1948a3237c74176216 SHA512 45f5156a249f82d544799240368f1eb206273f2e27b6dec6129fe84491adf953d85e3fa9847a7fc0baedc48b35a80d6c53bd0799000450bde5018480e39d3243 WHIRLPOOL cf8277e5d28852cf4c85d9ad514738b341ae3cbd7db2b77e9922ad8cb33902a085630ebe5c910a07cd89846360997ac474e3231dc7dd7640aa78c594dcbaedaf
+DIST gcc-4.7.2-piepatches-v0.5.5.tar.bz2 15347 SHA256 ea7b7f7af30569f98b3cd37459b257e8bc96ef4691841779b28e93a96764a8c1 SHA512 1e3d20c38af31953b3a82c3f2204b9cc73a8bc9c80f3b3300106d1f1b6d299eb5ae5f67839fdcc690b4b8510d400053f431a1ef4850c9a4d2ca25db68daf35b6 WHIRLPOOL a22e77f63306fab350749b0778002e0cf610e300ef960631013aa545569385faa9ed1787fcdec5cf0dec89ed7dc4c9dc3d7dec28bbdb9665c0c957ba6dfa67de
+DIST gcc-4.7.2-uclibc-patches-1.0.tar.bz2 3022 SHA256 507e2c9b7004122a6cf5409825f7c06da8fc63e1a77dc03f7a6ed2a7888a9311 SHA512 43018bef164fd1c4c2ab4e72f13d92044dfde65d6286046a761433d1a7bbc0ff1b4b0bcd770e07b6d4a17daf6dd974c9ec8f7a3e4d631f4af554b77bb1688206 WHIRLPOOL c08aed61480b1eab6b86356ecfff7fbb592820f6498f4fbed9161e859fa257aececd5e9ceb83495a8a0bb4c6f6f457f4c9125a079757324b84dc48e81cb2af14
+DIST gcc-4.7.2.tar.bz2 82884636 SHA256 8a9283d7010fb9fe5ece3ca507e0af5c19412626384f8a5e9434251ae100b084 SHA512 689ce92d0c93e5ca5268d9757acffc6e5a7931fc7ad99ee9beefa6ce02d201ed9dade08240cb5623525e19362f90a245792e95d4e90b067fee61013a03288e32 WHIRLPOOL 730d32f9e9d19683ea169992ee82a3016c806dab16577facbb6e5eab4707706f139cf6b15b8aae44f85c88d71c308ddb1c110dca99dd46692d5bad66e05ad657
+EBUILD gcc-4.7.2-r99.ebuild 2004 SHA256 b6f98ece64c39bb88461f4a2f6369d5a75c9a09a5797c5b92ec0c735f05bac24 SHA512 94bc1bb9588ebcb297a62b9b7c84897b5ead3bd76e34825561166d0147bc83b0ad0b9369307c475163ef5ab8243b68813b543e919bbc04832b2bddcfab23c643 WHIRLPOOL 52586bee103ac7c3b003c44276d37838b817f5812217f9940041b21cda2beb4359f5906f6031a187ca181599430ab772411d11d685454e7f7dd06c8542639115
diff --git a/sys-devel/gcc/files/3.2.1/gcc31-loop-load-final-value.patch b/sys-devel/gcc/files/3.2.1/gcc31-loop-load-final-value.patch
new file mode 100644
index 0000000..525262c
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.1/gcc31-loop-load-final-value.patch
@@ -0,0 +1,79 @@
+2002-04-22 Jan Hubicka <jh@suse.cz>
+
+ * loop.c (gen_load_of_final_value): New.
+ (loop_givs_rescan, strength_reduce, check_dbra_loop): Use it.
+
+--- gcc-3.1-20020515/gcc/loop.c.loop-load-final-value 2002-05-17 00:15:52.000000000 +0200
++++ gcc-3.1-20020515/gcc/loop.c 2002-05-17 00:32:20.000000000 +0200
+@@ -354,6 +354,7 @@ static rtx loop_insn_sink_or_swim PARAMS
+ static void loop_dump_aux PARAMS ((const struct loop *, FILE *, int));
+ static void loop_delete_insns PARAMS ((rtx, rtx));
+ static HOST_WIDE_INT remove_constant_addition PARAMS ((rtx *));
++static rtx gen_load_of_final_value PARAMS ((rtx, rtx));
+ void debug_ivs PARAMS ((const struct loop *));
+ void debug_iv_class PARAMS ((const struct iv_class *));
+ void debug_biv PARAMS ((const struct induction *));
+@@ -4797,7 +4798,8 @@ loop_givs_rescan (loop, bl, reg_map)
+ v->mult_val, v->add_val, v->dest_reg);
+ else if (v->final_value)
+ loop_insn_sink_or_swim (loop,
+- gen_move_insn (v->dest_reg, v->final_value));
++ gen_load_of_final_value (v->dest_reg,
++ v->final_value));
+
+ if (loop_dump_stream)
+ {
+@@ -5154,8 +5156,9 @@ strength_reduce (loop, flags)
+ value, so we don't need another one. We can't calculate the
+ proper final value for such a biv here anyways. */
+ if (bl->final_value && ! bl->reversed)
+- loop_insn_sink_or_swim (loop, gen_move_insn
+- (bl->biv->dest_reg, bl->final_value));
++ loop_insn_sink_or_swim (loop,
++ gen_load_of_final_value (bl->biv->dest_reg,
++ bl->final_value));
+
+ if (loop_dump_stream)
+ fprintf (loop_dump_stream, "Reg %d: biv eliminated\n",
+@@ -5164,8 +5167,8 @@ strength_reduce (loop, flags)
+ /* See above note wrt final_value. But since we couldn't eliminate
+ the biv, we must set the value after the loop instead of before. */
+ else if (bl->final_value && ! bl->reversed)
+- loop_insn_sink (loop, gen_move_insn (bl->biv->dest_reg,
+- bl->final_value));
++ loop_insn_sink (loop, gen_load_of_final_value (bl->biv->dest_reg,
++ bl->final_value));
+ }
+
+ /* Go through all the instructions in the loop, making all the
+@@ -8360,7 +8363,7 @@ check_dbra_loop (loop, insn_count)
+ if ((REGNO_LAST_UID (bl->regno) != INSN_UID (first_compare))
+ || ! bl->init_insn
+ || REGNO_FIRST_UID (bl->regno) != INSN_UID (bl->init_insn))
+- loop_insn_sink (loop, gen_move_insn (reg, final_value));
++ loop_insn_sink (loop, gen_load_of_final_value (reg, final_value));
+
+ /* Delete compare/branch at end of loop. */
+ delete_related_insns (PREV_INSN (loop_end));
+@@ -10355,6 +10358,21 @@ loop_insn_sink (loop, pattern)
+ return loop_insn_emit_before (loop, 0, loop->sink, pattern);
+ }
+
++/* bl->final_value can be eighter general_operand or PLUS of general_operand
++ and constant. Emit sequence of intructions to load it into REG */
++static rtx
++gen_load_of_final_value (reg, final_value)
++ rtx reg, final_value;
++{
++ rtx seq;
++ start_sequence ();
++ final_value = force_operand (final_value, reg);
++ if (final_value != reg)
++ emit_move_insn (reg, final_value);
++ seq = gen_sequence ();
++ end_sequence ();
++ return seq;
++}
+
+ /* If the loop has multiple exits, emit insn for PATTERN before the
+ loop to ensure that it will always be executed no matter how the
diff --git a/sys-devel/gcc/files/3.2.1/gcc32-arm-disable-mathf.patch b/sys-devel/gcc/files/3.2.1/gcc32-arm-disable-mathf.patch
new file mode 100644
index 0000000..fbb8a84
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.1/gcc32-arm-disable-mathf.patch
@@ -0,0 +1,142 @@
+--- gcc-3.1/libstdc++-v3/configure Tue May 7 23:27:59 2002
++++ gcc-3.1-patched/libstdc++-v3/configure Thu Aug 8 11:01:35 2002
+@@ -5034,10 +5034,6 @@
+ EOF
+
+ cat >> confdefs.h <<\EOF
+-#define HAVE_FREXPF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+ #define HAVE_HYPOTF 1
+ EOF
+
+@@ -7873,128 +7869,6 @@
+ cat >> confdefs.h <<\EOF
+ #define HAVE_MMAP 1
+ EOF
+-
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ACOSF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ASINF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ATAN2F 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ATANF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_CEILF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_COPYSIGN 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_COPYSIGNF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_COSF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_COSHF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_EXPF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_FABSF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_FINITE 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_FINITEF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_FLOORF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_FMODF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_FREXPF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ISINF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ISINFF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ISNAN 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_ISNANF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_LDEXPF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_LOG10F 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_LOGF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_MODFF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_POWF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_SINF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_SINHF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_SQRTF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_TANF 1
+-EOF
+-
+- cat >> confdefs.h <<\EOF
+-#define HAVE_TANHF 1
+-EOF
+-
+ ;;
+ esac
+
diff --git a/sys-devel/gcc/files/3.2.1/gcc32-arm-reload1-fix.patch b/sys-devel/gcc/files/3.2.1/gcc32-arm-reload1-fix.patch
new file mode 100644
index 0000000..0d5588e
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.1/gcc32-arm-reload1-fix.patch
@@ -0,0 +1,21 @@
+--- gcc-3.2.1/gcc/reload1.c.orig 2002-10-10 09:40:20.000000000 -0600
++++ gcc-3.2.1/gcc/reload1.c 2003-01-30 12:15:05.000000000 -0700
+@@ -8674,7 +8674,9 @@
+ ... (MEM (PLUS (REGZ) (REGY)))... .
+
+ First, check that we have (set (REGX) (PLUS (REGX) (REGY)))
+- and that we know all uses of REGX before it dies. */
++ and that we know all uses of REGX before it dies.
++ Also, explicitly check that REGX != REGY; our life information
++ does not yet show whether REGY changes in this insn. */
+ set = single_set (insn);
+ if (set != NULL_RTX
+ && GET_CODE (SET_DEST (set)) == REG
+@@ -8684,6 +8686,7 @@
+ && GET_CODE (SET_SRC (set)) == PLUS
+ && GET_CODE (XEXP (SET_SRC (set), 1)) == REG
+ && rtx_equal_p (XEXP (SET_SRC (set), 0), SET_DEST (set))
++ && !rtx_equal_p (XEXP (SET_SRC (set), 1), SET_DEST (set))
+ && last_label_ruid < reg_state[REGNO (SET_DEST (set))].use_ruid)
+ {
+ rtx reg = SET_DEST (set);
diff --git a/sys-devel/gcc/files/3.2.1/gcc32-athlon-alignment.patch b/sys-devel/gcc/files/3.2.1/gcc32-athlon-alignment.patch
new file mode 100644
index 0000000..0019eee
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.1/gcc32-athlon-alignment.patch
@@ -0,0 +1,11 @@
+--- gcc-3.2/gcc/config/i386/i386.c.athlon-alignment 2002-09-20 13:58:03.000000000 +0200
++++ gcc-3.2/gcc/config/i386/i386.c 2002-09-20 14:03:59.000000000 +0200
+@@ -857,7 +857,7 @@ override_options ()
+ {&pentium_cost, 0, 0, 16, 7, 16, 7, 16, 1},
+ {&pentiumpro_cost, 0, 0, 16, 15, 16, 7, 16, 1},
+ {&k6_cost, 0, 0, 32, 7, 32, 7, 32, 1},
+- {&athlon_cost, 0, 0, 16, 7, 64, 7, 16, 1},
++ {&athlon_cost, 0, 0, 16, 7, 16, 7, 16, 1},
+ {&pentium4_cost, 0, 0, 0, 0, 0, 0, 0, 1}
+ };
+
diff --git a/sys-devel/gcc/files/3.2.1/gcc32-sparc32-hack.patch b/sys-devel/gcc/files/3.2.1/gcc32-sparc32-hack.patch
new file mode 100644
index 0000000..0e03e36
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.1/gcc32-sparc32-hack.patch
@@ -0,0 +1,66 @@
+This is an optimization hack which should only be present
+in a sparc 32bit driver of the compiler compiled with
+host/target/build sparc64-redhat-linux --with-cpu=v7.
+As long long HOST_WIDE_INT slows things down, we can have in
+addition to the sparc64-*/3.2/{cc1,cc1plus}
+sparc-*/3.2/{cc1,cc1plus} binaries which are suitable for compiling
+-m32 code only, but use long HOST_WIDE_INT.
+
+--- gcc/gcc.c.jj Thu Aug 1 17:41:31 2002
++++ gcc/gcc.c Fri Sep 6 16:48:10 2002
+@@ -3184,6 +3184,8 @@ process_command (argc, argv)
+ int have_c = 0;
+ int have_o = 0;
+ int lang_n_infiles = 0;
++ int m64 = 0;
++ int used_B = 0;
+ #ifdef MODIFY_TARGET_NAME
+ int is_modify_target_name;
+ int j;
+@@ -3565,6 +3567,7 @@ warranty; not even for MERCHANTABILITY o
+ spec_machine = p + 1;
+
+ warn_std_ptr = &warn_std;
++ used_B = 1;
+ break;
+
+ case 'B':
+@@ -3627,6 +3630,7 @@ warranty; not even for MERCHANTABILITY o
+ PREFIX_PRIORITY_B_OPT, 0, &warn_B, 0);
+ add_prefix (&include_prefixes, concat (value, "include", NULL),
+ NULL, PREFIX_PRIORITY_B_OPT, 0, NULL, 0);
++ used_B = 1;
+ n_switches++;
+ }
+ break;
+@@ -3731,6 +3735,13 @@ warranty; not even for MERCHANTABILITY o
+ #endif
+ goto normal_switch;
+
++ /* HACK START */
++ case 'm':
++ if (p[1] == '6' && p[2] == '4')
++ m64 = 1;
++ /* FALLTHROUGH */
++ /* HACK END */
++
+ default:
+ normal_switch:
+
+@@ -3798,6 +3809,16 @@ warranty; not even for MERCHANTABILITY o
+ /* Use 2 as fourth arg meaning try just the machine as a suffix,
+ as well as trying the machine and the version. */
+ #ifndef OS2
++ /* HACK START */
++ if (!m64 && !used_B && !strncmp (spec_machine, "sparc64-", 8))
++ {
++ const char *sparc32_exec_prefix =
++ concat (standard_exec_prefix, "sparc-", spec_machine + 8,
++ dir_separator_str, spec_version, dir_separator_str, NULL);
++ add_prefix (&exec_prefixes, sparc32_exec_prefix, "GCC",
++ PREFIX_PRIORITY_LAST, 0, warn_std_ptr, 0);
++ }
++ /* HACK END */
+ add_prefix (&exec_prefixes, standard_exec_prefix, "GCC",
+ PREFIX_PRIORITY_LAST, 1, warn_std_ptr, 0);
+ add_prefix (&exec_prefixes, standard_exec_prefix, "BINUTILS",
diff --git a/sys-devel/gcc/files/3.2.1/gcc32-strip-dotdot.patch b/sys-devel/gcc/files/3.2.1/gcc32-strip-dotdot.patch
new file mode 100644
index 0000000..088c307
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.1/gcc32-strip-dotdot.patch
@@ -0,0 +1,84 @@
+2002-07-17 Alan Modra <amodra@bigpond.net.au>
+
+ * prefix.c (update_path): Strip ".." components when prior dir
+ doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
+
+--- gcc-3.2/gcc/prefix.c.strip-dotdot 2001-10-11 05:15:55.000000000 +0200
++++ gcc-3.2/gcc/prefix.c 2002-08-17 09:37:01.000000000 +0200
+@@ -251,7 +252,7 @@ update_path (path, key)
+ const char *path;
+ const char *key;
+ {
+- char *result;
++ char *result, *p;
+
+ if (! strncmp (path, std_prefix, strlen (std_prefix)) && key != 0)
+ {
+@@ -271,9 +272,66 @@ update_path (path, key)
+ else
+ result = xstrdup (path);
+
++#ifndef ALWAYS_STRIP_DOTDOT
++#define ALWAYS_STRIP_DOTDOT 0
++#endif
++
++ p = result;
++ while (1)
++ {
++ char *src, *dest;
++
++ p = strchr (p, '.');
++ if (p == NULL)
++ break;
++ /* Look for `/../' */
++ if (p[1] == '.'
++ && IS_DIR_SEPARATOR (p[2])
++ && (p != result && IS_DIR_SEPARATOR (p[-1])))
++ {
++ *p = 0;
++ if (!ALWAYS_STRIP_DOTDOT && access (result, X_OK) == 0)
++ {
++ *p = '.';
++ break;
++ }
++ else
++ {
++ /* We can't access the dir, so we won't be able to
++ access dir/.. either. Strip out `dir/../'. If `dir'
++ turns out to be `.', strip one more path component. */
++ dest = p;
++ do
++ {
++ --dest;
++ while (dest != result && IS_DIR_SEPARATOR (*dest))
++ --dest;
++ while (dest != result && !IS_DIR_SEPARATOR (dest[-1]))
++ --dest;
++ }
++ while (dest != result && *dest == '.');
++ /* If we have something like `./..' or `/..', don't
++ strip anything more. */
++ if (*dest == '.' || IS_DIR_SEPARATOR (*dest))
++ {
++ *p = '.';
++ break;
++ }
++ src = p + 3;
++ while (IS_DIR_SEPARATOR (*src))
++ ++src;
++ p = dest;
++ while ((*dest++ = *src++) != 0)
++ ;
++ }
++ }
++ else
++ ++p;
++ }
++
+ #ifdef UPDATE_PATH_HOST_CANONICALIZE
+ /* Perform host dependent canonicalization when needed. */
+- UPDATE_PATH_HOST_CANONICALIZE (path);
++ UPDATE_PATH_HOST_CANONICALIZE (result);
+ #endif
+
+ #ifdef DIR_SEPARATOR_2
diff --git a/sys-devel/gcc/files/3.2.2/gcc-3.2.2-cross-compile.patch b/sys-devel/gcc/files/3.2.2/gcc-3.2.2-cross-compile.patch
new file mode 100644
index 0000000..076cbf1
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.2/gcc-3.2.2-cross-compile.patch
@@ -0,0 +1,11 @@
+--- gcc/configure.orig 2005-08-20 04:28:13.000000000 -0400
++++ gcc/configure 2005-08-20 04:28:38.000000000 -0400
+@@ -6790,7 +6790,7 @@
+ # This prevents libgcc2 from containing any code which requires libc
+ # support.
+ inhibit_libc=
+-if test x$host != x$target && test x$with_headers = x; then
++if test x$host != x$target && { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then
+ inhibit_libc=-Dinhibit_libc
+ else
+ if test x$with_newlib = xyes; then
diff --git a/sys-devel/gcc/files/3.2.2/gcc-3.2.2-no-COPYING-cross-compile.patch b/sys-devel/gcc/files/3.2.2/gcc-3.2.2-no-COPYING-cross-compile.patch
new file mode 100644
index 0000000..6f42e74
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.2/gcc-3.2.2-no-COPYING-cross-compile.patch
@@ -0,0 +1,40 @@
+--- gcc-3.2.2/configure.in
++++ gcc-3.2.2/configure.in
+@@ -517,37 +517,6 @@
+ esac
+ fi
+
+-# Handle ${copy_dirs}
+-set fnord ${copy_dirs}
+-shift
+-while [ $# != 0 ]; do
+- if [ -f $2/COPIED ] && [ x"`cat $2/COPIED`" = x"$1" ]; then
+- :
+- else
+- echo Copying $1 to $2
+-
+- # Use the install script to create the directory and all required
+- # parent directories.
+- if [ -d $2 ]; then
+- :
+- else
+- echo >config.temp
+- ${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
+- fi
+-
+- # Copy the directory, assuming we have tar.
+- # FIXME: Should we use B in the second tar? Not all systems support it.
+- (cd $1; tar -cf - .) | (cd $2; tar -xpf -)
+-
+- # It is the responsibility of the user to correctly adjust all
+- # symlinks. If somebody can figure out how to handle them correctly
+- # here, feel free to add the code.
+-
+- echo $1 > $2/COPIED
+- fi
+- shift; shift
+-done
+-
+ # Configure extra directories which are host specific
+
+ case "${host}" in
diff --git a/sys-devel/gcc/files/3.2.2/gcc32-pr7768.patch b/sys-devel/gcc/files/3.2.2/gcc32-pr7768.patch
new file mode 100644
index 0000000..72b4910
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.2/gcc32-pr7768.patch
@@ -0,0 +1,65 @@
+2002-09-14 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/7768
+ * pt.c (build_template_decl): Copy DECL_DESTRUCTOR_P.
+
+2002-09-15 Nathan Sidwell <nathan@codesourcery.com>
+
+ * g++.dg/template/pretty1.C: New test.
+
+--- gcc-3.2.1/gcc/cp/pt.c.pr7768 2003-01-20 14:14:15.000000000 +0100
++++ gcc-3.2.1/gcc/cp/pt.c 2003-02-08 14:42:15.000000000 +0100
+@@ -2108,6 +2108,7 @@ build_template_decl (decl, parms)
+ DECL_VIRTUAL_CONTEXT (tmpl) = DECL_VIRTUAL_CONTEXT (decl);
+ DECL_STATIC_FUNCTION_P (tmpl) = DECL_STATIC_FUNCTION_P (decl);
+ DECL_CONSTRUCTOR_P (tmpl) = DECL_CONSTRUCTOR_P (decl);
++ DECL_DESTRUCTOR_P (tmpl) = DECL_DESTRUCTOR_P (decl);
+ DECL_NONCONVERTING_P (tmpl) = DECL_NONCONVERTING_P (decl);
+ DECL_ASSIGNMENT_OPERATOR_P (tmpl) = DECL_ASSIGNMENT_OPERATOR_P (decl);
+ if (DECL_OVERLOADED_OPERATOR_P (decl))
+--- gcc-3.2.1/gcc/testsuite/g++.dg/template/pretty1.C.pr7768 2003-02-08 14:42:03.000000000 +0100
++++ gcc-3.2.1/gcc/testsuite/g++.dg/template/pretty1.C 2003-02-08 14:41:52.000000000 +0100
+@@ -0,0 +1,43 @@
++// { dg-do run }
++
++// Copyright (C) 2002 Free Software Foundation, Inc.
++// Contributed by Nathan Sidwell 14 Sep 2002 <nathan@codesourcery.com>
++
++// PR 7768 template dtor pretty function wrong
++
++#include <string.h>
++
++static size_t current = 0;
++static bool error = false;
++
++static char const *names[] =
++{
++ "X<T>::X() [with T = void]",
++ "X<T>::~X() [with T = void]",
++ 0
++};
++
++void Verify (char const *ptr)
++{
++ error = strcmp (ptr, names[current++]);
++}
++
++template <typename T>
++struct X
++{
++ X() { Verify (__PRETTY_FUNCTION__); }
++ ~X() { Verify (__PRETTY_FUNCTION__); }
++};
++
++int main()
++{
++ {
++ X<void> x;
++
++ if (error)
++ return current;
++ }
++ if (error)
++ return current;
++ return 0;
++}
diff --git a/sys-devel/gcc/files/3.2.2/gcc32-pr8213.patch b/sys-devel/gcc/files/3.2.2/gcc32-pr8213.patch
new file mode 100644
index 0000000..762d198
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.2/gcc32-pr8213.patch
@@ -0,0 +1,69 @@
+2002-10-30 Jan Hubicka <jh@suse.cz>
+
+ PR target/8213
+ * config/i386/i386.c (ix86_expand_int_movcc): Fix RTL sharing problem.
+
+2002-11-04 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
+
+ * testsuite/gcc.c-torture/execute/20021104.c: New test.
+
+--- gcc-3.2/gcc/config/i386/i386.c.pr8213 2002-11-04 12:56:37.000000000 -0500
++++ gcc-3.2/gcc/config/i386/i386.c 2002-11-04 13:21:22.000000000 -0500
+@@ -8274,11 +8274,11 @@ ix86_expand_int_movcc (operands)
+ /* On x86_64 the lea instruction operates on Pmode, so we need to get arithmetics
+ done in proper mode to match. */
+ if (diff == 1)
+- tmp = out;
++ tmp = copy_rtx (out);
+ else
+ {
+ rtx out1;
+- out1 = out;
++ out1 = copy_rtx (out);
+ tmp = gen_rtx_MULT (mode, out1, GEN_INT (diff & ~1));
+ nops++;
+ if (diff & 1)
+@@ -8302,12 +8302,12 @@ ix86_expand_int_movcc (operands)
+ clob = gen_rtx_REG (CCmode, FLAGS_REG);
+ clob = gen_rtx_CLOBBER (VOIDmode, clob);
+
+- tmp = gen_rtx_SET (VOIDmode, out, tmp);
++ tmp = gen_rtx_SET (VOIDmode, copy_rtx (out), tmp);
+ tmp = gen_rtx_PARALLEL (VOIDmode, gen_rtvec (2, copy_rtx (tmp), clob));
+ emit_insn (tmp);
+ }
+ else
+- emit_insn (gen_rtx_SET (VOIDmode, out, tmp));
++ emit_insn (gen_rtx_SET (VOIDmode, copy_rtx (out), tmp));
+ }
+ if (out != operands[0])
+ emit_move_insn (operands[0], copy_rtx (out));
+--- gcc-3.2/gcc/testsuite/gcc.c-torture/execute/20021104.c.pr8213 2002-11-04 13:22:33.000000000 -0500
++++ gcc-3.2/gcc/testsuite/gcc.c-torture/execute/20021104.c 2002-11-04 13:24:12.000000000 -0500
+@@ -0,0 +1,26 @@
++/* PR target/8213
++ This testcase, distilled from GNU gmp 4.1, was miscompiled on x86-64
++ because of RTL sharing problems. */
++
++int f(long x, long y)
++{
++ if ((x < 0) == (y < 0))
++ {
++ if (x == 0)
++ return -(y != 0);
++ if (y == 0)
++ return x != 0;
++ }
++ else
++ {
++ return x >= 0 ? 1 : -1;
++ }
++}
++
++int main(void)
++{
++ if (f(-1, 1) != -1)
++ abort();
++
++ return 0;
++}
diff --git a/sys-devel/gcc/files/3.2.2/gcc322-ggc_page-speedup.patch b/sys-devel/gcc/files/3.2.2/gcc322-ggc_page-speedup.patch
new file mode 100644
index 0000000..564433d
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.2/gcc322-ggc_page-speedup.patch
@@ -0,0 +1,17 @@
+--- gcc-3.2.2/gcc/ggc-page.c.orig 2003-03-22 03:52:54.000000000 +0200
++++ gcc-3.2.2/gcc/ggc-page.c 2003-03-22 03:54:17.000000000 +0200
+@@ -344,11 +344,11 @@
+ this factor times the allocation at the end of the last collection.
+ In other words, total allocation must expand by (this factor minus
+ one) before collection is performed. */
+-#define GGC_MIN_EXPAND_FOR_GC (1.3)
++#define GGC_MIN_EXPAND_FOR_GC (2.0)
+
+-/* Bound `allocated_last_gc' to 16MB, to prevent the memory expansion
++/* Bound `allocated_last_gc' to 32MB, to prevent the memory expansion
+ test from triggering too often when the heap is small. */
+-#define GGC_MIN_LAST_ALLOCATED (16 * 1024 * 1024)
++#define GGC_MIN_LAST_ALLOCATED (32 * 1024 * 1024)
+
+ /* Allocate pages in chunks of this size, to throttle calls to memory
+ allocation routines. The first page is used, the rest go onto the
diff --git a/sys-devel/gcc/files/3.2.3/gcc-3.2.3-mergel-fix.patch b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-mergel-fix.patch
new file mode 100644
index 0000000..bc763ae
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-mergel-fix.patch
@@ -0,0 +1,61 @@
+diff -ruN gcc-3.2.3.orig/gcc/config/rs6000/altivec.h gcc-3.2.3/gcc/config/rs6000/altivec.h
+--- gcc-3.2.3.orig/gcc/config/rs6000/altivec.h 2003-07-03 02:47:36.000000000 +0200
++++ gcc-3.2.3/gcc/config/rs6000/altivec.h 2003-07-03 02:49:17.000000000 +0200
+@@ -8535,4 +8535,57 @@
+
+ #endif /* __cplusplus */
+
++/*lu_zero@gentoo.org mergel issue workaround*/
++static inline vector signed char my_vmrglb (vector signed char const A,
++ vector signed char const B)
++{
++ static const vector unsigned char lowbyte = {
++ 0x08, 0x18, 0x09, 0x19, 0x0a, 0x1a, 0x0b, 0x1b,
++ 0x0c, 0x1c, 0x0d, 0x1d, 0x0e, 0x1e, 0x0f, 0x1f
++ };
++ return vec_perm (A, B, lowbyte);
++}
++
++static inline vector signed short my_vmrglh (vector signed short const A,
++ vector signed short const B)
++{
++ static const vector unsigned char lowhalf = {
++ 0x08, 0x09, 0x18, 0x19, 0x0a, 0x0b, 0x1a, 0x1b,
++ 0x0c, 0x0d, 0x1c, 0x1d, 0x0e, 0x0f, 0x1e, 0x1f
++ };
++ return vec_perm (A, B, lowhalf);
++}
++
++static inline vector signed int my_vmrglw (vector signed int const A,
++ vector signed int const B)
++{
++ static const vector unsigned char lowword = {
++ 0x08, 0x09, 0x0a, 0x0b, 0x18, 0x19, 0x1a, 0x1b,
++ 0x0c, 0x0d, 0x0e, 0x0f, 0x1c, 0x1d, 0x1e, 0x1f
++ };
++ return vec_perm (A, B, lowword);
++}
++/*#define my_vmrglb my_vmrglb
++#define my_vmrglh my_vmrglh
++#define my_vmrglw my_vmrglw
++*/
++#undef vec_mergel
++
++#define vec_mergel(a1, a2) \
++__ch (__bin_args_eq (vector signed char, (a1), vector signed char, (a2)), \
++ ((vector signed char) my_vmrglb ((vector signed char) (a1), (vector signed char) (a2))), \
++__ch (__bin_args_eq (vector unsigned char, (a1), vector unsigned char, (a2)), \
++ ((vector unsigned char) my_vmrglb ((vector signed char) (a1), (vector signed char) (a2))), \
++__ch (__bin_args_eq (vector signed short, (a1), vector signed short, (a2)), \
++ ((vector signed short) my_vmrglh ((vector signed short) (a1), (vector signed short) (a2))), \
++__ch (__bin_args_eq (vector unsigned short, (a1), vector unsigned short, (a2)), \
++ ((vector unsigned short) my_vmrglh ((vector signed short) (a1), (vector signed short) (a2))), \
++__ch (__bin_args_eq (vector float, (a1), vector float, (a2)), \
++ ((vector float) my_vmrglw ((vector signed int) (a1), (vector signed int) (a2))), \
++__ch (__bin_args_eq (vector signed int, (a1), vector signed int, (a2)), \
++ ((vector signed int) my_vmrglw ((vector signed int) (a1), (vector signed int) (a2))), \
++__ch (__bin_args_eq (vector unsigned int, (a1), vector unsigned int, (a2)), \
++ ((vector unsigned int) my_vmrglw ((vector signed int) (a1), (vector signed int) (a2))), \
++ __altivec_link_error_invalid_argument ())))))))
++
+ #endif /* _ALTIVEC_H */
diff --git a/sys-devel/gcc/files/3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch
new file mode 100644
index 0000000..d037cd1
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch
@@ -0,0 +1,120 @@
+diff -u -r -N gcc-3.2.3.ORIG/gcc/libgcc-std.ver gcc-3.2.3/gcc/libgcc-std.ver
+--- gcc-3.2.3.ORIG/gcc/libgcc-std.ver 2003-11-11 18:12:52.000000000 +0100
++++ gcc-3.2.3/gcc/libgcc-std.ver 2003-11-11 18:19:31.000000000 +0100
+@@ -176,6 +176,7 @@
+ _Unwind_SjLj_Resume
+
+ # stack smash handler symbols
+- __guard
+- __stack_smash_handler
++ # these can be found in glibc now
++ # __guard
++ # __stack_smash_handler
+ }
+diff -u -r -N gcc-3.2.3.ORIG/gcc/libgcc2.c gcc-3.2.3/gcc/libgcc2.c
+--- gcc-3.2.3.ORIG/gcc/libgcc2.c 2003-11-11 18:12:52.000000000 +0100
++++ gcc-3.2.3/gcc/libgcc2.c 2003-11-11 18:20:44.000000000 +0100
+@@ -2052,100 +2052,7 @@
+ #endif /* L_exit */
+
+ #ifdef L_stack_smash_handler
+-#include <stdio.h>
+-#include <string.h>
+-#include <fcntl.h>
+-#include <unistd.h>
+-
+-#ifdef _POSIX_SOURCE
+-#include <signal.h>
+-#endif
+-
+-#if defined(HAVE_SYSLOG)
+-#include <sys/types.h>
+-#include <sys/socket.h>
+-#include <sys/un.h>
+-
+-#include <sys/syslog.h>
+-#ifndef _PATH_LOG
+-#define _PATH_LOG "/dev/log"
+-#endif
+-#endif
+-
+-long __guard[8] = {0,0,0,0,0,0,0,0};
+-static void __guard_setup (void) __attribute__ ((constructor)) ;
+-static void __guard_setup (void)
+-{
+- int fd;
+- if (__guard[0]!=0) return;
+- fd = open ("/dev/urandom", 0);
+- if (fd != -1) {
+- ssize_t size = read (fd, (char*)&__guard, sizeof(__guard));
+- close (fd) ;
+- if (size == sizeof(__guard)) return;
+- }
+- /* If a random generator can't be used, the protector switches the guard
+- to the "terminator canary" */
+- ((char*)__guard)[0] = 0; ((char*)__guard)[1] = 0;
+- ((char*)__guard)[2] = '\n'; ((char*)__guard)[3] = 255;
+-}
+-void __stack_smash_handler (char func[], int damaged ATTRIBUTE_UNUSED)
+-{
+-#if defined (__GNU_LIBRARY__)
+- extern char * __progname;
+-#endif
+- const char message[] = ": stack smashing attack in function ";
+- int bufsz = 256, len;
+- char buf[bufsz];
+-#if defined(HAVE_SYSLOG)
+- int LogFile;
+- struct sockaddr_un SyslogAddr; /* AF_UNIX address of local logger */
+-#endif
+-#ifdef _POSIX_SOURCE
+- {
+- sigset_t mask;
+- sigfillset(&mask);
+- sigdelset(&mask, SIGABRT); /* Block all signal handlers */
+- sigprocmask(SIG_BLOCK, &mask, NULL); /* except SIGABRT */
+- }
+-#endif
+-
+- strcpy(buf, "<2>"); len=3; /* send LOG_CRIT */
+-#if defined (__GNU_LIBRARY__)
+- strncat(buf, __progname, bufsz-len-1); len = strlen(buf);
+-#endif
+- if (bufsz>len) {strncat(buf, message, bufsz-len-1); len = strlen(buf);}
+- if (bufsz>len) {strncat(buf, func, bufsz-len-1); len = strlen(buf);}
+-
+- /* print error message */
+- write (STDERR_FILENO, buf+3, len-3);
+-#if defined(HAVE_SYSLOG)
+- if ((LogFile = socket(AF_UNIX, SOCK_DGRAM, 0)) != -1) {
+-
+- /*
+- * Send "found" message to the "/dev/log" path
+- */
+- SyslogAddr.sun_family = AF_UNIX;
+- (void)strncpy(SyslogAddr.sun_path, _PATH_LOG,
+- sizeof(SyslogAddr.sun_path) - 1);
+- SyslogAddr.sun_path[sizeof(SyslogAddr.sun_path) - 1] = '\0';
+- sendto(LogFile, buf, len, 0, (struct sockaddr *)&SyslogAddr,
+- sizeof(SyslogAddr));
+- }
+-#endif
+-
+-#ifdef _POSIX_SOURCE
+- { /* Make sure the default handler is associated with SIGABRT */
+- struct sigaction sa;
+-
+- memset(&sa, 0, sizeof(struct sigaction));
+- sigfillset(&sa.sa_mask); /* Block all signals */
+- sa.sa_flags = 0;
+- sa.sa_handler = SIG_DFL;
+- sigaction(SIGABRT, &sa, NULL);
+- (void)kill(getpid(), SIGABRT);
+- }
+-#endif
+- _exit(127);
+-}
++extern long __guard[8];
++extern void __guard_setup (void);
++extern void __stack_smash_handler (char func[], int damaged);
+ #endif
diff --git a/sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch
new file mode 100644
index 0000000..2bdd26d
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch
@@ -0,0 +1,41 @@
+fix building gcc-3.2.3 with newer versions of gcc
+
+http://bugs.gentoo.org/225743
+http://gcc.gnu.org/ml/gcc-help/2008-01/msg00040.html
+http://www.archivum.info/gnu.gcc.help/2008-05/msg00093.html
+
+--- gcc-3.2.3/gcc/read-rtl.c
++++ gcc-3.2.3/gcc/read-rtl.c
+@@ -659,7 +659,7 @@
+ {
+ ungetc (c, infile);
+ list_counter++;
+- obstack_ptr_grow (&vector_stack, (PTR) read_rtx (infile));
++ obstack_ptr_grow (&vector_stack, read_rtx (infile));
+ }
+ if (list_counter > 0)
+ {
+--- gcc-3.2.3/gcc/system.h
++++ gcc-3.2.3/gcc/system.h
+@@ -589,7 +589,9 @@
+ #undef realloc
+ #undef calloc
+ #undef strdup
++#if ! (defined(FLEX_SCANNER) || defined(YYBISON) || defined(YYBYACC))
+ #pragma GCC poison malloc realloc calloc strdup
++#endif
+
+ /* Old target macros that have moved to the target hooks structure. */
+ #pragma GCC poison ASM_OPEN_PAREN ASM_CLOSE_PAREN \
+@@ -628,4 +630,11 @@
+
+ #endif /* GCC >= 3.0 */
+
++#if defined(FLEX_SCANNER) || defined(YYBISON) || defined(YYBYACC)
++/* Flex and bison use malloc and realloc. Yuk. Note that this means
++ really_call_* cannot be used in a .l or .y file. */
++#define malloc xmalloc
++#define realloc xrealloc
++#endif
++
+ #endif /* ! GCC_SYSTEM_H */
diff --git a/sys-devel/gcc/files/3.2.3/gcc-323-propolice-version.patch b/sys-devel/gcc/files/3.2.3/gcc-323-propolice-version.patch
new file mode 100644
index 0000000..61b5eed
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc-323-propolice-version.patch
@@ -0,0 +1,17 @@
+--- gcc/version.c.old 2003-03-26 10:43:47.000000000 -0500
++++ gcc/version.c 2003-03-26 10:44:13.000000000 -0500
+@@ -1,4 +1,4 @@
+ #include "ansidecl.h"
+ #include "version.h"
+
+-const char *const version_string = "3.2.3 20030422 (Gentoo Linux 1.4 @PV@)";
++const char *const version_string = "3.2.3 20030422 (Gentoo Linux 1.4 @PV@, propolice)";
+
+--- gcc/f/version.c.old 2003-03-26 10:43:54.000000000 -0500
++++ gcc/f/version.c 2003-03-26 10:44:27.000000000 -0500
+@@ -1,4 +1,4 @@
+ #include "ansidecl.h"
+ #include "f/version.h"
+
+-const char *const ffe_version_string = "3.2.3 20030422 (Gentoo Linux 1.4 @PV@)";
++const char *const ffe_version_string = "3.2.3 20030422 (Gentoo Linux 1.4 @PV@), propolice)";
diff --git a/sys-devel/gcc/files/3.2.3/gcc32-c++-classfn-member-template.patch b/sys-devel/gcc/files/3.2.3/gcc32-c++-classfn-member-template.patch
new file mode 100644
index 0000000..7e2e328
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc32-c++-classfn-member-template.patch
@@ -0,0 +1,108 @@
+2003-03-29 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
+
+ Backport from 3.3-branch:
+
+ 2003-03-11 Jason Merrill <jason@redhat.com>
+
+ PR c++/8660
+ * cp/decl2.c (check_classfn): A member template only matches a
+ member template.
+
+2003-03-29 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
+
+ PR c++/10265
+ * testsuite/g++.dg/template/member3.C: New test.
+
+--- gcc-3.2.2/gcc/cp/decl2.c.c++-classfn-member-template 2003-03-20 10:11:54.000000000 +0100
++++ gcc-3.2.2/gcc/cp/decl2.c 2003-04-02 11:14:29.000000000 +0200
+@@ -1288,6 +1288,7 @@ check_classfn (ctype, function)
+ tree method_vec = CLASSTYPE_METHOD_VEC (complete_type (ctype));
+ tree *methods = 0;
+ tree *end = 0;
++ int is_template;
+
+ if (DECL_USE_TEMPLATE (function)
+ && !(TREE_CODE (function) == TEMPLATE_DECL
+@@ -1305,6 +1306,10 @@ check_classfn (ctype, function)
+ find the method, but we don't complain. */
+ return NULL_TREE;
+
++ /* OK, is this a definition of a member template? */
++ is_template = (TREE_CODE (function) == TEMPLATE_DECL
++ || (processing_template_decl - template_class_depth (ctype)));
++
+ if (method_vec != 0)
+ {
+ methods = &TREE_VEC_ELT (method_vec, 0);
+@@ -1344,6 +1349,11 @@ check_classfn (ctype, function)
+ && TREE_CODE (TREE_TYPE (function)) == METHOD_TYPE)
+ p1 = TREE_CHAIN (p1);
+
++ /* A member template definition only matches a member template
++ declaration. */
++ if (is_template != (TREE_CODE (fndecl) == TEMPLATE_DECL))
++ continue;
++
+ if (same_type_p (TREE_TYPE (TREE_TYPE (function)),
+ TREE_TYPE (TREE_TYPE (fndecl)))
+ && compparms (p1, p2)
+--- gcc-3.2.2/gcc/testsuite/g++.dg/template/member2.C.c++-classfn-member-template 2003-04-02 11:14:29.000000000 +0200
++++ gcc-3.2.2/gcc/testsuite/g++.dg/template/member2.C 2003-04-02 11:14:29.000000000 +0200
+@@ -0,0 +1,15 @@
++// PR c++/8660
++// Bug: we were treating the definition of the non-template as a definition
++// of the template, which broke.
++
++/* { dg-do compile } */
++
++struct BadgerBuf
++{
++ void ReadPod();
++ template<class B>
++ void ReadPod();
++};
++
++void BadgerBuf::ReadPod ()
++ { ReadPod<int> (); }
+--- gcc-3.2.2/gcc/testsuite/g++.dg/template/member3.C.c++-classfn-member-template 2003-04-02 11:14:29.000000000 +0200
++++ gcc-3.2.2/gcc/testsuite/g++.dg/template/member3.C 2003-04-02 11:14:29.000000000 +0200
+@@ -0,0 +1,28 @@
++// PR c++/10265
++// Bug: we were treating the definition of the non-template as a definition
++// of the template, which broke.
++
++/* { dg-do compile } */
++
++struct A {
++ template<class T> void f();
++ void f();
++};
++
++template<class T> void A::f() { }
++void A::f() { }
++
++struct B {
++ template<class T> void f() { }
++ void f() { }
++};
++
++int main()
++{
++ A a;
++ a.f();
++ a.f<int>();
++ B b;
++ b.f();
++ b.f<int>();
++}
+--- gcc-3.2.2/gcc/testsuite/g++.old-deja/g++.mike/err1.C.c++-classfn-member-template 1998-12-16 22:44:46.000000000 +0100
++++ gcc-3.2.2/gcc/testsuite/g++.old-deja/g++.mike/err1.C 2003-04-02 12:47:12.000000000 +0200
+@@ -2,7 +2,7 @@
+
+ struct gorf {
+ int stuff;
+- void snarf();
++ void snarf(); // ERROR -
+ };
+
+ template <class T> void gorf::snarf() { return; } // ERROR -
diff --git a/sys-devel/gcc/files/3.2.3/gcc32-mklibgcc-serialize-crtfiles.patch b/sys-devel/gcc/files/3.2.3/gcc32-mklibgcc-serialize-crtfiles.patch
new file mode 100644
index 0000000..42db8fd
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc32-mklibgcc-serialize-crtfiles.patch
@@ -0,0 +1,27 @@
+--- gcc-3.2.2/gcc/mklibgcc.in.mklibgcc-serialize-crtfiles 2003-02-04 05:04:51.000000000 -0500
++++ gcc-3.2.2/gcc/mklibgcc.in 2003-03-16 18:01:48.000000000 -0500
+@@ -404,6 +404,9 @@ echo ' if [ -d $$d ]; then true; else
+ echo ' done'
+ echo ' if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi'
+
++# serialize build, since they may have to generate a new c-parse.y but
++# two jobs could be started in parallel thus colliding
++prev_out=""
+ for f in $EXTRA_MULTILIB_PARTS; do
+ for ml in $MULTILIBS; do
+ dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
+@@ -418,12 +421,13 @@ for f in $EXTRA_MULTILIB_PARTS; do
+ *) targ=$out ;;
+ esac
+
+- echo $out: stmp-dirs
++ echo $out: stmp-dirs $prev_out
+ echo " $make_compile" \\
+ echo ' LIBGCC2_CFLAGS="$(LIBGCC2_CFLAGS)' $flags '" ' \\
+ echo ' MULTILIB_CFLAGS="'$flags'"' T=$t $targ
+
+ all="$all $out"
++ prev_out="$out"
+ done
+ done
+
diff --git a/sys-devel/gcc/files/3.2.3/gcc323-gentoo-branding.patch b/sys-devel/gcc/files/3.2.3/gcc323-gentoo-branding.patch
new file mode 100644
index 0000000..65fc1b5
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc323-gentoo-branding.patch
@@ -0,0 +1,42 @@
+diff -Naurp gcc-3.2.3.orig/gcc/ada/gnatvsn.ads gcc-3.2.3/gcc/ada/gnatvsn.ads
+--- gcc-3.2.3.orig/gcc/ada/gnatvsn.ads 2003-04-22 02:16:06.000000000 -0400
++++ gcc-3.2.3/gcc/ada/gnatvsn.ads 2003-04-26 12:20:22.000000000 -0400
+@@ -38,7 +38,7 @@
+
+ package Gnatvsn is
+
+- Gnat_Version_String : constant String := "3.2.3 20030422 (release)";
++ Gnat_Version_String : constant String := "3.2.3 20030422 (Gentoo 1.4)";
+ -- Version output when GNAT (compiler), or its related tools, including
+ -- GNATBIND, GNATCHOP, GNATFIND, GNATLINK, GNATMAKE, GNATXREF, are run
+ -- (with appropriate verbose option switch set).
+diff -Naurp gcc-3.2.3.orig/gcc/f/version.c gcc-3.2.3/gcc/f/version.c
+--- gcc-3.2.3.orig/gcc/f/version.c 2003-04-22 02:16:09.000000000 -0400
++++ gcc-3.2.3/gcc/f/version.c 2003-04-26 12:25:38.000000000 -0400
+@@ -1,4 +1,4 @@
+ #include "ansidecl.h"
+ #include "f/version.h"
+
+-const char *const ffe_version_string = "3.2.3 20030422 (release)";
++const char *const ffe_version_string = "3.2.3 20030422 (Gentoo Linux 1.4 @PV@)";
+diff -Naurp gcc-3.2.3.orig/gcc/system.h gcc-3.2.3/gcc/system.h
+--- gcc-3.2.3.orig/gcc/system.h 2003-03-30 20:14:02.000000000 -0500
++++ gcc-3.2.3/gcc/system.h 2003-04-26 12:24:55.000000000 -0400
+@@ -26,7 +26,7 @@ Software Foundation, 59 Temple Place - S
+ /* This is the location of the online document giving information how
+ to report bugs. If you change this string, also check for strings
+ not under control of the preprocessor. */
+-#define GCCBUGURL "<URL:http://gcc.gnu.org/bugs.html>"
++#define GCCBUGURL "<URL:http://bugs.gentoo.org/>"
+
+ /* We must include stdarg.h/varargs.h before stdio.h. */
+ #ifdef ANSI_PROTOTYPES
+diff -Naurp gcc-3.2.3.orig/gcc/version.c gcc-3.2.3/gcc/version.c
+--- gcc-3.2.3.orig/gcc/version.c 2003-04-22 02:16:03.000000000 -0400
++++ gcc-3.2.3/gcc/version.c 2003-04-26 12:25:28.000000000 -0400
+@@ -1,4 +1,4 @@
+ #include "ansidecl.h"
+ #include "version.h"
+
+-const char *const version_string = "3.2.3";
++const char *const version_string = "3.2.3 20030422 (Gentoo Linux 1.4 @PV@)";
diff --git a/sys-devel/gcc/files/3.2.3/gcc323-hppa-default_assemble_visibility.patch b/sys-devel/gcc/files/3.2.3/gcc323-hppa-default_assemble_visibility.patch
new file mode 100644
index 0000000..d968487
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc323-hppa-default_assemble_visibility.patch
@@ -0,0 +1,17 @@
+diff -u -r -N gcc-3.2.3.orig/gcc/output.h gcc-3.2.3/gcc/output.h
+--- gcc-3.2.3.orig/gcc/output.h 2003-07-14 17:55:33.000000000 +0200
++++ gcc-3.2.3/gcc/output.h 2003-07-14 17:58:16.000000000 +0200
+@@ -257,8 +257,13 @@
+
+ extern void assemble_alias PARAMS ((tree, tree));
+
++#endif
++
++/* hppa breaks when this is put into TREE_CODE */
+ extern void default_assemble_visibility PARAMS ((tree, const char *));
+
++#ifdef TREE_CODE
++
+ /* Output a string of literal assembler code
+ for an `asm' keyword used between functions. */
+ extern void assemble_asm PARAMS ((tree));
diff --git a/sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch b/sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch
new file mode 100644
index 0000000..507d42f
--- /dev/null
+++ b/sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch
@@ -0,0 +1,22 @@
+--- configure.in.old 2004-06-26 07:01:06.000000000 +0200
++++ configure.in 2004-06-26 07:02:55.000000000 +0200
+@@ -52,8 +52,7 @@
+ host_tools="texinfo byacc flex bison binutils ld gas gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool grep diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils snavigator libtool gettext zip fastjar"
+
+ # libgcj represents the runtime libraries only used by gcj.
+-libgcj="target-libffi \
+- target-boehm-gc \
++libgcj="target-boehm-gc \
+ target-zlib \
+ target-qthreads \
+ target-libjava"
+@@ -66,7 +65,8 @@
+ target-newlib \
+ ${libstdcxx_version} \
+ target-libf2c \
+- ${libgcj}
++ ${libgcj} \
++ target-libffi \
+ target-libobjc"
+
+ # these tools are built using the target libs, and are intended to run only
diff --git a/sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch b/sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch
new file mode 100644
index 0000000..ff9b42b
--- /dev/null
+++ b/sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch
@@ -0,0 +1,62 @@
+Some notes on the 'bootstrap with or without libc headers' debate:
+http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html
+http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html
+
+--- gcc/configure.in
++++ gcc/configure.in
+@@ -1276,8 +1276,9 @@
+ # This prevents libgcc2 from containing any code which requires libc
+ # support.
+ inhibit_libc=
+-if { test x$host != x$target && test "x$with_headers" = x &&
+- test "x$with_sysroot" = x ; } || test x$with_newlib = xyes ; then
++if { { test x$host != x$target && test "x$with_sysroot" = x ; } ||
++ test x$with_newlib = xyes ; } &&
++ { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then
+ inhibit_libc=-Dinhibit_libc
+ fi
+ AC_SUBST(inhibit_libc)
+--- gcc/configure
++++ gcc/configure
+@@ -1276,8 +1276,9 @@
+ # This prevents libgcc2 from containing any code which requires libc
+ # support.
+ inhibit_libc=
+-if { test x$host != x$target && test "x$with_headers" = x &&
+- test "x$with_sysroot" = x ; } || test x$with_newlib = xyes ; then
++if { { test x$host != x$target && test "x$with_sysroot" = x ; } ||
++ test x$with_newlib = xyes ; } &&
++ { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then
+ inhibit_libc=-Dinhibit_libc
+ fi
+ AC_SUBST(inhibit_libc)
+--- gcc/config/alpha/linux.h
++++ gcc/config/alpha/linux.h
+@@ -72,6 +72,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ #include <signal.h>
+ #include <sys/ucontext.h>
+@@ -121,3 +122,4 @@
+ (FS)->retaddr_column = 64; \
+ goto SUCCESS; \
+ } while (0)
++#endif /* inhibit_libc */
+--- gcc/config/i386/linux.h
++++ gcc/config/i386/linux.h
+@@ -240,6 +240,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ /* There's no sys/ucontext.h for some (all?) libc1, so no
+ signal-turned-exceptions for them. There's also no configure-run for
+@@ -304,3 +305,4 @@
+ } while (0)
+ #endif /* not USE_GNULIBC_1 */
+ #endif /* IN_LIBGCC2 */
++#endif /* inhibit_libc */
diff --git a/sys-devel/gcc/files/3.4.0/gcc-3.4.0-cc1-no-stack-protector.patch b/sys-devel/gcc/files/3.4.0/gcc-3.4.0-cc1-no-stack-protector.patch
new file mode 100644
index 0000000..72bce28
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.0/gcc-3.4.0-cc1-no-stack-protector.patch
@@ -0,0 +1,11 @@
+--- gcc/Makefile.in.mps 2004-06-01 22:06:17.000000000 +0200
++++ gcc/Makefile.in 2004-06-01 22:06:56.000000000 +0200
+@@ -1845,7 +1845,7 @@ $(out_object_file): $(out_file) $(CONFIG
+ output.h $(INSN_ATTR_H) $(SYSTEM_H) toplev.h $(TARGET_H) libfuncs.h \
+ $(TARGET_DEF_H) function.h sched-int.h $(TM_P_H) $(EXPR_H) $(OPTABS_H) \
+ langhooks.h
+- $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
++ $(CC) -c $(ALL_CFLAGS) -fno-stack-protector $(ALL_CPPFLAGS) $(INCLUDES) \
+ $(out_file) $(OUTPUT_OPTION)
+
+ # Build auxiliary files that support ecoff format.
diff --git a/sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n32only.patch b/sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n32only.patch
new file mode 100644
index 0000000..6fba12b
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n32only.patch
@@ -0,0 +1,17 @@
+Index: gcc/config/mips/t-linux64
+===================================================================
+RCS file: /cvsroot/gcc/gcc/gcc/config/mips/t-linux64,v
+retrieving revision 1.3
+diff -u -r1.3 t-linux64
+--- gcc/config/mips/t-linux64 4 Jun 2003 05:35:15 -0000 1.3
++++ gcc/config/mips/t-linux64 10 Aug 2004 18:26:26 -0000
+@@ -1,6 +1,6 @@
+-MULTILIB_OPTIONS = mabi=32/mabi=n32/mabi=64
+-MULTILIB_DIRNAMES = o32 32 64
+-MULTILIB_OSDIRNAMES = ../lib ../lib32 ../lib64
++MULTILIB_OPTIONS = mabi=n32
++MULTILIB_DIRNAMES =
++MULTILIB_OSDIRNAMES =
+
+ EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o
+
diff --git a/sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n64only.patch b/sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n64only.patch
new file mode 100644
index 0000000..81baf62
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.1/gcc-3.4.1-mips-n64only.patch
@@ -0,0 +1,17 @@
+Index: gcc/config/mips/t-linux64
+===================================================================
+RCS file: /cvsroot/gcc/gcc/gcc/config/mips/t-linux64,v
+retrieving revision 1.3
+diff -u -r1.3 t-linux64
+--- gcc/config/mips/t-linux64 4 Jun 2003 05:35:15 -0000 1.3
++++ gcc/config/mips/t-linux64 10 Aug 2004 18:26:53 -0000
+@@ -1,6 +1,6 @@
+-MULTILIB_OPTIONS = mabi=32/mabi=n32/mabi=64
+-MULTILIB_DIRNAMES = o32 32 64
+-MULTILIB_OSDIRNAMES = ../lib ../lib32 ../lib64
++MULTILIB_OPTIONS = mabi=n64
++MULTILIB_DIRNAMES =
++MULTILIB_OSDIRNAMES =
+
+ EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o
+
diff --git a/sys-devel/gcc/files/3.4.1/gcc-3.4.1-r2-gentoo-branding.patch b/sys-devel/gcc/files/3.4.1/gcc-3.4.1-r2-gentoo-branding.patch
new file mode 100644
index 0000000..88c2cfa
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.1/gcc-3.4.1-r2-gentoo-branding.patch
@@ -0,0 +1,17 @@
+--- gcc/version.c.old 2004-05-20 05:20:46.352804640 -0400
++++ gcc/version.c 2004-05-20 05:23:53.833303272 -0400
+@@ -5,7 +5,7 @@
+ please modify this string to indicate that, e.g. by putting your
+ organization's name in parentheses at the end of the string. */
+
+-const char version_string[] = "3.4.2 20040803 (prerelease)";
++const char version_string[] = "3.4.1 @GENTOO@";
+
+ /* This is the location of the online document giving instructions for
+ reporting bugs. If you distribute a modified version of GCC,
+@@ -14,4 +14,4 @@
+ forward us bugs reported to you, if you determine that they are
+ not bugs in your modifications.) */
+
+-const char bug_report_url[] = "<URL:http://gcc.gnu.org/bugs.html>";
++const char bug_report_url[] = "<URL:http://bugs.gentoo.org/>";
diff --git a/sys-devel/gcc/files/3.4.2/gcc-3.4.2-mips-ip28_cache_barriers-v4.patch b/sys-devel/gcc/files/3.4.2/gcc-3.4.2-mips-ip28_cache_barriers-v4.patch
new file mode 100644
index 0000000..02edc37
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.2/gcc-3.4.2-mips-ip28_cache_barriers-v4.patch
@@ -0,0 +1,366 @@
+diff -Naurp gcc-3.4.6.orig/gcc/config/mips/mips.c gcc-3.4.6/gcc/config/mips/mips.c
+--- gcc-3.4.6.orig/gcc/config/mips/mips.c 2005-07-31 04:35:15.000000000 -0400
++++ gcc-3.4.6/gcc/config/mips/mips.c 2006-04-08 17:41:44.000000000 -0400
+@@ -8801,6 +8801,11 @@ mips_reorg (void)
+ dbr_schedule (get_insns (), rtl_dump_file);
+ mips_avoid_hazards ();
+ }
++ if (mips_r10k_cache_barrier)
++ {
++ static int r10k_insert_cache_barriers (void);
++ r10k_insert_cache_barriers ();
++ }
+ }
+
+ /* We need to use a special set of functions to handle hard floating
+@@ -9661,5 +9666,5 @@ irix_section_type_flags (tree decl, cons
+ }
+
+ #endif /* TARGET_IRIX */
+-
++#include "r10k-cacheb.c"
+ #include "gt-mips.h"
+diff -Naurp gcc-3.4.6.orig/gcc/config/mips/mips.h gcc-3.4.6/gcc/config/mips/mips.h
+--- gcc-3.4.6.orig/gcc/config/mips/mips.h 2004-07-14 20:42:49.000000000 -0400
++++ gcc-3.4.6/gcc/config/mips/mips.h 2006-04-08 17:41:01.000000000 -0400
+@@ -122,6 +122,7 @@ extern const char *mips_tune_string;
+ extern const char *mips_isa_string; /* for -mips{1,2,3,4} */
+ extern const char *mips_abi_string; /* for -mabi={32,n32,64} */
+ extern const char *mips_cache_flush_func;/* for -mflush-func= and -mno-flush-func */
++extern const char *mips_r10k_cache_barrier;/* for -mr10k-cache-barrier[={1,2}] */
+ extern int mips_string_length; /* length of strings for mips16 */
+ extern const struct mips_cpu_info mips_cpu_info_table[];
+ extern const struct mips_cpu_info *mips_arch_info;
+@@ -752,6 +753,10 @@ extern const struct mips_cpu_info *mips_
+ N_("Don't call any cache flush functions"), 0}, \
+ { "flush-func=", &mips_cache_flush_func, \
+ N_("Specify cache flush function"), 0}, \
++ { "r10k-cache-barrier", &mips_r10k_cache_barrier, \
++ N_("[=1|2]\tGenerate cache barriers for SGI Indigo2/O2 R10k"), 0}, \
++ { "ip28-cache-barrier", &mips_r10k_cache_barrier, \
++ N_(""), 0}, \
+ }
+
+ /* This is meant to be redefined in the host dependent files. */
+diff -Naurp gcc-3.4.6.orig/gcc/config/mips/r10k-cacheb.c gcc-3.4.6/gcc/config/mips/r10k-cacheb.c
+--- gcc-3.4.6.orig/gcc/config/mips/r10k-cacheb.c 1969-12-31 19:00:00.000000000 -0500
++++ gcc-3.4.6/gcc/config/mips/r10k-cacheb.c 2006-04-08 17:41:22.000000000 -0400
+@@ -0,0 +1,318 @@
++/* Subroutines used for MIPS code generation: generate cache-barriers
++ for SiliconGraphics IP28 and IP32/R10000 kernel-code.
++ Copyright (C) 2005,2006 peter fuerst, pf@net.alphadv.de.
++
++This file is intended to become part of GCC.
++
++This file is free software; you can redistribute it and/or modify it
++under the terms of the GNU General Public License as published
++by the Free Software Foundation; either version 2, or (at your
++option) any later version.
++
++This file is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GCC; see the file COPYING. If not, write to the
++Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
++MA 02110-1301 USA. */
++
++
++#define ASM_R10K_CACHE_BARRIER "cache 0x14,0($sp)"
++
++/* Some macros, ported back from 4.x ... */
++
++#define CALL_P(X) (GET_CODE (X) == CALL_INSN)
++#define MEM_P(X) (GET_CODE (X) == MEM)
++#define NONJUMP_INSN_P(X) (GET_CODE (X) == INSN)
++
++#define SEQ_BEGIN(insn) \
++ (INSN_P (insn) && GET_CODE (PATTERN (insn)) == SEQUENCE \
++ ? XVECEXP (PATTERN (insn), 0, 0) \
++ : (insn))
++
++#define SEQ_END(insn) \
++ (INSN_P (insn) && GET_CODE (PATTERN (insn)) == SEQUENCE \
++ ? XVECEXP (PATTERN (insn), 0, XVECLEN (PATTERN (insn), 0) - 1) \
++ : (insn))
++
++#define FOR_EACH_SUBINSN(subinsn, insn) \
++ for ((subinsn) = SEQ_BEGIN (insn); \
++ (subinsn) != NEXT_INSN (SEQ_END (insn)); \
++ (subinsn) = NEXT_INSN (subinsn))
++
++
++/* Nonzero means generate special cache barriers to inhibit speculative
++ stores which might endanger cache coherency or reference invalid
++ addresses (especially on SGI's Indigo2 R10k (IP28)). */
++const char *mips_r10k_cache_barrier;
++static int TARGET_R10K_SPECEX;
++
++/* Check, whether an instruction is a possibly harmful store instruction,
++ i.e. a store which might cause damage, if speculatively executed. */
++
++/* Return truth value whether the expression `*memx' instantiates
++ (mem:M (not (stackpointer_address or constant))). */
++
++static int
++is_stack_pointer (rtx *x, void *data)
++{
++ return (*x == stack_pointer_rtx);
++}
++
++static int
++check_p_mem_expr (rtx *memx, void *data)
++{
++ if (!MEM_P (*memx) || for_each_rtx (memx, is_stack_pointer, 0))
++ return 0;
++
++ /* Stores/Loads to/from constant addresses can be considered
++ harmless, since:
++ 1) the address is always valid, even when taken speculatively.
++ 2a) the location is (hopefully) never used as a dma-target, thus
++ there is no danger of cache-inconsistency.
++ 2b) uncached loads/stores are guaranteed to be non-speculative. */
++ if ( CONSTANT_P(XEXP (*memx, 0)) )
++ return 0;
++
++ return 1;
++}
++
++/* Return truth value whether we find (set (mem:M (non_stackpointer_address)
++ ...)) in instruction-pattern `body'.
++ Here we assume, that addressing with the stackpointer accesses neither
++ uncached-aliased nor invalid memory.
++ (May be, this applies to the global pointer and frame pointer also,
++ but its saver not to assume it. And probably it's not worthwile to
++ regard these registers)
++
++ Speculative loads from invalid addresses also cause bus errors...
++ So check for (set (reg:M ...) (mem:M (non_stackpointer_address)))
++ too, unless there is an enhanced bus-error handler. */
++
++static int
++check_p_pattern_for_store (rtx *body, void *data)
++{
++ if (*body && GET_CODE (*body) == SET)
++ {
++ /* Cache-barriers for SET_SRC may be requested as well. */
++ if (!(TARGET_R10K_SPECEX & 2))
++ body = &SET_DEST(*body);
++
++ if (for_each_rtx (body, check_p_mem_expr, 0))
++ return 1;
++
++ /* Don't traverse sub-expressions again. */
++ return -1;
++ }
++ return 0;
++}
++
++static int
++strmatch (const char *txt, const char *match)
++{
++ return !strncmp(txt, match, strlen (match));
++}
++
++/* Check for (ins (set (mem:M (dangerous_address)) ...)) or end of the
++ current basic block in instruction `insn'.
++ `state': (internal) recursion-counter and delayslot-flag
++ Criteria to recognize end-of/next basic-block are reduplicated here
++ from final_scan_insn.
++ return >0: `insn' is critical.
++ return <0: `insn' is at end of current basic-block.
++ return 0: `insn' can be ignored. */
++
++static int
++check_insn_for_store (int state, rtx insn)
++{
++ rtx body;
++
++ if (INSN_DELETED_P (insn))
++ return 0;
++
++ if (LABEL_P (insn))
++ return -1;
++
++ if (CALL_P (insn) || JUMP_P (insn) || NONJUMP_INSN_P (insn))
++ {
++ body = PATTERN (insn);
++ if (GET_CODE (body) == SEQUENCE)
++ {
++ /* A delayed-branch sequence. */
++ rtx insq;
++ FOR_EACH_SUBINSN(insq, insn)
++ if (! INSN_DELETED_P (insq))
++ {
++ /* |1: delay-slot completely contained in sequence. */
++ if (check_insn_for_store (8+state|1, insq) > 0)
++ return 1;
++ }
++ /* Following a (conditional) branch sequence, we have a new
++ basic block. */
++ if (JUMP_P (SEQ_BEGIN(insn)))
++ return -1;
++ /* Handle a call sequence like a conditional branch sequence. */
++ if (CALL_P (SEQ_BEGIN(insn)))
++ return -1;
++ }
++ if (GET_CODE (body) == PARALLEL)
++ if (for_each_rtx (&body, check_p_pattern_for_store, 0))
++ return 1;
++
++ /* Now, only a `simple' INSN or JUMP_INSN remains to be checked. */
++ if (NONJUMP_INSN_P (insn))
++ {
++ /* Since we don't know what's inside, we must take inline
++ assembly to be dangerous. */
++ if (GET_CODE (body) == ASM_INPUT)
++ {
++ const char *t = XSTR (body, 0);
++ if (t && !strmatch(t, ASM_R10K_CACHE_BARRIER))
++ return 1;
++ }
++
++ if (check_p_pattern_for_store (&body, 0) > 0)
++ return 1;
++ }
++ /* Handle a CALL_INSN instruction like a conditional branch. */
++ if (JUMP_P (insn) || CALL_P (insn))
++ {
++ /* Following a (conditional) branch, we have a new basic block. */
++ /* But check insn(s) in delay-slot first. If we could know in
++ advance that this jump is in `.reorder' mode, where gas will
++ insert a `nop' into the delay-slot, we could skip this test.
++ Since we don't know, always assume `.noreorder', sometimes
++ emitting a cache-barrier, that isn't needed. */
++ /* But if we are here recursively, already checking a (pseudo-)
++ delay-slot, we are done. */
++ if ( !(state & 1) )
++ for (insn = NEXT_INSN (insn); insn; insn = NEXT_INSN (insn))
++ {
++ if (LABEL_P (insn) || CALL_P (insn) || JUMP_P (insn))
++ /* Not in delay-slot at all. */
++ break;
++
++ if (NONJUMP_INSN_P (insn))
++ {
++ if (GET_CODE (PATTERN (insn)) == SEQUENCE)
++ /* Not in delay-slot at all. */
++ break;
++
++ if (check_insn_for_store (8+state|1, insn) > 0)
++ return 1;
++ /* We're done anyway. */
++ break;
++ }
++ /* skip NOTE,... */;
++ }
++ return -1;
++ }
++ }
++ return 0;
++}
++
++
++/* Scan a basic block, starting with `insn', for a possibly harmful store
++ instruction. If found, output a cache barrier at the start of this
++ block. */
++
++static int
++bb_insert_store_cache_barrier (rtx head, rtx nxtb)
++{
++ rtx insn = head;
++
++ if (!insn || insn == nxtb)
++ return 0;
++
++ while ((insn = NEXT_INSN (insn)) && insn != nxtb)
++ {
++ int found;
++
++ if (NOTE_INSN_BASIC_BLOCK_P(insn)) /* See scan_1_bb_for_store() */
++ break;
++
++ found = check_insn_for_store (0, insn);
++ if (found < 0)
++ break;
++ if (found > 0)
++ {
++ /* found critical store instruction */
++ insn = gen_rtx_ASM_INPUT (VOIDmode,
++ ASM_R10K_CACHE_BARRIER "\t"
++ ASM_COMMENT_START " Cache Barrier");
++ /* Here we rely on the assumption, that an explicit delay-slot
++ - if any - is already embedded (in a sequence) in 'head'! */
++ insn = emit_insn_after (insn, head);
++ return 1;
++ }
++ }
++ return 0;
++}
++
++
++/* Scan one basic block for a possibly harmful store instruction.
++ If found, insert a cache barrier at the start of this block,
++ return number of inserted cache_barriers. */
++
++static int
++scan_1_bb_for_store (rtx head, rtx end)
++{
++ rtx nxtb;
++ int count;
++
++ /* Note: 'end' is not necessarily reached from 'head' (hidden in
++ SEQUENCE, PARALLEL), but 'nxtb' is. */
++ nxtb = NEXT_INSN (end);
++
++ /* Each basic block starts with zero or more CODE_LABEL(s), followed
++ by one NOTE_INSN_BASIC_BLOCK.
++ Note: bb_head may equal next_insn(bb_end) already ! */
++ while (head && head != nxtb && LABEL_P (head))
++ head = NEXT_INSN (head);
++
++ if (!head || head == nxtb)
++ return 0;
++
++ /* Handle the basic block itself, at most up to next CALL_INSN. */
++ count = bb_insert_store_cache_barrier (head, nxtb);
++
++ /* 1) Handle any CALL_INSN instruction like a conditional branch.
++ 2) There may be "basic blocks" in the list, which are no basic blocks
++ at all. (containing CODE_LABELs in the body or gathering several
++ other basic blocks (e.g. bb5 containing bb6,bb7,bb8)). */
++
++ while ((head = NEXT_INSN (head)) && head != nxtb)
++ {
++ if (INSN_DELETED_P (head))
++ continue;
++
++ /* Later we'll be called again for this bb on its own. */
++ if (NOTE_INSN_BASIC_BLOCK_P(head))
++ break;
++
++ if (CALL_P (SEQ_BEGIN (head)) || LABEL_P (head))
++ count += bb_insert_store_cache_barrier (head, nxtb);
++ }
++ return count;
++}
++
++static int
++r10k_insert_cache_barriers (void)
++{
++ if (mips_r10k_cache_barrier)
++ {
++ basic_block bb;
++
++ const char *s = mips_r10k_cache_barrier;
++ /* Default is to protect stores (only). */
++ TARGET_R10K_SPECEX = 1 | strtol(*s != '=' ? s:s+1, (char**)0, 0);
++
++ FOR_EACH_BB (bb)
++ if (0 <= bb->index)
++ scan_1_bb_for_store (BB_HEAD (bb), BB_END (bb));
++ }
++ return 0;
++}
diff --git a/sys-devel/gcc/files/3.4.2/gcc-3.4.x-mips-add-march-r10k.patch b/sys-devel/gcc/files/3.4.2/gcc-3.4.x-mips-add-march-r10k.patch
new file mode 100644
index 0000000..d02a5e9
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.2/gcc-3.4.x-mips-add-march-r10k.patch
@@ -0,0 +1,460 @@
+diff -Naurp gcc-3.4.1.orig/gcc/config/mips/mips.c gcc-3.4.1/gcc/config/mips/mips.c
+--- gcc-3.4.1.orig/gcc/config/mips/mips.c 2004-06-28 09:58:42.000000000 -0400
++++ gcc-3.4.1/gcc/config/mips/mips.c 2004-08-09 22:37:21.983939192 -0400
+@@ -707,6 +707,7 @@ const struct mips_cpu_info mips_cpu_info
+
+ /* MIPS IV */
+ { "r8000", PROCESSOR_R8000, 4 },
++ { "r10000", PROCESSOR_R10000, 4 },
+ { "vr5000", PROCESSOR_R5000, 4 },
+ { "vr5400", PROCESSOR_R5400, 4 },
+ { "vr5500", PROCESSOR_R5500, 4 },
+@@ -9401,6 +9402,9 @@ mips_issue_rate (void)
+ {
+ switch (mips_tune)
+ {
++ case PROCESSOR_R10000:
++ return 4;
++
+ case PROCESSOR_R5400:
+ case PROCESSOR_R5500:
+ case PROCESSOR_R7000:
+diff -Naurp gcc-3.4.1.orig/gcc/config/mips/mips.h gcc-3.4.1/gcc/config/mips/mips.h
+--- gcc-3.4.1.orig/gcc/config/mips/mips.h 2004-03-11 16:52:33.000000000 -0500
++++ gcc-3.4.1/gcc/config/mips/mips.h 2004-08-09 01:02:35.042149496 -0400
+@@ -66,6 +66,7 @@ enum processor_type {
+ PROCESSOR_R7000,
+ PROCESSOR_R8000,
+ PROCESSOR_R9000,
++ PROCESSOR_R10000,
+ PROCESSOR_SB1,
+ PROCESSOR_SR71000
+ };
+diff -Naurp gcc-3.4.1.orig/gcc/config/mips/mips.md gcc-3.4.1/gcc/config/mips/mips.md
+--- gcc-3.4.1.orig/gcc/config/mips/mips.md 2004-06-25 03:35:30.000000000 -0400
++++ gcc-3.4.1/gcc/config/mips/mips.md 2004-08-09 04:55:10.158649320 -0400
+@@ -103,6 +103,7 @@
+ ;; arith integer arithmetic instruction
+ ;; darith double precision integer arithmetic instructions
+ ;; const load constant
++;; shift integer shift
+ ;; imul integer multiply
+ ;; imadd integer multiply-add
+ ;; idiv integer divide
+@@ -120,7 +121,7 @@
+ ;; multi multiword sequence (or user asm statements)
+ ;; nop no operation
+ (define_attr "type"
+- "unknown,branch,jump,call,load,store,prefetch,prefetchx,move,condmove,xfer,hilo,const,arith,darith,imul,imadd,idiv,icmp,fadd,fmul,fmadd,fdiv,fabs,fneg,fcmp,fcvt,fsqrt,frsqrt,multi,nop"
++ "unknown,branch,jump,call,load,store,prefetch,prefetchx,move,condmove,xfer,hilo,const,arith,darith,shift,imul,imadd,idiv,icmp,fadd,fmul,fmadd,fdiv,fabs,fneg,fcmp,fcvt,fsqrt,frsqrt,multi,nop"
+ (cond [(eq_attr "jal" "!unset") (const_string "call")
+ (eq_attr "got" "load") (const_string "load")]
+ (const_string "unknown")))
+@@ -214,7 +215,7 @@
+ ;; Attribute describing the processor. This attribute must match exactly
+ ;; with the processor_type enumeration in mips.h.
+ (define_attr "cpu"
+- "default,4kc,5kc,20kc,m4k,r3000,r3900,r6000,r4000,r4100,r4111,r4120,r4300,r4600,r4650,r5000,r5400,r5500,r7000,r8000,r9000,sb1,sr71000"
++ "default,4kc,5kc,20kc,m4k,r3000,r3900,r6000,r4000,r4100,r4111,r4120,r4300,r4600,r4650,r5000,r5400,r5500,r7000,r8000,r9000,r10000,sb1,sr71000"
+ (const (symbol_ref "mips_tune")))
+
+ ;; The type of hardware hazard associated with this instruction.
+@@ -305,12 +306,12 @@
+
+ (define_function_unit "memory" 1 0
+ (and (eq_attr "type" "load")
+- (eq_attr "cpu" "!r3000,r3900,r4600,r4650,r4100,r4120,r4300,r5000"))
++ (eq_attr "cpu" "!r3000,r3900,r4600,r4650,r4100,r4120,r4300,r5000,r10000"))
+ 3 0)
+
+ (define_function_unit "memory" 1 0
+ (and (eq_attr "type" "load")
+- (eq_attr "cpu" "r3000,r3900,r4600,r4650,r4100,r4120,r4300,r5000"))
++ (eq_attr "cpu" "r3000,r3900,r4600,r4650,r4100,r4120,r4300,r5000,r10000"))
+ 2 0)
+
+ (define_function_unit "memory" 1 0 (eq_attr "type" "store") 1 0)
+@@ -323,7 +324,7 @@
+
+ (define_function_unit "imuldiv" 1 0
+ (and (eq_attr "type" "imul,imadd")
+- (eq_attr "cpu" "!r3000,r3900,r4000,r4600,r4650,r4100,r4120,r4300,r5000"))
++ (eq_attr "cpu" "!r3000,r3900,r4000,r4600,r4650,r4100,r4120,r4300,r5000,r10000"))
+ 17 17)
+
+ ;; On them mips16, we want to stronly discourage a mult from appearing
+@@ -375,7 +376,7 @@
+
+ (define_function_unit "imuldiv" 1 0
+ (and (eq_attr "type" "idiv")
+- (eq_attr "cpu" "!r3000,r3900,r4000,r4600,r4650,r4100,r4120,r4300,r5000"))
++ (eq_attr "cpu" "!r3000,r3900,r4000,r4600,r4650,r4100,r4120,r4300,r5000,r10000"))
+ 38 38)
+
+ (define_function_unit "imuldiv" 1 0
+@@ -424,6 +425,40 @@
+ (and (eq_attr "mode" "DI") (eq_attr "cpu" "r5000")))
+ 68 68)
+
++;; R10000 has 2 integer ALUs
++(define_function_unit "alu" 2 0
++ (and (eq_attr "type" "arith,darith,shift")
++ (eq_attr "cpu" "r10000"))
++ 1 0)
++
++;; Only ALU1 can do shifts. We model shifts as an additional unit
++(define_function_unit "alu1" 1 0
++ (and (eq_attr "type" "shift")
++ (eq_attr "cpu" "r10000"))
++ 1 0)
++
++;; only ALU2 does multiplications and divisions
++(define_function_unit "alu2" 1 0
++ (and (eq_attr "type" "imul")
++ (and (eq_attr "mode" "SI") (eq_attr "cpu" "r10000")))
++ 6 6)
++
++(define_function_unit "alu2" 1 0
++ (and (eq_attr "type" "imul")
++ (and (eq_attr "mode" "DI") (eq_attr "cpu" "r10000")))
++ 10 10)
++
++(define_function_unit "alu2" 1 0
++ (and (eq_attr "type" "idiv")
++ (and (eq_attr "mode" "SI") (eq_attr "cpu" "r10000")))
++ 35 35)
++
++(define_function_unit "alu2" 1 0
++ (and (eq_attr "type" "idiv")
++ (and (eq_attr "mode" "DI") (eq_attr "cpu" "r10000")))
++ 67 67)
++
++
+ ;; The R4300 does *NOT* have a separate Floating Point Unit, instead
+ ;; the FP hardware is part of the normal ALU circuitry. This means FP
+ ;; instructions affect the pipe-line, and no functional unit
+@@ -432,11 +467,11 @@
+ ;; instructions to be processed in the "imuldiv" unit.
+
+ (define_function_unit "adder" 1 1
+- (and (eq_attr "type" "fcmp") (eq_attr "cpu" "!r3000,r3900,r6000,r4300,r5000"))
++ (and (eq_attr "type" "fcmp") (eq_attr "cpu" "!r3000,r3900,r6000,r4300,r5000,r10000"))
+ 3 0)
+
+ (define_function_unit "adder" 1 1
+- (and (eq_attr "type" "fcmp") (eq_attr "cpu" "r3000,r3900,r6000"))
++ (and (eq_attr "type" "fcmp") (eq_attr "cpu" "r3000,r3900,r6000,r10000"))
+ 2 0)
+
+ (define_function_unit "adder" 1 1
+@@ -444,7 +479,7 @@
+ 1 0)
+
+ (define_function_unit "adder" 1 1
+- (and (eq_attr "type" "fadd") (eq_attr "cpu" "!r3000,r3900,r6000,r4300"))
++ (and (eq_attr "type" "fadd") (eq_attr "cpu" "!r3000,r3900,r6000,r4300,r10000"))
+ 4 0)
+
+ (define_function_unit "adder" 1 1
+@@ -456,6 +491,10 @@
+ 3 0)
+
+ (define_function_unit "adder" 1 1
++ (and (eq_attr "type" "fadd,fmadd") (eq_attr "cpu" "r10000"))
++ 2 0)
++
++(define_function_unit "adder" 1 1
+ (and (eq_attr "type" "fabs,fneg")
+ (eq_attr "cpu" "!r3000,r3900,r4600,r4650,r4300,r5000"))
+ 2 0)
+@@ -467,7 +506,7 @@
+ (define_function_unit "mult" 1 1
+ (and (eq_attr "type" "fmul")
+ (and (eq_attr "mode" "SF")
+- (eq_attr "cpu" "!r3000,r3900,r6000,r4600,r4650,r4300,r5000")))
++ (eq_attr "cpu" "!r3000,r3900,r6000,r4600,r4650,r4300,r5000,r10000")))
+ 7 0)
+
+ (define_function_unit "mult" 1 1
+@@ -487,7 +526,7 @@
+
+ (define_function_unit "mult" 1 1
+ (and (eq_attr "type" "fmul")
+- (and (eq_attr "mode" "DF") (eq_attr "cpu" "!r3000,r3900,r6000,r4300,r5000")))
++ (and (eq_attr "mode" "DF") (eq_attr "cpu" "!r3000,r3900,r6000,r4300,r5000,r10000")))
+ 8 0)
+
+ (define_function_unit "mult" 1 1
+@@ -500,10 +539,14 @@
+ (and (eq_attr "mode" "DF") (eq_attr "cpu" "r6000")))
+ 6 0)
+
++(define_function_unit "mult" 1 1
++ (and (eq_attr "type" "fmul,fmadd") (eq_attr "cpu" "r10000"))
++ 2 0)
++
+ (define_function_unit "divide" 1 1
+ (and (eq_attr "type" "fdiv")
+ (and (eq_attr "mode" "SF")
+- (eq_attr "cpu" "!r3000,r3900,r6000,r4600,r4650,r4300,r5000")))
++ (eq_attr "cpu" "!r3000,r3900,r6000,r4600,r4650,r4300,r5000,r10000")))
+ 23 0)
+
+ (define_function_unit "divide" 1 1
+@@ -529,7 +572,7 @@
+ (define_function_unit "divide" 1 1
+ (and (eq_attr "type" "fdiv")
+ (and (eq_attr "mode" "DF")
+- (eq_attr "cpu" "!r3000,r3900,r6000,r4600,r4650,r4300")))
++ (eq_attr "cpu" "!r3000,r3900,r6000,r4600,r4650,r4300,r10000")))
+ 36 0)
+
+ (define_function_unit "divide" 1 1
+@@ -547,10 +590,21 @@
+ (and (eq_attr "mode" "DF") (eq_attr "cpu" "r4600,r4650")))
+ 61 0)
+
++;; divisions keep multiplier busy on R10000
++(define_function_unit "mult" 1 1
++ (and (eq_attr "type" "fdiv")
++ (and (eq_attr "mode" "SF") (eq_attr "cpu" "r10000")))
++ 12 14)
++
++(define_function_unit "mult" 1 1
++ (and (eq_attr "type" "fdiv")
++ (and (eq_attr "mode" "DF") (eq_attr "cpu" "r10000")))
++ 19 21)
++
+ ;;; ??? Is this number right?
+ (define_function_unit "divide" 1 1
+ (and (eq_attr "type" "fsqrt,frsqrt")
+- (and (eq_attr "mode" "SF") (eq_attr "cpu" "!r4600,r4650,r4300,r5000")))
++ (and (eq_attr "mode" "SF") (eq_attr "cpu" "!r4600,r4650,r4300,r5000,r10000")))
+ 54 0)
+
+ (define_function_unit "divide" 1 1
+@@ -566,7 +620,7 @@
+ ;;; ??? Is this number right?
+ (define_function_unit "divide" 1 1
+ (and (eq_attr "type" "fsqrt,frsqrt")
+- (and (eq_attr "mode" "DF") (eq_attr "cpu" "!r4600,r4650,r4300,r5000")))
++ (and (eq_attr "mode" "DF") (eq_attr "cpu" "!r4600,r4650,r4300,r5000,r10000")))
+ 112 0)
+
+ (define_function_unit "divide" 1 1
+@@ -579,6 +633,17 @@
+ (and (eq_attr "mode" "DF") (eq_attr "cpu" "r5000")))
+ 36 0)
+
++;; sqrt is executed by multiplier on R10000
++(define_function_unit "mult" 1 1
++ (and (eq_attr "type" "fsqrt")
++ (and (eq_attr "mode" "SF") (eq_attr "cpu" "r10000")))
++ 18 20)
++
++(define_function_unit "mult" 1 1
++ (and (eq_attr "type" "fsqrt")
++ (and (eq_attr "mode" "DF") (eq_attr "cpu" "r10000")))
++ 33 35)
++
+ ;; R4300 FP instruction classes treated as part of the "imuldiv"
+ ;; functional unit:
+
+@@ -3157,7 +3222,7 @@ dsrl\t%3,%3,1\n\
+ "@
+ sll\t%0,%1,0
+ sw\t%1,%0"
+- [(set_attr "type" "darith,store")
++ [(set_attr "type" "shift,store")
+ (set_attr "mode" "SI")
+ (set_attr "extended_mips16" "yes,*")])
+
+@@ -3191,7 +3256,7 @@ dsrl\t%3,%3,1\n\
+ (match_operand:DI 2 "small_int" "I"))))]
+ "TARGET_64BIT && !TARGET_MIPS16 && INTVAL (operands[2]) >= 32"
+ "dsra\t%0,%1,%2"
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")])
+
+ (define_insn ""
+@@ -3200,7 +3265,7 @@ dsrl\t%3,%3,1\n\
+ (const_int 32))))]
+ "TARGET_64BIT && !TARGET_MIPS16"
+ "dsra\t%0,%1,32"
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")])
+
+
+@@ -5241,7 +5306,7 @@ dsrl\t%3,%3,1\n\
+
+ return "sll\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")])
+
+ (define_insn "ashlsi3_internal1_extend"
+@@ -5255,7 +5320,7 @@ dsrl\t%3,%3,1\n\
+
+ return "sll\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")])
+
+
+@@ -5273,7 +5338,7 @@ dsrl\t%3,%3,1\n\
+
+ return "sll\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")
+ (set_attr_alternative "length"
+ [(const_int 4)
+@@ -5374,7 +5439,7 @@ sll\t%L0,%L1,%2\n\
+ operands[2] = GEN_INT (INTVAL (operands[2]) & 0x1f);
+ return "sll\t%M0,%L1,%2\;move\t%L0,%.";
+ }
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr "length" "8")])
+
+@@ -5429,7 +5494,7 @@ sll\t%L0,%L1,%2\n\
+
+ return "sll\t%M0,%M1,%2\;srl\t%3,%L1,%4\;or\t%M0,%M0,%3\;sll\t%L0,%L1,%2";
+ }
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr "length" "16")])
+
+@@ -5513,7 +5578,7 @@ sll\t%L0,%L1,%2\n\
+
+ return "dsll\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")])
+
+ (define_insn ""
+@@ -5530,7 +5595,7 @@ sll\t%L0,%L1,%2\n\
+
+ return "dsll\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr_alternative "length"
+ [(const_int 4)
+@@ -5591,7 +5656,7 @@ sll\t%L0,%L1,%2\n\
+
+ return "sra\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")])
+
+ (define_insn "ashrsi3_internal2"
+@@ -5608,7 +5673,7 @@ sll\t%L0,%L1,%2\n\
+
+ return "sra\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")
+ (set_attr_alternative "length"
+ [(const_int 4)
+@@ -5705,7 +5770,7 @@ sra\t%M0,%M1,%2\n\
+ operands[2] = GEN_INT (INTVAL (operands[2]) & 0x1f);
+ return "sra\t%L0,%M1,%2\;sra\t%M0,%M1,31";
+ }
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr "length" "8")])
+
+@@ -5760,7 +5825,7 @@ sra\t%M0,%M1,%2\n\
+
+ return "srl\t%L0,%L1,%2\;sll\t%3,%M1,%4\;or\t%L0,%L0,%3\;sra\t%M0,%M1,%2";
+ }
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr "length" "16")])
+
+@@ -5844,7 +5909,7 @@ sra\t%M0,%M1,%2\n\
+
+ return "dsra\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")])
+
+ (define_insn ""
+@@ -5858,7 +5923,7 @@ sra\t%M0,%M1,%2\n\
+
+ return "dsra\t%0,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr_alternative "length"
+ [(const_int 4)
+@@ -5918,7 +5983,7 @@ sra\t%M0,%M1,%2\n\
+
+ return "srl\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")])
+
+ (define_insn "lshrsi3_internal2"
+@@ -5935,7 +6000,7 @@ sra\t%M0,%M1,%2\n\
+
+ return "srl\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "SI")
+ (set_attr_alternative "length"
+ [(const_int 4)
+@@ -6056,7 +6121,7 @@ srl\t%M0,%M1,%2\n\
+ operands[2] = GEN_INT (INTVAL (operands[2]) & 0x1f);
+ return "srl\t%L0,%M1,%2\;move\t%M0,%.";
+ }
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr "length" "8")])
+
+@@ -6111,7 +6176,7 @@ srl\t%M0,%M1,%2\n\
+
+ return "srl\t%L0,%L1,%2\;sll\t%3,%M1,%4\;or\t%L0,%L0,%3\;srl\t%M0,%M1,%2";
+ }
+- [(set_attr "type" "darith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr "length" "16")])
+
+@@ -6195,7 +6260,7 @@ srl\t%M0,%M1,%2\n\
+
+ return "dsrl\t%0,%1,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")])
+
+ (define_insn ""
+@@ -6209,7 +6274,7 @@ srl\t%M0,%M1,%2\n\
+
+ return "dsrl\t%0,%2";
+ }
+- [(set_attr "type" "arith")
++ [(set_attr "type" "shift")
+ (set_attr "mode" "DI")
+ (set_attr_alternative "length"
+ [(const_int 4)
diff --git a/sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch b/sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch
new file mode 100644
index 0000000..b5195e4
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch
@@ -0,0 +1,40 @@
+diff -ur gcc-3.4.3/libffi/Makefile.in gcc-3.4.3-ffi-fixes/libffi/Makefile.in
+--- gcc-3.4.3/libffi/Makefile.in 2003-11-22 08:41:32.000000000 -0500
++++ gcc-3.4.3-ffi-fixes/libffi/Makefile.in 2004-11-28 17:31:50.000000000 -0500
+@@ -89,7 +89,7 @@
+ libffi_basedir = @libffi_basedir@
+ tool_include_dir = @tool_include_dir@
+ toolexecdir = @toolexecdir@
+-toolexeclibdir = @toolexeclibdir@
++toolexeclibdir = @toolexeclibdir@/@gcc_version@
+
+ AUTOMAKE_OPTIONS = cygnus
+
+diff -ur gcc-3.4.3/libffi/configure gcc-3.4.3-ffi-fixes/libffi/configure
+--- gcc-3.4.3/libffi/configure 2004-05-18 05:08:39.000000000 -0400
++++ gcc-3.4.3-ffi-fixes/libffi/configure 2004-11-28 17:48:19.000000000 -0500
+@@ -3800,8 +3800,8 @@
+ toolexecdir='$(exec_prefix)/$(target_alias)'
+ toolexeclibdir='$(toolexecdir)/lib'
+ else
+- toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+- toolexeclibdir='$(libdir)'
++ toolexecdir='$(libdir)/gcc/$(target_alias)'
++ toolexeclibdir='$(libdir)/gcc/$(target_alias)/$(gcc-version)'
+ fi
+ multi_os_directory=`$CC -print-multi-os-directory`
+ case $multi_os_directory in
+diff -ur gcc-3.4.3/libffi/configure.in gcc-3.4.3-ffi-fixes/libffi/configure.in
+--- gcc-3.4.3/libffi/configure.in 2004-04-27 01:10:19.000000000 -0400
++++ gcc-3.4.3-ffi-fixes/libffi/configure.in 2004-11-28 17:40:30.000000000 -0500
+@@ -225,8 +225,8 @@
+ toolexecdir='$(exec_prefix)/$(target_alias)'
+ toolexeclibdir='$(toolexecdir)/lib'
+ else
+- toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+- toolexeclibdir='$(libdir)'
++ toolexecdir='$(libdir)/gcc/$(target_alias)'
++ toolexeclibdir='$(libdir)/gcc/$(target_alias)/$(gcc_version)'
+ fi
+ multi_os_directory=`$CC -print-multi-os-directory`
+ case $multi_os_directory in
diff --git a/sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch b/sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch
new file mode 100644
index 0000000..b270a06
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch
@@ -0,0 +1,40 @@
+--- configure.in.orig 2004-08-03 00:53:36.000000000 +0200
++++ configure.in 2004-08-03 00:52:35.000000000 +0200
+@@ -136,8 +136,7 @@
+ host_tools="texinfo byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar"
+
+ # libgcj represents the runtime libraries only used by gcj.
+-libgcj="target-libffi \
+- target-boehm-gc \
++libgcj="target-boehm-gc \
+ target-zlib \
+ target-qthreads \
+ target-libjava"
+@@ -150,6 +150,7 @@
+ target-libstdc++-v3 \
+ target-libf2c \
+ ${libgcj} \
++ target-libffi \
+ target-libobjc"
+
+ # these tools are built using the target libraries, and are intended to
+--- configure~ 2004-08-28 02:31:04.000000000 +0200
++++ configure 2004-08-28 10:55:28.000000000 +0200
+@@ -876,8 +876,7 @@
+ host_tools="texinfo byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar"
+
+ # libgcj represents the runtime libraries only used by gcj.
+-libgcj="target-libffi \
+- target-boehm-gc \
++libgcj="target-boehm-gc \
+ target-zlib \
+ target-qthreads \
+ target-libjava"
+@@ -891,6 +890,7 @@
+ target-libstdc++-v3 \
+ target-libf2c \
+ ${libgcj} \
++ target-libffi \
+ target-libobjc"
+
+ # these tools are built using the target libraries, and are intended to
diff --git a/sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch b/sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch
new file mode 100644
index 0000000..0389543
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch
@@ -0,0 +1,63 @@
+Some notes on the 'bootstrap with or without libc headers' debate:
+http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html
+http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html
+
+--- gcc/config/sh/linux.h
++++ gcc/config/sh/linux.h
+@@ -145,6 +145,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ #include <signal.h>
+ #include <sys/ucontext.h>
+@@ -295,6 +296,7 @@
+
+ #endif /* defined (__SH5__) */
+ #endif /* IN_LIBGCC2 */
++#endif /* inhibit_libc */
+
+ /* For SH3 and SH4, we use a slot of the unwind frame which correspond
+ to a fake register number 16 as a placeholder for the return address
+--- gcc/config/i386/linux.h
++++ gcc/config/i386/linux.h
+@@ -208,6 +208,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ /* There's no sys/ucontext.h for some (all?) libc1, so no
+ signal-turned-exceptions for them. There's also no configure-run for
+@@ -272,3 +273,4 @@
+ } while (0)
+ #endif /* not USE_GNULIBC_1 */
+ #endif /* IN_LIBGCC2 */
++#endif /* inhibit_libc */
+--- gcc/config/alpha/linux.h
++++ gcc/config/alpha/linux.h
+@@ -73,6 +73,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ #include <signal.h>
+ #include <sys/ucontext.h>
+@@ -122,3 +123,4 @@
+ (FS)->retaddr_column = 64; \
+ goto SUCCESS; \
+ } while (0)
++#endif /* inhibit_libc */
+--- gcc/config.gcc
++++ gcc/config.gcc
+@@ -321,7 +321,7 @@
+ need_64bit_hwint=yes
+ ;;
+ # Note the 'l'; we need to be able to match e.g. "shle" or "shl".
+-sh[123456789l]*-*-*)
++sh[123456789lbe]*-*-*)
+ cpu_type=sh
+ need_64bit_hwint=yes
+ ;;
diff --git a/sys-devel/gcc/files/3.4.4/gcc-3.4.4-softfloat.patch b/sys-devel/gcc/files/3.4.4/gcc-3.4.4-softfloat.patch
new file mode 100644
index 0000000..9646bed
--- /dev/null
+++ b/sys-devel/gcc/files/3.4.4/gcc-3.4.4-softfloat.patch
@@ -0,0 +1,156 @@
+The hunk for gcc/config/arm/t-linux comes from:
+http://gcc.gnu.org/PR14352
+
+The rest is a custom job by Yuri Vasilevski.
+
+The idea here is that we add soft float support into the spec file
+so that we don't have to worry about packages stripping out softfloat
+flags from CFLAGS/CXXFLAGS.
+
+http://bugs.gentoo.org/75585
+
+--- gcc-3.4.4/gcc/config/arm/coff.h
++++ gcc-3.4.4/gcc/config/arm/coff.h
+@@ -31,11 +31,16 @@
+ #define TARGET_VERSION fputs (" (ARM/coff)", stderr)
+
+ #undef TARGET_DEFAULT
+-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
++#define TARGET_DEFAULT \
++ ( ARM_FLAG_SOFT_FLOAT \
++ | ARM_FLAG_VFP \
++ | ARM_FLAG_APCS_32 \
++ | ARM_FLAG_APCS_FRAME \
++ | ARM_FLAG_MMU_TRAPS )
+
+ #ifndef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "marm", "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork" }
++ { "marm", "mlittle-endian", "mapcs-32", "mno-thumb-interwork" }
+ #endif
+
+ /* This is COFF, but prefer stabs. */
+--- gcc-3.4.4/gcc/config/arm/elf.h
++++ gcc-3.4.4/gcc/config/arm/elf.h
+@@ -46,7 +46,9 @@
+
+ #ifndef SUBTARGET_ASM_FLOAT_SPEC
+ #define SUBTARGET_ASM_FLOAT_SPEC "\
+-%{mapcs-float:-mfloat} %{msoft-float:-mfpu=softfpa}"
++%{mapcs-float:-mfloat} \
++%{mhard-float:-mfpu=fpa} \
++%{!mhard-float: %{msoft-float:-mfpu=softvfp} %{!msoft-float:-mfpu=softvfp}}"
+ #endif
+
+ #ifndef ASM_SPEC
+@@ -106,12 +108,17 @@
+ #endif
+
+ #ifndef TARGET_DEFAULT
+-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
++#define TARGET_DEFAULT \
++ (ARM_FLAG_SOFT_FLOAT \
++ | ARM_FLAG_VFP \
++ | ARM_FLAG_APCS_32 \
++ | ARM_FLAG_APCS_FRAME \
++ | ARM_FLAG_MMU_TRAPS )
+ #endif
+
+ #ifndef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "marm", "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork", "fno-leading-underscore" }
++ { "marm", "mlittle-endian", "mapcs-32", "mno-thumb-interwork", "fno-leading-underscore" }
+ #endif
+
+ #define TARGET_ASM_FILE_START_APP_OFF true
+--- gcc-3.4.4/gcc/config/arm/linux-elf.h
++++ gcc-3.4.4/gcc/config/arm/linux-elf.h
+@@ -44,20 +44,33 @@
+ #define TARGET_LINKER_EMULATION "armelf_linux"
+ #endif
+
+-/* Default is to use APCS-32 mode. */
++/*
++ * Default is to use APCS-32 mode with soft-vfp.
++ * The old Linux default for floats can be achieved with -mhard-float
++ * or with the configure --with-float=hard option.
++ * If -msoft-float or --with-float=soft is used then software float
++ * support will be used just like the default but with the legacy
++ * big endian word ordering for double float representation instead.
++ */
+ #undef TARGET_DEFAULT
+ #define TARGET_DEFAULT \
+ ( ARM_FLAG_APCS_32 | \
++ ARM_FLAG_SOFT_FLOAT | \
++ ARM_FLAG_VFP | \
+ ARM_FLAG_MMU_TRAPS | \
+ TARGET_ENDIAN_DEFAULT )
+
++#undef SUBTARGET_EXTRA_ASM_SPEC
++#define SUBTARGET_EXTRA_ASM_SPEC "%{mhard-float:-mfpu=fpa} \
++%{!mhard-float: %{msoft-float:-mfpu=softvfp} %{!msoft-float:-mfpu=softvfp}}"
++
+ #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
+
+ #define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p"
+
+ #undef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mapcs-32", "mno-thumb-interwork" }
++ { "marm", TARGET_ENDIAN_OPTION, "mapcs-32", "mno-thumb-interwork" }
+
+ #define CPP_APCS_PC_DEFAULT_SPEC "-D__APCS_32__"
+
+@@ -72,7 +85,7 @@
+ %{shared:-lc} \
+ %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
+
+-#define LIBGCC_SPEC "%{msoft-float:-lfloat} -lgcc"
++#define LIBGCC_SPEC "-lgcc"
+
+ /* Provide a STARTFILE_SPEC appropriate for GNU/Linux. Here we add
+ the GNU/Linux magical crtbegin.o file (see crtstuff.c) which
+--- gcc-3.4.4/gcc/config/arm/t-linux
++++ gcc-3.4.4/gcc/config/arm/t-linux
+@@ -4,7 +4,10 @@
+ LIBGCC2_DEBUG_CFLAGS = -g0
+
+ LIB1ASMSRC = arm/lib1funcs.asm
+-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
++LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
++ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
++ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
++ _fixsfsi _fixunssfsi
+
+ # MULTILIB_OPTIONS = mhard-float/msoft-float
+ # MULTILIB_DIRNAMES = hard-float soft-float
+--- gcc-3.4.4/gcc/config/arm/unknown-elf.h
++++ gcc-3.4.4/gcc/config/arm/unknown-elf.h
+@@ -30,7 +30,12 @@
+
+ /* Default to using APCS-32 and software floating point. */
+ #ifndef TARGET_DEFAULT
+-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
++#define TARGET_DEFAULT \
++ ( ARM_FLAG_SOFT_FLOAT \
++ | ARM_FLAG_VFP \
++ | ARM_FLAG_APCS_32 \
++ | ARM_FLAG_APCS_FRAME \
++ | ARM_FLAG_MMU_TRAPS )
+ #endif
+
+ /* Now we define the strings used to build the spec file. */
+--- gcc-3.4.4/gcc/config/arm/xscale-elf.h
++++ gcc-3.4.4/gcc/config/arm/xscale-elf.h
+@@ -51,9 +51,9 @@
+
+ #define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \
+ %{mhard-float:-mfpu=fpa} \
+- %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
++ %{!mhard-float: %{msoft-float:-mfpu=softvfp} %{!msoft-float:-mfpu=softvfp}}"
+
+ #ifndef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "mlittle-endian", "mno-thumb-interwork", "marm", "msoft-float" }
++ { "mlittle-endian", "mno-thumb-interwork", "marm" }
+ #endif
diff --git a/sys-devel/gcc/files/4.0.2/gcc-4.0.2-cross-compile.patch b/sys-devel/gcc/files/4.0.2/gcc-4.0.2-cross-compile.patch
new file mode 100644
index 0000000..e14b57a
--- /dev/null
+++ b/sys-devel/gcc/files/4.0.2/gcc-4.0.2-cross-compile.patch
@@ -0,0 +1,40 @@
+Some notes on the 'bootstrap with or without libc headers' debate:
+http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html
+http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html
+
+--- gcc/unwind-dw2.c
++++ gcc/unwind-dw2.c
+@@ -253,9 +253,11 @@
+ }
+ #endif
+
++#ifndef inhibit_libc
+ #ifdef MD_UNWIND_SUPPORT
+ #include MD_UNWIND_SUPPORT
+ #endif
++#endif
+
+ /* Extract any interesting information from the CIE for the translation
+ unit F belongs to. Return a pointer to the byte after the augmentation,
+--- gcc/configure
++++ gcc/configure
+@@ -12857,7 +12857,7 @@ then
+ | powerpc*-*-*,powerpc64*-*-*)
+ CROSS="$CROSS -DNATIVE_CROSS" ;;
+ esac
+-elif test "x$TARGET_SYSTEM_ROOT" != x; then
++elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then
+ # This is just $(TARGET_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)
+ SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)'
+ fi
+--- gcc/configure.ac
++++ gcc/configure.ac
+@@ -1717,7 +1717,7 @@ then
+ | powerpc*-*-*,powerpc64*-*-*)
+ CROSS="$CROSS -DNATIVE_CROSS" ;;
+ esac
+-elif test "x$TARGET_SYSTEM_ROOT" != x; then
++elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then
+ # This is just $(TARGET_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)
+ SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)'
+ fi
diff --git a/sys-devel/gcc/files/4.0.2/gcc-4.0.2-softfloat.patch b/sys-devel/gcc/files/4.0.2/gcc-4.0.2-softfloat.patch
new file mode 100644
index 0000000..e49fea6
--- /dev/null
+++ b/sys-devel/gcc/files/4.0.2/gcc-4.0.2-softfloat.patch
@@ -0,0 +1,84 @@
+The hunk for gcc/config/arm/t-linux comes from:
+http://gcc.gnu.org/PR14352
+
+The rest is a custom job by Yuri Vasilevski.
+
+The idea here is that we add soft float support into the spec file
+so that we don't have to worry about packages stripping out softfloat
+flags from CFLAGS/CXXFLAGS.
+
+http://bugs.gentoo.org/75585
+
+--- gcc-4.0.2/gcc/config/arm/elf.h
++++ gcc-4.0.2/gcc/config/arm/elf.h
+@@ -45,8 +45,9 @@
+ #endif
+
+ #ifndef SUBTARGET_ASM_FLOAT_SPEC
+-#define SUBTARGET_ASM_FLOAT_SPEC "\
+-%{mapcs-float:-mfloat}"
++#define SUBTARGET_ASM_FLOAT_SPEC "%{mapcs-float:-mfloat} \
++ %{mhard-float:-mfpu=fpa} \
++ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
+ #endif
+
+ #ifndef ASM_SPEC
+@@ -58,8 +59,6 @@
+ %{mapcs-*:-mapcs-%*} \
+ %(subtarget_asm_float_spec) \
+ %{mthumb-interwork:-mthumb-interwork} \
+-%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \
+-%{mfloat-abi=*} %{mfpu=*} \
+ %(subtarget_extra_asm_spec)"
+ #endif
+
+--- gcc-4.0.2/gcc/config/arm/linux-elf.h
++++ gcc-4.0.2/gcc/config/arm/linux-elf.h
+@@ -32,18 +32,22 @@
+ #endif
+
+ #undef TARGET_DEFAULT_FLOAT_ABI
+-#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD
++#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT
+
+ #undef TARGET_DEFAULT
+ #define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT)
+
++#undef SUBTARGET_EXTRA_ASM_SPEC
++#define SUBTARGET_EXTRA_ASM_SPEC "%{mhard-float:-mfpu=fpa} \
++ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
++
+ #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
+
+ #define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p"
+
+ #undef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" }
++ { "marm", TARGET_ENDIAN_OPTION, "msoft-float", "mno-thumb-interwork" }
+
+ /* The GNU C++ standard library requires that these macros be defined. */
+ #undef CPLUSPLUS_CPP_SPEC
+@@ -56,7 +60,7 @@
+ %{shared:-lc} \
+ %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
+
+-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
++#define LIBGCC_SPEC "-lgcc"
+
+ /* Provide a STARTFILE_SPEC appropriate for GNU/Linux. Here we add
+ the GNU/Linux magical crtbegin.o file (see crtstuff.c) which
+--- gcc-4.0.2/gcc/config/arm/t-linux
++++ gcc-4.0.2/gcc/config/arm/t-linux
+@@ -4,7 +4,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
+ LIBGCC2_DEBUG_CFLAGS = -g0
+
+ LIB1ASMSRC = arm/lib1funcs.asm
+-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
++LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
++ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
++ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
++ _fixsfsi _fixunssfsi _floatdidf _floatdisf
+
+ # MULTILIB_OPTIONS = mhard-float/msoft-float
+ # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch b/sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch
new file mode 100644
index 0000000..523caa4
--- /dev/null
+++ b/sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch
@@ -0,0 +1,40 @@
+Some notes on the 'bootstrap with or without libc headers' debate:
+http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html
+http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html
+
+--- gcc/unwind-dw2.c
++++ gcc/unwind-dw2.c
+@@ -253,9 +253,11 @@
+ }
+ #endif
+
++#ifndef inhibit_libc
+ #ifdef MD_UNWIND_SUPPORT
+ #include MD_UNWIND_SUPPORT
+ #endif
++#endif
+
+ /* Extract any interesting information from the CIE for the translation
+ unit F belongs to. Return a pointer to the byte after the augmentation,
+--- gcc/configure
++++ gcc/configure
+@@ -12857,7 +12857,7 @@ then
+ | powerpc*-*-*,powerpc64*-*-*)
+ CROSS="$CROSS -DNATIVE_CROSS" ;;
+ esac
+-elif test "x$TARGET_SYSTEM_ROOT" != x; then
++elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then
+ SYSTEM_HEADER_DIR=$build_system_header_dir
+ fi
+
+--- gcc/configure.ac
++++ gcc/configure.ac
+@@ -1717,7 +1717,7 @@ then
+ | powerpc*-*-*,powerpc64*-*-*)
+ CROSS="$CROSS -DNATIVE_CROSS" ;;
+ esac
+-elif test "x$TARGET_SYSTEM_ROOT" != x; then
++elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then
+ SYSTEM_HEADER_DIR=$build_system_header_dir
+ fi
+
diff --git a/sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch b/sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch
new file mode 100644
index 0000000..6090d66
--- /dev/null
+++ b/sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch
@@ -0,0 +1,64 @@
+workaround for lame stack packing on i386 ...
+
+ - build gcc with -Os (crtfastmath.o to be specific)
+ - crtfastmath.o is installed into gcc libdir
+ - run gcc with -ffast-math and get crtfastmath.o linked in
+ - resulting compiled app segfaults due to init code in
+ crtfastmath.o that has mis-aligned structure on stack
+
+http://bugs.gentoo.org/147020
+http://gcc.gnu.org/PR28621
+
+this is supposed to be fixed in current 4.1 branch, but i'm unable to get
+the fix to work so until i can figure out what i'm doing wrong, we'll use
+this workaround for now.
+
+--- gcc-4.1.1/gcc/config/i386/crtfastmath.c
++++ gcc-4.1.1/gcc/config/i386/crtfastmath.c
+@@ -37,6 +37,23 @@
+ #define FXSAVE (1 << 24)
+ #define SSE (1 << 25)
+
++struct
++{
++ unsigned short int cwd;
++ unsigned short int swd;
++ unsigned short int twd;
++ unsigned short int fop;
++ long int fip;
++ long int fcs;
++ long int foo;
++ long int fos;
++ long int mxcsr;
++ long int mxcsr_mask;
++ long int st_space[32];
++ long int xmm_space[32];
++ long int padding[56];
++} __attribute__ ((aligned (16))) fxsave;
++
+ static void __attribute__((constructor))
+ set_fast_math (void)
+ {
+@@ -75,22 +92,6 @@
+ if (edx & FXSAVE)
+ {
+ /* Check if DAZ is available. */
+- struct
+- {
+- unsigned short int cwd;
+- unsigned short int swd;
+- unsigned short int twd;
+- unsigned short int fop;
+- long int fip;
+- long int fcs;
+- long int foo;
+- long int fos;
+- long int mxcsr;
+- long int mxcsr_mask;
+- long int st_space[32];
+- long int xmm_space[32];
+- long int padding[56];
+- } __attribute__ ((aligned (16))) fxsave;
+
+ __builtin_memset (&fxsave, 0, sizeof (fxsave));
+
diff --git a/sys-devel/gcc/files/4.3.2/gcc-4.3.2-softfloat.patch b/sys-devel/gcc/files/4.3.2/gcc-4.3.2-softfloat.patch
new file mode 100644
index 0000000..f530b6a
--- /dev/null
+++ b/sys-devel/gcc/files/4.3.2/gcc-4.3.2-softfloat.patch
@@ -0,0 +1,88 @@
+The hunk for gcc/config/arm/t-linux comes from:
+http://gcc.gnu.org/PR14352
+
+The rest is a custom job by Yuri Vasilevski.
+
+The idea here is that we add soft float support into the spec file
+so that we don't have to worry about packages stripping out softfloat
+flags from CFLAGS/CXXFLAGS.
+
+http://bugs.gentoo.org/75585
+
+--- gcc-4.0.2/gcc/config/arm/elf.h
++++ gcc-4.0.2/gcc/config/arm/elf.h
+@@ -45,8 +45,9 @@
+ #endif
+
+ #ifndef SUBTARGET_ASM_FLOAT_SPEC
+-#define SUBTARGET_ASM_FLOAT_SPEC "\
+-%{mapcs-float:-mfloat}"
++#define SUBTARGET_ASM_FLOAT_SPEC "%{mapcs-float:-mfloat} \
++ %{mhard-float:-mfpu=fpa} \
++ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
+ #endif
+
+ #ifndef ASM_SPEC
+@@ -58,8 +59,6 @@
+ %{mapcs-*:-mapcs-%*} \
+ %(subtarget_asm_float_spec) \
+ %{mthumb-interwork:-mthumb-interwork} \
+-%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \
+-%{mfloat-abi=*} %{mfpu=*} \
+ %(subtarget_extra_asm_spec)"
+ #endif
+
+--- gcc-4.0.2/gcc/config/arm/linux-elf.h
++++ gcc-4.0.2/gcc/config/arm/linux-elf.h
+@@ -28,7 +28,7 @@
+ #define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr);
+
+ #undef TARGET_DEFAULT_FLOAT_ABI
+-#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD
++#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT
+
+ /* TARGET_BIG_ENDIAN_DEFAULT is set in
+ config.gcc for big endian configurations. */
+@@ -44,6 +44,10 @@
+
+ #undef TARGET_DEFAULT
+ #define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT)
++#undef SUBTARGET_EXTRA_ASM_SPEC
++#define SUBTARGET_EXTRA_ASM_SPEC "%{mhard-float:-mfpu=fpa} \
++ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
++
+
+ #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
+
+@@ -51,7 +55,7 @@
+
+ #undef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
++ { "marm", TARGET_ENDIAN_OPTION, "msoft-float", "mno-thumb-interwork" }
+
+ /* Now we define the strings used to build the spec file. */
+ #undef LIB_SPEC
+@@ -60,7 +64,7 @@
+ %{shared:-lc} \
+ %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
+
+-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
++#define LIBGCC_SPEC "-lgcc"
+
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+
+--- gcc-4.0.2/gcc/config/arm/t-linux
++++ gcc-4.0.2/gcc/config/arm/t-linux
+@@ -4,7 +4,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
+ LIBGCC2_DEBUG_CFLAGS = -g0
+
+ LIB1ASMSRC = arm/lib1funcs.asm
+-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
++LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
++ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
++ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
++ _fixsfsi _fixunssfsi _floatdidf _floatdisf
+
+ # MULTILIB_OPTIONS = mhard-float/msoft-float
+ # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch b/sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch
new file mode 100644
index 0000000..bf8d718
--- /dev/null
+++ b/sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch
@@ -0,0 +1,89 @@
+The hunk for gcc/config/arm/t-linux comes from:
+http://gcc.gnu.org/PR14352
+
+The rest is a custom job by Yuri Vasilevski.
+
+The idea here is that we add soft float support into the spec file
+so that we don't have to worry about packages stripping out softfloat
+flags from CFLAGS/CXXFLAGS.
+
+http://bugs.gentoo.org/75585
+
+--- gcc-4.0.2/gcc/config/arm/elf.h
++++ gcc-4.0.2/gcc/config/arm/elf.h
+@@ -45,8 +45,9 @@
+ #endif
+
+ #ifndef SUBTARGET_ASM_FLOAT_SPEC
+-#define SUBTARGET_ASM_FLOAT_SPEC "\
+-%{mapcs-float:-mfloat}"
++#define SUBTARGET_ASM_FLOAT_SPEC "%{mapcs-float:-mfloat} \
++ %{mhard-float:-mfpu=fpa} \
++ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
+ #endif
+
+ #ifndef ASM_SPEC
+@@ -58,8 +59,6 @@
+ %{mapcs-*:-mapcs-%*} \
+ %(subtarget_asm_float_spec) \
+ %{mthumb-interwork:-mthumb-interwork} \
+-%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \
+-%{mfloat-abi=*} %{mfpu=*} \
+ %(subtarget_extra_asm_spec)"
+ #endif
+
+--- gcc-4.0.2/gcc/config/arm/linux-elf.h
++++ gcc-4.0.2/gcc/config/arm/linux-elf.h
+@@ -28,7 +28,7 @@
+ #define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr);
+
+ #undef TARGET_DEFAULT_FLOAT_ABI
+-#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD
++#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT
+
+ /* TARGET_BIG_ENDIAN_DEFAULT is set in
+ config.gcc for big endian configurations. */
+@@ -44,6 +44,10 @@
+
+ #undef TARGET_DEFAULT
+ #define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT)
++#undef SUBTARGET_EXTRA_ASM_SPEC
++#define SUBTARGET_EXTRA_ASM_SPEC "%{mhard-float:-mfpu=fpa} \
++ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
++
+
+ #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
+
+@@ -51,7 +55,7 @@
+
+ #undef MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
++ { "marm", TARGET_ENDIAN_OPTION, "msoft-float", "mno-thumb-interwork" }
+
+ /* Now we define the strings used to build the spec file. */
+ #undef LIB_SPEC
+@@ -60,7 +64,7 @@
+ %{shared:-lc} \
+ %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
+
+-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
++#define LIBGCC_SPEC "-lgcc"
+
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+
+--- gcc-4.0.2/gcc/config/arm/t-linux
++++ gcc-4.0.2/gcc/config/arm/t-linux
+@@ -3,8 +3,10 @@
+ TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer -fPIC
+
+ LIB1ASMSRC = arm/lib1funcs.asm
+-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
+- _arm_addsubdf3 _arm_addsubsf3
++LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
++ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
++ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
++ _fixsfsi _fixunssfsi _floatdidf _floatdisf
+
+ # MULTILIB_OPTIONS = mhard-float/msoft-float
+ # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/sys-devel/gcc/files/awk/fixlafiles.awk b/sys-devel/gcc/files/awk/fixlafiles.awk
new file mode 100644
index 0000000..ffade96
--- /dev/null
+++ b/sys-devel/gcc/files/awk/fixlafiles.awk
@@ -0,0 +1,314 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/files/awk/fixlafiles.awk,v 1.15 2008/02/19 05:47:29 vapier Exp $
+
+#
+# Helper functions
+#
+function printn(string) {
+ printf("%s", string)
+}
+function einfo(string) {
+ printf(" \033[32;01m*\033[0m %s\n", string)
+}
+function einfon(string) {
+ printf(" \033[32;01m*\033[0m %s", string)
+}
+function ewarn(string) {
+ printf(" \033[33;01m*\033[0m %s\n", string)
+}
+function ewarnn(string) {
+ printf(" \033[33;01m*\033[0m %s", string)
+}
+function eerror(string) {
+ printf(" \033[31;01m*\033[0m %s\n", string)
+}
+
+#
+# assert(condition, errmsg)
+# assert that a condition is true. Otherwise exit.
+#
+function assert(condition, string) {
+ if (! condition) {
+ printf("%s:%d: assertion failed: %s\n",
+ FILENAME, FNR, string) > "/dev/stderr"
+ _assert_exit = 1
+ exit 1
+ }
+}
+
+#
+# system(command, return)
+# wrapper that normalizes return codes ...
+#
+function dosystem(command, ret) {
+ ret = 0
+ ret = system(command)
+ if (ret == 0)
+ return 1
+ else
+ return 0
+}
+
+BEGIN {
+ #
+ # Get our variables from environment
+ #
+ OLDVER = ENVIRON["OLDVER"]
+ OLDCHOST = ENVIRON["OLDCHOST"]
+
+ if (OLDVER == "") {
+ eerror("Could not get OLDVER!");
+ exit 1
+ }
+
+ # Setup some sane defaults
+ LIBCOUNT = 2
+ HAVE_GCC34 = 0
+ DIRLIST[1] = "/lib"
+ DIRLIST[2] = "/usr/lib"
+
+ #
+ # Walk /etc/ld.so.conf to discover all our library paths
+ #
+ pipe = "cat /etc/ld.so.conf | sort 2>/dev/null"
+ while(((pipe) | getline ldsoconf_data) > 0) {
+ if (ldsoconf_data !~ /^[[:space:]]*#/) {
+ if (ldsoconf_data == "") continue
+
+ # Remove any trailing comments
+ sub(/#.*$/, "", ldsoconf_data)
+ # Remove any trailing spaces
+ sub(/[[:space:]]+$/, "", ldsoconf_data)
+
+ # If there's more than one path per line, split
+ # it up as if they were sep lines
+ split(ldsoconf_data, nodes, /[:,[:space:]]/)
+
+ # Now add the rest from ld.so.conf
+ for (x in nodes) {
+ # wtf does this line do ?
+ sub(/=.*/, "", nodes[x])
+ # Prune trailing /
+ sub(/\/$/, "", nodes[x])
+
+ if (nodes[x] == "") continue
+
+ #
+ # Drop the directory if its a child directory of
+ # one that was already added ...
+ # For example, if we have:
+ # /usr/lib /usr/libexec /usr/lib/mozilla /usr/lib/nss
+ # We really just want to save /usr/lib /usr/libexec
+ #
+ CHILD = 0
+ for (y in DIRLIST) {
+ if (nodes[x] ~ "^" DIRLIST[y] "(/|$)") {
+ CHILD = 1
+ break
+ }
+ }
+ if (CHILD) continue
+
+ DIRLIST[++LIBCOUNT] = nodes[x]
+ }
+ }
+ }
+ close(pipe)
+
+ #
+ # Get line from gcc's output containing CHOST
+ #
+ pipe = "gcc -print-file-name=libgcc.a 2>/dev/null"
+ if ((!((pipe) | getline TMP_CHOST)) || (TMP_CHOST == "")) {
+ close(pipe)
+
+ # If we fail to get the CHOST, see if we can get the CHOST
+ # portage thinks we are using ...
+ pipe = "/usr/bin/portageq envvar 'CHOST'"
+ assert(((pipe) | getline CHOST), "(" pipe ") | getline CHOST")
+ } else {
+ # Check pre gcc-3.4.x versions
+ CHOST = gensub("^.+lib/gcc-lib/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST)
+
+ if (CHOST == TMP_CHOST || CHOST == "") {
+ # Check gcc-3.4.x or later
+ CHOST = gensub("^.+lib/gcc/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST);
+
+ if (CHOST == TMP_CHOST || CHOST == "")
+ CHOST = ""
+ else
+ HAVE_GCC34 = 1
+ }
+ }
+ close(pipe)
+
+ if (CHOST == "") {
+ eerror("Could not get gcc's CHOST!")
+ exit 1
+ }
+
+ if (OLDCHOST != "")
+ if (OLDCHOST == CHOST)
+ OLDCHOST = ""
+
+ GCCLIBPREFIX_OLD = "/usr/lib/gcc-lib/"
+ GCCLIBPREFIX_NEW = "/usr/lib/gcc/"
+
+ if (HAVE_GCC34)
+ GCCLIBPREFIX = GCCLIBPREFIX_NEW
+ else
+ GCCLIBPREFIX = GCCLIBPREFIX_OLD
+
+ GCCLIB = GCCLIBPREFIX CHOST
+
+ if (OLDCHOST != "") {
+ OLDGCCLIB1 = GCCLIBPREFIX_OLD OLDCHOST
+ OLDGCCLIB2 = GCCLIBPREFIX_NEW OLDCHOST
+ }
+
+ # Get current gcc's version
+ pipe = "gcc -dumpversion"
+ assert(((pipe) | getline NEWVER), "(" pipe ") | getline NEWVER)")
+ close(pipe)
+
+ if (NEWVER == "") {
+ eerror("Could not get gcc's version!")
+ exit 1
+ }
+
+ # Nothing to do ?
+ if ((OLDVER == NEWVER) && (OLDCHOST == ""))
+ exit 0
+
+ #
+ # Ok, now let's scan for the .la files and actually fix them up
+ #
+ for (x = 1; x <= LIBCOUNT; x++) {
+ # Do nothing if the target dir is gcc's internal library path
+ if (DIRLIST[x] ~ GCCLIBPREFIX_OLD ||
+ DIRLIST[x] ~ GCCLIBPREFIX_NEW)
+ continue
+
+ einfo(" [" x "/" LIBCOUNT "] Scanning " DIRLIST[x] " ...")
+
+ pipe = "find " DIRLIST[x] "/ -name '*.la' 2>/dev/null"
+ while (((pipe) | getline la_files) > 0) {
+
+ # Do nothing if the .la file is located in gcc's internal lib path
+ if (la_files ~ GCCLIBPREFIX_OLD ||
+ la_files ~ GCCLIBPREFIX_NEW)
+ continue
+
+ CHANGED = 0
+ CHOST_CHANGED = 0
+
+ # See if we need to fix the .la file
+ while ((getline la_data < (la_files)) > 0) {
+ if (OLDCHOST != "") {
+ if ((gsub(OLDGCCLIB1 "[/[:space:]]+",
+ GCCLIB, la_data) > 0) ||
+ (gsub(OLDGCCLIB2 "[/[:space:]]+",
+ GCCLIB, la_data) > 0)) {
+ CHANGED = 1
+ CHOST_CHANGED = 1
+ }
+ }
+ if (OLDVER != NEWVER) {
+ if ((gsub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "[/[:space:]]*",
+ GCCLIB "/" NEWVER, la_data) > 0) ||
+ (gsub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "[/[:space:]]*",
+ GCCLIB "/" NEWVER, la_data) > 0))
+ CHANGED = 1
+ }
+ }
+ close(la_files)
+
+ # Do the actual changes in a second loop, as we can then
+ # verify that CHOST_CHANGED among things is correct ...
+ if (CHANGED) {
+ ewarnn(" FIXING: " la_files " ...")
+
+ if (CHANGED)
+ printn("[")
+
+ # Clear the temp file (removing rather than '>foo' is better
+ # out of a security point of view?)
+ dosystem("rm -f " la_files ".new")
+
+ while ((getline la_data < (la_files)) > 0) {
+ if (OLDCHOST != "") {
+ tmpstr = gensub(OLDGCCLIB1 "([/[:space:]]+)",
+ GCCLIB "\\1", "g", la_data)
+ tmpstr = gensub(OLDGCCLIB2 "([/[:space:]]+)",
+ GCCLIB "\\1", "g", tmpstr)
+
+ if (la_data != tmpstr) {
+ printn("c")
+ la_data = tmpstr
+ }
+
+ if (CHOST_CHANGED > 0) {
+ # We try to be careful about CHOST changes outside
+ # the gcc library path (meaning we cannot match it
+ # via /GCCLIBPREFIX CHOST/) ...
+
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/CHOST/{bin,lib}'
+ #
+ gsub("-L/usr/" OLDCHOST "/",
+ "-L/usr/" CHOST "/", la_data)
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/lib/gcc-lib/CHOST/VER/../../../../CHOST/lib'
+ #
+ la_data = gensub("(" GCCLIB "/[^[:space:]]+)/" OLDCHOST "/",
+ "\\1/" CHOST "/", "g", la_data)
+ }
+ }
+
+ if (OLDVER != NEWVER) {
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/lib/gcc/CHOST/VER'
+ #
+ tmpstr = gensub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "([/[:space:]]+)",
+ GCCLIB "/" NEWVER "\\1", "g", la_data)
+ tmpstr = gensub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "([/[:space:]]+)",
+ GCCLIB "/" NEWVER "\\1", "g", tmpstr)
+
+ if (la_data != tmpstr) {
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/lib/gcc-lib/../../CHOST/lib'
+ #
+ # in cases where we have gcc34
+ tmpstr = gensub(GCCLIBPREFIX_OLD "(../../" CHOST "/lib)",
+ GCCLIBPREFIX "\\1", "g", tmpstr)
+ tmpstr = gensub(GCCLIBPREFIX_NEW "(../../" CHOST "/lib)",
+ GCCLIBPREFIX "\\1", "g", tmpstr)
+ printn("v")
+ la_data = tmpstr
+ }
+ }
+
+ print la_data >> (la_files ".new")
+ }
+
+ if (CHANGED)
+ print "]"
+
+ close(la_files)
+ close(la_files ".new")
+
+ assert(dosystem("mv -f " la_files ".new " la_files),
+ "dosystem(\"mv -f " la_files ".new " la_files "\")")
+ }
+ }
+
+ close(pipe)
+ }
+}
+
+# vim:ts=4
diff --git a/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la b/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la
new file mode 100644
index 0000000..346bd16
--- /dev/null
+++ b/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la
@@ -0,0 +1,335 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la,v 1.4 2010/03/19 23:53:07 vapier Exp $
+
+#
+# Helper functions
+#
+function printn(string) {
+ printf("%s", string)
+}
+function einfo(string) {
+ printf(" \033[32;01m*\033[0m %s\n", string)
+}
+function einfon(string) {
+ printf(" \033[32;01m*\033[0m %s", string)
+}
+function ewarn(string) {
+ printf(" \033[33;01m*\033[0m %s\n", string)
+}
+function ewarnn(string) {
+ printf(" \033[33;01m*\033[0m %s", string)
+}
+function eerror(string) {
+ printf(" \033[31;01m*\033[0m %s\n", string)
+}
+
+#
+# assert(condition, errmsg)
+# assert that a condition is true. Otherwise exit.
+#
+function assert(condition, string) {
+ if (! condition) {
+ printf("%s:%d: assertion failed: %s\n",
+ FILENAME, FNR, string) > "/dev/stderr"
+ _assert_exit = 1
+ exit 1
+ }
+}
+
+#
+# system(command, return)
+# wrapper that normalizes return codes ...
+#
+function dosystem(command, ret) {
+ ret = 0
+ ret = system(command)
+ if (ret == 0)
+ return 1
+ else
+ return 0
+}
+
+#
+# parse_ld_conf(config_file)
+#
+function parse_ld_conf(conf, pipe, ldsoconf_data, CHILD, y) {
+ pipe = "cd /etc; cat " conf " | sort 2>/dev/null"
+ while(((pipe) | getline ldsoconf_data) > 0) {
+ if (ldsoconf_data ~ /^[[:space:]]*#/)
+ continue
+ if (ldsoconf_data == "")
+ continue
+
+ # Handle the "include" keyword
+ if (ldsoconf_data ~ /^include /) {
+ sub(/^include /, "", ldsoconf_data)
+ parse_ld_conf(ldsoconf_data)
+ continue
+ }
+
+ # Remove any trailing comments
+ sub(/#.*$/, "", ldsoconf_data)
+ # Remove any trailing spaces
+ sub(/[[:space:]]+$/, "", ldsoconf_data)
+ # Eat duplicate slashes
+ sub(/\/\//, "/", ldsoconf_data)
+ # Prune trailing /
+ sub(/\/$/, "", ldsoconf_data)
+
+ #
+ # Drop the directory if its a child directory of
+ # one that was already added ...
+ # For example, if we have:
+ # /usr/lib /usr/libexec /usr/lib/mozilla /usr/lib/nss
+ # We really just want to save /usr/lib /usr/libexec
+ #
+ CHILD = 0
+ for (y in DIRLIST) {
+ if (ldsoconf_data ~ "^" DIRLIST[y] "(/|$)") {
+ CHILD = 1
+ break
+ }
+ }
+ if (CHILD) continue
+
+ DIRLIST[++LIBCOUNT] = ldsoconf_data
+ }
+ close(pipe)
+}
+
+BEGIN {
+ #
+ # Get our variables from environment
+ #
+ OLDVER = ENVIRON["OLDVER"]
+ OLDCHOST = ENVIRON["OLDCHOST"]
+
+ if (OLDVER == "") {
+ eerror("Could not get OLDVER!");
+ exit 1
+ }
+
+ # Setup some sane defaults
+ LIBCOUNT = 2
+ HAVE_GCC34 = 0
+ DIRLIST[1] = "/lib"
+ DIRLIST[2] = "/usr/lib"
+
+ #
+ # Walk /etc/ld.so.conf to discover all our library paths
+ #
+ parse_ld_conf("/etc/ld.so.conf")
+
+ #
+ # Get line from gcc's output containing CHOST
+ #
+ pipe = "gcc -print-file-name=libgcc.a 2>/dev/null"
+ if ((!((pipe) | getline TMP_CHOST)) || (TMP_CHOST == "")) {
+ close(pipe)
+
+ # If we fail to get the CHOST, see if we can get the CHOST
+ # portage thinks we are using ...
+ pipe = "/usr/bin/portageq envvar 'CHOST'"
+ assert(((pipe) | getline CHOST), "(" pipe ") | getline CHOST")
+ } else {
+ # Check pre gcc-3.4.x versions
+ CHOST = gensub("^.+lib/gcc-lib/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST)
+
+ if (CHOST == TMP_CHOST || CHOST == "") {
+ # Check gcc-3.4.x or later
+ CHOST = gensub("^.+lib/gcc/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST);
+
+ if (CHOST == TMP_CHOST || CHOST == "")
+ CHOST = ""
+ else
+ HAVE_GCC34 = 1
+ }
+ }
+ close(pipe)
+
+ if (CHOST == "") {
+ eerror("Could not get gcc's CHOST!")
+ exit 1
+ }
+
+ if (OLDCHOST != "")
+ if (OLDCHOST == CHOST)
+ OLDCHOST = ""
+
+ GCCLIBPREFIX_OLD = "/usr/lib/gcc-lib/"
+ GCCLIBPREFIX_NEW = "/usr/lib/gcc/"
+
+ if (HAVE_GCC34)
+ GCCLIBPREFIX = GCCLIBPREFIX_NEW
+ else
+ GCCLIBPREFIX = GCCLIBPREFIX_OLD
+
+ GCCLIB = GCCLIBPREFIX CHOST
+
+ if (OLDCHOST != "") {
+ OLDGCCLIB1 = GCCLIBPREFIX_OLD OLDCHOST
+ OLDGCCLIB2 = GCCLIBPREFIX_NEW OLDCHOST
+ }
+
+ # Get current gcc's version
+ pipe = "gcc -dumpversion"
+ assert(((pipe) | getline NEWVER), "(" pipe ") | getline NEWVER)")
+ close(pipe)
+
+ if (NEWVER == "") {
+ eerror("Could not get gcc's version!")
+ exit 1
+ }
+
+ # Nothing to do ?
+ # NB: Do not check for (OLDVER == NEWVER) anymore, as we might need to
+ # replace libstdc++.la ....
+ if ((OLDVER == "") && (OLDCHOST == ""))
+ exit 0
+
+ #
+ # Ok, now let's scan for the .la files and actually fix them up
+ #
+ for (x = 1; x <= LIBCOUNT; x++) {
+ # Do nothing if the target dir is gcc's internal library path
+ if (DIRLIST[x] ~ GCCLIBPREFIX_OLD ||
+ DIRLIST[x] ~ GCCLIBPREFIX_NEW)
+ continue
+
+ einfo(" [" x "/" LIBCOUNT "] Scanning " DIRLIST[x] " ...")
+
+ pipe = "find " DIRLIST[x] "/ -name '*.la' 2>/dev/null"
+ while (((pipe) | getline la_files) > 0) {
+
+ # Do nothing if the .la file is located in gcc's internal lib path
+ if (la_files ~ GCCLIBPREFIX_OLD ||
+ la_files ~ GCCLIBPREFIX_NEW)
+ continue
+
+ CHANGED = 0
+ CHOST_CHANGED = 0
+
+ # See if we need to fix the .la file
+ while ((getline la_data < (la_files)) > 0) {
+ if (OLDCHOST != "") {
+ if ((gsub(OLDGCCLIB1 "[/[:space:]]+",
+ GCCLIB, la_data) > 0) ||
+ (gsub(OLDGCCLIB2 "[/[:space:]]+",
+ GCCLIB, la_data) > 0)) {
+ CHANGED = 1
+ CHOST_CHANGED = 1
+ }
+ }
+ if (OLDVER != NEWVER) {
+ if ((gsub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "[/[:space:]]*",
+ GCCLIB "/" NEWVER, la_data) > 0) ||
+ (gsub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "[/[:space:]]*",
+ GCCLIB "/" NEWVER, la_data) > 0))
+ CHANGED = 1
+ }
+ # We now check if we have libstdc++.la, as we remove the
+ # libtool linker scripts for gcc ...
+ # We do this last, as we only match the new paths
+ if (gsub(GCCLIB "/" NEWVER "/libstdc\\+\\+\\.la",
+ "-lstdc++", la_data) > 0)
+ CHANGED = 1
+ }
+ close(la_files)
+
+ # Do the actual changes in a second loop, as we can then
+ # verify that CHOST_CHANGED among things is correct ...
+ if (CHANGED) {
+ ewarnn(" FIXING: " la_files " ...[")
+
+ # Clear the temp file (removing rather than '>foo' is better
+ # out of a security point of view?)
+ dosystem("rm -f " la_files ".new")
+
+ while ((getline la_data < (la_files)) > 0) {
+ if (OLDCHOST != "") {
+ tmpstr = gensub(OLDGCCLIB1 "([/[:space:]]+)",
+ GCCLIB "\\1", "g", la_data)
+ tmpstr = gensub(OLDGCCLIB2 "([/[:space:]]+)",
+ GCCLIB "\\1", "g", tmpstr)
+
+ if (la_data != tmpstr) {
+ printn("c")
+ la_data = tmpstr
+ }
+
+ if (CHOST_CHANGED > 0) {
+ # We try to be careful about CHOST changes outside
+ # the gcc library path (meaning we cannot match it
+ # via /GCCLIBPREFIX CHOST/) ...
+
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/CHOST/{bin,lib}'
+ #
+ gsub("-L/usr/" OLDCHOST "/",
+ "-L/usr/" CHOST "/", la_data)
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/lib/gcc-lib/CHOST/VER/../../../../CHOST/lib'
+ #
+ la_data = gensub("(" GCCLIB "/[^[:space:]]+)/" OLDCHOST "/",
+ "\\1/" CHOST "/", "g", la_data)
+ }
+ }
+
+ if (OLDVER != NEWVER) {
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/lib/gcc/CHOST/VER'
+ #
+ tmpstr = gensub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "([/[:space:]]+)",
+ GCCLIB "/" NEWVER "\\1", "g", la_data)
+ tmpstr = gensub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "([/[:space:]]+)",
+ GCCLIB "/" NEWVER "\\1", "g", tmpstr)
+
+ if (la_data != tmpstr) {
+ # Catch:
+ #
+ # dependency_libs=' -L/usr/lib/gcc-lib/../../CHOST/lib'
+ #
+ # in cases where we have gcc34
+ tmpstr = gensub(GCCLIBPREFIX_OLD "(../../" CHOST "/lib)",
+ GCCLIBPREFIX "\\1", "g", tmpstr)
+ tmpstr = gensub(GCCLIBPREFIX_NEW "(../../" CHOST "/lib)",
+ GCCLIBPREFIX "\\1", "g", tmpstr)
+ printn("v")
+ la_data = tmpstr
+ }
+ }
+
+ # We now check if we have libstdc++.la, as we remove the
+ # libtool linker scripts for gcc and any referencese in any
+ # libtool linker scripts.
+ # We do this last, as we only match the new paths
+ tmpstr = gensub(GCCLIB "/" NEWVER "/libstdc\\+\\+\\.la",
+ "-lstdc++", "g", la_data);
+ if (la_data != tmpstr) {
+ printn("l")
+ la_data = tmpstr
+ }
+
+ print la_data >> (la_files ".new")
+ }
+
+ if (CHANGED)
+ print "]"
+
+ close(la_files)
+ close(la_files ".new")
+
+ assert(dosystem("mv -f " la_files ".new " la_files),
+ "dosystem(\"mv -f " la_files ".new " la_files "\")")
+ }
+ }
+
+ close(pipe)
+ }
+}
+
+# vim:ts=4
diff --git a/sys-devel/gcc/files/c89 b/sys-devel/gcc/files/c89
new file mode 100755
index 0000000..cee0325
--- /dev/null
+++ b/sys-devel/gcc/files/c89
@@ -0,0 +1,20 @@
+#! /bin/sh
+
+# Call the appropriate C compiler with options to accept ANSI/ISO C
+# The following options are the same (as of gcc-2.95):
+# -ansi
+# -std=c89
+# -std=iso9899:1990
+
+for i; do
+ case "$i" in
+ -ansi|-std=c89|-std=iso9899:1990)
+ ;;
+ -std=*)
+ echo >&2 "`basename $0` called with non ANSI/ISO C90 option $i"
+ exit 1
+ ;;
+ esac
+done
+
+exec gcc -std=c89 -pedantic -U_FORTIFY_SOURCE "$@"
diff --git a/sys-devel/gcc/files/c99 b/sys-devel/gcc/files/c99
new file mode 100755
index 0000000..c954209
--- /dev/null
+++ b/sys-devel/gcc/files/c99
@@ -0,0 +1,21 @@
+#! /bin/sh
+
+# Call the appropriate C compiler with options to accept ANSI/ISO C
+# The following options are the same (as of gcc-3.3):
+# -std=c99
+# -std=c9x
+# -std=iso9899:1999
+# -std=iso9899:199x
+
+for i; do
+ case "$i" in
+ -std=c9[9x]|-std=iso9899:199[9x])
+ ;;
+ -ansi|-std=*)
+ echo >&2 "`basename $0` called with non ANSI/ISO C99 option $i"
+ exit 1
+ ;;
+ esac
+done
+
+exec gcc -std=c99 -pedantic -U_FORTIFY_SOURCE ${1+"$@"}
diff --git a/sys-devel/gcc/files/fix_libtool_files.sh b/sys-devel/gcc/files/fix_libtool_files.sh
new file mode 100644
index 0000000..c55250b
--- /dev/null
+++ b/sys-devel/gcc/files/fix_libtool_files.sh
@@ -0,0 +1,68 @@
+#!/bin/sh
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/files/fix_libtool_files.sh,v 1.16 2012/05/18 21:28:56 vapier Exp $
+
+usage() {
+cat << "USAGE_END"
+Usage: fix_libtool_files.sh <old-gcc-version> [--oldarch <old-CHOST>]
+
+ Where <old-gcc-version> is the version number of the
+ previous gcc version. For example, if you updated to
+ gcc-3.2.1, and you had gcc-3.2 installed, run:
+
+ # fix_libtool_files.sh 3.2
+
+ If you updated to gcc-3.2.3, and the old CHOST was i586-pc-linux-gnu
+ but you now have CHOST as i686-pc-linux-gnu, run:
+
+ # fix_libtool_files.sh 3.2 --oldarch i586-pc-linux-gnu
+
+ Note that if only the CHOST and not the version changed, you can run
+ it with the current version and the '--oldarch <old-CHOST>' arguments,
+ and it will do the expected:
+
+ # fix_libtool_files.sh `gcc -dumpversion` --oldarch i586-pc-linux-gnu
+
+USAGE_END
+ exit 1
+}
+
+case $2 in
+--oldarch) [ $# -ne 3 ] && usage ;;
+*) [ $# -ne 1 ] && usage ;;
+esac
+
+ARGV1=$1
+ARGV2=$2
+ARGV3=$3
+
+. /etc/profile || exit 1
+. /etc/init.d/functions.sh || exit 1
+
+if [ ${EUID:-0} -ne 0 ] ; then
+ eerror "${0##*/}: Must be root."
+ exit 1
+fi
+
+# make sure the files come out sane
+umask 0022
+
+OLDCHOST=
+[ "${ARGV2}" = "--oldarch" ] && OLDCHOST=${ARGV3}
+
+AWKDIR="/usr/share/gcc-data"
+
+if [ ! -r "${AWKDIR}/fixlafiles.awk" ] ; then
+ eerror "${0##*/}: ${AWKDIR}/fixlafiles.awk does not exist!"
+ exit 1
+fi
+
+OLDVER=${ARGV1}
+
+export OLDVER OLDCHOST
+
+einfo "Scanning libtool files for hardcoded gcc library paths..."
+exec gawk -f "${AWKDIR}/fixlafiles.awk"
+
+# vim:ts=4
diff --git a/sys-devel/gcc/files/gcc-configure-LANG.patch b/sys-devel/gcc/files/gcc-configure-LANG.patch
new file mode 100644
index 0000000..d1b1b03
--- /dev/null
+++ b/sys-devel/gcc/files/gcc-configure-LANG.patch
@@ -0,0 +1,64 @@
+The LANG vars aren't reset early enough so when sed tries to use [a-zA-Z] in
+option parsing, it may break.
+
+http://bugs.gentoo.org/103483
+
+--- configure
++++ configure
+@@ -54,6 +54,19 @@
+ infodir='${prefix}/info'
+ mandir='${prefix}/man'
+
++# NLS nuisances.
++for as_var in \
++ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++ LC_TELEPHONE LC_TIME
++do
++ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
++ eval $as_var=C; export $as_var
++ else
++ unset $as_var
++ fi
++done
++
+ # Initialize some other variables.
+ subdirs=
+ MFLAGS= MAKEFLAGS=
+@@ -452,16 +463,6 @@
+ esac
+ done
+
+-# NLS nuisances.
+-# Only set these to C if already set. These must not be set unconditionally
+-# because not all systems understand e.g. LANG=C (notably SCO).
+-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
+-# Non-C LC_CTYPE values break the ctype check.
+-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
+-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
+-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
+-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
+-
+ # confdefs.h avoids OS command line length limits that DEFS can exceed.
+ rm -rf conftest* confdefs.h
+ # AIX cpp loses on an empty file, so make sure it contains at least a newline.
+@@ -1850,6 +1850,19 @@
+ # Compiler output produced by configure, useful for debugging
+ # configure, is in ./config.log if it exists.
+
++# NLS nuisances.
++for as_var in \
++ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++ LC_TELEPHONE LC_TIME
++do
++ if (set +x; test -z "`(eval \$as_var=C; export \$as_var) 2>&1`"); then
++ eval \$as_var=C; export \$as_var
++ else
++ unset \$as_var
++ fi
++done
++
+ ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
+ for ac_option
+ do
diff --git a/sys-devel/gcc/files/gcc-configure-texinfo.patch b/sys-devel/gcc/files/gcc-configure-texinfo.patch
new file mode 100644
index 0000000..ddc098d
--- /dev/null
+++ b/sys-devel/gcc/files/gcc-configure-texinfo.patch
@@ -0,0 +1,16 @@
+Chances are quite good that the installed makeinfo is sufficient.
+So ignore false positives where the makeinfo installed is so new
+that it violates the cheesy version grep.
+
+http://bugs.gentoo.org/198182
+
+--- configure
++++ configure
+@@ -3573,6 +3573,6 @@
+ :
+ else
+- MAKEINFO="$MISSING makeinfo"
++ :
+ fi
+ ;;
+
diff --git a/sys-devel/gcc/files/gcc-spec-env.patch b/sys-devel/gcc/files/gcc-spec-env.patch
new file mode 100644
index 0000000..57e7567
--- /dev/null
+++ b/sys-devel/gcc/files/gcc-spec-env.patch
@@ -0,0 +1,42 @@
+ Add support for external spec file via the GCC_SPECS env var. This
+ allows us to easily control pie/ssp defaults with gcc-config profiles.
+
+ Original patch by Rob Holland
+ Extended to support multiple entries separated by ':' by Kevin F. Quinn
+ Modified to use getenv instead of poisoned GET_ENVIRONMENT by Ryan Hill
+
+--- gcc-4/gcc/gcc.c
++++ gcc-4/gcc/gcc.c
+@@ -6482,6 +6482,32 @@
+
+ /* Process any user specified specs in the order given on the command
+ line. */
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS) || defined (WIN32))
++ /* Add specs listed in GCC_SPECS. Note; in the process of separating
++ * each spec listed, the string is overwritten at token boundaries
++ * (':') with '\0', an effect of strtok_r().
++ */
++ specs_file = getenv ("GCC_SPECS");
++ if (specs_file && (strlen(specs_file) > 0))
++ {
++ char *spec, *saveptr;
++ for (spec=strtok_r(specs_file,":",&saveptr);
++ spec!=NULL;
++ spec=strtok_r(NULL,":",&saveptr))
++ {
++ struct user_specs *user = (struct user_specs *)
++ xmalloc (sizeof (struct user_specs));
++
++ user->next = (struct user_specs *) 0;
++ user->filename = spec;
++ if (user_specs_tail)
++ user_specs_tail->next = user;
++ else
++ user_specs_head = user;
++ user_specs_tail = user;
++ }
++ }
++#endif
+ for (uptr = user_specs_head; uptr; uptr = uptr->next)
+ {
+ char *filename = find_a_file (&startfile_prefixes, uptr->filename,
diff --git a/sys-devel/gcc/files/gfortran-unused-mod-namelist.patch b/sys-devel/gcc/files/gfortran-unused-mod-namelist.patch
new file mode 100644
index 0000000..7f9946e
--- /dev/null
+++ b/sys-devel/gcc/files/gfortran-unused-mod-namelist.patch
@@ -0,0 +1,52 @@
+ Bugfix of: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55352
+ gfortran-4.7.2 -Wall gives a warning about unused module variables when those
+ variables are only used in a namelist
+
+ Reported by: AstroFloyd@gmail.com
+ Patch by: janus@gcc.gnu.org
+
+--- gcc/fortran/trans-decl.c.old 2012-08-06 16:34:27.000000000 +0200
++++ gcc/fortran/trans-decl.c 2012-11-18 16:48:56.521125252 +0100
+@@ -4586,24 +4586,27 @@
+ }
+
+ /* Warn for unused variables, but not if they're inside a common
+- block, a namelist, or are use-associated. */
++ block or a namelist. */
+ else if (warn_unused_variable
+- && !(sym->attr.in_common || sym->attr.use_assoc || sym->mark
+- || sym->attr.in_namelist))
++ && !(sym->attr.in_common || sym->mark || sym->attr.in_namelist))
+ {
+- gfc_warning ("Unused variable '%s' declared at %L", sym->name,
+- &sym->declared_at);
+- if (sym->backend_decl != NULL_TREE)
+- TREE_NO_WARNING(sym->backend_decl) = 1;
++ if (sym->attr.use_only)
++ {
++ gfc_warning ("Unused module variable '%s' which has been "
++ "explicitly imported at %L", sym->name,
++ &sym->declared_at);
++ if (sym->backend_decl != NULL_TREE)
++ TREE_NO_WARNING(sym->backend_decl) = 1;
++ }
++ else if (!sym->attr.use_assoc)
++ {
++ gfc_warning ("Unused variable '%s' declared at %L",
++ sym->name, &sym->declared_at);
++ if (sym->backend_decl != NULL_TREE)
++ TREE_NO_WARNING(sym->backend_decl) = 1;
++ }
+ }
+- else if (warn_unused_variable && sym->attr.use_only)
+- {
+- gfc_warning ("Unused module variable '%s' which has been explicitly "
+- "imported at %L", sym->name, &sym->declared_at);
+- if (sym->backend_decl != NULL_TREE)
+- TREE_NO_WARNING(sym->backend_decl) = 1;
+- }
+-
++
+ /* For variable length CHARACTER parameters, the PARM_DECL already
+ references the length variable, so force gfc_get_symbol_decl
+ even when not referenced. If optimize > 0, it will be optimized
diff --git a/sys-devel/gcc/files/gfortran-unused-mod-namelist.patch.1 b/sys-devel/gcc/files/gfortran-unused-mod-namelist.patch.1
new file mode 100644
index 0000000..8615bb5
--- /dev/null
+++ b/sys-devel/gcc/files/gfortran-unused-mod-namelist.patch.1
@@ -0,0 +1,52 @@
+ Bugfix of: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55352
+ gfortran-4.7.2 -Wall gives a warning about unused module variables when those
+ variables are only used in a namelist
+
+ Reported by: AstroFloyd@gmail.com
+ Patch by: janus@gcc.gnu.org
+
+Index: gcc/fortran/trans-decl.c
+===================================================================
+--- gcc/fortran/trans-decl.c (revision 193567)
++++ gcc/fortran/trans-decl.c (working copy)
+@@ -4589,23 +4589,26 @@ generate_local_decl (gfc_symbol * sym)
+ }
+
+ /* Warn for unused variables, but not if they're inside a common
+- block, a namelist, or are use-associated. */
++ block or a namelist. */
+ else if (warn_unused_variable
+- && !(sym->attr.in_common || sym->attr.use_assoc || sym->mark
+- || sym->attr.in_namelist))
++ && !(sym->attr.in_common || sym->mark || sym->attr.in_namelist))
+ {
+- gfc_warning ("Unused variable '%s' declared at %L", sym->name,
+- &sym->declared_at);
+- if (sym->backend_decl != NULL_TREE)
+- TREE_NO_WARNING(sym->backend_decl) = 1;
++ if (sym->attr.use_only)
++ {
++ gfc_warning ("Unused module variable '%s' which has been "
++ "explicitly imported at %L", sym->name,
++ &sym->declared_at);
++ if (sym->backend_decl != NULL_TREE)
++ TREE_NO_WARNING(sym->backend_decl) = 1;
++ }
++ else if (!sym->attr.use_assoc)
++ {
++ gfc_warning ("Unused variable '%s' declared at %L",
++ sym->name, &sym->declared_at);
++ if (sym->backend_decl != NULL_TREE)
++ TREE_NO_WARNING(sym->backend_decl) = 1;
++ }
+ }
+- else if (warn_unused_variable && sym->attr.use_only)
+- {
+- gfc_warning ("Unused module variable '%s' which has been explicitly "
+- "imported at %L", sym->name, &sym->declared_at);
+- if (sym->backend_decl != NULL_TREE)
+- TREE_NO_WARNING(sym->backend_decl) = 1;
+- }
+
+ /* For variable length CHARACTER parameters, the PARM_DECL already
+ references the length variable, so force gfc_get_symbol_decl
diff --git a/sys-devel/gcc/files/mkinfodir b/sys-devel/gcc/files/mkinfodir
new file mode 100755
index 0000000..a62840e
--- /dev/null
+++ b/sys-devel/gcc/files/mkinfodir
@@ -0,0 +1,233 @@
+#!/bin/bash
+# $Id: mkinfodir,v 1.1 2001/09/01 07:56:19 drobbins Exp $
+# Generate the top-level Info node, given a directory of Info files
+# and (optionally) a skeleton file. The output will be suitable for a
+# top-level dir file. The skeleton file contains info topic names in the
+# order they should appear in the output. There are three special
+# lines that alter the behavior: a line consisting of just "--" causes
+# the next line to be echoed verbatim to the output. A line
+# containing just "%%" causes all the remaining filenames (wildcards
+# allowed) in the rest of the file to be ignored. A line containing
+# just "!!" exits the script when reached (unless preceded by a line
+# containing just "--"). Once the script reaches the end of the
+# skeleton file, it goes through the remaining files in the directory
+# in order, putting their entries at the end. The script will use the
+# ENTRY information in each info file if it exists. Otherwise it will
+# make a minimal entry.
+
+# sent by Jeffrey Osier <jeffrey@cygnus.com>, who thinks it came from
+# zoo@winternet.com (david d `zoo' zuhn)
+
+# modified 7 April 1995 by Joe Harrington <jh@tecate.gsfc.nasa.gov> to
+# take special flags
+
+INFODIR=$1
+if [ $# = 2 ] ; then
+ SKELETON=$2
+else
+ SKELETON=/dev/null
+fi
+
+skip=
+
+if [ $# -gt 2 ] ; then
+ echo usage: $0 info-directory [ skeleton-file ] 1>&2
+ exit 1
+elif [ -z "${INFODIR}" ] ; then
+ INFODIR="%%DEFAULT_INFO_DIR%%"
+else
+ true
+fi
+
+if [ ! -d ${INFODIR} ] ; then
+ echo "$0: first argument must specify a directory"
+ exit 1
+fi
+
+### output the dir header
+echo "-*- Text -*-"
+echo "This file was generated automatically by $0."
+echo "This version was generated on `date`"
+echo "by `whoami`@`hostname` for `(cd ${INFODIR}; pwd)`"
+
+cat << moobler
+\$Id: mkinfodir,v 1.1 2001/09/01 07:56:19 drobbins Exp $
+This is the file .../info/dir, which contains the topmost node of the
+Info hierarchy. The first time you invoke Info you start off
+looking at that node, which is (dir)Top.
+
+File: dir Node: Top This is the top of the INFO tree
+
+ This (the Directory node) gives a menu of major topics.
+ Typing "q" exits, "?" lists all Info commands, "d" returns here,
+ "h" gives a primer for first-timers,
+ "mEmacs<Return>" visits the Emacs topic, etc.
+
+ In Emacs, you can click mouse button 2 on a menu item or cross reference
+ to select it.
+
+* Menu: The list of major topics begins on the next line.
+
+moobler
+
+### go through the list of files in the skeleton. If an info file
+### exists, grab the ENTRY information from it. If an entry exists
+### use it, otherwise create a minimal dir entry.
+###
+### Then remove that file from the list of existing files. If any
+### additional files remain (ones that don't have a skeleton entry),
+### then generate entries for those in the same way, putting the info for
+### those at the end....
+
+infofiles=`(cd ${INFODIR}; /bin/ls | grep -v '\-[0-9]*\.gz$' | grep -v '\-[0-9]*$' | egrep -v '^dir$|^dir\.info$|^dir\.orig$')`
+
+# echoing gets clobbered by backquotes; we do it the hard way...
+lines=`wc $SKELETON | awk '{print $1}'`
+line=1
+while [ $lines -ge $line ] ; do
+ # Read one line from the file. This is so that we can echo lines with
+ # whitespace and quoted characters in them.
+ fileline=`awk NR==$line $SKELETON`
+
+ # flag fancy features
+ if [ ! -z "$echoline" ] ; then # echo line
+ echo "$fileline"
+ fileline=
+ echoline=
+ elif [ "${fileline}" = "--" ] ; then # should we echo the next line?
+ echoline=1
+ elif [ "${fileline}" = "%%" ] ; then # eliminate remaining files from dir?
+ skip=1
+ elif [ "${fileline}" = "!!" ] ; then # quit now
+ exit 0
+ fi
+
+ # handle files if they exist
+ for file in $fileline"" ; do # expand wildcards ("" handles blank lines)
+
+ fname=
+
+ if [ -z "$echoline" -a ! -z "$file" ] ; then
+
+ # Find the file to operate upon. Check both possible names.
+ infoname=`echo $file | sed 's/\.gz$//'`
+ infoname=`echo $infoname | sed 's/\.info$//'`
+ noext=
+ ext=
+ if [ -f ${INFODIR}/$infoname ] ; then
+ noext=$infoname
+ fi
+ if [ -f ${INFODIR}/${infoname}.info ] ; then
+ ext=${infoname}.info
+ fi
+ if [ -f ${INFODIR}/${infoname}.info.gz ] ; then
+ ext=${infoname}.info.gz
+ fi
+ # If it exists with both names take what was said in the file.
+ if [ ! -z "$ext" -a ! -z "$noext" ]; then
+ fname=$file
+ warn="### Warning: $ext and $noext both exist! Using ${file}. ###"
+ elif [ ! \( -z "$ext" -a -z "$noext" \) ]; then
+ # just take the name if it exists only once
+ fname=${noext}${ext}
+ fi
+
+ # if we found something and aren't skipping, do the entry
+ if [ ! -z "$fname" ] ; then
+ if [ -z "$skip" ] ; then
+
+ if [ ! -z "$warn" ] ; then # issue any warning
+ echo $warn
+ warn=
+ fi
+ if [ "${fname##*.}" = "gz" ] ; then
+ entry=`zcat ${INFODIR}/${fname} | sed -e '1,/START-INFO-DIR-ENTRY/d' \
+ -e '/END-INFO-DIR-ENTRY/,$d' `
+ else
+ entry=`sed -e '1,/START-INFO-DIR-ENTRY/d' \
+ -e '/END-INFO-DIR-ENTRY/,$d' ${INFODIR}/$fname`
+ fi
+ if [ ! -z "${entry}" ] ; then
+ echo "${entry}"
+ else
+ echo "* ${infoname}: (${infoname})."
+ fi
+ fi
+
+ # remove the name from the directory listing
+ infofiles=`echo "" ${infofiles} "" | sed -e "s/ ${fname} / /" -e "s/ / /g"`
+
+ fi
+
+ fi
+
+ done
+
+ line=`expr $line + 1`
+done
+
+if [ -z "${infofiles}" ] ; then
+ exit 0
+elif [ $lines -gt 0 ]; then
+ echo
+fi
+
+# Sort remaining files by INFO-DIR-SECTION.
+prevsect=
+filesectdata=`(cd ${INFODIR}; fgrep INFO-DIR-SECTION /dev/null ${infofiles} | \
+ fgrep -v 'INFO-DIR-SECTION Miscellaneous' | \
+ sort -t: -k2 -k1 | tr ' ' '_')`
+for sectdata in ${filesectdata}; do
+ file=`echo ${sectdata} | cut -d: -f1`
+ section=`sed -n -e 's/^INFO-DIR-SECTION //p' ${INFODIR}/${file}`
+ infofiles=`echo "" ${infofiles} "" | sed -e "s/ ${file} / /" -e "s/ / /g"`
+
+ if [ "${prevsect}" != "${section}" ] ; then
+ if [ ! -z "${prevsect}" ] ; then
+ echo ""
+ fi
+ echo "${section}"
+ prevsect="${section}"
+ fi
+ infoname=`echo $file | sed 's/\.gz$//'`
+ infoname=`echo $infoname | sed 's/\.info$//'`
+ if [ "${file##*.}" = "gz" ] ; then
+ entry=`zcat ${INFODIR}/$file | sed -e '1,/START-INFO-DIR-ENTRY/d' \
+ -e '/END-INFO-DIR-ENTRY/,$d' `
+ else
+ entry=`sed -e '1,/START-INFO-DIR-ENTRY/d' \
+ -e '/END-INFO-DIR-ENTRY/,$d' ${INFODIR}/$file`
+ fi
+ if [ ! -z "${entry}" ] ; then
+ echo "${entry}"
+ elif [ ! -d "${INFODIR}/${file}" ] ; then
+ echo "* ${infoname}: (${infoname})."
+ fi
+done
+
+# Process miscellaneous files.
+for file in ${infofiles}; do
+ if [ ! -z "${prevsect}" ] ; then
+ echo ""
+ echo "Miscellaneous"
+ prevsect=""
+ fi
+
+ infoname=`echo $file | sed 's/\.gz$//'`
+ infoname=`echo $infoname | sed 's/\.info$//'`
+ if [ "${file##*.}" = "gz" ] ; then
+ entry=`zcat ${INFODIR}/${file} | sed -e '1,/START-INFO-DIR-ENTRY/d' \
+ -e '/END-INFO-DIR-ENTRY/,$d'`
+ else
+ entry=`sed -e '1,/START-INFO-DIR-ENTRY/d' \
+ -e '/END-INFO-DIR-ENTRY/,$d' ${INFODIR}/$file`
+ fi
+
+
+ if [ ! -z "${entry}" ] ; then
+ echo "${entry}"
+ elif [ ! -d "${INFODIR}/${file}" ] ; then
+ echo "* ${infoname}: (${infoname})."
+ fi
+done
+
diff --git a/sys-devel/gcc/files/pro-police-docs.patch b/sys-devel/gcc/files/pro-police-docs.patch
new file mode 100644
index 0000000..091ea44
--- /dev/null
+++ b/sys-devel/gcc/files/pro-police-docs.patch
@@ -0,0 +1,74 @@
+Index: gcc/doc/invoke.texi
+===================================================================
+RCS file: /cvsroot/gcc/gcc/gcc/doc/invoke.texi,v
+retrieving revision 1.364
+diff -c -3 -p -r1.364 invoke.texi
+*** gcc/doc/invoke.texi 21 Nov 2003 11:42:58 -0000 1.364
+--- gcc/doc/invoke.texi 22 Nov 2003 08:12:35 -0000
+*************** in the following sections.
+*** 228,234 ****
+ -Wno-multichar -Wnonnull -Wpacked -Wpadded @gol
+ -Wparentheses -Wpointer-arith -Wredundant-decls @gol
+ -Wreturn-type -Wsequence-point -Wshadow @gol
+! -Wsign-compare -Wstrict-aliasing @gol
+ -Wswitch -Wswitch-default -Wswitch-enum @gol
+ -Wsystem-headers -Wtrigraphs -Wundef -Wuninitialized @gol
+ -Wunknown-pragmas -Wunreachable-code @gol
+--- 228,234 ----
+ -Wno-multichar -Wnonnull -Wpacked -Wpadded @gol
+ -Wparentheses -Wpointer-arith -Wredundant-decls @gol
+ -Wreturn-type -Wsequence-point -Wshadow @gol
+! -Wsign-compare -Wstack-protector -Wstrict-aliasing @gol
+ -Wswitch -Wswitch-default -Wswitch-enum @gol
+ -Wsystem-headers -Wtrigraphs -Wundef -Wuninitialized @gol
+ -Wunknown-pragmas -Wunreachable-code @gol
+*************** in the following sections.
+*** 681,686 ****
+--- 681,687 ----
+ -fshort-double -fshort-wchar @gol
+ -fverbose-asm -fpack-struct -fstack-check @gol
+ -fstack-limit-register=@var{reg} -fstack-limit-symbol=@var{sym} @gol
++ -fstack-protector -fstack-protector-all @gol
+ -fargument-alias -fargument-noalias @gol
+ -fargument-noalias-global -fleading-underscore @gol
+ -ftls-model=@var{model} @gol
+*************** effectively. Often, the problem is that
+*** 3014,3019 ****
+--- 3015,3024 ----
+ complex; GCC will refuse to optimize programs when the optimization
+ itself is likely to take inordinate amounts of time.
+
++ @item -Wstack-protector
++ @opindex Wstack-protector
++ Warn when not issuing stack smashing protection for some reason
++
+ @item -Werror
+ @opindex Werror
+ Make all warnings into errors.
+*************** and grows downwards, you can use the fla
+*** 11474,11479 ****
+--- 11479,11502 ----
+ @option{-fstack-limit-symbol=__stack_limit} and
+ @option{-Wl,--defsym,__stack_limit=0x7ffe0000} to enforce a stack limit
+ of 128KB@. Note that this may only work with the GNU linker.
++
++ @item -fstack-protector
++ @item -fstack-protector-all
++ @opindex fstack-protector
++ @opindex fstack-protector-all
++ @opindex fno-stack-protector
++ Generate code to protect an application from a stack smashing
++ attack. The features are (1) the insertion of random value next to the
++ frame pointer to detect the integrity of the stack, (2) the reordering
++ of local variables to place buffers after pointers to avoid the
++ corruption of pointers that could be used to further corrupt arbitrary
++ memory locations, (3) the copying of pointers in function arguments to
++ an area preceding local variable buffers to prevent the corruption of
++ pointers that could be used to further corrupt arbitrary memory
++ locations, and the (4) omission of instrumentation code from some
++ functions to decrease the performance overhead. If the integrity
++ would be broken, the program is aborted. If no-stack-protector is
++ specified, instrumentation codes are generated at every functions.
+
+ @cindex aliasing of parameters
+ @cindex parameters, aliased
diff --git a/sys-devel/gcc/gcc-4.7.2-r99.ebuild b/sys-devel/gcc/gcc-4.7.2-r99.ebuild
new file mode 100644
index 0000000..4471a24
--- /dev/null
+++ b/sys-devel/gcc/gcc-4.7.2-r99.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.7.2.ebuild,v 1.6 2012/11/05 04:25:47 dirtyepic Exp $
+
+PATCH_VER="1.3"
+UCLIBC_VER="1.0"
+
+# Hardened gcc 4 stuff
+PIE_VER="0.5.5"
+SPECS_VER="0.2.0"
+SPECS_GCC_VER="4.4.3"
+# arch/libc configurations known to be stable with {PIE,SSP}-by-default
+PIE_GLIBC_STABLE="x86 amd64 ppc ppc64 arm ia64"
+PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64"
+SSP_STABLE="amd64 x86 ppc ppc64 arm"
+# uclibc need tls and nptl support for SSP support
+# uclibc need to be >= 0.9.33
+SSP_UCLIBC_STABLE="x86 amd64 ppc ppc64 arm"
+#end Hardened stuff
+
+inherit toolchain
+
+DESCRIPTION="The GNU Compiler Collection"
+
+LICENSE="GPL-3 LGPL-3 || ( GPL-3 libgcc libstdc++ gcc-runtime-library-exception-3.1 ) FDL-1.2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86
+~amd64-fbsd ~x86-fbsd"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ elibc_glibc? ( >=sys-libs/glibc-2.8 )
+ amd64? ( multilib? ( gcj? ( app-emulation/emul-linux-x86-xlibs ) ) )
+ >=${CATEGORY}/binutils-2.18"
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
+fi
+
+src_unpack() {
+ if has_version '<sys-libs/glibc-2.12' ; then
+ ewarn "Your host glibc is too old; disabling automatic fortify."
+ ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
+ EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
+ fi
+
+ # drop the x32 stuff once 4.7 goes stable
+ if [[ ${CTARGET} != x86_64* ]] || ! has x32 $(get_all_abis TARGET) ; then
+ EPATCH_EXCLUDE+=" 90_all_gcc-4.7-x32.patch"
+ fi
+
+ toolchain_src_unpack
+
+ use vanilla && return 0
+
+ [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
+ epatch "${FILESDIR}"/gfortran-unused-mod-namelist.patch
+}
+
+pkg_setup() {
+ toolchain_pkg_setup
+
+ ewarn
+ ewarn "LTO support is still experimental and unstable."
+ ewarn "Any bugs resulting from the use of LTO will not be fixed."
+ ewarn
+}
diff --git a/sys-kernel/gentoo-sources/Manifest b/sys-kernel/gentoo-sources/Manifest
new file mode 100644
index 0000000..0be4b2c
--- /dev/null
+++ b/sys-kernel/gentoo-sources/Manifest
@@ -0,0 +1,83 @@
+DIST deblob-2.6.30 79041 SHA256 e1f6ba1eec8ea0de1c4099a066512dfbc53ca5c6527e7593ba0d4e85b36b626d
+DIST deblob-2.6.31 80819 SHA256 4dce1f711d5098430f15ca0664ad3a1ad83a0ce6faf10d0dc8b8f53f2ab655f0
+DIST deblob-2.6.32 84094 SHA256 de625f0bd221c9c38d4453f1b709622f222d86a0ae9350d2b7b0e17795e6de6d
+DIST deblob-2.6.33 86599 SHA256 176aa9c73f27c9c69f198e3637cae61072f152c25c468ffbebf1a4c2494d52d0
+DIST deblob-2.6.34 88276 SHA256 9478ada7a36f3858ef9ba3dc5c9609fb45fa9b286a002ccfba09045c81b217ed
+DIST deblob-2.6.36 90559 SHA256 fe4fb0cb06d017d1ec70f50c1c06e184c31c9bba6c4b359e43d54125d60501df
+DIST deblob-2.6.37 97431 SHA256 8beee2feddd27230aac078017d4927b67296941c855720560e58ab520abe7e2e
+DIST deblob-2.6.38 99773 SHA256 ddabcd846baa19b7e82adec3ca8ff17f2f7425c292516889098559f639e763eb
+DIST deblob-3.0 102531 SHA256 4c9d98faabc226602891e6eb36634f1c228017bb90f0d3ceaa42d41d4b27df0f
+DIST deblob-3.2 107602 SHA256 5db88405af6d51a77d84354afc3b2bdf673b1a5dcff37bb8db4ccbd12d91db20 SHA512 f34b7128adf716c908cbbbfefe72149fcd88b727d27edab43be65d4e6a55112b6d937d5c2bed86454d58781f3766ba4cc6db668cb6174a6039d276499da37cb4 WHIRLPOOL 0922457f7ca413c9d8115182964a7c051560799c4724452f81cb4c0383cf62c45b0364d6e639bd9d2b9000411d8773cabd2e8af99e8b0dc7f7bdc886db432d6d
+DIST deblob-3.3 107222 SHA256 09a4ee54faf7d96a9ca150bfa3a7a2234d589457bac40f03a6e19b5774b1ef5c SHA512 f459da012a1c0756f59defdad0da502fc0343d6555b4c854fa32e1e8d640d0be31f1ae5f77a594ed6bf7915a543b759b34108d8b6aff0ad67efc273ec0212d67 WHIRLPOOL 44b7f0af3a84d9e65fd845f568d42c7c2f504aecc3a3750d2f6aaea159c791754a3ae7470b646888c418cd0c611a1233be12261d775d673b87ee6d0d7613c943
+DIST deblob-3.4 109026 SHA256 2fca296bccfa7dc25447f36975971597f67730168a9bc4db0853e55347950680 SHA512 7e6263e265dba957e966b76366566c5b318322c33ec60c9f268af1a375271cd1c1232749902832554f93451225bf61c967f314a48c2890984974d30a984d2e01 WHIRLPOOL f3d8d76078b4a372277926d1d4f3d449968acd64e57a5fbe8fc1c3057e8a9893ba1d580418598089977bb808d9a351de04181dd7f73395e99b306ba8d4886160
+DIST deblob-check-2.6.30 247608 SHA256 da1aecdf3ab7f1207b90642d303e52262ccc2ed9e49739b729512b88950d17f3
+DIST deblob-check-2.6.31 247608 SHA256 da1aecdf3ab7f1207b90642d303e52262ccc2ed9e49739b729512b88950d17f3
+DIST deblob-check-2.6.32 247608 SHA256 da1aecdf3ab7f1207b90642d303e52262ccc2ed9e49739b729512b88950d17f3
+DIST deblob-check-2.6.33 247608 SHA256 da1aecdf3ab7f1207b90642d303e52262ccc2ed9e49739b729512b88950d17f3
+DIST deblob-check-2.6.34 268995 SHA256 2c995748c14bed50b93746a35a44b33138b2758031e3ef7d0159911cbab83c30
+DIST deblob-check-2.6.36 285794 SHA256 5e6fcb7110da5fb62edb0b85f169090de714cba2aac3cbfafbd84b6a860c8641
+DIST deblob-check-2.6.37 328720 SHA256 113898a885fce63b367ea6b7ddcf1e7c3ae47bac01617c228252a061433b6d32
+DIST deblob-check-2.6.38 345831 SHA256 6f681dbd1c1c44cba2c9902dd77a5a51b2d1cc81567cffc60ba92bd0bdd4ff2f
+DIST deblob-check-3.0 377076 SHA256 72ab3f74cbcde9d453f8a4e30fd6a6339812806fe6dab3b632c1c68b90b0b104
+DIST deblob-check-3.2 423268 SHA256 9e67dd0885aa8ef356dbc15d487c8dea5a54f74c5b03a5d7946b65ee43f12638 SHA512 3abb9968ef4750fda90e4e2283981fd4691b7f9854244413b31d17bb60382a6d809fec929d8d3f9b52397dd9f9fa26783f4c3a25f3f4115b76ed585ea68e9916 WHIRLPOOL 891c3f809af470d680ae896c843c09612fb5124f2805e03d67b28ec4353bff0bc346ae9f680d900f0f63e681be86a0195f9baab7dcf3b5accfda739b106766fa
+DIST deblob-check-3.3 427140 SHA256 ed8fab94c7f01d89a3007135a1260553b71fa1d8e0b4e42bdecb3ffbba81b3fd SHA512 6fa30cd1a384935b68800ac94bee321edec43a42d42a75a727a580b02fec67354ec799671dc23c4d51e73339e0efbf540a98b57a1679ff2a0a3c7bc75522a4a7 WHIRLPOOL b678413a91af672e5d910901777160681977dd5ada8b09901aeaa3e09c976a6ac06602e3fcc55d982f93ab487e9b0b052a58401eaaf968be503546d8012fd1c4
+DIST deblob-check-3.4 448778 SHA256 28ce952c082e765784f9e5b63f5a3a4fb93545e5e788dc94d094c0b3ae8ea3a0 SHA512 f8f47a0adcc1b9a16c155d89d72d91a02d47bdbb3ac3a353be3873dc868fa44451367b7bb3906817d1ca8f51b64c99ce381d2fa3121582b70c7c2efb18dfc579 WHIRLPOOL 37d219204e15e0c81ac43faed93f7a5051735c474efb2b5167117cd463fbe81167267b756e8ce546447a30ad5bac651c943401ed98ec61713e20af89aa4fb957
+DIST genpatches-2.6.22-11.base.tar.bz2 88451 SHA256 e02778ee0ec141dd84528247cbe49b826df34b2824f7791a71fd3374a3bcd5ca
+DIST genpatches-2.6.22-11.extras.tar.bz2 67967 SHA256 4b39c0ac2873572a006cc38db80279f701982c604627ef192447dbcbb3b13545
+DIST genpatches-2.6.23-9.base.tar.bz2 138031 SHA256 ad4319131b8117f58a9057d6ac25870a188571e46ef70c6c85930af3530f3bf6
+DIST genpatches-2.6.23-9.extras.tar.bz2 147992 SHA256 9d272384be06e00ecfdfa1795262a0859e86acd09aa95c531ff311e210d87db6
+DIST genpatches-2.6.30-6.base.tar.bz2 75248 SHA256 e43d166b73a219f35936a13981b8ad22a99eb20112daacab2fb782ab3af92216
+DIST genpatches-2.6.30-6.extras.tar.bz2 24978 SHA256 faaad5a9cf5c92d6d97843aed4cee8c20d431e9542628410cb0c75b7ea51bc88
+DIST genpatches-2.6.31-11.base.tar.bz2 255895 SHA256 a3499d8942d76a8b1fdedace50417e8b8df20155ff6c987c34901e916a4ec508
+DIST genpatches-2.6.31-11.extras.tar.bz2 24940 SHA256 301642e9874e0afde820dbbf650172552e898bf965f1598e1ec34ce0874c5d80
+DIST genpatches-2.6.31-7.base.tar.bz2 139031 SHA256 7da94e9ec89bcfe0622e2a1392103c7cac9dc3f5421c8e073b59512fb42b7443
+DIST genpatches-2.6.31-7.extras.tar.bz2 24961 SHA256 ccf0dc37d1a799bcc67bd9eb3e971b346af8495d1826d7d3f3711819812c2120
+DIST genpatches-2.6.32-8.base.tar.bz2 246247 SHA256 2cac1e1f85042fd2e5b707d6ddbba64f910326b18d5fb876514c007b787b3b1d
+DIST genpatches-2.6.32-8.extras.tar.bz2 24934 SHA256 50b70c76461aa52f7f2ad88175e7f08eb555f7f1dfd274759ec0c2a9748bde5e
+DIST genpatches-2.6.33-3.base.tar.bz2 135726 SHA256 c1d29084f715c1c30fcbb64a29c8cee076cf29286cf0ad10c9df51eb136b4bb6
+DIST genpatches-2.6.33-3.extras.tar.bz2 23522 SHA256 a301f823a11cbaae5b81092b60d92a9d9b53e8522167713428e74db2b4c629c1
+DIST genpatches-2.6.34-3.base.tar.bz2 7695 SHA256 0b603ae584d4915653d5b3249eef00153ac1a2dca7ec4d300fc4d60300c72a48
+DIST genpatches-2.6.34-3.extras.tar.bz2 15527 SHA256 7e99fb2c4320446b312110fc6f9f5e2bcc60127f80f80d8cb09c34483c68dca9
+DIST genpatches-2.6.36-7.base.tar.bz2 107783 SHA256 7364766239e9c154157b4667a49e37d0eb3cbad09f665de66fe41bb026262a20
+DIST genpatches-2.6.36-7.extras.tar.bz2 15516 SHA256 207b6ec18ad6c24dbe6f4184b4d142f83d5b2517b3202da24fb7930313422a3f
+DIST genpatches-2.6.37-6.base.tar.bz2 183931 SHA256 094fdfe60bd30f3edf93f9a54b97f14c271514efcd6440bebf3e1c081ceed75a
+DIST genpatches-2.6.37-6.extras.tar.bz2 15548 SHA256 1675dc20a7607dc4574bb64478a3807be44e70a1193cd0c26cd15d0083aef026
+DIST genpatches-2.6.38-7.base.tar.bz2 155312 SHA256 a01d37219dc2b2311a0994a4d0fd3a9148bfeb31ea78c64cc78cbb900de432da
+DIST genpatches-2.6.38-7.extras.tar.bz2 15675 SHA256 6d4c134be67714382efc8aec208c5a73d6c0f84d96acc76640b9ed3be93877a4
+DIST genpatches-3.0-8.base.tar.bz2 216509 SHA256 857d6ccd8bf965ec82c944c229218fb71a37c0c13f26228dc69c4e556dbfa17d
+DIST genpatches-3.0-8.extras.tar.bz2 17207 SHA256 ec88ca4408c668a2c4d2d25c3d4a8c67fad4bb08133db91bbb929c0053305fda
+DIST genpatches-3.2-5.base.tar.bz2 28499 SHA256 a5795f0f1c5302423c89142af51835bbf238bc0f31ae236a676fea4ae3858f13 SHA512 f90a2a5fc60ebf3ff130bd7e3cbc0c93cf01f1f36a4dff7ad593438e1412710c8acb6f82b98c5f387a0fd0d5a7d3053c7daf00e74592eb299f3903baef68d9bd WHIRLPOOL 47f11afbcc46ad2034afb1eea8341675939a9ef25b4bc74fa62216eb87421ba6803d51e1d1f1397d51f4e239ff368763e90792a5f0ad548ee3746830b2a90852
+DIST genpatches-3.2-5.extras.tar.bz2 17208 SHA256 7f60ab18e2965d024b7a36327577bcc771061f2cfac221ed475a6fd6b2ab89c7 SHA512 bea678f7eb56eb992c99d9c49b8d1602228dec00e7fd255432ca30847aae9d4d223bb9ab27f5e72ad422e0d0f2ac319fa590d5fe0e53824b415d6d8bba686add WHIRLPOOL 875f72ab9b81e1cc7a7a06d42783c04204987cfd49042f3cf19b1ed80b0d91f8fdaaf13152b7a22a0d0c1eb9a22719d83eaa9c4fcf9d2024e62420332f081019
+DIST genpatches-3.3-9.base.tar.bz2 220169 SHA256 8e33b2c9c3a8a1340160c94b081fe44cadb8a79b6bd3b8bfcfce4c78171dc053 SHA512 b70f65a059fb6c44bf27da80443af8970fcb0d1181c491dce16c9fa5914bf962402968f05d539ddec1ea2dc130c53a2fdd9ce362927cd14791afddbc5d278faf WHIRLPOOL badd40ed57b5d91348881d0cb5c05134b9a2672c792192607951fa4c9664d0d4751872cea1d296bc27ec9a1108c620b8e20cbdbdf2096038fec8b9fdef4f368f
+DIST genpatches-3.3-9.extras.tar.bz2 17199 SHA256 9c8fdc2671f1a66b5e473f35e2e49febc825d7383c009a5b626f44d872130cf4 SHA512 593e235ae98b8e15ee54ad0523b23e00ae96f025eaea850f38a1b13d9c14a1b68917bed68b9c0bbbec9221bd09dfdf08e470f8e81e4a451b6b9b6d998b7e72bf WHIRLPOOL 2ab4e1a64404b3371cde38624d5b3f700c45da435df31b3cd164f6e8f449b3b2915253e7d0ef1a79f0b455461f1a2c75d5d404e76d2d5d3ee6824f5468d1905f
+DIST genpatches-3.4-10.base.tar.bz2 217616 SHA256 e37830a68496a6d93eac70fd7863d7540bca38a95a6344857549baf61043c75f SHA512 4ac4c30fa4506308ee34f252149b9079e283c73646a8de22d8e73ad8a9b949b30055dcd036d26aaec01d75da933449c6f231cb65d55d9d3c2039d6f6c3ddf5b5 WHIRLPOOL eeea1cd39bfd474eddf4d05246470078f780134b667d379bb6d31b2325a698b0163e123946cc21ff44009be695fcb8e78abb9302455b75c1681d4f90a969a0c4
+DIST genpatches-3.4-10.extras.tar.bz2 17508 SHA256 be8e087b3a0508e88bd36d2d4bec07e0756a3e7f7b31de4dbfd51d79412c2a96 SHA512 f84be04008f254509de7eb05c78fe040fa563038e8ba2744412296a54208c7889417f72ada0db8b21754e2db544fb921b75300728d48337bdc7a7dfa02cdcf26 WHIRLPOOL b0331d32d4ef74fd2357dfc2dc046562828f9bbbbd175412276d79d4097a11a6c91847ba364d8e84ffee361bfd868161951ae740ee232504d1ae4fbb9d87f74e
+DIST linux-2.6.22.tar.bz2 45119878 SHA256 73c10604c53f1a6ee65ef805293d23903696f8cef864f42d7de9506f0d2ba4c7
+DIST linux-2.6.23.tar.bz2 45488158 SHA256 d4e67c0935ffb2a4158234bff92cc791b83177866009fc9b2214104e0038dbdb
+DIST linux-2.6.30.tar.bz2 59435895 SHA256 d7b9f19b92fd5c693c16cd62f441d051b699f28ec6a175d1b464e58bacd8c78f
+DIST linux-2.6.31.tar.bz2 61494822 SHA256 0acd83f7b85db7ee18c2b0b7505e1ba6fd722c36f49a8870a831c851660e3512
+DIST linux-2.6.32.tar.bz2 64424138 SHA256 5099786d80b8407d98a619df00209c2353517f22d804fdd9533b362adcb4504e
+DIST linux-2.6.33.tar.bz2 66266488 SHA256 63e237de3b3c4c46a21833b9ce7e20574548d52dabbd1a8bf376041e4455d5c6
+DIST linux-2.6.34.tar.bz2 67633622 SHA256 fa395fec7de633df1cb85b6248b8f35af98380ed128a8bc465fb48bc4d252633
+DIST linux-2.6.36.tar.bz2 70277083 SHA256 15a076d1a435a6bf8e92834eba4b390b4ec094ce06d47f89d071ca9e5788ce04 SHA512 d9855936baf77308b221f38207e13168009ec9c97ae436787e5247d8207317513b0c825cd3199adfbb241e78c131a7feb5fe89d504058fc12fdb3d0709f8f493 WHIRLPOOL 6646edd4b03791cb22cf6e2763e25d23599c55fe295cd6112007c324320707de8b92a09cb3532f6d7d23930b8009d269b646c8a31d5a28a06606f98fa7dd6600
+DIST linux-2.6.37.tar.bz2 73577826 SHA256 edbf091805414739cf57a3bbfeba9e87f5e74f97e38f04d12060e9e0c71e383a
+DIST linux-2.6.38.tar.bz2 74739098 SHA256 72f0cfaefb8dc86b219d5a742dd0375332627641ecbdf5badd3158e2127b9304
+DIST linux-3.0.tar.bz2 76753134 SHA256 64b0228b54ce39b0b2df086109a7b737cde58e3df4f779506ddcaccee90356a0
+DIST linux-3.2.tar.bz2 78147838 SHA256 c881fc2b53cf0da7ca4538aa44623a7de043a41f76fd5d0f51a31f6ed699d463 SHA512 1f57b98e8da34b10f37ce94e0f13a994c111d483b104c27a8f58a4a55013a73a9f1ffcebb597be63ce0dfadb92201e93b0e072ba49bac0033026aceb0840c812 WHIRLPOOL 3dc893bde09f064e4614183964a4b9feaab938ca7a739f46f825818a577884eae815f195b52a4c55c571345de59d7ba09631fb68dac481a0837b24868ce60e3d
+DIST linux-3.3.tar.bz2 78963640 SHA256 8fd669b4e48181b8d44644a45bf421a84bb8d5ec273ef36349796443e442f333 SHA512 dcb99e48827d6b022fe75cbc4cd8079adf6b2ca3dae7964a34ac3a8a6374f6ced44047abc4ce814bbe2fb537ab003911563962eb3cb6c7e98788d9277dd716df WHIRLPOOL 4895be5e6301f7359807482711242efc1d2a8850641b7b584fba9f12785ef9241520687ad28c79a2d39ba5abc4f371f1f080305e416a175200b4a58c59c0d86f
+DIST linux-3.4.tar.bz2 80173484 SHA256 a797a15d0b6228381507c14ecf4eec4a6cc5c77cfd521ba3b3e1325e85b5b16d SHA512 597002fa82b70b5052f9e05c1d8547bc5f89d8e1aecfd1765f4033f6d2c5c02d51b6372dbeef12c2eb070ae318a04c39925050cb37a39399961c8b263479fca1 WHIRLPOOL 57e6dd7094db2bc41175d7bb551e8237ea96eacf3710a734e8413915c54304e84ca11455e41c7752882ce81048459555d44d1798bf0775b79c3d74b13aa3a9f2
+EBUILD gentoo-sources-2.6.22-r10.ebuild 777 SHA256 49de90b4dc3761169d58243773222aaa774e47ee771e10ed175f91a35259e380 SHA512 9422ab8d0e2128a314c3f576996fabc57dd113c6329c319dd35bae0bcc800b8c126a6ddcd500a7e920c243f860f5f400b4cb57b17e03716d40db43e4888c79f7 WHIRLPOOL 8f43a15ba3613c2e3039e740100241fb9c31a5dc5e2d8d056c841742c4e8f39ee26ce6e792ae14c687b5aa341b9b67b9c8a07e1c03fec20fe36a5046b34fda31
+EBUILD gentoo-sources-2.6.23-r8.ebuild 777 SHA256 bd804c4a2d4b6f3555fbb6d53ea6060281a15dced18a4dab8b113da93d4b185d SHA512 6272cb117de44d2eb2591b7797a0803fe3ee20eeba31508ccec996e7d6efbacf0d0fcfc86c3d628b2f2757f569e4bb96e1e868cbf003cbc49aad6d33f97abd51 WHIRLPOOL e7412e1909cf4a7662a71a100baf947606ce1af0c25320e8b7e3eb795c8ef5de98b402faa5736431f838e6098d882df3b6d9fd835e22b5951fdc5d2e0e274d20
+EBUILD gentoo-sources-2.6.30-r5.ebuild 766 SHA256 714c62a76b65c573dc02a616feb8deea275493d104ad2770ca11a3005c119378 SHA512 446ea18a09a27289c240fbc278ed285d84cb6c293a9727e842c248bfbab1d6690b7f5e2751db810da4037dbbf8d794350465ea0632f2e6a12482eaebf71928c2 WHIRLPOOL 2c652ca06ba64dc8d386921c0420df28ad1b97058dd6474d5ee837b47e4cf3ae347db22814e7d442083a049d8ab8e1d5cd35536b5bbff647e23ad1560c6096a7
+EBUILD gentoo-sources-2.6.31-r10.ebuild 774 SHA256 3ed8b0090910ac1b48b3a3882050391ade9d8d8e57bd11dfaac1303d2a3ed33f SHA512 530f56c455ab91616547015b57799be26e49f6cf3607a13eb54ea5d827c0337abfa5a2b593166cd372c2d092bc275a690916ad5548c7e4bfb7c2491cce6b4cb4 WHIRLPOOL 04a0e6f551af8fdb41101572f14ff7cf2908b2194ad1b49eabee2defe571218520f0c8d8727f72c0740805738f88a939238428fec907cfcf0fd5397f907cb82d
+EBUILD gentoo-sources-2.6.31-r6.ebuild 769 SHA256 9260d034c0afc6c91563d8026c7146e8968ae8cf642f242e3921c9af3d3304c5 SHA512 fd9c68150516ed32e2be068b09b2564308c4fd8549781e5985e984d30c6a90d798b5fb668bcd151a3991f003103430fc81932d3de6ccc8ad714326fac76b9e8e WHIRLPOOL baa7847ef806a309e7179f3ed84725710ad6f359a8bcaaa30eba0c9860db58dd9e4e4718484507e99299e3c6b590683fa2b9754c960fa2a48cc17e712ee0f8a3
+EBUILD gentoo-sources-2.6.32-r7.ebuild 769 SHA256 210d6cba70d8090f28dca701087c1a75ad1602d0797677263a229eb06b81d7f3 SHA512 717fb5d4bdd3165ab68225a996f2c765d0965c8bb533e24b6dedfdbd3daf2b021280f0cf940fb96634bc0adfbcb1fda97d6ec719e8285d9ad1b2957d2c15d932 WHIRLPOOL e51df5b7cef520c6abda2ec38df63c5d92f89ddf02f01ae4433db9a32b1dd6ede71d26784ffe9d9aa4b454956ce5d8a1f9ff573586d6f5a5a8bc254d9ffb270e
+EBUILD gentoo-sources-2.6.33-r2.ebuild 774 SHA256 6d9dbc09a6cc1a30f64ac1bfe10abf7d28ff81bcc25461e9b3923db45215c04c SHA512 04c2c420cb37507395722634bc8daa04fd44e1e2278431ee7dc25d8fdabe371b33bdb3f774887a5b2e9a6722f1ae028d87cb8c3229418ccd1516167b9660ad51 WHIRLPOOL 501291371c1d42d899eb13769f7e66c6d6162d2e63b1f32a2bc199f078b55ab1a1de374ea8ab8bc1b41a9c423971e85a11dbb877d3b5da32f52c7c3ef92db270
+EBUILD gentoo-sources-2.6.34-r1.ebuild 778 SHA256 fb55f515505b9383e05bd439f248be42ed6e3ffe7890081b1069ed2cc2981dce SHA512 51b505bfe5c2d44cb6d1cbe04dd498893a89be001b26f565a90eada8c6fd5828d27d02856ba717763ebecc72a02b07a1ba235ccf8d593a2c514e927768f77b15 WHIRLPOOL 013550b8ca6a1152ad21e2d28532fca73e3b564021f2e9fec392f3a11de0da0dc4ec3a05d3bf1c3e87ac0a8482c3b3160a1cb5d1b59fe837de744657cf319fa3
+EBUILD gentoo-sources-2.6.36-r5.ebuild 817 SHA256 6a492995283b7a9750eae55d8e1fccadf9a8f8fbd5be7a76f38b003de01fedb6 SHA512 6f769e70731ab5095a6b7e89b0847e8db3f3047363681934e022e52cbcb0c4d49fe7c4598c05943042a00111e36e13833a7e2f44bcc7e78d01e2bd6e8fcafe3f WHIRLPOOL e63f3c2300738df01cfbe07434b3fab5d088d894f2ede02584a300918a34f83332b586260aaca9a7ee43e42eeaee74b63d05c791f9af5299e8ff58705bdc0b1b
+EBUILD gentoo-sources-2.6.37-r4.ebuild 816 SHA256 3cea4124587823cf1d362e88b7f26dd3359b99a77dedf89f081f49d8fd6e8ba3 SHA512 d5e3cf9892492345258330c8d5e77e3162d85f9bc227e5f04f4ea4ba4aa0d7b828bc717ac6fc2f3c11e502cde39d1f0f6485acb398f7892d7606a8c69c31dbe3 WHIRLPOOL ab39a368058af6a568231ed4b9acbe0a4250826af009bde489947180eb3d296dde5639a736970c0e905580c08f8bfa984c3ec46f63eac2bca03417024d0eb9ac
+EBUILD gentoo-sources-2.6.38-r6.ebuild 811 SHA256 c93f9a7042de8cc134884821dda32769eb88eeab44a18abb12a0ff558373fb39 SHA512 b783dc9279a1a63d6b5a592a9d3f09ad2760e997dce1ec7b6bf12b01d17210dac090d03f7e45db848193dfcccc77657f799cfb0876e8c0d5ca23c06eee37cf11 WHIRLPOOL c303bea3f4fdc3b69e9015c3142cc528a0aaf32072d3a04c056fc1342f2717421d7fee268c6ca48df0a5a02a99e09a422899adbcaa42e8711cf8a565c34aacc0
+EBUILD gentoo-sources-3.0.6.ebuild 848 SHA256 a476c8da49eb586b67f81a17d574802ffdb739970be0d68f143ecca13ff63f7c SHA512 1ae4d6158431d80f74e46fee20fdaa3300c5cbe106226fec1b920a857675dfd75270c2007eb18bf7e28cb4cf517e1c5a92e35c6391f7332696bf8275e34569ff WHIRLPOOL df3cd5590789c1d6dc6165cb8485d3aa33e1b00c65809253a1807e9ab69cf545b2fcf9e77d6d4b1a63cc641b11003ee6e3f8084b7889fde130a00e1566f7f88c
+EBUILD gentoo-sources-3.2.1-r2.ebuild 855 SHA256 73ed48ba354a53c28ca8b74c7d640a56b742a0d7de4c81d6aa2db9d6a0c49ac2 SHA512 474fce5b111ecf4d74fbe0efabaade6d08e65bd8c6b01b9e4940f0440312c5a1baef8ca7bed9dd5636cedacf4bc43e79d3191246ff3e655904769aaa01ef5f14 WHIRLPOOL 925e20636f102aef4dd59a8e9d7d8d2bb138d0808b20b1fee43031abf9bacb7a2f919b547b18592bde35560580c2c23ca41562b2ba4af5787fda03c5d1373fb4
+EBUILD gentoo-sources-3.3.8.ebuild 848 SHA256 9304590f68f97d5e87b1bf2ae0123a455153c09ae5c6872683dc73d07b27f0d8 SHA512 7f0afb484f09605df9a7de7d196a0b0eca2cc21d7ee7e8aa227f6819bbe4dfe38d3ccbaa703292a210fd185162c8a099ede18209643d2a7e50a4827ad7270172 WHIRLPOOL 494c9e47c24dd8d0c7764c7e1785e97d3aa22e89258141d3970b9bd7c9cb8a2548fa64f0b7d1c48acbcce5207deca69059dbfdc67bf991c489ea514fdc31e87c
+EBUILD gentoo-sources-3.4.9.ebuild 855 SHA256 cd6b301534a4ea27b5b104b2d83e6ba90c54f11b36a74d066fca34168c796b37 SHA512 eeb3ac31a6b54d684526c48f7dee23bf25386287dbeafea31796d05a19857771d53012bf7d99fceb2f0f5f9d9b74031f882df6a701608fa340e2ae3a8a06cad0 WHIRLPOOL 566ebd679fd5468dc9209482a71cf8c1816c46576e6e931a37054c22a474d4047e7d72e06d5d73c633390727713e41cc4f8b7dacb4ba2ba1efb39d01f3610a51
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-3.3.8.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-3.3.8.ebuild
new file mode 100644
index 0000000..13ea75b
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-3.3.8.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/gentoo-sources/gentoo-sources-3.3.8.ebuild,v 1.6 2012/09/09 15:50:07 josejx Exp $
+
+EAPI="3"
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras"
+K_GENPATCHES_VER="9"
+K_DEBLOB_AVAILABLE="1"
+inherit kernel-2
+detect_version
+detect_arch
+
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 sh sparc x86"
+HOMEPAGE="http://dev.gentoo.org/~mpagano/genpatches"
+IUSE="deblob"
+
+DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+
+pkg_postinst() {
+ kernel-2_pkg_postinst
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+}
+
+pkg_postrm() {
+ kernel-2_pkg_postrm
+}
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-3.4.9.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-3.4.9.ebuild
new file mode 100644
index 0000000..741e0f5
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-3.4.9.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/gentoo-sources/gentoo-sources-3.4.9.ebuild,v 1.4 2012/09/09 15:50:07 josejx Exp $
+
+EAPI="3"
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras"
+K_GENPATCHES_VER="10"
+K_DEBLOB_AVAILABLE="1"
+inherit kernel-2
+detect_version
+detect_arch
+
+KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ppc ppc64 ~s390 ~sh ~sparc ~x86"
+HOMEPAGE="http://dev.gentoo.org/~mpagano/genpatches"
+IUSE="deblob"
+
+DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+
+pkg_postinst() {
+ kernel-2_pkg_postinst
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+}
+
+pkg_postrm() {
+ kernel-2_pkg_postrm
+}
diff --git a/www-apps/redmine/Manifest b/www-apps/redmine/Manifest
new file mode 100644
index 0000000..affde24
--- /dev/null
+++ b/www-apps/redmine/Manifest
@@ -0,0 +1,4 @@
+AUX 10_redmine_vhost.conf 344 RMD160 efdddffeca3e4f47673becedfa5c6de567f0573a SHA1 0e7f824b08ef027b8fa9bd05717917a2f1189c28 SHA256 c6b3d90a781e0a362ca5708b0c5d6c303cad7aecc9fb09165241a70a5cf5e10a
+DIST redmine-0.8.7.tar.gz 3177664 RMD160 49fc46c2f0af41e4e5262ffb7f1b26740add6b8b SHA1 6c11d58e7d9d732be1e1225f45323167e4d4e739 SHA256 b225bb32efaa28ba054014be18b97ecffcd4e07df671e2a85eed8e1e8159b4ed
+EBUILD redmine-0.8.7.ebuild 4372 RMD160 2677a7044fa4e016baf47d393cd7200644094741 SHA1 a446b01e27fce9e1895b5129ed234c3eff4cc28c SHA256 c9afdacf68a08cb05e60477c08bbee1e4c5dddf5caa300f93fc8daae4cffebff
+EBUILD redmine-9999.ebuild 4533 RMD160 faa7de5a043a2c4e4f99c5f09e795a283aefc29c SHA1 d36085a7943e7d2028b534738bff5e2c550bfc4d SHA256 e8589d4dd1f9c6837f48fc4d57d548210b65c2742b037b55eb60f62cf10c411a
diff --git a/www-apps/redmine/files/10_redmine_vhost.conf b/www-apps/redmine/files/10_redmine_vhost.conf
new file mode 100644
index 0000000..0b3d406
--- /dev/null
+++ b/www-apps/redmine/files/10_redmine_vhost.conf
@@ -0,0 +1,12 @@
+<IfModule passenger_module>
+Listen 3000
+<VirtualHost *:3000 >
+ DocumentRoot /var/lib/redmine/public
+# RailsEnv production
+ <Directory "/var/lib/redmine/public">
+ Options FollowSymLinks
+ Order allow,deny
+ Allow from all
+ </Directory>
+</VirtualHost>
+</IfModule>
diff --git a/x11-base/xorg-drivers/Manifest b/x11-base/xorg-drivers/Manifest
new file mode 100644
index 0000000..13a9337
--- /dev/null
+++ b/x11-base/xorg-drivers/Manifest
@@ -0,0 +1,2 @@
+EBUILD xorg-drivers-1.10.ebuild 6017 RMD160 1ad9cb0c6d8eb8ba851a8ba524f5451966cc2a17 SHA1 4dfb28cc9a18b2a406dfe1b295db37026ccbc318 SHA256 a7a7622f0208715e473464b4d9a5e093981fb8e2797d58f67104e6d832bba8b6
+EBUILD xorg-drivers-1.9.ebuild 5826 RMD160 f1bb74626420e7faf8f340ed9753ac5bdac9af84 SHA1 008b1cbb5379c511c5824beff30cb47a3d855dea SHA256 2db24855620c629fd1ee23d7ab88ca6424f4fc1c5bb5d166f774d3011979621d
diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
new file mode 100644
index 0000000..6e85d77
--- /dev/null
+++ b/x11-base/xorg-server/Manifest
@@ -0,0 +1,10 @@
+AUX xdm-setup.initd-1 346 RMD160 e68512e71adbf15743f789bb6b5587b07a9812a3 SHA1 f25303b8bcef0c5d2eb61517d5347b4b88736cd4 SHA256 942ce5e8d1a0770543b683dcc388bae7619a24eb9741c1cd678ed3df97c01406
+AUX xdm.confd-3 853 RMD160 363cd18f760650923e16579bf55f661e93dad63b SHA1 0027b98f2aeb5c43219fa4f9b7d81a05101bec6f SHA256 00af0d957ff1b4f31c1aa4701d93a54080408548792deafac5414cbfa13b89ec
+AUX xdm.initd-3 5662 RMD160 c215ee58cf2ab3b336f106d3526256abf98f982e SHA1 67aa7501e61f64c1db5306d72bd3b673c94e36a7 SHA256 633a461f484a993f3edbeca42c724883f1c1de3a201bcefd83ae168492bc9d7e
+AUX xorg-cve-2011-4028+4029.patch 671 RMD160 f9c607b5bfe20259f2adb320b6a1a0819f59f7ab SHA1 84797b66434aa05acc9f6881050d1b46487caf77 SHA256 76b9bb4a928fa7179eb52ab3b2bd2ef6d7db83e0543ba80de37cdab05efa601c
+AUX xorg-server-1.9-nouveau-default.patch 916 RMD160 0ebdf0fb76364b7fd0c520c3a2f7cc2cc1a83446 SHA1 daddde0f4f4276e12b87354d2e6825ed5c74c6eb SHA256 a7ff421dd928e3025194279f9afb7cc033a896b3417abe339741e9c6ed4b54ea
+AUX xorg-server-disable-acpi.patch 663 RMD160 7074ca5276369b746ea7606a0795232aafe07c90 SHA1 d300a37dd2e0a8aa3965948c13f6995e6767841d SHA256 5b3cc7c8bea18fe3ba81851d2846d19ffd8fab9cdf5d8f3a274846847e734200
+AUX xorg-sets.conf 199 RMD160 33815115b6e8b8360af4f0778b0e2c5fb1a9aaee SHA1 b5a2fd01a97558fa909c67f510d8a59b55e20f57 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c
+DIST xorg-server-1.9.5.tar.bz2 5172054 RMD160 6383b126ed313943fc5cb0939fdae4a737aabb70 SHA1 03be24d6906f3ed3237057a5a7df2b02723c9749 SHA256 3fc775097c4f0e8f731447d0183ee709ae37c44c0c286ba00a4b028274e029dc
+EBUILD xorg-server-1.9.5-r1.ebuild 7850 RMD160 e2c14bf529edbafa9452855ca893a45e510d8625 SHA1 c52c0d51c61452fb83ea92cf20978cc2374ab23e SHA256 270f6563b0cf3b96b86e94a5d428ebf1b20be22bfe2a33b76a4463c79c6120c3
+EBUILD xorg-server-1.9.5.ebuild 7803 RMD160 152890c2beb87b6d023eb0386e3d9581c727b843 SHA1 3201e012bab0d8c2f61a0414d3d3804324f55e94 SHA256 1f52dc2829d93655e41ea858a0a4d9e2ee64a8c2ec685d93b570298c987de366
diff --git a/x11-base/xorg-server/files/xdm-setup.initd-1 b/x11-base/xorg-server/files/xdm-setup.initd-1
new file mode 100644
index 0000000..365664e
--- /dev/null
+++ b/x11-base/xorg-server/files/xdm-setup.initd-1
@@ -0,0 +1,14 @@
+#!/sbin/runscript
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/files/xdm-setup.initd-1,v 1.1 2010/04/13 10:07:39 scarabeus Exp $
+
+depend() {
+ need localmount
+}
+
+start() {
+ if get_bootparam "nox" ; then
+ touch /etc/.noxdm
+ fi
+}
diff --git a/x11-base/xorg-server/files/xdm.confd-3 b/x11-base/xorg-server/files/xdm.confd-3
new file mode 100644
index 0000000..9c560bb
--- /dev/null
+++ b/x11-base/xorg-server/files/xdm.confd-3
@@ -0,0 +1,16 @@
+# We always try and start X on a static VT. The various DMs normally default
+# to using VT7. If you wish to use the xdm init script, then you should ensure
+# that the VT checked is the same VT your DM wants to use. We do this check to
+# ensure that you haven't accidentally configured something to run on the VT
+# in your /etc/inittab file so that you don't get a dead keyboard.
+CHECKVT=7
+
+# What display manager do you use ? [ xdm | gdm | kdm | kdm-4.3 | gpe | entrance ]
+# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
+#
+# KDE-specific note:
+# - If you are using kdeprefix go with "kdm-4.Y", e.g. "kdm-4.3".
+# You can find possible versions by looking at the directories in /usr/kde/.
+# - Else, if you are using KDE 3 enter "kdm-3.5"
+# - Else, if you are using KDE 4 enter "kdm" without a version
+DISPLAYMANAGER="xdm" \ No newline at end of file
diff --git a/x11-base/xorg-server/files/xdm.initd-3 b/x11-base/xorg-server/files/xdm.initd-3
new file mode 100644
index 0000000..7e2da1a
--- /dev/null
+++ b/x11-base/xorg-server/files/xdm.initd-3
@@ -0,0 +1,218 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/files/xdm.initd-3,v 1.3 2011/11/01 22:53:09 hwoarang Exp $
+
+# This is here to serve as a note to myself, and future developers.
+#
+# Any Display manager (gdm,kdm,xdm) has the following problem: if
+# it is started before any getty, and no vt is specified, it will
+# usually run on vt2. When the getty on vt2 then starts, and the
+# DM is already started, the getty will take control of the keyboard,
+# leaving us with a "dead" keyboard.
+#
+# Resolution: add the following line to /etc/inittab
+#
+# x:a:once:/etc/X11/startDM.sh
+#
+# and have /etc/X11/startDM.sh start the DM in daemon mode if
+# a lock is present (with the info of what DM should be started),
+# else just fall through.
+#
+# How this basically works, is the "a" runlevel is a additional
+# runlevel that you can use to fork processes with init, but the
+# runlevel never gets changed to this runlevel. Along with the "a"
+# runlevel, the "once" key word means that startDM.sh will only be
+# run when we specify it to run, thus eliminating respawning
+# startDM.sh when "xdm" is not added to the default runlevel, as was
+# done previously.
+#
+# This script then just calls "telinit a", and init will run
+# /etc/X11/startDM.sh after the current runlevel completes (this
+# script should only be added to the actual runlevel the user is
+# using).
+#
+# Martin Schlemmer
+# aka Azarah
+# 04 March 2002
+
+depend() {
+ need localmount xdm-setup
+
+ # this should start as early as possible
+ # we can't do 'before *' as that breaks it
+ # (#139824) Start after ypbind and autofs for network authentication
+ # (#145219 #180163) Could use lirc mouse as input device
+ # (#70689 comment #92) Start after consolefont to avoid display corruption
+ # (#291269) Start after quota, since some dm need readable home
+ after bootmisc consolefont modules netmount
+ after readahead-list ypbind autofs openvpn gpm lircmd
+ after quota
+ before alsasound
+
+ # Start before X
+ use consolekit xfs
+}
+
+setup_dm() {
+ local MY_XDM
+
+ MY_XDM=$(echo "${DISPLAYMANAGER}" | tr '[:upper:]' '[:lower:]')
+
+ # Load our root path from profile.env
+ # Needed for kdm
+ PATH=${PATH}:$(. /etc/profile.env; echo "${ROOTPATH}")
+
+ NAME=
+ case "${MY_XDM}" in
+ kdm|kde)
+ EXE="$(which kdm)"
+ PIDFILE=/var/run/kdm.pid
+ ;;
+ kdm-*)
+ EXE="/usr/kde/${MY_XDM#kdm-}/bin/kdm"
+ PIDFILE=/var/run/kdm.pid
+ ;;
+ entrance*)
+ EXE=/usr/sbin/entranced
+ PIDFILE=/var/lib/entranced.pid
+ ;;
+ gdm|gnome)
+ EXE=/usr/bin/gdm
+ [ "${RC_UNAME}" != "Linux" ] && NAME=gdm-binary
+ PIDFILE=/var/run/gdm.pid
+ ;;
+ wdm)
+ EXE=/usr/bin/wdm
+ PIDFILE=
+ ;;
+ gpe)
+ EXE=/usr/bin/gpe-dm
+ PIDFILE=/var/run/gpe-dm.pid
+ ;;
+ lxdm)
+ EXE=/usr/sbin/lxdm-binary
+ PIDFILE=/var/run/lxdm.pid
+ START_STOP_ARGS="--background"
+ ;;
+ lightdm)
+ EXE=/usr/sbin/lightdm
+ PIDFILE=/var/run/lightdm.pid
+ START_STOP_ARGS="--background"
+ ;;
+ *)
+ # first find out if there is such executable
+ EXE="$(which ${MY_XDM} 2>/dev/null)"
+ PIDFILE="/var/run/${MY_XDM}.pid"
+
+ # warn user that he is doing sick things if the exe was not found
+ if [ -z "${EXE}" ]; then
+ echo "ERROR: Your XDM value is invalid."
+ echo " No ${MY_XDM} executable could be found on your system."
+ fi
+ ;;
+ esac
+
+ if ! [ -x "${EXE}" ]; then
+ EXE=/usr/bin/xdm
+ PIDFILE=/var/run/xdm.pid
+ if ! [ -x "/usr/bin/xdm" ]; then
+ echo "ERROR: Please set your DISPLAYMANAGER variable in /etc/conf.d/xdm,"
+ echo " or install x11-apps/xdm package"
+ eend 255
+ fi
+ fi
+}
+
+# Check to see if something is defined on our VT
+vtstatic() {
+ if [ -e /etc/inittab ] ; then
+ grep -Eq "^[^#]+.*\<tty$1\>" /etc/inittab
+ elif [ -e /etc/ttys ] ; then
+ grep -q "^ttyv$(($1 - 1))" /etc/ttys
+ else
+ return 1
+ fi
+}
+
+start() {
+ local EXE NAME PIDFILE
+ setup_dm
+
+ if [ -f /etc/.noxdm ]; then
+ einfo "Skipping ${EXE##*/}, /etc/.noxdm found or \"nox\" bootparam passed."
+ rm /etc/.noxdm
+ return 0
+ fi
+
+ ebegin "Setting up ${EXE##*/}"
+
+ # save the prefered DM
+ save_options "service" "${EXE}"
+ save_options "name" "${NAME}"
+ save_options "pidfile" "${PIDFILE}"
+ save_options "start_stop_args" "${START_STOP_ARGS}"
+
+ if [ -n "${CHECKVT-y}" ] ; then
+ if vtstatic "${CHECKVT:-7}" ; then
+ if [ -x /sbin/telinit ] && [ "${SOFTLEVEL}" != "BOOT" ] && [ "${RC_SOFTLEVEL}" != "BOOT" ]; then
+ ewarn "Something is already defined on VT ${CHECKVT:-7}, will start X later"
+ telinit a >/dev/null 2>&1
+ return 0
+ else
+ eerror "Something is already defined on VT ${CHECKVT:-7}, not starting"
+ return 1
+ fi
+ fi
+ fi
+
+ /etc/X11/startDM.sh
+ eend 0
+}
+
+stop() {
+ local curvt retval
+
+ retval=0
+ if [ -t 0 ]; then
+ if type fgconsole >/dev/null 2>&1; then
+ curvt=$(fgconsole 2>/dev/null)
+ else
+ curvt=$(tty)
+ case "${curvt}" in
+ /dev/ttyv[0-9]*) curvt=${curvt#/dev/ttyv} ;;
+ *) curvt= ;;
+ esac
+ fi
+ fi
+ local myexe myname mypidfile myservice
+ myexe=$(get_options "service")
+ myname=$(get_options "name")
+ mypidfile=$(get_options "pidfile")
+ myservice=${myexe##*/}
+
+ [ -z "${myexe}" ] && return 0
+
+ ebegin "Stopping ${myservice}"
+
+ if start-stop-daemon --quiet --test --stop --exec "${myexe}"; then
+ start-stop-daemon --stop --exec "${myexe}" --retry TERM/5/TERM/5 \
+ ${mypidfile:+--pidfile} ${mypidfile} \
+ ${myname:+--name} ${myname}
+ retval=${?}
+ fi
+
+ # switch back to original vt
+ if [ -n "${curvt}" ]; then
+ if type chvt >/dev/null 2>&1; then
+ chvt "${curvt}"
+ else
+ vidcontrol -s "$((curvt + 1))"
+ fi
+ fi
+
+ eend ${retval} "Error stopping ${myservice}"
+ return ${retval}
+}
+
+# vim: set ts=4 :
diff --git a/x11-base/xorg-server/files/xorg-cve-2011-4028+4029.patch b/x11-base/xorg-server/files/xorg-cve-2011-4028+4029.patch
new file mode 100644
index 0000000..66e77f6
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-cve-2011-4028+4029.patch
@@ -0,0 +1,22 @@
+diff --git a/os/utils.c b/os/utils.c
+index e8ecb71..18ff1ca 100644
+--- a/os/utils.c
++++ b/os/utils.c
+@@ -297,7 +297,7 @@ LockServer(void)
+ FatalError("Could not create lock file in %s\n", tmp);
+ (void) sprintf(pid_str, "%10ld\n", (long)getpid());
+ (void) write(lfd, pid_str, 11);
+- (void) chmod(tmp, 0444);
++ (void) fchmod(lfd, 0444);
+ (void) close(lfd);
+
+ /*
+@@ -318,7 +318,7 @@ LockServer(void)
+ /*
+ * Read the pid from the existing file
+ */
+- lfd = open(LockFile, O_RDONLY);
++ lfd = open(LockFile, O_RDONLY|O_NOFOLLOW);
+ if (lfd < 0) {
+ unlink(tmp);
+ FatalError("Can't read lock file %s\n", LockFile);
diff --git a/x11-base/xorg-server/files/xorg-server-1.9-nouveau-default.patch b/x11-base/xorg-server/files/xorg-server-1.9-nouveau-default.patch
new file mode 100644
index 0000000..2b05967
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.9-nouveau-default.patch
@@ -0,0 +1,30 @@
+diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
+index 74016af..9c296f5 100644
+--- a/hw/xfree86/common/xf86pciBus.c
++++ b/hw/xfree86/common/xf86pciBus.c
+@@ -1118,7 +1118,23 @@ videoPtrToDriverList(struct pci_device *dev,
+ break;
+ case 0x102b: driverList[0] = "mga"; break;
+ case 0x10c8: driverList[0] = "neomagic"; break;
+- case 0x10de: case 0x12d2: driverList[0] = "nv"; break;
++ case 0x10de: case 0x12d2:
++ switch (dev->device_id) {
++ /* NV1 */
++ case 0x0008:
++ case 0x0009:
++ driverList[0] = "vesa";
++ break;
++ /* NV3 */
++ case 0x0018:
++ case 0x0019:
++ driverList[0] = "nv";
++ break;
++ default:
++ driverList[0] = "nouveau";
++ break;
++ }
++ break;
+ case 0x1106: driverList[0] = "openchrome"; break;
+ case 0x1b36: driverList[0] = "qxl"; break;
+ case 0x1163: driverList[0] = "rendition"; break;
+--
diff --git a/x11-base/xorg-server/files/xorg-server-disable-acpi.patch b/x11-base/xorg-server/files/xorg-server-disable-acpi.patch
new file mode 100644
index 0000000..cc80e6c
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-disable-acpi.patch
@@ -0,0 +1,31 @@
+From a8079882f1884edc62a9de28af915bd8b65dfbbe Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Wed, 11 Mar 2009 14:02:11 -0400
+Subject: [PATCH] Don't build the ACPI code.
+
+No good can come of this.
+---
+ configure.ac | 2 --
+ 1 files changed, 0 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 72ae67e..04716f8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1269,13 +1269,11 @@ if test "x$XORG" = xyes; then
+ case $host_cpu in
+ ia64*)
+ linux_ia64=yes
+- linux_acpi="yes"
+ ;;
+ alpha*)
+ linux_alpha=yes
+ ;;
+ i*86|amd64*|x86_64*)
+- linux_acpi="yes"
+ ;;
+ *)
+ ;;
+--
+1.6.1.3
+
diff --git a/x11-base/xorg-server/files/xorg-sets.conf b/x11-base/xorg-server/files/xorg-sets.conf
new file mode 100644
index 0000000..5cd8112
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-sets.conf
@@ -0,0 +1,6 @@
+# Rebuild all X11 modules (mostly useful after xorg-server ABI change).
+[x11-module-rebuild]
+class = portage.sets.dbapi.VariableSet
+world-candidate = false
+variable = CATEGORY
+includes = x11-drivers
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
new file mode 100644
index 0000000..85e8895
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -0,0 +1,7 @@
+AUX 256.35-unified-arch.patch 1380 RMD160 2612cad105f442d4232b99e3054124e8037860bb SHA1 d82433c0b3520c87e05f1013a59b243ec65ebe97 SHA256 5e84bb51e0f9b3ceba270d53ad2a739dc534861df9acd6ab6852670f5a1357d7
+AUX nvidia-169.07 639 RMD160 8baddb6fd1bf7f0e2688870a78e8ace051d62e3f SHA1 b30487ba2a24a6b1359d1fd831eeb1705060953c SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577
+AUX nvidia-drivers-260.19.44-2.6.39.patch 591 RMD160 8e53d800b86c380da9e9c978957a4d1b7f749fe4 SHA1 39be99b92fb16a71347fb8fb39301241550a1958 SHA256 dc9478bb4ff12d820f82bb13a8d7f956456ea97217ba89e6619f1c8d72127be3
+DIST NVIDIA-FreeBSD-x86-260.19.36.tar.gz 27282754 RMD160 0f09df3ce5df2f6b091c393c1686e8a6b8c48299 SHA1 55ae4831a822cfa40a3fb6e8330677a718cea7e4 SHA256 03e41a19ad93668034efa8306983b57b69fcca1e328a5a70c9295096fb9675d5
+DIST NVIDIA-Linux-x86-260.19.36.run 28558478 RMD160 5909bf9def30b73911e237b269eab0d9a335dfad SHA1 35c0a2ac0f0a097a010c304e4ba12602b0b0252b SHA256 6cfbb7cbfdb8ca5399303d43204e73ca3aad5bbc03c938f11ce5e154ec76cc6d
+DIST NVIDIA-Linux-x86_64-260.19.36.run 48081798 RMD160 5913b83130dc72c4b7bd84b6f4adc86f461d9606 SHA1 9c771763959273cf1e9876aad9a5d296b4b48148 SHA256 35a8769585e1f9b426c9c21b5f5898c06251a642ed73e9fb9eea9ab87ef91067
+EBUILD nvidia-drivers-260.19.36.ebuild 21806 RMD160 54f3ca4183f30104bc1f644c68b83653e9df3505 SHA1 3ea08550617d59968deeb76699224e8b3a644434 SHA256 d1d32009a437af35a769f0f07654810ed10f2ab61aeafde516f14d8ef47085e0
diff --git a/x11-drivers/nvidia-drivers/files/256.35-unified-arch.patch b/x11-drivers/nvidia-drivers/files/256.35-unified-arch.patch
new file mode 100644
index 0000000..401ce95
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/256.35-unified-arch.patch
@@ -0,0 +1,31 @@
+Add support for the 'x86' unified kernel arch in conftest.sh
+
+--- NVIDIA-Linux-x86-256.25/kernel/conftest.sh
++++ NVIDIA-Linux-x86-256.25/kernel/conftest.sh
+@@ -101,7 +101,7 @@ build_cflags() {
+
+ if [ "$OUTPUT" != "$SOURCES" ]; then
+ MACH_CFLAGS="-I$HEADERS/asm-$ARCH/mach-default"
+- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
++ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
+ MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
+ MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
+ fi
+@@ -110,7 +110,7 @@ build_cflags() {
+ fi
+ else
+ MACH_CFLAGS="-I$HEADERS/asm/mach-default"
+- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
++ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
+ MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
+ MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
+ fi
+@@ -121,7 +121,7 @@ build_cflags() {
+
+ CFLAGS="$BASE_CFLAGS $MACH_CFLAGS $OUTPUT_CFLAGS -I$HEADERS $AUTOCONF_CFLAGS"
+
+- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
++ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
+ CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include"
+ fi
+ if [ -n "$BUILD_PARAMS" ]; then
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-169.07 b/x11-drivers/nvidia-drivers/files/nvidia-169.07
new file mode 100644
index 0000000..a96b0cd
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-169.07
@@ -0,0 +1,14 @@
+# Nvidia drivers support
+alias char-major-195 nvidia
+alias /dev/nvidiactl char-major-195
+
+# To tweak the driver the following options can be used, note that
+# you should be careful, as it could cause instability!! For more
+# options see /usr/share/doc/PACKAGE/README
+#
+# !!! SECURITY WARNING !!!
+# DO NOT MODIFY OR REMOVE THE DEVICE FILE RELATED OPTIONS UNLESS YOU KNOW
+# WHAT YOU ARE DOING.
+# ONLY ADD TRUSTED USERS TO THE VIDEO GROUP, THESE USERS MAY BE ABLE TO CRASH,
+# COMPROMISE, OR IRREPARABLY DAMAGE THE MACHINE.
+options nvidia NVreg_DeviceFileMode=432 NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=VIDEOGID NVreg_ModifyDeviceFiles=1
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-260.19.44-2.6.39.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-260.19.44-2.6.39.patch
new file mode 100644
index 0000000..a1d3eb8
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-260.19.44-2.6.39.patch
@@ -0,0 +1,14 @@
+linux/smp_lock.h no longer exists in linux-2.6.39+
+
+--- a/kernel/nv-linux.h
++++ b/kernel/nv-linux.h
+@@ -87,7 +87,9 @@
+ #if !defined(KERNEL_2_4)
+ #include <linux/sched.h> /* suser(), capable() replacement */
+ #include <linux/moduleparam.h> /* module_param() */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 39)
+ #include <linux/smp_lock.h> /* kernel_locked */
++#endif
+ #include <asm/tlbflush.h> /* flush_tlb(), flush_tlb_all() */
+ #include <asm/kmap_types.h> /* page table entry lookup */
+ #endif