summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-eselect
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-eselect')
-rw-r--r--app-eselect/eselect-audicle/Manifest1
-rw-r--r--app-eselect/eselect-audicle/eselect-audicle-1.0.1.ebuild19
-rw-r--r--app-eselect/eselect-audicle/metadata.xml8
-rw-r--r--app-eselect/eselect-awk/Manifest1
-rw-r--r--app-eselect/eselect-awk/eselect-awk-0.2.ebuild19
-rw-r--r--app-eselect/eselect-awk/metadata.xml9
-rw-r--r--app-eselect/eselect-bashcomp/Manifest1
-rw-r--r--app-eselect/eselect-bashcomp/eselect-bashcomp-1.3.6.ebuild31
-rw-r--r--app-eselect/eselect-bashcomp/metadata.xml8
-rw-r--r--app-eselect/eselect-blas/eselect-blas-0.1.ebuild24
-rw-r--r--app-eselect/eselect-blas/files/blas.eselect-0.115
-rw-r--r--app-eselect/eselect-blas/files/blas.eselect.567
-rw-r--r--app-eselect/eselect-blas/metadata.xml5
-rw-r--r--app-eselect/eselect-cblas/eselect-cblas-0.1.ebuild24
-rw-r--r--app-eselect/eselect-cblas/files/cblas.eselect-0.115
-rw-r--r--app-eselect/eselect-cblas/files/cblas.eselect.567
-rw-r--r--app-eselect/eselect-cblas/metadata.xml5
-rw-r--r--app-eselect/eselect-cdparanoia/eselect-cdparanoia-0.1.ebuild25
-rw-r--r--app-eselect/eselect-cdparanoia/files/cdparanoia.eselect-0.113
-rw-r--r--app-eselect/eselect-cdparanoia/metadata.xml5
-rw-r--r--app-eselect/eselect-chuck/Manifest1
-rw-r--r--app-eselect/eselect-chuck/eselect-chuck-1.0.1.ebuild20
-rw-r--r--app-eselect/eselect-chuck/metadata.xml8
-rw-r--r--app-eselect/eselect-ctags/Manifest1
-rw-r--r--app-eselect/eselect-ctags/eselect-ctags-1.18.ebuild25
-rw-r--r--app-eselect/eselect-ctags/metadata.xml5
-rw-r--r--app-eselect/eselect-emacs/Manifest1
-rw-r--r--app-eselect/eselect-emacs/eselect-emacs-1.18.ebuild25
-rw-r--r--app-eselect/eselect-emacs/metadata.xml5
-rw-r--r--app-eselect/eselect-esd/Manifest3
-rw-r--r--app-eselect/eselect-esd/eselect-esd-20060719.ebuild20
-rw-r--r--app-eselect/eselect-esd/eselect-esd-20091106.ebuild20
-rw-r--r--app-eselect/eselect-esd/eselect-esd-20100127.ebuild22
-rw-r--r--app-eselect/eselect-esd/metadata.xml5
-rw-r--r--app-eselect/eselect-fontconfig/Manifest1
-rw-r--r--app-eselect/eselect-fontconfig/eselect-fontconfig-1.0.ebuild21
-rw-r--r--app-eselect/eselect-fontconfig/eselect-fontconfig-1.1.ebuild23
-rw-r--r--app-eselect/eselect-fontconfig/files/fontconfig.eselect-1.0205
-rw-r--r--app-eselect/eselect-fontconfig/metadata.xml5
-rw-r--r--app-eselect/eselect-gnat/eselect-gnat-1.3-r1.ebuild32
-rw-r--r--app-eselect/eselect-gnat/eselect-gnat-1.4-r1.ebuild35
-rw-r--r--app-eselect/eselect-gnat/eselect-gnat-1.4.ebuild35
-rw-r--r--app-eselect/eselect-gnat/eselect-gnat-1.5.ebuild35
-rw-r--r--app-eselect/eselect-gnat/files/gnat-common-1.3-r1.bash223
-rw-r--r--app-eselect/eselect-gnat/files/gnat-common-1.4-r1.bash226
-rw-r--r--app-eselect/eselect-gnat/files/gnat.eselect-1.3207
-rw-r--r--app-eselect/eselect-gnat/files/gnat.eselect-1.4230
-rw-r--r--app-eselect/eselect-gnat/files/gnat.eselect-1.5226
-rw-r--r--app-eselect/eselect-gnat/metadata.xml6
-rw-r--r--app-eselect/eselect-gnome-shell-extensions/Manifest1
-rw-r--r--app-eselect/eselect-gnome-shell-extensions/eselect-gnome-shell-extensions-20120911.ebuild50
-rw-r--r--app-eselect/eselect-gnome-shell-extensions/metadata.xml5
-rw-r--r--app-eselect/eselect-infinality/Manifest1
-rw-r--r--app-eselect/eselect-infinality/eselect-infinality-1.ebuild28
-rw-r--r--app-eselect/eselect-infinality/metadata.xml11
-rw-r--r--app-eselect/eselect-java/Manifest2
-rw-r--r--app-eselect/eselect-java/eselect-java-0.1.0-r1.ebuild26
-rw-r--r--app-eselect/eselect-java/eselect-java-0.1.0.ebuild20
-rw-r--r--app-eselect/eselect-java/metadata.xml8
-rw-r--r--app-eselect/eselect-lapack/eselect-lapack-0.1.ebuild26
-rw-r--r--app-eselect/eselect-lapack/files/lapack.eselect-0.115
-rw-r--r--app-eselect/eselect-lapack/files/lapack.eselect.567
-rw-r--r--app-eselect/eselect-lapack/metadata.xml5
-rw-r--r--app-eselect/eselect-lcdfilter/Manifest2
-rw-r--r--app-eselect/eselect-lcdfilter/eselect-lcdfilter-1.ebuild37
-rw-r--r--app-eselect/eselect-lcdfilter/eselect-lcdfilter-2.ebuild36
-rw-r--r--app-eselect/eselect-lcdfilter/metadata.xml11
-rw-r--r--app-eselect/eselect-lib-bin-symlink/Manifest2
-rw-r--r--app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.1.ebuild18
-rw-r--r--app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.ebuild18
-rw-r--r--app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-9999.ebuild29
-rw-r--r--app-eselect/eselect-lib-bin-symlink/metadata.xml16
-rw-r--r--app-eselect/eselect-lua/eselect-lua-1.ebuild23
-rw-r--r--app-eselect/eselect-lua/files/lua.eselect-1150
-rw-r--r--app-eselect/eselect-lua/metadata.xml9
-rw-r--r--app-eselect/eselect-maven/eselect-maven-0.2-r1.ebuild30
-rw-r--r--app-eselect/eselect-maven/eselect-maven-0.2-r2.ebuild30
-rw-r--r--app-eselect/eselect-maven/files/maven-0.2.eselect175
-rw-r--r--app-eselect/eselect-maven/metadata.xml5
-rw-r--r--app-eselect/eselect-mesa/Manifest2
-rw-r--r--app-eselect/eselect-mesa/eselect-mesa-0.0.10.ebuild31
-rw-r--r--app-eselect/eselect-mesa/eselect-mesa-0.0.9.ebuild31
-rw-r--r--app-eselect/eselect-mesa/metadata.xml5
-rw-r--r--app-eselect/eselect-metasploit/eselect-metasploit-0.16.ebuild41
-rw-r--r--app-eselect/eselect-metasploit/files/91metasploit8
-rw-r--r--app-eselect/eselect-metasploit/files/metasploit.eselect-0.13207
-rwxr-xr-xapp-eselect/eselect-metasploit/files/msfloader-0.1641
-rw-r--r--app-eselect/eselect-metasploit/files/msfrpcd.confd16
-rw-r--r--app-eselect/eselect-metasploit/files/msfrpcd.initd22
-rw-r--r--app-eselect/eselect-metasploit/metadata.xml10
-rw-r--r--app-eselect/eselect-miniaudicle/Manifest1
-rw-r--r--app-eselect/eselect-miniaudicle/eselect-miniaudicle-1.0.1-r1.ebuild28
-rw-r--r--app-eselect/eselect-miniaudicle/files/miniaudicle-1.0.1_list.patch12
-rw-r--r--app-eselect/eselect-miniaudicle/metadata.xml8
-rw-r--r--app-eselect/eselect-mpg123/eselect-mpg123-0.1.ebuild25
-rw-r--r--app-eselect/eselect-mpg123/files/mpg123.eselect-0.113
-rw-r--r--app-eselect/eselect-mpg123/metadata.xml5
-rw-r--r--app-eselect/eselect-mpost/eselect-mpost-0.1.ebuild28
-rw-r--r--app-eselect/eselect-mpost/eselect-mpost-0.2.ebuild29
-rw-r--r--app-eselect/eselect-mpost/eselect-mpost-0.3.ebuild29
-rw-r--r--app-eselect/eselect-mpost/files/mpost.eselect-0.1153
-rw-r--r--app-eselect/eselect-mpost/files/mpost.eselect-0.2148
-rw-r--r--app-eselect/eselect-mpost/files/mpost.eselect-0.3148
-rw-r--r--app-eselect/eselect-mpost/metadata.xml5
-rw-r--r--app-eselect/eselect-notify-send/eselect-notify-send-0.1.ebuild25
-rw-r--r--app-eselect/eselect-notify-send/files/notify-send.eselect-0.113
-rw-r--r--app-eselect/eselect-notify-send/metadata.xml8
-rw-r--r--app-eselect/eselect-oodict/Manifest1
-rw-r--r--app-eselect/eselect-oodict/eselect-oodict-20100228.ebuild20
-rw-r--r--app-eselect/eselect-oodict/metadata.xml8
-rw-r--r--app-eselect/eselect-opencascade/eselect-opencascade-0.ebuild29
-rw-r--r--app-eselect/eselect-opencascade/files/eselect-opencascade-0.eselect104
-rw-r--r--app-eselect/eselect-opencascade/metadata.xml9
-rw-r--r--app-eselect/eselect-opencl/Manifest10
-rw-r--r--app-eselect/eselect-opencl/eselect-opencl-1.1.0-r1.ebuild58
-rw-r--r--app-eselect/eselect-opencl/eselect-opencl-1.1.0-r2.ebuild61
-rw-r--r--app-eselect/eselect-opencl/eselect-opencl-1.1.0-r3.ebuild61
-rw-r--r--app-eselect/eselect-opencl/eselect-opencl-1.1.0.ebuild58
-rw-r--r--app-eselect/eselect-opencl/metadata.xml13
-rw-r--r--app-eselect/eselect-opengl/Manifest4
-rw-r--r--app-eselect/eselect-opengl/eselect-opengl-1.2.7.ebuild63
-rw-r--r--app-eselect/eselect-opengl/eselect-opengl-1.3.1-r4.ebuild76
-rw-r--r--app-eselect/eselect-opengl/metadata.xml6
-rw-r--r--app-eselect/eselect-package-manager/Manifest1
-rw-r--r--app-eselect/eselect-package-manager/eselect-package-manager-20110108.ebuild20
-rw-r--r--app-eselect/eselect-package-manager/metadata.xml5
-rw-r--r--app-eselect/eselect-pdftex/eselect-pdftex-0.3.ebuild29
-rw-r--r--app-eselect/eselect-pdftex/files/pdftex.eselect-0.3148
-rw-r--r--app-eselect/eselect-pdftex/metadata.xml5
-rw-r--r--app-eselect/eselect-php/Manifest2
-rw-r--r--app-eselect/eselect-php/eselect-php-0.6.2.ebuild24
-rw-r--r--app-eselect/eselect-php/eselect-php-0.7.1-r1.ebuild49
-rw-r--r--app-eselect/eselect-php/eselect-php-0.7.1-r2.ebuild49
-rw-r--r--app-eselect/eselect-php/eselect-php-0.7.1-r3.ebuild48
-rw-r--r--app-eselect/eselect-php/eselect-php-0.7.1-r4.ebuild48
-rw-r--r--app-eselect/eselect-php/eselect-php-0.7.1.ebuild45
-rw-r--r--app-eselect/eselect-php/files/70_mod_php5.conf-apache214
-rw-r--r--app-eselect/eselect-php/files/70_mod_php5.conf-apache2-r118
-rw-r--r--app-eselect/eselect-php/files/php-fpm-launcher7
-rwxr-xr-xapp-eselect/eselect-php/files/php-fpm-r1.init50
-rw-r--r--app-eselect/eselect-php/files/php-fpm.conf1
-rwxr-xr-xapp-eselect/eselect-php/files/php-fpm.init47
-rw-r--r--app-eselect/eselect-php/files/php-fpm_at.service14
-rw-r--r--app-eselect/eselect-php/metadata.xml11
-rw-r--r--app-eselect/eselect-pinentry/eselect-pinentry-0.4.ebuild23
-rw-r--r--app-eselect/eselect-pinentry/eselect-pinentry-0.5.ebuild23
-rw-r--r--app-eselect/eselect-pinentry/eselect-pinentry-0.6.ebuild23
-rw-r--r--app-eselect/eselect-pinentry/files/pinentry.eselect-0.413
-rw-r--r--app-eselect/eselect-pinentry/files/pinentry.eselect-0.513
-rw-r--r--app-eselect/eselect-pinentry/files/pinentry.eselect-0.613
-rw-r--r--app-eselect/eselect-pinentry/metadata.xml5
-rw-r--r--app-eselect/eselect-postgresql/Manifest1
-rw-r--r--app-eselect/eselect-postgresql/eselect-postgresql-1.2.1.ebuild28
-rw-r--r--app-eselect/eselect-postgresql/metadata.xml9
-rw-r--r--app-eselect/eselect-python/Manifest4
-rw-r--r--app-eselect/eselect-python/eselect-python-20111108.ebuild56
-rw-r--r--app-eselect/eselect-python/eselect-python-20131210.ebuild53
-rw-r--r--app-eselect/eselect-python/eselect-python-20140115.ebuild51
-rw-r--r--app-eselect/eselect-python/eselect-python-20140125.ebuild51
-rw-r--r--app-eselect/eselect-python/eselect-python-99999999.ebuild51
-rw-r--r--app-eselect/eselect-python/metadata.xml5
-rw-r--r--app-eselect/eselect-qtgraphicssystem/Manifest1
-rw-r--r--app-eselect/eselect-qtgraphicssystem/eselect-qtgraphicssystem-1.1.1.ebuild22
-rw-r--r--app-eselect/eselect-qtgraphicssystem/metadata.xml8
-rw-r--r--app-eselect/eselect-rails/Manifest4
-rw-r--r--app-eselect/eselect-rails/eselect-rails-0.18.ebuild25
-rw-r--r--app-eselect/eselect-rails/eselect-rails-0.19.ebuild28
-rw-r--r--app-eselect/eselect-rails/eselect-rails-0.20.ebuild28
-rw-r--r--app-eselect/eselect-rails/eselect-rails-0.21.ebuild28
-rw-r--r--app-eselect/eselect-rails/metadata.xml5
-rw-r--r--app-eselect/eselect-renpy/eselect-renpy-0.1.ebuild39
-rw-r--r--app-eselect/eselect-renpy/eselect-renpy-0.2.ebuild39
-rw-r--r--app-eselect/eselect-renpy/eselect-renpy-0.3.ebuild39
-rw-r--r--app-eselect/eselect-renpy/eselect-renpy-0.4.ebuild39
-rw-r--r--app-eselect/eselect-renpy/eselect-renpy-0.5.ebuild39
-rw-r--r--app-eselect/eselect-renpy/files/renpy.eselect-0.115
-rw-r--r--app-eselect/eselect-renpy/files/renpy.eselect-0.215
-rw-r--r--app-eselect/eselect-renpy/files/renpy.eselect-0.315
-rw-r--r--app-eselect/eselect-renpy/files/renpy.eselect-0.415
-rw-r--r--app-eselect/eselect-renpy/files/renpy.eselect-0.515
-rw-r--r--app-eselect/eselect-renpy/metadata.xml10
-rw-r--r--app-eselect/eselect-ruby/Manifest2
-rw-r--r--app-eselect/eselect-ruby/eselect-ruby-20131227.ebuild19
-rw-r--r--app-eselect/eselect-ruby/eselect-ruby-20141227.ebuild19
-rw-r--r--app-eselect/eselect-ruby/metadata.xml5
-rw-r--r--app-eselect/eselect-rust/Manifest1
-rw-r--r--app-eselect/eselect-rust/eselect-rust-0.3_pre20150428.ebuild31
-rw-r--r--app-eselect/eselect-rust/metadata.xml11
-rw-r--r--app-eselect/eselect-scala/Manifest1
-rw-r--r--app-eselect/eselect-scala/eselect-scala-0.1.1.ebuild21
-rw-r--r--app-eselect/eselect-scala/metadata.xml8
-rw-r--r--app-eselect/eselect-sh/eselect-sh-0.4-r2.ebuild23
-rw-r--r--app-eselect/eselect-sh/files/sh.eselect-0.4-r214
-rw-r--r--app-eselect/eselect-sh/metadata.xml8
-rw-r--r--app-eselect/eselect-sndpeek/Manifest1
-rw-r--r--app-eselect/eselect-sndpeek/eselect-sndpeek-1.0.1.ebuild19
-rw-r--r--app-eselect/eselect-sndpeek/metadata.xml8
-rw-r--r--app-eselect/eselect-timezone/Manifest1
-rw-r--r--app-eselect/eselect-timezone/eselect-timezone-0.2.ebuild19
-rw-r--r--app-eselect/eselect-timezone/metadata.xml8
-rw-r--r--app-eselect/eselect-timidity/Manifest3
-rw-r--r--app-eselect/eselect-timidity/eselect-timidity-20061203.ebuild19
-rw-r--r--app-eselect/eselect-timidity/eselect-timidity-20091106.ebuild19
-rw-r--r--app-eselect/eselect-timidity/eselect-timidity-20110513.ebuild19
-rw-r--r--app-eselect/eselect-timidity/metadata.xml5
-rw-r--r--app-eselect/eselect-unison/eselect-unison-0.1.ebuild25
-rw-r--r--app-eselect/eselect-unison/eselect-unison-0.2.ebuild26
-rw-r--r--app-eselect/eselect-unison/eselect-unison-0.3.ebuild26
-rw-r--r--app-eselect/eselect-unison/files/unison.eselect-0.1152
-rw-r--r--app-eselect/eselect-unison/files/unison.eselect-0.2147
-rw-r--r--app-eselect/eselect-unison/files/unison.eselect-0.3146
-rw-r--r--app-eselect/eselect-unison/metadata.xml5
-rw-r--r--app-eselect/eselect-vdr/Manifest1
-rw-r--r--app-eselect/eselect-vdr/eselect-vdr-0.0.3.ebuild23
-rw-r--r--app-eselect/eselect-vdr/metadata.xml9
-rw-r--r--app-eselect/eselect-vi/Manifest3
-rw-r--r--app-eselect/eselect-vi/eselect-vi-1.1.7-r1.ebuild26
-rw-r--r--app-eselect/eselect-vi/eselect-vi-1.1.8.ebuild21
-rw-r--r--app-eselect/eselect-vi/eselect-vi-1.1.9.ebuild21
-rw-r--r--app-eselect/eselect-vi/files/eselect-vi-1.1.7-prefix.patch136
-rw-r--r--app-eselect/eselect-vi/metadata.xml6
-rw-r--r--app-eselect/eselect-wxwidgets/Manifest3
-rw-r--r--app-eselect/eselect-wxwidgets/eselect-wxwidgets-1.4.ebuild51
-rw-r--r--app-eselect/eselect-wxwidgets/eselect-wxwidgets-20131230.ebuild45
-rw-r--r--app-eselect/eselect-wxwidgets/eselect-wxwidgets-20140423.ebuild54
-rwxr-xr-xapp-eselect/eselect-wxwidgets/files/wx-config-1.338
-rwxr-xr-xapp-eselect/eselect-wxwidgets/files/wx-config-1.441
-rwxr-xr-xapp-eselect/eselect-wxwidgets/files/wxrc-1.338
-rwxr-xr-xapp-eselect/eselect-wxwidgets/files/wxrc-1.441
-rw-r--r--app-eselect/eselect-wxwidgets/files/wxwin.m4-2.91063
-rw-r--r--app-eselect/eselect-wxwidgets/files/wxwin.m4-3.01059
-rw-r--r--app-eselect/eselect-wxwidgets/metadata.xml5
-rw-r--r--app-eselect/eselect-xvmc/eselect-xvmc-0.3.ebuild20
-rw-r--r--app-eselect/eselect-xvmc/eselect-xvmc-0.4.ebuild24
-rw-r--r--app-eselect/eselect-xvmc/files/eselect-xvmc-0.3.eselect189
-rw-r--r--app-eselect/eselect-xvmc/files/eselect-xvmc-0.4.eselect198
-rw-r--r--app-eselect/eselect-xvmc/metadata.xml11
-rw-r--r--app-eselect/metadata.xml12
238 files changed, 9997 insertions, 0 deletions
diff --git a/app-eselect/eselect-audicle/Manifest b/app-eselect/eselect-audicle/Manifest
new file mode 100644
index 00000000000..15457c88485
--- /dev/null
+++ b/app-eselect/eselect-audicle/Manifest
@@ -0,0 +1 @@
+DIST audicle.eselect-1.0.1.bz2 1266 SHA256 d2237a17902003b6263c755b99eb5c85c639c45fe9a3f45ef564f6ed384bca31 SHA512 bf60c4d1679ad4d8e5334fc3841c417b78cf836ed9ea313a8d4c4c0be092a6ae1cc85daf8eb545a420803e56f57c334c3f4b529df476f40de99ce365fb75e659 WHIRLPOOL 3c0354bc0663830828ed4cbf31ff8d02a2f71dab3c825a7cb304f8d9ddb3814f08a7555a0482c6f6d34c588722b6fc1bec2952e6f8b1828f7a9fb2d3fa4fe45d
diff --git a/app-eselect/eselect-audicle/eselect-audicle-1.0.1.ebuild b/app-eselect/eselect-audicle/eselect-audicle-1.0.1.ebuild
new file mode 100644
index 00000000000..4c534675c87
--- /dev/null
+++ b/app-eselect/eselect-audicle/eselect-audicle-1.0.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages the /usr/bin/audicle symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/audicle.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/audicle.eselect-${PVR}" audicle.eselect || die
+}
diff --git a/app-eselect/eselect-audicle/metadata.xml b/app-eselect/eselect-audicle/metadata.xml
new file mode 100644
index 00000000000..e96e35b1a37
--- /dev/null
+++ b/app-eselect/eselect-audicle/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-awk/Manifest b/app-eselect/eselect-awk/Manifest
new file mode 100644
index 00000000000..51905e7d724
--- /dev/null
+++ b/app-eselect/eselect-awk/Manifest
@@ -0,0 +1 @@
+DIST eselect-awk-0.2.tar.gz 1541 SHA256 e126c0d04bad2d374c92725e54184e78b8e60f3922440186096d333148cebcf0 SHA512 ef00ac8e8b962c17dc8094d64e5cbf44654a747cc648a5cf38346c3a90e0d685726693094ac265398b40d9d325600073ea2c4905b813f1e40fbfc7627930a5de WHIRLPOOL b134c8f69efeb4ae9fe12a3b2c99fafde58b073214efb71f17664671b915b07779e7c028eded1c3307e98a74f1105aca67322927d0dae8976ecbd48d44245609
diff --git a/app-eselect/eselect-awk/eselect-awk-0.2.ebuild b/app-eselect/eselect-awk/eselect-awk-0.2.ebuild
new file mode 100644
index 00000000000..a63a1510dca
--- /dev/null
+++ b/app-eselect/eselect-awk/eselect-awk-0.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Manages the {,/usr}/bin/awk symlink"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~ottxor/distfiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-macos"
+IUSE=""
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins awk.eselect
+}
diff --git a/app-eselect/eselect-awk/metadata.xml b/app-eselect/eselect-awk/metadata.xml
new file mode 100644
index 00000000000..6ce7863fe53
--- /dev/null
+++ b/app-eselect/eselect-awk/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <herd>base-system</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-bashcomp/Manifest b/app-eselect/eselect-bashcomp/Manifest
new file mode 100644
index 00000000000..982efbea4b2
--- /dev/null
+++ b/app-eselect/eselect-bashcomp/Manifest
@@ -0,0 +1 @@
+DIST eselect-1.3.6.tar.xz 166976 SHA256 5a2d7c69ed6f668bee60a72f742a768fec4006b05255b0f79a4ebac86dbd0c2b SHA512 a1fb0f9216eb87365c19480b9a63b9d050630329e1e6697427408393b07a3e3c0165296dea48badfe97ab6a651fee7e3f312e640d7cb32626249de876d242d9c WHIRLPOOL 716db4e6d12088f77368f3115c1196b64b71b1d3931c728adc20ca4fb6cd719fc4da6e648df15531ff02d7200459577a606bac2e239286f8dc0f2c54eaa61d6b
diff --git a/app-eselect/eselect-bashcomp/eselect-bashcomp-1.3.6.ebuild b/app-eselect/eselect-bashcomp/eselect-bashcomp-1.3.6.ebuild
new file mode 100644
index 00000000000..b389e1edcc6
--- /dev/null
+++ b/app-eselect/eselect-bashcomp/eselect-bashcomp-1.3.6.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Manage contributed bash-completion scripts"
+HOMEPAGE="http://wiki.gentoo.org/wiki/Project:Eselect"
+SRC_URI="mirror://gentoo/eselect-${PV}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+
+RDEPEND=">=app-admin/eselect-1.3.8"
+
+S="${WORKDIR}/eselect-${PV}"
+
+src_prepare() {
+ sed -i -e "/^MAINTAINER/aVERSION=\"${PV}\"" modules/bashcomp.eselect || die
+}
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins modules/bashcomp.eselect
+ doman man/bashcomp.eselect.5
+}
diff --git a/app-eselect/eselect-bashcomp/metadata.xml b/app-eselect/eselect-bashcomp/metadata.xml
new file mode 100644
index 00000000000..65be8c3c3e2
--- /dev/null
+++ b/app-eselect/eselect-bashcomp/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+</maintainer>
+</pkgmetadata>
diff --git a/app-eselect/eselect-blas/eselect-blas-0.1.ebuild b/app-eselect/eselect-blas/eselect-blas-0.1.ebuild
new file mode 100644
index 00000000000..0b0035a166e
--- /dev/null
+++ b/app-eselect/eselect-blas/eselect-blas-0.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="BLAS module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
+IUSE=""
+
+# Need skel.bash lib
+RDEPEND=">=app-admin/eselect-1.0.5"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="blas"
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/${MODULE}.eselect-${PVR} ${MODULE}.eselect
+ doman "${FILESDIR}"/blas.eselect.5
+}
diff --git a/app-eselect/eselect-blas/files/blas.eselect-0.1 b/app-eselect/eselect-blas/files/blas.eselect-0.1
new file mode 100644
index 00000000000..fa91ace0edd
--- /dev/null
+++ b/app-eselect/eselect-blas/files/blas.eselect-0.1
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit skel
+
+MODULE="BLAS"
+IFACE="blas"
+
+DESCRIPTION="Manage installed $MODULE implementations"
+MAINTAINER="spyderous@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:46:52 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# vim: set ft=eselect :
diff --git a/app-eselect/eselect-blas/files/blas.eselect.5 b/app-eselect/eselect-blas/files/blas.eselect.5
new file mode 100644
index 00000000000..1b4185134eb
--- /dev/null
+++ b/app-eselect/eselect-blas/files/blas.eselect.5
@@ -0,0 +1,67 @@
+.TH "ESELECT" "5" "June 2006" "Gentoo Linux" "eselect"
+.SH "NAME"
+blas.eselect \- The BLAS management module for Gentoo's eselect
+.SH "SYNOPSIS"
+\fBeselect blas\fR [\fBhelp\fR|\fBusage\fR]
+.br
+\fBeselect blas\fR \fBlist\fR [\fIoptions\fR]
+.br
+\fBeselect blas\fR \fBadd\fR
+.br
+\fBeselect blas\fR \fBset\fR \fIimplementation\fR [\fIoptions\fR]
+.br
+\fBeselect blas\fR \fBshow\fR [\fIoptions\fR]
+
+.SH "DESCRIPTION"
+\fBeselect\fR is Gentoo's configuration and management tool. It features
+modules that care for the individual administrative tasks.
+.SH "ACTION: LIST"
+\fBeselect blas list\fR [\fIoptions\fR]
+.br
+Displays an ordered list of installed BLAS implementations. It distinguishes between versions with different
+Application Binary Interfaces (e.g. x86/AMD64). Furthermore, it also distinguishes
+between interfaces to high-level programming languages. Each line holds
+a number and the implementation's name. An asterisk next to one of the list
+elements denotes an active implementation.
+
+phi / # eselect blas list
+.br
+Installed BLAS for libdir \fBlib\fR
+.br
+ [1] atlas *
+ [2] reference
+
+Possible \fIoptions\fR to the \fBlist\fR action are restrictions to
+handle only certain ABI\-specific library directories. For example,
+
+\fBeselect blas list lib64\fR
+
+lists only BLAS implementations found in \fB/usr/lib64\fR.
+
+.SH "ACTION: SHOW"
+\fBeselect blas show\fR [\fIoptions\fR]
+.br
+Shows your system's currently active BLAS implementations.
+
+phi / # eselect blas show
+.br
+lib: atlas
+.br
+lib64: reference
+
+The same \fIoptions\fR that apply to the \fBlist\fR action can be used
+with the \fBshow\fR action to restrict it to given ABIs.
+.SH "ACTION: SET"
+\fBeselect blas set\fR \fIimplementation\fR [\fIoptions\fR]
+.br
+Sets your system's currently active BLAS implementations to \fIimplementation\fR.
+The same \fIoptions\fR that apply to the \fBlist\fR action can be used
+with the \fBset\fR action to restrict it to given ABIs.
+
+phi / # eselect blas set atlas
+.SH "AUTHOR"
+Danny van Dyk <kugelfang@gentoo.org>
+.br
+Donnie Berkholz <spyderous@gentoo.org>
+.SH "REVISION"
+$Id$
diff --git a/app-eselect/eselect-blas/metadata.xml b/app-eselect/eselect-blas/metadata.xml
new file mode 100644
index 00000000000..b229aec85b8
--- /dev/null
+++ b/app-eselect/eselect-blas/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>sci</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-cblas/eselect-cblas-0.1.ebuild b/app-eselect/eselect-cblas/eselect-cblas-0.1.ebuild
new file mode 100644
index 00000000000..9b6fe63ed04
--- /dev/null
+++ b/app-eselect/eselect-cblas/eselect-cblas-0.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="C-language BLAS module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE=""
+
+# Need skel.bash lib
+RDEPEND=">=app-admin/eselect-1.0.5"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="cblas"
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/${MODULE}.eselect-${PVR} ${MODULE}.eselect
+ doman "${FILESDIR}"/cblas.eselect.5
+}
diff --git a/app-eselect/eselect-cblas/files/cblas.eselect-0.1 b/app-eselect/eselect-cblas/files/cblas.eselect-0.1
new file mode 100644
index 00000000000..b1bcde4d8d2
--- /dev/null
+++ b/app-eselect/eselect-cblas/files/cblas.eselect-0.1
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit skel
+
+MODULE="CBLAS"
+IFACE="cblas"
+
+DESCRIPTION="Manage installed $MODULE implementations"
+MAINTAINER="spyderous@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:47:06 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# vim: set ft=eselect :
diff --git a/app-eselect/eselect-cblas/files/cblas.eselect.5 b/app-eselect/eselect-cblas/files/cblas.eselect.5
new file mode 100644
index 00000000000..c27f1f18b3b
--- /dev/null
+++ b/app-eselect/eselect-cblas/files/cblas.eselect.5
@@ -0,0 +1,67 @@
+.TH "ESELECT" "5" "June 2006" "Gentoo Linux" "eselect"
+.SH "NAME"
+cblas.eselect \- The CBLAS management module for Gentoo's eselect
+.SH "SYNOPSIS"
+\fBeselect cblas\fR [\fBhelp\fR|\fBusage\fR]
+.br
+\fBeselect cblas\fR \fBlist\fR [\fIoptions\fR]
+.br
+\fBeselect cblas\fR \fBadd\fR
+.br
+\fBeselect cblas\fR \fBset\fR \fIimplementation\fR [\fIoptions\fR]
+.br
+\fBeselect cblas\fR \fBshow\fR [\fIoptions\fR]
+
+.SH "DESCRIPTION"
+\fBeselect\fR is Gentoo's configuration and management tool. It features
+modules that care for the individual administrative tasks.
+.SH "ACTION: LIST"
+\fBeselect cblas list\fR [\fIoptions\fR]
+.br
+Displays an ordered list of installed CBLAS implementations. It distinguishes between versions with different
+Application Binary Interfaces (e.g. x86/AMD64). Furthermore, it also distinguishes
+between interfaces to high-level programming languages. Each line holds
+a number and the implementation's name. An asterisk next to one of the list
+elements denotes an active implementation.
+
+phi / # eselect cblas list
+.br
+Installed CBLAS for libdir \fBlib\fR
+.br
+ [1] atlas *
+ [2] reference
+
+Possible \fIoptions\fR to the \fBlist\fR action are restrictions to
+handle only certain ABI\-specific library directories. For example,
+
+\fBeselect cblas list lib64\fR
+
+lists only CBLAS implementations found in \fB/usr/lib64\fR.
+
+.SH "ACTION: SHOW"
+\fBeselect cblas show\fR [\fIoptions\fR]
+.br
+Shows your system's currently active CBLAS implementations.
+
+phi / # eselect cblas show
+.br
+lib: atlas
+.br
+lib64: reference
+
+The same \fIoptions\fR that apply to the \fBlist\fR action can be used
+with the \fBshow\fR action to restrict it to given ABIs.
+.SH "ACTION: SET"
+\fBeselect cblas set\fR \fIimplementation\fR [\fIoptions\fR]
+.br
+Sets your system's currently active CBLAS implementations to \fIimplementation\fR.
+The same \fIoptions\fR that apply to the \fBlist\fR action can be used
+with the \fBset\fR action to restrict it to given ABIs.
+
+phi / # eselect cblas set atlas
+.SH "AUTHOR"
+Danny van Dyk <kugelfang@gentoo.org>
+.br
+Donnie Berkholz <spyderous@gentoo.org>
+.SH "REVISION"
+$Id$
diff --git a/app-eselect/eselect-cblas/metadata.xml b/app-eselect/eselect-cblas/metadata.xml
new file mode 100644
index 00000000000..b229aec85b8
--- /dev/null
+++ b/app-eselect/eselect-cblas/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>sci</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-cdparanoia/eselect-cdparanoia-0.1.ebuild b/app-eselect/eselect-cdparanoia/eselect-cdparanoia-0.1.ebuild
new file mode 100644
index 00000000000..e7a1c687b0f
--- /dev/null
+++ b/app-eselect/eselect-cdparanoia/eselect-cdparanoia-0.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage /usr/bin/cdparanoia symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1
+ !<media-sound/cdparanoia-3.10.2-r5"
+DEPEND=${RDEPEND}
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins cdparanoia.eselect-${PV} cdparanoia.eselect
+}
diff --git a/app-eselect/eselect-cdparanoia/files/cdparanoia.eselect-0.1 b/app-eselect/eselect-cdparanoia/files/cdparanoia.eselect-0.1
new file mode 100644
index 00000000000..3068f5bf0d0
--- /dev/null
+++ b/app-eselect/eselect-cdparanoia/files/cdparanoia.eselect-0.1
@@ -0,0 +1,13 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/cdparanoia implementation"
+MAINTAINER="ssuominen@gentoo.org"
+VERSION="0.1"
+
+SYMLINK_PATH=/usr/bin/cdparanoia
+SYMLINK_TARGETS=( cdparanoia-paranoia libcdio-paranoia )
+SYMLINK_DESCRIPTION='cdparanoia binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-cdparanoia/metadata.xml b/app-eselect/eselect-cdparanoia/metadata.xml
new file mode 100644
index 00000000000..e1774e3d9ad
--- /dev/null
+++ b/app-eselect/eselect-cdparanoia/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>sound</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-chuck/Manifest b/app-eselect/eselect-chuck/Manifest
new file mode 100644
index 00000000000..c62b30c21bb
--- /dev/null
+++ b/app-eselect/eselect-chuck/Manifest
@@ -0,0 +1 @@
+DIST chuck.eselect-1.0.1.bz2 1268 SHA256 8ce7ecbbc77e35eace774e34223b453329dc2a79a8e2acf5dc495c9f029f1c1e SHA512 875c27bb71bdad309554c0541e495d76cac6c663e0c2b3371376f52bca127dbcdc409790a689dee2b2306999eec9ebde6c0afae093891fc151695838567d2483 WHIRLPOOL 38e3b588b0ee38c3f9150c3e89bcd6c6e31face8bfbf76a1d62f50b71dc53bee3ebefb11f80d39da412b0fa1b4636f974082ca37055e15bf09307269eb8306fb
diff --git a/app-eselect/eselect-chuck/eselect-chuck-1.0.1.ebuild b/app-eselect/eselect-chuck/eselect-chuck-1.0.1.ebuild
new file mode 100644
index 00000000000..9d80a32de27
--- /dev/null
+++ b/app-eselect/eselect-chuck/eselect-chuck-1.0.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages the /usr/bin/chuck symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/chuck.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+DEPEND="!<=media-sound/chuck-1.2.1.2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/chuck.eselect-${PVR}" chuck.eselect || die
+}
diff --git a/app-eselect/eselect-chuck/metadata.xml b/app-eselect/eselect-chuck/metadata.xml
new file mode 100644
index 00000000000..e96e35b1a37
--- /dev/null
+++ b/app-eselect/eselect-chuck/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-ctags/Manifest b/app-eselect/eselect-ctags/Manifest
new file mode 100644
index 00000000000..c922b779193
--- /dev/null
+++ b/app-eselect/eselect-ctags/Manifest
@@ -0,0 +1 @@
+DIST eselect-emacs-1.18.tar.xz 8964 SHA256 72e59fc780bfe18aa782862609e2651a0fd14bf381a4529bf5a1d6ab1c1b90df SHA512 9e346dc2331e577716945360de199848606d6b67776c1e7875d1437ff7e03796ac64cd0a3656109be87c0578b45bee1175f0ba4af2be96d0e27442d51bf182aa WHIRLPOOL 6812d8a4e79fc2286715219f5f443ed0aa662249bea3d381e293dd21324b1887bc674f3f7fa7bc94643f555bbd341969b1198f305a60043183e9fdcab31759f9
diff --git a/app-eselect/eselect-ctags/eselect-ctags-1.18.ebuild b/app-eselect/eselect-ctags/eselect-ctags-1.18.ebuild
new file mode 100644
index 00000000000..1f86e8d1e40
--- /dev/null
+++ b/app-eselect/eselect-ctags/eselect-ctags-1.18.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MY_P="eselect-emacs-${PV}"
+DESCRIPTION="Manages ctags implementations"
+HOMEPAGE="http://wiki.gentoo.org/wiki/Project:Emacs"
+SRC_URI="http://dev.gentoo.org/~ulm/emacs/${MY_P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+RDEPEND="!<app-eselect/eselect-emacs-1.18
+ >=app-admin/eselect-1.2.3"
+
+S="${WORKDIR}/${MY_P}"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins {ctags,etags}.eselect
+ doman {ctags,etags}.eselect.5
+}
diff --git a/app-eselect/eselect-ctags/metadata.xml b/app-eselect/eselect-ctags/metadata.xml
new file mode 100644
index 00000000000..bc306fe5822
--- /dev/null
+++ b/app-eselect/eselect-ctags/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>emacs</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-emacs/Manifest b/app-eselect/eselect-emacs/Manifest
new file mode 100644
index 00000000000..c922b779193
--- /dev/null
+++ b/app-eselect/eselect-emacs/Manifest
@@ -0,0 +1 @@
+DIST eselect-emacs-1.18.tar.xz 8964 SHA256 72e59fc780bfe18aa782862609e2651a0fd14bf381a4529bf5a1d6ab1c1b90df SHA512 9e346dc2331e577716945360de199848606d6b67776c1e7875d1437ff7e03796ac64cd0a3656109be87c0578b45bee1175f0ba4af2be96d0e27442d51bf182aa WHIRLPOOL 6812d8a4e79fc2286715219f5f443ed0aa662249bea3d381e293dd21324b1887bc674f3f7fa7bc94643f555bbd341969b1198f305a60043183e9fdcab31759f9
diff --git a/app-eselect/eselect-emacs/eselect-emacs-1.18.ebuild b/app-eselect/eselect-emacs/eselect-emacs-1.18.ebuild
new file mode 100644
index 00000000000..ec6888e3b40
--- /dev/null
+++ b/app-eselect/eselect-emacs/eselect-emacs-1.18.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage multiple Emacs versions on one system"
+HOMEPAGE="http://wiki.gentoo.org/wiki/Project:Emacs"
+SRC_URI="http://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+
+RDEPEND=">=app-admin/eselect-1.2.6
+ ~app-eselect/eselect-ctags-${PV}"
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins {emacs,gnuclient}.eselect
+ doman {emacs,gnuclient}.eselect.5
+ dodoc ChangeLog
+}
diff --git a/app-eselect/eselect-emacs/metadata.xml b/app-eselect/eselect-emacs/metadata.xml
new file mode 100644
index 00000000000..bc306fe5822
--- /dev/null
+++ b/app-eselect/eselect-emacs/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>emacs</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-esd/Manifest b/app-eselect/eselect-esd/Manifest
new file mode 100644
index 00000000000..36d247ed683
--- /dev/null
+++ b/app-eselect/eselect-esd/Manifest
@@ -0,0 +1,3 @@
+DIST esd.eselect-20060719.bz2 1440 SHA256 f5d1147e324c285f661f5caf41228bc58e70b8d56f77ac242b8c54302740e3e1 SHA512 a6db28f9c5397862dfdef5f10db49d56f8f9930395b9440d6e092804b18f3d832dacf5c32d5787941499b0d1c634c9e2ef15d137c0837af7a11e0e8fc62fc311 WHIRLPOOL 313191a0bd844db93e808d4dade706089bbdf8691d02fa0d475ffb58d3ddb0e7a1234ca5178df8ec1c23f0b02bda286eafd6e8376d2abedd8c499bfa1be6e580
+DIST esd.eselect-20091106.bz2 1435 SHA256 801fd918a5d3323461329c0f1c892d1ffce28bb1681c02da301f220346137315 SHA512 9631b15bff59982ea6d975514c22fbf83528ef3a85a7a69e3b065ef0809b13fe35a1fe2c4b63c3e68e700ac1789be5076af2a4a2fc796e1bbda6761c0e33eed0 WHIRLPOOL 5a8f61525ecb4a621af1f23cb9788723957f9887d039c2ca262ddcf49e353b812cf083e81dc732f46e417f841074a3ee42bc9a838442f4dd2927c389ecbda476
+DIST esd.eselect-20100127.bz2 1442 SHA256 ffec216aa70a008d5107fc8771d4e396c8cb065bfce1a2901d7b53a575abb874 SHA512 7ba5e685dfc3f1fa0c3d01dcd0c0705df06ff2783d404f446c2ed139d528fb99a919f63bcb60ce43dba2f08ecc3dc60bce78dd1c85447c37984cc1d409cb3d53 WHIRLPOOL a98c59e94553b6ea69a1f95976b3714b8320bb367ae9f6ab858c091c561676c340baf12a7bea70703642392489e17e200f4ecabd68ca8743fddc221c36f7f2ff
diff --git a/app-eselect/eselect-esd/eselect-esd-20060719.ebuild b/app-eselect/eselect-esd/eselect-esd-20060719.ebuild
new file mode 100644
index 00000000000..dc45f862513
--- /dev/null
+++ b/app-eselect/eselect-esd/eselect-esd-20060719.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of ESounD implementation or PulseAudio wrapper"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/esd.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.2
+ !<media-sound/esound-0.2.36-r2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/esd.eselect-${PVR}" esd.eselect || die
+}
diff --git a/app-eselect/eselect-esd/eselect-esd-20091106.ebuild b/app-eselect/eselect-esd/eselect-esd-20091106.ebuild
new file mode 100644
index 00000000000..0a717c29b3a
--- /dev/null
+++ b/app-eselect/eselect-esd/eselect-esd-20091106.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of ESounD implementation or PulseAudio wrapper"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/esd.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3
+ !<media-sound/esound-0.2.36-r2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/esd.eselect-${PVR}" esd.eselect || die
+}
diff --git a/app-eselect/eselect-esd/eselect-esd-20100127.ebuild b/app-eselect/eselect-esd/eselect-esd-20100127.ebuild
new file mode 100644
index 00000000000..7d0adb04aba
--- /dev/null
+++ b/app-eselect/eselect-esd/eselect-esd-20100127.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of ESounD implementation or PulseAudio wrapper"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/esd.eselect-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3
+ !<media-sound/esound-0.2.36-r2"
+
+S="${WORKDIR}"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins esd.eselect-${PV} esd.eselect || die
+}
diff --git a/app-eselect/eselect-esd/metadata.xml b/app-eselect/eselect-esd/metadata.xml
new file mode 100644
index 00000000000..e1774e3d9ad
--- /dev/null
+++ b/app-eselect/eselect-esd/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>sound</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-fontconfig/Manifest b/app-eselect/eselect-fontconfig/Manifest
new file mode 100644
index 00000000000..f2da7e7f4ee
--- /dev/null
+++ b/app-eselect/eselect-fontconfig/Manifest
@@ -0,0 +1 @@
+DIST fontconfig.eselect-1.1.bz2 1713 SHA256 1ffe764cff192430f81b37a4e4cc8b7cc2596dca177f798b2ef68cc320f074a5 SHA512 3b5978e20009754f09cd39e39771e8151cbb7bda60378cda718182b2df2c267a64af5ead220a079fbeeffb30586bc432bbc83b94e4f910205c4a29040cd2ccbd WHIRLPOOL 196e444610717104cc011f0e65fc9b97ed79410a055e03bcfbc31ec85d4d2df9f0ef222d143202bfa1374e75fd88f3922df9d5ded6b4668a11a40418dc87f77e
diff --git a/app-eselect/eselect-fontconfig/eselect-fontconfig-1.0.ebuild b/app-eselect/eselect-fontconfig/eselect-fontconfig-1.0.ebuild
new file mode 100644
index 00000000000..c7bf1b97425
--- /dev/null
+++ b/app-eselect/eselect-fontconfig/eselect-fontconfig-1.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="An eselect module to manage /etc/fonts/conf.d symlinks"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-admin/eselect
+ >=media-libs/fontconfig-2.4"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}/fontconfig.eselect-${PV}" fontconfig.eselect || die
+}
diff --git a/app-eselect/eselect-fontconfig/eselect-fontconfig-1.1.ebuild b/app-eselect/eselect-fontconfig/eselect-fontconfig-1.1.ebuild
new file mode 100644
index 00000000000..4ed9efbb819
--- /dev/null
+++ b/app-eselect/eselect-fontconfig/eselect-fontconfig-1.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="An eselect module to manage /etc/fonts/conf.d symlinks"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="mirror://gentoo/fontconfig.eselect-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=media-libs/fontconfig-2.4"
+
+S=${WORKDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${S}"/fontconfig.eselect-${PV} fontconfig.eselect || die
+}
diff --git a/app-eselect/eselect-fontconfig/files/fontconfig.eselect-1.0 b/app-eselect/eselect-fontconfig/files/fontconfig.eselect-1.0
new file mode 100644
index 00000000000..33888dbc8c2
--- /dev/null
+++ b/app-eselect/eselect-fontconfig/files/fontconfig.eselect-1.0
@@ -0,0 +1,205 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage fontconfig /etc/fonts/conf.d/ symlinks"
+MAINTAINER="fonts@gentoo.org"
+VERSION="1.0"
+
+find_targets() {
+ local targets bc x i=0
+ bcdirs[i]="${ROOT}/etc/fonts/conf.avail/*.conf"
+
+ if [[ -n "${ES_FONTCONFIG_DIRS}" ]] ; then
+ for x in ${ES_FONTCONFIG_DIRS} ; do
+ bcdirs[$((++i))]="${x}/*"
+ done
+ fi
+
+ for bc in ${bcdirs[@]} ; do
+ [[ -e ${bc} && ${bc} != *~ ]] && targets="${targets}\n$(basename ${bc})"
+ done
+
+ echo -ne ${targets} | sort -u
+}
+
+is_enabled() {
+ bcdir="${ROOT}/etc/fonts/conf.d"
+
+ [[ -e ${bcdir}/${1} ]] || return 1
+ return 0
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available fontconfig .conf files"
+}
+
+do_list() {
+ local opts
+ targets=( $(find_targets) )
+ write_list_start "Available fontconfig .conf files ( $(highlight '*') is enabled ):"
+
+ if [[ -n "${targets[@]}" ]] ; then
+ for (( n = 0 ; n < ${#targets[@]} ; ++n )) ; do
+ is_enabled ${opts:-} ${targets[${n}]} && \
+ targets[${n}]="${targets[${n}]} $(highlight '*')"
+ done
+ write_numbered_list "${targets[@]}"
+ else
+ write_kv_list_entry "(none found)" ""
+ fi
+
+ return 0
+}
+
+### enable action ###
+
+describe_enable() {
+ echo "Enable specified fontconfig .conf file(s)"
+}
+
+describe_enable_parameters() {
+ echo "<target>"
+}
+
+describe_enable_options() {
+ echo "<target> : Target name or number (from 'list' action)"
+}
+
+do_enable() {
+ local bc bcdir="${ROOT}/etc/fonts/conf.d"
+
+ [[ -z ${1} ]] && die -q "You didn't specify any .conf files to enable"
+
+ # create directory if necessary
+ if [[ ! -d ${bcdir} && -w $(dirname ${bcdir}) ]] ; then
+ mkdir ${bcdir} || die -q "Failed to create ${bcdir}"
+ elif [[ ! -d ${bcdir} ]] ; then
+ die -q "You don't have permission to create ${bcdir}"
+ fi
+
+ # make sure we have proper permissions
+ [[ -w ${bcdir} ]] || \
+ die -q "You don't have permission to write to ${bcdir}"
+
+ targets=( $(find_targets) )
+
+ for bc in $@ ; do
+ local file target=${bc}
+
+ is_number "${target}" && \
+ target=${targets[$(( ${target} - 1 ))]}
+
+ [[ -z "${target}" ]] && \
+ die -q "Target \"${bc}\" doesn't appear to be valid!"
+
+ bc=${target}
+
+ # ignore any unrecognized options
+ [[ ${bc} == --* ]] && continue
+
+ # what form is the argument in?
+ case "${bc}" in
+ # absolute path
+ /*)
+ file="${ROOT}/${bc}"
+ ;;
+ # relative path
+ */*)
+ file="${ROOT}/${PWD}/${bc}"
+ ;;
+ # no path
+ *)
+ # CWD
+ if [[ -f ${bc} ]] ; then
+ file="${ROOT}/${PWD}/${bc}"
+ # assume /etc/fonts/conf.avail
+ elif [[ -f ${ROOT}/etc/fonts/conf.avail/${bc} ]]
+ then
+ file="${ROOT}/etc/fonts/conf.avail/${bc}"
+ else
+ if [[ -n "${ES_FONTCONFIG_DIRS}" ]] ; then
+ for x in ${ES_FONTCONFIG_DIRS} ; do
+ [[ -f ${x}/${bc} ]] && file="${x}/${bc}"
+ done
+ fi
+
+ [[ -e ${file} ]] || \
+ file="${ROOT}/etc/fonts/conf.avail/${bc}"
+ fi
+ ;;
+ esac
+
+ # does it exist?
+ if [[ ! -e ${file} ]] ; then
+ write_error_msg "${file} doesn't exist"
+ continue
+ fi
+
+ # already installed?
+ if [[ -e ${bcdir}/$(basename ${bc}) ]] ; then
+ write_error_msg "$(basename ${bc}) is already installed"
+ continue
+ fi
+
+ # finally, create the symlink
+ ln -s "${file}" "${bcdir}" || \
+ die -q "Failed to create symlink from '${file}' to '${bcdir}'"
+ done
+}
+
+### disable action ###
+
+describe_disable() {
+ echo "Disable specified fontconfig .conf file(s)"
+}
+
+describe_disable_parameters() {
+ echo "<target>"
+}
+
+describe_disable_options() {
+ echo "<target> : Target name or number (from 'list' action)"
+}
+
+
+do_disable() {
+ local bc bcdir="${ROOT}/etc/fonts/conf.d"
+
+ [[ -z ${1} ]] && die -q "You didn't specify any .conf files to disable"
+
+ targets=( $(find_targets) )
+
+ for bc in $@ ; do
+ local file target=${bc}
+
+ is_number "${target}" && \
+ target=${targets[$(( ${target} - 1 ))]}
+
+ [[ -z "${target}" ]] && \
+ die -q "Target \"${bc}\" doesn't appear to be valid!"
+
+ bc=${target}
+ file="${bcdir}/${bc}"
+
+ # ignore any unrecognized options
+ [[ ${bc} == --* ]] && continue
+
+ # is in installed?
+ if [[ ! -e ${file} ]] ; then
+ write_error_msg "${bc} is not installed"
+ continue
+ fi
+
+ # remove it if we have permissions
+ if [[ -w $(dirname ${file}) ]] ; then
+ rm "${file}" || die -q "Failed to remove ${file}"
+ else
+ die -q "You don't have permission to remove ${file}"
+ fi
+ done
+}
+
+# vim: set ft=eselect :
diff --git a/app-eselect/eselect-fontconfig/metadata.xml b/app-eselect/eselect-fontconfig/metadata.xml
new file mode 100644
index 00000000000..64cc0b687d4
--- /dev/null
+++ b/app-eselect/eselect-fontconfig/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>fonts</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-gnat/eselect-gnat-1.3-r1.ebuild b/app-eselect/eselect-gnat/eselect-gnat-1.3-r1.ebuild
new file mode 100644
index 00000000000..73970f9e4e6
--- /dev/null
+++ b/app-eselect/eselect-gnat/eselect-gnat-1.3-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="gnat module for eselect"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE=""
+RDEPEND="app-admin/eselect"
+
+MODULEDIR="/usr/share/eselect/modules"
+
+# NOTE!!
+# This path is duplicated in gnat-eselect module,
+# adjust in both locations!
+LIBDIR="/usr/share/gnat/lib"
+
+src_install() {
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
+ dodir ${LIBDIR}
+ insinto ${LIBDIR}
+ newins "${FILESDIR}"/gnat-common-${PVR}.bash gnat-common.bash
+}
diff --git a/app-eselect/eselect-gnat/eselect-gnat-1.4-r1.ebuild b/app-eselect/eselect-gnat/eselect-gnat-1.4-r1.ebuild
new file mode 100644
index 00000000000..619563aba44
--- /dev/null
+++ b/app-eselect/eselect-gnat/eselect-gnat-1.4-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="gnat module for eselect"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+IUSE=""
+RDEPEND="app-admin/eselect"
+
+MODULEDIR="/usr/share/eselect/modules"
+
+# NOTE!!
+# This path is duplicated in gnat-eselect module,
+# adjust in both locations!
+LIBDIR="/usr/share/gnat/lib"
+
+src_install() {
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
+ dodir ${LIBDIR}
+ insinto ${LIBDIR}
+ # !ATTN!
+ # Make sure to adjust version of installed file to a proper one if there is
+ # a change!
+ newins "${FILESDIR}"/gnat-common-${PVR}.bash gnat-common.bash
+}
diff --git a/app-eselect/eselect-gnat/eselect-gnat-1.4.ebuild b/app-eselect/eselect-gnat/eselect-gnat-1.4.ebuild
new file mode 100644
index 00000000000..4cfb3367424
--- /dev/null
+++ b/app-eselect/eselect-gnat/eselect-gnat-1.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="gnat module for eselect"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+IUSE=""
+RDEPEND="app-admin/eselect"
+
+MODULEDIR="/usr/share/eselect/modules"
+
+# NOTE!!
+# This path is duplicated in gnat-eselect module,
+# adjust in both locations!
+LIBDIR="/usr/share/gnat/lib"
+
+src_install() {
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
+ dodir ${LIBDIR}
+ insinto ${LIBDIR}
+ # !ATTN!
+ # Make sure to adjust version of installed file to a proper one if there is
+ # a change!
+ newins "${FILESDIR}"/gnat-common-1.3-r1.bash gnat-common.bash
+}
diff --git a/app-eselect/eselect-gnat/eselect-gnat-1.5.ebuild b/app-eselect/eselect-gnat/eselect-gnat-1.5.ebuild
new file mode 100644
index 00000000000..954c7e0f4e2
--- /dev/null
+++ b/app-eselect/eselect-gnat/eselect-gnat-1.5.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="gnat module for eselect"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~sparc"
+
+IUSE=""
+RDEPEND=">=app-admin/eselect-1.2.5"
+
+MODULEDIR="/usr/share/eselect/modules"
+
+# NOTE!!
+# This path is duplicated in gnat-eselect module,
+# adjust in both locations!
+LIBDIR="/usr/share/gnat/lib"
+
+src_install() {
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
+ dodir ${LIBDIR}
+ insinto ${LIBDIR}
+ # !ATTN!
+ # Make sure to adjust version of installed file to a proper one if there is
+ # a change!
+ newins "${FILESDIR}"/gnat-common-1.4-r1.bash gnat-common.bash
+}
diff --git a/app-eselect/eselect-gnat/files/gnat-common-1.3-r1.bash b/app-eselect/eselect-gnat/files/gnat-common-1.3-r1.bash
new file mode 100644
index 00000000000..db558759a45
--- /dev/null
+++ b/app-eselect/eselect-gnat/files/gnat-common-1.3-r1.bash
@@ -0,0 +1,223 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+#
+# Original Author: George Shapovalov <george@gentoo.org>
+# Purpose: Contains common vars/locations and functions for use by gnat.eclass,
+# gnat.eselect and gnatbuild.eclass.
+#
+# NOTE!!!
+# This code should just define vars (try to limit these!) and simple functions.
+# No bash extensions!!
+# That is, no portage or eclass constructs are allowed!
+#
+
+
+
+# ----------------------------------
+# Globals
+
+# Environmantal stuff (for env update)
+SPECSDIR="/usr/share/gnat/eselect"
+ENVDIR="/etc/env.d"
+MARKER="55gnat-"
+
+# User configurable settings
+SETTINGSDIR="/etc/ada"
+PRIMELIST="${SETTINGSDIR}/primary_compilers"
+
+## Lib install locations
+##
+## Gnat profile dependent files go under under ${LibTop}/${Gnat_Profile}/${PN}
+## and common files go unde SpecsDir, DataDir
+#PREFIX=/usr
+## Replace %LIBDIR% below with $(get_libdir) in eclasses and ebuilds (top level Ok, inherit multilib)
+## or $(profile2libdir ${profile}) in this code, eselect module or anywhere
+## outside portage (as profile will be available only during actual execution, this only should
+## be done inside corresponding functions).
+#AdalibSpecsDir=${PREFIX}/include/ada
+#AdalibDataDir=${PREFIX}/share/ada
+#AdalibLibTop=${PREFIX}/%LIBDIR%/ada
+
+
+# ------------------------------------
+# Helpers
+#
+
+# get_all_profile_components splits gnat profile and returns pace separated list of its components:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu gcc 4.1
+# args:
+# $1 - the string to split
+get_all_profile_components() {
+ local GnatSLOT=${1##*-}
+ local remainder=${1%-*}
+ local GnatPkg=${remainder##*-}
+ remainder=${remainder%-gnat-*}
+ echo "${remainder} ${GnatPkg} ${GnatSLOT}"
+}
+
+# similar to above, returns only SLOT component:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> 4.1
+# args:
+# $1 - the string to extract the slot from
+get_gnat_SLOT() {
+ echo "${1##*-}"
+}
+
+# returns only Pkg component:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> gcc
+# args:
+# $1 - the string to extract the slot from
+get_gnat_Pkg() {
+ local remainder=${1%-*}
+ echo "${remainder##*-}"
+}
+
+# returns only Arch component:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu
+# args:
+# $1 - the string to extract the slot from
+get_gnat_Arch() {
+ echo ${1%-gnat-*}
+}
+
+
+
+## -------------------------------------------
+# gnat profile and lib detection functions
+
+
+# create a list of all gnat env.d files
+# for now use trivial implementation - store name of active profile in the
+# env file name, so it gets called 55gnat-${ARCH}-${PN}-${SLOT}
+get_env_list() {
+ for fn in ${ENVDIR}/${MARKER}*; do
+ echo $(basename ${fn})
+ done
+}
+
+
+
+# find all installed compilers and return a list
+find_all_compilers() {
+ [[ ! -d ${SPECSDIR} ]] && exit
+ for fn in ${SPECSDIR}/*; do
+ [[ ! -d ${fn} ]] && echo $(basename ${fn});
+ done
+}
+
+# find installed primary compilers and return a list
+find_primary_compilers() {
+ [[ ! -f ${PRIMELIST} ]] && exit
+ for fn in $(cat ${PRIMELIST}); do
+ [[ -f ${SPECSDIR}/${fn} ]] && echo ${fn};
+ done
+}
+
+# find installed libs and return a list
+find_all_libs() {
+ [[ ! -d ${SPECSDIR} ]] && exit
+ for fn in ${SPECSDIR}/*; do
+ [[ -d ${fn} ]] && echo $(basename ${fn});
+ done
+}
+
+# find libs that have been built for a given profile
+# Arguments:
+# $1 - gnat profile for which to detect active libs
+find_libs4profile() {
+ libs=( $(find_all_libs) )
+
+ for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
+ [[ -f ${SPECSDIR}/${libs[$i]}/$1 ]] && echo "${libs[$i]}"
+ done
+}
+
+
+
+
+## -----------------------
+# main action - central part of do_set and helpers
+
+
+# extracts values of the passed var definition from given spec file
+# params:
+# $1: spec file (as generated by gnabuild.eclass)
+# $2: variable name
+get_var_from_spec() {
+ local var=$(grep -e "^ *$2=" $1|cut -d= -f2)
+ echo ${var}
+}
+
+
+# Cycle through given libs and form a ':' separated list of settings for the given
+# var. Returned string starts with ':' if there is any non-empty setting,
+# otherwise returns empty string. Repeating settings are omitted, that is
+# unique entry is added only first time it is encountered. No need to have some
+# common dir listed many times in PATH for example.
+#
+# params:
+# $1 - name of env var to process
+# $2 - name of gnat profile
+# $3.. - list of libs to check (to avoid its composition every time)
+# - the list is expanded to list of args at the point of call
+get_lib_var_settings() {
+ local envVar=$1
+ local toset=$2
+ #echo "get_lib_var_settings params:$@" >> /tmp/eselect-gnat.rep
+ if [[ "none" != ${3} ]]; then
+ local envString
+ local specLine
+ while [[ -n $3 ]]; do
+ specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
+ #echo "$3:${specLine}." >> /tmp/eselect-gnat.rep
+ if [[ -n ${specLine} ]] && [[ ! ${envString} =~ ${specLine} ]]; then
+ envString="${envString}:${specLine}"
+ fi
+ shift
+ done
+ echo "${envString}"
+ fi
+}
+
+
+
+# The action!
+# Part common for do_set and do_update of gnat.eselect, also used in gnat.eclass
+# to set environment during lib build and installation
+#
+# params:
+# $1 - profile to set (toset param inside)
+# $2 - envfile
+
+generate_envFile() {
+ local toset=$1
+ local envfile=$2
+
+ local binpath="$(get_var_from_spec ${SPECSDIR}/${toset} binpath)"
+ local libexecpath="$(get_var_from_spec ${SPECSDIR}/${toset} libexecpath)"
+ local libs=( $(find_libs4profile ${toset}) )
+ #echo "generate_envFile: ${libs[@]}" >> /tmp/eselect-gnat.rep
+ if (( 0 == ${#libs[@]} )); then
+ libs="none"
+ fi
+
+ local MyPath="${binpath}:${libexecpath}$(get_lib_var_settings PATH ${toset} ${libs[@]})"
+ echo "PATH=${MyPath}" > "${envfile}"
+ echo "ROOTPATH=${MyPath}" >> "${envfile}"
+ echo "MANPATH=$(get_var_from_spec ${SPECSDIR}/${toset} manpath)$(get_lib_var_settings MANPATH ${toset} ${libs[@]})" >> "${envfile}"
+ echo "INFOPATH=$(get_var_from_spec ${SPECSDIR}/${toset} infopath)$(get_lib_var_settings INFOPATH ${toset} ${libs[@]})" >> "${envfile}"
+ # the next three use the common base
+ local libBase=$(get_var_from_spec ${SPECSDIR}/${toset} ldpath)
+ echo "LDPATH=${libBase}:${libBase}/adalib$(get_lib_var_settings LDPATH ${toset} ${libs[@]})" >> "${envfile}"
+ echo "ADA_INCLUDE_PATH=${libBase}/adainclude$(get_lib_var_settings ADA_INCLUDE_PATH ${toset} ${libs[@]})" >> "${envfile}"
+ echo "ADA_OBJECTS_PATH=${libBase}/adalib$(get_lib_var_settings ADA_OBJECTS_PATH ${toset} ${libs[@]})" >> "${envfile}"
+ # ADA_PROJECT_PATH may not be set in any of the installed packages,
+ # we should only create this line if cumulative var is non-empty
+ My_ProjectPath=$(get_lib_var_settings ADA_PROJECT_PATH ${toset} ${libs[@]})
+ if [[ -n ${My_ProjectPath} ]]; then
+ echo "ADA_PROJECT_PATH=${My_ProjectPath}" >> "${envfile}"
+ fi
+}
+
diff --git a/app-eselect/eselect-gnat/files/gnat-common-1.4-r1.bash b/app-eselect/eselect-gnat/files/gnat-common-1.4-r1.bash
new file mode 100644
index 00000000000..64eca1b8166
--- /dev/null
+++ b/app-eselect/eselect-gnat/files/gnat-common-1.4-r1.bash
@@ -0,0 +1,226 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+#
+# Author: George Shapovalov <george@gentoo.org>
+# Purpose: Contains common vars/locations and functions for use by gnat.eclass,
+# gnat.eselect and gnatbuild.eclass.
+#
+# NOTE!!!
+# This code should just define vars (try to limit these!) and simple functions.
+# No bash extensions!!
+# That is, no portage or eclass constructs are allowed!
+#
+
+
+
+# ----------------------------------
+# Globals
+
+# Environmantal stuff (for env update)
+SPECSDIR="/usr/share/gnat/eselect"
+ENVDIR="/etc/env.d"
+MARKER="55gnat-"
+
+# User configurable settings
+SETTINGSDIR="/etc/ada"
+PRIMELIST="${SETTINGSDIR}/primary_compilers"
+
+## Lib install locations
+##
+## Gnat profile dependent files go under under ${LibTop}/${Gnat_Profile}/${PN}
+## and common files go unde SpecsDir, DataDir
+#PREFIX=/usr
+## Replace %LIBDIR% below with $(get_libdir) in eclasses and ebuilds (top level Ok, inherit multilib)
+## or $(profile2libdir ${profile}) in this code, eselect module or anywhere
+## outside portage (as profile will be available only during actual execution, this only should
+## be done inside corresponding functions).
+#AdalibSpecsDir=${PREFIX}/include/ada
+#AdalibDataDir=${PREFIX}/share/ada
+#AdalibLibTop=${PREFIX}/%LIBDIR%/ada
+
+
+# ------------------------------------
+# Helpers
+#
+
+# get_all_profile_components splits gnat profile and returns pace separated list of its components:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu gcc 4.1
+# args:
+# $1 - the string to split
+get_all_profile_components() {
+ local GnatSLOT=${1##*-}
+ local remainder=${1%-*}
+ local GnatPkg=${remainder##*-}
+ remainder=${remainder%-gnat-*}
+ echo "${remainder} ${GnatPkg} ${GnatSLOT}"
+}
+
+# similar to above, returns only SLOT component:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> 4.1
+# args:
+# $1 - the string to extract the slot from
+get_gnat_SLOT() {
+ echo "${1##*-}"
+}
+
+# returns only Pkg component:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> gcc
+# args:
+# $1 - the string to extract the slot from
+get_gnat_Pkg() {
+ local remainder=${1%-*}
+ echo "${remainder##*-}"
+}
+
+# returns only Arch component:
+# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu
+# args:
+# $1 - the string to extract the slot from
+get_gnat_Arch() {
+ echo ${1%-gnat-*}
+}
+
+
+
+## -------------------------------------------
+# gnat profile and lib detection functions
+
+
+# create a list of all gnat env.d files
+# for now use trivial implementation - store name of active profile in the
+# env file name, so it gets called 55gnat-${ARCH}-${PN}-${SLOT}
+get_env_list() {
+ for fn in ${ENVDIR}/${MARKER}*; do
+ echo $(basename ${fn})
+ done
+}
+
+
+
+# find all installed compilers and return a list
+find_all_compilers() {
+ [[ ! -d ${SPECSDIR} ]] && exit
+ for fn in ${SPECSDIR}/*; do
+ [[ ! -d ${fn} ]] && echo $(basename ${fn});
+ done
+}
+
+# find installed primary compilers and return a list
+find_primary_compilers() {
+ [[ ! -f ${PRIMELIST} ]] && exit
+ for fn in $(cat ${PRIMELIST}); do
+ [[ -f ${SPECSDIR}/${fn} ]] && echo ${fn};
+ done
+}
+
+# find installed libs and return a list
+find_all_libs() {
+ [[ ! -d ${SPECSDIR} ]] && exit
+ for fn in ${SPECSDIR}/*; do
+ [[ -d ${fn} ]] && echo $(basename ${fn});
+ done
+}
+
+# find libs that have been built for a given profile
+# Arguments:
+# $1 - gnat profile for which to detect active libs
+find_libs4profile() {
+ libs=( $(find_all_libs) )
+
+ for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
+ [[ -f ${SPECSDIR}/${libs[$i]}/$1 ]] && echo "${libs[$i]}"
+ done
+}
+
+
+
+
+## -----------------------
+# main action - central part of do_set and helpers
+
+
+# extracts values of the passed var definition from given spec file
+# params:
+# $1: spec file (as generated by gnabuild.eclass)
+# $2: variable name
+get_var_from_spec() {
+ local var=$(grep -e "^ *$2=" $1|cut -d= -f2)
+ echo ${var}
+}
+
+
+# Cycle through given libs and form a ':' separated list of settings for the given
+# var. Repeating settings are omitted, that is unique entry is added only first
+# time it is encountered.
+#
+# params:
+# $1 - name of env var to process
+# $2 - name of gnat profile
+# $3.. - list of libs to check (to avoid its composition every time)
+# - the list is expanded to list of args at the point of call
+get_lib_var_settings() {
+ local envVar=$1
+ local toset=$2
+ #echo "get_lib_var_settings params:$@" >> /tmp/eselect-gnat.rep
+ if [[ "none" != ${3} ]]; then
+ local envString
+ local specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
+ if [[ -n ${specLine} ]]; then
+ envString="${specLine}"
+ fi
+ shift
+ #
+ while [[ -n $3 ]]; do
+ specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
+ #echo "$3:${specLine}." >> /tmp/eselect-gnat.rep
+ if [[ -n ${specLine} ]] && [[ ! ${envString} =~ ${specLine} ]]; then
+ envString="${envString}:${specLine}"
+ fi
+ shift
+ done
+ echo "${envString}"
+ fi
+}
+
+
+
+# The action!
+# Part common for do_set and do_update of gnat.eselect, also used in gnat.eclass
+# to set environment during lib build and installation
+#
+# params:
+# $1 - profile to set (toset param inside)
+# $2 - envfile
+
+generate_envFile() {
+ local toset=$1
+ local envfile=$2
+
+ local binpath="$(get_var_from_spec ${SPECSDIR}/${toset} binpath)"
+ local libexecpath="$(get_var_from_spec ${SPECSDIR}/${toset} libexecpath)"
+ local libs=( $(find_libs4profile ${toset}) )
+ #echo "generate_envFile: ${libs[@]}" >> /tmp/eselect-gnat.rep
+ if (( 0 == ${#libs[@]} )); then
+ libs="none"
+ fi
+
+ local MyPath="${binpath}:${libexecpath}:$(get_lib_var_settings PATH ${toset} ${libs[@]})"
+ echo "PATH=${MyPath}" > "${envfile}"
+ echo "ROOTPATH=${MyPath}" >> "${envfile}"
+ echo "MANPATH=$(get_var_from_spec ${SPECSDIR}/${toset} manpath):$(get_lib_var_settings MANPATH ${toset} ${libs[@]})" >> "${envfile}"
+ echo "INFOPATH=$(get_var_from_spec ${SPECSDIR}/${toset} infopath):$(get_lib_var_settings INFOPATH ${toset} ${libs[@]})" >> "${envfile}"
+ # the next three use the common base
+ local libBase=$(get_var_from_spec ${SPECSDIR}/${toset} ldpath)
+ echo "LDPATH=${libBase}:${libBase}/adalib:$(get_lib_var_settings LDPATH ${toset} ${libs[@]})" >> "${envfile}"
+ echo "ADA_INCLUDE_PATH=${libBase}/adainclude:$(get_lib_var_settings ADA_INCLUDE_PATH ${toset} ${libs[@]})" >> "${envfile}"
+ echo "ADA_OBJECTS_PATH=${libBase}/adalib:$(get_lib_var_settings ADA_OBJECTS_PATH ${toset} ${libs[@]})" >> "${envfile}"
+ # ADA_PROJECT_PATH may not be set in any of the installed packages,
+ # we should only create this line if cumulative var is non-empty
+ My_ProjectPath=$(get_lib_var_settings ADA_PROJECT_PATH ${toset} ${libs[@]})
+ if [[ -n ${My_ProjectPath} ]]; then
+ echo "ADA_PROJECT_PATH=${My_ProjectPath}" >> "${envfile}"
+ fi
+}
+
diff --git a/app-eselect/eselect-gnat/files/gnat.eselect-1.3 b/app-eselect/eselect-gnat/files/gnat.eselect-1.3
new file mode 100644
index 00000000000..de5bd4e81bf
--- /dev/null
+++ b/app-eselect/eselect-gnat/files/gnat.eselect-1.3
@@ -0,0 +1,207 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage the installed gnat compilers"
+MAINTAINER="ada@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:48:57 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# "inheriting" common stuff
+# this crude sourcing has to stay the way it is, as common code
+# cannot be part of some eclass (bug #192505)
+. /usr/share/gnat/lib/gnat-common.bash
+
+
+### Phylosophy
+# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR}
+# Each lib creates a dir with its name under ${SPECSDIR} and populates it with
+# similar specs files (same name scheme)
+# Recognizing gnat specs from lib specs is then eazy - test entry for being a
+# dir, then just check what gnat profiles are installed for each lib..
+# doset then creates env file that combines settings for gnat and for the
+# corresponding profile of each installed lib..
+
+
+### Helpers
+
+# return *the* name of the active profile, checking that we do not have multiple
+# env files.
+# There can be only one!
+get_current_gnat() {
+ local profiles=( $(get_env_list) )
+
+ if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi
+
+ if (( 1 == ${#profiles[@]} )); then
+ local active=${profiles[0]#${MARKER}}
+ else
+ die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!"
+ fi
+
+ if [ -f ${SPECSDIR}/${active} ]; then
+ echo ${active}
+ else
+ die -q "the active env.d profile does not correspond to any installed gnat!"
+ fi
+}
+
+# check if the passed arg represents the installed gnat and return it or
+# not_found
+# takes args:
+# $1 - list ID to check
+get_name_from_list() {
+ compiler=$1
+
+ compilers=( $(find_all_compilers) )
+ for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
+ if [[ ${compilers[$i]} == ${compiler} ]] ; then
+ echo ${compiler}
+ return
+ fi
+ done
+
+ echo "(not-found)"
+}
+
+
+# removes env files (for compiler and libs)
+# params:
+# $1: the name of profile for which to remove env file
+unset_env() {
+ rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null
+}
+
+
+### show action ###
+
+describe_show() {
+ echo "Show the active gnat compiler/profile and installed libs"
+}
+
+do_show() {
+ write_list_start "Current gnat version:"
+ active=$(get_current_gnat)
+ if [ ! -z ${active} ] ; then # not sure why [ -n ] does not do the same
+ write_kv_list_entry "$active" ""
+ libs=( $(find_libs4profile ${active}) )
+ write_list_start "Active libs:"
+ write_numbered_list "${libs[@]}"
+ else
+ write_kv_list_entry "(none set)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List installed gnat compilers and libs"
+}
+
+do_list() {
+ compilers=( $(find_all_compilers ) )
+ active=$(get_current_gnat)
+
+ write_list_start "Available gnat compilers:"
+
+ if [[ -n ${compilers[@]} ]] ; then
+ local i
+ for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
+ linkversion=${compilers[${i}]}
+
+ [[ $linkversion == $active ]] && \
+ compilers[${i}]="${compilers[${i}]} $(highlight '*' )"
+ done
+ write_numbered_list "${compilers[@]}"
+
+ # now the libs
+ libs=( $(find_all_libs) )
+ write_list_start "Installed libs:"
+ for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
+ [ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \
+ libs[${i}]="${libs[${i}]} $(highlight '*' )"
+ done
+ write_numbered_list "${libs[@]}"
+ else
+ write_kv_list_entry "(none found)" ""
+ fi
+}
+
+
+### set action ###
+
+describe_set() {
+ echo "Set active gnat compiler"
+}
+
+# The set action. Parameters:
+# $1 - name of profile to set, obligatory, passed by eselect
+# $2 - optional, name of env file to generate. Used from gnat.eclass.
+do_set() {
+ if [[ -z ${1} ]] ; then
+ # no parameter
+ die -q "You didn't tell me which gnat to use"
+ fi
+
+ local toset=$(get_name_from_list $1)
+ if [[ ${toset} == "(not-found)" ]] ; then
+ die -q "I don't recognise the selection"
+ fi
+
+ # the action!
+ # in this implementation simply create an appropriate env file
+ local active=$(get_current_gnat)
+ if [[ -z ${2} ]] ; then
+ local envfile="${ENVDIR}/${MARKER}${toset}"
+
+ # now we need to remove an old env file, which is guaranteed to
+ # be unique by get_current_gnat above
+ if [[ -n ${active} ]] ; then
+ unset_env ${active}
+ fi
+ # just for a good measure remove the one we are going to write
+ unset_env ${toset}
+ else
+ local envfile="$2"
+ fi
+
+ generate_envFile ${toset} ${envfile}
+
+ # force update environment
+ # should be replaced with "do_action env update" when #172472 gets resolved
+ env-update &> /dev/null
+}
+
+
+
+### update action ###
+#
+# This action regenerates the /etc/env.d file for the current profile. Basically
+# the same as set, only it does not take any parameters. It should be called from ebuilds
+# installing Ada libs
+
+describe_update() {
+ echo "Update active gnat profile picking up new libs."
+}
+
+do_update() {
+ local toset=$(get_current_gnat)
+ local envfile="${ENVDIR}/${MARKER}${toset}"
+ generate_envFile ${toset} ${envfile}
+ do_action env update &> /dev/null
+}
+
+### unset action ###
+
+describe_unset() {
+ echo "Remove settings for currently active gnat"
+}
+
+do_unset() {
+ local active=$(get_current_gnat)
+ # check whether we have any profile set before removing anything..
+ if [[ -n ${active} ]] ; then
+ unset_env ${active}
+ do_action env update &> /dev/null
+ fi
+}
diff --git a/app-eselect/eselect-gnat/files/gnat.eselect-1.4 b/app-eselect/eselect-gnat/files/gnat.eselect-1.4
new file mode 100644
index 00000000000..12b6e57ee10
--- /dev/null
+++ b/app-eselect/eselect-gnat/files/gnat.eselect-1.4
@@ -0,0 +1,230 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage the installed gnat compilers"
+MAINTAINER="ada@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:48:57 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# "inheriting" common stuff
+# this crude sourcing has to stay the way it is, as common code
+# cannot be part of some eclass (bug #192505)
+. /usr/share/gnat/lib/gnat-common.bash
+
+
+### Phylosophy
+# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR}
+# Each lib creates a dir with its name under ${SPECSDIR} and populates it with
+# similar specs files (same name scheme)
+# Recognizing gnat specs from lib specs is then eazy - test entry for being a
+# dir, then just check what gnat profiles are installed for each lib..
+# doset then creates env file that combines settings for gnat and for the
+# corresponding profile of each installed lib..
+
+
+### Helpers
+
+# return *the* name of the active profile, checking that we do not have multiple
+# env files.
+# There can be only one!
+get_current_gnat() {
+ local profiles=( $(get_env_list) )
+
+ if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi
+
+ if (( 1 == ${#profiles[@]} )); then
+ local active=${profiles[0]#${MARKER}}
+ else
+ die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!"
+ fi
+
+ echo ${active}
+# disabling this check, as we want to use get_current_gnat with empty profile
+# as an indication that last gnat in SLOT was removed
+# if [ -f ${SPECSDIR}/${active} ]; then
+# echo ${active}
+# else
+# die -q "the active env.d profile does not correspond to any installed gnat!"
+# fi
+}
+
+# validity check that was removed from get_current_gnat, in case we need it
+# somewhere..
+# Arguments:
+# $1 - name of the gnat profiel to check
+profile_is_valid() {
+ if [[ -n $1 ]] ; then
+ [[ -f ${SPECSDIR}/$1 ]] || return 1
+ fi
+}
+
+# check if the passed arg represents the installed gnat and return it or
+# not_found
+# takes args:
+# $1 - list ID to check
+get_name_from_list() {
+ compiler=$1
+
+ compilers=( $(find_all_compilers) )
+ for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
+ if [[ ${compilers[$i]} == ${compiler} ]] ; then
+ echo ${compiler}
+ return
+ fi
+ done
+
+ echo "(not-found)"
+}
+
+
+# removes env files (for compiler and libs)
+# params:
+# $1: the name of profile for which to remove env file
+unset_env() {
+ rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null
+}
+
+
+### show action ###
+
+describe_show() {
+ echo "Show the active gnat compiler/profile and installed libs"
+}
+
+do_show() {
+ active=$(get_current_gnat)
+ if $(profile_is_valid ${active}); then
+ write_list_start "Current gnat version:"
+ if [[ -n ${active} ]] ; then
+ write_kv_list_entry "$active" ""
+ libs=( $(find_libs4profile ${active}) )
+ write_list_start "Active libs:"
+ write_numbered_list "${libs[@]}"
+ else
+ write_kv_list_entry "(none set)" ""
+ fi
+ else
+ write_error_msg "The active profile in ${ENVDIR} is not valid! Please set a valid profile!"
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List installed gnat compilers and libs"
+}
+
+do_list() {
+ compilers=( $(find_all_compilers ) )
+ active=$(get_current_gnat)
+
+ write_list_start "Available gnat compilers:"
+
+ if [[ -n ${compilers[@]} ]] ; then
+ local i
+ for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
+ linkversion=${compilers[${i}]}
+
+ [[ $linkversion == $active ]] && \
+ compilers[${i}]="${compilers[${i}]} $(highlight '*' )"
+ done
+ write_numbered_list "${compilers[@]}"
+
+ # now the libs
+ libs=( $(find_all_libs) )
+ write_list_start "Installed libs:"
+ for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
+ [ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \
+ libs[${i}]="${libs[${i}]} $(highlight '*' )"
+ done
+ write_numbered_list "${libs[@]}"
+ else
+ write_kv_list_entry "(none found)" ""
+ fi
+}
+
+
+### set action ###
+
+describe_set() {
+ echo "Set active gnat compiler"
+}
+
+# The set action. Parameters:
+# $1 - name of profile to set, obligatory, passed by eselect
+# $2 - optional, name of env file to generate. Used from gnat.eclass.
+do_set() {
+ if [[ -z ${1} ]] ; then
+ # no parameter
+ die -q "You didn't tell me which gnat to use"
+ fi
+
+ local toset=$(get_name_from_list $1)
+ if [[ ${toset} == "(not-found)" ]] ; then
+ die -q "I don't recognise the selection"
+ fi
+
+ # the action!
+ # in this implementation simply create an appropriate env file
+ local active=$(get_current_gnat)
+ if [[ -z ${2} ]] ; then
+ local envfile="${ENVDIR}/${MARKER}${toset}"
+
+ # now we need to remove an old env file, which is guaranteed to
+ # be unique by get_current_gnat above
+ if [[ -n ${active} ]] ; then
+ unset_env ${active}
+ fi
+ # just for a good measure remove the one we are going to write
+ unset_env ${toset}
+ else
+ local envfile="$2"
+ fi
+
+ generate_envFile ${toset} ${envfile}
+
+ # force update environment
+ # should be replaced with "do_action env update" when #172472 gets resolved
+ env-update &> /dev/null
+}
+
+
+
+### update action ###
+#
+# This action regenerates the /etc/env.d file for the current profile. Basically
+# the same as set, only it does not take any parameters. It should be called from ebuilds
+# installing Ada libs or in the pkg_postrm in gnatbuild.eclass, to clean up the
+# profile if last gnat in SLOT was removed.
+
+describe_update() {
+ echo "Update active gnat profile picking up new libs."
+}
+
+do_update() {
+ local toset=$(get_current_gnat)
+ local envfile="${ENVDIR}/${MARKER}${toset}"
+ # now check whether to update or unset the profile
+ if $(profile_is_valid ${toset}); then
+ generate_envFile ${toset} ${envfile}
+ else
+ unset_env ${toset}
+ fi
+ do_action env update &> /dev/null
+}
+
+### unset action ###
+
+describe_unset() {
+ echo "Remove settings for currently active gnat"
+}
+
+do_unset() {
+ local active=$(get_current_gnat)
+ # check whether we have any profile set before removing anything..
+ if [[ -n ${active} ]] ; then
+ unset_env ${active}
+ do_action env update &> /dev/null
+ fi
+}
diff --git a/app-eselect/eselect-gnat/files/gnat.eselect-1.5 b/app-eselect/eselect-gnat/files/gnat.eselect-1.5
new file mode 100644
index 00000000000..6b99952afe5
--- /dev/null
+++ b/app-eselect/eselect-gnat/files/gnat.eselect-1.5
@@ -0,0 +1,226 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage the installed gnat compilers"
+MAINTAINER="ada@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:48:57 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# "inheriting" common stuff
+# this crude sourcing has to stay the way it is, as common code
+# cannot be part of some eclass (bug #192505)
+. /usr/share/gnat/lib/gnat-common.bash
+
+
+### Phylosophy
+# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR}
+# Each lib creates a dir with its name under ${SPECSDIR} and populates it with
+# similar specs files (same name scheme)
+# Recognizing gnat specs from lib specs is then eazy - test entry for being a
+# dir, then just check what gnat profiles are installed for each lib..
+# doset then creates env file that combines settings for gnat and for the
+# corresponding profile of each installed lib..
+
+
+### Helpers
+
+# return *the* name of the active profile, checking that we do not have multiple
+# env files.
+# There can be only one!
+get_current_gnat() {
+ local profiles=( $(get_env_list) )
+
+ if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi
+
+ if (( 1 == ${#profiles[@]} )); then
+ local active=${profiles[0]#${MARKER}}
+ else
+ die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!"
+ fi
+
+ echo ${active}
+# disabling this check, as we want to use get_current_gnat with empty profile
+# as an indication that last gnat in SLOT was removed
+# if [ -f ${SPECSDIR}/${active} ]; then
+# echo ${active}
+# else
+# die -q "the active env.d profile does not correspond to any installed gnat!"
+# fi
+}
+
+# validity check that was removed from get_current_gnat, in case we need it
+# somewhere..
+# Arguments:
+# $1 - name of the gnat profiel to check
+profile_is_valid() {
+ if [[ -n $1 ]] ; then
+ [[ -f ${SPECSDIR}/$1 ]] || return 1
+ fi
+}
+
+# check if the passed arg represents the installed gnat and return it or
+# not_found
+# takes args:
+# $1 - list ID to check
+get_name_from_list() {
+ compiler=$1
+
+ compilers=( $(find_all_compilers) )
+ for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
+ if [[ ${compilers[$i]} == ${compiler} ]] ; then
+ echo ${compiler}
+ return
+ fi
+ done
+
+ echo "(not-found)"
+}
+
+
+# removes env files (for compiler and libs)
+# params:
+# $1: the name of profile for which to remove env file
+unset_env() {
+ rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null
+}
+
+
+### show action ###
+
+describe_show() {
+ echo "Show the active gnat compiler/profile and installed libs"
+}
+
+do_show() {
+ active=$(get_current_gnat)
+ if $(profile_is_valid ${active}); then
+ write_list_start "Current gnat version:"
+ if [[ -n ${active} ]] ; then
+ write_kv_list_entry "$active" ""
+ libs=( $(find_libs4profile ${active}) )
+ write_list_start "Active libs:"
+ write_numbered_list "${libs[@]}"
+ else
+ write_kv_list_entry "(none set)" ""
+ fi
+ else
+ write_error_msg "The active profile in ${ENVDIR} is not valid! Please set a valid profile!"
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List installed gnat compilers and libs"
+}
+
+do_list() {
+ compilers=( $(find_all_compilers ) )
+ active=$(get_current_gnat)
+
+ write_list_start "Available gnat compilers:"
+
+ local i
+ for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
+ linkversion=${compilers[${i}]}
+
+ [[ $linkversion == $active ]] && \
+ compilers[${i}]=$(highlight_marker "${compilers[${i}]}")
+ done
+ write_numbered_list -m "(none)" "${compilers[@]}"
+
+ # now the libs
+ libs=( $(find_all_libs) )
+ write_list_start "Installed libs:"
+ for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
+ [ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \
+ libs[${i}]=$(highlight_marker "${libs[${i}]}")
+ done
+ write_numbered_list -m "(no libs)" "${libs[@]}"
+}
+
+
+### set action ###
+
+describe_set() {
+ echo "Set active gnat compiler"
+}
+
+# The set action. Parameters:
+# $1 - name of profile to set, obligatory, passed by eselect
+# $2 - optional, name of env file to generate. Used from gnat.eclass.
+do_set() {
+ if [[ -z ${1} ]] ; then
+ # no parameter
+ die -q "You didn't tell me which gnat to use"
+ fi
+
+ local toset=$(get_name_from_list $1)
+ if [[ ${toset} == "(not-found)" ]] ; then
+ die -q "I don't recognise the selection"
+ fi
+
+ # the action!
+ # in this implementation simply create an appropriate env file
+ local active=$(get_current_gnat)
+ if [[ -z ${2} ]] ; then
+ local envfile="${ENVDIR}/${MARKER}${toset}"
+
+ # now we need to remove an old env file, which is guaranteed to
+ # be unique by get_current_gnat above
+ if [[ -n ${active} ]] ; then
+ unset_env ${active}
+ fi
+ # just for a good measure remove the one we are going to write
+ unset_env ${toset}
+ else
+ local envfile="$2"
+ fi
+
+ generate_envFile ${toset} ${envfile}
+
+ # force update environment
+ # should be replaced with "do_action env update" when #172472 gets resolved
+ env-update &> /dev/null
+}
+
+
+
+### update action ###
+#
+# This action regenerates the /etc/env.d file for the current profile. Basically
+# the same as set, only it does not take any parameters. It should be called from ebuilds
+# installing Ada libs or in the pkg_postrm in gnatbuild.eclass, to clean up the
+# profile if last gnat in SLOT was removed.
+
+describe_update() {
+ echo "Update active gnat profile picking up new libs."
+}
+
+do_update() {
+ local toset=$(get_current_gnat)
+ local envfile="${ENVDIR}/${MARKER}${toset}"
+ # now check whether to update or unset the profile
+ if $(profile_is_valid ${toset}); then
+ generate_envFile ${toset} ${envfile}
+ else
+ unset_env ${toset}
+ fi
+ do_action env update &> /dev/null
+}
+
+### unset action ###
+
+describe_unset() {
+ echo "Remove settings for currently active gnat"
+}
+
+do_unset() {
+ local active=$(get_current_gnat)
+ # check whether we have any profile set before removing anything..
+ if [[ -n ${active} ]] ; then
+ unset_env ${active}
+ do_action env update &> /dev/null
+ fi
+}
diff --git a/app-eselect/eselect-gnat/metadata.xml b/app-eselect/eselect-gnat/metadata.xml
new file mode 100644
index 00000000000..3a0ddbad4e3
--- /dev/null
+++ b/app-eselect/eselect-gnat/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>ada</herd>
+<longdescription>The eselect module for the supported gnat compilers.</longdescription>
+</pkgmetadata>
diff --git a/app-eselect/eselect-gnome-shell-extensions/Manifest b/app-eselect/eselect-gnome-shell-extensions/Manifest
new file mode 100644
index 00000000000..d309afc0e37
--- /dev/null
+++ b/app-eselect/eselect-gnome-shell-extensions/Manifest
@@ -0,0 +1 @@
+DIST eselect-gnome-shell-extensions-20120911.tar.xz 2792 SHA256 1f763aab3a80f85805ad5ed30010cf0c26afb7ad3b81c4f698662ad3e33bf91c SHA512 da54e2a0b74f3e8f8eaa26b1858d26c56fbaa398ec54b079f504377a4079df19ff52485991a9ea153f92c93a9fe871d70c3c2b841bad4b8dba402ad83c9297e2 WHIRLPOOL abdfea55dd0c2429900e17919bab21ed5893e44a41dba152ae3c093e14bdc2d2695551a193d77c86753c623466b6bd46beb51323900ebdb3351b7b756a31b9fe
diff --git a/app-eselect/eselect-gnome-shell-extensions/eselect-gnome-shell-extensions-20120911.ebuild b/app-eselect/eselect-gnome-shell-extensions/eselect-gnome-shell-extensions-20120911.ebuild
new file mode 100644
index 00000000000..8cc4d90a9a3
--- /dev/null
+++ b/app-eselect/eselect-gnome-shell-extensions/eselect-gnome-shell-extensions-20120911.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="Manages system defaults for GNOME Shell extensions"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~tetromino/distfiles/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+# gnome-shell schemas are used in pkg_postinst
+COMMON_DEPEND="app-admin/eselect
+ >=dev-libs/glib-2.26:2
+ gnome-base/gsettings-desktop-schemas
+ gnome-base/gnome-shell"
+RDEPEND="${COMMON_DEPEND}
+ dev-lang/perl
+ dev-perl/JSON"
+DEPEND="${COMMON_DEPEND}
+ app-arch/xz-utils"
+
+src_install() {
+ insinto "/usr/share/eselect/modules"
+ doins gnome-shell-extensions.eselect
+ keepdir "/etc/eselect/gnome-shell-extensions"
+ # The actual gschema override file will be greated in pkg_postinst.
+ dosym "/etc/eselect/gnome-shell-extensions/${PN}.gschema.override" \
+ "/usr/share/glib-2.0/schemas/${PN}.gschema.override"
+}
+
+pkg_postinst() {
+ einfo "Updating list of installed extensions"
+ eselect gnome-shell-extensions update || die
+ local keyname="disabled-extensions"
+ has_version ">=gnome-base/gnome-shell-3.1.90" &&
+ keyname="enabled-extensions"
+ elog
+ elog "eselect gnome-shell-extensions manages the system default value of"
+ elog "the org.gnome.shell ${keyname} key. To override the default"
+ elog "for an individual user, use the gsettings command, e.g."
+ elog "\$ gsettings set org.gnome.shell ${keyname} \"['foo', 'bar']\""
+ elog "To undo per-user changes and use the system default, do"
+ elog "\$ gsettings reset org.gnome.shell ${keyname}"
+ elog
+}
diff --git a/app-eselect/eselect-gnome-shell-extensions/metadata.xml b/app-eselect/eselect-gnome-shell-extensions/metadata.xml
new file mode 100644
index 00000000000..da6fd63d008
--- /dev/null
+++ b/app-eselect/eselect-gnome-shell-extensions/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>gnome</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-infinality/Manifest b/app-eselect/eselect-infinality/Manifest
new file mode 100644
index 00000000000..3a095f9c7f7
--- /dev/null
+++ b/app-eselect/eselect-infinality/Manifest
@@ -0,0 +1 @@
+DIST eselect-infinality-1.tar.gz 8274 SHA256 3cbfd022e8c00137c1784924cba98a68b2cf4930e0e9af840984debe02624347 SHA512 0bff25817b68125c670ffb2782704604415f233711974c47935bd5dac80b164ca471cea1fea193886b30d0eec60a4a208f0ede6bd1a40488c2458a7dd9fe127d WHIRLPOOL ba17471990533722076eeb21fc710b5d3ce054f5112b1b153e945fb540210f4f30206795c604aa2a61027fadc3d2df8b039349fdc05882786e0c9fb31baf5824
diff --git a/app-eselect/eselect-infinality/eselect-infinality-1.ebuild b/app-eselect/eselect-infinality/eselect-infinality-1.ebuild
new file mode 100644
index 00000000000..e7dcd075b60
--- /dev/null
+++ b/app-eselect/eselect-infinality/eselect-infinality-1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit vcs-snapshot readme.gentoo
+
+DESCRIPTION="Eselect module to choose an infinality font configuration style"
+HOMEPAGE="https://github.com/yngwin/eselect-infinality"
+SRC_URI="${HOMEPAGE}/tarball/v${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
+DEPEND=""
+
+DOC_CONTENTS="Use eselect infinality to select a font configuration style.
+This is supposed to be used in pair with eselect lcdfilter."
+
+src_install() {
+ dodoc README.rst
+ readme.gentoo_create_doc
+ insinto "/usr/share/eselect/modules"
+ doins infinality.eselect
+}
diff --git a/app-eselect/eselect-infinality/metadata.xml b/app-eselect/eselect-infinality/metadata.xml
new file mode 100644
index 00000000000..c4a86d017be
--- /dev/null
+++ b/app-eselect/eselect-infinality/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>yngwin@gentoo.org</email>
+ </maintainer>
+ <herd>fonts</herd>
+ <upstream>
+ <remote-id type="github">yngwin/eselect-infinality</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-eselect/eselect-java/Manifest b/app-eselect/eselect-java/Manifest
new file mode 100644
index 00000000000..ed06df77cf3
--- /dev/null
+++ b/app-eselect/eselect-java/Manifest
@@ -0,0 +1,2 @@
+DIST eselect-java-0.1.0.tar.bz2 14486 SHA256 7dcd2c9d7aa6d693d0b0d558859bdc88c53997d92562a1bf5335de708d19c817 SHA512 4ee13349a9b34cfb007a04423f6961c984ad02135cb1141e504662682dcc35d22f9332b04bad13ec9d538212fe2230407598eed633d5a5edd0633081ec2fa6ae WHIRLPOOL ec94c878f8fab9272b679c25b0ffc553f5fa25dd62dc1a447397befa9a749be3124fc994c34ccc2014e981d088e9cca76beef74356283dee79ec370ea18009c7
+DIST eselect-java-0.1.0.tar.gz 72265 SHA256 035b0c2cb9837b8b3b906cf9d72ec9ebf6e0db3d5e296c2b1c640d0e4a4071f2 SHA512 f8099f394303466ce652f099c16581668544cb4c0ab3c7c8af4b56230c6bdd692e72610be5f522227e874650481554f3b7815da2a4e8d090c31478d399c04e95 WHIRLPOOL 4f2b4432fe46023163b8e8421a505422b6f50599b67892f1b7abfb7b46393aab0590f1ecd69526839392703fed80fb099b8f3e273a34b99da39045c7b8a9cb77
diff --git a/app-eselect/eselect-java/eselect-java-0.1.0-r1.ebuild b/app-eselect/eselect-java/eselect-java-0.1.0-r1.ebuild
new file mode 100644
index 00000000000..cb4f1fdc000
--- /dev/null
+++ b/app-eselect/eselect-java/eselect-java-0.1.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools
+
+DESCRIPTION="A set of eselect modules for Java"
+HOMEPAGE="http://www.gentoo.org/proj/en/java/"
+SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="
+ !app-eselect/eselect-ecj
+ !app-eselect/eselect-maven
+ !<dev-java/java-config-2.2
+ app-admin/eselect"
+
+src_prepare() {
+ eautoreconf
+}
diff --git a/app-eselect/eselect-java/eselect-java-0.1.0.ebuild b/app-eselect/eselect-java/eselect-java-0.1.0.ebuild
new file mode 100644
index 00000000000..3f62e655f9f
--- /dev/null
+++ b/app-eselect/eselect-java/eselect-java-0.1.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="A set of eselect modules for Java"
+HOMEPAGE="http://www.gentoo.org/proj/en/java/"
+SRC_URI="http://dev.gentoo.org/~sera/distfiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ia64 ppc ppc64 x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="
+ !app-eselect/eselect-ecj
+ !app-eselect/eselect-maven
+ !<dev-java/java-config-2.2
+ app-admin/eselect"
diff --git a/app-eselect/eselect-java/metadata.xml b/app-eselect/eselect-java/metadata.xml
new file mode 100644
index 00000000000..82a57ccd524
--- /dev/null
+++ b/app-eselect/eselect-java/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>java</herd>
+<longdescription lang="en">
+</longdescription>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-lapack/eselect-lapack-0.1.ebuild b/app-eselect/eselect-lapack/eselect-lapack-0.1.ebuild
new file mode 100644
index 00000000000..78038b08518
--- /dev/null
+++ b/app-eselect/eselect-lapack/eselect-lapack-0.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="LAPACK module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE=""
+
+# Need skel.bash lib
+RDEPEND=">=app-admin/eselect-1.0.5"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="lapack"
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}"/${MODULE}.eselect-${PVR} ${MODULE}.eselect
+ doman "${FILESDIR}"/lapack.eselect.5
+}
diff --git a/app-eselect/eselect-lapack/files/lapack.eselect-0.1 b/app-eselect/eselect-lapack/files/lapack.eselect-0.1
new file mode 100644
index 00000000000..f199692bd63
--- /dev/null
+++ b/app-eselect/eselect-lapack/files/lapack.eselect-0.1
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit skel
+
+MODULE="LAPACK"
+IFACE="lapack"
+
+DESCRIPTION="Manage installed $MODULE implementations"
+MAINTAINER="spyderous@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:49:51 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# vim: set ft=eselect :
diff --git a/app-eselect/eselect-lapack/files/lapack.eselect.5 b/app-eselect/eselect-lapack/files/lapack.eselect.5
new file mode 100644
index 00000000000..b682486ef82
--- /dev/null
+++ b/app-eselect/eselect-lapack/files/lapack.eselect.5
@@ -0,0 +1,67 @@
+.TH "ESELECT" "5" "June 2006" "Gentoo Linux" "eselect"
+.SH "NAME"
+lapack.eselect \- The LAPACK management module for Gentoo's eselect
+.SH "SYNOPSIS"
+\fBeselect lapack\fR [\fBhelp\fR|\fBusage\fR]
+.br
+\fBeselect lapack\fR \fBlist\fR [\fIoptions\fR]
+.br
+\fBeselect lapack\fR \fBadd\fR
+.br
+\fBeselect lapack\fR \fBset\fR \fIimplementation\fR [\fIoptions\fR]
+.br
+\fBeselect lapack\fR \fBshow\fR [\fIoptions\fR]
+
+.SH "DESCRIPTION"
+\fBeselect\fR is Gentoo's configuration and management tool. It features
+modules that care for the individual administrative tasks.
+.SH "ACTION: LIST"
+\fBeselect lapack list\fR [\fIoptions\fR]
+.br
+Displays an ordered list of installed LAPACK implementations. It distinguishes between versions with different
+Application Binary Interfaces (e.g. x86/AMD64). Furthermore, it also distinguishes
+between interfaces to high-level programming languages. Each line holds
+a number and the implementation's name. An asterisk next to one of the list
+elements denotes an active implementation.
+
+phi / # eselect lapack list
+.br
+Installed LAPACK for libdir \fBlib\fR
+.br
+ [1] atlas *
+ [2] reference
+
+Possible \fIoptions\fR to the \fBlist\fR action are restrictions to
+handle only certain ABI\-specific library directories. For example,
+
+\fBeselect lapack list lib64\fR
+
+lists only LAPACK implementations found in \fB/usr/lib64\fR.
+
+.SH "ACTION: SHOW"
+\fBeselect lapack show\fR [\fIoptions\fR]
+.br
+Shows your system's currently active LAPACK implementations.
+
+phi / # eselect lapack show
+.br
+lib: atlas
+.br
+lib64: reference
+
+The same \fIoptions\fR that apply to the \fBlist\fR action can be used
+with the \fBshow\fR action to restrict it to given ABIs.
+.SH "ACTION: SET"
+\fBeselect lapack set\fR \fIimplementation\fR [\fIoptions\fR]
+.br
+Sets your system's currently active LAPACK implementations to \fIimplementation\fR.
+The same \fIoptions\fR that apply to the \fBlist\fR action can be used
+with the \fBset\fR action to restrict it to given ABIs.
+
+phi / # eselect lapack set atlas
+.SH "AUTHOR"
+Danny van Dyk <kugelfang@gentoo.org>
+.br
+Donnie Berkholz <spyderous@gentoo.org>
+.SH "REVISION"
+$Id$
diff --git a/app-eselect/eselect-lapack/metadata.xml b/app-eselect/eselect-lapack/metadata.xml
new file mode 100644
index 00000000000..b229aec85b8
--- /dev/null
+++ b/app-eselect/eselect-lapack/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>sci</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-lcdfilter/Manifest b/app-eselect/eselect-lcdfilter/Manifest
new file mode 100644
index 00000000000..55101f480d9
--- /dev/null
+++ b/app-eselect/eselect-lcdfilter/Manifest
@@ -0,0 +1,2 @@
+DIST eselect-lcdfilter-1.tar.gz 17206 SHA256 a27229461fff3bc2830a1006ae73d89ce05ba48aef7673c26a2af461457303a4 SHA512 1f86fb2cc21ff9cc9b79c50578a02f7c461ae203533cc817dc733d0dde9ad43763267bb1703b9495ba6f46989e0446bb1cba39aaa705d3b605118f62cb0d2dfc WHIRLPOOL 8bb947e0ddbd6c7056afe9394f37e6520ff0e45536c8572b28690f15fa0c1b699f78db2e7037305e1f0866d67395b67c80c7dd1821a7f2de8c603b2ec037ff2e
+DIST eselect-lcdfilter-2.tar.gz 18365 SHA256 15ea8e85dcc87dec32a5e0a4dcf15251364f8a020cf7d73e858ec46b5590b6a0 SHA512 e17c475c860f0a3ad7249d21ca11c52f3226852ba042b83058baf6823242c4f8be0042aad52029757944fce6d816df386b928f2005ab87e0778d3ecb26ceec92 WHIRLPOOL d20a5d97386753a3d5fc01b91fa18ddc9b3106900268fe27bdf8f21ef1c9cf788dcde8c9714cbc52142e79b5f02dd8657dfef652c45658dc76d70da3b22739e6
diff --git a/app-eselect/eselect-lcdfilter/eselect-lcdfilter-1.ebuild b/app-eselect/eselect-lcdfilter/eselect-lcdfilter-1.ebuild
new file mode 100644
index 00000000000..045e82de893
--- /dev/null
+++ b/app-eselect/eselect-lcdfilter/eselect-lcdfilter-1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit vcs-snapshot
+
+DESCRIPTION="Eselect module to choose Freetype infinality-enhanced LCD filtering settings"
+HOMEPAGE="https://github.com/yngwin/eselect-lcdfilter"
+SRC_URI="${HOMEPAGE}/tarball/v1 -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-admin/eselect"
+PDEPEND="media-libs/freetype[infinality]"
+
+src_install() {
+ dodoc README.rst infinality-settings.sh
+
+ insinto "/usr/share/eselect/modules"
+ doins lcdfilter.eselect
+
+ insinto "/usr/share/${PN}"
+ doins -r env.d
+}
+
+pkg_postinst() {
+ elog "Use eselect lcdfilter to select an lcdfiltering font style."
+ elog "You can customize /usr/share/${PN}/env.d/custom"
+ elog "with your own settings. See /usr/share/doc/${PF}/infinality-settings.sh"
+ elog "for an explanation and examples of the variables."
+ elog "This module is supposed to be used in pair with eselect infinality."
+}
diff --git a/app-eselect/eselect-lcdfilter/eselect-lcdfilter-2.ebuild b/app-eselect/eselect-lcdfilter/eselect-lcdfilter-2.ebuild
new file mode 100644
index 00000000000..dcc1fa7e770
--- /dev/null
+++ b/app-eselect/eselect-lcdfilter/eselect-lcdfilter-2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit vcs-snapshot readme.gentoo
+
+DESCRIPTION="Eselect module to choose Freetype infinality-enhanced LCD filtering settings"
+HOMEPAGE="https://github.com/yngwin/eselect-lcdfilter"
+SRC_URI="${HOMEPAGE}/tarball/v${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-admin/eselect"
+PDEPEND="media-libs/freetype[infinality]"
+
+src_install() {
+ DOC_CONTENTS="Use eselect lcdfilter to select an lcdfiltering font style.
+ You can customize ${EPREFIX}/usr/share/${PN}/env.d/custom with your own settings.
+ See ${EPREFIX}/usr/share/doc/${PF}/infinality-settings.sh for an explanation and
+ examples of the variables. This module is supposed to be used in pair with
+ eselect infinality."
+
+ dodoc README.rst infinality-settings.sh
+ readme.gentoo_create_doc
+
+ insinto "/usr/share/eselect/modules"
+ doins lcdfilter.eselect
+
+ insinto "/usr/share/${PN}"
+ doins -r env.d
+}
diff --git a/app-eselect/eselect-lcdfilter/metadata.xml b/app-eselect/eselect-lcdfilter/metadata.xml
new file mode 100644
index 00000000000..bb17f15c381
--- /dev/null
+++ b/app-eselect/eselect-lcdfilter/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>yngwin@gentoo.org</email>
+ </maintainer>
+ <herd>fonts</herd>
+ <upstream>
+ <remote-id type="github">yngwin/eselect-lcdfilter</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-eselect/eselect-lib-bin-symlink/Manifest b/app-eselect/eselect-lib-bin-symlink/Manifest
new file mode 100644
index 00000000000..f688fa1df5e
--- /dev/null
+++ b/app-eselect/eselect-lib-bin-symlink/Manifest
@@ -0,0 +1,2 @@
+DIST eselect-lib-bin-symlink-0.1.1.tar.bz2 45376 SHA256 397ac213f606d3d0534539a9b34f755389294cb1d584b1b656e105a441286b15 SHA512 16b56153aa61534997f42641656c3feaf27243fece8cdd42e93ed0be5dabedafc316af8111cd7ff0e321666de8deb1a35e86032cd9590060f677ac7e68fd48bd WHIRLPOOL e1490e3dc35a8eb96416469fb0f4b310867d1a245abd96fafc2ed0b96561f3cfbcfaff651df79e387338801177898a4b116f2c15242d1a74cb8a3e0375072b87
+DIST eselect-lib-bin-symlink-0.1.tar.bz2 45331 SHA256 eb612453252e06991c0a3840d8cc1bc287dd5dbf84f21c9ce17018156822a14b SHA512 c4e31c81ee778a18335e3a5f45eba28688ca6af8b7f5069897a19f1d51e0a83fc35b80149c29643c01ff959aedd05b80a020bd0fbdb9fc7ecf207405f8c77ed6 WHIRLPOOL 97cf79e2287d347000d72cdfad6592dbb39f36fe4170ccd88719d7661f0578351a7879c73c412167cf931c0d9b53b3ef52298c6e5d900efa5136020a2ab65cd1
diff --git a/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.1.ebuild b/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.1.ebuild
new file mode 100644
index 00000000000..4d77943cc04
--- /dev/null
+++ b/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils
+
+DESCRIPTION="An eselect library to manage executable symlinks"
+HOMEPAGE="https://bitbucket.org/mgorny/eselect-lib-bin-symlink/"
+SRC_URI="https://www.bitbucket.org/mgorny/${PN}/downloads/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
diff --git a/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.ebuild b/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.ebuild
new file mode 100644
index 00000000000..e8c7ee300bd
--- /dev/null
+++ b/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-0.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils
+
+DESCRIPTION="An eselect library to manage executable symlinks"
+HOMEPAGE="https://bitbucket.org/mgorny/eselect-lib-bin-symlink/"
+SRC_URI="https://www.bitbucket.org/mgorny/${PN}/downloads/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
diff --git a/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-9999.ebuild b/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-9999.ebuild
new file mode 100644
index 00000000000..8213db86629
--- /dev/null
+++ b/app-eselect/eselect-lib-bin-symlink/eselect-lib-bin-symlink-9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+#if LIVE
+EGIT_REPO_URI="http://bitbucket.org/mgorny/${PN}.git"
+AUTOTOOLS_AUTORECONF=1
+inherit git-r3
+#endif
+
+inherit autotools-utils
+
+DESCRIPTION="An eselect library to manage executable symlinks"
+HOMEPAGE="https://bitbucket.org/mgorny/eselect-lib-bin-symlink/"
+SRC_URI="https://www.bitbucket.org/mgorny/${PN}/downloads/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
+#if LIVE
+
+KEYWORDS=
+SRC_URI=
+#endif
diff --git a/app-eselect/eselect-lib-bin-symlink/metadata.xml b/app-eselect/eselect-lib-bin-symlink/metadata.xml
new file mode 100644
index 00000000000..c12899a1639
--- /dev/null
+++ b/app-eselect/eselect-lib-bin-symlink/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <upstream>
+ <maintainer status="active">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <bugs-to>https://bitbucket.org/mgorny/eselect-lib-bin-symlink/issues/</bugs-to>
+ <remote-id type="bitbucket">mgorny/eselect-lib-bin-symlink</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-eselect/eselect-lua/eselect-lua-1.ebuild b/app-eselect/eselect-lua/eselect-lua-1.ebuild
new file mode 100644
index 00000000000..9a2c503dc71
--- /dev/null
+++ b/app-eselect/eselect-lua/eselect-lua-1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Lua eselect module"
+HOMEPAGE="http://www.gentoo.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE=""
+
+DEPEND=">=app-admin/eselect-1.2.4"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+src_install() {
+ insinto /usr/share/eselect/modules/
+ newins "${FILESDIR}"/lua.eselect-${PV} lua.eselect
+}
diff --git a/app-eselect/eselect-lua/files/lua.eselect-1 b/app-eselect/eselect-lua/files/lua.eselect-1
new file mode 100644
index 00000000000..59abc87c848
--- /dev/null
+++ b/app-eselect/eselect-lua/files/lua.eselect-1
@@ -0,0 +1,150 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 2014-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit config multilib
+
+DESCRIPTION="Manage lua symlinks"
+MAINTAINER="mabi@gentoo.org"
+
+HEADER_FILES="lauxlib.h luaconf.h lua.h lua.hpp lualib.h"
+
+remove_symlinks() {
+ rm -f "${EROOT}"/usr/bin/{lua,luac} &>/dev/null
+ for dir in $(get_libdirs) ; do
+ rm -f "${EROOT}"${dir}/liblua.so &>/dev/null && \
+ rm -f "${EROOT}"${dir}/pkgconfig/lua.pc &>/dev/null
+ done
+ for f in $HEADER_FILES ; do
+ rm -f "${EROOT}"/usr/include/$f
+ done
+ rm -f "${EROOT}"/usr/share/man/man1/{lua,luac}.1{,.gz,.bz2,.lzma} &>/dev/null
+}
+
+set_symlinks() {
+ local ver=$1
+ ln -s "${EROOT}"/usr/bin/lua{$ver,}
+ ln -s "${EROOT}"/usr/bin/luac{$ver,}
+ for dir in $(get_libdirs) ; do
+ ln -s "${dir}"/liblua{$ver,}.so
+ ln -s "${dir}"/pkgconfig/lua{$ver,}.pc
+ done
+ for orig in "${EROOT}"/usr/share/man/man1/lua*$ver.1* ; do
+ ln -s "${orig}" "${orig//$ver}"
+ done
+ for f in $HEADER_FILES ; do
+ ln -s "${EROOT}"/usr/include/lua$ver/$f "${EROOT}"/usr/include
+ done
+}
+
+get_libdirs() {
+ local dir libdirs
+ for dir in $(list_libdirs); do
+ [[ -L ${EROOT}/usr/${dir} ]] && continue
+ ls "${EROOT}"/usr/${dir}/liblua*.* > /dev/null 2>&1 || continue
+
+ libdirs+=' '/usr/${dir}
+ done
+ echo ${libdirs:-/usr/lib}
+}
+
+find_targets() {
+ local dirs
+ local prefix="${EROOT}/usr/bin/lua"
+ for f in ${prefix}5* ; do
+ dirs="${dirs} ${f##$prefix}"
+ done
+ echo $dirs
+}
+
+resolv_target() {
+ local targets=( $(find_targets) )
+ if is_number $1; then
+ [[ $1 -le ${#targets[@]} && $1 -gt 0 ]] && echo "${targets[ $(( $1 - 1 )) ]}"
+ elif has $1 ${targets[@]}; then
+ echo $1
+ fi
+}
+
+get_active_version() {
+ readlink -e "${EROOT}"/usr/bin/lua | sed -ne "s:.*/usr/bin/lua\([\d.-]*\):\1:p"
+}
+
+## Actual actions
+
+## set action
+
+describe_set() {
+ echo "Sets the current version of lua"
+}
+
+describe_set_parameters() {
+ echo '<target>'
+}
+
+describe_set_options() {
+ echo 'target: Target name or number (from "list" action)'
+}
+
+
+do_set() {
+ local target=$(resolv_target $1)
+ if [[ -z "${target}" ]]; then
+ die -q "You need to specify a version"
+ fi
+ remove_symlinks
+ set_symlinks $target
+}
+
+## List action
+
+describe_list() {
+ echo 'Lists available lua versions'
+}
+
+do_list() {
+ local targets
+ local a
+ targets=( $(find_targets) )
+ a=$(get_active_version)
+ for (( i = 0; i < ${#targets[@]}; i++ )) ; do
+ [[ $a == ${targets[i]} ]] && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_numbered_list -m '(none found)' "${targets[@]}"
+}
+
+## Show action
+
+describe_show() {
+ echo 'Show the active lua version'
+}
+
+do_show() {
+ get_active_version
+}
+
+## update action
+
+describe_update() {
+ echo 'Automatically update the lua version'
+}
+
+describe_update_options() {
+ echo 'ifunset : Do not override existing implementation'
+}
+
+do_update() {
+ [[ -n ${1} && ! ( ${1} == ifunset || ${1} == '--if-unset' ) ]] && \
+ die -q 'Usage error'
+
+ [[ ( ${1} == ifunset || ${1} == '--if-unset' ) && -n $(get_active_version) ]] && \
+ return
+
+ remove_symlinks
+
+ local targets=( $(find_targets) )
+ if [[ -n ${#targets[@]} ]] ; then
+ local target=${targets[${#targets[@]} - 1]}
+ set_symlinks $target || echo 'Nothing to update'
+ fi
+}
diff --git a/app-eselect/eselect-lua/metadata.xml b/app-eselect/eselect-lua/metadata.xml
new file mode 100644
index 00000000000..ffbaf993ff7
--- /dev/null
+++ b/app-eselect/eselect-lua/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>mabi@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">Lua eselect module</longdescription>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-maven/eselect-maven-0.2-r1.ebuild b/app-eselect/eselect-maven/eselect-maven-0.2-r1.ebuild
new file mode 100644
index 00000000000..657d5a88c69
--- /dev/null
+++ b/app-eselect/eselect-maven/eselect-maven-0.2-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+DESCRIPTION="Manages Maven symlinks"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.8
+ !<dev-java/maven-bin-2.0.10-r1:2.1
+ !app-eselect/eselect-java"
+PDEPEND="
+|| (
+ dev-java/maven-bin:3.0
+ dev-java/maven-bin:2.2
+ dev-java/maven-bin:2.0
+)"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}/maven-${PV}.eselect" maven.eselect \
+ || die "newins failed"
+}
diff --git a/app-eselect/eselect-maven/eselect-maven-0.2-r2.ebuild b/app-eselect/eselect-maven/eselect-maven-0.2-r2.ebuild
new file mode 100644
index 00000000000..cbedd98baec
--- /dev/null
+++ b/app-eselect/eselect-maven/eselect-maven-0.2-r2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages Maven symlinks"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.8
+ !<dev-java/maven-bin-2.0.10-r1:2.1
+ !app-eselect/eselect-java"
+PDEPEND="
+|| (
+ dev-java/maven-bin:3.0
+ dev-java/maven-bin:2.2
+ dev-java/maven-bin:2.0
+)"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}/maven-${PV}.eselect" maven.eselect \
+ || die "newins failed"
+}
diff --git a/app-eselect/eselect-maven/files/maven-0.2.eselect b/app-eselect/eselect-maven/files/maven-0.2.eselect
new file mode 100644
index 00000000000..bdc35c9fb30
--- /dev/null
+++ b/app-eselect/eselect-maven/files/maven-0.2.eselect
@@ -0,0 +1,175 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage Maven targets"
+MAINTAINER="java@gentoo.org"
+VERSION="0.2"
+
+MVN="${EROOT}/usr/bin/mvn"
+
+# find a list of mvn symlink targets, best first.
+find_targets() {
+ for f in $(ls -r "${MVN}"-[0-9]* 2> /dev/null) ; do
+ if [[ -f "${f}" ]] ; then
+ echo $(basename "${f}")
+ fi
+ done
+}
+
+# get a named or numbered target.
+find_target() {
+ local target=${1}
+
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ [[ -z "${targets}" ]] && die -q "No targets found!"
+ target=${targets[target-1]}
+ fi
+
+ if [[ "${target}" = mvn-[0-9]* ]] && [[ -f "${EROOT}/usr/bin/${target}" ]] ; then
+ echo ${target}
+ else
+ die -q "Target \"${1}\" doesn't appear to be valid!"
+ fi
+}
+
+# try to remove the mvn symlink.
+remove_symlink() {
+ rm "${MVN}" &>/dev/null
+}
+
+# determine the current target.
+get_target() {
+ local canonicalised=$(canonicalise "${MVN}")
+ echo $(basename "${canonicalised}")
+}
+
+# set the Maven symlink.
+set_symlink() {
+ local target=$(find_target "${1}")
+ remove_symlink
+ ln -s "${target}" "${MVN}" || die "Couldn't set ${target} symlink."
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show current Maven target"
+}
+
+do_show() {
+ if [[ ${#} -gt 0 ]]; then
+ die -q "No parameters allowed."
+ fi
+
+ if [[ -L "${MVN}" ]] ; then
+ get_target
+ return 0
+ elif [[ -e "${MVN}" ]] ; then
+ echo "(not a symlink)" >&2
+ return 1
+ else
+ echo "(unset)" >&2
+ return 1
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available Maven targets"
+}
+
+do_list() {
+ if [[ ${#} -gt 0 ]]; then
+ die -q "Usage error: no parameters allowed."
+ fi
+
+ local i targets
+ targets=( $(find_targets) )
+
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = $(basename "$(canonicalise "${MVN}")") ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+
+ write_list_start "Available Maven targets:"
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new Maven target"
+}
+
+describe_set_options() {
+ echo "target : Target name or number (from 'list' action)"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ $# -gt 1 ]]; then
+ die -q "Too many parameters. Expected only one."
+ fi
+
+ local target=${1}
+
+ if [[ -z "${target}" ]] ; then
+ die -q "You didn't give me a target name or number."
+ elif [[ -L "${MVN}" ]] ; then
+ if ! remove_symlink ; then
+ die -q "Can't remove existing Maven provider."
+ elif ! set_symlink "${1}" ; then
+ die -q "Can't set new Maven provider."
+ fi
+ elif [[ -e "${MVN}" ]] ; then
+ write_warning_msg "Can't set a new Maven provider. There's a file in the way at ${MVN}. You can try removing it manually, and then re-running this command."
+ else
+ set_symlink "${target}" || die -q "Wasn't able to set a new provider."
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Set the Maven target to the latest if the current target is invalid or if the given target is the latest"
+}
+
+describe_update_options() {
+ echo "target (optional) : Target name (from 'list' action)"
+}
+
+describe_update_parameters() {
+ echo "<target>"
+}
+
+do_update() {
+ if [[ $# -gt 1 ]] ; then
+ die -q "Too many parameters. Expected only one."
+ fi
+
+ # For pkg_postrm
+ if [[ ! $(find_targets) ]]; then
+ remove_symlink
+ return
+ fi
+
+ local canonicalised=$(canonicalise "${MVN}")
+
+ if [[ ! -L "${MVN}" ]] || [[ ! -f "${canonicalised}" ]] ; then
+ do_set 1
+ elif [[ -n "${1}" ]] ; then
+ # Check whether target name is valid.
+ find_target "${1}" > /dev/null
+
+ if [[ "${1}" == "$(find_target 1)" ]] ; then
+ do_set 1
+ fi
+ fi
+}
diff --git a/app-eselect/eselect-maven/metadata.xml b/app-eselect/eselect-maven/metadata.xml
new file mode 100644
index 00000000000..7303cef9696
--- /dev/null
+++ b/app-eselect/eselect-maven/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>java</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-mesa/Manifest b/app-eselect/eselect-mesa/Manifest
new file mode 100644
index 00000000000..41ee5d513d7
--- /dev/null
+++ b/app-eselect/eselect-mesa/Manifest
@@ -0,0 +1,2 @@
+DIST eselect-mesa-0.0.10.tar.gz 2214 SHA256 736c4360902ddf78d02c6153e558164f3e09cfe74953ae15b74c6ca1647aca7c SHA512 c039ca769a436ccb5a7f0271532d3bc988f29ba31784fc74d1a4dd230e4f9c6db7ef3b9b40a1341202d9641eca9278a73c74e13091f2370065dca7d3707d91c3 WHIRLPOOL 7687b1abab31ccd6a4cad4b585fad0d31b3b7a22e64e3169309824e3cf410ddfd92e8974085d3d01e5deaa884c14964e7af3468ab11b0f2a705657e46091a19e
+DIST eselect-mesa-0.0.9.tar.gz 2217 SHA256 27adf2beff6f7cbd54004e4c27f9ac869e8c7bc72cb83c32acfbccf4119b2494 SHA512 3e00f7e0cc122c15d0c6878b3a3a006e8a8c032c81570fa31143c7e5e8feddc69afdb4f19207f6bc0755172b7cc5e96bcd4093d65218a387af30cfdf230abbf0 WHIRLPOOL bcbcdfdcf17808548ed31fb60fe4f16f26c2e88ab121a4f8a12a5b6c44b9faeb32736fd760e5acbbd90f5afadfcb63798f0f6c46a51540014c967ccf34ec43b7
diff --git a/app-eselect/eselect-mesa/eselect-mesa-0.0.10.ebuild b/app-eselect/eselect-mesa/eselect-mesa-0.0.10.ebuild
new file mode 100644
index 00000000000..ca00aad64d5
--- /dev/null
+++ b/app-eselect/eselect-mesa/eselect-mesa-0.0.10.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+DESCRIPTION="Utility to change the Mesa OpenGL driver being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.2.4
+ >=app-shells/bash-4"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins mesa.eselect || die
+}
+
+pkg_postinst() {
+ if has_version ">=media-libs/mesa-7.9" && \
+ ! [ -f "${EROOT}"/usr/share/mesa/eselect-mesa.conf ]; then
+ eerror "Rebuild media-libs/mesa for ${PN} to work."
+ fi
+}
diff --git a/app-eselect/eselect-mesa/eselect-mesa-0.0.9.ebuild b/app-eselect/eselect-mesa/eselect-mesa-0.0.9.ebuild
new file mode 100644
index 00000000000..3162da4a70b
--- /dev/null
+++ b/app-eselect/eselect-mesa/eselect-mesa-0.0.9.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+DESCRIPTION="Utility to change the Mesa OpenGL driver being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.2.4
+ >=app-shells/bash-4"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins mesa.eselect || die
+}
+
+pkg_postinst() {
+ if has_version ">=media-libs/mesa-7.9" && \
+ ! [ -f "${EROOT}"/usr/share/mesa/eselect-mesa.conf ]; then
+ eerror "Rebuild media-libs/mesa for ${PN} to work."
+ fi
+}
diff --git a/app-eselect/eselect-mesa/metadata.xml b/app-eselect/eselect-mesa/metadata.xml
new file mode 100644
index 00000000000..01c4c004e73
--- /dev/null
+++ b/app-eselect/eselect-mesa/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>x11</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-metasploit/eselect-metasploit-0.16.ebuild b/app-eselect/eselect-metasploit/eselect-metasploit-0.16.ebuild
new file mode 100644
index 00000000000..a32d595701d
--- /dev/null
+++ b/app-eselect/eselect-metasploit/eselect-metasploit-0.16.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit multilib
+
+DESCRIPTION="eselect module for metasploit"
+HOMEPAGE="http://www.pentoo.ch/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+DEPEND="app-admin/eselect
+ !<net-analyzer/metasploit-4.6"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}
+
+src_install() {
+ #force to use the outdated bundled version of metasm
+ doenvd "${FILESDIR}"/91metasploit
+
+ newinitd "${FILESDIR}"/msfrpcd.initd msfrpcd
+ newconfd "${FILESDIR}"/msfrpcd.confd msfrpcd
+
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}/metasploit.eselect-0.13" metasploit.eselect
+
+ newbin "${FILESDIR}"/msfloader-${PV} msfloader
+}
+
+pkg_postinst() {
+ "${EROOT}"/usr/bin/eselect metasploit set --use-old 1
+ elog "To switch between installed slots, execute as root:"
+ elog " # eselect metasploit set [slot number]"
+}
diff --git a/app-eselect/eselect-metasploit/files/91metasploit b/app-eselect/eselect-metasploit/files/91metasploit
new file mode 100644
index 00000000000..ce58b5043dd
--- /dev/null
+++ b/app-eselect/eselect-metasploit/files/91metasploit
@@ -0,0 +1,8 @@
+MSF_DATABASE_CONFIG=/usr/lib/metasploit/config/database.yml
+
+# needed because MSF ships an old version of metasm
+# which isn't compatible with the new one
+MSF_LOCAL_LIB="/usr/lib/metasploit/lib/metasm"
+
+# needed because MSF doesn't know where it is since the alzheimer's
+MSF_ROOT=/usr/lib/metasploit
diff --git a/app-eselect/eselect-metasploit/files/metasploit.eselect-0.13 b/app-eselect/eselect-metasploit/files/metasploit.eselect-0.13
new file mode 100644
index 00000000000..be4f780e935
--- /dev/null
+++ b/app-eselect/eselect-metasploit/files/metasploit.eselect-0.13
@@ -0,0 +1,207 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 2005-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2 or later
+# $
+
+DESCRIPTION="Control which metaploit version is active"
+MAINTAINER="zerochaos@pentoo.ch"
+
+###WARNING: don't even think of using this insanity for a reference (but it works,mostly)
+#base idea from kernel.eselect, get_libdir from php.eselect with --use-old from opencl.eselect
+#all modified randomly until it worked, entropy is wonderful
+###/WARNING
+
+inherit multilib
+
+get_libdir() {
+ local dir
+ if has lib64 $(list_libdirs); then
+ echo lib64
+ return
+ fi
+ echo lib
+}
+
+MSFPATH="/usr/$(get_libdir)/metasploit"
+
+# find a list of metasploit symlink targets and sort them
+find_targets() {
+ local f
+ for f in "${EROOT}${MSFPATH}"[[:digit:]]*; do
+ [[ -d ${f} ]] && basename "${f}"
+ done | LC_ALL=C sort
+}
+
+# remove the metasploit symlink
+remove_symlink() {
+ for i in $(qlist metasploit | grep $(canonicalise "${EROOT}${MSFPATH}")/msf)
+ do
+ if [ -L /usr/bin/$(echo ${i} | awk -F'/' '{print $5}') ]; then
+ unlink /usr/bin/$(echo ${i} | awk -F'/' '{print $5}') || die -q "failed to unlink ${i}"
+ fi
+ done
+ if [ -L ${EROOT}${MSFPATH} ]; then
+ unlink "${EROOT}${MSFPATH}" || die -q "failed to unlink ${EROOT}${MSFPATH}"
+ elif [ -e ${EROOT}${MSFPATH} ]; then
+ die -q "${EROOT}${MSFPATH} exists but is not a symlink"
+ fi
+}
+
+# set the metasploit symlink
+set_symlink() {
+ local target=$1
+
+ if is_number "${target}"; then
+ local targets=( $(find_targets) )
+ target=${targets[target-1]}
+ fi
+
+ if [[ -z ${target} ]]; then
+ die -q "Target \"$1\" doesn't appear to be valid!"
+ elif [[ -d ${EROOT}/usr/$(get_libdir)/${target} ]]; then
+ ln -s "${target}" "${EROOT}${MSFPATH}"
+ for i in $(qlist metasploit | grep /usr/$(get_libdir)/${target}/msf)
+ do
+ ln -s /usr/bin/msfloader /usr/bin/$(echo ${i} | awk -F'/' '{print $5}')
+ done
+ #this elif looks like it is trying to support setting by slot only,
+ #but that isn't supported by the rest of the script... fix or remove?
+ elif [[ -d ${EROOT}${MSFPATH}${target} ]]; then
+ ln -s "metasploit${target}" "${EROOT}${MSFPATH}"
+ for i in $(qlist metasploit | grep /usr/$(get_libdir)/${target}/msf)
+ do
+ ln -s /usr/bin/msfloader /usr/bin/$(echo ${i} | awk -F'/' '{print $5}')
+ done
+ else
+ die -q "Target \"$1\" doesn't appear to be valid!"
+ fi
+}
+
+# wrapper to safely set the symlink
+set_symlink_safe() {
+ if [[ -L ${EROOT}${MSFPATH} ]]; then
+ # existing symlink
+ remove_symlink || die -q "Couldn't remove existing symlink"
+ set_symlink "$1" || die -q "Couldn't set a new symlink"
+ #um, why is there an env-update here?
+ env-update
+ elif [[ -e ${EROOT}${MSFPATH} ]]; then
+ # we have something strange
+ die -q "${EROOT}${MSFPATH} exists but is not a symlink"
+ else
+ set_symlink "$1" || die -q "Couldn't set a new symlink"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current metasploit symlink"
+}
+
+do_show() {
+ write_list_start "Current metasploit symlink:"
+ if [[ -L ${EROOT}${MSFPATH} ]]; then
+ local metasploit=$(canonicalise "${EROOT}${MSFPATH}")
+ write_kv_list_entry "${metasploit%/}" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available metasploit symlink targets"
+}
+
+do_list() {
+ local i targets=( $(find_targets) )
+
+ write_list_start "Available metasploit symlink targets:"
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = \
+ $(basename "$(canonicalise "${EROOT}${MSFPATH}")") ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new metasploit symlink target"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+describe_set_options() {
+ echo "<target> : Target name or number (from 'list' action)"
+ echo "--use-old : If an implementation is already set, use that one instead"
+}
+
+do_set() {
+ local action="error"
+ local current=$(basename "$(canonicalise "${EROOT}${MSFPATH}")")
+ local available=( $(find_targets) )
+ local new
+ local opt
+
+ while [[ ${#@} -gt 0 ]] ; do
+ opt=$1
+ shift
+ case ${opt} in
+ --use-old)
+ if [[ -n "${current}" ]] && has "${current}" "${available[@]}"; then
+ action="old-implementation"
+ fi
+ ;;
+ metasploit*)
+ if [[ "${action}" != "old-implementation" ]] ; then
+ action="set-implementation"
+ fi
+
+ if has ${opt} ${available[@]}; then
+ new="${opt}"
+ else
+ echo "You need to emerge ${opt} before you try to eselect it"
+ fi
+ ;;
+ *)
+ if [[ "${action}" != "old-implementation" ]] ; then
+ action="set-implementation"
+ fi
+
+ if is_number ${opt} ; then
+ #targets=( $(get_implementations) )
+ new=${available[opt - 1]}
+ if [[ -z ${new} ]] ; then
+ die -q "Unrecognized option: ${opt}"
+ fi
+ else
+ die -q "Unrecognized option: ${opt}"
+ fi
+ ;;
+ esac
+ done
+
+ case ${action} in
+ old-implementation)
+ set_symlink_safe ${current}
+ return $?
+ ;;
+ set-implementation)
+ if [[ -n ${new} ]] ; then
+ set_symlink_safe ${new}
+ return $?
+ else
+ die -q "Please specify an implementation to set"
+ fi
+ ;;
+ *)
+ die -q "Invalid usage of set action."
+ ;;
+ esac
+}
diff --git a/app-eselect/eselect-metasploit/files/msfloader-0.16 b/app-eselect/eselect-metasploit/files/msfloader-0.16
new file mode 100755
index 00000000000..231275a9b1f
--- /dev/null
+++ b/app-eselect/eselect-metasploit/files/msfloader-0.16
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+#todo:
+#add in optional auto starting/stopping of postgres
+
+#read the desired version of ruby from the eselected version of msf
+header="$(head -n1 /usr/lib/metasploit/msfconsole)"
+ruby="${header:2}"
+
+#normally msf makes this dir, however, this script runs first
+if [ ! -d ~/.msf4 ]; then
+ mkdir ~/.msf4
+fi
+
+#we cannot control if msf* exits normally so always start with cleanup
+if [ -f ~/.msf4/Gemfile ]; then
+ rm ~/.msf4/Gemfile
+fi
+if ls -A ~/.msf4/*.gemspec > /dev/zero 2>&1; then
+ rm ~/.msf4/*.gemspec
+fi
+
+#fetch the latest Gemfile and gemspecsfrom the selected version of msf
+cp /usr/lib/metasploit/Gemfile ~/.msf4/
+if ls -A /usr/lib/metasploit/*.gemspec > /dev/zero 2>&1; then
+ cp /usr/lib/metasploit/*.gemspec ~/.msf4/
+fi
+
+#ensure Gemfile.lock is up to date
+BUNDLE_GEMFILE=~/.msf4/Gemfile ${ruby} -S bundle check > /dev/null 2>&1
+if [ "$?" != "0" ]; then
+ if [ -f ~/.msf4/Gemfile.lock ]; then
+ rm ~/.msf4/Gemfile.lock
+ else
+ echo "Something went wrong, please open a bug for metasploit on https://bugs.gentoo.org"
+ fi
+fi
+
+#ready to go
+BUNDLE_GEMFILE=~/.msf4/Gemfile ${ruby} -S bundle exec /usr/lib/metasploit/$(basename $0) "$@"
+#profit
diff --git a/app-eselect/eselect-metasploit/files/msfrpcd.confd b/app-eselect/eselect-metasploit/files/msfrpcd.confd
new file mode 100644
index 00000000000..d097e6cdfb7
--- /dev/null
+++ b/app-eselect/eselect-metasploit/files/msfrpcd.confd
@@ -0,0 +1,16 @@
+# Config file for /etc/init.d/metasploit
+
+# Bind to the following IP instead of the loopback address
+IPADDR=127.0.0.1
+
+# Bind to the following TCP port instead of default 55555
+PORT=55553
+
+# Use the following username instead of msf
+USER="msf"
+
+# Use the following password instead of msf
+PASS="secure"
+
+# All options
+MSF_OPTS="-U $USER -P $PASS -S -a $IPADDR -p $PORT"
diff --git a/app-eselect/eselect-metasploit/files/msfrpcd.initd b/app-eselect/eselect-metasploit/files/msfrpcd.initd
new file mode 100644
index 00000000000..065d7a45526
--- /dev/null
+++ b/app-eselect/eselect-metasploit/files/msfrpcd.initd
@@ -0,0 +1,22 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+VERSION=
+PIDFILE=/var/run/msfrpcd${VERSION}.pid
+
+start() {
+ ebegin "Starting msfrpcd"
+ start-stop-daemon --start --quiet --background \
+ --exec /usr/bin/msfrpcd \
+ --pidfile ${PIDFILE} \
+ --make-pidfile -- -f ${MSF_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping msfrpcd"
+ start-stop-daemon --stop --quiet -s 9 --pidfile ${PIDFILE}
+ eend $?
+}
diff --git a/app-eselect/eselect-metasploit/metadata.xml b/app-eselect/eselect-metasploit/metadata.xml
new file mode 100644
index 00000000000..4b6b68191d8
--- /dev/null
+++ b/app-eselect/eselect-metasploit/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>zerochaos@gentoo.org</email>
+<name>Rick Farina</name>
+</maintainer>
+<longdescription lang="en">
+</longdescription>
+</pkgmetadata>
diff --git a/app-eselect/eselect-miniaudicle/Manifest b/app-eselect/eselect-miniaudicle/Manifest
new file mode 100644
index 00000000000..2d8b49eb6ed
--- /dev/null
+++ b/app-eselect/eselect-miniaudicle/Manifest
@@ -0,0 +1 @@
+DIST miniaudicle.eselect-1.0.1.bz2 1284 SHA256 c5ff356568e0903385b938192bd59dc2d32867419431ef2336ff48e19415a64b SHA512 259a9e566fcdaae04ed845c1fc797faba422dd562da3721d6d07c1b6ea6de856f7e9fe4dfe5c6895b464231c3e9dfa7fa8718a49085fc3e8f79b9e4c4c340085 WHIRLPOOL 4c3d5567024d7eb9a7901b61864c91d2b96834d420e3857e170050c040caaf204cef6a138de47461e75cd2ed523436f85a4da3ea01c8d10a7b5602701d962680
diff --git a/app-eselect/eselect-miniaudicle/eselect-miniaudicle-1.0.1-r1.ebuild b/app-eselect/eselect-miniaudicle/eselect-miniaudicle-1.0.1-r1.ebuild
new file mode 100644
index 00000000000..3b812fac709
--- /dev/null
+++ b/app-eselect/eselect-miniaudicle/eselect-miniaudicle-1.0.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+inherit eutils
+
+DESCRIPTION="Manages the /usr/bin/miniAudicle symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/miniaudicle.eselect-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_prepare() {
+ # Fixes listing as described in bug 320189, not upstream yet
+ epatch "${FILESDIR}"/miniaudicle-1.0.1_list.patch
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/miniaudicle.eselect-${PV}" miniaudicle.eselect || die
+}
diff --git a/app-eselect/eselect-miniaudicle/files/miniaudicle-1.0.1_list.patch b/app-eselect/eselect-miniaudicle/files/miniaudicle-1.0.1_list.patch
new file mode 100644
index 00000000000..cb29780abfb
--- /dev/null
+++ b/app-eselect/eselect-miniaudicle/files/miniaudicle-1.0.1_list.patch
@@ -0,0 +1,12 @@
+--- miniaudicle.eselect-1.0.1.orig 2010-07-14 23:21:11.000000000 -0400
++++ miniaudicle.eselect-1.0.1 2010-07-14 23:22:22.000000000 -0400
+@@ -73,7 +73,7 @@
+ targets=( $(find_targets ) )
+ write_list_start "Available miniAudicle audio engines:"
+ for (( i = 0 ; i < ${#targets[@]} ; i = i + 1 )) ; do
+- [[ ${targets[${i}]} == $(basename $(canonicalise ${ROOT}/usr/bin/miniAudicle ) ) ]] && \
++ [[ ${targets[${i}]} == $(basename $(canonicalise ${ROOT}/usr/bin/miniAudicle- ) ) ]] && \
+ targets[${i}]=$(highlight_maker "${targets[${i}]}")
+ done
+ write_numbered_list -m "(none found)" "${targets[@]}"
+
diff --git a/app-eselect/eselect-miniaudicle/metadata.xml b/app-eselect/eselect-miniaudicle/metadata.xml
new file mode 100644
index 00000000000..e96e35b1a37
--- /dev/null
+++ b/app-eselect/eselect-miniaudicle/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-mpg123/eselect-mpg123-0.1.ebuild b/app-eselect/eselect-mpg123/eselect-mpg123-0.1.ebuild
new file mode 100644
index 00000000000..ffbefb9fd33
--- /dev/null
+++ b/app-eselect/eselect-mpg123/eselect-mpg123-0.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage /usr/bin/mpg123 symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1
+ !<media-sound/mpg123-1.14.4-r1"
+DEPEND=${RDEPEND}
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins mpg123.eselect-${PV} mpg123.eselect
+}
diff --git a/app-eselect/eselect-mpg123/files/mpg123.eselect-0.1 b/app-eselect/eselect-mpg123/files/mpg123.eselect-0.1
new file mode 100644
index 00000000000..54ab9e49fb7
--- /dev/null
+++ b/app-eselect/eselect-mpg123/files/mpg123.eselect-0.1
@@ -0,0 +1,13 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/mpg123 implementation"
+MAINTAINER="ssuominen@gentoo.org"
+VERSION="0.1"
+
+SYMLINK_PATH=/usr/bin/mpg123
+SYMLINK_TARGETS=( mpg123-mpg123 mpg321-mpg123 )
+SYMLINK_DESCRIPTION='mpg123 binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-mpg123/metadata.xml b/app-eselect/eselect-mpg123/metadata.xml
new file mode 100644
index 00000000000..e1774e3d9ad
--- /dev/null
+++ b/app-eselect/eselect-mpg123/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>sound</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-mpost/eselect-mpost-0.1.ebuild b/app-eselect/eselect-mpost/eselect-mpost-0.1.ebuild
new file mode 100644
index 00000000000..b5c3bf1e2cb
--- /dev/null
+++ b/app-eselect/eselect-mpost/eselect-mpost-0.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="mpost module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~ppc ~ppc64 s390 sh sparc x86 ~x86-fbsd"
+
+IUSE=""
+DEPEND=""
+# Depend on texlive-core-2008 that allows usage of this module, otherwise it
+# will not work so nicely.
+RDEPEND=">=app-admin/eselect-1.0.5
+ >=app-text/texlive-core-2008"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="mpost"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect || die "failed to install"
+}
diff --git a/app-eselect/eselect-mpost/eselect-mpost-0.2.ebuild b/app-eselect/eselect-mpost/eselect-mpost-0.2.ebuild
new file mode 100644
index 00000000000..7b60e61e72c
--- /dev/null
+++ b/app-eselect/eselect-mpost/eselect-mpost-0.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="mpost module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+# Depend on texlive-core-2008 that allows usage of this module, otherwise it
+# will not work so nicely.
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=app-text/texlive-core-2008"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="mpost"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect \
+ || die "failed to install"
+}
diff --git a/app-eselect/eselect-mpost/eselect-mpost-0.3.ebuild b/app-eselect/eselect-mpost/eselect-mpost-0.3.ebuild
new file mode 100644
index 00000000000..2f3d102d5d7
--- /dev/null
+++ b/app-eselect/eselect-mpost/eselect-mpost-0.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="mpost module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~ppc ~ppc64 s390 sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+# Depend on texlive-core-2008 that allows usage of this module, otherwise it
+# will not work so nicely.
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=app-text/texlive-core-2008"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="mpost"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect \
+ || die "failed to install"
+}
diff --git a/app-eselect/eselect-mpost/files/mpost.eselect-0.1 b/app-eselect/eselect-mpost/files/mpost.eselect-0.1
new file mode 100644
index 00000000000..1fb3cf93907
--- /dev/null
+++ b/app-eselect/eselect-mpost/files/mpost.eselect-0.1
@@ -0,0 +1,153 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/mpost implementations"
+MAINTAINER="ml@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:51:56 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# find a list of mpost symlink targets, best first
+find_targets() {
+ local f
+ for f in "${ROOT}"/usr/bin/mpost-*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/mpost-}"
+ fi
+ done | sort
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${ROOT}"/usr/bin/mpost)"
+ echo "${f##*/mpost-}"
+}
+
+# try to remove the mpost symlink
+remove_symlinks() {
+ rm -f "${ROOT}"/usr/bin/mpost &>/dev/null
+}
+
+# set the mpost symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ target=${targets[$(( ${target} - 1 ))]}
+ fi
+ if [[ -f "${ROOT}/usr/bin/mpost-${target}" ]] ; then
+ remove_symlinks
+ ln -s "mpost-${target}" "${ROOT}/usr/bin/mpost" || \
+ die "Could not set ${target} /usr/bin/mpost symlink"
+ echo "Updating TeX formats"
+ [ -z "${ROOT}" ] && fmtutil-sys --all &>/dev/null || write_warning_msg "Could not update TeX formats for some reason, mpost may not work properly."
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current mpost version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current mpost verson:"
+ if [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available mpost versions"
+}
+
+do_list() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ if [[ -n ${targets[@]} ]] ; then
+ for (( i = 0 ; i < ${#targets[@]} ; i = i + 1 )) ; do
+ [[ ${targets[${i}]} == ${current} ]] && \
+ targets[${i}]="${targets[${i}]} $(highlight '*' )"
+ done
+ write_list_start "Available mpost versions:"
+ write_numbered_list "${targets[@]}"
+ else
+ write_kv_list_entry "(none found)" ""
+ fi
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new mpost version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ die -q "${ROOT}/usr/bin/mpost seems to be from an old ebuild, please remove manually"
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the mpost version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ die -q "${ROOT}/usr/bin/mpost seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
+
+# vim: set ft=eselect :
diff --git a/app-eselect/eselect-mpost/files/mpost.eselect-0.2 b/app-eselect/eselect-mpost/files/mpost.eselect-0.2
new file mode 100644
index 00000000000..0824045c0f8
--- /dev/null
+++ b/app-eselect/eselect-mpost/files/mpost.eselect-0.2
@@ -0,0 +1,148 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/mpost implementations"
+MAINTAINER="ml@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:51:56 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# find a list of mpost symlink targets, best first
+find_targets() {
+ local f
+ for f in "${ROOT}"/usr/bin/mpost-*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/mpost-}"
+ fi
+ done | sort
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${ROOT}"/usr/bin/mpost)"
+ echo "${f##*/mpost-}"
+}
+
+# try to remove the mpost symlink
+remove_symlinks() {
+ rm -f "${ROOT}"/usr/bin/mpost &>/dev/null
+}
+
+# set the mpost symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ target=${targets[$(( ${target} - 1 ))]}
+ fi
+ if [[ -f "${ROOT}/usr/bin/mpost-${target}" ]] ; then
+ remove_symlinks
+ ln -s "mpost-${target}" "${ROOT}/usr/bin/mpost" || \
+ die "Could not set ${target} /usr/bin/mpost symlink"
+ echo "Updating TeX formats"
+ [ -z "${ROOT}" ] && fmtutil-sys --all &>/dev/null || write_warning_msg "Could not update TeX formats for some reason, mpost may not work properly."
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current mpost version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current mpost verson:"
+ if [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available mpost versions"
+}
+
+do_list() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = ${current} ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_list_start "Available mpost versions:"
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new mpost version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ die -q "${ROOT}/usr/bin/mpost seems to be from an old ebuild, please remove manually"
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the mpost version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ die -q "${ROOT}/usr/bin/mpost seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
diff --git a/app-eselect/eselect-mpost/files/mpost.eselect-0.3 b/app-eselect/eselect-mpost/files/mpost.eselect-0.3
new file mode 100644
index 00000000000..c9b538c7012
--- /dev/null
+++ b/app-eselect/eselect-mpost/files/mpost.eselect-0.3
@@ -0,0 +1,148 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/mpost implementations"
+MAINTAINER="ml@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:51:56 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# find a list of mpost symlink targets, best first
+find_targets() {
+ local f
+ for f in "${ROOT}"/usr/bin/mpost-*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/mpost-}"
+ fi
+ done | sort
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${ROOT}"/usr/bin/mpost)"
+ echo "${f##*/mpost-}"
+}
+
+# try to remove the mpost symlink
+remove_symlinks() {
+ rm -f "${ROOT}"/usr/bin/mpost &>/dev/null
+}
+
+# set the mpost symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ target=${targets[$(( ${target} - 1 ))]}
+ fi
+ if [[ -f "${ROOT}/usr/bin/mpost-${target}" ]] ; then
+ remove_symlinks
+ ln -s "mpost-${target}" "${ROOT}/usr/bin/mpost" || \
+ die "Could not set ${target} /usr/bin/mpost symlink"
+ echo "Updating TeX formats"
+ "${ROOT}"/usr/bin/fmtutil-sys --all &>/dev/null || write_warning_msg "Could not update TeX formats for some reason, mpost may not work properly."
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current mpost version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current mpost version:"
+ if [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available mpost versions"
+}
+
+do_list() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = ${current} ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_list_start "Available mpost versions:"
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new mpost version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ die -q "${ROOT}/usr/bin/mpost seems to be from an old ebuild, please remove manually"
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the mpost version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${ROOT}/usr/bin/mpost" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${ROOT}/usr/bin/mpost" ]] ; then
+ die -q "${ROOT}/usr/bin/mpost seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
diff --git a/app-eselect/eselect-mpost/metadata.xml b/app-eselect/eselect-mpost/metadata.xml
new file mode 100644
index 00000000000..ba6a8a8800d
--- /dev/null
+++ b/app-eselect/eselect-mpost/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>tex</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-notify-send/eselect-notify-send-0.1.ebuild b/app-eselect/eselect-notify-send/eselect-notify-send-0.1.ebuild
new file mode 100644
index 00000000000..be49ae7d533
--- /dev/null
+++ b/app-eselect/eselect-notify-send/eselect-notify-send-0.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage /usr/bin/notify-send symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 ia64 ~mips ppc ppc64 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1
+ !<x11-libs/libnotify-0.7.5-r1"
+DEPEND=${RDEPEND}
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins notify-send.eselect-${PV} notify-send.eselect
+}
diff --git a/app-eselect/eselect-notify-send/files/notify-send.eselect-0.1 b/app-eselect/eselect-notify-send/files/notify-send.eselect-0.1
new file mode 100644
index 00000000000..dd426b1ed22
--- /dev/null
+++ b/app-eselect/eselect-notify-send/files/notify-send.eselect-0.1
@@ -0,0 +1,13 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/notify-send implementation"
+MAINTAINER="ssuominen@gentoo.org"
+VERSION="0.1"
+
+SYMLINK_PATH=/usr/bin/notify-send
+SYMLINK_TARGETS=( libnotify-notify-send tinynotify-send )
+SYMLINK_DESCRIPTION='notify-send binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-notify-send/metadata.xml b/app-eselect/eselect-notify-send/metadata.xml
new file mode 100644
index 00000000000..c03b663ea9f
--- /dev/null
+++ b/app-eselect/eselect-notify-send/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>freedesktop</herd>
+ <maintainer>
+ <email>freedesktop-bugs@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-eselect/eselect-oodict/Manifest b/app-eselect/eselect-oodict/Manifest
new file mode 100644
index 00000000000..1bd83a36918
--- /dev/null
+++ b/app-eselect/eselect-oodict/Manifest
@@ -0,0 +1 @@
+DIST oodict.eselect-20100228.bz2 3802 SHA256 0984ef5091249a3013133a9ee22c03609538e285d88cfc54364ede7f7890c36f SHA512 7aa1e3081b9629ea5932dc679bed7956887cc7f3dcb7e6399d42f8d3ed30b565a1487eef15293f4046b38b6bf8a7844e6d7050e01337550044977366a795f753 WHIRLPOOL 1b16c8f8d80b5a1f2445bb532dcf38354e36f5da6b6e112efe577811524decffc05bae7af489c1ce2680dda5bdbb93dd45ea476331247b2397d268df725caad3
diff --git a/app-eselect/eselect-oodict/eselect-oodict-20100228.ebuild b/app-eselect/eselect-oodict/eselect-oodict-20100228.ebuild
new file mode 100644
index 00000000000..173fd4cdee6
--- /dev/null
+++ b/app-eselect/eselect-oodict/eselect-oodict-20100228.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of dictionaries for OpenOffice.Org"
+HOMEPAGE="http://www.gentoo.org/"
+
+SRC_URI="mirror://gentoo/oodict.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}"/oodict.eselect-${PVR} oodict.eselect || die "newins failed"
+}
diff --git a/app-eselect/eselect-oodict/metadata.xml b/app-eselect/eselect-oodict/metadata.xml
new file mode 100644
index 00000000000..e42f100096d
--- /dev/null
+++ b/app-eselect/eselect-oodict/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>openoffice</herd>
+ <longdescription>
+ Manages configuration of dictionaries for OpenOffice.Org.
+ </longdescription>
+</pkgmetadata>
diff --git a/app-eselect/eselect-opencascade/eselect-opencascade-0.ebuild b/app-eselect/eselect-opencascade/eselect-opencascade-0.ebuild
new file mode 100644
index 00000000000..e39891fed56
--- /dev/null
+++ b/app-eselect/eselect-opencascade/eselect-opencascade-0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Manages opencascade env file"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}"
+
+src_install() {
+ dodir /etc/env.d/opencascade
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}"/${P}.eselect opencascade.eselect
+}
+
+pkg_postrm() {
+ rm -v "${EROOT}"etc/env.d/51opencascade
+}
diff --git a/app-eselect/eselect-opencascade/files/eselect-opencascade-0.eselect b/app-eselect/eselect-opencascade/files/eselect-opencascade-0.eselect
new file mode 100644
index 00000000000..da97cb4a8c3
--- /dev/null
+++ b/app-eselect/eselect-opencascade/files/eselect-opencascade-0.eselect
@@ -0,0 +1,104 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright (c) 2006-2013 Gentoo Foundation
+#
+# This file is part of the 'eselect' tools framework.
+#
+# eselect 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 of the License, or (at your option) any later
+# version.
+#
+# eselect 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
+# eselect. If not, see <http://www.gnu.org/licenses/>.
+
+MODULE=opencascade
+TARGET=${EROOT}/etc/env.d/51${MODULE}
+CONFDIR=${EROOT}/etc/env.d/${MODULE}
+
+inherit tests path-manipulation
+
+find_implems() {
+ local -a implems
+ for file in "${CONFDIR}"/* ; do
+ [[ -f ${file} ]] || continue
+ implems=(${implems[@]} "${file##*/}")
+ done
+ echo ${implems[@]}
+}
+
+is_active() {
+ local f
+ [[ $# -eq 1 ]] || die "Need exactly 1 arguments!"
+ [[ -L ${TARGET} ]] || return 1
+ f=$(canonicalise ${TARGET})
+ [[ -e ${f} ]] || return 1
+ [[ ${f##*/} == ${1} ]]
+}
+
+# switch_implem $implem
+# switches $iface combination to $implem
+switch_implem() {
+ [[ $# -eq 1 ]] || die "Need exactly 1 arguments!"
+ $(is_active ${1}) && return
+ [[ -L ${TARGET} ]] && rm -f ${TARGET}
+ ln -s ${MODULE}/${1} ${TARGET}
+ env-update
+ echo "If you intend to use the selected opencascade in"
+ echo "an already running shell, please remember to do:"
+ echo
+ echo ". /etc/profile"
+}
+
+do_list() {
+ local implem i
+ write_list_start "Installed $MODULE"
+ for implem in $(find_implems) ; do
+ (( i++ ))
+ is_active ${implem##*/} \
+ && implem=$(highlight_marker "${implem}")
+ write_numbered_list_entry $i "${implem}"
+ done
+}
+
+describe_set() {
+ echo "Activate one of the installed $MODULE implementations"
+}
+
+describe_set_parameters() {
+ echo "<implementation>"
+}
+
+describe_set_options() {
+ echo "implementation : implementation name or number (from 'list' action)"
+}
+
+do_set() {
+ [[ $# -ne 1 ]] && die -q "Please specify exactly 1 implementation!"
+ local -a implems
+
+ implems=( $(find_implems) )
+
+ if is_number ${1} ; then
+ new_implem=${implems[$(( ${1} - 1 ))]}
+ else
+ new_implem=${1}
+ fi
+ echo $new_implem
+ switch_implem ${new_implem}
+}
+
+describe_show() {
+ echo "Print the currently active $MODULE implementation"
+}
+
+do_show() {
+ local f n
+ [[ -L ${TARGET} ]] || return 1
+ f=$(canonicalise ${TARGET})
+ [[ -f ${f} ]] || return 1
+ echo ${f##*/}
+}
diff --git a/app-eselect/eselect-opencascade/metadata.xml b/app-eselect/eselect-opencascade/metadata.xml
new file mode 100644
index 00000000000..59acc2cc580
--- /dev/null
+++ b/app-eselect/eselect-opencascade/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-opencl/Manifest b/app-eselect/eselect-opencl/Manifest
new file mode 100644
index 00000000000..c4ba2e13a7d
--- /dev/null
+++ b/app-eselect/eselect-opencl/Manifest
@@ -0,0 +1,10 @@
+DIST cl.h.1.1.xz 6940 SHA256 11b0249ec6c35000686cfe775b1789fa010b6d058e123b00c720e8408881f13f SHA512 905d4707bba968f97fe6871ca85a04c1272a22753bc68334e0990c1f968796930aae69af1d5d601d2bd90c323d50224fa230402e0fa0d7f74c859c481ed969b2 WHIRLPOOL 47c1e5812e3ef69fa3b75feb2f89ec910dc5078ee449b7f211b12f995244357ea4963d8ac578b2dc809d0613f915868e5c438f654217815f8f346cd16083ccc2
+DIST cl.hpp.1.1.xz 14764 SHA256 5d90ef4d964a6365d8e9305913c85dd0ffe6916df0a151a116b1b58b0e6c7ef4 SHA512 13e2ef779daaeaa6748f34c533d621c896fbcd375947c6774fd18aefbb9b4d88bf5e012c678c0808bb2956599fa222f69d15f3cf0df707984408a969737ad687 WHIRLPOOL 1bcea4788850d258644bccf10aa0d1dbe29c0048914e68f4ecaf1d9033ebe326f566a6fe82a48efb022b22c857013a0eac126653ac0a0bbf8dad4ae72dc0febe
+DIST cl_ext.h.1.1.xz 2740 SHA256 aeb729345004bf67d2564e1dc55feb326ff017f3b291ffb8e1391de353e09620 SHA512 3571f44b167ad1f8faf634bb57c541b01345f335fd4756727a625f1288fad2f41e4826d745c8b8a570f4367881a272626f72b5155d0660d4f668a7cb65de9063 WHIRLPOOL f606b0fe58fa3ac317dbfda239484570f539fced0bf71c1fdb6779d40e5ec34607b8ddffc69a2dd7bcb8d4d85dcc19e453be57ff78e9079c17621f5b407b6371
+DIST cl_gl.h.1.1.xz 1856 SHA256 eeddf3403c13776b3d13a25c9e47a01eee750c0120f74d402fad5d78b29f925a SHA512 6821e0779d225aaadf5eb35de722be7d4c0a5ebff15e512510d565faf82daa53ef41cf32b0a62f966f7bfc32e95f6c5f21cfc4812ee1f792d5b57a14b70dcee4 WHIRLPOOL 11f9dc0bf37b58685d7d87f91ecc0f3da27e4d30c90669c542b53c985861e3f04eaaac89f287598a60d1f7b2aae6c802d7574e93d28b9cec86f6c0e161a154bb
+DIST cl_gl_ext.h.1.1.xz 1356 SHA256 594e463e3a24e62870c5c1914b05e796aeda8892bf6830ee8db3f722993fdf02 SHA512 23fbc933e0beb2748152fa058d8ed413351fcfce167b9788c8a3529323b89e57eb1bf84d998fc262081410985f476bbf56fdd0bffe73f08135f5c90b7d09bb8d WHIRLPOOL 94301285dd567d8c7c9145d49801ea5c7e0ae4f5c01a9f93bcea667df925ea9d55a5ec978c3c05337306bdd0d53b829a9c03cbe8131982b2eddae23fc2eb1e5c
+DIST cl_platform.h.1.1.xz 5584 SHA256 2f70eb47285fd46f75d48476e90ee3b7e9ba62166bc573bbb35cb0f9d7a2ea53 SHA512 8265cd3b3630d367fe494a60911564e57169d03948827a0e2ca0669678b4a5b595b22ae2786a7c42c0b96fd6fbfb7d326c63759cfd1b7888b8cd35588b5f7544 WHIRLPOOL aa5e12ec2eb49323f9812ae51d5b45db2919488bd36fd58bb40eb6538020e8de732aa60a4fc1b8bf913cdfbdf35c0ebe63fd8cd0b8f415d34cbdce4d54207ff7
+DIST eselect-opencl-1.1.0-r1.tar.xz 3276 SHA256 86a2f5f152e543046899989b3a12a065dfc357a2276ce06d69d19bdbf175fdea SHA512 b2be1e2035fda4e119f03e9ef84fbf1f09fc0bd5475d3fe30d2330dac76180930451d78dbb9e158c34dee9ce524076434254757b594e84dea96341e52ef13c14 WHIRLPOOL 4df96b5f97b6071c27c613addd0b579deb800012ba2640814dcb107ec6ab9f3fac6384c4c3313bd245d62eb2a376e378e0820ef891bed6b41b778721b325f667
+DIST eselect-opencl-1.1.0.tar.xz 3272 SHA256 0b49d847d4475119f969fc7bbcdc4ceb1905e37e102b10d0bdad4f8e6010bbbe SHA512 ffa026fe7569dbd9833fd246a494048965c183d877216e3e436cbde11ed26c1f5ba9139b15d25801dc066d957d13f1b6332de7d104951c511f6554ebe5bd6ddb WHIRLPOOL bf0bd8810b133e1d78ed222814a0366a2689dfe3c8f7b308efab4248e7cd4def9a158e0fa12a15f21e5e74ec38d0fc56a875770f2f01a17823c1c750f73305d3
+DIST opencl-headers-1.2.tar.gz 122068 SHA256 c35c1aada9984b24784d6b6a5752e22b9c70646043344e0f45830c9dc5ae28c4 SHA512 0780c96d47a7ad41f6b31d46d41be77651d27d5decd1a4248c452d8bf763b6fc3b76597352bd259778c5846c62c17f077ff8db5504da39844c8e6e07c7d9a264 WHIRLPOOL 4f5c1058d23f91d806dba861fefd5cf3685a12a78217136adc0ac2f630995c82fa6d537e3cd67b6b2e2d01b6de12c30dc7e039b9aaa057661deb7f10a466f48d
+DIST opencl.h.1.1.xz 944 SHA256 c076e410eaffd9fbb056528f31a59fe1908481f0fd38981c13970727a0c4d096 SHA512 62b5ae61f2d9a44e9f8b6a7e3421cacfe5291bc9b5430845d469ea5a6404d71d3ab49d78c6da2588eab2bcd5f9b0d86c53f3aa74bd7c43c960ad86f0eab9595c WHIRLPOOL bd3d946b6c361187d9d7c4337287c24161fc0f291cfc810c0bcf05d9fe120192a853fe7b69500783b7ec1994e9b265d84eb82b8fc681df060c16aa3d038c8374
diff --git a/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r1.ebuild b/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r1.ebuild
new file mode 100644
index 00000000000..c3789c38869
--- /dev/null
+++ b/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+CL_ABI=1.1
+
+inherit multilib
+
+DESCRIPTION="Utility to change the OpenCL implementation being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/opencl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_platform.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.hpp
+
+MIRROR="http://dev.gentoo.org/~xarthisius/distfiles/"
+SRC_URI="${MIRROR}/opencl.h.${CL_ABI}.xz
+ ${MIRROR}/cl_platform.h.${CL_ABI}.xz
+ ${MIRROR}/cl.h.${CL_ABI}.xz
+ ${MIRROR}/cl_ext.h.${CL_ABI}.xz
+ ${MIRROR}/cl_gl.h.${CL_ABI}.xz
+ ${MIRROR}/cl_gl_ext.h.${CL_ABI}.xz
+ ${MIRROR}/cl.hpp.${CL_ABI}.xz
+ ${MIRROR}/${P}-r1.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+DEPEND="app-arch/xz-utils"
+RDEPEND=">=app-admin/eselect-1.2.4"
+
+pkg_postinst() {
+ local impl="$(eselect opencl show)"
+ if [[ -n "${impl}" && "${impl}" != '(none)' ]] ; then
+ eselect opencl set "${impl}"
+ fi
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins opencl.eselect
+ #doman opencl.eselect.5
+
+ local headers=( opencl.h cl_platform.h cl.h cl_ext.h cl_gl.h cl_gl_ext.h cl.hpp )
+ insinto /usr/$(get_libdir)/OpenCL/global/include/CL
+ cd "${WORKDIR}"
+ for f in ${headers[@]}; do
+ newins ${f}.${CL_ABI} ${f}
+ done
+}
diff --git a/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r2.ebuild b/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r2.ebuild
new file mode 100644
index 00000000000..8c416752591
--- /dev/null
+++ b/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit multilib
+
+DESCRIPTION="Utility to change the OpenCL implementation being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/opencl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_platform.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.hpp
+
+# Using copy by Mario Kicherer #496418
+
+#MIRROR="http://dev.gentoo.org/~xarthisius/distfiles/"
+SRC_URI="https://github.com/anyc/opencl-headers/archive/opencl-headers-1.2.tar.gz
+ http://dev.gentoo.org/~xarthisius/distfiles/${P}-r1.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+DEPEND="app-arch/xz-utils"
+RDEPEND=">=app-admin/eselect-1.2.4"
+
+pkg_postinst() {
+ local impl="$(eselect opencl show)"
+ if [[ -n "${impl}" && "${impl}" != '(none)' ]] ; then
+ eselect opencl set "${impl}"
+ fi
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins opencl.eselect
+ #doman opencl.eselect.5
+
+ local headers=( opencl.h cl_platform.h cl.h cl_ext.h cl_gl.h cl_gl_ext.h cl.hpp )
+
+ # We install all versions of OpenCL headers
+ cd "${WORKDIR}/opencl-headers-opencl-headers-1.2"
+ for CL_ABI in 1.0 1.1 1.2; do
+ mkdir -p "${D}/usr/$(get_libdir)/OpenCL/global/include/CL-${CL_ABI}"
+ for f in ${headers[@]}; do
+ cp OpenCL-${CL_ABI}/${f} "${D}/usr/$(get_libdir)/OpenCL/global/include/CL-${CL_ABI}/${f}"
+ done
+ done
+ # Create symlinks to newest. Maybe this should be switchable?
+ for f in ${headers[@]}; do
+ dosym "${D}/usr/$(get_libdir)/OpenCL/global/include/CL-1.2/${f}" "/usr/$(get_libdir)/OpenCL/global/include/CL/${f}"
+ done
+}
diff --git a/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r3.ebuild b/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r3.ebuild
new file mode 100644
index 00000000000..46821815b99
--- /dev/null
+++ b/app-eselect/eselect-opencl/eselect-opencl-1.1.0-r3.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit multilib
+
+DESCRIPTION="Utility to change the OpenCL implementation being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/opencl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_platform.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.hpp
+
+# Using copy by Mario Kicherer #496418
+
+#MIRROR="http://dev.gentoo.org/~xarthisius/distfiles/"
+SRC_URI="https://github.com/anyc/opencl-headers/archive/opencl-headers-1.2.tar.gz
+ http://dev.gentoo.org/~xarthisius/distfiles/${P}-r1.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+DEPEND="app-arch/xz-utils"
+RDEPEND=">=app-admin/eselect-1.2.4"
+
+pkg_postinst() {
+ local impl="$(eselect opencl show)"
+ if [[ -n "${impl}" && "${impl}" != '(none)' ]] ; then
+ eselect opencl set "${impl}"
+ fi
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins opencl.eselect
+ #doman opencl.eselect.5
+
+ local headers=( opencl.h cl_platform.h cl.h cl_ext.h cl_gl.h cl_gl_ext.h cl.hpp )
+
+ # We install all versions of OpenCL headers
+ cd "${WORKDIR}/opencl-headers-opencl-headers-1.2"
+ for CL_ABI in 1.0 1.1 1.2; do
+ mkdir -p "${D}/usr/$(get_libdir)/OpenCL/global/include/CL-${CL_ABI}"
+ for f in ${headers[@]}; do
+ cp OpenCL-${CL_ABI}/${f} "${D}/usr/$(get_libdir)/OpenCL/global/include/CL-${CL_ABI}/${f}"
+ done
+ done
+ # Create symlinks to newest. Maybe this should be switchable?
+ for f in ${headers[@]}; do
+ dosym "${D}/usr/$(get_libdir)/OpenCL/global/include/CL-1.1/${f}" "/usr/$(get_libdir)/OpenCL/global/include/CL/${f}"
+ done
+}
diff --git a/app-eselect/eselect-opencl/eselect-opencl-1.1.0.ebuild b/app-eselect/eselect-opencl/eselect-opencl-1.1.0.ebuild
new file mode 100644
index 00000000000..434c3a60f81
--- /dev/null
+++ b/app-eselect/eselect-opencl/eselect-opencl-1.1.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+CL_ABI=1.1
+
+inherit multilib
+
+DESCRIPTION="Utility to change the OpenCL implementation being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/opencl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_platform.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl_gl_ext.h
+# http://www.khronos.org/registry/cl/api/${CL_ABI}/cl.hpp
+
+MIRROR="http://dev.gentoo.org/~xarthisius/distfiles/"
+SRC_URI="${MIRROR}/opencl.h.${CL_ABI}.xz
+ ${MIRROR}/cl_platform.h.${CL_ABI}.xz
+ ${MIRROR}/cl.h.${CL_ABI}.xz
+ ${MIRROR}/cl_ext.h.${CL_ABI}.xz
+ ${MIRROR}/cl_gl.h.${CL_ABI}.xz
+ ${MIRROR}/cl_gl_ext.h.${CL_ABI}.xz
+ ${MIRROR}/cl.hpp.${CL_ABI}.xz
+ ${MIRROR}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="app-arch/xz-utils"
+RDEPEND=">=app-admin/eselect-1.2.4"
+
+pkg_postinst() {
+ local impl="$(eselect opencl show)"
+ if [[ -n "${impl}" && "${impl}" != '(none)' ]] ; then
+ eselect opencl set "${impl}"
+ fi
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins opencl.eselect
+ #doman opencl.eselect.5
+
+ local headers=( opencl.h cl_platform.h cl.h cl_ext.h cl_gl.h cl_gl_ext.h cl.hpp )
+ insinto /usr/$(get_libdir)/OpenCL/global/include/CL
+ cd "${WORKDIR}"
+ for f in ${headers[@]}; do
+ newins ${f}.${CL_ABI} ${f}
+ done
+}
diff --git a/app-eselect/eselect-opencl/metadata.xml b/app-eselect/eselect-opencl/metadata.xml
new file mode 100644
index 00000000000..03b04269a23
--- /dev/null
+++ b/app-eselect/eselect-opencl/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>patrick@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ Utility to switch OpenCL implementations between various providers.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">anyc/opencl-headers</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-eselect/eselect-opengl/Manifest b/app-eselect/eselect-opengl/Manifest
new file mode 100644
index 00000000000..b3edf637596
--- /dev/null
+++ b/app-eselect/eselect-opengl/Manifest
@@ -0,0 +1,4 @@
+DIST eselect-opengl-1.2.7.tar.xz 8292 SHA256 1f0d3e293c25cf9359421a7a0595278f5fcc25aaf346aaf45cb8b4f5b94c5978 SHA512 8f13526b819510807bf28343b698026cc240da6f231368e00a29b0225b300fbcf1d3e40a952390dced212df2b90c1f3410973c5dc225c4f29803491fe28a7293 WHIRLPOOL 3fb6beabc0cfd2e699c9afe652b01d6f8a34b33803ac6df1f196682756011d2c745eff0f4bcea677f4edcd0cfcc85b5168beb625e6f43275715fc1b51afa9e6c
+DIST glext.h.85.xz 66344 SHA256 f9db24b274581782726b7ece26825bc6dacc10871f24e712cedc5608720f40e0 SHA512 55fbee9cacde8a059ab1c25fbd5652d2879ac57423d2be7a1e947c5f4e82c2e1ff957441a39545958859435b88e69783e4f116dc3364f03378519df7476f121d WHIRLPOOL 493c86294f7bcade1e8ca427eea0f01cbd7a8e4f21a2f678f896af7fac06f8b6d04ceb8e93f2aacfaae6457a0368aa0c911dea90b31076cf77ae72fb492b3676
+DIST glxext.h.34.xz 7368 SHA256 cb22353fbd8f87ffea19b4758194af3a38796c41f93058eeb0fa237cce9a77b7 SHA512 525fe3e7d654ddc38dbbcf1b26c2e84099b502d993a176352386b10229fabf1a9ee60686c41d1486f77bcf08424119658b26ebd90d2260a66bc21bdc55340279 WHIRLPOOL 92901129f724e90a53ee602c3a7fb633ba190ad48bd098f5784eb1069e79c8fec4227fae1c59afee728e5e11776c6ff33fee6b5c5eb97b819b082de0713140d8
+DIST opengl.eselect-1.3.1.xz 2588 SHA256 40d805b89a07b85c60a3f7f3461c699f728a83246344950356ce2840bc34bf9e SHA512 052a804e96d8e8afe8b588fdc8996aad21675ea05e3e668c33293df4b9523dde8be083e4a7909a22ec83260c9735694fe4e8aa7e5d8a3736a8e243f29368e532 WHIRLPOOL 3989715d15b4da9ef8162c605a015571bf88dc4526c2fd309222706de0ce918574192263b1a68c4a1ffea9803b3bd0ea43aa3c75d344d0b3a32015f28e5ce533
diff --git a/app-eselect/eselect-opengl/eselect-opengl-1.2.7.ebuild b/app-eselect/eselect-opengl/eselect-opengl-1.2.7.ebuild
new file mode 100644
index 00000000000..7bf79eecf4a
--- /dev/null
+++ b/app-eselect/eselect-opengl/eselect-opengl-1.2.7.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit multilib
+
+DESCRIPTION="Utility to change the OpenGL interface being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://www.opengl.org/registry/api/glext.h
+# http://www.opengl.org/registry/api/glxext.h
+GLEXT="85"
+GLXEXT="34"
+
+MIRROR="http://dev.gentoo.org/~mattst88/distfiles"
+SRC_URI="${MIRROR}/glext.h.${GLEXT}.xz
+ ${MIRROR}/glxext.h.${GLXEXT}.xz
+ ${MIRROR}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND="app-arch/xz-utils"
+RDEPEND=">=app-admin/eselect-1.2.4
+ !<media-libs/mesa-8.0.3-r1
+ !<x11-proto/glproto-1.4.15-r1
+ !=media-libs/mesa-10.3.4-r1
+ !=media-libs/mesa-10.3.5-r1
+ !>=media-libs/mesa-10.3.7-r2
+ !>=x11-proto/glproto-1.4.17-r1
+ !=x11-base/xorg-server-1.16.4-r1
+ !>=x11-base/xorg-server-1.16.4-r4"
+
+pkg_postinst() {
+ local impl="$(eselect opengl show)"
+ if [[ -n "${impl}" && "${impl}" != '(none)' ]] ; then
+ eselect opengl set "${impl}"
+ fi
+}
+
+src_prepare() {
+ # don't die on Darwin users
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed -i -e 's/libGL\.so/libGL.dylib/' opengl.eselect || die
+ fi
+}
+
+src_install() {
+ insinto "/usr/share/eselect/modules"
+ doins opengl.eselect
+ doman opengl.eselect.5
+
+ # Install global glext.h and glxext.h
+ insinto "/usr/$(get_libdir)/opengl/global/include/GL/"
+ cd "${WORKDIR}"
+ newins glext.h.${GLEXT} glext.h
+ newins glxext.h.${GLXEXT} glxext.h
+}
diff --git a/app-eselect/eselect-opengl/eselect-opengl-1.3.1-r4.ebuild b/app-eselect/eselect-opengl/eselect-opengl-1.3.1-r4.ebuild
new file mode 100644
index 00000000000..f23758734fe
--- /dev/null
+++ b/app-eselect/eselect-opengl/eselect-opengl-1.3.1-r4.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="Utility to change the OpenGL interface being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://www.opengl.org/registry/api/glext.h
+# http://www.opengl.org/registry/api/glxext.h
+GLEXT="85"
+GLXEXT="34"
+
+MIRROR="http://dev.gentoo.org/~mattst88/distfiles"
+SRC_URI="http://dev.gentoo.org/~mgorny/dist/opengl.eselect-${PV}.xz"
+# ${MIRROR}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND="app-arch/xz-utils"
+RDEPEND=">=app-admin/eselect-1.2.4
+ !<media-libs/mesa-10.3.4-r1
+ !=media-libs/mesa-10.3.5
+ !=media-libs/mesa-10.3.7-r1
+ !<x11-proto/glproto-1.4.17-r1
+ !<x11-base/xorg-server-1.16.4-r1
+ !=x11-base/xorg-server-1.16.4-r3
+ !~x11-base/xorg-server-1.17.0
+ !=x11-base/xorg-server-1.17.1
+ !<x11-drivers/ati-drivers-14.9-r2
+ !=x11-drivers/ati-drivers-14.12
+ !<=app-emulation/emul-linux-x86-opengl-20140508"
+
+S=${WORKDIR}
+
+pkg_preinst() {
+ # we may be moving the config file, so get it early
+ OLD_IMPL=$(eselect opengl show)
+}
+
+pkg_postinst() {
+ if path_exists "${EROOT}"/usr/lib*/opengl; then
+ # delete broken symlinks
+ find "${EROOT}"/usr/lib*/opengl -xtype l -delete
+ # delete empty leftover directories (they confuse eselect)
+ find "${EROOT}"/usr/lib*/opengl -depth -type d -empty -exec rmdir -v {} +
+ fi
+
+ if [[ -n "${OLD_IMPL}" && "${OLD_IMPL}" != '(none)' ]] ; then
+ eselect opengl set "${OLD_IMPL}"
+ fi
+ if [[ -f ${EROOT}/etc/env.d/03opengl ]]; then
+ # remove the old file, moved now
+ rm -vf "${EROOT}"/etc/env.d/03opengl
+ fi
+}
+
+src_prepare() {
+ # don't die on Darwin users
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed -i -e 's/libGL\.so/libGL.dylib/' opengl.eselect || die
+ fi
+}
+
+src_install() {
+ insinto "/usr/share/eselect/modules"
+ newins opengl.eselect-${PV} opengl.eselect
+# doman opengl.eselect.5
+}
diff --git a/app-eselect/eselect-opengl/metadata.xml b/app-eselect/eselect-opengl/metadata.xml
new file mode 100644
index 00000000000..6b9cda09561
--- /dev/null
+++ b/app-eselect/eselect-opengl/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>x11</herd>
+<longdescription>Utility to switch opengl implementations between various providers.</longdescription>
+</pkgmetadata>
diff --git a/app-eselect/eselect-package-manager/Manifest b/app-eselect/eselect-package-manager/Manifest
new file mode 100644
index 00000000000..ed40b3b0e14
--- /dev/null
+++ b/app-eselect/eselect-package-manager/Manifest
@@ -0,0 +1 @@
+DIST eselect-package-manager-20110108.tar.bz2 1273 SHA256 c901afd14bf6c38eaefa5061b756d6532cafa08abba088f6740654a81ab70fc5 SHA512 3fd7d9b33c4d2e3ca4c580e9e55e0033a2bbcc6718e0a2706c9725a125c219bbc937f6347b65fedd58cbad9f00e5c757025c6efba0bf4e7ba131c16134c33962 WHIRLPOOL 907b936864341c49ef2b3809ead5f5a84f74b0a0fc363463500f7105f58bde05ef8d4398501392c56579316794b9847f76cb99e3f54975049e17b2d99dec42d0
diff --git a/app-eselect/eselect-package-manager/eselect-package-manager-20110108.ebuild b/app-eselect/eselect-package-manager/eselect-package-manager-20110108.ebuild
new file mode 100644
index 00000000000..7f80c7ec54e
--- /dev/null
+++ b/app-eselect/eselect-package-manager/eselect-package-manager-20110108.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages PACKAGE_MANAGER environment variable"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.1.1"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins package-manager.eselect || die
+ doman package-manager.eselect.5 || die
+}
diff --git a/app-eselect/eselect-package-manager/metadata.xml b/app-eselect/eselect-package-manager/metadata.xml
new file mode 100644
index 00000000000..dc5dc4fc2cc
--- /dev/null
+++ b/app-eselect/eselect-package-manager/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>eselect</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-pdftex/eselect-pdftex-0.3.ebuild b/app-eselect/eselect-pdftex/eselect-pdftex-0.3.ebuild
new file mode 100644
index 00000000000..5f10285cad1
--- /dev/null
+++ b/app-eselect/eselect-pdftex/eselect-pdftex-0.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="pdftex module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~ppc ~ppc64 s390 sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+# Depend on texlive-core-2008 that allows usage of this module, otherwise it
+# will not work so nicely.
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=app-text/texlive-core-2008"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="pdftex"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect \
+ || die "failed to install"
+}
diff --git a/app-eselect/eselect-pdftex/files/pdftex.eselect-0.3 b/app-eselect/eselect-pdftex/files/pdftex.eselect-0.3
new file mode 100644
index 00000000000..575063b01c7
--- /dev/null
+++ b/app-eselect/eselect-pdftex/files/pdftex.eselect-0.3
@@ -0,0 +1,148 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/pdftex implementations"
+MAINTAINER="tex@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:53:36 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# find a list of pdftex symlink targets, best first
+find_targets() {
+ local f
+ for f in "${ROOT}"/usr/bin/pdftex-*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/pdftex-}"
+ fi
+ done | sort
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${ROOT}"/usr/bin/pdftex)"
+ echo "${f##*/pdftex-}"
+}
+
+# try to remove the pdftex symlink
+remove_symlinks() {
+ rm -f "${ROOT}"/usr/bin/pdftex &>/dev/null
+}
+
+# set the pdftex symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ target=${targets[$(( ${target} - 1 ))]}
+ fi
+ if [[ -f "${ROOT}/usr/bin/pdftex-${target}" ]] ; then
+ remove_symlinks
+ ln -s "pdftex-${target}" "${ROOT}/usr/bin/pdftex" || \
+ die "Could not set ${target} /usr/bin/pdftex symlink"
+ echo "Updating TeX formats"
+ "${ROOT}"/usr/bin/fmtutil-sys --all &>/dev/null || write_warning_msg "Could not update TeX formats for some reason, pdftex may not work properly."
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current pdftex version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current pdftex verson:"
+ if [[ -L "${ROOT}/usr/bin/pdftex" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${ROOT}/usr/bin/pdftex" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available pdftex versions"
+}
+
+do_list() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = ${current} ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_list_start "Available pdftex versions:"
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new pdftex version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${ROOT}/usr/bin/pdftex" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${ROOT}/usr/bin/pdftex" ]] ; then
+ die -q "${ROOT}/usr/bin/pdftex seems to be from an old ebuild, please remove manually"
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the pdftex version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${ROOT}/usr/bin/pdftex" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${ROOT}/usr/bin/pdftex" ]] ; then
+ die -q "${ROOT}/usr/bin/pdftex seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
diff --git a/app-eselect/eselect-pdftex/metadata.xml b/app-eselect/eselect-pdftex/metadata.xml
new file mode 100644
index 00000000000..ba6a8a8800d
--- /dev/null
+++ b/app-eselect/eselect-pdftex/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>tex</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-php/Manifest b/app-eselect/eselect-php/Manifest
new file mode 100644
index 00000000000..c6bba4ca91b
--- /dev/null
+++ b/app-eselect/eselect-php/Manifest
@@ -0,0 +1,2 @@
+DIST eselect-php-0.6.2.bz2 1454 SHA256 c4eecb73aaf50538a8eaf8afb0d52b3666b45ef19e5f26f7998682bac56566c4 SHA512 cb2639ddf97c77336195db57a9a5021200693ee4f1382d7ed6cda22a27f5b0f76be88abf376e13245a72223c12065d019e0537494f934f9cbe40e0fdcbfe2b22 WHIRLPOOL 523f3a0c30705599ee91c5ce0a691c140226a18c0a1ba73df4a0f9835a92644748a0f0ed73f1ea101de65cf270947f054a8feeb3c36609f644f8682d611aaa11
+DIST eselect-php-0.7.1.bz2 2251 SHA256 10aa400e2d08bc71989366993f12ddb546a0ea29f191c40e37beba1d11d7abd7 SHA512 a6b4c1475dda9f368d799db7658c50cef7d6f71482a53a186fb1394e7ea1fff3c0ef123c82b7ca4d1e45aadb0a034d36f213fc9450766878a60d28639761cb3d WHIRLPOOL a4e45492068616ff30fd888b0cc64441a6eb6e6656e0107d00bd2cf15360dce15052d4d62089ab89d43e6bb36e126529aa101c70e8bd94a9fc916a5369463e3b
diff --git a/app-eselect/eselect-php/eselect-php-0.6.2.ebuild b/app-eselect/eselect-php/eselect-php-0.6.2.ebuild
new file mode 100644
index 00000000000..c3cefb8bec4
--- /dev/null
+++ b/app-eselect/eselect-php/eselect-php-0.6.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+DESCRIPTION="PHP eselect module"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://olemarkus.org/~olemarkus/gentoo/eselect-php-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86"
+IUSE=""
+
+DEPEND=">=app-admin/eselect-1.2.4
+ !app-admin/php-toolkit"
+RDEPEND="${DEPEND}"
+
+src_install() {
+ mv eselect-php-${PV} php.eselect
+ insinto /usr/share/eselect/modules/
+ doins php.eselect
+}
diff --git a/app-eselect/eselect-php/eselect-php-0.7.1-r1.ebuild b/app-eselect/eselect-php/eselect-php-0.7.1-r1.ebuild
new file mode 100644
index 00000000000..8a0744b3aa4
--- /dev/null
+++ b/app-eselect/eselect-php/eselect-php-0.7.1-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit depend.apache systemd
+
+DESCRIPTION="PHP eselect module"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~olemarkus/eselect-php/eselect-php-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="fpm apache2"
+
+DEPEND=">=app-admin/eselect-1.2.4
+ !<dev-lang/php-5.3.23-r1:5.3
+ !<dev-lang/php-5.4.13-r1:5.4
+ !<dev-lang/php-5.5.0_beta1-r2:5.5
+ "
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+want_apache
+
+src_install() {
+ mv eselect-php-${PV} php.eselect
+ insinto /usr/share/eselect/modules/
+ doins php.eselect
+
+ if use apache2 ; then
+ insinto "${APACHE_MODULES_CONFDIR#${EPREFIX}}"
+ newins "${FILESDIR}/70_mod_php5.conf-apache2" \
+ "70_mod_php5.conf"
+ fi
+
+ if use fpm ; then
+ dodir "/etc/init.d"
+ insinto "/etc/init.d"
+ newinitd "${FILESDIR}/php-fpm.init" "php-fpm"
+ systemd_newunit "${FILESDIR}/php-fpm_at.service" "php-fpm@.service"
+ systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
+ exeinto /usr/libexec
+ doexe "${FILESDIR}/php-fpm-launcher"
+ fi
+}
diff --git a/app-eselect/eselect-php/eselect-php-0.7.1-r2.ebuild b/app-eselect/eselect-php/eselect-php-0.7.1-r2.ebuild
new file mode 100644
index 00000000000..19c4c99c14d
--- /dev/null
+++ b/app-eselect/eselect-php/eselect-php-0.7.1-r2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit depend.apache systemd
+
+DESCRIPTION="PHP eselect module"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~olemarkus/eselect-php/eselect-php-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="fpm apache2"
+
+DEPEND=">=app-admin/eselect-1.2.4
+ !<dev-lang/php-5.3.23-r1:5.3
+ !<dev-lang/php-5.4.13-r1:5.4
+ !<dev-lang/php-5.5.0_beta1-r2:5.5
+ "
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+want_apache
+
+src_install() {
+ mv eselect-php-${PV} php.eselect
+ insinto /usr/share/eselect/modules/
+ doins php.eselect
+
+ if use apache2 ; then
+ insinto "${APACHE_MODULES_CONFDIR#${EPREFIX}}"
+ newins "${FILESDIR}/70_mod_php5.conf-apache2" \
+ "70_mod_php5.conf"
+ fi
+
+ if use fpm ; then
+ dodir "/etc/init.d"
+ insinto "/etc/init.d"
+ newinitd "${FILESDIR}/php-fpm-r1.init" "php-fpm"
+ systemd_newunit "${FILESDIR}/php-fpm_at.service" "php-fpm@.service"
+ systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
+ exeinto /usr/libexec
+ doexe "${FILESDIR}/php-fpm-launcher"
+ fi
+}
diff --git a/app-eselect/eselect-php/eselect-php-0.7.1-r3.ebuild b/app-eselect/eselect-php/eselect-php-0.7.1-r3.ebuild
new file mode 100644
index 00000000000..65bdbf37ef1
--- /dev/null
+++ b/app-eselect/eselect-php/eselect-php-0.7.1-r3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit depend.apache systemd
+
+DESCRIPTION="PHP eselect module"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~olemarkus/eselect-php/eselect-php-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="fpm apache2"
+
+DEPEND=">=app-admin/eselect-1.2.4
+ !<dev-lang/php-5.3.23-r1:5.3
+ !<dev-lang/php-5.4.13-r1:5.4
+ !<dev-lang/php-5.5.0_beta1-r2:5.5
+ "
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+want_apache
+
+src_install() {
+ mv eselect-php-${PV} php.eselect
+ insinto /usr/share/eselect/modules/
+ doins php.eselect
+
+ if use apache2 ; then
+ insinto "${APACHE_MODULES_CONFDIR#${EPREFIX}}"
+ newins "${FILESDIR}/70_mod_php5.conf-apache2" \
+ "70_mod_php5.conf"
+ fi
+
+ if use fpm ; then
+ dodir "/etc/init.d"
+ insinto "/etc/init.d"
+ newinitd "${FILESDIR}/php-fpm-r1.init" "php-fpm"
+ systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
+ exeinto /usr/libexec
+ doexe "${FILESDIR}/php-fpm-launcher"
+ fi
+}
diff --git a/app-eselect/eselect-php/eselect-php-0.7.1-r4.ebuild b/app-eselect/eselect-php/eselect-php-0.7.1-r4.ebuild
new file mode 100644
index 00000000000..88266991bb6
--- /dev/null
+++ b/app-eselect/eselect-php/eselect-php-0.7.1-r4.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit depend.apache systemd
+
+DESCRIPTION="PHP eselect module"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~olemarkus/eselect-php/eselect-php-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="fpm apache2"
+
+DEPEND=">=app-admin/eselect-1.2.4
+ !<dev-lang/php-5.3.23-r1:5.3
+ !<dev-lang/php-5.4.13-r1:5.4
+ !<dev-lang/php-5.5.0_beta1-r2:5.5
+ "
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+want_apache
+
+src_install() {
+ mv eselect-php-${PV} php.eselect
+ insinto /usr/share/eselect/modules/
+ doins php.eselect
+
+ if use apache2 ; then
+ insinto "${APACHE_MODULES_CONFDIR#${EPREFIX}}"
+ newins "${FILESDIR}/70_mod_php5.conf-apache2-r1" \
+ "70_mod_php5.conf"
+ fi
+
+ if use fpm ; then
+ dodir "/etc/init.d"
+ insinto "/etc/init.d"
+ newinitd "${FILESDIR}/php-fpm-r1.init" "php-fpm"
+ systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
+ exeinto /usr/libexec
+ doexe "${FILESDIR}/php-fpm-launcher"
+ fi
+}
diff --git a/app-eselect/eselect-php/eselect-php-0.7.1.ebuild b/app-eselect/eselect-php/eselect-php-0.7.1.ebuild
new file mode 100644
index 00000000000..b40cba46e79
--- /dev/null
+++ b/app-eselect/eselect-php/eselect-php-0.7.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit depend.apache
+
+DESCRIPTION="PHP eselect module"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~olemarkus/eselect-php/eselect-php-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="fpm apache2"
+
+DEPEND=">=app-admin/eselect-1.2.4
+ !<dev-lang/php-5.3.23-r1:5.3
+ !<dev-lang/php-5.4.13-r1:5.4
+ !<dev-lang/php-5.5.0_beta1-r2:5.5
+ "
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+want_apache
+
+src_install() {
+ mv eselect-php-${PV} php.eselect
+ insinto /usr/share/eselect/modules/
+ doins php.eselect
+
+ if use apache2 ; then
+ insinto "${APACHE_MODULES_CONFDIR#${EPREFIX}}"
+ newins "${FILESDIR}/70_mod_php5.conf-apache2" \
+ "70_mod_php5.conf"
+ fi
+
+ if use fpm ; then
+ dodir "/etc/init.d"
+ insinto "/etc/init.d"
+ newinitd "${FILESDIR}/php-fpm.init" "php-fpm"
+ fi
+}
diff --git a/app-eselect/eselect-php/files/70_mod_php5.conf-apache2 b/app-eselect/eselect-php/files/70_mod_php5.conf-apache2
new file mode 100644
index 00000000000..7ec8739cf83
--- /dev/null
+++ b/app-eselect/eselect-php/files/70_mod_php5.conf-apache2
@@ -0,0 +1,14 @@
+<IfDefine PHP5>
+ # Load the module first
+ <IfModule !mod_php5.c>
+ LoadModule php5_module modules/libphp5.so
+ </IfModule>
+
+ # Set it to handle the files
+ <IfModule mod_mime.c>
+ AddHandler application/x-httpd-php .php .php5 .phtml
+ AddHandler application/x-httpd-php-source .phps
+ </IfModule>
+
+ DirectoryIndex index.php index.phtml
+</IfDefine>
diff --git a/app-eselect/eselect-php/files/70_mod_php5.conf-apache2-r1 b/app-eselect/eselect-php/files/70_mod_php5.conf-apache2-r1
new file mode 100644
index 00000000000..05deeb6e80f
--- /dev/null
+++ b/app-eselect/eselect-php/files/70_mod_php5.conf-apache2-r1
@@ -0,0 +1,18 @@
+<IfDefine PHP5>
+ # Load the module first
+ <IfModule !mod_php5.c>
+ LoadModule php5_module modules/libphp5.so
+ </IfModule>
+
+ # Set it to handle the files
+ # NOTE: Avoiding AddHandler/AddType for security (bug #538822)
+ # NOTE: Please read the related news item!
+ <FilesMatch "\.(php|php5|phtml)$">
+ SetHandler application/x-httpd-php
+ </FilesMatch>
+ <FilesMatch "\.phps$">
+ SetHandler application/x-httpd-php-source
+ </FilesMatch>
+
+ DirectoryIndex index.php index.phtml
+</IfDefine>
diff --git a/app-eselect/eselect-php/files/php-fpm-launcher b/app-eselect/eselect-php/files/php-fpm-launcher
new file mode 100644
index 00000000000..7a1c1c9f918
--- /dev/null
+++ b/app-eselect/eselect-php/files/php-fpm-launcher
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+PHPSLOT="${1}"
+[ -z "${PHPSLOT}" ] && PHPSLOT="$(eselect php show fpm)"
+shift
+
+exec /usr/lib/${PHPSLOT}/bin/php-fpm "${@}"
diff --git a/app-eselect/eselect-php/files/php-fpm-r1.init b/app-eselect/eselect-php/files/php-fpm-r1.init
new file mode 100755
index 00000000000..6cc26acc3c3
--- /dev/null
+++ b/app-eselect/eselect-php/files/php-fpm-r1.init
@@ -0,0 +1,50 @@
+#!/sbin/runscript
+
+set_phpvars() {
+ PHPSLOT=${SVCNAME#php-fpm-}
+ PHP_FPM_PID="/run/php-fpm-${PHPSLOT}.pid"
+ if [ ${PHPSLOT} = 'php-fpm' ] ; then
+ PHPSLOT="$(eselect php show fpm)"
+ PHP_FPM_PID="/run/php-fpm.pid"
+ fi
+
+ PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf"
+}
+
+extra_commands="depend"
+extra_started_commands="reload"
+
+depend() {
+ need net
+ use apache2 lighttpd nginx
+}
+
+start() {
+ ebegin "Starting PHP FastCGI Process Manager"
+ set_phpvars
+ start-stop-daemon --start --pidfile ${PHP_FPM_PID} --exec \
+ /usr/lib/${PHPSLOT}/bin/php-fpm -- -y "${PHP_FPM_CONF}" -g "${PHP_FPM_PID}"
+ local i=0
+ local timeout=5
+ while [ ! -f ${PHP_FPM_PID} ] && [ $i -le $timeout ]; do
+ sleep 1
+ i=$(($i + 1))
+ done
+
+ [ $timeout -gt $i ]
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping PHP FastCGI Process Manager"
+ set_phpvars
+ start-stop-daemon --signal QUIT --stop --exec /usr/lib/${PHPSLOT}/bin/php-fpm --pidfile ${PHP_FPM_PID}
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading PHP FastCGI Process Manager"
+ set_phpvars
+ [ -f ${PHP_FPM_PID} ] && kill -USR2 $(cat ${PHP_FPM_PID})
+ eend $?
+}
diff --git a/app-eselect/eselect-php/files/php-fpm.conf b/app-eselect/eselect-php/files/php-fpm.conf
new file mode 100644
index 00000000000..801e74f1e62
--- /dev/null
+++ b/app-eselect/eselect-php/files/php-fpm.conf
@@ -0,0 +1 @@
+d /run/php-fpm 755 root root
diff --git a/app-eselect/eselect-php/files/php-fpm.init b/app-eselect/eselect-php/files/php-fpm.init
new file mode 100755
index 00000000000..a186d83478c
--- /dev/null
+++ b/app-eselect/eselect-php/files/php-fpm.init
@@ -0,0 +1,47 @@
+#!/sbin/runscript
+
+set_phpvars() {
+ PHPSLOT=${SVCNAME#php-fpm-}
+ [ ${PHPSLOT} = 'php-fpm' ] && PHPSLOT="$(eselect php show fpm)"
+
+ PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf"
+ PHP_FPM_PID="/var/run/php-fpm-${PHPSLOT}.pid"
+}
+
+extra_commands="depend"
+extra_started_commands="reload"
+
+depend() {
+ need net
+ use apache2 lighttpd nginx
+}
+
+start() {
+ ebegin "Starting PHP FastCGI Process Manager"
+ set_phpvars
+ start-stop-daemon --start --pidfile ${PHP_FPM_PID} --exec \
+ /usr/lib/${PHPSLOT}/bin/php-fpm -- -y "${PHP_FPM_CONF}" -g "${PHP_FPM_PID}"
+ local i=0
+ local timeout=5
+ while [ ! -f ${PHP_FPM_PID} ] && [ $i -le $timeout ]; do
+ sleep 1
+ i=$(($i + 1))
+ done
+
+ [ $timeout -gt $i ]
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping PHP FastCGI Process Manager"
+ set_phpvars
+ start-stop-daemon --signal QUIT --stop --exec /usr/lib/${PHPSLOT}/bin/php-fpm --pidfile ${PHP_FPM_PID}
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading PHP FastCGI Process Manager"
+ set_phpvars
+ [ -f ${PHP_FPM_PID} ] && kill -USR2 $(cat ${PHP_FPM_PID})
+ eend $?
+}
diff --git a/app-eselect/eselect-php/files/php-fpm_at.service b/app-eselect/eselect-php/files/php-fpm_at.service
new file mode 100644
index 00000000000..152c1abe043
--- /dev/null
+++ b/app-eselect/eselect-php/files/php-fpm_at.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=The PHP FastCGI Process Manager
+After=network.target
+
+[Service]
+Type=notify
+PIDFile=/run/php-fpm/php-fpm-%I.pid
+ExecStart=/usr/libexec/php-fpm-launcher php%I -y /etc/php/fpm-php%I/php-fpm.conf --nodaemonize
+ExecReload=/bin/kill -USR2 $MAINPID
+PrivateTmp=true
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/app-eselect/eselect-php/metadata.xml b/app-eselect/eselect-php/metadata.xml
new file mode 100644
index 00000000000..b4348f2483f
--- /dev/null
+++ b/app-eselect/eselect-php/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>php</herd>
+ <longdescription lang="en">PHP eselect module
+ </longdescription>
+ <use>
+ <flag name='fpm'>Enable the FastCGI Process Manager SAPI</flag>
+ </use>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-pinentry/eselect-pinentry-0.4.ebuild b/app-eselect/eselect-pinentry/eselect-pinentry-0.4.ebuild
new file mode 100644
index 00000000000..dbd237cfa86
--- /dev/null
+++ b/app-eselect/eselect-pinentry/eselect-pinentry-0.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage /usr/bin/pinentry symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins pinentry.eselect-${PV} pinentry.eselect
+}
diff --git a/app-eselect/eselect-pinentry/eselect-pinentry-0.5.ebuild b/app-eselect/eselect-pinentry/eselect-pinentry-0.5.ebuild
new file mode 100644
index 00000000000..bd424cea95c
--- /dev/null
+++ b/app-eselect/eselect-pinentry/eselect-pinentry-0.5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage /usr/bin/pinentry symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins pinentry.eselect-${PV} pinentry.eselect
+}
diff --git a/app-eselect/eselect-pinentry/eselect-pinentry-0.6.ebuild b/app-eselect/eselect-pinentry/eselect-pinentry-0.6.ebuild
new file mode 100644
index 00000000000..bd424cea95c
--- /dev/null
+++ b/app-eselect/eselect-pinentry/eselect-pinentry-0.6.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manage /usr/bin/pinentry symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins pinentry.eselect-${PV} pinentry.eselect
+}
diff --git a/app-eselect/eselect-pinentry/files/pinentry.eselect-0.4 b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.4
new file mode 100644
index 00000000000..8024fa39237
--- /dev/null
+++ b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.4
@@ -0,0 +1,13 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/pinentry implementation"
+MAINTAINER="ssuominen@gentoo.org"
+VERSION="0.4"
+
+SYMLINK_PATH=/usr/bin/pinentry
+SYMLINK_TARGETS=( pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses )
+SYMLINK_DESCRIPTION='pinentry binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-pinentry/files/pinentry.eselect-0.5 b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.5
new file mode 100644
index 00000000000..9a256dce414
--- /dev/null
+++ b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.5
@@ -0,0 +1,13 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/pinentry implementation"
+MAINTAINER="ssuominen@gentoo.org"
+VERSION="0.5"
+
+SYMLINK_PATH=/usr/bin/pinentry
+SYMLINK_TARGETS=( pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses pinentry-gnome3 )
+SYMLINK_DESCRIPTION='pinentry binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-pinentry/files/pinentry.eselect-0.6 b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.6
new file mode 100644
index 00000000000..85df683ce40
--- /dev/null
+++ b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.6
@@ -0,0 +1,13 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/pinentry implementation"
+MAINTAINER="ssuominen@gentoo.org"
+VERSION="0.5"
+
+SYMLINK_PATH=/usr/bin/pinentry
+SYMLINK_TARGETS=( pinentry-gnome3 pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses )
+SYMLINK_DESCRIPTION='pinentry binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-pinentry/metadata.xml b/app-eselect/eselect-pinentry/metadata.xml
new file mode 100644
index 00000000000..d68fe974c15
--- /dev/null
+++ b/app-eselect/eselect-pinentry/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>crypto</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-postgresql/Manifest b/app-eselect/eselect-postgresql/Manifest
new file mode 100644
index 00000000000..923db4ac704
--- /dev/null
+++ b/app-eselect/eselect-postgresql/Manifest
@@ -0,0 +1 @@
+DIST eselect-postgresql-1.2.1.tbz2 3645 SHA256 661ef3cbb1627798af3c8d6c526f4a6367620a5fef08c287a633e1babf43f938 SHA512 9b24cb7620dd3de979ef595c60ebf607cd9da5c7d3c4da19ebe242c25961883e2db54341f916690abb9fe7a76663d9f1ac73fc76c90389f72eff425aa6fb43e4 WHIRLPOOL e7ef4f3d250f4f345d28bccdd43fa1639b8ed80b9f6a4aabd4f7df5f4337845ee0f4ce653fde596209094b01fc0e5c624872affbfa042382f3963a49d600827f
diff --git a/app-eselect/eselect-postgresql/eselect-postgresql-1.2.1.ebuild b/app-eselect/eselect-postgresql/eselect-postgresql-1.2.1.ebuild
new file mode 100644
index 00000000000..756f60daa24
--- /dev/null
+++ b/app-eselect/eselect-postgresql/eselect-postgresql-1.2.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+DESCRIPTION="Utility to select the default PostgreSQL slot"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~titanofold/${P}.tbz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
+
+src_install() {
+ keepdir /etc/eselect/postgresql
+
+ insinto /usr/share/eselect/modules
+ doins postgresql.eselect
+
+ dosym /usr/bin/eselect /usr/bin/postgresql-config
+}
+
+pkg_postinst() {
+ postgresql-config update
+}
diff --git a/app-eselect/eselect-postgresql/metadata.xml b/app-eselect/eselect-postgresql/metadata.xml
new file mode 100644
index 00000000000..e9b829d37be
--- /dev/null
+++ b/app-eselect/eselect-postgresql/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>postgresql</herd>
+ <maintainer restrict="&gt;=app-eselect/eselect-postgresql-1.0.0">
+ <email>titanofold@gentoo.org</email>
+ <name>Aaron W. Swenson</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-eselect/eselect-python/Manifest b/app-eselect/eselect-python/Manifest
new file mode 100644
index 00000000000..98a02a21b9f
--- /dev/null
+++ b/app-eselect/eselect-python/Manifest
@@ -0,0 +1,4 @@
+DIST eselect-python-20111108.tar.bz2 64959 SHA256 34d7618808a3c1d22e6763bc6c67d5ae47a1fa371f5e91de95a911da9aceba5e SHA512 59a493128753ae968c6fa30eb870f52198de7bb5090213ef0b8c0d3d8b1f552ac514174dd1e97e54dd9434432be1a68ad01853d1ffb21e53d28d08f623199dac WHIRLPOOL 605730de7fee70cf5a33e15c8e16a938807c5ed32f80ff0435a196f03cb38ce397092626c88df598b1b88dab7ee3b8c7f3105b9f3b88acb13fe532f964b8aced
+DIST eselect-python-20131210.tar.bz2 71802 SHA256 61ff5a5a3ae7982c6ffd503886cbcd35142df05f07008722b90ab5036e4bf8f2 SHA512 8c523019e2a8fe7f1679b96a3da22326dbe65888739bb8cce3c4e2aa7c2c08cada01196a65c8fe35e08b3b7682a3f695e453e9ef1fb53f6b8886c51c09107d60 WHIRLPOOL e8c75eb1ad6fcaaba50cae9d10d2414b29b3cfc8d06c79257948b0d0b4e7c2156d1672be4f5edd28055b5ae3f6aa54b1b8ef6eaaae9dfa1ce9b7b0b68dbc712a
+DIST eselect-python-20140115.tar.bz2 71910 SHA256 5898ee19015ae905168e8b7aa76552b96f691285ab77c426b6a9238ecf742e45 SHA512 65d6a6b9dfa0a0f4bea5352f965bed8942a16382135edea093342fa79a824d114b900cbcf607490f260b4ce4e5a2eb57872169e5494f8e6e65f41dd63cd5d335 WHIRLPOOL 633bca3e8a87e04c54a3790bb207da92d41af604cce7f8600c5317f6a759c55efbd3e5ba658e893d2d079248d2dadb1a0bb60248960e3d20cd766768a228d8c5
+DIST eselect-python-20140125.tar.bz2 72102 SHA256 ee7b470f7facc42285bab7f4b947280741515a85c9067339511c219248f8fdfb SHA512 94d4eb5a1af365c6f56a6fc2b75298018267cd4f6004f30b2e4d0c4744d3e82b33f6c82e6f0ea0f15132d5157c3ace99fa167bbf3ebada46edd2e005ca96eb51 WHIRLPOOL 70d5f9af2929507d26e56080ce934066d2de5f16030dfd63b016215465ad5fc89eb952d64cc545c7058d146108e26925741d2c8fbaba08abba1a5cae7b0c23b6
diff --git a/app-eselect/eselect-python/eselect-python-20111108.ebuild b/app-eselect/eselect-python/eselect-python-20111108.ebuild
new file mode 100644
index 00000000000..e64a2bd4a7b
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20111108.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Keep the EAPI low here because everything else depends on it.
+# We want to make upgrading simpler.
+
+ESVN_PROJECT="eselect-python"
+ESVN_REPO_URI="https://overlays.gentoo.org/svn/proj/python/projects/eselect-python/trunk"
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools subversion
+else
+ SRC_URI="mirror://gentoo/${P}.tar.bz2"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+# Avoid autotool deps for released versions for circ dep issues.
+if [[ ${PV} == "99999999" ]] ; then
+ DEPEND="sys-devel/autoconf"
+else
+ DEPEND=""
+fi
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ [[ -x configure ]] || eautoreconf
+}
+
+src_install() {
+ keepdir /etc/env.d/python
+ emake DESTDIR="${D}" install || die
+}
+
+pkg_preinst() {
+ if has_version "<${CATEGORY}/${PN}-20090804" || ! has_version "${CATEGORY}/${PN}"; then
+ run_eselect_python_update="1"
+ fi
+}
+
+pkg_postinst() {
+ if [[ "${run_eselect_python_update}" == "1" ]]; then
+ ebegin "Running \`eselect python update\`"
+ eselect python update --ignore 3.0 --ignore 3.1 --ignore 3.2 > /dev/null
+ eend "$?"
+ fi
+}
diff --git a/app-eselect/eselect-python/eselect-python-20131210.ebuild b/app-eselect/eselect-python/eselect-python-20131210.ebuild
new file mode 100644
index 00000000000..7f1fd0c9207
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20131210.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Keep the EAPI low here because everything else depends on it.
+# We want to make upgrading simpler.
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="mirror://gentoo/${P}.tar.bz2
+ http://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+# Avoid autotool deps for released versions for circ dep issues.
+if [[ ${PV} == "99999999" ]] ; then
+ DEPEND="sys-devel/autoconf"
+else
+ DEPEND=""
+fi
+
+src_unpack() {
+ if [[ ${PV} == "99999999" ]] ; then
+ git-r3_src_unpack
+ cd "${S}"
+ eautoreconf
+ else
+ unpack ${A}
+ fi
+}
+
+src_install() {
+ keepdir /etc/env.d/python
+ emake DESTDIR="${D}" install || die
+}
+
+pkg_postinst() {
+ local ret=0
+ ebegin "Running 'eselect python update'"
+ eselect python update --python2 --if-unset || ret=1
+ eselect python update --python3 --if-unset || ret=1
+ eend ${ret}
+}
diff --git a/app-eselect/eselect-python/eselect-python-20140115.ebuild b/app-eselect/eselect-python/eselect-python-20140115.ebuild
new file mode 100644
index 00000000000..bb8f032ca06
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20140115.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Keep the EAPI low here because everything else depends on it.
+# We want to make upgrading simpler.
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="mirror://gentoo/${P}.tar.bz2
+ http://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_unpack() {
+ if [[ ${PV} == "99999999" ]] ; then
+ git-r3_src_unpack
+ cd "${S}"
+ eautoreconf
+ else
+ unpack ${A}
+ fi
+}
+
+src_install() {
+ keepdir /etc/env.d/python
+ emake DESTDIR="${D}" install || die
+}
+
+pkg_postinst() {
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+ if has_version '=dev-lang/python-2*'; then
+ eselect python update --python2 --if-unset
+ fi
+ if has_version '=dev-lang/python-3*'; then
+ eselect python update --python3 --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/eselect-python-20140125.ebuild b/app-eselect/eselect-python/eselect-python-20140125.ebuild
new file mode 100644
index 00000000000..d9c34b9d9aa
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20140125.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Keep the EAPI low here because everything else depends on it.
+# We want to make upgrading simpler.
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="mirror://gentoo/${P}.tar.bz2
+ http://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-aix ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_unpack() {
+ if [[ ${PV} == "99999999" ]] ; then
+ git-r3_src_unpack
+ cd "${S}"
+ eautoreconf
+ else
+ unpack ${A}
+ fi
+}
+
+src_install() {
+ keepdir /etc/env.d/python
+ emake DESTDIR="${D}" install || die
+}
+
+pkg_postinst() {
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+ if has_version '=dev-lang/python-2*'; then
+ eselect python update --python2 --if-unset
+ fi
+ if has_version '=dev-lang/python-3*'; then
+ eselect python update --python3 --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/eselect-python-99999999.ebuild b/app-eselect/eselect-python/eselect-python-99999999.ebuild
new file mode 100644
index 00000000000..d9c34b9d9aa
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-99999999.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Keep the EAPI low here because everything else depends on it.
+# We want to make upgrading simpler.
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="mirror://gentoo/${P}.tar.bz2
+ http://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-aix ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_unpack() {
+ if [[ ${PV} == "99999999" ]] ; then
+ git-r3_src_unpack
+ cd "${S}"
+ eautoreconf
+ else
+ unpack ${A}
+ fi
+}
+
+src_install() {
+ keepdir /etc/env.d/python
+ emake DESTDIR="${D}" install || die
+}
+
+pkg_postinst() {
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+ if has_version '=dev-lang/python-2*'; then
+ eselect python update --python2 --if-unset
+ fi
+ if has_version '=dev-lang/python-3*'; then
+ eselect python update --python3 --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/metadata.xml b/app-eselect/eselect-python/metadata.xml
new file mode 100644
index 00000000000..301d2207cc2
--- /dev/null
+++ b/app-eselect/eselect-python/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>python</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-qtgraphicssystem/Manifest b/app-eselect/eselect-qtgraphicssystem/Manifest
new file mode 100644
index 00000000000..8212e075545
--- /dev/null
+++ b/app-eselect/eselect-qtgraphicssystem/Manifest
@@ -0,0 +1 @@
+DIST eselect-qtgraphicssystem-1.1.1.tar.bz2 1621 SHA256 00195d3dc0959b1f396cceaa5320d945fd9bf28680b7b7ce6317915288a627cf SHA512 9c8b5c1d40094b74401de2b0ae74ff2421f3fdd0bf51e5e4c06717064dfee9c03ed9a2ce913b7e8f54c6ad0b5ec11f392cb7fe7fa26822b1370b3e15d5389a66 WHIRLPOOL 76afe928c7f42d702153f4600d2d7cb863a396adde0044f5dd76a436ea8195de8e443b0a9ef66288f85b7c412702178ccbfd76dcc7235031b4d1d5e1d862db28
diff --git a/app-eselect/eselect-qtgraphicssystem/eselect-qtgraphicssystem-1.1.1.ebuild b/app-eselect/eselect-qtgraphicssystem/eselect-qtgraphicssystem-1.1.1.ebuild
new file mode 100644
index 00000000000..0f309797e1a
--- /dev/null
+++ b/app-eselect/eselect-qtgraphicssystem/eselect-qtgraphicssystem-1.1.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Utility to change the active Qt Graphics System"
+HOMEPAGE="https://github.com/gentoo/eselect-qtgraphicssystem"
+SRC_URI="http://dev.gentoo.org/~wired/distfiles/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.2.4"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins qtgraphicssystem.eselect
+}
diff --git a/app-eselect/eselect-qtgraphicssystem/metadata.xml b/app-eselect/eselect-qtgraphicssystem/metadata.xml
new file mode 100644
index 00000000000..e03ee137648
--- /dev/null
+++ b/app-eselect/eselect-qtgraphicssystem/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>qt</herd>
+ <upstream>
+ <remote-id type="github">gentoo/eselect-qtgraphicssystem</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-eselect/eselect-rails/Manifest b/app-eselect/eselect-rails/Manifest
new file mode 100644
index 00000000000..09e3af51fb7
--- /dev/null
+++ b/app-eselect/eselect-rails/Manifest
@@ -0,0 +1,4 @@
+DIST eselect-rails-0.18.tar.bz2 1628 SHA256 6dfcefd74cfb10e83c59d8594bd9e1d39ea40071b2c3a9a3e601a6107aa49671 SHA512 9f0e048ba0d865667e0917e8e08b5319f111816788c3821126c4d442ec3cc9c0466200a8889da420fb841f7b57ba5981cbb8a17d16fe634e550cbdfe618a3522 WHIRLPOOL cd117dafc480c2b6bb9b63a39047553d1d786dcbc711421dba25403309c9c814984aea0309db5d87643ddf165d143f915628c57e2d990d6cb3d2db04e40ada06
+DIST eselect-rails-0.19.tar.bz2 1618 SHA256 13d5054a1a890b6937612c69d1924faaacc6d6e3513dfb8f269bf9f9c6a4ad2f SHA512 4520bcf2bc72494f07bbf6831375d355ee61629d5a6877b0b3c4301a1bce22b0945b17e09533c531ce4b0ac4ed4079852f6f1bb950850181794c44650a450941 WHIRLPOOL 20f448244b51b3ae3b46a1b575081d73ccbe86484226804a5b6927579f4b826445917af82f0a458be4b623da022fbebb416ec565cc5411e096a533c462d88628
+DIST eselect-rails-0.20.tar.bz2 1622 SHA256 f01335820a8777d447c64b1de84f128cbd2db9a16fd6781b4c9c2c5aa3541bbc SHA512 a65519c5a5b2ea444c30c5a4082389eb3e4a96a72e4f845c5a6b01a1681264c44fb234dd46e7251085ca82b40b814fdd4bff3a42c10815b8b291657ce67a9e18 WHIRLPOOL 2d904fed60de465fb1ad1bf5abbd82f7c1807c98480eab617504cb09b6d3f1fd96f2a8795e0d373308b9052e40d7ddcf6ae95f22e1c839efb8af99b7454fd3e8
+DIST eselect-rails-0.21.tar.xz 1592 SHA256 28def0916dbcf94290adf877a962595748a9501d659adb66534ebb8495c8c59f SHA512 8d72d1abdb0bf767a71a518ff390dcd676fc05a35652d6a727d2d5f2029f26d2df8e56da3c4e611267d92505cc9217da0a53712bcaabff03f0f2422e1c9d9658 WHIRLPOOL 7dd89b8bf3daffa09cc150a8db1c3fc8e117f577e7a8fdfb7c6f1bf92d14f298aff63cce2b1f3bf029cbc2c6a115c3ad90bafbd456f31463b49dce5d0f4242b4
diff --git a/app-eselect/eselect-rails/eselect-rails-0.18.ebuild b/app-eselect/eselect-rails/eselect-rails-0.18.ebuild
new file mode 100644
index 00000000000..e2996a66fab
--- /dev/null
+++ b/app-eselect/eselect-rails/eselect-rails-0.18.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages Ruby on Rails symlinks"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~flameeyes/ruby-team/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.0"
+
+src_unpack() {
+ unpack ${A}
+ # Fix/Add Prefix support
+ sed -i -e 's/\${ROOT}/${EROOT}/' *.eselect || die
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins *.eselect || die "doins failed"
+}
diff --git a/app-eselect/eselect-rails/eselect-rails-0.19.ebuild b/app-eselect/eselect-rails/eselect-rails-0.19.ebuild
new file mode 100644
index 00000000000..f6af77509f7
--- /dev/null
+++ b/app-eselect/eselect-rails/eselect-rails-0.19.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages Ruby on Rails symlinks"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~flameeyes/ruby-team/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.0"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Fix/Add Prefix support
+ sed -i -e 's/\${ROOT}/${EROOT}/' *.eselect || die
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins *.eselect || die "doins failed"
+}
diff --git a/app-eselect/eselect-rails/eselect-rails-0.20.ebuild b/app-eselect/eselect-rails/eselect-rails-0.20.ebuild
new file mode 100644
index 00000000000..f6af77509f7
--- /dev/null
+++ b/app-eselect/eselect-rails/eselect-rails-0.20.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages Ruby on Rails symlinks"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~flameeyes/ruby-team/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.0"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Fix/Add Prefix support
+ sed -i -e 's/\${ROOT}/${EROOT}/' *.eselect || die
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins *.eselect || die "doins failed"
+}
diff --git a/app-eselect/eselect-rails/eselect-rails-0.21.ebuild b/app-eselect/eselect-rails/eselect-rails-0.21.ebuild
new file mode 100644
index 00000000000..c8dfa9e9066
--- /dev/null
+++ b/app-eselect/eselect-rails/eselect-rails-0.21.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages Ruby on Rails symlinks"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~flameeyes/ruby-team/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.0"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Fix/Add Prefix support
+ sed -i -e 's/\${ROOT}/${EROOT}/' *.eselect || die
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins *.eselect || die "doins failed"
+}
diff --git a/app-eselect/eselect-rails/metadata.xml b/app-eselect/eselect-rails/metadata.xml
new file mode 100644
index 00000000000..85213618336
--- /dev/null
+++ b/app-eselect/eselect-rails/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>ruby</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-renpy/eselect-renpy-0.1.ebuild b/app-eselect/eselect-renpy/eselect-renpy-0.1.ebuild
new file mode 100644
index 00000000000..e2551467fe8
--- /dev/null
+++ b/app-eselect/eselect-renpy/eselect-renpy-0.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit games
+
+DESCRIPTION="Manages renpy symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="app-eselect/eselect-lib-bin-symlink"
+
+S=${WORKDIR}
+
+pkg_setup() { :; }
+
+src_prepare() {
+ sed \
+ -e "s#@GAMES_BINDIR@#${GAMES_BINDIR}#" \
+ "${FILESDIR}"/renpy.eselect-${PV} > "${WORKDIR}"/renpy.eselect || die
+}
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins renpy.eselect
+}
+
+pkg_preinst() { :; }
+
+pkg_postinst() { :; }
diff --git a/app-eselect/eselect-renpy/eselect-renpy-0.2.ebuild b/app-eselect/eselect-renpy/eselect-renpy-0.2.ebuild
new file mode 100644
index 00000000000..9ef49b449d4
--- /dev/null
+++ b/app-eselect/eselect-renpy/eselect-renpy-0.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit games
+
+DESCRIPTION="Manages renpy symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="app-eselect/eselect-lib-bin-symlink"
+
+S=${WORKDIR}
+
+pkg_setup() { :; }
+
+src_prepare() {
+ sed \
+ -e "s#@GAMES_BINDIR@#${GAMES_BINDIR}#" \
+ "${FILESDIR}"/renpy.eselect-${PV} > "${WORKDIR}"/renpy.eselect || die
+}
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins renpy.eselect
+}
+
+pkg_preinst() { :; }
+
+pkg_postinst() { :; }
diff --git a/app-eselect/eselect-renpy/eselect-renpy-0.3.ebuild b/app-eselect/eselect-renpy/eselect-renpy-0.3.ebuild
new file mode 100644
index 00000000000..9ef49b449d4
--- /dev/null
+++ b/app-eselect/eselect-renpy/eselect-renpy-0.3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit games
+
+DESCRIPTION="Manages renpy symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="app-eselect/eselect-lib-bin-symlink"
+
+S=${WORKDIR}
+
+pkg_setup() { :; }
+
+src_prepare() {
+ sed \
+ -e "s#@GAMES_BINDIR@#${GAMES_BINDIR}#" \
+ "${FILESDIR}"/renpy.eselect-${PV} > "${WORKDIR}"/renpy.eselect || die
+}
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins renpy.eselect
+}
+
+pkg_preinst() { :; }
+
+pkg_postinst() { :; }
diff --git a/app-eselect/eselect-renpy/eselect-renpy-0.4.ebuild b/app-eselect/eselect-renpy/eselect-renpy-0.4.ebuild
new file mode 100644
index 00000000000..9ef49b449d4
--- /dev/null
+++ b/app-eselect/eselect-renpy/eselect-renpy-0.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit games
+
+DESCRIPTION="Manages renpy symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="app-eselect/eselect-lib-bin-symlink"
+
+S=${WORKDIR}
+
+pkg_setup() { :; }
+
+src_prepare() {
+ sed \
+ -e "s#@GAMES_BINDIR@#${GAMES_BINDIR}#" \
+ "${FILESDIR}"/renpy.eselect-${PV} > "${WORKDIR}"/renpy.eselect || die
+}
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins renpy.eselect
+}
+
+pkg_preinst() { :; }
+
+pkg_postinst() { :; }
diff --git a/app-eselect/eselect-renpy/eselect-renpy-0.5.ebuild b/app-eselect/eselect-renpy/eselect-renpy-0.5.ebuild
new file mode 100644
index 00000000000..e2551467fe8
--- /dev/null
+++ b/app-eselect/eselect-renpy/eselect-renpy-0.5.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit games
+
+DESCRIPTION="Manages renpy symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="app-eselect/eselect-lib-bin-symlink"
+
+S=${WORKDIR}
+
+pkg_setup() { :; }
+
+src_prepare() {
+ sed \
+ -e "s#@GAMES_BINDIR@#${GAMES_BINDIR}#" \
+ "${FILESDIR}"/renpy.eselect-${PV} > "${WORKDIR}"/renpy.eselect || die
+}
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins renpy.eselect
+}
+
+pkg_preinst() { :; }
+
+pkg_postinst() { :; }
diff --git a/app-eselect/eselect-renpy/files/renpy.eselect-0.1 b/app-eselect/eselect-renpy/files/renpy.eselect-0.1
new file mode 100644
index 00000000000..dcd203a88ff
--- /dev/null
+++ b/app-eselect/eselect-renpy/files/renpy.eselect-0.1
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage default renpy version"
+MAINTAINER="hasufell@gentoo.org"
+VERSION="0.1"
+
+SYMLINK_PATH="@GAMES_BINDIR@/renpy"
+SYMLINK_TARGETS=( renpy-6.14 )
+SYMLINK_DESCRIPTION='default renpy'
+SYMLINK_CRUCIAL=1
+
+inherit bin-symlink
+
diff --git a/app-eselect/eselect-renpy/files/renpy.eselect-0.2 b/app-eselect/eselect-renpy/files/renpy.eselect-0.2
new file mode 100644
index 00000000000..e304279e0e3
--- /dev/null
+++ b/app-eselect/eselect-renpy/files/renpy.eselect-0.2
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage default renpy version"
+MAINTAINER="hasufell@gentoo.org"
+VERSION="0.2"
+
+SYMLINK_PATH="@GAMES_BINDIR@/renpy"
+SYMLINK_TARGETS=( renpy-6.14 renpy-6.15 )
+SYMLINK_DESCRIPTION='default renpy'
+SYMLINK_CRUCIAL=1
+
+inherit bin-symlink
+
diff --git a/app-eselect/eselect-renpy/files/renpy.eselect-0.3 b/app-eselect/eselect-renpy/files/renpy.eselect-0.3
new file mode 100644
index 00000000000..b496e3149fd
--- /dev/null
+++ b/app-eselect/eselect-renpy/files/renpy.eselect-0.3
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage default renpy version"
+MAINTAINER="hasufell@gentoo.org"
+VERSION="0.3"
+
+SYMLINK_PATH="@GAMES_BINDIR@/renpy"
+SYMLINK_TARGETS=( renpy-6.14 renpy-6.15 renpy-6.16 )
+SYMLINK_DESCRIPTION='default renpy'
+SYMLINK_CRUCIAL=1
+
+inherit bin-symlink
+
diff --git a/app-eselect/eselect-renpy/files/renpy.eselect-0.4 b/app-eselect/eselect-renpy/files/renpy.eselect-0.4
new file mode 100644
index 00000000000..1c7f45215c3
--- /dev/null
+++ b/app-eselect/eselect-renpy/files/renpy.eselect-0.4
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage default renpy version"
+MAINTAINER="hasufell@gentoo.org"
+VERSION="0.4"
+
+SYMLINK_PATH="@GAMES_BINDIR@/renpy"
+SYMLINK_TARGETS=( renpy-6.14 renpy-6.15 renpy-6.16 renpy-6.17 )
+SYMLINK_DESCRIPTION='default renpy'
+SYMLINK_CRUCIAL=1
+
+inherit bin-symlink
+
diff --git a/app-eselect/eselect-renpy/files/renpy.eselect-0.5 b/app-eselect/eselect-renpy/files/renpy.eselect-0.5
new file mode 100644
index 00000000000..fb8e3f1d961
--- /dev/null
+++ b/app-eselect/eselect-renpy/files/renpy.eselect-0.5
@@ -0,0 +1,15 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage default renpy version"
+MAINTAINER="hasufell@gentoo.org"
+VERSION="0.5"
+
+SYMLINK_PATH="@GAMES_BINDIR@/renpy"
+SYMLINK_TARGETS=( renpy-6.14 renpy-6.15 renpy-6.16 renpy-6.17 renpy-6.18 )
+SYMLINK_DESCRIPTION='default renpy'
+SYMLINK_CRUCIAL=1
+
+inherit bin-symlink
+
diff --git a/app-eselect/eselect-renpy/metadata.xml b/app-eselect/eselect-renpy/metadata.xml
new file mode 100644
index 00000000000..e52db06ebd8
--- /dev/null
+++ b/app-eselect/eselect-renpy/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <maintainer>
+ <email>hasufell@gentoo.org</email>
+ <name>Julian Ospald</name>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-ruby/Manifest b/app-eselect/eselect-ruby/Manifest
new file mode 100644
index 00000000000..ac8ed7b336c
--- /dev/null
+++ b/app-eselect/eselect-ruby/Manifest
@@ -0,0 +1,2 @@
+DIST ruby.eselect-20131227.bz2 1920 SHA256 b425962f9898ceb8bcdbb55d9648f3d98b82a916c4afa95b2fb1ddcd39cc3689 SHA512 9f13d4a6dc45923f88b145984f9c537846d4cb937b73c2be916792c70ff3c751f1e12b76f33686e35053bf6af1392e6c7e276f06dfb728e6a20f6335f739b784 WHIRLPOOL 38135af69952aff7cf874608365029947733733d33a3c586367ccf6fceb1bf2236781c9fe554a5654f720c19ef0fb0bd3dd5773a108386c6185a2fc2d94ac37b
+DIST ruby.eselect-20141227.bz2 1926 SHA256 eef9af23d4990f6a1b8b0b921ec7de9087143486b6a0faf076bdc90e093dd83a SHA512 f8fb92c171cf653da22402785d80a671e4b4c7eeea9f41c33a70475264aa2d7e5f62c998e5f63ff011f9f4e1953d75022c23e1dfc3ef81041168167fa301560c WHIRLPOOL 5f6be4dcba75fd7f252b9037417be707f0528c14075f01ad644f9ebcac7032ae96278ba1bcbd79b6d9b265699f9cfaf532fe58ae10e057ebfeb89de34c6be3be
diff --git a/app-eselect/eselect-ruby/eselect-ruby-20131227.ebuild b/app-eselect/eselect-ruby/eselect-ruby-20131227.ebuild
new file mode 100644
index 00000000000..0a825ed563c
--- /dev/null
+++ b/app-eselect/eselect-ruby/eselect-ruby-20131227.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages multiple Ruby versions"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.a3li.li/gentoo/distfiles/ruby.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/ruby.eselect-${PVR}" ruby.eselect || die
+}
diff --git a/app-eselect/eselect-ruby/eselect-ruby-20141227.ebuild b/app-eselect/eselect-ruby/eselect-ruby-20141227.ebuild
new file mode 100644
index 00000000000..2e7594643ff
--- /dev/null
+++ b/app-eselect/eselect-ruby/eselect-ruby-20141227.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages multiple Ruby versions"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~mrueg/distfiles/ruby.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/ruby.eselect-${PVR}" ruby.eselect || die
+}
diff --git a/app-eselect/eselect-ruby/metadata.xml b/app-eselect/eselect-ruby/metadata.xml
new file mode 100644
index 00000000000..85213618336
--- /dev/null
+++ b/app-eselect/eselect-ruby/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>ruby</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-rust/Manifest b/app-eselect/eselect-rust/Manifest
new file mode 100644
index 00000000000..752207b7f48
--- /dev/null
+++ b/app-eselect/eselect-rust/Manifest
@@ -0,0 +1 @@
+DIST eselect-rust-0.3_pre20150428.tar.gz 64722 SHA256 2c8c8703ef252d3504befc67da37c1ff5bc7f7df876754ae962a8805ed7d0837 SHA512 214a6eb4b1f9bfcaed1a5fe92ec9633a82316716ffda8db2d2f88bfcbdae17ef7c026091de3927efad5c3624bb7003166d2ebadea6dd8828a0f1c41e0d3f16e7 WHIRLPOOL 18b5564fbb92030c28a2d18a46ea860d9f98d86ef136cbba25af7d769f6799e71bcbb6d7e1fc9983a6b40b350e4840d684716c21cb8d52fe8dd7ef2854f317a2
diff --git a/app-eselect/eselect-rust/eselect-rust-0.3_pre20150428.ebuild b/app-eselect/eselect-rust/eselect-rust-0.3_pre20150428.ebuild
new file mode 100644
index 00000000000..9088efb658c
--- /dev/null
+++ b/app-eselect/eselect-rust/eselect-rust-0.3_pre20150428.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="eselect module for rust"
+HOMEPAGE="http://github.com/jauhien/eselect-rust"
+SRC_URI="https://github.com/jauhien/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="app-admin/eselect"
+
+pkg_preinst() {
+ if has_version 'app-eselect/eselect-rust' ; then
+ eselect rust unset
+ fi
+}
+
+pkg_postinst() {
+ if has_version 'dev-lang/rust' || has_version 'dev-lang/rust-bin' ; then
+ eselect rust update --if-unset
+ fi
+}
+
+pkg_prerm() {
+ eselect rust unset
+}
diff --git a/app-eselect/eselect-rust/metadata.xml b/app-eselect/eselect-rust/metadata.xml
new file mode 100644
index 00000000000..d1fb997f71e
--- /dev/null
+++ b/app-eselect/eselect-rust/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>jauhien@gentoo.org</email>
+ <name>Jauhien Piatlicki</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jauhien/eselect-rust</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-eselect/eselect-scala/Manifest b/app-eselect/eselect-scala/Manifest
new file mode 100644
index 00000000000..1acc705c830
--- /dev/null
+++ b/app-eselect/eselect-scala/Manifest
@@ -0,0 +1 @@
+DIST eselect-scala-0.1.1.tar.gz 1781 SHA256 e3b477858897675c6ab970674b16844853df5949654a5cf526367ecb3579ed33 SHA512 2de1b6067c385d1fb0fa0c708467ebd5d491c3ee532888ad497008fe7f78a8f4be9843af444d71107e05c111579ed83015094c3eca5d6f2c338855af4b722363 WHIRLPOOL 76c0e8631f1584ac1cbb1ee609409cba4f20db93ad9e1a9ea83f0209d3b86016c911c5da9e23044597e57bcf8c53e43e33d2031d7edcd6c421ba06ea10d47ecc
diff --git a/app-eselect/eselect-scala/eselect-scala-0.1.1.ebuild b/app-eselect/eselect-scala/eselect-scala-0.1.1.ebuild
new file mode 100644
index 00000000000..96af878e607
--- /dev/null
+++ b/app-eselect/eselect-scala/eselect-scala-0.1.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages multiple Scala versions"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~gienah/distfiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~x86-macos"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins scala.eselect
+}
diff --git a/app-eselect/eselect-scala/metadata.xml b/app-eselect/eselect-scala/metadata.xml
new file mode 100644
index 00000000000..b5357c25907
--- /dev/null
+++ b/app-eselect/eselect-scala/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>gienah@gentoo.org</email>
+</maintainer>
+<herd>java</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-sh/eselect-sh-0.4-r2.ebuild b/app-eselect/eselect-sh/eselect-sh-0.4-r2.ebuild
new file mode 100644
index 00000000000..4d141d1b7e0
--- /dev/null
+++ b/app-eselect/eselect-sh/eselect-sh-0.4-r2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages the /bin/sh (POSIX shell) symlink"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="app-eselect/eselect-lib-bin-symlink"
+
+S=${FILESDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins sh.eselect-${PVR} sh.eselect
+}
diff --git a/app-eselect/eselect-sh/files/sh.eselect-0.4-r2 b/app-eselect/eselect-sh/files/sh.eselect-0.4-r2
new file mode 100644
index 00000000000..05cac850bf3
--- /dev/null
+++ b/app-eselect/eselect-sh/files/sh.eselect-0.4-r2
@@ -0,0 +1,14 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /bin/sh (POSIX shell) implementations"
+MAINTAINER="mgorny@gentoo.org"
+VERSION="0.4"
+
+SYMLINK_PATH=/bin/sh
+SYMLINK_TARGETS=( bash dash posh mksh )
+SYMLINK_DESCRIPTION='POSIX shell'
+SYMLINK_CRUCIAL=1
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-sh/metadata.xml b/app-eselect/eselect-sh/metadata.xml
new file mode 100644
index 00000000000..5cb9324943a
--- /dev/null
+++ b/app-eselect/eselect-sh/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-eselect/eselect-sndpeek/Manifest b/app-eselect/eselect-sndpeek/Manifest
new file mode 100644
index 00000000000..f8f57c8b8e4
--- /dev/null
+++ b/app-eselect/eselect-sndpeek/Manifest
@@ -0,0 +1 @@
+DIST sndpeek.eselect-1.0.1.bz2 1263 SHA256 f29bac268b3f4c801565e0af10101b5a1685c70ec0108c932fbddf2c5381cfa1 SHA512 39cc065d4fbe408db9c406d84a0ebf4a69a9c50f440f26b714b5f154bf7b5de497df4226434d60c0b1e4e073bbe3a0ca96c3bd574148772a4912e2fc9c9c6b5b WHIRLPOOL 5d04de6553b85197ec2ea53719eb4e76010333a5f3b2b91fa2d75a1753e59991e161b30ddf18492eaac2d6768a0e1bfa86ee1097724ff00c4d2bc7ab19d5f2e9
diff --git a/app-eselect/eselect-sndpeek/eselect-sndpeek-1.0.1.ebuild b/app-eselect/eselect-sndpeek/eselect-sndpeek-1.0.1.ebuild
new file mode 100644
index 00000000000..4f50be24629
--- /dev/null
+++ b/app-eselect/eselect-sndpeek/eselect-sndpeek-1.0.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages the /usr/bin/sndpeek symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/sndpeek.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/sndpeek.eselect-${PVR}" sndpeek.eselect || die
+}
diff --git a/app-eselect/eselect-sndpeek/metadata.xml b/app-eselect/eselect-sndpeek/metadata.xml
new file mode 100644
index 00000000000..e96e35b1a37
--- /dev/null
+++ b/app-eselect/eselect-sndpeek/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-timezone/Manifest b/app-eselect/eselect-timezone/Manifest
new file mode 100644
index 00000000000..0a46c81cf50
--- /dev/null
+++ b/app-eselect/eselect-timezone/Manifest
@@ -0,0 +1 @@
+DIST eselect-timezone-0.2.tar.xz 1400 SHA256 7bf7cc26b1ecfbc56ab742cc0debf7dd3b2bd0e83ba1df0dbd203e3b97c167f4 SHA512 757dc88b94fde547af2026c0759c9109f803f7144e843be9d79e9eef0bcbe8f2273a5585448dc1d810d89f4f4be7f6d8974e7dc35f6dc8069f8090775bdf8b52 WHIRLPOOL c950c695b7915db48f48ec7e15583911dfdaf281130b9e0c217199df477f8fbd4c3ad60e6582a7cc540adc44c461fccddc11c7c9c65f1e7c7b8931e1247beb9c
diff --git a/app-eselect/eselect-timezone/eselect-timezone-0.2.ebuild b/app-eselect/eselect-timezone/eselect-timezone-0.2.ebuild
new file mode 100644
index 00000000000..f1f4d3f1256
--- /dev/null
+++ b/app-eselect/eselect-timezone/eselect-timezone-0.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Manages timezone selection"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~ottxor/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins timezone.eselect
+}
diff --git a/app-eselect/eselect-timezone/metadata.xml b/app-eselect/eselect-timezone/metadata.xml
new file mode 100644
index 00000000000..745b9e1ce74
--- /dev/null
+++ b/app-eselect/eselect-timezone/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-eselect/eselect-timidity/Manifest b/app-eselect/eselect-timidity/Manifest
new file mode 100644
index 00000000000..1dc3f91d01c
--- /dev/null
+++ b/app-eselect/eselect-timidity/Manifest
@@ -0,0 +1,3 @@
+DIST timidity.eselect-20061203.bz2 1673 SHA256 ad16938191e4f1e70f9775b6b112fbe25a92f948ca4b6ccce342b34a8acf8197 SHA512 6fce1c117120eae0e4538dc7459161a8bbfabb2dbb79a52b643a462a6ef3c05bc0e03bf05cd14785941638a60d7259bdb3afba3b3855dd0b5032855bf57ad9f7 WHIRLPOOL e85fbf127ebe29e997512cd5d584d19da910d3edeb8ebb52b08bf474cfdb706888a2ad10ad6c8d5c13e1bc5122e607eaf4e236bf73e9c2cb7d1b947734409422
+DIST timidity.eselect-20091106.bz2 1663 SHA256 5b72deaa2fb6ef51ec6196d6d50eea4b9ef38ea1779cd59a7914ad73912b1e93 SHA512 35a2682b86b4b0f4dd169be7fdb28e190782375e3071c086c865d7eb8e1e7b1dbe8b967d1169b8fa8bdd576e0b6ee4c00c2f9ff463c8419d5f5226bd802f2275 WHIRLPOOL efc5fd26f8f0111b916d1bd029c4b48340e59c7f90816b5ad32b967a5f8b9c12c24198f5f4238daa2b0c59e57107305519dc64c64750573542372b293eeb821c
+DIST timidity.eselect-20110513.bz2 1689 SHA256 76b4303e12540361dad180fe9d2eaf9ba0223c7e6cf9331138bc4415ca8eae6e SHA512 9af37f195dde3595cb55e3ca467928fd04b5f755545cf41ce0b3198a21107ad35e28365c1d310a77561f8ffcb1b10909b618fbdc55ca06b77492711b48c17afe WHIRLPOOL 0fef11a89e0e5b395d32dff9f972e2260a696e2c8dcd81f5054807cdabdea78660b3d3a08f7164a8351c32c8abd1b5a8ade7e4fcc2c75313c45e342e1c18223d
diff --git a/app-eselect/eselect-timidity/eselect-timidity-20061203.ebuild b/app-eselect/eselect-timidity/eselect-timidity-20061203.ebuild
new file mode 100644
index 00000000000..95381bd2677
--- /dev/null
+++ b/app-eselect/eselect-timidity/eselect-timidity-20061203.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of TiMidity++ patchsets"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/timidity.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm hppa ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.2"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/timidity.eselect-${PVR}" timidity.eselect || die
+}
diff --git a/app-eselect/eselect-timidity/eselect-timidity-20091106.ebuild b/app-eselect/eselect-timidity/eselect-timidity-20091106.ebuild
new file mode 100644
index 00000000000..0539ca7d151
--- /dev/null
+++ b/app-eselect/eselect-timidity/eselect-timidity-20091106.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of TiMidity++ patchsets"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/timidity.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/timidity.eselect-${PVR}" timidity.eselect || die
+}
diff --git a/app-eselect/eselect-timidity/eselect-timidity-20110513.ebuild b/app-eselect/eselect-timidity/eselect-timidity-20110513.ebuild
new file mode 100644
index 00000000000..7cee43ceb25
--- /dev/null
+++ b/app-eselect/eselect-timidity/eselect-timidity-20110513.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages configuration of TiMidity++ patchsets"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/timidity.eselect-${PVR}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/timidity.eselect-${PVR}" timidity.eselect || die
+}
diff --git a/app-eselect/eselect-timidity/metadata.xml b/app-eselect/eselect-timidity/metadata.xml
new file mode 100644
index 00000000000..e1774e3d9ad
--- /dev/null
+++ b/app-eselect/eselect-timidity/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>sound</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-unison/eselect-unison-0.1.ebuild b/app-eselect/eselect-unison/eselect-unison-0.1.ebuild
new file mode 100644
index 00000000000..338b89e4bcc
--- /dev/null
+++ b/app-eselect/eselect-unison/eselect-unison-0.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="unison module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE=""
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.0.5"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="unison"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect || die "failed to install"
+}
diff --git a/app-eselect/eselect-unison/eselect-unison-0.2.ebuild b/app-eselect/eselect-unison/eselect-unison-0.2.ebuild
new file mode 100644
index 00000000000..502a2bd5715
--- /dev/null
+++ b/app-eselect/eselect-unison/eselect-unison-0.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="unison module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="unison"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect \
+ || die "failed to install"
+}
diff --git a/app-eselect/eselect-unison/eselect-unison-0.3.ebuild b/app-eselect/eselect-unison/eselect-unison-0.3.ebuild
new file mode 100644
index 00000000000..5a31933733a
--- /dev/null
+++ b/app-eselect/eselect-unison/eselect-unison-0.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="unison module for eselect"
+HOMEPAGE="http://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ local MODULEDIR="/usr/share/eselect/modules"
+ local MODULE="unison"
+ dodir ${MODULEDIR}
+ insinto ${MODULEDIR}
+ newins "${FILESDIR}/${MODULE}.eselect-${PVR}" ${MODULE}.eselect \
+ || die "failed to install"
+}
diff --git a/app-eselect/eselect-unison/files/unison.eselect-0.1 b/app-eselect/eselect-unison/files/unison.eselect-0.1
new file mode 100644
index 00000000000..6baa01264da
--- /dev/null
+++ b/app-eselect/eselect-unison/files/unison.eselect-0.1
@@ -0,0 +1,152 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/unison versions"
+MAINTAINER="ml@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:57:32 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# find a list of unison symlink targets, best first
+find_targets() {
+ local f
+ for f in "${ROOT}"/usr/bin/unison-[0-9]*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/unison-}"
+ fi
+ done | tac
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${ROOT}"/usr/bin/unison)"
+ echo "${f##*/unison-}"
+}
+
+# try to remove the unison symlink
+remove_symlinks() {
+ rm -f "${ROOT}"/usr/bin/unison &>/dev/null
+}
+
+# set the unison symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ target=${targets[$(( ${target} - 1 ))]}
+ fi
+ if [[ -f "${ROOT}/usr/bin/unison-${target}" ]] ; then
+ remove_symlinks
+ ln -s "unison-${target}" "${ROOT}/usr/bin/unison" || \
+ die "Could not set ${target} /usr/bin/unison symlink"
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current unison version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current unison verson:"
+ if [[ -L "${ROOT}/usr/bin/unison" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${ROOT}/usr/bin/unison" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available unison versions"
+}
+
+do_list() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ if [[ -n ${targets[@]} ]] ; then
+ for (( i = 0 ; i < ${#targets[@]} ; i = i + 1 )) ; do
+ [[ ${targets[${i}]} == ${current} ]] && \
+ targets[${i}]="${targets[${i}]} $(highlight '*' )"
+ done
+ write_list_start "Available unison versions:"
+ write_numbered_list "${targets[@]}"
+ else
+ write_kv_list_entry "(none found)" ""
+ fi
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new unison version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${ROOT}/usr/bin/unison" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${ROOT}/usr/bin/unison" ]] ; then
+ die -q "${ROOT}/usr/bin/unison seems to be from an old ebuild, please remove manually"
+
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the unison version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${ROOT}/usr/bin/unison" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${ROOT}/usr/bin/unison" ]] ; then
+ die -q "${ROOT}/usr/bin/unison seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
+
+# vim: set ft=eselect :
diff --git a/app-eselect/eselect-unison/files/unison.eselect-0.2 b/app-eselect/eselect-unison/files/unison.eselect-0.2
new file mode 100644
index 00000000000..62cc128c0ec
--- /dev/null
+++ b/app-eselect/eselect-unison/files/unison.eselect-0.2
@@ -0,0 +1,147 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/unison versions"
+MAINTAINER="ml@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:57:32 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+# find a list of unison symlink targets, best first
+find_targets() {
+ local f
+ for f in "${ROOT}"/usr/bin/unison-[0-9]*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/unison-}"
+ fi
+ done | tac
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${ROOT}"/usr/bin/unison)"
+ echo "${f##*/unison-}"
+}
+
+# try to remove the unison symlink
+remove_symlinks() {
+ rm -f "${ROOT}"/usr/bin/unison &>/dev/null
+}
+
+# set the unison symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets ) )
+ target=${targets[$(( ${target} - 1 ))]}
+ fi
+ if [[ -f "${ROOT}/usr/bin/unison-${target}" ]] ; then
+ remove_symlinks
+ ln -s "unison-${target}" "${ROOT}/usr/bin/unison" || \
+ die "Could not set ${target} /usr/bin/unison symlink"
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current unison version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current unison verson:"
+ if [[ -L "${ROOT}/usr/bin/unison" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${ROOT}/usr/bin/unison" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available unison versions"
+}
+
+do_list() {
+ [[ $# -eq 0 ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = ${current} ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_list_start "Available unison versions:"
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new unison version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${ROOT}/usr/bin/unison" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${ROOT}/usr/bin/unison" ]] ; then
+ die -q "${ROOT}/usr/bin/unison seems to be from an old ebuild, please remove manually"
+
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the unison version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${ROOT}/usr/bin/unison" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${ROOT}/usr/bin/unison" ]] ; then
+ die -q "${ROOT}/usr/bin/unison seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
diff --git a/app-eselect/eselect-unison/files/unison.eselect-0.3 b/app-eselect/eselect-unison/files/unison.eselect-0.3
new file mode 100644
index 00000000000..99190ebcbef
--- /dev/null
+++ b/app-eselect/eselect-unison/files/unison.eselect-0.3
@@ -0,0 +1,146 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage /usr/bin/unison versions"
+MAINTAINER="ml@gentoo.org"
+VERSION="0.3"
+
+# find a list of unison symlink targets, best first
+find_targets() {
+ local f
+ for f in "${EROOT}"/usr/bin/unison-[0-9]*; do
+ if [[ -f ${f} ]] ; then
+ echo "${f##*/unison-}"
+ fi
+ done | tac
+}
+
+# find version number of currently symlinked version
+identify_target() {
+ local f
+ f="$(canonicalise "${EROOT}"/usr/bin/unison)"
+ echo "${f##*/unison-}"
+}
+
+# try to remove the unison symlink
+remove_symlinks() {
+ rm -f "${EROOT}"/usr/bin/unison &>/dev/null
+}
+
+# set the unison symlink
+set_symlinks() {
+ local target="${1}" targets
+ if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
+ targets=( $(find_targets) )
+ target=${targets[target - 1]}
+ fi
+ if [[ -f "${EROOT}/usr/bin/unison-${target}" ]] ; then
+ remove_symlinks
+ ln -s "unison-${target}" "${EROOT}/usr/bin/unison" || \
+ die "Could not set ${target} /usr/bin/unison symlink"
+ else
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current unison version"
+}
+
+do_show() {
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current unison verson:"
+ if [[ -L "${EROOT}/usr/bin/unison" ]] ; then
+ write_kv_list_entry "$(identify_target)" ""
+ elif [[ -e "${EROOT}/usr/bin/unison" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+ fi
+}
+
+### list action ###
+
+describe_list() {
+ echo "List available unison versions"
+}
+
+do_list() {
+ [[ $# -eq 0 ]] || die -q "Too many parameters"
+
+ local i targets current
+ targets=( $(find_targets ) )
+ current=$(identify_target)
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = ${current} ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_list_start "Available unison versions:"
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new unison version"
+}
+
+describe_set_options() {
+ echo "target : Target version number or index from 'list' action"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+do_set() {
+ if [[ -z "${1}" ]] ; then
+ die -q "You didn't give me a version number"
+
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+ elif [[ -L "${EROOT}/usr/bin/unison" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing version symlink"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new version"
+ fi
+
+ elif [[ -e "${EROOT}/usr/bin/unison" ]] ; then
+ die -q "${EROOT}/usr/bin/unison seems to be from an old ebuild, please remove manually"
+
+ else
+ set_symlinks "${1}" || die -q "Can't set new version"
+ fi
+}
+
+### update action ###
+
+describe_update() {
+ echo "Automatically update the unison version number"
+}
+
+describe_update_options() {
+ echo "--if-unset : Do not override currently selected version"
+}
+
+do_update() {
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+ if [[ -L "${EROOT}/usr/bin/unison" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing symlink"
+ fi
+ if [[ -e "${EROOT}/usr/bin/unison" ]] ; then
+ die -q "${EROOT}/usr/bin/unison seems to be from an old ebuild, please remove manually"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new version"
+ fi
+}
diff --git a/app-eselect/eselect-unison/metadata.xml b/app-eselect/eselect-unison/metadata.xml
new file mode 100644
index 00000000000..2193d772e35
--- /dev/null
+++ b/app-eselect/eselect-unison/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>ml</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-vdr/Manifest b/app-eselect/eselect-vdr/Manifest
new file mode 100644
index 00000000000..ae4e53b0464
--- /dev/null
+++ b/app-eselect/eselect-vdr/Manifest
@@ -0,0 +1 @@
+DIST eselect-vdr-0.0.3.tar.bz2 1899 SHA256 088ca60c9bc20f23d8df8ec3037e02301cdc5417fd5eef2a94d1b0a4db129eba SHA512 6cd1c43271106d3dbe59c12148b0364c11a9767cb9ebb76e1647f707573d8fb875dfaa3ebd0b76523270e20c7ce4afd17d05dca0ef1dc4331366f49895498631 WHIRLPOOL 854a6c021f9b273c75da4f5622b37782a0719e1e9a971e430f249a3752f69aa18e473124bafe0e9ff793f8f5f9d58df404ab4434f8978b7b7a810d1d1e3c890c
diff --git a/app-eselect/eselect-vdr/eselect-vdr-0.0.3.ebuild b/app-eselect/eselect-vdr/eselect-vdr-0.0.3.ebuild
new file mode 100644
index 00000000000..d4d1e36121e
--- /dev/null
+++ b/app-eselect/eselect-vdr/eselect-vdr-0.0.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages the VDR plugins"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc x86"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins vdr-plugin.eselect || die "Could not install eselect module"
+
+ dosym /usr/bin/eselect /usr/bin/vdr-plugin-config
+}
diff --git a/app-eselect/eselect-vdr/metadata.xml b/app-eselect/eselect-vdr/metadata.xml
new file mode 100644
index 00000000000..7b718b6f976
--- /dev/null
+++ b/app-eselect/eselect-vdr/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>media-tv</herd>
+ <maintainer>
+ <email>vdr@gentoo.org</email>
+ <name>Gentoo VDR Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-eselect/eselect-vi/Manifest b/app-eselect/eselect-vi/Manifest
new file mode 100644
index 00000000000..d6d90676a79
--- /dev/null
+++ b/app-eselect/eselect-vi/Manifest
@@ -0,0 +1,3 @@
+DIST eselect-vi-1.1.8.tar.xz 6236 SHA256 c3b1f4233bec7b40568b6a9e7d74024d04440b00bc2490991d8737aa97c9ae58 SHA512 a54c4ce4f71d1368cf390b9c9326fe682839e375622d2ac4eeede6e38ebdb204b6a0e2d1776712f25c419e2043c86879a798c65155124ae951fbf6b5b1887fd2 WHIRLPOOL 15c377c9d0e14de7418c230c19814b6ee19aadf19c563b4eb675e47157807ef4423a5ac13fcd7cbea80c24f65ac637e27cfac72c323dc0f9d133c67883596642
+DIST eselect-vi-1.1.9.tar.xz 6236 SHA256 e11592f4f48d16071f6248794e2f9116f716c78c1ba66b9181aa670ab9f71400 SHA512 618c83d1e93a6c137b1c787c9bf9df19b68b7ef6679ba6179f13582f67e494d365da778b4646aff4af7196399468204c249e59e104a69851bb411fff1b3d038f WHIRLPOOL c898788019a4e79ab1dee38cc3d8d3878c25651bba7e83fae1e97a05abd7222b5d514d985f3ed9ff5861af72c2255521b0db66c6d6c8f8e97beb0597344eca82
+DIST vi.eselect-1.1.7.bz2 1709 SHA256 e3eecf0a2ca97d1a3f66b36d7cd431fad428493ba9b43a446a6772aaa7e34072 SHA512 72f8310cf9d3decdadaae95b515318285b4d3105ff57e72e15cd2724bedaa1684943ce21c42420e23412b0dbb53f042f15cc27e6e5ee7537b457583d71271ef1 WHIRLPOOL d726d45fa7cef77180914a791017f6d865e08e035fb1a7cd3098a83c454d5ba654a173001bf3584330b69382c545b633fab7aef4853cfc62284d166b945adb36
diff --git a/app-eselect/eselect-vi/eselect-vi-1.1.7-r1.ebuild b/app-eselect/eselect-vi/eselect-vi-1.1.7-r1.ebuild
new file mode 100644
index 00000000000..72efb0fa7b5
--- /dev/null
+++ b/app-eselect/eselect-vi/eselect-vi-1.1.7-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+inherit eutils
+
+DESCRIPTION="Manages the /usr/bin/vi symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/vi.eselect-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.6"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-prefix.patch"
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${WORKDIR}/vi.eselect-${PV}" vi.eselect || die
+}
diff --git a/app-eselect/eselect-vi/eselect-vi-1.1.8.ebuild b/app-eselect/eselect-vi/eselect-vi-1.1.8.ebuild
new file mode 100644
index 00000000000..f8810737103
--- /dev/null
+++ b/app-eselect/eselect-vi/eselect-vi-1.1.8.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages the /usr/bin/vi symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~yngwin/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.6"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins vi.eselect || die
+}
diff --git a/app-eselect/eselect-vi/eselect-vi-1.1.9.ebuild b/app-eselect/eselect-vi/eselect-vi-1.1.9.ebuild
new file mode 100644
index 00000000000..f8810737103
--- /dev/null
+++ b/app-eselect/eselect-vi/eselect-vi-1.1.9.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages the /usr/bin/vi symlink"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~yngwin/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=">=app-admin/eselect-1.0.6"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins vi.eselect || die
+}
diff --git a/app-eselect/eselect-vi/files/eselect-vi-1.1.7-prefix.patch b/app-eselect/eselect-vi/files/eselect-vi-1.1.7-prefix.patch
new file mode 100644
index 00000000000..447e1fa5638
--- /dev/null
+++ b/app-eselect/eselect-vi/files/eselect-vi-1.1.7-prefix.patch
@@ -0,0 +1,136 @@
+--- vi.eselect-1.1.7.orig 2010-04-24 16:16:14.000000000 +0200
++++ vi.eselect-1.1.7 2010-04-24 16:20:02.000000000 +0200
+@@ -12,13 +12,13 @@
+ find_targets() {
+ local f
+ for f in \
+- "${ROOT}"/usr/bin/vim \
+- "${ROOT}"/usr/bin/nvi \
+- "${ROOT}"/usr/bin/elvis \
+- "${ROOT}"/usr/bin/vile \
+- "${ROOT}"/usr/bin/gvim \
+- "${ROOT}"/usr/bin/xvile \
+- "${ROOT}"/bin/busybox \
++ "${EROOT}"/usr/bin/vim \
++ "${EROOT}"/usr/bin/nvi \
++ "${EROOT}"/usr/bin/elvis \
++ "${EROOT}"/usr/bin/vile \
++ "${EROOT}"/usr/bin/gvim \
++ "${EROOT}"/usr/bin/xvile \
++ "${EROOT}"/bin/busybox \
+ ; do
+ if [[ -f "${f}" ]] ; then
+ echo $(basename "${f}" )
+@@ -28,8 +28,8 @@
+
+ # try to remove the vi, ex, view and man vi symlinks
+ remove_symlinks() {
+- rm -f "${ROOT}"/usr/bin/{vi,ex,view} &>/dev/null && \
+- rm -f "${ROOT}"/usr/share/man/man1/{vi,ex,view}.1{,.gz,.bz2,.lzma} &>/dev/null
++ rm -f "${EROOT}"/usr/bin/{vi,ex,view} &>/dev/null && \
++ rm -f "${EROOT}"/usr/share/man/man1/{vi,ex,view}.1{,.gz,.bz2,.lzma} &>/dev/null
+ }
+
+ # set a man page symlink
+@@ -37,7 +37,7 @@
+ local target="${1}" link_name="${2}" x extension
+
+ for x in ".1" ".1.bz2" ".1.gz" ".1.lzma" ; do
+- if [[ -e /usr/share/man/man1/${target}${x} ]] ; then
++ if [[ -e ${EROOT}/usr/share/man/man1/${target}${x} ]] ; then
+ extension="${x}"
+ break
+ fi
+@@ -49,7 +49,7 @@
+ fi
+
+ ln -s "${target}${extension}" \
+- "${ROOT}/usr/share/man/man1/${link_name}${extension}"
++ "${EROOT}/usr/share/man/man1/${link_name}${extension}"
+ }
+
+ # set the vi, ex, view, and man vi symlinks
+@@ -62,9 +62,9 @@
+
+ local dir
+ if [[ ${target} == "busybox" ]]; then
+- dir="${ROOT}/bin"
++ dir="${EROOT}/bin"
+ else
+- dir="${ROOT}/usr/bin"
++ dir="${EROOT}/usr/bin"
+ fi
+
+ if [[ -f "${dir}/${target}" ]] ; then
+@@ -76,12 +76,12 @@
+ set_man_symlink "${target}" "view"
+
+ # it's not okay if these fail
+- target=$(relative_name "${dir}/${target}" "${ROOT}/usr/bin")
+- ln -s "${target}" "${ROOT}/usr/bin/vi" \
++ target=$(relative_name "${dir}/${target}" "${EROOT}/usr/bin")
++ ln -s "${target}" "${EROOT}/usr/bin/vi" \
+ || die "Couldn't set ${target} /usr/bin/vi symlink"
+- ln -s "${target}" "${ROOT}/usr/bin/ex" \
++ ln -s "${target}" "${EROOT}/usr/bin/ex" \
+ || die "Couldn't set ${target} /usr/bin/ex symlink"
+- ln -s "${target}" "${ROOT}/usr/bin/view" \
++ ln -s "${target}" "${EROOT}/usr/bin/view" \
+ || die "Couldn't set ${target} /usr/bin/view symlink"
+ else
+ die -q "Target \"${1}\" doesn't appear to be valid!"
+@@ -98,9 +98,9 @@
+ [[ -z "${@}" ]] || die -q "Too many parameters"
+
+ write_list_start "Current vi implementation:"
+- if [[ -L "${ROOT}/usr/bin/vi" ]] ; then
+- write_kv_list_entry "$(basename $(canonicalise ${ROOT}/usr/bin/vi ) )" ""
+- elif [[ -e "${ROOT}/usr/bin/vi" ]] ; then
++ if [[ -L "${EROOT}/usr/bin/vi" ]] ; then
++ write_kv_list_entry "$(basename $(canonicalise ${EROOT}/usr/bin/vi ) )" ""
++ elif [[ -e "${EROOT}/usr/bin/vi" ]] ; then
+ write_kv_list_entry "(not a symlink)" ""
+ else
+ write_kv_list_entry "(unset)" ""
+@@ -120,7 +120,7 @@
+ targets=( $(find_targets ) )
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ [[ ${targets[i]} = \
+- $(basename "$(canonicalise "${ROOT}/usr/bin/vi")") ]] \
++ $(basename "$(canonicalise "${EROOT}/usr/bin/vi")") ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_list_start "Available vi implementations:"
+@@ -148,15 +148,15 @@
+ elif [[ -n "${2}" ]] ; then
+ die -q "Too many parameters"
+
+- elif [[ -L "${ROOT}/usr/bin/vi" ]] ; then
++ elif [[ -L "${EROOT}/usr/bin/vi" ]] ; then
+ if ! remove_symlinks ; then
+ die -q "Can't remove existing provider"
+ elif ! set_symlinks "${1}" ; then
+ die -q "Can't set new provider"
+ fi
+
+- elif [[ -e "${ROOT}/usr/bin/vi" ]] ; then
+- die -q "Sorry, ${ROOT}/usr/bin/vi confuses me"
++ elif [[ -e "${EROOT}/usr/bin/vi" ]] ; then
++ die -q "Sorry, ${EROOT}/usr/bin/vi confuses me"
+
+ else
+ set_symlinks "${1}" || die -q "Can't set a new provider"
+@@ -177,11 +177,11 @@
+ [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
+ die -q "Usage error"
+
+- if [[ -L "${ROOT}/usr/bin/vi" ]] ; then
++ if [[ -L "${EROOT}/usr/bin/vi" ]] ; then
+ [[ ${1} == "--if-unset" ]] && return
+ remove_symlinks || die -q "Can't remove existing link"
+ fi
+- if [[ -e "${ROOT}/usr/bin/vi" ]] ; then
++ if [[ -e "${EROOT}/usr/bin/vi" ]] ; then
+ die -q "Can't set a new provider"
+ elif ! [[ -z $(find_targets ) ]] ; then
+ set_symlinks 1 || die -q "Can't set a new provider"
diff --git a/app-eselect/eselect-vi/metadata.xml b/app-eselect/eselect-vi/metadata.xml
new file mode 100644
index 00000000000..c7b901f7dca
--- /dev/null
+++ b/app-eselect/eselect-vi/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>vim</herd>
+</pkgmetadata>
+
diff --git a/app-eselect/eselect-wxwidgets/Manifest b/app-eselect/eselect-wxwidgets/Manifest
new file mode 100644
index 00000000000..d56ccdbe8a3
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/Manifest
@@ -0,0 +1,3 @@
+DIST eselect-wxwidgets-20140423.tar.xz 6792 SHA256 e97d5734f4b0e314abdaa1a9ee148cdafed74e1cdc036e01e6ac74599736e1bb SHA512 0d83e0b6979803c8a02c20ac33a42c91fd8d350c095e26704a80c1913309f0e7d741cc466ab22e0a6ce4773deab21ca80756299a12a83d441ded968531003d0e WHIRLPOOL 31108a15a0f3774c7a5959de946c741b758d818f1dbf09f96d633e354c086863684f431a6ac59a63f559f0c65482f790a95c7dc431dc91b7b48ec4e4a2c9c730
+DIST wxwidgets.eselect-1.4.bz2 2375 SHA256 630d2a79e3c1a124a124a81db1213e1c036a5c49a5bf06a328b164d997725386 SHA512 02cd876c040d2ea2589527530e7c570c94a1ca7cae867488ec5cf4509d21386d89cb128364aff80d64d0aa29e334209f02abb6e7baf890ff9bb0c22f606fc8fd WHIRLPOOL a3d0c88cba4634d1b390f912b3bc1750f2ef06cf2d5865c3a5c958538f7fc0c664edb59693340d5c7a1e3cb4e49737400a932c14841a77ec19bff07860d99514
+DIST wxwidgets.eselect-20131230.bz2 2228 SHA256 7c3c87931b6887cf1e6c486b17fb71fefcdf6fcf8089fe09d7f70ae17e3e0722 SHA512 0406cfbc5c39d2e65b22d0e8d70ea08ea9e348342d7bc1725dd8655fdedd883fd29e14263ad95737523d6285e081ef4558c4dec00c4a9ea9b9ef01ce537978e5 WHIRLPOOL 60a0ea44ddf1faab42a63f3717aa9d1234713eb40897025b7de8ad7f64f3a77c3399f084eb3a67e236b42963d7d793f0026ea17c10ffd3328fa109218a3deebe
diff --git a/app-eselect/eselect-wxwidgets/eselect-wxwidgets-1.4.ebuild b/app-eselect/eselect-wxwidgets/eselect-wxwidgets-1.4.ebuild
new file mode 100644
index 00000000000..66404bab8d3
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/eselect-wxwidgets-1.4.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+WXWRAP_VER=1.3
+WXESELECT_VER=1.4
+
+DESCRIPTION="Eselect module and wrappers for wxWidgets"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="mirror://gentoo/wxwidgets.eselect-${WXESELECT_VER}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+DEPEND="!<=x11-libs/wxGTK-2.6.4.0-r2"
+RDEPEND=">=app-admin/eselect-1.2.3"
+
+S=${WORKDIR}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${S}"/wxwidgets.eselect-${WXESELECT_VER} wxwidgets.eselect \
+ || die "Failed installing module"
+
+ insinto /usr/share/aclocal
+ newins "${FILESDIR}"/wxwin.m4-2.9 wxwin.m4 || die "Failed installing m4"
+
+ newbin "${FILESDIR}"/wx-config-${WXWRAP_VER} wx-config \
+ || die "Failed installing wx-config"
+ newbin "${FILESDIR}"/wxrc-${WXWRAP_VER} wxrc \
+ || die "Failed installing wxrc"
+
+ keepdir /var/lib/wxwidgets
+ keepdir /usr/share/bakefile/presets
+}
+
+pkg_postinst() {
+ if [[ ! -e ${ROOT}/var/lib/wxwidgets/current ]]; then
+ echo 'WXCONFIG="none"' > "${ROOT}"/var/lib/wxwidgets/current
+ fi
+
+ echo
+ elog "By default the system wxWidgets profile is set to \"none\"."
+ elog
+ elog "It is unnecessary to change this unless you are doing development work"
+ elog "with wxGTK outside of portage. The package manager ignores the profile"
+ elog "setting altogether."
+ echo
+}
diff --git a/app-eselect/eselect-wxwidgets/eselect-wxwidgets-20131230.ebuild b/app-eselect/eselect-wxwidgets/eselect-wxwidgets-20131230.ebuild
new file mode 100644
index 00000000000..7fec10fe03d
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/eselect-wxwidgets-20131230.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+WXWRAP_VER=1.3
+
+DESCRIPTION="Eselect module and wrappers for wxWidgets"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~dirtyepic/dist/wxwidgets.eselect-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
+S="${WORKDIR}"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${S}"/wxwidgets.eselect-${PV} wxwidgets.eselect
+
+ insinto /usr/share/aclocal
+ newins "${FILESDIR}"/wxwin.m4-3.0 wxwin.m4
+
+ newbin "${FILESDIR}"/wx-config-${WXWRAP_VER} wx-config
+ newbin "${FILESDIR}"/wxrc-${WXWRAP_VER} wxrc
+
+ keepdir /var/lib/wxwidgets
+ keepdir /usr/share/bakefile/presets
+}
+
+pkg_postinst() {
+ if [[ ! -e ${ROOT}/var/lib/wxwidgets/current ]]; then
+ echo 'WXCONFIG="none"' > "${ROOT}"/var/lib/wxwidgets/current
+ fi
+
+ echo
+ elog "This eselect module only controls the version of wxGTK used when"
+ elog "building packages outside of portage. If you are not doing development"
+ elog "with wxWidgets or bakefile you will never need to use it."
+ echo
+}
diff --git a/app-eselect/eselect-wxwidgets/eselect-wxwidgets-20140423.ebuild b/app-eselect/eselect-wxwidgets/eselect-wxwidgets-20140423.ebuild
new file mode 100644
index 00000000000..19bf8624a6c
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/eselect-wxwidgets-20140423.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit multilib
+
+WXWRAP_VER=1.4
+
+DESCRIPTION="Eselect module and wrappers for wxWidgets"
+HOMEPAGE="http://www.gentoo.org"
+SRC_URI="http://dev.gentoo.org/~ottxor/dist/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE=""
+
+RDEPEND="app-admin/eselect"
+
+src_prepare() {
+ cp "${FILESDIR}"/{wx-config,wxrc}-${WXWRAP_VER} . || die
+ sed \
+ -e "/^LIBDIR=/s:lib:$(get_libdir):" \
+ -e "/^EPREFIX=/s:'':'${EPREFIX}':" \
+ -i {wx-config,wxrc}-${WXWRAP_VER} || die
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins wxwidgets.eselect
+
+ insinto /usr/share/aclocal
+ newins "${FILESDIR}"/wxwin.m4-3.0 wxwin.m4
+
+ newbin wx-config-${WXWRAP_VER} wx-config
+ newbin wxrc-${WXWRAP_VER} wxrc
+
+ keepdir /var/lib/wxwidgets
+ keepdir /usr/share/bakefile/presets
+}
+
+pkg_postinst() {
+ if [[ ! -e ${EROOT}/var/lib/wxwidgets/current ]]; then
+ echo 'WXCONFIG="none"' > "${EROOT}"/var/lib/wxwidgets/current
+ fi
+
+ echo
+ elog "This eselect module only controls the version of wxGTK used when"
+ elog "building packages outside of portage. If you are not doing development"
+ elog "with wxWidgets or bakefile you will never need to use it."
+ echo
+}
diff --git a/app-eselect/eselect-wxwidgets/files/wx-config-1.3 b/app-eselect/eselect-wxwidgets/files/wx-config-1.3
new file mode 100755
index 00000000000..30481921fb0
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/files/wx-config-1.3
@@ -0,0 +1,38 @@
+#!/bin/sh -
+# $Id$
+#
+# /usr/bin/wx-config
+#
+# a lame wx-config wrapper (bugs to wxwidgets@gentoo.org)
+
+_wxerror() {
+ cat >&2 <<- EOF
+ An error occurred while calling wx-config:
+
+ ${1}
+
+ Please use \`eselect wxwidgets\` to select an available profile and try again.
+ EOF
+ exit 1
+}
+
+if [ -n "${WX_ECLASS_CONFIG}" ]; then
+ ${WX_ECLASS_CONFIG} "$@"
+ exit 0
+else
+ if [ -e /var/lib/wxwidgets/current ]; then
+ . /var/lib/wxwidgets/current
+ else
+ _wxerror "Cannot find the wxWidgets profile configuration ( /var/lib/wxwidgets/current )"
+ fi
+
+ [ -z "${WXCONFIG}" -o "${WXCONFIG}" = none ] && _wxerror "No profile currently selected"
+
+ if [ -x /usr/lib/wx/config/${WXCONFIG} ]; then
+ /usr/lib/wx/config/${WXCONFIG} "$@"
+ else
+ _wxerror "Cannot find wxWidgets profile ( ${WXCONFIG} )"
+ fi
+ exit 0
+fi
+
diff --git a/app-eselect/eselect-wxwidgets/files/wx-config-1.4 b/app-eselect/eselect-wxwidgets/files/wx-config-1.4
new file mode 100755
index 00000000000..27f085ff247
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/files/wx-config-1.4
@@ -0,0 +1,41 @@
+#!/bin/sh -
+# $Id$
+#
+# /usr/bin/wx-config
+#
+# a lame wx-config wrapper (bugs to wxwidgets@gentoo.org)
+
+EPREFIX=''
+LIBDIR="lib"
+
+_wxerror() {
+ cat >&2 <<- EOF
+ An error occurred while calling wx-config:
+
+ ${1}
+
+ Please use \`eselect wxwidgets\` to select an available profile and try again.
+ EOF
+ exit 1
+}
+
+if [ -n "${WX_ECLASS_CONFIG}" ]; then
+ ${WX_ECLASS_CONFIG} "$@"
+ exit 0
+else
+ if [ -e "${EPREFIX}"/var/lib/wxwidgets/current ]; then
+ . "${EPREFIX}"/var/lib/wxwidgets/current
+ else
+ _wxerror "Cannot find the wxWidgets profile configuration ( ${EPREFIX}/var/lib/wxwidgets/current )"
+ fi
+
+ [ -z "${WXCONFIG}" -o "${WXCONFIG}" = none ] && _wxerror "No profile currently selected"
+
+ if [ -x "${EPREFIX}/usr/${LIBDIR}/wx/config/${WXCONFIG}" ]; then
+ "${EPREFIX}/usr/${LIBDIR}/wx/config/${WXCONFIG}" "$@"
+ else
+ _wxerror "Cannot find wxWidgets profile ( ${WXCONFIG} )"
+ fi
+ exit 0
+fi
+
diff --git a/app-eselect/eselect-wxwidgets/files/wxrc-1.3 b/app-eselect/eselect-wxwidgets/files/wxrc-1.3
new file mode 100755
index 00000000000..543013bbd82
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/files/wxrc-1.3
@@ -0,0 +1,38 @@
+#!/bin/sh -
+# $Id$
+#
+# /usr/bin/wxrc
+#
+# a lame wxrc wrapper (bugs to wxwidgets@gentoo.org)
+
+_wxerror() {
+ cat >&2 <<- EOF
+ An error occurred while calling wxrc:
+
+ ${1}
+
+ Please use \`eselect wxwidgets\` to select an available profile and try again.
+ EOF
+ exit 1
+}
+
+if [ -n "${WX_ECLASS_CONFIG}" ]; then
+ $(${WX_ECLASS_CONFIG} --utility=wxrc) "$@"
+ exit 0
+else
+ if [ -e /var/lib/wxwidgets/current ]; then
+ . /var/lib/wxwidgets/current
+ else
+ _wxerror "Cannot find the wxWidgets profile configuration ( /var/lib/wxwidgets/current )"
+ fi
+
+ [ -z "${WXCONFIG}" -o "${WXCONFIG}" = none ] && _wxerror "No profile currently selected"
+
+ if [ -x /usr/lib/wx/config/${WXCONFIG} ]; then
+ $(/usr/lib/wx/config/${WXCONFIG} --utility=wxrc) "$@"
+ else
+ _wxerror "Cannot find wxWidgets profile ( ${WXCONFIG} )"
+ fi
+ exit 0
+fi
+
diff --git a/app-eselect/eselect-wxwidgets/files/wxrc-1.4 b/app-eselect/eselect-wxwidgets/files/wxrc-1.4
new file mode 100755
index 00000000000..ba010961a3f
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/files/wxrc-1.4
@@ -0,0 +1,41 @@
+#!/bin/sh -
+# $Id$
+#
+# /usr/bin/wxrc
+#
+# a lame wxrc wrapper (bugs to wxwidgets@gentoo.org)
+
+EPREFIX=''
+LIBDIR="lib"
+
+_wxerror() {
+ cat >&2 <<- EOF
+ An error occurred while calling wxrc:
+
+ ${1}
+
+ Please use \`eselect wxwidgets\` to select an available profile and try again.
+ EOF
+ exit 1
+}
+
+if [ -n "${WX_ECLASS_CONFIG}" ]; then
+ $(${WX_ECLASS_CONFIG} --utility=wxrc) "$@"
+ exit 0
+else
+ if [ -e "${EPREFIX}"/var/lib/wxwidgets/current ]; then
+ . "${EPREFIX}"/var/lib/wxwidgets/current
+ else
+ _wxerror "Cannot find the wxWidgets profile configuration ( ${EPREFIX}/var/lib/wxwidgets/current )"
+ fi
+
+ [ -z "${WXCONFIG}" -o "${WXCONFIG}" = none ] && _wxerror "No profile currently selected"
+
+ if [ -x "${EPREFIX}/usr/${LIBDIR}/wx/config/${WXCONFIG}" ]; then
+ $("${EPREFIX}/usr/${LIBDIR}/wx/config/${WXCONFIG}" --utility=wxrc) "$@"
+ else
+ _wxerror "Cannot find wxWidgets profile ( ${WXCONFIG} )"
+ fi
+ exit 0
+fi
+
diff --git a/app-eselect/eselect-wxwidgets/files/wxwin.m4-2.9 b/app-eselect/eselect-wxwidgets/files/wxwin.m4-2.9
new file mode 100644
index 00000000000..4c01ae41bc4
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/files/wxwin.m4-2.9
@@ -0,0 +1,1063 @@
+dnl ---------------------------------------------------------------------------
+dnl Author: wxWidgets development team,
+dnl Francesco Montorsi,
+dnl Bob McCown (Mac-testing)
+dnl Creation date: 24/11/2001
+dnl RCS-ID: $Id$
+dnl ---------------------------------------------------------------------------
+
+dnl ===========================================================================
+dnl Table of Contents of this macro file:
+dnl -------------------------------------
+dnl
+dnl SECTION A: wxWidgets main macros
+dnl - WX_CONFIG_OPTIONS
+dnl - WX_CONFIG_CHECK
+dnl - WXRC_CHECK
+dnl - WX_STANDARD_OPTIONS
+dnl - WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
+dnl - WX_DETECT_STANDARD_OPTION_VALUES
+dnl
+dnl SECTION B: wxWidgets-related utilities
+dnl - WX_LIKE_LIBNAME
+dnl - WX_ARG_ENABLE_YESNOAUTO
+dnl - WX_ARG_WITH_YESNOAUTO
+dnl
+dnl SECTION C: messages to the user
+dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG
+dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN
+dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_END
+dnl - WX_BOOLOPT_SUMMARY
+dnl
+dnl The special "WX_DEBUG_CONFIGURE" variable can be set to 1 to enable extra
+dnl debug output on stdout from these macros.
+dnl ===========================================================================
+
+
+dnl ---------------------------------------------------------------------------
+dnl Macros for wxWidgets detection. Typically used in configure.in as:
+dnl
+dnl AC_ARG_ENABLE(...)
+dnl AC_ARG_WITH(...)
+dnl ...
+dnl WX_CONFIG_OPTIONS
+dnl ...
+dnl ...
+dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1])
+dnl if test "$wxWin" != 1; then
+dnl AC_MSG_ERROR([
+dnl wxWidgets must be installed on your system
+dnl but wx-config script couldn't be found.
+dnl
+dnl Please check that wx-config is in path, the directory
+dnl where wxWidgets libraries are installed (returned by
+dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
+dnl equivalent variable and wxWidgets version is 2.3.4 or above.
+dnl ])
+dnl fi
+dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
+dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
+dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
+dnl
+dnl LIBS="$LIBS $WX_LIBS"
+dnl
+dnl If you want to support standard --enable-debug/unicode/shared options, you
+dnl may do the following:
+dnl
+dnl ...
+dnl AC_CANONICAL_SYSTEM
+dnl
+dnl # define configure options
+dnl WX_CONFIG_OPTIONS
+dnl WX_STANDARD_OPTIONS([debug,unicode,shared,toolkit,wxshared])
+dnl
+dnl # basic configure checks
+dnl ...
+dnl
+dnl # we want to always have DEBUG==WX_DEBUG and UNICODE==WX_UNICODE
+dnl WX_DEBUG=$DEBUG
+dnl WX_UNICODE=$UNICODE
+dnl
+dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
+dnl WX_CONFIG_CHECK([2.8.0], [wxWin=1],,[html,core,net,base],[$WXCONFIG_FLAGS])
+dnl WX_DETECT_STANDARD_OPTION_VALUES
+dnl
+dnl # write the output files
+dnl AC_CONFIG_FILES([Makefile ...])
+dnl AC_OUTPUT
+dnl
+dnl # optional: just to show a message to the user
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG
+dnl
+dnl ---------------------------------------------------------------------------
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_CONFIG_OPTIONS
+dnl
+dnl adds support for --wx-prefix, --wx-exec-prefix, --with-wxdir and
+dnl --wx-config command line options
+dnl ---------------------------------------------------------------------------
+
+AC_DEFUN([WX_CONFIG_OPTIONS],
+[
+ AC_ARG_WITH(wxdir,
+ [ --with-wxdir=PATH Use uninstalled version of wxWidgets in PATH],
+ [ wx_config_name="$withval/wx-config"
+ wx_config_args="--inplace"])
+ AC_ARG_WITH(wx-config,
+ [ --with-wx-config=CONFIG wx-config script to use (optional)],
+ wx_config_name="$withval" )
+ AC_ARG_WITH(wx-prefix,
+ [ --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional)],
+ wx_config_prefix="$withval", wx_config_prefix="")
+ AC_ARG_WITH(wx-exec-prefix,
+ [ --with-wx-exec-prefix=PREFIX
+ Exec prefix where wxWidgets is installed (optional)],
+ wx_config_exec_prefix="$withval", wx_config_exec_prefix="")
+])
+
+dnl Helper macro for checking if wx version is at least $1.$2.$3, set's
+dnl wx_ver_ok=yes if it is:
+AC_DEFUN([_WX_PRIVATE_CHECK_VERSION],
+[
+ wx_ver_ok=""
+ if test "x$WX_VERSION" != x ; then
+ if test $wx_config_major_version -gt $1; then
+ wx_ver_ok=yes
+ else
+ if test $wx_config_major_version -eq $1; then
+ if test $wx_config_minor_version -gt $2; then
+ wx_ver_ok=yes
+ else
+ if test $wx_config_minor_version -eq $2; then
+ if test $wx_config_micro_version -ge $3; then
+ wx_ver_ok=yes
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_CONFIG_CHECK(VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
+dnl [, WX-LIBS [, ADDITIONAL-WX-CONFIG-FLAGS]]]])
+dnl
+dnl Test for wxWidgets, and define WX_C*FLAGS, WX_LIBS and WX_LIBS_STATIC
+dnl (the latter is for static linking against wxWidgets). Set WX_CONFIG_NAME
+dnl environment variable to override the default name of the wx-config script
+dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this
+dnl case the macro won't even waste time on tests for its existence.
+dnl
+dnl Optional WX-LIBS argument contains comma- or space-separated list of
+dnl wxWidgets libraries to link against. If it is not specified then WX_LIBS
+dnl and WX_LIBS_STATIC will contain flags to link with all of the core
+dnl wxWidgets libraries.
+dnl
+dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config
+dnl invocation command in present. It can be used to fine-tune lookup of
+dnl best wxWidgets build available.
+dnl
+dnl Example use:
+dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1], [wxWin=0], [html,core,net]
+dnl [--unicode --debug])
+dnl ---------------------------------------------------------------------------
+
+dnl
+dnl Get the cflags and libraries from the wx-config script
+dnl
+AC_DEFUN([WX_CONFIG_CHECK],
+[
+ dnl do we have wx-config name: it can be wx-config or wxd-config or ...
+ if test x${WX_CONFIG_NAME+set} != xset ; then
+ WX_CONFIG_NAME=wx-config
+ fi
+
+ if test "x$wx_config_name" != x ; then
+ WX_CONFIG_NAME="$wx_config_name"
+ fi
+
+ dnl deal with optional prefixes
+ if test x$wx_config_exec_prefix != x ; then
+ wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix"
+ WX_LOOKUP_PATH="$wx_config_exec_prefix/bin"
+ fi
+ if test x$wx_config_prefix != x ; then
+ wx_config_args="$wx_config_args --prefix=$wx_config_prefix"
+ WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin"
+ fi
+ if test "$cross_compiling" = "yes"; then
+ wx_config_args="$wx_config_args --host=$host_alias"
+ fi
+
+ dnl don't search the PATH if WX_CONFIG_NAME is absolute filename
+ if test -x "$WX_CONFIG_NAME" ; then
+ AC_MSG_CHECKING(for wx-config)
+ WX_CONFIG_PATH="$WX_CONFIG_NAME"
+ AC_MSG_RESULT($WX_CONFIG_PATH)
+ else
+ AC_PATH_PROG(WX_CONFIG_PATH, $WX_CONFIG_NAME, no, "$WX_LOOKUP_PATH:$PATH")
+ fi
+
+ if test "$WX_CONFIG_PATH" != "no" ; then
+ WX_VERSION=""
+
+ min_wx_version=ifelse([$1], ,2.2.1,$1)
+ if test -z "$5" ; then
+ AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version])
+ else
+ AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version ($5)])
+ fi
+
+ dnl don't add the libraries ($4) to this variable as this would result in
+ dnl an error when it's used with --version below
+ WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $5"
+
+ WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null`
+ wx_config_major_version=`echo $WX_VERSION | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+ wx_config_minor_version=`echo $WX_VERSION | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+ wx_config_micro_version=`echo $WX_VERSION | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+
+ wx_requested_major_version=`echo $min_wx_version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+ wx_requested_minor_version=`echo $min_wx_version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+ wx_requested_micro_version=`echo $min_wx_version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+
+ _WX_PRIVATE_CHECK_VERSION([$wx_requested_major_version],
+ [$wx_requested_minor_version],
+ [$wx_requested_micro_version])
+
+ if test -n "$wx_ver_ok"; then
+ AC_MSG_RESULT(yes (version $WX_VERSION))
+ WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs $4`
+
+ dnl is this even still appropriate? --static is a real option now
+ dnl and WX_CONFIG_WITH_ARGS is likely to contain it if that is
+ dnl what the user actually wants, making this redundant at best.
+ dnl For now keep it in case anyone actually used it in the past.
+ AC_MSG_CHECKING([for wxWidgets static library])
+ WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs $4 2>/dev/null`
+ if test "x$WX_LIBS_STATIC" = "x"; then
+ AC_MSG_RESULT(no)
+ else
+ AC_MSG_RESULT(yes)
+ fi
+
+ dnl starting with version 2.2.6 wx-config has --cppflags argument
+ wx_has_cppflags=""
+ if test $wx_config_major_version -gt 2; then
+ wx_has_cppflags=yes
+ else
+ if test $wx_config_major_version -eq 2; then
+ if test $wx_config_minor_version -gt 2; then
+ wx_has_cppflags=yes
+ else
+ if test $wx_config_minor_version -eq 2; then
+ if test $wx_config_micro_version -ge 6; then
+ wx_has_cppflags=yes
+ fi
+ fi
+ fi
+ fi
+ fi
+
+ dnl starting with version 2.7.0 wx-config has --rescomp option
+ wx_has_rescomp=""
+ if test $wx_config_major_version -gt 2; then
+ wx_has_rescomp=yes
+ else
+ if test $wx_config_major_version -eq 2; then
+ if test $wx_config_minor_version -ge 7; then
+ wx_has_rescomp=yes
+ fi
+ fi
+ fi
+ if test "x$wx_has_rescomp" = x ; then
+ dnl cannot give any useful info for resource compiler
+ WX_RESCOMP=
+ else
+ WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp`
+ fi
+
+ if test "x$wx_has_cppflags" = x ; then
+ dnl no choice but to define all flags like CFLAGS
+ WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4`
+ WX_CPPFLAGS=$WX_CFLAGS
+ WX_CXXFLAGS=$WX_CFLAGS
+
+ WX_CFLAGS_ONLY=$WX_CFLAGS
+ WX_CXXFLAGS_ONLY=$WX_CFLAGS
+ else
+ dnl we have CPPFLAGS included in CFLAGS included in CXXFLAGS
+ WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags $4`
+ WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags $4`
+ WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4`
+
+ WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"`
+ WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"`
+ fi
+
+ ifelse([$2], , :, [$2])
+
+ else
+
+ if test "x$WX_VERSION" = x; then
+ dnl no wx-config at all
+ AC_MSG_RESULT(no)
+ else
+ AC_MSG_RESULT(no (version $WX_VERSION is not new enough))
+ fi
+
+ WX_CFLAGS=""
+ WX_CPPFLAGS=""
+ WX_CXXFLAGS=""
+ WX_LIBS=""
+ WX_LIBS_STATIC=""
+ WX_RESCOMP=""
+
+ if test ! -z "$5"; then
+
+ wx_error_message="
+ The configuration you asked for $PACKAGE_NAME requires a wxWidgets
+ build with the following settings:
+ $5
+ but such build is not available.
+
+ To see the wxWidgets builds available on this system, please use
+ 'wx-config --list' command. To use the default build, returned by
+ 'wx-config --selected-config', use the options with their 'auto'
+ default values."
+
+ fi
+
+ wx_error_message="
+ The requested wxWidgets build couldn't be found.
+ $wx_error_message
+
+ If you still get this error, then check that 'wx-config' is
+ in path, the directory where wxWidgets libraries are installed
+ (returned by 'wx-config --libs' command) is in LD_LIBRARY_PATH
+ or equivalent variable and wxWidgets version is $1 or above."
+
+ ifelse([$3], , AC_MSG_ERROR([$wx_error_message]), [$3])
+
+ fi
+ else
+
+ WX_CFLAGS=""
+ WX_CPPFLAGS=""
+ WX_CXXFLAGS=""
+ WX_LIBS=""
+ WX_LIBS_STATIC=""
+ WX_RESCOMP=""
+
+ ifelse([$3], , :, [$3])
+
+ fi
+
+ AC_SUBST(WX_CPPFLAGS)
+ AC_SUBST(WX_CFLAGS)
+ AC_SUBST(WX_CXXFLAGS)
+ AC_SUBST(WX_CFLAGS_ONLY)
+ AC_SUBST(WX_CXXFLAGS_ONLY)
+ AC_SUBST(WX_LIBS)
+ AC_SUBST(WX_LIBS_STATIC)
+ AC_SUBST(WX_VERSION)
+ AC_SUBST(WX_RESCOMP)
+
+ dnl need to export also WX_VERSION_MINOR and WX_VERSION_MAJOR symbols
+ dnl to support wxpresets bakefiles (we export also WX_VERSION_MICRO for completeness):
+ WX_VERSION_MAJOR="$wx_config_major_version"
+ WX_VERSION_MINOR="$wx_config_minor_version"
+ WX_VERSION_MICRO="$wx_config_micro_version"
+ AC_SUBST(WX_VERSION_MAJOR)
+ AC_SUBST(WX_VERSION_MINOR)
+ AC_SUBST(WX_VERSION_MICRO)
+])
+
+dnl ---------------------------------------------------------------------------
+dnl Get information on the wxrc program for making C++, Python and xrs
+dnl resource files.
+dnl
+dnl AC_ARG_ENABLE(...)
+dnl AC_ARG_WITH(...)
+dnl ...
+dnl WX_CONFIG_OPTIONS
+dnl ...
+dnl WX_CONFIG_CHECK(2.6.0, wxWin=1)
+dnl if test "$wxWin" != 1; then
+dnl AC_MSG_ERROR([
+dnl wxWidgets must be installed on your system
+dnl but wx-config script couldn't be found.
+dnl
+dnl Please check that wx-config is in path, the directory
+dnl where wxWidgets libraries are installed (returned by
+dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
+dnl equivalent variable and wxWidgets version is 2.6.0 or above.
+dnl ])
+dnl fi
+dnl
+dnl WXRC_CHECK([HAVE_WXRC=1], [HAVE_WXRC=0])
+dnl if test "x$HAVE_WXRC" != x1; then
+dnl AC_MSG_ERROR([
+dnl The wxrc program was not installed or not found.
+dnl
+dnl Please check the wxWidgets installation.
+dnl ])
+dnl fi
+dnl
+dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
+dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
+dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
+dnl
+dnl LDFLAGS="$LDFLAGS $WX_LIBS"
+dnl ---------------------------------------------------------------------------
+
+dnl ---------------------------------------------------------------------------
+dnl WXRC_CHECK([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+dnl
+dnl Test for wxWidgets' wxrc program for creating either C++, Python or XRS
+dnl resources. The variable WXRC will be set and substituted in the configure
+dnl script and Makefiles.
+dnl
+dnl Example use:
+dnl WXRC_CHECK([wxrc=1], [wxrc=0])
+dnl ---------------------------------------------------------------------------
+
+dnl
+dnl wxrc program from the wx-config script
+dnl
+AC_DEFUN([WXRC_CHECK],
+[
+ AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler])
+
+ if test "x$WX_CONFIG_NAME" = x; then
+ AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.])
+ else
+
+ AC_MSG_CHECKING([for wxrc])
+
+ if test "x$WXRC" = x ; then
+ dnl wx-config --utility is a new addition to wxWidgets:
+ _WX_PRIVATE_CHECK_VERSION(2,5,3)
+ if test -n "$wx_ver_ok"; then
+ WXRC=`$WX_CONFIG_WITH_ARGS --utility=wxrc`
+ fi
+ fi
+
+ if test "x$WXRC" = x ; then
+ AC_MSG_RESULT([not found])
+ ifelse([$2], , :, [$2])
+ else
+ AC_MSG_RESULT([$WXRC])
+ ifelse([$1], , :, [$1])
+ fi
+
+ AC_SUBST(WXRC)
+ fi
+])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_LIKE_LIBNAME([output-var] [prefix], [name])
+dnl
+dnl Sets the "output-var" variable to the name of a library named with same
+dnl wxWidgets rule.
+dnl E.g. for output-var=='lib', name=='test', prefix='mine', sets
+dnl the $lib variable to:
+dnl 'mine_gtk2ud_test-2.8'
+dnl if WX_PORT=gtk2, WX_UNICODE=1, WX_DEBUG=1 and WX_RELEASE=28
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_LIKE_LIBNAME],
+ [
+ wx_temp="$2""_""$WX_PORT"
+
+ dnl add the [u][d] string
+ if test "$WX_UNICODE" = "1"; then
+ wx_temp="$wx_temp""u"
+ fi
+ if test "$WX_DEBUG" = "1"; then
+ wx_temp="$wx_temp""d"
+ fi
+
+ dnl complete the name of the lib
+ wx_temp="$wx_temp""_""$3""-$WX_VERSION_MAJOR.$WX_VERSION_MINOR"
+
+ dnl save it in the user's variable
+ $1=$wx_temp
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_ARG_ENABLE_YESNOAUTO/WX_ARG_WITH_YESNOAUTO
+dnl
+dnl Two little custom macros which define the ENABLE/WITH configure arguments.
+dnl Macro arguments:
+dnl $1 = the name of the --enable / --with feature
+dnl $2 = the name of the variable associated
+dnl $3 = the description of that feature
+dnl $4 = the default value for that feature
+dnl $5 = additional action to do in case option is given with "yes" value
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_ARG_ENABLE_YESNOAUTO],
+ [AC_ARG_ENABLE($1,
+ AC_HELP_STRING([--enable-$1], [$3 (default is $4)]),
+ [], [enableval="$4"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --enable-$1 option])
+ if test "$enableval" = "yes" ; then
+ AC_MSG_RESULT([yes])
+ $2=1
+ $5
+ elif test "$enableval" = "no" ; then
+ AC_MSG_RESULT([no])
+ $2=0
+ elif test "$enableval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ $2="auto"
+ else
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: yes, no, auto)
+ ])
+ fi
+ ])
+
+AC_DEFUN([WX_ARG_WITH_YESNOAUTO],
+ [AC_ARG_WITH($1,
+ AC_HELP_STRING([--with-$1], [$3 (default is $4)]),
+ [], [withval="$4"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --with-$1 option])
+ if test "$withval" = "yes" ; then
+ AC_MSG_RESULT([yes])
+ $2=1
+ $5
+ dnl NB: by default we don't allow --with-$1=no option
+ dnl since it does not make much sense !
+ elif test "$6" = "1" -a "$withval" = "no" ; then
+ AC_MSG_RESULT([no])
+ $2=0
+ elif test "$withval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ $2="auto"
+ else
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: yes, auto)
+ ])
+ fi
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_STANDARD_OPTIONS([options-to-add])
+dnl
+dnl Adds to the configure script one or more of the following options:
+dnl --enable-[debug|unicode|shared|wxshared|wxdebug]
+dnl --with-[gtk|msw|motif|x11|mac|mgl|dfb]
+dnl --with-wxversion
+dnl Then checks for their presence and eventually set the DEBUG, UNICODE, SHARED,
+dnl PORT, WX_SHARED, WX_DEBUG, variables to one of the "yes", "no", "auto" values.
+dnl
+dnl Note that e.g. UNICODE != WX_UNICODE; the first is the value of the
+dnl --enable-unicode option (in boolean format) while the second indicates
+dnl if wxWidgets was built in Unicode mode (and still is in boolean format).
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_STANDARD_OPTIONS],
+ [
+
+ dnl the following lines will expand to WX_ARG_ENABLE_YESNOAUTO calls if and only if
+ dnl the $1 argument contains respectively the debug,unicode or shared options.
+
+ dnl be careful here not to set debug flag if only "wxdebug" was specified
+ ifelse(regexp([$1], [\bdebug]), [-1],,
+ [WX_ARG_ENABLE_YESNOAUTO([debug], [DEBUG], [Build in debug mode], [auto])])
+
+ ifelse(index([$1], [unicode]), [-1],,
+ [WX_ARG_ENABLE_YESNOAUTO([unicode], [UNICODE], [Build in Unicode mode], [auto])])
+
+ ifelse(regexp([$1], [\bshared]), [-1],,
+ [WX_ARG_ENABLE_YESNOAUTO([shared], [SHARED], [Build as shared library], [auto])])
+
+ dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-toolkit since it's an option
+ dnl which must be able to accept the auto|gtk1|gtk2|msw|... values
+ ifelse(index([$1], [toolkit]), [-1],,
+ [
+ AC_ARG_WITH([toolkit],
+ AC_HELP_STRING([--with-toolkit],
+ [Build against a specific wxWidgets toolkit (default is auto)]),
+ [], [withval="auto"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --with-toolkit option])
+ if test "$withval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ TOOLKIT="auto"
+ else
+ TOOLKIT="$withval"
+
+ dnl PORT must be one of the allowed values
+ if test "$TOOLKIT" != "gtk1" -a "$TOOLKIT" != "gtk2" -a \
+ "$TOOLKIT" != "msw" -a "$TOOLKIT" != "motif" -a \
+ "$TOOLKIT" != "x11" -a "$TOOLKIT" != "mac" -a \
+ "$TOOLKIT" != "mgl" -a "$TOOLKIT" != "dfb" ; then
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: auto, gtk1, gtk2, msw, motif, x11, mac, mgl, dfb)
+ ])
+ fi
+
+ AC_MSG_RESULT([$TOOLKIT])
+ fi
+ ])
+
+ dnl ****** IMPORTANT *******
+ dnl Unlike for the UNICODE setting, you can build your program in
+ dnl shared mode against a static build of wxWidgets. Thus we have the
+ dnl following option which allows these mixtures. E.g.
+ dnl
+ dnl ./configure --disable-shared --with-wxshared
+ dnl
+ dnl will build your library in static mode against the first available
+ dnl shared build of wxWidgets.
+ dnl
+ dnl Note that's not possible to do the viceversa:
+ dnl
+ dnl ./configure --enable-shared --without-wxshared
+ dnl
+ dnl Doing so you would try to build your library in shared mode against a static
+ dnl build of wxWidgets. This is not possible (you would mix PIC and non PIC code) !
+ dnl A check for this combination of options is in WX_DETECT_STANDARD_OPTION_VALUES
+ dnl (where we know what 'auto' should be expanded to).
+ dnl
+ dnl If you try to build something in ANSI mode against a UNICODE build
+ dnl of wxWidgets or in RELEASE mode against a DEBUG build of wxWidgets,
+ dnl then at best you'll get ton of linking errors !
+ dnl ************************
+
+ ifelse(index([$1], [wxshared]), [-1],,
+ [
+ WX_ARG_WITH_YESNOAUTO(
+ [wxshared], [WX_SHARED],
+ [Force building against a shared build of wxWidgets, even if --disable-shared is given],
+ [auto], [], [1])
+ ])
+
+ dnl Just like for SHARED and WX_SHARED it may happen that some adventurous
+ dnl peoples will want to mix a wxWidgets release build with a debug build of
+ dnl his app/lib. So, we have both DEBUG and WX_DEBUG variables.
+ ifelse(index([$1], [wxdebug]), [-1],,
+ [
+ WX_ARG_WITH_YESNOAUTO(
+ [wxdebug], [WX_DEBUG],
+ [Force building against a debug build of wxWidgets, even if --disable-debug is given],
+ [auto], [], [1])
+ ])
+
+ dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-wxversion since it's an option
+ dnl which accepts the "auto|2.6|2.7|2.8|2.9|3.0" etc etc values
+ ifelse(index([$1], [wxversion]), [-1],,
+ [
+ AC_ARG_WITH([wxversion],
+ AC_HELP_STRING([--with-wxversion],
+ [Build against a specific version of wxWidgets (default is auto)]),
+ [], [withval="auto"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --with-wxversion option])
+ if test "$withval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ WX_RELEASE="auto"
+ else
+
+ wx_requested_major_version=`echo $withval | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\1/'`
+ wx_requested_minor_version=`echo $withval | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\2/'`
+
+ dnl both vars above must be exactly 1 digit
+ if test "${#wx_requested_major_version}" != "1" -o \
+ "${#wx_requested_minor_version}" != "1" ; then
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: auto, 2.6, 2.7, 2.8, 2.9, 3.0)
+ ])
+ fi
+
+ WX_RELEASE="$wx_requested_major_version"".""$wx_requested_minor_version"
+ AC_MSG_RESULT([$WX_RELEASE])
+ fi
+ ])
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] DEBUG: $DEBUG, WX_DEBUG: $WX_DEBUG"
+ echo "[[dbg]] UNICODE: $UNICODE, WX_UNICODE: $WX_UNICODE"
+ echo "[[dbg]] SHARED: $SHARED, WX_SHARED: $WX_SHARED"
+ echo "[[dbg]] TOOLKIT: $TOOLKIT, WX_TOOLKIT: $WX_TOOLKIT"
+ echo "[[dbg]] VERSION: $VERSION, WX_RELEASE: $WX_RELEASE"
+ fi
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
+dnl
+dnl Sets the WXCONFIG_FLAGS string using the SHARED,DEBUG,UNICODE variable values
+dnl which are different from "auto".
+dnl Thus this macro needs to be called only once all options have been set.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS],
+ [
+ if test "$WX_SHARED" = "1" ; then
+ WXCONFIG_FLAGS="--static=no "
+ elif test "$WX_SHARED" = "0" ; then
+ WXCONFIG_FLAGS="--static=yes "
+ fi
+
+ if test "$WX_DEBUG" = "1" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=yes "
+ elif test "$WX_DEBUG" = "0" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=no "
+ fi
+
+ dnl The user should have set WX_UNICODE=UNICODE
+ if test "$WX_UNICODE" = "1" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=yes "
+ elif test "$WX_UNICODE" = "0" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=no "
+ fi
+
+ if test "$TOOLKIT" != "auto" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--toolkit=$TOOLKIT "
+ fi
+
+ if test "$WX_RELEASE" != "auto" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_RELEASE "
+ fi
+
+ dnl strip out the last space of the string
+ WXCONFIG_FLAGS=${WXCONFIG_FLAGS% }
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] WXCONFIG_FLAGS: $WXCONFIG_FLAGS"
+ fi
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl _WX_SELECTEDCONFIG_CHECKFOR([RESULTVAR], [STRING], [MSG]
+dnl [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+dnl
+dnl Outputs the given MSG. Then searches the given STRING in the wxWidgets
+dnl additional CPP flags and put the result of the search in WX_$RESULTVAR
+dnl also adding the "yes" or "no" message result to MSG.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([_WX_SELECTEDCONFIG_CHECKFOR],
+ [
+ if test "$$1" = "auto" ; then
+
+ dnl The user does not have particular preferences for this option;
+ dnl so we will detect the wxWidgets relative build setting and use it
+ AC_MSG_CHECKING([$3])
+
+ dnl set WX_$1 variable to 1 if the $WX_SELECTEDCONFIG contains the $2
+ dnl string or to 0 otherwise.
+ dnl NOTE: 'expr match STRING REGEXP' cannot be used since on Mac it
+ dnl doesn't work; we use 'expr STRING : REGEXP' instead
+ WX_$1=$(expr "$WX_SELECTEDCONFIG" : ".*$2.*")
+
+ if test "$WX_$1" != "0"; then
+ WX_$1=1
+ AC_MSG_RESULT([yes])
+ ifelse([$4], , :, [$4])
+ else
+ WX_$1=0
+ AC_MSG_RESULT([no])
+ ifelse([$5], , :, [$5])
+ fi
+ else
+
+ dnl Use the setting given by the user
+ WX_$1=$$1
+ fi
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_DETECT_STANDARD_OPTION_VALUES
+dnl
+dnl Detects the values of the following variables:
+dnl 1) WX_RELEASE
+dnl 2) WX_UNICODE
+dnl 3) WX_DEBUG
+dnl 4) WX_SHARED (and also WX_STATIC)
+dnl 5) WX_PORT
+dnl from the previously selected wxWidgets build; this macro in fact must be
+dnl called *after* calling the WX_CONFIG_CHECK macro.
+dnl
+dnl Note that the WX_VERSION_MAJOR, WX_VERSION_MINOR symbols are already set
+dnl by WX_CONFIG_CHECK macro
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES],
+ [
+ dnl IMPORTANT: WX_VERSION contains all three major.minor.micro digits,
+ dnl while WX_RELEASE only the major.minor ones.
+ WX_RELEASE="$WX_VERSION_MAJOR""$WX_VERSION_MINOR"
+ if test $WX_RELEASE -lt 26 ; then
+
+ AC_MSG_ERROR([
+ Cannot detect the wxWidgets configuration for the selected wxWidgets build
+ since its version is $WX_VERSION < 2.6.0; please install a newer
+ version of wxWidgets.
+ ])
+ fi
+
+ dnl The wx-config we are using understands the "--selected_config"
+ dnl option which returns an easy-parseable string !
+ WX_SELECTEDCONFIG=$($WX_CONFIG_WITH_ARGS --selected_config)
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] Using wx-config --selected-config"
+ echo "[[dbg]] WX_SELECTEDCONFIG: $WX_SELECTEDCONFIG"
+ fi
+
+
+ dnl we could test directly for WX_SHARED with a line like:
+ dnl _WX_SELECTEDCONFIG_CHECKFOR([SHARED], [shared],
+ dnl [if wxWidgets was built in SHARED mode])
+ dnl but wx-config --selected-config DOES NOT outputs the 'shared'
+ dnl word when wx was built in shared mode; it rather outputs the
+ dnl 'static' word when built in static mode.
+ if test $WX_SHARED = "1"; then
+ STATIC=0
+ elif test $WX_SHARED = "0"; then
+ STATIC=1
+ elif test $WX_SHARED = "auto"; then
+ STATIC="auto"
+ fi
+
+ dnl Now set the WX_UNICODE, WX_DEBUG, WX_STATIC variables
+ _WX_SELECTEDCONFIG_CHECKFOR([UNICODE], [unicode],
+ [if wxWidgets was built with UNICODE enabled])
+ _WX_SELECTEDCONFIG_CHECKFOR([DEBUG], [debug],
+ [if wxWidgets was built in DEBUG mode])
+ _WX_SELECTEDCONFIG_CHECKFOR([STATIC], [static],
+ [if wxWidgets was built in STATIC mode])
+
+ dnl init WX_SHARED from WX_STATIC
+ if test "$WX_STATIC" != "0"; then
+ WX_SHARED=0
+ else
+ WX_SHARED=1
+ fi
+
+ AC_SUBST(WX_UNICODE)
+ AC_SUBST(WX_DEBUG)
+ AC_SUBST(WX_SHARED)
+
+ dnl detect the WX_PORT to use
+ if test "$TOOLKIT" = "auto" ; then
+
+ dnl The user does not have particular preferences for this option;
+ dnl so we will detect the wxWidgets relative build setting and use it
+ AC_MSG_CHECKING([which wxWidgets toolkit was selected])
+
+ WX_GTKPORT1=$(expr "$WX_SELECTEDCONFIG" : ".*gtk1.*")
+ WX_GTKPORT2=$(expr "$WX_SELECTEDCONFIG" : ".*gtk2.*")
+ WX_MSWPORT=$(expr "$WX_SELECTEDCONFIG" : ".*msw.*")
+ WX_MOTIFPORT=$(expr "$WX_SELECTEDCONFIG" : ".*motif.*")
+ WX_OSXCOCOAPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_cocoa.*")
+ WX_OSXCARBONPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_carbon.*")
+ WX_X11PORT=$(expr "$WX_SELECTEDCONFIG" : ".*x11.*")
+ WX_MGLPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mgl.*")
+ WX_DFBPORT=$(expr "$WX_SELECTEDCONFIG" : ".*dfb.*")
+
+ WX_PORT="unknown"
+ if test "$WX_GTKPORT1" != "0"; then WX_PORT="gtk1"; fi
+ if test "$WX_GTKPORT2" != "0"; then WX_PORT="gtk2"; fi
+ if test "$WX_MSWPORT" != "0"; then WX_PORT="msw"; fi
+ if test "$WX_MOTIFPORT" != "0"; then WX_PORT="motif"; fi
+ if test "$WX_OSXCOCOAPORT" != "0"; then WX_PORT="osx_cocoa"; fi
+ if test "$WX_OSXCARBONPORT" != "0"; then WX_PORT="osx_carbon"; fi
+ if test "$WX_X11PORT" != "0"; then WX_PORT="x11"; fi
+ if test "$WX_MGLPORT" != "0"; then WX_PORT="mgl"; fi
+ if test "$WX_DFBPORT" != "0"; then WX_PORT="dfb"; fi
+
+ dnl NOTE: backward-compatible check for wx2.8; in wx2.9 the mac
+ dnl ports are called 'osx_cocoa' and 'osx_carbon' (see above)
+ WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*")
+ if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi
+
+ dnl check at least one of the WX_*PORT has been set !
+
+ if test "$WX_PORT" = "unknown" ; then
+ AC_MSG_ERROR([
+ Cannot detect the currently installed wxWidgets port !
+ Please check your 'wx-config --cxxflags'...
+ ])
+ fi
+
+ AC_MSG_RESULT([$WX_PORT])
+ else
+
+ dnl Use the setting given by the user
+ if test -z "$TOOLKIT" ; then
+ WX_PORT=$TOOLKIT
+ else
+ dnl try with PORT
+ WX_PORT=$PORT
+ fi
+ fi
+
+ AC_SUBST(WX_PORT)
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] Values of all WX_* options after final detection:"
+ echo "[[dbg]] WX_DEBUG: $WX_DEBUG"
+ echo "[[dbg]] WX_UNICODE: $WX_UNICODE"
+ echo "[[dbg]] WX_SHARED: $WX_SHARED"
+ echo "[[dbg]] WX_RELEASE: $WX_RELEASE"
+ echo "[[dbg]] WX_PORT: $WX_PORT"
+ fi
+
+ dnl Avoid problem described in the WX_STANDARD_OPTIONS which happens when
+ dnl the user gives the options:
+ dnl ./configure --enable-shared --without-wxshared
+ dnl or just do
+ dnl ./configure --enable-shared
+ dnl but there is only a static build of wxWidgets available.
+ if test "$WX_SHARED" = "0" -a "$SHARED" = "1"; then
+ AC_MSG_ERROR([
+ Cannot build shared library against a static build of wxWidgets !
+ This error happens because the wxWidgets build which was selected
+ has been detected as static while you asked to build $PACKAGE_NAME
+ as shared library and this is not possible.
+ Use the '--disable-shared' option to build $PACKAGE_NAME
+ as static library or '--with-wxshared' to use wxWidgets as shared library.
+ ])
+ fi
+
+ dnl now we can finally update the DEBUG,UNICODE,SHARED options
+ dnl to their final values if they were set to 'auto'
+ if test "$DEBUG" = "auto"; then
+ DEBUG=$WX_DEBUG
+ fi
+ if test "$UNICODE" = "auto"; then
+ UNICODE=$WX_UNICODE
+ fi
+ if test "$SHARED" = "auto"; then
+ SHARED=$WX_SHARED
+ fi
+ if test "$TOOLKIT" = "auto"; then
+ TOOLKIT=$WX_PORT
+ fi
+
+ dnl in case the user needs a BUILD=debug/release var...
+ if test "$DEBUG" = "1"; then
+ BUILD="debug"
+ elif test "$DEBUG" = "0" -o "$DEBUG" = ""; then
+ BUILD="release"
+ fi
+
+ dnl respect the DEBUG variable adding the optimize/debug flags
+ dnl NOTE: the CXXFLAGS are merged together with the CPPFLAGS so we
+ dnl don't need to set them, too
+ if test "$DEBUG" = "1"; then
+ CXXFLAGS="$CXXFLAGS -g -O0"
+ CFLAGS="$CFLAGS -g -O0"
+ else
+ CXXFLAGS="$CXXFLAGS -O2"
+ CFLAGS="$CFLAGS -O2"
+ fi
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_BOOLOPT_SUMMARY([name of the boolean variable to show summary for],
+dnl [what to print when var is 1],
+dnl [what to print when var is 0])
+dnl
+dnl Prints $2 when variable $1 == 1 and prints $3 when variable $1 == 0.
+dnl This macro mainly exists just to make configure.ac scripts more readable.
+dnl
+dnl NOTE: you need to use the [" my message"] syntax for 2nd and 3rd arguments
+dnl if you want that m4 avoid to throw away the spaces prefixed to the
+dnl argument value.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_BOOLOPT_SUMMARY],
+ [
+ if test "x$$1" = "x1" ; then
+ echo $2
+ elif test "x$$1" = "x0" ; then
+ echo $3
+ else
+ echo "$1 is $$1"
+ fi
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG
+dnl
+dnl Shows a summary message to the user about the WX_* variable contents.
+dnl This macro is used typically at the end of the configure script.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG],
+ [
+ echo
+ echo " The wxWidgets build which will be used by $PACKAGE_NAME $PACKAGE_VERSION"
+ echo " has the following settings:"
+ WX_BOOLOPT_SUMMARY([WX_DEBUG], [" - DEBUG build"], [" - RELEASE build"])
+ WX_BOOLOPT_SUMMARY([WX_UNICODE], [" - UNICODE mode"], [" - ANSI mode"])
+ WX_BOOLOPT_SUMMARY([WX_SHARED], [" - SHARED mode"], [" - STATIC mode"])
+ echo " - VERSION: $WX_VERSION"
+ echo " - PORT: $WX_PORT"
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN, WX_STANDARD_OPTIONS_SUMMARY_MSG_END
+dnl
+dnl Like WX_STANDARD_OPTIONS_SUMMARY_MSG macro but these two macros also gives info
+dnl about the configuration of the package which used the wxpresets.
+dnl
+dnl Typical usage:
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN
+dnl echo " - Package setting 1: $SETTING1"
+dnl echo " - Package setting 2: $SETTING1"
+dnl ...
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_END
+dnl
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN],
+ [
+ echo
+ echo " ----------------------------------------------------------------"
+ echo " Configuration for $PACKAGE_NAME $PACKAGE_VERSION successfully completed."
+ echo " Summary of main configuration settings for $PACKAGE_NAME:"
+ WX_BOOLOPT_SUMMARY([DEBUG], [" - DEBUG build"], [" - RELEASE build"])
+ WX_BOOLOPT_SUMMARY([UNICODE], [" - UNICODE mode"], [" - ANSI mode"])
+ WX_BOOLOPT_SUMMARY([SHARED], [" - SHARED mode"], [" - STATIC mode"])
+ ])
+
+AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_END],
+ [
+ WX_STANDARD_OPTIONS_SUMMARY_MSG
+ echo
+ echo " Now, just run make."
+ echo " ----------------------------------------------------------------"
+ echo
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl Deprecated macro wrappers
+dnl ---------------------------------------------------------------------------
+
+AC_DEFUN([AM_OPTIONS_WXCONFIG], [WX_CONFIG_OPTIONS])
+AC_DEFUN([AM_PATH_WXCONFIG], [
+ WX_CONFIG_CHECK([$1],[$2],[$3],[$4],[$5])
+])
+
+
diff --git a/app-eselect/eselect-wxwidgets/files/wxwin.m4-3.0 b/app-eselect/eselect-wxwidgets/files/wxwin.m4-3.0
new file mode 100644
index 00000000000..f8e5b704a29
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/files/wxwin.m4-3.0
@@ -0,0 +1,1059 @@
+dnl ---------------------------------------------------------------------------
+dnl Author: wxWidgets development team,
+dnl Francesco Montorsi,
+dnl Bob McCown (Mac-testing)
+dnl Creation date: 24/11/2001
+dnl ---------------------------------------------------------------------------
+
+dnl ===========================================================================
+dnl Table of Contents of this macro file:
+dnl -------------------------------------
+dnl
+dnl SECTION A: wxWidgets main macros
+dnl - WX_CONFIG_OPTIONS
+dnl - WX_CONFIG_CHECK
+dnl - WXRC_CHECK
+dnl - WX_STANDARD_OPTIONS
+dnl - WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
+dnl - WX_DETECT_STANDARD_OPTION_VALUES
+dnl
+dnl SECTION B: wxWidgets-related utilities
+dnl - WX_LIKE_LIBNAME
+dnl - WX_ARG_ENABLE_YESNOAUTO
+dnl - WX_ARG_WITH_YESNOAUTO
+dnl
+dnl SECTION C: messages to the user
+dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG
+dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN
+dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_END
+dnl - WX_BOOLOPT_SUMMARY
+dnl
+dnl The special "WX_DEBUG_CONFIGURE" variable can be set to 1 to enable extra
+dnl debug output on stdout from these macros.
+dnl ===========================================================================
+
+
+dnl ---------------------------------------------------------------------------
+dnl Macros for wxWidgets detection. Typically used in configure.in as:
+dnl
+dnl AC_ARG_ENABLE(...)
+dnl AC_ARG_WITH(...)
+dnl ...
+dnl WX_CONFIG_OPTIONS
+dnl ...
+dnl ...
+dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1])
+dnl if test "$wxWin" != 1; then
+dnl AC_MSG_ERROR([
+dnl wxWidgets must be installed on your system
+dnl but wx-config script couldn't be found.
+dnl
+dnl Please check that wx-config is in path, the directory
+dnl where wxWidgets libraries are installed (returned by
+dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
+dnl equivalent variable and wxWidgets version is 2.3.4 or above.
+dnl ])
+dnl fi
+dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
+dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
+dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
+dnl
+dnl LIBS="$LIBS $WX_LIBS"
+dnl
+dnl If you want to support standard --enable-debug/unicode/shared options, you
+dnl may do the following:
+dnl
+dnl ...
+dnl AC_CANONICAL_SYSTEM
+dnl
+dnl # define configure options
+dnl WX_CONFIG_OPTIONS
+dnl WX_STANDARD_OPTIONS([debug,unicode,shared,toolkit,wxshared])
+dnl
+dnl # basic configure checks
+dnl ...
+dnl
+dnl # we want to always have DEBUG==WX_DEBUG and UNICODE==WX_UNICODE
+dnl WX_DEBUG=$DEBUG
+dnl WX_UNICODE=$UNICODE
+dnl
+dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
+dnl WX_CONFIG_CHECK([2.8.0], [wxWin=1],,[html,core,net,base],[$WXCONFIG_FLAGS])
+dnl WX_DETECT_STANDARD_OPTION_VALUES
+dnl
+dnl # write the output files
+dnl AC_CONFIG_FILES([Makefile ...])
+dnl AC_OUTPUT
+dnl
+dnl # optional: just to show a message to the user
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG
+dnl
+dnl ---------------------------------------------------------------------------
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_CONFIG_OPTIONS
+dnl
+dnl adds support for --wx-prefix, --wx-exec-prefix, --with-wxdir and
+dnl --wx-config command line options
+dnl ---------------------------------------------------------------------------
+
+AC_DEFUN([WX_CONFIG_OPTIONS],
+[
+ AC_ARG_WITH(wxdir,
+ [ --with-wxdir=PATH Use uninstalled version of wxWidgets in PATH],
+ [ wx_config_name="$withval/wx-config"
+ wx_config_args="--inplace"])
+ AC_ARG_WITH(wx-config,
+ [ --with-wx-config=CONFIG wx-config script to use (optional)],
+ wx_config_name="$withval" )
+ AC_ARG_WITH(wx-prefix,
+ [ --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional)],
+ wx_config_prefix="$withval", wx_config_prefix="")
+ AC_ARG_WITH(wx-exec-prefix,
+ [ --with-wx-exec-prefix=PREFIX
+ Exec prefix where wxWidgets is installed (optional)],
+ wx_config_exec_prefix="$withval", wx_config_exec_prefix="")
+])
+
+dnl Helper macro for checking if wx version is at least $1.$2.$3, set's
+dnl wx_ver_ok=yes if it is:
+AC_DEFUN([_WX_PRIVATE_CHECK_VERSION],
+[
+ wx_ver_ok=""
+ if test "x$WX_VERSION" != x ; then
+ if test $wx_config_major_version -gt $1; then
+ wx_ver_ok=yes
+ else
+ if test $wx_config_major_version -eq $1; then
+ if test $wx_config_minor_version -gt $2; then
+ wx_ver_ok=yes
+ else
+ if test $wx_config_minor_version -eq $2; then
+ if test $wx_config_micro_version -ge $3; then
+ wx_ver_ok=yes
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_CONFIG_CHECK(VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
+dnl [, WX-LIBS [, ADDITIONAL-WX-CONFIG-FLAGS]]]])
+dnl
+dnl Test for wxWidgets, and define WX_C*FLAGS, WX_LIBS and WX_LIBS_STATIC
+dnl (the latter is for static linking against wxWidgets). Set WX_CONFIG_NAME
+dnl environment variable to override the default name of the wx-config script
+dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this
+dnl case the macro won't even waste time on tests for its existence.
+dnl
+dnl Optional WX-LIBS argument contains comma- or space-separated list of
+dnl wxWidgets libraries to link against. If it is not specified then WX_LIBS
+dnl and WX_LIBS_STATIC will contain flags to link with all of the core
+dnl wxWidgets libraries.
+dnl
+dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config
+dnl invocation command in present. It can be used to fine-tune lookup of
+dnl best wxWidgets build available.
+dnl
+dnl Example use:
+dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1], [wxWin=0], [html,core,net]
+dnl [--unicode --debug])
+dnl ---------------------------------------------------------------------------
+
+dnl
+dnl Get the cflags and libraries from the wx-config script
+dnl
+AC_DEFUN([WX_CONFIG_CHECK],
+[
+ dnl do we have wx-config name: it can be wx-config or wxd-config or ...
+ if test x${WX_CONFIG_NAME+set} != xset ; then
+ WX_CONFIG_NAME=wx-config
+ fi
+
+ if test "x$wx_config_name" != x ; then
+ WX_CONFIG_NAME="$wx_config_name"
+ fi
+
+ dnl deal with optional prefixes
+ if test x$wx_config_exec_prefix != x ; then
+ wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix"
+ WX_LOOKUP_PATH="$wx_config_exec_prefix/bin"
+ fi
+ if test x$wx_config_prefix != x ; then
+ wx_config_args="$wx_config_args --prefix=$wx_config_prefix"
+ WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin"
+ fi
+ if test "$cross_compiling" = "yes"; then
+ wx_config_args="$wx_config_args --host=$host_alias"
+ fi
+
+ dnl don't search the PATH if WX_CONFIG_NAME is absolute filename
+ if test -x "$WX_CONFIG_NAME" ; then
+ AC_MSG_CHECKING(for wx-config)
+ WX_CONFIG_PATH="$WX_CONFIG_NAME"
+ AC_MSG_RESULT($WX_CONFIG_PATH)
+ else
+ AC_PATH_PROG(WX_CONFIG_PATH, $WX_CONFIG_NAME, no, "$WX_LOOKUP_PATH:$PATH")
+ fi
+
+ if test "$WX_CONFIG_PATH" != "no" ; then
+ WX_VERSION=""
+
+ min_wx_version=ifelse([$1], ,2.2.1,$1)
+ if test -z "$5" ; then
+ AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version])
+ else
+ AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version ($5)])
+ fi
+
+ dnl don't add the libraries ($4) to this variable as this would result in
+ dnl an error when it's used with --version below
+ WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $5"
+
+ WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null`
+ wx_config_major_version=`echo $WX_VERSION | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+ wx_config_minor_version=`echo $WX_VERSION | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+ wx_config_micro_version=`echo $WX_VERSION | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+
+ wx_requested_major_version=`echo $min_wx_version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+ wx_requested_minor_version=`echo $min_wx_version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+ wx_requested_micro_version=`echo $min_wx_version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+
+ _WX_PRIVATE_CHECK_VERSION([$wx_requested_major_version],
+ [$wx_requested_minor_version],
+ [$wx_requested_micro_version])
+
+ if test -n "$wx_ver_ok"; then
+ AC_MSG_RESULT(yes (version $WX_VERSION))
+ WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs $4`
+
+ dnl is this even still appropriate? --static is a real option now
+ dnl and WX_CONFIG_WITH_ARGS is likely to contain it if that is
+ dnl what the user actually wants, making this redundant at best.
+ dnl For now keep it in case anyone actually used it in the past.
+ AC_MSG_CHECKING([for wxWidgets static library])
+ WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs $4 2>/dev/null`
+ if test "x$WX_LIBS_STATIC" = "x"; then
+ AC_MSG_RESULT(no)
+ else
+ AC_MSG_RESULT(yes)
+ fi
+
+ dnl starting with version 2.2.6 wx-config has --cppflags argument
+ wx_has_cppflags=""
+ if test $wx_config_major_version -gt 2; then
+ wx_has_cppflags=yes
+ else
+ if test $wx_config_major_version -eq 2; then
+ if test $wx_config_minor_version -gt 2; then
+ wx_has_cppflags=yes
+ else
+ if test $wx_config_minor_version -eq 2; then
+ if test $wx_config_micro_version -ge 6; then
+ wx_has_cppflags=yes
+ fi
+ fi
+ fi
+ fi
+ fi
+
+ dnl starting with version 2.7.0 wx-config has --rescomp option
+ wx_has_rescomp=""
+ if test $wx_config_major_version -gt 2; then
+ wx_has_rescomp=yes
+ else
+ if test $wx_config_major_version -eq 2; then
+ if test $wx_config_minor_version -ge 7; then
+ wx_has_rescomp=yes
+ fi
+ fi
+ fi
+ if test "x$wx_has_rescomp" = x ; then
+ dnl cannot give any useful info for resource compiler
+ WX_RESCOMP=
+ else
+ WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp`
+ fi
+
+ if test "x$wx_has_cppflags" = x ; then
+ dnl no choice but to define all flags like CFLAGS
+ WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4`
+ WX_CPPFLAGS=$WX_CFLAGS
+ WX_CXXFLAGS=$WX_CFLAGS
+
+ WX_CFLAGS_ONLY=$WX_CFLAGS
+ WX_CXXFLAGS_ONLY=$WX_CFLAGS
+ else
+ dnl we have CPPFLAGS included in CFLAGS included in CXXFLAGS
+ WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags $4`
+ WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags $4`
+ WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4`
+
+ WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"`
+ WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"`
+ fi
+
+ ifelse([$2], , :, [$2])
+
+ else
+
+ if test "x$WX_VERSION" = x; then
+ dnl no wx-config at all
+ AC_MSG_RESULT(no)
+ else
+ AC_MSG_RESULT(no (version $WX_VERSION is not new enough))
+ fi
+
+ WX_CFLAGS=""
+ WX_CPPFLAGS=""
+ WX_CXXFLAGS=""
+ WX_LIBS=""
+ WX_LIBS_STATIC=""
+ WX_RESCOMP=""
+
+ if test ! -z "$5"; then
+
+ wx_error_message="
+ The configuration you asked for $PACKAGE_NAME requires a wxWidgets
+ build with the following settings:
+ $5
+ but such build is not available.
+
+ To see the wxWidgets builds available on this system, please use
+ 'wx-config --list' command. To use the default build, returned by
+ 'wx-config --selected-config', use the options with their 'auto'
+ default values."
+
+ fi
+
+ wx_error_message="
+ The requested wxWidgets build couldn't be found.
+ $wx_error_message
+
+ If you still get this error, then check that 'wx-config' is
+ in path, the directory where wxWidgets libraries are installed
+ (returned by 'wx-config --libs' command) is in LD_LIBRARY_PATH
+ or equivalent variable and wxWidgets version is $1 or above."
+
+ ifelse([$3], , AC_MSG_ERROR([$wx_error_message]), [$3])
+
+ fi
+ else
+
+ WX_CFLAGS=""
+ WX_CPPFLAGS=""
+ WX_CXXFLAGS=""
+ WX_LIBS=""
+ WX_LIBS_STATIC=""
+ WX_RESCOMP=""
+
+ ifelse([$3], , :, [$3])
+
+ fi
+
+ AC_SUBST(WX_CPPFLAGS)
+ AC_SUBST(WX_CFLAGS)
+ AC_SUBST(WX_CXXFLAGS)
+ AC_SUBST(WX_CFLAGS_ONLY)
+ AC_SUBST(WX_CXXFLAGS_ONLY)
+ AC_SUBST(WX_LIBS)
+ AC_SUBST(WX_LIBS_STATIC)
+ AC_SUBST(WX_VERSION)
+ AC_SUBST(WX_RESCOMP)
+
+ dnl need to export also WX_VERSION_MINOR and WX_VERSION_MAJOR symbols
+ dnl to support wxpresets bakefiles (we export also WX_VERSION_MICRO for completeness):
+ WX_VERSION_MAJOR="$wx_config_major_version"
+ WX_VERSION_MINOR="$wx_config_minor_version"
+ WX_VERSION_MICRO="$wx_config_micro_version"
+ AC_SUBST(WX_VERSION_MAJOR)
+ AC_SUBST(WX_VERSION_MINOR)
+ AC_SUBST(WX_VERSION_MICRO)
+])
+
+dnl ---------------------------------------------------------------------------
+dnl Get information on the wxrc program for making C++, Python and xrs
+dnl resource files.
+dnl
+dnl AC_ARG_ENABLE(...)
+dnl AC_ARG_WITH(...)
+dnl ...
+dnl WX_CONFIG_OPTIONS
+dnl ...
+dnl WX_CONFIG_CHECK(2.6.0, wxWin=1)
+dnl if test "$wxWin" != 1; then
+dnl AC_MSG_ERROR([
+dnl wxWidgets must be installed on your system
+dnl but wx-config script couldn't be found.
+dnl
+dnl Please check that wx-config is in path, the directory
+dnl where wxWidgets libraries are installed (returned by
+dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
+dnl equivalent variable and wxWidgets version is 2.6.0 or above.
+dnl ])
+dnl fi
+dnl
+dnl WXRC_CHECK([HAVE_WXRC=1], [HAVE_WXRC=0])
+dnl if test "x$HAVE_WXRC" != x1; then
+dnl AC_MSG_ERROR([
+dnl The wxrc program was not installed or not found.
+dnl
+dnl Please check the wxWidgets installation.
+dnl ])
+dnl fi
+dnl
+dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
+dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
+dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
+dnl
+dnl LDFLAGS="$LDFLAGS $WX_LIBS"
+dnl ---------------------------------------------------------------------------
+
+dnl ---------------------------------------------------------------------------
+dnl WXRC_CHECK([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+dnl
+dnl Test for wxWidgets' wxrc program for creating either C++, Python or XRS
+dnl resources. The variable WXRC will be set and substituted in the configure
+dnl script and Makefiles.
+dnl
+dnl Example use:
+dnl WXRC_CHECK([wxrc=1], [wxrc=0])
+dnl ---------------------------------------------------------------------------
+
+dnl
+dnl wxrc program from the wx-config script
+dnl
+AC_DEFUN([WXRC_CHECK],
+[
+ AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler])
+
+ if test "x$WX_CONFIG_NAME" = x; then
+ AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.])
+ else
+
+ AC_MSG_CHECKING([for wxrc])
+
+ if test "x$WXRC" = x ; then
+ dnl wx-config --utility is a new addition to wxWidgets:
+ _WX_PRIVATE_CHECK_VERSION(2,5,3)
+ if test -n "$wx_ver_ok"; then
+ WXRC=`$WX_CONFIG_WITH_ARGS --utility=wxrc`
+ fi
+ fi
+
+ if test "x$WXRC" = x ; then
+ AC_MSG_RESULT([not found])
+ ifelse([$2], , :, [$2])
+ else
+ AC_MSG_RESULT([$WXRC])
+ ifelse([$1], , :, [$1])
+ fi
+
+ AC_SUBST(WXRC)
+ fi
+])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_LIKE_LIBNAME([output-var] [prefix], [name])
+dnl
+dnl Sets the "output-var" variable to the name of a library named with same
+dnl wxWidgets rule.
+dnl E.g. for output-var=='lib', name=='test', prefix='mine', sets
+dnl the $lib variable to:
+dnl 'mine_gtk2ud_test-2.8'
+dnl if WX_PORT=gtk2, WX_UNICODE=1, WX_DEBUG=1 and WX_RELEASE=28
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_LIKE_LIBNAME],
+ [
+ wx_temp="$2""_""$WX_PORT"
+
+ dnl add the [u][d] string
+ if test "$WX_UNICODE" = "1"; then
+ wx_temp="$wx_temp""u"
+ fi
+ if test "$WX_DEBUG" = "1"; then
+ wx_temp="$wx_temp""d"
+ fi
+
+ dnl complete the name of the lib
+ wx_temp="$wx_temp""_""$3""-$WX_VERSION_MAJOR.$WX_VERSION_MINOR"
+
+ dnl save it in the user's variable
+ $1=$wx_temp
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_ARG_ENABLE_YESNOAUTO/WX_ARG_WITH_YESNOAUTO
+dnl
+dnl Two little custom macros which define the ENABLE/WITH configure arguments.
+dnl Macro arguments:
+dnl $1 = the name of the --enable / --with feature
+dnl $2 = the name of the variable associated
+dnl $3 = the description of that feature
+dnl $4 = the default value for that feature
+dnl $5 = additional action to do in case option is given with "yes" value
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_ARG_ENABLE_YESNOAUTO],
+ [AC_ARG_ENABLE($1,
+ AC_HELP_STRING([--enable-$1], [$3 (default is $4)]),
+ [], [enableval="$4"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --enable-$1 option])
+ if test "$enableval" = "yes" ; then
+ AC_MSG_RESULT([yes])
+ $2=1
+ $5
+ elif test "$enableval" = "no" ; then
+ AC_MSG_RESULT([no])
+ $2=0
+ elif test "$enableval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ $2="auto"
+ else
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: yes, no, auto)
+ ])
+ fi
+ ])
+
+AC_DEFUN([WX_ARG_WITH_YESNOAUTO],
+ [AC_ARG_WITH($1,
+ AC_HELP_STRING([--with-$1], [$3 (default is $4)]),
+ [], [withval="$4"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --with-$1 option])
+ if test "$withval" = "yes" ; then
+ AC_MSG_RESULT([yes])
+ $2=1
+ $5
+ dnl NB: by default we don't allow --with-$1=no option
+ dnl since it does not make much sense !
+ elif test "$6" = "1" -a "$withval" = "no" ; then
+ AC_MSG_RESULT([no])
+ $2=0
+ elif test "$withval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ $2="auto"
+ else
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: yes, auto)
+ ])
+ fi
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_STANDARD_OPTIONS([options-to-add])
+dnl
+dnl Adds to the configure script one or more of the following options:
+dnl --enable-[debug|unicode|shared|wxshared|wxdebug]
+dnl --with-[gtk|msw|motif|x11|mac|dfb]
+dnl --with-wxversion
+dnl Then checks for their presence and eventually set the DEBUG, UNICODE, SHARED,
+dnl PORT, WX_SHARED, WX_DEBUG, variables to one of the "yes", "no", "auto" values.
+dnl
+dnl Note that e.g. UNICODE != WX_UNICODE; the first is the value of the
+dnl --enable-unicode option (in boolean format) while the second indicates
+dnl if wxWidgets was built in Unicode mode (and still is in boolean format).
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_STANDARD_OPTIONS],
+ [
+
+ dnl the following lines will expand to WX_ARG_ENABLE_YESNOAUTO calls if and only if
+ dnl the $1 argument contains respectively the debug,unicode or shared options.
+
+ dnl be careful here not to set debug flag if only "wxdebug" was specified
+ ifelse(regexp([$1], [\bdebug]), [-1],,
+ [WX_ARG_ENABLE_YESNOAUTO([debug], [DEBUG], [Build in debug mode], [auto])])
+
+ ifelse(index([$1], [unicode]), [-1],,
+ [WX_ARG_ENABLE_YESNOAUTO([unicode], [UNICODE], [Build in Unicode mode], [auto])])
+
+ ifelse(regexp([$1], [\bshared]), [-1],,
+ [WX_ARG_ENABLE_YESNOAUTO([shared], [SHARED], [Build as shared library], [auto])])
+
+ dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-toolkit since it's an option
+ dnl which must be able to accept the auto|gtk1|gtk2|msw|... values
+ ifelse(index([$1], [toolkit]), [-1],,
+ [
+ AC_ARG_WITH([toolkit],
+ AC_HELP_STRING([--with-toolkit],
+ [Build against a specific wxWidgets toolkit (default is auto)]),
+ [], [withval="auto"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --with-toolkit option])
+ if test "$withval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ TOOLKIT="auto"
+ else
+ TOOLKIT="$withval"
+
+ dnl PORT must be one of the allowed values
+ if test "$TOOLKIT" != "gtk1" -a "$TOOLKIT" != "gtk2" -a \
+ "$TOOLKIT" != "msw" -a "$TOOLKIT" != "motif" -a \
+ "$TOOLKIT" != "osx_carbon" -a "$TOOLKIT" != "osx_cocoa" -a \
+ "$TOOLKIT" != "dfb" -a "$TOOLKIT" != "x11"; then
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: auto, gtk1, gtk2, msw, motif, osx_carbon, osx_cocoa, dfb, x11)
+ ])
+ fi
+
+ AC_MSG_RESULT([$TOOLKIT])
+ fi
+ ])
+
+ dnl ****** IMPORTANT *******
+ dnl Unlike for the UNICODE setting, you can build your program in
+ dnl shared mode against a static build of wxWidgets. Thus we have the
+ dnl following option which allows these mixtures. E.g.
+ dnl
+ dnl ./configure --disable-shared --with-wxshared
+ dnl
+ dnl will build your library in static mode against the first available
+ dnl shared build of wxWidgets.
+ dnl
+ dnl Note that's not possible to do the viceversa:
+ dnl
+ dnl ./configure --enable-shared --without-wxshared
+ dnl
+ dnl Doing so you would try to build your library in shared mode against a static
+ dnl build of wxWidgets. This is not possible (you would mix PIC and non PIC code) !
+ dnl A check for this combination of options is in WX_DETECT_STANDARD_OPTION_VALUES
+ dnl (where we know what 'auto' should be expanded to).
+ dnl
+ dnl If you try to build something in ANSI mode against a UNICODE build
+ dnl of wxWidgets or in RELEASE mode against a DEBUG build of wxWidgets,
+ dnl then at best you'll get ton of linking errors !
+ dnl ************************
+
+ ifelse(index([$1], [wxshared]), [-1],,
+ [
+ WX_ARG_WITH_YESNOAUTO(
+ [wxshared], [WX_SHARED],
+ [Force building against a shared build of wxWidgets, even if --disable-shared is given],
+ [auto], [], [1])
+ ])
+
+ dnl Just like for SHARED and WX_SHARED it may happen that some adventurous
+ dnl peoples will want to mix a wxWidgets release build with a debug build of
+ dnl his app/lib. So, we have both DEBUG and WX_DEBUG variables.
+ ifelse(index([$1], [wxdebug]), [-1],,
+ [
+ WX_ARG_WITH_YESNOAUTO(
+ [wxdebug], [WX_DEBUG],
+ [Force building against a debug build of wxWidgets, even if --disable-debug is given],
+ [auto], [], [1])
+ ])
+
+ dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-wxversion since it's an option
+ dnl which accepts the "auto|2.6|2.7|2.8|2.9|3.0" etc etc values
+ ifelse(index([$1], [wxversion]), [-1],,
+ [
+ AC_ARG_WITH([wxversion],
+ AC_HELP_STRING([--with-wxversion],
+ [Build against a specific version of wxWidgets (default is auto)]),
+ [], [withval="auto"])
+
+ dnl Show a message to the user about this option
+ AC_MSG_CHECKING([for the --with-wxversion option])
+ if test "$withval" = "auto" ; then
+ AC_MSG_RESULT([will be automatically detected])
+ WX_RELEASE="auto"
+ else
+
+ wx_requested_major_version=`echo $withval | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\1/'`
+ wx_requested_minor_version=`echo $withval | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\2/'`
+
+ dnl both vars above must be exactly 1 digit
+ if test "${#wx_requested_major_version}" != "1" -o \
+ "${#wx_requested_minor_version}" != "1" ; then
+ AC_MSG_ERROR([
+ Unrecognized option value (allowed values: auto, 2.6, 2.7, 2.8, 2.9, 3.0)
+ ])
+ fi
+
+ WX_RELEASE="$wx_requested_major_version"".""$wx_requested_minor_version"
+ AC_MSG_RESULT([$WX_RELEASE])
+ fi
+ ])
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] DEBUG: $DEBUG, WX_DEBUG: $WX_DEBUG"
+ echo "[[dbg]] UNICODE: $UNICODE, WX_UNICODE: $WX_UNICODE"
+ echo "[[dbg]] SHARED: $SHARED, WX_SHARED: $WX_SHARED"
+ echo "[[dbg]] TOOLKIT: $TOOLKIT, WX_TOOLKIT: $WX_TOOLKIT"
+ echo "[[dbg]] VERSION: $VERSION, WX_RELEASE: $WX_RELEASE"
+ fi
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
+dnl
+dnl Sets the WXCONFIG_FLAGS string using the SHARED,DEBUG,UNICODE variable values
+dnl which are different from "auto".
+dnl Thus this macro needs to be called only once all options have been set.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS],
+ [
+ if test "$WX_SHARED" = "1" ; then
+ WXCONFIG_FLAGS="--static=no "
+ elif test "$WX_SHARED" = "0" ; then
+ WXCONFIG_FLAGS="--static=yes "
+ fi
+
+ if test "$WX_DEBUG" = "1" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=yes "
+ elif test "$WX_DEBUG" = "0" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=no "
+ fi
+
+ dnl The user should have set WX_UNICODE=UNICODE
+ if test "$WX_UNICODE" = "1" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=yes "
+ elif test "$WX_UNICODE" = "0" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=no "
+ fi
+
+ if test "$TOOLKIT" != "auto" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--toolkit=$TOOLKIT "
+ fi
+
+ if test "$WX_RELEASE" != "auto" ; then
+ WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_RELEASE "
+ fi
+
+ dnl strip out the last space of the string
+ WXCONFIG_FLAGS=${WXCONFIG_FLAGS% }
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] WXCONFIG_FLAGS: $WXCONFIG_FLAGS"
+ fi
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl _WX_SELECTEDCONFIG_CHECKFOR([RESULTVAR], [STRING], [MSG]
+dnl [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+dnl
+dnl Outputs the given MSG. Then searches the given STRING in the wxWidgets
+dnl additional CPP flags and put the result of the search in WX_$RESULTVAR
+dnl also adding the "yes" or "no" message result to MSG.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([_WX_SELECTEDCONFIG_CHECKFOR],
+ [
+ if test "$$1" = "auto" ; then
+
+ dnl The user does not have particular preferences for this option;
+ dnl so we will detect the wxWidgets relative build setting and use it
+ AC_MSG_CHECKING([$3])
+
+ dnl set WX_$1 variable to 1 if the $WX_SELECTEDCONFIG contains the $2
+ dnl string or to 0 otherwise.
+ dnl NOTE: 'expr match STRING REGEXP' cannot be used since on Mac it
+ dnl doesn't work; we use 'expr STRING : REGEXP' instead
+ WX_$1=$(expr "$WX_SELECTEDCONFIG" : ".*$2.*")
+
+ if test "$WX_$1" != "0"; then
+ WX_$1=1
+ AC_MSG_RESULT([yes])
+ ifelse([$4], , :, [$4])
+ else
+ WX_$1=0
+ AC_MSG_RESULT([no])
+ ifelse([$5], , :, [$5])
+ fi
+ else
+
+ dnl Use the setting given by the user
+ WX_$1=$$1
+ fi
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_DETECT_STANDARD_OPTION_VALUES
+dnl
+dnl Detects the values of the following variables:
+dnl 1) WX_RELEASE
+dnl 2) WX_UNICODE
+dnl 3) WX_DEBUG
+dnl 4) WX_SHARED (and also WX_STATIC)
+dnl 5) WX_PORT
+dnl from the previously selected wxWidgets build; this macro in fact must be
+dnl called *after* calling the WX_CONFIG_CHECK macro.
+dnl
+dnl Note that the WX_VERSION_MAJOR, WX_VERSION_MINOR symbols are already set
+dnl by WX_CONFIG_CHECK macro
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES],
+ [
+ dnl IMPORTANT: WX_VERSION contains all three major.minor.micro digits,
+ dnl while WX_RELEASE only the major.minor ones.
+ WX_RELEASE="$WX_VERSION_MAJOR""$WX_VERSION_MINOR"
+ if test $WX_RELEASE -lt 26 ; then
+
+ AC_MSG_ERROR([
+ Cannot detect the wxWidgets configuration for the selected wxWidgets build
+ since its version is $WX_VERSION < 2.6.0; please install a newer
+ version of wxWidgets.
+ ])
+ fi
+
+ dnl The wx-config we are using understands the "--selected_config"
+ dnl option which returns an easy-parseable string !
+ WX_SELECTEDCONFIG=$($WX_CONFIG_WITH_ARGS --selected_config)
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] Using wx-config --selected-config"
+ echo "[[dbg]] WX_SELECTEDCONFIG: $WX_SELECTEDCONFIG"
+ fi
+
+
+ dnl we could test directly for WX_SHARED with a line like:
+ dnl _WX_SELECTEDCONFIG_CHECKFOR([SHARED], [shared],
+ dnl [if wxWidgets was built in SHARED mode])
+ dnl but wx-config --selected-config DOES NOT outputs the 'shared'
+ dnl word when wx was built in shared mode; it rather outputs the
+ dnl 'static' word when built in static mode.
+ if test $WX_SHARED = "1"; then
+ STATIC=0
+ elif test $WX_SHARED = "0"; then
+ STATIC=1
+ elif test $WX_SHARED = "auto"; then
+ STATIC="auto"
+ fi
+
+ dnl Now set the WX_UNICODE, WX_DEBUG, WX_STATIC variables
+ _WX_SELECTEDCONFIG_CHECKFOR([UNICODE], [unicode],
+ [if wxWidgets was built with UNICODE enabled])
+ _WX_SELECTEDCONFIG_CHECKFOR([DEBUG], [debug],
+ [if wxWidgets was built in DEBUG mode])
+ _WX_SELECTEDCONFIG_CHECKFOR([STATIC], [static],
+ [if wxWidgets was built in STATIC mode])
+
+ dnl init WX_SHARED from WX_STATIC
+ if test "$WX_STATIC" != "0"; then
+ WX_SHARED=0
+ else
+ WX_SHARED=1
+ fi
+
+ AC_SUBST(WX_UNICODE)
+ AC_SUBST(WX_DEBUG)
+ AC_SUBST(WX_SHARED)
+
+ dnl detect the WX_PORT to use
+ if test "$TOOLKIT" = "auto" ; then
+
+ dnl The user does not have particular preferences for this option;
+ dnl so we will detect the wxWidgets relative build setting and use it
+ AC_MSG_CHECKING([which wxWidgets toolkit was selected])
+
+ WX_GTKPORT1=$(expr "$WX_SELECTEDCONFIG" : ".*gtk1.*")
+ WX_GTKPORT2=$(expr "$WX_SELECTEDCONFIG" : ".*gtk2.*")
+ WX_MSWPORT=$(expr "$WX_SELECTEDCONFIG" : ".*msw.*")
+ WX_MOTIFPORT=$(expr "$WX_SELECTEDCONFIG" : ".*motif.*")
+ WX_OSXCOCOAPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_cocoa.*")
+ WX_OSXCARBONPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_carbon.*")
+ WX_X11PORT=$(expr "$WX_SELECTEDCONFIG" : ".*x11.*")
+ WX_DFBPORT=$(expr "$WX_SELECTEDCONFIG" : ".*dfb.*")
+
+ WX_PORT="unknown"
+ if test "$WX_GTKPORT1" != "0"; then WX_PORT="gtk1"; fi
+ if test "$WX_GTKPORT2" != "0"; then WX_PORT="gtk2"; fi
+ if test "$WX_MSWPORT" != "0"; then WX_PORT="msw"; fi
+ if test "$WX_MOTIFPORT" != "0"; then WX_PORT="motif"; fi
+ if test "$WX_OSXCOCOAPORT" != "0"; then WX_PORT="osx_cocoa"; fi
+ if test "$WX_OSXCARBONPORT" != "0"; then WX_PORT="osx_carbon"; fi
+ if test "$WX_X11PORT" != "0"; then WX_PORT="x11"; fi
+ if test "$WX_DFBPORT" != "0"; then WX_PORT="dfb"; fi
+
+ dnl NOTE: backward-compatible check for wx2.8; in wx2.9 the mac
+ dnl ports are called 'osx_cocoa' and 'osx_carbon' (see above)
+ WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*")
+ if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi
+
+ dnl check at least one of the WX_*PORT has been set !
+
+ if test "$WX_PORT" = "unknown" ; then
+ AC_MSG_ERROR([
+ Cannot detect the currently installed wxWidgets port !
+ Please check your 'wx-config --cxxflags'...
+ ])
+ fi
+
+ AC_MSG_RESULT([$WX_PORT])
+ else
+
+ dnl Use the setting given by the user
+ if test -z "$TOOLKIT" ; then
+ WX_PORT=$TOOLKIT
+ else
+ dnl try with PORT
+ WX_PORT=$PORT
+ fi
+ fi
+
+ AC_SUBST(WX_PORT)
+
+ if test "$WX_DEBUG_CONFIGURE" = "1"; then
+ echo "[[dbg]] Values of all WX_* options after final detection:"
+ echo "[[dbg]] WX_DEBUG: $WX_DEBUG"
+ echo "[[dbg]] WX_UNICODE: $WX_UNICODE"
+ echo "[[dbg]] WX_SHARED: $WX_SHARED"
+ echo "[[dbg]] WX_RELEASE: $WX_RELEASE"
+ echo "[[dbg]] WX_PORT: $WX_PORT"
+ fi
+
+ dnl Avoid problem described in the WX_STANDARD_OPTIONS which happens when
+ dnl the user gives the options:
+ dnl ./configure --enable-shared --without-wxshared
+ dnl or just do
+ dnl ./configure --enable-shared
+ dnl but there is only a static build of wxWidgets available.
+ if test "$WX_SHARED" = "0" -a "$SHARED" = "1"; then
+ AC_MSG_ERROR([
+ Cannot build shared library against a static build of wxWidgets !
+ This error happens because the wxWidgets build which was selected
+ has been detected as static while you asked to build $PACKAGE_NAME
+ as shared library and this is not possible.
+ Use the '--disable-shared' option to build $PACKAGE_NAME
+ as static library or '--with-wxshared' to use wxWidgets as shared library.
+ ])
+ fi
+
+ dnl now we can finally update the DEBUG,UNICODE,SHARED options
+ dnl to their final values if they were set to 'auto'
+ if test "$DEBUG" = "auto"; then
+ DEBUG=$WX_DEBUG
+ fi
+ if test "$UNICODE" = "auto"; then
+ UNICODE=$WX_UNICODE
+ fi
+ if test "$SHARED" = "auto"; then
+ SHARED=$WX_SHARED
+ fi
+ if test "$TOOLKIT" = "auto"; then
+ TOOLKIT=$WX_PORT
+ fi
+
+ dnl in case the user needs a BUILD=debug/release var...
+ if test "$DEBUG" = "1"; then
+ BUILD="debug"
+ elif test "$DEBUG" = "0" -o "$DEBUG" = ""; then
+ BUILD="release"
+ fi
+
+ dnl respect the DEBUG variable adding the optimize/debug flags
+ dnl NOTE: the CXXFLAGS are merged together with the CPPFLAGS so we
+ dnl don't need to set them, too
+ if test "$DEBUG" = "1"; then
+ CXXFLAGS="$CXXFLAGS -g -O0"
+ CFLAGS="$CFLAGS -g -O0"
+ else
+ CXXFLAGS="$CXXFLAGS -O2"
+ CFLAGS="$CFLAGS -O2"
+ fi
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_BOOLOPT_SUMMARY([name of the boolean variable to show summary for],
+dnl [what to print when var is 1],
+dnl [what to print when var is 0])
+dnl
+dnl Prints $2 when variable $1 == 1 and prints $3 when variable $1 == 0.
+dnl This macro mainly exists just to make configure.ac scripts more readable.
+dnl
+dnl NOTE: you need to use the [" my message"] syntax for 2nd and 3rd arguments
+dnl if you want that m4 avoid to throw away the spaces prefixed to the
+dnl argument value.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_BOOLOPT_SUMMARY],
+ [
+ if test "x$$1" = "x1" ; then
+ echo $2
+ elif test "x$$1" = "x0" ; then
+ echo $3
+ else
+ echo "$1 is $$1"
+ fi
+ ])
+
+dnl ---------------------------------------------------------------------------
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG
+dnl
+dnl Shows a summary message to the user about the WX_* variable contents.
+dnl This macro is used typically at the end of the configure script.
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG],
+ [
+ echo
+ echo " The wxWidgets build which will be used by $PACKAGE_NAME $PACKAGE_VERSION"
+ echo " has the following settings:"
+ WX_BOOLOPT_SUMMARY([WX_DEBUG], [" - DEBUG build"], [" - RELEASE build"])
+ WX_BOOLOPT_SUMMARY([WX_UNICODE], [" - UNICODE mode"], [" - ANSI mode"])
+ WX_BOOLOPT_SUMMARY([WX_SHARED], [" - SHARED mode"], [" - STATIC mode"])
+ echo " - VERSION: $WX_VERSION"
+ echo " - PORT: $WX_PORT"
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN, WX_STANDARD_OPTIONS_SUMMARY_MSG_END
+dnl
+dnl Like WX_STANDARD_OPTIONS_SUMMARY_MSG macro but these two macros also gives info
+dnl about the configuration of the package which used the wxpresets.
+dnl
+dnl Typical usage:
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN
+dnl echo " - Package setting 1: $SETTING1"
+dnl echo " - Package setting 2: $SETTING1"
+dnl ...
+dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_END
+dnl
+dnl ---------------------------------------------------------------------------
+AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN],
+ [
+ echo
+ echo " ----------------------------------------------------------------"
+ echo " Configuration for $PACKAGE_NAME $PACKAGE_VERSION successfully completed."
+ echo " Summary of main configuration settings for $PACKAGE_NAME:"
+ WX_BOOLOPT_SUMMARY([DEBUG], [" - DEBUG build"], [" - RELEASE build"])
+ WX_BOOLOPT_SUMMARY([UNICODE], [" - UNICODE mode"], [" - ANSI mode"])
+ WX_BOOLOPT_SUMMARY([SHARED], [" - SHARED mode"], [" - STATIC mode"])
+ ])
+
+AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_END],
+ [
+ WX_STANDARD_OPTIONS_SUMMARY_MSG
+ echo
+ echo " Now, just run make."
+ echo " ----------------------------------------------------------------"
+ echo
+ ])
+
+
+dnl ---------------------------------------------------------------------------
+dnl Deprecated macro wrappers
+dnl ---------------------------------------------------------------------------
+
+AC_DEFUN([AM_OPTIONS_WXCONFIG], [WX_CONFIG_OPTIONS])
+AC_DEFUN([AM_PATH_WXCONFIG], [
+ WX_CONFIG_CHECK([$1],[$2],[$3],[$4],[$5])
+])
+AC_DEFUN([AM_PATH_WXRC], [WXRC_CHECK([$1],[$2])])
diff --git a/app-eselect/eselect-wxwidgets/metadata.xml b/app-eselect/eselect-wxwidgets/metadata.xml
new file mode 100644
index 00000000000..a191ef54b9b
--- /dev/null
+++ b/app-eselect/eselect-wxwidgets/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>wxwidgets</herd>
+</pkgmetadata>
diff --git a/app-eselect/eselect-xvmc/eselect-xvmc-0.3.ebuild b/app-eselect/eselect-xvmc/eselect-xvmc-0.3.ebuild
new file mode 100644
index 00000000000..f33395a40fa
--- /dev/null
+++ b/app-eselect/eselect-xvmc/eselect-xvmc-0.3.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manages XvMC implementations"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-admin/eselect-1.0.10"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}"/${P}.eselect xvmc.eselect || die "newins failed"
+}
diff --git a/app-eselect/eselect-xvmc/eselect-xvmc-0.4.ebuild b/app-eselect/eselect-xvmc/eselect-xvmc-0.4.ebuild
new file mode 100644
index 00000000000..c1fcf076e10
--- /dev/null
+++ b/app-eselect/eselect-xvmc/eselect-xvmc-0.4.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Manages XvMC implementations"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x86-solaris"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-admin/eselect"
+
+S="${FILESDIR}"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ newins "${FILESDIR}"/${P}.eselect xvmc.eselect
+}
diff --git a/app-eselect/eselect-xvmc/files/eselect-xvmc-0.3.eselect b/app-eselect/eselect-xvmc/files/eselect-xvmc-0.3.eselect
new file mode 100644
index 00000000000..4f3cdccb917
--- /dev/null
+++ b/app-eselect/eselect-xvmc/files/eselect-xvmc-0.3.eselect
@@ -0,0 +1,189 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Manage the XvMC implementation used by your system"
+MAINTAINER="cardoe@gentoo.org"
+SVN_DATE='$Date: 2015/03/31 16:58:41 $'
+VERSION=$(svn_date_to_version "${SVN_DATE}" )
+
+XVMCLIBS=(
+"libXvMCNVIDIA_dynamic.so.1"
+"libXvMC.so.1"
+"libviaXvMC.so.1"
+"libviaXvMCPro.so.1"
+"libchromeXvMC.so.1"
+"libchromeXvMCPro.so.1"
+"libXvMCVIA.so"
+"libXvMCVIAPro.so"
+"libI810XvMC.so.1"
+"/usr/lib/libIntelXvMC.so"
+"libAMDXvBA.so.1" )
+XVMCPRETTY=(
+"nvidia"
+"xorg-x11"
+"via"
+"via-pro"
+"openchrome"
+"openchrome-pro"
+"unichrome"
+"unichrome-pro"
+"intel-i815"
+"intel-i915"
+"ati" )
+
+get_implementation_indices() {
+ local ret n
+ for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do
+ [[ -e "${ROOT}/usr/lib/${XVMCLIBS[n]}" ]] && ret+=($n)
+ done
+
+ echo ${ret[@]}
+}
+
+get_current_implementation_index() {
+ local n
+ if [[ -f "${ROOT}/etc/X11/XvMCConfig" ]]; then
+ local current=$(< "${ROOT}/etc/X11/XvMCConfig")
+ for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do
+ if [[ "${XVMCLIBS[n]}" = "${current}" ]]; then
+ echo "${n}"
+ return
+ fi
+ done
+ fi
+
+ echo "-1"
+}
+
+set_new_implementation() {
+ echo -n "Switching to ${XVMCPRETTY[$1]} XvMC implementation..."
+ touch "${ROOT}/etc/X11/XvMCConfig" 2>&1 > /dev/null
+ if [[ $? -eq 0 ]]; then
+ echo "${XVMCLIBS[$1]}" > "${ROOT}/etc/X11/XvMCConfig"
+ chmod 644 "${ROOT}/etc/X11/XvMCConfig"
+ chown 0:0 "${ROOT}/etc/X11/XvMCConfig"
+ echo " done"
+ else
+ echo " failed!"
+ echo "Insufficient privileges"
+ fi
+}
+
+### list action
+
+## {{{ list stuff
+describe_list() {
+ echo "List Available XvMC implementations"
+}
+
+do_list() {
+ local output n
+ local avail=( $(get_implementation_indices) )
+ local current=$(get_current_implementation_index)
+ write_list_start "Available XvMC implementations ( $(highlight '*') is current ):"
+
+ if (( ${#avail[@]} )) ; then
+ for n in "${avail[@]}" ; do
+ output[n]="${XVMCPRETTY[n]}"
+ [[ ${current} -eq ${n} ]] && \
+ output[n]+=" $(highlight '*')"
+ done
+ write_numbered_list "${output[@]}"
+ else
+ write_kv_list_entry "(none found)" ""
+ fi
+
+ return 0
+}
+## }}}
+
+### show action
+
+## {{{ show stuff
+describe_show() {
+ echo "Print the current XvMC implementation."
+}
+
+do_show() {
+ local current=$(get_current_implementation_index)
+ write_list_start "Current XvMC implementation:"
+
+ if [[ ${current} -ne -1 ]]; then
+ echo "${XVMCPRETTY[current]}"
+ return 0
+ else
+ echo "(none)"
+ return 2
+ fi
+}
+## }}}
+
+### set action
+
+## {{{ set stuff
+describe_set() {
+ echo "Select the XvMC implementation"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+describe_set_options() {
+ echo "<target> : XvMC implementation to activate"
+ echo "--use-old : If an implementation is already set, use that one instead"
+}
+
+do_set() {
+ local current=$(get_current_implementation_index)
+ local avail=( $(get_implementation_indices) )
+ local n new action
+
+ while [[ ${#@} -gt 0 ]]; do
+ local opt=${1}
+ shift
+ case ${opt} in
+ --use-old)
+ if [[ ${current} -gt -1 ]]; then
+ (( ${current} < ${#XVMCPRETTY[@]} )) && action="old-implementation"
+ fi
+ ;;
+ *)
+ [[ -z ${action} ]] && action="set-implementation"
+
+ if is_number ${opt} ; then
+ new=${avail[opt - 1]}
+ if [[ -z ${new} ]]; then
+ die -q "Unrecognized option: ${opt}"
+ fi
+ elif has ${opt} ${XVMCPRETTY[@]}; then
+ for (( n = 0; n < ${#XVMCPRETTY[@]}; ++n )); do
+ [[ "${XVMCPRETTY[n]}" = "${opt}" ]] && new=${n}
+ done
+ else
+ die -q "Unrecognized option: ${opt}"
+ fi
+ ;;
+ esac
+ done
+
+ case ${action} in
+ old-implementation)
+ set_new_implementation ${current}
+ return $?
+ ;;
+ set-implementation)
+ if [[ -n ${new} ]]; then
+ set_new_implementation ${new}
+ return $?
+ else
+ die -q "Please specify an implementation to set"
+ fi
+ ;;
+ *)
+ die -q "Invalid usage of set action."
+ esac
+}
+
+# vim: ts=4 sw=4 noet fdm=marker
diff --git a/app-eselect/eselect-xvmc/files/eselect-xvmc-0.4.eselect b/app-eselect/eselect-xvmc/files/eselect-xvmc-0.4.eselect
new file mode 100644
index 00000000000..2d6891fc00d
--- /dev/null
+++ b/app-eselect/eselect-xvmc/files/eselect-xvmc-0.4.eselect
@@ -0,0 +1,198 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+DESCRIPTION="Manage the XvMC implementation used by your system"
+MAINTAINER="{cardoe,ottxor}@gentoo.org"
+VERSION="0.4"
+
+init_XVMC_vars() {
+ get_libname() {
+ case ${OSTYPE} in
+ darwin*) echo ${1:+.}${1}.dylib ;;
+ *) echo .so${1:+.}${1} ;;
+ esac
+ }
+
+ XVMCLIBS=(
+ "libXvMCNVIDIA_dynamic$(get_libname 1)"
+ "libXvMC$(get_libname 1)"
+ "libviaXvMC$(get_libname 1)"
+ "libviaXvMCPro$(get_libname 1)"
+ "libchromeXvMC$(get_libname 1)"
+ "libchromeXvMCPro$(get_libname 1)"
+ "libXvMCVIA$(get_libname)"
+ "libXvMCVIAPro$(get_libname)"
+ "libI810XvMC$(get_libname 1)"
+ "/usr/lib/libIntelXvMC$(get_libname)"
+ "libAMDXvBA$(get_libname 1)"
+ )
+
+ XVMCPRETTY=(
+ "nvidia"
+ "xorg-x11"
+ "via"
+ "via-pro"
+ "openchrome"
+ "openchrome-pro"
+ "unichrome"
+ "unichrome-pro"
+ "intel-i810"
+ "intel-i915/i965"
+ "ati"
+ )
+}
+
+get_implementation_indices() {
+ local ret n
+ for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do
+ [[ -e "${EROOT}/usr/lib/${XVMCLIBS[n]##*/}" ]] && ret+=($n)
+ done
+
+ echo ${ret[@]}
+}
+
+get_current_implementation_index() {
+ local n
+ if [[ -f "${EROOT}/etc/X11/XvMCConfig" ]]; then
+ local current=$(< "${EROOT}/etc/X11/XvMCConfig")
+ for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do
+ if [[ "${XVMCLIBS[n]}" = "${current}" ]]; then
+ echo "${n}"
+ return
+ fi
+ done
+ fi
+
+ echo "-1"
+}
+
+set_new_implementation() {
+ echo -n "Switching to ${XVMCPRETTY[$1]} XvMC implementation..."
+ touch "${EROOT}/etc/X11/XvMCConfig" 2>&1 > /dev/null
+ if [[ $? -eq 0 ]]; then
+ echo "${XVMCLIBS[$1]}" > "${EROOT}/etc/X11/XvMCConfig"
+ chmod 644 "${EROOT}/etc/X11/XvMCConfig"
+ [[ ${EROOT} == "/" ]] && chown 0:0 "${EROOT}/etc/X11/XvMCConfig"
+ echo " done"
+ else
+ echo " failed!"
+ echo "Insufficient privileges"
+ fi
+}
+
+### list action
+
+## {{{ list stuff
+describe_list() {
+ echo "List Available XvMC implementations"
+}
+
+do_list() {
+ local output n
+ init_XVMC_vars
+ local avail=( $(get_implementation_indices) )
+ local current=$(get_current_implementation_index)
+ write_list_start \
+ "Available XvMC implementations ($(highlight '*') is current):"
+
+ for n in "${avail[@]}"; do
+ output[n]=${XVMCPRETTY[n]}
+ [[ ${current} -eq ${n} ]] \
+ && output[n]=$(highlight_marker "${output[n]}")
+ done
+ write_numbered_list -m "(none found)" "${output[@]}"
+
+ return 0
+}
+## }}}
+
+### show action
+
+## {{{ show stuff
+describe_show() {
+ echo "Print the current XvMC implementation."
+}
+
+do_show() {
+ init_XVMC_vars
+ local current=$(get_current_implementation_index)
+ write_list_start "Current XvMC implementation:"
+
+ if [[ ${current} -ne -1 ]]; then
+ echo "${XVMCPRETTY[current]}"
+ return 0
+ else
+ echo "(none)"
+ return 2
+ fi
+}
+## }}}
+
+### set action
+
+## {{{ set stuff
+describe_set() {
+ echo "Select the XvMC implementation"
+}
+
+describe_set_parameters() {
+ echo "<target>"
+}
+
+describe_set_options() {
+ echo "<target> : XvMC implementation to activate"
+ echo "--use-old : If an implementation is already set, use that one instead"
+}
+
+do_set() {
+ init_XVMC_vars
+ local current=$(get_current_implementation_index)
+ local avail=( $(get_implementation_indices) )
+ local n new action
+
+ while [[ ${#@} -gt 0 ]]; do
+ local opt=${1}
+ shift
+ case ${opt} in
+ --use-old)
+ if [[ ${current} -gt -1 ]]; then
+ (( ${current} < ${#XVMCPRETTY[@]} )) && action="old-implementation"
+ fi
+ ;;
+ *)
+ [[ -z ${action} ]] && action="set-implementation"
+
+ if is_number ${opt} ; then
+ new=${avail[opt - 1]}
+ if [[ -z ${new} ]]; then
+ die -q "Unrecognized option: ${opt}"
+ fi
+ elif has ${opt} ${XVMCPRETTY[@]}; then
+ for (( n = 0; n < ${#XVMCPRETTY[@]}; ++n )); do
+ [[ "${XVMCPRETTY[n]}" = "${opt}" ]] && new=${n}
+ done
+ else
+ die -q "Unrecognized option: ${opt}"
+ fi
+ ;;
+ esac
+ done
+
+ case ${action} in
+ old-implementation)
+ set_new_implementation ${current}
+ return $?
+ ;;
+ set-implementation)
+ if [[ -n ${new} ]]; then
+ set_new_implementation ${new}
+ return $?
+ else
+ die -q "Please specify an implementation to set"
+ fi
+ ;;
+ *)
+ die -q "Invalid usage of set action."
+ esac
+}
diff --git a/app-eselect/eselect-xvmc/metadata.xml b/app-eselect/eselect-xvmc/metadata.xml
new file mode 100644
index 00000000000..a0494aadf4b
--- /dev/null
+++ b/app-eselect/eselect-xvmc/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <maintainer>
+ <email>cardoe@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-eselect/metadata.xml b/app-eselect/metadata.xml
new file mode 100644
index 00000000000..f2c8283ce7c
--- /dev/null
+++ b/app-eselect/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The app-eselect category contains modules for the eselect
+ configuration and administration tool.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie app-eselect enthält Module für das Konfigurations-
+ und Verwaltungswerkzeug eselect.
+ </longdescription>
+</catmetadata>