summaryrefslogtreecommitdiff
path: root/dev-ruby/facter
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-ruby/facter
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-ruby/facter')
-rw-r--r--dev-ruby/facter/Manifest11
-rw-r--r--dev-ruby/facter/facter-2.4.6.ebuild61
-rw-r--r--dev-ruby/facter/facter-3.11.1.ebuild108
-rw-r--r--dev-ruby/facter/facter-3.11.2.ebuild105
-rw-r--r--dev-ruby/facter/facter-3.9.2.ebuild88
-rw-r--r--dev-ruby/facter/facter-9999.ebuild105
-rw-r--r--dev-ruby/facter/files/00facterdir1
-rw-r--r--dev-ruby/facter/metadata.xml23
8 files changed, 502 insertions, 0 deletions
diff --git a/dev-ruby/facter/Manifest b/dev-ruby/facter/Manifest
new file mode 100644
index 000000000000..91ce7d200834
--- /dev/null
+++ b/dev-ruby/facter/Manifest
@@ -0,0 +1,11 @@
+AUX 00facterdir 15 BLAKE2B 88b3bebceec0d9b8943b36a373a5475d2600c8cee5770c2f9391615958b27b842ede98d7a476cb488e249b1dc14258574bf2f77912599fef98fc325914c8f014 SHA512 381973ca23aec0853714495f74b77155f0079e504312dc55e6e22c8a099aeafd2b7bc4a762c95543c3cd9c5fa5f88a6821f4104b7522536aee7b6f5426d9ec2f
+DIST facter-2.4.6.gem 246272 BLAKE2B 105a43b2697cde0a48d4fcf87e221cfcb348695f81722b8cfe2819a8f3fe19e575d22642a708c798648d05c71f54e7bf0281345320612a8fdb3b68fce993ec20 SHA512 a0a2bef37451ab96ed331c79171f77d89b6db430b083e6888a306fa5b57a72986b7f600cad3e09b5f4706e54736d1d32ea25525fe18a6108cc95f315da16664a
+DIST facter-3.11.1.tar.gz 384201 BLAKE2B 349493f0046239ed900cb22df6cac2f5c1f748503e057a68e9be34c2f24f134a280ab9292d7f4e754a5974818a1fd01bc55634905d84706b47686a9e7a1ccc39 SHA512 295c91817912fb43fe259ede4b51ecf4ae5efd500d64b2682c700583bfdf694a8849a4bd4cb3a16a8046d563f487225957a49b760cc03d8bf86ac8487e37a756
+DIST facter-3.11.2.tar.gz 384784 BLAKE2B f280772231a9105e5924cdb777411861a76a67c15b4d7f3cc73fb9c089752a4e5fa43c4d84b8525917fae71ae34c770925161cc94882e74a704d6609b1c1778a SHA512 aaeee7449813590ac8bc8d3b1b2a654e75bcdaabbb19f91f8b282f747e0f8af05ef71bc872b99c226f0db4d06b67549551f62c365853f5829c6b26c931c0b582
+DIST facter-3.9.2.tar.gz 380883 BLAKE2B d2804664e0499715230e5696c5a9ebae933f5b43dfb37154251d47763c2c7f78cfa8d1413dd836e5a0c76ed67300d066fa5bb390f17f85cd4cb7a444eaf0d133 SHA512 bc040826311bbff40f5a151ade315d9d47ef1e0f3faa570805e48ca55405265e66308230118b9cd59f701ecd76a7b0fd4d9200dd4ace838521223a162b105374
+EBUILD facter-2.4.6.ebuild 1899 BLAKE2B a8e0d7c7a83c42150219a300d4a1a512913deee5d66e3a28a4f285a27d731cfa1937bb4d0d9bd8c80e133f2956ecf17690f5a94d66b385507a4f3740a425872f SHA512 0f4a589cb04567a42181bf366e51f6224d792c63bc2b38d2db3653688844e2cb611223fe148a6ff015d8dd734695214afc33ec0812e1707ac629344a691a396e
+EBUILD facter-3.11.1.ebuild 2851 BLAKE2B f7195a19a256dca9b6c1ca5aede6001421411869b4b4c1e9dd02ca91a9e73a6a4efeacbc2809bda46977f5ba2ea4b8efc6d52ecbd5a09b2fb44addfc2ff369b5 SHA512 fb1d8480fe94d452b49560093151be5ee068ab6b8a7f2fe7d90a1d07aaea0b0becd35d435189a7dbe9b9eff60ab2d82d703d700668951c562774f55dc12d375e
+EBUILD facter-3.11.2.ebuild 2752 BLAKE2B 6759e761e7152705a9fae260d626b78c32119553b63e37d19186b20d2afd8efa3a1b92286117f0c10486ecb818086e01352bdfedddd33b37e576cc9c90f731b2 SHA512 d9558badde687ae24b9150e36ccf7ee557463ba996c9654b87ccca5fa8ce44dbb38925282aa3af41aaa366b126a805d8cad42c2dd7d771ccb03d4b85ead17b63
+EBUILD facter-3.9.2.ebuild 2106 BLAKE2B efcbbd0cfe6a71b1b1a08bbc1f7abe4b94845c9e13192deae811466211ab2ba533ae10732a4d72635609b9cb419051b7c4a39f248e9b06f7ec751cd893d28852 SHA512 5cfb67a3db8d288302f21bf0092c05ce19b40c8a2f00b4b9b63e3e02cd7d1af3dd20670b744520cb42db2b2ccd52e9153d86c0e1db7a36c4c7854c70d79149dc
+EBUILD facter-9999.ebuild 2761 BLAKE2B 45a04ae914f400f4b80fa0f51fed999d08344ca58005040f7930f2fa7c4092329fdf4557a9babc81ebde788731844cd8299af704dda71a22521a14515f7c6c73 SHA512 58190ff28a512818b79e49c92525c61898a29ce3ce8f8b9b884489ca0f08ae980d906164a45d5a60fef9bc3a8f38ef88882474243188f250ab57043079845f16
+MISC metadata.xml 854 BLAKE2B 51b94622bf8ce34658bf34bf266effc445fdbee52fb22e70c9a645c36b7ac28db73793f185b2dfa791d8459a56ea66eccc6a3f4da56db4fe4ee171ee607366ea SHA512 27e7e17a15ad80544fb121b050f0f5c39d3e27a53ade89063a894569472618b29649b5a737011b8d6597594d9bc94a49cf52c9df857d577a098d6c770b4a9639
diff --git a/dev-ruby/facter/facter-2.4.6.ebuild b/dev-ruby/facter/facter-2.4.6.ebuild
new file mode 100644
index 000000000000..ec8007fe201d
--- /dev/null
+++ b/dev-ruby/facter/facter-2.4.6.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+USE_RUBY="ruby23 ruby24"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP="facter"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A cross-platform Ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="+dmi +pciutils +virt"
+KEYWORDS="amd64 hppa ppc ppc64 ~sparc x86"
+
+CDEPEND="
+ app-emulation/virt-what
+ sys-apps/net-tools
+ sys-apps/lsb-release
+ dmi? ( sys-apps/dmidecode )
+ pciutils? ( sys-apps/pciutils )"
+
+RDEPEND+=" ${CDEPEND}"
+DEPEND+=" test? ( ${CDEPEND} )"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:1.0 )"
+
+all_ruby_prepare() {
+ # Provide explicit path since /sbin is not in the default PATH on
+ # Gentoo.
+ sed -i -e 's:arp -an:/sbin/arp -an:' lib/facter/util/ec2.rb spec/unit/util/ec2_spec.rb || die
+
+ # Ensure the correct version of mocha is used without using bundler.
+ sed -i -e '1igem "mocha", "~>1.0"' spec/spec_helper.rb || die
+
+ # Avoid because tests try to access outside stuff, e.g. /sys/block
+ sed -i -e '/should load facts on the facter search path only once/,/^ end/ s:^:#:' spec/unit/util/loader_spec.rb || die
+
+ # Allow specs to work with newer rspec 2.x versions.
+ sed -i -e '1irequire "rspec-expectations"' spec/puppetlabs_spec/matchers.rb || die
+
+ # Avoid specs specific to macosx requiring cfpropertylist which is
+ # not available anymore.
+ rm spec/unit/util/macosx_spec.rb || die
+ sed -i -e '/macosx/ s:^:#:' \
+ -e '/on Darwin/,/^ end/ s:^:#:' spec/unit/virtual_spec.rb || die
+ sed -i -e '/Facter::Processors::Darwin/,/^end/ s:^:#:' spec/unit/processors/os_spec.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ # Create the directory for custom facts.
+ keepdir /etc/facter/facts.d
+}
diff --git a/dev-ruby/facter/facter-3.11.1.ebuild b/dev-ruby/facter/facter-3.11.1.ebuild
new file mode 100644
index 000000000000..f1584484e8b1
--- /dev/null
+++ b/dev-ruby/facter/facter-3.11.1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+USE_RUBY="ruby23 ruby24 ruby25"
+
+# git-r3 goes after ruby-ng so that it overrides src_unpack properly
+inherit cmake-utils eutils multilib ruby-ng
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="debug test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+ S="${S}/${P}"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ S="${S}/all/${P}"
+fi
+
+BDEPEND="
+ >=sys-devel/gcc-4.8:*
+ dev-cpp/cpp-hocon"
+CDEPEND="
+ >=dev-libs/leatherman-1.0.0:=
+ dev-libs/openssl:*
+ sys-apps/util-linux
+ app-emulation/virt-what
+ net-misc/curl
+ >=dev-libs/boost-1.54:=[nls]
+ >=dev-cpp/yaml-cpp-0.5.1
+ !<app-admin/puppet-4.0.0"
+
+ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
+
+RDEPEND="${CDEPEND}"
+DEPEND="${BDEPEND}
+ ${CDEPEND}"
+
+src_prepare() {
+ # Remove the code that installs facter.rb to the wrong directory.
+ sed -i '/install(.*facter\.rb/d' lib/CMakeLists.txt || die
+ sed -i '/install(.*facter\.jar/d' lib/CMakeLists.txt || die
+ # make it support multilib
+ sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die
+ sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die
+ # make the require work
+ sed -i 's/\${LIBFACTER_INSTALL_DESTINATION}\///g' lib/facter.rb.in || die
+ # be explicit about the version of rspec we test with and use the
+ # correct lib directory for tests
+ sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
+ -e '/libfacter.*specs/ s/lib64/lib/' CMakeLists.txt || die
+ # be more lenient for software versions for tests
+ sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
+ -e '/rspec/ s/2.11.0/2.11/' \
+ -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
+ # patches
+ default
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_BUILD_TYPE=None
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var
+ -DUSE_JRUBY_SUPPORT=FALSE
+ -DBLKID_LIBRARY=/$(get_libdir)/libblkid.so.1
+ )
+ if use debug; then
+ mycmakeargs+=(
+ -DCMAKE_BUILD_TYPE=Debug
+ )
+ fi
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+each_ruby_install() {
+ doruby "${BUILD_DIR}"/lib/facter.rb
+}
+
+src_test() {
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ ruby-ng_src_install
+
+ # need a variable file in env.d :(
+ diropts -m0755
+ dodir /etc/env.d
+ echo -n "FACTERDIR=/usr/$(get_libdir)" > "${D}/etc/env.d/00facterdir"
+ fperms 0644 /etc/env.d/00facterdir
+}
diff --git a/dev-ruby/facter/facter-3.11.2.ebuild b/dev-ruby/facter/facter-3.11.2.ebuild
new file mode 100644
index 000000000000..1d8bed514221
--- /dev/null
+++ b/dev-ruby/facter/facter-3.11.2.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+USE_RUBY="ruby23 ruby24 ruby25"
+
+# git-r3 goes after ruby-ng so that it overrides src_unpack properly
+inherit cmake-utils eutils multilib ruby-ng
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="debug test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+ S="${S}/${P}"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ S="${S}/all/${P}"
+fi
+
+BDEPEND="
+ >=sys-devel/gcc-4.8:*
+ dev-cpp/cpp-hocon"
+CDEPEND="
+ >=dev-libs/leatherman-1.0.0:=
+ dev-libs/openssl:*
+ sys-apps/util-linux
+ app-emulation/virt-what
+ net-misc/curl
+ >=dev-libs/boost-1.54:=[nls]
+ >=dev-cpp/yaml-cpp-0.5.1
+ !<app-admin/puppet-4.0.0"
+
+ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
+
+RDEPEND="${CDEPEND}"
+DEPEND="${BDEPEND}
+ ${CDEPEND}"
+
+src_prepare() {
+ # Remove the code that installs facter.rb to the wrong directory.
+ sed -i '/install(.*facter\.rb/d' lib/CMakeLists.txt || die
+ sed -i '/install(.*facter\.jar/d' lib/CMakeLists.txt || die
+ # make it support multilib
+ sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die
+ sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die
+ # make the require work
+ sed -i 's/\${LIBFACTER_INSTALL_DESTINATION}\///g' lib/facter.rb.in || die
+ # be explicit about the version of rspec we test with and use the
+ # correct lib directory for tests
+ sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
+ -e '/libfacter.*specs/ s/lib64/lib/' CMakeLists.txt || die
+ # be more lenient for software versions for tests
+ sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
+ -e '/rspec/ s/2.11.0/2.11/' \
+ -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
+ # patches
+ default
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_BUILD_TYPE=None
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DBLKID_LIBRARY=/$(get_libdir)/libblkid.so.1
+ )
+ if use debug; then
+ mycmakeargs+=(
+ -DCMAKE_BUILD_TYPE=Debug
+ )
+ fi
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+each_ruby_install() {
+ doruby "${BUILD_DIR}"/lib/facter.rb
+}
+
+src_test() {
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ ruby-ng_src_install
+
+ # need a variable file in env.d :(
+ diropts -m0755
+ dodir /etc/env.d
+ echo -n "FACTERDIR=/usr/$(get_libdir)" > "${D}/etc/env.d/00facterdir"
+ fperms 0644 /etc/env.d/00facterdir
+}
diff --git a/dev-ruby/facter/facter-3.9.2.ebuild b/dev-ruby/facter/facter-3.9.2.ebuild
new file mode 100644
index 000000000000..7783cc037914
--- /dev/null
+++ b/dev-ruby/facter/facter-3.9.2.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+USE_RUBY="ruby21 ruby22 ruby23 ruby24"
+
+inherit cmake-utils eutils multilib ruby-ng
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${S}/all/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="debug test"
+KEYWORDS="amd64 ~arm hppa ppc ppc64 sparc x86"
+
+BDEPEND="
+ >=sys-devel/gcc-4.8:*
+ >=dev-libs/leatherman-1.0.0
+ dev-cpp/cpp-hocon"
+CDEPEND="
+ dev-libs/openssl:*
+ sys-apps/util-linux
+ app-emulation/virt-what
+ net-misc/curl
+ >=dev-libs/boost-1.54[nls]
+ >=dev-cpp/yaml-cpp-0.5.1
+ !<app-admin/puppet-4.0.0"
+
+RDEPEND="${CDEPEND}"
+DEPEND="${BDEPEND}
+ ${CDEPEND}"
+
+src_prepare() {
+ # Remove the code that installs facter.rb to the wrong directory.
+ sed -i '/install(.*facter\.rb/d' lib/CMakeLists.txt || die
+ sed -i '/install(.*facter\.jar/d' lib/CMakeLists.txt || die
+ # make it support multilib
+ sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die
+ sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die
+ # make the require work
+ sed -i 's/\${LIBFACTER_INSTALL_DESTINATION}\///g' lib/facter.rb.in || die
+ # patches
+ default
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_BUILD_TYPE=None
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var
+ -DUSE_JRUBY_SUPPORT=FALSE
+ -DBLKID_LIBRARY=/$(get_libdir)/libblkid.so.1
+ )
+ if use debug; then
+ mycmakeargs+=(
+ -DCMAKE_BUILD_TYPE=Debug
+ )
+ fi
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+each_ruby_install() {
+ doruby "${BUILD_DIR}"/lib/facter.rb
+}
+
+src_test() {
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ ruby-ng_src_install
+
+ # need a variable file in env.d :(
+ diropts -m0755
+ dodir /etc/env.d
+ echo -n "FACTERDIR=/usr/$(get_libdir)" > "${D}/etc/env.d/00facterdir"
+ fperms 0644 /etc/env.d/00facterdir
+}
diff --git a/dev-ruby/facter/facter-9999.ebuild b/dev-ruby/facter/facter-9999.ebuild
new file mode 100644
index 000000000000..4500cc443e23
--- /dev/null
+++ b/dev-ruby/facter/facter-9999.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+USE_RUBY="ruby21 ruby22 ruby23 ruby24"
+
+# git-r3 goes after ruby-ng so that it overrides src_unpack properly
+inherit cmake-utils eutils multilib ruby-ng
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="debug test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+ S="${S}/${P}"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ S="${S}/all/${P}"
+fi
+
+BDEPEND="
+ >=sys-devel/gcc-4.8:*
+ dev-cpp/cpp-hocon"
+CDEPEND="
+ >=dev-libs/leatherman-1.0.0:=
+ dev-libs/openssl:*
+ sys-apps/util-linux
+ app-emulation/virt-what
+ net-misc/curl
+ >=dev-libs/boost-1.54:=[nls]
+ >=dev-cpp/yaml-cpp-0.5.1
+ !<app-admin/puppet-4.0.0"
+
+ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
+
+RDEPEND="${CDEPEND}"
+DEPEND="${BDEPEND}
+ ${CDEPEND}"
+
+src_prepare() {
+ # Remove the code that installs facter.rb to the wrong directory.
+ sed -i '/install(.*facter\.rb/d' lib/CMakeLists.txt || die
+ sed -i '/install(.*facter\.jar/d' lib/CMakeLists.txt || die
+ # make it support multilib
+ sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die
+ sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die
+ # make the require work
+ sed -i 's/\${LIBFACTER_INSTALL_DESTINATION}\///g' lib/facter.rb.in || die
+ # be explicit about the version of rspec we test with and use the
+ # correct lib directory for tests
+ sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
+ -e '/libfacter.*specs/ s/lib64/lib/' CMakeLists.txt || die
+ # be more lenient for software versions for tests
+ sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
+ -e '/rspec/ s/2.11.0/2.11/' \
+ -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
+ # patches
+ default
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_BUILD_TYPE=None
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DBLKID_LIBRARY=/$(get_libdir)/libblkid.so.1
+ )
+ if use debug; then
+ mycmakeargs+=(
+ -DCMAKE_BUILD_TYPE=Debug
+ )
+ fi
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+each_ruby_install() {
+ doruby "${BUILD_DIR}"/lib/facter.rb
+}
+
+src_test() {
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ ruby-ng_src_install
+
+ # need a variable file in env.d :(
+ diropts -m0755
+ dodir /etc/env.d
+ echo -n "FACTERDIR=/usr/$(get_libdir)" > "${D}/etc/env.d/00facterdir"
+ fperms 0644 /etc/env.d/00facterdir
+}
diff --git a/dev-ruby/facter/files/00facterdir b/dev-ruby/facter/files/00facterdir
new file mode 100644
index 000000000000..45e29a2405a8
--- /dev/null
+++ b/dev-ruby/facter/files/00facterdir
@@ -0,0 +1 @@
+FACTERDIR=/usr
diff --git a/dev-ruby/facter/metadata.xml b/dev-ruby/facter/metadata.xml
new file mode 100644
index 000000000000..8f010b49bce9
--- /dev/null
+++ b/dev-ruby/facter/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>sysadmin@gentoo.org</email>
+ <name>Gentoo Sysadmin Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <use>
+ <flag name="dmi">Use <pkg>sys-apps/dmidecode</pkg> to determine hardware system properties</flag>
+ <flag name="virt">Use <pkg>app-emulation/virt-what</pkg> for virtual machine detection</flag>
+ <flag name="pciutils">Use <pkg>sys-apps/pciutils</pkg> to determine hardware system properties</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">puppetlabs/facter</remote-id>
+ </upstream>
+</pkgmetadata>