parent
8423fcb7b4
commit
93085fd58c
Binary file not shown.
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST lziprecover-1.20.tar.gz 102574 BLAKE2B 2b8a1d30d9094655d14978d935755083e4ce1168565745cd412cc56d110261a34afc335882e0e74edc7c87843f24698f6834395056381dbb170b229b68be4da8 SHA512 cb036869bc2bccd6ee56793ced03a4ce8556e6da1e2840934f12f2b9e1d9a9362c66c40483c061e7c3f817e739e4ed6488bd964b03c031b7c26cc99c2ee24867
|
||||
DIST lziprecover-1.21.tar.gz 112895 BLAKE2B b758f863498caea7873358b5f64eab4d5dfa37b43eb875824475387a7fd89e63721384207c014d662a9a6fa4e9a094f1a3c5fb9c1680d235382873f456f0dad3 SHA512 4afd3ce319bacdd1870512af5568179c0d472f354b1e1562a54c527a37903ce3f0f0044abf273ecb113a555cc7a33ac343f5dbfb26fa29df9b24ecc9768e4ed5
|
||||
|
@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="Lziprecover is a data recovery tool and decompressor for lzip compressed files"
|
||||
HOMEPAGE="http://www.nongnu.org/lzip/lziprecover.html"
|
||||
SRC_URI="http://download.savannah.gnu.org/releases/lzip/${PN}/${P/_/-}.tar.gz
|
||||
http://download.savannah.gnu.org/releases-noredirect/lzip/${PN}/${P/_/-}.tar.gz"
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
S="${WORKDIR}/${P/_/-}"
|
||||
|
||||
src_configure() {
|
||||
# not autotools-based
|
||||
./configure \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
CXX="$(tc-getCXX)" \
|
||||
CPPFLAGS="${CPPFLAGS}" \
|
||||
CXXFLAGS="${CXXFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}" || die
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,5 +1,4 @@
|
||||
DIST magit-2.11.0.tar.gz 451030 BLAKE2B e5a5301d720e927c6c81aca4c5572a9a7fda938c695738246a87c46adc00a13e94438bb18d5f33e796c798cfec7dc438632cac6e4a452cff7d6e899a67f33575 SHA512 d32abdc9e89e77f65f05cc3dbec720320bc93d9ae827604c4f90acd115e76f8d05e445a96a141fbfbe88cdacca8383615fb73bddf01e776eeb3f63a459e973b6
|
||||
DIST magit-2.12.1.tar.gz 505873 BLAKE2B 076d9c08d3cb80274f5a6259ea5593ed419a0e140cda26bc65dc0c843373dcac1627d6bf098c5bdd9f0efb6b40ff3d7b823ed328b713390ea8916303b77ffd27 SHA512 7755aea8e7d9f0b82099143a76334be4c468536bdc0becad71acc097d9cef123394144b321f30093e079fef89e30ed1e5037fc92052ba9742112a30c6d3d586e
|
||||
DIST magit-2.13.0.tar.gz 519614 BLAKE2B 4bf1eeb8db563acd69ed65ec462f9436601c042e5ecceb2c899a920dc5710f544a9218c647fddc76ca265401f0027cd67f4de0155c3f79792f8e2f46d6fb4371 SHA512 4b840e2cf4b0fd2c5bb43c70766c6675c7e0adfc9cc7eac9f35bb9632e1eb03242dbe55870bd40436b49e9f333f00dfd361bcc63fc70c3a3a2a6b3e3e64f33a7
|
||||
DIST magit-2.13.1.tar.gz 520271 BLAKE2B fdffa561dccaafc2be56bf285e286859145e00f5037c99b5ab1ee50c9895eee56dbe8a5470e3a148e0150367bf92ed1c7cee4a35662f5c0bed0e4e7a2d49638c SHA512 f9f796fd6840788cebff62b316a0a1d708736e7a6962cd34d8ea86e94fb5a55c9e25f9aace17bceec199b2b931a0d5e586c4ab7d189c64ec6e5a9e42d041b269
|
||||
DIST magit-2.90.1.tar.gz 544968 BLAKE2B d3a38cf8c4d8c15529463028c4f6718d65bff044f91f58f2027c62d584202835d17229ec1db93d2990b5bb59403eabf7f12e7e91e2de519149ad40c274da5f25 SHA512 57a81fc72276907009fd3d05abbaed930d089d3e4621d539abb6ce2b24fd594950533f47d60682e25f0bd1c9f1ab3a16ba6b2698d79c6980f250ffd335be7789
|
||||
|
@ -1,34 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
NEED_EMACS=24
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="A Git porcelain inside Emacs"
|
||||
HOMEPAGE="https://magit.vc/"
|
||||
SRC_URI="https://github.com/magit/magit/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
S="${WORKDIR}/${P}/lisp"
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
ELISP_TEXINFO="../Documentation/*.texi"
|
||||
DOCS="../README.md ../Documentation/AUTHORS.md ../Documentation/RelNotes/${PV}.txt"
|
||||
|
||||
DEPEND="
|
||||
>=app-emacs/dash-2.14.1
|
||||
>=app-emacs/ghub-2.0.1
|
||||
>=app-emacs/magit-popup-2.12.3
|
||||
>=app-emacs/with-editor-2.7.3
|
||||
"
|
||||
RDEPEND="${DEPEND} >=dev-vcs/git-1.9.4"
|
||||
DEPEND="${DEPEND} sys-apps/texinfo"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
echo "(setq magit-version \"${PV}\")" > magit-version.el || die
|
||||
}
|
Binary file not shown.
@ -1,4 +1,3 @@
|
||||
DIST docker-18.03.1.tar.gz 12758590 BLAKE2B 98213af07b945fda536e321ef5cc9e272848aab97dcadb7a6b1433b9310fa78015794b5ee4f255448251366a7811e97248b9cc90b0225c528249188768f344ab SHA512 48c4916421cd500ada1bfc2207123a29870939a15a1c7c4a0c082f61c1e3e063381e2345ee9df645dbaca49e002dbfaba70cf6fe233b39a4e1f44fb015807e10
|
||||
DIST docker-18.06.1.tar.gz 13672693 BLAKE2B 7aed2f409914471b3e0eec4f3d024bf59e6505060c1da9c4bb68f0d6efdb5286a8e9e5ee0de19b3f0165c965db27d409f72fceb3f792fc91b9b8dddc8a2b01f0 SHA512 7375452669bf6576e1f8d193cd7f421cf39a26d575351f2b4e433c7fc89384f441547417dbe8c12a12a0937c9fea3800b5c541f0ba8b58ceffe7445183ceeef1
|
||||
DIST docker-18.09.0.tar.gz 15196102 BLAKE2B 99b791da6351268ccd54424f1ec1d0b1246d7283e5bf8f41f604f0437202a0c494f7017d68c58f01782eea8539fcc189c290f494125878eb3ca368f3d8cdd57d SHA512 a6173d9e2dde33c6059b3464720207a3bc0f4d6d79af65ad10cd30b4b437134ad45fc2039cebcaa41b2dfb68a21963010d63a4051ade6a6d25fcd93c8d560c67
|
||||
DIST docker-18.09.1.tar.gz 15247155 BLAKE2B 5c9a6c0d6e383da2b99341812b0cc1d1498e46decc3b3aaa418607d5f4d725a6842a4462c06357685a32312b90978b0349aaceb69907324761589e68cfae7bca SHA512 9813d3bd41eff63a089495a976226b93d5d43544530aea0ebce78b96e6b4b38389fe3ad1117f1ca95c38727047a24211ad2c2b44217935c26ffb5496cf90407e
|
||||
|
@ -1,301 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
EGO_PN="github.com/docker/docker-ce"
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
# Docker cannot be fetched via "go get", thanks to autogenerated code
|
||||
EGIT_REPO_URI="https://${EGO_PN}.git"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/src/${EGO_PN}"
|
||||
inherit git-r3
|
||||
else
|
||||
DOCKER_GITCOMMIT="4d60db4"
|
||||
SRC_URI="https://${EGO_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64"
|
||||
[ "$DOCKER_GITCOMMIT" ] || die "DOCKER_GITCOMMIT must be added manually for each bump!"
|
||||
inherit golang-vcs-snapshot
|
||||
fi
|
||||
inherit bash-completion-r1 golang-base linux-info systemd udev user
|
||||
|
||||
DESCRIPTION="The core functions you need to create Docker images and run Docker containers"
|
||||
HOMEPAGE="https://dockerproject.org"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="apparmor aufs btrfs +container-init device-mapper hardened +overlay pkcs11 seccomp"
|
||||
|
||||
# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies
|
||||
CDEPEND="
|
||||
>=dev-db/sqlite-3.7.9:3
|
||||
device-mapper? (
|
||||
>=sys-fs/lvm2-2.02.89[thin]
|
||||
)
|
||||
seccomp? ( >=sys-libs/libseccomp-2.2.1 )
|
||||
apparmor? ( sys-libs/libapparmor )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
|
||||
dev-go/go-md2man
|
||||
|
||||
btrfs? (
|
||||
>=sys-fs/btrfs-progs-3.16.1
|
||||
)
|
||||
"
|
||||
|
||||
# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#runtime-dependencies
|
||||
# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#optional-dependencies
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
>=net-firewall/iptables-1.4
|
||||
sys-process/procps
|
||||
>=dev-vcs/git-1.7
|
||||
>=app-arch/xz-utils-4.9
|
||||
dev-libs/libltdl
|
||||
~app-emulation/containerd-1.1.2
|
||||
~app-emulation/runc-1.0.0_rc5_p20180509[apparmor?,seccomp?]
|
||||
~app-emulation/docker-proxy-0.8.0_p20180907
|
||||
container-init? ( >=sys-process/tini-0.18.0[static] )
|
||||
"
|
||||
|
||||
RESTRICT="installsources strip"
|
||||
|
||||
S="${WORKDIR}/${P}/src/${EGO_PN}"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/bsc1073877-docker-apparmor-add-signal-r2.patch )
|
||||
|
||||
# see "contrib/check-config.sh" from upstream's sources
|
||||
CONFIG_CHECK="
|
||||
~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS
|
||||
~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG
|
||||
~KEYS
|
||||
~VETH ~BRIDGE ~BRIDGE_NETFILTER
|
||||
~NF_NAT_IPV4 ~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE
|
||||
~NETFILTER_XT_MATCH_ADDRTYPE ~NETFILTER_XT_MATCH_CONNTRACK ~NETFILTER_XT_MATCH_IPVS
|
||||
~IP_NF_NAT ~NF_NAT ~NF_NAT_NEEDED
|
||||
~POSIX_MQUEUE
|
||||
|
||||
~USER_NS
|
||||
~SECCOMP
|
||||
~CGROUP_PIDS
|
||||
~MEMCG_SWAP ~MEMCG_SWAP_ENABLED
|
||||
|
||||
~BLK_CGROUP ~BLK_DEV_THROTTLING ~IOSCHED_CFQ ~CFQ_GROUP_IOSCHED
|
||||
~CGROUP_PERF
|
||||
~CGROUP_HUGETLB
|
||||
~NET_CLS_CGROUP
|
||||
~CFS_BANDWIDTH ~FAIR_GROUP_SCHED ~RT_GROUP_SCHED
|
||||
~IP_VS ~IP_VS_PROTO_TCP ~IP_VS_PROTO_UDP ~IP_VS_NFCT ~IP_VS_RR
|
||||
|
||||
~VXLAN
|
||||
~CRYPTO ~CRYPTO_AEAD ~CRYPTO_GCM ~CRYPTO_SEQIV ~CRYPTO_GHASH ~XFRM_ALGO ~XFRM_USER
|
||||
~IPVLAN
|
||||
~MACVLAN ~DUMMY
|
||||
"
|
||||
|
||||
ERROR_KEYS="CONFIG_KEYS: is mandatory"
|
||||
ERROR_MEMCG_SWAP="CONFIG_MEMCG_SWAP: is required if you wish to limit swap usage of containers"
|
||||
ERROR_RESOURCE_COUNTERS="CONFIG_RESOURCE_COUNTERS: is optional for container statistics gathering"
|
||||
|
||||
ERROR_BLK_CGROUP="CONFIG_BLK_CGROUP: is optional for container statistics gathering"
|
||||
ERROR_IOSCHED_CFQ="CONFIG_IOSCHED_CFQ: is optional for container statistics gathering"
|
||||
ERROR_CGROUP_PERF="CONFIG_CGROUP_PERF: is optional for container statistics gathering"
|
||||
ERROR_CFS_BANDWIDTH="CONFIG_CFS_BANDWIDTH: is optional for container statistics gathering"
|
||||
ERROR_XFRM_ALGO="CONFIG_XFRM_ALGO: is optional for secure networks"
|
||||
ERROR_XFRM_USER="CONFIG_XFRM_USER: is optional for secure networks"
|
||||
|
||||
pkg_setup() {
|
||||
if kernel_is lt 3 10; then
|
||||
ewarn ""
|
||||
ewarn "Using Docker with kernels older than 3.10 is unstable and unsupported."
|
||||
ewarn " - http://docs.docker.com/engine/installation/binaries/#check-kernel-dependencies"
|
||||
fi
|
||||
|
||||
if kernel_is le 3 18; then
|
||||
CONFIG_CHECK+="
|
||||
~RESOURCE_COUNTERS
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is le 3 13; then
|
||||
CONFIG_CHECK+="
|
||||
~NETPRIO_CGROUP
|
||||
"
|
||||
else
|
||||
CONFIG_CHECK+="
|
||||
~CGROUP_NET_PRIO
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is lt 4 5; then
|
||||
CONFIG_CHECK+="
|
||||
~MEMCG_KMEM
|
||||
"
|
||||
ERROR_MEMCG_KMEM="CONFIG_MEMCG_KMEM: is optional"
|
||||
fi
|
||||
|
||||
if kernel_is lt 4 7; then
|
||||
CONFIG_CHECK+="
|
||||
~DEVPTS_MULTIPLE_INSTANCES
|
||||
"
|
||||
fi
|
||||
|
||||
if use aufs; then
|
||||
CONFIG_CHECK+="
|
||||
~AUFS_FS
|
||||
~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
|
||||
"
|
||||
ERROR_AUFS_FS="CONFIG_AUFS_FS: is required to be set if and only if aufs-sources are used instead of aufs4/aufs3"
|
||||
fi
|
||||
|
||||
if use btrfs; then
|
||||
CONFIG_CHECK+="
|
||||
~BTRFS_FS
|
||||
~BTRFS_FS_POSIX_ACL
|
||||
"
|
||||
fi
|
||||
|
||||
if use device-mapper; then
|
||||
CONFIG_CHECK+="
|
||||
~BLK_DEV_DM ~DM_THIN_PROVISIONING ~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
|
||||
"
|
||||
fi
|
||||
|
||||
if use overlay; then
|
||||
CONFIG_CHECK+="
|
||||
~OVERLAY_FS ~EXT4_FS_SECURITY ~EXT4_FS_POSIX_ACL
|
||||
"
|
||||
fi
|
||||
|
||||
linux-info_pkg_setup
|
||||
|
||||
# create docker group for the code checking for it in /etc/group
|
||||
enewgroup docker
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export GOPATH="${WORKDIR}/${P}"
|
||||
|
||||
# setup CFLAGS and LDFLAGS for separate build target
|
||||
# see https://github.com/tianon/docker-overlay/pull/10
|
||||
export CGO_CFLAGS="-I${ROOT}/usr/include"
|
||||
export CGO_LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
|
||||
|
||||
# if we're building from a tarball, we need the GITCOMMIT value
|
||||
[ "$DOCKER_GITCOMMIT" ] && export DOCKER_GITCOMMIT
|
||||
|
||||
# fake golang layout
|
||||
ln -s docker-ce/components/engine ../docker || die
|
||||
ln -s docker-ce/components/cli ../cli || die
|
||||
|
||||
# let's set up some optional features :)
|
||||
export DOCKER_BUILDTAGS=''
|
||||
for gd in aufs btrfs device-mapper overlay; do
|
||||
if ! use $gd; then
|
||||
DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}"
|
||||
fi
|
||||
done
|
||||
|
||||
for tag in apparmor pkcs11 seccomp; do
|
||||
if use $tag; then
|
||||
DOCKER_BUILDTAGS+=" $tag"
|
||||
fi
|
||||
done
|
||||
|
||||
pushd components/engine || die
|
||||
|
||||
if use hardened; then
|
||||
sed -i "s/EXTLDFLAGS_STATIC='/&-fno-PIC /" hack/make.sh || die
|
||||
grep -q -- '-fno-PIC' hack/make.sh || die 'hardened sed failed'
|
||||
sed "s/LDFLAGS_STATIC_DOCKER='/&-extldflags -fno-PIC /" \
|
||||
-i hack/make/dynbinary-daemon || die
|
||||
grep -q -- '-fno-PIC' hack/make/dynbinary-daemon || die 'hardened sed failed'
|
||||
fi
|
||||
|
||||
# build daemon
|
||||
VERSION="$(cat ../../VERSION)" \
|
||||
./hack/make.sh dynbinary || die 'dynbinary failed'
|
||||
|
||||
popd || die # components/engine
|
||||
|
||||
pushd components/cli || die
|
||||
|
||||
# build cli
|
||||
emake \
|
||||
LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \
|
||||
VERSION="$(cat ../../VERSION)" \
|
||||
GITCOMMIT="${DOCKER_GITCOMMIT}" \
|
||||
DISABLE_WARN_OUTSIDE_CONTAINER=1 \
|
||||
dynbinary || die
|
||||
|
||||
# build man pages
|
||||
go build -o gen-manpages github.com/docker/cli/man || die
|
||||
./gen-manpages --root . --target ./man/man1 || die
|
||||
./man/md2man-all.sh -q || die
|
||||
rm gen-manpages || die
|
||||
# see "components/cli/scripts/docs/generate-man.sh" (which also does "go get" for go-md2man)
|
||||
|
||||
popd || die # components/cli
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dosym containerd /usr/bin/docker-containerd
|
||||
dosym containerd-shim /usr/bin/docker-containerd-shim
|
||||
dosym runc /usr/bin/docker-runc
|
||||
use container-init && dosym tini /usr/bin/docker-init
|
||||
|
||||
pushd components/engine || die
|
||||
newbin "$(readlink -f bundles/latest/dynbinary-daemon/dockerd)" dockerd
|
||||
|
||||
newinitd contrib/init/openrc/docker.initd docker
|
||||
newconfd contrib/init/openrc/docker.confd docker
|
||||
|
||||
systemd_dounit contrib/init/systemd/docker.{service,socket}
|
||||
|
||||
udev_dorules contrib/udev/*.rules
|
||||
|
||||
dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
|
||||
dodoc -r docs/*
|
||||
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r contrib/syntax/vim/ftdetect
|
||||
doins -r contrib/syntax/vim/syntax
|
||||
|
||||
# note: intentionally not using "doins" so that we preserve +x bits
|
||||
dodir /usr/share/${PN}/contrib
|
||||
cp -R contrib/* "${ED}/usr/share/${PN}/contrib"
|
||||
popd || die # components/engine
|
||||
|
||||
pushd components/cli || die
|
||||
|
||||
newbin build/docker-* docker
|
||||
|
||||
doman man/man*/*
|
||||
|
||||
dobashcomp contrib/completion/bash/*
|
||||
insinto /usr/share/fish/vendor_completions.d/
|
||||
doins contrib/completion/fish/docker.fish
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins contrib/completion/zsh/_*
|
||||
popd || die # components/cli
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
udev_reload
|
||||
|
||||
elog
|
||||
elog "To use Docker, the Docker daemon must be running as root. To automatically"
|
||||
elog "start the Docker daemon at boot, add Docker to the default runlevel:"
|
||||
elog " rc-update add docker default"
|
||||
elog "Similarly for systemd:"
|
||||
elog " systemctl enable docker.service"
|
||||
elog
|
||||
elog "To use Docker as a non-root user, add yourself to the 'docker' group:"
|
||||
elog " usermod -aG docker youruser"
|
||||
elog
|
||||
|
||||
elog " Devicemapper storage driver has been deprecated"
|
||||
elog " It will be removed in a future release"
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,6 +1,3 @@
|
||||
DIST prometheus-2.4.3.tar.gz 6095284 BLAKE2B 9b9d54cf8ed61453d63e4b93cd81cd1c08a732b2238830aa1b83b63076205569b8f947a94d0528b910c0958bc77f98605ab3eaf98a1e93d361ea6b431d5df48c SHA512 c86ce48416d32ca4310315dd7195a6ee471244b7a9323ddc49270c2b885bda38c2922047dc8fd7d9b19c9f62f8bc788d30387d38f956cbf04130d7041f9a479b
|
||||
DIST prometheus-2.5.0.tar.gz 6123272 BLAKE2B a84b31e24f4448330af63b64ed56b8c535e790930738c0f00d7ec05ff5b49cd52bcae047cfe3a0470909397562f29662003e5b5ad0a747dc209109e360daa18d SHA512 181ef94b75717d116ae8b1307f7351eb889d153b27316e08e8cffe16cf885dbf43bd0bd4214f05e56bc33bbf53f7864721ab666f5ea4356b37a5987347c6a191
|
||||
DIST prometheus-2.6.0.tar.gz 6607363 BLAKE2B b9449403c840367b5332e27cf5d76b3becf1abcaaff6b2f2fd48441609b91d969ce078a2a3c4a38cc68b421b8e796561be87858adb77ac780f45650147469596 SHA512 75ae11a49de4277c7b4e49b83d7f34c9eb17b6bde988ab84e735109430361856ae0d33179a678b2cfc88342966a8e393a75062142c6f713f8a974aa8f332691e
|
||||
DIST prometheus-2.6.1.tar.gz 6612143 BLAKE2B 33dc64406dd45f494720a1ff5f6d09ed4b45b3880b15626ab7455909258addc5d1549d3edbf8af9a374516930b297c5bdb6ef51a78cac3cb338357896c0d71ae SHA512 80bf6afa00b60aa4245a53e275a2b9579a7936609aba4ffacbbe478f34e530208e0498d8c5ea53dd3a940726e05bd6fac19fed3d6d9dd209af565d5368b2340f
|
||||
DIST prometheus-2.7.0.tar.gz 7276755 BLAKE2B 39c5e73f87aa919537eba19c09a0268b1079ffc8527aef6d31637c6cd9339e0c49a60afc44515d18a86aca6056bf0a1707ba02fc441ff63f0f517d864747d5be SHA512 02df7701cc9c50c2792c1a9ddfb6e41345bbc2f12aef8dfb09b5b545499a09a88d13c6d70a090086d35694817d7a5b26312554ebc50b02492bfdbf206f611d03
|
||||
DIST prometheus-2.7.1.tar.gz 7276631 BLAKE2B 1066204eebd8e9589ce5972c78f1c56c74ae40739e850731beb7c39a6100aa0c252b444571cffb6cedabddd71f0b6f927e52ce4ebb35a7fd061ed5e4d50436f7 SHA512 d9a9a5cfca48b6a5ea5dda2b319f8c498b11e0e0a4ce0d18fc4d59fba9e5337048120ba12b29d18b957ac5c268f8c17996a9e88ff9ed1e3041d0ed00bc1454d0
|
||||
|
@ -1,70 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
inherit user golang-build golang-vcs-snapshot
|
||||
|
||||
EGO_PN="github.com/prometheus/prometheus"
|
||||
MY_PV=${PV/_rc/-rc.}
|
||||
EGIT_COMMIT="v${MY_PV}"
|
||||
PROMETHEUS_COMMIT="67dc912"
|
||||
ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
DESCRIPTION="Prometheus monitoring system and time series database"
|
||||
HOMEPAGE="https://github.com/prometheus/prometheus"
|
||||
SRC_URI="${ARCHIVE_URI}"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="
|
||||
>=dev-lang/go-1.10
|
||||
dev-util/promu"
|
||||
|
||||
PROMETHEUS_HOME="/var/lib/prometheus"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup prometheus
|
||||
enewuser prometheus -1 -1 "${PROMETHEUS_HOME}" prometheus
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s/{{.Revision}}/${PROMETHEUS_COMMIT}/" src/${EGO_PN}/.promu.yml || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd src/${EGO_PN} || die
|
||||
GOPATH="${S}" promu build -v || die
|
||||
popd || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
pushd src/${EGO_PN} || die
|
||||
dobin promtool prometheus
|
||||
dodoc -r {documentation,{README,CHANGELOG,CONTRIBUTING}.md}
|
||||
insinto /etc/prometheus
|
||||
doins documentation/examples/prometheus.yml
|
||||
insinto /usr/share/prometheus
|
||||
doins -r console_libraries consoles
|
||||
dosym ../../usr/share/prometheus/console_libraries /etc/prometheus/console_libraries
|
||||
dosym ../../usr/share/prometheus/consoles /etc/prometheus/consoles
|
||||
popd || die
|
||||
|
||||
newinitd "${FILESDIR}"/prometheus-3.initd prometheus
|
||||
newconfd "${FILESDIR}"/prometheus.confd prometheus
|
||||
keepdir /var/log/prometheus /var/lib/prometheus
|
||||
fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has_version '<net-analyzer/prometheus-2.0.0_rc0'; then
|
||||
ewarn "Old prometheus 1.x TSDB won't be converted to the new prometheus 2.0 format"
|
||||
ewarn "Be aware that the old data currently cannot be accessed with prometheus 2.0"
|
||||
ewarn "This release requires a clean storage directory and is not compatible with"
|
||||
ewarn "files created by previous beta releases"
|
||||
fi
|
||||
}
|
@ -1,70 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
inherit user golang-build golang-vcs-snapshot
|
||||
|
||||
EGO_PN="github.com/prometheus/prometheus"
|
||||
MY_PV=${PV/_rc/-rc.}
|
||||
EGIT_COMMIT="v${MY_PV}"
|
||||
PROMETHEUS_COMMIT="dbd1d58"
|
||||
ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
DESCRIPTION="Prometheus monitoring system and time series database"
|
||||
HOMEPAGE="https://github.com/prometheus/prometheus"
|
||||
SRC_URI="${ARCHIVE_URI}"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="
|
||||
>=dev-lang/go-1.10
|
||||
dev-util/promu"
|
||||
|
||||
PROMETHEUS_HOME="/var/lib/prometheus"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup prometheus
|
||||
enewuser prometheus -1 -1 "${PROMETHEUS_HOME}" prometheus
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s/{{.Revision}}/${PROMETHEUS_COMMIT}/" src/${EGO_PN}/.promu.yml || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd src/${EGO_PN} || die
|
||||
GO111MODULE=on GOPATH="${S}" promu build -v || die
|
||||
popd || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
pushd src/${EGO_PN} || die
|
||||
dobin promtool prometheus
|
||||
dodoc -r {documentation,{README,CHANGELOG,CONTRIBUTING}.md}
|
||||
insinto /etc/prometheus
|
||||
doins documentation/examples/prometheus.yml
|
||||
insinto /usr/share/prometheus
|
||||
doins -r console_libraries consoles
|
||||
dosym ../../usr/share/prometheus/console_libraries /etc/prometheus/console_libraries
|
||||
dosym ../../usr/share/prometheus/consoles /etc/prometheus/consoles
|
||||
popd || die
|
||||
|
||||
newinitd "${FILESDIR}"/prometheus-3.initd prometheus
|
||||
newconfd "${FILESDIR}"/prometheus.confd prometheus
|
||||
keepdir /var/log/prometheus /var/lib/prometheus
|
||||
fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has_version '<net-analyzer/prometheus-2.0.0_rc0'; then
|
||||
ewarn "Old prometheus 1.x TSDB won't be converted to the new prometheus 2.0 format"
|
||||
ewarn "Be aware that the old data currently cannot be accessed with prometheus 2.0"
|
||||
ewarn "This release requires a clean storage directory and is not compatible with"
|
||||
ewarn "files created by previous beta releases"
|
||||
fi
|
||||
}
|
@ -1,70 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
inherit user golang-build golang-vcs-snapshot
|
||||
|
||||
EGO_PN="github.com/prometheus/prometheus"
|
||||
MY_PV=${PV/_rc/-rc.}
|
||||
EGIT_COMMIT="v${MY_PV}"
|
||||
PROMETHEUS_COMMIT="410ee9e"
|
||||
ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
DESCRIPTION="Prometheus monitoring system and time series database"
|
||||
HOMEPAGE="https://github.com/prometheus/prometheus"
|
||||
SRC_URI="${ARCHIVE_URI}"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="
|
||||
>=dev-lang/go-1.10
|
||||
dev-util/promu"
|
||||
|
||||
PROMETHEUS_HOME="/var/lib/prometheus"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup prometheus
|
||||
enewuser prometheus -1 -1 "${PROMETHEUS_HOME}" prometheus
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s/{{.Revision}}/${PROMETHEUS_COMMIT}/" src/${EGO_PN}/.promu.yml || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd src/${EGO_PN} || die
|
||||
GO111MODULE=on GOPATH="${S}" GOCACHE="${T}/go-cache" promu build -v || die
|
||||
popd || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
pushd src/${EGO_PN} || die
|
||||
dobin promtool prometheus
|
||||
dodoc -r {documentation,{README,CHANGELOG,CONTRIBUTING}.md}
|
||||
insinto /etc/prometheus
|
||||
doins documentation/examples/prometheus.yml
|
||||
insinto /usr/share/prometheus
|
||||
doins -r console_libraries consoles
|
||||
dosym ../../usr/share/prometheus/console_libraries /etc/prometheus/console_libraries
|
||||
dosym ../../usr/share/prometheus/consoles /etc/prometheus/consoles
|
||||
popd || die
|
||||
|
||||
newinitd "${FILESDIR}"/prometheus-3.initd prometheus
|
||||
newconfd "${FILESDIR}"/prometheus.confd prometheus
|
||||
keepdir /var/log/prometheus /var/lib/prometheus
|
||||
fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has_version '<net-analyzer/prometheus-2.0.0_rc0'; then
|
||||
ewarn "Old prometheus 1.x TSDB won't be converted to the new prometheus 2.0 format"
|
||||
ewarn "Be aware that the old data currently cannot be accessed with prometheus 2.0"
|
||||
ewarn "This release requires a clean storage directory and is not compatible with"
|
||||
ewarn "files created by previous beta releases"
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -0,0 +1,87 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools flag-o-matic versionator
|
||||
|
||||
DESCRIPTION="Terminal multiplexer"
|
||||
HOMEPAGE="https://tmux.github.io/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV/_*}/${P/_/-}.tar.gz"
|
||||
|
||||
LICENSE="ISC"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="debug selinux utempter vim-syntax kernel_FreeBSD kernel_linux"
|
||||
|
||||
CDEPEND="
|
||||
dev-libs/libevent:0=
|
||||
sys-libs/ncurses:0=
|
||||
utempter? (
|
||||
kernel_linux? ( sys-libs/libutempter )
|
||||
kernel_FreeBSD? ( || ( >=sys-freebsd/freebsd-lib-9.0 sys-libs/libutempter ) )
|
||||
)"
|
||||
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-screen )
|
||||
vim-syntax? ( app-vim/vim-tmux )"
|
||||
|
||||
DOCS=( CHANGES README TODO )
|
||||
|
||||
S="${WORKDIR}/${P/_/-}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.4-flags.patch
|
||||
|
||||
# usptream fixes (can be removed with next version bump)
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# bug 438558
|
||||
# 1.7 segfaults when entering copy mode if compiled with -Os
|
||||
replace-flags -Os -O2
|
||||
|
||||
# regenerate aclocal.m4 to support earlier automake versions
|
||||
rm aclocal.m4 || die
|
||||
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--sysconfdir="${EPREFIX}"/etc
|
||||
$(use_enable debug)
|
||||
$(use_enable utempter)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
einstalldocs
|
||||
|
||||
dodoc example_tmux.conf
|
||||
docompress -x /usr/share/doc/${PF}/example_tmux.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if ! version_is_at_least 1.9a ${REPLACING_VERSIONS:-1.9a}; then
|
||||
echo
|
||||
ewarn "Some configuration options changed in this release."
|
||||
ewarn "Please read the CHANGES file in /usr/share/doc/${PF}/"
|
||||
ewarn
|
||||
ewarn "WARNING: After updating to ${P} you will _not_ be able to connect to any"
|
||||
ewarn "older, running tmux server instances. You'll have to use an existing client to"
|
||||
ewarn "end your old sessions or kill the old server instances. Otherwise you'll have"
|
||||
ewarn "to temporarily downgrade to access them."
|
||||
echo
|
||||
fi
|
||||
}
|
@ -0,0 +1,85 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools flag-o-matic
|
||||
|
||||
DESCRIPTION="Terminal multiplexer"
|
||||
HOMEPAGE="https://tmux.github.io/"
|
||||
SRC_URI="https://github.com/tmux/tmux/releases/download/$(ver_cut 1-2)/${P}.tar.gz"
|
||||
SRC_URI="https://github.com/tmux/tmux/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="ISC"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="debug selinux utempter vim-syntax kernel_FreeBSD kernel_linux"
|
||||
|
||||
CDEPEND="
|
||||
dev-libs/libevent:0=
|
||||
sys-libs/ncurses:0=
|
||||
utempter? (
|
||||
kernel_linux? ( sys-libs/libutempter )
|
||||
kernel_FreeBSD? ( || ( >=sys-freebsd/freebsd-lib-9.0 sys-libs/libutempter ) )
|
||||
)"
|
||||
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-screen )
|
||||
vim-syntax? ( app-vim/vim-tmux )"
|
||||
|
||||
DOCS=( CHANGES README TODO )
|
||||
|
||||
S="${WORKDIR}/${P/_/-}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.4-flags.patch
|
||||
|
||||
# usptream fixes (can be removed with next version bump)
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# bug 438558
|
||||
# 1.7 segfaults when entering copy mode if compiled with -Os
|
||||
replace-flags -Os -O2
|
||||
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--sysconfdir="${EPREFIX}"/etc
|
||||
$(use_enable debug)
|
||||
$(use_enable utempter)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
einstalldocs
|
||||
|
||||
dodoc example_tmux.conf
|
||||
docompress -x /usr/share/doc/${PF}/example_tmux.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if ! ver_test 1.9a -ge ${REPLACING_VERSIONS:-1.9a}; then
|
||||
echo
|
||||
ewarn "Some configuration options changed in this release."
|
||||
ewarn "Please read the CHANGES file in /usr/share/doc/${PF}/"
|
||||
ewarn
|
||||
ewarn "WARNING: After updating to ${P} you will _not_ be able to connect to any"
|
||||
ewarn "older, running tmux server instances. You'll have to use an existing client to"
|
||||
ewarn "end your old sessions or kill the old server instances. Otherwise you'll have"
|
||||
ewarn "to temporarily downgrade to access them."
|
||||
echo
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,24 +1,12 @@
|
||||
DIST amd64-debug-libreoffice-6.0.6.2.tar.xz 1226804568 BLAKE2B 0522713fa08168ed1eeada9a3c7562fd43ccae15b03b75cd7b27e9b800d165a45ee66f9540311788547e0da75c3a911831507a956b3c05f73994c09410a92014 SHA512 76a6c22ec217b338cf6f597401aef5b0d523ae9ee99a680e57b26ab07f56460396d6491e6229e71bb50cbdf3fce9912faf560f82b421093db7d5e6dfe9397e28
|
||||
DIST amd64-debug-libreoffice-6.1.4.2.tar.xz 1271418908 BLAKE2B 6a79d3459d8ff10a63e0b163fabc3b6432b27381bd9653bacfa6c21f05fbd006bfa40cbfa1e2e8263996112e2443f78da989ebc4964283eb5a830c94364b9eb4 SHA512 9d40e356925bbaa252110d1216fdd0cd3367070793c0c546d4a541740e72f65b1de42d740fd6676cf903c9f3feda734ee014290d7c721de59acadc33b4ac04be
|
||||
DIST amd64-debug-libreoffice-gnome-6.0.6.2.xd3 335183287 BLAKE2B 4bd98a0a3f5c3e1a1b5d68eb9601937efbec1f3dd81a4b463fc99420a2f41ce70c5d801f8045afbeadfbc2f0228941e8504344d0a282e431b53e406df4c489b1 SHA512 54ba70e76bc263e8c1ec554b6241fbc3685ce15e3e729c79bd0ab718daa506745425e514b22ace5e46284562192ae5727b7c4fff9f6f5152b5f1e44912345199
|
||||
DIST amd64-debug-libreoffice-gnome-6.1.4.2.xd3 347802853 BLAKE2B 3282b5744c32502555520d21408b31fd7df05042a6560c30573ea4f266ad311fceeff3bfc82d1eab365a14244289a07d58b8aed4f74529ed6112306568b94e3c SHA512 cd32875e42925f1e0f4c80cc36b80a1dfafabe8a5858d4de10e054411f278617dcfe0ba3392ab30df4e40530c5783bfeec94fc9ed11867c6da342183534cb684
|
||||
DIST amd64-debug-libreoffice-gnome-java-6.0.6.2.xd3 612061584 BLAKE2B 3cba602d840a8c086161fbb46f323bf4a660d25e3c30e90c79241bc5278487d6038661a87b5610e57cbf08074ffa87cfab7620ceefc51828fa1520159415cd32 SHA512 c21a5d30d1fc6602c3fd7e79ee1942aba5c4af0767311d13289a06980f156c1c3b5c21dac8105bc57af5564d5e663ae6af2617bfc18c32330bf8fd452afad1d0
|
||||
DIST amd64-debug-libreoffice-gnome-java-6.1.4.2.xd3 655016716 BLAKE2B b711aed5d834297eef110609a508a7ff7268a3db6024032cb16ae7ecd15a289d7211d4922da701226008a508b86e38ca125c8ab86feaa36e9b826dd4fa2f2d69 SHA512 cfb4cba08c497806416a74e53e2d22fefb316253b09529efd4c5a1cdb5788f3b1db6d07ae8fb921111e2a533b3e944fcd72ae576c880929104fb8c5abb13741f
|
||||
DIST amd64-debug-libreoffice-java-6.0.6.2.xd3 603154536 BLAKE2B f9584de8d860d4a7d04ffeecd70c094152a134bf45054a1a3526f061a493045ceed27b5e5f0325f8f836e511af1c6bc64b19581c895bbce592b551460c7bcdbb SHA512 8841179dce5b2adf9a5011715354acb1f20b65f44bb318988a9df910428010ef33d59ebd58a06635905044e45da68496a25325184016e41dd8a7753a38f292d3
|
||||
DIST amd64-debug-libreoffice-java-6.1.4.2.xd3 645937560 BLAKE2B 77ebb6d10ee3a15933d73ef746ebcde3898fd266e1331a10d32519cb0ec9771741583e4d7b75350e29623368ac85433fc39c7b513dd128c2ec31af621fe46b68 SHA512 03494c9a2827502cca4315696da47470eb42299b8472aa128c1083697c816307d286eb9e1a76205d7b5a293312d97dc5da1d2715eb174c907ce943875f27e2d4
|
||||
DIST amd64-debug-libreoffice-kde-6.0.6.2.xd3 333983698 BLAKE2B 970a9f50b3f0f6780fde8948686715b3f078aeb7922e2604f24c2f57adde7efade1f47eed1f72d487f4a0f662387bfae8a3e60baa0a05e271fdfeee280282157 SHA512 99837f2968f9d4437047db9fe72e39c35797b3c38d1dc271a0156b4665e0573cc129dbc9b98f9f669c92d340dd034cb5eb005ca768f693181a70d447c0e24d56
|
||||
DIST amd64-debug-libreoffice-kde-6.1.4.2.xd3 351403453 BLAKE2B b9541d40e054614db12e78dd11b3d481f84a82265c4a9a723bc3c26efad3ef234ee5030eafe950c1f983bfe0f303c23263ed48cc33d3f951e87f6b5790bdb54b SHA512 dd369201fb6b34283852d35cf119e2979eb2c7691a767448008051513dd28cdf400a5680a6833f5ba8d1b18106fadacf0a50721bc46f96a709c33fc83b80cc85
|
||||
DIST amd64-debug-libreoffice-kde-java-6.0.6.2.xd3 610851675 BLAKE2B 4f23bc53a115a1a5604106bc8398b1aa40ec9d4329fb4146c13919170172205103c73b7f679f8eae66e7d1eebf569536082e738b5ea2e6fa743d60fa8d7b2c5f SHA512 9a4195becf67a31f0c7ba6653b1c878d4b00af43f2642a80ee097eb99176114595cc2373092df9034c44593d5a3db83dd252541ba22109176393ef276b126345
|
||||
DIST amd64-debug-libreoffice-kde-java-6.1.4.2.xd3 658586451 BLAKE2B ad06ec566c299e0b752419cd4f681100a9aef644b3a13512026ee6b5f00eba219f03462a791eff8c12b9d0ec448f6d3f775d56732e16f0f86be396c36d84b461 SHA512 48665da7d924ebd937eb141bfe15d13468704f2f4bf9ef8b5ad6e04399f3427ec5a74653371cf9e62601026518f3a978e402ea898ab1b01da2dfb0bd18a3831f
|
||||
DIST x86-debug-libreoffice-6.0.6.2.tar.xz 1198893492 BLAKE2B 36eaace94d6d5bd17be50cd58924cec5459663de005d1e9cc17de13e420426dd9f75ebc30fa2e624d2ee37fb3836cde6008dbb8ea023e454603d8a733e02be80 SHA512 960c973b27ed04e27f40468823cdb092771983995760a008b733ff76af8a25ed9dc4a5fef3ba1969f881544d0d8a92476fe28ff1ff9a123cc095b4d591f28fce
|
||||
DIST x86-debug-libreoffice-6.1.4.2.tar.xz 1241667832 BLAKE2B 53b4e14859c7a68f3e959e1c85108e6c4e44d30b874c938fae04e10b2a24d41c7902fdd726492008dd142f74e898d71fafee2bc58e6ae0a631f1ffe09ec300ed SHA512 2e909898a54d4b0e1a993f818074a5efd30e08d6be5507894c5d0cd7a9fcc5600b7ecc2a14784b4f6d65747e6a98ce28735392df1e2dca6d1c80e9130a03257e
|
||||
DIST x86-debug-libreoffice-gnome-6.0.6.2.xd3 325202188 BLAKE2B b1bdd507d9d56e4ad9d8880998b866053c76c369e29a283dbefd4d9ad73f45852ae22e4f84b10efb3290db25e1c7a5459c4c622144933b98fb581887e2f48fe1 SHA512 f5e2e806866e4990fe5c5040563c0dde7e7e7cdcb7e1b15d507a3fc7895a43ea03e941d4d06c89ce4c9b9d0776909b5a5da0962d0550ef5c65c3b2f98d2acb6c
|
||||
DIST x86-debug-libreoffice-gnome-6.1.4.2.xd3 337409896 BLAKE2B f24ecf7a3f5eb605dd41bbca5bf23c889fc94cb426a6fbb0d9776404c66730f9b2a1fb6f5e6c65fe9f6781c1871ea6f15edfad511c8189b4f928a8292161cf45 SHA512 db67d19dbfb89dfc0b8cadc43435e6db85e3bc77252c9c329dd7ec24467e3ab572e400876ec10630bb5822b8c033e7b017296758695893ea6f71eb4564e0e526
|
||||
DIST x86-debug-libreoffice-gnome-java-6.0.6.2.xd3 588188373 BLAKE2B ca498345862349b7181cb1cf1dfce8669867f5ce0f40404575c3325bb36b44f89f5d25ec44fbcc71f6c604ed43889870d93d9c8f94680ef102b8b45b1127c106 SHA512 dac4ab117a4992e9b6e3e9a9e4657ed9ba2cd01630cbda6b9f8b6ed8a6e75e4a212cdcbc3040e1dff991a12212e1d2c242f461a08d236a4888e86179521146fc
|
||||
DIST x86-debug-libreoffice-gnome-java-6.1.4.2.xd3 591535581 BLAKE2B f27a2d2d5642d0333ad8dbd143fcc2de7b87cc0b8fb9c0ae5ed6037a9d838d0fbc2572b60043aa64e97d67841fb5c9998d5f1d6820120019cffa09a1ef38da5f SHA512 7a8f3fd0d7c79a5f313c71e3c198e12d55c685ecb5a1cc292dd48485abc19ee457723801aace3d6d754008edafc5174924ae7868b4699d2ace146f265e452e96
|
||||
DIST x86-debug-libreoffice-java-6.0.6.2.xd3 579363410 BLAKE2B 5c75930a70f21696d985ee876d2fee1e92494fc9db4ff103ebc9626887fc397905f1362127848d941fe62bb70749817ef972984a60d7449753ec04aee4bd61ba SHA512 92d933204804eb3faf9beca6f075d0ff435785f13fe5fbf0701ce0e2d59102797df85ac33c50b2a62e36f9c9566c04f6551a34fd7376913592edc96f40641fdb
|
||||
DIST x86-debug-libreoffice-java-6.1.4.2.xd3 582462747 BLAKE2B bde422971efbf2e5d9002dd94921acd152c0f1a867f911b6d5bc7a69ba78d4c8d00cc1b39c7ed3a4df0dece40437356ee2930745366c366d19ee3378caaa30ac SHA512 dfda55b4437d01bde30d15b0bbda141e0c880843877dbf8057bffda31d1a010f99da71869f296669e687650da250e8f6164948958f55cbb4a997182bde59c159
|
||||
DIST x86-debug-libreoffice-kde-6.0.6.2.xd3 324043934 BLAKE2B 4f1da55ca925acacc6621389e2c2dc281b39ee8cd93a819a28c9495af6c333786d9745a3021ba9db46094d5d32a345d1b4731c9e11d59304cbcd0139ac443f25 SHA512 b0103f32bf0314066011442a93144de8bf13e6116b9c9e93656d832d4c7ff8fcdfc2c22ac1aa52887a3ed35476d8954e2064e3e0e66cb43e40c4aa5469207363
|
||||
DIST x86-debug-libreoffice-kde-6.1.4.2.xd3 336243150 BLAKE2B 91f903eb7ea3b72b2a1d3afeeaa51e743c890c0ec48b6332db48fcbe330e73a76dfa72f3271da27c04563e7807f50d89e67c6c2ebaa1611ea492240c3783c34d SHA512 999576a1ad32774bc330a9588c8b742016d8c1474780fdedcde6e20449987cc79660294dfc4e257d1911515bd3d5484204092b4344bfd22d2ecf2ee636a115af
|
||||
DIST x86-debug-libreoffice-kde-java-6.0.6.2.xd3 587012572 BLAKE2B 5a3495eb3a1b9149e9378501303716c76ba1ce82f18339e60b1727f1467e351b9fa788196fae0f03aac122534d36f26d19d10421fea79603b4240a580b1a6b6d SHA512 64fcbb87757cb8519a2d4c9935c677f112d1d6f570ee30d6226525e9159fc136271e8b31f15ea06864d63f3003526d84c6253c6f532fd0cacc99f755396bbf50
|
||||
DIST x86-debug-libreoffice-kde-java-6.1.4.2.xd3 590359965 BLAKE2B bc169ef7144612def9255191fbd7d2765b42ed8e7f1a1450b4253c6bad1b582481c544c237c26d4bc41f724c4c114b8c55ec05989f337de59cd1285c29428d94 SHA512 31bf9f75e1722ea8dd17ef86d7819fcb0f40369ea7d7399fc88b4e715800bf9419cc4d4bd476dbe5840f8d7e9e9c9fe78289caf4938290224f58d5c5ab68e2af
|
||||
|
@ -1,87 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
BASE_PACKAGENAME="debug"
|
||||
BASE_AMD64_URI="https://tamiko.kyomu.43-1.org/distfiles/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="https://tamiko.kyomu.43-1.org/distfiles/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package, debug info"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
|
||||
RDEPEND="=app-office/${PN/-debug}-${PVR}[gnome=,java=,kde=]"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="/usr/*"
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [ -n "${patchname}" ]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/ || die
|
||||
}
|
@ -1,24 +1,12 @@
|
||||
DIST amd64-bin-libreoffice-6.0.6.2.tar.xz 80491496 BLAKE2B a182c9e47a625e15a08976dbfe16724f6201094bae93f8a9ed7f4b819a1657a0781d4970ea213e652a49c5916e8e34c0dbeaa4989ee6e2ce4760a041a3714a20 SHA512 d5a92d430022a0b56902395e9224e87681130a489b41aa93d171848d7c612d5e2138422e8738d673f43744963fe0caadacd729f49193cd96e9bd1f394c868892
|
||||
DIST amd64-bin-libreoffice-6.1.4.2.tar.xz 81346704 BLAKE2B 5c8a46e58ca3318acde5b7d431d6e2adf69873dcef9552ab0d7c28c2936cda4b58ec38085fff727b57970ae5e5d574de474c91e9ab925f5720d8eb093f97092a SHA512 1e16e0c407b60fe80c2338502c359572b0d2e1946528250e636ea9e3a211685174863071905eac97525a7cd3183ead11187cab8ec2f57fdf71b8f82a6c40e227
|
||||
DIST amd64-bin-libreoffice-gnome-6.0.6.2.xd3 16613087 BLAKE2B 7cdec36d986fc7ed3c92c26b1ea91c24d8b951d27a8f0f32821f542e7abf456cd611eee79667e2d508a4d9510d1685253807b0e2a0e62a3f3b3e76a03f12cc6b SHA512 1686d19c296096ac2d3400ea06c8a8e00d56e0db2896d66021b88f7025981d14a9ea207cdb68685a1f6efcbe9be133ebdae27771c8e7c8a9e3c5675bb1e20a9f
|
||||
DIST amd64-bin-libreoffice-gnome-6.1.4.2.xd3 17021650 BLAKE2B efcd8118167474d8cc3c134e4d292d7c3db040282e943f90818d9266f987ca96f725d6ce6675cb7228e21b5053d71fe103f4e896db87c176647830404ab7b83f SHA512 803d34cc1bf3555e972150b0eed4f9769e826c336a0ca751960c887d5d7a77ec060d5ba8c7db57636399b97101c9dca12843eac8b6c686774e2c232eaea7d1e9
|
||||
DIST amd64-bin-libreoffice-gnome-java-6.0.6.2.xd3 27267767 BLAKE2B 42e3cdb1754bd97ce11320ed6a01b678399be0fb541fcbe9193dcf662955be4d3483fb561958a94b82c73c4c02cc2de88d80d951514a6a0b4667657907941f41 SHA512 820d340c0d3a20074f636b970f5a6ac37a67ea99be1c1bded2cd2d6a508f05e3406e97d42ccf1f66c9beb19f9d027acf2e557a57157e74ff2873388dca123a2d
|
||||
DIST amd64-bin-libreoffice-gnome-java-6.1.4.2.xd3 27390110 BLAKE2B 7eb0f8ae4b59926473ddb3d0d3e89ff5350cb10242c93fac696545322ea3f6df1562d8ff4dbf2d65ffbceee8ca8914f3f86b20c28246eb091f3352d551790e9f SHA512 f1e0ed6829f2d8d50fa2a290ba2effbe2c75d0cacdb1315345963abe914e6a0dc7c971a35b1f7a6a80a69f7ba63c08c950b69d1b2243f2a27aef49cc762b7c35
|
||||
DIST amd64-bin-libreoffice-java-6.0.6.2.xd3 25919864 BLAKE2B e08fe57214893d270a2f56dd1732a72279f8ba38451ea7bc852ab1d43ea5dab0ff22d77f22456dce260164395f0900c28670c051a992368ebcb1c6a23efef609 SHA512 bf7c988e619399b36471f11ed719b8bac025fe6fb80300b2cd625346035fc823b84b812d68ebd98e81c9eceab632e5a933787088bc55a0719e9ced2305772b55
|
||||
DIST amd64-bin-libreoffice-java-6.1.4.2.xd3 26132001 BLAKE2B 6b531b30bbea9cf00e684f3bce96f1aa76989375e688212d88084dec4fed52e8542fe952df909179fa8795e0b9ae3b450bc09a18594da67dffc74a3c2b4d1f4e SHA512 5583f4babf60709ec35c23e7ff72cf5c1048b850ec8674f51c45ac5379444696b1f5797b1697d7b61c059782f019ad1bd6a65bdd384cc7d3f1d9c6eec60e4a9c
|
||||
DIST amd64-bin-libreoffice-kde-6.0.6.2.xd3 16483824 BLAKE2B 1685f5af9ffc3d879130741d7ada9abfdbd0ad54c47fa44cf60425cad9637ed2bb1c787e95193c223be44dd03c04585e27210a53f3cf518d354e698eff48a13d SHA512 897bb83515941724eb2b580887d75627e4113b87f57620046fc298cc83e4a7ced5c49320fd0f2c71c7fbd976b69be796702d8522067747b6b96e766d04d911b1
|
||||
DIST amd64-bin-libreoffice-kde-6.1.4.2.xd3 17226538 BLAKE2B 3d55535c01e4300be3288cb6202b0855c71bd1f73a180626b2c7adfe0808523a6c24f0dd7579469a57a54fdc829ccd4f3902bcbcd1a887dbed4d94474e270f17 SHA512 4c2fd1d3adb3e6eb8cdd8aa9298dea8bedf6869115c539e295c325ebe5be343a2391ab669141651fea641a088b77e3dfed84d551645e19afca6bc899c69d6101
|
||||
DIST amd64-bin-libreoffice-kde-java-6.0.6.2.xd3 27132579 BLAKE2B c7f406f0e2d3ab088985b504ddc3bf9c7e8feb1fd569918f21161dca571af134d5cdbc1aac7d00f5a99d8b943088f711ba6066009a7f399826fae85bc5b3443d SHA512 934d5faea55ec1a8292c3d45a6621e773f1132a51bf513703237b684b22784acbada8b6e5fa0e119ee4ebcf15873f4d7fc56aa60007632da32ed8ed54b6ef1cc
|
||||
DIST amd64-bin-libreoffice-kde-java-6.1.4.2.xd3 27627892 BLAKE2B a9e843edd462d903c6ba2843e6c0c0b16da2691328b9100813529b0fbf28fc1f0caabe2c3aef6a89423ea86d1ef7ea168ba67d73b62a12c6be7ff841daf93304 SHA512 7c69cf17e49fd31eca1132d0def6796cc0d3eebc32d3dcf7e171e1553cb0d1424822545b407a6dc4d0ef30fe67d7044cbf84664ede6bd3cb0c6a4e853c03aec5
|
||||
DIST x86-bin-libreoffice-6.0.6.2.tar.xz 82803120 BLAKE2B 0257d683e1c567076619303302ae29497bb27ecc38504cec731a71b062d0f7c815dcb0e0c1738a7fad2b22e619c4d9e96932e8cb2b357923131ca50f90945a62 SHA512 8d84192778ea5f3d08c4e02cbb78234dbb5f042e17e591750659414e9bf4845155cea9a0435ae51f5cd3e454df8149494ce4407649d8901d15a47b591c0b2575
|
||||
DIST x86-bin-libreoffice-6.1.4.2.tar.xz 83674656 BLAKE2B 89329aad9f8f4d38ec5bc41372307802454cca5e96f984bd9706a53619027ac87b99897de078b3d56e6fb731a6f60165c7b99360205f2a3d01bcdd73d2e7af7d SHA512 38f173b64a57bd4f57761b070a8c7a55404d30177c024037b63b806fa7620c04bf058644b24d8a711b651d11a97955c6771cb78cdf796950fb03c1bae9fd8ed7
|
||||
DIST x86-bin-libreoffice-gnome-6.0.6.2.xd3 16698373 BLAKE2B 28926e6691e420aec86c4ad55f01e34a40e5eb3be326c65e2340d794a2a779a57f55a60f596c48488e7c07bfcf597658b77ee4aa0fa88ae06f042590d4d29eeb SHA512 3c9b86e16a5d9f6ca4d0b4d54401641d344ed7ad49bd5dc4425f6714b60d8538dc7e35c5223ef75a18993fdb221d84673885f7078d235d423a9aacccbeed567b
|
||||
DIST x86-bin-libreoffice-gnome-6.1.4.2.xd3 15972006 BLAKE2B d1cf1cecf33aa3158ffccdf727fc454f25f70d31cf69cb2ce41867d15bf0386bb9e9eeb382207dda692b6506ae382f29638dd6bf0b9106701e49db42d0f1a27d SHA512 90272f6579dc8e84f43e1332f75ae7380889b8f09c8b1318799d84ee17f45107acc69c059d611ad7c363fb3d191368b1727f07f19aeb9128c61a1e7209fe107b
|
||||
DIST x86-bin-libreoffice-gnome-java-6.0.6.2.xd3 24522170 BLAKE2B 4bebdb968972ec06cd6ff65fad101dd857ac7cad3e1ff5c60396cfe24c75ebca2c9a043568444fd20e1b359531ab2902a818e954a98fd51d0396bbbafd6ff8fd SHA512 cf654354b653d682b79b22709ed3129f593e8f6de37f20e643125ebd3f4b0684e607d2fbe86ad0e69d10f113ddbfaa85d05d0f0e534ab5655fe7fa37265bd75e
|
||||
DIST x86-bin-libreoffice-gnome-java-6.1.4.2.xd3 25781254 BLAKE2B 83295b779bccb4e3cecae21272639e14dc84cd8095aafb19adbe15867c03b8e701bbc67bbaa817205e1d8aec687e0d2d265d5d3dc459db600c4eb8f0fa2106db SHA512 19e1123d8f14ca3352c3a997d33a71ef892611b6590b58e3fa9c921dd264a5fba39619402fcd3db335929ddadc02364497cf43473d1783d24c3a71908923839a
|
||||
DIST x86-bin-libreoffice-java-6.0.6.2.xd3 23279002 BLAKE2B fc540ffbbab1d9dc5c1dd4a05425d2682188e9245532f1cc855277eda8f69e1a4e7d6f3a6ae1041d8b2f66a9f220bd2869fb2358ae7ed658b2e793ea6960986b SHA512 b953afa7faa715a2713e0aebb7fc740f9dbd7bd10830385d3cb19530f6bb4714dffa59eebc42656fa92b12b70bb71825790bdd8203a1874f0aa2604b4e736934
|
||||
DIST x86-bin-libreoffice-java-6.1.4.2.xd3 25437540 BLAKE2B 81b009745af9e9fe0dbbc73347faf62b5b53c1bb34209f46b93b7901be30971b777ea2ed27d891f21f3f866b749006e4dc96611fb0d6acfb893ebd5ecbdc50cd SHA512 04bc232a391c3a20be59b3349830825bf7e19f10c2b70a1417a3d32ee784ad999b7fad15b2189a95e9530fb57d8c580e2efbecb71a5e822b816bab1a290158e5
|
||||
DIST x86-bin-libreoffice-kde-6.0.6.2.xd3 16613416 BLAKE2B c10e126670a948f60f51f935150d803a20e3f26ea43822173a8d31818bfa851b52ae75a038bb8fa3ae3e3547459264ce882670e88d2f132bf6315a2aa60504f4 SHA512 f857c19d0f6f431be9e9efb40daae14b5f762bf2580024215fa751e9ccccc3dbd368b5214f1669f590f54870e8d673be58fa57eb9bc452fc4f3126c06f437e7a
|
||||
DIST x86-bin-libreoffice-kde-6.1.4.2.xd3 15913661 BLAKE2B ebeea8f8efa2608ad23c0cddd7f77f908f2fd99cf877934470b4917c0f125ebae7431166d006d02c02980d5b0e7308bb0ce36329dfefb26733f5f70dea389319 SHA512 079d1c2b76776626f9e6f1c9e25590eb7be8b24e5fe8f40abb78bda4b24b1fda1b3077974387d7d04f41105b0f464af1018fd4cb7b4e0d35465d564a94bbd981
|
||||
DIST x86-bin-libreoffice-kde-java-6.0.6.2.xd3 24393402 BLAKE2B db927aa404b4b0d6e9cc5f8be019e5701937f3fc2146d731a8fa007ddedf5a992b1f36c4eb4e30f20821b497d20011441db305d344b24831cfa075a232dc542a SHA512 f42defba10412acb0676fe3e23dfd39a11456812db908ac1e8120d4ef9cf95fce6d1cdcd344c21b6675e17b8117488caa36b0bc44bcabbc77d19c95ac8789875
|
||||
DIST x86-bin-libreoffice-kde-java-6.1.4.2.xd3 25702585 BLAKE2B a66567473b111de9a8303f5fd861f5abb62de40be477f33f20755aa2e04896816ff04ce9bc6adcab841adb333a5edd8ae7f50c201d837166e81f38ccef49b8aa SHA512 f5c689cc8682652d2c9b7c3a5e7a7831295b55f241d63aa9e0f470ee772d8a7be4c72244e4e2d76fbc82cb075b0fcfcf293ddf27bf6aed83c73abc57f491fe33
|
||||
|
@ -1,275 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
BASE_PACKAGENAME="bin"
|
||||
BASE_AMD64_URI="https://tamiko.kyomu.43-1.org/distfiles/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="https://tamiko.kyomu.43-1.org/distfiles/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
PYTHON_COMPAT=( python3_6 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
inherit gnome2-utils java-pkg-opt-2 python-single-r1 pax-utils prefix versionator xdg-utils
|
||||
|
||||
DESCRIPTION="A full office productivity suite. Binary package"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
|
||||
BIN_COMMON_DEPEND="
|
||||
app-text/hunspell:0/1.6
|
||||
=app-text/libexttextcat-3.4*
|
||||
=app-text/libmwaw-0.3*
|
||||
dev-libs/boost:0/1.65.0
|
||||
dev-libs/icu:0/60.2
|
||||
>=media-gfx/graphite2-1.3.10
|
||||
media-libs/harfbuzz:0/0.9.18[icu]
|
||||
media-libs/libpng:0/16
|
||||
>=sys-devel/gcc-7.3.0
|
||||
>=sys-libs/glibc-2.26
|
||||
virtual/jpeg:62
|
||||
"
|
||||
|
||||
# PLEASE place any restrictions that are specific to the binary builds
|
||||
# into the BIN_COMMON_DEPEND block above.
|
||||
# All dependencies below this point should remain identical to those in
|
||||
# the source ebuilds.
|
||||
|
||||
COMMON_DEPEND="
|
||||
${BIN_COMMON_DEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/unzip
|
||||
app-arch/zip
|
||||
app-crypt/gpgme[cxx]
|
||||
app-text/hunspell:=
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libebook-0.1
|
||||
app-text/libepubgen
|
||||
>=app-text/libetonyek-0.1
|
||||
app-text/libexttextcat
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libqxp
|
||||
app-text/libstaroffice
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.4
|
||||
app-text/mythes
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
=dev-cpp/libcmis-0.5*
|
||||
dev-db/unixODBC
|
||||
dev-lang/perl
|
||||
dev-libs/boost:=[nls]
|
||||
dev-libs/expat
|
||||
dev-libs/hyphen
|
||||
dev-libs/icu:=
|
||||
dev-libs/libassuan
|
||||
dev-libs/libgpg-error
|
||||
>=dev-libs/liborcus-0.13.3
|
||||
dev-libs/librevenge
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
>=dev-libs/redland-1.0.16
|
||||
>=dev-libs/xmlsec-1.2.24[nss]
|
||||
media-gfx/graphite2
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype:2
|
||||
>=media-libs/harfbuzz-0.9.42:=[graphite,icu]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libepoxy-1.3.1[X]
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
media-libs/libpagemaker
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libvisio-0.1.0
|
||||
media-libs/libzmf
|
||||
net-libs/neon
|
||||
net-misc/curl
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
sys-libs/zlib:=
|
||||
virtual/glu
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
x11-libs/cairo[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
net-print/cups
|
||||
dev-libs/dbus-glib
|
||||
gnome? (
|
||||
dev-libs/glib:2
|
||||
gnome-base/dconf
|
||||
gnome-extra/evolution-data-server
|
||||
)
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
gnome? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
gnome-base/dconf
|
||||
media-libs/mesa[egl]
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
)
|
||||
kde? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
gnome-base/dconf
|
||||
media-libs/mesa[egl]
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
)
|
||||
x11-libs/gdk-pixbuf
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
x11-libs/pango
|
||||
kde? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtx11extras:5
|
||||
dev-qt/qtwidgets:5
|
||||
kde-frameworks/kconfig:5
|
||||
kde-frameworks/kcoreaddons:5
|
||||
kde-frameworks/ki18n:5
|
||||
kde-frameworks/kio:5
|
||||
kde-frameworks/kwindowsystem:5
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice
|
||||
!app-office/openoffice
|
||||
media-fonts/dejavu
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/libertine
|
||||
|| ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
kde? ( kde-frameworks/breeze-icons:* )
|
||||
"
|
||||
|
||||
PDEPEND="
|
||||
=app-office/libreoffice-l10n-${PV}*
|
||||
"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
# only one flavor at a time
|
||||
REQUIRED_USE="kde? ( !gnome ) gnome? ( !kde ) ${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
QA_PREBUILT="/usr/*"
|
||||
|
||||
pkg_pretend() {
|
||||
[[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -le 4 ]] ) \
|
||||
&& die "Sorry, but gcc-4.4 and earlier won't work for libreoffice-bin package (see bug #387515)."
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [ -n "${patchname}" ]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cp "${FILESDIR}"/50-${PN} "${T}"
|
||||
eprefixify "${T}"/50-${PN}
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/
|
||||
|
||||
# prevent revdep-rebuild from attempting to rebuild all the time
|
||||
insinto /etc/revdep-rebuild && doins "${T}/50-${PN}"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
|
||||
pax-mark -m "${EPREFIX}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${EPREFIX}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
@ -1,88 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit rpm eapi7-ver
|
||||
|
||||
MY_PV=$(ver_cut 1-3)
|
||||
|
||||
DESCRIPTION="Translations for the Libreoffice suite"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
BASE_SRC_URI_TESTING="https://download.documentfoundation.org/${PN/-l10n/}/testing/${MY_PV}/rpm"
|
||||
BASE_SRC_URI_STABLE="https://download.documentfoundation.org/${PN/-l10n/}/stable/${MY_PV}/rpm"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="offlinehelp"
|
||||
|
||||
#
|
||||
# when changing the language lists, please be careful to preserve the spaces (bug 491728)
|
||||
#
|
||||
# "en:en-US" for mapping from Gentoo "en" to upstream "en-US" etc.
|
||||
LANGUAGES_HELP=" am ast bg bn-IN bn bo bs ca-valencia ca cs da de dz el en-GB en:en-US en-ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko mk nb ne nl nn om pl pt-BR pt ru si sk sl sq sv tg tr ug uk vi zh-CN zh-TW "
|
||||
LANGUAGES="${LANGUAGES_HELP}af ar as be br brx cy dgo fa ga gd gug kk kmr-Latn kn kok ks lb lo lt lv mai ml mn mni mr my nr nso oc or pa:pa-IN ro rw sa:sa-IN sat sd sid sr-Latn sr ss st sw-TZ ta te th tn ts tt uz ve xh zu "
|
||||
|
||||
for lang in ${LANGUAGES_HELP}; do
|
||||
helppack="offlinehelp? ( ${BASE_SRC_URI_STABLE}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_helppack_${lang#*:}.tar.gz -> LibreOffice_${PV}_Linux_x86_rpm_helppack_${lang#*:}.tar.gz ${BASE_SRC_URI_TESTING}/x86/LibreOffice_${PV}_Linux_x86_rpm_helppack_${lang#*:}.tar.gz )"
|
||||
SRC_URI+=" l10n_${lang%:*}? ( ${helppack} )"
|
||||
done
|
||||
for lang in ${LANGUAGES}; do
|
||||
if [[ ${lang%:*} != en ]]; then
|
||||
langpack="${BASE_SRC_URI_STABLE}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_langpack_${lang#*:}.tar.gz -> LibreOffice_${PV}_Linux_x86_rpm_langpack_${lang#*:}.tar.gz ${BASE_SRC_URI_TESTING}/x86/LibreOffice_${PV}_Linux_x86_rpm_langpack_${lang#*:}.tar.gz"
|
||||
SRC_URI+=" l10n_${lang%:*}? ( ${langpack} )"
|
||||
fi
|
||||
IUSE+=" l10n_${lang%:*}"
|
||||
done
|
||||
unset lang helppack langpack
|
||||
|
||||
RDEPEND+="app-text/hunspell"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local lang dir rpmdir
|
||||
|
||||
# First remove dictionaries, we want to use system ones.
|
||||
find "${S}" -name *dict*.rpm -delete || die "Failed to remove dictionaries"
|
||||
|
||||
for lang in ${LANGUAGES}; do
|
||||
# break away if not enabled
|
||||
use l10n_${lang%:*} || continue
|
||||
|
||||
dir=${lang#*:}
|
||||
|
||||
# for english we provide just helppack, as translation is always there
|
||||
if [[ ${lang%:*} != en ]]; then
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_langpack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
|
||||
rpm_unpack ./${rpmdir}/*.rpm
|
||||
fi
|
||||
if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_helppack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
|
||||
rpm_unpack ./${rpmdir}/*.rpm
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
local dir="${S}"/opt/${PN/-l10n/}$(ver_cut 1-2)/
|
||||
# Condition required for people that do not install anything eg no l10n
|
||||
# or just english with no offlinehelp.
|
||||
if [[ -d "${dir}" ]] ; then
|
||||
insinto /usr/$(get_libdir)/${PN/-l10n/}/
|
||||
doins -r "${dir}"/*
|
||||
fi
|
||||
# remove extensions that are in the l10n for some weird reason
|
||||
rm -rf "${ED}"usr/$(get_libdir)/${PN/-l10n/}/share/extensions/ || \
|
||||
die "Failed to remove extensions"
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
From 7b54f3db98e96231fc9f16429f325cdb1f37498c Mon Sep 17 00:00:00 2001
|
||||
From: Michael Weghorn <m.weghorn@posteo.de>
|
||||
Date: Thu, 31 Jan 2019 09:52:51 +0100
|
||||
Subject: tdf#123077 gtk3_kde5: Set KFileWidget's custom widget only once
|
||||
|
||||
Since the event filter is only used to set the custom
|
||||
widget in the KFileWidget, it can and needs to be removed
|
||||
again once this has been done; which also avoids crashes.
|
||||
|
||||
(s. https://gerrit.libreoffice.org/#/c/67185/ for more
|
||||
infos, where the same thing is done for kde5)
|
||||
|
||||
Change-Id: I5c719fb17510916b4730ed5c00bb638df2f183e3
|
||||
Reviewed-on: https://gerrit.libreoffice.org/67184
|
||||
Tested-by: Jenkins
|
||||
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
||||
(cherry picked from commit 30cc54a4532a732a0cf6dfe9943521978ff7292f)
|
||||
Reviewed-on: https://gerrit.libreoffice.org/67203
|
||||
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
|
||||
---
|
||||
vcl/unx/gtk3_kde5/kde5_filepicker.cxx | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/vcl/unx/gtk3_kde5/kde5_filepicker.cxx b/vcl/unx/gtk3_kde5/kde5_filepicker.cxx
|
||||
index 33f64ad0..9914869 100644
|
||||
--- a/vcl/unx/gtk3_kde5/kde5_filepicker.cxx
|
||||
+++ b/vcl/unx/gtk3_kde5/kde5_filepicker.cxx
|
||||
@@ -265,7 +265,11 @@ bool KDE5FilePicker::eventFilter(QObject* o, QEvent* e)
|
||||
{
|
||||
KWindowSystem::setMainWindow(w, _winId);
|
||||
if (auto* fileWidget = w->findChild<KFileWidget*>({}, Qt::FindDirectChildrenOnly))
|
||||
+ {
|
||||
fileWidget->setCustomWidget(_extraControls);
|
||||
+ // remove event filter again; the only purpose was to set the custom widget here
|
||||
+ qApp->removeEventFilter(this);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
return QObject::eventFilter(o, e);
|
||||
--
|
||||
cgit v1.1
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,60 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit autotools flag-o-matic
|
||||
|
||||
DESCRIPTION="Hypertext info and man viewer based on (n)curses"
|
||||
HOMEPAGE="http://pinfo.alioth.debian.org/"
|
||||
SRC_URI="https://alioth.debian.org/frs/download.php/3351/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
|
||||
IUSE="nls readline"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/ncurses:0=
|
||||
sys-libs/readline:0=
|
||||
nls? ( virtual/libintl )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
sys-apps/texinfo
|
||||
sys-devel/bison
|
||||
virtual/pkgconfig
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.6.9-as-needed.patch
|
||||
"${FILESDIR}"/${PN}-0.6.9-GROFF_NO_SGR.patch
|
||||
"${FILESDIR}"/${PN}-0.6.9-lzma-xz.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-version.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-info-suffix.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-dir-file.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-tinfo.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-gettext-0.19.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-ncurses-check.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-libc-basename.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-clearfilenameprefix.patch
|
||||
"${FILESDIR}"/${PN}-0.6.10-gcc-7-inline.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
|
||||
append-cflags -D_BSD_SOURCE -D_DEFAULT_SOURCE # sbrk()
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_with readline) \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" sysconfdir="${EPREFIX}/etc" install
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,16 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
VERSION="AdoptOpenJDK ${PV}"
|
||||
JAVA_HOME="${EPREFIX}/opt/${P}"
|
||||
JDK_HOME="${EPREFIX}/opt/${P}"
|
||||
JAVAC="\${JAVA_HOME}/bin/javac"
|
||||
PATH="\${JAVA_HOME}/bin"
|
||||
ROOTPATH="\${JAVA_HOME}/bin"
|
||||
LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
|
||||
MANPATH="\${JAVA_HOME}/man"
|
||||
PROVIDES_TYPE="JDK JRE"
|
||||
PROVIDES_VERSION="1.${SLOT}"
|
||||
BOOTCLASSPATH="\${JAVA_HOME}/jre/lib/resources.jar:\${JAVA_HOME}/jre/lib/rt.jar:\${JAVA_HOME}/jre/lib/jsse.jar:\${JAVA_HOME}/jre/lib/jce.jar:\${JAVA_HOME}/jre/lib/charsets.jar:\${JAVA_HOME}/jre/lib/jfr.jar"
|
||||
GENERATION="2"
|
||||
ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
|
@ -0,0 +1,101 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eapi7-ver java-vm-2
|
||||
|
||||
abi_uri() {
|
||||
echo "${2-$1}? (
|
||||
https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jdk_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
|
||||
)"
|
||||
}
|
||||
|
||||
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
|
||||
SLOT="$(ver_cut 1)"
|
||||
|
||||
DESCRIPTION="Prebuilt Java JDK binaries provided by AdoptOpenJDK"
|
||||
HOMEPAGE="https://adoptopenjdk.net"
|
||||
SRC_URI="
|
||||
$(abi_uri aarch64 arm64)
|
||||
"
|
||||
|
||||
LICENSE="GPL-2-with-classpath-exception"
|
||||
KEYWORDS="~arm64"
|
||||
|
||||
IUSE="alsa cups doc examples +gentoo-vm headless-awt nsplugin selinux source +webstart"
|
||||
|
||||
RDEPEND="
|
||||
media-libs/fontconfig:1.0
|
||||
media-libs/freetype:2
|
||||
>=sys-libs/glibc-2.2.5:*
|
||||
sys-libs/zlib
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
cups? ( net-print/cups )
|
||||
doc? ( dev-java/java-sdk-docs:1.${SLOT} )
|
||||
selinux? ( sec-policy/selinux-java )
|
||||
!headless-awt? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXtst
|
||||
)"
|
||||
|
||||
PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
|
||||
nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )"
|
||||
|
||||
RESTRICT="preserve-libs splitdebug"
|
||||
QA_PREBUILT="*"
|
||||
|
||||
S="${WORKDIR}/jdk${MY_PV}"
|
||||
|
||||
src_install() {
|
||||
local dest="/opt/${P}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
|
||||
rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
|
||||
|
||||
# this does not exist on arm64 hence -f
|
||||
rm -fv jre/lib/*/libfreetype.so* || die
|
||||
|
||||
if ! use alsa ; then
|
||||
rm -v jre/lib/*/libjsoundalsa.so* || die
|
||||
fi
|
||||
|
||||
if ! use examples ; then
|
||||
rm -vr sample || die
|
||||
fi
|
||||
|
||||
if use headless-awt ; then
|
||||
rm -fvr */jre/lib/*/lib*{[jx]awt,splashscreen}* \
|
||||
{,jre/}bin/policytool bin/appletviewer || die
|
||||
fi
|
||||
|
||||
if ! use source ; then
|
||||
rm -v src.zip || die
|
||||
fi
|
||||
|
||||
dodir "${dest}"
|
||||
cp -pPR * "${ddest}" || die
|
||||
|
||||
use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
java-vm_revdep-mask
|
||||
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
java-vm-2_pkg_postinst
|
||||
|
||||
if use gentoo-vm ; then
|
||||
ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
|
||||
ewarn "recognised by the system. This will almost certainly break things."
|
||||
else
|
||||
ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
|
||||
ewarn "will not be recognised by the system. For example, simply calling"
|
||||
ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
|
||||
ewarn "fully supports OpenJDK 8. This JDK must therefore be invoked using its"
|
||||
ewarn "absolute location under ${EPREFIX}/opt/${P}."
|
||||
fi
|
||||
}
|
@ -0,0 +1,102 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eapi7-ver java-vm-2
|
||||
|
||||
abi_uri() {
|
||||
echo "${2-$1}? (
|
||||
https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jdk_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
|
||||
)"
|
||||
}
|
||||
|
||||
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
|
||||
SLOT="$(ver_cut 1)"
|
||||
|
||||
DESCRIPTION="Prebuilt Java JDK binaries provided by AdoptOpenJDK"
|
||||
HOMEPAGE="https://adoptopenjdk.net"
|
||||
SRC_URI="
|
||||
$(abi_uri x64 amd64)
|
||||
$(abi_uri ppc64le ppc64)
|
||||
"
|
||||
|
||||
LICENSE="GPL-2-with-classpath-exception"
|
||||
KEYWORDS="~amd64 ~ppc64"
|
||||
|
||||
IUSE="alsa cups doc examples +gentoo-vm headless-awt nsplugin selinux source +webstart"
|
||||
|
||||
RDEPEND="
|
||||
media-libs/fontconfig:1.0
|
||||
media-libs/freetype:2
|
||||
>=sys-libs/glibc-2.2.5:*
|
||||
sys-libs/zlib
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
cups? ( net-print/cups )
|
||||
doc? ( dev-java/java-sdk-docs:1.${SLOT} )
|
||||
selinux? ( sec-policy/selinux-java )
|
||||
!headless-awt? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXtst
|
||||
)"
|
||||
|
||||
PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
|
||||
nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )"
|
||||
|
||||
RESTRICT="preserve-libs splitdebug"
|
||||
QA_PREBUILT="*"
|
||||
|
||||
S="${WORKDIR}/jdk${MY_PV}"
|
||||
|
||||
src_install() {
|
||||
local dest="/opt/${P}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
|
||||
rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
|
||||
|
||||
# this does not exist on arm64 hence -f
|
||||
rm -fv jre/lib/*/libfreetype.so* || die
|
||||
|
||||
if ! use alsa ; then
|
||||
rm -v jre/lib/*/libjsoundalsa.so* || die
|
||||
fi
|
||||
|
||||
if ! use examples ; then
|
||||
rm -vr sample || die
|
||||
fi
|
||||
|
||||
if use headless-awt ; then
|
||||
rm -fvr */jre/lib/*/lib*{[jx]awt,splashscreen}* \
|
||||
{,jre/}bin/policytool bin/appletviewer || die
|
||||
fi
|
||||
|
||||
if ! use source ; then
|
||||
rm -v src.zip || die
|
||||
fi
|
||||
|
||||
dodir "${dest}"
|
||||
cp -pPR * "${ddest}" || die
|
||||
|
||||
use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
java-vm_revdep-mask
|
||||
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
java-vm-2_pkg_postinst
|
||||
|
||||
if use gentoo-vm ; then
|
||||
ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
|
||||
ewarn "recognised by the system. This will almost certainly break things."
|
||||
else
|
||||
ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
|
||||
ewarn "will not be recognised by the system. For example, simply calling"
|
||||
ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
|
||||
ewarn "fully supports OpenJDK 8. This JDK must therefore be invoked using its"
|
||||
ewarn "absolute location under ${EPREFIX}/opt/${P}."
|
||||
fi
|
||||
}
|
@ -1,2 +1,10 @@
|
||||
DIST jdk-11.0.1+13.tar.bz2 90134818 BLAKE2B c79f32dc5b531a06317afb87ef15495267e914b9b292a1d434514a90298d8234e7e0ba92659416b15d9392c7513d976a0c81411953cb6706a27ee57c965e36fb SHA512 c534c2fa8dcd4fdebef6f00473d5ceaae4a33bd1e1a417846508e25f154b1ded649a73468c8c71ac0c1e27bab5f641a3b480a264b532a0c30be2869c3d11a15d
|
||||
DIST jdk-11.0.2+7.tar.bz2 90189455 BLAKE2B 37473a8db4c6ad6789ea67b44f4dda94b9f59143c681a206aa0931b3a2a376fbc480c0c5a6b617072cf9ce1faca34a6c5c5e56cfec9fbf5482b82520fb2463c4 SHA512 03214d9fc920c04f3057594efa78ff588a630e6c594e5bbcc24b4c327fa08273ce060063d98720cdc04bc6978a3d04e172f38ba7a3bcabf02dd5dad397fd9952
|
||||
DIST openjdk-8.202_p08.tar.bz2 449202 BLAKE2B 8f7442918c083e94cda0e029cf2348dd9242653027f84d66deebe162e0928b2c6a86d3f273ba235bad5e5656f2b109e6521aaccfa81332fea92873d008ac0c0d SHA512 586713b889dd60c7dc65fccd39ef3ddd985ebb95a7c6c1feaef3c8d76fd1d929bbf19a99f72274c1afb77bd7f80b581d44add4aa232358d8951f7cc5befb43d0
|
||||
DIST openjdk-corba-8.202_p08.tar.bz2 1033539 BLAKE2B 9cbe20fb771157142329db037866ec7d67ff7e70318bec8b74034ce59574cd730975f0e7a3d6b88fc946b1d340558a92ca867639765a205883481fd071d7059e SHA512 9b25132c76f559055698c52888f6cae287096e05b89541cb8e445b46a488126a38e58d4f28649e277862eac7aa20f75f64dbcdcf56c900dcb0530a9545c4f717
|
||||
DIST openjdk-hotspot-8.202_p08.tar.bz2 7918616 BLAKE2B a35cedf99a5067896dc498d4baa9b10f4ceb1ffcf946632b578c45d6354e4d025d82462797e56773507e504e5e25a25cdf63485460f9a8df234474a2e110f91a SHA512 ab53e77a4081a34c250750d7b975f790936cf370e81807d0081b006a12c0ceb452f54bd40cc8085a9f16047d270b9b610ee777f6fcd1431ff9d77461c32db464
|
||||
DIST openjdk-jaxp-8.202_p08.tar.bz2 2733553 BLAKE2B 53341136b427152115ea0d4f758228090a607270104c88ebb61bc442ddd51a43cfed03c34660a47ab55bb601e1a9d8bf4fcdab05874bf0a5ada33b1ecb60df45 SHA512 9671fb56b6127359376cc2f85d91eb027fb1df1f808e36abbe3a1265d88d50809c34d73b84f52fb6e058ef78017d8d7a24bd097a9d720ad70a6861aa9fcc80f2
|
||||
DIST openjdk-jaxws-8.202_p08.tar.bz2 2541554 BLAKE2B a92aae4290e1901b736a6a93aed3b8c4bca14046a1f3eb9939ea9bf8ae0cd09785cf37045a8274641f13e543b49114ff158b9bc0cdd58163b42791e952ac76d0 SHA512 ce385f247a57695f716894137d868fa492d610776d120966c86b741688d6df54ae9538da7cf7b9530212a288ac4ff0d156e09bd5d01305b8165b939fa518fede
|
||||
DIST openjdk-jdk-8.202_p08.tar.bz2 46618401 BLAKE2B e73b1341b837a0983ded4b4969ce83f9b77283e1d4d51e8d31a1b7401961a0b78943a41d2fe0aa724d85ac93dc3082511bcea341e87daecd070278ae59c8f240 SHA512 20e6747b506091383166298aeed6ff4ffd9deb92f20765ef839bf46d3ecae6b1aa218eb6857e6541df0522b8d571379341e94eb5bef765a1164cf9f59b20dfac
|
||||
DIST openjdk-langtools-8.202_p08.tar.bz2 2392880 BLAKE2B 45ebebe4864e3274e14cf27986cd96facfe2f8e5c1292344e05743d1448f95367caf0f68886c506ce10435fbf53948c6b9f7087ad5d2cd090cf0f1becb962843 SHA512 a1e1c3dc06b3a58082e1d67d58ffeaf0bc3c5534fd1ba368e835a54d3c6ba9232e277ae685ed3ff5ccdf3cd7fe0612ad78a08ed55d1d2d06de54914a19377907
|
||||
DIST openjdk-nashorn-8.202_p08.tar.bz2 2854026 BLAKE2B 05ba828160270e52f27023db83b1ffc4e6611b7a74b300a93a6d476f319a265834b48c7de57b0d3bea502d88279e72fd9cfbc5f3eb0e719650e34e82ba4a3d09 SHA512 bea0eaa4b2247cf1e5ee33613754c8f2f6ffe074a7be562f26e63c6327f56d67f60d4877dd363ed8a812689db1d837f5c257637460e247a1592c3258f3add11b
|
||||
|
@ -0,0 +1,358 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
# Copyright (C) 2007, 2008 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# generate-cacerts.pl generates a JKS keystore named 'cacerts' from
|
||||
# OpenSSL's certificate bundle using OpenJDK's keytool.
|
||||
|
||||
# First extract each of OpenSSL's bundled certificates into its own
|
||||
# aliased filename.
|
||||
|
||||
# Downloaded from http://cvs.fedoraproject.org/viewvc/rpms/ca-certificates/F-12/generate-cacerts.pl?revision=1.2
|
||||
# Check and prevention of duplicate aliases added by Vlastimil Babka <caster@gentoo.org>
|
||||
|
||||
$file = $ARGV[1];
|
||||
open(CERTS, $file);
|
||||
@certs = <CERTS>;
|
||||
close(CERTS);
|
||||
|
||||
$pem_file_count = 0;
|
||||
$in_cert_block = 0;
|
||||
$write_current_cert = 1;
|
||||
foreach $cert (@certs)
|
||||
{
|
||||
if ($cert =~ /Issuer: /)
|
||||
{
|
||||
$_ = $cert;
|
||||
if ($cert =~ /personal-freemail/)
|
||||
{
|
||||
$cert_alias = "thawtepersonalfreemailca";
|
||||
}
|
||||
elsif ($cert =~ /personal-basic/)
|
||||
{
|
||||
$cert_alias = "thawtepersonalbasicca";
|
||||
}
|
||||
elsif ($cert =~ /personal-premium/)
|
||||
{
|
||||
$cert_alias = "thawtepersonalpremiumca";
|
||||
}
|
||||
elsif ($cert =~ /server-certs/)
|
||||
{
|
||||
$cert_alias = "thawteserverca";
|
||||
}
|
||||
elsif ($cert =~ /premium-server/)
|
||||
{
|
||||
$cert_alias = "thawtepremiumserverca";
|
||||
}
|
||||
elsif ($cert =~ /Class 1 Public Primary Certification Authority$/)
|
||||
{
|
||||
$cert_alias = "verisignclass1ca";
|
||||
}
|
||||
elsif ($cert =~ /Class 1 Public Primary Certification Authority - G2/)
|
||||
{
|
||||
$cert_alias = "verisignclass1g2ca";
|
||||
}
|
||||
elsif ($cert =~
|
||||
/VeriSign Class 1 Public Primary Certification Authority - G3/)
|
||||
{
|
||||
$cert_alias = "verisignclass1g3ca";
|
||||
}
|
||||
elsif ($cert =~ /Class 2 Public Primary Certification Authority$/)
|
||||
{
|
||||
$cert_alias = "verisignclass2ca";
|
||||
}
|
||||
elsif ($cert =~ /Class 2 Public Primary Certification Authority - G2/)
|
||||
{
|
||||
$cert_alias = "verisignclass2g2ca";
|
||||
}
|
||||
elsif ($cert =~
|
||||
/VeriSign Class 2 Public Primary Certification Authority - G3/)
|
||||
{
|
||||
$cert_alias = "verisignclass2g3ca";
|
||||
}
|
||||
elsif ($cert =~ /Class 3 Public Primary Certification Authority$/)
|
||||
{
|
||||
$cert_alias = "verisignclass3ca";
|
||||
}
|
||||
# Version 1 of Class 3 Public Primary Certification Authority
|
||||
# - G2 is added. Version 3 is excluded. See below.
|
||||
elsif ($cert =~
|
||||
/VeriSign Class 3 Public Primary Certification Authority - G3/)
|
||||
{
|
||||
$cert_alias = "verisignclass3g3ca";
|
||||
}
|
||||
elsif ($cert =~
|
||||
/RSA Data Security.*Secure Server Certification Authority/)
|
||||
{
|
||||
$cert_alias = "verisignserverca";
|
||||
}
|
||||
elsif ($cert =~ /GTE CyberTrust Global Root/)
|
||||
{
|
||||
$cert_alias = "gtecybertrustglobalca";
|
||||
}
|
||||
elsif ($cert =~ /Baltimore CyberTrust Root/)
|
||||
{
|
||||
$cert_alias = "baltimorecybertrustca";
|
||||
}
|
||||
elsif ($cert =~ /www.entrust.net\/Client_CA_Info\/CPS/)
|
||||
{
|
||||
$cert_alias = "entrustclientca";
|
||||
}
|
||||
elsif ($cert =~ /www.entrust.net\/GCCA_CPS/)
|
||||
{
|
||||
$cert_alias = "entrustglobalclientca";
|
||||
}
|
||||
elsif ($cert =~ /www.entrust.net\/CPS_2048/)
|
||||
{
|
||||
$cert_alias = "entrust2048ca";
|
||||
}
|
||||
elsif ($cert =~ /www.entrust.net\/CPS /)
|
||||
{
|
||||
$cert_alias = "entrustsslca";
|
||||
}
|
||||
elsif ($cert =~ /www.entrust.net\/SSL_CPS/)
|
||||
{
|
||||
$cert_alias = "entrustgsslca";
|
||||
}
|
||||
elsif ($cert =~ /The Go Daddy Group/)
|
||||
{
|
||||
$cert_alias = "godaddyclass2ca";
|
||||
}
|
||||
elsif ($cert =~ /Starfield Class 2 Certification Authority/)
|
||||
{
|
||||
$cert_alias = "starfieldclass2ca";
|
||||
}
|
||||
elsif ($cert =~ /ValiCert Class 2 Policy Validation Authority/)
|
||||
{
|
||||
$cert_alias = "valicertclass2ca";
|
||||
}
|
||||
elsif ($cert =~ /GeoTrust Global CA$/)
|
||||
{
|
||||
$cert_alias = "geotrustglobalca";
|
||||
}
|
||||
elsif ($cert =~ /Equifax Secure Certificate Authority/)
|
||||
{
|
||||
$cert_alias = "equifaxsecureca";
|
||||
}
|
||||
elsif ($cert =~ /Equifax Secure eBusiness CA-1/)
|
||||
{
|
||||
$cert_alias = "equifaxsecureebusinessca1";
|
||||
}
|
||||
elsif ($cert =~ /Equifax Secure eBusiness CA-2/)
|
||||
{
|
||||
$cert_alias = "equifaxsecureebusinessca2";
|
||||
}
|
||||
elsif ($cert =~ /Equifax Secure Global eBusiness CA-1/)
|
||||
{
|
||||
$cert_alias = "equifaxsecureglobalebusinessca1";
|
||||
}
|
||||
elsif ($cert =~ /Sonera Class1 CA/)
|
||||
{
|
||||
$cert_alias = "soneraclass1ca";
|
||||
}
|
||||
elsif ($cert =~ /Sonera Class2 CA/)
|
||||
{
|
||||
$cert_alias = "soneraclass2ca";
|
||||
}
|
||||
elsif ($cert =~ /AAA Certificate Services/)
|
||||
{
|
||||
$cert_alias = "comodoaaaca";
|
||||
}
|
||||
elsif ($cert =~ /AddTrust Class 1 CA Root/)
|
||||
{
|
||||
$cert_alias = "addtrustclass1ca";
|
||||
}
|
||||
elsif ($cert =~ /AddTrust External CA Root/)
|
||||
{
|
||||
$cert_alias = "addtrustexternalca";
|
||||
}
|
||||
elsif ($cert =~ /AddTrust Qualified CA Root/)
|
||||
{
|
||||
$cert_alias = "addtrustqualifiedca";
|
||||
}
|
||||
elsif ($cert =~ /UTN-USERFirst-Hardware/)
|
||||
{
|
||||
$cert_alias = "utnuserfirsthardwareca";
|
||||
}
|
||||
elsif ($cert =~ /UTN-USERFirst-Client Authentication and Email/)
|
||||
{
|
||||
$cert_alias = "utnuserfirstclientauthemailca";
|
||||
}
|
||||
elsif ($cert =~ /UTN - DATACorp SGC/)
|
||||
{
|
||||
$cert_alias = "utndatacorpsgcca";
|
||||
}
|
||||
elsif ($cert =~ /UTN-USERFirst-Object/)
|
||||
{
|
||||
$cert_alias = "utnuserfirstobjectca";
|
||||
}
|
||||
elsif ($cert =~ /America Online Root Certification Authority 1/)
|
||||
{
|
||||
$cert_alias = "aolrootca1";
|
||||
}
|
||||
elsif ($cert =~ /DigiCert Assured ID Root CA/)
|
||||
{
|
||||
$cert_alias = "digicertassuredidrootca";
|
||||
}
|
||||
elsif ($cert =~ /DigiCert Global Root CA/)
|
||||
{
|
||||
$cert_alias = "digicertglobalrootca";
|
||||
}
|
||||
elsif ($cert =~ /DigiCert High Assurance EV Root CA/)
|
||||
{
|
||||
$cert_alias = "digicerthighassuranceevrootca";
|
||||
}
|
||||
elsif ($cert =~ /GlobalSign Root CA$/)
|
||||
{
|
||||
$cert_alias = "globalsignca";
|
||||
}
|
||||
elsif ($cert =~ /GlobalSign Root CA - R2/)
|
||||
{
|
||||
$cert_alias = "globalsignr2ca";
|
||||
}
|
||||
elsif ($cert =~ /Elektronik.*Kas.*2005/)
|
||||
{
|
||||
$cert_alias = "extra-elektronikkas2005";
|
||||
}
|
||||
elsif ($cert =~ /Elektronik/)
|
||||
{
|
||||
$cert_alias = "extra-elektronik2005";
|
||||
}
|
||||
# Mozilla does not provide these certificates:
|
||||
# baltimorecodesigningca
|
||||
# gtecybertrust5ca
|
||||
# trustcenterclass2caii
|
||||
# trustcenterclass4caii
|
||||
# trustcenteruniversalcai
|
||||
else
|
||||
{
|
||||
# Generate an alias using the OU and CN attributes of the
|
||||
# Issuer field if both are present, otherwise use only the
|
||||
# CN attribute. The Issuer field must have either the OU
|
||||
# or the CN attribute.
|
||||
$_ = $cert;
|
||||
if ($cert =~ /OU=/)
|
||||
{
|
||||
s/Issuer:.*?OU=//;
|
||||
# Remove other occurrences of OU=.
|
||||
s/OU=.*CN=//;
|
||||
# Remove CN= if there were not other occurrences of OU=.
|
||||
s/CN=//;
|
||||
s/\/emailAddress.*//;
|
||||
s/Certificate Authority/ca/g;
|
||||
s/Certification Authority/ca/g;
|
||||
}
|
||||
elsif ($cert =~ /CN=/)
|
||||
{
|
||||
s/Issuer:.*CN=//;
|
||||
s/\/emailAddress.*//;
|
||||
s/Certificate Authority/ca/g;
|
||||
s/Certification Authority/ca/g;
|
||||
}
|
||||
s/\W//g;
|
||||
tr/A-Z/a-z/;
|
||||
$cert_alias = "extra-$_";
|
||||
|
||||
}
|
||||
while (-e "$cert_alias.pem")
|
||||
{
|
||||
$cert_alias = "$cert_alias" . "_";
|
||||
}
|
||||
}
|
||||
# When it attempts to parse:
|
||||
#
|
||||
# Class 3 Public Primary Certification Authority - G2, Version 3
|
||||
#
|
||||
# keytool says:
|
||||
#
|
||||
# #2: ObjectId: 1.3.6.1.5.5.7.1.1 Criticality=false
|
||||
# Unparseable AuthorityInfoAccess extension due to
|
||||
# java.io.IOException: Invalid encoding of URI
|
||||
#
|
||||
# If we do not exclude this file
|
||||
# openjdk/jdk/test/lib/security/cacerts/VerifyCACerts.java fails
|
||||
# on this cert, printing:
|
||||
#
|
||||
# Couldn't verify: java.security.SignatureException: Signature
|
||||
# does not match.
|
||||
#
|
||||
elsif ($cert =~
|
||||
/A6:0F:34:C8:62:6C:81:F6:8B:F7:7D:A9:F6:67:58:8A:90:3F:7D:36/)
|
||||
{
|
||||
$write_current_cert = 0;
|
||||
$pem_file_count--;
|
||||
}
|
||||
elsif ($cert eq "-----BEGIN CERTIFICATE-----\n")
|
||||
{
|
||||
if ($in_cert_block != 0)
|
||||
{
|
||||
die "$file is malformed.";
|
||||
}
|
||||
$in_cert_block = 1;
|
||||
if ($write_current_cert == 1)
|
||||
{
|
||||
$pem_file_count++;
|
||||
if (-e "$cert_alias.pem")
|
||||
{
|
||||
print "$cert_alias";
|
||||
die "already exists"
|
||||
}
|
||||
open(PEM, ">$cert_alias.pem");
|
||||
print PEM $cert;
|
||||
}
|
||||
}
|
||||
elsif ($cert eq "-----END CERTIFICATE-----\n")
|
||||
{
|
||||
$in_cert_block = 0;
|
||||
if ($write_current_cert == 1)
|
||||
{
|
||||
print PEM $cert;
|
||||
close(PEM);
|
||||
}
|
||||
$write_current_cert = 1
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($in_cert_block == 1 && $write_current_cert == 1)
|
||||
{
|
||||
print PEM $cert;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Check that the correct number of .pem files were produced.
|
||||
@pem_files = <*.pem>;
|
||||
if (@pem_files != $pem_file_count)
|
||||
{
|
||||
print "$pem_file_count";
|
||||
die "Number of .pem files produced does not match".
|
||||
" number of certs read from $file.";
|
||||
}
|
||||
|
||||
# Now store each cert in the 'cacerts' file using keytool.
|
||||
$certs_written_count = 0;
|
||||
foreach $pem_file (@pem_files)
|
||||
{
|
||||
system "$ARGV[0] -noprompt -import".
|
||||
" -alias `basename $pem_file .pem`".
|
||||
" -keystore cacerts -storepass 'changeit' -file $pem_file";
|
||||
unlink($pem_file);
|
||||
$certs_written_count++;
|
||||
}
|
||||
|
||||
# Check that the correct number of certs were added to the keystore.
|
||||
if ($certs_written_count != $pem_file_count)
|
||||
{
|
||||
die "Number of certs added to keystore does not match".
|
||||
" number of certs read from $file.";
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
VERSION="OpenJDK ${PV}"
|
||||
JAVA_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
|
||||
JDK_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
|
||||
JAVAC="\${JAVA_HOME}/bin/javac"
|
||||
PATH="\${JAVA_HOME}/bin"
|
||||
ROOTPATH="\${JAVA_HOME}/bin"
|
||||
LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
|
||||
MANPATH="\${JAVA_HOME}/man"
|
||||
PROVIDES_TYPE="JDK JRE"
|
||||
PROVIDES_VERSION="1.${SLOT}"
|
||||
BOOTCLASSPATH="\${JAVA_HOME}/jre/lib/resources.jar:\${JAVA_HOME}/jre/lib/rt.jar:\${JAVA_HOME}/jre/lib/jsse.jar:\${JAVA_HOME}/jre/lib/jce.jar:\${JAVA_HOME}/jre/lib/charsets.jar:\${JAVA_HOME}/jre/lib/jfr.jar"
|
||||
GENERATION="2"
|
||||
ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
|
@ -0,0 +1,240 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs
|
||||
|
||||
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
|
||||
|
||||
BASE_URI="https://hg.${PN}.java.net/jdk8u/jdk8u"
|
||||
|
||||
DESCRIPTION="Open source implementation of the Java programming language"
|
||||
HOMEPAGE="https://openjdk.java.net"
|
||||
SRC_URI="
|
||||
${BASE_URI}/archive/jdk${MY_PV}.tar.bz2 -> ${P}.tar.bz2
|
||||
${BASE_URI}/corba/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-corba-${PV}.tar.bz2
|
||||
${BASE_URI}/hotspot/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-hotspot-${PV}.tar.bz2
|
||||
${BASE_URI}/jaxp/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jaxp-${PV}.tar.bz2
|
||||
${BASE_URI}/jaxws/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jaxws-${PV}.tar.bz2
|
||||
${BASE_URI}/jdk/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jdk-${PV}.tar.bz2
|
||||
${BASE_URI}/langtools/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-langtools-${PV}.tar.bz2
|
||||
${BASE_URI}/nashorn/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-nashorn-${PV}.tar.bz2
|
||||
"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="$(ver_cut 1)"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
IUSE="alsa debug cups doc examples gentoo-vm headless-awt +jbootstrap nsplugin +pch selinux source +webstart"
|
||||
|
||||
CDEPEND="
|
||||
media-libs/freetype:2=
|
||||
sys-libs/zlib
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
!headless-awt? (
|
||||
media-libs/giflib:0/7
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
cups? ( net-print/cups )
|
||||
selinux? ( sec-policy/selinux-java )
|
||||
"
|
||||
|
||||
# cups headers requied to build, runtime dep is optional
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
net-print/cups
|
||||
app-arch/zip
|
||||
app-misc/ca-certificates
|
||||
dev-lang/perl
|
||||
dev-libs/openssl:0
|
||||
media-libs/alsa-lib
|
||||
!headless-awt? (
|
||||
x11-base/xorg-proto
|
||||
)
|
||||
|| (
|
||||
dev-java/openjdk-bin:${SLOT}
|
||||
dev-java/icedtea-bin:${SLOT}
|
||||
dev-java/openjdk:${SLOT}
|
||||
dev-java/icedtea:${SLOT}
|
||||
)
|
||||
"
|
||||
|
||||
PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
|
||||
nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )"
|
||||
|
||||
S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
|
||||
|
||||
# The space required to build varies wildly depending on USE flags,
|
||||
# ranging from 2GB to 16GB. This function is certainly not exact but
|
||||
# should be close enough to be useful.
|
||||
openjdk_check_requirements() {
|
||||
local M
|
||||
M=2048
|
||||
M=$(( $(usex debug 3 1) * $M ))
|
||||
M=$(( $(usex jbootstrap 2 1) * $M ))
|
||||
M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
|
||||
|
||||
CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
openjdk_check_requirements
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
openjdk_check_requirements
|
||||
java-vm-2_pkg_setup
|
||||
|
||||
JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT} icedtea-${SLOT} icedtea-bin-${SLOT}"
|
||||
JAVA_PKG_WANT_SOURCE="${SLOT}"
|
||||
JAVA_PKG_WANT_TARGET="${SLOT}"
|
||||
|
||||
# The nastiness below is necessary while the gentoo-vm USE flag is
|
||||
# masked. First we call java-pkg-2_pkg_setup if it looks like the
|
||||
# flag was unmasked against one of the possible build VMs. If not,
|
||||
# we try finding one of them in their expected locations. This would
|
||||
# have been slightly less messy if openjdk-bin had been installed to
|
||||
# /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
|
||||
# file but disable it so that it would not normally be selectable.
|
||||
|
||||
local vm
|
||||
for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
|
||||
if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
|
||||
java-pkg-2_pkg_setup
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
if has_version --host-root dev-java/openjdk:${SLOT}; then
|
||||
export JDK_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
|
||||
else
|
||||
JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
|
||||
[[ -n ${JDK_HOME} ]] || die "Build VM not found!"
|
||||
JDK_HOME=${JDK_HOME#*/}
|
||||
JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
|
||||
export JDK_HOME
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
chmod +x configure || die
|
||||
local repo
|
||||
for repo in corba hotspot jdk jaxp jaxws langtools nashorn; do
|
||||
ln -s ../"${repo}-jdk${MY_PV}" "${repo}" || die
|
||||
done
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# general build info found here:
|
||||
#https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
|
||||
|
||||
# Work around stack alignment issue, bug #647954.
|
||||
use x86 && append-flags -mincoming-stack-boundary=2
|
||||
|
||||
append-flags -Wno-error
|
||||
|
||||
local myconf=(
|
||||
--disable-ccache
|
||||
--enable-unlimited-crypto
|
||||
--with-boot-jdk="${JDK_HOME}"
|
||||
--with-extra-cflags="${CFLAGS}"
|
||||
--with-extra-cxxflags="${CXXFLAGS}"
|
||||
--with-extra-ldflags="${LDFLAGS}"
|
||||
--with-giflib=system
|
||||
--with-jtreg=no
|
||||
--with-jobs=1
|
||||
--with-num-cores=1
|
||||
--with-update-version="$(ver_cut 2)"
|
||||
--with-build-number="$(ver_cut 4)"
|
||||
--with-milestone="gentoo"
|
||||
--with-zlib=system
|
||||
--with-native-debug-symbols=$(usex debug internal none)
|
||||
$(usex headless-awt --disable-headful '')
|
||||
)
|
||||
|
||||
# PaX breaks pch, bug #601016
|
||||
if use pch && ! host-is-pax; then
|
||||
myconf+=( --enable-precompiled-headers )
|
||||
else
|
||||
myconf+=( --disable-precompiled-headers )
|
||||
fi
|
||||
|
||||
(
|
||||
unset JAVA JAVAC XARGS
|
||||
CFLAGS= CXXFLAGS= LDFLAGS= \
|
||||
CONFIG_SITE=/dev/null \
|
||||
econf "${myconf[@]}"
|
||||
)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1 LOG=debug JOBS=$(makeopts_jobs)\
|
||||
$(usex jbootstrap bootcycle-images images) $(usex doc docs '')
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
|
||||
cd "${S}"/build/*-release/images/j2sdk-image || die
|
||||
|
||||
if ! use alsa; then
|
||||
rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
|
||||
fi
|
||||
|
||||
if ! use examples ; then
|
||||
rm -vr demo/ || die
|
||||
fi
|
||||
|
||||
if ! use source ; then
|
||||
rm -v src.zip || die
|
||||
fi
|
||||
|
||||
dodir "${dest}"
|
||||
cp -pPR * "${ddest}" || die
|
||||
|
||||
einfo "Generating cacerts file from certificates in ${EPREFIX}/usr/share/ca-certificates/"
|
||||
mkdir "${T}/certgen" && cd "${T}/certgen" || die
|
||||
cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die
|
||||
for c in "${EPREFIX}"/usr/share/ca-certificates/*/*.crt; do
|
||||
openssl x509 -text -in "${c}" >> all.crt || die
|
||||
done
|
||||
./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die
|
||||
cp -vRP cacerts "${ddest}/jre/lib/security/" || die
|
||||
chmod 644 "${ddest}/jre/lib/security/cacerts" || die
|
||||
|
||||
use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
java-vm_revdep-mask
|
||||
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
|
||||
|
||||
if use doc ; then
|
||||
insinto /usr/share/doc/${PF}/html
|
||||
doins -r "${S}"/build/*-release/docs/*
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
java-vm-2_pkg_postinst
|
||||
|
||||
if use gentoo-vm ; then
|
||||
ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
|
||||
ewarn "recognised by the system. This will almost certainly break things."
|
||||
else
|
||||
ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
|
||||
ewarn "will not be recognised by the system. For example, simply calling"
|
||||
ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
|
||||
ewarn "fully supports Java ${SLOT}. This JDK must therefore be invoked using its"
|
||||
ewarn "absolute location under ${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}."
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,228 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
export CBUILD=${CBUILD:-${CHOST}}
|
||||
export CTARGET=${CTARGET:-${CHOST}}
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
|
||||
BOOTSTRAP_VERSION="bootstrap-1.8"
|
||||
BOOTSTRAP_URI="
|
||||
amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz )
|
||||
arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz )
|
||||
ppc64? (
|
||||
${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
|
||||
${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
|
||||
)
|
||||
s390? ( ${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz )
|
||||
x86? ( ${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz )
|
||||
amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz )
|
||||
x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
"
|
||||
|
||||
case ${PV} in
|
||||
*9999*)
|
||||
EGIT_REPO_URI="https://github.com/golang/go.git"
|
||||
inherit git-r3
|
||||
;;
|
||||
*)
|
||||
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
|
||||
S="${WORKDIR}"/go
|
||||
case ${PV} in
|
||||
*_beta*|*_rc*) ;;
|
||||
*)
|
||||
KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris"
|
||||
# The upstream tests fail under portage but pass if the build is
|
||||
# run according to their documentation [1].
|
||||
# I am restricting the tests on released versions until this is
|
||||
# solved.
|
||||
# [1] https://golang.org/issues/18442
|
||||
RESTRICT="test"
|
||||
;;
|
||||
esac
|
||||
esac
|
||||
SRC_URI+="!gccgo? ( ${BOOTSTRAP_URI} )"
|
||||
|
||||
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
|
||||
HOMEPAGE="https://golang.org"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
IUSE="gccgo"
|
||||
|
||||
DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
|
||||
RDEPEND="!<dev-go/go-tools-0_pre20150902"
|
||||
|
||||
# These test data objects have writable/executable stacks.
|
||||
QA_EXECSTACK="
|
||||
usr/lib/go/src/debug/elf/testdata/*.obj
|
||||
usr/lib/go/src/go/internal/gccgoimporter/testdata/escapeinfo.gox
|
||||
usr/lib/go/src/go/internal/gccgoimporter/testdata/unicode.gox
|
||||
usr/lib/go/src/go/internal/gccgoimporter/testdata/time.gox
|
||||
"
|
||||
|
||||
# Do not complain about CFLAGS, etc, since Go doesn't use them.
|
||||
QA_FLAGS_IGNORED='.*'
|
||||
|
||||
REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
|
||||
|
||||
# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
|
||||
QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
|
||||
|
||||
# Do not strip this package. Stripping is unsupported upstream and may
|
||||
# fail.
|
||||
RESTRICT+=" strip"
|
||||
|
||||
DOCS=(
|
||||
AUTHORS
|
||||
CONTRIBUTING.md
|
||||
CONTRIBUTORS
|
||||
PATENTS
|
||||
README.md
|
||||
)
|
||||
|
||||
go_arch()
|
||||
{
|
||||
# By chance most portage arch names match Go
|
||||
local portage_arch=$(tc-arch $@)
|
||||
case "${portage_arch}" in
|
||||
x86) echo 386;;
|
||||
x64-*) echo amd64;;
|
||||
ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
|
||||
s390) echo s390x ;;
|
||||
*) echo "${portage_arch}";;
|
||||
esac
|
||||
}
|
||||
|
||||
go_arm()
|
||||
{
|
||||
case "${1:-${CHOST}}" in
|
||||
armv5*) echo 5;;
|
||||
armv6*) echo 6;;
|
||||
armv7*) echo 7;;
|
||||
*)
|
||||
die "unknown GOARM for ${1:-${CHOST}}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
go_os()
|
||||
{
|
||||
case "${1:-${CHOST}}" in
|
||||
*-linux*) echo linux;;
|
||||
*-darwin*) echo darwin;;
|
||||
*-freebsd*) echo freebsd;;
|
||||
*-netbsd*) echo netbsd;;
|
||||
*-openbsd*) echo openbsd;;
|
||||
*-solaris*) echo solaris;;
|
||||
*-cygwin*|*-interix*|*-winnt*)
|
||||
echo windows
|
||||
;;
|
||||
*)
|
||||
die "unknown GOOS for ${1:-${CHOST}}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
go_tuple()
|
||||
{
|
||||
echo "$(go_os $@)_$(go_arch $@)"
|
||||
}
|
||||
|
||||
go_cross_compile()
|
||||
{
|
||||
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
|
||||
}
|
||||
|
||||
pkg_pretend()
|
||||
{
|
||||
# make.bash does not understand cross-compiling a cross-compiler
|
||||
if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
|
||||
die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack()
|
||||
{
|
||||
if [[ ${PV} = 9999 ]]; then
|
||||
git-r3_src_unpack
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_compile()
|
||||
{
|
||||
export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap
|
||||
if use gccgo; then
|
||||
mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
|
||||
local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
|
||||
[[ -x ${go_binary} ]] || go_binary=$(
|
||||
find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
|
||||
sort -V | tail -n1)
|
||||
[[ -x ${go_binary} ]] ||
|
||||
die "go-$(gcc-major-version): command not found"
|
||||
ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
|
||||
fi
|
||||
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
|
||||
export GOROOT="$(pwd)"
|
||||
export GOBIN="${GOROOT}/bin"
|
||||
|
||||
# Go's build script does not use BUILD/HOST/TARGET consistently. :(
|
||||
export GOHOSTARCH=$(go_arch ${CBUILD})
|
||||
export GOHOSTOS=$(go_os ${CBUILD})
|
||||
export CC=$(tc-getBUILD_CC)
|
||||
|
||||
export GOARCH=$(go_arch)
|
||||
export GOOS=$(go_os)
|
||||
export CC_FOR_TARGET=$(tc-getCC)
|
||||
export CXX_FOR_TARGET=$(tc-getCXX)
|
||||
if [[ ${ARCH} == arm ]]; then
|
||||
export GOARM=$(go_arm)
|
||||
fi
|
||||
einfo "GOROOT_BOOTSTRAP is ${GOROOT_BOOTSTRAP}"
|
||||
|
||||
cd src
|
||||
./make.bash || die "build failed"
|
||||
}
|
||||
|
||||
src_test()
|
||||
{
|
||||
go_cross_compile && return 0
|
||||
|
||||
cd src
|
||||
PATH="${GOBIN}:${PATH}" \
|
||||
./run.bash -no-rebuild || die "tests failed"
|
||||
}
|
||||
|
||||
src_install()
|
||||
{
|
||||
local bin_path f x
|
||||
|
||||
dodir /usr/lib/go
|
||||
|
||||
# There is a known issue which requires the source tree to be installed [1].
|
||||
# Once this is fixed, we can consider using the doc use flag to control
|
||||
# installing the doc and src directories.
|
||||
# [1] https://golang.org/issue/2775
|
||||
#
|
||||
# deliberately use cp to retain permissions
|
||||
cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
|
||||
if go_cross_compile; then
|
||||
bin_path="bin/$(go_tuple)"
|
||||
else
|
||||
bin_path=bin
|
||||
fi
|
||||
for x in ${bin_path}/*; do
|
||||
f=${x##*/}
|
||||
dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
|
||||
done
|
||||
einstalldocs
|
||||
}
|
@ -1,236 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
export CBUILD=${CBUILD:-${CHOST}}
|
||||
export CTARGET=${CTARGET:-${CHOST}}
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
|
||||
BOOTSTRAP_VERSION="bootstrap-1.8"
|
||||
BOOTSTRAP_URI="
|
||||
amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz )
|
||||
arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz )
|
||||
ppc64? (
|
||||
${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
|
||||
${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
|
||||
)
|
||||
s390? ( ${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz )
|
||||
x86? ( ${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz )
|
||||
amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz )
|
||||
x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz )
|
||||
"
|
||||
|
||||
case ${PV} in
|
||||
*9999*)
|
||||
EGIT_REPO_URI="https://github.com/golang/go.git"
|
||||
inherit git-r3
|
||||
;;
|
||||
*)
|
||||
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
|
||||
S="${WORKDIR}"/go
|
||||
case ${PV} in
|
||||
*_beta*|*_rc*) ;;
|
||||
*)
|
||||
KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris"
|
||||
# The upstream tests fail under portage but pass if the build is
|
||||
# run according to their documentation [1].
|
||||
# I am restricting the tests on released versions until this is
|
||||
# solved.
|
||||
# [1] https://golang.org/issues/18442
|
||||
RESTRICT="test"
|
||||
;;
|
||||
esac
|
||||
esac
|
||||
SRC_URI+="!gccgo? ( ${BOOTSTRAP_URI} )"
|
||||
|
||||
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
|
||||
HOMEPAGE="https://golang.org"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
IUSE="gccgo"
|
||||
|
||||
DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
|
||||
RDEPEND="!<dev-go/go-tools-0_pre20150902"
|
||||
|
||||
# These test data objects have writable/executable stacks.
|
||||
QA_EXECSTACK="
|
||||
usr/lib/go/src/debug/elf/testdata/*.obj
|
||||
usr/lib/go/src/go/internal/gccgoimporter/testdata/escapeinfo.gox
|
||||
usr/lib/go/src/go/internal/gccgoimporter/testdata/unicode.gox
|
||||
usr/lib/go/src/go/internal/gccgoimporter/testdata/time.gox
|
||||
"
|
||||
|
||||
# Do not complain about CFLAGS, etc, since Go doesn't use them.
|
||||
QA_FLAGS_IGNORED='.*'
|
||||
|
||||
REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
|
||||
|
||||
# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
|
||||
QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
|
||||
|
||||
# Do not strip this package. Stripping is unsupported upstream and may
|
||||
# fail.
|
||||
RESTRICT+=" strip"
|
||||
|
||||
DOCS=(
|
||||
AUTHORS
|
||||
CONTRIBUTING.md
|
||||
CONTRIBUTORS
|
||||
PATENTS
|
||||
README.md
|
||||
)
|
||||
|
||||
go_arch()
|
||||
{
|
||||
# By chance most portage arch names match Go
|
||||
local portage_arch=$(tc-arch $@)
|
||||
case "${portage_arch}" in
|
||||
x86) echo 386;;
|
||||
x64-*) echo amd64;;
|
||||
ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
|
||||
s390) echo s390x ;;
|
||||
*) echo "${portage_arch}";;
|
||||
esac
|
||||
}
|
||||
|
||||
go_arm()
|
||||
{
|
||||
case "${1:-${CHOST}}" in
|
||||
armv5*) echo 5;;
|
||||
armv6*) echo 6;;
|
||||
armv7*) echo 7;;
|
||||
*)
|
||||
die "unknown GOARM for ${1:-${CHOST}}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
go_os()
|
||||
{
|
||||
case "${1:-${CHOST}}" in
|
||||
*-linux*) echo linux;;
|
||||
*-darwin*) echo darwin;;
|
||||
*-freebsd*) echo freebsd;;
|
||||
*-netbsd*) echo netbsd;;
|
||||
*-openbsd*) echo openbsd;;
|
||||
*-solaris*) echo solaris;;
|
||||
*-cygwin*|*-interix*|*-winnt*)
|
||||
echo windows
|
||||
;;
|
||||
*)
|
||||
die "unknown GOOS for ${1:-${CHOST}}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
go_tuple()
|
||||
{
|
||||
echo "$(go_os $@)_$(go_arch $@)"
|
||||
}
|
||||
|
||||
go_cross_compile()
|
||||
{
|
||||
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
|
||||
}
|
||||
|
||||
pkg_pretend()
|
||||
{
|
||||
# make.bash does not understand cross-compiling a cross-compiler
|
||||
if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
|
||||
die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack()
|
||||
{
|
||||
if [[ ${PV} = 9999 ]]; then
|
||||
git-r3_src_unpack
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_compile()
|
||||
{
|
||||
export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap
|
||||
if use gccgo; then
|
||||
mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
|
||||
local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
|
||||
[[ -x ${go_binary} ]] || go_binary=$(
|
||||
find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
|
||||
sort -V | tail -n1)
|
||||
[[ -x ${go_binary} ]] ||
|
||||
die "go-$(gcc-major-version): command not found"
|
||||
ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
|
||||
fi
|
||||
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
|
||||
export GOROOT="$(pwd)"
|
||||
export GOBIN="${GOROOT}/bin"
|
||||
|
||||
# Go's build script does not use BUILD/HOST/TARGET consistently. :(
|
||||
export GOHOSTARCH=$(go_arch ${CBUILD})
|
||||
export GOHOSTOS=$(go_os ${CBUILD})
|
||||
export CC=$(tc-getBUILD_CC)
|
||||
|
||||
export GOARCH=$(go_arch)
|
||||
export GOOS=$(go_os)
|
||||
export CC_FOR_TARGET=$(tc-getCC)
|
||||
export CXX_FOR_TARGET=$(tc-getCXX)
|
||||
if [[ ${ARCH} == arm ]]; then
|
||||
export GOARM=$(go_arm)
|
||||
fi
|
||||
einfo "GOROOT_BOOTSTRAP is ${GOROOT_BOOTSTRAP}"
|
||||
|
||||
cd src
|
||||
./make.bash || die "build failed"
|
||||
}
|
||||
|
||||
src_test()
|
||||
{
|
||||
go_cross_compile && return 0
|
||||
|
||||
cd src
|
||||
PATH="${GOBIN}:${PATH}" \
|
||||
./run.bash -no-rebuild || die "tests failed"
|
||||
}
|
||||
|
||||
src_install()
|
||||
{
|
||||
local bin_path f x
|
||||
|
||||
dodir /usr/lib/go
|
||||
|
||||
# There is a known issue which requires the source tree to be installed [1].
|
||||
# Once this is fixed, we can consider using the doc use flag to control
|
||||
# installing the doc and src directories.
|
||||
# [1] https://golang.org/issue/2775
|
||||
#
|
||||
# deliberately use cp to retain permissions
|
||||
cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
|
||||
if go_cross_compile; then
|
||||
bin_path="bin/$(go_tuple)"
|
||||
else
|
||||
bin_path=bin
|
||||
fi
|
||||
for x in ${bin_path}/*; do
|
||||
f=${x##*/}
|
||||
dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
|
||||
done
|
||||
einstalldocs
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# fix install_name for test object (binutils_test) on Darwin, it
|
||||
# is never used in real circumstances
|
||||
local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/
|
||||
libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64
|
||||
install_name_tool -id "${libmac64}" "${D}${libmac64}"
|
||||
fi
|
||||
}
|
@ -1,10 +1,7 @@
|
||||
DIST php-5.6-openssl-1.1-compatibility.patch 42559 BLAKE2B b7f13866cd8545543143932930f31bcd928fa0b4b36ef63f04798b9ef4699f12b4f4227772ac9e6e5c498aaeacf7b106abcfa48031a12214e123de4b79d3a4cd SHA512 eed695a3dd7ce27e8651b4a4b96ccd0514f256e7d2f0214fac899e9eeea6412aa24f863f1b5d13305bcac50667ccb62709597fb34da1002b005ebf411dd2f5df
|
||||
DIST php-5.6.38.tar.xz 12467408 BLAKE2B d9ee47e193d80bce8a9ed6ffd3eb13e67ba6d1f597ece2803cd92fddc6245f46cdfe644d6cda12a6bb409b92c1fe748610cc5eb43dea0bf063fda81188ee8b3d SHA512 66c51a8e954b1496c0bad0a2864a2a1537dd1c1c573b553991d6d5bce85fc7bc340e56a21109bc5e9a03799e703204b980b569c95a5c0a1bddb01c8947e7a682
|
||||
DIST php-5.6.40.tar.xz 12472236 BLAKE2B f41147eaec9b15e965540f9e871691cc88848dd619bae6af85e7bba0130b71ce91bad5cdbbadbb537c42df83369f5c731007339a9d9e21e689e913c135201afc SHA512 997b5a952a60cf9166671cc91fcc34c674dd62bfd5cb0a9cdf3fdf2d088b5d19943d94c1cf193f8ab71fc4957d9a9a4c7c2fb8826f937501c1c0a0858f10e329
|
||||
DIST php-7.0.32.tar.xz 12030780 BLAKE2B 0c277eac4c931a6e30954cceb7feef8dea1c3ef4aebac91779b7e1a6f90f608faa93d1750a2dc8f354c73304e0f7a9b9ac17bb0d1da4768ddb68925752c11aef SHA512 4a7c9a6b91ad7da69303916202062d639e6f02dcd483e851a44d8c7a2efeb5c9a666097935ab60d700c4445f86a0c68df1515300c57af1cdb76528b54b757608
|
||||
DIST php-7.0.33.tar.xz 12033040 BLAKE2B cb7a4eb3ba8ede93ae8e85b6a11664f33654f7e94fa077ac9a33ab95157c0c2b3b05f98413e13e36f710c6d00b35d49d38bf26092a36e508b88805d092764287 SHA512 9298e185702ea801e9243671ecb0b781c2b04181a2f9fd6490bc14897a333a2c0cc88fe27b0c69c6dd0079629a71c330ed1aa337f48cac6cbd624addb8855500
|
||||
DIST php-7.1.22.tar.xz 12227848 BLAKE2B 72fab94b1c7ecfd3479f6d6c9a76a9d8813f7789402664201615d79ab8b5bb26fb1b7273769c4898a36f0336e0ce4d50bf2f17b81ddb54acc9583e39623e3a5b SHA512 0fc0907d303711dbc4ba0a18618e3e73550c73d13988c769f8d50066017b1efe3feb0d22d5539f69271ea4e9532a3d997e22841cb59bdbf96313169e1c03538d
|
||||
DIST php-7.1.26.tar.xz 12206956 BLAKE2B af78f764349a05905d7db22260c8a6415a2755b29e0dd01225160235b3b38ea76c8910d79c69798aa2de3fc6d4d41e45ab951161b54e62753111f81ac9d85bc2 SHA512 3c80dce2d5dcbf6f253ca4ca4e4ce01fdd3a3d31a6e6045f539fefadc1ea3c391d4d4995600a4ff758ab0361e0ec2244e2eaa6591ecb3e9b8e8a9c44f67a5b32
|
||||
DIST php-7.2.10.tar.xz 12160864 BLAKE2B f1959a00622c1bd11fa87c61d152c802b307f0b9e89b51ed86b40086cda03eeb6652d47b59df8cc7c9b4e79ab687ae1292b978f453e9f07ac352d209b64c62d8 SHA512 aa90fce17034b2649012d66461626ae74c21ea938b1c71c7eb12419e562c641b432df87a7e900c245ad28df39624cf64a1b2f8ffb123608d94cd35e41f09c0fe
|
||||
DIST php-7.2.14.tar.xz 12156460 BLAKE2B 88727241ca3fd68238ce50dcb4c12868f8e6df54213b04dba7650c5f98c3f18a3d02e0a191c0ebd13d85c83cc686fef60135f69ca7cc3e425bd5d7f80035fdd7 SHA512 13f2c97b730e3e872bd24bcc004c6cff5e2cc633c37a4eb60b8b5d1d4454bc5985f7d52943448d61cf4a227c64be770edc5eadd2c9612b297d71c0840b4b1259
|
||||
DIST php-7.3.1.tar.xz 11944376 BLAKE2B 55b3192774c08b1e4c6621e16176a1e352ff6ba5540794a5d769b6416929723638f1409f2f8224c7fe3db99c9b020fa51db7b78d50eaa00e790308562a0a5334 SHA512 0663d90537fe3901cad00ba1056782050b8a61e8edb49f01851add4992df21d23aee3e9468e32b76b7f53ffd513f1ba10c9513c549e247d796416ed176355348
|
||||
|
@ -1,777 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools flag-o-matic eapi7-ver systemd
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="https://secure.php.net/"
|
||||
SRC_URI="https://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 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
threads"
|
||||
|
||||
IUSE="${IUSE} acl bcmath berkdb bzip2 calendar cdb cjk
|
||||
coverage crypt +ctype curl debug
|
||||
enchant exif +fileinfo +filter firebird
|
||||
flatfile ftp gd gdbm gmp +hash +iconv imap inifile
|
||||
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl
|
||||
mhash mssql mysql libmysqlclient mysqli nls
|
||||
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
|
||||
readline recode selinux +session sharedmem
|
||||
+simplexml snmp soap sockets spell sqlite ssl
|
||||
sybase-ct sysvipc systemd tidy +tokenizer truetype unicode vpx wddx
|
||||
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
|
||||
|
||||
# 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.1[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
fpm? ( acl? ( sys-apps/acl ) )
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )
|
||||
berkdb? ( || ( sys-libs/db:5.3
|
||||
sys-libs/db:5.1
|
||||
sys-libs/db:4.8
|
||||
sys-libs/db:4.7
|
||||
sys-libs/db:4.6
|
||||
sys-libs/db:4.5 ) )
|
||||
bzip2? ( app-arch/bzip2:0= )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
cjk? ( !gd? (
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0=
|
||||
sys-libs/zlib:0=
|
||||
) )
|
||||
coverage? ( dev-util/lcov )
|
||||
crypt? ( >=dev-libs/libmcrypt-2.4 )
|
||||
curl? ( >=net-misc/curl-7.10.5 )
|
||||
enchant? ( app-text/enchant )
|
||||
exif? ( !gd? (
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0=
|
||||
sys-libs/zlib:0=
|
||||
) )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib:0= )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( virtual/imap-c-client[kerberos=,ssl=] )
|
||||
intl? ( <dev-libs/icu-61.1:= )
|
||||
iodbc? ( dev-db/libiodbc )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11 )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
|
||||
libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
libmysqlclient? (
|
||||
mysql? ( virtual/libmysqlclient:= )
|
||||
mysqli? ( virtual/libmysqlclient:= )
|
||||
)
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
|
||||
odbc? ( >=dev-db/unixODBC-1.8.13 )
|
||||
postgres? ( dev-db/postgresql:* )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
recode? ( app-text/recode )
|
||||
sharedmem? ( dev-libs/mm )
|
||||
simplexml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
soap? ( >=dev-libs/libxml2-2.6.8 )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
sybase-ct? ( dev-db/freetds )
|
||||
tidy? ( app-text/htmltidy )
|
||||
truetype? (
|
||||
=media-libs/freetype-2*
|
||||
>=media-libs/t1lib-5.0.0
|
||||
!gd? (
|
||||
virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib:0= )
|
||||
)
|
||||
unicode? ( dev-libs/oniguruma:= )
|
||||
vpx? ( media-libs/libvpx:0= )
|
||||
wddx? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
|
||||
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xpm? (
|
||||
x11-libs/libXpm
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0= sys-libs/zlib:0=
|
||||
)
|
||||
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||
zip? ( sys-libs/zlib:0= )
|
||||
zlib? ( sys-libs/zlib:0= )
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
virtual/mta
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-arch/xz-utils
|
||||
>=sys-devel/bison-3.0.1
|
||||
sys-devel/flex
|
||||
>=sys-devel/m4-1.4.3
|
||||
>=sys-devel/libtool-1.5.18"
|
||||
|
||||
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
|
||||
REQUIRED_USE="
|
||||
|| ( cli cgi fpm apache2 embed )
|
||||
cli? ( ^^ ( readline libedit ) )
|
||||
truetype? ( gd zlib )
|
||||
vpx? ( gd zlib )
|
||||
cjk? ( gd zlib )
|
||||
exif? ( gd zlib )
|
||||
xpm? ( gd zlib )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
wddx? ( xml )
|
||||
xmlrpc? ( || ( xml iconv ) )
|
||||
xmlreader? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
mhash? ( hash )
|
||||
phar? ( hash )
|
||||
recode? ( !imap !mysql !mysqli !libmysqlclient )
|
||||
libmysqlclient? ( || (
|
||||
mysql
|
||||
mysqli
|
||||
pdo
|
||||
) )
|
||||
|
||||
qdbm? ( !gdbm )
|
||||
readline? ( !libedit )
|
||||
sharedmem? ( !threads )
|
||||
"
|
||||
|
||||
PHP_MV="$(ver_cut 1)"
|
||||
|
||||
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
|
||||
|
||||
dodir "${PHP_INI_DIR#${EPREFIX}}"
|
||||
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 "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
|
||||
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
|
||||
fi
|
||||
|
||||
# SAPI-specific handling
|
||||
if [[ "${sapi}" == "fpm" ]] ; then
|
||||
einfo "Installing FPM config file php-fpm.conf"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
doins sapi/fpm/php-fpm.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() {
|
||||
eapply "${FILESDIR}/php-${SLOT}-no-bison-warnings.patch"
|
||||
eapply "${FILESDIR}/5.6-mbstring-oniguruma-6.8.patch"
|
||||
eapply "${FILESDIR}/php-freetype-2.9.1.patch"
|
||||
|
||||
# Change PHP branding
|
||||
# Get the alpha/beta/rc version
|
||||
sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \
|
||||
-i configure.in || die "Unable to change PHP branding"
|
||||
|
||||
# Patch PHP to show Gentoo as the server platform
|
||||
sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \
|
||||
-i configure.in || die "Failed to fix server platform name"
|
||||
|
||||
# Prevent PHP from activating the Apache config,
|
||||
# as we will do that ourselves
|
||||
sed -i \
|
||||
-e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \
|
||||
-e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \
|
||||
configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 \
|
||||
|| die
|
||||
|
||||
# Patch PHP to support heimdal instead of mit-krb5
|
||||
if has_version "app-crypt/heimdal" ; then
|
||||
sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \
|
||||
|| die "Failed to fix heimdal libname"
|
||||
sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \
|
||||
|| die "Failed to fix heimdal crypt library reference"
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
|
||||
# Force rebuilding aclocal.m4
|
||||
rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
|
||||
eautoreconf
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# http://bugs.php.net/bug.php?id=48795, bug #343481
|
||||
sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
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 maintainer-zts)
|
||||
)
|
||||
|
||||
our_conf+=(
|
||||
$(use_enable bcmath bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar calendar)
|
||||
$(use_enable coverage gcov)
|
||||
$(use_enable ctype ctype)
|
||||
$(use_with curl curl "${EPREFIX}/usr")
|
||||
$(use_enable xml dom)
|
||||
$(use_with enchant enchant "${EPREFIX}/usr")
|
||||
$(use_enable exif exif)
|
||||
$(use_enable fileinfo fileinfo)
|
||||
$(use_enable filter filter)
|
||||
$(use_enable ftp ftp)
|
||||
$(use_with nls gettext "${EPREFIX}/usr")
|
||||
$(use_with gmp gmp "${EPREFIX}/usr")
|
||||
$(use_enable hash hash)
|
||||
$(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 intl)
|
||||
$(use_enable ipv6 ipv6)
|
||||
$(use_enable json json)
|
||||
$(use_with kerberos kerberos "${EPREFIX}/usr")
|
||||
$(use_enable xml libxml)
|
||||
$(use_with xml libxml-dir "${EPREFIX}/usr")
|
||||
$(use_enable unicode mbstring)
|
||||
$(use_with crypt mcrypt "${EPREFIX}/usr")
|
||||
$(use_with mssql mssql "${EPREFIX}/usr")
|
||||
$(use_with unicode onig "${EPREFIX}/usr")
|
||||
$(use_with ssl openssl "${EPREFIX}/usr")
|
||||
$(use_with ssl openssl-dir "${EPREFIX}/usr")
|
||||
$(use_enable pcntl pcntl)
|
||||
$(use_enable phar phar)
|
||||
$(use_enable pdo pdo)
|
||||
$(use_enable opcache opcache)
|
||||
$(use_with postgres pgsql "${EPREFIX}/usr")
|
||||
$(use_enable posix posix)
|
||||
$(use_with spell pspell "${EPREFIX}/usr")
|
||||
$(use_with recode recode "${EPREFIX}/usr")
|
||||
$(use_enable simplexml simplexml)
|
||||
$(use_enable sharedmem shmop)
|
||||
$(use_with snmp snmp "${EPREFIX}/usr")
|
||||
$(use_enable soap soap)
|
||||
$(use_enable sockets sockets)
|
||||
$(use_with sqlite sqlite3 "${EPREFIX}/usr")
|
||||
$(use_with sybase-ct sybase-ct "${EPREFIX}/usr")
|
||||
$(use_enable sysvipc sysvmsg)
|
||||
$(use_enable sysvipc sysvsem)
|
||||
$(use_enable sysvipc sysvshm)
|
||||
$(use_with tidy tidy "${EPREFIX}/usr")
|
||||
$(use_enable tokenizer tokenizer)
|
||||
$(use_enable wddx wddx)
|
||||
$(use_enable xml xml)
|
||||
$(use_enable xmlreader xmlreader)
|
||||
$(use_enable xmlwriter xmlwriter)
|
||||
$(use_with xmlrpc xmlrpc)
|
||||
$(use_with xslt xsl "${EPREFIX}/usr")
|
||||
$(use_enable zip zip)
|
||||
$(use_with zlib zlib "${EPREFIX}/usr")
|
||||
$(use_enable debug debug)
|
||||
)
|
||||
|
||||
# DBA support
|
||||
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|
||||
|| use qdbm ; then
|
||||
our_conf+=( "--enable-dba${shared}" )
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
our_conf+=(
|
||||
$(use_with cdb cdb)
|
||||
$(use_with berkdb db4 "${EPREFIX}/usr")
|
||||
$(use_enable flatfile flatfile)
|
||||
$(use_with gdbm gdbm "${EPREFIX}/usr")
|
||||
$(use_enable inifile inifile)
|
||||
$(use_with qdbm qdbm "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Support for the GD graphics library
|
||||
our_conf+=(
|
||||
$(use_with truetype freetype-dir "${EPREFIX}/usr")
|
||||
$(use_with truetype t1lib "${EPREFIX}/usr")
|
||||
$(use_enable cjk gd-jis-conv)
|
||||
$(use_with gd jpeg-dir "${EPREFIX}/usr")
|
||||
$(use_with gd png-dir "${EPREFIX}/usr")
|
||||
$(use_with xpm xpm-dir "${EPREFIX}/usr")
|
||||
$(use_with vpx vpx-dir "${EPREFIX}/usr")
|
||||
)
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
our_conf+=( $(use_with gd gd) )
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
our_conf+=(
|
||||
$(use_with imap imap "${EPREFIX}/usr")
|
||||
$(use_with ssl imap-ssl "${EPREFIX}/usr")
|
||||
)
|
||||
fi
|
||||
|
||||
# Interbase/firebird support
|
||||
our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
our_conf+=(
|
||||
$(use_with ldap ldap "${EPREFIX}/usr")
|
||||
$(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
|
||||
)
|
||||
fi
|
||||
|
||||
# MySQL support
|
||||
local mysqllib="mysqlnd"
|
||||
local mysqlilib="mysqlnd"
|
||||
use libmysqlclient && mysqllib="${EPREFIX}/usr"
|
||||
use libmysqlclient && mysqlilib="${EPREFIX}/usr/bin/mysql_config"
|
||||
|
||||
our_conf+=( $(use_with mysql mysql "${mysqllib}") )
|
||||
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
|
||||
our_conf+=(
|
||||
$(use_with odbc unixODBC "${EPREFIX}/usr")
|
||||
$(use_with iodbc iodbc "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Oracle support
|
||||
our_conf+=( $(use_with oci8-instant-client oci8) )
|
||||
|
||||
# PDO support
|
||||
if use pdo ; then
|
||||
our_conf+=(
|
||||
$(use_with mssql pdo-dblib)
|
||||
$(use_with mysql pdo-mysql "${mysqllib}")
|
||||
$(use_with postgres pdo-pgsql)
|
||||
$(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
|
||||
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
|
||||
$(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
|
||||
$(use_with oci8-instant-client pdo-oci)
|
||||
)
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
our_conf+=(
|
||||
$(use_with readline readline "${EPREFIX}/usr")
|
||||
$(use_with libedit libedit "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
our_conf+=( $(use_with sharedmem mm "${EPREFIX}/usr") )
|
||||
else
|
||||
our_conf+=( $(use_enable session 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-pcre-regex affects ext/pcre
|
||||
# --with-pcre-dir affects ext/filter and ext/zip
|
||||
our_conf+=(
|
||||
--with-pcre-regex="${EPREFIX}/usr"
|
||||
--with-pcre-dir="${EPREFIX}/usr"
|
||||
)
|
||||
|
||||
# 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
|
||||
|
||||
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)
|
||||
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
|
||||
|
||||
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=""
|
||||
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 sapi="", 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/libphp5$(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"
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp${PHP_MV}$(get_libname)"
|
||||
;;
|
||||
*)
|
||||
die "unhandled sapi in src_install"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ "${source}" == *"$(get_libname)" ]]; then
|
||||
dolib.so "${source}"
|
||||
else
|
||||
dobin "${source}"
|
||||
local name="$(basename ${source})"
|
||||
dosym "${dest}/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/cgi/php-cgi" ]] ; then
|
||||
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi"
|
||||
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
|
||||
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
|
||||
}
|
@ -1,729 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic eapi7-ver systemd
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="https://secure.php.net/"
|
||||
SRC_URI="https://secure.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 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2 phpdbg"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
threads"
|
||||
|
||||
IUSE="${IUSE} acl bcmath berkdb bzip2 calendar cdb cjk
|
||||
coverage crypt +ctype curl debug
|
||||
enchant exif +fileinfo +filter firebird
|
||||
flatfile ftp gd gdbm gmp +hash +iconv imap inifile
|
||||
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl
|
||||
mhash mssql mysql mysqli nls
|
||||
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
|
||||
readline recode selinux +session session-mm sharedmem
|
||||
+simplexml snmp soap sockets spell sqlite ssl
|
||||
sysvipc systemd test tidy +tokenizer truetype unicode wddx webp
|
||||
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
|
||||
|
||||
# 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.1[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
fpm? ( acl? ( sys-apps/acl ) )
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )
|
||||
berkdb? ( || ( sys-libs/db:5.3
|
||||
sys-libs/db:5.1
|
||||
sys-libs/db:4.8
|
||||
sys-libs/db:4.7
|
||||
sys-libs/db:4.6
|
||||
sys-libs/db:4.5 ) )
|
||||
bzip2? ( app-arch/bzip2:0= )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
coverage? ( dev-util/lcov )
|
||||
crypt? ( >=dev-libs/libmcrypt-2.4 )
|
||||
curl? ( >=net-misc/curl-7.10.5 )
|
||||
enchant? ( app-text/enchant )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( virtual/imap-c-client[kerberos=,ssl=] )
|
||||
intl? ( dev-libs/icu:= )
|
||||
iodbc? ( dev-db/libiodbc )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11 )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
|
||||
libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
|
||||
odbc? ( >=dev-db/unixODBC-1.8.13 )
|
||||
postgres? ( dev-db/postgresql:* )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
recode? ( app-text/recode )
|
||||
session-mm? ( dev-libs/mm )
|
||||
simplexml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
soap? ( >=dev-libs/libxml2-2.6.8 )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
|
||||
truetype? ( =media-libs/freetype-2* )
|
||||
unicode? ( dev-libs/oniguruma:= )
|
||||
wddx? ( >=dev-libs/libxml2-2.6.8 )
|
||||
webp? ( media-libs/libwebp:0= )
|
||||
xml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
|
||||
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||
zip? ( sys-libs/zlib:0= )
|
||||
zlib? ( sys-libs/zlib: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"
|
||||
|
||||
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
|
||||
REQUIRED_USE="
|
||||
|| ( cli cgi fpm apache2 embed phpdbg )
|
||||
cli? ( ^^ ( readline libedit ) )
|
||||
truetype? ( gd zlib )
|
||||
webp? ( gd zlib )
|
||||
cjk? ( gd zlib )
|
||||
exif? ( gd zlib )
|
||||
xpm? ( gd zlib )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
wddx? ( xml )
|
||||
xmlrpc? ( || ( xml iconv ) )
|
||||
xmlreader? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
mhash? ( hash )
|
||||
phar? ( hash )
|
||||
qdbm? ( !gdbm )
|
||||
readline? ( !libedit )
|
||||
recode? ( !imap !mysqli !mysql )
|
||||
session-mm? ( session !threads )
|
||||
mysql? ( hash || ( mysqli pdo ) )
|
||||
mysqli? ( hash )
|
||||
"
|
||||
PATCHES=(
|
||||
"${FILESDIR}/php-freetype-2.9.1.patch"
|
||||
)
|
||||
|
||||
PHP_MV="$(ver_cut 1)"
|
||||
|
||||
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
|
||||
|
||||
dodir "${PHP_INI_DIR#${EPREFIX}}"
|
||||
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 "${PHP_EXT_INI_DIR#${EPREFIX}}/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'
|
||||
}
|
||||
|
||||
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 maintainer-zts)
|
||||
)
|
||||
|
||||
our_conf+=(
|
||||
$(use_enable bcmath bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar calendar)
|
||||
$(use_enable coverage gcov)
|
||||
$(use_enable ctype ctype)
|
||||
$(use_with curl curl "${EPREFIX}/usr")
|
||||
$(use_enable xml dom)
|
||||
$(use_with enchant enchant "${EPREFIX}/usr")
|
||||
$(use_enable exif exif)
|
||||
$(use_enable fileinfo fileinfo)
|
||||
$(use_enable filter filter)
|
||||
$(use_enable ftp ftp)
|
||||
$(use_with nls gettext "${EPREFIX}/usr")
|
||||
$(use_with gmp gmp "${EPREFIX}/usr")
|
||||
$(use_enable hash hash)
|
||||
$(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 intl)
|
||||
$(use_enable ipv6 ipv6)
|
||||
$(use_enable json json)
|
||||
$(use_with kerberos kerberos "${EPREFIX}/usr")
|
||||
$(use_enable xml libxml)
|
||||
$(use_with xml libxml-dir "${EPREFIX}/usr")
|
||||
$(use_enable unicode mbstring)
|
||||
$(use_with crypt mcrypt "${EPREFIX}/usr")
|
||||
$(use_with unicode onig "${EPREFIX}/usr")
|
||||
$(use_with ssl openssl "${EPREFIX}/usr")
|
||||
$(use_with ssl openssl-dir "${EPREFIX}/usr")
|
||||
$(use_enable pcntl pcntl)
|
||||
$(use_enable phar phar)
|
||||
$(use_enable pdo pdo)
|
||||
$(use_enable opcache opcache)
|
||||
$(use_with postgres pgsql "${EPREFIX}/usr")
|
||||
$(use_enable posix posix)
|
||||
$(use_with spell pspell "${EPREFIX}/usr")
|
||||
$(use_with recode recode "${EPREFIX}/usr")
|
||||
$(use_enable simplexml simplexml)
|
||||
$(use_enable sharedmem shmop)
|
||||
$(use_with snmp snmp "${EPREFIX}/usr")
|
||||
$(use_enable soap soap)
|
||||
$(use_enable sockets sockets)
|
||||
$(use_with sqlite sqlite3 "${EPREFIX}/usr")
|
||||
$(use_enable sysvipc sysvmsg)
|
||||
$(use_enable sysvipc sysvsem)
|
||||
$(use_enable sysvipc sysvshm)
|
||||
$(use_with tidy tidy "${EPREFIX}/usr")
|
||||
$(use_enable tokenizer tokenizer)
|
||||
$(use_enable wddx wddx)
|
||||
$(use_enable xml xml)
|
||||
$(use_enable xmlreader xmlreader)
|
||||
$(use_enable xmlwriter xmlwriter)
|
||||
$(use_with xmlrpc xmlrpc)
|
||||
$(use_with xslt xsl "${EPREFIX}/usr")
|
||||
$(use_enable zip zip)
|
||||
$(use_with zlib zlib "${EPREFIX}/usr")
|
||||
$(use_enable debug debug)
|
||||
)
|
||||
|
||||
# DBA support
|
||||
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|
||||
|| use qdbm ; then
|
||||
our_conf+=( "--enable-dba${shared}" )
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
our_conf+=(
|
||||
$(use_with cdb cdb)
|
||||
$(use_with berkdb db4 "${EPREFIX}/usr")
|
||||
$(use_enable flatfile flatfile)
|
||||
$(use_with gdbm gdbm "${EPREFIX}/usr")
|
||||
$(use_enable inifile inifile)
|
||||
$(use_with qdbm qdbm "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Support for the GD graphics library
|
||||
our_conf+=(
|
||||
$(use_with truetype freetype-dir "${EPREFIX}/usr")
|
||||
$(use_enable cjk gd-jis-conv)
|
||||
$(use_with gd jpeg-dir "${EPREFIX}/usr")
|
||||
$(use_with gd png-dir "${EPREFIX}/usr")
|
||||
$(use_with xpm xpm-dir "${EPREFIX}/usr")
|
||||
)
|
||||
if use webp; then
|
||||
our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
|
||||
fi
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
our_conf+=( $(use_with gd gd) )
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
our_conf+=(
|
||||
$(use_with imap imap "${EPREFIX}/usr")
|
||||
$(use_with ssl imap-ssl "${EPREFIX}/usr")
|
||||
)
|
||||
fi
|
||||
|
||||
# Interbase/firebird support
|
||||
our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
our_conf+=(
|
||||
$(use_with ldap ldap "${EPREFIX}/usr")
|
||||
$(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
|
||||
)
|
||||
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
|
||||
our_conf+=(
|
||||
$(use_with odbc unixODBC "${EPREFIX}/usr")
|
||||
$(use_with iodbc iodbc "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# 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 "${EPREFIX}/usr")
|
||||
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
|
||||
$(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
|
||||
$(use_with oci8-instant-client pdo-oci)
|
||||
)
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
our_conf+=(
|
||||
$(use_with readline readline "${EPREFIX}/usr")
|
||||
$(use_with libedit libedit "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
|
||||
else
|
||||
our_conf+=( $(use_enable session 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-pcre-regex affects ext/pcre
|
||||
# --with-pcre-dir affects ext/filter and ext/zip
|
||||
our_conf+=(
|
||||
--with-pcre-regex="${EPREFIX}/usr"
|
||||
--with-pcre-dir="${EPREFIX}/usr"
|
||||
)
|
||||
|
||||
# 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
|
||||
|
||||
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
|
||||
|
||||
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=""
|
||||
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 sapi="", 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${PHP_MV}$(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"
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp${PHP_MV}$(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}/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
|
||||
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
|
||||
}
|
@ -1,741 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic eapi7-ver systemd
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="https://secure.php.net/"
|
||||
SRC_URI="https://secure.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 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2 phpdbg"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
threads"
|
||||
|
||||
IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
|
||||
coverage +ctype curl debug
|
||||
enchant exif +fileinfo +filter firebird
|
||||
flatfile ftp gd gdbm gmp +hash +iconv imap inifile
|
||||
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
|
||||
mhash mssql mysql mysqli nls
|
||||
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
|
||||
readline recode selinux +session session-mm sharedmem
|
||||
+simplexml snmp soap sockets sodium spell sqlite ssl
|
||||
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
|
||||
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
|
||||
|
||||
# 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.1[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
fpm? ( acl? ( sys-apps/acl ) )
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )
|
||||
argon2? ( app-crypt/argon2:= )
|
||||
berkdb? ( || ( sys-libs/db:5.3
|
||||
sys-libs/db:5.1
|
||||
sys-libs/db:4.8
|
||||
sys-libs/db:4.7
|
||||
sys-libs/db:4.6
|
||||
sys-libs/db:4.5 ) )
|
||||
bzip2? ( app-arch/bzip2:0= )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
coverage? ( dev-util/lcov )
|
||||
curl? ( >=net-misc/curl-7.10.5 )
|
||||
enchant? ( app-text/enchant )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( virtual/imap-c-client[kerberos=,ssl=] )
|
||||
intl? ( dev-libs/icu:= )
|
||||
iodbc? ( dev-db/libiodbc )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11 )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
|
||||
libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
|
||||
lmdb? ( dev-db/lmdb:= )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
|
||||
odbc? ( >=dev-db/unixODBC-1.8.13 )
|
||||
postgres? ( dev-db/postgresql:* )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
recode? ( app-text/recode )
|
||||
session-mm? ( dev-libs/mm )
|
||||
simplexml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
soap? ( >=dev-libs/libxml2-2.6.8 )
|
||||
sodium? ( dev-libs/libsodium:= )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
|
||||
tokyocabinet? ( dev-db/tokyocabinet )
|
||||
truetype? ( =media-libs/freetype-2* )
|
||||
unicode? ( dev-libs/oniguruma:= )
|
||||
wddx? ( >=dev-libs/libxml2-2.6.8 )
|
||||
webp? ( media-libs/libwebp:0= )
|
||||
xml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
|
||||
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||
zip? ( sys-libs/zlib:0= )
|
||||
zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
|
||||
zlib? ( sys-libs/zlib: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"
|
||||
|
||||
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
|
||||
REQUIRED_USE="
|
||||
|| ( cli cgi fpm apache2 embed phpdbg )
|
||||
cli? ( ^^ ( readline libedit ) )
|
||||
truetype? ( gd zlib )
|
||||
webp? ( gd zlib )
|
||||
cjk? ( gd zlib )
|
||||
exif? ( gd zlib )
|
||||
xpm? ( gd zlib )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
wddx? ( xml )
|
||||
xmlrpc? ( || ( xml iconv ) )
|
||||
xmlreader? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
mhash? ( hash )
|
||||
phar? ( hash )
|
||||
qdbm? ( !gdbm )
|
||||
readline? ( !libedit )
|
||||
recode? ( !imap !mysqli !mysql )
|
||||
session-mm? ( session !threads )
|
||||
mysql? ( hash || ( mysqli pdo ) )
|
||||
mysqli? ( hash )
|
||||
zip-encryption? ( zip )
|
||||
"
|
||||
PATCHES=(
|
||||
"${FILESDIR}/php-freetype-2.9.1.patch"
|
||||
)
|
||||
|
||||
PHP_MV="$(ver_cut 1)"
|
||||
|
||||
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
|
||||
|
||||
dodir "${PHP_INI_DIR#${EPREFIX}}"
|
||||
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 "${PHP_EXT_INI_DIR#${EPREFIX}}/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'
|
||||
}
|
||||
|
||||
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 maintainer-zts)
|
||||
)
|
||||
|
||||
our_conf+=(
|
||||
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
|
||||
$(use_enable bcmath bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar calendar)
|
||||
$(use_enable coverage gcov)
|
||||
$(use_enable ctype ctype)
|
||||
$(use_with curl curl "${EPREFIX}/usr")
|
||||
$(use_enable xml dom)
|
||||
$(use_with enchant enchant "${EPREFIX}/usr")
|
||||
$(use_enable exif exif)
|
||||
$(use_enable fileinfo fileinfo)
|
||||
$(use_enable filter filter)
|
||||
$(use_enable ftp ftp)
|
||||
$(use_with nls gettext "${EPREFIX}/usr")
|
||||
$(use_with gmp gmp "${EPREFIX}/usr")
|
||||
$(use_enable hash hash)
|
||||
$(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 intl)
|
||||
$(use_enable ipv6 ipv6)
|
||||
$(use_enable json json)
|
||||
$(use_with kerberos kerberos "${EPREFIX}/usr")
|
||||
$(use_enable xml libxml)
|
||||
$(use_with xml libxml-dir "${EPREFIX}/usr")
|
||||
$(use_enable unicode mbstring)
|
||||
$(use_with unicode onig "${EPREFIX}/usr")
|
||||
$(use_with ssl openssl "${EPREFIX}/usr")
|
||||
$(use_with ssl openssl-dir "${EPREFIX}/usr")
|
||||
$(use_enable pcntl pcntl)
|
||||
$(use_enable phar phar)
|
||||
$(use_enable pdo pdo)
|
||||
$(use_enable opcache opcache)
|
||||
$(use_with postgres pgsql "${EPREFIX}/usr")
|
||||
$(use_enable posix posix)
|
||||
$(use_with spell pspell "${EPREFIX}/usr")
|
||||
$(use_with recode recode "${EPREFIX}/usr")
|
||||
$(use_enable simplexml simplexml)
|
||||
$(use_enable sharedmem shmop)
|
||||
$(use_with snmp snmp "${EPREFIX}/usr")
|
||||
$(use_enable soap soap)
|
||||
$(use_enable sockets sockets)
|
||||
$(use_with sodium sodium "${EPREFIX}/usr")
|
||||
$(use_with sqlite sqlite3 "${EPREFIX}/usr")
|
||||
$(use_enable sysvipc sysvmsg)
|
||||
$(use_enable sysvipc sysvsem)
|
||||
$(use_enable sysvipc sysvshm)
|
||||
$(use_with tidy tidy "${EPREFIX}/usr")
|
||||
$(use_enable tokenizer tokenizer)
|
||||
$(use_enable wddx wddx)
|
||||
$(use_enable xml xml)
|
||||
$(use_enable xmlreader xmlreader)
|
||||
$(use_enable xmlwriter xmlwriter)
|
||||
$(use_with xmlrpc xmlrpc)
|
||||
$(use_with xslt xsl "${EPREFIX}/usr")
|
||||
$(use_enable zip zip)
|
||||
$(use_with zip-encryption libzip "${EPREFIX}/usr")
|
||||
$(use_with zlib zlib "${EPREFIX}/usr")
|
||||
$(use_enable debug 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${shared}" )
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
our_conf+=(
|
||||
$(use_with cdb cdb)
|
||||
$(use_with berkdb db4 "${EPREFIX}/usr")
|
||||
$(use_enable flatfile flatfile)
|
||||
$(use_with gdbm gdbm "${EPREFIX}/usr")
|
||||
$(use_enable inifile inifile)
|
||||
$(use_with qdbm qdbm "${EPREFIX}/usr")
|
||||
$(use_with lmdb lmdb "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Support for the GD graphics library
|
||||
our_conf+=(
|
||||
$(use_with truetype freetype-dir "${EPREFIX}/usr")
|
||||
$(use_enable cjk gd-jis-conv)
|
||||
$(use_with gd jpeg-dir "${EPREFIX}/usr")
|
||||
$(use_with gd png-dir "${EPREFIX}/usr")
|
||||
$(use_with xpm xpm-dir "${EPREFIX}/usr")
|
||||
)
|
||||
if use webp; then
|
||||
our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
|
||||
fi
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
our_conf+=( $(use_with gd gd) )
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
our_conf+=(
|
||||
$(use_with imap imap "${EPREFIX}/usr")
|
||||
$(use_with ssl imap-ssl "${EPREFIX}/usr")
|
||||
)
|
||||
fi
|
||||
|
||||
# Interbase/firebird support
|
||||
our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
our_conf+=(
|
||||
$(use_with ldap ldap "${EPREFIX}/usr")
|
||||
$(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
|
||||
)
|
||||
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
|
||||
our_conf+=(
|
||||
$(use_with odbc unixODBC "${EPREFIX}/usr")
|
||||
$(use_with iodbc iodbc "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# 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 "${EPREFIX}/usr")
|
||||
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
|
||||
$(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
|
||||
$(use_with oci8-instant-client pdo-oci)
|
||||
)
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
our_conf+=(
|
||||
$(use_with readline readline "${EPREFIX}/usr")
|
||||
$(use_with libedit libedit "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
|
||||
else
|
||||
our_conf+=( $(use_enable session 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-pcre-regex affects ext/pcre
|
||||
# --with-pcre-dir affects ext/filter and ext/zip
|
||||
# --with-pcre-valgrind cannot be enabled with system pcre
|
||||
# Many arches don't support pcre-jit
|
||||
our_conf+=(
|
||||
--with-pcre-regex="${EPREFIX}/usr"
|
||||
--with-pcre-dir="${EPREFIX}/usr"
|
||||
--without-pcre-valgrind
|
||||
--without-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
|
||||
|
||||
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
|
||||
|
||||
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=""
|
||||
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 sapi="", 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${PHP_MV}$(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"
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp${PHP_MV}$(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}/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
|
||||
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
|
||||
}
|
Binary file not shown.
@ -0,0 +1 @@
|
||||
DIST crc32c-1.0.6.tar.gz 29596 BLAKE2B 5806e0a48cb3048c9b07abb75eb232491483176bbeb98bc11ad1b0ef7d4ce89929ad20b0354906fd67e8773541f9913f3948f1db9a3f3987fe7e2ca67e9d2467 SHA512 c30f6510d6348f15dcdddc06e375f21a69681cd615483d67628b32de747e5e98200fa49faf7e3fc30a1302991fd1f9c9a706c9eb4e13c9c6c09e74066474ea7b
|
@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake-utils
|
||||
|
||||
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 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DOCS=( README.md )
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCRC32C_BUILD_TESTS=OFF
|
||||
-DCRC32C_BUILD_BENCHMARKS=OFF
|
||||
-DCRC32C_USE_GLOG=OFF
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>perfinion@gentoo.org</email>
|
||||
<name>Jason Zaman</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
CRC32C implementation with support for CPU-specific acceleration instructions
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
@ -1,3 +1,3 @@
|
||||
DIST ell-0.15.tar.xz 403812 BLAKE2B 428e999a1d761a97f5ed26c080e40d6c0f8297ed373d31721200d37141249f6b5aa57005689d85c92531c33e067840b130e3ce41a9fd4b05e25d49f978278dc7 SHA512 42ba7a6049b4751ee8876dbb26caf8289541e68079314ec299e83c97acc546eadb5254d35e354468d906b4185fd6f08b22f2979d5f0f20321135055b38b26fc4
|
||||
DIST ell-0.16.tar.xz 409716 BLAKE2B 64dddac470f7de3384886a8790fcf429b7a254e86c22b50fd4045c551aa0d8d7569f93c8d8b5b472f880fb87fa6ce9830a544b83ae237774e5f8236a1bf1b033 SHA512 bf2b4c8b50841ce8eb5e90ab9fd76f0e8fa1993e7dab0a45a50c21f33537fd110f0bbf1326c6e4cefeb6b95b8db5874c2802ec957b47173fe3681f2522fa5816
|
||||
DIST ell-0.17.tar.xz 434024 BLAKE2B 1e6b1917d897eeb4d1308db388accad26077ec1f39b9fdd5fea7c79926d5b3eaa51178d0af9089a2614225f26188fc2c380ec5b1116c321658edac9a4c0573be SHA512 5ca82bf3dbfacb7770fe1132ec3d93d7ebd139f1781157f1def8d810b21c84b212c555c981f7b80152e49e0da0a82b46fbd6322aadc25c56f26c21065a8886ef
|
||||
DIST ell-0.9.tar.xz 396968 BLAKE2B 566735cedd3525c4fd3fec9cec0e9b089dd60c6b79416a9c254c771729b6db9137af050f4c7f9c4c6dfa1ce33b8c7d41b877c9e3caa582c6ab9be716bd986a8b SHA512 e1208066012b9ff927baae271f94116376ccd2577d7f6510cc1444eee912988aa1c25e8e8c9195cccfa39ed48fc8c2f07bd7a414719e6ce76ee1e5bd2a64b8c3
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
@ -1,3 +1,2 @@
|
||||
DIST icu4c-58_2-src.tgz 23369902 BLAKE2B cdd2e02c3aba050f5b7f8b38c5a3731e3e5f1cc1403ef86a50908b95560ea3cf8a2d47119fa60cf34f22a8b65eaa2392fd5bcbd3bc48b3da541fe3d9bd7392c0 SHA512 5c21af748f48b392e6c0412bd0aee92162ea931820dcbfab4ec6e0299868504b303d88f7586cc95de55c777ac0dca3a29d6c8ca0892c646ebc864c8a5b5a162a
|
||||
DIST icu4c-60_2-src.tgz 23317835 BLAKE2B dabd24a9317b44f6852c61c83e808c920d7d29f57d53a7450c68cdad5f84941f771db07fab1f5a16451d59c7aa2750e5a4d5b5fa9a904c43d131529b648263ea SHA512 8e718e66c13e7f25714404c46b91ed6305efff1df70c328be2ec743023a7719016dae72a5fa0a05d6f5599983590a2044ff72d3453a048d987ab546d0416d694
|
||||
DIST icu4c-63_1-src.tgz 23746939 BLAKE2B 5a665554506ff705c83c7a03a1b5598b1a48afbe1c6caaccd5a2d7d5aae16b3e18d7bc65ed552fc4df86248a2f13962438f19bca6c2a579843204c7dc52e6278 SHA512 9ab407ed840a00cdda7470dcc4c40299a125ad246ae4d019c4b1ede54781157fd63af015a8228cd95dbc47e4d15a0932b2c657489046a19788e5e8266eac079c
|
||||
|
@ -1,115 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal
|
||||
|
||||
DESCRIPTION="External layout part of International Components for Unicode"
|
||||
HOMEPAGE="http://www.icu-project.org/"
|
||||
SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz"
|
||||
|
||||
LICENSE="BSD"
|
||||
|
||||
SLOT="0/${PV}"
|
||||
|
||||
KEYWORDS="alpha amd64 ~hppa ia64 ppc ppc64 sparc x86"
|
||||
IUSE="debug static-libs"
|
||||
|
||||
RDEPEND="
|
||||
~dev-libs/icu-${PV}[${MULTILIB_USEDEP}]
|
||||
dev-libs/icu-le-hb[${MULTILIB_USEDEP}]
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
virtual/pkgconfig[${MULTILIB_USEDEP}]
|
||||
${RDEPEND}
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${PN/-layoutex}/source"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-58.1-remove-bashisms.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# apply patches
|
||||
default
|
||||
|
||||
local variable
|
||||
|
||||
# Disable renaming as it is stupid thing to do
|
||||
sed -i \
|
||||
-e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
|
||||
common/unicode/uconfig.h || die
|
||||
|
||||
# Fix linking of icudata
|
||||
sed -i \
|
||||
-e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
|
||||
config/mh-linux || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Use C++14
|
||||
append-cxxflags -std=c++14
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
mkdir "${WORKDIR}"/host || die
|
||||
pushd "${WORKDIR}"/host >/dev/null || die
|
||||
|
||||
CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
|
||||
CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
|
||||
RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
|
||||
"${S}"/configure --disable-renaming --disable-debug \
|
||||
--disable-samples --enable-static || die
|
||||
emake
|
||||
|
||||
popd >/dev/null || die
|
||||
fi
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-renaming
|
||||
--disable-samples
|
||||
--enable-layoutex
|
||||
$(use_enable debug)
|
||||
$(use_enable static-libs static)
|
||||
)
|
||||
|
||||
tc-is-cross-compiler && myeconfargs+=(
|
||||
--with-cross-build="${WORKDIR}"/host
|
||||
)
|
||||
|
||||
# icu tries to use clang by default
|
||||
tc-export CC CXX
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# INTLTEST_OPTS: intltest options
|
||||
# -e: Exhaustive testing
|
||||
# -l: Reporting of memory leaks
|
||||
# -v: Increased verbosity
|
||||
# IOTEST_OPTS: iotest options
|
||||
# -e: Exhaustive testing
|
||||
# -v: Increased verbosity
|
||||
# CINTLTST_OPTS: cintltst options
|
||||
# -e: Exhaustive testing
|
||||
# -v: Increased verbosity
|
||||
pushd layoutex &>/dev/null || die
|
||||
emake -j1 VERBOSE="1" check
|
||||
popd &>/dev/null || die
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
pushd layoutex &>/dev/null || die
|
||||
default
|
||||
popd &>/dev/null || die
|
||||
}
|
@ -1,3 +1,2 @@
|
||||
DIST icu4c-58_2-src.tgz 23369902 BLAKE2B cdd2e02c3aba050f5b7f8b38c5a3731e3e5f1cc1403ef86a50908b95560ea3cf8a2d47119fa60cf34f22a8b65eaa2392fd5bcbd3bc48b3da541fe3d9bd7392c0 SHA512 5c21af748f48b392e6c0412bd0aee92162ea931820dcbfab4ec6e0299868504b303d88f7586cc95de55c777ac0dca3a29d6c8ca0892c646ebc864c8a5b5a162a
|
||||
DIST icu4c-60_2-src.tgz 23317835 BLAKE2B dabd24a9317b44f6852c61c83e808c920d7d29f57d53a7450c68cdad5f84941f771db07fab1f5a16451d59c7aa2750e5a4d5b5fa9a904c43d131529b648263ea SHA512 8e718e66c13e7f25714404c46b91ed6305efff1df70c328be2ec743023a7719016dae72a5fa0a05d6f5599983590a2044ff72d3453a048d987ab546d0416d694
|
||||
DIST icu4c-63_1-src.tgz 23746939 BLAKE2B 5a665554506ff705c83c7a03a1b5598b1a48afbe1c6caaccd5a2d7d5aae16b3e18d7bc65ed552fc4df86248a2f13962438f19bca6c2a579843204c7dc52e6278 SHA512 9ab407ed840a00cdda7470dcc4c40299a125ad246ae4d019c4b1ede54781157fd63af015a8228cd95dbc47e4d15a0932b2c657489046a19788e5e8266eac079c
|
||||
|
@ -1,163 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal
|
||||
|
||||
DESCRIPTION="International Components for Unicode"
|
||||
HOMEPAGE="http://www.icu-project.org/"
|
||||
SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz"
|
||||
|
||||
LICENSE="BSD"
|
||||
|
||||
SLOT="0/${PV}"
|
||||
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
|
||||
IUSE="debug doc examples static-libs"
|
||||
|
||||
DEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
app-doc/doxygen[dot]
|
||||
)
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${PN}/source"
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/icu-config
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-58.1-remove-bashisms.patch"
|
||||
"${FILESDIR}/${PN}-58.2-darwin.patch"
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if tc-is-gcc ; then
|
||||
if [[ $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 9 \
|
||||
|| $(gcc-major-version) -lt 4 ]] ; then
|
||||
die "You need at least sys-devel/gcc-4.9"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# apply patches
|
||||
default
|
||||
|
||||
local variable
|
||||
|
||||
# Disable renaming as it is stupid thing to do
|
||||
sed -i \
|
||||
-e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
|
||||
common/unicode/uconfig.h || die
|
||||
|
||||
# Fix linking of icudata
|
||||
sed -i \
|
||||
-e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
|
||||
config/mh-linux || die
|
||||
|
||||
# Append doxygen configuration to configure
|
||||
sed -i \
|
||||
-e 's:icudefs.mk:icudefs.mk Doxyfile:' \
|
||||
configure.ac || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Use C++14
|
||||
append-cxxflags -std=c++14
|
||||
|
||||
if tc-is-gcc ; then
|
||||
if [[ $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 9 \
|
||||
|| $(gcc-major-version) -lt 4 ]] ; then
|
||||
die "You need at least sys-devel/gcc-4.9"
|
||||
fi
|
||||
fi
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
mkdir "${WORKDIR}"/host || die
|
||||
pushd "${WORKDIR}"/host >/dev/null || die
|
||||
|
||||
CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
|
||||
CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
|
||||
RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
|
||||
"${S}"/configure --disable-renaming --disable-debug \
|
||||
--disable-samples --enable-static || die
|
||||
emake
|
||||
|
||||
popd >/dev/null || die
|
||||
fi
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-renaming
|
||||
--disable-samples
|
||||
--disable-layoutex
|
||||
$(use_enable debug)
|
||||
$(use_enable static-libs static)
|
||||
)
|
||||
|
||||
multilib_is_native_abi && myeconfargs+=(
|
||||
$(use_enable examples samples)
|
||||
)
|
||||
tc-is-cross-compiler && myeconfargs+=(
|
||||
--with-cross-build="${WORKDIR}"/host
|
||||
)
|
||||
|
||||
# icu tries to use clang by default
|
||||
tc-export CC CXX
|
||||
|
||||
# make sure we configure with the same shell as we run icu-config
|
||||
# with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined
|
||||
export CONFIG_SHELL=${EPREFIX}/bin/sh
|
||||
# probably have no /bin/sh in prefix-chain
|
||||
[[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL=${BASH}
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use doc; then
|
||||
doxygen -u Doxyfile || die
|
||||
doxygen Doxyfile || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# INTLTEST_OPTS: intltest options
|
||||
# -e: Exhaustive testing
|
||||
# -l: Reporting of memory leaks
|
||||
# -v: Increased verbosity
|
||||
# IOTEST_OPTS: iotest options
|
||||
# -e: Exhaustive testing
|
||||
# -v: Increased verbosity
|
||||
# CINTLTST_OPTS: cintltst options
|
||||
# -e: Exhaustive testing
|
||||
# -v: Increased verbosity
|
||||
emake -j1 VERBOSE="1" check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use doc; then
|
||||
docinto html
|
||||
dodoc -r doc/html/*
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
docinto html
|
||||
dodoc ../readme.html
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
DIST libtommath-0.42.0.tar.gz 1732144 BLAKE2B 624697bfa0bab0244783c3d2c92df2a1c0418611dc7f25989d038a5689beae325a426d8de38967ec856bd1e6f2d9413615333eebbf9316add838deda5b122de3 SHA512 d26e7737e5750530a7b96432502f0d458931e67af528872c46ad8dfc921b8f6ef4b3e05cb07d22bd13a8b24db65812928ae4c381250a4df95f6ca55efc3dae23
|
||||
DIST ltm-1.0.1.tar.xz 2210120 BLAKE2B e616f0359a1fffe8e1280dc24df1a83eb568d55f9f8acd0e4016fdd63b8ef10d939a8acbd4d49d70a69adf0e492ea5127200798f02af6af1c30e2e1f57870e3a SHA512 f98f7b0f91268e898803478fd52f578f476d378d096a25e48fa2e291159dc89bd1a6dc7d8c5c2254df840c731e5d009ec9728b72190318b6d1ba2916f5c66fb6
|
||||
DIST ltm-1.0.tar.xz 2191540 BLAKE2B 8794d81558f8e4236256c12201e03aad423b9e69ebd35fde941bd0e70174509a09973ad5cdf432c5c0cbf43f78693351782d9c2ea1085f2fa2a5bb77bafa89c5 SHA512 da2ced516106fb056373d97f9ac443805c57ebeb0a33982c14703d6dd8c3925e49aeb690b790ba91768ed5d41f5875dc50a3d3435dbb4088cfa3fddee9162082
|
||||
DIST ltm-1.1.0.tar.xz 2125456 BLAKE2B 3aca7993704341f6a81e7fbef35389ac8ecd957dd78b5d576f0305d37493c3ddc32462cd787de2fb67d8e165417b18fcfde70accf991cd9433ff87591d8265ac SHA512 6d1b8b09d5b975a2b84ef6ab9cb1cc63db2f0503a906e499cb9d7eaba3f487be6e7f69bf692b188f888418c61ea563aa7e2411638d8979eac426b3d603ad1b91
|
||||
|
@ -1,63 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools eutils multilib toolchain-funcs
|
||||
|
||||
DESCRIPTION="Optimized and portable routines for integer theoretic applications"
|
||||
HOMEPAGE="http://www.libtom.net/"
|
||||
SRC_URI="https://github.com/libtom/libtommath/releases/download/v${PV}/ltm-${PV}.tar.xz"
|
||||
|
||||
LICENSE="WTFPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="doc examples static-libs"
|
||||
|
||||
DEPEND="sys-devel/libtool"
|
||||
RDEPEND=""
|
||||
|
||||
src_prepare() {
|
||||
# need libtool for cross compilation. Bug #376643
|
||||
cat <<-EOF > configure.ac
|
||||
AC_INIT(libtommath, 0)
|
||||
AM_INIT_AUTOMAKE
|
||||
LT_INIT
|
||||
AC_CONFIG_FILES(Makefile)
|
||||
AC_OUTPUT
|
||||
EOF
|
||||
touch NEWS README AUTHORS ChangeLog Makefile.am
|
||||
eautoreconf
|
||||
export LT="${S}"/libtool
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf $(use_enable static-libs static)
|
||||
}
|
||||
|
||||
_emake() {
|
||||
emake CC="$(tc-getCC)" -f makefile.shared \
|
||||
IGNORE_SPEED=1 \
|
||||
LIBPATH="${EPREFIX}/usr/$(get_libdir)" \
|
||||
INCPATH="${EPREFIX}/usr/include" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
_emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
_emake DESTDIR="${D}" install
|
||||
# We only link against -lc, so drop the .la file.
|
||||
find "${ED}" -name '*.la' -delete
|
||||
|
||||
dodoc changes.txt
|
||||
|
||||
use doc && dodoc *.pdf
|
||||
|
||||
if use examples ; then
|
||||
docinto demo
|
||||
dodoc demo/*.c
|
||||
fi
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
# NOTE: we cannot depend on autotools here starting with gcc-4.3.x
|
||||
inherit libtool multilib-minimal preserve-libs
|
||||
|
||||
MY_PV=${PV/_p*}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
PLEVEL=${PV/*p}
|
||||
DESCRIPTION="library for multiple-precision floating-point computations with exact rounding"
|
||||
HOMEPAGE="https://www.mpfr.org/"
|
||||
SRC_URI="https://www.mpfr.org/mpfr-${MY_PV}/${MY_P}.tar.xz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0/6" # libmpfr.so version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND=">=dev-libs/gmp-5.0.0[${MULTILIB_USEDEP},static-libs?]"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
HTML_DOCS=( doc/FAQ.html )
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PLEVEL} != ${PV} ]] ; then
|
||||
local i
|
||||
for (( i = 1; i <= PLEVEL; ++i )) ; do
|
||||
eapply "${FILESDIR}"/${MY_PV}/patch$(printf '%02d' ${i})
|
||||
done
|
||||
fi
|
||||
eapply_user
|
||||
find . -type f -exec touch -r configure {} +
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# Make sure mpfr doesn't go probing toolchains it shouldn't #476336#19
|
||||
ECONF_SOURCE=${S} \
|
||||
user_redefine_cc=yes \
|
||||
econf \
|
||||
--docdir="\$(datarootdir)/doc/${PF}" \
|
||||
$(use_enable static-libs static)
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
rm "${ED}"/usr/share/doc/"${P}"/COPYING*
|
||||
use static-libs || find "${ED}"/usr -name '*.la' -delete
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
preserve_old_lib /usr/$(get_libdir)/libmpfr$(get_libname 4)
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
preserve_old_lib_notify /usr/$(get_libdir)/libmpfr$(get_libname 4)
|
||||
}
|
Binary file not shown.
@ -0,0 +1,12 @@
|
||||
diff --git a/setup.py b/setup.py
|
||||
index 2ad90aac..4628a40f 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -42,7 +42,6 @@ def install():
|
||||
install_requires = install_requires,
|
||||
extras_require=extras_require,
|
||||
packages=find_packages(exclude=['astroid.tests']) + ['astroid.brain'],
|
||||
- setup_requires=['pytest-runner'],
|
||||
test_suite='test',
|
||||
tests_require=['pytest'],
|
||||
)
|
@ -0,0 +1 @@
|
||||
DIST progressbar2-3.39.2.tar.gz 131723 BLAKE2B d8ff04986e125d17b67d86399308c4f7ca55c1dc744e2cd42042fb61ec0b93e61f6af1308e884e24e1b423a5ff66e3074b30ce75c0fb7af85acb700288a7bcc0 SHA512 efbf08a09665542fc361757c2a649ecc3bff0077e68b2669f4dfe1635e7730cf3cd0c6a3ae13e059adada31dc77b291098c21746ed9b5e0929260d2788345d6b
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>chainsaw@gentoo.org</email>
|
||||
<name>Tony Vroon</name>
|
||||
</maintainer>
|
||||
|
||||
<upstream>
|
||||
<remote-id type="pypi">progressbar2</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,21 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
PYTHON_COMPAT=( python2_7 python3_5 pypy pypy3)
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Text progressbar library for python"
|
||||
HOMEPAGE="https://pypi.org/project/progressbar2/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
CDEPEND="!dev-python/progressbar[${PYTHON_USEDEP}]
|
||||
dev-python/python-utils[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]"
|
||||
RDEPEND="${CDEPEND}"
|
||||
BDEPEND="${CDEPEND}"
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue