parent
7069afd658
commit
7249bf6616
@ -1,2 +1 @@
|
|||||||
DIST KeePass-2.34-Source.zip 4744285 SHA256 e3f184e4deddd1aa5ee2b52e2373c772d3f3975e5eddb2fd729eb27b437011aa SHA512 a52fe7bb0cee60daa0428cf42cf2d6cfc5798fa52d535b10548880417bfe61458c5357ea3dfdb569571fa8aa958de05369c269e2dbb64af5cfa5c913fad521e0 WHIRLPOOL 2aeac242d5f1a342ec338cb442b8083f4dc72635d9bc8b02cd2aad4613ecf9f311cddf0832a3f1ebe03d881dce41d3a77edb097e3853967d467c2ce55b8d33cb
|
|
||||||
DIST KeePass-2.35-Source.zip 4840873 SHA256 5faad9381af2f9d808d65ee3d880ff3bca9352c7ce886fea95d54f9169e863df SHA512 9f9bb0875c3261e004f655356e8302858afebb7d41a4e4619affaa5e8e5375ffe4fc2b251db10d1d18ef94e07d60dd9bd8812ecedcd5de4c4fbe641c6a37dede WHIRLPOOL db1d270ac5402021add60739ca4916d9dd81999c53b095d143a34a2886f47c354170e41fee63027be83866c541022c79c3c21111a501cd51bafb972e5fe277e2
|
DIST KeePass-2.35-Source.zip 4840873 SHA256 5faad9381af2f9d808d65ee3d880ff3bca9352c7ce886fea95d54f9169e863df SHA512 9f9bb0875c3261e004f655356e8302858afebb7d41a4e4619affaa5e8e5375ffe4fc2b251db10d1d18ef94e07d60dd9bd8812ecedcd5de4c4fbe641c6a37dede WHIRLPOOL db1d270ac5402021add60739ca4916d9dd81999c53b095d143a34a2886f47c354170e41fee63027be83866c541022c79c3c21111a501cd51bafb972e5fe277e2
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
Force text mode for >=grep-2.22 (bug #574480).
|
|
||||||
|
|
||||||
--- a/Build/PrepMonoDev.sh
|
|
||||||
+++ b/Build/PrepMonoDev.sh
|
|
||||||
@@ -3,7 +3,7 @@
|
|
||||||
|
|
||||||
sed 's!<SignAssembly>true</SignAssembly>!<SignAssembly>false</SignAssembly>!g' ../KeePass/KeePass.csproj > ../KeePass/KeePass.csproj.new
|
|
||||||
sed 's! ToolsVersion="3.5"!!g' ../KeePass/KeePass.csproj.new > ../KeePass/KeePass.csproj.new2
|
|
||||||
-cat ../KeePass/KeePass.csproj.new2 | grep -v 'sgen\.exe' > ../KeePass/KeePass.csproj
|
|
||||||
+cat ../KeePass/KeePass.csproj.new2 | grep -va 'sgen\.exe' > ../KeePass/KeePass.csproj
|
|
||||||
rm -f ../KeePass/KeePass.csproj.new2
|
|
||||||
rm -f ../KeePass/KeePass.csproj.new
|
|
||||||
|
|
@ -1,116 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
inherit eutils fdo-mime gnome2-utils mono-env multilib
|
|
||||||
|
|
||||||
MY_PN="KeePass"
|
|
||||||
DESCRIPTION="A free, open source, light-weight and easy-to-use password manager"
|
|
||||||
HOMEPAGE="http://keepass.info/"
|
|
||||||
SRC_URI="mirror://sourceforge/${PN}/${MY_PN}-${PV}-Source.zip"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~x86"
|
|
||||||
IUSE="aot"
|
|
||||||
|
|
||||||
COMMON_DEPEND=">=dev-lang/mono-2.10.5"
|
|
||||||
RDEPEND="${COMMON_DEPEND}
|
|
||||||
dev-dotnet/libgdiplus[cairo]"
|
|
||||||
DEPEND="${COMMON_DEPEND}
|
|
||||||
app-arch/unzip"
|
|
||||||
|
|
||||||
S=${WORKDIR}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# Force text mode for >grep-2.21 (bug #574480)
|
|
||||||
epatch "${FILESDIR}/${PN}-2.31-force-text-grep.patch"
|
|
||||||
|
|
||||||
# Remove Windows-specific things
|
|
||||||
pushd Build > /dev/null || die
|
|
||||||
. PrepMonoDev.sh || die
|
|
||||||
popd > /dev/null || die
|
|
||||||
|
|
||||||
# KeePass looks for some XSL files in the same folder as the executable,
|
|
||||||
# we prefer to have it in /usr/share/KeePass
|
|
||||||
epatch "${FILESDIR}/${PN}-2.20-xsl-path-detection.patch"
|
|
||||||
# bug # 558094
|
|
||||||
if has_version ">=dev-lang/mono-4" ; then
|
|
||||||
sed -i -e 's! ToolsVersion="3.5"!!g' Translation/TrlUtil/TrlUtil.csproj || die
|
|
||||||
sed -i -e 's/Format Version 10.00/Format Version 11.00/' KeePass.sln || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
# Build with Release target
|
|
||||||
xbuild /target:KeePass /property:Configuration=Release || die
|
|
||||||
|
|
||||||
# Run Ahead Of Time compiler on the binary
|
|
||||||
if use aot; then
|
|
||||||
cp Ext/KeePass.exe.config Build/KeePass/Release/
|
|
||||||
mono --aot -O=all Build/KeePass/Release/KeePass.exe || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
# Wrapper script to launch mono
|
|
||||||
make_wrapper ${PN} "mono /usr/$(get_libdir)/${PN}/KeePass.exe"
|
|
||||||
|
|
||||||
# Some XSL files
|
|
||||||
insinto /usr/share/${PN}/XSL
|
|
||||||
doins Ext/XSL/*
|
|
||||||
|
|
||||||
insinto /usr/$(get_libdir)/${PN}/
|
|
||||||
exeinto /usr/$(get_libdir)/${PN}/
|
|
||||||
doins Ext/KeePass.exe.config
|
|
||||||
# Default configuration, simply says to use user-specific configuration
|
|
||||||
doins Ext/KeePass.config.xml
|
|
||||||
|
|
||||||
# The actual executable
|
|
||||||
doexe Build/KeePass/Release/KeePass.exe
|
|
||||||
|
|
||||||
# Copy the AOT compilation result
|
|
||||||
if use aot; then
|
|
||||||
doexe Build/KeePass/Release/KeePass.exe.so
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Prepare the icons
|
|
||||||
newicon -s 256 Ext/Icons_04_CB/Finals/plockb.png "${PN}.png"
|
|
||||||
newicon -s 256 -t gnome -c mimetypes Ext/Icons_04_CB/Finals/plockb.png "application-x-${PN}2.png"
|
|
||||||
|
|
||||||
# Create a desktop entry and associate it with the KeePass mime type
|
|
||||||
make_desktop_entry ${PN} ${MY_PN} ${PN} "System;Security" "MimeType=application/x-keepass2;"
|
|
||||||
|
|
||||||
# MIME descriptor for .kdbx files
|
|
||||||
insinto /usr/share/mime/packages/
|
|
||||||
doins "${FILESDIR}/${PN}.xml"
|
|
||||||
|
|
||||||
# sed, because patching this realllllly sucks
|
|
||||||
sed -i 's/mono/mono --verify-all/g' "${D}/usr/bin/keepass"
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
gnome2_icon_savelist
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
gnome2_icon_cache_update
|
|
||||||
fdo-mime_mime_database_update
|
|
||||||
fdo-mime_desktop_database_update
|
|
||||||
|
|
||||||
if ! has_version x11-misc/xdotool ; then
|
|
||||||
elog "Optional dependencies:"
|
|
||||||
elog " x11-misc/xdotool (enables autotype)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
elog "Some systems may experience issues with copy and paste operations."
|
|
||||||
elog "If you encounter this, please install x11-misc/xsel."
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
gnome2_icon_cache_update
|
|
||||||
fdo-mime_mime_database_update
|
|
||||||
fdo-mime_desktop_database_update
|
|
||||||
}
|
|
@ -1,113 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
inherit eutils fdo-mime gnome2-utils mono-env multilib
|
|
||||||
|
|
||||||
MY_PN="KeePass"
|
|
||||||
DESCRIPTION="A free, open source, light-weight and easy-to-use password manager"
|
|
||||||
HOMEPAGE="http://keepass.info/"
|
|
||||||
SRC_URI="mirror://sourceforge/${PN}/${MY_PN}-${PV}-Source.zip"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 x86"
|
|
||||||
IUSE="aot"
|
|
||||||
|
|
||||||
COMMON_DEPEND=">=dev-lang/mono-2.10.5"
|
|
||||||
RDEPEND="${COMMON_DEPEND}
|
|
||||||
dev-dotnet/libgdiplus[cairo]"
|
|
||||||
DEPEND="${COMMON_DEPEND}
|
|
||||||
app-arch/unzip"
|
|
||||||
|
|
||||||
S=${WORKDIR}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# Force text mode for >grep-2.21 (bug #574480)
|
|
||||||
epatch "${FILESDIR}/${PN}-2.31-force-text-grep.patch"
|
|
||||||
|
|
||||||
# Remove Windows-specific things
|
|
||||||
pushd Build > /dev/null || die
|
|
||||||
. PrepMonoDev.sh || die
|
|
||||||
popd > /dev/null || die
|
|
||||||
|
|
||||||
# KeePass looks for some XSL files in the same folder as the executable,
|
|
||||||
# we prefer to have it in /usr/share/KeePass
|
|
||||||
epatch "${FILESDIR}/${PN}-2.20-xsl-path-detection.patch"
|
|
||||||
# bug # 558094
|
|
||||||
if has_version ">=dev-lang/mono-4" ; then
|
|
||||||
sed -i -e 's! ToolsVersion="3.5"!!g' Translation/TrlUtil/TrlUtil.csproj || die
|
|
||||||
sed -i -e 's/Format Version 10.00/Format Version 11.00/' KeePass.sln || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
# Build with Release target
|
|
||||||
xbuild /target:KeePass /property:Configuration=Release || die
|
|
||||||
|
|
||||||
# Run Ahead Of Time compiler on the binary
|
|
||||||
if use aot; then
|
|
||||||
cp Ext/KeePass.exe.config Build/KeePass/Release/
|
|
||||||
mono --aot -O=all Build/KeePass/Release/KeePass.exe || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
# Wrapper script to launch mono
|
|
||||||
make_wrapper ${PN} "mono /usr/$(get_libdir)/${PN}/KeePass.exe"
|
|
||||||
|
|
||||||
# Some XSL files
|
|
||||||
insinto /usr/share/${PN}/XSL
|
|
||||||
doins Ext/XSL/*
|
|
||||||
|
|
||||||
insinto /usr/$(get_libdir)/${PN}/
|
|
||||||
exeinto /usr/$(get_libdir)/${PN}/
|
|
||||||
doins Ext/KeePass.exe.config
|
|
||||||
# Default configuration, simply says to use user-specific configuration
|
|
||||||
doins Ext/KeePass.config.xml
|
|
||||||
|
|
||||||
# The actual executable
|
|
||||||
doexe Build/KeePass/Release/KeePass.exe
|
|
||||||
|
|
||||||
# Copy the AOT compilation result
|
|
||||||
if use aot; then
|
|
||||||
doexe Build/KeePass/Release/KeePass.exe.so
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Prepare the icons
|
|
||||||
newicon -s 256 Ext/Icons_04_CB/Finals/plockb.png "${PN}.png"
|
|
||||||
newicon -s 256 -t gnome -c mimetypes Ext/Icons_04_CB/Finals/plockb.png "application-x-${PN}2.png"
|
|
||||||
|
|
||||||
# Create a desktop entry and associate it with the KeePass mime type
|
|
||||||
make_desktop_entry ${PN} ${MY_PN} ${PN} "System;Security" "MimeType=application/x-keepass2;"
|
|
||||||
|
|
||||||
# MIME descriptor for .kdbx files
|
|
||||||
insinto /usr/share/mime/packages/
|
|
||||||
doins "${FILESDIR}/${PN}.xml"
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
gnome2_icon_savelist
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
gnome2_icon_cache_update
|
|
||||||
fdo-mime_mime_database_update
|
|
||||||
fdo-mime_desktop_database_update
|
|
||||||
|
|
||||||
if ! has_version x11-misc/xdotool ; then
|
|
||||||
elog "Optional dependencies:"
|
|
||||||
elog " x11-misc/xdotool (enables autotype)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
elog "Some systems may experience issues with copy and paste operations."
|
|
||||||
elog "If you encounter this, please install x11-misc/xsel."
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
gnome2_icon_cache_update
|
|
||||||
fdo-mime_mime_database_update
|
|
||||||
fdo-mime_desktop_database_update
|
|
||||||
}
|
|
@ -1,120 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
inherit eutils fdo-mime gnome2-utils multilib
|
|
||||||
|
|
||||||
MY_PN="KeePass"
|
|
||||||
DESCRIPTION="A free, open source, light-weight and easy-to-use password manager"
|
|
||||||
HOMEPAGE="http://keepass.info/"
|
|
||||||
SRC_URI="mirror://sourceforge/${PN}/${MY_PN}-${PV}-Source.zip"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~x86"
|
|
||||||
IUSE="aot"
|
|
||||||
|
|
||||||
COMMON_DEPEND="dev-lang/mono"
|
|
||||||
DEPEND="${COMMON_DEPEND}
|
|
||||||
app-arch/unzip"
|
|
||||||
RDEPEND="${COMMON_DEPEND}
|
|
||||||
dev-dotnet/libgdiplus[cairo]"
|
|
||||||
|
|
||||||
S="${WORKDIR}"
|
|
||||||
PATCHES=( "${FILESDIR}/${PN}-2.20-xsl-path-detection.patch" )
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# KeePass looks for some XSL files in the same folder as the executable,
|
|
||||||
# we prefer to have it in /usr/share/KeePass. Apply patch using base function.
|
|
||||||
default
|
|
||||||
|
|
||||||
# Switch into build dir so the mono prepration script works correctly
|
|
||||||
cd Build || die
|
|
||||||
source PrepMonoDev.sh || die
|
|
||||||
cd ../ || die
|
|
||||||
|
|
||||||
# If we are using Mono 4 or newer, Then fix the build. Bug #558094
|
|
||||||
# https://sourceforge.net/p/keepass/discussion/329221/thread/72db1a65/
|
|
||||||
if has_version ">=dev-lang/mono-4" ; then
|
|
||||||
sed -i -e 's! ToolsVersion="3.5"!!g' Translation/TrlUtil/TrlUtil.csproj || die
|
|
||||||
sed -i -e 's/Format Version 10.00/Format Version 11.00/' KeePass.sln || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
# Build with Release target
|
|
||||||
xbuild /target:KeePass /property:Configuration=Release || die
|
|
||||||
|
|
||||||
# Run Ahead Of Time compiler on the binary
|
|
||||||
if use aot; then
|
|
||||||
cp Ext/KeePass.exe.config Build/KeePass/Release/ || die
|
|
||||||
mono --aot -O=all Build/KeePass/Release/KeePass.exe || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
# Wrapper script to launch mono
|
|
||||||
make_wrapper "${PN}" "mono /usr/$(get_libdir)/${PN}/KeePass.exe"
|
|
||||||
|
|
||||||
# Some XSL files
|
|
||||||
insinto "/usr/share/${PN}/XSL"
|
|
||||||
doins Ext/XSL/*
|
|
||||||
|
|
||||||
insinto "/usr/$(get_libdir)/${PN}/"
|
|
||||||
exeinto "/usr/$(get_libdir)/${PN}/"
|
|
||||||
|
|
||||||
doins Ext/KeePass.exe.config
|
|
||||||
|
|
||||||
# Default configuration, simply says to use user-specific configuration
|
|
||||||
doins Ext/KeePass.config.xml
|
|
||||||
|
|
||||||
# The actual executable
|
|
||||||
doexe Build/KeePass/Release/KeePass.exe
|
|
||||||
|
|
||||||
# Copy the AOT compilation result
|
|
||||||
if use aot; then
|
|
||||||
doexe Build/KeePass/Release/KeePass.exe.so
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Prepare the icons
|
|
||||||
newicon -s 256 Ext/Icons_04_CB/Finals/plockb.png "${PN}.png"
|
|
||||||
newicon -s 256 -t gnome -c mimetypes Ext/Icons_04_CB/Finals/plockb.png "application-x-${PN}2.png"
|
|
||||||
|
|
||||||
# Create a desktop entry and associate it with the KeePass mime type
|
|
||||||
make_desktop_entry "${PN}" "${MY_PN}" "${PN}" "System;Security" "MimeType=application/x-keepass2;"
|
|
||||||
|
|
||||||
# MIME descriptor for .kdbx files
|
|
||||||
insinto /usr/share/mime/packages/
|
|
||||||
doins "${FILESDIR}/${PN}.xml"
|
|
||||||
|
|
||||||
# sed, because patching this really sucks
|
|
||||||
sed -i 's/mono/mono --verify-all/g' "${D}/usr/bin/keepass"
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
gnome2_icon_savelist
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
_update_caches
|
|
||||||
|
|
||||||
if ! has_version x11-misc/xdotool ; then
|
|
||||||
elog "Optional dependencies:"
|
|
||||||
elog " x11-misc/xdotool (enables autotype/autofill)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
elog "Some systems may experience issues with copy and paste operations."
|
|
||||||
elog "If you encounter this, please install x11-misc/xsel."
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
_update_caches
|
|
||||||
}
|
|
||||||
|
|
||||||
_update_caches() {
|
|
||||||
gnome2_icon_cache_update
|
|
||||||
fdo-mime_mime_database_update
|
|
||||||
fdo-mime_desktop_database_update
|
|
||||||
}
|
|
@ -1 +1,2 @@
|
|||||||
DIST keepassxc-2.1.1.tar.gz 3274143 SHA256 b0a737640070d80483b2ac436d87c2872a248f60f86b741e5413b0b8cda92eef SHA512 7ec2aab5b5e87036b3c778fd9b24612a35ac80243c009da9151f0a8aca9b7065c6652bc595be2958cd4fd96c5c8937cc7ce668c47d34267b7e014c3117a32e72 WHIRLPOOL 5cb6a85c58e28eeff8f11bb70a8b949e15e0f97769c73844474abab321c40f81c6a23b3efe1c05ce5e8e8623c7feb3e38d64cda88b13fedc651a722a3607806f
|
DIST keepassxc-2.1.1.tar.gz 3274143 SHA256 b0a737640070d80483b2ac436d87c2872a248f60f86b741e5413b0b8cda92eef SHA512 7ec2aab5b5e87036b3c778fd9b24612a35ac80243c009da9151f0a8aca9b7065c6652bc595be2958cd4fd96c5c8937cc7ce668c47d34267b7e014c3117a32e72 WHIRLPOOL 5cb6a85c58e28eeff8f11bb70a8b949e15e0f97769c73844474abab321c40f81c6a23b3efe1c05ce5e8e8623c7feb3e38d64cda88b13fedc651a722a3607806f
|
||||||
|
DIST keepassxc-2.1.2.tar.gz 3319554 SHA256 8cd94a401910ff67cadeed3d7d1b285f1e5d82ac8622a05b5c7eae60f28f1710 SHA512 81c30612eec301f2b6776e229c607f2d9a721c8bed7ca34403f4c281a90a9e110e4673830630447b50d0aef241f2e983394b2513394dcf48751c0f13de9a9586 WHIRLPOOL d032277686f73889f03a7f8cbabace5eafbb8f3f95f6a36678e2eb8913322de514226af5d038b094d5ce910e445843992c29b64447eec453254f686d64270c16
|
||||||
|
@ -0,0 +1,64 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
SCM=""
|
||||||
|
[[ "${PV}" == 9999 ]] && SCM="git-r3"
|
||||||
|
inherit cmake-utils ${SCM}
|
||||||
|
unset SCM
|
||||||
|
|
||||||
|
DESCRIPTION="KeePassXC - KeePass Cross-platform Community Edition"
|
||||||
|
HOMEPAGE="https://github.com/keepassxreboot/keepassxc"
|
||||||
|
|
||||||
|
if [[ "${PV}" != 9999 ]] ; then
|
||||||
|
SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
else
|
||||||
|
EGIT_REPO_URI="https://github.com/keepassxreboot/${PN}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="LGPL-2.1 GPL-2 GPL-3"
|
||||||
|
SLOT="0"
|
||||||
|
IUSE="autotype debug http test"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
dev-libs/libgcrypt:=
|
||||||
|
dev-qt/qtcore:5
|
||||||
|
dev-qt/qtgui:5
|
||||||
|
dev-qt/qtnetwork:5
|
||||||
|
dev-qt/qtwidgets:5
|
||||||
|
sys-libs/zlib
|
||||||
|
autotype? (
|
||||||
|
dev-qt/qtx11extras:5
|
||||||
|
x11-libs/libXi
|
||||||
|
x11-libs/libXtst
|
||||||
|
)
|
||||||
|
"
|
||||||
|
# yubikey? ( sys-auth/libyubikey )
|
||||||
|
|
||||||
|
DEPEND="
|
||||||
|
${RDEPEND}
|
||||||
|
dev-qt/linguist-tools:5
|
||||||
|
dev-qt/qtconcurrent:5
|
||||||
|
test? ( dev-qt/qttest:5 )
|
||||||
|
"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
use test || \
|
||||||
|
sed -e "/^find_package(Qt5Test/d" -i CMakeLists.txt || die
|
||||||
|
|
||||||
|
cmake-utils_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
local mycmakeargs=(
|
||||||
|
-DWITH_GUI_TESTS=OFF
|
||||||
|
-DWITH_TESTS="$(usex test)"
|
||||||
|
-DWITH_XC_AUTOTYPE="$(usex autotype)"
|
||||||
|
-DWITH_XC_HTTP="$(usex http)"
|
||||||
|
#-DWITH_XC_YUBIKEY="$(usex yubikey)"
|
||||||
|
)
|
||||||
|
cmake-utils_src_configure
|
||||||
|
}
|
@ -1,3 +1,4 @@
|
|||||||
DIST fsarchiver-0.6.19.tar.gz 244972 SHA256 9ba4d3262059a0cb108de564340d947a4d75d34ba3b8e35a767d543afbf24dbb SHA512 28c2b7c59fcdedd47c5451867540696e1859d954259670419df01fb94b626f169a2ff97b9eb96caaba69421ff2560cebbd6c7743b2a89172591f0747716a0471 WHIRLPOOL 78200870521adb927b042e3ada778ebb552f84c0164cf628fa5214f84f42a853fe71871d2ee27a6c485fa1db3c229002e52c6f11e58ef9766b38df6723e93f24
|
DIST fsarchiver-0.6.19.tar.gz 244972 SHA256 9ba4d3262059a0cb108de564340d947a4d75d34ba3b8e35a767d543afbf24dbb SHA512 28c2b7c59fcdedd47c5451867540696e1859d954259670419df01fb94b626f169a2ff97b9eb96caaba69421ff2560cebbd6c7743b2a89172591f0747716a0471 WHIRLPOOL 78200870521adb927b042e3ada778ebb552f84c0164cf628fa5214f84f42a853fe71871d2ee27a6c485fa1db3c229002e52c6f11e58ef9766b38df6723e93f24
|
||||||
DIST fsarchiver-0.6.24.tar.gz 261942 SHA256 535401b71b905ebf268bf45a24456d50cc5584c77119d93bf692b6a10c51cee3 SHA512 5c6338426f74625b5be3da4c0b5419e55a123dbdf2669198eeae902dff6b136f004f3279e805ec46ec283293088fb25eb1caaa202b853c9e0c254c7786bf12a4 WHIRLPOOL 0a8df7bdddb636d72036ce3a779f5fee7a9204e71471c42a03500e5a21b2b915df809e5b4bb2b94bc9402208fe5e304a21ced303d028564b12fd9696e05f8426
|
DIST fsarchiver-0.6.24.tar.gz 261942 SHA256 535401b71b905ebf268bf45a24456d50cc5584c77119d93bf692b6a10c51cee3 SHA512 5c6338426f74625b5be3da4c0b5419e55a123dbdf2669198eeae902dff6b136f004f3279e805ec46ec283293088fb25eb1caaa202b853c9e0c254c7786bf12a4 WHIRLPOOL 0a8df7bdddb636d72036ce3a779f5fee7a9204e71471c42a03500e5a21b2b915df809e5b4bb2b94bc9402208fe5e304a21ced303d028564b12fd9696e05f8426
|
||||||
DIST fsarchiver-0.8.0.tar.gz 264741 SHA256 68e98e51faa44abd593342503073cbce5f8ff74f87ecd45dfa45f68ad5e0a362 SHA512 3007ffa47c6399987f06cd53e30a1bbe9784703b97dd7383c5aa0a505bb64c94c89095f5b821ddebfb1eb76361babf08f0b64ab4a39ce3cc3f2f9a6f02f71fae WHIRLPOOL ab221d38787fdb5e9e0325acc98e5a24acece718719b41465681cdc539f366dd27287fe8677163cb61cb33f8abfb59cdc210ab059ea06622358825bba79b029c
|
DIST fsarchiver-0.8.0.tar.gz 264741 SHA256 68e98e51faa44abd593342503073cbce5f8ff74f87ecd45dfa45f68ad5e0a362 SHA512 3007ffa47c6399987f06cd53e30a1bbe9784703b97dd7383c5aa0a505bb64c94c89095f5b821ddebfb1eb76361babf08f0b64ab4a39ce3cc3f2f9a6f02f71fae WHIRLPOOL ab221d38787fdb5e9e0325acc98e5a24acece718719b41465681cdc539f366dd27287fe8677163cb61cb33f8abfb59cdc210ab059ea06622358825bba79b029c
|
||||||
|
DIST fsarchiver-0.8.1.tar.gz 265048 SHA256 f21dc8f66a67e949c836f3316862db0619f14cf8971ba37342c0ae6e11e625f8 SHA512 17133392b0678b88552ae356bc199a8a5a8a88d3c8878b593b36acdc0f9dc3869f87475cc1a36d0df752e3bc3df8c9c0641954f675aaf60da4f1b0862dec1bc6 WHIRLPOOL 190450d064ed509f731c0104623e237ccca1f04d4cde3cae23d14a34bfc0ae567062bd081cb1523655d82ae62a1add99afa75260db815db96a0a145962bd8154
|
||||||
|
@ -0,0 +1,40 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit autotools
|
||||||
|
|
||||||
|
DESCRIPTION="Flexible filesystem archiver for backup and deployment tool"
|
||||||
|
HOMEPAGE="http://www.fsarchiver.org"
|
||||||
|
SRC_URI="https://github.com/fdupoux/${PN}/releases/download/${PV}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="GPL-2"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
IUSE="debug lzma lzo static"
|
||||||
|
|
||||||
|
DEPEND="dev-libs/libgcrypt:0=
|
||||||
|
>=sys-fs/e2fsprogs-1.41.4
|
||||||
|
lzma? ( >=app-arch/xz-utils-4.999.9_beta )
|
||||||
|
lzo? ( >=dev-libs/lzo-2.02 )
|
||||||
|
static? ( lzma? ( app-arch/xz-utils[static-libs] ) )"
|
||||||
|
RDEPEND="${DEPEND}"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
sed -i -e 's/^\([a-z]*_CFLAGS.*\)-ggdb/\1/' src/Makefile.am \
|
||||||
|
|| die "seding failed"
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
myeconfargs=(
|
||||||
|
$(use_enable lzma)
|
||||||
|
$(use_enable lzo)
|
||||||
|
$(use_enable static)
|
||||||
|
$(use_enable debug devel)
|
||||||
|
)
|
||||||
|
econf "${myeconfargs[@]}"
|
||||||
|
}
|
@ -0,0 +1,346 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
WANT_AUTOMAKE="none"
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
|
||||||
|
|
||||||
|
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||||
|
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||||
|
SRC_URI="mirror://gnu/emacs/${P}.tar.bz2
|
||||||
|
https://dev.gentoo.org/~ulm/emacs/${P}-patches-20.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||||
|
SLOT="23"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
|
||||||
|
IUSE="alsa aqua athena dbus games gconf gif gpm gtk gzip-el hesiod jpeg kerberos livecd m17n-lib motif pax_kernel png sound source svg tiff toolkit-scroll-bars X Xaw3d xft +xpm"
|
||||||
|
REQUIRED_USE="?? ( aqua X )"
|
||||||
|
|
||||||
|
RDEPEND="sys-libs/ncurses:0=
|
||||||
|
>=app-eselect/eselect-emacs-1.16
|
||||||
|
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||||
|
net-libs/liblockfile
|
||||||
|
hesiod? ( net-dns/hesiod )
|
||||||
|
kerberos? ( virtual/krb5 )
|
||||||
|
alsa? ( media-libs/alsa-lib )
|
||||||
|
gpm? ( sys-libs/gpm )
|
||||||
|
dbus? ( sys-apps/dbus )
|
||||||
|
X? (
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
x11-misc/xbitmaps
|
||||||
|
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||||
|
gif? ( media-libs/giflib:0= )
|
||||||
|
jpeg? ( virtual/jpeg:0= )
|
||||||
|
png? ( >=media-libs/libpng-1.4:0= )
|
||||||
|
svg? ( >=gnome-base/librsvg-2.0 )
|
||||||
|
tiff? ( media-libs/tiff:0 )
|
||||||
|
xpm? ( x11-libs/libXpm )
|
||||||
|
xft? (
|
||||||
|
media-libs/fontconfig
|
||||||
|
media-libs/freetype
|
||||||
|
x11-libs/libXft
|
||||||
|
m17n-lib? (
|
||||||
|
>=dev-libs/libotf-0.9.4
|
||||||
|
>=dev-libs/m17n-lib-1.5.1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
gtk? ( x11-libs/gtk+:2 )
|
||||||
|
!gtk? (
|
||||||
|
motif? ( >=x11-libs/motif-2.3:0 )
|
||||||
|
!motif? (
|
||||||
|
Xaw3d? ( x11-libs/libXaw3d )
|
||||||
|
!Xaw3d? ( athena? ( x11-libs/libXaw ) )
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)"
|
||||||
|
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
alsa? ( virtual/pkgconfig )
|
||||||
|
dbus? ( virtual/pkgconfig )
|
||||||
|
X? ( virtual/pkgconfig )
|
||||||
|
gzip-el? ( app-arch/gzip )
|
||||||
|
pax_kernel? ( sys-apps/attr )"
|
||||||
|
|
||||||
|
RDEPEND="${RDEPEND}
|
||||||
|
!<app-editors/emacs-vcs-${PV}"
|
||||||
|
|
||||||
|
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||||
|
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||||
|
# FULL_VERSION keeps the full version number, which is needed in
|
||||||
|
# order to determine some path information correctly for copy/move
|
||||||
|
# operations later on
|
||||||
|
FULL_VERSION="${PV%%_*}"
|
||||||
|
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
eapply ../patch
|
||||||
|
eapply_user
|
||||||
|
|
||||||
|
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||||
|
|| die "unable to sed ctags.1"
|
||||||
|
|
||||||
|
if ! use alsa; then
|
||||||
|
# ALSA is detected even if not requested by its USE flag.
|
||||||
|
# Suppress it by supplying pkg-config with a wrong library name.
|
||||||
|
sed -i -e "/ALSA_MODULES=/s/alsa/DiSaBlEaLsA/" configure.in \
|
||||||
|
|| die "unable to sed configure.in"
|
||||||
|
fi
|
||||||
|
if ! use gzip-el; then
|
||||||
|
# Emacs' build system automatically detects the gzip binary and
|
||||||
|
# compresses el files. We don't want that so confuse it with a
|
||||||
|
# wrong binary name
|
||||||
|
sed -i -e "s/ gzip/ PrEvEnTcOmPrEsSiOn/" configure.in \
|
||||||
|
|| die "unable to sed configure.in"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mv configure.in configure.ac || die
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
strip-flags
|
||||||
|
filter-flags -fstrict-aliasing -pie
|
||||||
|
append-flags $(test-flags -fno-strict-aliasing)
|
||||||
|
|
||||||
|
if use sh; then
|
||||||
|
replace-flags "-O[1-9]" -O0 #262359
|
||||||
|
elif use ia64; then
|
||||||
|
replace-flags "-O[2-9]" -O1 #325373
|
||||||
|
else
|
||||||
|
replace-flags "-O[3-9]" -O2
|
||||||
|
fi
|
||||||
|
|
||||||
|
local myconf
|
||||||
|
|
||||||
|
if use alsa && ! use sound; then
|
||||||
|
einfo "Although sound USE flag is disabled you chose to have alsa,"
|
||||||
|
einfo "so sound is switched on anyway."
|
||||||
|
myconf+=" --with-sound"
|
||||||
|
else
|
||||||
|
myconf+=" $(use_with sound)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use X; then
|
||||||
|
myconf+=" --with-x --without-ns"
|
||||||
|
myconf+=" $(use_with gconf)"
|
||||||
|
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||||
|
myconf+=" $(use_with gif)"
|
||||||
|
myconf+=" $(use_with jpeg)"
|
||||||
|
myconf+=" $(use_with png)"
|
||||||
|
myconf+=" $(use_with svg rsvg)"
|
||||||
|
myconf+=" $(use_with tiff)"
|
||||||
|
myconf+=" $(use_with xpm)"
|
||||||
|
|
||||||
|
if use xft; then
|
||||||
|
myconf+=" --with-xft"
|
||||||
|
myconf+=" $(use_with m17n-lib libotf)"
|
||||||
|
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||||
|
else
|
||||||
|
myconf+=" --without-xft"
|
||||||
|
myconf+=" --without-libotf --without-m17n-flt"
|
||||||
|
use m17n-lib && ewarn \
|
||||||
|
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# GTK+ is the default toolkit if USE=gtk is chosen with other
|
||||||
|
# possibilities. Emacs upstream thinks this should be standard
|
||||||
|
# policy on all distributions
|
||||||
|
local f
|
||||||
|
if use gtk; then
|
||||||
|
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||||
|
myconf+=" --with-x-toolkit=gtk"
|
||||||
|
for f in motif Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||||
|
done
|
||||||
|
elif use motif; then
|
||||||
|
einfo "Configuring to build with Motif toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=motif"
|
||||||
|
for f in Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||||
|
done
|
||||||
|
elif use athena || use Xaw3d; then
|
||||||
|
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||||
|
else
|
||||||
|
einfo "Configuring to build with no toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=no"
|
||||||
|
fi
|
||||||
|
elif use aqua; then
|
||||||
|
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||||
|
myconf+=" --with-ns --disable-ns-self-contained"
|
||||||
|
myconf+=" --without-x"
|
||||||
|
else
|
||||||
|
myconf+=" --without-x --without-ns"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Save version information in the Emacs binary. It will be available
|
||||||
|
# in variable "system-configuration-options".
|
||||||
|
myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
|
||||||
|
|
||||||
|
# According to configure, this option is only used for GNU/Linux
|
||||||
|
# (x86_64 and s390). For Gentoo Prefix we have to explicitly spell
|
||||||
|
# out the location because $(get_libdir) does not necessarily return
|
||||||
|
# something that matches the host OS's libdir naming (e.g. RHEL).
|
||||||
|
local crtdir=$($(tc-getCC) -print-file-name=crt1.o)
|
||||||
|
crtdir=${crtdir%/*}
|
||||||
|
|
||||||
|
econf \
|
||||||
|
--program-suffix="-${EMACS_SUFFIX}" \
|
||||||
|
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||||
|
--localstatedir="${EPREFIX}"/var \
|
||||||
|
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||||
|
--with-crt-dir="${crtdir}" \
|
||||||
|
--with-gameuser=":gamestat" \
|
||||||
|
$(use_with hesiod) \
|
||||||
|
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||||
|
$(use_with gpm) \
|
||||||
|
$(use_with dbus) \
|
||||||
|
${myconf}
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
|
||||||
|
emake CC="$(tc-getCC)" \
|
||||||
|
AR="$(tc-getAR) cq" \
|
||||||
|
RANLIB="$(tc-getRANLIB)"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install () {
|
||||||
|
emake DESTDIR="${D}" install
|
||||||
|
|
||||||
|
rm "${ED}"/usr/bin/emacs-${FULL_VERSION}-${EMACS_SUFFIX} \
|
||||||
|
|| die "removing duplicate emacs executable failed"
|
||||||
|
mv "${ED}"/usr/bin/emacs-${EMACS_SUFFIX} "${ED}"/usr/bin/${EMACS_SUFFIX} \
|
||||||
|
|| die "moving emacs executable failed"
|
||||||
|
|
||||||
|
# move man pages to the correct place
|
||||||
|
local m
|
||||||
|
mv "${ED}"/usr/share/man/man1/{emacs,${EMACS_SUFFIX}}.1 \
|
||||||
|
|| die "moving emacs man page failed"
|
||||||
|
for m in b2m ctags ebrowse emacsclient etags grep-changelog rcs-checkin; do
|
||||||
|
mv "${ED}"/usr/share/man/man1/${m}{,-${EMACS_SUFFIX}}.1 \
|
||||||
|
|| die "moving ${m} man page failed"
|
||||||
|
done
|
||||||
|
|
||||||
|
# move info dir to avoid collisions with the dir file generated by portage
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||||
|
|| die "moving info dir failed"
|
||||||
|
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||||
|
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||||
|
|
||||||
|
# avoid collision between slots, see bug #169033 e.g.
|
||||||
|
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||||
|
rm -rf "${ED}"/usr/share/{applications,icons}
|
||||||
|
rm -rf "${ED}"/var
|
||||||
|
|
||||||
|
# remove unused <version>/site-lisp dir
|
||||||
|
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||||
|
|
||||||
|
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||||
|
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||||
|
|
||||||
|
local cdir
|
||||||
|
if use source; then
|
||||||
|
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||||
|
insinto "${cdir}"
|
||||||
|
# This is not meant to install all the source -- just the
|
||||||
|
# C source you might find via find-function
|
||||||
|
doins src/*.{c,h,m}
|
||||||
|
doins -r src/{m,s}
|
||||||
|
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/src/Makefile.c
|
||||||
|
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/src/{m,s}/README
|
||||||
|
elif has installsources ${FEATURES}; then
|
||||||
|
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
|
||||||
|
X
|
||||||
|
;;; ${PN}-${SLOT} site-lisp configuration
|
||||||
|
X
|
||||||
|
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||||
|
Y (setq find-function-C-source-directory
|
||||||
|
Y "${EPREFIX}${cdir}")
|
||||||
|
X (let ((path (getenv "INFOPATH"))
|
||||||
|
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||||
|
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||||
|
X (and path
|
||||||
|
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||||
|
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||||
|
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||||
|
X (setq q (cdr q)))
|
||||||
|
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||||
|
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||||
|
EOF
|
||||||
|
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||||
|
|
||||||
|
dodoc README BUGS
|
||||||
|
|
||||||
|
if use aqua; then
|
||||||
|
dodir /Applications/Gentoo
|
||||||
|
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||||
|
mv nextstep/Emacs.app \
|
||||||
|
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||||
|
through the Emacs eselect module, which also redirects man and info
|
||||||
|
pages. Therefore, several Emacs versions can be installed at the
|
||||||
|
same time. \"man emacs.eselect\" for details.
|
||||||
|
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||||
|
it is strongly recommended that you use app-admin/emacs-updater
|
||||||
|
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||||
|
packages."
|
||||||
|
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||||
|
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||||
|
machine would satisfy basic Emacs requirements under X11.
|
||||||
|
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||||
|
for how to enable anti-aliased fonts."
|
||||||
|
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||||
|
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||||
|
it into /Applications by yourself."
|
||||||
|
readme.gentoo_create_doc
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
# move Info dir file to correct name
|
||||||
|
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||||
|
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||||
|
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||||
|
elif [[ -d "${ED}"${infodir} ]]; then
|
||||||
|
# this should not happen in EAPI 4
|
||||||
|
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||||
|
rm -f "${ED}"${infodir}/dir{,.*}
|
||||||
|
for f in "${ED}"${infodir}/*; do
|
||||||
|
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||||
|
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||||
|
|| die "install-info failed"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
elisp-site-regen
|
||||||
|
readme.gentoo_print_elog
|
||||||
|
|
||||||
|
if use livecd; then
|
||||||
|
# force an update of the emacs symlink for the livecd/dvd,
|
||||||
|
# because some microemacs packages set it with USE=livecd
|
||||||
|
eselect emacs update
|
||||||
|
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||||
|
# refresh symlinks in case any installed files have changed
|
||||||
|
eselect emacs set ${EMACS_SUFFIX}
|
||||||
|
else
|
||||||
|
eselect emacs update ifunset
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
elisp-site-regen
|
||||||
|
eselect emacs update ifunset
|
||||||
|
}
|
@ -1,3 +1,2 @@
|
|||||||
DIST pdfpc-3.1.1.tgz 199004 SHA256 ec5ffb9c2b55d1bac76172a6a13ed527ceed8cf0d659aca5e302f6a7185f00f2 SHA512 554203094b18fe11fd085414961de6644df3c258ad52d46ad171cfd6c2199028bcbaa9560bdaba63d83f858b467407cc276972b34f341cc25260db1d1358e88d WHIRLPOOL bddcba6a4285ea2b58dd01f76b7b050db630eaa97de5bba32a66f7f85563e6a99763a52e82286297f605dfa59d9ff918007baab297e587968ac1c83e3d69e8a8
|
DIST pdfpc-3.1.1.tgz 199004 SHA256 ec5ffb9c2b55d1bac76172a6a13ed527ceed8cf0d659aca5e302f6a7185f00f2 SHA512 554203094b18fe11fd085414961de6644df3c258ad52d46ad171cfd6c2199028bcbaa9560bdaba63d83f858b467407cc276972b34f341cc25260db1d1358e88d WHIRLPOOL bddcba6a4285ea2b58dd01f76b7b050db630eaa97de5bba32a66f7f85563e6a99763a52e82286297f605dfa59d9ff918007baab297e587968ac1c83e3d69e8a8
|
||||||
DIST pdfpc-4.0.4.tar.gz 79981 SHA256 3d22b262ff97ba16c4af651cfc439a758ee416500501574cc6cd909f3762b7ce SHA512 f97dfad7bda327c59221fe2a09b6561a4a2e29333a436e893db68445f2e2163a92df082b3d6c7f6c2dffee73ba926933a9b36fd11ea9632133f73771834a7822 WHIRLPOOL 406e0ba7304be8934081262b65db637e30f26ed22aebcbd34d8454420ca90146138815f0ee5ab925ab2a028137dc96152e475ac1bac3f02437c0d8b1e190aff8
|
DIST pdfpc-4.0.6.tar.gz 82157 SHA256 42b6bd421e977a98cf00d688da7b392b8d8be423eb56ea7ca929c3c0334f8aa4 SHA512 289d37956da27d2da1ebf562a8557fd66b92143d777558103da5d70aaabee1f0d4ce69d7e193485d921156d7bc778de635faf18d6ec25a29651980ecd5c74b22 WHIRLPOOL 36caaca71d6df9c0b51bf61cab67c34af5af5097ff96ae5d994f93b0977d8bb2dc9676a9e7293faceb115c6753e4884fcd685878db9847c2cb85f31ac2c9fedc
|
||||||
DIST pdfpc-4.0.5.tar.gz 79849 SHA256 dc2c333082b3e5294741d6bf184b04fd60962fed64956d2b63dea4ca51f32a65 SHA512 c91d886f02ff9009abc06d95539a715940dd95872e78606b5ac26b0c2646459340b1730deab7ed53e0687e67c69c426ba4956a84e12c1df0248fd47bfdcff6e4 WHIRLPOOL 215031aa6a8f040440a4f9c9f9d4b6bc947f846847cf3d74590cc1ac59316596a09a33b637d368528e42bbcefeb1dc3088216487797ef271f79c19446a2e95ed
|
|
||||||
|
@ -1,43 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
VALA_MIN_API_VERSION="0.26"
|
|
||||||
VALA_MAX_API_VERSION="0.32" # fix sed line if you increase this
|
|
||||||
|
|
||||||
inherit vala cmake-utils
|
|
||||||
|
|
||||||
DESCRIPTION="Presenter console with multi-monitor support for PDF files"
|
|
||||||
HOMEPAGE="http://pdfpc.github.io"
|
|
||||||
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~x86"
|
|
||||||
IUSE=""
|
|
||||||
|
|
||||||
RDEPEND="app-text/poppler:=[cairo]
|
|
||||||
dev-libs/glib:2
|
|
||||||
dev-libs/libgee:0.8
|
|
||||||
gnome-base/librsvg
|
|
||||||
media-libs/gstreamer:1.0
|
|
||||||
media-libs/gst-plugins-base:1.0
|
|
||||||
sys-apps/dbus
|
|
||||||
x11-libs/gtk+:3"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
$(vala_depend)"
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
sed -i -e "s/valac-0.20/valac-0.32 valac-0.30 valac-0.28 valac-0.26/" cmake/vala/FindVala.cmake || die
|
|
||||||
vala_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure(){
|
|
||||||
local mycmakeargs=(
|
|
||||||
-DSYSCONFDIR="${EPREFIX}/etc"
|
|
||||||
)
|
|
||||||
cmake-utils_src_configure
|
|
||||||
}
|
|
@ -1,3 +1 @@
|
|||||||
DIST jpilot-1.8.0.tar.gz 1604468 SHA256 b00f6b5d2d013572a8e2a6014b247eda855bbd5fef77e59e49dbefb314c57dde SHA512 3ee49248daec4871d6b45497730efbb666481a9ab440ea410a0d793ae4e3894fa47f717941b18c2b9865024a755df2ee0b41449ebb32a70ef5f4142278a3591e WHIRLPOOL bb745942854e8001975744927eae153e284b99cc7f49095332345b834856e912ade7e2be14f30cc47eb1f5d5cecf153379678cdf6cb4c465147166de491b6e5b
|
|
||||||
DIST jpilot-1.8.1.tar.gz 1582869 SHA256 682838e8f9634102e5721e779fa0f00ec4be747776a575794137f1ce9420291f SHA512 b0415ffeb7284cfc2fb15faf87d14eba29ac15d3a9ca05ad60ed05d8ee6ee4cf89c60a24dbf4095564120d0155100a110969aa44d2ce7e98e05f11332698d052 WHIRLPOOL b297e2797b2ab405e837e40fc4071a8fd9df70fad62ded2287379180282f02450ba3eb713ba1519c2d2618fc5c1af704a959f72e403333662284dfe2d05b1273
|
|
||||||
DIST jpilot-1.8.2.tar.gz 1740735 SHA256 2c28ed7acea27ae3d541036f2e2ca5ed7e0121badf477e3cfa5ec8d282337e23 SHA512 733dd51a2acc60760bb1ffaa0d7b4433584a571793d5e4f857492349bae8d032625baf9f0060e619d760628ddda3559bf4be057f45f4dc17ddf1af1ca795c024 WHIRLPOOL 51c834e48b137160d0f313f41a83837428d1a23b0a8955ce8f87fef6dd02051c1705a4f702a543e338cad825303ae4ef89a9f20a3db88875b409404487af622c
|
DIST jpilot-1.8.2.tar.gz 1740735 SHA256 2c28ed7acea27ae3d541036f2e2ca5ed7e0121badf477e3cfa5ec8d282337e23 SHA512 733dd51a2acc60760bb1ffaa0d7b4433584a571793d5e4f857492349bae8d032625baf9f0060e619d760628ddda3559bf4be057f45f4dc17ddf1af1ca795c024 WHIRLPOOL 51c834e48b137160d0f313f41a83837428d1a23b0a8955ce8f87fef6dd02051c1705a4f702a543e338cad825303ae4ef89a9f20a3db88875b409404487af622c
|
||||||
|
@ -1,102 +0,0 @@
|
|||||||
--- empty/Makefile.am
|
|
||||||
+++ empty/Makefile.am
|
|
||||||
@@ -9,7 +9,7 @@
|
|
||||||
ContactsDB-PAdd.pdb \
|
|
||||||
ToDoDB.pdb \
|
|
||||||
TasksDB-PTod.pdb \
|
|
||||||
- MañanaDB.pdb \
|
|
||||||
+ MananaDB.pdb \
|
|
||||||
MemoDB.pdb \
|
|
||||||
MemosDB-PMem.pdb \
|
|
||||||
Memo32DB.pdb \
|
|
||||||
--- sync.c
|
|
||||||
+++ sync.c
|
|
||||||
@@ -1146,7 +1146,7 @@
|
|
||||||
"ToDoDB",
|
|
||||||
"MemoDB",
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
- "MañanaDB",
|
|
||||||
+ "MananaDB",
|
|
||||||
#endif
|
|
||||||
"Saved Preferences",
|
|
||||||
""
|
|
||||||
@@ -2899,7 +2899,7 @@
|
|
||||||
"ToDoDB",
|
|
||||||
"MemoDB",
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
- "MañanaDB",
|
|
||||||
+ "MananaDB",
|
|
||||||
#endif
|
|
||||||
""
|
|
||||||
};
|
|
||||||
--- todo.c
|
|
||||||
+++ todo.c
|
|
||||||
@@ -77,7 +77,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(DBname, "MañanaDB");
|
|
||||||
+ strcpy(DBname, "MananaDB");
|
|
||||||
} else {
|
|
||||||
strcpy(DBname, "ToDoDB");
|
|
||||||
}
|
|
||||||
@@ -163,7 +163,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- num = jp_read_DB_files("MañanaDB", &records);
|
|
||||||
+ num = jp_read_DB_files("MananaDB", &records);
|
|
||||||
if (-1 == num)
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
@@ -315,7 +315,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- jp_pc_write("MañanaDB", &br);
|
|
||||||
+ jp_pc_write("MananaDB", &br);
|
|
||||||
} else {
|
|
||||||
jp_pc_write("ToDoDB", &br);
|
|
||||||
}
|
|
||||||
--- todo_gui.c
|
|
||||||
+++ todo_gui.c
|
|
||||||
@@ -1029,8 +1029,8 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(pdb_name, "MañanaDB.pdb");
|
|
||||||
- strcpy(db_name, "MañanaDB");
|
|
||||||
+ strcpy(pdb_name, "MananaDB.pdb");
|
|
||||||
+ strcpy(db_name, "MananaDB");
|
|
||||||
} else {
|
|
||||||
strcpy(pdb_name, "ToDoDB.pdb");
|
|
||||||
strcpy(db_name, "ToDoDB");
|
|
||||||
--- utils.c
|
|
||||||
+++ utils.c
|
|
||||||
@@ -550,7 +550,7 @@
|
|
||||||
"ContactsDB-PAdd.pdb",
|
|
||||||
"ToDoDB.pdb",
|
|
||||||
"TasksDB-PTod.pdb",
|
|
||||||
- "MañanaDB.pdb",
|
|
||||||
+ "MananaDB.pdb",
|
|
||||||
"MemoDB.pdb",
|
|
||||||
"MemosDB-PMem.pdb",
|
|
||||||
"Memo32DB.pdb",
|
|
||||||
@@ -983,7 +983,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(filename, "MañanaDB.pc3");
|
|
||||||
+ strcpy(filename, "MananaDB.pc3");
|
|
||||||
} else {
|
|
||||||
strcpy(filename, "ToDoDB.pc3");
|
|
||||||
}
|
|
||||||
@@ -3478,7 +3478,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(filename, "MañanaDB.pc3");
|
|
||||||
+ strcpy(filename, "MananaDB.pc3");
|
|
||||||
} else {
|
|
||||||
strcpy(filename, dbname[2]);
|
|
||||||
}
|
|
@ -1,102 +0,0 @@
|
|||||||
--- empty/Makefile.am
|
|
||||||
+++ empty/Makefile.am
|
|
||||||
@@ -9,7 +9,7 @@
|
|
||||||
ContactsDB-PAdd.pdb \
|
|
||||||
ToDoDB.pdb \
|
|
||||||
TasksDB-PTod.pdb \
|
|
||||||
- MañanaDB.pdb \
|
|
||||||
+ MananaDB.pdb \
|
|
||||||
MemoDB.pdb \
|
|
||||||
MemosDB-PMem.pdb \
|
|
||||||
Memo32DB.pdb \
|
|
||||||
--- sync.c
|
|
||||||
+++ sync.c
|
|
||||||
@@ -1169,7 +1169,7 @@
|
|
||||||
"ToDoDB",
|
|
||||||
"MemoDB",
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
- "MañanaDB",
|
|
||||||
+ "MananaDB",
|
|
||||||
#endif
|
|
||||||
"Saved Preferences",
|
|
||||||
""
|
|
||||||
@@ -2960,7 +2960,7 @@
|
|
||||||
"ToDoDB",
|
|
||||||
"MemoDB",
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
- "MañanaDB",
|
|
||||||
+ "MananaDB",
|
|
||||||
#endif
|
|
||||||
""
|
|
||||||
};
|
|
||||||
--- todo.c
|
|
||||||
+++ todo.c
|
|
||||||
@@ -77,7 +77,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(DBname, "MañanaDB");
|
|
||||||
+ strcpy(DBname, "MananaDB");
|
|
||||||
} else {
|
|
||||||
strcpy(DBname, "ToDoDB");
|
|
||||||
}
|
|
||||||
@@ -164,7 +164,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- num = jp_read_DB_files("MañanaDB", &records);
|
|
||||||
+ num = jp_read_DB_files("MananaDB", &records);
|
|
||||||
if (-1 == num)
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
@@ -317,7 +317,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- jp_pc_write("MañanaDB", &br);
|
|
||||||
+ jp_pc_write("MananaDB", &br);
|
|
||||||
} else {
|
|
||||||
jp_pc_write("ToDoDB", &br);
|
|
||||||
}
|
|
||||||
--- todo_gui.c
|
|
||||||
+++ todo_gui.c
|
|
||||||
@@ -1049,8 +1049,8 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(pdb_name, "MañanaDB.pdb");
|
|
||||||
- strcpy(db_name, "MañanaDB");
|
|
||||||
+ strcpy(pdb_name, "MananaDB.pdb");
|
|
||||||
+ strcpy(db_name, "MananaDB");
|
|
||||||
} else {
|
|
||||||
strcpy(pdb_name, "ToDoDB.pdb");
|
|
||||||
strcpy(db_name, "ToDoDB");
|
|
||||||
--- utils.c
|
|
||||||
+++ utils.c
|
|
||||||
@@ -553,7 +553,7 @@
|
|
||||||
"ContactsDB-PAdd.pdb",
|
|
||||||
"ToDoDB.pdb",
|
|
||||||
"TasksDB-PTod.pdb",
|
|
||||||
- "MañanaDB.pdb",
|
|
||||||
+ "MananaDB.pdb",
|
|
||||||
"MemoDB.pdb",
|
|
||||||
"MemosDB-PMem.pdb",
|
|
||||||
"Memo32DB.pdb",
|
|
||||||
@@ -1019,7 +1019,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(filename, "MañanaDB.pc3");
|
|
||||||
+ strcpy(filename, "MananaDB.pc3");
|
|
||||||
} else {
|
|
||||||
strcpy(filename, "ToDoDB.pc3");
|
|
||||||
}
|
|
||||||
@@ -3552,7 +3552,7 @@
|
|
||||||
#ifdef ENABLE_MANANA
|
|
||||||
get_pref(PREF_MANANA_MODE, &ivalue, NULL);
|
|
||||||
if (ivalue) {
|
|
||||||
- strcpy(filename, "MañanaDB.pc3");
|
|
||||||
+ strcpy(filename, "MananaDB.pc3");
|
|
||||||
} else {
|
|
||||||
strcpy(filename, dbname[2]);
|
|
||||||
}
|
|
@ -1,54 +0,0 @@
|
|||||||
# Copyright 1999-2014 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=2
|
|
||||||
inherit autotools eutils
|
|
||||||
|
|
||||||
DESCRIPTION="Desktop Organizer Software for the Palm Pilot"
|
|
||||||
HOMEPAGE="http://www.jpilot.org/"
|
|
||||||
SRC_URI="http://www.jpilot.org/${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="alpha amd64 ia64 ppc x86"
|
|
||||||
IUSE="nls"
|
|
||||||
|
|
||||||
RDEPEND=">=app-pda/pilot-link-0.12.5
|
|
||||||
dev-libs/libgcrypt:0
|
|
||||||
>=x11-libs/gtk+-2.18.9:2"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
nls? ( dev-util/intltool
|
|
||||||
sys-devel/gettext )
|
|
||||||
virtual/pkgconfig"
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
epatch "${FILESDIR}"/${P}-char.patch
|
|
||||||
mv -vf empty/Ma*anaDB.pdb empty/MananaDB.pdb || die
|
|
||||||
|
|
||||||
sed -i \
|
|
||||||
-e '/^Icon/s:jpilot.xpm:/usr/share/pixmaps/jpilot/jpilot-icon1.xpm:' \
|
|
||||||
jpilot.desktop || die
|
|
||||||
|
|
||||||
echo calendar.c > po/POTFILES.skip
|
|
||||||
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
econf \
|
|
||||||
$(use_enable nls)
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
emake \
|
|
||||||
DESTDIR="${D}" \
|
|
||||||
icondir="/usr/share/pixmaps/${PN}" \
|
|
||||||
miscdir="/usr/share/doc/${PF}" \
|
|
||||||
install || die
|
|
||||||
|
|
||||||
rm -f "${D}"/usr/share/doc/${PF}/{COPYING,INSTALL} \
|
|
||||||
"${D}"/usr/share/pixmaps/${PN}/README
|
|
||||||
|
|
||||||
find "${D}" -name '*.la' -delete
|
|
||||||
}
|
|
@ -1,52 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=4
|
|
||||||
inherit autotools eutils
|
|
||||||
|
|
||||||
DESCRIPTION="Desktop Organizer Software for the Palm Pilot"
|
|
||||||
HOMEPAGE="http://www.jpilot.org/"
|
|
||||||
SRC_URI="http://www.jpilot.org/${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="alpha amd64 ~arm ia64 ppc x86"
|
|
||||||
IUSE="nls"
|
|
||||||
|
|
||||||
RDEPEND=">=app-pda/pilot-link-0.12.5
|
|
||||||
dev-libs/libgcrypt:0
|
|
||||||
>=x11-libs/gtk+-2.18.9:2"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
nls? ( dev-util/intltool
|
|
||||||
sys-devel/gettext )
|
|
||||||
virtual/pkgconfig"
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
epatch "${FILESDIR}"/${P}-char.patch
|
|
||||||
mv -vf empty/Ma*anaDB.pdb empty/MananaDB.pdb || die
|
|
||||||
|
|
||||||
sed -i \
|
|
||||||
-e '/^Icon/s:jpilot.xpm:/usr/share/pixmaps/jpilot/jpilot-icon1.xpm:' \
|
|
||||||
jpilot.desktop || die
|
|
||||||
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
econf \
|
|
||||||
$(use_enable nls)
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
emake \
|
|
||||||
DESTDIR="${D}" \
|
|
||||||
icondir="/usr/share/pixmaps/${PN}" \
|
|
||||||
miscdir="/usr/share/doc/${PF}" \
|
|
||||||
install
|
|
||||||
|
|
||||||
rm -f "${D}"/usr/share/doc/${PF}/{COPYING,INSTALL} \
|
|
||||||
"${D}"/usr/share/pixmaps/${PN}/README
|
|
||||||
|
|
||||||
find "${D}" -name '*.la' -exec rm -f {} +
|
|
||||||
}
|
|
@ -1 +1,2 @@
|
|||||||
|
DIST porticron-0.7.1.tar.gz 6530 SHA256 1ca246a905e7cd5b11c5d7145359e19b9f31efff79cda26d881a30c9adf804c7 SHA512 ba2f365011e1ad2f7cb67d655839fa425791ab95309753719b4a4206db735f141d473d24bbb68da25a88db54919d033f53efaf497c26de71f3edb4a39dcc957c WHIRLPOOL 092460831ad8151873b81e3a702603e031d3800878775ed428e8b060b9bd0f901f84501eb4a076d1e24e3600cfdcf0bd98602b43ea2ba94c0ac4ca538421caa2
|
||||||
DIST porticron-0.7_p20140126.tar.gz 4453 SHA256 46b61958a182d9cdd73dbea76a017855eebc4780dc75692503c0d1e7ff0ea482 SHA512 c14c5ff18eff74d7c225883dc0e1cea16666f0dcab07f9b249aed0db2874179eacc824c0f35dc2cfd97dc0c2db5f2bf6d13c3e76a2cd1b87de46fb073622f3d5 WHIRLPOOL f932a2319be582b564412badb456daf0fd86e3991ffc63fa25718337669b860097ac6d446a220f4e56e3a97cb8660a9f2bd25eeb1c54a2921fb0c7d6991bad5b
|
DIST porticron-0.7_p20140126.tar.gz 4453 SHA256 46b61958a182d9cdd73dbea76a017855eebc4780dc75692503c0d1e7ff0ea482 SHA512 c14c5ff18eff74d7c225883dc0e1cea16666f0dcab07f9b249aed0db2874179eacc824c0f35dc2cfd97dc0c2db5f2bf6d13c3e76a2cd1b87de46fb073622f3d5 WHIRLPOOL f932a2319be582b564412badb456daf0fd86e3991ffc63fa25718337669b860097ac6d446a220f4e56e3a97cb8660a9f2bd25eeb1c54a2921fb0c7d6991bad5b
|
||||||
|
@ -0,0 +1,28 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI="6"
|
||||||
|
|
||||||
|
inherit eutils vcs-snapshot
|
||||||
|
|
||||||
|
DESCRIPTION="cron script to sync portage and send update mails to root"
|
||||||
|
HOMEPAGE="https://github.com/gentoo/porticron"
|
||||||
|
SRC_URI="https://github.com/gentoo/porticron/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="BSD"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
|
||||||
|
IUSE=""
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
app-portage/gentoolkit
|
||||||
|
net-dns/bind-tools
|
||||||
|
"
|
||||||
|
DEPEND=""
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dosbin bin/porticron
|
||||||
|
insinto /etc
|
||||||
|
doins etc/porticron.conf
|
||||||
|
}
|
@ -1,140 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
inherit autotools elisp-common flag-o-matic
|
|
||||||
|
|
||||||
DESCRIPTION="Any to PostScript filter"
|
|
||||||
HOMEPAGE="https://www.gnu.org/software/a2ps/"
|
|
||||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.gz
|
|
||||||
linguas_ja? ( mirror://gentoo/${P}-ja_nls.patch.gz )"
|
|
||||||
|
|
||||||
LICENSE="GPL-3"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
|
|
||||||
IUSE="emacs latex linguas_ja nls static-libs userland_BSD userland_GNU vanilla"
|
|
||||||
|
|
||||||
RESTRICT=test
|
|
||||||
|
|
||||||
RDEPEND="app-text/ghostscript-gpl
|
|
||||||
app-text/libpaper
|
|
||||||
>=app-text/psutils-1.17
|
|
||||||
app-text/wdiff
|
|
||||||
emacs? ( virtual/emacs )
|
|
||||||
latex? ( virtual/latex-base )
|
|
||||||
nls? ( virtual/libintl )
|
|
||||||
userland_GNU? ( >=sys-apps/coreutils-6.10-r1 )
|
|
||||||
userland_BSD? ( sys-freebsd/freebsd-ubin )"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
>=dev-util/gperf-2.7.2
|
|
||||||
virtual/yacc
|
|
||||||
nls? ( sys-devel/gettext )"
|
|
||||||
|
|
||||||
SITEFILE=50${PN}-gentoo.el
|
|
||||||
|
|
||||||
S=${WORKDIR}/${PN}-${PV:0:4}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
|
|
||||||
eapply "${FILESDIR}"/${PN}-4.13c-locale-gentoo.diff
|
|
||||||
use vanilla || eapply -p0 "${FILESDIR}"/${PN}-4.13-stdout.diff
|
|
||||||
if use linguas_ja; then
|
|
||||||
eapply "${WORKDIR}"/${P}-ja_nls.patch
|
|
||||||
# bug #335803
|
|
||||||
eapply -p0 "${FILESDIR}"/${P}-ja-cleanup.patch
|
|
||||||
else
|
|
||||||
eapply "${FILESDIR}"/${P}-cleanup.patch
|
|
||||||
fi
|
|
||||||
|
|
||||||
# fix fnmatch replacement, bug #134546
|
|
||||||
eapply "${FILESDIR}"/${PN}-4.13c-fnmatch-replacement.patch
|
|
||||||
|
|
||||||
# bug #122026
|
|
||||||
eapply "${FILESDIR}"/${P}-psset.patch
|
|
||||||
|
|
||||||
# fix emacs printing, bug #114627
|
|
||||||
eapply "${FILESDIR}"/a2ps-4.13c-emacs.patch
|
|
||||||
|
|
||||||
# fix chmod error, #167670
|
|
||||||
eapply "${FILESDIR}"/a2ps-4.13-manpage-chmod.patch
|
|
||||||
|
|
||||||
# add configure check for mempcpy, bug 216588
|
|
||||||
eapply "${FILESDIR}"/${P}-check-mempcpy.patch
|
|
||||||
|
|
||||||
# fix compilation error due to invalid stpcpy() prototype, bug 216588
|
|
||||||
eapply -p0 "${FILESDIR}"/${P}-fix-stpcpy-proto.patch
|
|
||||||
|
|
||||||
# fix compilation error due to obstack.h issue, bug 269638
|
|
||||||
eapply "${FILESDIR}"/${P}-ptrdiff_t.patch
|
|
||||||
|
|
||||||
# fix compilation error due to texinfo 5.x, bug 482748
|
|
||||||
eapply "${FILESDIR}"/${P}-texinfo-5.x.patch
|
|
||||||
|
|
||||||
# fix CVE-2014-0466, bug 506352
|
|
||||||
eapply "${FILESDIR}"/${P}-CVE-2014-0466.patch
|
|
||||||
|
|
||||||
# fix building with sys-devel/automake >= 1.12, bug 420503
|
|
||||||
rm -f {.,ogonkify}/aclocal.m4 || die
|
|
||||||
sed -i \
|
|
||||||
-e '/^AM_C_PROTOTYPES/d' \
|
|
||||||
-e '/^AUTOMAKE_OPTIONS.*ansi2knr/d' \
|
|
||||||
-e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \
|
|
||||||
-e 's:AM_PROG_CC_STDC:AC_PROG_CC:' \
|
|
||||||
configure.in {contrib/sample,lib,src}/Makefile.am m4/protos.m4 || die
|
|
||||||
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
append-cppflags -DPROTOTYPES #420503
|
|
||||||
|
|
||||||
local myconf="COM_netscape=no COM_acroread=no"
|
|
||||||
|
|
||||||
use emacs || myconf="${myconf} EMACS=no"
|
|
||||||
use latex || myconf="${myconf} COM_latex=no"
|
|
||||||
|
|
||||||
export LANG=C LC_ALL=C
|
|
||||||
|
|
||||||
econf \
|
|
||||||
--enable-shared \
|
|
||||||
$(use_enable static-libs static) \
|
|
||||||
--sysconfdir="${EPREFIX}"/etc/a2ps \
|
|
||||||
$(use_enable nls) \
|
|
||||||
${myconf}
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
# parallel make b0rked
|
|
||||||
emake -j1
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
emake \
|
|
||||||
DESTDIR="${D}" \
|
|
||||||
lispdir="${EPREFIX}${SITELISP}"/${PN} \
|
|
||||||
install
|
|
||||||
|
|
||||||
newdoc "${ED}"/usr/share/a2ps/README README.a2ps
|
|
||||||
newdoc "${ED}"/usr/share/a2ps/ppd/README README.a2ps.ppd
|
|
||||||
newdoc "${ED}"/usr/share/ogonkify/README README.ogonkify
|
|
||||||
|
|
||||||
rm -f "${ED}"/usr/share/{a2ps,a2ps/ppd,ogonkify}/README || die
|
|
||||||
|
|
||||||
prune_libtool_files
|
|
||||||
|
|
||||||
if use emacs; then
|
|
||||||
elisp-site-file-install "${FILESDIR}"/${SITEFILE} || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
dodoc ANNOUNCE AUTHORS ChangeLog FAQ NEWS README* THANKS TODO
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
use emacs && elisp-site-regen
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
use emacs && elisp-site-regen
|
|
||||||
}
|
|
@ -0,0 +1,34 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit toolchain-funcs
|
||||||
|
|
||||||
|
DESCRIPTION="A tool for the fast searching of text allowing for errors in the search pattern"
|
||||||
|
HOMEPAGE="ftp://ftp.cs.arizona.edu/agrep/README"
|
||||||
|
SRC_URI="ftp://ftp.cs.arizona.edu/${PN}/${P}.tar.Z"
|
||||||
|
|
||||||
|
LICENSE="AGREP"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos ~sparc-solaris"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
!dev-libs/tre
|
||||||
|
!app-misc/glimpse"
|
||||||
|
|
||||||
|
DOCS=( README agrep.algorithms agrep.chronicle COPYRIGHT contribution.list )
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
sed -i -e 's/^CFLAGS.*//' \
|
||||||
|
-e "s:\$(CFLAGS):& \$(LDFLAGS) :" Makefile || die
|
||||||
|
tc-export CC
|
||||||
|
emake
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dobin "${PN}"
|
||||||
|
doman "${PN}.1"
|
||||||
|
einstalldocs
|
||||||
|
}
|
@ -1,25 +1,26 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
# $Id$
|
# $Id$
|
||||||
|
|
||||||
EAPI=6
|
EAPI=6
|
||||||
|
|
||||||
inherit multilib
|
DESCRIPTION="A collection of CLI tools supporting SpatiaLite"
|
||||||
|
HOMEPAGE="https://www.gaia-gis.it/spatialite"
|
||||||
DESCRIPTION="A complete Spatial DBMS in a nutshell built upon sqlite"
|
SRC_URI="https://www.gaia-gis.it/gaia-sins/${PN}-sources/${P}.tar.gz"
|
||||||
HOMEPAGE="http://www.gaia-gis.it/spatialite"
|
|
||||||
SRC_URI="http://www.gaia-gis.it/gaia-sins/${PN}-sources/${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="MPL-1.1"
|
LICENSE="MPL-1.1"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
KEYWORDS="~amd64 ~x86"
|
KEYWORDS="~amd64 ~x86"
|
||||||
IUSE="readline"
|
IUSE="readline"
|
||||||
|
|
||||||
RDEPEND=">=dev-db/spatialite-3.0.1[geos,xls]
|
RDEPEND="
|
||||||
|
dev-db/sqlite:3[extensions(+)]
|
||||||
|
>=dev-db/spatialite-3.0.1[geos,xls]
|
||||||
dev-libs/expat
|
dev-libs/expat
|
||||||
>=sci-libs/geos-3.3
|
dev-libs/libxml2
|
||||||
sci-libs/proj
|
|
||||||
sci-geosciences/readosm
|
sci-geosciences/readosm
|
||||||
|
sci-libs/geos
|
||||||
|
sci-libs/proj
|
||||||
readline? (
|
readline? (
|
||||||
sys-libs/ncurses:=
|
sys-libs/ncurses:=
|
||||||
sys-libs/readline:=
|
sys-libs/readline:=
|
@ -1,4 +1,4 @@
|
|||||||
DIST libspatialite-2.4.0.tar.gz 865036 SHA256 a9c2a3d9277a6fed13561cf2c1580fef701cfd55336f34eea3f3d46389f7f2c2 SHA512 3e34b2eeedfb0f3a57f3ef33c564cc3bd9391c6f7cc6d7fa7b8e83f920c3a625cfbb33d15d9f2110c7821d964b7b26bb5c06aebd41c3f7ad2bf943d3dea795cf WHIRLPOOL fed91a8501c34a3e0e0a5920049165c081abd050c41b1ef9cb20a8f68571dc85275133d23f798b0b10d88fd6f8623984ee4e18131309d85e1c7512fa9fd3f9d7
|
DIST libspatialite-2.4.0.tar.gz 865036 SHA256 a9c2a3d9277a6fed13561cf2c1580fef701cfd55336f34eea3f3d46389f7f2c2 SHA512 3e34b2eeedfb0f3a57f3ef33c564cc3bd9391c6f7cc6d7fa7b8e83f920c3a625cfbb33d15d9f2110c7821d964b7b26bb5c06aebd41c3f7ad2bf943d3dea795cf WHIRLPOOL fed91a8501c34a3e0e0a5920049165c081abd050c41b1ef9cb20a8f68571dc85275133d23f798b0b10d88fd6f8623984ee4e18131309d85e1c7512fa9fd3f9d7
|
||||||
DIST libspatialite-3.0.1.tar.gz 1849723 SHA256 4983d6584069fd5ff0cfcccccee1015088dab2db177c0dc7050ce8306b68f8e6 SHA512 604e5fcb3ac17eb3c69aff5dbf8c77660aecbddc81ab1faa63b0ce069253e3d1c5b6001bd2f2fde5d2f60de9c3758d0d871b9cbcaf1a6d18ceebc0788c166d94 WHIRLPOOL 48f8c84e828ec5e3504e9e347a1fe13c30e852f2127458e1b892ab422f4f0b2fd6857fd50fef51f72fb0851fe7827fac62fe1342e7deac2d7a511501c41321ab
|
DIST libspatialite-3.0.1.tar.gz 1849723 SHA256 4983d6584069fd5ff0cfcccccee1015088dab2db177c0dc7050ce8306b68f8e6 SHA512 604e5fcb3ac17eb3c69aff5dbf8c77660aecbddc81ab1faa63b0ce069253e3d1c5b6001bd2f2fde5d2f60de9c3758d0d871b9cbcaf1a6d18ceebc0788c166d94 WHIRLPOOL 48f8c84e828ec5e3504e9e347a1fe13c30e852f2127458e1b892ab422f4f0b2fd6857fd50fef51f72fb0851fe7827fac62fe1342e7deac2d7a511501c41321ab
|
||||||
DIST libspatialite-4.1.1.tar.gz 3846758 SHA256 0481a20af952f4a38c9dbb10f37fd38c45f16c50397f8da0079e02435b9b910f SHA512 62e443bdf78234b9bf314cc60fbea62da7caa95054cdf5052d83703bf994240a1ffc7a3e804403dfbac65a18e00c5ab58568e66d05d1eb980fe08a52f1e8be05 WHIRLPOOL 1ba616b401f7d43a3afd0c62bc3a5835065560a8d5fa983af8da85f3d58ef32ab7b8e0b3ae07499bba2a3af4ff3b7d2b979de200768404750691421abe22d574
|
|
||||||
DIST libspatialite-4.3.0.tar.gz 4439538 SHA256 4acf2d2b891989e61351584fe28514a6561f8f6a1901b988990513be5fe1bdfe SHA512 b686766ed90711a41efbf219a8942ead8aefda8784a9cabc59233f107e0e10eda949d022152af1064a169975aa6a47515f6064589166418b853427dde5779ecc WHIRLPOOL ecb98596eae3468423de9921cc304c7299806d911be2bc10efdd38bb1d557cc6a5e70ad96e2268887b443879ca49fabd1b3ed747e440b464ac7f798f0ab2ae7c
|
DIST libspatialite-4.3.0.tar.gz 4439538 SHA256 4acf2d2b891989e61351584fe28514a6561f8f6a1901b988990513be5fe1bdfe SHA512 b686766ed90711a41efbf219a8942ead8aefda8784a9cabc59233f107e0e10eda949d022152af1064a169975aa6a47515f6064589166418b853427dde5779ecc WHIRLPOOL ecb98596eae3468423de9921cc304c7299806d911be2bc10efdd38bb1d557cc6a5e70ad96e2268887b443879ca49fabd1b3ed747e440b464ac7f798f0ab2ae7c
|
||||||
|
DIST libspatialite-4.3.0a.tar.gz 4440660 SHA256 88900030a4762904a7880273f292e5e8ca6b15b7c6c3fb88ffa9e67ee8a5a499 SHA512 adfd63e8dde0f370b07e4e7bb557647d2bfb5549205b60bdcaaca69ff81298a3d885e7c1ca515ef56dd0aca152ae940df8b5dbcb65bb61ae0a9337499895c3c0 WHIRLPOOL 4d591b604d7f31a1cd52dbb8f375da0487404ec8f5bc4a38de8436134a126fae1028a0aef872cfd4ba6ce8a69aa1d4924768b2ceeed75a67999df4b3ddd4bda3
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
--- src/shapefiles/validator.c 2013-06-29 08:53:15.000000000 +0200
|
|
||||||
+++ src/shapefiles/validatornew.c 2016-02-29 18:38:11.879981893 +0100
|
|
||||||
@@ -3510,7 +3510,7 @@
|
|
||||||
|
|
||||||
/* silencing stupid compiler warnings */
|
|
||||||
if (sqlite == NULL || table == NULL || geom == NULL ||
|
|
||||||
- ||report_path == NULL || n_rows == NULL || n_invalids == NULL)
|
|
||||||
+ report_path == NULL || n_rows == NULL || n_invalids == NULL)
|
|
||||||
table = NULL;
|
|
||||||
|
|
||||||
if (err_msg == NULL)
|
|
@ -1,51 +1,50 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
# $Id$
|
# $Id$
|
||||||
|
|
||||||
EAPI=5
|
EAPI=6
|
||||||
|
|
||||||
MY_PN="lib${PN}"
|
MY_PN="lib${PN}"
|
||||||
MY_P="${MY_PN}-${PV}"
|
MY_P="${MY_PN}-${PV}"
|
||||||
|
|
||||||
inherit multilib eutils
|
|
||||||
|
|
||||||
DESCRIPTION="A complete Spatial DBMS in a nutshell built upon sqlite"
|
DESCRIPTION="A complete Spatial DBMS in a nutshell built upon sqlite"
|
||||||
HOMEPAGE="http://www.gaia-gis.it/gaia-sins/"
|
HOMEPAGE="https://www.gaia-gis.it/gaia-sins/"
|
||||||
SRC_URI="http://www.gaia-gis.it/gaia-sins/${MY_PN}-sources/${MY_P}.tar.gz"
|
SRC_URI="https://www.gaia-gis.it/gaia-sins/${MY_PN}-sources/${MY_P}.tar.gz"
|
||||||
|
|
||||||
LICENSE="MPL-1.1"
|
LICENSE="MPL-1.1"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
|
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
|
||||||
IUSE="+geos iconv +proj +xls"
|
IUSE="+geos iconv +proj test +xls +xml"
|
||||||
|
|
||||||
RDEPEND=">=dev-db/sqlite-3.7.5:3[extensions(+)]
|
RDEPEND="
|
||||||
geos? ( >=sci-libs/geos-3.3 )
|
>=dev-db/sqlite-3.7.5:3[extensions(+)]
|
||||||
|
sys-libs/zlib
|
||||||
|
geos? ( >=sci-libs/geos-3.4 )
|
||||||
proj? ( sci-libs/proj )
|
proj? ( sci-libs/proj )
|
||||||
xls? ( dev-libs/freexl )
|
xls? ( dev-libs/freexl )
|
||||||
|
xml? ( dev-libs/libxml2 )
|
||||||
"
|
"
|
||||||
DEPEND="${RDEPEND}"
|
DEPEND="${RDEPEND}"
|
||||||
|
|
||||||
S=${WORKDIR}/${MY_P}
|
REQUIRED_USE="test? ( iconv )"
|
||||||
|
|
||||||
src_prepare() {
|
S="${WORKDIR}/${MY_P}"
|
||||||
epatch "${FILESDIR}/${P}-validator.patch"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
src_configure() {
|
||||||
econf \
|
econf \
|
||||||
|
--disable-examples \
|
||||||
--disable-static \
|
--disable-static \
|
||||||
--enable-geocallbacks \
|
|
||||||
--enable-epsg \
|
--enable-epsg \
|
||||||
--disable-examples \
|
--enable-geocallbacks \
|
||||||
$(use_enable geos) \
|
$(use_enable geos) \
|
||||||
$(use_enable geos geosadvanced) \
|
$(use_enable geos geosadvanced) \
|
||||||
$(use_enable iconv) \
|
$(use_enable iconv) \
|
||||||
$(use_enable proj) \
|
$(use_enable proj) \
|
||||||
$(use_enable xls freexl)
|
$(use_enable xls freexl) \
|
||||||
|
$(use_enable xml libxml2)
|
||||||
}
|
}
|
||||||
|
|
||||||
src_install() {
|
src_install() {
|
||||||
default
|
default
|
||||||
|
find "${D}" -name '*.la' -delete || die
|
||||||
find "${ED}" -name '*.la' -exec rm -f {} +
|
|
||||||
}
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
Don't persist LDFLAGS into package database.
|
||||||
|
|
||||||
|
https://bugs.gentoo.org/609624
|
||||||
|
diff --git a/network.buildinfo.in b/network.buildinfo.in
|
||||||
|
index 69e63a6..2079179 100644
|
||||||
|
--- a/network.buildinfo.in
|
||||||
|
+++ b/network.buildinfo.in
|
||||||
|
@@ -2,3 +2,2 @@ ghc-options: -DCALLCONV=@CALLCONV@ @EXTRA_CPPFLAGS@
|
||||||
|
ghc-prof-options: -DCALLCONV=@CALLCONV@ @EXTRA_CPPFLAGS@
|
||||||
|
-ld-options: @LDFLAGS@
|
||||||
|
cc-options: -DCALLCONV=@CALLCONV@ @EXTRA_CPPFLAGS@
|
@ -0,0 +1,12 @@
|
|||||||
|
Don't persist LDFLAGS into package database.
|
||||||
|
|
||||||
|
https://bugs.gentoo.org/609624
|
||||||
|
diff --git a/X11.buildinfo.in b/X11.buildinfo.in
|
||||||
|
index 6925939..6a18b58 100644
|
||||||
|
--- a/X11.buildinfo.in
|
||||||
|
+++ b/X11.buildinfo.in
|
||||||
|
@@ -5,3 +5,3 @@ buildable: @BUILD_PACKAGE_BOOL@
|
||||||
|
cc-options: @X_CFLAGS@ @CPPFLAGS@
|
||||||
|
-ld-options: @X_LIBS@ @LDFLAGS@
|
||||||
|
+ld-options: @X_LIBS@
|
||||||
|
extra-libraries: @EXTRA_LIBRARIES@
|
@ -0,0 +1,39 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
JAVA_PKG_IUSE="doc source"
|
||||||
|
|
||||||
|
inherit java-pkg-2 java-pkg-simple
|
||||||
|
|
||||||
|
DESCRIPTION="Java Code Coverage library"
|
||||||
|
HOMEPAGE="http://eclemma.org/jacoco/"
|
||||||
|
|
||||||
|
SRC_URI="
|
||||||
|
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.report/${PV}/org.${PN}.report-${PV}-sources.jar -> ${P}-report.jar
|
||||||
|
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.agent/${PV}/org.${PN}.agent-${PV}-sources.jar -> ${P}-agent.jar
|
||||||
|
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.core/${PV}/org.${PN}.core-${PV}-sources.jar -> ${P}-core.jar
|
||||||
|
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.ant/${PV}/org.${PN}.ant-${PV}-sources.jar -> ${P}-ant.jar"
|
||||||
|
|
||||||
|
LICENSE="EPL-1.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~ppc64 ~x86"
|
||||||
|
|
||||||
|
CDEPEND="
|
||||||
|
dev-java/ant-core:0
|
||||||
|
dev-java/asm:4"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
${CDEPEND}
|
||||||
|
>=virtual/jre-1.6"
|
||||||
|
|
||||||
|
DEPEND="
|
||||||
|
${CDEPEND}
|
||||||
|
>=virtual/jdk-1.6"
|
||||||
|
|
||||||
|
JAVA_GENTOO_CLASSPATH="
|
||||||
|
asm-4
|
||||||
|
ant-core
|
||||||
|
"
|
@ -0,0 +1,92 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit multiprocessing toolchain-funcs
|
||||||
|
|
||||||
|
BV=0.20.4-1
|
||||||
|
BV_AMD64=${BV}-linux-x86_64
|
||||||
|
BV_X86=${BV}-linux-i686
|
||||||
|
|
||||||
|
DESCRIPTION="The Crystal Programming Language"
|
||||||
|
HOMEPAGE="http://crystal-lang.org"
|
||||||
|
SRC_URI="https://github.com/crystal-lang/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz
|
||||||
|
amd64? ( https://github.com/crystal-lang/crystal/releases/download/${PV}/crystal-${BV_AMD64}.tar.gz )
|
||||||
|
x86? ( https://github.com/crystal-lang/crystal/releases/download/${PV}/crystal-${BV_X86}.tar.gz )"
|
||||||
|
|
||||||
|
LICENSE="Apache-2.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64"
|
||||||
|
IUSE="doc debug examples +xml +yaml"
|
||||||
|
|
||||||
|
# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382
|
||||||
|
DEPEND="
|
||||||
|
>=sys-devel/llvm-3.9.0
|
||||||
|
dev-libs/boehm-gc[static-libs,threads]
|
||||||
|
dev-libs/libatomic_ops
|
||||||
|
dev-libs/libevent
|
||||||
|
dev-libs/libpcre
|
||||||
|
sys-libs/libunwind
|
||||||
|
dev-libs/pcl
|
||||||
|
dev-libs/gmp:0
|
||||||
|
"
|
||||||
|
RDEPEND="${DEPEND}
|
||||||
|
xml? ( dev-libs/libxml2 )
|
||||||
|
yaml? ( dev-libs/libyaml )
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}"/${PN}-0.20.5-verbose.patch
|
||||||
|
"${FILESDIR}"/${PN}-0.20.5-LDFLAGS.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
emake \
|
||||||
|
$(usex debug "" release=1) \
|
||||||
|
stats=1 \
|
||||||
|
threads=$(makeopts_jobs) \
|
||||||
|
verbose=1 \
|
||||||
|
\
|
||||||
|
CC=$(tc-getCC) \
|
||||||
|
CXX=$(tc-getCXX) \
|
||||||
|
AR=$(tc-getAR) \
|
||||||
|
\
|
||||||
|
PATH="${WORKDIR}"/${PN}-${BV}/bin:"${PATH}" \
|
||||||
|
CRYSTAL_PATH=src \
|
||||||
|
CRYSTAL_CONFIG_VERSION=${PV} \
|
||||||
|
CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal"
|
||||||
|
use doc && emake doc
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
emake spec \
|
||||||
|
$(usex debug "" release=1) \
|
||||||
|
stats=1 \
|
||||||
|
threads=$(makeopts_jobs) \
|
||||||
|
verbose=1 \
|
||||||
|
\
|
||||||
|
CC=$(tc-getCC) \
|
||||||
|
CXX=$(tc-getCXX) \
|
||||||
|
AR=$(tc-getAR) \
|
||||||
|
\
|
||||||
|
CRYSTAL_PATH=src \
|
||||||
|
CRYSTAL_CONFIG_VERSION=${PV}
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
insinto /usr/$(get_libdir)/crystal
|
||||||
|
doins -r src/.
|
||||||
|
dobin .build/crystal
|
||||||
|
|
||||||
|
insinto /usr/share/zsh/site-functions
|
||||||
|
newins etc/completion.zsh _crystal
|
||||||
|
|
||||||
|
use examples && dodoc -r samples
|
||||||
|
|
||||||
|
if use doc ; then
|
||||||
|
docinto api
|
||||||
|
dodoc -r doc/.
|
||||||
|
fi
|
||||||
|
}
|
@ -1,11 +1,10 @@
|
|||||||
DIST perl-5.20.2-patches-1.tar.xz 14640 SHA256 c084291cdf3e78b8fa2901f79e92f1e93aece7b7b8cb4e931a5df9616b0f6ba5 SHA512 5be0314529e926efcad1e73aebef73a72b86587a31ae68a93b8446edd5cea293027c61d41727b993611d7fb1d694b7740b7ed948dc59cd29ea7ad2646e7be327 WHIRLPOOL ea554c09531778bd655e4208943393cdcdb72d980956c609a6cd0da18ee74c3204d51c8151094bad7e602b6bab5f2bb55f35d632beabfdde9ab35ef374e7494c
|
|
||||||
DIST perl-5.20.2-patches-2.tar.xz 15892 SHA256 5ca37bdd05c770d4d33e59116093d5083bdaffd9212541c7de08d5b8495e9bcd SHA512 6c892a5eb8f9fc1bf4a3c69ed751f22895e4d545e5e70f9c73d54d61121818b4ea220d80a31db4269aca9a7805688d2013c8128e27c013051d4d12d56922f6ed WHIRLPOOL 37c6b9f84a0d9b83220e21d323aea96f00487b37666a48b351fffc7a36c913c43532ab2bcbfd0ab8bca42f95d4bb78d210c20df164861f97e2ddc5e5ffc35a5c
|
|
||||||
DIST perl-5.20.2.tar.bz2 13717128 SHA256 e5a4713bc65e1da98ebd833dce425c000768bfe84d17ec5183ec5ca249db71ab SHA512 1da867f04137e84cc6f4148fd7c15933cdc675939bf20f524b659b3c3a6225a18efe9f4cd8c445b9536f3efc13f1c5b696fcf14584e1f20ad1f908a9b6ca509c WHIRLPOOL 5654f824c57b4c78a6b4cd250e2055ec541def9a04b976444bbc80ced82105b1e9a283b809535a9092fc21eb6613ab4464f59575bc42f961698bbe70aa5a81a7
|
|
||||||
DIST perl-5.22.3-RC4-patches-2.tar.xz 23180 SHA256 d5c6ead7322e5d38f9395589a24fd8eb29882a7c522a7659afa8876f878b1004 SHA512 2dcc8a3bae3a0bf7f79d74ff5651db471be259b8e2dee96c1338ff97345842dbe7ec1234c511233ece4f9ea3fc5979e826a4fcffb997c579740bf494d9581126 WHIRLPOOL 6b2eeb64b208acb71a9c3f9dd4f3e3730b5f37b82c99636215acd52c40179c662a52b25bb2ccbe491efac5fe3e1bf70a65c90fcb89964244e9f8dff60100f22b
|
DIST perl-5.22.3-RC4-patches-2.tar.xz 23180 SHA256 d5c6ead7322e5d38f9395589a24fd8eb29882a7c522a7659afa8876f878b1004 SHA512 2dcc8a3bae3a0bf7f79d74ff5651db471be259b8e2dee96c1338ff97345842dbe7ec1234c511233ece4f9ea3fc5979e826a4fcffb997c579740bf494d9581126 WHIRLPOOL 6b2eeb64b208acb71a9c3f9dd4f3e3730b5f37b82c99636215acd52c40179c662a52b25bb2ccbe491efac5fe3e1bf70a65c90fcb89964244e9f8dff60100f22b
|
||||||
DIST perl-5.22.3-RC4.tar.xz 11233496 SHA256 cd35050f1a45c48389133285870cf310d1fe5d342c52de10fd47b296e102e4ae SHA512 5c63edcfc319f7946bbee84943a0af78f58d376028c2952d0917fee32c390eae09d4456a82bfa4d0f21c69b7977c2e800c539c487e17a2d102fbceadddd75255 WHIRLPOOL b94e97d1545acc82c82cd1df400e374c2c8a9764ae1d050495eeb99c428bf12923ea36f937e17996e6f885d19bab8ca2a51eb4ad52b639d7b781460b8282777f
|
DIST perl-5.22.3-RC4.tar.xz 11233496 SHA256 cd35050f1a45c48389133285870cf310d1fe5d342c52de10fd47b296e102e4ae SHA512 5c63edcfc319f7946bbee84943a0af78f58d376028c2952d0917fee32c390eae09d4456a82bfa4d0f21c69b7977c2e800c539c487e17a2d102fbceadddd75255 WHIRLPOOL b94e97d1545acc82c82cd1df400e374c2c8a9764ae1d050495eeb99c428bf12923ea36f937e17996e6f885d19bab8ca2a51eb4ad52b639d7b781460b8282777f
|
||||||
DIST perl-5.24.1-RC4-patches-2.tar.xz 18464 SHA256 543318d735c2f1951d7c73d4415d1045021f19c69e953cf2d954eea9f84ffecb SHA512 9582a149404c2abc0f8b4329a65063d2022a2b212e68f83550303a5544825fb6b16dd1ee7a8d10bb216b70ded9a899eba931892c66989a78214d8d97c8cdb35f WHIRLPOOL 5c99c07198e7265177a5aa223b92791a744b4bb7990383ee361e1f7042bba146e54688def22e7b51b44f5a6db492f9311d3094937026203a91d2fe7be81edf08
|
DIST perl-5.24.1-RC4-patches-2.tar.xz 18464 SHA256 543318d735c2f1951d7c73d4415d1045021f19c69e953cf2d954eea9f84ffecb SHA512 9582a149404c2abc0f8b4329a65063d2022a2b212e68f83550303a5544825fb6b16dd1ee7a8d10bb216b70ded9a899eba931892c66989a78214d8d97c8cdb35f WHIRLPOOL 5c99c07198e7265177a5aa223b92791a744b4bb7990383ee361e1f7042bba146e54688def22e7b51b44f5a6db492f9311d3094937026203a91d2fe7be81edf08
|
||||||
DIST perl-5.24.1-RC4.tar.xz 11553836 SHA256 6da6333809eb2b35b17ee3c25b7f0327da32fad7214b296b662ccd9883b8bc59 SHA512 f7108210048c8253a693e32df4b2f2da2cda7d7215c8d104a831554e6b59c7a85c395b14cc33c8939c25cdccd1d441784508a7623e511b8737f74b93a6fcbfc2 WHIRLPOOL f19d3dac9810d284c1661c4aa84550a97ee6786fc210329858f1dead72ac53c7e295e2bc3e5c7c34b43e506fce2d682832eb540d61a0ca34824ff4629ffb77e8
|
DIST perl-5.24.1-RC4.tar.xz 11553836 SHA256 6da6333809eb2b35b17ee3c25b7f0327da32fad7214b296b662ccd9883b8bc59 SHA512 f7108210048c8253a693e32df4b2f2da2cda7d7215c8d104a831554e6b59c7a85c395b14cc33c8939c25cdccd1d441784508a7623e511b8737f74b93a6fcbfc2 WHIRLPOOL f19d3dac9810d284c1661c4aa84550a97ee6786fc210329858f1dead72ac53c7e295e2bc3e5c7c34b43e506fce2d682832eb540d61a0ca34824ff4629ffb77e8
|
||||||
DIST perl-5.24.1-patches-2.tar.xz 21124 SHA256 6b00ee799d0d2b88e641eb49800d0f756802540ec11e5d963bf19cd1de8f70a6 SHA512 c4c128d2ee62f57558f23c63fc12ae7f4159632927e7301de9a9dadd5e7c5894b7fe36f68d361d44b2ddad0b1e526714a99204a34b045ef4d7395a8f1c56f3d2 WHIRLPOOL 226d62663e13a09d7cedd095fec7331449a491618323603912f9f12d130857398967f3f8ac087957523deea374a5905f7f4308f6d85d860b202c93c50a5e232f
|
DIST perl-5.24.1-patches-2.tar.xz 21124 SHA256 6b00ee799d0d2b88e641eb49800d0f756802540ec11e5d963bf19cd1de8f70a6 SHA512 c4c128d2ee62f57558f23c63fc12ae7f4159632927e7301de9a9dadd5e7c5894b7fe36f68d361d44b2ddad0b1e526714a99204a34b045ef4d7395a8f1c56f3d2 WHIRLPOOL 226d62663e13a09d7cedd095fec7331449a491618323603912f9f12d130857398967f3f8ac087957523deea374a5905f7f4308f6d85d860b202c93c50a5e232f
|
||||||
|
DIST perl-5.24.1-patches-3.tar.xz 24012 SHA256 b8f8164c1fb34c5db82d9f16c5330cdb2d56e283562dd2d684c2abc26e58bf83 SHA512 1af59b80fca8317fe8df171eba6fcc0830c65f94ad7f73bac611877afdd6e5dfe9ce7c67205a860703fcf6c5b87ba14a0163196e1b833a20562525d06b26b6f3 WHIRLPOOL 9d1f7d3050f544d04e413e1c6c4a8cc6bc593a8250dbf45fb166cf92060ea8bb8e4b09bb73a686cce8101395a04c853842588c1c223c903c5b74cedaf68c5d18
|
||||||
DIST perl-5.24.1.tar.xz 11569284 SHA256 03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f SHA512 9429608eb4d7f6a01b5a7df8601e0757acdf3e6d5af960d5cf710f8e4fd20ffe082bb42eedc2cd079d5173e48cf5574d55477e1c51f7f53b32fb5d1b89f6db8c WHIRLPOOL 26d401f03af54ba61ea8e761f483f3d374737660fa4beaa3bd77951c0f920f88f9e47f327754c32d4c3c49557882a2a531b9eebef420ad6155d62423f7753406
|
DIST perl-5.24.1.tar.xz 11569284 SHA256 03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f SHA512 9429608eb4d7f6a01b5a7df8601e0757acdf3e6d5af960d5cf710f8e4fd20ffe082bb42eedc2cd079d5173e48cf5574d55477e1c51f7f53b32fb5d1b89f6db8c WHIRLPOOL 26d401f03af54ba61ea8e761f483f3d374737660fa4beaa3bd77951c0f920f88f9e47f327754c32d4c3c49557882a2a531b9eebef420ad6155d62423f7753406
|
||||||
DIST perl-cross-1.1.1.tar.gz 88283 SHA256 8ee72f39119b342f3b911266e5c965914a44a484fd18d9c444d106aca4dd7abc SHA512 8ad958d08d8e7ff2b80333959544aaf0e83a74f2e34c9e8aca543052d039c0f4b00cda694ee940874b192b0d83656a9f6854ebbf2c444b212ba9d4417c576591 WHIRLPOOL e6739ca8fc4dcafa14a20585d75931cf6b6a98fad9c732312d15507b29b926452668afc4f27f2b6c5bb6faa623fc506538a53ed9d303d21897f42d47c26e4924
|
DIST perl-cross-1.1.1.tar.gz 88283 SHA256 8ee72f39119b342f3b911266e5c965914a44a484fd18d9c444d106aca4dd7abc SHA512 8ad958d08d8e7ff2b80333959544aaf0e83a74f2e34c9e8aca543052d039c0f4b00cda694ee940874b192b0d83656a9f6854ebbf2c444b212ba9d4417c576591 WHIRLPOOL e6739ca8fc4dcafa14a20585d75931cf6b6a98fad9c732312d15507b29b926452668afc4f27f2b6c5bb6faa623fc506538a53ed9d303d21897f42d47c26e4924
|
||||||
DIST perl-cross-1.1.3.tar.gz 93856 SHA256 181b24ff71815fb2c8065e6ea139d106796eee0964aebfd8081f0b7f69e0696d SHA512 d1ea6ab8a431f831ec9c4c6b71a238a66f021f5610505ebb48c3b0d0b8c9afb0fcb8050779abe1a126afdd92e65f8c86e134832b45a0a6c26ca4b46735e3021d WHIRLPOOL f7313b859031d13516193a88a70fff845987eea93eab3d0d3bac6f3b47c781324acddeed72d6cef8c7d8ee06c8ca5f59a10560b20a53575ffdfd2ce36272a723
|
DIST perl-cross-1.1.3.tar.gz 93856 SHA256 181b24ff71815fb2c8065e6ea139d106796eee0964aebfd8081f0b7f69e0696d SHA512 d1ea6ab8a431f831ec9c4c6b71a238a66f021f5610505ebb48c3b0d0b8c9afb0fcb8050779abe1a126afdd92e65f8c86e134832b45a0a6c26ca4b46735e3021d WHIRLPOOL f7313b859031d13516193a88a70fff845987eea93eab3d0d3bac6f3b47c781324acddeed72d6cef8c7d8ee06c8ca5f59a10560b20a53575ffdfd2ce36272a723
|
||||||
|
DIST perl-cross-1.1.4.tar.gz 94623 SHA256 c840a327d5464ca271cac40d52e2d199330875527bf1003c28a6e550fb7bcc57 SHA512 3bfc108245f0c05b7d45c317eb28c2eb70aba528dfe8a39bc99d6e49b4751f5dca4f4ac661484bfc7528c3e28fcdbd8994c36daa49c25516618fec1f58116d79 WHIRLPOOL c4a150cf15d067cd58db63dae01bbe810808888477f9a2bfcd8557b2eeee097bbf93509bb9128feef84e8a2913724a82de0accc3b9c5d65207ee9dcd2989fe51
|
||||||
|
@ -1,71 +0,0 @@
|
|||||||
# Copyright 1999-2012 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
src_remove_dual_file() {
|
|
||||||
local i pkg ver
|
|
||||||
pkg="$1"
|
|
||||||
ver="$2"
|
|
||||||
shift 2
|
|
||||||
case "${EBUILD_PHASE:-none}" in
|
|
||||||
postinst|postrm)
|
|
||||||
for i in "$@" ; do
|
|
||||||
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
setup)
|
|
||||||
for i in "$@" ; do
|
|
||||||
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
|
|
||||||
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
install)
|
|
||||||
for i in "$@" ; do
|
|
||||||
if ! [[ -f "${ED}"${i} ]] ; then
|
|
||||||
ewarn "${i} does not exist!"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
mv "${ED}"${i}{,-${ver}-${P}} || die
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
src_remove_dual_man() {
|
|
||||||
local i pkg ver ff
|
|
||||||
pkg="$1"
|
|
||||||
ver="$2"
|
|
||||||
shift 2
|
|
||||||
case "${EBUILD_PHASE:-none}" in
|
|
||||||
postinst|postrm)
|
|
||||||
for i in "$@" ; do
|
|
||||||
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
|
|
||||||
ff=${ff##*${i#${i%.[0-9]}}}
|
|
||||||
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
install)
|
|
||||||
for i in "$@" ; do
|
|
||||||
if ! [[ -f "${ED}"${i} ]] ; then
|
|
||||||
ewarn "${i} does not exist!"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
src_remove_dual() {
|
|
||||||
local i pkg ver
|
|
||||||
pkg="$1"
|
|
||||||
ver="$2"
|
|
||||||
shift 2
|
|
||||||
for i in "$@" ; do
|
|
||||||
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
|
|
||||||
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
@ -1,67 +0,0 @@
|
|||||||
# Copyright 1999-2012 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-pkg_postinst() {
|
|
||||||
dual_scripts
|
|
||||||
|
|
||||||
if [[ "${ROOT}" = "/" ]] ; then
|
|
||||||
local INC DIR file
|
|
||||||
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
|
|
||||||
einfo "Removing old .ph files"
|
|
||||||
for DIR in ${INC} ; do
|
|
||||||
if [[ -d "${DIR}" ]] ; then
|
|
||||||
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
|
|
||||||
rm -f "${file}"
|
|
||||||
einfo "<< ${file}"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
# Silently remove the now empty dirs
|
|
||||||
for DIR in ${INC} ; do
|
|
||||||
if [[ -d "${DIR}" ]] ; then
|
|
||||||
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# ebegin "Generating ConfigLocal.pm (ignore any error)"
|
|
||||||
# enc2xs -C
|
|
||||||
|
|
||||||
einfo "Converting C header files to the corresponding Perl format (ignore any error)"
|
|
||||||
# Prefix note: unprefixed as this is all kernel/libc stuff that we never provide
|
|
||||||
pushd /usr/include >/dev/null
|
|
||||||
h2ph -Q -a -d "${EPREFIX}"${ARCH_LIB} \
|
|
||||||
asm/termios.h syscall.h syslimits.h syslog.h sys/ioctl.h \
|
|
||||||
sys/socket.h sys/time.h wait.h sysexits.h
|
|
||||||
popd >/dev/null
|
|
||||||
|
|
||||||
# This has been moved into a function because rumor has it that a future release
|
|
||||||
# of portage will allow us to check what version was just removed - which means
|
|
||||||
# we will be able to invoke this only as needed :)
|
|
||||||
# Tried doing this via -z, but $INC is too big...
|
|
||||||
#if [[ "${INC}x" != "x" ]]; then
|
|
||||||
# cleaner_msg
|
|
||||||
#fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
cleaner_msg() {
|
|
||||||
eerror "You have had multiple versions of perl. It is recommended"
|
|
||||||
eerror "that you run perl-cleaner now. perl-cleaner will"
|
|
||||||
eerror "assist with this transition. This script is capable"
|
|
||||||
eerror "of cleaning out old .ph files, rebuilding modules for "
|
|
||||||
eerror "your new version of perl, as well as re-emerging"
|
|
||||||
eerror "applications that compiled against your old libperl$(get_libname)"
|
|
||||||
eerror
|
|
||||||
eerror "PLEASE DO NOT INTERRUPT THE RUNNING OF THIS SCRIPT."
|
|
||||||
eerror "Part of the rebuilding of applications compiled against "
|
|
||||||
eerror "your old libperl involves temporarily unmerging"
|
|
||||||
eerror "them - interruptions could leave you with unmerged"
|
|
||||||
eerror "packages before they can be remerged."
|
|
||||||
eerror ""
|
|
||||||
eerror "If you have run perl-cleaner and a package still gives"
|
|
||||||
eerror "you trouble, and re-emerging it fails to correct"
|
|
||||||
eerror "the problem, please check http://bugs.gentoo.org/"
|
|
||||||
eerror "for more information or to report a bug."
|
|
||||||
eerror ""
|
|
||||||
}
|
|
@ -1,67 +0,0 @@
|
|||||||
# Copyright 1999-2015 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-pkg_postinst() {
|
|
||||||
dual_scripts
|
|
||||||
|
|
||||||
if [[ "${ROOT}" = "/" ]] ; then
|
|
||||||
local INC DIR file
|
|
||||||
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
|
|
||||||
einfo "Removing old .ph files"
|
|
||||||
for DIR in ${INC} ; do
|
|
||||||
if [[ -d "${DIR}" ]] ; then
|
|
||||||
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
|
|
||||||
rm -f "${file}"
|
|
||||||
einfo "<< ${file}"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
# Silently remove the now empty dirs
|
|
||||||
for DIR in ${INC} ; do
|
|
||||||
if [[ -d "${DIR}" ]] ; then
|
|
||||||
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# ebegin "Generating ConfigLocal.pm (ignore any error)"
|
|
||||||
# enc2xs -C
|
|
||||||
|
|
||||||
einfo "Converting C header files to the corresponding Perl format (ignore any error)"
|
|
||||||
# Prefix note: unprefixed as this is all kernel/libc stuff that we never provide
|
|
||||||
pushd /usr/include >/dev/null
|
|
||||||
h2ph -Q -a -d "${EPREFIX}"${ARCH_LIB} \
|
|
||||||
asm/termios.h syscall.h syslimits.h syslog.h sys/ioctl.h \
|
|
||||||
sys/socket.h sys/time.h wait.h sysexits.h
|
|
||||||
popd >/dev/null
|
|
||||||
|
|
||||||
# This has been moved into a function because rumor has it that a future release
|
|
||||||
# of portage will allow us to check what version was just removed - which means
|
|
||||||
# we will be able to invoke this only as needed :)
|
|
||||||
# Tried doing this via -z, but $INC is too big...
|
|
||||||
#if [[ "${INC}x" != "x" ]]; then
|
|
||||||
# cleaner_msg
|
|
||||||
#fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
cleaner_msg() {
|
|
||||||
eerror "You have had multiple versions of perl. It is recommended"
|
|
||||||
eerror "that you run perl-cleaner now. perl-cleaner will"
|
|
||||||
eerror "assist with this transition. This script is capable"
|
|
||||||
eerror "of cleaning out old .ph files, rebuilding modules for "
|
|
||||||
eerror "your new version of perl, as well as re-emerging"
|
|
||||||
eerror "applications that compiled against your old libperl$(get_libname)"
|
|
||||||
eerror
|
|
||||||
eerror "PLEASE DO NOT INTERRUPT THE RUNNING OF THIS SCRIPT."
|
|
||||||
eerror "Part of the rebuilding of applications compiled against "
|
|
||||||
eerror "your old libperl involves temporarily unmerging"
|
|
||||||
eerror "them - interruptions could leave you with unmerged"
|
|
||||||
eerror "packages before they can be remerged."
|
|
||||||
eerror ""
|
|
||||||
eerror "If you have run perl-cleaner and a package still gives"
|
|
||||||
eerror "you trouble, and re-emerging it fails to correct"
|
|
||||||
eerror "the problem, please check http://bugs.gentoo.org/"
|
|
||||||
eerror "for more information or to report a bug."
|
|
||||||
eerror ""
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
# Copyright 1999-2012 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-pkg_postrm(){
|
|
||||||
dual_scripts
|
|
||||||
|
|
||||||
# if [[ -e ${ARCH_LIB}/Encode/ConfigLocal.pm ]] ; then
|
|
||||||
# ebegin "Removing ConfigLocal.pm"
|
|
||||||
# rm "${ARCH_LIB}/Encode/ConfigLocal.pm"
|
|
||||||
# fi
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
# Copyright 1999-2015 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-pkg_postrm(){
|
|
||||||
dual_scripts
|
|
||||||
|
|
||||||
# if [[ -e ${ARCH_LIB}/Encode/ConfigLocal.pm ]] ; then
|
|
||||||
# ebegin "Removing ConfigLocal.pm"
|
|
||||||
# rm "${ARCH_LIB}/Encode/ConfigLocal.pm"
|
|
||||||
# fi
|
|
||||||
}
|
|
@ -1,80 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-pkg_setup() {
|
|
||||||
case ${CHOST} in
|
|
||||||
*-freebsd*) osname="freebsd" ;;
|
|
||||||
*-dragonfly*) osname="dragonfly" ;;
|
|
||||||
*-netbsd*) osname="netbsd" ;;
|
|
||||||
*-openbsd*) osname="openbsd" ;;
|
|
||||||
*-darwin*) osname="darwin" ;;
|
|
||||||
*-interix*) osname="interix" ;;
|
|
||||||
*-aix*) osname="aix" ;;
|
|
||||||
*) osname="linux" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
myarch="${CHOST%%-*}-${osname}"
|
|
||||||
if use debug ; then
|
|
||||||
myarch+="-debug"
|
|
||||||
fi
|
|
||||||
if use ithreads ; then
|
|
||||||
mythreading="-multi"
|
|
||||||
myarch+="-thread"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LIBPERL="libperl$(get_libname ${MY_PV} )"
|
|
||||||
PRIV_LIB="/usr/$(get_libdir)/perl5/${MY_PV}"
|
|
||||||
ARCH_LIB="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
|
||||||
SITE_LIB="/usr/local/$(get_libdir)/perl5/${MY_PV}"
|
|
||||||
SITE_ARCH="/usr/local/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
|
||||||
VENDOR_LIB="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}"
|
|
||||||
VENDOR_ARCH="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}/${myarch}${mythreading}"
|
|
||||||
|
|
||||||
if use ithreads ; then
|
|
||||||
echo ""
|
|
||||||
ewarn "THREADS WARNING:"
|
|
||||||
ewarn "PLEASE NOTE: You are compiling ${MY_P} with"
|
|
||||||
ewarn "interpreter-level threading enabled."
|
|
||||||
ewarn "Threading is not supported by all applications "
|
|
||||||
ewarn "that compile against perl. You use threading at "
|
|
||||||
ewarn "your own discretion. "
|
|
||||||
fi
|
|
||||||
check_rebuild
|
|
||||||
dual_scripts
|
|
||||||
}
|
|
||||||
|
|
||||||
check_rebuild() {
|
|
||||||
if has_version "<dev-lang/perl-${SHORT_PV}" ; then
|
|
||||||
echo ""
|
|
||||||
ewarn "UPDATE THE PERL MODULES:"
|
|
||||||
ewarn "After updating dev-lang/perl the installed Perl modules"
|
|
||||||
ewarn "have to be re-installed. In most cases, this is done automatically"
|
|
||||||
ewarn "by the package manager, but subsequent steps are still recommended"
|
|
||||||
ewarn "to ensure system consistency."
|
|
||||||
ewarn
|
|
||||||
ewarn "You should start with a depclean to remove any unused perl dependencies"
|
|
||||||
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
|
|
||||||
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
|
|
||||||
ewarn "Recommended: emerge --depclean -va"
|
|
||||||
ewarn
|
|
||||||
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
|
|
||||||
ewarn "remaining rebuilds portage may have missed."
|
|
||||||
ewarn "Use: perl-cleaner --all"
|
|
||||||
elif has_version dev-lang/perl ; then
|
|
||||||
# doesnot work
|
|
||||||
#if ! has_version dev-lang/perl[ithreads=,debug=] ; then
|
|
||||||
#if ! has_version dev-lang/perl[ithreads=] || ! has_version dev-lang/perl[debug=] ; then
|
|
||||||
if ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
|
|
||||||
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
|
|
||||||
( use debug && ! has_version dev-lang/perl[debug] ) || \
|
|
||||||
( ! use debug && has_version dev-lang/perl[debug] ) ; then
|
|
||||||
echo ""
|
|
||||||
ewarn "TOGGLED USE-FLAGS WARNING:"
|
|
||||||
ewarn "You changed one of the use-flags ithreads or debug."
|
|
||||||
ewarn "You must rebuild all perl-modules installed."
|
|
||||||
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
@ -1,80 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-pkg_setup() {
|
|
||||||
case ${CHOST} in
|
|
||||||
*-freebsd*) osname="freebsd" ;;
|
|
||||||
*-dragonfly*) osname="dragonfly" ;;
|
|
||||||
*-netbsd*) osname="netbsd" ;;
|
|
||||||
*-openbsd*) osname="openbsd" ;;
|
|
||||||
*-darwin*) osname="darwin" ;;
|
|
||||||
*-interix*) osname="interix" ;;
|
|
||||||
*-aix*) osname="aix" ;;
|
|
||||||
*) osname="linux" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
myarch="${CHOST%%-*}-${osname}"
|
|
||||||
if use debug ; then
|
|
||||||
myarch+="-debug"
|
|
||||||
fi
|
|
||||||
if use ithreads ; then
|
|
||||||
mythreading="-multi"
|
|
||||||
myarch+="-thread"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LIBPERL="libperl$(get_libname ${MY_PV} )"
|
|
||||||
PRIV_LIB="/usr/$(get_libdir)/perl5/${MY_PV}"
|
|
||||||
ARCH_LIB="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
|
||||||
SITE_LIB="/usr/local/$(get_libdir)/perl5/${MY_PV}"
|
|
||||||
SITE_ARCH="/usr/local/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
|
||||||
VENDOR_LIB="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}"
|
|
||||||
VENDOR_ARCH="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}/${myarch}${mythreading}"
|
|
||||||
|
|
||||||
if use ithreads ; then
|
|
||||||
echo ""
|
|
||||||
ewarn "THREADS WARNING:"
|
|
||||||
ewarn "PLEASE NOTE: You are compiling ${MY_P} with"
|
|
||||||
ewarn "interpreter-level threading enabled."
|
|
||||||
ewarn "Threading is not supported by all applications "
|
|
||||||
ewarn "that compile against perl. You use threading at "
|
|
||||||
ewarn "your own discretion. "
|
|
||||||
fi
|
|
||||||
check_rebuild
|
|
||||||
dual_scripts
|
|
||||||
}
|
|
||||||
|
|
||||||
check_rebuild() {
|
|
||||||
if has_version "<dev-lang/perl-${SHORT_PV}" ; then
|
|
||||||
echo ""
|
|
||||||
ewarn "UPDATE THE PERL MODULES:"
|
|
||||||
ewarn "After updating dev-lang/perl the installed Perl modules"
|
|
||||||
ewarn "have to be re-installed. In most cases, this is done automatically"
|
|
||||||
ewarn "by the package manager, but subsequent steps are still recommended"
|
|
||||||
ewarn "to ensure system consistency."
|
|
||||||
ewarn
|
|
||||||
ewarn "You should start with a depclean to remove any unused perl dependencies"
|
|
||||||
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
|
|
||||||
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
|
|
||||||
ewarn "Recommended: emerge --depclean -va"
|
|
||||||
ewarn
|
|
||||||
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
|
|
||||||
ewarn "remaining rebuilds portage may have missed."
|
|
||||||
ewarn "Use: perl-cleaner --all"
|
|
||||||
elif has_version dev-lang/perl ; then
|
|
||||||
# doesnot work
|
|
||||||
#if ! has_version dev-lang/perl[ithreads=,debug=] ; then
|
|
||||||
#if ! has_version dev-lang/perl[ithreads=] || ! has_version dev-lang/perl[debug=] ; then
|
|
||||||
if ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
|
|
||||||
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
|
|
||||||
( use debug && ! has_version dev-lang/perl[debug] ) || \
|
|
||||||
( ! use debug && has_version dev-lang/perl[debug] ) ; then
|
|
||||||
echo ""
|
|
||||||
ewarn "TOGGLED USE-FLAGS WARNING:"
|
|
||||||
ewarn "You changed one of the use-flags ithreads or debug."
|
|
||||||
ewarn "You must rebuild all perl-modules installed."
|
|
||||||
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
@ -1,188 +0,0 @@
|
|||||||
# Copyright 1999-2014 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
myconf() {
|
|
||||||
# the myconf array is declared in src_configure
|
|
||||||
myconf=( "${myconf[@]}" "$@" )
|
|
||||||
}
|
|
||||||
|
|
||||||
eblit-perl-src_configure() {
|
|
||||||
declare -a myconf
|
|
||||||
|
|
||||||
export LC_ALL="C"
|
|
||||||
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
|
|
||||||
|
|
||||||
# some arches and -O do not mix :)
|
|
||||||
use ppc && replace-flags -O? -O1
|
|
||||||
# Perl has problems compiling with -Os in your flags with glibc
|
|
||||||
use elibc_uclibc || replace-flags "-Os" "-O2"
|
|
||||||
# This flag makes compiling crash in interesting ways
|
|
||||||
filter-flags "-malign-double"
|
|
||||||
# Fixes bug #97645
|
|
||||||
use ppc && filter-flags "-mpowerpc-gpopt"
|
|
||||||
# Fixes bug #143895 on gcc-4.1.1
|
|
||||||
filter-flags "-fsched2-use-superblocks"
|
|
||||||
|
|
||||||
use sparc && myconf -Ud_longdbl
|
|
||||||
|
|
||||||
export BUILD_BZIP2=0
|
|
||||||
export BZIP2_INCLUDE=${EPREFIX}/usr/include
|
|
||||||
export BZIP2_LIB=${EPREFIX}/usr/$(get_libdir)
|
|
||||||
|
|
||||||
export BUILD_ZLIB=False
|
|
||||||
export ZLIB_INCLUDE=${EPREFIX}/usr/include
|
|
||||||
export ZLIB_LIB=${EPREFIX}/usr/$(get_libdir)
|
|
||||||
|
|
||||||
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
|
|
||||||
|
|
||||||
myndbm='U'
|
|
||||||
mygdbm='U'
|
|
||||||
mydb='U'
|
|
||||||
|
|
||||||
if use gdbm ; then
|
|
||||||
mygdbm='D'
|
|
||||||
myndbm='D'
|
|
||||||
fi
|
|
||||||
if use berkdb ; then
|
|
||||||
mydb='D'
|
|
||||||
has_version '=sys-libs/db-1*' && myndbm='D'
|
|
||||||
fi
|
|
||||||
|
|
||||||
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
|
|
||||||
|
|
||||||
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
|
|
||||||
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
|
|
||||||
myconf -Ui_db -Ui_ndbm
|
|
||||||
fi
|
|
||||||
|
|
||||||
use ithreads && myconf -Dusethreads
|
|
||||||
|
|
||||||
if use debug ; then
|
|
||||||
append-cflags "-g"
|
|
||||||
myconf -DDEBUGGING
|
|
||||||
elif [[ ${CFLAGS} == *-g* ]] ; then
|
|
||||||
myconf -DDEBUGGING=-g
|
|
||||||
else
|
|
||||||
myconf -DDEBUGGING=none
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n ${PERL_OLDVERSEN} ]] ; then
|
|
||||||
local inclist=$(for v in ${PERL_OLDVERSEN}; do echo -n "${v}/${myarch}${mythreading} ${v} "; done )
|
|
||||||
myconf -Dinc_version_list="${inclist}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
|
|
||||||
|
|
||||||
# Make sure we can do the final link #523730, need to set deployment
|
|
||||||
# target to override hardcoded 10.3 which breaks on modern OSX
|
|
||||||
[[ ${CHOST} == *-darwin* ]] && \
|
|
||||||
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
|
|
||||||
|
|
||||||
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
|
|
||||||
# Prefix itself we don't do multilib either, so make sure perl can find
|
|
||||||
# something compatible.
|
|
||||||
if use prefix ; then
|
|
||||||
# Set a hook to check for each detected library whether it actually works.
|
|
||||||
export libscheck="
|
|
||||||
( echo 'main(){}' > '${T}'/conftest.c &&
|
|
||||||
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
|
|
||||||
) || xxx=/dev/null"
|
|
||||||
|
|
||||||
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
|
|
||||||
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
|
|
||||||
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
|
|
||||||
elif [[ $(get_libdir) != "lib" ]] ; then
|
|
||||||
# We need to use " and not ', as the written config.sh use ' ...
|
|
||||||
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# don't try building ODBM, bug #354453
|
|
||||||
disabled_extensions="ODBM_File"
|
|
||||||
|
|
||||||
if ! use gdbm ; then
|
|
||||||
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
|
|
||||||
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
|
|
||||||
fi
|
|
||||||
|
|
||||||
myconf -Dnoextensions="${disabled_extensions}"
|
|
||||||
|
|
||||||
echo Configuring Perl as follows:
|
|
||||||
echo sh Configure \
|
|
||||||
-des \
|
|
||||||
-Duseshrplib \
|
|
||||||
-Darchname="${myarch}" \
|
|
||||||
-Dcc="$(tc-getCC)" \
|
|
||||||
-Doptimize="${CFLAGS}" \
|
|
||||||
-Dldflags="${LDFLAGS}" \
|
|
||||||
-Dprefix="${EPREFIX}"'/usr' \
|
|
||||||
-Dinstallprefix="${EPREFIX}"'/usr' \
|
|
||||||
-Dsiteprefix="${EPREFIX}"'/usr/local' \
|
|
||||||
-Dvendorprefix="${EPREFIX}"'/usr' \
|
|
||||||
-Dscriptdir="${EPREFIX}"'/usr/bin' \
|
|
||||||
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
|
|
||||||
-Darchlib="${EPREFIX}${ARCH_LIB}" \
|
|
||||||
-Dsitelib="${EPREFIX}${SITE_LIB}" \
|
|
||||||
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
|
|
||||||
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
|
|
||||||
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
|
|
||||||
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
|
|
||||||
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
|
|
||||||
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
|
|
||||||
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
|
|
||||||
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
|
|
||||||
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
|
|
||||||
-Dman1ext='1' \
|
|
||||||
-Dman3ext='3pm' \
|
|
||||||
-Dlibperl="${LIBPERL}" \
|
|
||||||
-Dlocincpth="${EPREFIX}"'/usr/include ' \
|
|
||||||
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
|
|
||||||
-Duselargefiles \
|
|
||||||
-Dd_semctl_semun \
|
|
||||||
-Dcf_by='Gentoo' \
|
|
||||||
-Dmyhostname='localhost' \
|
|
||||||
-Dperladmin='root@localhost' \
|
|
||||||
-Dinstallusrbinperl='n' \
|
|
||||||
-Ud_csh \
|
|
||||||
-Uusenm \
|
|
||||||
"${myconf[@]}"
|
|
||||||
|
|
||||||
sh Configure \
|
|
||||||
-des \
|
|
||||||
-Duseshrplib \
|
|
||||||
-Darchname="${myarch}" \
|
|
||||||
-Dcc="$(tc-getCC)" \
|
|
||||||
-Doptimize="${CFLAGS}" \
|
|
||||||
-Dldflags="${LDFLAGS}" \
|
|
||||||
-Dprefix="${EPREFIX}"'/usr' \
|
|
||||||
-Dinstallprefix="${EPREFIX}"'/usr' \
|
|
||||||
-Dsiteprefix="${EPREFIX}"'/usr/local' \
|
|
||||||
-Dvendorprefix="${EPREFIX}"'/usr' \
|
|
||||||
-Dscriptdir="${EPREFIX}"'/usr/bin' \
|
|
||||||
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
|
|
||||||
-Darchlib="${EPREFIX}${ARCH_LIB}" \
|
|
||||||
-Dsitelib="${EPREFIX}${SITE_LIB}" \
|
|
||||||
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
|
|
||||||
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
|
|
||||||
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
|
|
||||||
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
|
|
||||||
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
|
|
||||||
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
|
|
||||||
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
|
|
||||||
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
|
|
||||||
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
|
|
||||||
-Dman1ext='1' \
|
|
||||||
-Dman3ext='3pm' \
|
|
||||||
-Dlibperl="${LIBPERL}" \
|
|
||||||
-Dlocincpth="${EPREFIX}"'/usr/include ' \
|
|
||||||
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
|
|
||||||
-Duselargefiles \
|
|
||||||
-Dd_semctl_semun \
|
|
||||||
-Dcf_by='Gentoo' \
|
|
||||||
-Dmyhostname='localhost' \
|
|
||||||
-Dperladmin='root@localhost' \
|
|
||||||
-Dinstallusrbinperl='n' \
|
|
||||||
-Ud_csh \
|
|
||||||
-Uusenm \
|
|
||||||
"${myconf[@]}" || die "Unable to configure"
|
|
||||||
}
|
|
@ -1,61 +0,0 @@
|
|||||||
# Copyright 1999-2013 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-src_install() {
|
|
||||||
local i
|
|
||||||
local coredir="${ARCH_LIB}/CORE"
|
|
||||||
|
|
||||||
emake DESTDIR="${D}" install
|
|
||||||
|
|
||||||
rm -f "${ED}"/usr/bin/perl
|
|
||||||
ln -s perl${MY_PV} "${ED}"/usr/bin/perl || die
|
|
||||||
|
|
||||||
if ! tc-is-static-only ; then
|
|
||||||
dolib.so "${ED}"${coredir}/${LIBPERL}
|
|
||||||
rm -f "${ED}"${coredir}/${LIBPERL}
|
|
||||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
|
|
||||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
|
|
||||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
|
|
||||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
|
|
||||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
|
|
||||||
|
|
||||||
# # A poor fix for the miniperl issues
|
|
||||||
# dosed 's:./miniperl:/usr/bin/perl:' /usr/$(get_libdir)/perl5/${MY_PV}/ExtUtils/xsubpp
|
|
||||||
# fperms 0444 /usr/$(get_libdir)/perl5/${MY_PV}/ExtUtils/xsubpp
|
|
||||||
# dosed 's:./miniperl:/usr/bin/perl:' /usr/bin/xsubpp
|
|
||||||
# fperms 0755 /usr/bin/xsubpp
|
|
||||||
|
|
||||||
# This removes ${D} from Config.pm
|
|
||||||
for i in $(find "${D}" -iname "Config.pm" ) ; do
|
|
||||||
einfo "Removing ${D} from ${i}..."
|
|
||||||
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
|
|
||||||
done
|
|
||||||
|
|
||||||
find "${ED}" -type f -name .packlist -delete || die
|
|
||||||
|
|
||||||
# Note: find out from psm why we would need/want this.
|
|
||||||
# ( use berkdb && has_version '=sys-libs/db-1*' ) ||
|
|
||||||
# find "${ED}" -name "*NDBM*" | xargs rm -f
|
|
||||||
|
|
||||||
dodoc Changes* README AUTHORS
|
|
||||||
|
|
||||||
if use doc ; then
|
|
||||||
# HTML Documentation
|
|
||||||
# We expect errors, warnings, and such with the following.
|
|
||||||
|
|
||||||
dodir /usr/share/doc/${PF}/html
|
|
||||||
LD_LIBRARY_PATH=. ./perl installhtml \
|
|
||||||
--podroot='.' \
|
|
||||||
--podpath='lib:ext:pod:vms' \
|
|
||||||
--recurse \
|
|
||||||
--htmldir="${ED}/usr/share/doc/${PF}/html"
|
|
||||||
fi
|
|
||||||
|
|
||||||
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
|
|
||||||
|
|
||||||
dual_scripts
|
|
||||||
}
|
|
@ -1,51 +0,0 @@
|
|||||||
# Copyright 1999-2014 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-src_install() {
|
|
||||||
local i
|
|
||||||
local coredir="${ARCH_LIB}/CORE"
|
|
||||||
|
|
||||||
emake DESTDIR="${D}" install
|
|
||||||
|
|
||||||
rm -f "${ED}/usr/bin/perl${MY_PV}"
|
|
||||||
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
|
|
||||||
|
|
||||||
if ! tc-is-static-only ; then
|
|
||||||
dolib.so "${ED}"${coredir}/${LIBPERL}
|
|
||||||
rm -f "${ED}"${coredir}/${LIBPERL}
|
|
||||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
|
|
||||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
|
|
||||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
|
|
||||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
|
|
||||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
|
|
||||||
|
|
||||||
# This removes ${D} from Config.pm
|
|
||||||
for i in $(find "${D}" -iname "Config.pm" ) ; do
|
|
||||||
einfo "Removing ${D} from ${i}..."
|
|
||||||
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
|
|
||||||
done
|
|
||||||
|
|
||||||
find "${ED}" -type f -name .packlist -delete || die
|
|
||||||
|
|
||||||
dodoc Changes* README AUTHORS
|
|
||||||
|
|
||||||
if use doc ; then
|
|
||||||
# HTML Documentation
|
|
||||||
# We expect errors, warnings, and such with the following.
|
|
||||||
|
|
||||||
dodir /usr/share/doc/${PF}/html
|
|
||||||
LD_LIBRARY_PATH=. ./perl installhtml \
|
|
||||||
--podroot='.' \
|
|
||||||
--podpath='lib:ext:pod:vms' \
|
|
||||||
--recurse \
|
|
||||||
--htmldir="${ED}/usr/share/doc/${PF}/html"
|
|
||||||
fi
|
|
||||||
|
|
||||||
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
|
|
||||||
|
|
||||||
dual_scripts
|
|
||||||
}
|
|
@ -1,70 +0,0 @@
|
|||||||
# Copyright 1999-2012 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
src_prepare_update_patchlevel_h() {
|
|
||||||
# Copied and modified from debian:
|
|
||||||
# Copyright 2011 Niko Tyni
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the same terms as Perl itself.
|
|
||||||
local patchdir="${WORKDIR}/patches"
|
|
||||||
local prefix
|
|
||||||
|
|
||||||
[[ -f ${patchdir}/series ]] || return 0
|
|
||||||
|
|
||||||
while read patch
|
|
||||||
do
|
|
||||||
patchname=$(echo $patch | sed 's/\.diff$//')
|
|
||||||
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
|
|
||||||
|
|
||||||
# massage the patch headers
|
|
||||||
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
|
|
||||||
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
|
|
||||||
s|^Bug-Gentoo: ||; tprepend;
|
|
||||||
s/^\(Subject\|Description\): //; tappend;
|
|
||||||
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
|
|
||||||
|
|
||||||
# post-process at the end of input
|
|
||||||
$ { x;
|
|
||||||
# include the version number in the patchlevel.h description (if available)
|
|
||||||
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
|
|
||||||
|
|
||||||
# escape any backslashes and double quotes
|
|
||||||
s|\\|\\\\|g; s|"|\\"|g;
|
|
||||||
|
|
||||||
# add a prefix
|
|
||||||
s|^|\t,"'"$prefix$patchname"' - |;
|
|
||||||
# newlines away
|
|
||||||
s/\n/ /g; s/ */ /g;
|
|
||||||
# add a suffix
|
|
||||||
s/ *$/"/; p
|
|
||||||
};
|
|
||||||
# stop all processing
|
|
||||||
d;
|
|
||||||
# label: append to the hold space
|
|
||||||
:append H; d;
|
|
||||||
# label: prepend to the hold space
|
|
||||||
:prepend x; H; d;
|
|
||||||
'
|
|
||||||
done < "${WORKDIR}"/patches/series > "${S}"/patchlevel-gentoo.h
|
|
||||||
}
|
|
||||||
|
|
||||||
eblit-perl-src_prepare() {
|
|
||||||
local patch
|
|
||||||
EPATCH_OPTS+=" -p1"
|
|
||||||
einfo "Applying patches from ${MY_P}-${PATCH_VER} ..."
|
|
||||||
while read patch ; do
|
|
||||||
EPATCH_SINGLE_MSG=" ${patch} ..."
|
|
||||||
epatch "${WORKDIR}"/patches/${patch}
|
|
||||||
done < "${WORKDIR}"/patches/series
|
|
||||||
|
|
||||||
src_prepare_update_patchlevel_h
|
|
||||||
|
|
||||||
# pod/perltoc.pod fails
|
|
||||||
# lib/ExtUtils/t/Embed.t fails
|
|
||||||
if ! tc-is-static-only ; then
|
|
||||||
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
|
|
||||||
ln -s ${LIBPERL} libperl$(get_libname ) || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
|||||||
# Copyright 1999-2012 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
eblit-perl-src_test() {
|
|
||||||
if [[ ${EUID} == 0 ]] ; then
|
|
||||||
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
use elibc_uclibc && export MAKEOPTS+=" -j1"
|
|
||||||
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
|
|
||||||
}
|
|
@ -1,124 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
|
|
||||||
|
|
||||||
PATCH_VER=2
|
|
||||||
|
|
||||||
PERL_OLDVERSEN="5.20.0 5.20.1"
|
|
||||||
MODULE_AUTHOR=SHAY
|
|
||||||
|
|
||||||
SHORT_PV="${PV%.*}"
|
|
||||||
MY_P="perl-${PV/_rc/-RC}"
|
|
||||||
MY_PV="${PV%_rc*}"
|
|
||||||
|
|
||||||
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
|
|
||||||
|
|
||||||
SRC_URI="
|
|
||||||
mirror://cpan/src/5.0/${MY_P}.tar.bz2
|
|
||||||
mirror://cpan/authors/id/${MODULE_AUTHOR:0:1}/${MODULE_AUTHOR:0:2}/${MODULE_AUTHOR}/${MY_P}.tar.bz2
|
|
||||||
mirror://gentoo/${MY_P}-patches-${PATCH_VER}.tar.xz
|
|
||||||
https://dev.gentoo.org/~dilfridge/distfiles/${MY_P}-patches-${PATCH_VER}.tar.xz
|
|
||||||
"
|
|
||||||
HOMEPAGE="http://www.perl.org/"
|
|
||||||
|
|
||||||
LICENSE="|| ( Artistic GPL-1+ )"
|
|
||||||
SLOT="0/${SHORT_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 ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
|
||||||
IUSE="berkdb debug doc gdbm ithreads"
|
|
||||||
|
|
||||||
RDEPEND="
|
|
||||||
berkdb? ( sys-libs/db:= )
|
|
||||||
gdbm? ( >=sys-libs/gdbm-1.8.3 )
|
|
||||||
app-arch/bzip2
|
|
||||||
sys-libs/zlib
|
|
||||||
"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
!prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=app-admin/perl-cleaner-2.5
|
|
||||||
>=virtual/perl-File-Temp-0.230.400-r2
|
|
||||||
>=virtual/perl-Data-Dumper-2.154.0
|
|
||||||
"
|
|
||||||
# bug 390719, bug 523624
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MY_P}"
|
|
||||||
|
|
||||||
dual_scripts() {
|
|
||||||
src_remove_dual perl-core/Archive-Tar 1.960.0 ptar ptardiff ptargrep
|
|
||||||
src_remove_dual perl-core/Digest-SHA 5.880.0 shasum
|
|
||||||
src_remove_dual perl-core/CPAN 2.50.0 cpan
|
|
||||||
src_remove_dual perl-core/Encode 2.600.0 enc2xs piconv
|
|
||||||
src_remove_dual perl-core/ExtUtils-MakeMaker 6.980.0 instmodsh
|
|
||||||
src_remove_dual perl-core/ExtUtils-ParseXS 3.240.0 xsubpp
|
|
||||||
src_remove_dual perl-core/IO-Compress 2.64.0 zipdetails
|
|
||||||
src_remove_dual perl-core/JSON-PP 2.272.30 json_pp
|
|
||||||
src_remove_dual perl-core/Module-CoreList 5.201.502.140 corelist
|
|
||||||
src_remove_dual perl-core/Pod-Parser 1.620.0 pod2usage podchecker podselect
|
|
||||||
src_remove_dual perl-core/Pod-Perldoc 3.230.0 perldoc
|
|
||||||
src_remove_dual perl-core/Test-Harness 3.330.0 prove
|
|
||||||
src_remove_dual perl-core/podlators 2.5.3 pod2man pod2text
|
|
||||||
src_remove_dual_man perl-core/podlators 2.5.3 /usr/share/man/man1/perlpodstyle.1
|
|
||||||
if [[ ${EBUILD_PHASE} == "install" ]] ; then #553726
|
|
||||||
rm "${ED}"/usr/bin/config_data "${ED}"/usr/share/man/man1/config_data.1 || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# eblit-include [--skip] <function> [version]
|
|
||||||
eblit-include() {
|
|
||||||
local skipable=false
|
|
||||||
[[ $1 == "--skip" ]] && skipable=true && shift
|
|
||||||
[[ $1 == pkg_* ]] && skipable=true
|
|
||||||
|
|
||||||
local e v func=$1 ver=$2
|
|
||||||
[[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
|
|
||||||
for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
|
|
||||||
e="${FILESDIR}/eblits/${func}${v}.eblit"
|
|
||||||
if [[ -e ${e} ]] ; then
|
|
||||||
. "${e}"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
${skipable} && return 0
|
|
||||||
die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
|
|
||||||
}
|
|
||||||
|
|
||||||
# eblit-run-maybe <function>
|
|
||||||
# run the specified function if it is defined
|
|
||||||
eblit-run-maybe() {
|
|
||||||
[[ $(type -t "$@") == "function" ]] && "$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
# eblit-run <function> [version]
|
|
||||||
# aka: src_unpack() { eblit-run src_unpack ; }
|
|
||||||
eblit-run() {
|
|
||||||
eblit-include --skip common "${*:2}"
|
|
||||||
eblit-include "$@"
|
|
||||||
eblit-run-maybe eblit-$1-pre
|
|
||||||
eblit-${PN}-$1
|
|
||||||
eblit-run-maybe eblit-$1-post
|
|
||||||
}
|
|
||||||
|
|
||||||
#src_unpack() { eblit-run src_unpack v50160001 ; }
|
|
||||||
src_prepare() { eblit-run src_prepare v50160001 ; }
|
|
||||||
src_configure() { eblit-run src_configure v50180002 ; }
|
|
||||||
#src_compile() { eblit-run src_compile v50160001 ; }
|
|
||||||
src_test() {
|
|
||||||
export NO_GENTOO_NETWORK_TESTS=1;
|
|
||||||
eblit-run src_test v50160001 ;
|
|
||||||
}
|
|
||||||
src_install() { eblit-run src_install v50200001 ; }
|
|
||||||
|
|
||||||
# FILESDIR might not be available during binpkg install
|
|
||||||
# FIXME: version passing
|
|
||||||
for x in setup {pre,post}{inst,rm} ; do
|
|
||||||
e="${FILESDIR}/eblits/pkg_${x}-v50160001.eblit"
|
|
||||||
if [[ -e ${e} ]] ; then
|
|
||||||
. "${e}"
|
|
||||||
eval "pkg_${x}() { eblit-run pkg_${x} v50160001 ; }"
|
|
||||||
fi
|
|
||||||
done
|
|
@ -1,124 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
|
|
||||||
|
|
||||||
PATCH_VER=1
|
|
||||||
|
|
||||||
PERL_OLDVERSEN="5.20.0 5.20.1"
|
|
||||||
MODULE_AUTHOR=SHAY
|
|
||||||
|
|
||||||
SHORT_PV="${PV%.*}"
|
|
||||||
MY_P="perl-${PV/_rc/-RC}"
|
|
||||||
MY_PV="${PV%_rc*}"
|
|
||||||
|
|
||||||
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
|
|
||||||
|
|
||||||
SRC_URI="
|
|
||||||
mirror://cpan/src/5.0/${MY_P}.tar.bz2
|
|
||||||
mirror://cpan/authors/id/${MODULE_AUTHOR:0:1}/${MODULE_AUTHOR:0:2}/${MODULE_AUTHOR}/${MY_P}.tar.bz2
|
|
||||||
mirror://gentoo/${MY_P}-patches-${PATCH_VER}.tar.xz
|
|
||||||
https://dev.gentoo.org/~dilfridge/distfiles/${MY_P}-patches-${PATCH_VER}.tar.xz
|
|
||||||
"
|
|
||||||
HOMEPAGE="http://www.perl.org/"
|
|
||||||
|
|
||||||
LICENSE="|| ( Artistic GPL-1+ )"
|
|
||||||
SLOT="0/${SHORT_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 ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
|
||||||
IUSE="berkdb debug doc gdbm ithreads"
|
|
||||||
|
|
||||||
RDEPEND="
|
|
||||||
berkdb? ( sys-libs/db:= )
|
|
||||||
gdbm? ( >=sys-libs/gdbm-1.8.3 )
|
|
||||||
app-arch/bzip2
|
|
||||||
sys-libs/zlib
|
|
||||||
"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
!prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=app-admin/perl-cleaner-2.5
|
|
||||||
>=virtual/perl-File-Temp-0.230.400-r2
|
|
||||||
>=virtual/perl-Data-Dumper-2.154.0
|
|
||||||
"
|
|
||||||
# bug 390719, bug 523624
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MY_P}"
|
|
||||||
|
|
||||||
dual_scripts() {
|
|
||||||
src_remove_dual perl-core/Archive-Tar 1.960.0 ptar ptardiff ptargrep
|
|
||||||
src_remove_dual perl-core/Digest-SHA 5.880.0 shasum
|
|
||||||
src_remove_dual perl-core/CPAN 2.50.0 cpan
|
|
||||||
src_remove_dual perl-core/Encode 2.600.0 enc2xs piconv
|
|
||||||
src_remove_dual perl-core/ExtUtils-MakeMaker 6.980.0 instmodsh
|
|
||||||
src_remove_dual perl-core/ExtUtils-ParseXS 3.240.0 xsubpp
|
|
||||||
src_remove_dual perl-core/IO-Compress 2.64.0 zipdetails
|
|
||||||
src_remove_dual perl-core/JSON-PP 2.272.30 json_pp
|
|
||||||
src_remove_dual perl-core/Module-CoreList 5.201.502.140 corelist
|
|
||||||
src_remove_dual perl-core/Pod-Parser 1.620.0 pod2usage podchecker podselect
|
|
||||||
src_remove_dual perl-core/Pod-Perldoc 3.230.0 perldoc
|
|
||||||
src_remove_dual perl-core/Test-Harness 3.330.0 prove
|
|
||||||
src_remove_dual perl-core/podlators 2.5.3 pod2man pod2text
|
|
||||||
src_remove_dual_man perl-core/podlators 2.5.3 /usr/share/man/man1/perlpodstyle.1
|
|
||||||
if [[ ${EBUILD_PHASE} == "install" ]] ; then #553726
|
|
||||||
rm "${ED}"/usr/bin/config_data "${ED}"/usr/share/man/man1/config_data.1 || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# eblit-include [--skip] <function> [version]
|
|
||||||
eblit-include() {
|
|
||||||
local skipable=false
|
|
||||||
[[ $1 == "--skip" ]] && skipable=true && shift
|
|
||||||
[[ $1 == pkg_* ]] && skipable=true
|
|
||||||
|
|
||||||
local e v func=$1 ver=$2
|
|
||||||
[[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
|
|
||||||
for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
|
|
||||||
e="${FILESDIR}/eblits/${func}${v}.eblit"
|
|
||||||
if [[ -e ${e} ]] ; then
|
|
||||||
. "${e}"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
${skipable} && return 0
|
|
||||||
die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
|
|
||||||
}
|
|
||||||
|
|
||||||
# eblit-run-maybe <function>
|
|
||||||
# run the specified function if it is defined
|
|
||||||
eblit-run-maybe() {
|
|
||||||
[[ $(type -t "$@") == "function" ]] && "$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
# eblit-run <function> [version]
|
|
||||||
# aka: src_unpack() { eblit-run src_unpack ; }
|
|
||||||
eblit-run() {
|
|
||||||
eblit-include --skip common "${*:2}"
|
|
||||||
eblit-include "$@"
|
|
||||||
eblit-run-maybe eblit-$1-pre
|
|
||||||
eblit-${PN}-$1
|
|
||||||
eblit-run-maybe eblit-$1-post
|
|
||||||
}
|
|
||||||
|
|
||||||
#src_unpack() { eblit-run src_unpack v50160001 ; }
|
|
||||||
src_prepare() { eblit-run src_prepare v50160001 ; }
|
|
||||||
src_configure() { eblit-run src_configure v50180002 ; }
|
|
||||||
#src_compile() { eblit-run src_compile v50160001 ; }
|
|
||||||
src_test() {
|
|
||||||
export NO_GENTOO_NETWORK_TESTS=1;
|
|
||||||
eblit-run src_test v50160001 ;
|
|
||||||
}
|
|
||||||
src_install() { eblit-run src_install v50200001 ; }
|
|
||||||
|
|
||||||
# FILESDIR might not be available during binpkg install
|
|
||||||
# FIXME: version passing
|
|
||||||
for x in setup {pre,post}{inst,rm} ; do
|
|
||||||
e="${FILESDIR}/eblits/pkg_${x}-v50160001.eblit"
|
|
||||||
if [[ -e ${e} ]] ; then
|
|
||||||
. "${e}"
|
|
||||||
eval "pkg_${x}() { eblit-run pkg_${x} v50160001 ; }"
|
|
||||||
fi
|
|
||||||
done
|
|
@ -0,0 +1,559 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
|
||||||
|
|
||||||
|
PATCH_VER=3
|
||||||
|
CROSS_VER=1.1.4
|
||||||
|
|
||||||
|
PERL_OLDVERSEN="5.24.0"
|
||||||
|
MODULE_AUTHOR=SHAY
|
||||||
|
|
||||||
|
SHORT_PV="${PV%.*}"
|
||||||
|
MY_P="perl-${PV/_rc/-RC}"
|
||||||
|
MY_PV="${PV%_rc*}"
|
||||||
|
|
||||||
|
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
|
||||||
|
|
||||||
|
SRC_URI="
|
||||||
|
mirror://cpan/src/5.0/${MY_P}.tar.xz
|
||||||
|
mirror://cpan/authors/id/${MODULE_AUTHOR:0:1}/${MODULE_AUTHOR:0:2}/${MODULE_AUTHOR}/${MY_P}.tar.xz
|
||||||
|
https://github.com/gentoo-perl/perl-patchset/releases/download/${MY_P}-patches-${PATCH_VER}/${MY_P}-patches-${PATCH_VER}.tar.xz
|
||||||
|
mirror://gentoo/${MY_P}-patches-${PATCH_VER}.tar.xz
|
||||||
|
https://dev.gentoo.org/~kentnl/distfiles/${MY_P}-patches-${PATCH_VER}.tar.xz
|
||||||
|
https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
|
||||||
|
"
|
||||||
|
HOMEPAGE="http://www.perl.org/"
|
||||||
|
|
||||||
|
LICENSE="|| ( Artistic GPL-1+ )"
|
||||||
|
SLOT="0/${SHORT_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 ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||||
|
IUSE="berkdb debug doc gdbm ithreads"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
berkdb? ( sys-libs/db:= )
|
||||||
|
gdbm? ( >=sys-libs/gdbm-1.8.3 )
|
||||||
|
app-arch/bzip2
|
||||||
|
sys-libs/zlib
|
||||||
|
"
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
!prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
|
||||||
|
"
|
||||||
|
PDEPEND="
|
||||||
|
>=app-admin/perl-cleaner-2.5
|
||||||
|
>=virtual/perl-File-Temp-0.230.400-r2
|
||||||
|
>=virtual/perl-Data-Dumper-2.154.0
|
||||||
|
virtual/perl-Test-Harness
|
||||||
|
"
|
||||||
|
# bug 390719, bug 523624
|
||||||
|
# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
|
||||||
|
|
||||||
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
|
dual_scripts() {
|
||||||
|
src_remove_dual perl-core/Archive-Tar 2.40.100_rc ptar ptardiff ptargrep
|
||||||
|
src_remove_dual perl-core/CPAN 2.110.100_rc cpan
|
||||||
|
src_remove_dual perl-core/Digest-SHA 5.950.100_rc shasum
|
||||||
|
src_remove_dual perl-core/Encode 2.800.100_rc enc2xs piconv
|
||||||
|
src_remove_dual perl-core/ExtUtils-MakeMaker 7.100.200_rc instmodsh
|
||||||
|
src_remove_dual perl-core/ExtUtils-ParseXS 3.310.0 xsubpp
|
||||||
|
src_remove_dual perl-core/IO-Compress 2.69.1_rc zipdetails
|
||||||
|
src_remove_dual perl-core/JSON-PP 2.273.0.100_rc json_pp
|
||||||
|
src_remove_dual perl-core/Module-CoreList 5.201.701.142.400_rc corelist
|
||||||
|
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
|
||||||
|
src_remove_dual perl-core/Pod-Perldoc 3.250.300_rc perldoc
|
||||||
|
src_remove_dual perl-core/Test-Harness 3.360.100_rc prove
|
||||||
|
src_remove_dual perl-core/podlators 4.70.0 pod2man pod2text
|
||||||
|
src_remove_dual_man perl-core/podlators 4.70.0 /usr/share/man/man1/perlpodstyle.1
|
||||||
|
}
|
||||||
|
|
||||||
|
check_rebuild() {
|
||||||
|
# Fresh install
|
||||||
|
if [[ -z "${REPLACING_VERSIONS}" ]]; then
|
||||||
|
return 0;
|
||||||
|
# Major Upgrade
|
||||||
|
# doesn't matter if there's multiple copies, it still needs a rebuild
|
||||||
|
# if the string is anything other than "5.CURRENTMAJOR"
|
||||||
|
elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
|
||||||
|
echo ""
|
||||||
|
ewarn "UPDATE THE PERL MODULES:"
|
||||||
|
ewarn "After updating dev-lang/perl the installed Perl modules"
|
||||||
|
ewarn "have to be re-installed. In most cases, this is done automatically"
|
||||||
|
ewarn "by the package manager, but subsequent steps are still recommended"
|
||||||
|
ewarn "to ensure system consistency."
|
||||||
|
ewarn
|
||||||
|
ewarn "You should start with a depclean to remove any unused perl dependencies"
|
||||||
|
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
|
||||||
|
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
|
||||||
|
ewarn "Recommended: emerge --depclean -va"
|
||||||
|
ewarn
|
||||||
|
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
|
||||||
|
ewarn "remaining rebuilds portage may have missed."
|
||||||
|
ewarn "Use: perl-cleaner --all"
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
# Reinstall w/ USE Change
|
||||||
|
elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
|
||||||
|
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
|
||||||
|
( use debug && ! has_version dev-lang/perl[debug] ) || \
|
||||||
|
( ! use debug && has_version dev-lang/perl[debug] ) ; then
|
||||||
|
echo ""
|
||||||
|
ewarn "TOGGLED USE-FLAGS WARNING:"
|
||||||
|
ewarn "You changed one of the use-flags ithreads or debug."
|
||||||
|
ewarn "You must rebuild all perl-modules installed."
|
||||||
|
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
case ${CHOST} in
|
||||||
|
*-freebsd*) osname="freebsd" ;;
|
||||||
|
*-dragonfly*) osname="dragonfly" ;;
|
||||||
|
*-netbsd*) osname="netbsd" ;;
|
||||||
|
*-openbsd*) osname="openbsd" ;;
|
||||||
|
*-darwin*) osname="darwin" ;;
|
||||||
|
*-interix*) osname="interix" ;;
|
||||||
|
*-aix*) osname="aix" ;;
|
||||||
|
*-cygwin*) osname="cygwin" ;;
|
||||||
|
*) osname="linux" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
myarch="${CHOST%%-*}-${osname}"
|
||||||
|
if use debug ; then
|
||||||
|
myarch+="-debug"
|
||||||
|
fi
|
||||||
|
if use ithreads ; then
|
||||||
|
mythreading="-multi"
|
||||||
|
myarch+="-thread"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LIBPERL="libperl$(get_libname ${MY_PV} )"
|
||||||
|
PRIV_LIB="/usr/$(get_libdir)/perl5/${MY_PV}"
|
||||||
|
ARCH_LIB="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
||||||
|
SITE_LIB="/usr/local/$(get_libdir)/perl5/${MY_PV}"
|
||||||
|
SITE_ARCH="/usr/local/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
||||||
|
VENDOR_LIB="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}"
|
||||||
|
VENDOR_ARCH="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}/${myarch}${mythreading}"
|
||||||
|
|
||||||
|
dual_scripts
|
||||||
|
}
|
||||||
|
|
||||||
|
src_remove_dual_file() {
|
||||||
|
local i pkg ver
|
||||||
|
pkg="$1"
|
||||||
|
ver="$2"
|
||||||
|
shift 2
|
||||||
|
case "${EBUILD_PHASE:-none}" in
|
||||||
|
postinst|postrm)
|
||||||
|
for i in "$@" ; do
|
||||||
|
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
setup)
|
||||||
|
for i in "$@" ; do
|
||||||
|
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
|
||||||
|
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
install)
|
||||||
|
for i in "$@" ; do
|
||||||
|
if ! [[ -f "${ED}"${i} ]] ; then
|
||||||
|
ewarn "${i} does not exist!"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
mv "${ED}"${i}{,-${ver}-${P}} || die
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
src_remove_dual_man() {
|
||||||
|
local i pkg ver ff
|
||||||
|
pkg="$1"
|
||||||
|
ver="$2"
|
||||||
|
shift 2
|
||||||
|
case "${EBUILD_PHASE:-none}" in
|
||||||
|
postinst|postrm)
|
||||||
|
for i in "$@" ; do
|
||||||
|
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
|
||||||
|
ff=${ff##*${i#${i%.[0-9]}}}
|
||||||
|
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
install)
|
||||||
|
for i in "$@" ; do
|
||||||
|
if ! [[ -f "${ED}"${i} ]] ; then
|
||||||
|
ewarn "${i} does not exist!"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
src_remove_dual() {
|
||||||
|
local i pkg ver
|
||||||
|
pkg="$1"
|
||||||
|
ver="$2"
|
||||||
|
shift 2
|
||||||
|
for i in "$@" ; do
|
||||||
|
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
|
||||||
|
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare_update_patchlevel_h() {
|
||||||
|
# Copied and modified from debian:
|
||||||
|
# Copyright 2011 Niko Tyni
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the same terms as Perl itself.
|
||||||
|
local patchdir="${WORKDIR}/patches"
|
||||||
|
local prefix
|
||||||
|
local patchoutput="patchlevel-gentoo.h"
|
||||||
|
|
||||||
|
[[ -f ${patchdir}/series ]] || return 0
|
||||||
|
|
||||||
|
while read patch
|
||||||
|
do
|
||||||
|
patchname=$(echo $patch | sed 's/\.diff$//')
|
||||||
|
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
|
||||||
|
|
||||||
|
# massage the patch headers
|
||||||
|
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
|
||||||
|
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
|
||||||
|
s|^Bug-Gentoo: ||; tprepend;
|
||||||
|
s/^\(Subject\|Description\): //; tappend;
|
||||||
|
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
|
||||||
|
|
||||||
|
# post-process at the end of input
|
||||||
|
$ { x;
|
||||||
|
# include the version number in the patchlevel.h description (if available)
|
||||||
|
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
|
||||||
|
|
||||||
|
# escape any backslashes and double quotes
|
||||||
|
s|\\|\\\\|g; s|"|\\"|g;
|
||||||
|
|
||||||
|
# add a prefix
|
||||||
|
s|^|\t,"'"$prefix$patchname"' - |;
|
||||||
|
# newlines away
|
||||||
|
s/\n/ /g; s/ */ /g;
|
||||||
|
# add a suffix
|
||||||
|
s/ *$/"/; p
|
||||||
|
};
|
||||||
|
# stop all processing
|
||||||
|
d;
|
||||||
|
# label: append to the hold space
|
||||||
|
:append H; d;
|
||||||
|
# label: prepend to the hold space
|
||||||
|
:prepend x; H; d;
|
||||||
|
'
|
||||||
|
done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
|
||||||
|
echo "${patchoutput}" >> "${S}/MANIFEST"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
local patch
|
||||||
|
EPATCH_OPTS+=" -p1"
|
||||||
|
einfo "Applying patches from ${MY_P}-${PATCH_VER} ..."
|
||||||
|
while read patch ; do
|
||||||
|
EPATCH_SINGLE_MSG=" ${patch} ..."
|
||||||
|
epatch "${WORKDIR}"/patches/${patch}
|
||||||
|
done < "${WORKDIR}"/patches/series
|
||||||
|
|
||||||
|
src_prepare_update_patchlevel_h
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
cp -a ../perl-cross-${CROSS_VER}/* . || die
|
||||||
|
|
||||||
|
sed -i \
|
||||||
|
-e 's/(15 + $CLEANUP)/(13 + $CLEANUP)/' \
|
||||||
|
cnf/diffs/perl5-${PV}/makemaker-test.patch || die
|
||||||
|
|
||||||
|
sed -i \
|
||||||
|
-e 's/MakeMaker\.pm .*/MakeMaker.pm bf9174c70a0e50ff2fee4552c7df89b37d292da1/' \
|
||||||
|
-e 's/MM_Unix\.pm .*/MM_Unix.pm b0ec308fe2d7dcfcef5732880db0fae1f4ea80fa/' \
|
||||||
|
cnf/diffs/perl5-${PV}/customized.patch || die
|
||||||
|
|
||||||
|
sed -i \
|
||||||
|
-e 's|^lib/unicore/CombiningClass.pl pod/perluniprops.pod:|lib/unicore/CombiningClass.pl pod/perluniprops.pod: $(CONFIGPM)|' \
|
||||||
|
Makefile || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! tc-is-static-only ; then
|
||||||
|
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
|
||||||
|
ln -s ${LIBPERL} libperl$(get_libname ) || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use gdbm; then
|
||||||
|
sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
|
||||||
|
ext/NDBM_File/Makefile.PL || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
myconf() {
|
||||||
|
# the myconf array is declared in src_configure
|
||||||
|
myconf=( "${myconf[@]}" "$@" )
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
declare -a myconf
|
||||||
|
|
||||||
|
export LC_ALL="C"
|
||||||
|
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
|
||||||
|
|
||||||
|
# some arches and -O do not mix :)
|
||||||
|
use ppc && replace-flags -O? -O1
|
||||||
|
|
||||||
|
# Perl has problems compiling with -Os in your flags with glibc
|
||||||
|
use elibc_uclibc || replace-flags "-Os" "-O2"
|
||||||
|
|
||||||
|
# This flag makes compiling crash in interesting ways
|
||||||
|
filter-flags "-malign-double"
|
||||||
|
|
||||||
|
# Fixes bug #97645
|
||||||
|
use ppc && filter-flags "-mpowerpc-gpopt"
|
||||||
|
|
||||||
|
# Fixes bug #143895 on gcc-4.1.1
|
||||||
|
filter-flags "-fsched2-use-superblocks"
|
||||||
|
|
||||||
|
use sparc && myconf -Ud_longdbl
|
||||||
|
|
||||||
|
export BUILD_BZIP2=0
|
||||||
|
export BZIP2_INCLUDE=${EROOT}/usr/include
|
||||||
|
export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
|
||||||
|
|
||||||
|
export BUILD_ZLIB=False
|
||||||
|
export ZLIB_INCLUDE=${EROOT}/usr/include
|
||||||
|
export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
|
||||||
|
|
||||||
|
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
|
||||||
|
myndbm='U'
|
||||||
|
mygdbm='U'
|
||||||
|
mydb='U'
|
||||||
|
if use gdbm ; then
|
||||||
|
mygdbm='D'
|
||||||
|
if use berkdb ; then
|
||||||
|
myndbm='D'
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if use berkdb ; then
|
||||||
|
mydb='D'
|
||||||
|
has_version '=sys-libs/db-1*' && myndbm='D'
|
||||||
|
fi
|
||||||
|
|
||||||
|
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
|
||||||
|
|
||||||
|
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
|
||||||
|
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
|
||||||
|
myconf -Ui_db -Ui_ndbm
|
||||||
|
fi
|
||||||
|
|
||||||
|
use ithreads && myconf -Dusethreads
|
||||||
|
|
||||||
|
if use debug ; then
|
||||||
|
append-cflags "-g"
|
||||||
|
myconf -DDEBUGGING
|
||||||
|
elif [[ ${CFLAGS} == *-g* ]] ; then
|
||||||
|
myconf -DDEBUGGING=-g
|
||||||
|
else
|
||||||
|
myconf -DDEBUGGING=none
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n ${PERL_OLDVERSEN} ]] ; then
|
||||||
|
local inclist=$(for v in ${PERL_OLDVERSEN}; do echo -n "${v}/${myarch}${mythreading} ${v} "; done )
|
||||||
|
myconf -Dinc_version_list="${inclist}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
|
||||||
|
|
||||||
|
# Make sure we can do the final link #523730, need to set deployment
|
||||||
|
# target to override hardcoded 10.3 which breaks on modern OSX
|
||||||
|
[[ ${CHOST} == *-darwin* ]] && \
|
||||||
|
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
|
||||||
|
|
||||||
|
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
|
||||||
|
# Prefix itself we don't do multilib either, so make sure perl can find
|
||||||
|
# something compatible.
|
||||||
|
if use prefix ; then
|
||||||
|
# Set a hook to check for each detected library whether it actually works.
|
||||||
|
export libscheck="
|
||||||
|
( echo 'main(){}' > '${T}'/conftest.c &&
|
||||||
|
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
|
||||||
|
) || xxx=/dev/null"
|
||||||
|
|
||||||
|
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
|
||||||
|
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
|
||||||
|
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
|
||||||
|
elif [[ $(get_libdir) != "lib" ]] ; then
|
||||||
|
# We need to use " and not ', as the written config.sh use ' ...
|
||||||
|
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# don't try building ODBM, bug #354453
|
||||||
|
disabled_extensions="ODBM_File"
|
||||||
|
|
||||||
|
if ! use gdbm ; then
|
||||||
|
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
|
||||||
|
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
|
||||||
|
fi
|
||||||
|
|
||||||
|
myconf -Dnoextensions="${disabled_extensions}"
|
||||||
|
|
||||||
|
[[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
|
||||||
|
# allow fiddling via EXTRA_ECONF, bug 558070
|
||||||
|
eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
|
||||||
|
|
||||||
|
myconf \
|
||||||
|
-Duseshrplib \
|
||||||
|
-Darchname="${myarch}" \
|
||||||
|
-Dcc="$(tc-getCC)" \
|
||||||
|
-Doptimize="${CFLAGS}" \
|
||||||
|
-Dldflags="${LDFLAGS}" \
|
||||||
|
-Dprefix="${EPREFIX}"'/usr' \
|
||||||
|
-Dsiteprefix="${EPREFIX}"'/usr/local' \
|
||||||
|
-Dvendorprefix="${EPREFIX}"'/usr' \
|
||||||
|
-Dscriptdir="${EPREFIX}"'/usr/bin' \
|
||||||
|
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
|
||||||
|
-Darchlib="${EPREFIX}${ARCH_LIB}" \
|
||||||
|
-Dsitelib="${EPREFIX}${SITE_LIB}" \
|
||||||
|
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
|
||||||
|
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
|
||||||
|
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
|
||||||
|
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
|
||||||
|
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
|
||||||
|
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
|
||||||
|
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
|
||||||
|
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
|
||||||
|
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
|
||||||
|
-Dman1ext='1' \
|
||||||
|
-Dman3ext='3pm' \
|
||||||
|
-Dlibperl="${LIBPERL}" \
|
||||||
|
-Dlocincpth="${EPREFIX}"'/usr/include ' \
|
||||||
|
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
|
||||||
|
-Duselargefiles \
|
||||||
|
-Dd_semctl_semun \
|
||||||
|
-Dcf_by='Gentoo' \
|
||||||
|
-Dmyhostname='localhost' \
|
||||||
|
-Dperladmin='root@localhost' \
|
||||||
|
-Ud_csh \
|
||||||
|
-Dsh="${EPREFIX}"/bin/sh \
|
||||||
|
-Dtargetsh="${EPREFIX}"/bin/sh \
|
||||||
|
-Uusenm \
|
||||||
|
"${myconf[@]}" \
|
||||||
|
"${EXTRA_ECONF[@]}"
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
./configure \
|
||||||
|
--target="${CHOST}" \
|
||||||
|
--build="${CBUILD}" \
|
||||||
|
-Dinstallprefix='' \
|
||||||
|
-Dinstallusrbinperl='undef' \
|
||||||
|
-Dusevendorprefix='define' \
|
||||||
|
"${myconf[@]}" \
|
||||||
|
|| die "Unable to configure"
|
||||||
|
else
|
||||||
|
sh Configure \
|
||||||
|
-des \
|
||||||
|
-Dinstallprefix="${EPREFIX}"'/usr' \
|
||||||
|
-Dinstallusrbinperl='n' \
|
||||||
|
"${myconf[@]}" \
|
||||||
|
|| die "Unable to configure"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
export NO_GENTOO_NETWORK_TESTS=1;
|
||||||
|
if [[ ${EUID} == 0 ]] ; then
|
||||||
|
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
use elibc_uclibc && export MAKEOPTS+=" -j1"
|
||||||
|
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local i
|
||||||
|
local coredir="${ARCH_LIB}/CORE"
|
||||||
|
|
||||||
|
emake DESTDIR="${D}" install
|
||||||
|
|
||||||
|
rm -f "${ED}/usr/bin/perl${MY_PV}"
|
||||||
|
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
|
||||||
|
|
||||||
|
if ! tc-is-static-only ; then
|
||||||
|
dolib.so "${ED}"${coredir}/${LIBPERL}
|
||||||
|
rm -f "${ED}"${coredir}/${LIBPERL}
|
||||||
|
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
|
||||||
|
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
|
||||||
|
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
|
||||||
|
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
|
||||||
|
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
|
||||||
|
|
||||||
|
# This removes ${D} from Config.pm
|
||||||
|
for i in $(find "${D}" -iname "Config.pm" ) ; do
|
||||||
|
einfo "Removing ${D} from ${i}..."
|
||||||
|
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
|
||||||
|
done
|
||||||
|
|
||||||
|
dodoc Changes* README AUTHORS
|
||||||
|
|
||||||
|
if use doc ; then
|
||||||
|
# HTML Documentation
|
||||||
|
# We expect errors, warnings, and such with the following.
|
||||||
|
|
||||||
|
dodir /usr/share/doc/${PF}/html
|
||||||
|
LD_LIBRARY_PATH=. ./perl installhtml \
|
||||||
|
--podroot='.' \
|
||||||
|
--podpath='lib:ext:pod:vms' \
|
||||||
|
--recurse \
|
||||||
|
--htmldir="${ED}/usr/share/doc/${PF}/html"
|
||||||
|
fi
|
||||||
|
|
||||||
|
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
|
||||||
|
|
||||||
|
dual_scripts
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
check_rebuild
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
dual_scripts
|
||||||
|
|
||||||
|
if [[ "${ROOT}" = "/" ]] ; then
|
||||||
|
local INC DIR file
|
||||||
|
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
|
||||||
|
einfo "Removing old .ph files"
|
||||||
|
for DIR in ${INC} ; do
|
||||||
|
if [[ -d "${DIR}" ]] ; then
|
||||||
|
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
|
||||||
|
rm -f "${file}"
|
||||||
|
einfo "<< ${file}"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# Silently remove the now empty dirs
|
||||||
|
for DIR in ${INC} ; do
|
||||||
|
if [[ -d "${DIR}" ]] ; then
|
||||||
|
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm(){
|
||||||
|
dual_scripts
|
||||||
|
}
|
@ -1,3 +1,4 @@
|
|||||||
DIST php-5.6.30.tar.xz 12449696 SHA256 a363185c786432f75e3c7ff956b49c3369c3f6906a6b10459f8d1ddc22f70805 SHA512 fdf503925c236a79cc09bc9e5c06ce5afa7497ccf20ab486389b818a7d84db1b84ac119523b35586f64fff7d198b6c20164910fbf33254b35ec2f41015d9feef WHIRLPOOL d3217dfd3de0a2b2f178f1b869d2e0fa39128c4518deaf20f6f79d81a938f3730bf4cfb1cc19ddd55797a9e43a2ebad76555ae08004cefbf2430fc6916c49bd3
|
DIST php-5.6.30.tar.xz 12449696 SHA256 a363185c786432f75e3c7ff956b49c3369c3f6906a6b10459f8d1ddc22f70805 SHA512 fdf503925c236a79cc09bc9e5c06ce5afa7497ccf20ab486389b818a7d84db1b84ac119523b35586f64fff7d198b6c20164910fbf33254b35ec2f41015d9feef WHIRLPOOL d3217dfd3de0a2b2f178f1b869d2e0fa39128c4518deaf20f6f79d81a938f3730bf4cfb1cc19ddd55797a9e43a2ebad76555ae08004cefbf2430fc6916c49bd3
|
||||||
DIST php-7.0.15.tar.xz 12575116 SHA256 300364d57fc4a6176ff7d52d390ee870ab6e30df121026649f8e7e0b9657fe93 SHA512 1d233edb908f44fb895184dbfdfd5684d52e4c831dc3e8184b3e645137e6f44bdc7abd16ceaf2249b9288cf1f1893b7dcca955c6e1c3a6b4afbe03cec2a85033 WHIRLPOOL 4ac7bf2521eb242204fcd9e231a53d06879b16e47928c6cdf9e04c2f16b25b880b16378c0d9425b3c1a183127dce062f3905eb3dd0a6cd196f3decb9304e2b7a
|
DIST php-7.0.15.tar.xz 12575116 SHA256 300364d57fc4a6176ff7d52d390ee870ab6e30df121026649f8e7e0b9657fe93 SHA512 1d233edb908f44fb895184dbfdfd5684d52e4c831dc3e8184b3e645137e6f44bdc7abd16ceaf2249b9288cf1f1893b7dcca955c6e1c3a6b4afbe03cec2a85033 WHIRLPOOL 4ac7bf2521eb242204fcd9e231a53d06879b16e47928c6cdf9e04c2f16b25b880b16378c0d9425b3c1a183127dce062f3905eb3dd0a6cd196f3decb9304e2b7a
|
||||||
DIST php-7.1.1.tar.xz 12766648 SHA256 b3565b0c1441064eba204821608df1ec7367abff881286898d900c2c2a5ffe70 SHA512 2155eee2f4001d7fb6bdc26f1491bc388ad18375530ec289a8894e46fbc77137bbc285f266c3fbc64d7484e278b08f3c9fd5e7a7408d2e535bbc10c58468353e WHIRLPOOL 5bad9313318c09f23546f64d530b7918e8a530e649f4554080291dc622db7a614e2bb2c1617a33014162832ea20deea4d7fa4fd8b7b1418091cc5193f7446feb
|
DIST php-7.0.16.tar.xz 12587920 SHA256 244ac39bc657448962860aa7a590e4417f68513ad5e86ee2727b1328b0537309 SHA512 7925971a4a01f00110bd9fd80d805adc9cdb0021e639e4d84a9f5d76d7d7aa02d79ed54292fa0947f47cc99854181e203f7ecf6f25d60b804e0bc447b169134f WHIRLPOOL 0e5ab58097cd0e42b54af358b77c9694c22fcffd2b243230e94e3fafbf1d264567871e207c2a87249302ab11a2ae0efe3435a4d1d3fa8877c0a3e067c7dcb101
|
||||||
|
DIST php-7.1.2.tar.xz 12780720 SHA256 d815a0c39fd57bab1434a77ff0610fb507c22f790c66cd6f26e27030c4b3e971 SHA512 d1cc387e8817ecbdf5ec80dc01ab0363d1f71347b1ea71f335210df2760dc419e0dc4087c7f45d2f2e9874b555bd7813c36a0d75f5c8e6f2a322693b134087a3 WHIRLPOOL 6e5e43c5050242737c4446d4b93aac3b3142a19c2dcb3e846c18db8bd6f74c98b9bc077c8aa7a7f82fb47ee98ed43be39a8219c1b2714d36a4367ee54d517e42
|
||||||
|
@ -0,0 +1,781 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit autotools flag-o-matic versionator systemd
|
||||||
|
|
||||||
|
DESCRIPTION="The PHP language runtime engine"
|
||||||
|
HOMEPAGE="http://php.net/"
|
||||||
|
SRC_URI="http://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="$(get_version_component_range 1-2)"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~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]
|
||||||
|
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 )
|
||||||
|
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||||
|
cjk? ( !gd? (
|
||||||
|
virtual/jpeg:0
|
||||||
|
media-libs/libpng:0=
|
||||||
|
sys-libs/zlib
|
||||||
|
) )
|
||||||
|
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
|
||||||
|
) )
|
||||||
|
firebird? ( dev-db/firebird )
|
||||||
|
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||||
|
gdbm? ( >=sys-libs/gdbm-1.8.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] )
|
||||||
|
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 )
|
||||||
|
)
|
||||||
|
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 )
|
||||||
|
)
|
||||||
|
unicode? ( dev-libs/oniguruma )
|
||||||
|
vpx? ( media-libs/libvpx )
|
||||||
|
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
|
||||||
|
)
|
||||||
|
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||||
|
zip? ( sys-libs/zlib )
|
||||||
|
zlib? ( sys-libs/zlib )
|
||||||
|
"
|
||||||
|
|
||||||
|
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? ( ^^ ( readline libedit ) )
|
||||||
|
truetype? ( gd )
|
||||||
|
vpx? ( gd )
|
||||||
|
cjk? ( gd )
|
||||||
|
exif? ( gd )
|
||||||
|
|
||||||
|
xpm? ( gd )
|
||||||
|
gd? ( zlib )
|
||||||
|
simplexml? ( xml )
|
||||||
|
soap? ( xml )
|
||||||
|
wddx? ( xml )
|
||||||
|
xmlrpc? ( || ( xml iconv ) )
|
||||||
|
xmlreader? ( xml )
|
||||||
|
xslt? ( xml )
|
||||||
|
ldap-sasl? ( ldap )
|
||||||
|
mhash? ( hash )
|
||||||
|
phar? ( hash )
|
||||||
|
libmysqlclient? ( || (
|
||||||
|
mysql
|
||||||
|
mysqli
|
||||||
|
pdo
|
||||||
|
) )
|
||||||
|
|
||||||
|
qdbm? ( !gdbm )
|
||||||
|
readline? ( !libedit )
|
||||||
|
recode? ( !imap !mysql !mysqli )
|
||||||
|
sharedmem? ( !threads )
|
||||||
|
|
||||||
|
!cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )"
|
||||||
|
|
||||||
|
PHP_MV="$(get_major_version)"
|
||||||
|
|
||||||
|
# Allow users to install production version if they want to
|
||||||
|
if [[ "${PHP_INI_VERSION}" == "production" ]]; then
|
||||||
|
PHP_INI_UPSTREAM="php.ini-production"
|
||||||
|
else
|
||||||
|
PHP_INI_UPSTREAM="php.ini-development"
|
||||||
|
fi
|
||||||
|
|
||||||
|
php_install_ini() {
|
||||||
|
local phpsapi="${1}"
|
||||||
|
|
||||||
|
# work out where we are installing the ini file
|
||||||
|
php_set_ini_dir "${phpsapi}"
|
||||||
|
|
||||||
|
local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}"
|
||||||
|
cp "${PHP_INI_UPSTREAM}" "${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
|
||||||
|
dodoc php.ini-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"
|
||||||
|
|
||||||
|
# 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
|
||||||
|
addpredict /var/lib/net-snmp/mib_indexes
|
||||||
|
|
||||||
|
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 acl fpm-acl)
|
||||||
|
$(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 || 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 systemd fpm-systemd)
|
||||||
|
$(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"
|
||||||
|
|
||||||
|
# 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}" )
|
||||||
|
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
|
||||||
|
addpredict /var/lib/net-snmp/mib_indexes
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Only mention PHP_INI_VERSION if the user doesn't have it set.
|
||||||
|
case "${PHP_INI_VERSION}" in
|
||||||
|
production|development)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
elog "This ebuild installed a version of php.ini based on"
|
||||||
|
elog "${PHP_INI_UPSTREAM}. You can choose which version of"
|
||||||
|
elog "php.ini to install by default by setting PHP_INI_VERSION"
|
||||||
|
elog "to either 'production' or 'development' in your make.conf."
|
||||||
|
elog "Both versions of php.ini can be found with the PHP docs in"
|
||||||
|
elog "${EPREFIX}/usr/share/doc/${PF}"
|
||||||
|
elog
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
elog "For details on how version slotting works, please see"
|
||||||
|
elog "the wiki:"
|
||||||
|
elog
|
||||||
|
elog " https://wiki.gentoo.org/wiki/PHP"
|
||||||
|
elog
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
# This serves two purposes. First, if we have just removed the last
|
||||||
|
# installed version of PHP, then this will remove any dead symlinks
|
||||||
|
# belonging to eselect-php. Second, if a user upgrades slots from
|
||||||
|
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
|
||||||
|
# his existing symlinks to point to the new 7.0 installation. The
|
||||||
|
# latter is bug 432962.
|
||||||
|
#
|
||||||
|
# Note: the eselect-php package may not be installed at this point,
|
||||||
|
# so we can't die() if this command fails.
|
||||||
|
eselect php cleanup
|
||||||
|
}
|
@ -0,0 +1,743 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit flag-o-matic versionator systemd
|
||||||
|
|
||||||
|
DESCRIPTION="The PHP language runtime engine"
|
||||||
|
HOMEPAGE="http://php.net/"
|
||||||
|
SRC_URI="http://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="$(get_version_component_range 1-2)"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~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 sharedmem
|
||||||
|
+simplexml snmp soap sockets spell sqlite ssl
|
||||||
|
sysvipc systemd 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]
|
||||||
|
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 )
|
||||||
|
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||||
|
cjk? ( !gd? (
|
||||||
|
virtual/jpeg:0
|
||||||
|
media-libs/libpng:0=
|
||||||
|
sys-libs/zlib
|
||||||
|
) )
|
||||||
|
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
|
||||||
|
) )
|
||||||
|
firebird? ( dev-db/firebird )
|
||||||
|
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||||
|
gdbm? ( >=sys-libs/gdbm-1.8.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 )
|
||||||
|
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 )
|
||||||
|
)
|
||||||
|
tidy? ( app-text/htmltidy )
|
||||||
|
truetype? (
|
||||||
|
=media-libs/freetype-2*
|
||||||
|
!gd? (
|
||||||
|
virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||||
|
)
|
||||||
|
unicode? ( dev-libs/oniguruma )
|
||||||
|
wddx? ( >=dev-libs/libxml2-2.6.8 )
|
||||||
|
webp? ( media-libs/libwebp )
|
||||||
|
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
|
||||||
|
)
|
||||||
|
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||||
|
zip? ( sys-libs/zlib )
|
||||||
|
zlib? ( sys-libs/zlib )
|
||||||
|
"
|
||||||
|
|
||||||
|
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? ( ^^ ( readline libedit ) )
|
||||||
|
truetype? ( gd )
|
||||||
|
webp? ( gd )
|
||||||
|
cjk? ( gd )
|
||||||
|
exif? ( gd )
|
||||||
|
xpm? ( gd )
|
||||||
|
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 )
|
||||||
|
sharedmem? ( !threads )
|
||||||
|
mysql? ( || ( mysqli pdo ) )
|
||||||
|
|| ( cli cgi fpm apache2 embed phpdbg )"
|
||||||
|
|
||||||
|
PHP_MV="$(get_major_version)"
|
||||||
|
|
||||||
|
# Allow users to install production version if they want to
|
||||||
|
if [[ "${PHP_INI_VERSION}" == "production" ]]; then
|
||||||
|
PHP_INI_UPSTREAM="php.ini-production"
|
||||||
|
else
|
||||||
|
PHP_INI_UPSTREAM="php.ini-development"
|
||||||
|
fi
|
||||||
|
|
||||||
|
php_install_ini() {
|
||||||
|
local phpsapi="${1}"
|
||||||
|
|
||||||
|
# work out where we are installing the ini file
|
||||||
|
php_set_ini_dir "${phpsapi}"
|
||||||
|
|
||||||
|
local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}"
|
||||||
|
cp "${PHP_INI_UPSTREAM}" "${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
|
||||||
|
dodoc php.ini-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
|
||||||
|
addpredict /var/lib/net-snmp/mib_indexes
|
||||||
|
|
||||||
|
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 acl fpm-acl)
|
||||||
|
$(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 || 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 systemd fpm-systemd)
|
||||||
|
$(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 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"
|
||||||
|
|
||||||
|
# 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}" )
|
||||||
|
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
|
||||||
|
addpredict /var/lib/net-snmp/mib_indexes
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
# 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/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
|
||||||
|
|
||||||
|
# Only mention PHP_INI_VERSION if the user doesn't have it set.
|
||||||
|
case "${PHP_INI_VERSION}" in
|
||||||
|
production|development)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
elog "This ebuild installed a version of php.ini based on"
|
||||||
|
elog "${PHP_INI_UPSTREAM}. You can choose which version of"
|
||||||
|
elog "php.ini to install by default by setting PHP_INI_VERSION"
|
||||||
|
elog "to either 'production' or 'development' in your make.conf."
|
||||||
|
elog "Both versions of php.ini can be found with the PHP docs in"
|
||||||
|
elog "${EPREFIX}/usr/share/doc/${PF}"
|
||||||
|
elog
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
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,8 +1,14 @@
|
|||||||
DIST Python-2.7.12.tar.xz 12390820 SHA256 d7837121dd5652a05fef807c361909d255d173280c4e1a4ded94d73d80a1f978 SHA512 6ddbbce47cc49597433d98ca05c2f62f07ed1070807b645602a8e9e9b996adc6fa66fa20a33cd7d23d4e7e925e25071d7301d288149fbe4e8c5f06d5438dda1f WHIRLPOOL fe4224f4c3dc8dc5c49005051da0069922c86f39880a0072c09fac422e1913d924ac695e22be11603a961329dd8c17b1cf7696b31b62ef93398e42745a6446d6
|
DIST Python-2.7.12.tar.xz 12390820 SHA256 d7837121dd5652a05fef807c361909d255d173280c4e1a4ded94d73d80a1f978 SHA512 6ddbbce47cc49597433d98ca05c2f62f07ed1070807b645602a8e9e9b996adc6fa66fa20a33cd7d23d4e7e925e25071d7301d288149fbe4e8c5f06d5438dda1f WHIRLPOOL fe4224f4c3dc8dc5c49005051da0069922c86f39880a0072c09fac422e1913d924ac695e22be11603a961329dd8c17b1cf7696b31b62ef93398e42745a6446d6
|
||||||
|
DIST Python-2.7.13.tar.xz 12495628 SHA256 35d543986882f78261f97787fd3e06274bfa6df29fac9b4a94f73930ff98f731 SHA512 f37c9a28ce129d01e63c84d7db627a06402854578f62d17927334ea21ede318e04bbf66e890e3f47c85333e6b19f6e5581fb3f3e27efd24be27017d1b6529c4b WHIRLPOOL 6bb6ad867c856bcaea97d5ad85882d990f5c8169a2450685cb77645f674bead83970c67a6a689ce0807856e366f320a0230250d2239f005f2a64cc32505507a5
|
||||||
DIST Python-3.4.5.tar.xz 14516820 SHA256 ee64b1c8a47461009abf25252332d29a4e587cb4f0c1c96aa793a3732e9d898a SHA512 b548a5338d141b3086dea372fa2cc245ba5350ee9f0d1304ef6222dc45380b66d380b092e547d54206d56ca68563b95036f445f97f72bb0ef1d48f81a74a3d4c WHIRLPOOL 43e0aed0177d46148964447b4fb24475c4c736afb2ba84ec393fbf55db3da3f192308f9c8f236deaa7a608dac56946ee7755970fadaa82bf406c910a05f36883
|
DIST Python-3.4.5.tar.xz 14516820 SHA256 ee64b1c8a47461009abf25252332d29a4e587cb4f0c1c96aa793a3732e9d898a SHA512 b548a5338d141b3086dea372fa2cc245ba5350ee9f0d1304ef6222dc45380b66d380b092e547d54206d56ca68563b95036f445f97f72bb0ef1d48f81a74a3d4c WHIRLPOOL 43e0aed0177d46148964447b4fb24475c4c736afb2ba84ec393fbf55db3da3f192308f9c8f236deaa7a608dac56946ee7755970fadaa82bf406c910a05f36883
|
||||||
|
DIST Python-3.4.6.tar.xz 14473592 SHA256 f13428bbe6aa9e3b9b6499502dc488c26096349ed7a21f7a0c1db90911115f40 SHA512 f6785cf6a99a8a27823baefe59cc20e34cbec01bb444c8600e7f49b5437159d5137f9d80fce26e219846d71bfe98f68bc6f0c87719a34db0050a4eaca95959ac WHIRLPOOL d76c18cd247a953ff836cea1ead6f9fb71637938f8bdc91376f06841069944863ac3f6fa536fd0102279e828149c3280b48a48c8d0eaca70df2941a3f38a18ed
|
||||||
DIST Python-3.5.2.tar.xz 15222676 SHA256 0010f56100b9b74259ebcd5d4b295a32324b58b517403a10d1a2aa7cb22bca40 SHA512 c07c3366f1c81e214241444bb9da6db9d11da32ad66bfa29cdad5a3b2e34e4d870bda6d4ce3c3910b582942e91f1d8c8a1c1a7b9464cc147b83c9e0007012742 WHIRLPOOL cf55d67f362b6a7529d43bb5aa8014c8349be190c6d4dae9d48de1679ab8623087478f41686cdced981cf18bb3d107052732cd437ff31ba5de2cc06b04ec2289
|
DIST Python-3.5.2.tar.xz 15222676 SHA256 0010f56100b9b74259ebcd5d4b295a32324b58b517403a10d1a2aa7cb22bca40 SHA512 c07c3366f1c81e214241444bb9da6db9d11da32ad66bfa29cdad5a3b2e34e4d870bda6d4ce3c3910b582942e91f1d8c8a1c1a7b9464cc147b83c9e0007012742 WHIRLPOOL cf55d67f362b6a7529d43bb5aa8014c8349be190c6d4dae9d48de1679ab8623087478f41686cdced981cf18bb3d107052732cd437ff31ba5de2cc06b04ec2289
|
||||||
|
DIST Python-3.5.3.tar.xz 15213396 SHA256 eefe2ad6575855423ab630f5b51a8ef6e5556f774584c06beab4926f930ddbb0 SHA512 bbcc20e315c63dbc8901d7e7bfa29d4dbdad9335720757d8d679730319fd1d9fcfdb55cf62d620c9b052134170f162c28d653a8af60923185b8932524d827864 WHIRLPOOL 8aecc4dd97342d23b61cbef686f8324d4e9ee970e40745f88027bca63cf144cfa454e4d88ac52d508126c26f1ddb18617d0ff37f036438f08842998ed9e06066
|
||||||
DIST Python-3.6.0.tar.xz 16805836 SHA256 b0c5f904f685e32d9232f7bdcbece9819a892929063b6e385414ad2dd6a23622 SHA512 9d06bee9172bc0bfd2d280fd1c27ea712f3258cfbfd2e2aeb734d0a6710998d5deeefc5d6e72251750dd9493d35461511ceaa187a29dea700ca238ff6ac1dbb2 WHIRLPOOL 4fbe3b971ff6fca4349c74ca07ade0406ae70e0d201cb7689e95744a6f39d1bcc010eb426f4e02aa8f692828aa996aa5c7656b8031503b342b9b4a42beeb7827
|
DIST Python-3.6.0.tar.xz 16805836 SHA256 b0c5f904f685e32d9232f7bdcbece9819a892929063b6e385414ad2dd6a23622 SHA512 9d06bee9172bc0bfd2d280fd1c27ea712f3258cfbfd2e2aeb734d0a6710998d5deeefc5d6e72251750dd9493d35461511ceaa187a29dea700ca238ff6ac1dbb2 WHIRLPOOL 4fbe3b971ff6fca4349c74ca07ade0406ae70e0d201cb7689e95744a6f39d1bcc010eb426f4e02aa8f692828aa996aa5c7656b8031503b342b9b4a42beeb7827
|
||||||
DIST python-gentoo-patches-2.7.12-0.tar.xz 13576 SHA256 cd842eec7202df57c153adc1fbb81e70b26ef651f8e9346e065d8577b93f343b SHA512 8bf530fca15c47fa5d9bc958e433b35943a12c98e4172806a45aa60dc85ec92f8ab6ffcd90f752dc5bf8ffc711414894c15820c4b6ef72dbcedc2808119fb1f6 WHIRLPOOL 54b8ca6a4371d460dadccfdffcc096c12930d58714eef95117a658d7a1337ea89c45c69553b5b993017211faaa0f8d670e09a8452e53c0fb176be3e908524ee6
|
DIST python-gentoo-patches-2.7.12-0.tar.xz 13576 SHA256 cd842eec7202df57c153adc1fbb81e70b26ef651f8e9346e065d8577b93f343b SHA512 8bf530fca15c47fa5d9bc958e433b35943a12c98e4172806a45aa60dc85ec92f8ab6ffcd90f752dc5bf8ffc711414894c15820c4b6ef72dbcedc2808119fb1f6 WHIRLPOOL 54b8ca6a4371d460dadccfdffcc096c12930d58714eef95117a658d7a1337ea89c45c69553b5b993017211faaa0f8d670e09a8452e53c0fb176be3e908524ee6
|
||||||
|
DIST python-gentoo-patches-2.7.13-0.tar.xz 13292 SHA256 271835eb36125d09cc5e904ef23a5263acd8e5f513202a8d4f8a9a0f64fc80a8 SHA512 d70f6baba1a465a752c515e33dfdee2a5cc75400fadfb8ea0bd1e82d50089abdf02d7726c697850dc47de2054aa494bbdc08de2673c260b54e609f29dab259ad WHIRLPOOL 6a6d8b099fa814839bf5b3455b3889205c649ef522b35c3a501831d63d0e916d7747b83ac9b8991f8f8c34b328478d84cf7a12a32161ce0fec37204f9c019e2d
|
||||||
DIST python-gentoo-patches-3.4.5-0.tar.xz 12044 SHA256 84ee7630670a1dac4bbbc55fabf5f99b5b29007de4f140ad956e93d2e7aba8fa SHA512 108a4845667ecdf4001fcbeffab0cfbbac87439a449a7351428b0f3e2f159e3848ee0c0dfa45c9fba893b9f9584b33722fc8bb0bd7485a1d0909c3a35ede6ed8 WHIRLPOOL f0248faa0b4ce5679e37381bba90f8a4d361a49db792787bffc06a54a4bc82fea4d53255120f10e6dbf51b99e12417fc1b469be9624e73508fa3a212a38e7352
|
DIST python-gentoo-patches-3.4.5-0.tar.xz 12044 SHA256 84ee7630670a1dac4bbbc55fabf5f99b5b29007de4f140ad956e93d2e7aba8fa SHA512 108a4845667ecdf4001fcbeffab0cfbbac87439a449a7351428b0f3e2f159e3848ee0c0dfa45c9fba893b9f9584b33722fc8bb0bd7485a1d0909c3a35ede6ed8 WHIRLPOOL f0248faa0b4ce5679e37381bba90f8a4d361a49db792787bffc06a54a4bc82fea4d53255120f10e6dbf51b99e12417fc1b469be9624e73508fa3a212a38e7352
|
||||||
|
DIST python-gentoo-patches-3.4.6-0.tar.xz 11728 SHA256 93e7c8487deefc36c612403fb6c82e495c46846a1952f9ed85f82af41840be4a SHA512 41c22dc8f1db8800fc0b97eed2b27bf1873e5de1369bd4aecf7a7a91e609a78e45a4b56fc89d575317f33a7704c0c1cad1494e8a993415a198f256e8338f49ab WHIRLPOOL 851945e7ccea985a88bcbd71bc404bc34c27a0e335386e9ed15fa9876aab3285ff559936fb2dcadf7ac0594a7cb03ac3a9e4135b67b350c5fdf33e9a44ca0654
|
||||||
DIST python-gentoo-patches-3.5.2-0.tar.xz 12008 SHA256 eb898fb448bd40f086ae2910e94c608faa932eb377fe40bd34f4390b4c37aac1 SHA512 e2ef1b8f10f9ea849bf52a0be65d48f7cfecf07bdf151cbbd7e3a1c9428a8d96e901650496c4ae7fd0093af8cc90de8df674dc1a4c66ad21916a4ee45a81efc8 WHIRLPOOL 66b99c7c50e3eaca783f773349b3e8a357f706a7da6a66bd2e0a53946bc81d965ac99d8fd4c50ba7e42052aa84508c8aede5eacedbb95f040a48cf1a5de6b6b0
|
DIST python-gentoo-patches-3.5.2-0.tar.xz 12008 SHA256 eb898fb448bd40f086ae2910e94c608faa932eb377fe40bd34f4390b4c37aac1 SHA512 e2ef1b8f10f9ea849bf52a0be65d48f7cfecf07bdf151cbbd7e3a1c9428a8d96e901650496c4ae7fd0093af8cc90de8df674dc1a4c66ad21916a4ee45a81efc8 WHIRLPOOL 66b99c7c50e3eaca783f773349b3e8a357f706a7da6a66bd2e0a53946bc81d965ac99d8fd4c50ba7e42052aa84508c8aede5eacedbb95f040a48cf1a5de6b6b0
|
||||||
|
DIST python-gentoo-patches-3.5.3-0.tar.xz 11740 SHA256 34e83921697c31a5470afc09b8601b4f54466ac75b3b8ed3ed71af218af10d1c SHA512 16357e49573ea6abe6f106327c0f733312653c68726c4c3f0d1ec21df6d22bc69e512a28131b3a81eb2261e32376811a839b16604e72c7fb5abb7a692840228d WHIRLPOOL 99d3eb0a132f674b998e467a5d89e73d26cf547613034938ad255ccad9d34852b6b18a3da39659c8164b196788bdc90bf2e8ebc5c8c0c4f6fb6fc45fcdd406f5
|
||||||
DIST python-gentoo-patches-3.6.0-0.tar.xz 10680 SHA256 ecf78d292f2fef1116b41c3884f492d41ea716a14f0a21755ba2f8d76aefe1a7 SHA512 f340643cf338c693ce315fab705ba888040a2989b0887686d43886319419245c24bb46ebb71cea422644f1f3beaf64289b773e72db3377187bf11a83f9313a90 WHIRLPOOL 4a4d12ea0dbb03b5d2730db40b5aebe4c1c937cfe63341c775431dc06a3b60552b9390fdf9b7fff5e50024a93d11b269ef80a95afcf308327943f7003dd4c379
|
DIST python-gentoo-patches-3.6.0-0.tar.xz 10680 SHA256 ecf78d292f2fef1116b41c3884f492d41ea716a14f0a21755ba2f8d76aefe1a7 SHA512 f340643cf338c693ce315fab705ba888040a2989b0887686d43886319419245c24bb46ebb71cea422644f1f3beaf64289b773e72db3377187bf11a83f9313a90 WHIRLPOOL 4a4d12ea0dbb03b5d2730db40b5aebe4c1c937cfe63341c775431dc06a3b60552b9390fdf9b7fff5e50024a93d11b269ef80a95afcf308327943f7003dd4c379
|
||||||
|
@ -0,0 +1,361 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI="5"
|
||||||
|
WANT_LIBTOOL="none"
|
||||||
|
|
||||||
|
inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
|
||||||
|
|
||||||
|
MY_P="Python-${PV}"
|
||||||
|
PATCHSET_VERSION="2.7.13-0"
|
||||||
|
|
||||||
|
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||||
|
HOMEPAGE="http://www.python.org/"
|
||||||
|
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
|
||||||
|
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="PSF-2"
|
||||||
|
SLOT="2.7"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||||
|
IUSE="-berkdb build doc elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
|
||||||
|
|
||||||
|
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||||
|
# If you need to apply a patch which requires python for bootstrapping, please
|
||||||
|
# run the bootstrap code on your dev box and include the results in the
|
||||||
|
# patchset. See bug 447752.
|
||||||
|
|
||||||
|
RDEPEND="app-arch/bzip2:0=
|
||||||
|
>=sys-libs/zlib-1.1.3:0=
|
||||||
|
virtual/libffi
|
||||||
|
virtual/libintl
|
||||||
|
berkdb? ( || (
|
||||||
|
sys-libs/db:5.3
|
||||||
|
sys-libs/db:5.2
|
||||||
|
sys-libs/db:5.1
|
||||||
|
sys-libs/db:5.0
|
||||||
|
sys-libs/db:4.8
|
||||||
|
sys-libs/db:4.7
|
||||||
|
sys-libs/db:4.6
|
||||||
|
sys-libs/db:4.5
|
||||||
|
sys-libs/db:4.4
|
||||||
|
sys-libs/db:4.3
|
||||||
|
sys-libs/db:4.2
|
||||||
|
) )
|
||||||
|
gdbm? ( sys-libs/gdbm:0=[berkdb] )
|
||||||
|
ncurses? (
|
||||||
|
>=sys-libs/ncurses-5.2:0=
|
||||||
|
readline? ( >=sys-libs/readline-4.1:0= )
|
||||||
|
)
|
||||||
|
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||||
|
ssl? (
|
||||||
|
!libressl? ( dev-libs/openssl:0= )
|
||||||
|
libressl? ( dev-libs/libressl:= )
|
||||||
|
)
|
||||||
|
tk? (
|
||||||
|
>=dev-lang/tcl-8.0:0=
|
||||||
|
>=dev-lang/tk-8.0:0=
|
||||||
|
dev-tcltk/blt:0=
|
||||||
|
dev-tcltk/tix
|
||||||
|
)
|
||||||
|
xml? ( >=dev-libs/expat-2.1 )
|
||||||
|
!!<sys-apps/portage-2.1.9"
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
virtual/pkgconfig
|
||||||
|
>=sys-devel/autoconf-2.65
|
||||||
|
!sys-devel/gcc[libffi(-)]"
|
||||||
|
RDEPEND+=" !build? ( app-misc/mime-types )
|
||||||
|
doc? ( dev-python/python-docs:${SLOT} )"
|
||||||
|
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
|
||||||
|
|
||||||
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
if use berkdb; then
|
||||||
|
ewarn "'bsddb' module is out-of-date and no longer maintained inside"
|
||||||
|
ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
|
||||||
|
ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
|
||||||
|
ewarn "is provided by dev-python/bsddb3."
|
||||||
|
else
|
||||||
|
if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
|
||||||
|
ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
|
||||||
|
ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
|
||||||
|
ewarn "You might need to migrate your databases."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||||
|
rm -r Modules/expat || die
|
||||||
|
rm -r Modules/_ctypes/libffi* || die
|
||||||
|
rm -r Modules/zlib || die
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
|
||||||
|
fi
|
||||||
|
|
||||||
|
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
|
||||||
|
|
||||||
|
# Fix for cross-compiling.
|
||||||
|
epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
|
||||||
|
epatch "${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
|
||||||
|
epatch "${FILESDIR}/python-2.7.10-cross-compile-warn-test.patch"
|
||||||
|
epatch "${FILESDIR}/python-2.7.10-system-libffi.patch"
|
||||||
|
|
||||||
|
epatch_user
|
||||||
|
|
||||||
|
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||||
|
Lib/distutils/command/install.py \
|
||||||
|
Lib/distutils/sysconfig.py \
|
||||||
|
Lib/site.py \
|
||||||
|
Lib/sysconfig.py \
|
||||||
|
Lib/test/test_site.py \
|
||||||
|
Makefile.pre.in \
|
||||||
|
Modules/Setup.dist \
|
||||||
|
Modules/getpath.c \
|
||||||
|
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
# dbm module can be linked against berkdb or gdbm.
|
||||||
|
# Defaults to gdbm when both are enabled, #204343.
|
||||||
|
local disable
|
||||||
|
use berkdb || use gdbm || disable+=" dbm"
|
||||||
|
use berkdb || disable+=" _bsddb"
|
||||||
|
use gdbm || disable+=" gdbm"
|
||||||
|
use ncurses || disable+=" _curses _curses_panel"
|
||||||
|
use readline || disable+=" readline"
|
||||||
|
use sqlite || disable+=" _sqlite3"
|
||||||
|
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||||
|
use tk || disable+=" _tkinter"
|
||||||
|
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||||
|
export PYTHON_DISABLE_MODULES="${disable}"
|
||||||
|
|
||||||
|
if ! use xml; then
|
||||||
|
ewarn "You have configured Python without XML support."
|
||||||
|
ewarn "This is NOT a recommended configuration as you"
|
||||||
|
ewarn "may face problems parsing any XML documents."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||||
|
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||||
|
append-flags -fwrapv
|
||||||
|
fi
|
||||||
|
|
||||||
|
filter-flags -malign-double
|
||||||
|
|
||||||
|
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||||
|
if is-flagq -O3; then
|
||||||
|
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||||
|
use hardened && replace-flags -O3 -O2
|
||||||
|
fi
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Force some tests that try to poke fs paths.
|
||||||
|
export ac_cv_file__dev_ptc=no
|
||||||
|
export ac_cv_file__dev_ptmx=yes
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
|
||||||
|
tc-export CXX
|
||||||
|
# The configure script fails to use pkg-config correctly.
|
||||||
|
# http://bugs.python.org/issue15506
|
||||||
|
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
|
||||||
|
|
||||||
|
# Set LDFLAGS so we link modules with -lpython2.7 correctly.
|
||||||
|
# Needed on FreeBSD unless Python 2.7 is already installed.
|
||||||
|
# Please query BSD team before removing this!
|
||||||
|
append-ldflags "-L."
|
||||||
|
|
||||||
|
local dbmliborder
|
||||||
|
if use gdbm; then
|
||||||
|
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||||
|
fi
|
||||||
|
if use berkdb; then
|
||||||
|
dbmliborder+="${dbmliborder:+:}bdb"
|
||||||
|
fi
|
||||||
|
|
||||||
|
BUILD_DIR="${WORKDIR}/${CHOST}"
|
||||||
|
mkdir -p "${BUILD_DIR}" || die
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" OPT="" \
|
||||||
|
econf \
|
||||||
|
--with-fpectl \
|
||||||
|
--enable-shared \
|
||||||
|
$(use_enable ipv6) \
|
||||||
|
$(use_with threads) \
|
||||||
|
$(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2") \
|
||||||
|
--infodir='${prefix}/share/info' \
|
||||||
|
--mandir='${prefix}/share/man' \
|
||||||
|
--with-computed-gotos \
|
||||||
|
--with-dbmliborder="${dbmliborder}" \
|
||||||
|
--with-libc="" \
|
||||||
|
--enable-loadable-sqlite-extensions \
|
||||||
|
--with-system-expat \
|
||||||
|
--with-system-ffi \
|
||||||
|
--without-ensurepip
|
||||||
|
|
||||||
|
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||||
|
eerror "configure has detected that the sem_open function is broken."
|
||||||
|
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||||
|
die "Broken sem_open function (bug 496328)"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
# Avoid invoking pgen for cross-compiles.
|
||||||
|
touch Include/graminit.h Python/graminit.c
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
emake
|
||||||
|
|
||||||
|
# Work around bug 329499. See also bug 413751 and 457194.
|
||||||
|
if has_version dev-libs/libffi[pax_kernel]; then
|
||||||
|
pax-mark E python
|
||||||
|
else
|
||||||
|
pax-mark m python
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
# Tests will not work when cross compiling.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
elog "Disabling tests due to crosscompiling."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
# Skip failing tests.
|
||||||
|
local skipped_tests="distutils gdb"
|
||||||
|
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||||
|
done
|
||||||
|
|
||||||
|
# Rerun failed tests in verbose mode (regrtest -w).
|
||||||
|
emake test EXTRATESTOPTS="-w" < /dev/tty
|
||||||
|
local result="$?"
|
||||||
|
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||||
|
done
|
||||||
|
|
||||||
|
elog "The following tests have been skipped:"
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
elog "test_${test}.py"
|
||||||
|
done
|
||||||
|
|
||||||
|
elog "If you would like to run them, you may:"
|
||||||
|
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
|
||||||
|
elog "and run the tests separately."
|
||||||
|
|
||||||
|
if [[ "${result}" -ne 0 ]]; then
|
||||||
|
die "emake test failed"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
emake DESTDIR="${D}" altinstall
|
||||||
|
|
||||||
|
sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
|
||||||
|
|
||||||
|
# Fix collisions between different slots of Python.
|
||||||
|
mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
|
||||||
|
mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
|
||||||
|
mv "${ED}usr/bin/idle" "${ED}usr/bin/idle${SLOT}"
|
||||||
|
rm -f "${ED}usr/bin/smtpd.py"
|
||||||
|
|
||||||
|
use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py{,c,o},test/test_bsddb*} || die
|
||||||
|
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||||
|
use tk || rm -r "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,lib-tk} || die
|
||||||
|
use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
|
||||||
|
|
||||||
|
use threads || rm -r "${libdir}/multiprocessing" || die
|
||||||
|
use wininst || rm -r "${libdir}/distutils/command/"wininst-*.exe || die
|
||||||
|
|
||||||
|
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
insinto /usr/share/doc/${PF}/examples
|
||||||
|
doins -r "${S}"/Tools
|
||||||
|
fi
|
||||||
|
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||||
|
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||||
|
emake --no-print-directory -s -f - 2>/dev/null)
|
||||||
|
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||||
|
|
||||||
|
newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
|
||||||
|
newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
|
||||||
|
sed \
|
||||||
|
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
|
||||||
|
-e "s:@PYDOC@:pydoc${SLOT}:" \
|
||||||
|
-i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
|
||||||
|
|
||||||
|
# for python-exec
|
||||||
|
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
|
||||||
|
|
||||||
|
# if not using a cross-compiler, use the fresh binary
|
||||||
|
if ! tc-is-cross-compiler; then
|
||||||
|
local -x PYTHON=./python
|
||||||
|
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
|
||||||
|
else
|
||||||
|
vars=( PYTHON "${vars[@]}" )
|
||||||
|
fi
|
||||||
|
|
||||||
|
python_export "python${SLOT}" "${vars[@]}"
|
||||||
|
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||||
|
python_domodule epython.py
|
||||||
|
|
||||||
|
# python-exec wrapping support
|
||||||
|
local pymajor=${SLOT%.*}
|
||||||
|
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
|
||||||
|
# python and pythonX
|
||||||
|
ln -s "../../../bin/python${SLOT}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
|
||||||
|
ln -s "python${pymajor}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python" || die
|
||||||
|
# python-config and pythonX-config
|
||||||
|
ln -s "../../../bin/python${SLOT}-config" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
|
||||||
|
ln -s "python${pymajor}-config" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
|
||||||
|
# 2to3, pydoc, pyvenv
|
||||||
|
ln -s "../../../bin/2to3-${SLOT}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
|
||||||
|
ln -s "../../../bin/pydoc${SLOT}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
|
||||||
|
# idle
|
||||||
|
if use tk; then
|
||||||
|
ln -s "../../../bin/idle${SLOT}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/idle" || die
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
eselect_python_update() {
|
||||||
|
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
|
||||||
|
eselect python update
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
|
||||||
|
eselect python update --python${PV%%.*}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
eselect_python_update
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
eselect_python_update
|
||||||
|
}
|
@ -0,0 +1,357 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI="5"
|
||||||
|
WANT_LIBTOOL="none"
|
||||||
|
|
||||||
|
inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
|
||||||
|
|
||||||
|
MY_P="Python-${PV/_/}"
|
||||||
|
PATCHSET_VERSION="3.4.6-0"
|
||||||
|
|
||||||
|
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||||
|
HOMEPAGE="http://www.python.org/"
|
||||||
|
SRC_URI="http://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
|
||||||
|
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="PSF-2"
|
||||||
|
SLOT="3.4/3.4m"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||||
|
IUSE="build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk wininst +xml"
|
||||||
|
|
||||||
|
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||||
|
# If you need to apply a patch which requires python for bootstrapping, please
|
||||||
|
# run the bootstrap code on your dev box and include the results in the
|
||||||
|
# patchset. See bug 447752.
|
||||||
|
|
||||||
|
RDEPEND="app-arch/bzip2:0=
|
||||||
|
app-arch/xz-utils:0=
|
||||||
|
>=sys-libs/zlib-1.1.3:0=
|
||||||
|
virtual/libffi
|
||||||
|
virtual/libintl
|
||||||
|
gdbm? ( sys-libs/gdbm:0=[berkdb] )
|
||||||
|
ncurses? (
|
||||||
|
>=sys-libs/ncurses-5.2:0=
|
||||||
|
readline? ( >=sys-libs/readline-4.1:0= )
|
||||||
|
)
|
||||||
|
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||||
|
ssl? (
|
||||||
|
!libressl? ( dev-libs/openssl:0= )
|
||||||
|
libressl? ( dev-libs/libressl:= )
|
||||||
|
)
|
||||||
|
tk? (
|
||||||
|
>=dev-lang/tcl-8.0:0=
|
||||||
|
>=dev-lang/tk-8.0:0=
|
||||||
|
dev-tcltk/blt:0=
|
||||||
|
dev-tcltk/tix
|
||||||
|
)
|
||||||
|
xml? ( >=dev-libs/expat-2.1:0= )
|
||||||
|
!!<sys-apps/sandbox-2.6-r1"
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
virtual/pkgconfig
|
||||||
|
>=sys-devel/autoconf-2.65
|
||||||
|
!sys-devel/gcc[libffi(-)]"
|
||||||
|
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||||
|
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
|
||||||
|
|
||||||
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
|
PYVER=${SLOT%/*}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||||
|
rm -fr Modules/expat
|
||||||
|
rm -fr Modules/_ctypes/libffi*
|
||||||
|
rm -fr Modules/zlib
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Invokes BUILDPYTHON, which is built for the host arch
|
||||||
|
local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
|
||||||
|
fi
|
||||||
|
|
||||||
|
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
|
||||||
|
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
|
||||||
|
epatch "${FILESDIR}/${PN}-3.4.5-cross.patch"
|
||||||
|
|
||||||
|
epatch_user
|
||||||
|
|
||||||
|
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||||
|
configure.ac \
|
||||||
|
Lib/distutils/command/install.py \
|
||||||
|
Lib/distutils/sysconfig.py \
|
||||||
|
Lib/site.py \
|
||||||
|
Lib/sysconfig.py \
|
||||||
|
Lib/test/test_site.py \
|
||||||
|
Makefile.pre.in \
|
||||||
|
Modules/Setup.dist \
|
||||||
|
Modules/getpath.c \
|
||||||
|
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
local disable
|
||||||
|
use gdbm || disable+=" gdbm"
|
||||||
|
use ncurses || disable+=" _curses _curses_panel"
|
||||||
|
use readline || disable+=" readline"
|
||||||
|
use sqlite || disable+=" _sqlite3"
|
||||||
|
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||||
|
use tk || disable+=" _tkinter"
|
||||||
|
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||||
|
export PYTHON_DISABLE_MODULES="${disable}"
|
||||||
|
|
||||||
|
if ! use xml; then
|
||||||
|
ewarn "You have configured Python without XML support."
|
||||||
|
ewarn "This is NOT a recommended configuration as you"
|
||||||
|
ewarn "may face problems parsing any XML documents."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||||
|
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||||
|
append-flags -fwrapv
|
||||||
|
fi
|
||||||
|
|
||||||
|
filter-flags -malign-double
|
||||||
|
|
||||||
|
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||||
|
if is-flagq -O3; then
|
||||||
|
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||||
|
use hardened && replace-flags -O3 -O2
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||||
|
tc-export CXX
|
||||||
|
|
||||||
|
# The configure script fails to use pkg-config correctly.
|
||||||
|
# http://bugs.python.org/issue15506
|
||||||
|
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
|
||||||
|
|
||||||
|
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
||||||
|
# Needed on FreeBSD unless Python 3.2 is already installed.
|
||||||
|
# Please query BSD team before removing this!
|
||||||
|
append-ldflags "-L."
|
||||||
|
|
||||||
|
local dbmliborder
|
||||||
|
if use gdbm; then
|
||||||
|
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||||
|
fi
|
||||||
|
|
||||||
|
BUILD_DIR="${WORKDIR}/${CHOST}"
|
||||||
|
mkdir -p "${BUILD_DIR}" || die
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" OPT="" \
|
||||||
|
econf \
|
||||||
|
--with-fpectl \
|
||||||
|
--enable-shared \
|
||||||
|
$(use_enable ipv6) \
|
||||||
|
$(use_with threads) \
|
||||||
|
--infodir='${prefix}/share/info' \
|
||||||
|
--mandir='${prefix}/share/man' \
|
||||||
|
--with-computed-gotos \
|
||||||
|
--with-dbmliborder="${dbmliborder}" \
|
||||||
|
--with-libc="" \
|
||||||
|
--enable-loadable-sqlite-extensions \
|
||||||
|
--with-system-expat \
|
||||||
|
--with-system-ffi \
|
||||||
|
--without-ensurepip
|
||||||
|
|
||||||
|
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||||
|
eerror "configure has detected that the sem_open function is broken."
|
||||||
|
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||||
|
die "Broken sem_open function (bug 496328)"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
# Ensure sed works as expected
|
||||||
|
# https://bugs.gentoo.org/594768
|
||||||
|
local -x LC_ALL=C
|
||||||
|
|
||||||
|
# Avoid invoking pgen for cross-compiles.
|
||||||
|
touch Include/graminit.h Python/graminit.c || die
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||||
|
|
||||||
|
# Work around bug 329499. See also bug 413751 and 457194.
|
||||||
|
if has_version dev-libs/libffi[pax_kernel]; then
|
||||||
|
pax-mark E python
|
||||||
|
else
|
||||||
|
pax-mark m python
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
# Tests will not work when cross compiling.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
elog "Disabling tests due to crosscompiling."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
# Skip failing tests.
|
||||||
|
local skipped_tests="gdb"
|
||||||
|
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||||
|
done
|
||||||
|
|
||||||
|
local -x PYTHONDONTWRITEBYTECODE=
|
||||||
|
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||||
|
local result=$?
|
||||||
|
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||||
|
done
|
||||||
|
|
||||||
|
elog "The following tests have been skipped:"
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
elog "test_${test}.py"
|
||||||
|
done
|
||||||
|
|
||||||
|
elog "If you would like to run them, you may:"
|
||||||
|
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
|
||||||
|
elog "and run the tests separately."
|
||||||
|
|
||||||
|
if [[ ${result} -ne 0 ]]; then
|
||||||
|
die "emake test failed"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
emake DESTDIR="${D}" altinstall
|
||||||
|
|
||||||
|
sed \
|
||||||
|
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||||
|
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||||
|
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||||
|
|
||||||
|
# Fix collisions between different slots of Python.
|
||||||
|
rm -f "${ED}usr/$(get_libdir)/libpython3.so"
|
||||||
|
|
||||||
|
# Cheap hack to get version with ABIFLAGS
|
||||||
|
local abiver=$(cd "${ED}usr/include"; echo python*)
|
||||||
|
if [[ ${abiver} != python${PYVER} ]]; then
|
||||||
|
# Replace python3.X with a symlink to python3.Xm
|
||||||
|
rm "${ED}usr/bin/python${PYVER}" || die
|
||||||
|
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||||
|
# Create python3.X-config symlink
|
||||||
|
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||||
|
# Create python-3.5m.pc symlink
|
||||||
|
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||||
|
fi
|
||||||
|
|
||||||
|
use elibc_uclibc && rm -fr "${libdir}/test"
|
||||||
|
use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
|
||||||
|
use tk || rm -fr "${ED}usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
|
||||||
|
|
||||||
|
use threads || rm -fr "${libdir}/multiprocessing"
|
||||||
|
use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
|
||||||
|
|
||||||
|
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
insinto /usr/share/doc/${PF}/examples
|
||||||
|
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
|
||||||
|
doins -r "${S}"/Tools
|
||||||
|
fi
|
||||||
|
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||||
|
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||||
|
emake --no-print-directory -s -f - 2>/dev/null)
|
||||||
|
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||||
|
|
||||||
|
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||||
|
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||||
|
sed \
|
||||||
|
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||||
|
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||||
|
-i "${ED}etc/conf.d/pydoc-${PYVER}" "${ED}etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||||
|
|
||||||
|
# for python-exec
|
||||||
|
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
|
||||||
|
|
||||||
|
# if not using a cross-compiler, use the fresh binary
|
||||||
|
if ! tc-is-cross-compiler; then
|
||||||
|
local -x PYTHON=./python
|
||||||
|
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
|
||||||
|
else
|
||||||
|
vars=( PYTHON "${vars[@]}" )
|
||||||
|
fi
|
||||||
|
|
||||||
|
python_export "python${PYVER}" "${vars[@]}"
|
||||||
|
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||||
|
python_domodule epython.py
|
||||||
|
|
||||||
|
# python-exec wrapping support
|
||||||
|
local pymajor=${PYVER%.*}
|
||||||
|
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
|
||||||
|
# python and pythonX
|
||||||
|
ln -s "../../../bin/${abiver}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
|
||||||
|
ln -s "python${pymajor}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python" || die
|
||||||
|
# python-config and pythonX-config
|
||||||
|
# note: we need to create a wrapper rather than symlinking it due
|
||||||
|
# to some random dirname(argv[0]) magic performed by python-config
|
||||||
|
cat > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
|
||||||
|
#!/bin/sh
|
||||||
|
exec "${abiver}-config" "\${@}"
|
||||||
|
EOF
|
||||||
|
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
|
||||||
|
ln -s "python${pymajor}-config" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
|
||||||
|
# 2to3, pydoc, pyvenv
|
||||||
|
ln -s "../../../bin/2to3-${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
|
||||||
|
ln -s "../../../bin/pydoc${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
|
||||||
|
ln -s "../../../bin/pyvenv-${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
|
||||||
|
# idle
|
||||||
|
if use tk; then
|
||||||
|
ln -s "../../../bin/idle${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/idle" || die
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
|
||||||
|
python_updater_warning="1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
eselect_python_update() {
|
||||||
|
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
|
||||||
|
eselect python update
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
|
||||||
|
eselect python update --python${PV%%.*}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
eselect_python_update
|
||||||
|
|
||||||
|
if [[ "${python_updater_warning}" == "1" ]]; then
|
||||||
|
ewarn "You have just upgraded from an older version of Python."
|
||||||
|
ewarn
|
||||||
|
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
eselect_python_update
|
||||||
|
}
|
@ -0,0 +1,363 @@
|
|||||||
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI="5"
|
||||||
|
WANT_LIBTOOL="none"
|
||||||
|
|
||||||
|
inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
|
||||||
|
|
||||||
|
MY_P="Python-${PV/_/}"
|
||||||
|
PATCHSET_VERSION="3.5.3-0"
|
||||||
|
|
||||||
|
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||||
|
HOMEPAGE="http://www.python.org/"
|
||||||
|
SRC_URI="http://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
|
||||||
|
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="PSF-2"
|
||||||
|
SLOT="3.5/3.5m"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||||
|
IUSE="build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk wininst +xml"
|
||||||
|
|
||||||
|
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||||
|
# If you need to apply a patch which requires python for bootstrapping, please
|
||||||
|
# run the bootstrap code on your dev box and include the results in the
|
||||||
|
# patchset. See bug 447752.
|
||||||
|
|
||||||
|
RDEPEND="app-arch/bzip2:0=
|
||||||
|
app-arch/xz-utils:0=
|
||||||
|
>=sys-libs/zlib-1.1.3:0=
|
||||||
|
virtual/libffi
|
||||||
|
virtual/libintl
|
||||||
|
gdbm? ( sys-libs/gdbm:0=[berkdb] )
|
||||||
|
ncurses? (
|
||||||
|
>=sys-libs/ncurses-5.2:0=
|
||||||
|
readline? ( >=sys-libs/readline-4.1:0= )
|
||||||
|
)
|
||||||
|
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||||
|
ssl? (
|
||||||
|
!libressl? ( dev-libs/openssl:0= )
|
||||||
|
libressl? ( dev-libs/libressl:= )
|
||||||
|
)
|
||||||
|
tk? (
|
||||||
|
>=dev-lang/tcl-8.0:0=
|
||||||
|
>=dev-lang/tk-8.0:0=
|
||||||
|
dev-tcltk/blt:0=
|
||||||
|
dev-tcltk/tix
|
||||||
|
)
|
||||||
|
xml? ( >=dev-libs/expat-2.1:0= )
|
||||||
|
!!<sys-apps/sandbox-2.6-r1"
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
virtual/pkgconfig
|
||||||
|
!sys-devel/gcc[libffi(-)]"
|
||||||
|
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||||
|
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
|
||||||
|
|
||||||
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
|
PYVER=${SLOT%/*}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||||
|
rm -fr Modules/expat
|
||||||
|
rm -fr Modules/_ctypes/libffi*
|
||||||
|
rm -fr Modules/zlib
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Invokes BUILDPYTHON, which is built for the host arch
|
||||||
|
local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
|
||||||
|
fi
|
||||||
|
|
||||||
|
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
|
||||||
|
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
|
||||||
|
epatch "${FILESDIR}/${PN}-3.5-distutils-OO-build.patch"
|
||||||
|
|
||||||
|
epatch_user
|
||||||
|
|
||||||
|
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||||
|
configure.ac \
|
||||||
|
Lib/distutils/command/install.py \
|
||||||
|
Lib/distutils/sysconfig.py \
|
||||||
|
Lib/site.py \
|
||||||
|
Lib/sysconfig.py \
|
||||||
|
Lib/test/test_site.py \
|
||||||
|
Makefile.pre.in \
|
||||||
|
Modules/getpath.c \
|
||||||
|
Modules/Setup.dist \
|
||||||
|
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
local disable
|
||||||
|
use gdbm || disable+=" gdbm"
|
||||||
|
use ncurses || disable+=" _curses _curses_panel"
|
||||||
|
use readline || disable+=" readline"
|
||||||
|
use sqlite || disable+=" _sqlite3"
|
||||||
|
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||||
|
use tk || disable+=" _tkinter"
|
||||||
|
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||||
|
export PYTHON_DISABLE_MODULES="${disable}"
|
||||||
|
|
||||||
|
if ! use xml; then
|
||||||
|
ewarn "You have configured Python without XML support."
|
||||||
|
ewarn "This is NOT a recommended configuration as you"
|
||||||
|
ewarn "may face problems parsing any XML documents."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||||
|
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||||
|
append-flags -fwrapv
|
||||||
|
fi
|
||||||
|
|
||||||
|
filter-flags -malign-double
|
||||||
|
|
||||||
|
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||||
|
if is-flagq -O3; then
|
||||||
|
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||||
|
use hardened && replace-flags -O3 -O2
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||||
|
tc-export CXX
|
||||||
|
|
||||||
|
# The configure script fails to use pkg-config correctly.
|
||||||
|
# http://bugs.python.org/issue15506
|
||||||
|
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
|
||||||
|
|
||||||
|
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
||||||
|
# Needed on FreeBSD unless Python 3.2 is already installed.
|
||||||
|
# Please query BSD team before removing this!
|
||||||
|
append-ldflags "-L."
|
||||||
|
|
||||||
|
local dbmliborder
|
||||||
|
if use gdbm; then
|
||||||
|
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||||
|
fi
|
||||||
|
|
||||||
|
BUILD_DIR="${WORKDIR}/${CHOST}"
|
||||||
|
mkdir -p "${BUILD_DIR}" || die
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
local myeconfargs=(
|
||||||
|
--with-fpectl
|
||||||
|
--enable-shared
|
||||||
|
$(use_enable ipv6)
|
||||||
|
$(use_with threads)
|
||||||
|
--infodir='${prefix}/share/info'
|
||||||
|
--mandir='${prefix}/share/man'
|
||||||
|
--with-computed-gotos
|
||||||
|
--with-dbmliborder="${dbmliborder}"
|
||||||
|
--with-libc=
|
||||||
|
--enable-loadable-sqlite-extensions
|
||||||
|
--without-ensurepip
|
||||||
|
--with-system-expat
|
||||||
|
--with-system-ffi
|
||||||
|
)
|
||||||
|
|
||||||
|
ECONF_SOURCE="${S}" OPT="" econf "${myeconfargs[@]}"
|
||||||
|
|
||||||
|
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||||
|
eerror "configure has detected that the sem_open function is broken."
|
||||||
|
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||||
|
die "Broken sem_open function (bug 496328)"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
# Ensure sed works as expected
|
||||||
|
# https://bugs.gentoo.org/594768
|
||||||
|
local -x LC_ALL=C
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||||
|
|
||||||
|
# Work around bug 329499. See also bug 413751 and 457194.
|
||||||
|
if has_version dev-libs/libffi[pax_kernel]; then
|
||||||
|
pax-mark E python
|
||||||
|
else
|
||||||
|
pax-mark m python
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
# Tests will not work when cross compiling.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
elog "Disabling tests due to crosscompiling."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
# Skip failing tests.
|
||||||
|
local skipped_tests="gdb"
|
||||||
|
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||||
|
done
|
||||||
|
|
||||||
|
local -x PYTHONDONTWRITEBYTECODE=
|
||||||
|
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||||
|
local result=$?
|
||||||
|
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||||
|
done
|
||||||
|
|
||||||
|
elog "The following tests have been skipped:"
|
||||||
|
for test in ${skipped_tests}; do
|
||||||
|
elog "test_${test}.py"
|
||||||
|
done
|
||||||
|
|
||||||
|
elog "If you would like to run them, you may:"
|
||||||
|
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
|
||||||
|
elog "and run the tests separately."
|
||||||
|
|
||||||
|
if [[ ${result} -ne 0 ]]; then
|
||||||
|
die "emake test failed"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}" || die
|
||||||
|
|
||||||
|
emake DESTDIR="${D}" altinstall
|
||||||
|
|
||||||
|
sed \
|
||||||
|
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||||
|
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||||
|
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||||
|
|
||||||
|
# Fix collisions between different slots of Python.
|
||||||
|
rm -f "${ED}usr/$(get_libdir)/libpython3.so"
|
||||||
|
|
||||||
|
# Cheap hack to get version with ABIFLAGS
|
||||||
|
local abiver=$(cd "${ED}usr/include"; echo python*)
|
||||||
|
if [[ ${abiver} != python${PYVER} ]]; then
|
||||||
|
# Replace python3.X with a symlink to python3.Xm
|
||||||
|
rm "${ED}usr/bin/python${PYVER}" || die
|
||||||
|
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||||
|
# Create python3.X-config symlink
|
||||||
|
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||||
|
# Create python-3.5m.pc symlink
|
||||||
|
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# python seems to get rebuilt in src_install (bug 569908)
|
||||||
|
# Work around it for now.
|
||||||
|
if has_version dev-libs/libffi[pax_kernel]; then
|
||||||
|
pax-mark E "${ED}usr/bin/${abiver}"
|
||||||
|
else
|
||||||
|
pax-mark m "${ED}usr/bin/${abiver}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
use elibc_uclibc && rm -fr "${libdir}/test"
|
||||||
|
use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
|
||||||
|
use tk || rm -fr "${ED}usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
|
||||||
|
|
||||||
|
use threads || rm -fr "${libdir}/multiprocessing"
|
||||||
|
use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
|
||||||
|
|
||||||
|
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
|
||||||
|
|
||||||
|
if use examples; then
|
||||||
|
insinto /usr/share/doc/${PF}/examples
|
||||||
|
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
|
||||||
|
doins -r "${S}"/Tools
|
||||||
|
fi
|
||||||
|
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||||
|
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||||
|
emake --no-print-directory -s -f - 2>/dev/null)
|
||||||
|
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||||
|
|
||||||
|
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||||
|
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||||
|
sed \
|
||||||
|
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||||
|
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||||
|
-i "${ED}etc/conf.d/pydoc-${PYVER}" "${ED}etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||||
|
|
||||||
|
# for python-exec
|
||||||
|
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
|
||||||
|
|
||||||
|
# if not using a cross-compiler, use the fresh binary
|
||||||
|
if ! tc-is-cross-compiler; then
|
||||||
|
local -x PYTHON=./python
|
||||||
|
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
|
||||||
|
else
|
||||||
|
vars=( PYTHON "${vars[@]}" )
|
||||||
|
fi
|
||||||
|
|
||||||
|
python_export "python${PYVER}" "${vars[@]}"
|
||||||
|
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||||
|
python_domodule epython.py
|
||||||
|
|
||||||
|
# python-exec wrapping support
|
||||||
|
local pymajor=${PYVER%.*}
|
||||||
|
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
|
||||||
|
# python and pythonX
|
||||||
|
ln -s "../../../bin/${abiver}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
|
||||||
|
ln -s "python${pymajor}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python" || die
|
||||||
|
# python-config and pythonX-config
|
||||||
|
# note: we need to create a wrapper rather than symlinking it due
|
||||||
|
# to some random dirname(argv[0]) magic performed by python-config
|
||||||
|
cat > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
|
||||||
|
#!/bin/sh
|
||||||
|
exec "${abiver}-config" "\${@}"
|
||||||
|
EOF
|
||||||
|
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
|
||||||
|
ln -s "python${pymajor}-config" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
|
||||||
|
# 2to3, pydoc, pyvenv
|
||||||
|
ln -s "../../../bin/2to3-${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
|
||||||
|
ln -s "../../../bin/pydoc${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
|
||||||
|
ln -s "../../../bin/pyvenv-${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
|
||||||
|
# idle
|
||||||
|
if use tk; then
|
||||||
|
ln -s "../../../bin/idle${PYVER}" \
|
||||||
|
"${D}${PYTHON_SCRIPTDIR}/idle" || die
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
|
||||||
|
python_updater_warning="1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
eselect_python_update() {
|
||||||
|
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
|
||||||
|
eselect python update
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
|
||||||
|
eselect python update --python${PV%%.*}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
eselect_python_update
|
||||||
|
|
||||||
|
if [[ "${python_updater_warning}" == "1" ]]; then
|
||||||
|
ewarn "You have just upgraded from an older version of Python."
|
||||||
|
ewarn
|
||||||
|
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
eselect_python_update
|
||||||
|
}
|
@ -1,85 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python2_7 )
|
|
||||||
|
|
||||||
inherit eutils multilib autotools java-pkg-opt-2 python-single-r1
|
|
||||||
|
|
||||||
DESCRIPTION="general-purpose cryptography library"
|
|
||||||
HOMEPAGE="https://sourceforge.net/projects/beecrypt/"
|
|
||||||
SRC_URI="mirror://sourceforge/beecrypt/${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2 LGPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="alpha amd64 arm hppa ~ia64 ppc ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos"
|
|
||||||
IUSE="+threads java cxx python static-libs doc"
|
|
||||||
|
|
||||||
COMMONDEPEND="!<app-arch/rpm-4.2.1
|
|
||||||
cxx? ( >=dev-libs/icu-2.8:= )
|
|
||||||
python? ( ${PYTHON_DEPS} )"
|
|
||||||
|
|
||||||
DEPEND="${COMMONDEPEND}
|
|
||||||
java? ( >=virtual/jdk-1.4 )
|
|
||||||
doc? ( app-doc/doxygen
|
|
||||||
virtual/latex-base
|
|
||||||
dev-texlive/texlive-fontsextra
|
|
||||||
)"
|
|
||||||
RDEPEND="${COMMONDEPEND}
|
|
||||||
java? ( >=virtual/jre-1.4 )"
|
|
||||||
|
|
||||||
DOCS="BUGS README BENCHMARKS NEWS"
|
|
||||||
|
|
||||||
REQUIRED_USE="cxx? ( threads )
|
|
||||||
python? ( ${PYTHON_REQUIRED_USE} )"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
use python && python-single-r1_pkg_setup
|
|
||||||
use java && java-pkg-opt-2_pkg_setup
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
java-pkg-opt-2_src_prepare
|
|
||||||
|
|
||||||
epatch "${FILESDIR}"/${P}-build-system.patch
|
|
||||||
epatch "${FILESDIR}"/${P}-gcc-4.7.patch
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
# cpluscplus needs threads support
|
|
||||||
econf \
|
|
||||||
--disable-expert-mode \
|
|
||||||
$(use_enable static-libs static) \
|
|
||||||
$(use_enable threads) \
|
|
||||||
$(use_with python python "${PYTHON}") \
|
|
||||||
$(use_with cxx cplusplus) \
|
|
||||||
$(use_with java)
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
default
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
cd include/beecrypt || die
|
|
||||||
doxygen || die "doxygen failed"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_test() {
|
|
||||||
export BEECRYPT_CONF_FILE="${T}/beecrypt-test.conf"
|
|
||||||
echo "provider.1=${S}/c++/provider/.libs/base.so" > "${BEECRYPT_CONF_FILE}"
|
|
||||||
emake check
|
|
||||||
emake bench
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
default
|
|
||||||
use python && rm -f "${D%/}$(python_get_sitedir)"/_bc.*a
|
|
||||||
|
|
||||||
use static-libs || find "${ED}" -name '*.la' -delete
|
|
||||||
|
|
||||||
use doc && dohtml -r docs/html/.
|
|
||||||
}
|
|
@ -1,4 +1,2 @@
|
|||||||
DIST beignet-1.1.2-source.tar.gz 948241 SHA256 6a8d875afbb5e3c4fc57da1ea80f79abadd9136bfd87ab1f83c02784659f1d96 SHA512 25b7118976c385ad3b9db01afd3c9494ff9d050d44ee4266042abb4215747d8bb5086c06697f754956f562ea2b6e5ec51d51bbd651e8cd7cd0eb14eb8c83fbd4 WHIRLPOOL c3bfb7f4fa3c97bbd202ace868a08dce48753cac547b075e4c30cfff21cffcc5520ef4ef77b4e15fa8574a798f41a920e44503a160a1888e9ee4f2a737b37e82
|
|
||||||
DIST beignet-1.2.0-source.tar.gz 1076674 SHA256 fc7af19efb7596b04510d26c558a576eba3e95e1ef86fd6951213c6a4bf58bff SHA512 f6c0de7d6a301352125d53c843d8c4a9728526b06b215093424720e7c17eb99f8cfc4b70c61e035d5cb36ca7666c6e772fe0d7818d91421104fa1ed350d637f1 WHIRLPOOL 9ac0195b16ff0ed186dbc5e0bfb6ee3027d0426d7e2401238b69b934a010d365eb6941cd80e3650e600cbcac8d31f819e2adb67452394b07a903aad72c1e11d7
|
|
||||||
DIST beignet-1.2.1-source.tar.gz 1080590 SHA256 b74eb03534a12b86a896cdbd8209b072c8a38e7af456195793a498428a7ac81f SHA512 f0d0d0590be1624928d9ee1a0666f49d908eff1ee9c1a7a28c4e680523419e544f607899bcfdae7f4ce5d32d411739afb481c0c22383db4a7381ccc71326e7f2 WHIRLPOOL 74bb72220e865406100a232fd8755b37746acf3616adbc7c66389a7a7ef3d7ca959ea1234d167091161019c1c3fc0fb9b877fc70af695bd2d2bb232c83725322
|
DIST beignet-1.2.1-source.tar.gz 1080590 SHA256 b74eb03534a12b86a896cdbd8209b072c8a38e7af456195793a498428a7ac81f SHA512 f0d0d0590be1624928d9ee1a0666f49d908eff1ee9c1a7a28c4e680523419e544f607899bcfdae7f4ce5d32d411739afb481c0c22383db4a7381ccc71326e7f2 WHIRLPOOL 74bb72220e865406100a232fd8755b37746acf3616adbc7c66389a7a7ef3d7ca959ea1234d167091161019c1c3fc0fb9b877fc70af695bd2d2bb232c83725322
|
||||||
DIST beignet-1.3.0-source.tar.gz 1133643 SHA256 63d98b4fe8fba3dbc0299d29fef84560625e5ac51b16b8fed453021d4afb5cd5 SHA512 7eb3c8bca484462787a6b4d360059b63608305b171e33078f1b65dcbcbf6831bcca95e762af3f4f0b9c99449c7d607e63ea138149b9f3a854d7017df927aa7ee WHIRLPOOL cbaa92f67a5f53b3d3243dd08c9a680c734b732601667a40ba147023fa96c0b4f78794f76011ab172c66265ad4bf0eddd5b6b301fc0a67790dc3d30c23d7ec83
|
DIST beignet-1.3.0-source.tar.gz 1133643 SHA256 63d98b4fe8fba3dbc0299d29fef84560625e5ac51b16b8fed453021d4afb5cd5 SHA512 7eb3c8bca484462787a6b4d360059b63608305b171e33078f1b65dcbcbf6831bcca95e762af3f4f0b9c99449c7d607e63ea138149b9f3a854d7017df927aa7ee WHIRLPOOL cbaa92f67a5f53b3d3243dd08c9a680c734b732601667a40ba147023fa96c0b4f78794f76011ab172c66265ad4bf0eddd5b6b301fc0a67790dc3d30c23d7ec83
|
||||||
|
@ -1,97 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python2_7 )
|
|
||||||
CMAKE_BUILD_TYPE="Release"
|
|
||||||
|
|
||||||
inherit python-any-r1 cmake-multilib toolchain-funcs
|
|
||||||
|
|
||||||
DESCRIPTION="OpenCL implementation for Intel GPUs"
|
|
||||||
HOMEPAGE="https://01.org/beignet"
|
|
||||||
|
|
||||||
LICENSE="LGPL-2.1+"
|
|
||||||
SLOT="0"
|
|
||||||
|
|
||||||
if [[ "${PV}" == "9999" ]]; then
|
|
||||||
inherit git-r3
|
|
||||||
EGIT_REPO_URI="git://anongit.freedesktop.org/beignet"
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
KEYWORDS="~amd64"
|
|
||||||
SRC_URI="https://01.org/sites/default/files/${P}-source.tar.gz"
|
|
||||||
S=${WORKDIR}/Beignet-${PV}-Source
|
|
||||||
fi
|
|
||||||
|
|
||||||
COMMON="${PYTHON_DEPS}
|
|
||||||
media-libs/mesa
|
|
||||||
sys-devel/clang
|
|
||||||
>=sys-devel/llvm-3.5
|
|
||||||
<sys-devel/llvm-3.8
|
|
||||||
<x11-libs/libdrm-2.4.71[video_cards_intel]
|
|
||||||
x11-libs/libXext
|
|
||||||
x11-libs/libXfixes"
|
|
||||||
RDEPEND="${COMMON}
|
|
||||||
app-eselect/eselect-opencl"
|
|
||||||
DEPEND="${COMMON}
|
|
||||||
virtual/pkgconfig"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}"/no-debian-multiarch.patch
|
|
||||||
"${FILESDIR}"/no-hardcoded-cflags.patch
|
|
||||||
"${FILESDIR}"/llvm-terminfo.patch
|
|
||||||
"${FILESDIR}"/llvm-empty-system-libs.patch
|
|
||||||
)
|
|
||||||
|
|
||||||
DOCS=(
|
|
||||||
docs/.
|
|
||||||
)
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if [[ ${MERGE_TYPE} != "binary" ]]; then
|
|
||||||
if tc-is-gcc; then
|
|
||||||
if [[ $(gcc-major-version) -eq 4 ]] && [[ $(gcc-minor-version) -lt 6 ]]; then
|
|
||||||
eerror "Compilation with gcc older than 4.6 is not supported"
|
|
||||||
die "Too old gcc found."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
python_setup
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
cmake-utils_src_prepare
|
|
||||||
# We cannot run tests because they require permissions to access
|
|
||||||
# the hardware, and building them is very time-consuming.
|
|
||||||
cmake_comment_add_subdirectory utests
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}"
|
|
||||||
|
|
||||||
local mycmakeargs=(
|
|
||||||
-DCMAKE_INSTALL_PREFIX="${VENDOR_DIR}"
|
|
||||||
)
|
|
||||||
|
|
||||||
cmake-utils_src_configure
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install() {
|
|
||||||
VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}"
|
|
||||||
|
|
||||||
cmake-utils_src_install
|
|
||||||
|
|
||||||
insinto /etc/OpenCL/vendors/
|
|
||||||
echo "${VENDOR_DIR}/lib/${PN}/libcl.so" > "${PN}-${ABI}.icd" || die "Failed to generate ICD file"
|
|
||||||
doins "${PN}-${ABI}.icd"
|
|
||||||
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so.1
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so.1
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so
|
|
||||||
}
|
|
@ -1,101 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python2_7 )
|
|
||||||
CMAKE_BUILD_TYPE="Release"
|
|
||||||
|
|
||||||
inherit python-any-r1 cmake-multilib flag-o-matic toolchain-funcs
|
|
||||||
|
|
||||||
DESCRIPTION="OpenCL implementation for Intel GPUs"
|
|
||||||
HOMEPAGE="https://01.org/beignet"
|
|
||||||
|
|
||||||
LICENSE="LGPL-2.1+"
|
|
||||||
SLOT="0"
|
|
||||||
|
|
||||||
if [[ "${PV}" == "9999" ]]; then
|
|
||||||
inherit git-r3
|
|
||||||
EGIT_REPO_URI="git://anongit.freedesktop.org/beignet"
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
KEYWORDS="~amd64"
|
|
||||||
SRC_URI="https://01.org/sites/default/files/${P}-source.tar.gz"
|
|
||||||
S=${WORKDIR}/Beignet-${PV}-Source
|
|
||||||
fi
|
|
||||||
|
|
||||||
COMMON="${PYTHON_DEPS}
|
|
||||||
media-libs/mesa
|
|
||||||
sys-devel/clang
|
|
||||||
>=sys-devel/llvm-3.5
|
|
||||||
<sys-devel/llvm-3.9
|
|
||||||
>=x11-libs/libdrm-2.4.70[video_cards_intel]
|
|
||||||
x11-libs/libXext
|
|
||||||
x11-libs/libXfixes"
|
|
||||||
RDEPEND="${COMMON}
|
|
||||||
app-eselect/eselect-opencl"
|
|
||||||
DEPEND="${COMMON}
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
virtual/pkgconfig"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}"/no-debian-multiarch.patch
|
|
||||||
"${FILESDIR}"/${P}_no-hardcoded-cflags.patch
|
|
||||||
"${FILESDIR}"/llvm-terminfo.patch
|
|
||||||
"${FILESDIR}"/${P}-drm_intel_get_pooled_eu.patch
|
|
||||||
)
|
|
||||||
|
|
||||||
DOCS=(
|
|
||||||
docs/.
|
|
||||||
)
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if [[ ${MERGE_TYPE} != "binary" ]]; then
|
|
||||||
if tc-is-gcc; then
|
|
||||||
if [[ $(gcc-major-version) -eq 4 ]] && [[ $(gcc-minor-version) -lt 6 ]]; then
|
|
||||||
eerror "Compilation with gcc older than 4.6 is not supported"
|
|
||||||
die "Too old gcc found."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
python_setup
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# See Bug #593968
|
|
||||||
append-flags -fPIC
|
|
||||||
|
|
||||||
cmake-utils_src_prepare
|
|
||||||
# We cannot run tests because they require permissions to access
|
|
||||||
# the hardware, and building them is very time-consuming.
|
|
||||||
cmake_comment_add_subdirectory utests
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}"
|
|
||||||
|
|
||||||
local mycmakeargs=(
|
|
||||||
-DCMAKE_INSTALL_PREFIX="${VENDOR_DIR}"
|
|
||||||
)
|
|
||||||
|
|
||||||
cmake-utils_src_configure
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install() {
|
|
||||||
VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}"
|
|
||||||
|
|
||||||
cmake-utils_src_install
|
|
||||||
|
|
||||||
insinto /etc/OpenCL/vendors/
|
|
||||||
echo "${VENDOR_DIR}/lib/${PN}/libcl.so" > "${PN}-${ABI}.icd" || die "Failed to generate ICD file"
|
|
||||||
doins "${PN}-${ABI}.icd"
|
|
||||||
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so.1
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so.1
|
|
||||||
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so
|
|
||||||
}
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue