parent
f49b737cbe
commit
2eb3353f98
Binary file not shown.
Binary file not shown.
@ -0,0 +1,47 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit bash-completion-r1 distutils-r1
|
||||
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="https://pypi.org/project/awscli/"
|
||||
#SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
SRC_URI="https://github.com/aws/aws-cli/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/aws-cli-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
|
||||
# botocore is x.(y+1).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.4.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests --install pytest
|
||||
|
||||
python_test() {
|
||||
distutils_install_for_testing
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit}
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
From 440fd1d51c5aa7763d3d810b542a7e373a6738eb Mon Sep 17 00:00:00 2001
|
||||
From: Michael Biebl <biebl@debian.org>
|
||||
Date: Tue, 19 Oct 2021 23:00:50 +0200
|
||||
Subject: [PATCH] testbench: skip omfwd_fast_imuxsock.sh if liblogging-stdlog
|
||||
is not available
|
||||
|
||||
Fixes #4712
|
||||
---
|
||||
tests/omfwd_fast_imuxsock.sh | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/tests/omfwd_fast_imuxsock.sh b/tests/omfwd_fast_imuxsock.sh
|
||||
index bb35b58d18..10f9f19c18 100755
|
||||
--- a/tests/omfwd_fast_imuxsock.sh
|
||||
+++ b/tests/omfwd_fast_imuxsock.sh
|
||||
@@ -4,6 +4,13 @@
|
||||
. ${srcdir:=.}/diag.sh init
|
||||
skip_platform "SunOS" "We have no ATOMIC BUILTINS, so OverallQueueSize counting of imdiag is NOT threadsafe and the counting will fail on SunOS"
|
||||
|
||||
+./syslog_caller -fsyslog_inject-l -m0 > /dev/null 2>&1
|
||||
+no_liblogging_stdlog=$?
|
||||
+if [ $no_liblogging_stdlog -ne 0 ];then
|
||||
+ echo "liblogging-stdlog not available - skipping test"
|
||||
+ exit 77
|
||||
+fi
|
||||
+
|
||||
# export RSYSLOG_DEBUG="debug nologfuncflow noprintmutexaction nostdout"
|
||||
export NUMMESSAGES=100000
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,2 +1,4 @@
|
||||
DIST lxc-4.0.10.tar.gz 1515002 BLAKE2B 2a5b94ad767c8a11a5c34d19f12d812bd284337045ad5021c80a5f69be608085ac465edde8c385cc558e45638c9f061793c0c9db616ccbe0614554b4fbf62005 SHA512 ec3ccf344a91b50b30985562c54ad93d2db2d29c24d31da8e3a69e801c8bd23c1560274c1850c39eb7e984940ba86d3ebae75db136320d6bbc5eb03bda4c5318
|
||||
DIST lxc-4.0.10.tar.gz.asc 833 BLAKE2B 3dd6e8793d1b725ab9eb73d4fa78ce2767bf830fb70d6cc7052e70d2adbc46e4fcf6d986595322b64cb9c71417b801ef6ee3c7612c46dbeb10acba01a5bd69e0 SHA512 dd2d3ac4e066eca4e0358c9a2c371a227d3a0b5cf6e452fe34fa5c8cff46e25fa0555c9f707511a8603348fa969c1e7abf85ad7d27fdcaff613b733066861608
|
||||
DIST lxc-4.0.11.tar.gz 1543031 BLAKE2B 0309bbb96938e60e4cbe145fa0cc3c0a85d9154282a889d74167128b6166a280bb4d53df266990a529a98935ef2c12e8d2214e9a8f6cb293d47aa5808ebad82f SHA512 23287e468da8939334f4261bfcbb52eadcbe5806bd97896db38c84eb42f32143dc17bb8b9bb7f7f88584b72056553c9edc33ddb693a345ecf88f3177573fa9c0
|
||||
DIST lxc-4.0.11.tar.gz.asc 833 BLAKE2B 68804d1d5ad09e388541b3a95a98ca14202c513ea3544a7389a49f4e13ecffc17715bb023675134fd99047c727cffe09cbd0a89883054b82650ebd23366823a7 SHA512 49a54aaf018772db40e1dadc0a10e7d727a2b14b34c0a3c704fd3f7a12e60082abf4628cc0a489ee620ef2210c7542abbdb6d1432e4297ceef52cdd6b158a5f8
|
||||
|
@ -0,0 +1,181 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools bash-completion-r1 linux-info flag-o-matic optfeature pam readme.gentoo-r1 systemd verify-sig
|
||||
|
||||
DESCRIPTION="A userspace interface for the Linux kernel containment features"
|
||||
HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc"
|
||||
SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz
|
||||
verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )"
|
||||
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1 LGPL-3"
|
||||
SLOT="0"
|
||||
IUSE="apparmor +caps doc io-uring man pam seccomp selinux +ssl +tools verify-sig"
|
||||
|
||||
RDEPEND="acct-group/lxc
|
||||
acct-user/lxc
|
||||
app-misc/pax-utils
|
||||
sys-apps/util-linux
|
||||
sys-libs/libcap
|
||||
virtual/awk
|
||||
caps? ( sys-libs/libcap )
|
||||
io-uring? ( sys-libs/liburing:= )
|
||||
pam? ( sys-libs/pam )
|
||||
seccomp? ( sys-libs/libseccomp )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? (
|
||||
dev-libs/openssl:0=
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-kernel/linux-headers-4
|
||||
apparmor? ( sys-apps/apparmor )"
|
||||
BDEPEND="doc? ( app-doc/doxygen[dot] )
|
||||
man? ( app-text/docbook-sgml-utils )
|
||||
verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
|
||||
|
||||
CONFIG_CHECK="~!NETPRIO_CGROUP
|
||||
~CGROUPS
|
||||
~CGROUP_CPUACCT
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_FREEZER
|
||||
|
||||
~CGROUP_SCHED
|
||||
~CPUSETS
|
||||
~IPC_NS
|
||||
~MACVLAN
|
||||
|
||||
~MEMCG
|
||||
~NAMESPACES
|
||||
~NET_NS
|
||||
~PID_NS
|
||||
|
||||
~POSIX_MQUEUE
|
||||
~USER_NS
|
||||
~UTS_NS
|
||||
~VETH"
|
||||
|
||||
ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
|
||||
ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
|
||||
ERROR_MEMCG="CONFIG_MEMCG: needed for memory resource control in containers"
|
||||
ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
|
||||
ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
|
||||
ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
|
||||
ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
|
||||
|
||||
DOCS=( AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt )
|
||||
|
||||
pkg_setup() {
|
||||
linux-info_pkg_setup
|
||||
}
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.0.5-omit-sysconfig.patch # bug 558854
|
||||
)
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
append-flags -fno-strict-aliasing
|
||||
|
||||
local myeconfargs=(
|
||||
--bindir=/usr/bin
|
||||
--localstatedir=/var
|
||||
--sbindir=/usr/bin
|
||||
|
||||
--with-config-path=/var/lib/lxc
|
||||
--with-distro=gentoo
|
||||
--with-init-script=systemd
|
||||
--with-rootfs-path=/var/lib/lxc/rootfs
|
||||
--with-runtime-path=/run
|
||||
--with-systemdsystemunitdir=$(systemd_get_systemunitdir)
|
||||
|
||||
--disable-coverity-build
|
||||
--disable-dlog
|
||||
--disable-fuzzers
|
||||
--disable-mutex-debugging
|
||||
--disable-no-undefined
|
||||
--disable-rpath
|
||||
--disable-sanitizers
|
||||
--disable-tests
|
||||
--disable-werror
|
||||
|
||||
--enable-bash
|
||||
--enable-commands
|
||||
--enable-memfd-rexec
|
||||
--enable-thread-safety
|
||||
|
||||
$(use_enable apparmor)
|
||||
$(use_enable caps capabilities)
|
||||
$(use_enable doc api-docs)
|
||||
$(use_enable doc examples)
|
||||
$(use_enable io-uring liburing)
|
||||
$(use_enable man doc)
|
||||
$(use_enable pam)
|
||||
$(use_enable seccomp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable ssl openssl)
|
||||
$(use_enable tools)
|
||||
|
||||
$(use_with pam pamdir $(getpam_mod_dir))
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
# The main bash-completion file will collide with lxd, need to relocate and update symlinks.
|
||||
mkdir -p "${ED}"/$(get_bashcompdir) || die "Failed to create bashcompdir."
|
||||
mv "${ED}"/etc/bash_completion.d/lxc "${ED}"/$(get_bashcompdir)/lxc-start || die "Failed to relocate lxc bash-completion file."
|
||||
rm -r "${ED}"/etc/bash_completion.d || die "Failed to remove wrong bash_completion.d content."
|
||||
|
||||
if use tools; then
|
||||
bashcomp_alias lxc-start lxc-{attach,cgroup,copy,console,create,destroy,device,execute,freeze,info,monitor,snapshot,stop,unfreeze,wait}
|
||||
else
|
||||
bashcomp_alias lxc-start lxc-usernsexec
|
||||
fi
|
||||
|
||||
keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
|
||||
rmdir "${D}"/var/cache/lxc "${D}"/var/cache || die "rmdir failed"
|
||||
|
||||
find "${D}" -name '*.la' -delete -o -name '*.a' -delete || die
|
||||
|
||||
# Gentoo-specific additions!
|
||||
newinitd "${FILESDIR}/${PN}.initd.8" ${PN}
|
||||
|
||||
# Remember to compare our systemd unit file with the upstream one
|
||||
# config/init/systemd/lxc.service.in
|
||||
systemd_newunit "${FILESDIR}"/${PN}_at.service.4.0.0 "lxc@.service"
|
||||
|
||||
DOC_CONTENTS="
|
||||
For openrc, there is an init script provided with the package.
|
||||
You should only need to symlink /etc/init.d/lxc to
|
||||
/etc/init.d/lxc.configname to start the container defined in
|
||||
/etc/lxc/configname.conf.
|
||||
|
||||
Correspondingly, for systemd a service file lxc@.service is installed.
|
||||
Enable and start lxc@configname in order to start the container defined
|
||||
in /etc/lxc/configname.conf."
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
|
||||
elog "Please run 'lxc-checkconfig' to see optional kernel features."
|
||||
elog
|
||||
optfeature "automatic template scripts" app-emulation/lxc-templates
|
||||
optfeature "Debian-based distribution container image support" dev-util/debootstrap
|
||||
optfeature "snapshot & restore functionality" sys-process/criu
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST snapd-2.52.1.tar.xz 4142764 BLAKE2B aaeebe91ef5d009deae37258cfcdbdcb415d5a2d5f954d01f277d6c4911449c80c49c486f6af71d4a2abc6a1d73f49f54d506dcb178adc33e1d685f1dc3c6b01 SHA512 ae829ff898708843e56688e2c1bd189c765cced11146a504ae8badd1acb1559536e13cec101e57ac4ffed2a3d1fa51323b87785b93290db7a1eec2e1579d1c6c
|
||||
DIST snapd-2.52.tar.xz 4146496 BLAKE2B 49b952503c60b589fe7ddea9ded135139243da34b35b39d9e309df6854109fb3a99f52ca324737fa7f5773221d453f7093047dcdcb1114d0389e20ba24c3d2c3 SHA512 56d3a2c5048d2ffde5b34f63e6a99dc74a7c6e4637f36250f674a68863c4b997cf940689529eca9d3bf58b0148cc18a0b4033d93aa06375a5f12c552d40472da
|
||||
DIST snapd-2.53.1.tar.xz 4713180 BLAKE2B 8c46c7257eeb7794d082833448ea30dbeee5ebec3b36dcec1e3d6c9e8b00121319829ceaf354c055a0edd9032f3d74b66823be0f640860b931c461e607b89485 SHA512 167c84fdf5df151c9d06774677649c365a6fd1fbbc68900c060c775fffaa51bf7bfee5a62900035fae3bd5ad1d637bb381fe15e8277a93acc6409028b36ef780
|
||||
|
@ -0,0 +1,180 @@
|
||||
# Copyright 2020-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
EGO_PN="github.com/snapcore/${PN}"
|
||||
inherit autotools bash-completion-r1 golang-vcs-snapshot linux-info readme.gentoo-r1 systemd xdg-utils
|
||||
|
||||
DESCRIPTION="Service and tools for management of snap packages"
|
||||
HOMEPAGE="http://snapcraft.io/"
|
||||
|
||||
MY_S="${S}/src/github.com/snapcore/${PN}"
|
||||
|
||||
SRC_URI="https://github.com/snapcore/${PN}/releases/download/${PV}/${PN}_${PV}.vendor.tar.xz -> ${P}.tar.xz"
|
||||
MY_PV=${PV}
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
LICENSE="GPL-3 Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT"
|
||||
SLOT="0"
|
||||
IUSE="apparmor +cgroup-hybrid +forced-devmode gtk kde systemd"
|
||||
REQUIRED_USE="!forced-devmode? ( apparmor cgroup-hybrid ) systemd"
|
||||
|
||||
CONFIG_CHECK="~CGROUPS
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_FREEZER
|
||||
~NAMESPACES
|
||||
~SQUASHFS
|
||||
~SQUASHFS_ZLIB
|
||||
~SQUASHFS_LZO
|
||||
~SQUASHFS_XZ
|
||||
~BLK_DEV_LOOP
|
||||
~SECCOMP
|
||||
~SECCOMP_FILTER"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/libseccomp:=
|
||||
apparmor? (
|
||||
sec-policy/apparmor-profiles
|
||||
sys-apps/apparmor:=
|
||||
)
|
||||
dev-libs/glib
|
||||
virtual/libudev
|
||||
systemd? ( sys-apps/systemd[cgroup-hybrid(+)?] )
|
||||
sys-libs/libcap:=
|
||||
sys-fs/squashfs-tools[lzma]"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
>=dev-lang/go-1.9
|
||||
dev-python/docutils
|
||||
sys-devel/gettext
|
||||
sys-fs/xfsprogs"
|
||||
|
||||
PDEPEND="sys-auth/polkit[gtk?,kde?]"
|
||||
|
||||
README_GENTOO_SUFFIX=""
|
||||
|
||||
pkg_setup() {
|
||||
if use apparmor; then
|
||||
CONFIG_CHECK+=" ~SECURITY_APPARMOR"
|
||||
fi
|
||||
linux-info_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Update apparmor profile to allow libtinfow.so*
|
||||
sed -i 's/libtinfo/libtinfo{,w}/' \
|
||||
"${MY_S}/cmd/snap-confine/snap-confine.apparmor.in" || die
|
||||
|
||||
if ! use forced-devmode; then
|
||||
sed -e 's#return \(!apparmorFull || cgroupv2\)#//\1\n\tif !apparmorFull || cgroupv2 {\n\t\tpanic("USE=forced-devmode is disabled")\n\t}\n\treturn false#' \
|
||||
-i "${MY_S}/sandbox/forcedevmode.go" || die
|
||||
grep -q 'panic("USE=forced-devmode is disabled")' "${MY_S}/sandbox/forcedevmode.go" || die "failed to disable forced-devmode"
|
||||
fi
|
||||
|
||||
sed -i 's:command -v git >/dev/null:false:' -i "${MY_S}/mkversion.sh" || die
|
||||
|
||||
pushd "${MY_S}" >/dev/null || die
|
||||
./mkversion.sh "${PV}"
|
||||
popd >/dev/null || die
|
||||
pushd "${MY_S}/cmd" >/dev/null || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
SNAPD_MAKEARGS=(
|
||||
"BINDIR=${EPREFIX}/usr/bin"
|
||||
"DBUSSERVICESDIR=${EPREFIX}/usr/share/dbus-1/services"
|
||||
"LIBEXECDIR=${EPREFIX}/usr/lib"
|
||||
"SNAP_MOUNT_DIR=${EPREFIX}/var/lib/snapd/snap"
|
||||
"SYSTEMDSYSTEMUNITDIR=$(systemd_get_systemunitdir)"
|
||||
)
|
||||
export CGO_ENABLED="1"
|
||||
export CGO_CFLAGS="${CFLAGS}"
|
||||
export CGO_CPPFLAGS="${CPPFLAGS}"
|
||||
export CGO_CXXFLAGS="${CXXFLAGS}"
|
||||
|
||||
pushd "${MY_S}/cmd" >/dev/null || die
|
||||
econf --libdir="${EPREFIX}/usr/lib" \
|
||||
--libexecdir="${EPREFIX}/usr/lib/snapd" \
|
||||
$(use_enable apparmor) \
|
||||
--enable-nvidia-biarch \
|
||||
--with-snap-mount-dir="${EPREFIX}/var/lib/snapd/snap"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export -n GOCACHE XDG_CACHE_HOME
|
||||
export GO111MODULE=off GOBIN="${S}/bin" GOPATH="${S}"
|
||||
|
||||
local file
|
||||
for file in "${MY_S}/po/"*.po; do
|
||||
msgfmt "${file}" -o "${file%.po}.mo" || die
|
||||
done
|
||||
|
||||
emake -C "${MY_S}/data" "${SNAPD_MAKEARGS[@]}"
|
||||
|
||||
local -a flags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS}'" -trimpath)
|
||||
local -a staticflags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS} -static'" -trimpath)
|
||||
|
||||
local cmd
|
||||
for cmd in snap snapd snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do
|
||||
go build -o "${GOBIN}/${cmd}" "${flags[@]}" \
|
||||
-v -x "github.com/snapcore/${PN}/cmd/${cmd}"
|
||||
[[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}"
|
||||
done
|
||||
for cmd in snapctl snap-exec snap-update-ns; do
|
||||
go build -o "${GOBIN}/${cmd}" "${staticflags[@]}" \
|
||||
-v -x "github.com/snapcore/${PN}/cmd/${cmd}"
|
||||
[[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake -C "${MY_S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}"
|
||||
emake -C "${MY_S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}"
|
||||
|
||||
if use apparmor; then
|
||||
mv "${ED}/etc/apparmor.d/usr.lib.snapd.snap-confine"{,.real} || die
|
||||
keepdir /var/lib/snapd/apparmor/profiles
|
||||
fi
|
||||
keepdir /var/lib/snapd/{apparmor/snap-confine,cache,cookie,snap,void}
|
||||
fperms 700 /var/lib/snapd/{cache,cookie}
|
||||
|
||||
dobin "${GOBIN}/"{snap,snapctl}
|
||||
ln "${ED}/usr/bin/snapctl" "${ED}/usr/lib/snapd/snapctl" || die
|
||||
|
||||
exeinto /usr/lib/snapd
|
||||
doexe "${GOBIN}/"{snapd,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \
|
||||
"${MY_S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \
|
||||
"${MY_S}/data/completion/bash/"{complete.sh,etelpmoc.sh,}
|
||||
|
||||
dobashcomp "${MY_S}/data/completion/bash/snap"
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins "${MY_S}/data/completion/zsh/_snap"
|
||||
|
||||
insinto "/usr/share/polkit-1/actions"
|
||||
doins "${MY_S}/data/polkit/io.snapcraft.snapd.policy"
|
||||
|
||||
dodoc "${MY_S}/packaging/ubuntu-16.04/changelog"
|
||||
domo "${MY_S}/po/"*.mo
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
xdg_desktop_database_update
|
||||
|
||||
if use apparmor && [[ -z ${ROOT} && -e /sys/kernel/security/apparmor/profiles &&
|
||||
$(wc -l < /sys/kernel/security/apparmor/profiles) -gt 0 ]]; then
|
||||
apparmor_parser -r "${EPREFIX}/etc/apparmor.d/usr.lib.snapd.snap-confine.real"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
}
|
Binary file not shown.
@ -1,3 +1,2 @@
|
||||
DIST ibus-m17n-1.4.5.tar.gz 493250 BLAKE2B a5fd4de169997dea78acf6273a7e44cefbc9ab4499cbee92c30f394ef7267c15fb1af42d45d227bc160150f35195477f9ec3d2534f9764bab4fa86c0fae046eb SHA512 64bed564d59b0992ebc8a931e0845f687c176e5336d7c7fbc1d575433eb276714615f8fee412a532ec2c8870e46d8d6c41636c984b666c92427dadbdc84838b5
|
||||
DIST ibus-m17n-1.4.6.tar.gz 493592 BLAKE2B 1b9978277a008a4e72ffe03306d409532da7757d53cdb8bae9d6b5776b417e3b731fe432cb5f5c50f7f52d83ed9a2dd572a866111f9186ac42f5ce8afe511ad4 SHA512 d33c89735e5e6c93301a3c3985f46708e41d44b66e580b282e484a7497c0b9d2615c66931cdd7260b4a63d9e9af4d9ebbad5e23d4a3f8a7773dcab61a7600c57
|
||||
DIST ibus-m17n-1.4.7.tar.gz 493889 BLAKE2B 48a9b2ff1590d790d763014c0c9e5c08bf7ba84361a922aa71ab9cdb5b5e4c69fc5608a27c19eadc83578fdaafc3375c5bcedc1d81e2743a994d622042ffd436 SHA512 b011d4ee63a538a51f67012932d872fc2d527c6f3e5dd1642b7e70d3a32164532bc2ab69fb794eb985617b2698074af9079dac7991b5a2a30828595b129cce40
|
||||
DIST ibus-m17n-1.4.8.tar.gz 494516 BLAKE2B ec4cb36d465e25a6e0e334243e7df83444846f9109ef2142daea4949ddaa7cdf5290fc2749a978f7b8fb6d49bb080b2b826726fdc97e26bc722b019c93f13882 SHA512 3e808ffc3b7d03a745be1009a58c8d03ecabe15478f7bf36d70b777d342ad04d0f5574bb78743bcb67ab36674d316aef3cd7070d48ef9e11d07f960d75597aec
|
||||
|
@ -1,45 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit gnome2-utils xdg
|
||||
|
||||
DESCRIPTION="M17N engine for IBus"
|
||||
HOMEPAGE="https://github.com/ibus/ibus/wiki"
|
||||
SRC_URI="https://github.com/ibus/${PN}/releases/download/${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="gtk nls"
|
||||
|
||||
DEPEND="app-i18n/ibus
|
||||
dev-libs/m17n-lib
|
||||
gtk? ( x11-libs/gtk+:3 )
|
||||
nls? ( virtual/libintl )"
|
||||
RDEPEND="${DEPEND}
|
||||
>=dev-db/m17n-db-1.7"
|
||||
BDEPEND="sys-devel/gettext
|
||||
virtual/pkgconfig"
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_enable nls) \
|
||||
$(use_with gtk gtk 3.0)
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
xdg_pkg_preinst
|
||||
gnome2_schemas_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
gnome2_schemas_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
gnome2_schemas_update
|
||||
}
|
Binary file not shown.
@ -1,234 +0,0 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CRATES="
|
||||
adler-1.0.2
|
||||
adler32-1.2.0
|
||||
ahash-0.4.7
|
||||
ahash-0.7.4
|
||||
aho-corasick-0.7.18
|
||||
ansi_colours-1.0.3
|
||||
ansi_term-0.11.0
|
||||
anyhow-1.0.41
|
||||
argh-0.1.4
|
||||
argh_derive-0.1.4
|
||||
argh_shared-0.1.4
|
||||
atty-0.2.14
|
||||
autocfg-1.0.1
|
||||
base64-0.13.0
|
||||
bet-1.0.0
|
||||
bincode-1.3.3
|
||||
bitflags-1.2.1
|
||||
bstr-0.2.16
|
||||
bytemuck-1.7.0
|
||||
byteorder-1.4.3
|
||||
cc-1.0.68
|
||||
cfg-if-1.0.0
|
||||
char_reader-0.1.0
|
||||
chrono-0.4.19
|
||||
clap-2.33.3
|
||||
cli-log-0.1.0
|
||||
cli-log-2.0.0
|
||||
clipboard-win-4.2.1
|
||||
color_quant-1.1.0
|
||||
crc32fast-1.2.1
|
||||
crossbeam-0.8.1
|
||||
crossbeam-channel-0.5.1
|
||||
crossbeam-deque-0.8.0
|
||||
crossbeam-epoch-0.9.5
|
||||
crossbeam-queue-0.3.2
|
||||
crossbeam-utils-0.8.5
|
||||
crossterm-0.19.0
|
||||
crossterm_winapi-0.7.0
|
||||
csv-1.1.6
|
||||
csv-core-0.1.10
|
||||
csv2svg-0.1.5
|
||||
custom_error-1.9.2
|
||||
deflate-0.8.6
|
||||
deser-hjson-1.0.1
|
||||
directories-3.0.2
|
||||
directories-next-2.0.0
|
||||
dirs-sys-0.3.6
|
||||
dirs-sys-next-0.1.2
|
||||
either-1.6.1
|
||||
error-code-2.3.0
|
||||
fallible-iterator-0.2.0
|
||||
fallible-streaming-iterator-0.1.9
|
||||
file-size-1.0.3
|
||||
flate2-1.0.20
|
||||
fnv-1.0.7
|
||||
form_urlencoded-1.0.1
|
||||
getrandom-0.1.16
|
||||
getrandom-0.2.3
|
||||
gif-0.11.2
|
||||
git2-0.13.20
|
||||
glassbench-0.3.0
|
||||
glob-0.3.0
|
||||
hashbrown-0.9.1
|
||||
hashlink-0.6.0
|
||||
heck-0.3.3
|
||||
hermit-abi-0.1.18
|
||||
id-arena-2.2.1
|
||||
idna-0.2.3
|
||||
image-0.23.14
|
||||
indexmap-1.6.2
|
||||
instant-0.1.9
|
||||
is_executable-0.1.2
|
||||
itoa-0.4.7
|
||||
jobserver-0.1.22
|
||||
jpeg-decoder-0.1.22
|
||||
lazy-regex-2.2.1
|
||||
lazy-regex-proc_macros-2.2.1
|
||||
lazy_static-1.4.0
|
||||
lazycell-1.3.0
|
||||
lfs-core-0.3.4
|
||||
libc-0.2.97
|
||||
libgit2-sys-0.12.21+1.1.0
|
||||
libsqlite3-sys-0.20.1
|
||||
libz-sys-1.1.3
|
||||
line-wrap-0.1.1
|
||||
linked-hash-map-0.5.4
|
||||
lock_api-0.4.4
|
||||
log-0.4.14
|
||||
matches-0.1.8
|
||||
memchr-2.4.0
|
||||
memmap-0.7.0
|
||||
memoffset-0.6.4
|
||||
minimad-0.7.1
|
||||
minimad-0.8.0
|
||||
miniz_oxide-0.3.7
|
||||
miniz_oxide-0.4.4
|
||||
mio-0.7.13
|
||||
miow-0.3.7
|
||||
ntapi-0.3.6
|
||||
num-integer-0.1.44
|
||||
num-iter-0.1.42
|
||||
num-rational-0.3.2
|
||||
num-traits-0.2.14
|
||||
num_cpus-1.13.0
|
||||
once_cell-1.8.0
|
||||
onig-6.2.0
|
||||
onig_sys-69.7.0
|
||||
open-1.7.0
|
||||
parking_lot-0.11.1
|
||||
parking_lot_core-0.8.3
|
||||
pathdiff-0.2.0
|
||||
percent-encoding-2.1.0
|
||||
phf-0.8.0
|
||||
phf_generator-0.8.0
|
||||
phf_macros-0.8.0
|
||||
phf_shared-0.8.0
|
||||
pkg-config-0.3.19
|
||||
plist-1.1.0
|
||||
png-0.16.8
|
||||
ppv-lite86-0.2.10
|
||||
proc-macro-hack-0.5.19
|
||||
proc-macro2-1.0.27
|
||||
proc-status-0.1.1
|
||||
quote-1.0.9
|
||||
rand-0.7.3
|
||||
rand-0.8.4
|
||||
rand_chacha-0.2.2
|
||||
rand_chacha-0.3.1
|
||||
rand_core-0.5.1
|
||||
rand_core-0.6.3
|
||||
rand_hc-0.2.0
|
||||
rand_hc-0.3.1
|
||||
rand_pcg-0.2.1
|
||||
rayon-1.5.1
|
||||
rayon-core-1.9.1
|
||||
redox_syscall-0.2.9
|
||||
redox_users-0.4.0
|
||||
regex-1.5.4
|
||||
regex-automata-0.1.10
|
||||
regex-syntax-0.6.25
|
||||
remove_dir_all-0.5.3
|
||||
rusqlite-0.24.2
|
||||
ryu-1.0.5
|
||||
safemem-0.3.3
|
||||
same-file-1.0.6
|
||||
scoped_threadpool-0.1.9
|
||||
scopeguard-1.1.0
|
||||
secular-1.0.0
|
||||
serde-1.0.126
|
||||
serde_derive-1.0.126
|
||||
serde_json-1.0.64
|
||||
signal-hook-0.1.17
|
||||
signal-hook-registry-1.4.0
|
||||
siphasher-0.3.5
|
||||
smallvec-1.6.1
|
||||
splitty-0.1.0
|
||||
str-buf-1.0.5
|
||||
strict-0.1.4
|
||||
strsim-0.8.0
|
||||
svg-0.8.2
|
||||
syn-1.0.73
|
||||
syntect-4.5.0
|
||||
tempfile-3.2.0
|
||||
termimad-0.10.3
|
||||
termimad-0.11.1
|
||||
terminal-clipboard-0.2.1
|
||||
termux-clipboard-0.1.0
|
||||
textwrap-0.11.0
|
||||
thiserror-1.0.25
|
||||
thiserror-impl-1.0.25
|
||||
tiff-0.6.1
|
||||
time-0.1.43
|
||||
tinyvec-1.2.0
|
||||
tinyvec_macros-0.1.0
|
||||
toml-0.5.8
|
||||
umask-1.0.0
|
||||
unicode-bidi-0.3.5
|
||||
unicode-normalization-0.1.19
|
||||
unicode-segmentation-1.7.1
|
||||
unicode-width-0.1.8
|
||||
unicode-xid-0.2.2
|
||||
url-2.2.2
|
||||
users-0.11.0
|
||||
vcpkg-0.2.15
|
||||
vec_map-0.8.2
|
||||
version_check-0.9.3
|
||||
walkdir-2.3.2
|
||||
wasi-0.9.0+wasi-snapshot-preview1
|
||||
wasi-0.10.2+wasi-snapshot-preview1
|
||||
weezl-0.1.5
|
||||
which-4.1.0
|
||||
winapi-0.3.9
|
||||
winapi-i686-pc-windows-gnu-0.4.0
|
||||
winapi-util-0.1.5
|
||||
winapi-x86_64-pc-windows-gnu-0.4.0
|
||||
x11-clipboard-0.5.2
|
||||
xcb-0.9.0
|
||||
xml-rs-0.8.3
|
||||
yaml-rust-0.4.5
|
||||
"
|
||||
|
||||
inherit cargo
|
||||
|
||||
DESCRIPTION="A new way to see and navigate directory trees"
|
||||
HOMEPAGE="https://dystroy.org/broot/ https://github.com/Canop/broot"
|
||||
SRC_URI="https://github.com/Canop/broot/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
$(cargo_crate_uris)"
|
||||
|
||||
LICENSE="Apache-2.0 BSD-2 BSD LGPL-3+ MIT ZLIB"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
QA_FLAGS_IGNORED="usr/bin/broot"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local mandate=$(date -r man/page +'%Y/%m/%d' || die)
|
||||
sed -e "s|#version|${PV}|" \
|
||||
-e "s|#date|${mandate}|" \
|
||||
man/page > "${T}"/${PN}.1 || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cargo_src_install
|
||||
|
||||
doman "${T}"/${PN}.1
|
||||
}
|
@ -1,133 +0,0 @@
|
||||
# Copyright 2019-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Auto-Generated by cargo-ebuild 0.3.1
|
||||
|
||||
EAPI=7
|
||||
|
||||
CRATES="
|
||||
aho-corasick-0.7.18
|
||||
ansi_term-0.11.0
|
||||
approx-0.4.0
|
||||
arrayref-0.3.6
|
||||
arrayvec-0.5.2
|
||||
assert_cmd-1.0.4
|
||||
atty-0.2.14
|
||||
autocfg-1.0.1
|
||||
base64-0.13.0
|
||||
bitflags-1.2.1
|
||||
blake2b_simd-0.5.11
|
||||
bstr-0.2.16
|
||||
byteorder-1.4.3
|
||||
cfg-if-1.0.0
|
||||
clap-2.33.3
|
||||
constant_time_eq-0.1.5
|
||||
crossbeam-utils-0.8.4
|
||||
csv-1.1.6
|
||||
csv-core-0.1.10
|
||||
difference-2.0.0
|
||||
dirs-1.0.5
|
||||
dirs-next-2.0.0
|
||||
dirs-sys-next-0.1.2
|
||||
doc-comment-0.3.3
|
||||
downcast-0.10.0
|
||||
dtoa-0.4.8
|
||||
encode_unicode-0.3.6
|
||||
float-cmp-0.8.0
|
||||
fragile-1.0.0
|
||||
getrandom-0.1.16
|
||||
getrandom-0.2.3
|
||||
heck-0.3.2
|
||||
hermit-abi-0.1.18
|
||||
itoa-0.4.7
|
||||
lazy_static-1.4.0
|
||||
libc-0.2.94
|
||||
libm-0.2.1
|
||||
linked-hash-map-0.5.4
|
||||
matrixmultiply-0.3.1
|
||||
memchr-2.4.0
|
||||
mockall-0.9.1
|
||||
mockall_derive-0.9.1
|
||||
nalgebra-0.26.2
|
||||
normalize-line-endings-0.3.0
|
||||
num-complex-0.3.1
|
||||
num-integer-0.1.44
|
||||
num-rational-0.3.2
|
||||
num-traits-0.2.14
|
||||
paste-1.0.5
|
||||
ppv-lite86-0.2.10
|
||||
predicates-1.0.8
|
||||
predicates-core-1.0.2
|
||||
predicates-tree-1.0.2
|
||||
prettytable-rs-0.8.0
|
||||
proc-macro-error-1.0.4
|
||||
proc-macro-error-attr-1.0.4
|
||||
proc-macro2-1.0.27
|
||||
quote-1.0.9
|
||||
rand-0.8.3
|
||||
rand_chacha-0.3.0
|
||||
rand_core-0.6.2
|
||||
rand_distr-0.4.0
|
||||
rand_hc-0.3.0
|
||||
rawpointer-0.2.1
|
||||
redox_syscall-0.1.57
|
||||
redox_syscall-0.2.8
|
||||
redox_users-0.3.5
|
||||
redox_users-0.4.0
|
||||
regex-1.5.4
|
||||
regex-automata-0.1.9
|
||||
regex-syntax-0.6.25
|
||||
remove_dir_all-0.5.3
|
||||
rpick-0.8.4
|
||||
rust-argon2-0.8.3
|
||||
ryu-1.0.5
|
||||
serde-1.0.126
|
||||
serde_derive-1.0.126
|
||||
serde_yaml-0.8.17
|
||||
simba-0.4.0
|
||||
statrs-0.14.0
|
||||
strsim-0.8.0
|
||||
structopt-0.3.21
|
||||
structopt-derive-0.4.14
|
||||
syn-1.0.72
|
||||
tempfile-3.2.0
|
||||
term-0.5.2
|
||||
textwrap-0.11.0
|
||||
thiserror-1.0.25
|
||||
thiserror-impl-1.0.25
|
||||
treeline-0.1.0
|
||||
typenum-1.13.0
|
||||
unicode-segmentation-1.7.1
|
||||
unicode-width-0.1.8
|
||||
unicode-xid-0.2.2
|
||||
vec_map-0.8.2
|
||||
version_check-0.9.3
|
||||
wait-timeout-0.2.0
|
||||
wasi-0.10.2+wasi-snapshot-preview1
|
||||
wasi-0.9.0+wasi-snapshot-preview1
|
||||
winapi-0.3.9
|
||||
winapi-i686-pc-windows-gnu-0.4.0
|
||||
winapi-x86_64-pc-windows-gnu-0.4.0
|
||||
yaml-rust-0.4.5
|
||||
"
|
||||
|
||||
inherit cargo
|
||||
|
||||
DESCRIPTION="Helps you pick items from a list by various algorithms"
|
||||
HOMEPAGE="https://github.com/bowlofeggs/rpick"
|
||||
SRC_URI="$(cargo_crate_uris ${CRATES})"
|
||||
|
||||
# License set may be more restrictive as OR is not respected
|
||||
# use cargo-license for a more accurate license picture
|
||||
LICENSE="GPL-3 Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 CC0-1.0 MIT Unlicense"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc64 x86"
|
||||
|
||||
# Rust packages ignore CFLAGS and LDFLAGS so let's silence the QA warnings
|
||||
QA_FLAGS_IGNORED="usr/bin/rpick"
|
||||
|
||||
src_install() {
|
||||
cargo_src_install
|
||||
|
||||
einstalldocs
|
||||
}
|
@ -0,0 +1,135 @@
|
||||
# Copyright 2019-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CRATES="
|
||||
aho-corasick-0.7.18
|
||||
ansi_term-0.11.0
|
||||
approx-0.5.0
|
||||
arrayref-0.3.6
|
||||
arrayvec-0.5.2
|
||||
assert_cmd-2.0.1
|
||||
atty-0.2.14
|
||||
autocfg-1.0.1
|
||||
base64-0.13.0
|
||||
bitflags-1.3.2
|
||||
blake2b_simd-0.5.11
|
||||
bstr-0.2.17
|
||||
byteorder-1.4.3
|
||||
cfg-if-1.0.0
|
||||
clap-2.33.3
|
||||
constant_time_eq-0.1.5
|
||||
crossbeam-utils-0.8.5
|
||||
csv-1.1.6
|
||||
csv-core-0.1.10
|
||||
difference-2.0.0
|
||||
difflib-0.4.0
|
||||
dirs-1.0.5
|
||||
dirs-next-2.0.0
|
||||
dirs-sys-next-0.1.2
|
||||
doc-comment-0.3.3
|
||||
downcast-0.10.0
|
||||
dtoa-0.4.8
|
||||
either-1.6.1
|
||||
encode_unicode-0.3.6
|
||||
float-cmp-0.8.0
|
||||
fragile-1.0.0
|
||||
getrandom-0.1.16
|
||||
getrandom-0.2.3
|
||||
hashbrown-0.11.2
|
||||
heck-0.3.3
|
||||
hermit-abi-0.1.19
|
||||
indexmap-1.7.0
|
||||
itertools-0.10.1
|
||||
itoa-0.4.8
|
||||
lazy_static-1.4.0
|
||||
libc-0.2.103
|
||||
libm-0.2.1
|
||||
linked-hash-map-0.5.4
|
||||
matrixmultiply-0.3.1
|
||||
memchr-2.4.1
|
||||
mockall-0.10.2
|
||||
mockall_derive-0.10.2
|
||||
nalgebra-0.27.1
|
||||
nalgebra-macros-0.1.0
|
||||
normalize-line-endings-0.3.0
|
||||
num-complex-0.4.0
|
||||
num-integer-0.1.44
|
||||
num-rational-0.4.0
|
||||
num-traits-0.2.14
|
||||
paste-1.0.5
|
||||
ppv-lite86-0.2.10
|
||||
predicates-1.0.8
|
||||
predicates-2.0.2
|
||||
predicates-core-1.0.2
|
||||
predicates-tree-1.0.3
|
||||
prettytable-rs-0.8.0
|
||||
proc-macro-error-1.0.4
|
||||
proc-macro-error-attr-1.0.4
|
||||
proc-macro2-1.0.29
|
||||
quote-1.0.9
|
||||
rand-0.8.4
|
||||
rand_chacha-0.3.1
|
||||
rand_core-0.6.3
|
||||
rand_distr-0.4.2
|
||||
rand_hc-0.3.1
|
||||
rawpointer-0.2.1
|
||||
redox_syscall-0.1.57
|
||||
redox_syscall-0.2.10
|
||||
redox_users-0.3.5
|
||||
redox_users-0.4.0
|
||||
regex-1.5.4
|
||||
regex-automata-0.1.10
|
||||
regex-syntax-0.6.25
|
||||
remove_dir_all-0.5.3
|
||||
rpick-0.8.6
|
||||
rust-argon2-0.8.3
|
||||
ryu-1.0.5
|
||||
serde-1.0.130
|
||||
serde_derive-1.0.130
|
||||
serde_yaml-0.8.21
|
||||
simba-0.5.1
|
||||
statrs-0.15.0
|
||||
strsim-0.8.0
|
||||
structopt-0.3.23
|
||||
structopt-derive-0.4.16
|
||||
syn-1.0.77
|
||||
tempfile-3.2.0
|
||||
term-0.5.2
|
||||
textwrap-0.11.0
|
||||
thiserror-1.0.29
|
||||
thiserror-impl-1.0.29
|
||||
treeline-0.1.0
|
||||
typenum-1.14.0
|
||||
unicode-segmentation-1.8.0
|
||||
unicode-width-0.1.9
|
||||
unicode-xid-0.2.2
|
||||
vec_map-0.8.2
|
||||
version_check-0.9.3
|
||||
wait-timeout-0.2.0
|
||||
wasi-0.9.0+wasi-snapshot-preview1
|
||||
wasi-0.10.2+wasi-snapshot-preview1
|
||||
winapi-0.3.9
|
||||
winapi-i686-pc-windows-gnu-0.4.0
|
||||
winapi-x86_64-pc-windows-gnu-0.4.0
|
||||
yaml-rust-0.4.5
|
||||
"
|
||||
|
||||
inherit cargo
|
||||
|
||||
DESCRIPTION="Helps you pick items from a list by various algorithms"
|
||||
HOMEPAGE="https://github.com/bowlofeggs/rpick"
|
||||
SRC_URI="$(cargo_crate_uris)"
|
||||
|
||||
LICENSE="GPL-3 Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 CC0-1.0 MIT Unlicense"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc64 ~x86"
|
||||
|
||||
QA_FLAGS_IGNORED="usr/bin/rpick"
|
||||
|
||||
src_install() {
|
||||
cargo_src_install
|
||||
|
||||
dodoc CHANGELOG.md README.md
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,3 +1,4 @@
|
||||
DIST calibre-5.16.0-SIP-v4.patch.xz 6768 BLAKE2B b939233266c7cab0fa71ccdeb748bbcffbf16248081ccf0ab313420fe3898954da71e0796b3d6c44e93c636113221f95fa6affc6be97bf41f4086a909b2849f9 SHA512 eb19e6bb328f60eb4af2c38d54c3d2a09989d41d71d27de10ab5ae443af902c3c12fc70042d4735dd785573cb63bb7d7a10ae5f7ed72afc1e1a9c6aacaf64aec
|
||||
DIST calibre-5.16.1.tar.xz 36757204 BLAKE2B 71114eed723180142f5428a680d8c5ceabcd007acbc6a70a9298e45a9f21fc793f0ef86bf60b36c96bbd15e9e3f8d8638d179872fb6ff1f9b9f5e31a93e65ba1 SHA512 41cf29cc32c7af08215baf80609f8f099d44f2b82d34181451cbf3ed1648e07d64712dba9ff0ddec5bad3d342c7d8bde40bb822f6bd5fb93a4b29d25cf188aae
|
||||
DIST calibre-5.25.0.tar.xz 36849112 BLAKE2B f9cb423317ea1f5b22e7f3540708fd4fa6e7dff2d6d2c667755c74c4f46b72f52aac7672933c51efaf56a5ef57e573c8927649fe30570481c2057e5f757cdfde SHA512 7913fec188d8a8c40cf2768671836f6431d233ac53d1d683222a12f8a753a11cc4023fcfc1dd5ca8b27fd049fb579563b1cdd89624b824ce4eec7b438e25006e
|
||||
DIST calibre-5.30.0.tar.xz 37002224 BLAKE2B dc034c54a6ebee838652fe10b467bf8408f8dabd759108d617e2c9f64109e92afe0f2994c5df480ec4346c596361ccb63d0aaab2796edc4993ae0eef4222ba6d SHA512 c2d435ec9a8cfd5f76439f229cd9a7a7f4e829e44d9f2ff37003faf8a925df40cd77471d72d05a8d145bfc104bf92dbdd67ddacabc84e6e3cad055887530d8bd
|
||||
|
@ -0,0 +1,263 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..9} )
|
||||
PYTHON_REQ_USE="ipv6(+),sqlite,ssl"
|
||||
|
||||
inherit bash-completion-r1 desktop toolchain-funcs python-single-r1 xdg-utils
|
||||
|
||||
DESCRIPTION="Ebook management application"
|
||||
HOMEPAGE="https://calibre-ebook.com/"
|
||||
SRC_URI="https://download.calibre-ebook.com/${PV}/${P}.tar.xz"
|
||||
|
||||
LICENSE="
|
||||
GPL-3+
|
||||
GPL-3
|
||||
GPL-2+
|
||||
GPL-2
|
||||
GPL-1+
|
||||
LGPL-3+
|
||||
LGPL-2.1+
|
||||
LGPL-2.1
|
||||
BSD
|
||||
MIT
|
||||
Old-MIT
|
||||
Apache-2.0
|
||||
public-domain
|
||||
|| ( Artistic GPL-1+ )
|
||||
CC-BY-3.0
|
||||
OFL-1.1
|
||||
PSF-2
|
||||
"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
SLOT="0"
|
||||
IUSE="ios +udisks"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
COMMON_DEPEND="${PYTHON_DEPS}
|
||||
>=app-text/hunspell-1.7:=
|
||||
>=app-text/podofo-0.9.6_pre20171027:=
|
||||
>=app-text/poppler-0.26.5[qt5]
|
||||
dev-libs/glib:2=
|
||||
dev-libs/hyphen:=
|
||||
>=dev-libs/icu-57.1:=
|
||||
dev-libs/libinput:=
|
||||
>=dev-libs/dbus-glib-0.106
|
||||
dev-libs/snowball-stemmer:=
|
||||
>=sys-apps/dbus-1.10.8
|
||||
$(python_gen_cond_dep '
|
||||
>=dev-python/apsw-3.25.2_p1[${PYTHON_USEDEP}]
|
||||
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
|
||||
>=dev-python/chardet-3.0.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/cssselect-0.7.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/css-parser-1.0.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/dbus-python-1.2.4[${PYTHON_USEDEP}]
|
||||
dev-python/dnspython[${PYTHON_USEDEP}]
|
||||
>=dev-python/feedparser-5.2.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/html2text-2019.8.11[${PYTHON_USEDEP}]
|
||||
>=dev-python/html5-parser-0.4.9[${PYTHON_USEDEP}]
|
||||
dev-python/jeepney[${PYTHON_USEDEP}]
|
||||
>=dev-python/lxml-3.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/mechanize-0.3.5[${PYTHON_USEDEP}]
|
||||
>=dev-python/msgpack-0.6.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/netifaces-0.10.5[${PYTHON_USEDEP}]
|
||||
>=dev-python/pillow-3.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/psutil-4.3.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pychm-0.8.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/pygments-2.3.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/python-dateutil-2.5.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/PyQt5-5.15.5_pre2107091435[gui,svg,widgets,network,printsupport,${PYTHON_USEDEP}]
|
||||
>=dev-python/PyQt-builder-1.10.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/PyQtWebEngine-5.15.5_pre2108100905[${PYTHON_USEDEP}]
|
||||
dev-python/regex[${PYTHON_USEDEP}]
|
||||
dev-python/zeroconf[${PYTHON_USEDEP}]
|
||||
')
|
||||
dev-qt/qtcore:5=
|
||||
dev-qt/qtdbus:5=
|
||||
dev-qt/qtgui:5=[jpeg]
|
||||
>=dev-qt/qtwebengine-5.12
|
||||
dev-qt/qtwidgets:5=
|
||||
dev-util/desktop-file-utils
|
||||
dev-util/gtk-update-icon-cache
|
||||
media-fonts/liberation-fonts
|
||||
media-libs/fontconfig:=
|
||||
>=media-libs/freetype-2:=
|
||||
>=media-libs/libmtp-1.1.11:=
|
||||
>=media-libs/libwmf-0.2.8
|
||||
>=media-gfx/optipng-0.7.6
|
||||
>=sys-libs/zlib-1.2.11:=
|
||||
virtual/libusb:1=
|
||||
x11-libs/libxkbcommon:=
|
||||
x11-libs/libX11:=
|
||||
x11-libs/libXext:=
|
||||
x11-libs/libXrender:=
|
||||
x11-misc/shared-mime-info
|
||||
>=x11-misc/xdg-utils-1.0.2-r2
|
||||
ios? (
|
||||
>=app-pda/usbmuxd-1.0.8
|
||||
>=app-pda/libimobiledevice-1.2.0
|
||||
)
|
||||
udisks? ( virtual/libudev )"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
udisks? ( sys-fs/udisks:2 )"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
$(python_gen_cond_dep '
|
||||
>=dev-python/setuptools-23.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/sip-5[${PYTHON_USEDEP}]
|
||||
')
|
||||
>=virtual/podofo-build-0.9.6_pre20171027
|
||||
virtual/pkgconfig"
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ ${MERGE_TYPE} != binary ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 6 ]]; then
|
||||
eerror "Calibre cannot be built with this version of gcc."
|
||||
eerror "You need at least gcc-6.0"
|
||||
die "Your C compiler is too old for this package."
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# no_updates: do not annoy user with "new version is availible all the time
|
||||
# disable_plugins: walking sec-hole, wait for upstream to use GHNS interface
|
||||
eapply \
|
||||
"${FILESDIR}/${PN}-2.9.0-no_updates_dialog.patch" \
|
||||
"${FILESDIR}/${PN}-disable_plugins.patch"
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix outdated version constant.
|
||||
#sed -e "s#\\(^numeric_version =\\).*#\\1 (${PV//./, })#" \
|
||||
# -i src/calibre/constants.py || \
|
||||
# die "sed failed to patch constants.py"
|
||||
|
||||
# Avoid sandbox violation in /usr/share/gnome/apps when linux.py
|
||||
# calls xdg-* (bug #258938).
|
||||
sed -e "s|'xdg-desktop-menu', 'install'|\\0, '--mode', 'user'|" \
|
||||
-e "s|check_call(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
|
||||
-e "s|\\(CurrentDir(tdir)\\), \\\\\$|\\1:|" \
|
||||
-e "s|, PreserveMIMEDefaults():|:|" \
|
||||
-e "s|'xdg-icon-resource', 'install'|\\0, '--mode', 'user'|" \
|
||||
-e "s|cmd\[2\]|cmd[4]|" \
|
||||
-e "s|cc(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
|
||||
-e "s|'xdg-mime', 'install'|\\0, '--mode', 'user'|" \
|
||||
-i src/calibre/linux.py || die "sed failed to patch linux.py"
|
||||
|
||||
# Disable unnecessary privilege dropping for bug #287067.
|
||||
sed -e "s:if os.geteuid() == 0:if False and os.geteuid() == 0:" \
|
||||
-i setup/install.py || die "sed failed to patch install.py"
|
||||
|
||||
sed -e "/^ self.check_call(\\[QMAKE\\] + qmc + \\[proname\\])$/a\
|
||||
\\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ self.check_call(['sed', \
|
||||
'-e', 's|^CFLAGS .*|\\\\\\\\0 ${CFLAGS}|', \
|
||||
'-e', 's|^CXXFLAGS .*|\\\\\\\\0 ${CXXFLAGS}|', \
|
||||
'-e', 's|^LFLAGS .*|\\\\\\\\0 ${LDFLAGS}|', \
|
||||
'-i', 'Makefile'])" \
|
||||
-e "s|open(self.j(bdir, '.qmake.conf'), 'wb').close()|open(self.j(bdir, '.qmake.conf'), 'wb').write(b'QMAKE_LFLAGS += ${LDFLAGS}')|" \
|
||||
-i setup/build.py || die "sed failed to patch build.py"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# calibre works with python 3, so remove the python 2 constraint
|
||||
export CALIBRE_PY3_PORT=1
|
||||
|
||||
# Bypass kbuildsycoca and update-mime-database in order to
|
||||
# avoid sandbox violations if xdg-mime tries to call them.
|
||||
mkdir "${T}/bin" || die
|
||||
cat - > "${T}/bin/kbuildsycoca" <<-EOF
|
||||
#!${BASH}
|
||||
echo $0 : $@
|
||||
exit 0
|
||||
EOF
|
||||
|
||||
cp "${T}"/bin/{kbuildsycoca,update-mime-database} || die
|
||||
chmod +x "${T}"/bin/{kbuildsycoca,update-mime-database} || die
|
||||
|
||||
export QMAKE="${EPREFIX}/usr/$(get_libdir)/qt5/bin/qmake"
|
||||
|
||||
# Unset DISPLAY in order to prevent xdg-mime from triggering a sandbox
|
||||
# violation with kbuildsycoca as in bug #287067, comment #13.
|
||||
export -n DISPLAY
|
||||
|
||||
# Bug #352625 - Some LANGUAGE values can trigger the following ValueError:
|
||||
# File "/usr/lib/python2.6/locale.py", line 486, in getdefaultlocale
|
||||
# return _parse_localename(localename)
|
||||
# File "/usr/lib/python2.6/locale.py", line 418, in _parse_localename
|
||||
# raise ValueError, 'unknown locale: %s' % localename
|
||||
#ValueError: unknown locale: 46
|
||||
export -n LANG LANGUAGE ${!LC_*}
|
||||
export LC_ALL=C.utf8 #709682
|
||||
|
||||
# Bug #295672 - Avoid sandbox violation in ~/.config by forcing
|
||||
# variables to point to our fake temporary $HOME.
|
||||
export HOME="${T}/fake_homedir"
|
||||
export XDG_CONFIG_HOME="${HOME}/.config"
|
||||
export XDG_DATA_HOME="${HOME}/.local/share"
|
||||
export CALIBRE_CONFIG_DIRECTORY="${XDG_CONFIG_HOME}/calibre"
|
||||
mkdir -p "${XDG_DATA_HOME}" "${CALIBRE_CONFIG_DIRECTORY}" || die
|
||||
|
||||
tc-export CC CXX
|
||||
# Bug #334243 - respect LDFLAGS when building extensions
|
||||
export OVERRIDE_CFLAGS="$CFLAGS" OVERRIDE_LDFLAGS="$LDFLAGS"
|
||||
local libdir=$(get_libdir)
|
||||
[[ -n $libdir ]] || die "get_libdir returned an empty string"
|
||||
|
||||
addpredict /dev/dri #665310
|
||||
|
||||
PATH=${T}/bin:${PATH} PYTHONPATH=${S}/src${PYTHONPATH:+:}${PYTHONPATH} \
|
||||
"${PYTHON}" setup.py install \
|
||||
--root="${D}" \
|
||||
--prefix="${EPREFIX}/usr" \
|
||||
--libdir="${EPREFIX}/usr/${libdir}" \
|
||||
--staging-root="${ED}/usr" \
|
||||
--staging-libdir="${ED}/usr/${libdir}" || die
|
||||
|
||||
find "${ED}"/usr/share -type d -empty -delete
|
||||
|
||||
cd "${ED}"/usr/share/calibre/fonts/liberation || die
|
||||
local x
|
||||
for x in * ; do
|
||||
[[ -f ${EPREFIX}/usr/share/fonts/liberation-fonts/${x} ]] || continue
|
||||
ln -sf "../../../fonts/liberation-fonts/${x}" "${x}" || die
|
||||
done
|
||||
|
||||
einfo "Converting python shebangs"
|
||||
python_fix_shebang --force "${ED}"
|
||||
|
||||
einfo "Compiling python modules"
|
||||
python_optimize "${ED}"/usr/$(get_libdir)/calibre "${D}/$(python_get_sitedir)"
|
||||
|
||||
newinitd "${FILESDIR}"/calibre-server-3.init calibre-server
|
||||
newconfd "${FILESDIR}"/calibre-server-3.conf calibre-server
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Indentify stray directories from upstream's "Binary install"
|
||||
# method (see bug 622728).
|
||||
CALIBRE_LIB_DIR=/usr/$(get_libdir)/calibre
|
||||
CALIBRE_LIB_CONTENT=$(for x in "${ED}${CALIBRE_LIB_DIR}"/*; do
|
||||
printf -- "${x##*/} "; done) || die "Failed to list ${ED}${CALIBRE_LIB_DIR}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
[[ -n ${CALIBRE_LIB_DIR} ]] || die "CALIBRE_LIB_DIR is unset"
|
||||
local x
|
||||
for x in "${EROOT}${CALIBRE_LIB_DIR}"/*; do
|
||||
if [[ " ${CALIBRE_LIB_CONTENT} " != *" ${x##*/} "* ]]; then
|
||||
elog "Purging '${x}'"
|
||||
rm -rf "${x}"
|
||||
fi
|
||||
done
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
xdg_icon_cache_update
|
||||
}
|
@ -1,200 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
USE_RUBY="ruby25 ruby26 ruby27 ruby30"
|
||||
RUBY_OPTIONAL="yes"
|
||||
|
||||
inherit autotools java-pkg-opt-2 perl-functions ruby-ng
|
||||
|
||||
DESCRIPTION="a full-text search system for communities"
|
||||
HOMEPAGE="https://fallabs.com/hyperestraier/"
|
||||
SRC_URI="https://fallabs.com/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ppc ppc64 sparc x86"
|
||||
SLOT="0"
|
||||
IUSE="bzip2 debug java lzo mecab perl ruby static-libs +zlib"
|
||||
|
||||
RDEPEND="dev-db/qdbm
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
java? ( >=virtual/jre-1.4:* )
|
||||
lzo? ( dev-libs/lzo )
|
||||
mecab? ( app-text/mecab )
|
||||
perl? ( dev-lang/perl )
|
||||
ruby? ( $(ruby_implementations_depend) )
|
||||
zlib? ( sys-libs/zlib )"
|
||||
DEPEND="${RDEPEND}
|
||||
java? ( >=virtual/jdk-1.4:* )"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
S="${WORKDIR}/all/${P}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-configure.patch
|
||||
"${FILESDIR}"/${PN}-perl.patch
|
||||
"${FILESDIR}"/${PN}-ruby19.patch
|
||||
)
|
||||
HTML_DOCS=( doc/. )
|
||||
|
||||
AT_NOELIBTOOLIZE="yes"
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
use ruby && ruby-ng_pkg_setup
|
||||
}
|
||||
|
||||
he_foreach_api() {
|
||||
local u d
|
||||
for u in java perl ruby; do
|
||||
if ! use "${u}"; then
|
||||
continue
|
||||
fi
|
||||
if [[ "${u}" != "ruby" ]]; then
|
||||
for d in ${u}native ${u}pure; do
|
||||
if [[ ! -d "${d}" ]]; then
|
||||
continue
|
||||
fi
|
||||
einfo "${EBUILD_PHASE} ${d}"
|
||||
cd "${d}"
|
||||
case "${EBUILD_PHASE}" in
|
||||
prepare)
|
||||
mv configure.{in,ac}
|
||||
eautoreconf
|
||||
;;
|
||||
configure)
|
||||
econf
|
||||
;;
|
||||
compile)
|
||||
emake
|
||||
;;
|
||||
test)
|
||||
if [[ "${d}" == "${u}native" ]]; then
|
||||
emake check
|
||||
fi
|
||||
;;
|
||||
install)
|
||||
if [[ "${u}" != "java" ]]; then
|
||||
emake DESTDIR="${D}" install
|
||||
else
|
||||
java-pkg_dojar *.jar
|
||||
if [[ "${d}" == "${u}native" ]]; then
|
||||
dolib.so lib*.so*
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
cd - >/dev/null
|
||||
done
|
||||
else
|
||||
PATCHES= ruby-ng_src_${EBUILD_PHASE}
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
he_foreach_ruby_api() {
|
||||
local d
|
||||
for d in rubynative rubypure; do
|
||||
cd "${d}"
|
||||
case "${EBUILD_PHASE}" in
|
||||
prepare)
|
||||
sed -i \
|
||||
-e "/RUBY=/cRUBY=\"${RUBY}\"" \
|
||||
-e "/=\`.*ruby/s|ruby|${RUBY}|" \
|
||||
configure.in
|
||||
|
||||
mv configure.{in,ac}
|
||||
eautoreconf
|
||||
;;
|
||||
configure)
|
||||
econf
|
||||
;;
|
||||
compile)
|
||||
emake
|
||||
;;
|
||||
test)
|
||||
if [[ "${d}" == "${u}native" ]]; then
|
||||
emake check
|
||||
fi
|
||||
;;
|
||||
install)
|
||||
emake DESTDIR="${D}" install
|
||||
;;
|
||||
esac
|
||||
cd - >/dev/null
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg-opt-2_src_prepare
|
||||
|
||||
sed -i \
|
||||
-e "/^CFLAGS/s|$| ${CFLAGS}|" \
|
||||
-e "/^JAVACFLAGS/s|$| ${JAVACFLAGS}|" \
|
||||
-e '/^LDENV/d' \
|
||||
-e 's/make\( \|$\)/$(MAKE)\1/g' \
|
||||
Makefile.in {java,perl,ruby}*/Makefile.in
|
||||
|
||||
mv configure.{in,ac}
|
||||
eautoreconf
|
||||
he_foreach_api # prepare
|
||||
}
|
||||
|
||||
all_ruby_prepare() {
|
||||
sed -i "/^RUNENV /s|\.\.|${WORKDIR}/all/${P}|" ruby*/Makefile.in
|
||||
sed -i "s|\.\./\.\.|${WORKDIR}/all/${P}|" rubynative/src/extconf.rb
|
||||
}
|
||||
|
||||
each_ruby_prepare() {
|
||||
he_foreach_ruby_api
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_enable bzip2 bzip) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable lzo) \
|
||||
$(use_enable mecab) \
|
||||
$(use_enable zlib)
|
||||
he_foreach_api
|
||||
}
|
||||
|
||||
each_ruby_configure() {
|
||||
he_foreach_ruby_api
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
default
|
||||
he_foreach_api
|
||||
}
|
||||
|
||||
each_ruby_compile() {
|
||||
he_foreach_ruby_api
|
||||
}
|
||||
|
||||
src_test() {
|
||||
default
|
||||
he_foreach_api
|
||||
}
|
||||
|
||||
each_ruby_test() {
|
||||
he_foreach_ruby_api
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" MYDOCS= install
|
||||
einstalldocs
|
||||
he_foreach_api
|
||||
use static-libs || find "${ED}" -name '*.a' -delete || die
|
||||
|
||||
if use perl; then
|
||||
perl_delete_module_manpages
|
||||
perl_fix_packlist
|
||||
fi
|
||||
|
||||
rm -f "${D}"/usr/bin/*test
|
||||
}
|
||||
|
||||
each_ruby_install() {
|
||||
he_foreach_ruby_api
|
||||
}
|
Binary file not shown.
@ -1,5 +1,3 @@
|
||||
DIST mongodb-src-r4.2.15.tar.gz 62187847 BLAKE2B eb9cbf52b5aeb95d3c6c6bd14da9731a85a24e2c3560163be999bddff1cd1ac90f9cf07b4c3fe22e35ffcdd174a6b2720a801fa179f574ff33150d1a4660ef9e SHA512 ee46a2dfb7ae23ad38da49bf126a2bc7932bded8f01d34516ad575d2aed5d6233c5ad620b2a4424a98afb9e80e26acf40c66982cdd0637c13f0f7aaae8b746a0
|
||||
DIST mongodb-src-r4.4.1.tar.gz 49644743 BLAKE2B 7d84998c69b9b55164ebab04b49c38a4113a0f58d431612389ec37eb044fba1adf9284e9d4454bd40bb7a071fd042308a5cd350129d6d52480412cf6b868ec2b SHA512 16aa66995ea8cfe0cc47b96c1c5643a28ab47fc9f27bd93404cf572944ab30492df7c9255553f918b353cd7157a6ccde9ac6f58bfba322fb52c2d7409c6fb9b0
|
||||
DIST mongodb-src-r4.4.4.tar.gz 49942905 BLAKE2B 8aa9813e87e216899b3c609b413ce6915d6ddf30faea3c0ecda2a14476fc6b08024614fa7b20e1703b5908759459e88e5e302539c27525c2359233743aa7dcda SHA512 a999528a8a6bf4bf0b8ff8f5169b1aadb3c4dab9c7d936c59d66f238b864fad6e8fb6a1b9ec27f395fca95152ee020f96a8c1cf8960a48de3ce5141f8dda7d88
|
||||
DIST mongodb-src-r4.4.8.tar.gz 50492854 BLAKE2B 4776b17e88104879ea69468ff277b07dc317d936654bb26c69750e0aaf8f51bea73994e7fc4841228d8506db392e0454b5fd16257071b86a2e4ad34e90f33632 SHA512 9b0cd81c9c731255a6c079c040ed342a51a72e3ea72047d3ae959c0afde50b0cdb1fcfe7fcbea30c449a3618a09d213752277cee6eb9bc0a55915b9229543606
|
||||
DIST mongodb-src-r5.0.2.tar.gz 54527477 BLAKE2B f71102f4c2711074498c288817ee06156cb030ee647541f6604582b918fb75239cc5a551c08b745b6296a2693d2a1ac28d94c1365b86bc508257b9d42142612a SHA512 179d57a0a12c5c23e54208c262edff6976f509324be8ad68d6761997dc702534f618dea1a24568fdb2d716359762e64da54e2d152a685447b4e0450996bf2154
|
||||
|
@ -1,177 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
SCONS_MIN_VERSION="3.3.1"
|
||||
CHECKREQS_DISK_BUILD="2400M"
|
||||
CHECKREQS_DISK_USR="512M"
|
||||
CHECKREQS_MEMORY="1024M"
|
||||
|
||||
inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
|
||||
|
||||
MY_P=${PN}-src-r${PV/_rc/-rc}
|
||||
|
||||
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
|
||||
HOMEPAGE="https://www.mongodb.com"
|
||||
SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0 SSPL-1"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm64"
|
||||
IUSE="debug kerberos lto ssl test +tools"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="acct-group/mongodb
|
||||
acct-user/mongodb
|
||||
>=app-arch/snappy-1.1.3:=
|
||||
>=dev-cpp/yaml-cpp-0.6.2:=
|
||||
>=dev-libs/boost-1.70:=[threads(+),nls]
|
||||
>=dev-libs/libpcre-8.42[cxx]
|
||||
app-arch/zstd:=
|
||||
dev-libs/snowball-stemmer:=
|
||||
net-libs/libpcap
|
||||
>=sys-libs/zlib-1.2.11:=
|
||||
kerberos? ( dev-libs/cyrus-sasl[kerberos] )
|
||||
ssl? (
|
||||
>=dev-libs/openssl-1.0.1g:0=
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
$(python_gen_any_dep '
|
||||
test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
|
||||
>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
|
||||
dev-python/cheetah3[${PYTHON_USEDEP}]
|
||||
dev-python/psutil[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
')
|
||||
sys-libs/ncurses:0=
|
||||
sys-libs/readline:0=
|
||||
debug? ( dev-util/valgrind )"
|
||||
PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-no-compass.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-unwind-gcc10.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-boost.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
|
||||
)
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
python_check_deps() {
|
||||
if use test; then
|
||||
has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
|
||||
has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
|
||||
fi
|
||||
|
||||
has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
|
||||
has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
|
||||
has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
|
||||
has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ -n ${REPLACING_VERSIONS} ]]; then
|
||||
if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
|
||||
ewarn "To upgrade from a version earlier than the 4.2-series, you must"
|
||||
ewarn "successively upgrade major releases until you have upgraded"
|
||||
ewarn "to 4.2-series. Then upgrade to 4.4 series."
|
||||
else
|
||||
ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# remove bundled libs
|
||||
rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
|
||||
|
||||
# remove compass
|
||||
rm -r src/mongo/installer/compass || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
|
||||
# --use-system-icu fails tests
|
||||
# --use-system-tcmalloc is strongly NOT recommended:
|
||||
scons_opts=(
|
||||
CC="$(tc-getCC)"
|
||||
CXX="$(tc-getCXX)"
|
||||
|
||||
--disable-warnings-as-errors
|
||||
--use-system-boost
|
||||
--use-system-pcre
|
||||
--use-system-snappy
|
||||
--use-system-stemmer
|
||||
--use-system-yaml
|
||||
--use-system-zlib
|
||||
--use-system-zstd
|
||||
)
|
||||
|
||||
use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
|
||||
use debug && scons_opts+=( --dbg=on )
|
||||
use kerberos && scons_opts+=( --use-sasl-client )
|
||||
use lto && scons_opts+=( --lto=on )
|
||||
use ssl && scons_opts+=( --ssl )
|
||||
|
||||
# respect mongoDB upstream's basic recommendations
|
||||
# see bug #536688 and #526114
|
||||
if ! use debug; then
|
||||
filter-flags '-m*'
|
||||
filter-flags '-O?'
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
PREFIX="${EPREFIX}/usr" escons "${scons_opts[@]}" --nostrip install-core
|
||||
}
|
||||
|
||||
# FEATURES="test -usersandbox" emerge dev-db/mongodb
|
||||
src_test() {
|
||||
ewarn "Tests may hang with FEATURES=usersandbox"
|
||||
"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin build/install/bin/{mongo,mongod,mongos}
|
||||
|
||||
doman debian/mongo*.1
|
||||
dodoc README docs/building.md
|
||||
|
||||
newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
|
||||
newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
|
||||
newinitd "${FILESDIR}/mongos.initd-r3" mongos
|
||||
newconfd "${FILESDIR}/mongos.confd-r3" mongos
|
||||
|
||||
insinto /etc
|
||||
newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
|
||||
newins "${FILESDIR}/mongos.conf-r2" mongos.conf
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
|
||||
insinto /etc/logrotate.d/
|
||||
newins "${FILESDIR}/${PN}.logrotate" ${PN}
|
||||
|
||||
# see bug #526114
|
||||
pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
|
||||
|
||||
local x
|
||||
for x in /var/{lib,log}/${PN}; do
|
||||
diropts -m0750 -o mongodb -g mongodb
|
||||
keepdir "${x}"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Make sure to read the release notes and follow the upgrade process:"
|
||||
ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
|
||||
ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
|
||||
}
|
@ -1,176 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..9} )
|
||||
|
||||
SCONS_MIN_VERSION="3.3.1"
|
||||
CHECKREQS_DISK_BUILD="2400M"
|
||||
CHECKREQS_DISK_USR="512M"
|
||||
CHECKREQS_MEMORY="1024M"
|
||||
|
||||
inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
|
||||
|
||||
MY_P=${PN}-src-r${PV/_rc/-rc}
|
||||
|
||||
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
|
||||
HOMEPAGE="https://www.mongodb.com"
|
||||
SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0 SSPL-1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 -riscv"
|
||||
IUSE="debug kerberos lto ssl test +tools"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="acct-group/mongodb
|
||||
acct-user/mongodb
|
||||
>=app-arch/snappy-1.1.3:=
|
||||
>=dev-cpp/yaml-cpp-0.6.2:=
|
||||
>=dev-libs/boost-1.70:=[threads(+),nls]
|
||||
>=dev-libs/libpcre-8.42[cxx]
|
||||
app-arch/zstd:=
|
||||
dev-libs/snowball-stemmer:=
|
||||
net-libs/libpcap
|
||||
>=sys-libs/zlib-1.2.11:=
|
||||
kerberos? ( dev-libs/cyrus-sasl[kerberos] )
|
||||
ssl? (
|
||||
>=dev-libs/openssl-1.0.1g:0=
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
$(python_gen_any_dep '
|
||||
test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
|
||||
>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
|
||||
dev-python/cheetah3[${PYTHON_USEDEP}]
|
||||
dev-python/psutil[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
')
|
||||
sys-libs/ncurses:0=
|
||||
sys-libs/readline:0=
|
||||
debug? ( dev-util/valgrind )"
|
||||
PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-no-compass.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-boost.patch"
|
||||
"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
|
||||
)
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
python_check_deps() {
|
||||
if use test; then
|
||||
has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
|
||||
has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
|
||||
fi
|
||||
|
||||
has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
|
||||
has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
|
||||
has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
|
||||
has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ -n ${REPLACING_VERSIONS} ]]; then
|
||||
if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
|
||||
ewarn "To upgrade from a version earlier than the 4.2-series, you must"
|
||||
ewarn "successively upgrade major releases until you have upgraded"
|
||||
ewarn "to 4.2-series. Then upgrade to 4.4 series."
|
||||
else
|
||||
ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# remove bundled libs
|
||||
rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
|
||||
|
||||
# remove compass
|
||||
rm -r src/mongo/installer/compass || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
|
||||
# --use-system-icu fails tests
|
||||
# --use-system-tcmalloc is strongly NOT recommended:
|
||||
scons_opts=(
|
||||
CC="$(tc-getCC)"
|
||||
CXX="$(tc-getCXX)"
|
||||
|
||||
--disable-warnings-as-errors
|
||||
--use-system-boost
|
||||
--use-system-pcre
|
||||
--use-system-snappy
|
||||
--use-system-stemmer
|
||||
--use-system-yaml
|
||||
--use-system-zlib
|
||||
--use-system-zstd
|
||||
)
|
||||
|
||||
use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
|
||||
use debug && scons_opts+=( --dbg=on )
|
||||
use kerberos && scons_opts+=( --use-sasl-client )
|
||||
use lto && scons_opts+=( --lto=on )
|
||||
use ssl && scons_opts+=( --ssl )
|
||||
|
||||
# respect mongoDB upstream's basic recommendations
|
||||
# see bug #536688 and #526114
|
||||
if ! use debug; then
|
||||
filter-flags '-m*'
|
||||
filter-flags '-O?'
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
PREFIX="${EPREFIX}/usr" escons "${scons_opts[@]}" --nostrip install-core
|
||||
}
|
||||
|
||||
# FEATURES="test -usersandbox" emerge dev-db/mongodb
|
||||
src_test() {
|
||||
ewarn "Tests may hang with FEATURES=usersandbox"
|
||||
"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin build/install/bin/{mongo,mongod,mongos}
|
||||
|
||||
doman debian/mongo*.1
|
||||
dodoc README docs/building.md
|
||||
|
||||
newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
|
||||
newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
|
||||
newinitd "${FILESDIR}/mongos.initd-r3" mongos
|
||||
newconfd "${FILESDIR}/mongos.confd-r3" mongos
|
||||
|
||||
insinto /etc
|
||||
newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
|
||||
newins "${FILESDIR}/mongos.conf-r2" mongos.conf
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
|
||||
insinto /etc/logrotate.d/
|
||||
newins "${FILESDIR}/${PN}.logrotate" ${PN}
|
||||
|
||||
# see bug #526114
|
||||
pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
|
||||
|
||||
local x
|
||||
for x in /var/{lib,log}/${PN}; do
|
||||
diropts -m0750 -o mongodb -g mongodb
|
||||
keepdir "${x}"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Make sure to read the release notes and follow the upgrade process:"
|
||||
ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
|
||||
ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST antlr-4.9.1-complete.jar 2100605 BLAKE2B 6fcdc184900cd30e42b3e1b6f56bcccbf1d3c975edc8475b92b9c0779568148f711e9bcbb77859d8fbff2d31f362a9b562847b9b9ece03c8c4b7792341fab57e SHA512 a01815324c15fbff9cb917fa2cdef85aabf34c77730913026257e92c195d11f059c73a1579ffa74616b76b5aba34fd6074b19e1de8f2f3bec1c55cd950f4947b
|
||||
DIST mysql-workbench-community-8.0.26-src.tar.gz 19282576 BLAKE2B 4b05d42a10ad3cc88d6447ff5ed1344ac8ef75564e2b69a55f603930f3ff75cd9ac00fd82b6b7339bdbf9524a593fadc32070c6cb5f77e9eeb6ad8e24cc59e7c SHA512 33b28b74b5c7d75c7b3c017cdebc48f3453d0aed2e8ebb20052e462479d0147e164d409e040ab8d1828c2209ad3bc41ab9684e91f86769bf7c1fa0ee117e888c
|
||||
DIST mysql-workbench-community-8.0.27-src.tar.gz 19282580 BLAKE2B 53069dbf26f1ba5975a9b28cf96cae660db8654dd60e5f7cdf112db48e7d4fd41beeb74a9ff870ae38b2d651de4ed7edffec32ba3eb8914bb329ff414ec7e7d4 SHA512 827d7abb8e04b0ec4a730eac163b4e2b62f5cde25d7326b4cb95b5f924b1e7c5bc87b1a8ca64dbab59232f4dd042b41cb1e53b97a9484549d0d6c2b7c8a14741
|
||||
|
@ -0,0 +1,111 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
GCONF_DEBUG="no"
|
||||
|
||||
PYTHON_COMPAT=( python3_{7,8,9} )
|
||||
PYTHON_REQ_USE="sqlite"
|
||||
|
||||
ANTLR_VERSION=4.9.1
|
||||
|
||||
inherit gnome2 flag-o-matic python-single-r1 cmake
|
||||
|
||||
MY_P="${PN}-community-${PV}-src"
|
||||
|
||||
DESCRIPTION="MySQL Workbench"
|
||||
HOMEPAGE="https://www.mysql.com/products/workbench/"
|
||||
SRC_URI="https://cdn.mysql.com/Downloads/MySQLGUITools/${MY_P}.tar.gz
|
||||
https://www.antlr.org/download/antlr-${ANTLR_VERSION}-complete.jar"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="debug doc"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
# glibc: deprecated mutex functions, removed in 2.36.0
|
||||
CDEPEND="${PYTHON_DEPS}
|
||||
app-crypt/libsecret
|
||||
dev-libs/glib:2
|
||||
dev-cpp/antlr-cpp:4
|
||||
dev-cpp/atkmm:*
|
||||
dev-cpp/pangomm:1.4
|
||||
>=dev-cpp/glibmm-2.14:2
|
||||
dev-cpp/gtkmm:3.0
|
||||
dev-libs/atk
|
||||
>=net-libs/libssh-0.8.5[server]
|
||||
x11-libs/pango
|
||||
x11-libs/gtk+:3
|
||||
gnome-base/libglade:2.0
|
||||
>=x11-libs/cairo-1.5.12[glib,svg]
|
||||
>=dev-libs/rapidjson-1.1.0
|
||||
dev-libs/libsigc++:2
|
||||
>=dev-libs/boost-1.55.0[nls]
|
||||
>=dev-cpp/ctemplate-0.95
|
||||
>=dev-libs/libxml2-2.6.2:2
|
||||
dev-libs/libzip
|
||||
dev-libs/libpcre[cxx]
|
||||
>=sci-libs/gdal-1.11.1-r1
|
||||
virtual/opengl
|
||||
|| ( sys-fs/e2fsprogs dev-libs/ossp-uuid )
|
||||
dev-libs/tinyxml[stl]
|
||||
>=dev-db/mysql-connector-c++-1.1.8 =dev-db/mysql-connector-c++-1*
|
||||
dev-db/vsqlite++
|
||||
|| ( dev-db/libiodbc dev-db/unixODBC )
|
||||
dev-python/pexpect
|
||||
>=dev-python/paramiko-1.7.4
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
app-admin/sudo
|
||||
>=sys-apps/net-tools-1.60_p20120127084908"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
dev-lang/swig
|
||||
virtual/jre
|
||||
virtual/pkgconfig"
|
||||
|
||||
S="${WORKDIR}"/"${MY_P}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-6.2.5-wbcopytables.patch"
|
||||
"${FILESDIR}/${PN}-8.0.19-mysql-connector-8.patch"
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
unpack ${PN}-community-${PV}-src.tar.gz
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
## remove hardcoded CXXFLAGS
|
||||
sed -i -e 's/-O0 -g3//' ext/scintilla/gtk/CMakeLists.txt || die
|
||||
## And avoid -Werror
|
||||
sed -i -e 's/-Werror//' CMakeLists.txt || die
|
||||
## Fix doc install directory
|
||||
sed -i -e "/WB_INSTALL_DOC_DIR/ s/mysql-workbench/${P}/ ; /WB_INSTALL_DOC_DIR/ s/-community//" CMakeLists.txt || die
|
||||
|
||||
## package is very fragile...
|
||||
strip-flags
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
if has_version dev-db/libiodbc ; then
|
||||
IODBC="-DIODBC_CONFIG_PATH=/usr/bin/iodbc-config"
|
||||
fi
|
||||
|
||||
append-cxxflags -std=c++11
|
||||
ANTLR_JAR_PATH="${DISTDIR}/antlr-${ANTLR_VERSION}-complete.jar"
|
||||
local mycmakeargs=(
|
||||
-DWITH_ANTLR_JAR=${ANTLR_JAR_PATH}
|
||||
-DLIB_INSTALL_DIR="/usr/$(get_libdir)"
|
||||
-DIODBC_INCLUDE_PATH="/usr/include/iodbc"
|
||||
${IODBC}
|
||||
-DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
|
||||
-DPYTHON_LIBRARY="$(python_get_library_path)"
|
||||
-DMySQL_CONFIG_PATH="/usr/bin/mysql_config"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
@ -1,196 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
USE_RUBY="ruby25 ruby26 ruby27 ruby30"
|
||||
RUBY_OPTIONAL="yes"
|
||||
|
||||
inherit autotools flag-o-matic java-pkg-opt-2 perl-functions ruby-ng
|
||||
|
||||
DESCRIPTION="Quick Database Manager"
|
||||
HOMEPAGE="https://fallabs.com/qdbm/"
|
||||
SRC_URI="https://fallabs.com/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
|
||||
IUSE="bzip2 cxx debug java lzo perl ruby static-libs zlib"
|
||||
|
||||
RDEPEND="bzip2? ( app-arch/bzip2 )
|
||||
java? ( >=virtual/jre-1.4:* )
|
||||
lzo? ( dev-libs/lzo )
|
||||
perl? ( dev-lang/perl )
|
||||
ruby? ( $(ruby_implementations_depend) )
|
||||
zlib? ( sys-libs/zlib )"
|
||||
DEPEND="${RDEPEND}
|
||||
java? ( >=virtual/jdk-1.4:* )"
|
||||
S="${WORKDIR}/all/${P}"
|
||||
RUBY_S="${P}/ruby"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-configure.patch
|
||||
"${FILESDIR}"/${PN}-perl.patch
|
||||
"${FILESDIR}"/${PN}-ruby19.patch
|
||||
"${FILESDIR}"/${PN}-runpath.patch
|
||||
"${FILESDIR}"/${PN}-darwin.patch
|
||||
)
|
||||
HTML_DOCS=( doc/. )
|
||||
|
||||
AT_NOELIBTOOLIZE="yes"
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
use ruby && ruby-ng_pkg_setup
|
||||
}
|
||||
|
||||
qdbm_foreach_api() {
|
||||
local u
|
||||
for u in cxx java perl ruby; do
|
||||
if ! use "${u}"; then
|
||||
continue
|
||||
fi
|
||||
einfo "${EBUILD_PHASE} ${u}"
|
||||
if [[ "${u}" == "cxx" ]]; then
|
||||
u="plus"
|
||||
fi
|
||||
if [[ "${u}" != "ruby" ]]; then
|
||||
cd "${u}"
|
||||
case "${EBUILD_PHASE}" in
|
||||
prepare)
|
||||
mv configure.{in,ac}
|
||||
eautoreconf
|
||||
;;
|
||||
configure)
|
||||
case "${u}" in
|
||||
cgi|java|plus)
|
||||
econf $(use_enable debug)
|
||||
;;
|
||||
*)
|
||||
econf
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
compile)
|
||||
emake
|
||||
;;
|
||||
test)
|
||||
emake check
|
||||
;;
|
||||
install)
|
||||
emake DESTDIR="${D}" MYDATADIR=/usr/share/doc/${P}/html install
|
||||
esac
|
||||
cd - >/dev/null
|
||||
else
|
||||
PATCHES= ruby-ng_src_${EBUILD_PHASE}
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg-opt-2_src_prepare
|
||||
|
||||
# fix build with >=sys-devel/gcc-7, bug #638878
|
||||
append-cflags $(test-flags-CC -fno-tree-vrp)
|
||||
|
||||
sed -i \
|
||||
-e "/^CFLAGS/s|$| ${CFLAGS}|" \
|
||||
-e "/^OPTIMIZE/s|$| ${CFLAGS}|" \
|
||||
-e "/^CXXFLAGS/s|$| ${CXXFLAGS}|" \
|
||||
-e "/^JAVACFLAGS/s|$| ${JAVACFLAGS}|" \
|
||||
-e 's/make\( \|$\)/$(MAKE)\1/g' \
|
||||
-e '/^debug/,/^$/s/LDFLAGS="[^"]*" //' \
|
||||
Makefile.in {cgi,java,perl,plus,ruby}/Makefile.in || die
|
||||
find -name "*~" -delete || die
|
||||
|
||||
mv configure.{in,ac} || die
|
||||
eautoreconf
|
||||
qdbm_foreach_api
|
||||
}
|
||||
|
||||
each_ruby_prepare() {
|
||||
sed -i \
|
||||
-e "s|ruby |${RUBY} |" \
|
||||
-e "s|\.\./\.\.|${WORKDIR}/all/${P}|" \
|
||||
{Makefile,configure}.in {curia,depot,villa}/extconf.rb || die
|
||||
|
||||
mv configure.{in,ac} || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_enable bzip2 bzip) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable lzo) \
|
||||
$(use_enable zlib) \
|
||||
--enable-iconv \
|
||||
--enable-pthread
|
||||
qdbm_foreach_api
|
||||
}
|
||||
|
||||
each_ruby_configure() {
|
||||
econf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ ${CHOST} == *darwin* ]] ; then
|
||||
emake mac
|
||||
else
|
||||
default
|
||||
qdbm_foreach_api
|
||||
fi
|
||||
}
|
||||
|
||||
each_ruby_compile() {
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ ${CHOST} == *darwin* ]] ; then
|
||||
emake check-mac
|
||||
else
|
||||
default
|
||||
qdbm_foreach_api
|
||||
fi
|
||||
}
|
||||
|
||||
each_ruby_test() {
|
||||
emake check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ ${CHOST} == *darwin* ]] ; then
|
||||
emake install-mac
|
||||
else
|
||||
default
|
||||
fi
|
||||
|
||||
qdbm_foreach_api
|
||||
use static-libs || find "${ED}" -name '*.a' -delete || die
|
||||
|
||||
rm -rf "${ED}"/usr/share/${PN}
|
||||
|
||||
if use java; then
|
||||
java-pkg_dojar "${ED}"/usr/$(get_libdir)/*.jar
|
||||
rm -f "${ED}"/usr/$(get_libdir)/*.jar
|
||||
fi
|
||||
if use perl; then
|
||||
perl_delete_module_manpages
|
||||
perl_fix_packlist
|
||||
fi
|
||||
|
||||
rm -f "${ED}"/usr/bin/*test
|
||||
rm -f "${ED}"/usr/share/man/man1/*test.1*
|
||||
}
|
||||
|
||||
each_ruby_install() {
|
||||
local m
|
||||
for m in curia depot villa; do
|
||||
emake -C "${m}" DESTDIR="${D}" install
|
||||
done
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
dodoc -r rb*.html rbapidoc
|
||||
}
|
Binary file not shown.
@ -1,93 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Multi-platform game development library"
|
||||
HOMEPAGE="http://www.clanlib.org/"
|
||||
SRC_URI="http://clanlib.org/download/releases-${PV:0:3}/ClanLib-${PV}.tgz"
|
||||
S="${WORKDIR}"/ClanLib-${PV}
|
||||
|
||||
LICENSE="ZLIB"
|
||||
SLOT="0.8"
|
||||
# Not big endian safe! #82779
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="doc ipv6 mikmod opengl sdl static-libs vorbis"
|
||||
|
||||
# opengl keyword does not drop the GL/GLU requirement.
|
||||
# Autoconf files need to be fixed
|
||||
RDEPEND="
|
||||
media-libs/alsa-lib
|
||||
media-libs/libpng:0
|
||||
virtual/jpeg:0
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
x11-libs/libXi
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXxf86vm
|
||||
mikmod? ( media-libs/libmikmod )
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/sdl-gfx
|
||||
)
|
||||
vorbis? ( media-libs/libvorbis )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-ndebug.patch"
|
||||
"${FILESDIR}/${P}-gcc43.patch"
|
||||
"${FILESDIR}/${P}-gcc44.patch"
|
||||
"${FILESDIR}/${P}-gcc47.patch"
|
||||
"${FILESDIR}/${P}-gcc6.patch"
|
||||
"${FILESDIR}/${P}-llvm.patch"
|
||||
"${FILESDIR}/${P}-libpng15.patch"
|
||||
"${FILESDIR}/${P}-docbuilder.patch"
|
||||
)
|
||||
|
||||
DOCS=(
|
||||
CODING_STYLE CREDITS NEWS PATCHES
|
||||
README{,.anjuta,.distros,.kdevelop,.sdl,.upgrade} INSTALL.linux
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# See #739358
|
||||
sed -i -e "s:libdir=\${exec_prefix}/lib:libdir=@libdir@:g" \
|
||||
pkgconfig/*.pc.in || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# clanSound only controls mikmod/vorbis so there's
|
||||
# no need to pass --{en,dis}able-clanSound ...
|
||||
# clanDisplay only controls X, SDL, OpenGL plugins
|
||||
# so no need to pass --{en,dis}able-clanDisplay
|
||||
# also same reason why we don't have to use clanGUI
|
||||
econf \
|
||||
--enable-dyn \
|
||||
--enable-clanNetwork \
|
||||
$(use_enable x86 asm386) \
|
||||
$(use_enable doc docs) \
|
||||
$(use_enable opengl clanGL) \
|
||||
$(use_enable sdl clanSDL) \
|
||||
$(use_enable vorbis clanVorbis) \
|
||||
$(use_enable mikmod clanMikMod) \
|
||||
$(use_enable ipv6 getaddr) \
|
||||
$(use_enable static-libs static)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use doc ; then
|
||||
dodir /usr/share/doc/${PF}/html
|
||||
mv "${D}"/usr/share/doc/clanlib/* "${D}"/usr/share/doc/${PF}/html/ || die
|
||||
rm -rf "${D}"/usr/share/doc/clanlib
|
||||
cp -r Examples Resources "${D}"/usr/share/doc/${PF}/ || die
|
||||
fi
|
||||
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
@ -1,106 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools toolchain-funcs
|
||||
|
||||
MY_P=ClanLib-${PV}
|
||||
DESCRIPTION="Multi-platform game development library"
|
||||
HOMEPAGE="http://www.clanlib.org/"
|
||||
SRC_URI="http://clanlib.org/download/releases-2.0/${MY_P}.tgz"
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
LICENSE="ZLIB"
|
||||
SLOT="2.3"
|
||||
# Not big endian safe! #82779
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="doc ipv6 mikmod opengl sound sqlite cpu_flags_x86_sse2 static-libs vorbis X"
|
||||
REQUIRED_USE="opengl? ( X )"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( app-doc/doxygen dev-lang/perl )
|
||||
"
|
||||
RDEPEND="
|
||||
sys-libs/zlib
|
||||
X? (
|
||||
app-arch/bzip2
|
||||
media-libs/libpng:0
|
||||
media-libs/freetype
|
||||
media-libs/fontconfig
|
||||
virtual/jpeg:0
|
||||
x11-libs/libX11
|
||||
opengl? ( virtual/opengl )
|
||||
)
|
||||
mikmod? (
|
||||
media-libs/alsa-lib
|
||||
media-libs/libmikmod
|
||||
)
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
sound? ( media-libs/alsa-lib )
|
||||
vorbis? (
|
||||
media-libs/alsa-lib
|
||||
media-libs/libogg
|
||||
media-libs/libvorbis
|
||||
)
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-autotools.patch
|
||||
"${FILESDIR}"/${P}-doc.patch
|
||||
"${FILESDIR}"/${P}-freetype_pkgconfig.patch #764902
|
||||
)
|
||||
|
||||
DOCS=( CODING_STYLE CREDITS PATCHES README )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
|
||||
ln -sf ../../../Sources/API Documentation/Utilities/ReferenceDocs/ClanLib || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Add -DPACKAGE_BUGREPORT?
|
||||
local myeconfargs=(
|
||||
$(use_enable doc docs)
|
||||
$(use_enable cpu_flags_x86_sse2 sse2)
|
||||
$(use_enable opengl clanGL)
|
||||
$(use_enable opengl clanGL1)
|
||||
$(use_enable opengl clanGUI)
|
||||
$(use_enable X clanDisplay)
|
||||
$(use_enable vorbis clanVorbis)
|
||||
$(use_enable mikmod clanMikMod)
|
||||
$(use_enable sqlite clanSqlite)
|
||||
$(use_enable ipv6 getaddr)
|
||||
)
|
||||
|
||||
use sound \
|
||||
|| use vorbis \
|
||||
|| use mikmod \
|
||||
|| myeconfargs+=( --disable-clanSound )
|
||||
|
||||
tc-export PKG_CONFIG
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
use doc && emake html
|
||||
}
|
||||
|
||||
# html files are keeped in a directory that is dependent on the SLOT
|
||||
# so to keep eventual bookmarks to the doc from version to version
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use doc ; then
|
||||
emake DESTDIR="${D}" install-html
|
||||
dodoc -r Examples Resources
|
||||
fi
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
Patch taken from Fedora, removes redefinitions that conflicts on x86.
|
||||
--- a/Sources/API/GL/opengl_defines.h
|
||||
+++ b/Sources/API/GL/opengl_defines.h
|
||||
@@ -69,6 +69,4 @@
|
||||
typedef void GLvoid;
|
||||
typedef char GLchar;
|
||||
-typedef ptrdiff_t GLintptr;
|
||||
-typedef ptrdiff_t GLsizeiptr;
|
||||
typedef struct __CLsync *CLsync;
|
||||
|
||||
--- a/Sources/API/GL1/opengl1_defines.h
|
||||
+++ b/Sources/API/GL1/opengl1_defines.h
|
||||
@@ -65,6 +65,4 @@
|
||||
typedef void GLvoid;
|
||||
typedef char GLchar;
|
||||
-typedef ptrdiff_t GLintptr;
|
||||
-typedef ptrdiff_t GLsizeiptr;
|
||||
|
||||
#else
|
Binary file not shown.
@ -1,48 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
JAVA_PKG_IUSE="test"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="Junit plugin for bndlib, a swiss army knife for OSGi"
|
||||
HOMEPAGE="http://www.aqute.biz/Bnd/Bnd"
|
||||
SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.REL.tar.gz -> bndlib-${PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
CDEPEND="
|
||||
dev-java/osgi-core-api:0
|
||||
dev-java/bndlib:0"
|
||||
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
>=virtual/jdk-1.5
|
||||
test? ( dev-java/junit:4 )"
|
||||
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
>=virtual/jre-1.5"
|
||||
|
||||
S="${WORKDIR}/bnd-${PV}.REL/biz.aQute.junit"
|
||||
|
||||
EANT_BUILD_TARGET="build"
|
||||
JAVA_ANT_REWRITE_CLASSPATH="true"
|
||||
EANT_GENTOO_CLASSPATH="bndlib,junit-4,osgi-core-api"
|
||||
|
||||
# Tests appear broken and cause a circular dependency.
|
||||
RESTRICT="test"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg_clean
|
||||
cp ../cnf/build.xml . || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar generated/biz.aQute.junit.jar
|
||||
}
|
@ -1,53 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
JAVA_PKG_IUSE="test"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="Junit plugin for bndlib, a swiss army knife for OSGi"
|
||||
HOMEPAGE="http://www.aqute.biz/Bnd/Bnd"
|
||||
SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.REL.tar.gz -> bndlib-${PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
CDEPEND="
|
||||
dev-java/osgi-core-api:0
|
||||
dev-java/bndlib:0"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.5
|
||||
test? ( dev-java/junit:4 )
|
||||
${CDEPEND}"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.5
|
||||
${CDEPEND}"
|
||||
|
||||
S="${WORKDIR}/bnd-${PV}.REL/biz.aQute.junit"
|
||||
|
||||
EANT_BUILD_TARGET="build"
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="true"
|
||||
EANT_GENTOO_CLASSPATH="bndlib,junit-4,osgi-core-api"
|
||||
|
||||
# Tests appear broken and cause a circular dependency.
|
||||
RESTRICT="test"
|
||||
|
||||
java_prepare() {
|
||||
# Move the correct build.xml into place, needed for testing.
|
||||
cp ../cnf/build.xml . || die
|
||||
|
||||
# Remove bundled jar files.
|
||||
find . -name '*.jar' -delete > /dev/null
|
||||
}
|
||||
|
||||
src_test() {
|
||||
java-pkg-2_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar generated/biz.aQute.junit.jar
|
||||
}
|
Binary file not shown.
@ -1,4 +1,5 @@
|
||||
DIST php-7.3.31.tar.xz 12142912 BLAKE2B dc68d2e2f38c93653950be4b30dde12fec6e7279e288fe40439a8e3e31110a228a69275e032604a493a53951230f6f42257719617ae18179116be414e49a2af5 SHA512 63a8122233b9892453b6b92429497a7ad9761ad88063e2b95607b5d4d4c0a0e1135073bcae5a0e69a17082d2348911cbbd4807c0d20905d93324d89e5b019a05
|
||||
DIST php-7.4.24.tar.xz 10372816 BLAKE2B 62e1853c20eb10d8540b9284af93cce4b3976cfae7cdba5c0c2d6d14e732a57d7f1d196f4270687d6af8f376d7a9ccef60b0b606ed20eda7e1b2b7b95074c55c SHA512 30dd0a83d6184791f4cff3edcffeb05470de8f98ddadba3c11544449bf500280ff2048a8ca8588b35d0622dcbbf16f55ea297f51d469ae137048cab2d40da9cd
|
||||
DIST php-8.0.11.tar.xz 10804388 BLAKE2B 8d32f2bb66b2850c7d8d820cbcf94af5161065612b204f6e30289d9b9fffbae7c45cdf5e31c3d1f774932d7eb7218079f6f0d19774b108d53a81a6c88d3c99fb SHA512 2d346959b2691ea0d5334dc9cad225b7a65ec53d6a6493f3b95c4819a0c088bec36aa1bf4ab3c8044a631bcfefb689d85463ff2259d42000e65dac30badcc59d
|
||||
DIST php-8.0.12.tar.xz 10713980 BLAKE2B ce8ca0d671e8613a81744a55cf94ff43254482a08dec365c05eb4ca22c1b31732e5ef93a51d383d2e8daf0cf332ed7946e79ba3b385386ca0773fc673fe58307 SHA512 927b15c4443f3741a5325ec7bf387987b405cd5e64e40fd81f1945bf073adda30eeede8e1f98185f505cb61f969cf1abe05b8dad57a3c4e87971e8037bb16b23
|
||||
DIST php-8.1.0RC2.tar.xz 11679352 BLAKE2B 0b4eb5b1f8d3f8fb29421b6c72b3279bc7f3c5f6ba684305afdc7b1f5cc0f45a942d5c0f0a681f152ad87f209fa4e464215aef43732180882d523f2badd4596e SHA512 aecd58eb683467df62032208caa545d243ca2574f6683566a489136c84a19da4383c5aaa122dc09cfb44dc951bfaf85e50b0b9659b49ec1c4ae69f5afea9844b
|
||||
|
@ -0,0 +1,744 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit flag-o-matic systemd autotools
|
||||
|
||||
MY_PV=${PV/_rc/rc}
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="https://www.php.net/"
|
||||
SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
|
||||
|
||||
LICENSE="PHP-3.01
|
||||
BSD
|
||||
Zend-2.0
|
||||
bcmath? ( LGPL-2.1+ )
|
||||
fpm? ( BSD-2 )
|
||||
gd? ( gd )
|
||||
unicode? ( BSD-2 LGPL-2.1 )"
|
||||
|
||||
SLOT="$(ver_cut 1-2)"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2 phpdbg"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
threads"
|
||||
|
||||
IUSE="${IUSE} acl apparmor argon2 bcmath berkdb bzip2 calendar cdb cjk
|
||||
coverage +ctype curl debug
|
||||
enchant exif ffi +fileinfo +filter firebird
|
||||
+flatfile ftp gd gdbm gmp +iconv imap inifile
|
||||
intl iodbc ipv6 +jit kerberos ldap ldap-sasl libedit lmdb
|
||||
mhash mssql mysql mysqli nls
|
||||
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
|
||||
readline selinux +session session-mm sharedmem
|
||||
+simplexml snmp soap sockets sodium spell sqlite ssl
|
||||
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
|
||||
+xml xmlreader xmlwriter xpm xslt zip zlib"
|
||||
|
||||
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
|
||||
# The Oracle instant client provides its own incompatible ldap library.
|
||||
REQUIRED_USE="
|
||||
|| ( cli cgi fpm apache2 embed phpdbg )
|
||||
cli? ( ^^ ( readline libedit ) )
|
||||
!cli? ( ?? ( readline libedit ) )
|
||||
truetype? ( gd zlib )
|
||||
webp? ( gd zlib )
|
||||
cjk? ( gd zlib )
|
||||
exif? ( gd zlib )
|
||||
xpm? ( gd zlib )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
xmlreader? ( xml )
|
||||
xmlwriter? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
oci8-instant-client? ( !ldap )
|
||||
qdbm? ( !gdbm )
|
||||
session-mm? ( session !threads )
|
||||
mysql? ( || ( mysqli pdo ) )
|
||||
firebird? ( pdo )
|
||||
mssql? ( pdo )
|
||||
"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# The supported (that is, autodetected) versions of BDB are listed in
|
||||
# the ./configure script. Other versions *work*, but we need to stick to
|
||||
# the ones that can be detected to avoid a repeat of bug #564824.
|
||||
COMMON_DEPEND="
|
||||
>=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
|
||||
>=dev-libs/libpcre2-10.30[jit?,unicode]
|
||||
fpm? ( acl? ( sys-apps/acl ) apparmor? ( sys-libs/libapparmor ) )
|
||||
apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
|
||||
argon2? ( app-crypt/argon2:= )
|
||||
berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) )
|
||||
bzip2? ( app-arch/bzip2:0= )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
coverage? ( dev-util/lcov )
|
||||
curl? ( >=net-misc/curl-7.29.0 )
|
||||
enchant? ( app-text/enchant:2 )
|
||||
ffi? ( >=dev-libs/libffi-3.0.11:= )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
|
||||
intl? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11 )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl )
|
||||
libedit? ( dev-libs/libedit )
|
||||
lmdb? ( dev-db/lmdb:= )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
|
||||
odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
|
||||
postgres? ( >=dev-db/postgresql-9.1:* )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
session-mm? ( dev-libs/mm )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
sodium? ( dev-libs/libsodium:=[-minimal] )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? ( >=dev-libs/openssl-1.0.1:0= )
|
||||
tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
|
||||
tokyocabinet? ( dev-db/tokyocabinet )
|
||||
truetype? ( =media-libs/freetype-2* )
|
||||
unicode? ( dev-libs/oniguruma:= )
|
||||
webp? ( media-libs/libwebp:0= )
|
||||
xml? ( >=dev-libs/libxml2-2.9.0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
xslt? ( dev-libs/libxslt )
|
||||
zip? ( >=dev-libs/libzip-1.2.0:= )
|
||||
zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
virtual/mta
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
# Bison isn't actually needed when building from a release tarball
|
||||
# However, the configure script will warn if it's absent or if you
|
||||
# have an incompatible version installed. See bug 593278.
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-arch/xz-utils
|
||||
>=sys-devel/bison-3.0.1"
|
||||
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PHP_MV="$(ver_cut 1)"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/php-iodbc-header-location.patch"
|
||||
"${FILESDIR}/php80-firebird-warnings.patch"
|
||||
)
|
||||
|
||||
php_install_ini() {
|
||||
local phpsapi="${1}"
|
||||
|
||||
# work out where we are installing the ini file
|
||||
php_set_ini_dir "${phpsapi}"
|
||||
|
||||
# Always install the production INI file, bug 611214.
|
||||
local phpinisrc="php.ini-production-${phpsapi}"
|
||||
cp php.ini-production "${phpinisrc}" || die
|
||||
|
||||
# default to /tmp for save_path, bug #282768
|
||||
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
|
||||
|
||||
# Set the extension dir
|
||||
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
|
||||
-i "${phpinisrc}" || die
|
||||
|
||||
# Set the include path to point to where we want to find PEAR packages
|
||||
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
|
||||
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
newins "${phpinisrc}" php.ini
|
||||
|
||||
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
|
||||
elog
|
||||
|
||||
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
|
||||
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
|
||||
|
||||
if use opcache; then
|
||||
elog "Adding opcache to $PHP_EXT_INI_DIR"
|
||||
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
|
||||
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
|
||||
dosym "../ext/opcache.ini" \
|
||||
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
|
||||
fi
|
||||
|
||||
# SAPI-specific handling
|
||||
if [[ "${sapi}" == "fpm" ]] ; then
|
||||
einfo "Installing FPM config files php-fpm.conf and www.conf"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
doins sapi/fpm/php-fpm.conf
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
|
||||
doins sapi/fpm/www.conf
|
||||
fi
|
||||
|
||||
dodoc php.ini-{development,production}
|
||||
}
|
||||
|
||||
php_set_ini_dir() {
|
||||
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
|
||||
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
|
||||
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# In php-7.x, the FPM pool configuration files have been split off
|
||||
# of the main config. By default the pool config files go in
|
||||
# e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
|
||||
# include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
|
||||
# we'll install the pool configuration file "www.conf" there.
|
||||
php_set_ini_dir fpm
|
||||
sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
|
||||
sapi/fpm/php-fpm.conf.in \
|
||||
|| die 'failed to move the include directory in php-fpm.conf'
|
||||
|
||||
# Emulate buildconf to support cross-compilation
|
||||
rm -fr aclocal.m4 autom4te.cache config.cache \
|
||||
configure main/php_config.h.in || die
|
||||
eautoconf --force
|
||||
eautoheader
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
addpredict /usr/share/snmp/mibs/.index #nowarn
|
||||
addpredict /var/lib/net-snmp/mib_indexes #nowarn
|
||||
|
||||
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
|
||||
|
||||
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
|
||||
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
|
||||
local our_conf=(
|
||||
--prefix="${PHP_DESTDIR}"
|
||||
--mandir="${PHP_DESTDIR}/man"
|
||||
--infodir="${PHP_DESTDIR}/info"
|
||||
--libdir="${PHP_DESTDIR}/lib"
|
||||
--with-libdir="$(get_libdir)"
|
||||
--localstatedir="${EPREFIX}/var"
|
||||
--without-pear
|
||||
$(use_enable threads zts)
|
||||
)
|
||||
|
||||
our_conf+=(
|
||||
$(use_with apparmor fpm-apparmor)
|
||||
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
|
||||
$(use_enable bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar)
|
||||
$(use_enable coverage gcov)
|
||||
$(use_enable ctype)
|
||||
$(use_with curl)
|
||||
$(use_enable xml dom)
|
||||
$(use_with enchant)
|
||||
$(use_enable exif)
|
||||
$(use_with ffi)
|
||||
$(use_enable fileinfo)
|
||||
$(use_enable filter)
|
||||
$(use_enable ftp)
|
||||
$(use_with nls gettext "${EPREFIX}/usr")
|
||||
$(use_with gmp gmp "${EPREFIX}/usr")
|
||||
$(use_with mhash mhash "${EPREFIX}/usr")
|
||||
$(use_with iconv iconv \
|
||||
$(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
|
||||
$(use_enable intl)
|
||||
$(use_enable ipv6)
|
||||
$(use_with kerberos)
|
||||
$(use_with xml libxml)
|
||||
$(use_enable unicode mbstring)
|
||||
$(use_with ssl openssl)
|
||||
$(use_enable pcntl)
|
||||
$(use_enable phar)
|
||||
$(use_enable pdo)
|
||||
$(use_enable opcache)
|
||||
$(use_with postgres pgsql "${EPREFIX}/usr")
|
||||
$(use_enable posix)
|
||||
$(use_with spell pspell "${EPREFIX}/usr")
|
||||
$(use_enable simplexml)
|
||||
$(use_enable sharedmem shmop)
|
||||
$(use_with snmp snmp "${EPREFIX}/usr")
|
||||
$(use_enable soap)
|
||||
$(use_enable sockets)
|
||||
$(use_with sodium)
|
||||
$(use_with sqlite sqlite3)
|
||||
$(use_enable sysvipc sysvmsg)
|
||||
$(use_enable sysvipc sysvsem)
|
||||
$(use_enable sysvipc sysvshm)
|
||||
$(use_with tidy tidy "${EPREFIX}/usr")
|
||||
$(use_enable tokenizer)
|
||||
$(use_enable xml)
|
||||
$(use_enable xmlreader)
|
||||
$(use_enable xmlwriter)
|
||||
$(use_with xslt xsl)
|
||||
$(use_with zip)
|
||||
$(use_with zlib zlib "${EPREFIX}/usr")
|
||||
$(use_enable debug)
|
||||
)
|
||||
|
||||
# DBA support
|
||||
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|
||||
|| use qdbm || use lmdb || use tokyocabinet ; then
|
||||
our_conf+=( "--enable-dba" )
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
our_conf+=(
|
||||
$(use_with cdb)
|
||||
$(use_with berkdb db4 "${EPREFIX}/usr")
|
||||
$(use_enable flatfile)
|
||||
$(use_with gdbm gdbm "${EPREFIX}/usr")
|
||||
$(use_enable inifile)
|
||||
$(use_with qdbm qdbm "${EPREFIX}/usr")
|
||||
$(use_with tokyocabinet tcadb "${EPREFIX}/usr")
|
||||
$(use_with lmdb lmdb "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Support for the GD graphics library
|
||||
our_conf+=(
|
||||
$(use_with truetype freetype)
|
||||
$(use_enable cjk gd-jis-conv)
|
||||
$(use_with gd jpeg)
|
||||
$(use_with xpm)
|
||||
$(use_with webp)
|
||||
)
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
our_conf+=( $(use_enable gd) )
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
our_conf+=(
|
||||
$(use_with imap imap "${EPREFIX}/usr")
|
||||
$(use_with ssl imap-ssl "${EPREFIX}/usr")
|
||||
)
|
||||
fi
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
our_conf+=(
|
||||
$(use_with ldap ldap "${EPREFIX}/usr")
|
||||
$(use_with ldap-sasl)
|
||||
)
|
||||
fi
|
||||
|
||||
# MySQL support
|
||||
local mysqllib="mysqlnd"
|
||||
local mysqlilib="mysqlnd"
|
||||
|
||||
our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
|
||||
|
||||
local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
||||
if use mysql || use mysqli ; then
|
||||
our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
|
||||
fi
|
||||
|
||||
# ODBC support
|
||||
if use odbc && use iodbc ; then
|
||||
our_conf+=(
|
||||
--without-unixODBC
|
||||
--with-iodbc
|
||||
$(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
|
||||
)
|
||||
elif use odbc ; then
|
||||
our_conf+=(
|
||||
--with-unixODBC="${EPREFIX}/usr"
|
||||
--without-iodbc
|
||||
$(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
|
||||
)
|
||||
else
|
||||
our_conf+=(
|
||||
--without-unixODBC
|
||||
--without-iodbc
|
||||
--without-pdo-odbc
|
||||
)
|
||||
fi
|
||||
|
||||
# Oracle support
|
||||
our_conf+=( $(use_with oci8-instant-client oci8) )
|
||||
|
||||
# PDO support
|
||||
if use pdo ; then
|
||||
our_conf+=(
|
||||
$(use_with mssql pdo-dblib "${EPREFIX}/usr")
|
||||
$(use_with mysql pdo-mysql "${mysqllib}")
|
||||
$(use_with postgres pdo-pgsql)
|
||||
$(use_with sqlite pdo-sqlite)
|
||||
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
|
||||
$(use_with oci8-instant-client pdo-oci)
|
||||
)
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
our_conf+=(
|
||||
$(use_with readline readline "${EPREFIX}/usr")
|
||||
$(use_with libedit)
|
||||
)
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
|
||||
else
|
||||
our_conf+=( $(use_enable session) )
|
||||
fi
|
||||
|
||||
# Use pic for shared modules such as apache2's mod_php
|
||||
our_conf+=( --with-pic )
|
||||
|
||||
# we use the system copy of pcre
|
||||
# --with-external-pcre affects ext/pcre
|
||||
our_conf+=(
|
||||
--with-external-pcre
|
||||
$(use_with jit pcre-jit)
|
||||
)
|
||||
|
||||
# Catch CFLAGS problems
|
||||
# Fixes bug #14067.
|
||||
# Changed order to run it in reverse for bug #32022 and #12021.
|
||||
replace-cpu-flags "k6*" "i586"
|
||||
|
||||
# Cache the ./configure test results between SAPIs.
|
||||
our_conf+=( --cache-file="${T}/config.cache" )
|
||||
|
||||
# Support user-passed configuration parameters
|
||||
our_conf+=( ${EXTRA_ECONF:-} )
|
||||
|
||||
# Support the Apache2 extras, they must be set globally for all
|
||||
# SAPIs to work correctly, especially for external PHP extensions
|
||||
|
||||
local one_sapi
|
||||
local sapi
|
||||
mkdir -p "${WORKDIR}/sapis-build" || die
|
||||
for one_sapi in $SAPIS ; do
|
||||
use "${one_sapi}" || continue
|
||||
php_set_ini_dir "${one_sapi}"
|
||||
|
||||
# The BUILD_DIR variable is used to determine where to output
|
||||
# the files that autotools creates. This was all originally
|
||||
# based on the autotools-utils eclass.
|
||||
BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
|
||||
cp -a "${S}" "${BUILD_DIR}" || die
|
||||
cd "${BUILD_DIR}" || die
|
||||
|
||||
local sapi_conf=(
|
||||
--with-config-file-path="${PHP_INI_DIR}"
|
||||
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
|
||||
)
|
||||
|
||||
for sapi in $SAPIS ; do
|
||||
case "$sapi" in
|
||||
cli|cgi|embed|fpm|phpdbg)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf+=( "--enable-${sapi}" )
|
||||
if [[ "fpm" == "${sapi}" ]] ; then
|
||||
sapi_conf+=(
|
||||
$(use_with acl fpm-acl)
|
||||
$(use_with systemd fpm-systemd)
|
||||
)
|
||||
fi
|
||||
else
|
||||
sapi_conf+=( "--disable-${sapi}" )
|
||||
fi
|
||||
;;
|
||||
|
||||
apache2)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
|
||||
else
|
||||
sapi_conf+=( --without-apxs2 )
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Construct the $myeconfargs array by concatenating $our_conf
|
||||
# (the common args) and $sapi_conf (the SAPI-specific args).
|
||||
local myeconfargs=( "${our_conf[@]}" )
|
||||
myeconfargs+=( "${sapi_conf[@]}" )
|
||||
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
econf "${myeconfargs[@]}"
|
||||
popd > /dev/null || die
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# snmp seems to run during src_compile, too (bug #324739)
|
||||
addpredict /usr/share/snmp/mibs/.index #nowarn
|
||||
addpredict /var/lib/net-snmp/mib_indexes #nowarn
|
||||
|
||||
local sapi
|
||||
for sapi in ${SAPIS} ; do
|
||||
if use "${sapi}"; then
|
||||
cd "${WORKDIR}/sapis-build/$sapi" || \
|
||||
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
|
||||
emake
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# see bug #324739 for what happens when we don't have that
|
||||
addpredict /usr/share/snmp/mibs/.index #nowarn
|
||||
|
||||
# grab the first SAPI that got built and install common files from there
|
||||
local first_sapi="", sapi=""
|
||||
for sapi in $SAPIS ; do
|
||||
if use $sapi ; then
|
||||
first_sapi=$sapi
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Makefile forgets to create this before trying to write to it...
|
||||
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
|
||||
|
||||
# Install php environment (without any sapis)
|
||||
cd "${WORKDIR}/sapis-build/$first_sapi" || die
|
||||
emake INSTALL_ROOT="${D}" \
|
||||
install-build install-headers install-programs
|
||||
|
||||
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
|
||||
|
||||
# Create the directory where we'll put version-specific php scripts
|
||||
keepdir "/usr/share/php${PHP_MV}"
|
||||
|
||||
local file=""
|
||||
local sapi_list=""
|
||||
|
||||
for sapi in ${SAPIS}; do
|
||||
if use "${sapi}" ; then
|
||||
einfo "Installing SAPI: ${sapi}"
|
||||
cd "${WORKDIR}/sapis-build/${sapi}" || die
|
||||
|
||||
if [[ "${sapi}" == "apache2" ]] ; then
|
||||
# We're specifically not using emake install-sapi as libtool
|
||||
# may cause unnecessary relink failures (see bug #351266)
|
||||
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
|
||||
newins ".libs/libphp$(get_libname)" \
|
||||
"libphp${PHP_MV}$(get_libname)"
|
||||
keepdir "/usr/$(get_libdir)/apache2/modules"
|
||||
else
|
||||
# needed each time, php_install_ini would reset it
|
||||
local dest="${PHP_DESTDIR#${EPREFIX}}"
|
||||
into "${dest}"
|
||||
case "$sapi" in
|
||||
cli)
|
||||
source="sapi/cli/php"
|
||||
# Install the "phar" archive utility.
|
||||
if use phar ; then
|
||||
emake INSTALL_ROOT="${D}" install-pharcmd
|
||||
dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
|
||||
fi
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp$(get_libname)"
|
||||
;;
|
||||
phpdbg)
|
||||
source="sapi/phpdbg/phpdbg"
|
||||
;;
|
||||
*)
|
||||
die "unhandled sapi in src_install"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ "${source}" == *"$(get_libname)" ]]; then
|
||||
dolib.so "${source}"
|
||||
else
|
||||
dobin "${source}"
|
||||
local name="$(basename ${source})"
|
||||
dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
|
||||
fi
|
||||
fi
|
||||
|
||||
php_install_ini "${sapi}"
|
||||
|
||||
# construct correct SAPI string for php-config
|
||||
# thanks to ferringb for the bash voodoo
|
||||
if [[ "${sapi}" == "apache2" ]]; then
|
||||
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
|
||||
else
|
||||
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Installing opcache module
|
||||
if use opcache ; then
|
||||
into "${PHP_DESTDIR#${EPREFIX}}"
|
||||
dolib.so "modules/opcache$(get_libname)"
|
||||
fi
|
||||
|
||||
# Install env.d files
|
||||
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
|
||||
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
|
||||
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
|
||||
|
||||
# set php-config variable correctly (bug #278439)
|
||||
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
|
||||
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
|
||||
|
||||
if use fpm ; then
|
||||
if use systemd; then
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
|
||||
"php-fpm@${SLOT}.service"
|
||||
else
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
|
||||
"php-fpm@${SLOT}.service"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
|
||||
if [[ ! -x "${PHP_BIN}" ]] ; then
|
||||
ewarn "Test phase requires USE=cli, skipping"
|
||||
return
|
||||
else
|
||||
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
|
||||
fi
|
||||
|
||||
if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
|
||||
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
|
||||
fi
|
||||
|
||||
if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
|
||||
export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
|
||||
fi
|
||||
|
||||
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
|
||||
"session.save_path=${T}" \
|
||||
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
|
||||
"session.save_path=${T}"
|
||||
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
|
||||
done
|
||||
|
||||
local failed="$(find -name '*.out')"
|
||||
if [[ ${failed} != "" ]] ; then
|
||||
ewarn "The following test cases failed unexpectedly:"
|
||||
for name in ${failed}; do
|
||||
ewarn " ${name/.out/}"
|
||||
done
|
||||
else
|
||||
einfo "No unexpected test failures, all fine"
|
||||
fi
|
||||
|
||||
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
|
||||
local passed=""
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
[[ -f "${name}.diff" ]] && continue
|
||||
passed="${passed} ${name}"
|
||||
done
|
||||
if [[ ${passed} != "" ]] ; then
|
||||
einfo "The following test cases passed unexpectedly:"
|
||||
for name in ${passed}; do
|
||||
ewarn " ${passed}"
|
||||
done
|
||||
else
|
||||
einfo "None of the known-to-fail tests passed, all fine"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Output some general info to the user
|
||||
if use apache2 ; then
|
||||
elog
|
||||
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
|
||||
elog "your apache2 command. OpenRC users can append that string to"
|
||||
elog "APACHE2_OPTS in /etc/conf.d/apache2."
|
||||
elog
|
||||
elog "The apache module configuration file 70_mod_php.conf is"
|
||||
elog "provided (and maintained) by eselect-php."
|
||||
elog
|
||||
fi
|
||||
|
||||
# Create the symlinks for php
|
||||
local m
|
||||
for m in ${SAPIS}; do
|
||||
[[ ${m} == 'embed' ]] && continue;
|
||||
if use $m ; then
|
||||
local ci=$(eselect php show $m)
|
||||
if [[ -z $ci ]]; then
|
||||
eselect php set $m php${SLOT} || die
|
||||
einfo "Switched ${m} to use php:${SLOT}"
|
||||
einfo
|
||||
elif [[ $ci != "php${SLOT}" ]] ; then
|
||||
elog "To switch $m to use php:${SLOT}, run"
|
||||
elog " eselect php set $m php${SLOT}"
|
||||
elog
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Remove dead symlinks for SAPIs that were just disabled. For
|
||||
# example, if the user has the cgi SAPI enabled, then he has an
|
||||
# eselect-php symlink for it. If he later reinstalls PHP with
|
||||
# USE="-cgi", that symlink will break. This call to eselect is
|
||||
# supposed to remove that dead link per bug 572436.
|
||||
eselect php cleanup || die
|
||||
|
||||
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
|
||||
elog "To build extensions for this version of PHP, you will need to"
|
||||
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
|
||||
elog
|
||||
fi
|
||||
|
||||
# Warn about the removal of PHP_INI_VERSION if the user has it set.
|
||||
if [[ -n "${PHP_INI_VERSION}" ]]; then
|
||||
ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
|
||||
ewarn 'remove it from your configuration at your convenience. See'
|
||||
ewarn
|
||||
ewarn ' https://bugs.gentoo.org/611214'
|
||||
ewarn
|
||||
ewarn 'for more information.'
|
||||
fi
|
||||
|
||||
elog "For details on how version slotting works, please see"
|
||||
elog "the wiki:"
|
||||
elog
|
||||
elog " https://wiki.gentoo.org/wiki/PHP"
|
||||
elog
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# This serves two purposes. First, if we have just removed the last
|
||||
# installed version of PHP, then this will remove any dead symlinks
|
||||
# belonging to eselect-php. Second, if a user upgrades slots from
|
||||
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
|
||||
# his existing symlinks to point to the new 7.0 installation. The
|
||||
# latter is bug 432962.
|
||||
#
|
||||
# Note: the eselect-php package may not be installed at this point,
|
||||
# so we can't die() if this command fails.
|
||||
eselect php cleanup
|
||||
}
|
@ -0,0 +1,187 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit bash-completion-r1 prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal
|
||||
|
||||
MY_P="rust-${PV}"
|
||||
|
||||
DESCRIPTION="Systems programming language from Mozilla"
|
||||
HOMEPAGE="https://www.rust-lang.org/"
|
||||
SRC_URI="$(rust_all_arch_uris ${MY_P})"
|
||||
|
||||
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
|
||||
SLOT="stable"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
|
||||
IUSE="clippy cpu_flags_x86_sse2 doc prefix rls rustfmt"
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=">=app-eselect/eselect-rust-20190311"
|
||||
BDEPEND="
|
||||
prefix? ( dev-util/patchelf )
|
||||
verify-sig? ( app-crypt/openpgp-keys-rust )
|
||||
"
|
||||
|
||||
REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
|
||||
|
||||
QA_PREBUILT="
|
||||
opt/${P}/bin/.*
|
||||
opt/${P}/lib/.*.so
|
||||
opt/${P}/libexec/.*
|
||||
opt/${P}/lib/rustlib/.*/bin/.*
|
||||
opt/${P}/lib/rustlib/.*/lib/.*
|
||||
"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/rust.asc
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
|
||||
die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
verify-sig_src_unpack
|
||||
mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
|
||||
}
|
||||
|
||||
patchelf_for_bin() {
|
||||
local filetype=$(file -b ${1})
|
||||
if [[ ${filetype} == *ELF*interpreter* ]]; then
|
||||
einfo "${1}'s interpreter changed"
|
||||
patchelf ${1} --set-interpreter ${2} || die
|
||||
elif [[ ${filetype} == *script* ]]; then
|
||||
hprefixify ${1}
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
if multilib_is_native_abi; then
|
||||
|
||||
# start native abi install
|
||||
pushd "${S}" >/dev/null || die
|
||||
local analysis std
|
||||
analysis="$(grep 'analysis' ./components)"
|
||||
std="$(grep 'std' ./components)"
|
||||
local components="rustc,cargo,${std}"
|
||||
use doc && components="${components},rust-docs"
|
||||
use clippy && components="${components},clippy-preview"
|
||||
use rls && components="${components},rls-preview,${analysis}"
|
||||
use rustfmt && components="${components},rustfmt-preview"
|
||||
./install.sh \
|
||||
--components="${components}" \
|
||||
--disable-verify \
|
||||
--prefix="${ED}/opt/${P}" \
|
||||
--mandir="${ED}/opt/${P}/man" \
|
||||
--disable-ldconfig \
|
||||
|| die
|
||||
|
||||
if use prefix; then
|
||||
local interpreter=$(patchelf --print-interpreter ${EPREFIX}/bin/bash)
|
||||
ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin"
|
||||
find "${ED}/opt/${P}/bin" -type f -print0 | \
|
||||
while IFS= read -r -d '' filename; do
|
||||
patchelf_for_bin ${filename} ${interpreter} \; || die
|
||||
done
|
||||
eend $?
|
||||
fi
|
||||
|
||||
local symlinks=(
|
||||
cargo
|
||||
rustc
|
||||
rustdoc
|
||||
rust-gdb
|
||||
rust-gdbgui
|
||||
rust-lldb
|
||||
)
|
||||
|
||||
use clippy && symlinks+=( clippy-driver cargo-clippy )
|
||||
use rls && symlinks+=( rls )
|
||||
use rustfmt && symlinks+=( rustfmt cargo-fmt )
|
||||
|
||||
einfo "installing eselect-rust symlinks and paths"
|
||||
local i
|
||||
for i in "${symlinks[@]}"; do
|
||||
# we need realpath on /usr/bin/* symlink return version-appended binary path.
|
||||
# so /usr/bin/rustc should point to /opt/rust-bin-<ver>/bin/rustc-<ver>
|
||||
local ver_i="${i}-bin-${PV}"
|
||||
ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|
||||
dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
|
||||
done
|
||||
|
||||
# symlinks to switch components to active rust in eselect
|
||||
dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
|
||||
dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
|
||||
dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
|
||||
dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
|
||||
|
||||
# musl logic can be improved a bit, but fine as is for now
|
||||
cat <<-_EOF_ > "${T}/50${P}"
|
||||
LDPATH="${EPREFIX}/usr/lib/rust/lib"
|
||||
MANPATH="${EPREFIX}/usr/lib/rust/man"
|
||||
$(use amd64 && usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
|
||||
$(use arm64 && usex elibc_musl 'CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
|
||||
_EOF_
|
||||
doenvd "${T}/50${P}"
|
||||
|
||||
# note: eselect-rust adds EROOT to all paths below
|
||||
cat <<-_EOF_ > "${T}/provider-${P}"
|
||||
/usr/bin/cargo
|
||||
/usr/bin/rustdoc
|
||||
/usr/bin/rust-gdb
|
||||
/usr/bin/rust-gdbgui
|
||||
/usr/bin/rust-lldb
|
||||
/usr/lib/rustlib
|
||||
/usr/lib/rust/lib
|
||||
/usr/lib/rust/man
|
||||
/usr/share/doc/rust
|
||||
_EOF_
|
||||
|
||||
if use clippy; then
|
||||
echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
|
||||
echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
|
||||
fi
|
||||
if use rls; then
|
||||
echo /usr/bin/rls >> "${T}/provider-${P}"
|
||||
fi
|
||||
if use rustfmt; then
|
||||
echo /usr/bin/rustfmt >> "${T}/provider-${P}"
|
||||
echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
|
||||
fi
|
||||
|
||||
insinto /etc/env.d/rust
|
||||
doins "${T}/provider-${P}"
|
||||
popd >/dev/null || die
|
||||
#end native abi install
|
||||
|
||||
else
|
||||
local rust_target
|
||||
rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
|
||||
dodir "/opt/${P}/lib/rustlib"
|
||||
cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
|
||||
"${ED}/opt/${P}/lib/rustlib" || die
|
||||
fi
|
||||
|
||||
# BUG: installs x86_64 binary on other arches
|
||||
rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
eselect rust update
|
||||
|
||||
elog "Rust installs a helper script for calling GDB now,"
|
||||
elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV}."
|
||||
|
||||
if has_version app-editors/emacs; then
|
||||
elog "install app-emacs/rust-mode to get emacs support for rust."
|
||||
fi
|
||||
|
||||
if has_version app-editors/gvim || has_version app-editors/vim; then
|
||||
elog "install app-vim/rust-vim to get vim support for rust."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect rust cleanup
|
||||
}
|
@ -0,0 +1,683 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing \
|
||||
multilib-build python-any-r1 rust-toolchain toolchain-funcs verify-sig
|
||||
|
||||
if [[ ${PV} = *beta* ]]; then
|
||||
betaver=${PV//*beta}
|
||||
BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
|
||||
MY_P="rustc-beta"
|
||||
SLOT="beta/${PV}"
|
||||
SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz"
|
||||
else
|
||||
ABI_VER="$(ver_cut 1-2)"
|
||||
SLOT="stable/${ABI_VER}"
|
||||
MY_P="rustc-${PV}"
|
||||
SRC="${MY_P}-src.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
|
||||
fi
|
||||
|
||||
RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
|
||||
|
||||
DESCRIPTION="Systems programming language from Mozilla"
|
||||
HOMEPAGE="https://www.rust-lang.org/"
|
||||
|
||||
SRC_URI="
|
||||
https://static.rust-lang.org/dist/${SRC}
|
||||
verify-sig? ( https://static.rust-lang.org/dist/${SRC}.asc )
|
||||
!system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) )
|
||||
"
|
||||
|
||||
# keep in sync with llvm ebuild of the same version as bundled one.
|
||||
ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430
|
||||
NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
|
||||
ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
|
||||
LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?}
|
||||
|
||||
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
|
||||
|
||||
IUSE="clippy cpu_flags_x86_sse2 debug doc miri nightly parallel-compiler rls rustfmt system-bootstrap system-llvm test wasm ${ALL_LLVM_TARGETS[*]}"
|
||||
|
||||
# Please keep the LLVM dependency block separate. Since LLVM is slotted,
|
||||
# we need to *really* make sure we're not pulling more than one slot
|
||||
# simultaneously.
|
||||
|
||||
# How to use it:
|
||||
# List all the working slots in LLVM_VALID_SLOTS, newest first.
|
||||
LLVM_VALID_SLOTS=( 13 )
|
||||
LLVM_MAX_SLOT="${LLVM_VALID_SLOTS[0]}"
|
||||
|
||||
# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation
|
||||
# (-) usedep needed because we may build with older llvm without that target
|
||||
LLVM_DEPEND="|| ( "
|
||||
for _s in ${LLVM_VALID_SLOTS[@]}; do
|
||||
LLVM_DEPEND+=" ( "
|
||||
for _x in ${ALL_LLVM_TARGETS[@]}; do
|
||||
LLVM_DEPEND+="
|
||||
${_x}? ( sys-devel/llvm:${_s}[${_x}(-)] )"
|
||||
done
|
||||
LLVM_DEPEND+=" )"
|
||||
done
|
||||
unset _s _x
|
||||
LLVM_DEPEND+=" )
|
||||
<sys-devel/llvm-$(( LLVM_MAX_SLOT + 1 )):=
|
||||
wasm? ( sys-devel/lld )
|
||||
"
|
||||
|
||||
# to bootstrap we need at least exactly previous version, or same.
|
||||
# most of the time previous versions fail to bootstrap with newer
|
||||
# for example 1.47.x, requires at least 1.46.x, 1.47.x is ok,
|
||||
# but it fails to bootstrap with 1.48.x
|
||||
# https://github.com/rust-lang/rust/blob/${PV}/src/stage0.txt
|
||||
RUST_DEP_PREV="$(ver_cut 1).$(($(ver_cut 2) - 1))*"
|
||||
RUST_DEP_CURR="$(ver_cut 1).$(ver_cut 2)*"
|
||||
BOOTSTRAP_DEPEND="||
|
||||
(
|
||||
=dev-lang/rust-"${RUST_DEP_PREV}"
|
||||
=dev-lang/rust-bin-"${RUST_DEP_PREV}"
|
||||
=dev-lang/rust-"${RUST_DEP_CURR}"
|
||||
=dev-lang/rust-bin-"${RUST_DEP_CURR}"
|
||||
)
|
||||
"
|
||||
|
||||
BDEPEND="${PYTHON_DEPS}
|
||||
app-eselect/eselect-rust
|
||||
|| (
|
||||
>=sys-devel/gcc-4.7
|
||||
>=sys-devel/clang-3.5
|
||||
)
|
||||
system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
|
||||
!system-llvm? (
|
||||
>=dev-util/cmake-3.13.4
|
||||
dev-util/ninja
|
||||
)
|
||||
test? ( sys-devel/gdb )
|
||||
verify-sig? ( app-crypt/openpgp-keys-rust )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
>=app-arch/xz-utils-5.2
|
||||
net-misc/curl:=[http2,ssl]
|
||||
sys-libs/zlib:=
|
||||
dev-libs/openssl:0=
|
||||
elibc_musl? ( sys-libs/libunwind:= )
|
||||
system-llvm? ( ${LLVM_DEPEND} )
|
||||
"
|
||||
|
||||
# we need to block older versions due to layout changes.
|
||||
RDEPEND="${DEPEND}
|
||||
app-eselect/eselect-rust
|
||||
!<dev-lang/rust-1.47.0-r1
|
||||
!<dev-lang/rust-bin-1.47.0-r1
|
||||
"
|
||||
|
||||
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
|
||||
miri? ( nightly )
|
||||
parallel-compiler? ( nightly )
|
||||
test? ( ${ALL_LLVM_TARGETS[*]} )
|
||||
wasm? ( llvm_targets_WebAssembly )
|
||||
x86? ( cpu_flags_x86_sse2 )
|
||||
"
|
||||
|
||||
# we don't use cmake.eclass, but can get a warnings
|
||||
CMAKE_WARN_UNUSED_CLI=no
|
||||
|
||||
QA_FLAGS_IGNORED="
|
||||
usr/lib/${PN}/${PV}/bin/.*
|
||||
usr/lib/${PN}/${PV}/libexec/.*
|
||||
usr/lib/${PN}/${PV}/lib/lib.*.so
|
||||
usr/lib/${PN}/${PV}/lib/rustlib/.*/bin/.*
|
||||
usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/lib.*.so
|
||||
"
|
||||
|
||||
QA_SONAME="
|
||||
usr/lib/${PN}/${PV}/lib/lib.*.so.*
|
||||
usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/lib.*.so
|
||||
"
|
||||
|
||||
# An rmeta file is custom binary format that contains the metadata for the crate.
|
||||
# rmeta files do not support linking, since they do not contain compiled object files.
|
||||
# so we can safely silence the warning for this QA check.
|
||||
QA_WX_LOAD="usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/.*:lib.rmeta"
|
||||
QA_EXECSTACK="${QA_WX_LOAD}"
|
||||
|
||||
# causes double bootstrap
|
||||
RESTRICT="test"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/rust.asc
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/1.55.0-ignore-broken-and-non-applicable-tests.patch
|
||||
"${FILESDIR}"/1.49.0-gentoo-musl-target-specs.patch
|
||||
)
|
||||
|
||||
S="${WORKDIR}/${MY_P}-src"
|
||||
|
||||
toml_usex() {
|
||||
usex "${1}" true false
|
||||
}
|
||||
|
||||
bootstrap_rust_version_check() {
|
||||
# never call from pkg_pretend. eselect-rust may be not installed yet.
|
||||
[[ ${MERGE_TYPE} == binary ]] && return
|
||||
local rustc_wanted="$(ver_cut 1).$(($(ver_cut 2) - 1))"
|
||||
local rustc_toonew="$(ver_cut 1).$(($(ver_cut 2) + 1))"
|
||||
local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
|
||||
rustc_version=${rustc_version[0]#rust-bin-}
|
||||
rustc_version=${rustc_version#rust-}
|
||||
|
||||
[[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
|
||||
|
||||
if ver_test "${rustc_version}" -lt "${rustc_wanted}" ; then
|
||||
eerror "Rust >=${rustc_wanted} is required"
|
||||
eerror "please run 'eselect rust' and set correct rust version"
|
||||
die "selected rust version is too old"
|
||||
elif ver_test "${rustc_version}" -ge "${rustc_toonew}" ; then
|
||||
eerror "Rust <${rustc_toonew} is required"
|
||||
eerror "please run 'eselect rust' and set correct rust version"
|
||||
die "selected rust version is too new"
|
||||
else
|
||||
einfo "Using rust ${rustc_version} to build"
|
||||
fi
|
||||
}
|
||||
|
||||
pre_build_checks() {
|
||||
local M=4096
|
||||
# multiply requirements by 1.5 if we are doing x86-multilib
|
||||
if use amd64; then
|
||||
M=$(( $(usex abi_x86_32 15 10) * ${M} / 10 ))
|
||||
fi
|
||||
M=$(( $(usex clippy 128 0) + ${M} ))
|
||||
M=$(( $(usex miri 128 0) + ${M} ))
|
||||
M=$(( $(usex rls 512 0) + ${M} ))
|
||||
M=$(( $(usex rustfmt 256 0) + ${M} ))
|
||||
# add 2G if we compile llvm and 256M per llvm_target
|
||||
if ! use system-llvm; then
|
||||
M=$(( 2048 + ${M} ))
|
||||
local ltarget
|
||||
for ltarget in ${ALL_LLVM_TARGETS[@]}; do
|
||||
M=$(( $(usex ${ltarget} 256 0) + ${M} ))
|
||||
done
|
||||
fi
|
||||
M=$(( $(usex wasm 256 0) + ${M} ))
|
||||
M=$(( $(usex debug 2 1) * ${M} ))
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
M=$(( 15 * ${M} / 10 ))
|
||||
fi
|
||||
eshopts_pop
|
||||
M=$(( $(usex system-bootstrap 0 1024) + ${M} ))
|
||||
M=$(( $(usex doc 256 0) + ${M} ))
|
||||
CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
|
||||
}
|
||||
|
||||
llvm_check_deps() {
|
||||
has_version -r "sys-devel/llvm:${LLVM_SLOT}[${LLVM_TARGET_USEDEPS// /,}]"
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
pre_build_checks
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
pre_build_checks
|
||||
python-any-r1_pkg_setup
|
||||
|
||||
export LIBGIT2_NO_PKG_CONFIG=1 #749381
|
||||
|
||||
use system-bootstrap && bootstrap_rust_version_check
|
||||
|
||||
if use system-llvm; then
|
||||
llvm_pkg_setup
|
||||
|
||||
local llvm_config="$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
|
||||
export LLVM_LINK_SHARED=1
|
||||
export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if ! use system-bootstrap; then
|
||||
local rust_stage0_root="${WORKDIR}"/rust-stage0
|
||||
local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
|
||||
|
||||
"${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \
|
||||
--without=rust-docs --destdir="${rust_stage0_root}" --prefix=/ || die
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local rust_target="" rust_targets="" arch_cflags
|
||||
|
||||
# Collect rust target names to compile standard libs for all ABIs.
|
||||
for v in $(multilib_get_enabled_abi_pairs); do
|
||||
rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
|
||||
done
|
||||
if use wasm; then
|
||||
rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
|
||||
if use system-llvm; then
|
||||
# un-hardcode rust-lld linker for this target
|
||||
# https://bugs.gentoo.org/715348
|
||||
sed -i '/linker:/ s/rust-lld/wasm-ld/' compiler/rustc_target/src/spec/wasm_base.rs || die
|
||||
fi
|
||||
fi
|
||||
rust_targets="${rust_targets#,}"
|
||||
|
||||
local tools="\"cargo\","
|
||||
if use clippy; then
|
||||
tools="\"clippy\",$tools"
|
||||
fi
|
||||
if use miri; then
|
||||
tools="\"miri\",$tools"
|
||||
fi
|
||||
if use rls; then
|
||||
tools="\"rls\",\"analysis\",\"src\",$tools"
|
||||
fi
|
||||
if use rustfmt; then
|
||||
tools="\"rustfmt\",$tools"
|
||||
fi
|
||||
|
||||
local rust_stage0_root
|
||||
if use system-bootstrap; then
|
||||
local printsysroot
|
||||
printsysroot="$(rustc --print sysroot || die "Can't determine rust's sysroot")"
|
||||
rust_stage0_root="${printsysroot}"
|
||||
else
|
||||
rust_stage0_root="${WORKDIR}"/rust-stage0
|
||||
fi
|
||||
# in case of prefix it will be already prefixed, as --print sysroot returns full path
|
||||
[[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory"
|
||||
|
||||
rust_target="$(rust_abi)"
|
||||
|
||||
cat <<- _EOF_ > "${S}"/config.toml
|
||||
changelog-seen = 2
|
||||
[llvm]
|
||||
download-ci-llvm = false
|
||||
optimize = $(toml_usex !debug)
|
||||
release-debuginfo = $(toml_usex debug)
|
||||
assertions = $(toml_usex debug)
|
||||
ninja = true
|
||||
targets = "${LLVM_TARGETS// /;}"
|
||||
experimental-targets = ""
|
||||
link-shared = $(toml_usex system-llvm)
|
||||
[build]
|
||||
build-stage = 2
|
||||
test-stage = 2
|
||||
doc-stage = 2
|
||||
build = "${rust_target}"
|
||||
host = ["${rust_target}"]
|
||||
target = [${rust_targets}]
|
||||
cargo = "${rust_stage0_root}/bin/cargo"
|
||||
rustc = "${rust_stage0_root}/bin/rustc"
|
||||
rustfmt = "${rust_stage0_root}/bin/rustfmt"
|
||||
docs = $(toml_usex doc)
|
||||
compiler-docs = false
|
||||
submodules = false
|
||||
python = "${EPYTHON}"
|
||||
locked-deps = true
|
||||
vendor = true
|
||||
extended = true
|
||||
tools = [${tools}]
|
||||
verbose = 2
|
||||
sanitizers = false
|
||||
profiler = false
|
||||
cargo-native-static = false
|
||||
[install]
|
||||
prefix = "${EPREFIX}/usr/lib/${PN}/${PV}"
|
||||
sysconfdir = "etc"
|
||||
docdir = "share/doc/rust"
|
||||
bindir = "bin"
|
||||
libdir = "lib"
|
||||
mandir = "share/man"
|
||||
[rust]
|
||||
# https://github.com/rust-lang/rust/issues/54872
|
||||
codegen-units-std = 1
|
||||
optimize = true
|
||||
debug = $(toml_usex debug)
|
||||
debug-assertions = $(toml_usex debug)
|
||||
debug-assertions-std = $(toml_usex debug)
|
||||
debuginfo-level = $(usex debug 2 0)
|
||||
debuginfo-level-rustc = $(usex debug 2 0)
|
||||
debuginfo-level-std = $(usex debug 2 0)
|
||||
debuginfo-level-tools = $(usex debug 2 0)
|
||||
debuginfo-level-tests = 0
|
||||
backtrace = true
|
||||
incremental = false
|
||||
default-linker = "$(tc-getCC)"
|
||||
parallel-compiler = $(toml_usex parallel-compiler)
|
||||
channel = "$(usex nightly nightly stable)"
|
||||
description = "gentoo"
|
||||
rpath = false
|
||||
verbose-tests = true
|
||||
optimize-tests = $(toml_usex !debug)
|
||||
codegen-tests = true
|
||||
dist-src = false
|
||||
remap-debuginfo = true
|
||||
lld = $(usex system-llvm false $(toml_usex wasm))
|
||||
# only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it
|
||||
# https://github.com/rust-lang/rust/issues/74976
|
||||
# https://github.com/rust-lang/rust/issues/76526
|
||||
deny-warnings = $(usex wasm $(usex doc false true) true)
|
||||
backtrace-on-ice = true
|
||||
jemalloc = false
|
||||
[dist]
|
||||
src-tarball = false
|
||||
compression-formats = ["gz"]
|
||||
_EOF_
|
||||
|
||||
for v in $(multilib_get_enabled_abi_pairs); do
|
||||
rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
|
||||
arch_cflags="$(get_abi_CFLAGS ${v##*.})"
|
||||
|
||||
cat <<- _EOF_ >> "${S}"/config.env
|
||||
CFLAGS_${rust_target}=${arch_cflags}
|
||||
_EOF_
|
||||
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
[target.${rust_target}]
|
||||
cc = "$(tc-getBUILD_CC)"
|
||||
cxx = "$(tc-getBUILD_CXX)"
|
||||
linker = "$(tc-getCC)"
|
||||
ar = "$(tc-getAR)"
|
||||
_EOF_
|
||||
# librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
|
||||
if use elibc_musl; then
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
crt-static = false
|
||||
_EOF_
|
||||
fi
|
||||
if use system-llvm; then
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
|
||||
_EOF_
|
||||
fi
|
||||
done
|
||||
if use wasm; then
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
[target.wasm32-unknown-unknown]
|
||||
linker = "$(usex system-llvm lld rust-lld)"
|
||||
_EOF_
|
||||
fi
|
||||
|
||||
if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below
|
||||
# experimental cross support
|
||||
# discussion: https://bugs.gentoo.org/679878
|
||||
# TODO: c*flags, clang, system-llvm, cargo.eclass target support
|
||||
# it would be much better if we could split out stdlib
|
||||
# complilation to separate ebuild and abuse CATEGORY to
|
||||
# just install to /usr/lib/rustlib/<target>
|
||||
|
||||
# extra targets defined as a bash array
|
||||
# spec format: <LLVM target>:<rust-target>:<CTARGET>
|
||||
# best place would be /etc/portage/env/dev-lang/rust
|
||||
# Example:
|
||||
# RUST_CROSS_TARGETS=(
|
||||
# "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu"
|
||||
# )
|
||||
# no extra hand holding is done, no target transformations, all
|
||||
# values are passed as-is with just basic checks, so it's up to user to supply correct values
|
||||
# valid rust targets can be obtained with
|
||||
# rustc --print target-list
|
||||
# matching cross toolchain has to be installed
|
||||
# matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one)
|
||||
# only gcc toolchains installed with crossdev are checked for now.
|
||||
|
||||
# BUG: we can't pass host flags to cross compiler, so just filter for now
|
||||
# BUG: this should be more fine-grained.
|
||||
filter-flags '-mcpu=*' '-march=*' '-mtune=*'
|
||||
|
||||
local cross_target_spec
|
||||
for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do
|
||||
# extracts first element form <LLVM target>:<rust-target>:<CTARGET>
|
||||
local cross_llvm_target="${cross_target_spec%%:*}"
|
||||
# extracts toolchain triples, <rust-target>:<CTARGET>
|
||||
local cross_triples="${cross_target_spec#*:}"
|
||||
# extracts first element after before : separator
|
||||
local cross_rust_target="${cross_triples%%:*}"
|
||||
# extracts last element after : separator
|
||||
local cross_toolchain="${cross_triples##*:}"
|
||||
use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled"
|
||||
command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain"
|
||||
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
[target.${cross_rust_target}]
|
||||
cc = "${cross_toolchain}-gcc"
|
||||
cxx = "${cross_toolchain}-g++"
|
||||
linker = "${cross_toolchain}-gcc"
|
||||
ar = "${cross_toolchain}-ar"
|
||||
_EOF_
|
||||
if use system-llvm; then
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
|
||||
_EOF_
|
||||
fi
|
||||
if [[ "${cross_toolchain}" == *-musl* ]]; then
|
||||
cat <<- _EOF_ >> "${S}"/config.toml
|
||||
musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr"
|
||||
_EOF_
|
||||
fi
|
||||
|
||||
# append cross target to "normal" target list
|
||||
# example 'target = ["powerpc64le-unknown-linux-gnu"]'
|
||||
# becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]'
|
||||
|
||||
rust_targets="${rust_targets},\"${cross_rust_target}\""
|
||||
sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" config.toml || die
|
||||
|
||||
ewarn
|
||||
ewarn "Enabled ${cross_rust_target} rust target"
|
||||
ewarn "Using ${cross_toolchain} cross toolchain"
|
||||
ewarn
|
||||
if ! has_version -b 'sys-devel/binutils[multitarget]' ; then
|
||||
ewarn "'sys-devel/binutils[multitarget]' is not installed"
|
||||
ewarn "'strip' will be unable to strip cross libraries"
|
||||
ewarn "cross targets will be installed with full debug information"
|
||||
ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files"
|
||||
ewarn
|
||||
ewarn "Alternatively llvm-strip can be used, it supports stripping any target"
|
||||
ewarn "define STRIP=\"llvm-strip\" to use it (experimental)"
|
||||
ewarn
|
||||
fi
|
||||
done
|
||||
fi # I_KNOW_WHAT_I_AM_DOING_CROSS
|
||||
|
||||
einfo "Rust configured with the following flags:"
|
||||
echo
|
||||
echo RUSTFLAGS="${RUSTFLAGS:-}"
|
||||
echo RUSTFLAGS_BOOTSTRAP="${RUSTFLAGS_BOOTSTRAP:-}"
|
||||
echo RUSTFLAGS_NOT_BOOTSTRAP="${RUSTFLAGS_NOT_BOOTSTRAP:-}"
|
||||
env | grep "CARGO_TARGET_.*_RUSTFLAGS="
|
||||
cat "${S}"/config.env || die
|
||||
echo
|
||||
einfo "config.toml contents:"
|
||||
cat "${S}"/config.toml || die
|
||||
echo
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# we need \n IFS to have config.env with spaces loaded properly. #734018
|
||||
(
|
||||
IFS=$'\n'
|
||||
env $(cat "${S}"/config.env) RUST_BACKTRACE=1\
|
||||
"${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
|
||||
)
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# https://rustc-dev-guide.rust-lang.org/tests/intro.html
|
||||
|
||||
# those are basic and codegen tests.
|
||||
local tests=(
|
||||
codegen
|
||||
codegen-units
|
||||
compile-fail
|
||||
incremental
|
||||
mir-opt
|
||||
pretty
|
||||
run-make
|
||||
)
|
||||
|
||||
# fails if llvm is not built with ALL targets.
|
||||
# and known to fail with system llvm sometimes.
|
||||
use system-llvm || tests+=( assembly )
|
||||
|
||||
# fragile/expensive/less important tests
|
||||
# or tests that require extra builds
|
||||
# TODO: instead of skipping, just make some nonfatal.
|
||||
if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then
|
||||
tests+=(
|
||||
rustdoc
|
||||
rustdoc-js
|
||||
rustdoc-js-std
|
||||
rustdoc-ui
|
||||
run-make-fulldeps
|
||||
ui
|
||||
ui-fulldeps
|
||||
)
|
||||
fi
|
||||
|
||||
local i failed=()
|
||||
einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}"
|
||||
for i in "${tests[@]}"; do
|
||||
local t="src/test/${i}"
|
||||
einfo "rust_src_test: running ${t}"
|
||||
if ! (
|
||||
IFS=$'\n'
|
||||
env $(cat "${S}"/config.env) RUST_BACKTRACE=1 \
|
||||
"${EPYTHON}" ./x.py test -vv --config="${S}"/config.toml \
|
||||
-j$(makeopts_jobs) --no-doc --no-fail-fast "${t}"
|
||||
)
|
||||
then
|
||||
failed+=( "${t}" )
|
||||
eerror "rust_src_test: ${t} failed"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ ${#failed[@]} -ne 0 ]]; then
|
||||
eerror "rust_src_test: failure summary: ${failed[@]}"
|
||||
die "aborting due to test failures"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
(
|
||||
IFS=$'\n'
|
||||
env $(cat "${S}"/config.env) DESTDIR="${D}" \
|
||||
"${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
|
||||
)
|
||||
|
||||
# bug #689562, #689160
|
||||
rm -v "${ED}/usr/lib/${PN}/${PV}/etc/bash_completion.d/cargo" || die
|
||||
rmdir -v "${ED}/usr/lib/${PN}/${PV}"/etc{/bash_completion.d,} || die
|
||||
newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo
|
||||
|
||||
local symlinks=(
|
||||
cargo
|
||||
rustc
|
||||
rustdoc
|
||||
rust-gdb
|
||||
rust-gdbgui
|
||||
rust-lldb
|
||||
)
|
||||
|
||||
use clippy && symlinks+=( clippy-driver cargo-clippy )
|
||||
use miri && symlinks+=( miri cargo-miri )
|
||||
use rls && symlinks+=( rls )
|
||||
use rustfmt && symlinks+=( rustfmt cargo-fmt )
|
||||
|
||||
einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}"
|
||||
local i
|
||||
for i in "${symlinks[@]}"; do
|
||||
# we need realpath on /usr/bin/* symlink return version-appended binary path.
|
||||
# so /usr/bin/rustc should point to /usr/lib/rust/<ver>/bin/rustc-<ver>
|
||||
# need to fix eselect-rust to remove this hack.
|
||||
local ver_i="${i}-${PV}"
|
||||
if [[ -f "${ED}/usr/lib/${PN}/${PV}/bin/${i}" ]]; then
|
||||
einfo "Installing ${i} symlink"
|
||||
ln -v "${ED}/usr/lib/${PN}/${PV}/bin/${i}" "${ED}/usr/lib/${PN}/${PV}/bin/${ver_i}" || die
|
||||
else
|
||||
ewarn "${i} symlink requested, but source file not found"
|
||||
ewarn "please report this"
|
||||
fi
|
||||
dosym "../lib/${PN}/${PV}/bin/${ver_i}" "/usr/bin/${ver_i}"
|
||||
done
|
||||
|
||||
# symlinks to switch components to active rust in eselect
|
||||
dosym "${PV}/lib" "/usr/lib/${PN}/lib-${PV}"
|
||||
dosym "${PV}/libexec" "/usr/lib/${PN}/libexec-${PV}"
|
||||
dosym "${PV}/share/man" "/usr/lib/${PN}/man-${PV}"
|
||||
dosym "rust/${PV}/lib/rustlib" "/usr/lib/rustlib-${PV}"
|
||||
dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}"
|
||||
|
||||
newenvd - "50${P}" <<-_EOF_
|
||||
LDPATH="${EPREFIX}/usr/lib/rust/lib"
|
||||
MANPATH="${EPREFIX}/usr/lib/rust/man"
|
||||
$(use amd64 && usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
|
||||
$(use arm64 && usex elibc_musl 'CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
|
||||
_EOF_
|
||||
|
||||
rm -rf "${ED}/usr/lib/${PN}/${PV}"/*.old || die
|
||||
rm -rf "${ED}/usr/lib/${PN}/${PV}/doc"/*.old || die
|
||||
|
||||
# note: eselect-rust adds EROOT to all paths below
|
||||
cat <<-_EOF_ > "${T}/provider-${P}"
|
||||
/usr/bin/cargo
|
||||
/usr/bin/rustdoc
|
||||
/usr/bin/rust-gdb
|
||||
/usr/bin/rust-gdbgui
|
||||
/usr/bin/rust-lldb
|
||||
/usr/lib/rustlib
|
||||
/usr/lib/rust/lib
|
||||
/usr/lib/rust/libexec
|
||||
/usr/lib/rust/man
|
||||
/usr/share/doc/rust
|
||||
_EOF_
|
||||
|
||||
if use clippy; then
|
||||
echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
|
||||
echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
|
||||
fi
|
||||
if use miri; then
|
||||
echo /usr/bin/miri >> "${T}/provider-${P}"
|
||||
echo /usr/bin/cargo-miri >> "${T}/provider-${P}"
|
||||
fi
|
||||
if use rls; then
|
||||
echo /usr/bin/rls >> "${T}/provider-${P}"
|
||||
fi
|
||||
if use rustfmt; then
|
||||
echo /usr/bin/rustfmt >> "${T}/provider-${P}"
|
||||
echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
|
||||
fi
|
||||
|
||||
insinto /etc/env.d/rust
|
||||
doins "${T}/provider-${P}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
eselect rust update
|
||||
|
||||
if has_version sys-devel/gdb || has_version dev-util/lldb; then
|
||||
elog "Rust installs a helper script for calling GDB and LLDB,"
|
||||
elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
|
||||
fi
|
||||
|
||||
if has_version app-editors/emacs; then
|
||||
elog "install app-emacs/rust-mode to get emacs support for rust."
|
||||
fi
|
||||
|
||||
if has_version app-editors/gvim || has_version app-editors/vim; then
|
||||
elog "install app-vim/rust-vim to get vim support for rust."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect rust cleanup
|
||||
}
|
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST crc32c-1.0.6.tar.gz 29596 BLAKE2B 5806e0a48cb3048c9b07abb75eb232491483176bbeb98bc11ad1b0ef7d4ce89929ad20b0354906fd67e8773541f9913f3948f1db9a3f3987fe7e2ca67e9d2467 SHA512 c30f6510d6348f15dcdddc06e375f21a69681cd615483d67628b32de747e5e98200fa49faf7e3fc30a1302991fd1f9c9a706c9eb4e13c9c6c09e74066474ea7b
|
||||
DIST crc32c-1.1.1.tar.gz 29829 BLAKE2B 5ffb0809e80d1fad81a77d96683d44142a7d84fc15ce18070cdcdb12fd9b67f7ec732a53d8af7dc4b77add859bf64c4fa8bc52a593830de931a7bd12c60498cc SHA512 c276160ec960a38cd535c998336472694819bc6eb37beb711bd43a31441d1808c8a14d3a1f0eccc780785b19f739a4a51f923867a20b0707c465e0cc03f457e9
|
||||
DIST crc32c-1.1.2.tar.gz 29819 BLAKE2B f48720e632b6a4aaab9591651ed92b268bc8fc5faacb01888094af86ecc9dec901be6edc419c534aebf94ade5a2ce2347c0ff2962ba57c62627d6d7c420fc23b SHA512 6325c52b5a6850b9f90086e0c0c86798c008af36e7cfd3a0216184a2d37b3bf7323481ddc6bfe4cbd5b31288b3ee6c69772d03085a13094cf95d00a9756a7196
|
||||
|
@ -0,0 +1,39 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="CRC32C implementation with support for CPU-specific acceleration instructions"
|
||||
HOMEPAGE="https://github.com/google/crc32c"
|
||||
SRC_URI="https://github.com/google/crc32c/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="test? ( dev-cpp/gtest )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.1.1-system-testdeps.patch"
|
||||
)
|
||||
|
||||
DOCS=( README.md )
|
||||
|
||||
src_prepare() {
|
||||
sed -e '/-Werror/d' -i CMakeLists.txt || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCRC32C_BUILD_TESTS=$(usex test)
|
||||
-DCRC32C_BUILD_BENCHMARKS=OFF
|
||||
-DCRC32C_USE_GLOG=OFF
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake
|
||||
|
||||
MY_PN="${PN/intel-/}"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="Intel Graphics Compute Runtime for oneAPI Level Zero and OpenCL Driver"
|
||||
HOMEPAGE="https://github.com/intel/compute-runtime"
|
||||
SRC_URI="https://github.com/intel/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64"
|
||||
IUSE="+l0 +vaapi"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/libnl:3
|
||||
dev-libs/libxml2:2
|
||||
>=dev-util/intel-graphics-compiler-1.0.8517-r1
|
||||
>=dev-util/intel-graphics-system-controller-0.2.3
|
||||
>=media-libs/gmmlib-21.2.1
|
||||
>=virtual/opencl-3
|
||||
l0? ( >=dev-libs/level-zero-1.4.1 )
|
||||
vaapi? (
|
||||
x11-libs/libdrm[video_cards_intel]
|
||||
x11-libs/libva
|
||||
)
|
||||
"
|
||||
|
||||
# for Khronos OpenGL headers
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
media-libs/mesa
|
||||
"
|
||||
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
DOCS=( "README.md" "FAQ.md" )
|
||||
|
||||
PATCHES=( "${FILESDIR}/${PN}-21.31.20514-no_Werror.patch" )
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_WITH_L0="$(usex l0)"
|
||||
-DDISABLE_LIBVA="$(usex !vaapi)"
|
||||
-DKHRONOS_GL_HEADERS_DIR="${ESYSROOT}/usr/include"
|
||||
-DOCL_ICD_VENDORDIR="${EPREFIX}/etc/OpenCL/vendors"
|
||||
|
||||
# If enabled, tests are automatically run during
|
||||
# the compile phase and we cannot run them because
|
||||
# they require permissions to access the hardware.
|
||||
-DSKIP_UNIT_TESTS="ON"
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
@ -1,4 +1,3 @@
|
||||
DIST libinput-1.18.0.tar.xz 616732 BLAKE2B 4f12080b5e3496fdb5ccb1375a073860c26037ba47033a7d2d69a2f817b4ab5791aa89be08b193925cddd566a04144c73399cbb196a4cc9d3e07dcfb806d3eff SHA512 9a834f075d7a1f892416bb6b241eb052f749d3aa883c4b39c0f1c9616c115d6b9a541b587508646fddaf0d3fe57af92fe4629b522d1d51196499e7b523e0aa90
|
||||
DIST libinput-1.18.1.tar.xz 618524 BLAKE2B 17c5959b6319838dc65f6df7c532d8e048b0295d20178e636dcb3d7a0418f7c107ffc34f280ac0da66011cc80fb8e9f0881b5edd6a4fb64fb674dff6bb5b4526 SHA512 450e38c0f8245aa0165a8047d25aebee646332f0f2ed442bb2d1bd3e723c2082b6d00d6e3bda308981ece8e29b5cddbd56eab900d2b7497705a45fc27b281828
|
||||
DIST libinput-1.19.0.tar.xz 654308 BLAKE2B 6942e704881360724d02f94a9ab87b90c350d16c28305af796a55eed67665cb4c4cbf035a0aaa085ccfc0027bb1936e722bf43dea53dee1c80b2376859dfba9f SHA512 daf42ce797f2b5aef8d6f7a5c0d967590581e6ac12c26fa6bde5fbc619d75319e39ca55d65d5347e554dd6a48b91f5fed4d3167eabef8ad1ebc43bc0c3e8e220
|
||||
DIST libinput-1.19.1.tar.xz 654600 BLAKE2B fb1c26874e29fc12d5259b00e0790d65584c8128cc7dc0abf3b094abfef5f26a45fb06142fdad3cef13774d6bc9a99a50636e9745270a4113e76e3ba5b6bad0f SHA512 63084f5e081ee4918fee8584d99e6feb84ce9b771015c556c930843e0097abb9b93b6f9731c488b8493eac18fa4086f4822a2ed00f3cb3258346341ad0061c36
|
||||
DIST libinput-1.19.2.tar.xz 654924 BLAKE2B b55d34186bba3d4956d7308594acd0928b7bc575c34b8c53ee95780887beccd141804e278cd1ea6c8fb48d064bde9c95c26c6613d6169dfa4e7ccdd64a50d3e3 SHA512 fc5244dc90ceb710f7b5bb76a3cafc7dd5a8d5fa05c51122412615bfc3a99435d6a1017b79c3ce73561139fc2f5959acaf16cb9500796ea2f3eb6cb95d1a1acb
|
||||
|
@ -1,88 +0,0 @@
|
||||
# Copyright 2014-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
PYTHON_COMPAT=( python3_{7,8,9} )
|
||||
|
||||
inherit meson python-any-r1 udev
|
||||
|
||||
DESCRIPTION="Library to handle input devices in Wayland"
|
||||
HOMEPAGE="https://www.freedesktop.org/wiki/Software/libinput/ https://gitlab.freedesktop.org/libinput/libinput"
|
||||
SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/10"
|
||||
[[ "$(ver_cut 3)" -gt 900 ]] || \
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="doc input_devices_wacom test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
$(python_gen_any_dep '
|
||||
dev-python/commonmark[${PYTHON_USEDEP}]
|
||||
dev-python/recommonmark[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinx_rtd_theme-0.2.4[${PYTHON_USEDEP}]
|
||||
')
|
||||
>=app-doc/doxygen-1.8.3
|
||||
>=media-gfx/graphviz-2.38.0
|
||||
)
|
||||
"
|
||||
# test? ( dev-util/valgrind )
|
||||
RDEPEND="
|
||||
input_devices_wacom? ( >=dev-libs/libwacom-0.20 )
|
||||
>=dev-libs/libevdev-1.3
|
||||
>=sys-libs/mtdev-1.1
|
||||
virtual/libudev:=
|
||||
virtual/udev
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( >=dev-libs/check-0.9.10 )"
|
||||
|
||||
python_check_deps() {
|
||||
has_version "dev-python/commonmark[${PYTHON_USEDEP}]" && \
|
||||
has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" && \
|
||||
has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && \
|
||||
has_version ">=dev-python/sphinx_rtd_theme-0.2.4[${PYTHON_USEDEP}]"
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use doc && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed "s@, '-Werror'@@" -i meson.build || die #744250
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# gui can be built but will not be installed
|
||||
local emesonargs=(
|
||||
-Ddebug-gui=false
|
||||
$(meson_use doc documentation)
|
||||
$(meson_use input_devices_wacom libwacom)
|
||||
$(meson_use test tests)
|
||||
-Dudev-dir="${EPREFIX}$(get_udevdir)"
|
||||
)
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
meson_src_install
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc -r "${BUILD_DIR}"/Documentation/.
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
pkgname="dev-python/python-libevdev"
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]] && ! has_version "${pkgname}" ; then
|
||||
einfo "${pkgname} must be installed to use the"
|
||||
einfo "libinput measure and libinput replay tools."
|
||||
fi
|
||||
|
||||
udevadm hwdb --update --root="${ROOT}"
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools
|
||||
|
||||
DESCRIPTION="Liblogging is an easy to use, portable, open source library for system logging"
|
||||
HOMEPAGE="http://www.liblogging.org"
|
||||
SRC_URI="http://download.rsyslog.com/liblogging/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0/0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
|
||||
IUSE="rfc3195 stdlog systemd"
|
||||
|
||||
RDEPEND="systemd? ( sys-apps/systemd )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
DOCS=( ChangeLog )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_enable rfc3195)
|
||||
$(use_enable stdlog)
|
||||
$(use_enable systemd journal)
|
||||
--disable-static
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
@ -1,3 +1,5 @@
|
||||
DIST simdjson-0.9.7.tar.gz 7956250 BLAKE2B 2fa04be699eb5573ac17db9b476ded1853cfe45c0993c9303b70bfd0e8e4343b69e4a02f21dac35d2c0255826bfedf41123fd635d36d48a08f74b28b5a6536ce SHA512 6f4ad854adc2b932f9926610cdd28ddda7fc1776b84a224adb5b337f81c92721bd11c8ab180897117891cdefe9c1ef14b9f062c9a1a2ebc5b5582c29cb656bf0
|
||||
DIST simdjson-1.0.0.tar.gz 1546728 BLAKE2B 6b70416404776b4fcc30cd3ab07b8048899bbe3497af779504a685bc2459424e82bd40bf100d7ed8ccfa05e871a0a1edd9eebd11294cdc3d1780797d7f79ba1e SHA512 dbf8abfeec5c079f4d87e8bf31d1af27601f7f0578ebb8ad28a25f496b4b771b68a75f9a11f61706c539d54c36a493a2d2819bd15427c3b7f7a0b36811177f17
|
||||
DIST simdjson-1.0.1.tar.gz 1550947 BLAKE2B a04828cc72192584c36a37bb57bc788271ffdd7c2fb31d044ff4aec57c1f1a18e5cb65171e1f6228d4aa98eddf25820cb52eaa28ea3b70903ffc83ffd36bcf02 SHA512 ecf67b145f1269225483a64b5ff9de826a8124fbae60dec1e6fe99aa974a29e07037a9318ae2dfc657971695ffa5e4fbcdff4c855365c074971d34c69dd77561
|
||||
DIST simdjson-data-1.0.0.tar.gz 6635706 BLAKE2B 563376147f18d590a176a5a0398365db1a3e677b773c018f335efa7fff05ac22ac5dc37613792082a32e6c9b91a773a590f7dfd15efa5ba660f9142b128b28a7 SHA512 168198404b11b8c76ff4f53645d7b5a88a5c72b4a5b6646b4410859ec3416ae9b37fc59f7d2f014ccc785615ea5c31dc00b145dbb1a7acb701b94029dd4ea1e1
|
||||
DIST simdjson-data-1.0.1.tar.gz 6635706 BLAKE2B 563376147f18d590a176a5a0398365db1a3e677b773c018f335efa7fff05ac22ac5dc37613792082a32e6c9b91a773a590f7dfd15efa5ba660f9142b128b28a7 SHA512 168198404b11b8c76ff4f53645d7b5a88a5c72b4a5b6646b4410859ec3416ae9b37fc59f7d2f014ccc785615ea5c31dc00b145dbb1a7acb701b94029dd4ea1e1
|
||||
|
@ -0,0 +1,86 @@
|
||||
# Copyright 2020-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit toolchain-funcs cmake
|
||||
|
||||
DATA_HASH="a5b13babe65c1bba7186b41b43d4cbdc20a5c470"
|
||||
DESCRIPTION="SIMD accelerated C++ JSON library"
|
||||
HOMEPAGE="
|
||||
https://simdjson.org/
|
||||
https://github.com/simdjson/simdjson
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
test? ( https://github.com/${PN}/${PN}-data/archive/${DATA_HASH}.tar.gz -> ${PN}-data-${PV}.tar.gz )
|
||||
"
|
||||
|
||||
LICENSE="Apache-2.0 Boost-1.0 BSD MIT"
|
||||
SLOT="0/9"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
|
||||
IUSE="test tools"
|
||||
|
||||
BDEPEND="
|
||||
sys-apps/file
|
||||
sys-apps/findutils
|
||||
sys-apps/grep
|
||||
"
|
||||
DEPEND="
|
||||
tools? ( dev-libs/cxxopts:= )
|
||||
"
|
||||
|
||||
REQUIRED_USE="test? ( tools )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/simdjson-1.0.0-dont-bundle-cxxopts.patch"
|
||||
"${FILESDIR}/simdjson-0.9.0-tests.patch"
|
||||
"${FILESDIR}/simdjson-1.0.0-dont-fetch-data-tarball.patch"
|
||||
"${FILESDIR}/simdjson-1.0.0-install-tools.patch"
|
||||
"${FILESDIR}/simdjson-1.0.0-tests.patch"
|
||||
)
|
||||
|
||||
DOCS=(
|
||||
AUTHORS
|
||||
CONTRIBUTING.md
|
||||
CONTRIBUTORS
|
||||
HACKING.md
|
||||
README.md
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if use test; then
|
||||
mv "${WORKDIR}/${PN}-data-${DATA_HASH}" "${S}/dependencies/${PN}-data" || die
|
||||
fi
|
||||
|
||||
sed -e 's:-Werror ::' -i cmake/developer-options.cmake || die
|
||||
sed -e "s:^c++ :$(tc-getCXX) :" -i singleheader/README.md || die
|
||||
mv tools/{,simd}jsonpointer.cpp || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a mycmakeargs=(
|
||||
-DSIMDJSON_ENABLE_THREADS=ON
|
||||
)
|
||||
use test && mycmakeargs+=(
|
||||
-DSIMDJSON_TESTS=ON
|
||||
)
|
||||
|
||||
if use tools; then
|
||||
mycmakeargs+=(
|
||||
-DSIMDJSON_DEVELOPER_MODE=ON
|
||||
-DSIMDJSON_ALLOW_DOWNLOADS=OFF
|
||||
-DSIMDJSON_GOOGLE_BENCHMARKS=OFF
|
||||
-DSIMDJSON_COMPETITION=OFF
|
||||
-DSIMDJSON_TOOLS=ON
|
||||
)
|
||||
elif ! use test; then
|
||||
mycmakeargs+=(
|
||||
-DSIMDJSON_DEVELOPER_MODE=OFF
|
||||
)
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
@ -0,0 +1 @@
|
||||
DIST tree-sitter-bash-0.19.0.tar.gz 187286 BLAKE2B 8812a593366a65a9cae3eaac5bb81c71e95f4abe8558a01b908333e471f05714b1c768b71e66d3890d1e63202819290813e499a5e8ba49e72bb466b9b0f245f8 SHA512 62bc8bc25c999f9c79632bd6b236edd21ef15b14365dd1a956237b11a32f5e60a2f420ec67b60d46203699b7841d4bc10978fc0307d0c4013b376c6c024d89ae
|
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>matt@offtopica.uk</email>
|
||||
<name>Matthew Smith</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" proxied="proxy">
|
||||
<email>sarnex@gentoo.org</email>
|
||||
<name>Nick Sarnie</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">tree-sitter/tree-sitter-bash</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,13 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit tree-sitter-grammar
|
||||
|
||||
DESCRIPTION="Bash grammar for Tree-sitter"
|
||||
HOMEPAGE="https://github.com/tree-sitter/tree-sitter-bash"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
@ -0,0 +1 @@
|
||||
DIST tree-sitter-c-0.20.1.tar.gz 244061 BLAKE2B 94cb11c80fd54a89b3c6c3ebc7937fdaa077a11c5128866e0e43c970bacc3b7f14743b3f19ceca515ef70d4499d2d3893fce6d948ce9a42bf2f499c58844a8da SHA512 b2f5b6d54fe05e7706708b50a5dd821a5669a121c916da4de3f80b6c57ebdd99f12f37c80051a8719f9737d4b0c00542aee62b45823dbb878acd4e02974f7a67
|
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>matt@offtopica.uk</email>
|
||||
<name>Matthew Smith</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" proxied="proxy">
|
||||
<email>sarnex@gentoo.org</email>
|
||||
<name>Nick Sarnie</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">tree-sitter/tree-sitter-c</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,13 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit tree-sitter-grammar
|
||||
|
||||
DESCRIPTION="C grammar for Tree-sitter"
|
||||
HOMEPAGE="https://github.com/tree-sitter/tree-sitter-c"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
@ -0,0 +1 @@
|
||||
DIST tree-sitter-cpp-0.19.0.tar.gz 474622 BLAKE2B 4bfadb81913c936bef9f3a3d743b61d2ef1da51c22034a9e98ac2807b9175963cc62450f2da8d8b48163b0e4c8695fd98b0ccf6a8f9579bb2347f3bb6302f3a7 SHA512 0347b6d8c677041c93a6558b9772ff02e71bc9300a908e9a2319d1db90fd50405b51003a4ed7314b71b7d5b1bbfc7fbaaaeba11265ebb6c094236d06e9776621
|
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>matt@offtopica.uk</email>
|
||||
<name>Matthew Smith</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" proxied="proxy">
|
||||
<email>sarnex@gentoo.org</email>
|
||||
<name>Nick Sarnie</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">tree-sitter/tree-sitter-cpp</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,13 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit tree-sitter-grammar
|
||||
|
||||
DESCRIPTION="C++ grammar for Tree-sitter"
|
||||
HOMEPAGE="https://github.com/tree-sitter/tree-sitter-cpp"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
@ -0,0 +1 @@
|
||||
DIST tree-sitter-css-0.19.0.tar.gz 80823 BLAKE2B 5a011981bea8dca3ea51d3615c88eeefb2e0dafae52a947b58a930f9521cfd5759ff22812d4f49283453cc86f52372a798dd507b1982fb55dba086156a5842fb SHA512 8811118f8506ae6cc25bf30285361b751902cd4af9d25cd64eccacd1721cacd8b66277c7c950c825fe6e72ac3155dbd39c24ee94090faaae9ee8b67ce61fc1c4
|
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>matt@offtopica.uk</email>
|
||||
<name>Matthew Smith</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" proxied="proxy">
|
||||
<email>sarnex@gentoo.org</email>
|
||||
<name>Nick Sarnie</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">tree-sitter/tree-sitter-css</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,13 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit tree-sitter-grammar
|
||||
|
||||
DESCRIPTION="CSS grammar for Tree-sitter"
|
||||
HOMEPAGE="https://github.com/tree-sitter/tree-sitter-css"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
@ -0,0 +1 @@
|
||||
DIST tree-sitter-go-0.19.1.tar.gz 160180 BLAKE2B f92bbb342eae3a7705dbd6f6564a16fdbad1a25c405970bca1e8df01ff6d0c20b45f9849a0d13d53e2f56d95b71db0f7813765f64e0dcdfd9ca617d1f71e688d SHA512 8390dd3e39daa42ec5254b4c6c0b15fec0caa7ae64a9ec3b9116a10f9e9f1b6940cd88c8cf14dc50b28b97ea588ff302ebd16f3c88e0bd6983e76b5526a31b45
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue