Sync with portage [Fri Sep 1 22:10:59 MSK 2017].

mhiretskiy 961
root 7 years ago
parent 7f2b15d071
commit 5c68395ff7

@ -1,6 +1 @@
DIST consul-0.7.5.tar.gz 5157056 SHA256 e213ba0c55bcb0d752ab120c770048e5156159db5974dc94193731f2e67d7d1f SHA512 6825a92ca2d1e3bf1db561de803e890bfa3a4c08718477a819ea10f5d0d9d13bf23ba7bedf2123cfa32b8f87d63ede7ee85d57a20f8cef5effd4651d28ab8a36 WHIRLPOOL 56e139b39bf73df558369acdd99a0cec42e05b88333013c18f69cfc56837ec007985ec48a845d461df44eed57d0f13256948942860431b84ab4d5d01becca2d2
DIST consul-0.8.0.tar.gz 4629677 SHA256 d50787c290d91f6e3472d2adeb3b2cedf3eb71c7c0fce32b60d2739af2d81dcf SHA512 4bb8bb50e4ab897cac7936bef590c7d8f93eca61913cd88588d5d0324c04fe2582d224dd25191b20bf76b000f764b4decce23118d3f8ed024b887b3194520644 WHIRLPOOL b0f1b03ed013f5a23a3d37cabe09fdc839c4097612f6355238ecfee55a7d5ab91b6386a6d107dfb01f210ff722e505abbe3882b0f6c2fd4015e20b1faef91765
DIST consul-0.8.3.tar.gz 6513579 SHA256 8088ae2f4259a736400211eed63f6df3b5264f3a18d31b31845c4a4481b349ac SHA512 84c72f5cdc9f82288b29b92e386324214bf71ef3952cbd3391f4c7c427cf5f385a3e472304cfb8c837bbfb009547ad3b736d6f66f0546a5f994d547d431bd4b8 WHIRLPOOL 159e0cc899702d19e5d46e02b4e64da5097a13016acc0331a638f248f6678ecee19ef019dad3123a42081a97985b7498622731d486c6eb9e015da80d442b2c33
DIST consul-0.8.4.tar.gz 6614287 SHA256 d5573d6e70d490c8b8109722c2019b5a2b35eff703b92d6276997846361cff1b SHA512 4bbb167a603f1d20940330bd9615ba0f50e0113e1d96ce47773f5d2813635f76dd1aec8f43dae4c8c547cec8a891eb0726eeeda7bd7c5b1d495029b359378e68 WHIRLPOOL e270367c69fe74f25c89ef9e8c7f71307d3b8e48b4210e43e48907f1f5a73f11f45aa2b212f70c24463e35d800b861ccd34e2c82de863fc6e7da9cd3eda5214c
DIST gox-c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz 15772 SHA256 826666828f1ec3e535268fa95d983362c6c773e9a87aa94613e7a47805d22e38 SHA512 d4b2d5d9666285584697bc0d6ddc2f1a1e3f23741650e831adb42baffbb5f72fc3d5ae8a8fb6719faf1df75d3da334941b0404387f0c213aabdb5c3d5634c55d WHIRLPOOL 89d52013bfb563a11a4042760470ac317398c3f8a61b9e7734c3ac2737d916126ad10a113948eb5a8362de3d77e598e42f4a0510760ae67465bde08658947f7a
DIST iochan-87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz 1785 SHA256 71c117246bb1d4d78ad5c3bc5d301942bcebaae5b1e35da1ad7851ceac71a675 SHA512 2efc0e3cbca496240e3e24550fd0d2aab742eb9b227230ff1ed4ee47344b994642b028bd4644cd45cd697f5f5ef6a729aad65537b10c6555bd52d9ca4b9c717c WHIRLPOOL 15dfd50bfc992a7b6a1b5d672d5bf9bfcb71a357eae371eac773e7fe9ad4ec8d4d0578e0dc6b12bb14689d1497129616b0eb300bbcb483a6865ac315bced562a

@ -1,106 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit systemd user
KEYWORDS="~amd64"
EGO_PN="github.com/hashicorp/consul"
DESCRIPTION="A tool for service discovery, monitoring and configuration"
HOMEPAGE="http://www.consul.io"
SRC_URI="https://github.com/hashicorp/consul/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/mitchellh/gox/archive/c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz -> gox-c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz
https://github.com/mitchellh/iochan/archive/87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz -> iochan-87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz
"
SLOT="0"
LICENSE="MPL-2.0"
IUSE=""
RESTRICT="test"
DEPEND="
>=dev-lang/go-1.7.5:=
>=dev-go/go-tools-0_pre20160121"
RDEPEND=""
pkg_setup() {
enewgroup consul
enewuser consul -1 -1 /var/lib/${PN} consul
}
get_archive_go_package() {
local archive=${1} uri x
for x in ${SRC_URI}; do
if [[ ${x} == http* ]]; then
uri=${x}
elif [[ ${x} == ${archive} ]]; then
break
fi
done
uri=${uri#https://}
echo ${uri%/archive/*}
}
unpack_go_packages() {
local go_package x
# Unpack packages to appropriate locations for GOPATH
for x in ${A}; do
unpack ${x}
if [[ ${x} == *.tar.gz ]]; then
go_package=$(get_archive_go_package ${x})
mkdir -p src/${go_package%/*}
mv ${go_package##*/}-* src/${go_package} || die
fi
done
}
src_unpack() {
mkdir "${S}" || die
cd "${S}" || die
unpack_go_packages
}
src_prepare() {
eapply_user
# Avoid the need to have a git checkout
sed -e 's:^GIT.*::' \
-e 's:-X main.GitCommit.*:" \\:' \
-i "${S}/src/${EGO_PN}/scripts/build.sh" || die
# go install golang.org/x/tools/cmd/stringer: mkdir /usr/lib/go-gentoo/bin/: permission denied
sed -e 's:go get -u -v $(GOTOOLS)::' \
-i "${S}/src/${EGO_PN}/GNUmakefile" || die
}
src_compile() {
export GOPATH="${S}"
go install -v -work -x ${EGO_BUILD_FLAGS} "github.com/mitchellh/gox/..." || die
# The dev target sets causes build.sh to set appropriate XC_OS
# and XC_ARCH, and skips generation of an unused zip file,
# avoiding a dependency on app-arch/zip.
PATH=${PATH}:${S}/bin \
emake -C "${S}/src/${EGO_PN}" dev
}
src_install() {
local x
dobin "${S}/bin/${PN}"
keepdir /etc/consul.d
insinto /etc/consul.d
doins "${FILESDIR}/"*.json.example
for x in /var/{lib,log}/${PN}; do
keepdir "${x}"
fowners consul:consul "${x}"
done
newinitd "${FILESDIR}/consul.initd" "${PN}"
newconfd "${FILESDIR}/consul.confd" "${PN}"
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
systemd_dounit "${FILESDIR}/consul.service"
}

@ -1,106 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit systemd user
KEYWORDS="~amd64"
EGO_PN="github.com/hashicorp/consul"
DESCRIPTION="A tool for service discovery, monitoring and configuration"
HOMEPAGE="http://www.consul.io"
SRC_URI="https://github.com/hashicorp/consul/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/mitchellh/gox/archive/c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz -> gox-c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz
https://github.com/mitchellh/iochan/archive/87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz -> iochan-87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz
"
SLOT="0"
LICENSE="MPL-2.0"
IUSE=""
RESTRICT="test"
DEPEND="
>=dev-lang/go-1.7.5:=
>=dev-go/go-tools-0_pre20160121"
RDEPEND=""
pkg_setup() {
enewgroup consul
enewuser consul -1 -1 /var/lib/${PN} consul
}
get_archive_go_package() {
local archive=${1} uri x
for x in ${SRC_URI}; do
if [[ ${x} == http* ]]; then
uri=${x}
elif [[ ${x} == ${archive} ]]; then
break
fi
done
uri=${uri#https://}
echo ${uri%/archive/*}
}
unpack_go_packages() {
local go_package x
# Unpack packages to appropriate locations for GOPATH
for x in ${A}; do
unpack ${x}
if [[ ${x} == *.tar.gz ]]; then
go_package=$(get_archive_go_package ${x})
mkdir -p src/${go_package%/*}
mv ${go_package##*/}-* src/${go_package} || die
fi
done
}
src_unpack() {
mkdir "${S}" || die
cd "${S}" || die
unpack_go_packages
}
src_prepare() {
eapply_user
# Avoid the need to have a git checkout
sed -e 's:^GIT.*::' \
-e 's:-X main.GitCommit.*:" \\:' \
-i "${S}/src/${EGO_PN}/scripts/build.sh" || die
# go install golang.org/x/tools/cmd/stringer: mkdir /usr/lib/go-gentoo/bin/: permission denied
sed -e 's:go get -u -v $(GOTOOLS)::' \
-i "${S}/src/${EGO_PN}/GNUmakefile" || die
}
src_compile() {
export GOPATH="${S}"
go install -v -work -x ${EGO_BUILD_FLAGS} "github.com/mitchellh/gox/..." || die
# The dev target sets causes build.sh to set appropriate XC_OS
# and XC_ARCH, and skips generation of an unused zip file,
# avoiding a dependency on app-arch/zip.
PATH=${PATH}:${S}/bin \
emake -C "${S}/src/${EGO_PN}" dev
}
src_install() {
local x
dobin "${S}/bin/${PN}"
keepdir /etc/consul.d
insinto /etc/consul.d
doins "${FILESDIR}/"*.json.example
for x in /var/{lib,log}/${PN}; do
keepdir "${x}"
fowners consul:consul "${x}"
done
newinitd "${FILESDIR}/consul.initd" "${PN}"
newconfd "${FILESDIR}/consul.confd" "${PN}"
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
systemd_dounit "${FILESDIR}/consul.service"
}

@ -1,104 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit golang-base systemd user
KEYWORDS="~amd64"
EGO_PN="github.com/hashicorp/consul"
DESCRIPTION="A tool for service discovery, monitoring and configuration"
HOMEPAGE="http://www.consul.io"
SRC_URI="https://github.com/hashicorp/consul/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/mitchellh/gox/archive/c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz -> gox-c9740af9c6574448fd48eb30a71f964014c7a837.tar.gz
https://github.com/mitchellh/iochan/archive/87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz -> iochan-87b45ffd0e9581375c491fef3d32130bb15c5bd7.tar.gz
"
SLOT="0"
LICENSE="MPL-2.0"
IUSE=""
RESTRICT="test"
DEPEND="
>=dev-lang/go-1.7.5:=
>=dev-go/go-tools-0_pre20160121"
RDEPEND=""
pkg_setup() {
enewgroup consul
enewuser consul -1 -1 /var/lib/${PN} consul
}
get_archive_go_package() {
local archive=${1} uri x
for x in ${SRC_URI}; do
if [[ ${x} == http* ]]; then
uri=${x}
elif [[ ${x} == ${archive} ]]; then
break
fi
done
uri=${uri#https://}
echo ${uri%/archive/*}
}
unpack_go_packages() {
local go_package x
# Unpack packages to appropriate locations for GOPATH
for x in ${A}; do
unpack ${x}
if [[ ${x} == *.tar.gz ]]; then
go_package=$(get_archive_go_package ${x})
mkdir -p src/${go_package%/*}
mv ${go_package##*/}-* src/${go_package} || die
fi
done
}
src_unpack() {
mkdir "${S}" || die
cd "${S}" || die
unpack_go_packages
}
src_prepare() {
eapply_user
sed -e 's:^\(GIT_DESCRIBE=\).*:\1v'${PV}':' \
-e 's:^\(GIT_COMMIT=\).*:\1:' \
-e 's:^\(GIT_DIRTY=\).*:\1:' \
-e 's:go get -u -v $(GOTOOLS)::' \
-i "${S}/src/${EGO_PN}/GNUmakefile" || die
}
src_compile() {
export GOPATH="${S}"
go install -v -work -x ${EGO_BUILD_FLAGS} "github.com/mitchellh/gox/..." || die
# The dev target sets causes build.sh to set appropriate XC_OS
# and XC_ARCH, and skips generation of an unused zip file,
# avoiding a dependency on app-arch/zip.
PATH=${PATH}:${S}/bin \
emake -C "${S}/src/${EGO_PN}" dev
}
src_install() {
local x
dobin "${S}/bin/${PN}"
keepdir /etc/consul.d
insinto /etc/consul.d
doins "${FILESDIR}/"*.json.example
for x in /var/{lib,log}/${PN}; do
keepdir "${x}"
fowners consul:consul "${x}"
done
newinitd "${FILESDIR}/consul.initd" "${PN}"
newconfd "${FILESDIR}/consul.confd" "${PN}"
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
systemd_dounit "${FILESDIR}/consul.service"
}

@ -5,35 +5,23 @@
description="consul agent"
extra_started_commands="reload"
export GOMAXPROCS=${GOMAXPROCS:-2}
group=${group:-${SVCNAME}}
pidfile=${pidfile:-"/run/${SVCNAME}/${SVCNAME}.pid"}
user=${user:-${SVCNAME}}
command="/usr/bin/${SVCNAME}"
group=${group:-${RC_SVCNAME}}
user=${user:-${RC_SVCNAME}}
pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
command="/usr/bin/${RC_SVCNAME}"
command_args="agent ${command_args:-config-dir=/etc/consul.d}"
command_background="true"
start_stop_daemon_args="--user ${user} --group ${group} \
--stdout /var/log/${SVCNAME}/${SVCNAME}.log \
--stderr /var/log/${SVCNAME}/${SVCNAME}.log"
--stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
--stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
stopsig="SIGINT"
depend() {
need net
after net
}
reload() {
ebegin "Reloading ${SVCNAME}"
ebegin "Reloading ${RC_SVCNAME}"
${command} reload
eend $?
}
start_pre() {
checkpath -d -m 0755 -o "${user}":"${group}" "${pidfile%/*}"
}
stop() {
# SIGINT is required for graceful shutdown of consul agent
ebegin "Stopping ${SVCNAME}"
start-stop-daemon --stop --signal SIGINT --pidfile "${pidfile}"
eend $?
}

@ -2,3 +2,4 @@ DIST duplicity-0.7.10.tar.gz 1543523 SHA256 485fef15526d163c061e00ec08de216cf7d6
DIST duplicity-0.7.11.tar.gz 1550197 SHA256 b047a1590a1f5bb3974643ad2cc9dfdd32f61adbf2c1989191fb12cb59c2ec07 SHA512 81ccb868625b261356b9cb2439659eb7574343c0a15ea7db099746216689a881d9a37b05711c232103ae0e7660b5cdc7dff6475eda81ecbdcfc28bced0eabe75 WHIRLPOOL 1c106933fe4e9ba535a7923e93474457f2ede8979c2f9ed400fb7a819872c05ec2adfd08920d7b81b3e97feb90844f141721fc5ff184e97ec0b3df9da1d311df
DIST duplicity-0.7.12.tar.gz 1552442 SHA256 11cbad44a90891af1bf9e294260ba7c21a1660ccd3ab2c6e736ba74ac5cf0fe6 SHA512 8a532e7bb548c170184666a0ba2b41a15f3002c14edd64b1b1eb4df862647fc6dfde797d6ecf38e326d7c160c31ff521baf351e520835495e1d0e2ddbdb19f0f WHIRLPOOL 872d0b52a0f73507849d585fd5888d4754d5711ab5cc48d72b571cfb14fd1278093022f52238facf608c8b26aa0149f2e614a4819c85aeb9ee94305e81824147
DIST duplicity-0.7.13.1.tar.gz 1553736 SHA256 adb8668fb10e0b0f91cb77f758d02c02bf5c02e6c4835904a82cbdab6db4bef2 SHA512 08672910e61a089086992a1106ffc1e161ae3173514d35ae854eac719a095e48efaf7e298c1329ba3b439c0e97236644e88c615a013bd0e8ea9d956b38346ca6 WHIRLPOOL 2a9fddd1c41cadaa713c83805bce5d3e2de01540de29a47c7d545236e9e713b2004abfbae9977a115727db5fc661904f679cae7d0c9fb01ece04bdce212fb08c
DIST duplicity-0.7.14.tar.gz 1556110 SHA256 7a3eb74a2a36b004b10add2970b37cfbac0bd693d79513e6311c8e4b8c3dd73e SHA512 d814a4da2b23fb586bf2a7a29532ba082756470786f883d9b8cfcd856eabf0db0cdd8e9af5557fe861e439ab058e7586652f91c82c9b99c123cd14c7598b8fc2 WHIRLPOOL 94cf54460e5187a3b2d009eb8cff95c98400e112cc3703bab966ceea33e7414b28ed90d22e3fc46bc7e5fa78a37689c31e49907efb93ad9ca8bbd0bf00645668

@ -0,0 +1,51 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit distutils-r1 versionator
DESCRIPTION="Secure backup system using gnupg to encrypt data"
HOMEPAGE="http://www.nongnu.org/duplicity/"
SRC_URI="https://code.launchpad.net/${PN}/$(get_version_component_range 1-2)-series/${PV}/+download/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="s3 test"
CDEPEND="
net-libs/librsync
app-crypt/gnupg
dev-python/fasteners[${PYTHON_USEDEP}]
"
DEPEND="${CDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]
test? (
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pexpect[${PYTHON_USEDEP}]
)
"
RDEPEND="${CDEPEND}
dev-python/paramiko[${PYTHON_USEDEP}]
s3? ( dev-python/boto[${PYTHON_USEDEP}] )
"
python_prepare_all() {
# workaround until failing test is fixed
local PATCHES=( "${FILESDIR}"/${PN}-0.6.24-skip-test.patch )
distutils-r1_python_prepare_all
sed -i "s/'COPYING',//" setup.py || die
}
python_test() {
esetup.py test
}
pkg_postinst() {
einfo "Duplicity has many optional dependencies to support various backends."
einfo "Currently it's up to you to install them as necessary."
}

@ -1,4 +1,2 @@
DIST libvirt-3.2.0.tar.xz 14057340 SHA256 9481a083b567a07927f239553dd70b5c0d1bff5b9b4ec61be1899981c646209e SHA512 35a9db3d59a3817d15fd6a586a2a73860b3d8a2d2ff37dbea1b4045fe1514c3535fce2eeba0f09df2d0bb9072ed9f1078ca9bad61a37c586eb019ddad3f898c4 WHIRLPOOL 499eb2cbf1367c99c106a747c76087f6ed980cc057cdb10cefe50a8a823a294f67925c98b1baa6ac7e12dcc20c90145b9a0c1e0927772e3b4a046bb4414391a0
DIST libvirt-3.3.0.tar.xz 14043384 SHA256 29e00984174e33cf2183b478382c017de26860452ffee17b73871051264ebb1b SHA512 69166ddd7d4b9ef3b1bf2466e781139ef9b4d224a64acc7b8e6fca8786d36482138a1fe7b7407c0fca3b3d012cb418d168671a3e65e428f023c16493b7718c2d WHIRLPOOL 1b2688f6b9a89608677070b5ce1fd2b2af115336126d4214071bc1abba25056d54dbbf16d6bdfab7582b252a833d3e53e51175d552d5c936b08973c0eed76643
DIST libvirt-3.4.0.tar.xz 14630904 SHA256 42186af6225904d2ada0b494fda4fa777fe5e662a9134686816e7919332c248d SHA512 41a3374e8a171827dfc11feb2ae8c1a9d889912257191b94111f53bbe0521d5bc73c824ea856e4cece257918b244120e9f44c800abe23d0296c85c18b5d14461 WHIRLPOOL 3b4b9ad35f590748fbc63595fab86671f66674d2c40fa8e02860265a39be5b48ed9c66c14ac235b36d29d833475aebbbf57f691e53ac2bd324dacb16507793bf
DIST libvirt-3.5.0.tar.xz 14695760 SHA256 2963bae30d41411a2a8184de6a69cc3bd4dba14d2824b67906263dc35b27b516 SHA512 319d1573e55df0cbfd0808d658fb4ef5484d8381db6fe348b36a650ea60b62b7146882e616e9494109d44c8e57ed956137fb7b51c3895d96bd19e9aee6a3e82c WHIRLPOOL 90dc243e8fb8e619af319f2a8469dc98109a6200bee94f09508c22a75e90f82edf278796cf53ca38a7649e5ad1f5f4c0a258395624f830c1a42538519200637a
DIST libvirt-3.6.0.tar.xz 14797704 SHA256 3a2c97f6950796f300f6a2e0404f4de8e51c3b9430cdb82738439adb0ac59e3d SHA512 6cde735a18cb71c9e6dbb25cd2a8f9c72d55ad7d74bdf97b00d784593f0bc59498917fb235ce04de4428899241520d87bf19c015b80282b3d0c12918d9b8b288 WHIRLPOOL 8185ad998158bac9aa6bc0dd0f590a3d9fb393ad94d308bdc84e60ac5c56e110d5f4a2355e2a10b01a6521d8261ae7484aee275e12a17cc7f2830f169e990596

@ -1,53 +0,0 @@
Important: The openrc libvirtd init script is now broken up into two
separate services: libvirtd, that solely handles the daemon, and
libvirt-guests, that takes care of clients during shutdown/restart of the
host. In order to reenable client handling, edit /etc/conf.d/libvirt-guests
and enable the service and start it:
$ rc-update add libvirt-guests
$ service libvirt-guests start
For the basic networking support (bridged and routed networks) you don't
need any extra software. For more complex network modes including but not
limited to NATed network, you can enable the 'virt-network' USE flag. It
will pull in required runtime dependencies
If you are using dnsmasq on your system, you will have to configure
/etc/dnsmasq.conf to enable the following settings:
bind-interfaces
interface or except-interface
Otherwise you might have issues with your existing DNS server.
For openrc users:
Please use /etc/conf.d/libvirtd to control the '--listen' parameter for
libvirtd.
Use /etc/init.d/libvirt-guests to manage clients on restart/shutdown of
the host. The default configuration will suspend and resume running kvm
guests with 'managedsave'. This behavior can be changed under
/etc/conf.d/libvirt-guests
For systemd users:
Please use /etc/systemd/system/libvirtd.service.d/00gentoo.conf
to control the '--listen' parameter for libvirtd.
The configuration for the 'libvirt-guests.service' is found under
/etc/libvirt/libvirt-guests.conf"
If you have built libvirt without policykit support (USE=-policykit), you
must change the unix sock group and/or perms in /etc/libvirt/libvirtd.conf
in order to allow normal users to connect to libvirtd.
If libvirtd is built with USE=caps, libvirt will now start qemu/kvm VMs
with non-root privileges. Ensure any resources your VMs use are accessible
by qemu:qemu.

@ -0,0 +1,47 @@
From e4cb8500810a310a10a6cb359e1b53fac03ed597 Mon Sep 17 00:00:00 2001
From: "Daniel P. Berrange" <berrange@redhat.com>
Date: Fri, 11 Aug 2017 17:19:53 +0100
Subject: [PATCH] rpc: avoid ssh interpreting malicious hostname as arguments
Inspired by the recent GIT / Mercurial security flaws
(http://blog.recurity-labs.com/2017-08-10/scm-vulns),
consider someone/something manages to feed libvirt a bogus
URI such as:
virsh -c qemu+ssh://-oProxyCommand=gnome-calculator/system
In this case, the hosname "-oProxyCommand=gnome-calculator"
will get interpreted as an argument to ssh, not a hostname.
Fortunately, due to the set of args we have following the
hostname, SSH will then interpret our bit of shell script
that runs 'nc' on the remote host as a cipher name, which is
clearly invalid. This makes ssh exit during argv parsing and
so it never tries to run gnome-calculator.
We are lucky this time, but lets be more paranoid, by using
'--' to explicitly tell SSH when it has finished seeing
command line options. This forces it to interpret
"-oProxyCommand=gnome-calculator" as a hostname, and thus
see a fail from hostname lookup.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
---
src/rpc/virnetsocket.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index d228c8a8c..23089afef 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -868,7 +868,7 @@ int virNetSocketNewConnectSSH(const char *nodename,
if (!netcat)
netcat = "nc";
- virCommandAddArgList(cmd, nodename, "sh", "-c", NULL);
+ virCommandAddArgList(cmd, "--", nodename, "sh", "-c", NULL);
virBufferEscapeShell(&buf, netcat);
if (virBufferCheckError(&buf) < 0) {
--
2.13.5

@ -1,235 +0,0 @@
#!/sbin/openrc-run
description="Virtual Machine Management (libvirt) Guests"
depend() {
need libvirtd
}
# set the default to QEMU
[ -z "${LIBVIRT_URIS}" ] && LIBVIRT_URIS="qemu:///system"
# default to suspending the VM via managedsave
case "${LIBVIRT_SHUTDOWN}" in
managedsave|shutdown|destroy) ;;
*) LIBVIRT_SHUTDOWN="managedsave" ;;
esac
# default to 500 seconds
[ -z ${LIBVIRT_MAXWAIT} ] && LIBVIRT_MAXWAIT=500
gueststatefile="/var/lib/libvirt/libvirt-guests.state"
netstatefile="/var/lib/libvirt/libvirt-net.state"
do_virsh() {
local hvuri=$1
shift
# if unset, default to qemu
[ -z ${hvuri} ] && hvuri="qemu:///system"
# if only qemu was supplied then correct the value
[ "xqemu" = x${hvuri} ] && hvuri="qemu:///system"
# Silence errors because virsh always throws an error about
# not finding the hypervisor version when connecting to libvirtd
# lastly strip the blank line at the end
LC_ALL=C virsh -c ${hvuri} "$@" 2>/dev/null | head -n -1
}
libvirtd_dom_list() {
# Only work with domains by their UUIDs
local hvuri=$1
shift
do_virsh "${hvuri}" list --uuid $@
}
libvirtd_dom_count() {
local hvuri=$1
shift
libvirtd_dom_list "${hvuri}" $@ | wc -l
}
libvirtd_net_list() {
# Only work with networks by their UUIDs
local hvuri=$1
shift
do_virsh "${hvuri}" net-list --uuid $@
}
libvirtd_net_count() {
local hvuri=$1
shift
libvirtd_net_list "${hvuri}" $@ | wc -l
}
libvirtd_dom_stop() {
# stops all persistent or transient domains for a given URI
# $1 - uri
# $2 - persisent/transient
local uri=$1
local persist=$2
local shutdown_type=${LIBVIRT_SHUTDOWN}
local counter=${LIBVIRT_MAXWAIT}
local dom_name=
local dom_as=
local dom_ids=
local uuid=
local dom_count=
[ "${persist}" = "--transient" ] && shutdown_type="shutdown"
[ -n "${counter}" ] || counter=500
einfo " Shutting down domain(s) ..."
# grab all persistent or transient domains running
dom_ids=$(libvirtd_dom_list ${uri} ${persist})
for uuid in ${dom_ids}; do
# Get the name
dom_name=$(do_virsh ${uri} domname ${uuid})
einfo " ${dom_name}"
# Get autostart state
dom_as=$(do_virsh ${uri} dominfo ${uuid} | \
awk '$1 == "Autostart:" { print $2 }')
if [ "${persist}" = "--persistent" ]; then
# Save our running state only if LIBVIRT_IGNORE_AUTOSTART != yes
if [ "x${LIBVIRT_IGNORE_AUTOSTART}" = "xyes" ] && \
[ ${dom_as} = "enabled" ]; then
:
else
echo "${uri} ${uuid}" >> ${gueststatefile}
fi
fi
# Now let's stop it
do_virsh "${uri}" ${shutdown_type} ${uuid} > /dev/null
done
dom_count="$(libvirtd_dom_count ${uri} ${persist})"
while [ ${dom_count} -gt 0 ] && [ ${counter} -gt 0 ] ; do
dom_count="$(libvirtd_dom_count ${uri} ${persist})"
sleep 1
if [ "${shutdown_type}" = "shutdown" ]; then
counter=$((${counter} - 1))
fi
echo -n "."
done
if [ "${shutdown_type}" = "shutdown" ]; then
# grab all domains still running
dom_ids=$(libvirtd_dom_list ${uri} ${persist})
for uuid in ${dom_ids}; do
dom_name=$(do_virsh ${uri} domname ${uuid})
eerror " ${dom_name} forcibly stopped"
do_virsh "${uri}" destroy ${uuid} > /dev/null
done
fi
}
libvirtd_net_stop() {
# stops all persistent or transient domains for a given URI
# $1 - uri
# $2 - persisent/transient
local uri=$1
local persist=$2
local uuid=
local net_name=
if [ "${LIBVIRT_NET_SHUTDOWN}" != "no" ]; then
einfo " Shutting down network(s):"
for uuid in $(libvirtd_net_list ${uri} ${persist}); do
net_name=$(do_virsh ${uri} net-name ${uuid})
einfo " ${net_name}"
if [ "${persist}" = "--persistent" ]; then
# Save our running state
echo "${uri} ${uuid}" >> ${netstatefile}
fi
# Actually stop the network
do_virsh qemu net-destroy ${uuid} > /dev/null
done
fi
}
start() {
local uri=
local uuid=
local name=
for uri in ${LIBVIRT_URIS}; do
do_virsh "${uri}" connect
if [ $? -ne 0 ]; then
eerror "Failed to connect to '${uri}'. Domains may not start."
fi
done
[ ! -e "${netstatefile}" ] && touch "${netstatefile}"
[ ! -e "${gueststatefile}" ] && touch "${gueststatefile}"
# if the user didn't want to start any guests up then respect their wish
[ "x${LIBVIRT_START}" = "xno" ] && return 0
# start networks
ebegin "Starting libvirt networks"
while read -r uri uuid
do
# ignore trash
[ -z "${uri}" ] || [ -z "${uuid}" ] && continue
name=$(do_virsh "${uri}" net-name ${uuid})
einfo " ${name}"
do_virsh "${uri}" net-start ${uuid} > /dev/null
done <"${netstatefile}"
eend 0
# start domains
ebegin "Starting libvirt domains"
while read -r uri uuid
do
# ignore trash
[ -z "${uri}" ] || [ -z "${uuid}" ] && continue
name=$(do_virsh "${uri}" domname ${uuid})
einfo " ${name}"
do_virsh "${uri}" start ${uuid} > /dev/null
done <"${gueststatefile}"
eend 0
}
stop() {
local counter=
local dom_name=
local net_name=
local dom_ids=
local uuid=
local dom_count=
rm -f "${gueststatefile}"
[ $? -ne 0 ] && eerror "Unable to save domain state"
rm -f "${netstatefile}"
[ $? -ne 0 ] && eerror "Unable to save net state"
for uri in ${LIBVIRT_URIS}; do
einfo "Stopping libvirt domains and networks for ${uri}"
libvirtd_dom_stop "${uri}" "--persistent"
libvirtd_dom_stop "${uri}" "--transient"
libvirtd_net_stop "${uri}" "--persistent"
libvirtd_net_stop "${uri}" "--transient"
einfo "Done stopping domains and networks for ${uri}"
done
}

@ -1,37 +0,0 @@
#!/sbin/openrc-run
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
description="Virtual Machine Management daemon (libvirt)"
LIBVIRTD_OPTS=${LIBVIRTD_OPTS:-"${LIBVIRTD_OPTS}"}
LIBVIRTD_TIMEOUT=${LIBVIRTD_TERMTIMEOUT:-"TERM/25/KILL/5"}
command="/usr/sbin/libvirtd"
command_args="-d ${LIBVIRTD_OPTS}"
start_stop_daemon_args="--env KRB5_KTNAME=/etc/libvirt/krb5.tab"
pidfile="/var/run/libvirtd.pid"
retry="${LIBVIRTD_TERMTIMEOUT}"
depend() {
USE_FLAG_FIREWALLD
use USE_FLAG_AVAHI USE_FLAG_ISCSI USE_FLAG_RBD dbus virtlockd
after ntp-client ntpd nfs nfsmount portmap rpc.statd iptables ip6tables ebtables corosync sanlock cgconfig xenconsoled
}
start_pre() {
# Test configuration directories in /etc/libvirt/ to be either not
# present or a directory, i.e. not a regular file, bug #532892
local has_errors=0
ebegin "Checking for suitable directories in \"/etc/libvirt\""
for dir in lxc nwfilter qemu storage; do
if [ -f /etc/libvirt/$dir ]; then
has_errors=1
eerror "/etc/libvirt/$dir was created as a regular file. It must be either"
eerror "a directory or not present for libvirtd to start up successfully."
fi
done
eend ${has_errors} "Please correct the error(s) above"
}

@ -1,382 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools eutils user linux-info systemd readme.gentoo-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://libvirt.org/libvirt.git"
SRC_URI=""
KEYWORDS="amd64 x86"
SLOT="0"
else
# Versions with 4 numbers are stable updates:
if [[ ${PV} =~ ^[0-9]+(\.[0-9]+){3} ]]; then
SRC_URI="http://libvirt.org/sources/stable_updates/${P}.tar.xz"
else
SRC_URI="http://libvirt.org/sources/${P}.tar.xz"
fi
KEYWORDS="amd64 x86"
SLOT="0/${PV}"
fi
DESCRIPTION="C toolkit to manipulate virtual machines"
HOMEPAGE="http://www.libvirt.org/"
LICENSE="LGPL-2.1"
IUSE="
apparmor audit +caps +dbus firewalld fuse glusterfs iscsi +libvirtd lvm
libssh lxc +macvtap nfs nls numa openvz parted pcap phyp policykit
+qemu rbd sasl selinux +udev uml +vepa virtualbox virt-network
wireshark-plugins xen zeroconf zfs elibc_glibc
"
REQUIRED_USE="
firewalld? ( virt-network )
libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
lxc? ( caps libvirtd )
openvz? ( libvirtd )
policykit? ( dbus )
qemu? ( libvirtd )
uml? ( libvirtd )
vepa? ( macvtap )
virt-network? ( libvirtd )
virtualbox? ( libvirtd )
xen? ( libvirtd )"
# gettext.sh command is used by the libvirt command wrappers, and it's
# non-optional, so put it into RDEPEND.
# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
# package will use 3 by default. Since we don't have slot pinning in an API,
# we must go with the most recent
RDEPEND="
app-misc/scrub
dev-libs/libgcrypt:0
dev-libs/libnl:3
>=dev-libs/libxml2-2.7.6
|| ( >=net-analyzer/netcat6-1.0-r2 >=net-analyzer/openbsd-netcat-1.105-r1 )
>=net-libs/gnutls-1.0.25:0=
net-libs/libssh2
>=net-misc/curl-7.18.0
sys-apps/dmidecode
>=sys-apps/util-linux-2.17
sys-devel/gettext
sys-libs/ncurses:0=
sys-libs/readline:=
apparmor? ( sys-libs/libapparmor )
audit? ( sys-process/audit )
caps? ( sys-libs/libcap-ng )
dbus? ( sys-apps/dbus )
elibc_glibc? ( sys-libs/glibc[rpc(+)] )
firewalld? ( net-firewall/firewalld )
fuse? ( >=sys-fs/fuse-2.8.6 )
glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
iscsi? ( sys-block/open-iscsi )
libssh? ( net-libs/libssh )
lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
nfs? ( net-fs/nfs-utils )
numa? (
>sys-process/numactl-2.0.2
sys-process/numad
)
openvz? ( sys-kernel/openvz-sources:* )
parted? (
>=sys-block/parted-1.8[device-mapper]
sys-fs/lvm2[-device-mapper-only(-)]
)
pcap? ( >=net-libs/libpcap-1.0.0 )
policykit? ( >=sys-auth/polkit-0.9 )
qemu? (
>=app-emulation/qemu-0.13.0
dev-libs/yajl
)
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl )
selinux? ( >=sys-libs/libselinux-2.0.85 )
virt-network? (
net-dns/dnsmasq[script]
net-firewall/ebtables
>=net-firewall/iptables-1.4.10[ipv6]
net-misc/radvd
sys-apps/iproute2[-minimal]
)
virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
wireshark-plugins? ( net-analyzer/wireshark:= )
xen? (
app-emulation/xen
app-emulation/xen-tools:=
)
udev? (
virtual/udev
>=x11-libs/libpciaccess-0.10.9
)
zeroconf? ( >=net-dns/avahi-0.6[dbus] )
zfs? ( sys-fs/zfs )"
DEPEND="${RDEPEND}
app-text/xhtml1
dev-lang/perl
dev-libs/libxslt
dev-perl/XML-XPath
virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${PN}-1.3.0-do_not_use_sysconf.patch
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
"${FILESDIR}"/${PN}-3.0.0-fix_paths_for_apparmor.patch
"${FILESDIR}"/${PN}-1.3.4-glibc-2.23.patch
"${FILESDIR}"/${PN}-3.1.0-musl-fix-includes.patch # bug #609488
)
pkg_setup() {
if use qemu; then
enewgroup qemu 77
enewuser qemu 77 -1 -1 "qemu,kvm"
fi
use policykit && enewgroup libvirt
# Check kernel configuration:
CONFIG_CHECK=""
use fuse && CONFIG_CHECK+="
~FUSE_FS"
use lvm && CONFIG_CHECK+="
~BLK_DEV_DM
~DM_MULTIPATH
~DM_SNAPSHOT"
use lxc && CONFIG_CHECK+="
~BLK_CGROUP
~CGROUP_CPUACCT
~CGROUP_DEVICE
~CGROUP_FREEZER
~CGROUP_NET_PRIO
~CGROUP_PERF
~CGROUPS
~CGROUP_SCHED
~CPUSETS
~IPC_NS
~MACVLAN
~NAMESPACES
~NET_CLS_CGROUP
~NET_NS
~PID_NS
~POSIX_MQUEUE
~SECURITYFS
~USER_NS
~UTS_NS
~VETH
~!GRKERNSEC_CHROOT_MOUNT
~!GRKERNSEC_CHROOT_DOUBLE
~!GRKERNSEC_CHROOT_PIVOT
~!GRKERNSEC_CHROOT_CHMOD
~!GRKERNSEC_CHROOT_CAPS"
kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
~DEVPTS_MULTIPLE_INSTANCES"
use macvtap && CONFIG_CHECK+="
~MACVTAP"
use virt-network && CONFIG_CHECK+="
~BRIDGE_EBT_MARK_T
~BRIDGE_NF_EBTABLES
~NETFILTER_ADVANCED
~NETFILTER_XT_CONNMARK
~NETFILTER_XT_MARK
~NETFILTER_XT_TARGET_CHECKSUM"
# Bandwidth Limiting Support
use virt-network && CONFIG_CHECK+="
~BRIDGE_EBT_T_NAT
~NET_ACT_POLICE
~NET_CLS_FW
~NET_CLS_U32
~NET_SCH_HTB
~NET_SCH_INGRESS
~NET_SCH_SFQ"
# Handle specific kernel versions for different features
kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
if kernel_is ge 3 6; then
CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
fi
ERROR_USER_NS="Optional depending on LXC configuration."
if [[ -n ${CONFIG_CHECK} ]]; then
linux-info_pkg_setup
fi
}
src_prepare() {
touch "${S}/.mailmap"
default
if [[ ${PV} = *9999* ]]; then
# git checkouts require bootstrapping to create the configure script.
# Additionally the submodules must be cloned to the right locations
# bug #377279
./bootstrap || die "bootstrap failed"
(
git submodule status | sed 's/^[ +-]//;s/ .*//'
git hash-object bootstrap.conf
) >.git-module-status
fi
# Tweak the init script:
cp "${FILESDIR}/libvirtd.init-r16" "${S}/libvirtd.init" || die
sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
-e "s/USE_FLAG_AVAHI/$(usex zeroconf 'use avahi-daemon' '')/" \
-e "s/USE_FLAG_ISCSI/$(usex iscsi 'use iscsid' '')/" \
-e "s/USE_FLAG_RBD/$(usex rbd 'use ceph' '')/" \
-i "${S}/libvirtd.init" || die "sed failed"
eautoreconf
}
src_configure() {
local myeconfargs=(
$(use_with apparmor)
$(use_with apparmor apparmor-profiles)
$(use_with audit)
$(use_with caps capng)
$(use_with dbus)
$(use_with firewalld)
$(use_with fuse)
$(use_with glusterfs)
$(use_with glusterfs storage-gluster)
$(use_with iscsi storage-iscsi)
$(use_with libvirtd)
$(use_with libssh)
$(use_with lvm storage-lvm)
$(use_with lvm storage-mpath)
$(use_with lxc)
$(use_with macvtap)
$(use_enable nls)
$(use_with numa numactl)
$(use_with numa numad)
$(use_with openvz)
$(use_with parted storage-disk)
$(use_with pcap libpcap)
$(use_with phyp)
$(use_with policykit polkit)
$(use_with qemu)
$(use_with qemu yajl)
$(use_with rbd storage-rbd)
$(use_with sasl)
$(use_with selinux)
$(use_with udev)
$(use_with uml)
$(use_with vepa virtualport)
$(use_with virt-network network)
$(use_with wireshark-plugins wireshark-dissector)
$(use_with xen)
$(use_with xen xen-inotify)
$(use_with xen libxl)
$(use_with zeroconf avahi)
$(use_with zfs storage-zfs)
--without-hal
--without-netcf
--without-sanlock
--without-xenapi
--with-esx
--with-init-script=systemd
--with-qemu-group=$(usex caps qemu root)
--with-qemu-user=$(usex caps qemu root)
--with-remote
--with-storage-fs
--with-vmware
--disable-static
--disable-werror
--with-html-subdir=${PF}/html
--localstatedir=/var
)
if use virtualbox && has_version app-emulation/virtualbox-ose; then
myeconfargs+=( --with-vbox=/usr/lib/virtualbox-ose/ )
else
myeconfargs+=( $(use_with virtualbox vbox) )
fi
econf "${myeconfargs[@]}"
if [[ ${PV} = *9999* ]]; then
# Restore gnulib's config.sub and config.guess
# bug #377279
(cd .gnulib && git reset --hard > /dev/null)
fi
}
src_test() {
cd "${BUILD_DIR}"
# remove problematic tests, bug #591416, bug #591418
sed -i -e 's#commandtest$(EXEEXT) # #' \
-e 's#virfirewalltest$(EXEEXT) # #' \
-e 's#nwfilterebiptablestest$(EXEEXT) # #' \
-e 's#nwfilterxml2firewalltest$(EXEEXT)$##' \
tests/Makefile
export VIR_TEST_DEBUG=1
HOME="${T}" emake check || die "tests failed"
}
src_install() {
emake DESTDIR="${D}" \
SYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)" install
find "${D}" -name '*.la' -delete || die
# Remove bogus, empty directories. They are either not used, or
# libvirtd is able to create them on demand
rm -rf "${D}"/etc/sysconfig
rm -rf "${D}"/var/cache
rm -rf "${D}"/var/run
rm -rf "${D}"/var/log
use libvirtd || return 0
# From here, only libvirtd-related instructions, be warned!
systemd_install_serviced \
"${FILESDIR}"/libvirtd.service.conf libvirtd.service
systemd_newtmpfilesd "${FILESDIR}"/libvirtd.tmpfiles.conf libvirtd.conf
newinitd "${S}/libvirtd.init" libvirtd || die
newinitd "${FILESDIR}/libvirt-guests.init-r2" libvirt-guests || die
newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd || die
newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd || die
newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests || die
DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r2")
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
pkg_preinst() {
# we only ever want to generate this once
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
fi
}
pkg_postinst() {
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
fi
use libvirtd || return 0
# From here, only libvirtd-related instructions, be warned!
readme.gentoo_print_elog
}

@ -1,382 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools eutils user linux-info systemd readme.gentoo-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://libvirt.org/libvirt.git"
SRC_URI=""
KEYWORDS=""
SLOT="0"
else
# Versions with 4 numbers are stable updates:
if [[ ${PV} =~ ^[0-9]+(\.[0-9]+){3} ]]; then
SRC_URI="http://libvirt.org/sources/stable_updates/${P}.tar.xz"
else
SRC_URI="http://libvirt.org/sources/${P}.tar.xz"
fi
KEYWORDS="~amd64 ~arm64 ~x86"
SLOT="0/${PV}"
fi
DESCRIPTION="C toolkit to manipulate virtual machines"
HOMEPAGE="http://www.libvirt.org/"
LICENSE="LGPL-2.1"
IUSE="
apparmor audit +caps +dbus firewalld fuse glusterfs iscsi +libvirtd lvm
libssh lxc +macvtap nfs nls numa openvz parted pcap phyp policykit
+qemu rbd sasl selinux +udev uml +vepa virtualbox virt-network
wireshark-plugins xen zeroconf zfs elibc_glibc
"
REQUIRED_USE="
firewalld? ( virt-network )
libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
lxc? ( caps libvirtd )
openvz? ( libvirtd )
policykit? ( dbus )
qemu? ( libvirtd )
uml? ( libvirtd )
vepa? ( macvtap )
virt-network? ( libvirtd )
virtualbox? ( libvirtd )
xen? ( libvirtd )"
# gettext.sh command is used by the libvirt command wrappers, and it's
# non-optional, so put it into RDEPEND.
# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
# package will use 3 by default. Since we don't have slot pinning in an API,
# we must go with the most recent
RDEPEND="
app-misc/scrub
dev-libs/libgcrypt:0
dev-libs/libnl:3
>=dev-libs/libxml2-2.7.6
|| ( >=net-analyzer/netcat6-1.0-r2 >=net-analyzer/openbsd-netcat-1.105-r1 )
>=net-libs/gnutls-1.0.25:0=
net-libs/libssh2
>=net-misc/curl-7.18.0
sys-apps/dmidecode
>=sys-apps/util-linux-2.17
sys-devel/gettext
sys-libs/ncurses:0=
sys-libs/readline:=
apparmor? ( sys-libs/libapparmor )
audit? ( sys-process/audit )
caps? ( sys-libs/libcap-ng )
dbus? ( sys-apps/dbus )
elibc_glibc? ( sys-libs/glibc[rpc(+)] )
firewalld? ( net-firewall/firewalld )
fuse? ( >=sys-fs/fuse-2.8.6 )
glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
iscsi? ( sys-block/open-iscsi )
libssh? ( net-libs/libssh )
lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
nfs? ( net-fs/nfs-utils )
numa? (
>sys-process/numactl-2.0.2
sys-process/numad
)
openvz? ( sys-kernel/openvz-sources:* )
parted? (
>=sys-block/parted-1.8[device-mapper]
sys-fs/lvm2[-device-mapper-only(-)]
)
pcap? ( >=net-libs/libpcap-1.0.0 )
policykit? ( >=sys-auth/polkit-0.9 )
qemu? (
>=app-emulation/qemu-0.13.0
dev-libs/yajl
)
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl )
selinux? ( >=sys-libs/libselinux-2.0.85 )
virt-network? (
net-dns/dnsmasq[script]
net-firewall/ebtables
>=net-firewall/iptables-1.4.10[ipv6]
net-misc/radvd
sys-apps/iproute2[-minimal]
)
virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
wireshark-plugins? ( net-analyzer/wireshark:= )
xen? (
app-emulation/xen
app-emulation/xen-tools:=
)
udev? (
virtual/udev
>=x11-libs/libpciaccess-0.10.9
)
zeroconf? ( >=net-dns/avahi-0.6[dbus] )
zfs? ( sys-fs/zfs )"
DEPEND="${RDEPEND}
app-text/xhtml1
dev-lang/perl
dev-libs/libxslt
dev-perl/XML-XPath
virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${PN}-1.3.0-do_not_use_sysconf.patch
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
"${FILESDIR}"/${PN}-3.0.0-fix_paths_for_apparmor.patch
"${FILESDIR}"/${PN}-1.3.4-glibc-2.23.patch
"${FILESDIR}"/${PN}-3.1.0-musl-fix-includes.patch # bug #609488
)
pkg_setup() {
if use qemu; then
enewgroup qemu 77
enewuser qemu 77 -1 -1 "qemu,kvm"
fi
use policykit && enewgroup libvirt
# Check kernel configuration:
CONFIG_CHECK=""
use fuse && CONFIG_CHECK+="
~FUSE_FS"
use lvm && CONFIG_CHECK+="
~BLK_DEV_DM
~DM_MULTIPATH
~DM_SNAPSHOT"
use lxc && CONFIG_CHECK+="
~BLK_CGROUP
~CGROUP_CPUACCT
~CGROUP_DEVICE
~CGROUP_FREEZER
~CGROUP_NET_PRIO
~CGROUP_PERF
~CGROUPS
~CGROUP_SCHED
~CPUSETS
~IPC_NS
~MACVLAN
~NAMESPACES
~NET_CLS_CGROUP
~NET_NS
~PID_NS
~POSIX_MQUEUE
~SECURITYFS
~USER_NS
~UTS_NS
~VETH
~!GRKERNSEC_CHROOT_MOUNT
~!GRKERNSEC_CHROOT_DOUBLE
~!GRKERNSEC_CHROOT_PIVOT
~!GRKERNSEC_CHROOT_CHMOD
~!GRKERNSEC_CHROOT_CAPS"
kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
~DEVPTS_MULTIPLE_INSTANCES"
use macvtap && CONFIG_CHECK+="
~MACVTAP"
use virt-network && CONFIG_CHECK+="
~BRIDGE_EBT_MARK_T
~BRIDGE_NF_EBTABLES
~NETFILTER_ADVANCED
~NETFILTER_XT_CONNMARK
~NETFILTER_XT_MARK
~NETFILTER_XT_TARGET_CHECKSUM"
# Bandwidth Limiting Support
use virt-network && CONFIG_CHECK+="
~BRIDGE_EBT_T_NAT
~NET_ACT_POLICE
~NET_CLS_FW
~NET_CLS_U32
~NET_SCH_HTB
~NET_SCH_INGRESS
~NET_SCH_SFQ"
# Handle specific kernel versions for different features
kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
if kernel_is ge 3 6; then
CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
fi
ERROR_USER_NS="Optional depending on LXC configuration."
if [[ -n ${CONFIG_CHECK} ]]; then
linux-info_pkg_setup
fi
}
src_prepare() {
touch "${S}/.mailmap"
default
if [[ ${PV} = *9999* ]]; then
# git checkouts require bootstrapping to create the configure script.
# Additionally the submodules must be cloned to the right locations
# bug #377279
./bootstrap || die "bootstrap failed"
(
git submodule status | sed 's/^[ +-]//;s/ .*//'
git hash-object bootstrap.conf
) >.git-module-status
fi
# Tweak the init script:
cp "${FILESDIR}/libvirtd.init-r16" "${S}/libvirtd.init" || die
sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
-e "s/USE_FLAG_AVAHI/$(usex zeroconf 'use avahi-daemon' '')/" \
-e "s/USE_FLAG_ISCSI/$(usex iscsi 'use iscsid' '')/" \
-e "s/USE_FLAG_RBD/$(usex rbd 'use ceph' '')/" \
-i "${S}/libvirtd.init" || die "sed failed"
eautoreconf
}
src_configure() {
local myeconfargs=(
$(use_with apparmor)
$(use_with apparmor apparmor-profiles)
$(use_with audit)
$(use_with caps capng)
$(use_with dbus)
$(use_with firewalld)
$(use_with fuse)
$(use_with glusterfs)
$(use_with glusterfs storage-gluster)
$(use_with iscsi storage-iscsi)
$(use_with libvirtd)
$(use_with libssh)
$(use_with lvm storage-lvm)
$(use_with lvm storage-mpath)
$(use_with lxc)
$(use_with macvtap)
$(use_enable nls)
$(use_with numa numactl)
$(use_with numa numad)
$(use_with openvz)
$(use_with parted storage-disk)
$(use_with pcap libpcap)
$(use_with phyp)
$(use_with policykit polkit)
$(use_with qemu)
$(use_with qemu yajl)
$(use_with rbd storage-rbd)
$(use_with sasl)
$(use_with selinux)
$(use_with udev)
$(use_with uml)
$(use_with vepa virtualport)
$(use_with virt-network network)
$(use_with wireshark-plugins wireshark-dissector)
$(use_with xen)
$(use_with xen xen-inotify)
$(use_with xen libxl)
$(use_with zeroconf avahi)
$(use_with zfs storage-zfs)
--without-hal
--without-netcf
--without-sanlock
--without-xenapi
--with-esx
--with-init-script=systemd
--with-qemu-group=$(usex caps qemu root)
--with-qemu-user=$(usex caps qemu root)
--with-remote
--with-storage-fs
--with-vmware
--disable-static
--disable-werror
--with-html-subdir=${PF}/html
--localstatedir=/var
)
if use virtualbox && has_version app-emulation/virtualbox-ose; then
myeconfargs+=( --with-vbox=/usr/lib/virtualbox-ose/ )
else
myeconfargs+=( $(use_with virtualbox vbox) )
fi
econf "${myeconfargs[@]}"
if [[ ${PV} = *9999* ]]; then
# Restore gnulib's config.sub and config.guess
# bug #377279
(cd .gnulib && git reset --hard > /dev/null)
fi
}
src_test() {
cd "${BUILD_DIR}"
# remove problematic tests, bug #591416, bug #591418
sed -i -e 's#commandtest$(EXEEXT) # #' \
-e 's#virfirewalltest$(EXEEXT) # #' \
-e 's#nwfilterebiptablestest$(EXEEXT) # #' \
-e 's#nwfilterxml2firewalltest$(EXEEXT)$##' \
tests/Makefile
export VIR_TEST_DEBUG=1
HOME="${T}" emake check || die "tests failed"
}
src_install() {
emake DESTDIR="${D}" \
SYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)" install
find "${D}" -name '*.la' -delete || die
# Remove bogus, empty directories. They are either not used, or
# libvirtd is able to create them on demand
rm -rf "${D}"/etc/sysconfig
rm -rf "${D}"/var/cache
rm -rf "${D}"/var/run
rm -rf "${D}"/var/log
use libvirtd || return 0
# From here, only libvirtd-related instructions, be warned!
systemd_install_serviced \
"${FILESDIR}"/libvirtd.service.conf libvirtd.service
systemd_newtmpfilesd "${FILESDIR}"/libvirtd.tmpfiles.conf libvirtd.conf
newinitd "${S}/libvirtd.init" libvirtd || die
newinitd "${FILESDIR}/libvirt-guests.init-r2" libvirt-guests || die
newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd || die
newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd || die
newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests || die
DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r2")
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
pkg_preinst() {
# we only ever want to generate this once
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
fi
}
pkg_postinst() {
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
fi
use libvirtd || return 0
# From here, only libvirtd-related instructions, be warned!
readme.gentoo_print_elog
}

@ -126,7 +126,8 @@ PATCHES=(
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
"${FILESDIR}"/${PN}-3.0.0-fix_paths_for_apparmor.patch
"${FILESDIR}"/${PN}-1.3.4-glibc-2.23.patch
"${FILESDIR}"/${PN}-3.1.0-musl-fix-includes.patch # bug #609488
"${FILESDIR}"/${PN}-3.1.0-musl-fix-includes.patch # bug #609488
"${FILESDIR}"/${PN}-3.6.0-ssh-malicious-hostname-fix.patch # bug #629462
)
pkg_setup() {

@ -70,7 +70,7 @@ RDEPEND="
dbus? ( sys-apps/dbus )
elibc_glibc? ( sys-libs/glibc[rpc(+)] )
firewalld? ( net-firewall/firewalld )
fuse? ( >=sys-fs/fuse-2.8.6 )
fuse? ( >=sys-fs/fuse-2.8.6:= )
glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
iscsi? ( sys-block/open-iscsi )
libssh? ( net-libs/libssh )

@ -1 +1,2 @@
DIST qemu-2.10.0.tar.bz2 30955656 SHA256 7e9f39e1306e6dcc595494e91c1464d4b03f55ddd2053183e0e1b69f7f776d48 SHA512 ea21c014030f8a902df159641e6ccb45f0850ac5cb1cb8ab6845124c44ea5def54845e7bc66a6e80d624c78069f9baa913ee5119704076ae4ff47ab018ace9f9 WHIRLPOOL 58f846788fdf2b0c90e6d17ce921a1fe02556968d38ffc11be7e32b81ebc723dfeaa790f22d8085d4f388eb01fe0daa3ddbc00630c5ecba083df33cc9709fb39
DIST qemu-2.9.0.tar.bz2 28720490 SHA256 00bfb217b1bb03c7a6c3261b819cfccbfb5a58e3e2ceff546327d271773c6c14 SHA512 4b28966eec0ca44681e35fcfb64a4eaef7c280b8d65c91d03f2efa37f76278fd8c1680e5798c7a30dbfcc8f3c05f4a803f48b8a2dfec3a4181bac079b2a5e422 WHIRLPOOL d79fe89eb271a56aee0cbd328e5f96999176b711afb5683d164b7b99d91e6dd2bfaf6e2ff4cd820a941c94f28116765cb07ffd5809d75c2f9654a67d56bfc0c1

@ -0,0 +1,80 @@
From 1201d308519f1e915866d7583d5136d03cc1d384 Mon Sep 17 00:00:00 2001
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Fri, 25 Aug 2017 01:35:53 +0200
Subject: [PATCH] slirp: fix clearing ifq_so from pending packets
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The if_fastq and if_batchq contain not only packets, but queues of packets
for the same socket. When sofree frees a socket, it thus has to clear ifq_so
from all the packets from the queues, not only the first.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Cc: qemu-stable@nongnu.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
slirp/socket.c | 39 +++++++++++++++++++++++----------------
1 file changed, 23 insertions(+), 16 deletions(-)
diff --git a/slirp/socket.c b/slirp/socket.c
index ecec0295a9..cb7b5b608d 100644
--- a/slirp/socket.c
+++ b/slirp/socket.c
@@ -60,29 +60,36 @@ socreate(Slirp *slirp)
}
/*
+ * Remove references to so from the given message queue.
+ */
+static void
+soqfree(struct socket *so, struct quehead *qh)
+{
+ struct mbuf *ifq;
+
+ for (ifq = (struct mbuf *) qh->qh_link;
+ (struct quehead *) ifq != qh;
+ ifq = ifq->ifq_next) {
+ if (ifq->ifq_so == so) {
+ struct mbuf *ifm;
+ ifq->ifq_so = NULL;
+ for (ifm = ifq->ifs_next; ifm != ifq; ifm = ifm->ifs_next) {
+ ifm->ifq_so = NULL;
+ }
+ }
+ }
+}
+
+/*
* remque and free a socket, clobber cache
*/
void
sofree(struct socket *so)
{
Slirp *slirp = so->slirp;
- struct mbuf *ifm;
- for (ifm = (struct mbuf *) slirp->if_fastq.qh_link;
- (struct quehead *) ifm != &slirp->if_fastq;
- ifm = ifm->ifq_next) {
- if (ifm->ifq_so == so) {
- ifm->ifq_so = NULL;
- }
- }
-
- for (ifm = (struct mbuf *) slirp->if_batchq.qh_link;
- (struct quehead *) ifm != &slirp->if_batchq;
- ifm = ifm->ifq_next) {
- if (ifm->ifq_so == so) {
- ifm->ifq_so = NULL;
- }
- }
+ soqfree(so, &slirp->if_fastq);
+ soqfree(so, &slirp->if_batchq);
if (so->so_emu==EMU_RSH && so->extra) {
sofree(so->extra);
--
2.13.5

@ -8,6 +8,8 @@ PYTHON_REQ_USE="ncurses,readline"
PLOCALES="bg de_DE fr_FR hu it tr zh_CN"
FIRMWARE_ABI_VERSION="2.9.0-r52"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
user udev fcaps readme.gentoo-r1 pax-utils l10n
@ -17,7 +19,7 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2"
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86 ~x86-fbsd"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
@ -135,7 +137,7 @@ SOFTMMU_TOOLS_DEPEND="
)
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy[static-libs(+)] )
snappy? ( app-arch/snappy:=[static-libs(+)] )
spice? (
>=app-emulation/spice-protocol-0.12.3
>=app-emulation/spice-0.12.0[static-libs(+)]
@ -150,16 +152,17 @@ SOFTMMU_TOOLS_DEPEND="
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
X86_FIRMWARE_DEPEND="
>=sys-firmware/ipxe-1.0.0_p20130624
pin-upstream-blobs? (
~sys-firmware/seabios-1.10.1
~sys-firmware/edk2-ovmf-2017_pre20170505[binary]
~sys-firmware/ipxe-1.0.0_p20160620
~sys-firmware/seabios-1.10.2[binary,seavgabios]
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
!pin-upstream-blobs? (
sys-firmware/seabios
sys-firmware/edk2-ovmf
sys-firmware/ipxe
>=sys-firmware/seabios-1.10.2[seavgabios]
sys-firmware/sgabios
sys-firmware/vgabios
)"
CDEPEND="
@ -191,11 +194,7 @@ RDEPEND="${CDEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-2.5.0-cflags.patch
"${FILESDIR}"/${PN}-2.5.0-sysmacros.patch
"${FILESDIR}"/${PN}-2.9.0-CVE-2017-8309.patch # bug 616870
"${FILESDIR}"/${PN}-2.9.0-CVE-2017-8379.patch # bug 616872
"${FILESDIR}"/${PN}-2.9.0-CVE-2017-8380.patch # bug 616874
"${FILESDIR}"/${PN}-2.9.0-CVE-2017-8112.patch # bug 616636
"${FILESDIR}"/${PN}-2.9.0-CVE-2017-7493.patch # bug 618808
"${FILESDIR}"/${PN}-2.10.0-CVE-2017-13711.patch # bug 629350
)
STRIP_MASK="/usr/share/qemu/palcode-clipper"
@ -678,27 +677,30 @@ src_install() {
cd "${S}"
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
dodoc docs/qmp-*.txt
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin"
rm "${ED}/usr/share/qemu/bios-256k.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the vgabios packaged one
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin
dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
@ -723,20 +725,50 @@ src_install() {
readme.gentoo_create_doc
}
pkg_postinst() {
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ! version_is_at_least ${FIRMWARE_ABI_VERSION} ${pv}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
ewarn " $(best_version sys-firmware/edk2-ovmf)"
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/seabios)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
echo " $(best_version sys-firmware/edk2-ovmf)"
if has_version 'sys-firmware/edk2-ovmf[binary]'; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/seabios)"
if has_version 'sys-firmware/seabios[binary]'; then
@ -744,5 +776,5 @@ pkg_info() {
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/vgabios)"
echo " $(best_version sys-firmware/sgabios)"
}

@ -19,7 +19,7 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"

@ -1,2 +1,3 @@
DIST virt-viewer-4.0.tar.gz 897593 SHA256 1c427b0ea104539342519334735e6f667d5784c42a5aafc253b580875d88fa1f SHA512 7d1e470a159c8784dff6c4fb1f9228689f76ddbdae314bd57f86c6dc975d1d50590732640768b7e08d6a3bbc02eefbde090cd8f05c97151cd8abdc7ae97e66ea WHIRLPOOL e07b472e8a562c608d69cc211c34c6558ba08694f92ea6250f23c719a3a32f82d3f8b20d4fa5fd992497a8402bc40b6abdde80345ca1ec4e539826807cdd81ec
DIST virt-viewer-5.0.tar.gz 908726 SHA256 0b2ded8b927a782a20fcf93b5377051285eec5677501b593d650213e79b88b2e SHA512 924fa88fd0ca7cc5b3d0a348c0d1104337fe0a06328e32110b4417c64f5d9efaf6df534adbc1eaa69157d229763b773307fa834a66f16156e3703731525eb690 WHIRLPOOL 43ac427fd1318f7579db35141e15edacdd55b0b979a726f0b4f801954376754e33b93e042c8fc8799b5fa7ef08fa3cf18eb35c607cde60a28b7719e7fd731df5
DIST virt-viewer-6.0.tar.gz 922916 SHA256 9037bd7773da4dae761871ec1ab646cfefb4d7e48b1504dddf315a548ccb18b2 SHA512 656d48f8ab387d025c406cb5f56164d79104c6c377fae37d9c524b90e512fe873d5d1d6c435d4ea95e71468b7d3384b89789495075cafb1a9e67f583f7d49ec2 WHIRLPOOL 3c31975474386b3c17b14663fa97d2d365624960469632d0aabad0f8184aaef3b278188b13d2cffdd11152a2c7d02f60d1f14701b7e9fef948c68dbcc58c156e

@ -0,0 +1,36 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit gnome2
DESCRIPTION="Graphical console client for connecting to virtual machines"
HOMEPAGE="http://virt-manager.org/"
SRC_URI="http://virt-manager.org/download/sources/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="sasl +spice +vnc"
RDEPEND=">=app-emulation/libvirt-0.10.0[sasl?]
app-emulation/libvirt-glib
>=dev-libs/libxml2-2.6
x11-libs/gtk+:3
spice? ( >=net-misc/spice-gtk-0.33[sasl?,gtk3] )
vnc? ( >=net-libs/gtk-vnc-0.5.0[sasl?,gtk3] )"
DEPEND="${RDEPEND}
dev-lang/perl
>=dev-util/intltool-0.35.0
virtual/pkgconfig
spice? ( >=app-emulation/spice-protocol-0.12.10 )"
REQUIRED_USE="|| ( spice vnc )"
src_configure() {
gnome2_src_configure \
--disable-update-mimedb \
--without-ovirt \
$(use_with vnc gtk-vnc) \
$(use_with spice spice-gtk)
}

@ -23,7 +23,7 @@ COMMON_DEPEND="
dev-qt/qtsql:5
dev-qt/qtwebkit:5
dev-qt/qtxml:5
astrality? ( net-libs/telepathy-qt[qt5] )
astrality? ( net-libs/telepathy-qt[qt5(+)] )
autoidler? (
dev-qt/qtx11extras:5
x11-libs/libXScrnSaver

@ -1,3 +1 @@
DIST evemu-2.4.0.tar.xz 505848 SHA256 0706ea5a830203f9cdb30c0e10c8c41d2427128ba9041543a5ae157fa3b4a30e SHA512 e629a0eedb6ce58d3f088b279f45b87117b30b01af07e53dd5515ced7ea15293476fafe9aa9832e6758a6953ad7a462b0fae0a0996181eec327377176cf00c7a WHIRLPOOL ad909f5e074dfdd0d6c9f3660844024f94da587f97cf9181e5ab1232fe077c8df47cca045b598a472bbf6ec776c2cbf313908a800d95a539173770080fb388ce
DIST evemu-2.5.0.tar.xz 506092 SHA256 541cc138f0215b7d0cd4ad5e6bb1402518ffc5e31294c36bb67b4ff1791bb27f SHA512 7de37aeaa122501783f4b658bd18353a6f413ff57ce1feec71e0eedd21eba3e479ff6ffb79dbb7658a337c824f4575915f13edcfdf8d2ce52a1fdbd41e1610be WHIRLPOOL 094294327d3226918ded20bd5e36d05abe78b3aa46f45bd777ae0442033911cfafd572fb4f92b7509037b4e264e016c0287234d6b16e17e81e9ea1a38c4298c8
DIST evemu-2.6.0.tar.xz 507032 SHA256 ed81dd4552ffeb92c346b47e56b249c67f1cb37d5b31fc073ea0ad4858ae3dcc SHA512 8dd3be18abc6e36a79b91e6099116048e4fd45a96531a5c2773c84618d6ba7089ee8734b51b9309462c393dc7c3a83d87438bcbdcd5876803165a4ea439aff83 WHIRLPOOL a1369b512c15b50a6ad90749cd2b24b488b65b445fa687fa823a1b7654d19fc363d1fd8105f86aa61992a4770137718346c06a1858e9f842891ec0237a85d2fd

@ -1,43 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils python-single-r1
DESCRIPTION="tools and bindings for kernel evdev device emulation, data capture, and replay"
HOMEPAGE="https://www.freedesktop.org/wiki/Evemu/"
SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
LICENSE="LGPL-3 GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="python? ( ${PYTHON_DEPS} )
>=dev-libs/libevdev-1.2.99.902"
DEPEND="app-arch/xz-utils
${RDEPEND}"
src_configure() {
econf \
$(use_enable static-libs static) \
$(use_enable python python-bindings)
}
src_test() {
if use python ; then
if [[ ! ${EUID} -eq 0 ]] || has sandbox $FEATURES || has usersandbox $FEATURES ; then
ewarn "Tests require userpriv, sandbox, and usersandbox to be disabled in FEATURES."
else
emake check
fi
fi
}
src_install() {
default
prune_libtool_files
}

@ -1,43 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils python-single-r1
DESCRIPTION="tools and bindings for kernel evdev device emulation, data capture, and replay"
HOMEPAGE="https://www.freedesktop.org/wiki/Evemu/"
SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
LICENSE="LGPL-3 GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="python? ( ${PYTHON_DEPS} )
>=dev-libs/libevdev-1.2.99.902"
DEPEND="app-arch/xz-utils
${RDEPEND}"
src_configure() {
econf \
$(use_enable static-libs static) \
$(use_enable python python-bindings)
}
src_test() {
if use python ; then
if [[ ! ${EUID} -eq 0 ]] || has sandbox $FEATURES || has usersandbox $FEATURES ; then
ewarn "Tests require userpriv, sandbox, and usersandbox to be disabled in FEATURES."
else
emake check
fi
fi
}
src_install() {
default
prune_libtool_files
}

@ -1,10 +1,10 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils python-single-r1
inherit ltprune python-single-r1
DESCRIPTION="tools and bindings for kernel evdev device emulation, data capture, and replay"
HOMEPAGE="https://www.freedesktop.org/wiki/Evemu/"

@ -3,13 +3,12 @@
EAPI=6
EGIT_REPO_URI="git://git.savannah.gnu.org/screen.git"
EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on
inherit eutils flag-o-matic toolchain-funcs pam autotools user git-r3
DESCRIPTION="screen manager with VT100/ANSI terminal emulation"
HOMEPAGE="https://www.gnu.org/software/screen/"
EGIT_REPO_URI="https://git.savannah.gnu.org/git/screen.git"
EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on
LICENSE="GPL-2"
SLOT="0"

@ -92,7 +92,7 @@ COMMON_DEPEND="
)
openexr? ( media-libs/openexr )
pdf? ( app-text/poppler:=[qt5] )
phonon? ( media-libs/phonon[qt5] )
phonon? ( media-libs/phonon[qt5(+)] )
spacenav? ( dev-libs/libspnav )
truetype? ( media-libs/freetype:2 )
X? (

@ -33,7 +33,7 @@ COMMON_DEPEND="
sys-libs/zlib
x11-libs/libX11
x11-libs/libXext
video? ( media-libs/phonon[qt5] )"
video? ( media-libs/phonon[qt5(+)] )"
RDEPEND="${COMMON_DEPEND}
app-text/ghostscript-gpl
app-text/psutils

@ -33,7 +33,7 @@ COMMON_DEPEND="
sys-libs/zlib
x11-libs/libX11
x11-libs/libXext
video? ( media-libs/phonon[qt5] )"
video? ( media-libs/phonon[qt5(+)] )"
RDEPEND="${COMMON_DEPEND}
app-text/ghostscript-gpl
app-text/psutils

@ -33,7 +33,7 @@ COMMON_DEPEND="
sys-libs/zlib
x11-libs/libX11
x11-libs/libXext
video? ( media-libs/phonon[qt5] )"
video? ( media-libs/phonon[qt5(+)] )"
RDEPEND="${COMMON_DEPEND}
app-text/ghostscript-gpl
app-text/psutils

@ -1,13 +1,21 @@
#!/sbin/openrc-run
# Copyright 1999-2014 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
SVCNAME=etcd
PIDPATH=/var/run/${SVCNAME}
PIDFILE=${PIDPATH}/${SVCNAME}.pid
LOGPATH=/var/log/${SVCNAME}
DATADIR=/var/lib/${SVCNAME}
USER=$SVCNAME
pidfile=/run/${RC_SVCNAME}.pid
LOGPATH=/var/log/${RC_SVCNAME}
DATADIR=/var/lib/${RC_SVCNAME}
command_user=${RC_SVCNAME}
command=/usr/bin/etcd
command_args="
-name=${ETCD_NAME}
-data-dir=${ETCD_DATA_DIR}
${ETCD_OPTS}"
command_background=true
start_stop_daemon_args="
--chdir ${ETCD_DATA_DIR}
-1 ${LOGPATH}/${RC_SVCNAME}.log
-2 ${LOGPATH}/${RC_SVCNAME}.err"
depend() {
need net
@ -15,39 +23,13 @@ depend() {
after bootmisc
}
start() {
if [ ! -d "$PIDPATH" ] ; then
mkdir -p "$PIDPATH"
chown $USER:$USER "$PIDPATH"
start_pre() {
if [ ! -d "${LOGPATH}" ] ; then
mkdir -p "${LOGPATH}"
chown "${command_user}:${command_user}" "${LOGPATH}"
fi
if [ ! -d "$LOGPATH" ] ; then
mkdir -p "$LOGPATH"
chown $USER:$USER "$LOGPATH"
if [ ! -d "${ETCD_DATA_DIR}" ] ; then
mkdir -p "${ETCD_DATA_DIR}"
chown "${command_user}:${command_user}" "${ETCD_DATA_DIR}"
fi
if [ ! -d "$ETCD_DATA_DIR" ] ; then
mkdir -p "$ETCD_DATA_DIR"
chown $USER:$USER "$ETCD_DATA_DIR"
fi
ebegin "Starting $SVCNAME"
start-stop-daemon --start \
--pidfile "$PIDFILE" \
--user $USER \
--chdir "$ETCD_DATA_DIR" \
-1 "$LOGPATH/$SVCNAME.log" \
-2 "$LOGPATH/$SVCNAME.err" \
--background \
--make-pidfile \
--exec /usr/bin/etcd -- \
-name=$ETCD_NAME \
-data-dir="$ETCD_DATA_DIR" \
$ETCD_OPTS
eend $? "Failed to start $SVCNAME"
}
stop() {
ebegin "Stopping $SVCNAME"
start-stop-daemon --stop --pidfile $PIDFILE
eend $? "Failed to stop $SVCNAME"
rm -f "$PIDFILE"
}

@ -0,0 +1,31 @@
diff -Naur mysql++-3.2.2-ORIG/lib/dbdriver.cpp mysql++-3.2.2/lib/dbdriver.cpp
--- mysql++-3.2.2-ORIG/lib/dbdriver.cpp 2017-07-14 14:56:06.206629443 +0200
+++ mysql++-3.2.2/lib/dbdriver.cpp 2017-07-14 15:28:34.690826959 +0200
@@ -257,7 +257,11 @@
}
if ((n == 1) &&
+#ifdef CLIENT_LONG_PASSWORD
(o >= CLIENT_LONG_PASSWORD) &&
+#else
+ (o >= CLIENT_MYSQL) &&
+#endif
#if MYSQL_VERSION_ID > 40000 // highest flag value varies by version
(o <= CLIENT_MULTI_RESULTS)
#else
diff -aurN a/lib/common.h b/lib/common.h
--- a/lib/common.h 2016-12-30 18:44:44.000000000 -0500
+++ b/lib/common.h 2017-09-01 09:12:12.270089396 -0400
@@ -130,12 +130,6 @@
#define MYSQLPP_PATH_SEPARATOR '/'
#endif
-#if defined(MYSQLPP_MYSQL_HEADERS_BURIED)
-# include <mysql/mysql_version.h>
-#else
-# include <mysql_version.h>
-#endif
-
namespace mysqlpp {
/// \brief Alias for 'true', to make code requesting exceptions more

@ -3,7 +3,7 @@
EAPI=6
inherit eutils
inherit autotools libtool flag-o-matic
DESCRIPTION="C++ API interface to the MySQL database"
HOMEPAGE="http://tangentsoft.net/mysql++/"
@ -19,16 +19,28 @@ DEPEND="${RDEPEND}"
DOCS=( CREDITS.txt HACKERS.txt Wishlist doc/ssqls-pretty )
src_prepare() {
# Bug filed upstream about deprecated std::auto_ptr
append-cxxflags $(test-flags-CXX -Wno-deprecated-declarations)
# Bad symlink for libtool in the archive
rm "${S}/ltmain.sh" || die
eapply "${FILESDIR}/${PN}-3.2.1-gold.patch"
eapply "${FILESDIR}/${PN}-3.2.3-mariadb-10.2.patch"
eapply_user
_elibtoolize --auto-ltdl --install --copy --force
elibtoolize
# Current MySQL libraries are always with threads and slowly being removed
sed -i -e "s/mysqlclient_r/mysqlclient/" "${S}/configure" || die
rm "${S}/doc/"README-*-RPM.txt || die
}
src_configure() {
local myconf="--enable-thread-check --with-mysql=${EPREFIX}/usr"
econf ${myconf}
local myconf=(
--enable-thread-check
--with-mysql="${EPREFIX}/usr"
--with-mysql-lib="${EPREFIX}$(mysql_config --variable=pkglibdir)"
--with-mysql-include="${EPREFIX}$(mysql_config --variable=pkgincludedir)"
)
econf "${myconf[@]}"
}
src_install() {

@ -0,0 +1,158 @@
# HG changeset patch
# User Jim Baker <jim.baker@rackspace.com>
# Date 1454384221 25200
# Node ID d06e29d100c04576735e86c75a26c5f33669bb72
# Parent b6735606c13df95f770527e629954407f82808c5
Do not deserialize PyFunction objects. Fixes #2454
Instead use standard Python pickling; or subclass PyFunction.
diff --git a/Lib/test/test_java_integration.py b/Lib/test/test_java_integration.py
--- a/Lib/test/test_java_integration.py
+++ b/Lib/test/test_java_integration.py
@@ -14,8 +14,9 @@ import re
from collections import deque
from test import test_support
-from java.lang import (ClassCastException, ExceptionInInitializerError, String, Runnable, System,
- Runtime, Math, Byte)
+from java.lang import (
+ ClassCastException, ExceptionInInitializerError, UnsupportedOperationException,
+ String, Runnable, System, Runtime, Math, Byte)
from java.math import BigDecimal, BigInteger
from java.net import URI
from java.io import (ByteArrayInputStream, ByteArrayOutputStream, File, FileInputStream,
@@ -656,13 +657,30 @@ class SerializationTest(unittest.TestCas
self.assertEqual(date_list, roundtrip_serialization(date_list))
def test_java_serialization_pycode(self):
-
def universal_answer():
return 42
serialized_code = roundtrip_serialization(universal_answer.func_code)
self.assertEqual(eval(serialized_code), universal_answer())
+ def test_java_serialization_pyfunction(self):
+ # Not directly supported due to lack of general utility
+ # (globals will usually be in the function object in
+ # func_globals), and problems with unserialization
+ # vulnerabilities. Users can always subclass from PyFunction
+ # for specific cases, as seen in PyCascading
+ import new
+ def f():
+ return 6 * 7 + max(0, 1, 2)
+ # However, using the new module, it's possible to create a
+ # function with no globals, which means the globals will come
+ # from the current context
+ g = new.function(f.func_code, {}, "g")
+ # But still forbid Java deserialization of this function
+ # object. Use pickling or other support instead.
+ with self.assertRaises(UnsupportedOperationException):
+ roundtrip_serialization(g)
+
def test_builtin_names(self):
import __builtin__
names = [x for x in dir(__builtin__)]
@@ -872,7 +890,7 @@ class SingleMethodInterfaceTest(unittest
future.get()
self.assertEqual(x, [42])
- @unittest.skip("FIXME: not working")
+ @unittest.skip("FIXME: not working; see http://bugs.jython.org/issue2115")
def test_callable_object(self):
callable_obj = CallableObject()
future = self.executor.submit(callable_obj)
diff --git a/Lib/test/test_new.py b/Lib/test/test_new.py
--- a/Lib/test/test_new.py
+++ b/Lib/test/test_new.py
@@ -24,18 +24,10 @@ class NewTest(unittest.TestCase):
c = new.instance(C, {'yolks': 3})
o = new.instance(C)
-
- # __dict__ is a non dict mapping in Jython
- if test_support.is_jython:
- self.assertEqual(len(o.__dict__), 0, "new __dict__ should be empty")
- else:
- self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
+ self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
del o
o = new.instance(C, None)
- if test_support.is_jython:
- self.assertEqual(len(o.__dict__), 0, "new __dict__ should be empty")
- else:
- self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
+ self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
del o
def break_yolks(self):
@@ -109,7 +101,14 @@ class NewTest(unittest.TestCase):
test_closure(g, (1, 1), ValueError) # closure is wrong size
test_closure(f, g.func_closure, ValueError) # no closure needed
- if hasattr(new, 'code') and not test_support.is_jython:
+ # [Obsolete] Note: Jython will never have new.code()
+ #
+ # Who said that?!!! guess what, we do! :)
+ #
+ # Unfortunately we still need a way to compile to Python bytecode,
+ # so support is still incomplete, as seen in the fact that we need
+ # to get values from CPython 2.7.
+ if hasattr(new, 'code'):
def test_code(self):
# bogus test of new.code()
def f(a): pass
@@ -117,16 +116,16 @@ class NewTest(unittest.TestCase):
c = f.func_code
argcount = c.co_argcount
nlocals = c.co_nlocals
- stacksize = c.co_stacksize
+ stacksize = 1 # TODO c.co_stacksize
flags = c.co_flags
- codestring = c.co_code
- constants = c.co_consts
- names = c.co_names
+ codestring = 'd\x00\x00S' # TODO c.co_code
+ constants = (None,) # TODO c.co_consts
+ names = () # TODO c.co_names
varnames = c.co_varnames
filename = c.co_filename
name = c.co_name
firstlineno = c.co_firstlineno
- lnotab = c.co_lnotab
+ lnotab = '' # TODO c.co_lnotab, but also see http://bugs.jython.org/issue1638
freevars = c.co_freevars
cellvars = c.co_cellvars
diff --git a/src/org/python/core/PyBytecode.java b/src/org/python/core/PyBytecode.java
--- a/src/org/python/core/PyBytecode.java
+++ b/src/org/python/core/PyBytecode.java
@@ -66,6 +66,12 @@ public class PyBytecode extends PyBaseCo
debug = defaultDebug;
+ if (argcount < 0) {
+ throw Py.ValueError("code: argcount must not be negative");
+ } else if (nlocals < 0) {
+ throw Py.ValueError("code: nlocals must not be negative");
+ }
+
co_argcount = nargs = argcount;
co_varnames = varnames;
co_nlocals = nlocals; // maybe assert = varnames.length;
diff --git a/src/org/python/core/PyFunction.java b/src/org/python/core/PyFunction.java
--- a/src/org/python/core/PyFunction.java
+++ b/src/org/python/core/PyFunction.java
@@ -545,6 +545,9 @@ public class PyFunction extends PyObject
@Override
public boolean isSequenceType() { return false; }
+ private Object readResolve() {
+ throw new UnsupportedOperationException();
+ }
/* Traverseproc implementation */
@Override

@ -20,7 +20,7 @@ IUSE="examples test"
CP_DEPEND="dev-java/antlr:3
dev-java/netty-transport:0
=dev-java/asm-5.0.3:4
>=dev-java/asm-5:4
dev-java/commons-compress:0
dev-java/guava:20
dev-java/jffi:1.2
@ -66,6 +66,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-2.7_beta1-dont-always-recompile-classes.patch
"${FILESDIR}"/${PN}-2.7_beta2-maxrepeat-import.patch
"${FILESDIR}"/${PN}-2.7.0-build.xml.patch
"${FILESDIR}"/CVE-2016-4000.patch
)
src_prepare() {

@ -2,20 +2,14 @@ DIST ruby-2.1.10.tar.xz 9362868 SHA256 5be9f8d5d29d252cd7f969ab7550e31bbb001feb4
DIST ruby-2.1.9.tar.xz 9395648 SHA256 39f203f7498aed2456fb500147fada5adcbf102d89d4f6aca773ebcadd8ea82a SHA512 1f331a8910fd7a9ab9c41bf56aef12041dd413ad49c696f6df2c9a7ec3a3d5cdf383f2a3d30949ea37b8ecb39f50355e526412b36ed4e07b60733d9db4d2bd14 WHIRLPOOL bb2fa158d837f9c278cab93ecb1a8f6a00ddff12c40d1fa5ffb6b55741dc71268fef40fc9f30508dc89b27a05fe9f3b4fbf739ba69ab4e62f669f82a15d26dfa
DIST ruby-2.2.6.tar.xz 10487776 SHA256 9414ecc0d09cf71c9a24e8dc82fcc87919ac7359fb08db2791d6c32bfd157339 SHA512 a2cfde1c6df4df6b996f8d86c52b255fd43b469f8b9f0d7a81ce5f4de949a67025d8bead4ce61f03263eb6a8378b156b843f97b429208afaa1d3bfd0a7af4ef4 WHIRLPOOL 77b01fbd54f77196bca93d0120474436dcdc2e8d437cf70ca1382ed38c58cf05c27e9896cb4b2afd61ea2862ce6b864d707cd4682e17dfc7912d4a74da2b741e
DIST ruby-2.2.7.tar.xz 10507528 SHA256 234c8aee6543da9efd67008e6e7ee740d41ed57a52e797f65043c3b5ec3bcb53 SHA512 21bebec6d0972f4e6f2988f471c58520e32096e43a61d627eb2210df283a6fd6d0fc49da9063f2d086f3d489f13e948462a6f084f9e931b4fde6102f490cc225 WHIRLPOOL 35e1470b7d5de25efd213b70befa7b0ce599f3e2ef73aacdf343d7ed3fe14836ab0899124cce8670c00470af9428a81a7f693cb5897448c2d2e824d5b8a1819b
DIST ruby-2.3.3.tar.xz 11444164 SHA256 1a4fa8c2885734ba37b97ffdb4a19b8fba0e8982606db02d936e65bac07419dc SHA512 73dd6ed896ff52d953b153b2cab359c87953ea77521878f1ee16c1e217cc46bcb253100debe61ba631e6ffa0bc773e592d603a374508ed5189a311136ccd8d20 WHIRLPOOL aa368a2d0f067ac9d0c6fed62c0e1bdfac0d49c473cd49be9b2774ed3097b76286d091a0887528227f36307b8c1217a2493c5c48fb462db52a3e23cb251a7f79
DIST ruby-2.3.4.tar.xz 11450108 SHA256 341cd9032e9fd17c452ed8562a8d43f7e45bfe05e411d0d7d627751dd82c578c SHA512 9e3adc2de6703e50e75db37db2981006d4c69759929d61db6a0d63627cfe5977d0ad66d2c69d7161cfc0c0d1c2cb38e5181a06ccd2790df2f72ec25c2ad01e02 WHIRLPOOL 1e9d4112134910ebf1bd241b5031551fdfa882405ca850d9b11af9dc79251379971e18666600d88ef2054c4794a98142df150f83cb06f1dff616faee45ffe1cc
DIST ruby-2.4.1.tar.xz 9939188 SHA256 4fc8a9992de3e90191de369270ea4b6c1b171b7941743614cc50822ddc1fe654 SHA512 e6fd290b6edd166348b70f0f1c56f7ed9d956c4c1eb91d97d0548041ca4196b9b75ec1ad35c745bdbfd4de195899093e7205d7f02b014ecf1c48e6f31cf25903 WHIRLPOOL b45a6e3bd70e6ef802d084ad87ad0eddd85932e07939bd6ed6a2e6944aa289f231971fedd7d1eece792becb08312f37b80073a2a9df070f61f32747c0708523e
DIST ruby-patches-2.1.10.tar.bz2 1931 SHA256 7e02c1b6a6352693bfd5828c9d1a7633a52baa57d8770df182ed0d8b450a3341 SHA512 85928207db4f76e58925e50d39d73db2d521674385ce3232828377e7d7bb4252aafb9f93d6045d4c159bf094b472af61ef9307203db313bf28918fe35e0f3a21 WHIRLPOOL 17a698b0a09be15f444ea34b33e9aa1d029fbd572c565072a92480bf7b6b21f1b6b88b0da3183a486bae30e7e65f3172cd72b7336be1dc5974b62bd8e2b9ef7a
DIST ruby-patches-2.1.9.tar.bz2 1931 SHA256 7e02c1b6a6352693bfd5828c9d1a7633a52baa57d8770df182ed0d8b450a3341 SHA512 85928207db4f76e58925e50d39d73db2d521674385ce3232828377e7d7bb4252aafb9f93d6045d4c159bf094b472af61ef9307203db313bf28918fe35e0f3a21 WHIRLPOOL 17a698b0a09be15f444ea34b33e9aa1d029fbd572c565072a92480bf7b6b21f1b6b88b0da3183a486bae30e7e65f3172cd72b7336be1dc5974b62bd8e2b9ef7a
DIST ruby-patches-2.2.6.tar.bz2 2272 SHA256 f54373704ce8df732490e8d1e7e35188503faacc5278fe0ab0d8c07bdc762fed SHA512 ed8bff8f730ccb114e62784d29541f276b2821d9eb121a9772dc4aabc139b688f2b14f5f27710098a8cd751c62d31b46170b427ad54dc4f6490c003450ae1583 WHIRLPOOL 8598c9284252c1e7cc9f9019c5f468ce5ab8b4ae013e71c631cd00cc8bfde068b041f1bc6851bb2962982a1e46cbde0ddc51c186ea41638a7881c587c658e603
DIST ruby-patches-2.2.7-r2.tar.bz2 5338 SHA256 cf7002fe00e18b35d7d2a70c3d0a51a57a8aa0d9b3f312c5f844b349a759c21c SHA512 ba97f1875acaff31babd9279470414777971bc163ea2578185cfd037441b5aba23075b20db9c1cbd98b6e0d6cf8355dc0f226fdd82c870c48b51c8531319029f WHIRLPOOL 92db2244170cdce944975f14e61bc18fb7b8e69e5236eb0877306527507ea97fface4cbe331a6741c876f2ee4f4b9f3d2b6fb8504cb15962851634f89b61aa60
DIST ruby-patches-2.2.7-r3.tar.bz2 5757 SHA256 3470915805a6264ad74a9c7cb7280c4be3585b4dc255685e53205eb4c90536f9 SHA512 9766a44633ddc33e575e2f82d0954ea54620ce7ff7f73d58e76dc3c8ab1cb664c02bc3dac5ca5834d955d5cdfc8d3b647f91c19160e3a9f62c9a69839705702e WHIRLPOOL 6476c46449424a73b75ce4605b2501240b20972960064f0c6380afba67c5472563292dd7d1965400c641b746715c3ff547566d674244b127699196043ab87d18
DIST ruby-patches-2.3.3-r1.tar.bz2 2223 SHA256 f0a803173564368e5cf31162e1dba901c46640f9e861255f6cbe14256d18f3eb SHA512 bb47000e516017c1fedf7c5313b0628fa734030e69bd0fed1c06a38dd115b8c50837e3dd917f272e24abf5609c4c12793ae4570bfd7d6210290785bf2f8287bd WHIRLPOOL 0b0d4dcf7df4ff3ff11610bfe7a7b29ed621b45b412cb7618a6572f98a568ac67419bd852b193cfc3aa0968382cf9400a578511e9e8fb8b2125bc876e733bd64
DIST ruby-patches-2.3.4-r1.tar.bz2 2255 SHA256 32bb888f3ea9e81e4fdff5e852493aafc8f12bfcf9997981f7b7588d6e8ec9c1 SHA512 af7ad3255cf8450859e3c5564393ca106893fd1e40178ad153fb8e66871d30e326f63d48c1904fac5c353408f71e767c72d49fdbf47198c041a628b41c51c868 WHIRLPOOL dc412a788ec77dc9dad4fd631fc8aa5c909b9d21bf6b0b538c4ba398c1670cb01fbf1e4d92a38fa869b96f786707a9c45c7fe5ca7e04f75ff428b20d9fb34c53
DIST ruby-patches-2.3.4-r2.tar.bz2 3423 SHA256 5bea5f60033bfaf711c62004dfb4ed3d677b3a96d98de30ffe18ccd40c8533c3 SHA512 502bceb711e4ae1add64dde1ca94cfbb09c8a69010b8e640bb41d8278c0bb8073d3b6c3350217b9775a76746d3bdbc46f0b51342f4812e36341f0671c574d28e WHIRLPOOL cae21a87e76e3da40ee8d2a73c028bc658c6e6b6860b9f4e656fb769830734396a1ccf47453f355636e252fe3f8d3fc44d427d08249c08f37a6fdbffcdc25c8e
DIST ruby-patches-2.2.7-r4.tar.bz2 6460 SHA256 2f7c0414d65870bf89539d6e737e9c9e5b78188d3305a5d001d562619375ee04 SHA512 a5891c893b9f5219a6b17e0628678f1714a0c04d8699a272e91aa2ecf1068677b78da60475c32ddcea5a988d1d0d2469fada58da56ef5821f03f47b30855f2ee WHIRLPOOL 4521ea39407f396db2ef646162f7cc093e3137733ad20bff2761763fd8f3161d604f2a594cb41f5f494fffeb221b8d70cefe74020ae7dcbe3ce99083237cf68e
DIST ruby-patches-2.3.4-r3.tar.bz2 4698 SHA256 196bbafe0c43718b4e2120e2e4d681befe9ccba1d2607fb9459d670c74d5bd38 SHA512 f2867c3460e3a276849b09bd367949024aa8c0e4631fef6bd46e1ef44d56dfe2a7baa88ea640b8953252e566d7927178da50195b6382d8fd8e1b9ef7d9ceb2fc WHIRLPOOL 9ba584dcc0055f4401f4345da7b161d08b4a4651ea669b7a26c7504d3aeb650051080d089652c2ae39e0163609cbef1f480a46555a4f3af8297180215929d472
DIST ruby-patches-2.3.4.tar.bz2 2255 SHA256 32bb888f3ea9e81e4fdff5e852493aafc8f12bfcf9997981f7b7588d6e8ec9c1 SHA512 af7ad3255cf8450859e3c5564393ca106893fd1e40178ad153fb8e66871d30e326f63d48c1904fac5c353408f71e767c72d49fdbf47198c041a628b41c51c868 WHIRLPOOL dc412a788ec77dc9dad4fd631fc8aa5c909b9d21bf6b0b538c4ba398c1670cb01fbf1e4d92a38fa869b96f786707a9c45c7fe5ca7e04f75ff428b20d9fb34c53
DIST ruby-patches-2.4.1-r1.tar.bz2 2047 SHA256 9560b8e8dc4a5517814df07aa635c9269f5e7cff5a15827a25a9f0811194e450 SHA512 b35db875a7e4a226e75eb6f7bc68b4bc97cc699bdc5f6930015e55cdc324b67b9883a2aa574c9c9a8b5dc5345c4df8a5ca8ace5b794b3e4de6517f3eefd25745 WHIRLPOOL fc5d226f46fe4ee1c86f6fff51ec9184b8c0ec08a1793eab365437d4ce2fd573cfc8857386cd10932f7dde05254bc975eff5b7986aea429730c606147fae2a5c
DIST ruby-patches-2.4.1-r2.tar.bz2 4030 SHA256 f1beac832d3bd94b8a0be137da845ce96edd574be61f25945150e9a351e4ee73 SHA512 e3f141710a23e4716696fdd5fd898386b32ce6e9d729738591bde8a74f9af8353e0a3f5f9c48403443c6c1ee074b5c2f3b5e9503d96b57de5c6c484ccb337b40 WHIRLPOOL 327404741b8448f7d49ad3ca3cfe915b60881348fc98e18027276f26d4381237f67b7f8d849df765e76184c2f4a92861b585ddf9b25dcb485e4ac5e2b4ad43cd
DIST ruby-patches-2.3.4-r4.tar.bz2 5483 SHA256 47470aac5d2e941c3781ebd820a725dcf11da1688f8299d0408bcc9540295647 SHA512 d5dbfbbd3b2bfc43d2e7a34c4de7203470f6050875a85fc313505e224c0089fdc44045130ef6dd791d50e1f4c22afc369d3549c7860a9694d182334ce6e3687e WHIRLPOOL c6049425955a05fdcbdd859782aa6c9c372cedfbe4962c1a48c7be4e1c9d29db3010444ac68882491fc35a1f53df7d5096dc3593e4bc67c4afb40aa16609a1b3
DIST ruby-patches-2.4.1-r3.tar.bz2 4589 SHA256 6a096f444d1281ac1ce8fd391d085741d3f41527ed0f9b893d7276c17e7b9bdd SHA512 8507189b192fd9f7f2591a2e417526e7f8baf9d2330669b13f79759c06f7729684772e74fee88c78b0ae5b266ad08c5694fcd173f4fb44c34f4cb4d1042cd773 WHIRLPOOL 81c992c4bf5bdc8a9091c68a31ffea1e52cb024388be193173bc6ad254b005bed0d3fec2a50bf4fd6e07044e386ab41f5e5b102ed27742cb53f1d381cf0a3d4a
DIST ruby-patches-2.4.1.tar.bz2 2047 SHA256 9560b8e8dc4a5517814df07aa635c9269f5e7cff5a15827a25a9f0811194e450 SHA512 b35db875a7e4a226e75eb6f7bc68b4bc97cc699bdc5f6930015e55cdc324b67b9883a2aa574c9c9a8b5dc5345c4df8a5ca8ace5b794b3e4de6517f3eefd25745 WHIRLPOOL fc5d226f46fe4ee1c86f6fff51ec9184b8c0ec08a1793eab365437d4ce2fd573cfc8857386cd10932f7dde05254bc975eff5b7986aea429730c606147fae2a5c
DIST ruby-patches-2.4.1-r4.tar.bz2 5381 SHA256 39d2f61c76b6d2c8d0524167f5355a166e7ae3eb128447517b308d5b927ff44e SHA512 168d1353f22df8884ce6dbb2ee7fb81573b9997e480f57d7da4e9504ab5b2ce7bbccad237276c71775d0730c1a6a8920978e3b26eaa06fe3c94495272af77b74 WHIRLPOOL d4d3c715715886149ea91bcc7a2da0298e88434db570eee07241eb3c74cc1d9984342212290c9b0d6adcf9e79e4c08af7b179d9be2dd45b334ae386eb23fa157

@ -30,7 +30,7 @@ SRC_URI="mirror://ruby/2.2/${MY_P}.tar.xz
https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
LICENSE="|| ( Ruby-BSD BSD-2 )"
KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs ncurses +readline"
RDEPEND="

@ -1,242 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
#PATCHSET=1
inherit autotools eutils flag-o-matic multilib versionator
MY_P="${PN}-$(get_version_component_range 1-3)"
S=${WORKDIR}/${MY_P}
SLOT=$(get_version_component_range 1-2)
MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
RUBYVERSION=2.3.0
if [[ -n ${PATCHSET} ]]; then
if [[ ${PVR} == ${PV} ]]; then
PATCHSET="${PV}-r0.${PATCHSET}"
else
PATCHSET="${PVR}.${PATCHSET}"
fi
else
PATCHSET="${PVR}"
fi
DESCRIPTION="An object-oriented scripting language"
HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz
https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
LICENSE="|| ( Ruby-BSD BSD-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs ncurses +readline"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( sys-libs/gdbm )
jemalloc? ( dev-libs/jemalloc )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
socks5? ( >=net-proxy/dante-1.1.13 )
tk? (
dev-lang/tcl:0=[threads]
dev-lang/tk:0=[threads]
)
ncurses? ( sys-libs/ncurses:0= )
readline? ( sys-libs/readline:0= )
dev-libs/libyaml
virtual/libffi
sys-libs/zlib
>=app-eselect/eselect-ruby-20151229
!<dev-ruby/rdoc-3.9.4
!<dev-ruby/rubygems-1.8.10-r1"
DEPEND="${RDEPEND}"
BUNDLED_GEMS="
>=dev-ruby/did_you_mean-1.0.0:1[ruby_targets_ruby23]
>=dev-ruby/minitest-5.8.3[ruby_targets_ruby23]
>=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby23]
>=dev-ruby/power_assert-0.2.6[ruby_targets_ruby23]
>=dev-ruby/rake-10.4.2[ruby_targets_ruby23]
>=dev-ruby/test-unit-3.1.5[ruby_targets_ruby23]
"
PDEPEND="
${BUNDLED_GEMS}
virtual/rubygems[ruby_targets_ruby23]
>=dev-ruby/json-1.8.3[ruby_targets_ruby23]
rdoc? ( >=dev-ruby/rdoc-4.2.1[ruby_targets_ruby23] )
xemacs? ( app-xemacs/ruby-modes )"
src_prepare() {
EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
epatch "${WORKDIR}/patches"
einfo "Unbundling gems..."
cd "$S"
# Remove bundled gems that we will install via PDEPEND, bug
# 539700. Use explicit version numbers to ensure rm fails when they
# change so we can update dependencies accordingly.
rm -f gems/{did_you_mean-1.0.0,minitest-5.8.3,net-telnet-0.1.1,power_assert-0.2.6,rake-10.4.2,test-unit-3.1.5}.gem || die
# Fix a hardcoded lib path in configure script
sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
configure.in || die "sed failed"
eautoreconf
}
src_configure() {
local modules= myconf=
# -fomit-frame-pointer makes ruby segfault, see bug #150413.
filter-flags -fomit-frame-pointer
# In many places aliasing rules are broken; play it safe
# as it's risky with newer compilers to leave it as it is.
append-flags -fno-strict-aliasing
# SuperH needs this
use sh && append-flags -mieee
# Socks support via dante
if use socks5 ; then
# Socks support can't be disabled as long as SOCKS_SERVER is
# set and socks library is present, so need to unset
# SOCKS_SERVER in that case.
unset SOCKS_SERVER
fi
# Increase GC_MALLOC_LIMIT if set (default is 8000000)
if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
fi
# ipv6 hack, bug 168939. Needs --enable-ipv6.
use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
# Determine which modules *not* to build depending in the USE flags.
if ! use readline ; then
modules="${modules},readline"
fi
if ! use berkdb ; then
modules="${modules},dbm"
fi
if ! use gdbm ; then
modules="${modules},gdbm"
fi
if ! use ssl ; then
modules="${modules},openssl"
fi
if ! use ncurses ; then
modules="${modules},curses"
fi
if ! use tk ; then
modules="${modules},tk"
fi
# Provide an empty LIBPATHENV because we disable rpath but we do not
# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
# #564272
INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
--program-suffix=${MY_SUFFIX} \
--with-soname=ruby${MY_SUFFIX} \
--docdir=${EPREFIX}/usr/share/doc/${P} \
--enable-shared \
--enable-pthread \
--disable-rpath \
--with-out-ext="${modules}" \
$(use_enable jemalloc jemalloc) \
$(use_enable socks5 socks) \
$(use_enable doc install-doc) \
--enable-ipv6 \
$(use_enable debug) \
${myconf} \
--enable-option-checking=no \
|| die "econf failed"
}
src_compile() {
emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
}
src_test() {
emake -j1 V=1 test || die "make test failed"
elog "Ruby's make test has been run. Ruby also ships with a make check"
elog "that cannot be run until after ruby has been installed."
elog
if use rubytests; then
elog "You have enabled rubytests, so they will be installed to"
elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
elog "than root, and you must place them into a writeable directory."
elog "Then call: "
elog
elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
else
elog "Enable the rubytests USE flag to install the make check tests"
fi
}
src_install() {
# Remove the remaining bundled gems. We do this late in the process
# since they are used during the build to e.g. create the
# documentation.
rm -rf ext/json || die
# Ruby is involved in the install process, we don't want interference here.
unset RUBYOPT
local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
LD_LIBRARY_PATH="${S}:${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
for d in $(find "${S}/ext" -type d) ; do
RUBYLIB="${RUBYLIB}:$d"
done
export LD_LIBRARY_PATH RUBYLIB
emake V=1 DESTDIR="${D}" install || die "make install failed"
# Remove installed rubygems and rdoc copy
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
rm -rf "${D}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
rm -rf "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
if use doc; then
make DESTDIR="${D}" install-doc || die "make install-doc failed"
fi
if use examples; then
insinto /usr/share/doc/${PF}
doins -r sample
fi
dodoc ChangeLog NEWS doc/NEWS* README* || die
if use rubytests; then
pushd test
insinto /usr/share/${PN}-${SLOT}/test
doins -r .
popd
fi
}
pkg_postinst() {
if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
eselect ruby set ruby${MY_SUFFIX}
fi
elog
elog "To switch between available Ruby profiles, execute as root:"
elog "\teselect ruby set ruby(19|20|...)"
elog
}
pkg_postrm() {
eselect ruby cleanup
}

@ -1,242 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
#PATCHSET=1
inherit autotools eutils flag-o-matic multilib versionator
MY_P="${PN}-$(get_version_component_range 1-3)"
S=${WORKDIR}/${MY_P}
SLOT=$(get_version_component_range 1-2)
MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
RUBYVERSION=2.3.0
if [[ -n ${PATCHSET} ]]; then
if [[ ${PVR} == ${PV} ]]; then
PATCHSET="${PV}-r0.${PATCHSET}"
else
PATCHSET="${PVR}.${PATCHSET}"
fi
else
PATCHSET="${PVR}"
fi
DESCRIPTION="An object-oriented scripting language"
HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz
https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
LICENSE="|| ( Ruby-BSD BSD-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs ncurses +readline"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( sys-libs/gdbm )
jemalloc? ( dev-libs/jemalloc )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
socks5? ( >=net-proxy/dante-1.1.13 )
tk? (
dev-lang/tcl:0=[threads]
dev-lang/tk:0=[threads]
)
ncurses? ( sys-libs/ncurses:0= )
readline? ( sys-libs/readline:0= )
dev-libs/libyaml
virtual/libffi
sys-libs/zlib
>=app-eselect/eselect-ruby-20151229
!<dev-ruby/rdoc-3.9.4
!<dev-ruby/rubygems-1.8.10-r1"
DEPEND="${RDEPEND}"
BUNDLED_GEMS="
>=dev-ruby/did_you_mean-1.0.0:1[ruby_targets_ruby23]
>=dev-ruby/minitest-5.8.3[ruby_targets_ruby23]
>=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby23]
>=dev-ruby/power_assert-0.2.6[ruby_targets_ruby23]
>=dev-ruby/rake-10.4.2[ruby_targets_ruby23]
>=dev-ruby/test-unit-3.1.5[ruby_targets_ruby23]
"
PDEPEND="
${BUNDLED_GEMS}
virtual/rubygems[ruby_targets_ruby23]
>=dev-ruby/json-1.8.3[ruby_targets_ruby23]
rdoc? ( >=dev-ruby/rdoc-4.2.1[ruby_targets_ruby23] )
xemacs? ( app-xemacs/ruby-modes )"
src_prepare() {
EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
epatch "${WORKDIR}/patches"
einfo "Unbundling gems..."
cd "$S"
# Remove bundled gems that we will install via PDEPEND, bug
# 539700. Use explicit version numbers to ensure rm fails when they
# change so we can update dependencies accordingly.
rm -f gems/{did_you_mean-1.0.0,minitest-5.8.3,net-telnet-0.1.1,power_assert-0.2.6,rake-10.4.2,test-unit-3.1.5}.gem || die
# Fix a hardcoded lib path in configure script
sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
configure.in || die "sed failed"
eautoreconf
}
src_configure() {
local modules= myconf=
# -fomit-frame-pointer makes ruby segfault, see bug #150413.
filter-flags -fomit-frame-pointer
# In many places aliasing rules are broken; play it safe
# as it's risky with newer compilers to leave it as it is.
append-flags -fno-strict-aliasing
# SuperH needs this
use sh && append-flags -mieee
# Socks support via dante
if use socks5 ; then
# Socks support can't be disabled as long as SOCKS_SERVER is
# set and socks library is present, so need to unset
# SOCKS_SERVER in that case.
unset SOCKS_SERVER
fi
# Increase GC_MALLOC_LIMIT if set (default is 8000000)
if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
fi
# ipv6 hack, bug 168939. Needs --enable-ipv6.
use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
# Determine which modules *not* to build depending in the USE flags.
if ! use readline ; then
modules="${modules},readline"
fi
if ! use berkdb ; then
modules="${modules},dbm"
fi
if ! use gdbm ; then
modules="${modules},gdbm"
fi
if ! use ssl ; then
modules="${modules},openssl"
fi
if ! use ncurses ; then
modules="${modules},curses"
fi
if ! use tk ; then
modules="${modules},tk"
fi
# Provide an empty LIBPATHENV because we disable rpath but we do not
# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
# #564272
INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
--program-suffix=${MY_SUFFIX} \
--with-soname=ruby${MY_SUFFIX} \
--docdir=${EPREFIX}/usr/share/doc/${P} \
--enable-shared \
--enable-pthread \
--disable-rpath \
--with-out-ext="${modules}" \
$(use_with jemalloc jemalloc) \
$(use_enable socks5 socks) \
$(use_enable doc install-doc) \
--enable-ipv6 \
$(use_enable debug) \
${myconf} \
--enable-option-checking=no \
|| die "econf failed"
}
src_compile() {
emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
}
src_test() {
emake -j1 V=1 test || die "make test failed"
elog "Ruby's make test has been run. Ruby also ships with a make check"
elog "that cannot be run until after ruby has been installed."
elog
if use rubytests; then
elog "You have enabled rubytests, so they will be installed to"
elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
elog "than root, and you must place them into a writeable directory."
elog "Then call: "
elog
elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
else
elog "Enable the rubytests USE flag to install the make check tests"
fi
}
src_install() {
# Remove the remaining bundled gems. We do this late in the process
# since they are used during the build to e.g. create the
# documentation.
rm -rf ext/json || die
# Ruby is involved in the install process, we don't want interference here.
unset RUBYOPT
local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
LD_LIBRARY_PATH="${S}:${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
for d in $(find "${S}/ext" -type d) ; do
RUBYLIB="${RUBYLIB}:$d"
done
export LD_LIBRARY_PATH RUBYLIB
emake V=1 DESTDIR="${D}" install || die "make install failed"
# Remove installed rubygems and rdoc copy
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
rm -rf "${D}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
rm -rf "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
if use doc; then
make DESTDIR="${D}" install-doc || die "make install-doc failed"
fi
if use examples; then
insinto /usr/share/doc/${PF}
doins -r sample
fi
dodoc ChangeLog NEWS doc/NEWS* README* || die
if use rubytests; then
pushd test
insinto /usr/share/${PN}-${SLOT}/test
doins -r .
popd
fi
}
pkg_postinst() {
if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
eselect ruby set ruby${MY_SUFFIX}
fi
elog
elog "To switch between available Ruby profiles, execute as root:"
elog "\teselect ruby set ruby(19|20|...)"
elog
}
pkg_postrm() {
eselect ruby cleanup
}

@ -1,242 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
#PATCHSET=1
inherit autotools eutils flag-o-matic multilib versionator
MY_P="${PN}-$(get_version_component_range 1-3)"
S=${WORKDIR}/${MY_P}
SLOT=$(get_version_component_range 1-2)
MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
RUBYVERSION=2.3.0
if [[ -n ${PATCHSET} ]]; then
if [[ ${PVR} == ${PV} ]]; then
PATCHSET="${PV}-r0.${PATCHSET}"
else
PATCHSET="${PVR}.${PATCHSET}"
fi
else
PATCHSET="${PVR}"
fi
DESCRIPTION="An object-oriented scripting language"
HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz
https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
LICENSE="|| ( Ruby-BSD BSD-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs ncurses +readline"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( sys-libs/gdbm )
jemalloc? ( dev-libs/jemalloc )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
socks5? ( >=net-proxy/dante-1.1.13 )
tk? (
dev-lang/tcl:0=[threads]
dev-lang/tk:0=[threads]
)
ncurses? ( sys-libs/ncurses:0= )
readline? ( sys-libs/readline:0= )
dev-libs/libyaml
virtual/libffi
sys-libs/zlib
>=app-eselect/eselect-ruby-20151229
!<dev-ruby/rdoc-3.9.4
!<dev-ruby/rubygems-1.8.10-r1"
DEPEND="${RDEPEND}"
BUNDLED_GEMS="
>=dev-ruby/did_you_mean-1.0.0:1[ruby_targets_ruby23]
>=dev-ruby/minitest-5.8.3[ruby_targets_ruby23]
>=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby23]
>=dev-ruby/power_assert-0.2.6[ruby_targets_ruby23]
>=dev-ruby/rake-10.4.2[ruby_targets_ruby23]
>=dev-ruby/test-unit-3.1.5[ruby_targets_ruby23]
"
PDEPEND="
${BUNDLED_GEMS}
virtual/rubygems[ruby_targets_ruby23]
>=dev-ruby/json-1.8.3[ruby_targets_ruby23]
rdoc? ( >=dev-ruby/rdoc-4.2.1[ruby_targets_ruby23] )
xemacs? ( app-xemacs/ruby-modes )"
src_prepare() {
EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
epatch "${WORKDIR}/patches"
einfo "Unbundling gems..."
cd "$S"
# Remove bundled gems that we will install via PDEPEND, bug
# 539700. Use explicit version numbers to ensure rm fails when they
# change so we can update dependencies accordingly.
rm -f gems/{did_you_mean-1.0.0,minitest-5.8.3,net-telnet-0.1.1,power_assert-0.2.6,rake-10.4.2,test-unit-3.1.5}.gem || die
# Fix a hardcoded lib path in configure script
sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
configure.in || die "sed failed"
eautoreconf
}
src_configure() {
local modules= myconf=
# -fomit-frame-pointer makes ruby segfault, see bug #150413.
filter-flags -fomit-frame-pointer
# In many places aliasing rules are broken; play it safe
# as it's risky with newer compilers to leave it as it is.
append-flags -fno-strict-aliasing
# SuperH needs this
use sh && append-flags -mieee
# Socks support via dante
if use socks5 ; then
# Socks support can't be disabled as long as SOCKS_SERVER is
# set and socks library is present, so need to unset
# SOCKS_SERVER in that case.
unset SOCKS_SERVER
fi
# Increase GC_MALLOC_LIMIT if set (default is 8000000)
if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
fi
# ipv6 hack, bug 168939. Needs --enable-ipv6.
use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
# Determine which modules *not* to build depending in the USE flags.
if ! use readline ; then
modules="${modules},readline"
fi
if ! use berkdb ; then
modules="${modules},dbm"
fi
if ! use gdbm ; then
modules="${modules},gdbm"
fi
if ! use ssl ; then
modules="${modules},openssl"
fi
if ! use ncurses ; then
modules="${modules},curses"
fi
if ! use tk ; then
modules="${modules},tk"
fi
# Provide an empty LIBPATHENV because we disable rpath but we do not
# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
# #564272
INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
--program-suffix=${MY_SUFFIX} \
--with-soname=ruby${MY_SUFFIX} \
--docdir=${EPREFIX}/usr/share/doc/${P} \
--enable-shared \
--enable-pthread \
--disable-rpath \
--with-out-ext="${modules}" \
$(use_enable jemalloc jemalloc) \
$(use_enable socks5 socks) \
$(use_enable doc install-doc) \
--enable-ipv6 \
$(use_enable debug) \
${myconf} \
--enable-option-checking=no \
|| die "econf failed"
}
src_compile() {
emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
}
src_test() {
emake -j1 V=1 test || die "make test failed"
elog "Ruby's make test has been run. Ruby also ships with a make check"
elog "that cannot be run until after ruby has been installed."
elog
if use rubytests; then
elog "You have enabled rubytests, so they will be installed to"
elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
elog "than root, and you must place them into a writeable directory."
elog "Then call: "
elog
elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
else
elog "Enable the rubytests USE flag to install the make check tests"
fi
}
src_install() {
# Remove the remaining bundled gems. We do this late in the process
# since they are used during the build to e.g. create the
# documentation.
rm -rf ext/json || die
# Ruby is involved in the install process, we don't want interference here.
unset RUBYOPT
local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
LD_LIBRARY_PATH="${S}:${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
for d in $(find "${S}/ext" -type d) ; do
RUBYLIB="${RUBYLIB}:$d"
done
export LD_LIBRARY_PATH RUBYLIB
emake V=1 DESTDIR="${D}" install || die "make install failed"
# Remove installed rubygems and rdoc copy
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
rm -rf "${D}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
rm -rf "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
if use doc; then
make DESTDIR="${D}" install-doc || die "make install-doc failed"
fi
if use examples; then
insinto /usr/share/doc/${PF}
doins -r sample
fi
dodoc ChangeLog NEWS doc/NEWS* README* || die
if use rubytests; then
pushd test
insinto /usr/share/${PN}-${SLOT}/test
doins -r .
popd
fi
}
pkg_postinst() {
if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
eselect ruby set ruby${MY_SUFFIX}
fi
elog
elog "To switch between available Ruby profiles, execute as root:"
elog "\teselect ruby set ruby(19|20|...)"
elog
}
pkg_postrm() {
eselect ruby cleanup
}

@ -1,240 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
#PATCHSET=1
inherit autotools eutils flag-o-matic multilib versionator
MY_P="${PN}-$(get_version_component_range 1-3)"
S=${WORKDIR}/${MY_P}
SLOT=$(get_version_component_range 1-2)
MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
RUBYVERSION=${SLOT}.0
if [[ -n ${PATCHSET} ]]; then
if [[ ${PVR} == ${PV} ]]; then
PATCHSET="${PV}-r0.${PATCHSET}"
else
PATCHSET="${PVR}.${PATCHSET}"
fi
else
PATCHSET="${PVR}"
fi
DESCRIPTION="An object-oriented scripting language"
HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz
https://dev.gentoo.org/~graaff/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
LICENSE="|| ( Ruby-BSD BSD-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( sys-libs/gdbm )
jemalloc? ( dev-libs/jemalloc )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
socks5? ( >=net-proxy/dante-1.1.13 )
tk? (
dev-lang/tcl:0=[threads]
dev-lang/tk:0=[threads]
)
dev-libs/libyaml
virtual/libffi
sys-libs/zlib
>=app-eselect/eselect-ruby-20161226
!<dev-ruby/rdoc-3.9.4
!<dev-ruby/rubygems-1.8.10-r1"
DEPEND="${RDEPEND}"
BUNDLED_GEMS="
>=dev-ruby/did_you_mean-1.1.0:2.4[ruby_targets_ruby24]
>=dev-ruby/minitest-5.10.1[ruby_targets_ruby24]
>=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby24]
>=dev-ruby/power_assert-0.4.1[ruby_targets_ruby24]
>=dev-ruby/rake-12.0.0[ruby_targets_ruby24]
>=dev-ruby/test-unit-3.2.3[ruby_targets_ruby24]
>=dev-ruby/xmlrpc-0.2.1[ruby_targets_ruby24]
"
PDEPEND="
${BUNDLED_GEMS}
virtual/rubygems[ruby_targets_ruby24]
>=dev-ruby/json-2.0.2[ruby_targets_ruby24]
rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby24] )
xemacs? ( app-xemacs/ruby-modes )"
src_prepare() {
EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
epatch "${WORKDIR}/patches"
einfo "Unbundling gems..."
cd "$S"
# Remove bundled gems that we will install via PDEPEND, bug
# 539700. Use explicit version numbers to ensure rm fails when they
# change so we can update dependencies accordingly.
rm -f gems/{did_you_mean-1.1.0,minitest-5.10.1,net-telnet-0.1.1,power_assert-0.4.1,rake-12.0.0,test-unit-3.2.3,xmlrpc-0.2.1}.gem || die
einfo "Removing bundled libraries..."
rm -fr ext/fiddle/libffi-3.2.1 || die
# Fix a hardcoded lib path in configure script
sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
configure.in || die "sed failed"
eapply_user
eautoreconf
}
src_configure() {
local modules= myconf=
# -fomit-frame-pointer makes ruby segfault, see bug #150413.
filter-flags -fomit-frame-pointer
# In many places aliasing rules are broken; play it safe
# as it's risky with newer compilers to leave it as it is.
append-flags -fno-strict-aliasing
# SuperH needs this
use sh && append-flags -mieee
# Socks support via dante
if use socks5 ; then
# Socks support can't be disabled as long as SOCKS_SERVER is
# set and socks library is present, so need to unset
# SOCKS_SERVER in that case.
unset SOCKS_SERVER
fi
# Increase GC_MALLOC_LIMIT if set (default is 8000000)
if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
fi
# ipv6 hack, bug 168939. Needs --enable-ipv6.
use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
# Determine which modules *not* to build depending in the USE flags.
if ! use berkdb ; then
modules="${modules},dbm"
fi
if ! use gdbm ; then
modules="${modules},gdbm"
fi
if ! use ssl ; then
modules="${modules},openssl"
fi
if ! use tk ; then
modules="${modules},tk"
fi
# Provide an empty LIBPATHENV because we disable rpath but we do not
# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
# #564272
INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
--program-suffix=${MY_SUFFIX} \
--with-soname=ruby${MY_SUFFIX} \
--docdir=${EPREFIX}/usr/share/doc/${P} \
--enable-shared \
--enable-pthread \
--disable-rpath \
--with-out-ext="${modules}" \
$(use_with jemalloc jemalloc) \
$(use_enable socks5 socks) \
$(use_enable doc install-doc) \
--enable-ipv6 \
$(use_enable debug) \
${myconf} \
--enable-option-checking=no \
|| die "econf failed"
}
src_compile() {
emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
}
src_test() {
emake -j1 V=1 test || die "make test failed"
elog "Ruby's make test has been run. Ruby also ships with a make check"
elog "that cannot be run until after ruby has been installed."
elog
if use rubytests; then
elog "You have enabled rubytests, so they will be installed to"
elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
elog "than root, and you must place them into a writeable directory."
elog "Then call: "
elog
elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
else
elog "Enable the rubytests USE flag to install the make check tests"
fi
}
src_install() {
# Remove the remaining bundled gems. We do this late in the process
# since they are used during the build to e.g. create the
# documentation.
rm -rf ext/json || die
# Ruby is involved in the install process, we don't want interference here.
unset RUBYOPT
local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
LD_LIBRARY_PATH="${S}:${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
for d in $(find "${S}/ext" -type d) ; do
RUBYLIB="${RUBYLIB}:$d"
done
export LD_LIBRARY_PATH RUBYLIB
emake V=1 DESTDIR="${D}" install || die "make install failed"
# Remove installed rubygems and rdoc copy
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
rm -rf "${D}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
rm -rf "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
if use doc; then
make DESTDIR="${D}" install-doc || die "make install-doc failed"
fi
if use examples; then
insinto /usr/share/doc/${PF}
doins -r sample
fi
dodoc ChangeLog NEWS doc/NEWS* README* || die
if use rubytests; then
pushd test
insinto /usr/share/${PN}-${SLOT}/test
doins -r .
popd
fi
}
pkg_postinst() {
if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
eselect ruby set ruby${MY_SUFFIX}
fi
elog
elog "To switch between available Ruby profiles, execute as root:"
elog "\teselect ruby set ruby(19|20|...)"
elog
}
pkg_postrm() {
eselect ruby cleanup
}

@ -1,240 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
#PATCHSET=1
inherit autotools eutils flag-o-matic multilib versionator
MY_P="${PN}-$(get_version_component_range 1-3)"
S=${WORKDIR}/${MY_P}
SLOT=$(get_version_component_range 1-2)
MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
RUBYVERSION=${SLOT}.0
if [[ -n ${PATCHSET} ]]; then
if [[ ${PVR} == ${PV} ]]; then
PATCHSET="${PV}-r0.${PATCHSET}"
else
PATCHSET="${PVR}.${PATCHSET}"
fi
else
PATCHSET="${PVR}"
fi
DESCRIPTION="An object-oriented scripting language"
HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz
https://dev.gentoo.org/~graaff/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
LICENSE="|| ( Ruby-BSD BSD-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( sys-libs/gdbm )
jemalloc? ( dev-libs/jemalloc )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
socks5? ( >=net-proxy/dante-1.1.13 )
tk? (
dev-lang/tcl:0=[threads]
dev-lang/tk:0=[threads]
)
dev-libs/libyaml
virtual/libffi
sys-libs/zlib
>=app-eselect/eselect-ruby-20161226
!<dev-ruby/rdoc-3.9.4
!<dev-ruby/rubygems-1.8.10-r1"
DEPEND="${RDEPEND}"
BUNDLED_GEMS="
>=dev-ruby/did_you_mean-1.1.0:2.4[ruby_targets_ruby24]
>=dev-ruby/minitest-5.10.1[ruby_targets_ruby24]
>=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby24]
>=dev-ruby/power_assert-0.4.1[ruby_targets_ruby24]
>=dev-ruby/rake-12.0.0[ruby_targets_ruby24]
>=dev-ruby/test-unit-3.2.3[ruby_targets_ruby24]
>=dev-ruby/xmlrpc-0.2.1[ruby_targets_ruby24]
"
PDEPEND="
${BUNDLED_GEMS}
virtual/rubygems[ruby_targets_ruby24]
>=dev-ruby/json-2.0.2[ruby_targets_ruby24]
rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby24] )
xemacs? ( app-xemacs/ruby-modes )"
src_prepare() {
EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
epatch "${WORKDIR}/patches"
einfo "Unbundling gems..."
cd "$S"
# Remove bundled gems that we will install via PDEPEND, bug
# 539700. Use explicit version numbers to ensure rm fails when they
# change so we can update dependencies accordingly.
rm -f gems/{did_you_mean-1.1.0,minitest-5.10.1,net-telnet-0.1.1,power_assert-0.4.1,rake-12.0.0,test-unit-3.2.3,xmlrpc-0.2.1}.gem || die
einfo "Removing bundled libraries..."
rm -fr ext/fiddle/libffi-3.2.1 || die
# Fix a hardcoded lib path in configure script
sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
configure.in || die "sed failed"
eapply_user
eautoreconf
}
src_configure() {
local modules= myconf=
# -fomit-frame-pointer makes ruby segfault, see bug #150413.
filter-flags -fomit-frame-pointer
# In many places aliasing rules are broken; play it safe
# as it's risky with newer compilers to leave it as it is.
append-flags -fno-strict-aliasing
# SuperH needs this
use sh && append-flags -mieee
# Socks support via dante
if use socks5 ; then
# Socks support can't be disabled as long as SOCKS_SERVER is
# set and socks library is present, so need to unset
# SOCKS_SERVER in that case.
unset SOCKS_SERVER
fi
# Increase GC_MALLOC_LIMIT if set (default is 8000000)
if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
fi
# ipv6 hack, bug 168939. Needs --enable-ipv6.
use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
# Determine which modules *not* to build depending in the USE flags.
if ! use berkdb ; then
modules="${modules},dbm"
fi
if ! use gdbm ; then
modules="${modules},gdbm"
fi
if ! use ssl ; then
modules="${modules},openssl"
fi
if ! use tk ; then
modules="${modules},tk"
fi
# Provide an empty LIBPATHENV because we disable rpath but we do not
# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
# #564272
INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
--program-suffix=${MY_SUFFIX} \
--with-soname=ruby${MY_SUFFIX} \
--docdir=${EPREFIX}/usr/share/doc/${P} \
--enable-shared \
--enable-pthread \
--disable-rpath \
--with-out-ext="${modules}" \
$(use_enable jemalloc jemalloc) \
$(use_enable socks5 socks) \
$(use_enable doc install-doc) \
--enable-ipv6 \
$(use_enable debug) \
${myconf} \
--enable-option-checking=no \
|| die "econf failed"
}
src_compile() {
emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
}
src_test() {
emake -j1 V=1 test || die "make test failed"
elog "Ruby's make test has been run. Ruby also ships with a make check"
elog "that cannot be run until after ruby has been installed."
elog
if use rubytests; then
elog "You have enabled rubytests, so they will be installed to"
elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
elog "than root, and you must place them into a writeable directory."
elog "Then call: "
elog
elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
else
elog "Enable the rubytests USE flag to install the make check tests"
fi
}
src_install() {
# Remove the remaining bundled gems. We do this late in the process
# since they are used during the build to e.g. create the
# documentation.
rm -rf ext/json || die
# Ruby is involved in the install process, we don't want interference here.
unset RUBYOPT
local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
LD_LIBRARY_PATH="${S}:${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
for d in $(find "${S}/ext" -type d) ; do
RUBYLIB="${RUBYLIB}:$d"
done
export LD_LIBRARY_PATH RUBYLIB
emake V=1 DESTDIR="${D}" install || die "make install failed"
# Remove installed rubygems and rdoc copy
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
rm -rf "${D}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
rm -rf "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
if use doc; then
make DESTDIR="${D}" install-doc || die "make install-doc failed"
fi
if use examples; then
insinto /usr/share/doc/${PF}
doins -r sample
fi
dodoc ChangeLog NEWS doc/NEWS* README* || die
if use rubytests; then
pushd test
insinto /usr/share/${PN}-${SLOT}/test
doins -r .
popd
fi
}
pkg_postinst() {
if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
eselect ruby set ruby${MY_SUFFIX}
fi
elog
elog "To switch between available Ruby profiles, execute as root:"
elog "\teselect ruby set ruby(19|20|...)"
elog
}
pkg_postrm() {
eselect ruby cleanup
}

@ -0,0 +1,124 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EBZR_REPO_URI="lp:libdbusmenu-qt"
[[ ${PV} == 9999* ]] && inherit bzr
inherit cmake-multilib multibuild virtualx
DESCRIPTION="Library providing Qt implementation of DBusMenu specification"
HOMEPAGE="https://launchpad.net/libdbusmenu-qt/"
if [[ ${PV} != 9999* ]] ; then
MY_PV=${PV/_pre/+16.04.}
SRC_URI="https://launchpad.net/ubuntu/+archive/primary/+files/${PN}_${MY_PV}.orig.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
fi
LICENSE="LGPL-2"
SLOT="0"
IUSE="debug qt4"
RDEPEND="
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
qt4? (
>=dev-qt/qtcore-4.8.6:4[${MULTILIB_USEDEP}]
>=dev-qt/qtdbus-4.8.6:4[${MULTILIB_USEDEP}]
>=dev-qt/qtgui-4.8.6:4[${MULTILIB_USEDEP}]
)
"
DEPEND="${RDEPEND}
test? (
dev-qt/qttest:5
qt4? ( >=dev-qt/qttest-4.8.6:4[${MULTILIB_USEDEP}] )
)
"
[[ ${PV} == 9999* ]] || S=${WORKDIR}/${PN}-${MY_PV}
DOCS=( NEWS README )
# tests fail due to missing connection to dbus
RESTRICT="test"
pkg_setup() {
MULTIBUILD_VARIANTS=( $(usex qt4 4) 5 )
}
src_prepare() {
[[ ${PV} == 9999* ]] && bzr_src_prepare
cmake-utils_src_prepare
cmake_comment_add_subdirectory tools
use test || cmake_comment_add_subdirectory tests
}
multilib_src_configure() {
local mycmakeargs=(
-DWITH_DOC=OFF
-DUSE_QT${QT_MULTIBUILD_VARIANT}=ON
-DQT_QMAKE_EXECUTABLE="/usr/$(get_libdir)/qt${QT_MULTIBUILD_VARIANT}/bin/qmake"
)
cmake-utils_src_configure
}
src_configure() {
myconfigure() {
local QT_MULTIBUILD_VARIANT=${MULTIBUILD_VARIANT}
if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
cmake-multilib_src_configure
elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
multilib_src_configure
fi
}
multibuild_foreach_variant myconfigure
}
src_compile() {
mycompile() {
if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
cmake-multilib_src_compile
elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
cmake-utils_src_compile
fi
}
multibuild_foreach_variant mycompile
}
src_install() {
myinstall() {
if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
cmake-multilib_src_install
elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
cmake-utils_src_install
fi
}
multibuild_foreach_variant myinstall
}
src_test() {
mytest() {
if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
cmake-multilib_src_test
elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
multilib_src_test
fi
}
multibuild_foreach_variant mytest
}
multilib_src_test() {
local builddir=${BUILD_DIR}
BUILD_DIR=${BUILD_DIR}/tests virtx cmake-utils_src_test
BUILD_DIR=${builddir}
}

@ -1 +1,2 @@
DIST ocaml-hashcons-1.2.tar.gz 19775 SHA256 de48e8e3e19b8cf84fb4d8d2484f0bb44dc6ced160b0d22b74d4de7236c821bb SHA512 167ed8d74c5080ef14af0ac1232ea16faee3f0e09e0a65cd72447266939ce7ed5416f4cf6a3021e5ca8215726df129d3f05c9e0c12dcd36f845b060fd93072b2 WHIRLPOOL 4d89bbf99826dbc1e5d8e46f03d71357b0b6c6b71ba76f9b7a8dcaa4906b976c4edd30407d0d1cb183e9cb5ef8b11f412fee98beb8eb1d4a6113cc9650eea0a3
DIST ocaml-hashcons-1.3.tar.gz 19495 SHA256 59c72966f48ea67c694dd49099eca180b52d3da81d4300172ace6edb4a5d72ce SHA512 fd194d48a3231e72ca8bf3d324e5e1f6442d965da9149973a1763cf70aa82398805fa00648bdd12de3d3daada8e90bdc575c73886f949b5183e79bea75beadc8 WHIRLPOOL 67133d354bc96bfbffa269593680183cfd8bf8882383fdddd6a84fccb8702ab5aae440b0d428b19c2f2408ac95d501f654ec678d71c575b2f6d0f38ac8a0b4e0

@ -0,0 +1,37 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit autotools findlib
DESCRIPTION="OCaml hash-consing library"
HOMEPAGE="https://github.com/backtracking/ocaml-hashcons"
SRC_URI="https://github.com/backtracking/ocaml-hashcons/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1-with-linking-exception"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="+ocamlopt"
RDEPEND="dev-lang/ocaml:=[ocamlopt?]"
DEPEND="${RDEPEND}"
src_prepare() {
eautoreconf
sed -i -e 's/$(OCAMLFIND) remove/#/' Makefile.in || die
}
src_compile() {
if use ocamlopt; then
emake opt byte
else
emake byte
fi
}
src_install() {
dodir "$(ocamlfind printconf destdir)/hashcons"
emake DESTDIR="-destdir ${D}/$(ocamlfind printconf destdir)/" $(usex ocamlopt install-opt install-byte)
dodoc README.md CHANGES
}

@ -15,6 +15,9 @@ SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
IUSE="test"
# restrict tests because pyperclip is fairly unstable...
RESTRICT="test"
RDEPEND="
>=dev-python/pyparsing-2.0.1[${PYTHON_USEDEP}]
dev-python/pyperclip[${PYTHON_USEDEP}]

@ -1,4 +1,5 @@
DIST Cython-0.22.tar.gz 1584483 SHA256 14307e7a69af9a0d0e0024d446af7e51cc0e3e4d0dfb10d36ba837e5e5844015 SHA512 856220fa579e272ac38dcef091760f527431ff3b98df9af6e68416fcf77d9659ac5abe5c7dee41331f359614637a4ff452033085335ee499830ed126ab584267 WHIRLPOOL d9919e1fe33f7ea02833c485e10667d8470d7c69901b2419c6c4c1d464f9ef2444795e14903cc66b6fee40ec5a4c20308c331ad93fd8818f207d0a21cccf9b2b
DIST Cython-0.24.1.tar.gz 1703756 SHA256 84808fda00508757928e1feadcf41c9f78e9a9b7167b6649ab0933b76f75e7b9 SHA512 c5a3e884edd782c47c81aef29708035bbcd1c14d17e005668da8a4e26fdbba9af9ec283fd46ceaa2cab6fc4ec0d42f7d409832d7cc0a3ec00e84b968b1bf27ea WHIRLPOOL 14224a56c5a6f5cd3f389225c440c65b30a5d1b92c63587c4e9af258b23b1bed1c01330830931c5aba596649d19b0aafd0e559aed5ad7b577a59417463fc3b4a
DIST Cython-0.25.2.tar.gz 1703315 SHA256 f141d1f9c27a07b5a93f7dc5339472067e2d7140d1c5a9e20112a5665ca60306 SHA512 1974b9374aeedb030307dc95aa6560ce9d5e1652783cd4552e96ef11663c73dd263e3521b68e7712abbb31628011e2e66320c5ee2577968684e2679eb80726e1 WHIRLPOOL bb12d06fddb30d99527e3a62e8788b7aee92787aec9c46e927658f7ee60c8f3e32acb34b2deee1d0cf6ece7f4b06288008082ac609b8cb4b101a1348b1017865
DIST Cython-0.26.1.tar.gz 1725133 SHA256 c2e63c4794161135adafa8aa4a855d6068073f421c83ffacc39369497a189dd5 SHA512 cdf31afaba78209c37a224345471c5c822b78c6d26c51583c46669b6b2b57b4952b33a839a51d06c3330fdff889345ac611fbaa2b2f17498cb02f3b5675f7948 WHIRLPOOL 1ef093c41f06249ee4fc40ae39078f20ae14b80b6a9dca382dfa9198a600928ddd0bc20fc42ec398b041b5f97c3c78003725467b26b9cc3a8b68405a288f0f87
DIST Cython-0.26.tar.gz 1692039 SHA256 4c24e2c22ddaed624d35229dc5db25049e9e225c6f64f3364326836cad8f2c66 SHA512 58b7dbdca3b1bdfcb8b968cb1b59826b793656bb7f1203a80b59b3fae2d3174cc99f19f88fc2ec175aa98c9daeca0eb3c52674a7889ba1e914fd20d19ef92aed WHIRLPOOL 650a7db807afb11403b4850d6ec387cd5fdc528bf854f2eb4ec5b804a3b142895cbaf085fe82563374f586090e4cf5a40def6e1d410a8bea85cfa7003c44efe0

@ -0,0 +1,80 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 flag-o-matic toolchain-funcs elisp-common
MY_PN="Cython"
MY_P="${MY_PN}-${PV/_/}"
DESCRIPTION="A Python to C compiler"
HOMEPAGE="http://cython.org https://pypi.python.org/pypi/Cython"
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
IUSE="doc emacs test"
RDEPEND="
emacs? ( virtual/emacs )
"
# On testing, setuptools invokes an error in running the testsuite cited in a number of recent bugs
# spanning several packages. This bug has been fixed in the recent release of version 9.1
DEPEND="${RDEPEND}
>=dev-python/setuptools-9.1[${PYTHON_USEDEP}]
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
test? ( dev-python/numpy[${PYTHON_USEDEP}] )"
SITEFILE=50cython-gentoo.el
S="${WORKDIR}/${MY_PN}-${PV%_*}"
python_compile() {
if ! python_is_python3; then
local CFLAGS="${CFLAGS}"
local CXXFLAGS="${CXXFLAGS}"
append-flags -fno-strict-aliasing
fi
# Python gets confused when it is in sys.path before build.
local PYTHONPATH=
export PYTHONPATH
distutils-r1_python_compile
}
python_compile_all() {
use emacs && elisp-compile Tools/cython-mode.el
use doc && unset XDG_CONFIG_HOME && emake -C docs html
}
python_test() {
tc-export CC
"${PYTHON}" runtests.py -vv --work-dir "${BUILD_DIR}"/tests \
|| die "Tests fail with ${EPYTHON}"
}
python_install_all() {
local DOCS=( CHANGES.rst README.txt ToDo.txt USAGE.txt )
use doc && local HTML_DOCS=( docs/build/html/. )
distutils-r1_python_install_all
if use emacs; then
elisp-install ${PN} Tools/cython-mode.*
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
fi
}
pkg_postinst() {
use emacs && elisp-site-regen
}
pkg_postrm() {
use emacs && elisp-site-regen
}

@ -1,2 +1 @@
DIST jedi-0.10.2.tar.gz 373879 SHA256 570aced88bc9ac34d8fa91d3db6de834f45c8adaac3f7fc1a1e9e08e19491acb SHA512 847b000894b5e17cf5582c88245989ce1f0e17b595c79a2cdf4cc7a805fe7360ea08f28ac31473408be795c9ea210c85541cffa5fc7e7119da8c0228eb509351 WHIRLPOOL 3e3792994d3f6a358f9109ddb288427733268a3b08040975af256ddda802e75f8bf3b924490e996798bddcff70c041a52017b209d796b031bc0437e0c2b3939a
DIST jedi-0.9.0.tar.gz 334204 SHA256 3b4c19fba31bdead9ab7350fb9fa7c914c59b0a807dcdd5c00a05feb85491d31 SHA512 fa60861bde0afb63c90b0e14b252d33b68d5e83255d662ef727884c91bd530b5a76f0306965ed9620d7d42a92f177feb2524a7b088ade786fb486d62d6912e57 WHIRLPOOL a6233ed19129f129cd97778f1c01bdc1e0747ec1da3611164c50815c77ab57ca1c8d7bec824b00d105cac62d32f53981a54e72b80ddfef00a77cd9316aef94aa

@ -13,7 +13,7 @@ SRC_URI="https://github.com/davidhalter/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 ~arm64 x86"
IUSE="doc test"
DEPEND="

@ -1,38 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
PYTHON_COMPAT=( python2_7 python3_{4,5} )
inherit distutils-r1
DESCRIPTION="Autocompletion library for Python"
HOMEPAGE="https://github.com/davidhalter/jedi"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="doc test"
RESTRICT="test"
DEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
doc? ( dev-python/sphinx )
test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
python_test() {
PYTHONPATH="${PYTHONPATH%:}${PYTHONPATH+:}${S}/test" py.test -v -v test \
|| die "Tests failed under ${EPYTHON}"
}
python_compile_all() {
use doc && emake -C docs html
}
python_install_all() {
use doc && HTML_DOCS=( "${S}"/docs/_build/html/. )
distutils-r1_python_install_all
}

@ -1,4 +1,2 @@
DIST libvirt-python-3.2.0.tar.gz 174713 SHA256 ac85dd8dec332f308e5e0e40889be0d2f10b5d6917f00f0c474405ad25dc003d SHA512 d13cb0fb46844cab512931fbb85225bdd99c44eba0761caaeb13a40f8bf18700d5836f4e24300370810ee103b4f391699db13ae0523e5625a566a9c5b41d12d5 WHIRLPOOL 9c7d1dd4a92da276f5368b80d31c11032ae0ce2ea337e21f830d433d5e7ec90759484720264a3c494f4881c8b10ce11dfbf20da0c5b89f75c0bff61cc508a065
DIST libvirt-python-3.3.0.tar.gz 179552 SHA256 e0bb7dcb98bef4933bb9d5e6e944388cdb002515eb9053a42447e89e4642fe57 SHA512 3d90e99abe813f2ba684c24631d8e8cd6a5b44564351ae3f0b75d426f80d046c00ed6358273b68ad751707a93666564dfecfb7fb7d93d2c27c71a344542fe793 WHIRLPOOL dab0e88aecc007f41505d20bc9886b9508cab7d19211f426cad7e2c65da720b4a236acbd3acd77bb35d7e3a98431764f5722035cc2f62c813864a76d42b8b73e
DIST libvirt-python-3.4.0.tar.gz 181574 SHA256 afa77781f518988f164dd5f99d1844034ca807a8e731e07cbae18474d250b511 SHA512 96b7f16d0f7c72f2b80fda73b18e0af9b05f0fb7f7fbd4900a77808484b7f45932c8c46bde322f01486fdc97eae3e4a4906ce8555ea9a19548f9c8de46958a78 WHIRLPOOL 0bf7b220222ebcfa7d7269c53a3f9fc1db9d2b9a59d2d333484b8c906a921b28203f54a3044150562ec8a118d0f32fd3d646d62c5f53c19ee2d498f3a3912ab2
DIST libvirt-python-3.5.0.tar.gz 181733 SHA256 5c5fee90bebf39d318ef55545077431c3da9ae8b6352adfa461fa4492a03ac1a SHA512 31e0bf7604fe3e422fbad2acdfae1a50050bb4b45ed1e9596040e1c08607a772d62d88c1636c1c18de082d913fb549481aeb5e48f76276cb6ac6534a71f8f7b6 WHIRLPOOL 40c9c46aa836c8a20409ea7beb31d763b0eef909bd69f0f9d133a146b08128f8b9450d95526130541365fe3c141ba7deccae90359fc4c22d42264a2b8c8cd32e
DIST libvirt-python-3.6.0.tar.gz 181778 SHA256 ecb9cbc8b1f33b245b04e3a937d8483584ab7a18258b217be96661343a4b1ad0 SHA512 333f991fc69b509b2eda67ee70dea39cc9d1ff36b1abb6a881296313ffebfb5ed41de8443534f19b27a70271548214fa94a12e7f59dc217492edf0bb5555ede9 WHIRLPOOL 6f13ee521713c3540e649c9c9edf6fc0427e0c4563305a42366796352fc99867bc79dd5ce61db0d7b79dc02957f8854c5664f5b5952a402c614e19264167546b

@ -1,46 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
MY_P="${P/_rc/-rc}"
inherit distutils-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://libvirt.org/libvirt-python.git"
SRC_URI=""
KEYWORDS="amd64 x86"
RDEPEND="app-emulation/libvirt:=[-python(-)]"
else
SRC_URI="http://libvirt.org/sources/python/${MY_P}.tar.gz"
KEYWORDS="amd64 x86"
RDEPEND="app-emulation/libvirt:0/${PV}"
fi
S="${WORKDIR}/${P%_rc*}"
DESCRIPTION="libvirt Python bindings"
HOMEPAGE="https://www.libvirt.org"
LICENSE="LGPL-2"
SLOT="0"
IUSE="examples test"
DEPEND="${RDEPEND}
virtual/pkgconfig
test? ( dev-python/lxml[${PYTHON_USEDEP}]
dev-python/nose[${PYTHON_USEDEP}] )"
python_test() {
esetup.py test
}
python_install_all() {
if use examples; then
dodoc -r examples
docompress -x /usr/share/doc/${PF}/examples
fi
distutils-r1_python_install_all
}

@ -1,46 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
MY_P="${P/_rc/-rc}"
inherit distutils-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://libvirt.org/libvirt-python.git"
SRC_URI=""
KEYWORDS=""
RDEPEND="app-emulation/libvirt:=[-python(-)]"
else
SRC_URI="http://libvirt.org/sources/python/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="app-emulation/libvirt:0/${PV}"
fi
S="${WORKDIR}/${P%_rc*}"
DESCRIPTION="libvirt Python bindings"
HOMEPAGE="https://www.libvirt.org"
LICENSE="LGPL-2"
SLOT="0"
IUSE="examples test"
DEPEND="${RDEPEND}
virtual/pkgconfig
test? ( dev-python/lxml[${PYTHON_USEDEP}]
dev-python/nose[${PYTHON_USEDEP}] )"
python_test() {
esetup.py test
}
python_install_all() {
if use examples; then
dodoc -r examples
docompress -x /usr/share/doc/${PF}/examples
fi
distutils-r1_python_install_all
}

@ -8,6 +8,5 @@
<upstream>
<remote-id type="pypi">pexpect</remote-id>
<remote-id type="github">pexpect/pexpect</remote-id>
<remote-id type="sourceforge">pexpect</remote-id>
</upstream>
</pkgmetadata>

@ -9,11 +9,7 @@ PYTHON_REQ_USE="threads(+)"
inherit distutils-r1
DESCRIPTION="Python module for spawning child applications and responding to expected patterns"
HOMEPAGE="
http://pexpect.sourceforge.net/
https://pypi.python.org/pypi/pexpect/
https://github.com/pexpect/pexpect/
"
HOMEPAGE="https://pexpect.readthedocs.io/ https://pypi.python.org/pypi/pexpect/ https://github.com/pexpect/pexpect/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"

@ -1,2 +1,3 @@
DIST ptyprocess-0.5.1.tar.gz 68474 SHA256 0530ce63a9295bfae7bd06edc02b6aa935619f486f0f1dc0972f516265ee81a6 SHA512 9e7481e8e3facde73086ef0728a57516a15b6bc2a5fb6bf6d6f892c396c9376d9d6334ee37737f3469929c4086d5678a2c5deaf44d70589d41644a98f2239dad WHIRLPOOL ba327a02a847f7c5e4b62e6bf8ba0f070f8a22ff584045d7ed3cc134f8a922b9d75e397992cd5df5ca4569f563d234ea2a194b5a557606978a37a4f04559ee1e
DIST ptyprocess-0.5.2.tar.gz 69297 SHA256 e64193f0047ad603b71f202332ab5527c5e52aa7c8b609704fc28c0dc20c4365 SHA512 cb4e70855d388a6ff691e2a244c072a5a50cf39cdf727e3a4218817bf5ac722c4b49f0dbfd80204259998eba137492690759b8908bfea925842b9f7fc83ee553 WHIRLPOOL de6f42fe487b948b5b7801a9c0375f7586aedcac5c7e7563f0f7cf56a3a8d7c2abea42d256544b32cf5c0bb71bc71602b8582d581199cf0e2234a648a6017be3
DIST ptyprocess-0.5.tar.gz 14923 SHA256 dcb78fb2197b49ca1b7b2f37b047bc89c0da7a90f90bd5bc17c3ce388bb6ef59 SHA512 6619bfc1dfc7c980ffc72dba62697692eb749f19500616e8783cfdc3c35980276eb39070f4cd7932775abb5e798c921b9320c5f51b9052f526585f01cd56259e WHIRLPOOL b1bd0da485ea106a3d366ab21dc714418b8d392a32fc3386ef734362da8ee455a38f9330cedfe35687be09bea3ff622c54440119fca72d7787d9a29518717b77

@ -0,0 +1,23 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy pypy3 )
inherit distutils-r1
DESCRIPTION="Run a subprocess in a pseudo terminal"
HOMEPAGE="https://github.com/pexpect/ptyprocess"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="ISC"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="test"
DEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
python_test() {
py.test -v || die "tests failed under ${EPYTHON}"
}

@ -0,0 +1 @@
DIST imu_tools-1.1.5.tar.gz 1653083 SHA256 845d0c0dfa262223e7aeb5a4ed31c92865fd5fbc30eda04dd822a2c89e81e3e0 SHA512 5009884852c71d6bb1b6c2be2f30ed333eca2ac6a7f29d02cb8f0821c0b95a33dd3b09049c4c4eeb1416fb0eb5dc454b3c6d36c2c24303f37c0d1d2c0c2d906a WHIRLPOOL 2caf1b9cf671081051a2475d019802c8fb312a2e8ad668e0cda2a259778f0ef548e3967233daeefa14c5630c4b13fddde6e0ac4d42b5b7424bf156eac0443964

@ -0,0 +1,26 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/ccny-ros-pkg/imu_tools"
KEYWORDS="~amd64"
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="Fuses angular velocities, accelerations, and (optionally) magnetic readings from an IMU device"
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/message_filters
dev-ros/roscpp
dev-ros/sensor_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/std_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/tf
"
DEPEND="${RDEPEND}
dev-ros/cmake_modules
"

@ -0,0 +1,26 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/ccny-ros-pkg/imu_tools"
KEYWORDS="~amd64"
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="Fuses angular velocities, accelerations, and (optionally) magnetic readings from an IMU device"
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/message_filters
dev-ros/roscpp
dev-ros/sensor_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/std_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/tf
"
DEPEND="${RDEPEND}
dev-ros/cmake_modules
"

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ros@gentoo.org</email>
<name>Gentoo ROS Project</name>
</maintainer>
<upstream>
<remote-id type="github">ccny-ros-pkg/imu_tools</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1 @@
DIST imu_tools-1.1.5.tar.gz 1653083 SHA256 845d0c0dfa262223e7aeb5a4ed31c92865fd5fbc30eda04dd822a2c89e81e3e0 SHA512 5009884852c71d6bb1b6c2be2f30ed333eca2ac6a7f29d02cb8f0821c0b95a33dd3b09049c4c4eeb1416fb0eb5dc454b3c6d36c2c24303f37c0d1d2c0c2d906a WHIRLPOOL 2caf1b9cf671081051a2475d019802c8fb312a2e8ad668e0cda2a259778f0ef548e3967233daeefa14c5630c4b13fddde6e0ac4d42b5b7424bf156eac0443964

@ -0,0 +1,32 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/ccny-ros-pkg/imu_tools"
KEYWORDS="~amd64"
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="Fuses angular velocities, accelerations, and (optionally) magnetic readings from an IMU device"
LICENSE="GPL-2"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/roscpp
dev-ros/sensor_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/geometry_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/tf2
dev-ros/tf2_geometry_msgs
dev-ros/tf2_ros
dev-ros/nodelet
dev-ros/pluginlib
dev-ros/message_filters
dev-ros/dynamic_reconfigure
dev-libs/boost:=[threads]
"
DEPEND="${RDEPEND}
test? ( dev-ros/rosunit )
"

@ -0,0 +1,32 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/ccny-ros-pkg/imu_tools"
KEYWORDS="~amd64"
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="Fuses angular velocities, accelerations, and (optionally) magnetic readings from an IMU device"
LICENSE="GPL-2"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/roscpp
dev-ros/sensor_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/geometry_msgs[${CATKIN_MESSAGES_CXX_USEDEP}]
dev-ros/tf2
dev-ros/tf2_geometry_msgs
dev-ros/tf2_ros
dev-ros/nodelet
dev-ros/pluginlib
dev-ros/message_filters
dev-ros/dynamic_reconfigure
dev-libs/boost:=[threads]
"
DEPEND="${RDEPEND}
test? ( dev-ros/rosunit )
"

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ros@gentoo.org</email>
<name>Gentoo ROS Project</name>
</maintainer>
<upstream>
<remote-id type="github">ccny-ros-pkg/imu_tools</remote-id>
</upstream>
</pkgmetadata>

@ -3,3 +3,4 @@ DIST rosbridge_suite-0.7.14.tar.gz 368983 SHA256 710021193a87a0da760c9f7124a6abf
DIST rosbridge_suite-0.7.15.tar.gz 369162 SHA256 5e37bdb3115a7dc96c6513c2dc405693b143ad1fde8117f80c3649b7938d7143 SHA512 c0cbc92e09c0a6b5f4af301107b5217f5fb4207afa9a4e5fd517f6bde9c71563a649ddd14d7b7c1c6a532e153e71e36172ea25e307f43a997a20bfb8bc63728a WHIRLPOOL 8c43582dc330c15fb55182ddf37409fb402b582a279a5f7231a2875906a07f2e7b45d67f870df31e57c12d33fa01c3c6f2aeb62bc613e9e1b70ee99e216aa2cb
DIST rosbridge_suite-0.7.16.tar.gz 369529 SHA256 f156cab48fe88bde0d1768481a52ae983d03bf5d990a9a46cd06229447462ad2 SHA512 212169fb1b812f4e6ee96bfb9a656aa4afa78f765c43d036013a80e8eec54d3ff7586fc3bd894a5c3efc4bb6df9c7d8b88f65ee74b35f8129c635d0b47d3eeb6 WHIRLPOOL 1161de5f4438d9339fb7f3bf2e4ba7b7ebc43c947f0483aedfa4f1fbc8f5bbf44627d664b654b34181f9d69e764585b357ccaa9af87027c53d61447d734e81b9
DIST rosbridge_suite-0.7.17.tar.gz 373578 SHA256 f9786de015276d6d58c023ad6a6a24acb6291796f8f61151adc6b585bd43d961 SHA512 4cd10fa54378ba5f3ed7845e61fdfb98f40113adb8ca9461ccb4e793258d44254d41cf6bcad165163837e72ef5573d994a0796a44e6d83f75c386fc9f9892a2e WHIRLPOOL 3bd8375e2e34f69fcba52a0e7f5278c7e36462774a1b4b2490b1337380917ebdb0578ca7051ebc9063f533d6f26051fb2e7d60acfc69975c80a603edc2e5dfe6
DIST rosbridge_suite-0.8.1.tar.gz 376461 SHA256 f6f763dc49aa7a2a147c950d12202eb8cfdd2180d24e2010682cc353a338065f SHA512 322d720b5380970a97de07568a0e8b521a1a7646ac4695c168ae0b8fcb2ec445b7b5e9c500a12f05ede797f8ae9d2add70104e8a53667d36ae513ef56ffc6e29 WHIRLPOOL c19af50a75a9380cf729ce4ab1e610236c2a6a22198e41309aa9c2b81e6f89fd0e7496982f8000627e61e23e3576f554cf010d985cf8fdd993ffda73a9fff90d

@ -0,0 +1,25 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
CATKIN_HAS_MESSAGES=yes
ROS_REPO_URI="https://github.com/RobotWebTools/rosbridge_suite"
KEYWORDS="~amd64"
PYTHON_COMPAT=( python2_7 )
ROS_SUBDIR=${PN}
CATKIN_MESSAGES_TRANSITIVE_DEPS="dev-ros/std_msgs"
inherit ros-catkin
DESCRIPTION="Provides service calls for getting ros meta-information, like list of topics, services, params, etc."
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/rospy[${PYTHON_USEDEP}]
dev-ros/rosnode[${PYTHON_USEDEP}]
dev-ros/rosgraph[${PYTHON_USEDEP}]
dev-ros/rosbridge_library[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"

@ -1,3 +1,4 @@
DIST rosbridge_suite-0.7.15.tar.gz 369162 SHA256 5e37bdb3115a7dc96c6513c2dc405693b143ad1fde8117f80c3649b7938d7143 SHA512 c0cbc92e09c0a6b5f4af301107b5217f5fb4207afa9a4e5fd517f6bde9c71563a649ddd14d7b7c1c6a532e153e71e36172ea25e307f43a997a20bfb8bc63728a WHIRLPOOL 8c43582dc330c15fb55182ddf37409fb402b582a279a5f7231a2875906a07f2e7b45d67f870df31e57c12d33fa01c3c6f2aeb62bc613e9e1b70ee99e216aa2cb
DIST rosbridge_suite-0.7.16.tar.gz 369529 SHA256 f156cab48fe88bde0d1768481a52ae983d03bf5d990a9a46cd06229447462ad2 SHA512 212169fb1b812f4e6ee96bfb9a656aa4afa78f765c43d036013a80e8eec54d3ff7586fc3bd894a5c3efc4bb6df9c7d8b88f65ee74b35f8129c635d0b47d3eeb6 WHIRLPOOL 1161de5f4438d9339fb7f3bf2e4ba7b7ebc43c947f0483aedfa4f1fbc8f5bbf44627d664b654b34181f9d69e764585b357ccaa9af87027c53d61447d734e81b9
DIST rosbridge_suite-0.7.17.tar.gz 373578 SHA256 f9786de015276d6d58c023ad6a6a24acb6291796f8f61151adc6b585bd43d961 SHA512 4cd10fa54378ba5f3ed7845e61fdfb98f40113adb8ca9461ccb4e793258d44254d41cf6bcad165163837e72ef5573d994a0796a44e6d83f75c386fc9f9892a2e WHIRLPOOL 3bd8375e2e34f69fcba52a0e7f5278c7e36462774a1b4b2490b1337380917ebdb0578ca7051ebc9063f533d6f26051fb2e7d60acfc69975c80a603edc2e5dfe6
DIST rosbridge_suite-0.8.1.tar.gz 376461 SHA256 f6f763dc49aa7a2a147c950d12202eb8cfdd2180d24e2010682cc353a338065f SHA512 322d720b5380970a97de07568a0e8b521a1a7646ac4695c168ae0b8fcb2ec445b7b5e9c500a12f05ede797f8ae9d2add70104e8a53667d36ae513ef56ffc6e29 WHIRLPOOL c19af50a75a9380cf729ce4ab1e610236c2a6a22198e41309aa9c2b81e6f89fd0e7496982f8000627e61e23e3576f554cf010d985cf8fdd993ffda73a9fff90d

@ -0,0 +1,42 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
CATKIN_HAS_MESSAGES=yes
ROS_REPO_URI="https://github.com/RobotWebTools/rosbridge_suite"
KEYWORDS="~amd64"
PYTHON_COMPAT=( python2_7 )
ROS_SUBDIR=${PN}
CATKIN_MESSAGES_TRANSITIVE_DEPS="dev-ros/std_msgs dev-ros/geometry_msgs"
inherit ros-catkin
DESCRIPTION="Core rosbridge package responsible for interpreting JSON and performing the appropriate ROS action"
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/rospy[${PYTHON_USEDEP}]
dev-ros/rosservice[${PYTHON_USEDEP}]
dev-ros/rostopic[${PYTHON_USEDEP}]
dev-ros/rosgraph[${PYTHON_USEDEP}]
dev-ros/geometry_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/std_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-python/pymongo[${PYTHON_USEDEP}]
dev-python/pillow[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}
test? (
dev-ros/actionlib_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/diagnostic_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/nav_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/rospy_tutorials[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/sensor_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/std_srvs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/stereo_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/tf2_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/trajectory_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/visualization_msgs[${CATKIN_MESSAGES_PYTHON_USEDEP}]
)
"

@ -3,3 +3,4 @@ DIST rosbridge_suite-0.7.14.tar.gz 368983 SHA256 710021193a87a0da760c9f7124a6abf
DIST rosbridge_suite-0.7.15.tar.gz 369162 SHA256 5e37bdb3115a7dc96c6513c2dc405693b143ad1fde8117f80c3649b7938d7143 SHA512 c0cbc92e09c0a6b5f4af301107b5217f5fb4207afa9a4e5fd517f6bde9c71563a649ddd14d7b7c1c6a532e153e71e36172ea25e307f43a997a20bfb8bc63728a WHIRLPOOL 8c43582dc330c15fb55182ddf37409fb402b582a279a5f7231a2875906a07f2e7b45d67f870df31e57c12d33fa01c3c6f2aeb62bc613e9e1b70ee99e216aa2cb
DIST rosbridge_suite-0.7.16.tar.gz 369529 SHA256 f156cab48fe88bde0d1768481a52ae983d03bf5d990a9a46cd06229447462ad2 SHA512 212169fb1b812f4e6ee96bfb9a656aa4afa78f765c43d036013a80e8eec54d3ff7586fc3bd894a5c3efc4bb6df9c7d8b88f65ee74b35f8129c635d0b47d3eeb6 WHIRLPOOL 1161de5f4438d9339fb7f3bf2e4ba7b7ebc43c947f0483aedfa4f1fbc8f5bbf44627d664b654b34181f9d69e764585b357ccaa9af87027c53d61447d734e81b9
DIST rosbridge_suite-0.7.17.tar.gz 373578 SHA256 f9786de015276d6d58c023ad6a6a24acb6291796f8f61151adc6b585bd43d961 SHA512 4cd10fa54378ba5f3ed7845e61fdfb98f40113adb8ca9461ccb4e793258d44254d41cf6bcad165163837e72ef5573d994a0796a44e6d83f75c386fc9f9892a2e WHIRLPOOL 3bd8375e2e34f69fcba52a0e7f5278c7e36462774a1b4b2490b1337380917ebdb0578ca7051ebc9063f533d6f26051fb2e7d60acfc69975c80a603edc2e5dfe6
DIST rosbridge_suite-0.8.1.tar.gz 376461 SHA256 f6f763dc49aa7a2a147c950d12202eb8cfdd2180d24e2010682cc353a338065f SHA512 322d720b5380970a97de07568a0e8b521a1a7646ac4695c168ae0b8fcb2ec445b7b5e9c500a12f05ede797f8ae9d2add70104e8a53667d36ae513ef56ffc6e29 WHIRLPOOL c19af50a75a9380cf729ce4ab1e610236c2a6a22198e41309aa9c2b81e6f89fd0e7496982f8000627e61e23e3576f554cf010d985cf8fdd993ffda73a9fff90d

@ -0,0 +1,29 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/RobotWebTools/rosbridge_suite"
KEYWORDS="~amd64"
PYTHON_COMPAT=( python2_7 )
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="A WebSocket interface to rosbridge"
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-ros/rosapi[${PYTHON_USEDEP},${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/rospy[${PYTHON_USEDEP}]
dev-ros/rosbridge_library[${PYTHON_USEDEP},${CATKIN_MESSAGES_PYTHON_USEDEP}]
dev-ros/rosauth[${PYTHON_USEDEP}]
dev-python/backports-ssl-match-hostname[${PYTHON_USEDEP}]
www-servers/tornado[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/backports-ssl.patch"
"${FILESDIR}/tornado.patch"
)

@ -0,0 +1 @@
DIST imu_tools-1.1.5.tar.gz 1653083 SHA256 845d0c0dfa262223e7aeb5a4ed31c92865fd5fbc30eda04dd822a2c89e81e3e0 SHA512 5009884852c71d6bb1b6c2be2f30ed333eca2ac6a7f29d02cb8f0821c0b95a33dd3b09049c4c4eeb1416fb0eb5dc454b3c6d36c2c24303f37c0d1d2c0c2d906a WHIRLPOOL 2caf1b9cf671081051a2475d019802c8fb312a2e8ad668e0cda2a259778f0ef548e3967233daeefa14c5630c4b13fddde6e0ac4d42b5b7424bf156eac0443964

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ros@gentoo.org</email>
<name>Gentoo ROS Project</name>
</maintainer>
<upstream>
<remote-id type="github">ccny-ros-pkg/imu_tools</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,24 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/ccny-ros-pkg/imu_tools"
KEYWORDS="~amd64"
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="RVIZ plugin for IMU visualization"
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-ros/roscpp
dev-ros/rviz
"
DEPEND="${RDEPEND}"

@ -0,0 +1,24 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
ROS_REPO_URI="https://github.com/ccny-ros-pkg/imu_tools"
KEYWORDS="~amd64"
ROS_SUBDIR=${PN}
inherit ros-catkin
DESCRIPTION="RVIZ plugin for IMU visualization"
LICENSE="BSD"
SLOT="0"
IUSE=""
RDEPEND="
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-ros/roscpp
dev-ros/rviz
"
DEPEND="${RDEPEND}"

@ -1,3 +1,4 @@
DIST aws-sdk-ruby-2.10.37.tar.gz 3215615 SHA256 6e1e31114ba6fdbde81bbe573a155073544f9fc7641789a848961bcacf51225e SHA512 987697dfac653035056b96de150e5db209b6db1224fa200913d60a239de0509b48d2a6f32e65b0ccce4195324874fa102b93a4181ffb4e9d4660cd9101fc2500 WHIRLPOOL a8fb464900b2b8c9225e77ac75755ea4a8bee347e9891ff366dd6ea5efff9544370626429300c5d66ae825b6a628d2506b8dd3dc731d1ae675d97723f9a0c9a3
DIST aws-sdk-ruby-2.6.50.tar.gz 2794854 SHA256 6157d8ad834020f83fd7db332ff4b0a719bf0a0791ae4e7da5530915c19dbe30 SHA512 3b592e25a135b369c67ddfd8d3c33db3b25faaac3161feeb5aa3feb1fdb6cfb5ca44cadc688dcfc8d456a398d94242f7ebc2922a82547b9b767249f4c9bdc0bc WHIRLPOOL 5640fec6e04f4f7ac8abf56365fd94dc77d13c169a76655fc55393f06c45d11ff2f1a6c5b4f3957e7404b76a7a18dfc033a50aa57df5d878acf2b39cc47e741b
DIST aws-sdk-ruby-2.8.14.tar.gz 2925334 SHA256 3fd54d79269e0a06ebdbb8ce41c7f47002a450de2ef96cb5add33f45eef3cf3e SHA512 d45e98acb924163dd0ee555ecb45729247f5bd4b788e6c22f5e95c02102945b9b67c5451958eaa2aa2195a773a49e6359405a89242cd1e283971c6065bc3de61 WHIRLPOOL 9f6e705c8fe96a7fb610b86e2f62c039d37ed89bbb07a39fd66db2c828408b69f8acffc6667de718c22ff080780c5481bb37c7e12c65e57a470360a913a67dc5
DIST aws-sdk-ruby-2.9.44.tar.gz 3084191 SHA256 6eb8f8b992b6cce654b6f40f37bbdd6d061580f9878e44c68ebbcabf2732829d SHA512 b2ef48a821143fed624f348a30774ca9fd65af432a09a1699af84d4a757bb7026439fa07e29c43813e504baa9383285434fe72912265ef9ad50f3c2ec3f26176 WHIRLPOOL c75cbc67ff6cb8cb90468d6d2f0b73f6c5b1f1ee5413c1a812772c85bf2638197f3a67dfa067d78153e02feac1816ccd831712e5c86910d858161089570bbedc

@ -0,0 +1,41 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRAINSTALL="apis ca-bundle.crt endpoints.json"
GITHUB_USER="aws"
GITHUB_PROJECT="aws-sdk-ruby"
RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem
DESCRIPTION="Official SDK for Amazon Web Services"
HOMEPAGE="https://aws.amazon.com/sdkforruby"
SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
LICENSE="Apache-2.0"
SLOT="2"
KEYWORDS="~amd64"
IUSE=""
ruby_add_rdepend "dev-ruby/aws-sigv4 dev-ruby/jmespath:1"
ruby_add_bdepend "test? ( dev-ruby/webmock )"
all_ruby_prepare() {
sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
# Avoid spec that gets confused by our directory names
sed -i -e '/requires prefixes from plugin names when loading/,/end/ s:^:#:' \
spec/seahorse/client/plugin_list_spec.rb || die
}

@ -1,3 +1,4 @@
DIST aws-sdk-ruby-2.10.37.tar.gz 3215615 SHA256 6e1e31114ba6fdbde81bbe573a155073544f9fc7641789a848961bcacf51225e SHA512 987697dfac653035056b96de150e5db209b6db1224fa200913d60a239de0509b48d2a6f32e65b0ccce4195324874fa102b93a4181ffb4e9d4660cd9101fc2500 WHIRLPOOL a8fb464900b2b8c9225e77ac75755ea4a8bee347e9891ff366dd6ea5efff9544370626429300c5d66ae825b6a628d2506b8dd3dc731d1ae675d97723f9a0c9a3
DIST aws-sdk-ruby-2.6.50.tar.gz 2794854 SHA256 6157d8ad834020f83fd7db332ff4b0a719bf0a0791ae4e7da5530915c19dbe30 SHA512 3b592e25a135b369c67ddfd8d3c33db3b25faaac3161feeb5aa3feb1fdb6cfb5ca44cadc688dcfc8d456a398d94242f7ebc2922a82547b9b767249f4c9bdc0bc WHIRLPOOL 5640fec6e04f4f7ac8abf56365fd94dc77d13c169a76655fc55393f06c45d11ff2f1a6c5b4f3957e7404b76a7a18dfc033a50aa57df5d878acf2b39cc47e741b
DIST aws-sdk-ruby-2.8.14.tar.gz 2925334 SHA256 3fd54d79269e0a06ebdbb8ce41c7f47002a450de2ef96cb5add33f45eef3cf3e SHA512 d45e98acb924163dd0ee555ecb45729247f5bd4b788e6c22f5e95c02102945b9b67c5451958eaa2aa2195a773a49e6359405a89242cd1e283971c6065bc3de61 WHIRLPOOL 9f6e705c8fe96a7fb610b86e2f62c039d37ed89bbb07a39fd66db2c828408b69f8acffc6667de718c22ff080780c5481bb37c7e12c65e57a470360a913a67dc5
DIST aws-sdk-ruby-2.9.44.tar.gz 3084191 SHA256 6eb8f8b992b6cce654b6f40f37bbdd6d061580f9878e44c68ebbcabf2732829d SHA512 b2ef48a821143fed624f348a30774ca9fd65af432a09a1699af84d4a757bb7026439fa07e29c43813e504baa9383285434fe72912265ef9ad50f3c2ec3f26176 WHIRLPOOL c75cbc67ff6cb8cb90468d6d2f0b73f6c5b1f1ee5413c1a812772c85bf2638197f3a67dfa067d78153e02feac1816ccd831712e5c86910d858161089570bbedc

@ -0,0 +1,37 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRAINSTALL="resources.schema.json"
GITHUB_USER="aws"
GITHUB_PROJECT="aws-sdk-ruby"
RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem
DESCRIPTION="Official SDK for Amazon Web Services"
HOMEPAGE="https://aws.amazon.com/sdkforruby"
SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
LICENSE="Apache-2.0"
SLOT="2"
KEYWORDS="~amd64"
IUSE=""
ruby_add_rdepend "~dev-ruby/aws-sdk-core-${PV}"
ruby_add_bdepend "dev-ruby/webmock"
all_ruby_prepare() {
sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
}

@ -1,4 +1,5 @@
DIST aws-sdk-ruby-1.66.0.tar.gz 1774530 SHA256 265e20a99c17d3f476ce6f6e981fd37e8e529dac2a38eba1ef7a25205f8f49b6 SHA512 53b13bab1db26f9eb6ba411a7143377fbdc56548fe881742953f388af60508be30cc2c82a3dce89675be2c799774d30313d19b47875a52d4c9134ce5f4b1914c WHIRLPOOL 265d01034a3e31f8e12dc8962d67fa727e7123de0e5c56c633a84d4b7e91168f6c8ea9f4e4291ef54ef570f4675f2f087610bf11b11ec9efdb1c345c42dcb1ec
DIST aws-sdk-ruby-2.10.37.tar.gz 3215615 SHA256 6e1e31114ba6fdbde81bbe573a155073544f9fc7641789a848961bcacf51225e SHA512 987697dfac653035056b96de150e5db209b6db1224fa200913d60a239de0509b48d2a6f32e65b0ccce4195324874fa102b93a4181ffb4e9d4660cd9101fc2500 WHIRLPOOL a8fb464900b2b8c9225e77ac75755ea4a8bee347e9891ff366dd6ea5efff9544370626429300c5d66ae825b6a628d2506b8dd3dc731d1ae675d97723f9a0c9a3
DIST aws-sdk-ruby-2.6.50.tar.gz 2794854 SHA256 6157d8ad834020f83fd7db332ff4b0a719bf0a0791ae4e7da5530915c19dbe30 SHA512 3b592e25a135b369c67ddfd8d3c33db3b25faaac3161feeb5aa3feb1fdb6cfb5ca44cadc688dcfc8d456a398d94242f7ebc2922a82547b9b767249f4c9bdc0bc WHIRLPOOL 5640fec6e04f4f7ac8abf56365fd94dc77d13c169a76655fc55393f06c45d11ff2f1a6c5b4f3957e7404b76a7a18dfc033a50aa57df5d878acf2b39cc47e741b
DIST aws-sdk-ruby-2.8.14.tar.gz 2925334 SHA256 3fd54d79269e0a06ebdbb8ce41c7f47002a450de2ef96cb5add33f45eef3cf3e SHA512 d45e98acb924163dd0ee555ecb45729247f5bd4b788e6c22f5e95c02102945b9b67c5451958eaa2aa2195a773a49e6359405a89242cd1e283971c6065bc3de61 WHIRLPOOL 9f6e705c8fe96a7fb610b86e2f62c039d37ed89bbb07a39fd66db2c828408b69f8acffc6667de718c22ff080780c5481bb37c7e12c65e57a470360a913a67dc5
DIST aws-sdk-ruby-2.9.44.tar.gz 3084191 SHA256 6eb8f8b992b6cce654b6f40f37bbdd6d061580f9878e44c68ebbcabf2732829d SHA512 b2ef48a821143fed624f348a30774ca9fd65af432a09a1699af84d4a757bb7026439fa07e29c43813e504baa9383285434fe72912265ef9ad50f3c2ec3f26176 WHIRLPOOL c75cbc67ff6cb8cb90468d6d2f0b73f6c5b1f1ee5413c1a812772c85bf2638197f3a67dfa067d78153e02feac1816ccd831712e5c86910d858161089570bbedc

@ -0,0 +1,31 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23"
RUBY_FAKEGEM_RECIPE_TEST=""
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRADOC="../CHANGELOG.md ../MIGRATING.md ../README.md ../UPGRADING.md"
GITHUB_USER="aws"
GITHUB_PROJECT="${PN}-ruby"
RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem
DESCRIPTION="Official SDK for Amazon Web Services"
HOMEPAGE="https://aws.amazon.com/sdkforruby"
SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
LICENSE="Apache-2.0"
SLOT="2"
KEYWORDS="~amd64"
IUSE=""
ruby_add_rdepend "virtual/ruby-ssl
~dev-ruby/aws-sdk-resources-${PV}"

@ -1,2 +1,3 @@
DIST aws-sigv4-1.0.0.gem 10752 SHA256 5fb7c395a40dc46c37836d2a185b8341cd841c08af45077bc606d9ae5677d932 SHA512 2a3d558452fdb3d620ef92f296ad637456cdef2be1cb546693f66b6edd6a551fe29962680c539306c4c3523af3644a8f87dd6d7616364b0e66353acf4219de43 WHIRLPOOL 8983c38f53627f58094a470d69ea9aeecf5e531cdfa922802fdbe84ad1e84d9a57bd805f56be7ff9b124fd40a7e0fc843bfcb028c0a7452efd45c482af70d6e5
DIST aws-sigv4-1.0.1.gem 10752 SHA256 d7e75a2e8ce48d5c8f74529935199ad891386339777446a4070d515fb707b433 SHA512 cdabb1c295ecad91c6c13bb1ff34efed450ccb187741ae61bdf90a261ebe1455b398f5f5933a9ba47437f54e532883749265304c972a57375cae4300693df2b7 WHIRLPOOL fd8b10c4cb402f175b3238efc6748a95f57c132b7b688ff7e43477594a4140f9260d63577ac16b25c37227c4d5a5786cb0c01eab0bda1bd93d297bfda8b886ab
DIST aws-sigv4-1.0.2.gem 10752 SHA256 746efa6929bf16ec88b2768f04c53841c987dd28137c864366c6d7d985ff183c SHA512 df09ba9ca7f78bfd2e0308454dc2ba701409f857474d28f0efe9ed3fc5f516fb1134dc0c8f7000ba506eb4128d7ebd501eb1937dac910538ae63f3cdca7f3984 WHIRLPOOL 94d42cfed2697281af061afdd99af4d421bcab7c92ec3fe1372fbe9543c37314e659633356ebc08a6ee725b7d2909ad8545c7f2c296500607992057c1664eb61

@ -0,0 +1,19 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_TEST="none"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
inherit ruby-fakegem
DESCRIPTION="Amazon Web Services Signature Version 4 signing library"
HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
LICENSE="Apache-2.0"
SLOT="1"
KEYWORDS="~amd64"
IUSE=""

@ -1,5 +1,4 @@
DIST json-1.8.2.gem 152064 SHA256 256f73d107635f54e3dd84daba65da7b08f9d6a6e6aeb046db6a46b98bd8fb7f SHA512 5c94ec2c5378f7f54cd87a2e265b058e80031d2dd29daf14639c80ba0ac285a527ab7961f5a2cd1e483f455fd8f8c88575950822b7b2d431aa7b2b9c8be819c1 WHIRLPOOL dc17e0c011523434ed29e428a2658ebe58d08df8252e7ee8990882b6d17c19354b3e4ba6985a2a45e4b94932ad265698197ba64ef891f38d3be154da4edde8cb
DIST json-1.8.3.gem 152064 SHA256 8ca2091e26678fb989d66cdb9f0104f1307bc584b429c2fd783d51e4b3f14bdb SHA512 313f6016aca5eba4d4a14a72b60b3e9c5e863a6681eb9e499cacedb63969694be563990af0a44dae52963f07b6e6c7aa7e0876ab1348b214f53d925bdc5e83ea WHIRLPOOL 8c6dc26a578aedcd4bbc1e6ea95f2a72debe6bdaca5a4c2a4e70b81d9947048c6648b62d5546fa572084d37ba99ce199a177b87838be5cc3f11d8d0fa0f62a63
DIST json-1.8.6.gem 144384 SHA256 65af27ca985f70eb0d083aab0f75712c771871222af021ce533bad77bd3bb262 SHA512 8f393da080293965389df4a606e0604c500b4b267897b3c1b9007b7700dde8156f6598c25790e84fa20a7e03c7ae359a0b267c7b84e52dfe2a1ac83cf652ad9b WHIRLPOOL 0d55a8086f54eafa8e2d9e49e71436750b63c4bb7164fe06e5fa298f112f5612c428e3d4377e1ca824577d01eb21a6862b42236a147c85e9faa8a3f623184bf8
DIST json-2.0.4.gem 138752 SHA256 ee1361f37fbd9f06d0de3976cd4320a84119aa41fa7f321eb67244404add3114 SHA512 24105aa06c205b6fe1cd835822d71b81299fdc47a45f48dd8f513f68f7fd12cdb51df476bcaef640916737d22be3156848ee4c9922c4a61aed5ca2d4d0d21c86 WHIRLPOOL 179f95dbfe21fbb8c3a8f97281b93892c167c7e3325d6ff182c0d0e4cc9e3a17bcea118311001756937c1e0e4be09ed7f117ffc824c24df18fc5cc5a31db93ce
DIST json-2.1.0.gem 140800 SHA256 b76fd09b881088c6c64a12721a1528f2f747a1c2ee52fab4c1f60db8af946607 SHA512 bffbe462e952bca321d4325ecb9c5e9f61e51cad13758581ecfaa6a038bac4e30dc7db50bd897086a5592f6fc437d0e0909f91e279aaf4dd71cf127100c3550b WHIRLPOOL 94140475051d90e9b207c6d0224483b5ee0c371a27b7a4aafc612bc2e828cffb350afd4001ba20a3b5ddb124561da960cdb0d757bfbfbba031942d6bbb9cc641

@ -0,0 +1,82 @@
diff --git ext/json/generator/generator.c ext/json/generator/generator.c
index a135e28348..2cdca5685f 100644
--- a/ext/json/ext/generator/generator.c
+++ b/ext/json/ext/generator/generator.c
@@ -301,7 +301,7 @@ static char *fstrndup(const char *ptr, unsigned long len) {
char *result;
if (len <= 0) return NULL;
result = ALLOC_N(char, len);
- memccpy(result, ptr, 0, len);
+ memcpy(result, ptr, len);
return result;
}
@@ -1055,7 +1055,7 @@ static VALUE cState_indent_set(VALUE self, VALUE indent)
}
} else {
if (state->indent) ruby_xfree(state->indent);
- state->indent = strdup(RSTRING_PTR(indent));
+ state->indent = fstrndup(RSTRING_PTR(indent), len);
state->indent_len = len;
}
return Qnil;
@@ -1093,7 +1093,7 @@ static VALUE cState_space_set(VALUE self, VALUE space)
}
} else {
if (state->space) ruby_xfree(state->space);
- state->space = strdup(RSTRING_PTR(space));
+ state->space = fstrndup(RSTRING_PTR(space), len);
state->space_len = len;
}
return Qnil;
@@ -1129,7 +1129,7 @@ static VALUE cState_space_before_set(VALUE self, VALUE space_before)
}
} else {
if (state->space_before) ruby_xfree(state->space_before);
- state->space_before = strdup(RSTRING_PTR(space_before));
+ state->space_before = fstrndup(RSTRING_PTR(space_before), len);
state->space_before_len = len;
}
return Qnil;
@@ -1166,7 +1166,7 @@ static VALUE cState_object_nl_set(VALUE self, VALUE object_nl)
}
} else {
if (state->object_nl) ruby_xfree(state->object_nl);
- state->object_nl = strdup(RSTRING_PTR(object_nl));
+ state->object_nl = fstrndup(RSTRING_PTR(object_nl), len);
state->object_nl_len = len;
}
return Qnil;
@@ -1201,7 +1201,7 @@ static VALUE cState_array_nl_set(VALUE self, VALUE array_nl)
}
} else {
if (state->array_nl) ruby_xfree(state->array_nl);
- state->array_nl = strdup(RSTRING_PTR(array_nl));
+ state->array_nl = fstrndup(RSTRING_PTR(array_nl), len);
state->array_nl_len = len;
}
return Qnil;
diff --git ext/json/generator/generator.h ext/json/generator/generator.h
index 298c0a4965..6bbf817b7d 100644
--- a/ext/json/ext/generator/generator.h
+++ b/ext/json/ext/generator/generator.h
@@ -1,7 +1,6 @@
#ifndef _GENERATOR_H_
#define _GENERATOR_H_
-#include <string.h>
#include <math.h>
#include <ctype.h>
diff --git ext/json/lib/json/version.rb ext/json/lib/json/version.rb
index b5748334b9..cd7ddf8777 100644
--- a/lib/json/version.rb
+++ b/lib/json/version.rb
@@ -1,7 +1,7 @@
module JSON
# JSON version
- VERSION = '1.8.6'
+ VERSION = '1.8.6.1'
VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:

@ -1,12 +1,11 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
USE_RUBY="ruby21 ruby22 ruby23 ruby24"
EAPI=6
USE_RUBY="ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRADOC="CHANGES TODO README.md README-json-jruby.markdown"
RUBY_FAKEGEM_GEMSPEC="json.gemspec"
@ -14,10 +13,10 @@ inherit multilib ruby-fakegem
DESCRIPTION="A JSON implementation as a Ruby extension"
HOMEPAGE="https://github.com/flori/json"
LICENSE="Ruby"
LICENSE="|| ( Ruby GPL-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SLOT="2"
SLOT="0"
IUSE=""
RDEPEND="${RDEPEND}"
@ -27,12 +26,14 @@ DEPEND="${DEPEND}
ruby_add_bdepend "dev-ruby/rake
doc? ( dev-ruby/rdoc )"
PATCHES=( "${FILESDIR}/${P}-heap-exposure.patch" )
all_ruby_prepare() {
# Avoid building the extension twice!
# And use rdoc instead of sdoc which we don't have packaged
# And don't call git to list files. We're using the pregenerated spec anyway.
sed -i \
-e '/task :test/ s|:compile,||' \
-e 's| => :compile||' \
-e 's| => :clean||' \
-e 's|sdoc|rdoc|' \
-e 's|`git ls-files`|""|' \
@ -41,33 +42,29 @@ all_ruby_prepare() {
# Remove hardcoded and broken -O setting.
sed -i -e '/^ \(if\|unless\)/,/^ end/ s:^:#:' \
-e '/^unless/,/^end/ s:^:#:' ext/json/ext/*/extconf.rb || die
# Avoid setting gem since it will not be available yet when installing
sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
}
each_ruby_configure() {
for ext in parser generator ; do
${RUBY} -Cext/json/ext/${ext} extconf.rb || die
done
}
each_ruby_compile() {
for ext in parser generator ; do
emake V=1 -Cext/json/ext/${ext}
cp ext/json/ext/${ext}/${ext}$(get_modname) ext/json/ext/ || die
done
# Since 1.5.0 a Java extension is provided but it does not compile.
if [[ $(basename ${RUBY}) != "jruby" ]]; then
${RUBY} -S rake compile || die "extension compile failed"
fi
}
each_ruby_test() {
for t in pure ext ; do
JSON=${T} ${RUBY} -S rake do_test_${t} || die
done
JSON=pure \
${RUBY} -Iext:lib -S testrb-2 tests/test_*.rb || die "pure ruby tests failed"
if [[ $(basename ${RUBY}) != "jruby" ]]; then
JSON=ext \
${RUBY} -Iext:lib -S testrb-2 tests/test_*.rb || die "ext ruby tests failed"
fi
}
each_ruby_install() {
each_fakegem_install
ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
if [[ $(basename ${RUBY}) != "jruby" ]]; then
ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
fi
}

@ -1,4 +1,6 @@
DIST ragel-6.10.tar.gz 1232993 SHA256 5f156edb65d20b856d638dd9ee2dfb43285914d9aa2b6ec779dac0270cd56c3f SHA512 6c1fe4f6fa8546ae28b92ccfbae94355ff0d3cea346b9ae8ce4cf6c2bdbeb823e0ccd355332643ea72d3befd533a8b3030ddbf82be7ffa811c2c58cbb01aaa38 WHIRLPOOL 12f8557fb665dba46d63ddb05d0dab87b990e6743471652bb608dfcb7cb24dafb4105e42cc91897cde4cad2c2fb58f50d5fbed68a468ca9fc33e5b1047d36f74
DIST ragel-6.7.tar.gz 1182734 SHA256 46df8e3f117a730f8896061c95ea8e8f53e9789cb053c2eea047833724fd7a30 SHA512 a85c1d5d4fd7d903c823c2ddc8b5f1d5dd5f715f11bc04f10fb78ea5632b3aa33c5b4861f89179fa9d6b4944484216ee93bbd25dd0b5958d2419e434b781b78a WHIRLPOOL 52f1614e16390949fe070df46c9929b5871e35923b38e6c277f0d4688e45f610a16a6635240cea0622892c675aebf092e3f6a9c626684ed1a4af8191ff3c6d6f
DIST ragel-6.8.tar.gz 1211146 SHA256 dd7f7d22f3a58147379bda61334d341c2caa0caf9f71897e3e4ec05c8f398764 SHA512 3c7fa4ca0cfcd5d19e0ff8746ca427f5a1eefb0af09db5d2ee55ced9bcc35c588a5db146dcfdec46b83fb63d94ff9ace117b4cfcb07e2c57aec67a6cbe249458 WHIRLPOOL 540ba0c5a712ae0426982e08e7aa7b1fa1ff33e3d9c2095353939ed2c45e04048ebcdf93292ead8e70abbd8fa230dddbfeea8d485955142d0615ddb94c8a0b9a
DIST ragel-6.9.tar.gz 1226871 SHA256 6e07be0fab5ca1d9c2d9e177718a018fc666141f594a5d6e7025658620cf660a SHA512 46886a37fa0b785574c03ba6581d99bbeaa11ca65cf4fdc37ceef42f4869bd695694cd69b4b974a25cf539f004cb106e3debda17fc26e1a9a6a4295992733dbd WHIRLPOOL c802e3020842b28ecfe604ca13c8f205ed98fb4c180c65a88be9001e7b73dc4facc6a716f55623da4f9c7cdc43c79d958c4c26fa89622bdabf9b3989e0c9682e
DIST ragel-7.0.0.10.tar.gz 779503 SHA256 40562bcac66a22dbea8357a35745bbcb1ab596c262d8691145ee11aafa6f8dec SHA512 2d1d4c469d8581239ec21f128e94ab452b398903302f82ef59ce03d6fb89bc89de6441dbe53ea99d7689866f7aec485ab1ec9c537908f21eb1394650b55413ba WHIRLPOOL d99108785163de286d426d805409a23c6ac7d82ea2887e6900ab184758bad3945ccdc1a692c3577ccb084c492c2fe7e8052e45ecc622fe754f08dc8da9f85fc2
DIST ragel-7.0.0.9.tar.gz 850078 SHA256 b9e6cac5d388398ac05d8ef15a07628f5e6de292e39f5ad92b8176379e8352f0 SHA512 87de7d41af4a08f09d422a0e58820f9b5b1218acc4733c58690feea4f872790813b5f2d7505ce147a2a6e1bcd341926c35fed7c6b55f543bdf864b119868bcde WHIRLPOOL 0ae6c3d589caf967c30d9ccc30a6801cdf55032aa7f2939dc101e6ca3ef5b3e15df4a311164128bca63f9d2e3500d601739b9296a276de3b3b58755e5db0d646

@ -0,0 +1,37 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils autotools autotools-utils
DESCRIPTION="Compiles finite state machines from regular languages into executable code"
HOMEPAGE="http://www.colm.net/open-source/ragel/"
SRC_URI="http://www.colm.net/files/ragel/${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 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="vim-syntax"
DEPEND=""
RDEPEND=""
# We need to get the txl language in Portage to have the tests :(
RESTRICT=test
DOCS=( ChangeLog CREDITS README TODO )
src_test() {
cd "${S}"/test
./runtests.in || die
}
src_install() {
autotools-utils_src_install
if use vim-syntax; then
insinto /usr/share/vim/vimfiles/syntax
doins ragel.vim
fi
}

@ -0,0 +1,29 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Compiles finite state machines from regular languages into executable code"
HOMEPAGE="https://www.colm.net/open-source/ragel/"
SRC_URI="https://www.colm.net/files/ragel/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~x86"
IUSE="vim-syntax"
DEPEND="~dev-util/colm-0.13.0.5"
RDEPEND="${DEPEND}"
src_test() {
cd "${S}"/test || die
./runtests.in || die
}
src_install() {
if use vim-syntax; then
insinto /usr/share/vim/vimfiles/syntax
doins ragel.vim
fi
default
}

@ -1 +1,2 @@
DIST wiggle-0.9.tar.gz 809756 SHA256 fe3dcf05a2cda07f42db2099ae8407acdb4d58bb9cfdc58c72395b7ae4a4e6b5 SHA512 2e3a4977704231f3bd6aa96ffaba8bc733acde425773b86a9649312676b44360c5b85cb48bf944cd383d8e4d0a541d88755f23be7d7a8884213f68a6320c62d9 WHIRLPOOL 95a12f73458abdb999681de7af08c407d9f7c4762c71287eb6e80e38a322459c6e1767f2bec72199cf7d8cb33912981b9fd48fbe95957f854b43e4c148c04c14
DIST wiggle-1.0.tar.gz 868216 SHA256 44c97b2d47a109c709cdd4181d9ba941fee50dbb64448018b91d4a2fffe69cf2 SHA512 e9bd6e794ba0cff70db96a648c53aa21b427967758375b843fccf409dd17faf59468c11bafb1e0a7af8bfa657551da8bc1903b9ccf8def1ed9acc84f50c7e0b3 WHIRLPOOL 26674ff2ac280ee2f6db916518c85799fda5d71bb0e056e414c82576a75a28db35460a0ca76a42854dd3a6b8e30a16b2b8f20649d4da604d2d3838297552e6f8

@ -0,0 +1,22 @@
Respect user CFLAGS and use pkg-config to get ncurses libs.
--- wiggle-1.0/Makefile
+++ wiggle-1.0/Makefile
@@ -3,7 +3,7 @@
#OptDbg=-O3
#OptDbg=-O3 -march=pentium2
OptDbg=-ggdb
-CFLAGS=$(OptDbg) -I. -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter
+CFLAGS += -I. -Wall -Wstrict-prototypes -Wextra -Wno-unused-parameter
# STRIP = -s
INSTALL = /usr/bin/install
@@ -12,7 +12,7 @@
MANDIR = /usr/share/man
MAN1DIR = $(MANDIR)/man1
MAN5DIR = $(MANDIR)/man5
-LDLIBS = -lncurses
+LDLIBS = $(shell pkg-config --libs ncurses)
all: wiggle wiggle.man test

@ -0,0 +1,64 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit fixheadtails toolchain-funcs
DESCRIPTION="tool for applying patches that patch cannot apply because of conflicting changes"
HOMEPAGE="http://neil.brown.name/wiggle http://neil.brown.name/git?p=wiggle"
SRC_URI="http://neil.brown.name/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
IUSE="test"
# The 'p' tool does support bitkeeper, but I'm against just dumping it in here
# due to it's size. I've explictly listed every other dependancy here due to
# the nature of the shell program 'p'
RDEPEND="
dev-util/diffstat
dev-util/patchutils
sys-apps/diffutils
sys-apps/findutils
virtual/awk
sys-apps/grep
sys-apps/less
sys-apps/sed
sys-apps/coreutils
sys-devel/patch
sys-libs/ncurses:0=
"
DEPEND="${RDEPEND}
sys-apps/groff
virtual/pkgconfig
test? ( sys-process/time )"
PATCHES=( "${FILESDIR}"/${P}-cflags.patch )
src_prepare() {
default
# Fix the reference to the help file so `p help' works
sed -i "s:\$0.help:${EPREFIX}/usr/share/wiggle/p.help:" p || die "sed failed on p"
ht_fix_file p
}
src_compile() {
emake CC="$(tc-getCC)" ${PN}
}
src_test() {
# Use prefixed time binary
emake TIME_CMD="${EPREFIX}/usr/bin/time" test
}
src_install() {
dobin wiggle p
doman wiggle.1
dodoc ANNOUNCE INSTALL TODO DOC/Algorithm notes
insinto /usr/share/wiggle
doins p.help
}

@ -574,7 +574,7 @@ git-r3_fetch() {
for r in "${repos[@]}"; do
if [[ ${r} == git:* || ${r} == http:* ]]; then
ewarn "git-r3: ${r%%:*} protocol is completely unsecure and may render the ebuild"
ewarn "easily suspectible to MITM attacks (even if used only as fallback). Please"
ewarn "easily susceptible to MITM attacks (even if used only as fallback). Please"
ewarn "use https instead."
ewarn "[URI: ${r}]"
fi

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save