Sync with portage [Tue Feb 21 09:06:33 MSK 2017].

mhiretskiy 781
root 7 years ago
parent 7069afd658
commit 7249bf6616

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -31,7 +31,7 @@ RDEPEND="
media-libs/alsa-lib
x11-libs/libX11
x11-libs/libXtst
x11-libs/qwt:6
x11-libs/qwt:6[qt4(+)]
libsamplerate? ( media-libs/libsamplerate )
nls? (
kde-apps/kde4-l10n

@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz"
LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-3.0 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc emacs vim-syntax"
RDEPEND="sys-apps/sed

@ -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

@ -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.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
}

@ -29,7 +29,6 @@ RDEPEND="
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtwidgets:5
net-libs/libmicrohttpd
sys-libs/zlib
autotype? (
dev-qt/qtx11extras:5

@ -14,7 +14,7 @@ if [[ "${PV}" == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/gentoo-perl/perl-cleaner.git"
else
SRC_URI="mirror://gentoo/${P}.tar.bz2 https://dev.gentoo.org/~dilfridge/distfiles/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
LICENSE="GPL-2"

@ -12,7 +12,7 @@ SRC_URI="http://kassiopeia.juls.savba.sk/~garabik/software/pydf/${PN}_${PV}.tar.
LICENSE="public-domain"
SLOT="0"
KEYWORDS="amd64 ~arm ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux"
KEYWORDS="amd64 arm ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

@ -14,7 +14,7 @@ SRC_URI="mirror://gnu/gzip/${P}.tar.xz
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="pic static"
PATCHES=(

@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/tar/${P}.tar.bz2
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="acl elibc_glibc minimal nls selinux static userland_GNU xattr"
RDEPEND="acl? ( virtual/acl )

@ -17,7 +17,7 @@ if [[ ${PV} == "9999" ]] ; then
else
MY_P="${PN/-utils}-${PV/_}"
SRC_URI="http://tukaani.org/xz/${MY_P}.tar.gz"
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
S=${WORKDIR}/${MY_P}
EXTRA_DEPEND=
fi

@ -1,3 +1,4 @@
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.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[@]}"
}

@ -10,10 +10,10 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/doxygen/doxygen.git"
SRC_URI=""
KEYWORDS="alpha hppa ia64 sparc"
KEYWORDS="alpha arm hppa ia64 sparc"
else
SRC_URI="http://ftp.stack.nl/pub/users/dimitri/${P}.src.tar.gz"
KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
fi
SRC_URI+=" https://dev.gentoo.org/~xarthisius/distfiles/doxywizard.png"

@ -2,6 +2,7 @@ DIST emacs-18.59-linux22x-elf-glibc21.diff.gz 15671 SHA256 fb810d893938883d50a3a
DIST emacs-18.59-patches-9.tar.xz 21380 SHA256 69411c57b20850e8aab1e20614437f9a836c2ddf47c46a833d0262c138fa3270 SHA512 595a4a7a4052c3b3325e4d4952eed24c98d3dd62b7ce89bd149f046552e2dd67ec3e720b7559fbc086b06a667c992bccc60201ef53b263dbd0fc96cbcdceee38 WHIRLPOOL 23f803d940c35fe9519fe7169e6bca7012c2d2db2246dec121fba37e8dbf39f411a9e579a9cbd4193562da72b9ac226286ad687877ccadd7cb78ea7eb615ab3f
DIST emacs-18.59.tar.gz 2962652 SHA256 1e27e33f91984a91e9b4c1f21433f931aba03670960ecc147bb6d7b0de0f051e SHA512 03ce565e346e89b7aacb1852f4783e8907f394de7da0c543b475cb038eb89b87f980d0f7ca1841b1d2108b20f211e95113c7214e4a33e5767a1827ff43173f33 WHIRLPOOL 5e98e71518f665e2a8278afe54e0ace6d7fdd9df23ff0a3354ffc1d5cc25cd21b0dd4d82766fcb436d4f24e9291c933295e956e1ffea43cfeedf915175763be6
DIST emacs-23.4-patches-19.tar.xz 17684 SHA256 078f5e103af9b9950afefcb8575eefd7b07eb0a241ab67ddb3b8b6d31f657abb SHA512 118d58cd5c8a74b39642bf45920fed25687af2e4a076affe985bf359862950eeba4f2ca99c6482c17c311466fbfaab3f4d583466821da4917fae9bec6e95940a WHIRLPOOL f6fe96f5cb0c2de2a48e6eda2cd26c9c724cd2da661ef4d3e4e4dd14382299615aac4b95bd4e7a21caae74b7630a70d160d65e89f6ac5fa91ad8d9bedaddded4
DIST emacs-23.4-patches-20.tar.xz 18544 SHA256 3ea6d9211b03ee5566674bf1ae3d4032c0921234c1612af66407e880f7e52749 SHA512 cf98090327a1963625b91149d8ff66e9ec4dc8c0bb1054eee138429b5c0d39c2a4662ae5425d7f06e7e69a17d28353f163ca38f6fe786d10def8e143f8a6b1d6 WHIRLPOOL ac3283271d71dc43595fc95dd8930e5888ef7d22cbd19c4701206ebc5aaac8178f462b789a058bb3ae6c9a17c63c0f2a16185708c4517566de50fc035298fe31
DIST emacs-23.4.tar.bz2 38646508 SHA256 26576f9e664397c729f78f5ffcd092969251988461896fe8793062346ee988b9 SHA512 def7a95ecaefae24d8102b96b1d575a23def1b11a8f0bb17b68f7913bd118e2ea4449a8feee76c1bd649f099b70419f0d494ddd9bb32b26f92720cda842b0296 WHIRLPOOL 2384c3f63ff153c3975e373334d6021d46b23ad3cab448ed2e1180501236453a61d13bf1dfbb2e6075bb141dd8511d85f77e37c763b39769f98de48eacc56f3b
DIST emacs-24.4-patches-5.tar.xz 6000 SHA256 967dac364282a51933f90c56f368bc3f2741efe0b7ff42d3151bb4824b70fa04 SHA512 0a337ad5b7601f5e453645d1fba99717328c6bc7a5505bcb4bd8e853179cf61be43eb6f3b9370edf0f44aa6485d4847c14554c1592ccc7da87b10dabaaa9d421 WHIRLPOOL 149f3a431d055963c544d9fa6c6447a16aa093840f6bf4086f50506979356a12407af16291c46ee62a92b3ee41767452046f45a7163214be33ab7bdbcd6059dc
DIST emacs-24.4.tar.xz 39733124 SHA256 47e391170db4ca0a3c724530c7050655f6d573a711956b4cd84693c194a9d4fd SHA512 f51f88a4736a3f153ef01f3ad710571e967cd3d0c0112b066169a4040725d370ec29b14a4ca8fa3e3f4c657c726ba8e64c3ac4e390b8e911ea47a3afb5ac755c WHIRLPOOL eae38c2382731fecf0ccf8f717f8c96cc130d01a893ff560caecde903294eb843660492761ea8cce9920b79bfc55e821921924e27c040f25355110f56cd2255b

@ -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
}

@ -9,7 +9,7 @@ if [[ ${PV} == "99999999" ]] ; then
EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
else
SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Eselect module for management of multiple Python versions"

@ -10,7 +10,7 @@ SRC_URI="http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/openssl/openssl-c_
LICENSE="openssl"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE=""
RDEPEND="!<dev-libs/openssl-1.0.2d-r1:0"

@ -59,7 +59,7 @@ fi
LICENSE="MPL-1.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="insecure_certs"
${PRECOMPILED} || IUSE+=" cacert"

@ -10,7 +10,7 @@ SRC_URI=""
LICENSE="MIT"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
S="${WORKDIR}"

@ -10,7 +10,7 @@ SRC_URI="mirror://gentoo/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND=""

@ -1,3 +1,2 @@
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.5.tar.gz 79849 SHA256 dc2c333082b3e5294741d6bf184b04fd60962fed64956d2b63dea4ca51f32a65 SHA512 c91d886f02ff9009abc06d95539a715940dd95872e78606b5ac26b0c2646459340b1730deab7ed53e0687e67c69c426ba4956a84e12c1df0248fd47bfdcff6e4 WHIRLPOOL 215031aa6a8f040440a4f9c9f9d4b6bc947f846847cf3d74590cc1ac59316596a09a33b637d368528e42bbcefeb1dc3088216487797ef271f79c19446a2e95ed
DIST pdfpc-4.0.6.tar.gz 82157 SHA256 42b6bd421e977a98cf00d688da7b392b8d8be423eb56ea7ca929c3c0334f8aa4 SHA512 289d37956da27d2da1ebf562a8557fd66b92143d777558103da5d70aaabee1f0d4ce69d7e193485d921156d7bc778de635faf18d6ec25a29651980ecd5c74b22 WHIRLPOOL 36caaca71d6df9c0b51bf61cab67c34af5af5097ff96ae5d994f93b0977d8bb2dc9676a9e7293faceb115c6753e4884fcd685878db9847c2cb85f31ac2c9fedc

@ -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
}

@ -16,14 +16,14 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
IUSE="gstreamer"
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
gstreamer? ( media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0 )
sys-apps/dbus
x11-libs/gtk+:3"
DEPEND="${RDEPEND}
@ -38,6 +38,7 @@ src_prepare() {
src_configure(){
local mycmakeargs=(
-DSYSCONFDIR="${EPREFIX}/etc"
-DMOVIES=$(usex gstreamer on off)
)
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

@ -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 {} +
}

@ -12,7 +12,7 @@ SRC_URI="mirror://gentoo/${P}.tar.xz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="nls static"
RDEPEND="dev-libs/iniparser:0"

@ -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

@ -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
}

@ -14,7 +14,7 @@ SRC_URI="http://www.mpagano.com/downloads/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ppc sparc x86 ~x86-fbsd"
KEYWORDS="amd64 arm ppc sparc x86 ~x86-fbsd"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

@ -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
}

@ -11,7 +11,7 @@ SRC_URI="mirror://gentoo/${P}.tar.xz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND="|| ( sys-apps/util-linux app-misc/getopt )

@ -11,7 +11,7 @@ SRC_URI="http://www.docbook.org/xml/${PV}/${MY_P}.zip"
LICENSE="docbook"
SLOT="${PV}"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND=">=app-text/docbook-xsl-stylesheets-1.65

@ -18,7 +18,7 @@ SRC_URI="mirror://sourceforge/docbook/${MY_P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="ruby"
RDEPEND=">=app-text/build-docbook-catalog-1.1

@ -29,7 +29,7 @@ SRC_URI="${SRC_URI} ) "
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="doc source"
DEPEND=">=dev-libs/kpathsea-6.2.1"

@ -3,6 +3,7 @@
# $Id$
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit python-single-r1 toolchain-funcs
@ -16,11 +17,13 @@ KEYWORDS="amd64 ~hppa ppc x86 ~x86-fbsd"
# SLOT 1 was used in pktrace ebuild
SLOT="1"
IUSE="test truetype"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND=">=app-text/t1utils-1.25
|| ( media-gfx/potrace >=media-gfx/autotrace-0.30 )
truetype? ( media-gfx/fontforge )
virtual/latex-base"
virtual/latex-base
${PYTHON_DEPS}"
DEPEND="${RDEPEND}
test? ( media-gfx/fontforge )"

@ -10,7 +10,7 @@ SRC_URI="mirror://gentoo/texlive-${PV#*_p}-source.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="alpha amd64 ~arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND=">=dev-libs/kpathsea-6.2.1"

@ -3,6 +3,7 @@
# $Id$
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit python-single-r1
@ -15,8 +16,10 @@ LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="app-dicts/wordnet"
DEPEND="${PYTHON_DEPS}
app-dicts/wordnet"
RDEPEND="${DEPEND}"
src_compile() {

@ -13,7 +13,7 @@ SRC_URI="https://dev.gentoo.org/~floppym/dist/${PN}/${P}-gentoo.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND=""

@ -12,7 +12,7 @@ SRC_URI="https://github.com/silnrsi/teckit/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="|| ( CPL-0.5 LGPL-2.1 )"
SLOT="0"
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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
RDEPEND="sys-libs/zlib

@ -69,7 +69,7 @@ for i in ${TL_CORE_EXTRA_SRC_MODULES}; do
done
SRC_URI="${SRC_URI} )"
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 ~sparc-solaris ~x64-solaris ~x86-solaris"
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 ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="cjk X doc source tk +luajittex xetex"
TEXMF_PATH=/usr/share/texmf-dist

@ -10,7 +10,7 @@ SRC_URI=""
LICENSE="metapackage"
SLOT="0"
KEYWORDS="alpha amd64 ~arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="cjk context detex dvi2tty extra epspdf games graphics
humanities jadetex luatex metapost music omega pdfannotextractor png pstricks publishers
science tex4ht texi2html truetype xetex xindy xml X"

@ -12,7 +12,7 @@ SRC_URI="mirror://gentoo/texlive-${PV#*_p}-source.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 ~s390 ~sh x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
# Note about blockers: it is a freetype2 based replacement for ttf2pk and

@ -9,7 +9,7 @@ DESCRIPTION="DVI previewer for X Window System"
HOMEPAGE="http://xdvi.sourceforge.net/"
SRC_URI="mirror://sourceforge/xdvi/${P}.tar.gz"
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 ~sparc-solaris ~x64-solaris ~x86-solaris"
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 ~sparc-solaris ~x64-solaris ~x86-solaris"
SLOT="0"
LICENSE="GPL-2"
IUSE="motif neXt Xaw3d emacs"

@ -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
# $Id$
EAPI=6
inherit multilib
DESCRIPTION="A complete Spatial DBMS in a nutshell built upon sqlite"
HOMEPAGE="http://www.gaia-gis.it/spatialite"
SRC_URI="http://www.gaia-gis.it/gaia-sins/${PN}-sources/${P}.tar.gz"
DESCRIPTION="A collection of CLI tools supporting SpatiaLite"
HOMEPAGE="https://www.gaia-gis.it/spatialite"
SRC_URI="https://www.gaia-gis.it/gaia-sins/${PN}-sources/${P}.tar.gz"
LICENSE="MPL-1.1"
SLOT="0"
KEYWORDS="~amd64 ~x86"
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
>=sci-libs/geos-3.3
sci-libs/proj
dev-libs/libxml2
sci-geosciences/readosm
sci-libs/geos
sci-libs/proj
readline? (
sys-libs/ncurses:=
sys-libs/readline:=

@ -1,4 +1,4 @@
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-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.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,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -7,41 +7,44 @@ EAPI=6
MY_PN="lib${PN}"
MY_P="${MY_PN}-${PV}"
inherit multilib eutils
DESCRIPTION="A complete Spatial DBMS in a nutshell built upon sqlite"
HOMEPAGE="http://www.gaia-gis.it/gaia-sins/"
SRC_URI="http://www.gaia-gis.it/gaia-sins/${MY_PN}-sources/${MY_P}.tar.gz"
HOMEPAGE="https://www.gaia-gis.it/gaia-sins/"
SRC_URI="https://www.gaia-gis.it/gaia-sins/${MY_PN}-sources/${MY_P}.tar.gz"
LICENSE="MPL-1.1"
SLOT="0"
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(+)]
geos? ( >=sci-libs/geos-3.3 )
RDEPEND="
>=dev-db/sqlite-3.7.5:3[extensions(+)]
sys-libs/zlib
geos? ( >=sci-libs/geos-3.4 )
proj? ( sci-libs/proj )
xls? ( dev-libs/freexl )
xml? ( dev-libs/libxml2 )
"
DEPEND="${RDEPEND}"
S=${WORKDIR}/${MY_P}
REQUIRED_USE="test? ( iconv )"
S="${WORKDIR}/${MY_P}"
src_configure() {
econf \
--disable-examples \
--disable-static \
--enable-geocallbacks \
--enable-epsg \
--disable-examples \
--enable-geocallbacks \
$(use_enable geos) \
$(use_enable geos geosadvanced) \
$(use_enable iconv) \
$(use_enable proj) \
$(use_enable xls freexl)
$(use_enable xls freexl) \
$(use_enable xml libxml2)
}
src_install() {
default
prune_libtool_files
find "${D}" -name '*.la' -delete || die
}

@ -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
# $Id$
EAPI=5
EAPI=6
MY_PN="lib${PN}"
MY_P="${MY_PN}-${PV}"
inherit multilib eutils
DESCRIPTION="A complete Spatial DBMS in a nutshell built upon sqlite"
HOMEPAGE="http://www.gaia-gis.it/gaia-sins/"
SRC_URI="http://www.gaia-gis.it/gaia-sins/${MY_PN}-sources/${MY_P}.tar.gz"
HOMEPAGE="https://www.gaia-gis.it/gaia-sins/"
SRC_URI="https://www.gaia-gis.it/gaia-sins/${MY_PN}-sources/${MY_P}.tar.gz"
LICENSE="MPL-1.1"
SLOT="0"
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(+)]
geos? ( >=sci-libs/geos-3.3 )
RDEPEND="
>=dev-db/sqlite-3.7.5:3[extensions(+)]
sys-libs/zlib
geos? ( >=sci-libs/geos-3.4 )
proj? ( sci-libs/proj )
xls? ( dev-libs/freexl )
xml? ( dev-libs/libxml2 )
"
DEPEND="${RDEPEND}"
S=${WORKDIR}/${MY_P}
REQUIRED_USE="test? ( iconv )"
src_prepare() {
epatch "${FILESDIR}/${P}-validator.patch"
}
S="${WORKDIR}/${MY_P}"
src_configure() {
econf \
--disable-examples \
--disable-static \
--enable-geocallbacks \
--enable-epsg \
--disable-examples \
--enable-geocallbacks \
$(use_enable geos) \
$(use_enable geos geosadvanced) \
$(use_enable iconv) \
$(use_enable proj) \
$(use_enable xls freexl)
$(use_enable xls freexl) \
$(use_enable xml libxml2)
}
src_install() {
default
find "${ED}" -name '*.la' -exec rm -f {} +
find "${D}" -name '*.la' -delete || die
}

@ -16,7 +16,7 @@ SRC_URI="http://trac.openscenegraph.org/downloads/developer_releases/${MY_P}.zip
LICENSE="wxWinLL-3 LGPL-2.1"
SLOT="0/35" # Subslot consists of major + minor version number
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
IUSE="asio curl debug doc examples ffmpeg fltk fox gdal gif glut gstreamer gtk jpeg
jpeg2k las libav lua openexr openinventor osgapps pdf png qt5 sdl sdl2 svg tiff
truetype vnc wxwidgets xine xrandr zlib"

@ -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@

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -29,3 +29,5 @@ DEPEND="${RDEPEND}
dev-haskell/test-framework
dev-haskell/test-framework-hunit )
"
PATCHES=("${FILESDIR}"/${P}-no-LDFLAGS.patch)

@ -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@

@ -33,6 +33,8 @@ DEPEND="${RDEPEND}
>=dev-haskell/cabal-1.6
"
PATCHES=("${FILESDIR}"/${P}-no-LDFLAGS.patch)
S="${WORKDIR}/${MY_P}"
src_configure() {

@ -4,6 +4,7 @@ DIST icedtea-bin-core-3.2.0-ppc64.tar.xz 54021752 SHA256 f5eb2d85f5518356b53d079
DIST icedtea-bin-core-3.2.0-x86.tar.xz 61103504 SHA256 e74bb34040f8bebc7edc531c73069a411075464a6d6f8aa51d3930ad1281ab83 SHA512 960b72971a13375c35c4ff7ddbd0466cab6a6434565a0841f0b760b67466b9057476be46a804afc4224c8d75cafdf21021661937197d1ea5a2674da835fb28b0 WHIRLPOOL 0decc2ed58c23f19048ca73e5a44c7d6174105a14932ef66301759ba349f3451a5f7fbd00821832b62eacbae68a7b4a4ce7f0d02bc0fce0317471adfa48f9293
DIST icedtea-bin-core-3.3.0-amd64.tar.xz 61771188 SHA256 98c84aab8ea1ac6b8bb438aa8f45a9060ce0ad13fb9a1033f819dda7848da74c SHA512 8ff9d9d830450d92dec89485443e4d28f986b8fe0e58b841484b658d91d4d6173cdae9f49d39ba6ad1e245cffc6df57452f562bf9c44b32407d50f03d883f615 WHIRLPOOL e169e342746bbcac215a01442c82460a36adf2a22ce022bca1109ce33b2421c1db7cab040b3648de917a7e64820363bba4c6f2101851bbb0f16fc1c524035f2f
DIST icedtea-bin-core-3.3.0-arm.tar.xz 53095408 SHA256 01fd2c41efcd72153b13b1adf752aeeca277232deff598ab2aa3f03f6f3a3a9a SHA512 0d75e222c71d5ddbdd33b89a72a0a425cddedbd8ea91ea3c41d2be525b42eae922909f209a3e6dd42ab7640ac3b4eaf7cdb2f3166ebc966df0b3408fca93edcd WHIRLPOOL 33bd54029725da70832ea4770441f15e5103acbf9257f84f30cd671f64e596fd9fba711b9cc019b7a808d6b42737d08b7c8bee3f600e28ef1fd374e859086cf5
DIST icedtea-bin-core-3.3.0-ppc64.tar.xz 54126156 SHA256 a0f407f5e84b4a32b69e2465b38bc5a50c6a4ffc5e3a0c06ee61bf25f22bfa23 SHA512 c526423192f14441908d80f961fcb4ea79fa9c714e646d7d46d7e4582c89da038a266e0a62b0440e09c25a94a278f6f2fd93867ba54b66d65f30213bbdfd7450 WHIRLPOOL 1882b03b9586327221af2c2de68623800a5f5d59c70679f5e2f543903050030170c3b1537805946c30e383136ccdd4c9dbc6da68425322367fd22f78a9f6ef49
DIST icedtea-bin-core-3.3.0-x86.tar.xz 61185420 SHA256 739aa08159cdf31e1016581bc74e85094e1e0a0e0129e3f23638bb751dd614fc SHA512 7e080afd159af01497f49e7a3f78399bb45d7cef2af43b266e83fae7ff6040cabff4daecd842b4aad7a6b54ef7333d51cb3eb7b546e286dd8e51ea85e999a8de WHIRLPOOL 33a5676105a2c33b48cfa89bba7f0b3de292858e11ca38aaa83983ccbe6427a2c2b521b7386fc9908653460560e43c3063033d8b3353189eace4656a4e52b1d5
DIST icedtea-bin-core-7.2.6.8-amd64.tar.xz 53161352 SHA256 f96ef80de8568e3cd9d41c7829918e77c9705866e284e1390c94f68f911887a6 SHA512 833d586119cfa218e711bbccf33aaa4934bd4bc34839920af7ab2677b93e4c5ebe844c9cc293fb1aa47265695c9ac9673eea81d44fcc533118ccfcfa2aa490a3 WHIRLPOOL a438aa02fa1b3fec1129b06c43cad7990068798956a3880c8b71fc135e2ebab01dde9f3bf84c3ed44007b65f6e52e306e00933f8d9260f0550b6720945549301
DIST icedtea-bin-core-7.2.6.8-x86.tar.xz 54834440 SHA256 c5867db7613cb73d94c0d413f00d1bc5e5563143977bdf046ca1bc42f00a28da SHA512 da511acc62225af3a3755e6dac7f0ffb47ed9eb4c6ce7faecde6850fd499cf9427504903d94b7efe5c5126095b0ac71dd5bbe401ff47ebd8026574f105b2b9c9 WHIRLPOOL 8471a3e60dbb75befeeb8f338165d3ae28b6fa3fb602f98ca5eaca4759ed8a447a728023853d3bbd04a822411dfdcaf45dcb55f6b2ba9beac6ccacba0ee3140e
@ -16,6 +17,7 @@ DIST icedtea-bin-examples-3.2.0-ppc64.tar.xz 1849596 SHA256 651c133546ecce8ee5eb
DIST icedtea-bin-examples-3.2.0-x86.tar.xz 1861832 SHA256 77e0dfbd7cc8d75e98ee899ea4052b0a6c0d667a5e23ca2463d534c0958bf549 SHA512 f3dfd7b3e1d3227208f9682cbac99c369c0ebdfb066c54ae48a58f37de7ddc1c12a6c61a39024e34e834bff71fcd2e55fab94a3047f444a50f1408f8497234de WHIRLPOOL ea337a4fe44c195f74bb7a7f5d4ef7d772eba8bc0dc507b8f2bb261ebfc0b873d4f19dda83ae881421dc916b59e87085b54846d35a6513554a81eed855f9d892
DIST icedtea-bin-examples-3.3.0-amd64.tar.xz 1856784 SHA256 63d0a3be2741bfeac1d2b768d5f3440346c763f5973089b0e29f7e4700db16ad SHA512 26c2fd1c09fd27ae9ad87f9d4708cc320e782598cbebd0504e914bc4554c2289cc3539ece36496f07c6cf1f32daebdd4d56f9cb078e64d96b168d857a99b170c WHIRLPOOL a1687b5dd8240893d3077637ff3d880b814a067123a677449f138a6c24fbfb02786080f550dca2b2e7a5b2add5105529367b124c190d5ba179f4be75036f27f7
DIST icedtea-bin-examples-3.3.0-arm.tar.xz 1839564 SHA256 807aa2a27995eca0966167d89216d4c5d775715d681a49d88169021b0a6437c4 SHA512 ae178242c2d8407a655bad9589ee85f2ef2d91b8a51f4cffe30f8aa2fc1447c9465f7875366b31465df5d719322af4b0f92b0f550c539800853fc7481e981c8c WHIRLPOOL fd3b5dceebfa6119c7717df47f2110dcf4f865a05371fd677f95a633da6a910b46b9c1b8bc67d9243b0d2e8bdf937eef720c957217b2f32c053b97bed360c630
DIST icedtea-bin-examples-3.3.0-ppc64.tar.xz 1848688 SHA256 04c566884db88b98625f28a50d7d5bc44468de54dc7dfa3bc9df51d5c43c8824 SHA512 bedec9222a56791f2a54d272b7d208faac65a9cf7f862d693d2234b3a7b9dc13cbfb75fd1e0dc30088877624b45e1a42902af9dc2dc8c66b1ea038fb8c535823 WHIRLPOOL d9c85433674c0f3316f6440e943793a38fd18fd0cf92a146a75ba8b67fc274fd2e41cf9bbe181204af1b7f3fdcb8ca47156df654bf6bfd637ba37a5fb0340307
DIST icedtea-bin-examples-3.3.0-x86.tar.xz 1862264 SHA256 dc804edcbb89b3dff58eb148382aa3511a0d1ba9a9eebb4f9e8e63acaa2aa8af SHA512 fb659100e676aba74312797a326fac25fe298544ddb490ddcc557e6a6423351c95197a4198b61c08bae83514f728dafe45dde11ccf60cb7609f357830ffb6615 WHIRLPOOL 8c922ed311be294e8e88c08d85853dba835e1d854cbd3b20d4f550e45a1735ad1d0676b77010a1b8a905aa3cb6928557e3cde9e6677b74209d466e62511c670d
DIST icedtea-bin-examples-7.2.6.8-amd64.tar.xz 1796596 SHA256 115bc46dcd307ca9abb264f3b5a2e541c5e4e12fddd7a522d066b0cff249ca42 SHA512 f3fe08e294c1aee2d64a89ab69cb002fd01b640289bc9b68a84aa5261ef4a7432b6be245a144fba628a701354079a1e2d2e0676fd0fa2a1febc612936e157492 WHIRLPOOL d74bb84a95200606e04816f669ddfede9f1991b1df755e1a9cddc91c26301a1ae353470c7e209468f7acae4d34ceed35ed6445d356510fdfa1a2e793a43995d3
DIST icedtea-bin-examples-7.2.6.8-x86.tar.xz 1796976 SHA256 50c9601c379d51d732ad7e349d2b873973ff2b1f383d7fade4fb2139eee15e8f SHA512 ab3101a86fcc62c2ca159830dffaff561f54cf1dc75ebce45efd72341881c97b078b8213040f70e41b421b17d81c3fa093371be2e160bcfaca7d5ef6ad2dfd31 WHIRLPOOL e2ebfc5fc099e03eab164d09d7ad13db8b97fcb6514961e5b0203bcb42f4ba28a45aadcbcbccf9d6933beb98c6929cecd6f61a51e5260d7c1a078d8d5535f921

@ -6,7 +6,7 @@ EAPI=6
# Don't block arm. See bug #600134.
#MULTILIB_COMPAT=( abi_ppc_64 abi_x86_{32,64} )
KEYWORDS="-* amd64 ~arm x86"
KEYWORDS="-* amd64 ~arm ~ppc64 x86"
inherit java-vm-2 multilib-build toolchain-funcs
@ -15,7 +15,7 @@ SRC_URI="doc? ( ${BASE_URI}/${PN}-doc-${PV}.tar.xz )
source? ( ${BASE_URI}/${PN}-src-${PV}.tar.xz )
multilib? ( amd64? ( abi_x86_32? ( ${BASE_URI}/${PN}-core-${PV}-x86.tar.xz ) ) )"
for abi in amd64 arm x86; do
for abi in amd64 arm ppc64 x86; do
SRC_URI+="
${abi}? (
${BASE_URI}/${PN}-core-${PV}-${abi}.tar.xz

@ -2,3 +2,7 @@ DIST jacoco-0.7.5-agent.jar 4078 SHA256 df73da4b6e8f4772678077f8a7cad5b3fcea7516
DIST jacoco-0.7.5-ant.jar 18060 SHA256 5fb791065d3eb23d8aca02076cfd526d41bc76d03841933684a7b4eeca4e5bca SHA512 1404727c1ebd9af8f6be47e0b7dc0b717a8f235a10e0fcb9d0472b8286a6a0c719877947cefe472fecdf2388b46810668650fed5567038310cec37f7f11c04c6 WHIRLPOOL 6c779cf65214f670dfb3acba5e1579f3bef1f20eb902bb3611598c937fcc71ac7b9d33679ffdc325b5e0468208c07aa6d9f8c161a16c459bc49a0e7212068cfe
DIST jacoco-0.7.5-core.jar 111749 SHA256 4a5ce92a3f3264d74033f43fecb6f644be6342ffe58b1cd322808c84cb47eb26 SHA512 7dfb16ff621b8eca76cfaeb468f9448b7c1f2bf2cffd324a5069822a03d6b70a7b9e63a08f78dc0bad7c6854e8b1059f36095a01e155f1767da6ca88913c3989 WHIRLPOOL 125a609bb62d804e4c5be9bca82dd0e177d22dc701c81d12a729640c218ce07ecadffe2a08bea5fb6d87071740d79ce825963be5fe1ad874062b71d077848437
DIST jacoco-0.7.5-report.jar 112315 SHA256 edb049aad135e7b2bdf07b144c024860b263809f604b38678db6100a8343e3e7 SHA512 3347130757022da94b41a6b0d001d8b59e000630834de7972248ce53b447f28aeaf902226acf2485e8afbd797b84af00fdd1ea2c6f24d93ec60407e229f8a796 WHIRLPOOL 627235042c6cd995e01363ee7d484b74cba6f25a1be300aee46af0059a4597f1a16292953a4550e8a543610ca387fcd7a1c3e30a2a05b4ebfde60f8ca708463d
DIST jacoco-0.7.9-agent.jar 4078 SHA256 abf9405491754b426267607e910eecac5f613b2f6fa9b4d2bff20e74a4ab8bfc SHA512 b0dc423039bd03bbccb62667c5dd6e2838bf75a8d98b0bb5eb51c6ebfbe3fbc6cdda86ac9e15cd2e06165202d40ddfdcc5a8553681d78026fc766ebe2f81f17e WHIRLPOOL c5375d4329c54f6bc017116707cbf9b0b8e583aacb0c532365a8bb4d41f54251ff0e4875d0d1aa387bcb49986d0b1c830d9489dbb2131283d2828115f4a1d9e7
DIST jacoco-0.7.9-ant.jar 18096 SHA256 932b756fe099d7c765f23cc170517252b8f534a685f74f4c232d9d0539b090b3 SHA512 8238cf2ee6233199280eaa271db8a189c33c9bef3508a7bdffc9363e6afaba90ed38d9d53eb2a88ddc3b214f1f25d7f872d6109942de7a8987e84392fb958f72 WHIRLPOOL ffb325aa3a2160d5ae6081af0374fded2a02c70ebde0c85059386434c92dd5941608efe564eee93f82f7c03c7c699c1d55276de9114a85dc4757f131cfc6e479
DIST jacoco-0.7.9-core.jar 117366 SHA256 c7bfebd8f02b8f4d37691f03fe53b82a68247ffc47a987872b97d9df9afacea1 SHA512 7ac184a92aa0054eb44bfadd54c42de238da6193e9536b26fe67c2d4b65398e9ed7c471daa69a98d7138fc0ee5035a8ef40731e45363435cd30df959eb80e5f6 WHIRLPOOL 527c26fdc8a3683776b798ec615b8edfec7f6d8cc3dba8309d2ba2e8ed5c489a2070f6531379f66c541c076c4b11efebfeb291b75da02fd9c1be1a63b0c3eb75
DIST jacoco-0.7.9-report.jar 112521 SHA256 6317a69a731ff005482ae42b854c5b4e3bf5977db611c27faee20062cd852991 SHA512 128b254767d627a185e5794b3c0ea479628e2eba05a4188c613c4661da99f3330d4491640860a0ce33fe2663ff7c218772d09dc22237c00f78f60f6b9dcc0990 WHIRLPOOL 4d5dc69d1626cdd3d528cc002043bbd308fd368d666083198bde8f9ad18812ae470b8a391f9625e668b48a81ad6e8b272c3e404606e1b02ce84d03175977f548

@ -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
"

@ -2,3 +2,4 @@ DIST crystal-0.20.4-1-linux-i686.tar.gz 17176550 SHA256 93e7df2bea3220728987a49a
DIST crystal-0.20.4-1-linux-x86_64.tar.gz 17733333 SHA256 cdc11c30235f8bd3b89e1fc13b56838f99d585715fb66563d6599026f5393e37 SHA512 4f443c6e50962f5d7629ea6b3066443b5521cc58066bd944a5f61a1fb4dcd2593b09f71099d2fc86e64c167aa52d8cd566518f8bec30cc7294e03deb1910cf7c WHIRLPOOL 08026df37fefc8d8c3a4d9d9fdd397efbb453b6f2944778f413694d8d9433c62e5837db25caeba1540124aa4cad6847fca1d71f1b148990a09cbb850e6d9500c
DIST crystal-0.20.4.tar.gz 1537577 SHA256 fd099f278b71bbb5cad1927c93933d1feba554fbf8f6f4ab9165f535765f5e31 SHA512 1ded5cf104314b6b8b76fa519ec87a913a40a8bdb82445fe78b3f942567abe8c354cefcdd360c365e0c9f0756fc0e4819eec681584c11f94c9838e9a61ec89fe WHIRLPOOL f51185267fd2152e7acbb0528cabf17c973e763db3cb097c13ec805cee44f191f9054bb2dfbfa6b885dab850c7a24ae722b0c238c7ba8d1296de1e06060ebba9
DIST crystal-0.20.5.tar.gz 1550878 SHA256 ee1e5948c6e662ccb1e62671cf2c91458775b559b23d74ab226dc2a2d23f7707 SHA512 cb27ad485f5bf51307541901a230f635e1b3922f3802fc4db0a8746c7aa3399940791f9ec7d7e71325af5c93e8928f4a94b30a25d87e7ed45fa77661ddd876f0 WHIRLPOOL 7d1d2011b6319ebf50ba10935e3d55b5320d0e2bdf3fe00ace16aef74a740449968c1230d7ccb5033d8ef0ef222fd323ad226bed15a0573d666d8fae05caffef
DIST crystal-0.21.0.tar.gz 1584649 SHA256 4dd01703f5304a0eda7f02fc362fba27ba069666097c0f921f8a3ee58808779c SHA512 35c1c770c1771c1b1ee32d14bbf749ab42dd0c2adf3bec59ad26474513e2f8d53a792dd478cb2a3b6127e69adc4326191cb65fd1e7a2d6f79610abc7eb34e4db WHIRLPOOL e71eb5dc8ec89c879d4f62b008f9e2ac6f6dd3041488c3f03ca08f0109e46f9d1aae8b03424a3e15f8035f271b7cb6288bf9268314dc6ece52d70c5b0678cde6

@ -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.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.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-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-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.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
}

@ -30,7 +30,7 @@ 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"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="berkdb debug doc gdbm ithreads"
RDEPEND="

@ -1,3 +1,4 @@
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.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
}

@ -19,7 +19,7 @@ LICENSE="PHP-3.01
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"
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"

@ -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
}

@ -77,7 +77,7 @@ COMMON_DEPEND="
gdbm? ( >=sys-libs/gdbm-1.8.0 )
gmp? ( dev-libs/gmp:0 )
iconv? ( virtual/libiconv )
imap? ( virtual/imap-c-client[ssl=] )
imap? ( virtual/imap-c-client[kerberos=,ssl=] )
intl? ( dev-libs/icu:= )
iodbc? ( dev-db/libiodbc )
kerberos? ( virtual/krb5 )

@ -18,7 +18,7 @@ SRC_URI="https://github.com/mgorny/${PN}/releases/download/${P}/${P}.tar.bz2"
LICENSE="BSD-2"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
# eselect-python because of /usr/bin/python* collisions and new config

@ -1,8 +1,14 @@
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.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.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-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.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.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

@ -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,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -14,7 +14,7 @@ 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"
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"
REQUIRED_USE="cxx? ( threads )
python? ( ${PYTHON_REQUIRED_USE} )"

@ -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.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…
Cancel
Save