parent
7f2b15d071
commit
5c68395ff7
@ -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"
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
|
@ -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)
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
@ -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
|
||||
|
@ -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
|
||||
}
|
@ -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,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
|
||||
}
|
@ -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>
|
@ -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}]
|
||||
)
|
||||
"
|
@ -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,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
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue