Sync with portage [Thu Aug 8 12:51:52 MSK 2019].

mhiretskiy 1469
root 5 years ago
parent 028bc010f4
commit f41c9f6059

Binary file not shown.

Binary file not shown.

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ck+gentoo@bl4ckb0x.de</email>
<name>Conrad Kostecki</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,10 @@
# Copyright 2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
DESCRIPTION="A group for the Minecraft server"
ACCT_GROUP_ID="490"

@ -8,4 +8,3 @@ inherit acct-group
DESCRIPTION="MySQL program group"
ACCT_GROUP_ID=60
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>kensington@gentoo.org</email>
</maintainer>
</pkgmetadata>

@ -0,0 +1,8 @@
# Copyright 2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
ACCT_GROUP_ID=494

Binary file not shown.

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ck+gentoo@bl4ckb0x.de</email>
<name>Conrad Kostecki</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,14 @@
# Copyright 2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
DESCRIPTION="A user for the Minecraft server"
ACCT_USER_GROUPS=( "minecraft" )
ACCT_USER_HOME="/var/lib/minecraft-server"
ACCT_USER_ID="490"
acct-user_add_deps

@ -10,4 +10,3 @@ ACCT_USER_ID=60
ACCT_USER_GROUPS=( mysql )
acct-user_add_deps
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>kensington@gentoo.org</email>
</maintainer>
</pkgmetadata>

@ -0,0 +1,11 @@
# Copyright 2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
ACCT_USER_ID=494
ACCT_USER_GROUPS=( unrealircd )
acct-user_add_deps

Binary file not shown.

@ -1 +1,2 @@
DIST mcelog-162.tar.gz 308347 BLAKE2B bd438e85ea793c6c5ce4d561f0400e91b101a010cce7f937751a11a0a974fec49db7e9d768fc50db68a91c973c90c8ab1b4ffa80964cb6fde860b9f2ac217435 SHA512 d61a0b7ad3974098963edde1e9e9acdf4dbd1a025577b7044bafc17302abd19080c8145a2700c691400af0768ff4b6833d47697e1478c5bef8831f7f8b61ae48
DIST mcelog-164.tar.gz 308393 BLAKE2B da1f425faa88eb8377eb11c3e13aa6fd4c0b4f4d3b02afc2fba8e4137979bb5619b075b0d0ecd80ec6059c9eb912376291e56e667bf7b838bd2f641c4a6c175f SHA512 10c8c580b10caa6d40c2a4887cb9e9ec07eb81a353d24a4d1a89ad8ec5cc29f7976c26335f077393794b060e62b5cbbe348c64567a3cf3fabc3ec5c3fe59da5a

@ -0,0 +1,58 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit linux-info systemd toolchain-funcs
DESCRIPTION="A tool to log and decode Machine Check Exceptions"
HOMEPAGE="http://mcelog.org/"
SRC_URI="https://github.com/andikleen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="selinux"
RDEPEND="selinux? ( sec-policy/selinux-mcelog )"
# TODO: add mce-inject to the tree to support test phase
RESTRICT="test"
pkg_pretend() {
if [[ ${MERGE_TYPE} != buildonly ]]; then
local CONFIG_CHECK="~X86_MCE"
kernel_is -ge 4 12 && CONFIG_CHECK+=" ~X86_MCELOG_LEGACY"
check_extra_config
fi
}
src_prepare() {
eapply "${FILESDIR}"/${PN}-0.8_pre1-timestamp-${PN}.patch \
"${FILESDIR}"/${PN}-129-debugflags.patch
eapply_user
tc-export CC
}
src_install() {
default
insinto /etc/cron.daily
newins ${PN}.cron ${PN}
insinto /etc/logrotate.d/
newins ${PN}.logrotate ${PN}
newinitd "${FILESDIR}"/${PN}.init-r1 ${PN}
systemd_dounit "${FILESDIR}"/${PN}.service
dodoc *.pdf
}
pkg_postinst() {
einfo "The default configuration set is now installed in /etc/${PN}"
einfo "you might want to edit those files."
einfo
einfo "A sample cronjob is installed into /etc/cron.daily"
einfo "without executable bit (system service is the preferred method now)"
}

@ -1,3 +1 @@
DIST sshguard-2.1.0.tar.gz 1117466 BLAKE2B 1a105f346aa9b774fb0314161d779eadaab299d3b74181a449ab86534e11375e4c017c142bc621733593369bcebada9511dd40c64cb4a49cd124eb7537ae0717 SHA512 0a75e9d1a8c9c010c767a49e96e88db4a92aae8d428deebcff1ce8befa36b77cb1937f2fcb2a4e2a3e86d47896a8405265eb30ee7a603fc18a3ee117d646b119
DIST sshguard-2.3.1.tar.gz 765330 BLAKE2B d86fe596c788209cb35c699601ccb698365e0c6b497ef8184c64d879ebb821a57e5f366c3b518e6f0c6bf65952b2c675f87f029b7b8184466c7f90d6dfebaca3 SHA512 b24f5dba34bed9246665c432b379afa4f1edacb56fd41e0b254a698ded1280c33fd51fb36466ae70d44ef4a31a0a75b59fa4df97d0e8ed8d194bf8046a3ac84d
DIST sshguard-2.4.0.tar.gz 771506 BLAKE2B 82e9caf70dc9a1ba9ef6ba1c0916424a74891c84069a4a879c9057f3baea32af68f35d8b31cacdd60d323f5ec7b02a6e12aff1ec72fc0291b74c4882cd441d93 SHA512 64293700ef85f0843c333c3a27b04c5b2f69bf8dddf46353a371d4178915deb931362b3641ded0eeb5365f30cb63ce6ce17256d8d094383d1cfe661065b9c1c6

@ -1,24 +0,0 @@
#!/sbin/openrc-run
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
after iptables
use logger
}
SSHGUARD_PIDFILE=${SSHGUARD_PIDFILE:-/var/run/${SVCNAME}.pid}
start() {
ebegin "Starting sshguard"
[ -z "${SSHGUARD_WAIT}" ] && SSHGUARD_WAIT=999
start-stop-daemon --start --wait ${SSHGUARD_WAIT} --background --quiet --exec \
/usr/sbin/sshguard -- -i ${SSHGUARD_PIDFILE} ${SSHGUARD_OPTS}
eend $?
}
stop() {
ebegin "Stopping sshguard"
start-stop-daemon --stop -p ${SSHGUARD_PIDFILE}
eend $?
}

@ -1,12 +1,11 @@
#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
command="/usr/sbin/sshguard"
pidfile="${SSHGUARD_PIDFILE:-/var/run/${SVCNAME}.pid}"
command_args="-i \"${pidfile}\" ${SSHGUARD_OPTS}"
command_background=1
start_stop_daemon_args="--wait ${SSHGUARD_WAIT:-999} --interpreted --quiet"
start_stop_daemon_args="--background --wait ${SSHGUARD_WAIT:-999} --interpreted --quiet"
depend() {
after iptables

@ -1,40 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="protects hosts from brute force attacks against ssh"
HOMEPAGE="http://sshguard.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 ~arm x86 ~x86-fbsd"
DEPEND="
sys-devel/flex
"
RDEPEND="
virtual/logger
"
DOCS=(
CHANGELOG.rst
CONTRIBUTING.rst
README.rst
examples/net.sshguard.plist
examples/sshguard.service
examples/whitelistfile.example
)
PATCHES=(
"${FILESDIR}"/${PN}-2.1.0-conf.patch
)
src_install() {
default
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc
newins examples/sshguard.conf.sample sshguard.conf
}

@ -1,40 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="protects hosts from brute force attacks against ssh"
HOMEPAGE="https://www.sshguard.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86 ~x86-fbsd"
DEPEND="
sys-devel/flex
"
RDEPEND="
virtual/logger
"
DOCS=(
CHANGELOG.rst
CONTRIBUTING.rst
README.rst
examples/net.sshguard.plist
examples/sshguard.service
examples/whitelistfile.example
)
PATCHES=(
"${FILESDIR}"/${PN}-2.1.0-conf.patch
)
src_install() {
default
newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc
newins examples/sshguard.conf.sample sshguard.conf
}

@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86 ~x86-fbsd"
KEYWORDS="amd64 ~arm x86 ~x86-fbsd"
DEPEND="
sys-devel/flex
@ -32,7 +32,7 @@ PATCHES=(
src_install() {
default
newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
newinitd "${FILESDIR}"/${PN}.initd-r2 ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc

@ -38,7 +38,7 @@ src_prepare() {
src_install() {
default
newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
newinitd "${FILESDIR}"/${PN}.initd-r2 ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc

Binary file not shown.

@ -0,0 +1,33 @@
https://github.com/kjn/lbzip2/pull/25
From d570020ade2add591b97e61927545a005a2d4a6f Mon Sep 17 00:00:00 2001
From: Matt Turner <mattst88@gmail.com>
Date: Wed, 7 Aug 2019 11:47:04 -0700
Subject: [PATCH] Align zero-length array to avoid unaligned accesses
When make_tree() creates the left-justified base table (uint64_t *B)
it does so with 64-bit stores:
B[k] = sofar;
But B points to memory in the zero-length array "uint32_t tt[0]" at the
end of struct decoder_state. Since tt's type is uint32_t, it is only
aligned to a four byte boundary, and so the 64-bit store in make_tree()
causes an unaligned trap on strict platforms like sparc.
---
src/decode.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/decode.h b/src/decode.h
index c9a9086..7c0ca3f 100644
--- a/src/decode.h
+++ b/src/decode.h
@@ -62,7 +62,7 @@ struct decoder_state {
uint8_t rle_char; /* current character */
uint8_t rle_prev; /* prevoius character */
- uint32_t tt[0];
+ uint32_t tt[0] __attribute__((aligned (8)));
};

@ -3,8 +3,6 @@
EAPI="7"
inherit autotools
DESCRIPTION="Parallel bzip2 utility"
HOMEPAGE="https://github.com/kjn/lbzip2/"
SRC_URI="https://dev.gentoo.org/~whissi/dist/${PN}/${P}.tar.gz"
@ -19,14 +17,9 @@ DEPEND=""
PATCHES=(
"${FILESDIR}"/${PN}-2.3-s_isreg.patch
"${FILESDIR}"/${P}-fix-unaligned.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
local myeconfargs=(
--disable-silent-rules

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}-src.tgz"
LICENSE="LGPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
IUSE=""
DEPEND="

Binary file not shown.

@ -1,5 +1,3 @@
DIST containers-storage-1.12.10.tar.gz 1593313 BLAKE2B 4b0c412304dc6b3aa79064a6071abfdd325cffd7405c50d57008f3139cfd9afd450a21773e4463650b63720210381e58e11b8c019efcf0297377821c3b76c276 SHA512 83b7e353efe89192e1c956742202395981849f68d53967df14a6952e36c458a2a2adaed4cf7d959e3b73114906deb5056591b8fc3aefbc83b85f9f5dd378f031
DIST containers-storage-1.12.15.tar.gz 5968064 BLAKE2B 180583da6271c23f828ba5d91e8f1db64ac1aa8f9bb1f308b59e0eb0bdcd7afb94509aa0556bfc86a4e182cbdb6501b9c51b58499a61c2773254b03a6c3bc621 SHA512 523e4d35995fa169701551f91362fafd67f25ad1cbe733a5ae2614a198a4d71c5b5f319a539dd5a6a38e79ca46b8979ed62918a3bd69fb39d8d14d259f197408
DIST containers-storage-1.12.16.tar.gz 5970004 BLAKE2B 0e9f473c9315acb22b94c9cd17072659afe2270e05d7c7c595d0563bd4d96420b3ecaaaeaf61ce4a10647e40c7177b7483aadf62ce40237dea10c23cb91bba62 SHA512 17a073bb338547c1e64065a1a0013e083565abeb6aa366989160c90dfb6bd6d306ea25fc938194b607b0cc74918b1ff40b12ea274b3df771e2d848b2bbab2b5c
DIST containers-storage-1.12.9.tar.gz 1593286 BLAKE2B f53ef233e3d08dad84cda9154271254f9fe04e951643f20e8ab5bd37456e4eeb7083c1810656072c2b4bdeea0f6188871d4db566363c8363d2c2087ab9a4d3cb SHA512 0b5ad6cb52b4b74da7c574ec6841d74b92ef20f853e8d8fed83e0f9d529a7749692225e26ae4ab89fbd2a6202651c8a3a44a57bc1f42bcbb755fdba26e9cb3fd
DIST containers-storage-1.13.1.tar.gz 5983556 BLAKE2B 1d0b6aba0464603fb26c45beecdb9b4afe6566dff4698da980ad6f9736a6d810ec41334f181d5709f78bab986e704c965b1967ed591348cd687d9cb92875321d SHA512 9fa686f44dda3d363f7c623abc9baa0911e26eb5e7dbb7bc60da259fe8d52411cb25fb98e2c8db10a5a80ebf04d07af8390acd48d26706f913900b19e58eac9f
DIST github.com-pquerna-ffjson-e517b90714f7c0eabe6d2e570a5886ae077d6db6.tar.gz 103470 BLAKE2B 81f0f6ea6648997cb61723d09d456802e60a3d1eb35134c4bbc8af5943b955b1402fe2b3f8d0d4d2d0293ab256a9be66d53262d5f79ca00bf8c18ded39dc44f4 SHA512 fadca5a7bd0c0578b23281720a08c505054f3497daeee8efa36b5acafa4118feb4b8a96c4acb4c279d72ebcd50846307cfbb846a355b62f350c961f9102c93a6

@ -1,110 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EGO_VENDOR=(
"github.com/pquerna/ffjson e517b90714f7c0eabe6d2e570a5886ae077d6db6"
)
inherit golang-vcs-snapshot
KEYWORDS="~amd64"
DESCRIPTION="containers/storage library"
HOMEPAGE="https://github.com/containers/storage"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="btrfs +device-mapper ostree test"
EGO_PN="${HOMEPAGE#*//}"
EGIT_COMMIT="v${PV}"
SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
${EGO_VENDOR_URI}"
RDEPEND="
btrfs? ( sys-fs/btrfs-progs )
device-mapper? ( sys-fs/lvm2:= )
ostree? (
dev-libs/glib:=
dev-util/ostree:=
)"
DEPEND="${RDEPEND}
dev-go/go-md2man
test? (
sys-fs/btrfs-progs
sys-fs/lvm2
sys-apps/util-linux
)"
RESTRICT="test? ( userpriv ) !test? ( test )"
src_unpack() {
golang-vcs-snapshot_src_unpack
}
src_prepare() {
default
[[ -f ${S}/src/${EGO_PN}/hack/btrfs_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_btrfs" > \
"${S}/src/${EGO_PN}/hack/btrfs_tag.sh" || die; }
[[ -f ${S}/src/${EGO_PN}/hack/libdm_tag.sh ]] || die
use device-mapper || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_devicemapper" > \
"${S}/src/${EGO_PN}/hack/libdm_tag.sh" || die; }
[[ -f ${S}/src/${EGO_PN}/hack/ostree_tag.sh ]] || die
use ostree || { echo -e "#!/bin/sh\ntrue" > \
"${S}/src/${EGO_PN}/hack/ostree_tag.sh" || die; }
sed -e 's:TestChrootUntarPath(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/chrootarchive/archive_test.go" || die
sed -e 's:TestTarUntar(:_\0:' \
-e 's:TestTarWithOptionsChownOptsAlwaysOverridesIdPair(:_\0:' \
-e 's:TestTarWithOptions(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/archive_test.go" || die
sed -e 's:TestTarUntarWithXattr(:_\0:' \
-e 's:TestTarWithBlockCharFifo(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/archive_unix_test.go" || die
sed -e 's:TestTarUntarWithXattr(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/archive_test.go" || die
sed -e 's:TestApplyLayer(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/changes_test.go" || die
sed -e 's:TestApplyLayerInvalidFilenames(:_\0:' \
-e 's:TestApplyLayerInvalidHardlink(:_\0:' \
-e 's:TestApplyLayerInvalidSymlink(:_\0:' \
-e 's:TestApplyLayerWhiteouts(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/diff_test.go" || die
sed -e 's:TestCopyCaseE(:_\0:' \
-e 's:TestCopyCaseEFSym(:_\0:' \
-e 's:TestCopyCaseG(:_\0:' \
-e 's:TestCopyCaseGFSym(:_\0:' \
-e 's:TestCopyCaseH(:_\0:' \
-e 's:TestCopyCaseHFSym(:_\0:' \
-e 's:TestCopyCaseJ(:_\0:' \
-e 's:TestCopyCaseJFSym(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/copy_unix_test.go" || die
sed -e 's:TestMount(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/mount/mounter_linux_test.go" || die
}
src_compile() {
export -n GOCACHE XDG_CACHE_HOME #678856
mkdir -p "${S}/src/github.com/pquerna" || die
ln -s "${S}/src/${EGO_PN}/vendor/github.com/pquerna/ffjson" "${WORKDIR}/${P}/src/github.com/pquerna/ffjson" || die
mkdir -p "${S}/bin" || die
cd "${S}/bin" || die
GOPATH="${S}" GOBIN="${S}/bin" \
go build -v -work -x ${EGO_BUILD_FLAGS} "${S}/src/github.com/pquerna/ffjson/ffjson.go" || die
GOPATH="${S}" GOBIN="${S}/bin" PATH="${S}/bin:${PATH}" \
emake -C "${S}/src/${EGO_PN}" containers-storage docs
}
src_install() {
dobin "${S}/src/${EGO_PN}/${PN}"
while read -r -d ''; do
mv "${REPLY}" "${REPLY%.1}" || die
done < <(find "${S}/src/${EGO_PN}/docs" -name '*.[[:digit:]].1' -print0)
find "${S}/src/${EGO_PN}/docs" -name '*.[[:digit:]]' -exec doman '{}' + || die
}
src_test() {
GOPATH="${S}" unshare -m emake -C "${S}/src/${EGO_PN}" FLAGS="-v -work -x" local-test-unit || die
}

@ -43,7 +43,7 @@ src_prepare() {
default
[[ -f ${S}/src/${EGO_PN}/hack/btrfs_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho btrfs_noversion" > \
use btrfs || { echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
"${S}/src/${EGO_PN}/hack/btrfs_tag.sh" || die; }
[[ -f ${S}/src/${EGO_PN}/hack/libdm_tag.sh ]] || die

@ -1,110 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EGO_VENDOR=(
"github.com/pquerna/ffjson e517b90714f7c0eabe6d2e570a5886ae077d6db6"
)
inherit golang-vcs-snapshot
KEYWORDS="~amd64"
DESCRIPTION="containers/storage library"
HOMEPAGE="https://github.com/containers/storage"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="btrfs +device-mapper ostree test"
EGO_PN="${HOMEPAGE#*//}"
EGIT_COMMIT="v${PV}"
SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
${EGO_VENDOR_URI}"
RDEPEND="
btrfs? ( sys-fs/btrfs-progs )
device-mapper? ( sys-fs/lvm2:= )
ostree? (
dev-libs/glib:=
dev-util/ostree:=
)"
DEPEND="${RDEPEND}
dev-go/go-md2man
test? (
sys-fs/btrfs-progs
sys-fs/lvm2
sys-apps/util-linux
)"
RESTRICT="test? ( userpriv ) !test? ( test )"
src_unpack() {
golang-vcs-snapshot_src_unpack
}
src_prepare() {
default
[[ -f ${S}/src/${EGO_PN}/hack/btrfs_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_btrfs" > \
"${S}/src/${EGO_PN}/hack/btrfs_tag.sh" || die; }
[[ -f ${S}/src/${EGO_PN}/hack/libdm_tag.sh ]] || die
use device-mapper || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_devicemapper" > \
"${S}/src/${EGO_PN}/hack/libdm_tag.sh" || die; }
[[ -f ${S}/src/${EGO_PN}/hack/ostree_tag.sh ]] || die
use ostree || { echo -e "#!/bin/sh\ntrue" > \
"${S}/src/${EGO_PN}/hack/ostree_tag.sh" || die; }
sed -e 's:TestChrootUntarPath(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/chrootarchive/archive_test.go" || die
sed -e 's:TestTarUntar(:_\0:' \
-e 's:TestTarWithOptionsChownOptsAlwaysOverridesIdPair(:_\0:' \
-e 's:TestTarWithOptions(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/archive_test.go" || die
sed -e 's:TestTarUntarWithXattr(:_\0:' \
-e 's:TestTarWithBlockCharFifo(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/archive_unix_test.go" || die
sed -e 's:TestTarUntarWithXattr(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/archive_test.go" || die
sed -e 's:TestApplyLayer(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/changes_test.go" || die
sed -e 's:TestApplyLayerInvalidFilenames(:_\0:' \
-e 's:TestApplyLayerInvalidHardlink(:_\0:' \
-e 's:TestApplyLayerInvalidSymlink(:_\0:' \
-e 's:TestApplyLayerWhiteouts(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/diff_test.go" || die
sed -e 's:TestCopyCaseE(:_\0:' \
-e 's:TestCopyCaseEFSym(:_\0:' \
-e 's:TestCopyCaseG(:_\0:' \
-e 's:TestCopyCaseGFSym(:_\0:' \
-e 's:TestCopyCaseH(:_\0:' \
-e 's:TestCopyCaseHFSym(:_\0:' \
-e 's:TestCopyCaseJ(:_\0:' \
-e 's:TestCopyCaseJFSym(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/archive/copy_unix_test.go" || die
sed -e 's:TestMount(:_\0:' \
-i "${S}/src/${EGO_PN}/pkg/mount/mounter_linux_test.go" || die
}
src_compile() {
export -n GOCACHE XDG_CACHE_HOME #678856
mkdir -p "${S}/src/github.com/pquerna" || die
ln -s "${S}/src/${EGO_PN}/vendor/github.com/pquerna/ffjson" "${WORKDIR}/${P}/src/github.com/pquerna/ffjson" || die
mkdir -p "${S}/bin" || die
cd "${S}/bin" || die
GOPATH="${S}" GOBIN="${S}/bin" \
go build -v -work -x ${EGO_BUILD_FLAGS} "${S}/src/github.com/pquerna/ffjson/ffjson.go" || die
GOPATH="${S}" GOBIN="${S}/bin" PATH="${S}/bin:${PATH}" \
emake -C "${S}/src/${EGO_PN}" containers-storage docs
}
src_install() {
dobin "${S}/src/${EGO_PN}/${PN}"
while read -r -d ''; do
mv "${REPLY}" "${REPLY%.1}" || die
done < <(find "${S}/src/${EGO_PN}/docs" -name '*.[[:digit:]].1' -print0)
find "${S}/src/${EGO_PN}/docs" -name '*.[[:digit:]]' -exec doman '{}' + || die
}
src_test() {
GOPATH="${S}" unshare -m emake -C "${S}/src/${EGO_PN}" FLAGS="-v -work -x" local-test-unit || die
}

@ -43,7 +43,7 @@ src_prepare() {
default
[[ -f ${S}/src/${EGO_PN}/hack/btrfs_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_btrfs" > \
use btrfs || { echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
"${S}/src/${EGO_PN}/hack/btrfs_tag.sh" || die; }
[[ -f ${S}/src/${EGO_PN}/hack/libdm_tag.sh ]] || die

@ -52,7 +52,7 @@ multilib_src_configure() {
"-DXNASONG=$(usex xnasong ON OFF)"
)
if use ffmpeg; then
mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${PREFIX%/}/usr/$(get_libdir)" )
mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${EPREFIX%/}/usr/$(get_libdir)" )
fi
cmake-utils_src_configure
}
@ -70,8 +70,8 @@ multilib_src_install() {
# FIXME: do we want to install the FAudio tools?
cmake-utils_src_install
sed -e "s/%LIB%/$(get_libdir)/g" "${FILESDIR}/faudio.pc" \
> "${T}/faudio.pc" \
sed -e "s@%LIB%@$(get_libdir)@g" -e "s@%PREFIX%@${EPREFIX}/usr@g" \
"${FILESDIR}/faudio.pc" > "${T}/faudio.pc" \
|| die "sed failed"
insinto "/usr/$(get_libdir)/pkgconfig"
doins "${T}/faudio.pc"

@ -1,4 +1,4 @@
prefix=/usr
prefix=%PREFIX%
exec_prefix=${prefix}
libdir=${prefix}/%LIB%
includedir=${prefix}/include/FAudio

@ -368,7 +368,7 @@ multilib_src_configure() {
--libexecdir="${MY_LIBEXECDIR}"
--localstatedir="${MY_LOCALSTATEDIR}"
--mandir="${MY_MANDIR}"
--sysconfdir=/etc/wine
--sysconfdir="${EPREFIX}/etc/wine"
$(use_with alsa)
$(use_with capi)
$(use_with lcms cms)
@ -481,6 +481,9 @@ multilib_src_install_all() {
use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
# Avoid double prefix from dosym and make_wrapper
MY_PREFIX=${MY_PREFIX#${EPREFIX}}
if use abi_x86_64 && ! use abi_x86_32; then
dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
@ -491,7 +494,7 @@ multilib_src_install_all() {
# Make wrappers for binaries for handling multiple variants
# Note: wrappers instead of symlinks because some are shell which use basename
local b
for b in "${D%/}${MY_PREFIX}"/bin/*; do
for b in "${ED%/}${MY_PREFIX}"/bin/*; do
make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
done
eshopts_pop

@ -368,7 +368,7 @@ multilib_src_configure() {
--libexecdir="${MY_LIBEXECDIR}"
--localstatedir="${MY_LOCALSTATEDIR}"
--mandir="${MY_MANDIR}"
--sysconfdir=/etc/wine
--sysconfdir="${EPREFIX}/etc/wine"
$(use_with alsa)
$(use_with capi)
$(use_with lcms cms)
@ -481,6 +481,9 @@ multilib_src_install_all() {
use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
# Avoid double prefix from dosym and make_wrapper
MY_PREFIX=${MY_PREFIX#${EPREFIX}}
if use abi_x86_64 && ! use abi_x86_32; then
dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
@ -491,7 +494,7 @@ multilib_src_install_all() {
# Make wrappers for binaries for handling multiple variants
# Note: wrappers instead of symlinks because some are shell which use basename
local b
for b in "${D%/}${MY_PREFIX}"/bin/*; do
for b in "${ED%/}${MY_PREFIX}"/bin/*; do
make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
done
eshopts_pop

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@ -11,7 +11,7 @@ SRC_URI="https://github.com/ueno/${PN}/releases/download/${P}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
IUSE="nls"
CDEPEND="app-i18n/ibus

Binary file not shown.

@ -1,3 +1,4 @@
DIST elasticsearch_exporter-1.0.2.tar.gz 207764 BLAKE2B f626c53d04e05912d1db480d6078b44fb6a05e42ec1751bfc2ddd45ff2f0bc0550517e16b10064adcf8c2ab2db175011543a2953fff1624cd575318e6fad943b SHA512 f610660761d761a26b840a969008763ecb19bdc07ab4a076cec7fc40f7d00a68e863fb72b0ea3b56446621a99fa31384ab79789a2e6526fc5b12dcc20df3c684
DIST elasticsearch_exporter-1.0.4_rc1.tar.gz 212553 BLAKE2B 9f6f8f0117af4e59a483eda378df8a2ac5419a5319a02f69210250be952dc6cd401f0c20dbc3d416446d3af183750919f190112795652180d64ea3f6c62f5a56 SHA512 073fcce3417ae2147076b0fbbe3387494f9e2e8613284f03c6761d5e81d50aba648c6b47d423d79209d0b9221963951c21b2fa44aabe29c1eb0c36546dd140eb
DIST elasticsearch_exporter-1.1.0.tar.gz 316279 BLAKE2B 86e994ea0765a231b8ebaeaf495fa160ce53795e191e25cf82994214b53c62f03030b27040e95b770dc526ed2b772961b12ac73700b0da9f8994d532a0958789 SHA512 81cd7a44a2cd07bde7e716eac688c06ca93059de5ba7e1d3e009683b133f8c84c91a09a9e4775a558a3856389e165ce8ec2f04bd856b7b39b8f4a6072623b103
DIST elasticsearch_exporter-1.1.0_rc1.tar.gz 314275 BLAKE2B 1548cbecb6f5a0ae70ffb7a1ccceedbc5e9f980841b9ddb47f56c522a0f0fdc4f9c0613ec95c6a8705f1affd8d713e70d6cfaeacd84cd552a21466a490cac387 SHA512 ba571fec3cdbc32279008ddfc6b72b093fef4ba4ee0eaed98000cecadf81f61adcce24989f36c8dc6abde51129ed638473267e2636ec669ac30440338001930e

@ -0,0 +1,49 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit user golang-build golang-vcs-snapshot
MY_PV=${PV/_/}
EGO_PN="github.com/justwatchcom/elasticsearch_exporter"
EXPORTER_COMMIT="fe20e49"
ARCHIVE_URI="https://${EGO_PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
DESCRIPTION="Elasticsearch stats exporter for Prometheus"
HOMEPAGE="https://github.com/justwatchcom/elasticsearch_exporter"
SRC_URI="${ARCHIVE_URI}"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
DEPEND="dev-util/promu"
pkg_setup() {
enewgroup ${PN}
enewuser ${PN} -1 -1 -1 ${PN}
}
src_prepare() {
default
sed -i -e "/-s$/d" -e "s/{{.Revision}}/${EXPORTER_COMMIT}/" src/${EGO_PN}/.promu.yml || die
}
src_compile() {
pushd src/${EGO_PN} || die
mkdir -p bin || die
GOPATH="${S}" promu build -v --prefix bin || die
popd || die
}
src_install() {
pushd src/${EGO_PN} || die
dobin bin/elasticsearch_exporter
dodoc {README,CHANGELOG}.md
popd || die
keepdir /var/log/elasticsearch_exporter
fowners ${PN}:${PN} /var/log/elasticsearch_exporter
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
}

Binary file not shown.

@ -9,11 +9,13 @@ MY_P="${MY_PN}-${PV}"
inherit toolchain-funcs
DESCRIPTION="A glue between the graphlcd-base library from the GraphLCD project"
HOMEPAGE="https://lucianm.github.io/GLCDprocDriver
https://github.com/lucianm/GLCDprocDriver"
HOMEPAGE="
https://lucianm.github.io/GLCDprocDriver
https://github.com/lucianm/GLCDprocDriver
"
SRC_URI="https://github.com/lucianm/${MY_PN}/archive/0.1.2.tar.gz -> ${MY_P}.tar.gz"
KEYWORDS="amd64 ~ppc x86"
KEYWORDS="amd64 x86"
SLOT="0"
LICENSE="GPL-2"

@ -9,7 +9,7 @@ DESCRIPTION="Contains the lowlevel lcd drivers for GraphLCD"
HOMEPAGE="https://projects.vdr-developer.org/projects/graphlcd-base"
SRC_URI="https://projects.vdr-developer.org/git/${PN}.git/snapshot/${P}.tar.bz2"
KEYWORDS="amd64 ~ppc x86"
KEYWORDS="amd64 x86"
SLOT="0"
LICENSE="GPL-2"
IUSE="fontconfig freetype g15 graphicsmagick imagemagick lcd_devices_ax206dpf lcd_devices_picolcd_256x64 lcd_devices_vnc"
@ -27,6 +27,7 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
DOCS=( "HISTORY" "README" "TODO" "docs/." )

Binary file not shown.

@ -1,3 +1,4 @@
DIST mariadb-connector-c-3.0.6-src.tar.gz 666819 BLAKE2B 7245c0e13e569454d1cc70e3579afcbd53c64a0a7e828012b38d73f7d737a81b4fdf0363bd1b156dae783806a51773dbceb2ea06621bd4a73773edb78a70249a SHA512 6a41efacff1840eb8ddd8b34d8894b51f260444c76a1344f9ac9b675fd8492d44716338e4c11594d80118b12d90f75430304282650bce0d5f64179df6cc14d8e
DIST mariadb-connector-c-3.0.9-src.tar.gz 668142 BLAKE2B f61f855c334268b1cb079abc566a600093d7e0bdd164c22045000e337f43d2b57d14988cba1b3fd2f6316f6e0d949be7e67ac73410ddb1abc66e0faa16422946 SHA512 6f45bcd4bee07f6d72d1c4fee0bdb903ef4fa879eb7508156bc885a5657caf69b145d95647c4bc663eb2a2b03569b41ef9d87ca532b77901c2f67fd608048a1a
DIST mariadb-connector-c-3.1.2-src.tar.gz 735530 BLAKE2B c441cb69b0affaaa5ed87a9e81232ef2dfab305bf5d92ad60ad0198508294c1153ad517347d2af1336722149200a1a62ddd4c289913b09de0195c9da79279305 SHA512 8ad0ec5aea07a04e7ac9da6af3d067755dd8f22deed071de2321c581374b5ed1e4d6bab048b231655d3c2a3722b2b99f276d95046c659f867cbd58d772fb17bb
DIST mariadb-connector-c-3.1.3-src.tar.gz 738250 BLAKE2B a3ea70d2dc226b7c8e907dddaa39e280a76fac7b0a8a74971aa9cc6c1fadf3e5cb96fb3f55e29a639a899d5eeb30dd28d4cfaef0256f030af86909d68e9f85dc SHA512 ca3809a5f1a33317962908ee40d5c339ba6b02c5c8818bf12af9b78eb2289efad711ab74ac7706d711951b22957ba897b5e80b60e8df44924ca70569a4e1c5e7

@ -0,0 +1,21 @@
--- a/mariadb_config/libmariadb.pc.in
+++ b/mariadb_config/libmariadb.pc.in
@@ -7,14 +7,13 @@
#
prefix=@CMAKE_INSTALL_PREFIX@
-includedir=${prefix}/@INSTALL_INCLUDEDIR@/@SUFFIX_INSTALL_DIR@
-libdir=${prefix}/@INSTALL_LIBDIR@/@SUFFIX_INSTALL_DIR@
+includedir=${prefix}/include
+libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
Name: libmariadb
Version: @CPACK_PACKAGE_VERSION@
+URL: https://mariadb.com/kb/en/library/mariadb-connector-c/
Description: MariaDB Connector/C dynamic library
-Cflags: -I${includedir}
+Cflags: -I${includedir}/mariadb
Libs: -L${libdir} -lmariadb
Libs.private: @extra_dynamic_LDFLAGS@
-
-

@ -0,0 +1,86 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
VCS_INHERIT=""
if [[ "${PV}" == 9999 ]] ; then
VCS_INHERIT="git-r3"
EGIT_REPO_URI="https://github.com/MariaDB/mariadb-connector-c.git"
else
MY_PN=${PN#mariadb-}
MY_PV=${PV/_b/-b}
SRC_URI="https://downloads.mariadb.org/f/${MY_PN}-${PV%_beta}/${PN}-${MY_PV}-src.tar.gz?serve -> ${P}-src.tar.gz"
S="${WORKDIR%/}/${PN}-${MY_PV}-src"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
fi
inherit cmake-utils multilib-minimal toolchain-funcs ${VCS_INHERIT}
MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config )
MULTILIB_WRAPPED_HEADERS+=(
/usr/include/mariadb/mariadb_version.h
)
DESCRIPTION="C client library for MariaDB/MySQL"
HOMEPAGE="https://mariadb.org/"
LICENSE="LGPL-2.1"
SLOT="0/3"
IUSE="+curl gnutls kerberos libressl +ssl static-libs test"
DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}]
virtual/libiconv:=[${MULTILIB_USEDEP}]
curl? ( net-misc/curl:0=[${MULTILIB_USEDEP}] )
kerberos? ( || ( app-crypt/mit-krb5[${MULTILIB_USEDEP}]
app-crypt/heimdal[${MULTILIB_USEDEP}] ) )
ssl? (
gnutls? ( >=net-libs/gnutls-3.3.24:0=[${MULTILIB_USEDEP}] )
!gnutls? (
libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
!libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
)
)
"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}"/gentoo-layout-3.0.patch
"${FILESDIR}"/${PN}-3.1.3-fix-pkconfig-file.patch
)
src_configure() {
# bug 508724 mariadb cannot use ld.gold
tc-ld-disable-gold
multilib-minimal_src_configure
}
multilib_src_configure() {
local mycmakeargs=(
-DWITH_EXTERNAL_ZLIB=ON
-DWITH_SSL:STRING=$(usex ssl $(usex gnutls GNUTLS OPENSSL) OFF)
-DWITH_CURL=$(usex curl ON OFF)
-DCLIENT_PLUGIN_AUTH_GSSAPI_CLIENT:STRING=$(usex kerberos DYNAMIC OFF)
-DMARIADB_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock"
-DINSTALL_LIBDIR="$(get_libdir)"
-DINSTALL_PCDIR="$(get_libdir)/pkgconfig"
-DINSTALL_PLUGINDIR="$(get_libdir)/mariadb/plugin"
-DINSTALL_BINDIR=bin
-DWITH_UNIT_TESTS=$(usex test ON OFF)
)
cmake-utils_src_configure
}
multilib_src_compile() {
cmake-utils_src_compile
}
multilib_src_install() {
cmake-utils_src_install
}
multilib_src_install_all() {
if ! use static-libs ; then
find "${D}" -name "*.a" -delete || die
fi
}

@ -0,0 +1,108 @@
From 47f8a18fec604983e47fdf7c822d94b26d85cade Mon Sep 17 00:00:00 2001
From: Thirunarayanan Balathandayuthapani <thiru@mariadb.com>
Date: Wed, 7 Aug 2019 12:35:04 +0530
Subject: [PATCH] MDEV-20247 Replication hangs with "preparing" and never
starts
- The commit ab6dd774082c57f48d998e03655c06b672799b2d wrongly sets the
condition inside innobase_srv_conc_enter_innodb(). Problem is that
InnoDB makes the thread to sleep indefinitely if it is a replication
slave thread.
Thanks to Sujatha Sivakumar for contributing the replication test case.
---
.../r/rpl_sync_with_innodb_thd_conc.result | 13 ++++++
.../rpl/t/rpl_sync_with_innodb_thd_conc.test | 41 +++++++++++++++++++
storage/innobase/handler/ha_innodb.cc | 6 +--
4 files changed, 60 insertions(+), 6 deletions(-)
create mode 100644 mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result
create mode 100644 mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test
diff --git a/mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result b/mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result
new file mode 100644
index 000000000000..0ed894336a1c
--- /dev/null
+++ b/mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result
@@ -0,0 +1,18 @@
+include/master-slave.inc
+[connection master]
+connection slave;
+SET @old_innodb_thread_concurrency := @@innodb_thread_concurrency;
+SET @old_innodb_thread_sleep_delay := @@innodb_thread_sleep_delay;
+SET GLOBAL innodb_thread_concurrency = 100;
+connection master;
+CREATE TABLE t(f INT) ENGINE=INNODB;
+INSERT INTO t VALUES (10);
+connection slave;
+include/diff_tables.inc [master:t, slave:t]
+"===== Clean up======="
+connection master;
+DROP TABLE t;
+connection slave;
+SET GLOBAL innodb_thread_concurrency = @old_innodb_thread_concurrency;
+SET GLOBAL innodb_thread_sleep_delay = @old_innodb_thread_sleep_delay;
+include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test b/mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test
new file mode 100644
index 000000000000..b4c2971d2fbc
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test
@@ -0,0 +1,41 @@
+# ==== Purpose ====
+#
+# Test verifies that replication shouldn't hang when number of active threads
+# on the slave server are less than the allowed innodb_thread_concurrency value.
+#
+# ==== Implementation ====
+#
+# Steps:
+# 0 - Have master slave replication setup with engine being Innodb.
+# 1 - Configure innodb_thread_concurrency = 100.
+# 2 - Do some DML on master and sync the slave with master.
+# 3 - Ensure replication doesn't hang.
+#
+# ==== References ====
+#
+# MDEV-20247: Replication hangs with "preparing" and never starts
+#
+
+--source include/master-slave.inc
+--source include/have_innodb.inc
+
+--connection slave
+SET @old_innodb_thread_concurrency := @@innodb_thread_concurrency;
+SET @old_innodb_thread_sleep_delay := @@innodb_thread_sleep_delay;
+SET GLOBAL innodb_thread_concurrency = 100;
+
+--connection master
+CREATE TABLE t(f INT) ENGINE=INNODB;
+INSERT INTO t VALUES (10);
+--sync_slave_with_master
+
+--let $diff_tables=master:t, slave:t
+--source include/diff_tables.inc
+
+--echo "===== Clean up======="
+--connection master
+DROP TABLE t;
+--sync_slave_with_master
+SET GLOBAL innodb_thread_concurrency = @old_innodb_thread_concurrency;
+SET GLOBAL innodb_thread_sleep_delay = @old_innodb_thread_sleep_delay;
+--source include/rpl_end.inc
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index 081fcbd9c51e..5dfe240631b8 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -1686,9 +1686,9 @@ innobase_srv_conc_enter_innodb(
&& thd_is_replication_slave_thread(trx->mysql_thd)) {
const ulonglong end = my_interval_timer()
+ ulonglong(srv_replication_delay) * 1000000;
- while (srv_conc_get_active_threads()
- >= srv_thread_concurrency
- || my_interval_timer() >= end) {
+ while ((srv_conc_get_active_threads()
+ >= srv_thread_concurrency)
+ && my_interval_timer() < end) {
os_thread_sleep(2000 /* 2 ms */);
}
} else {

@ -0,0 +1,121 @@
From 47f8a18fec604983e47fdf7c822d94b26d85cade Mon Sep 17 00:00:00 2001
From: Thirunarayanan Balathandayuthapani <thiru@mariadb.com>
Date: Wed, 7 Aug 2019 12:35:04 +0530
Subject: [PATCH] MDEV-20247 Replication hangs with "preparing" and never
starts
- The commit ab6dd774082c57f48d998e03655c06b672799b2d wrongly sets the
condition inside innobase_srv_conc_enter_innodb(). Problem is that
InnoDB makes the thread to sleep indefinitely if it is a replication
slave thread.
Thanks to Sujatha Sivakumar for contributing the replication test case.
---
.../r/rpl_sync_with_innodb_thd_conc.result | 13 ++++++
.../rpl/t/rpl_sync_with_innodb_thd_conc.test | 41 +++++++++++++++++++
storage/innobase/handler/ha_innodb.cc | 6 +--
storage/xtradb/handler/ha_innodb.cc | 6 +--
4 files changed, 60 insertions(+), 6 deletions(-)
create mode 100644 mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result
create mode 100644 mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test
diff --git a/mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result b/mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result
new file mode 100644
index 000000000000..0ed894336a1c
--- /dev/null
+++ b/mysql-test/suite/rpl/r/rpl_sync_with_innodb_thd_conc.result
@@ -0,0 +1,13 @@
+include/master-slave.inc
+[connection master]
+SET @old_innodb_thread_concurrency := @@innodb_thread_concurrency;
+SET @old_innodb_thread_sleep_delay := @@innodb_thread_sleep_delay;
+SET GLOBAL innodb_thread_concurrency = 100;
+CREATE TABLE t(f INT) ENGINE=INNODB;
+INSERT INTO t VALUES (10);
+include/diff_tables.inc [master:t, slave:t]
+"===== Clean up======="
+DROP TABLE t;
+SET GLOBAL innodb_thread_concurrency = @old_innodb_thread_concurrency;
+SET GLOBAL innodb_thread_sleep_delay = @old_innodb_thread_sleep_delay;
+include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test b/mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test
new file mode 100644
index 000000000000..b4c2971d2fbc
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_sync_with_innodb_thd_conc.test
@@ -0,0 +1,41 @@
+# ==== Purpose ====
+#
+# Test verifies that replication shouldn't hang when number of active threads
+# on the slave server are less than the allowed innodb_thread_concurrency value.
+#
+# ==== Implementation ====
+#
+# Steps:
+# 0 - Have master slave replication setup with engine being Innodb.
+# 1 - Configure innodb_thread_concurrency = 100.
+# 2 - Do some DML on master and sync the slave with master.
+# 3 - Ensure replication doesn't hang.
+#
+# ==== References ====
+#
+# MDEV-20247: Replication hangs with "preparing" and never starts
+#
+
+--source include/master-slave.inc
+--source include/have_innodb.inc
+
+--connection slave
+SET @old_innodb_thread_concurrency := @@innodb_thread_concurrency;
+SET @old_innodb_thread_sleep_delay := @@innodb_thread_sleep_delay;
+SET GLOBAL innodb_thread_concurrency = 100;
+
+--connection master
+CREATE TABLE t(f INT) ENGINE=INNODB;
+INSERT INTO t VALUES (10);
+--sync_slave_with_master
+
+--let $diff_tables=master:t, slave:t
+--source include/diff_tables.inc
+
+--echo "===== Clean up======="
+--connection master
+DROP TABLE t;
+--sync_slave_with_master
+SET GLOBAL innodb_thread_concurrency = @old_innodb_thread_concurrency;
+SET GLOBAL innodb_thread_sleep_delay = @old_innodb_thread_sleep_delay;
+--source include/rpl_end.inc
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index 081fcbd9c51e..5dfe240631b8 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -1686,9 +1686,9 @@ innobase_srv_conc_enter_innodb(
&& thd_is_replication_slave_thread(trx->mysql_thd)) {
const ulonglong end = my_interval_timer()
+ ulonglong(srv_replication_delay) * 1000000;
- while (srv_conc_get_active_threads()
- >= srv_thread_concurrency
- || my_interval_timer() >= end) {
+ while ((srv_conc_get_active_threads()
+ >= srv_thread_concurrency)
+ && my_interval_timer() < end) {
os_thread_sleep(2000 /* 2 ms */);
}
} else {
diff --git a/storage/xtradb/handler/ha_innodb.cc b/storage/xtradb/handler/ha_innodb.cc
index 5e7482ff6bfa..b5002187e3b2 100644
--- a/storage/xtradb/handler/ha_innodb.cc
+++ b/storage/xtradb/handler/ha_innodb.cc
@@ -1949,9 +1949,9 @@ innobase_srv_conc_enter_innodb(
&& thd_is_replication_slave_thread(trx->mysql_thd)) {
const ulonglong end = my_interval_timer()
+ ulonglong(srv_replication_delay) * 1000000;
- while (srv_conc_get_active_threads()
- >= srv_thread_concurrency
- || my_interval_timer() >= end) {
+ while ((srv_conc_get_active_threads()
+ >= srv_thread_concurrency)
+ && my_interval_timer() < end) {
os_thread_sleep(2000 /* 2 ms */);
}
} else {

@ -64,6 +64,7 @@ PATCHES=(
"${MY_PATCH_DIR}"/20025_all_mariadb-10.1.26-gssapi-detect.patch
"${MY_PATCH_DIR}"/20029_all_mariadb-10.1.37-enable-numa.patch
"${MY_PATCH_DIR}"/20035_all_mariadb-10.1-atomic-detection.patch
"${FILESDIR}/MDEV-20247-replication.patch"
)
# Be warned, *DEPEND are version-dependant

@ -64,6 +64,7 @@ PATCHES=(
"${MY_PATCH_DIR}"/20024_all_mariadb-10.2.6-mysql_st-regression.patch
"${MY_PATCH_DIR}"/20025_all_mariadb-10.2.6-gssapi-detect.patch
"${MY_PATCH_DIR}"/20035_all_mariadb-10.2-atomic-detection.patch
"${FILESDIR}/MDEV-20247-replication-10.2.patch"
)
# Be warned, *DEPEND are version-dependant

@ -64,6 +64,7 @@ PATCHES=(
"${MY_PATCH_DIR}"/20024_all_mariadb-10.2.6-mysql_st-regression.patch
"${MY_PATCH_DIR}"/20025_all_mariadb-10.2.6-gssapi-detect.patch
"${MY_PATCH_DIR}"/20035_all_mariadb-10.3-atomic-detection.patch
"${FILESDIR}/MDEV-20247-replication-10.2.patch"
)
# Be warned, *DEPEND are version-dependant

@ -62,6 +62,7 @@ PATCHES=(
"${MY_PATCH_DIR}"/20024_all_mariadb-10.2.6-mysql_st-regression.patch
"${MY_PATCH_DIR}"/20025_all_mariadb-10.2.6-gssapi-detect.patch
"${MY_PATCH_DIR}"/20035_all_mariadb-10.3-atomic-detection.patch
"${FILESDIR}/MDEV-20247-replication-10.2.patch"
)
# Be warned, *DEPEND are version-dependant

Binary file not shown.

@ -1,33 +0,0 @@
diff --git a/spec/std/socket_spec.cr b/spec/std/socket_spec.cr
index 0caa51a..f21b3b3 100644
--- a/spec/std/socket_spec.cr
+++ b/spec/std/socket_spec.cr
@@ -537,13 +537,15 @@ describe TCPSocket do
end
end
- it "fails when host doesn't exist" do
+ # gentoo's FEATURES=network-sandbox blocks DNS
+ pending "fails when host doesn't exist" do
expect_raises(Socket::Error, /No address/i) do
TCPSocket.new("doesnotexist.example.org.", 12345)
end
end
- it "fails (rather than segfault on darwin) when host doesn't exist and port is 0" do
+ # gentoo's FEATURES=network-sandbox blocks DNS
+ pending "fails (rather than segfault on darwin) when host doesn't exist and port is 0" do
expect_raises(Socket::Error, /No address/i) do
TCPSocket.new("doesnotexist.example.org.", 0)
end
@@ -634,7 +636,9 @@ describe UDPSocket do
client.close
end
- it "broadcasts messages" do
+ # gentoo's FEATURES=network-sandbox blocks external network:
+ # connect: Network is unreachable
+ pending "broadcasts messages" do
port = free_udp_socket_port
client = UDPSocket.new(Socket::Family::INET)

@ -1,9 +0,0 @@
diff --git a/Makefile b/Makefile
index 63a9687..995299f 100644
--- a/Makefile
+++ b/Makefile
@@ -29,3 +29,3 @@ SOURCES := $(shell find src -name '*.cr')
SPEC_SOURCES := $(shell find spec -name '*.cr')
-override FLAGS += $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(static),--static )$(if $(LDFLAGS),--link-flags="$(LDFLAGS)" )
+override FLAGS += $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(static),--static )$(if $(LDFLAGS),--link-flags="$(LDFLAGS)" )$(if $(verbose),--verbose )
SPEC_FLAGS := $(if $(verbose),-v )$(if $(junit_output),--junit_output $(junit_output) )

@ -1,23 +0,0 @@
--- a/spec/std/http/server/server_spec.cr
+++ b/spec/std/http/server/server_spec.cr
@@ -381,7 +381,9 @@ module HTTP
end
describe "#bind_ssl" do
- it "binds SSL server context" do
+ # gentoo's FEATURES=network-sandbox blocks external network:
+ # connect: Connection timed out (Errno)
+ pending "binds SSL server context" do
server = Server.new do |context|
context.response.puts "Test Server (#{context.request.headers["Host"]?})"
context.response.close
--- a/spec/std/http/web_socket_spec.cr
+++ b/spec/std/http/web_socket_spec.cr
@@ -335,4 +335,6 @@ describe HTTP::WebSocket do
end
- it "negotiates over HTTPS correctly" do
+ # gentoo's FEATURES=network-sandbox blocks external network:
+ # connect: Connection timed out (Errno)
+ pending "negotiates over HTTPS correctly" do
address_chan = Channel(Socket::IPAddress).new

@ -38,8 +38,8 @@ RESTRICT=test
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT%/}/usr"
local libdir="${EROOT%/}/usr/$(get_libdir)"
local prefix="${EPREFIX%/}/usr"
local libdir="${EPREFIX%/}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -38,8 +38,8 @@ RESTRICT=test
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT%/}/usr"
local libdir="${EROOT%/}/usr/$(get_libdir)"
local prefix="${EPREFIX%/}/usr"
local libdir="${EPREFIX%/}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -38,8 +38,8 @@ RESTRICT=test
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT%/}/usr"
local libdir="${EROOT%/}/usr/$(get_libdir)"
local prefix="${EPREFIX%/}/usr"
local libdir="${EPREFIX%/}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -38,8 +38,8 @@ RESTRICT=test
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT%/}/usr"
local libdir="${EROOT%/}/usr/$(get_libdir)"
local prefix="${EPREFIX%/}/usr"
local libdir="${EPREFIX%/}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -38,8 +38,8 @@ RESTRICT=test
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT%/}/usr"
local libdir="${EROOT%/}/usr/$(get_libdir)"
local prefix="${EPREFIX%/}/usr"
local libdir="${EPREFIX%/}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -43,8 +43,8 @@ PATCHES="${FILESDIR}/fix-quoting.patch"
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT%/}/usr"
local libdir="${EROOT%/}/usr/$(get_libdir)"
local prefix="${EPREFIX%/}/usr"
local libdir="${EPREFIX%/}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -49,8 +49,8 @@ src_prepare() {
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT}/usr"
local libdir="${EROOT}/usr/$(get_libdir)"
local prefix="${EPREFIX}/usr"
local libdir="${EPREFIX}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -49,8 +49,8 @@ src_prepare() {
src_configure() {
use doc && DOCS+=( docs/* )
local prefix="${EROOT}/usr"
local libdir="${EROOT}/usr/$(get_libdir)"
local prefix="${EPREFIX}/usr"
local libdir="${EPREFIX}/usr/$(get_libdir)"
einfo "--prefix '${prefix}'"
einfo "--libdir '${libdir}'"
local myconfigargs=(

@ -1,5 +1,6 @@
DIST nqp-2018.06.tar.gz 3792244 BLAKE2B 95cfa80c83951e91b71e14162c4c5cd78a8f546ba601002836d2b3fe79325aa26b963d0bb58df70935546f6960f3797a3a7762187defcb6b7c5124a7205bb257 SHA512 312f203c51f3d58bbc474cd7263a118f3438efe230a56a30f38a688b4a57aac88a94a0e6630736066255c122bb001d748a76272f7f634be8ddda91cc3340574b
DIST nqp-2018.08.tar.gz 3769932 BLAKE2B 892eec3dcbfcf57bddbbbb296aea2d126176a5b5db79493beccb7625360c42e26fc9025c8f594430c8cdac346b5af93d7a5167fbbd6e17776070bc3b4b754b63 SHA512 b3f1729060c88407eee07fb32841febb51b68e375ff797aa9ebc6019a4c1229ea7e713262fbe7dfbd9e0317594eb8526179b9d63cf034ac3aca3d82c4ff7d565
DIST nqp-2018.09.tar.gz 3797808 BLAKE2B e5c7c79d7577338e89190ee11673e65093f2e08cd5950727ed8f33a35769db8d6f5e5c7450a93ceb73bf011cdd0a492ce70de6026948a20dd972dcb79a07fb9e SHA512 7412ef9c25f9540ae399c8d83b090eec1c7cea63f0cda970e21e3d760ed915895f8d69c092847feda002702e401e6eee8a6521c41e879c82619340d096948126
DIST nqp-2018.12.tar.gz 3928586 BLAKE2B a11480ae4f09810d349b3adeafb7a6317db41ca28937d99c936f3d8be39be0039fe88db03c9b3b248193a377260a3e21500eb3e11ad282e5ed02635724f05678 SHA512 6c075410490e4c3cab20fffdb986ef179a26c2f11e50e91b50e38e43f8d7909eb8e645ee9280f506da115866f73ef9013cd229e12b100ff43e8610ead69628da
DIST nqp-2019.03.tar.gz 3949224 BLAKE2B 350bccdbcea8ed598292e6f2e312ad276db0ffe15ec8716eb7cafed35df9ab523f9cee3c0385fce41f5f680b4f4c6eb9e470857e2970c0bd4462579c577a122b SHA512 c3bcd02196b5628d7269aed581b54389e362dd7f0f04a1a5068b5d986fa182857b55e2b769fe2eb080ff2fe4e6fdf7d7adc9e184868c047c0c874ee9568b53cd
DIST nqp-2018.06.official.tar.gz 3795050 BLAKE2B 9c5be1a93f5bba632778125fe3c13431606ef01b654775f890aef27c8bfd220930079cb820e933fdae2d151a7c3bacd57bd4f139547cd938e5c1eb0c54b16f19 SHA512 6b4a74098a3d55931a3c8934029f0e97e388b90c1babef023023e1bf3203dbe53b928155d24ecb6a3a54a3228e72a18a2a2747cd8389497569e24e22d489c68c
DIST nqp-2018.08.official.tar.gz 3770932 BLAKE2B 2425c28a8192fe0d992650fe3d9c79e198c69abfece17276d62225cfa2029916af1ec7568f626a1a67eadc886a1544154af3c015370a67eb1e13e5da35e08bd8 SHA512 663b52677c49eb4b6c5f4ed68de821d9adbe4e3fbcabf2174227b1d3dfafffa357f720557b18a5fbd121c46704dda117395c996a78af70eb367f1b23d8b2564f
DIST nqp-2018.09.official.tar.gz 3798897 BLAKE2B d9ac40be8f864a7c9a35cd21dde188396b15465568d7642dbd5dddc3468edc09b6e2f7997fb08a189e160cd5ec004cb4efdcee9262e23b6bb32650eb17d93c14 SHA512 5a673430c2dce5d51f90fd8da18636d1abfd5e841f8530a51020beaffd83635a77090e52968bcbcdee361681a436834490bd2f5c383b21972cf40a9d88b28020
DIST nqp-2018.12.official.tar.gz 3930041 BLAKE2B 35876f63461aadc634e8ad3fd1a46aff4ead788ebf0d741eb1ff6a82e9227fd5edbcd1f733c184083f73073f2ac1a8dab094f2f8fe177183663697dc13da3065 SHA512 56b7821fc0164c8e8fcf58a16aa96c75347aa078cb3bf7f8f6c41df26338e51e2ddb6984049908de83126861c7406c4504e073e7203409c3f37b129661b8c2f8
DIST nqp-2019.03.official.tar.gz 3951058 BLAKE2B 237b8cc0105396fc96349a0dd34502ab45fb7d02089dd2ef5aad2554610b4090adf11679271869e5ae06abfa509210959ae8762fbee30dfe6190d6a74ce32591 SHA512 248768c1b1c0f5e5bd19183404e2a1aa28ab488b05db0b1ed0f0bcceca8b9830885762e763ea38cdd2b54d975d2663e1defe236907096aabc5b668818d293533
DIST nqp-2019.07.1.tar.gz 3937612 BLAKE2B 71f5ddadaa70d7eeadc122ef50f90c13bf7e3a1a4262069ee8564f739e99dfb780359e1155a28f61f90dd1cc419379e366d7274c9567a4319bd841005c3a51a9 SHA512 90c9cfbc3de165ba8c0b4653a849a6faafef9e3862743c3675277c25bc4578522a97a663a4ed7529831fa0b617c7412fcfe67b3e3ff1fc5994f6c42cdf7a4bc5

@ -10,8 +10,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
inherit vcs-snapshot
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz -> ${P}.official.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
@ -30,10 +29,10 @@ CDEPEND="java? (
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.7 )"
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.7 )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
@ -70,7 +69,7 @@ nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=/usr" )
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die

@ -10,8 +10,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
inherit vcs-snapshot
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz -> ${P}.official.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
@ -30,10 +29,10 @@ CDEPEND="java? (
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.7 )"
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.7 )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
@ -70,7 +69,7 @@ nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=/usr" )
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die

@ -1,159 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit java-pkg-opt-2 multibuild
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
inherit vcs-snapshot
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
HOMEPAGE="https://rakudo.org"
LICENSE="Artistic-2"
SLOT="0"
IUSE="doc clang java +moar test"
REQUIRED_USE="|| ( java moar )"
CDEPEND="java? (
dev-java/asm:4
dev-java/jline:0
dev-java/jna:4
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.7 )"
DEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.7 )
dev-lang/perl"
pkg_pretend() {
if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
ewarn "already being installed. So if it fails, try uninstalling both"
ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
ewarn "(see Bug #584394)"
fi
}
java_prepare() {
# Don't clean stage0 jars.
einfo "Cleaning upstream jars"
java-pkg_clean 3rdparty/
# Don't use jars we just deleted.
sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
src/vm/jvm/runners/nqp-j || die
}
src_prepare() {
MULTIBUILD_VARIANTS=()
use moar && MULTIBUILD_VARIANTS+=( moar )
use java && MULTIBUILD_VARIANTS+=( jvm )
multibuild_copy_sources
# This will pull in conditional java_prepare
default
}
nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die
}
nqp_compile() {
if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
emake -j1 \
-C "${BUILD_DIR}" \
THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
emake -j1 \
-C "${BUILD_DIR}"
fi
}
nqp_test() {
emake -j1 \
-C "${BUILD_DIR}" \
test
}
nqp_install() {
# This is the actual reason we need multibuild.eclass.
# We need to distinguish the install procedure for MoarVM and JVM backends.
case "${MULTIBUILD_VARIANT}" in
moar)
emake \
DESTDIR="${ED}" \
-C "${BUILD_DIR}" \
install
;;
jvm)
pushd "${BUILD_DIR}" > /dev/null || die
# Set JAVA_PKG_JARDEST early.
java-pkg_init_paths_
# Upstream sets the classpath to this location. Perhaps it's
# used to locate the additional libraries?
java-pkg_addcp "${JAVA_PKG_JARDEST}"
insinto "${JAVA_PKG_JARDEST}"
local jar
for jar in *.jar; do
if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
# jars for NQP itself.
java-pkg_dojar ${jar}
else
# jars used by NQP.
doins ${jar}
fi
done
# Upstream uses -Xbootclasspath/a, which is faster due to lack
# of verification, but gjl isn't flexible enough yet. :(
java-pkg_dolauncher ${PN}-j --main ${PN}
dosym ${PN}-j /usr/bin/${PN}
dobin tools/jvm/eval-client.pl
popd > /dev/null || die
;;
*)
die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
;;
esac
}
src_configure() {
multibuild_foreach_variant nqp_configure
}
src_compile() {
multibuild_foreach_variant nqp_compile
}
src_test() {
multibuild_foreach_variant nqp_test
}
src_install() {
multibuild_foreach_variant nqp_install
dodoc CREDITS README.pod
use doc && dodoc -r docs/*
}

@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Authors
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -10,8 +10,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
inherit vcs-snapshot
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz -> ${P}.official.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
@ -30,10 +29,10 @@ CDEPEND="java? (
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.7 )"
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.7 )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
@ -70,7 +69,7 @@ nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=/usr" )
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die

@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -10,8 +10,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
inherit vcs-snapshot
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz -> ${P}.official.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
@ -30,10 +29,10 @@ CDEPEND="java? (
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.7 )"
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.7 )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
@ -70,7 +69,7 @@ nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=/usr" )
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die

@ -0,0 +1,158 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit java-pkg-opt-2 multibuild
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz -> ${P}.official.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
HOMEPAGE="https://rakudo.org"
LICENSE="Artistic-2"
SLOT="0"
IUSE="doc clang java +moar test"
REQUIRED_USE="|| ( java moar )"
CDEPEND="java? (
dev-java/asm:4
dev-java/jline:0
dev-java/jna:4
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
ewarn "already being installed. So if it fails, try uninstalling both"
ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
ewarn "(see Bug #584394)"
fi
}
java_prepare() {
# Don't clean stage0 jars.
einfo "Cleaning upstream jars"
java-pkg_clean 3rdparty/
# Don't use jars we just deleted.
sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
src/vm/jvm/runners/nqp-j || die
}
src_prepare() {
MULTIBUILD_VARIANTS=()
use moar && MULTIBUILD_VARIANTS+=( moar )
use java && MULTIBUILD_VARIANTS+=( jvm )
multibuild_copy_sources
# This will pull in conditional java_prepare
default
}
nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die
}
nqp_compile() {
if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
emake -j1 \
-C "${BUILD_DIR}" \
THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
emake -j1 \
-C "${BUILD_DIR}"
fi
}
nqp_test() {
emake -j1 \
-C "${BUILD_DIR}" \
test
}
nqp_install() {
# This is the actual reason we need multibuild.eclass.
# We need to distinguish the install procedure for MoarVM and JVM backends.
case "${MULTIBUILD_VARIANT}" in
moar)
emake \
DESTDIR="${ED}" \
-C "${BUILD_DIR}" \
install
;;
jvm)
pushd "${BUILD_DIR}" > /dev/null || die
# Set JAVA_PKG_JARDEST early.
java-pkg_init_paths_
# Upstream sets the classpath to this location. Perhaps it's
# used to locate the additional libraries?
java-pkg_addcp "${JAVA_PKG_JARDEST}"
insinto "${JAVA_PKG_JARDEST}"
local jar
for jar in *.jar; do
if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
# jars for NQP itself.
java-pkg_dojar ${jar}
else
# jars used by NQP.
doins ${jar}
fi
done
# Upstream uses -Xbootclasspath/a, which is faster due to lack
# of verification, but gjl isn't flexible enough yet. :(
java-pkg_dolauncher ${PN}-j --main ${PN}
dosym ${PN}-j /usr/bin/${PN}
dobin tools/jvm/eval-client.pl
popd > /dev/null || die
;;
*)
die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
;;
esac
}
src_configure() {
multibuild_foreach_variant nqp_configure
}
src_compile() {
multibuild_foreach_variant nqp_compile
}
src_test() {
multibuild_foreach_variant nqp_test
}
src_install() {
multibuild_foreach_variant nqp_install
dodoc CREDITS README.pod
use doc && dodoc -r docs/*
}

@ -0,0 +1,159 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit java-pkg-opt-2 multibuild
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
HOMEPAGE="https://rakudo.org"
LICENSE="Artistic-2"
SLOT="0"
IUSE="doc clang java +moar test"
REQUIRED_USE="|| ( java moar )"
CDEPEND="java? (
dev-java/asm:4
dev-java/jline:0
dev-java/jna:4
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}"
BDEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
ewarn "already being installed. So if it fails, try uninstalling both"
ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
ewarn "(see Bug #584394)"
fi
}
java_prepare() {
# Don't clean stage0 jars.
einfo "Cleaning upstream jars"
java-pkg_clean 3rdparty/
# Don't use jars we just deleted.
sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
src/vm/jvm/runners/nqp-j || die
}
src_prepare() {
MULTIBUILD_VARIANTS=()
use moar && MULTIBUILD_VARIANTS+=( moar )
use java && MULTIBUILD_VARIANTS+=( jvm )
multibuild_copy_sources
# This will pull in conditional java_prepare
default
}
nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die
}
nqp_compile() {
if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
emake -j1 \
-C "${BUILD_DIR}" \
THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
emake -j1 \
-C "${BUILD_DIR}"
fi
}
nqp_test() {
emake -j1 \
-C "${BUILD_DIR}" \
test
}
nqp_install() {
# This is the actual reason we need multibuild.eclass.
# We need to distinguish the install procedure for MoarVM and JVM backends.
case "${MULTIBUILD_VARIANT}" in
moar)
emake \
DESTDIR="${ED}" \
-C "${BUILD_DIR}" \
install
;;
jvm)
pushd "${BUILD_DIR}" > /dev/null || die
# Set JAVA_PKG_JARDEST early.
java-pkg_init_paths_
# Upstream sets the classpath to this location. Perhaps it's
# used to locate the additional libraries?
java-pkg_addcp "${JAVA_PKG_JARDEST}"
insinto "${JAVA_PKG_JARDEST}"
local jar
for jar in *.jar; do
if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
# jars for NQP itself.
java-pkg_dojar ${jar}
else
# jars used by NQP.
doins ${jar}
fi
done
# Upstream uses -Xbootclasspath/a, which is faster due to lack
# of verification, but gjl isn't flexible enough yet. :(
java-pkg_dolauncher ${PN}-j --main ${PN}
dosym ${PN}-j /usr/bin/${PN}
dobin tools/jvm/eval-client.pl
popd > /dev/null || die
;;
*)
die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
;;
esac
}
src_configure() {
multibuild_foreach_variant nqp_configure
}
src_compile() {
multibuild_foreach_variant nqp_compile
}
src_test() {
multibuild_foreach_variant nqp_test
}
src_install() {
multibuild_foreach_variant nqp_install
dodoc CREDITS README.pod
use doc && dodoc -r docs/*
}

@ -1,7 +1,7 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
EAPI=7
inherit java-pkg-opt-2 multibuild
@ -10,8 +10,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
inherit vcs-snapshot
SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
@ -30,10 +29,11 @@ CDEPEND="java? (
)
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
RDEPEND="${CDEPEND}
java? ( >=virtual/jre-1.7 )"
DEPEND="${CDEPEND}
java? ( >=virtual/jre-1.8 )"
DEPEND="${CDEPEND}"
BDEPEND="${CDEPEND}
clang? ( sys-devel/clang )
java? ( >=virtual/jdk-1.7 )
java? ( >=virtual/jdk-1.8 )
dev-lang/perl"
pkg_pretend() {
@ -70,7 +70,7 @@ nqp_configure() {
pushd "${BUILD_DIR}" > /dev/null || die
local myconfargs=(
"--backend=${MULTIBUILD_VARIANT}"
"--prefix=/usr" )
"--prefix=${EPREFIX%/}/usr" )
perl Configure.pl "${myconfargs[@]}" || die
popd || die

@ -17,13 +17,13 @@ SLOT="0/${PV}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="opengl nls doc examples gdbm gmp ssl +unicode pcre"
RDEPEND="sys-libs/readline
RDEPEND="sys-libs/readline:0=
dev-libs/libffi
opengl? ( media-libs/freeglut )
nls? ( sys-devel/gettext )
unicode? ( >=dev-libs/icu-2.6:= )
gdbm? ( >=sys-libs/gdbm-1.8.3-r1 )
gmp? ( >=dev-libs/gmp-4.1.4 )
gmp? ( >=dev-libs/gmp-4.1.4:0= )
ssl? ( dev-libs/openssl:0= )
pcre? ( dev-libs/libpcre )
doc? ( dev-perl/JSON )"
@ -68,7 +68,7 @@ src_test() {
src_install() {
emake -j1 install-dev DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" || die
dodoc CREDITS DONORS.pod PBC_COMPAT PLATFORMS RESPONSIBLE_PARTIES TODO || die
dosym /usr/bin/parrot-ops2c /usr/bin/ops2c || die
dosym parrot-ops2c /usr/bin/ops2c || die
if use examples; then
insinto "/usr/share/doc/${PF}/examples"
doins -r examples/* || die

@ -17,13 +17,13 @@ SLOT="0/${PV}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="opengl nls doc examples gdbm +gmp ssl +unicode pcre"
RDEPEND="sys-libs/readline
RDEPEND="sys-libs/readline:0=
dev-libs/libffi
opengl? ( media-libs/freeglut )
nls? ( sys-devel/gettext )
unicode? ( >=dev-libs/icu-2.6:= )
gdbm? ( >=sys-libs/gdbm-1.8.3-r1 )
gmp? ( >=dev-libs/gmp-4.1.4 )
gmp? ( >=dev-libs/gmp-4.1.4:0= )
ssl? ( dev-libs/openssl:0= )
pcre? ( dev-libs/libpcre )
doc? ( dev-perl/JSON )"
@ -68,7 +68,7 @@ src_test() {
src_install() {
emake -j1 install-dev DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" || die
dodoc CREDITS DONORS.pod PBC_COMPAT PLATFORMS RESPONSIBLE_PARTIES TODO || die
dosym /usr/bin/parrot-ops2c /usr/bin/ops2c || die
dosym parrot-ops2c /usr/bin/ops2c || die
if use examples; then
insinto "/usr/share/doc/${PF}/examples"
doins -r examples/* || die

@ -17,13 +17,13 @@ SLOT="0/${PV}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="opengl nls doc examples gdbm +gmp ssl +unicode pcre"
RDEPEND="sys-libs/readline
RDEPEND="sys-libs/readline:0=
dev-libs/libffi
opengl? ( media-libs/freeglut )
nls? ( sys-devel/gettext )
unicode? ( >=dev-libs/icu-2.6:= )
gdbm? ( >=sys-libs/gdbm-1.8.3-r1 )
gmp? ( >=dev-libs/gmp-4.1.4 )
gmp? ( >=dev-libs/gmp-4.1.4:0= )
ssl? ( dev-libs/openssl:0= )
pcre? ( dev-libs/libpcre )
doc? ( dev-perl/JSON )"
@ -68,7 +68,7 @@ src_test() {
src_install() {
emake -j1 install-dev DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" || die
dodoc CREDITS DONORS.pod PBC_COMPAT PLATFORMS RESPONSIBLE_PARTIES TODO || die
dosym /usr/bin/parrot-ops2c /usr/bin/ops2c || die
dosym parrot-ops2c /usr/bin/ops2c || die
if use examples; then
insinto "/usr/share/doc/${PF}/examples"
doins -r examples/* || die

@ -17,14 +17,14 @@ SLOT="0/${PV}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="opengl nls doc examples gdbm +gmp ssl +unicode pcre"
RDEPEND="sys-libs/readline
RDEPEND="sys-libs/readline:0=
dev-libs/libffi
net-libs/libnsl:0=
opengl? ( media-libs/freeglut )
nls? ( sys-devel/gettext )
unicode? ( >=dev-libs/icu-2.6:= )
gdbm? ( >=sys-libs/gdbm-1.8.3-r1 )
gmp? ( >=dev-libs/gmp-4.1.4 )
gmp? ( >=dev-libs/gmp-4.1.4:0= )
ssl? ( dev-libs/openssl:0= )
pcre? ( dev-libs/libpcre )
doc? ( dev-perl/JSON )"
@ -69,7 +69,7 @@ src_test() {
src_install() {
emake -j1 install-dev DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" || die
dodoc CREDITS DONORS.pod PBC_COMPAT PLATFORMS RESPONSIBLE_PARTIES TODO || die
dosym /usr/bin/parrot-ops2c /usr/bin/ops2c || die
dosym parrot-ops2c /usr/bin/ops2c || die
if use examples; then
insinto "/usr/share/doc/${PF}/examples"
doins -r examples/* || die

@ -0,0 +1,101 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit eutils multilib
# weird failures
RESTRICT="test"
DESCRIPTION="Virtual machine designed to compile and execute bytecode for dynamic languages"
HOMEPAGE="http://www.parrot.org/"
SRC_URI="ftp://ftp.parrot.org/pub/parrot/releases/all/${PV}/${P}.tar.gz"
LICENSE="Artistic-2"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="opengl nls doc examples gdbm +gmp ssl +unicode pcre"
CDEPEND="sys-libs/readline:0=
dev-libs/libffi
net-libs/libnsl:0=
opengl? ( media-libs/freeglut )
nls? ( sys-devel/gettext )
unicode? ( >=dev-libs/icu-2.6:= )
gdbm? ( >=sys-libs/gdbm-1.8.3-r1 )
gmp? ( >=dev-libs/gmp-4.1.4:0= )
ssl? ( dev-libs/openssl:0= )
pcre? ( dev-libs/libpcre )
"
RDEPEND="${CDEPEND}
doc? ( dev-perl/JSON )"
DEPEND="${CDEPEND}"
BDEPEND="dev-lang/perl[doc?]
${RDEPEND}"
src_configure() {
myconf="--disable-rpath"
use unicode || myconf+=" --without-icu"
use ssl || myconf+=" --without-crypto"
use gdbm || myconf+=" --without-gdbm"
use nls || myconf+=" --without-gettext"
use gmp || myconf+=" --without-gmp"
use opengl || myconf+=" --without-opengl"
use pcre || myconf+=" --without-pcre"
perl Configure.pl \
--ccflags="${CFLAGS}" \
--linkflags="${LDFLAGS}" \
--prefix="${EPREFIX}"/usr \
--libdir="${EPREFIX}"/usr/$(get_libdir) \
--mandir="${EPREFIX}"/usr/share/man \
--sysconfdir="${EPREFIX}"/etc \
--sharedstatedir="${EPREFIX}"/var/lib/parrot \
$myconf || die
}
src_compile() {
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"${S}"/blib/lib
# occasionally dies in parallel make
emake -j1
if use doc ; then
emake -j1 html
fi
}
src_test() {
emake -j1 test
}
src_install() {
emake -j1 install-dev DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}"
dosym parrot-ops2c /usr/bin/ops2c
rm -vfr "${ED}/usr/share/doc/${PF}/parrot" || die "Unable to prune excess docs"
DOCS=(
CREDITS
ChangeLog
DONORS.pod
PBC_COMPAT
PLATFORMS
README.pod
RESPONSIBLE_PARTIES
TODO
)
use doc && DOCS+=( editor )
use examples && DOCS+=( examples )
use doc && HTML_DOCS=(
docs/html/developer.html
docs/html/DONORS.pod.html
docs/html/index.html
docs/html/ops.html
docs/html/parrotbug.html
docs/html/pdds.html
docs/html/pmc.html
docs/html/tools.html
docs/html/docs
docs/html/src
docs/html/tools
)
einstalldocs
}

@ -21,7 +21,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
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"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2"

@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
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"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"

@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
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"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"

@ -19,7 +19,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
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"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -0,0 +1,61 @@
From 81767a658d07219a402384f98a7553abcbbd2e70 Mon Sep 17 00:00:00 2001
From: Marc Tiehuis <marctiehuis@gmail.com>
Date: Thu, 18 Apr 2019 18:58:12 +1200
Subject: [PATCH] Don't install stage2 artifacts
Fixes #2220.
---
CMakeLists.txt | 11 ++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1b017a881..047d538e8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -58,6 +58,16 @@ endif()
set(ZIG_CPP_LIB_DIR "${CMAKE_BINARY_DIR}/zig_cpp")
+# Handle multi-config builds and place each into a common lib. The VS generator
+# for example will append a Debug folder by default if not explicitly specified.
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${ZIG_CPP_LIB_DIR})
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${ZIG_CPP_LIB_DIR})
+foreach(CONFIG_TYPE ${CMAKE_CONFIGURATION_TYPES})
+ string(TOUPPER ${CONFIG_TYPE} CONFIG_TYPE)
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CONFIG_TYPE} ${ZIG_CPP_LIB_DIR})
+ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONFIG_TYPE} ${ZIG_CPP_LIB_DIR})
+endforeach(CONFIG_TYPE CMAKE_CONFIGURATION_TYPES)
+
if(ZIG_FORCE_EXTERNAL_LLD)
find_package(lld)
include_directories(${LLVM_INCLUDE_DIRS})
@@ -253,7 +263,6 @@ else()
embedded_lld_wasm
embedded_lld_lib
)
- install(TARGETS embedded_lld_elf embedded_lld_coff embedded_lld_mingw embedded_lld_wasm embedded_lld_lib DESTINATION "${ZIG_CPP_LIB_DIR}")
endif()
# No patches have been applied to SoftFloat-3e
From 40fe6afdad1a8676b5d3a5dd23d6d50d6ea9f059 Mon Sep 17 00:00:00 2001
From: Marc Tiehuis <marctiehuis@gmail.com>
Date: Wed, 1 May 2019 17:39:23 +1200
Subject: [PATCH] Don't install zig_cpp lib for stage2 target
Missed in last commit. See #2220.
---
CMakeLists.txt | 1 -
1 file changed, 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 047d538e8..9881ce1de 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6671,6 +6681,5 @@
endif()
install(TARGETS zig DESTINATION bin)
-install(TARGETS zig_cpp DESTINATION "${ZIG_CPP_LIB_DIR}")
foreach(file ${ZIG_C_HEADER_FILES})
get_filename_component(file_dir "${C_HEADERS_DEST}/${file}" DIRECTORY)

@ -0,0 +1,31 @@
Don't attempt to look for static libraries that we're not going to use.
The warnings are only triggered when building with portage.
--- a/cmake/Findllvm.cmake
+++ b/cmake/Findllvm.cmake
@@ -50,25 +50,6 @@
endif()
endfunction(NEED_TARGET)
-if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug") OR ZIG_STATIC)
- execute_process(
- COMMAND ${LLVM_CONFIG_EXE} --libfiles --link-static
- OUTPUT_VARIABLE LLVM_LIBRARIES_SPACES
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- string(REPLACE " " ";" LLVM_LIBRARIES "${LLVM_LIBRARIES_SPACES}")
-
- execute_process(
- COMMAND ${LLVM_CONFIG_EXE} --system-libs --link-static
- OUTPUT_VARIABLE LLVM_SYSTEM_LIBS_SPACES
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- string(REPLACE " " ";" LLVM_SYSTEM_LIBS "${LLVM_SYSTEM_LIBS_SPACES}")
-
- execute_process(
- COMMAND ${LLVM_CONFIG_EXE} --libdir --link-static
- OUTPUT_VARIABLE LLVM_LIBDIRS_SPACES
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- string(REPLACE " " ";" LLVM_LIBDIRS "${LLVM_LIBDIRS_SPACES}")
-endif()
if(NOT LLVM_LIBRARIES)
execute_process(
COMMAND ${LLVM_CONFIG_EXE} --libs

@ -1,9 +1,9 @@
# Copyright 2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=6
inherit cmake-utils
inherit cmake-utils llvm
DESCRIPTION="A robust, optimal, and maintainable programming language"
HOMEPAGE="https://ziglang.org/"
@ -33,24 +33,17 @@ RDEPEND="
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/zig-0.4.0-r1-build-artifacts.patch"
"${FILESDIR}/zig-0.4.0-r1-suppress-warnings.patch"
)
LLVM_MAX_SLOT=8
src_prepare() {
if use experimental; then
sed -i '/^NEED_TARGET(/d' cmake/Findllvm.cmake || die "unable to modify cmake/Findllvm.cmake"
fi
sed -i '/^install(TARGETS zig_cpp/d' CMakeLists.txt || die "unable to modify CMakeLists.txt"
sed -i '/install(TARGETS embedded/d' CMakeLists.txt || die "unable to modify CMakeLists.txt"
# Suppress error messages
sed -i '/if(NOT(CMAKE_BUILD_TYPE/,/endif()/d' cmake/Findllvm.cmake || die "unable to modify cmake/Findllvm.cmake"
cmake-utils_src_prepare
}
src_configure() {
local mycmakeargs=(
-DBUILD_SHARED_LIBS=OFF
)
cmake-utils_src_configure
}

Binary file not shown.

@ -11,7 +11,7 @@ if [[ ${PV} = *9999* ]]; then
else
MY_PN="AppStream"
SRC_URI="https://www.freedesktop.org/software/appstream/releases/${MY_PN}-${PV}.tar.xz"
KEYWORDS="~amd64 ~arm arm64 ~x86"
KEYWORDS="amd64 ~arm arm64 ~x86"
S="${WORKDIR}/${MY_PN}-${PV}"
fi

@ -1,5 +1,3 @@
DIST ell-0.18.tar.xz 439368 BLAKE2B 9e65ed73119f322fea7177771d21e46ce9ad7d4060e50d8850451939a66bc82dcc1731ddff56458f4cd60c1b6b82b5023bb96adaf3992d3ec982ed845283c8dd SHA512 cc62d01ffaa11a491d1a3ab2898da001f0a418b968350c2bdba2f381df931e53c4281cc4287937264eee72da263844886816af9baea96d7f65309b3e47e42d31
DIST ell-0.19.tar.xz 439472 BLAKE2B 9d29f49ce401c686b2e2262310bb00552d703455dbe9190acbb479e8fa2be7a03e732250ed63c9721f6079a46841a7bbb954fd0943edf520893eccb1a4fb9b6f SHA512 f7a22d0c385d45661b7c630d39f31b67321d20635c938ef5ad3ddce7194501652381a6bfc39a1b9a404a59108977216e24e2c32f6f30fc00972a0ebca909fcab
DIST ell-0.20.tar.xz 443196 BLAKE2B 35daff12e43a27b44b60ff0fd0f10c8d6b8ba122a5825ff705394b2bfb401a90174133f63e6673690461ce2d56595186593fc65783dff2f795b83a461c3aa4b5 SHA512 91200ac000dc44ae593618c21012174af2614be0e7b33bd979aefb248e42d7bb0282f0a7ba256514dfb7657231b5fec29969c874417923f413d34c38500d4d97
DIST ell-0.21.tar.xz 448612 BLAKE2B a20e177bb2ef7620c79cecdb84e47db662d97904189c885c90232a21ca40125bee14218fe2f1f06df74b424ccdc88dcd89da12bc9bf3e86c453b9903ae93013d SHA512 7bb96194e03d0067b22745899eec3f7166dce69aeed2ece1cd362178c1b7f94d464a894417d8329554f5b707133280e6cadfbd4e3ee34a5652f396d719e6fd17
DIST ell-0.9.tar.xz 396968 BLAKE2B 566735cedd3525c4fd3fec9cec0e9b089dd60c6b79416a9c254c771729b6db9137af050f4c7f9c4c6dfa1ce33b8c7d41b877c9e3caa582c6ab9be716bd986a8b SHA512 e1208066012b9ff927baae271f94116376ccd2577d7f6510cc1444eee912988aa1c25e8e8c9195cccfa39ed48fc8c2f07bd7a414719e6ce76ee1e5bd2a64b8c3

@ -1,46 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic multilib-minimal
DESCRIPTION="Embedded Linux Library provides core, low-level functionality for system daemons"
HOMEPAGE="https://01.org/ell"
if [[ "${PV}" == *9999 ]] ; then
inherit autotools git-r3
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/ell/ell.git"
else
SRC_URI="https://mirrors.edge.kernel.org/pub/linux/libs/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
fi
LICENSE="LGPL-2.1"
SLOT="0"
IUSE="glib pie"
RDEPEND="
glib? ( dev-libs/glib:2[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}"
src_prepare() {
default
[[ "${PV}" == *9999 ]] && eautoreconf
}
multilib_src_configure() {
append-cflags "-fsigned-char" #662694
local myeconfargs=(
$(use_enable glib)
$(use_enable pie)
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_install_all() {
local DOCS=( ChangeLog README )
einstalldocs
find "${ED}" -name "*.la" -delete || die
}

@ -1,46 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic multilib-minimal
DESCRIPTION="Embedded Linux Library provides core, low-level functionality for system daemons"
HOMEPAGE="https://01.org/ell"
if [[ "${PV}" == *9999 ]] ; then
inherit autotools git-r3
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/ell/ell.git"
else
SRC_URI="https://mirrors.edge.kernel.org/pub/linux/libs/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
fi
LICENSE="LGPL-2.1"
SLOT="0"
IUSE="glib pie"
RDEPEND="
glib? ( dev-libs/glib:2[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}"
src_prepare() {
default
[[ "${PV}" == *9999 ]] && eautoreconf
}
multilib_src_configure() {
append-cflags "-fsigned-char" #662694
local myeconfargs=(
$(use_enable glib)
$(use_enable pie)
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_install_all() {
local DOCS=( ChangeLog README )
einstalldocs
find "${ED}" -name "*.la" -delete || die
}

@ -12,7 +12,7 @@ if [[ "${PV}" == *9999 ]] ; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/ell/ell.git"
else
SRC_URI="https://mirrors.edge.kernel.org/pub/linux/libs/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
fi
LICENSE="LGPL-2.1"
SLOT="0"

@ -4,3 +4,4 @@ DIST jemalloc-4.5.0.tar.bz2 449992 BLAKE2B 6141c71f7f5f9cee91a59eeed9c69b0a69b3c
DIST jemalloc-5.0.1.tar.bz2 499300 BLAKE2B 551933fcd93315968cbf89bfadc40313717ff216141af8a131f2333d10090438ddf36fbfdc0ee831cbec6f930ae15aa9cfaafae72ed4f38dd97b00712ca918e8 SHA512 8cb5957a5724eb2bbad120cf0028ea8b2b14b4a416c1751b7c967351a7fd51135058ea0d3c4dc1d127c86f3aa7e9fd5ef101857110aabfdb7789427791c432c3
DIST jemalloc-5.1.0.tar.bz2 515622 BLAKE2B 3c8b35d30fca0018e3e32452e6fa41c7ac59f9f2f7d4bc243237fde95025ab5a7562fb86b5afe2ca9b7bb072f7baf6ac7589a4862d9ebaafddae187d93e20da0 SHA512 d9abebe54d303ca931b8c31c1033f23ff5fb060f2377ec8386f4d79c352e65c78ed34f680c352dac14f7d7115d10245782d553d988bc13df2eb34a2f0942ef6f
DIST jemalloc-5.2.0.tar.bz2 543892 BLAKE2B 042dd32452713d0524ae8aedbd3aa96a420037ae3ff0345bbf56a7839ae6ba9e0c700034fab9d5c7b6f4cbb43e2d8199b412901afce16c2785a816d439166e6d SHA512 e3be4d534770126caf10f2684aed9fe4ba1422dd47625fe50343cfb750f26eff869fcc7d1e30a96dd6c73f6614c4bbcd560fd24fc26b55ac731c43e60fd05234
DIST jemalloc-5.2.1.tar.bz2 554279 BLAKE2B 52cb8cd5e5807a750a7e5e9ee005afd61144d821d7f7029a5eca998fd61787a7271338dee3de586ddf93f5fdbddc2c2ca03ba64375a70096f273a6aa173da431 SHA512 0bbb77564d767cef0c6fe1b97b705d368ddb360d55596945aea8c3ba5889fbce10479d85ad492c91d987caacdbbdccc706aa3688e321460069f00c05814fae02

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

Loading…
Cancel
Save