parent
7dee961e13
commit
4703b62c29
@ -1,4 +1,3 @@
|
||||
DIST mongo-tools-3.0.10.tar.gz 2185555 SHA256 2bd5c984ca8b745b33aeb1e1a8118acd675bc5a408845eb3bb0b70c4fa680d71 SHA512 36d57150f4fb331149a2a7cbcde54253316cf3c5bc8ab195584c057c35b30d5acfabcafa25d314d378388254ac5a0ce75d0d8867e344fb7006593319ce9d028c WHIRLPOOL a6961a1fccb7ba353616fe4bfbe182c6a076f13c23492f4d06d274a0ff4d3f09a811413f77a2353b20801462b3a72f74073e38b8b1b4f4e3abf0026774dbcea2
|
||||
DIST mongo-tools-3.0.12.tar.gz 2196136 SHA256 390d6842e83463943383ba7a6d6b8feb050fd170f8003aef46037722693734d0 SHA512 2954972b999d8eb87ff7ce65697740fc5893d5caa24234309f1d182109f627a5cce9b22d9da1154af74606725269c48ded8361b9f3bf171a10aed9ad7b33dda8 WHIRLPOOL 13e1e433f242be3ec9cea259bb3ae70220d1b7feccaf722ce31d9c1a0b30a8aef0c945e1147662acab22b3d7c1c719055fda6dfc9c605d205ceb227d639f6598
|
||||
DIST mongo-tools-3.2.4.tar.gz 2229852 SHA256 9d52028fb2be6a6e0a779aa73587c52ccd5fa59b258e26e5c2c3fce167599138 SHA512 d34ad87bb2a53c9df0124c26a4c200236aa889c7a5bd09a3b535acd4b18c5757018e78813fa04b48b359004eb9097853b49fd359617e71f66e41ef71da01c222 WHIRLPOOL 1711091062a89f14c0fbf9dedd15567c0018af7028fab053622f4bdcc87b23e1784275901c19605418989e4802ff011dd87ddc7c26723318aafe59df4c079d35
|
||||
DIST mongo-tools-3.2.5.tar.gz 2499471 SHA256 d58ab20b0007f550060c5c57fff0661488d473151e6f7f10b9895e859a625797 SHA512 b7bb5fe5425b269611cedd6f7d9253998d00fb3bd7b26bac5d614f4ee861bbeca806da12c41b475cf8e72954a0634503a9d1b625a0bdbd52b61149616014ab49 WHIRLPOOL 08c1080f843cecda815ab8b0140cce386287d988461647876e7f5b02b9ed3c62873b8aa67c0eebd6a377383235b1f919e95af6aaf6f8ed102a84ac74897ccd96
|
||||
DIST mongo-tools-3.2.8.tar.gz 2500291 SHA256 8c147ecec459dd16f3a9f7ad74627fb31375183e145723b84d9ce10a30eafbfb SHA512 5b791fc8f377826d466871fb9108a3c6ea59eeba12ad98e7b39ad2ebc8bdb48263a6a46ee64e4c56ba38230d463ad779440b7f4a8ad36db0e0bc61d0abbf7204 WHIRLPOOL 2b8640615eb0e309124d1434d5a9ef93955986767dca2b2c0b1407d8a36734777d83f9db9f424282d04bccbfe6cb08854384789112e36cb70e3007d889b452d4
|
||||
|
@ -1,53 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
MY_PV=${PV/_rc/-rc}
|
||||
MY_P=${PN}-r${MY_PV}
|
||||
|
||||
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
|
||||
HOMEPAGE="http://www.mongodb.org"
|
||||
SRC_URI="https://github.com/mongodb/mongo-tools/archive/r${MY_PV}.tar.gz -> mongo-tools-${MY_PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="sasl ssl"
|
||||
|
||||
# Maintainer note:
|
||||
# openssl DEPEND constraint, see:
|
||||
# https://github.com/mongodb/mongo-tools/issues/11
|
||||
|
||||
RDEPEND="!<dev-db/mongodb-3.0.0"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-lang/go:=
|
||||
sasl? ( dev-libs/cyrus-sasl )
|
||||
ssl? ( dev-libs/openssl )"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}/${PN}-3.0.0-build.patch"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myconf
|
||||
|
||||
if use sasl; then
|
||||
myconf="${myconf} sasl"
|
||||
fi
|
||||
|
||||
if use ssl; then
|
||||
myconf="${myconf} ssl"
|
||||
fi
|
||||
|
||||
./build.sh ${myconf}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin bin/*
|
||||
}
|
@ -0,0 +1 @@
|
||||
DIST prelude-manager-3.0.0.tar.gz 1286459 SHA256 379de4c79ccdba4093e9c5a2b9e5c6cee8e8d8694e1358c3d248250c4957dc0b SHA512 4c16a353495179265375686ce9592c8cd044b4255060b78286466bd25f9b38634233c95af058e1c0b81e1b574ec9ada5b2db92d6d1f5594dfcddce572fd0fd67 WHIRLPOOL 35814a88e62e4bfdbd3e8c88f733cd304f8fb355d820ae9887da0c9e6b02936b7aed8d73a05cc458fbf01f7a9e48174d446b1174e1edd44637fadcdc282f3f92
|
@ -0,0 +1,11 @@
|
||||
--- a/prelude-manager.conf.in
|
||||
+++ b/prelude-manager.conf.in
|
||||
@@ -361,7 +361,7 @@
|
||||
# (same source, target and classification combination) every 2 minutes
|
||||
# to reporting plugins (eg. to the database).
|
||||
[thresholding]
|
||||
-path = alert.classification.text, alert.source.node.address.address, alert.target.node.address.address
|
||||
+path = alert.classification.text, alert.source(0).node.address(0).address, alert.target(0).node.address(0).address
|
||||
limit = 120
|
||||
count = 100
|
||||
hook = reporting
|
@ -0,0 +1,57 @@
|
||||
When : when you try to use enable with libmaxmind, libpreludedb, xml, libwrap, they are not working
|
||||
Why : Needed if you want to use useflags
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -110,7 +110,10 @@
|
||||
dnl **************************************************
|
||||
LIBMAXMINDDB_MIN_VERSION=1.0.0
|
||||
|
||||
-PKG_CHECK_MODULES([LIBMAXMINDDB], [libmaxminddb >= $LIBMAXMINDDB_MIN_VERSION], enable_libmaxminddb=yes, enable_libmaxminddb=no)
|
||||
+AC_ARG_ENABLE(libmaxminddb, AC_HELP_STRING(--enable-libmaxminddb, Define whether libmaxminddb is available), , enable_libmaxminddb="yes")
|
||||
+if test x$enable_libmaxminddb = xyes; then
|
||||
+ PKG_CHECK_MODULES([LIBMAXMINDDB], [libmaxminddb >= $LIBMAXMINDDB_MIN_VERSION], enable_libmaxminddb=yes, enable_libmaxminddb=no)
|
||||
+fi
|
||||
if test x$enable_libmaxminddb = xyes; then
|
||||
AC_CHECK_HEADER(maxminddb.h, enable_libmaxminddb=yes, enable_libmaxminddb=no)
|
||||
fi
|
||||
@@ -126,11 +129,14 @@
|
||||
dnl * Check for libpreludedb *
|
||||
dnl **************************************************
|
||||
|
||||
-AM_PATH_LIBPRELUDEDB(3.0.0, enable_libpreludedb=yes, enable_libpreludedb=no, no)
|
||||
-AM_CONDITIONAL(HAVE_LIBPRELUDEDB, test x$enable_libpreludedb = xyes)
|
||||
+AC_ARG_ENABLE(libpreludedb, AC_HELP_STRING(--enable-libpreludedb, Define whether libpreludedb is available), , enable_libpreludedb="yes")
|
||||
+if test x$enable_libpreludedb = xyes; then
|
||||
+ AM_PATH_LIBPRELUDEDB(3.0.0, enable_libpreludedb=yes, enable_libpreludedb=no, no)
|
||||
+fi
|
||||
if test x$enable_libpreludedb = xyes; then
|
||||
AC_DEFINE_UNQUOTED(HAVE_LIBPRELUDEDB, , Define whether libpreludedb is available)
|
||||
fi
|
||||
+AM_CONDITIONAL(HAVE_LIBPRELUDEDB, test x$enable_libpreludedb = xyes)
|
||||
|
||||
|
||||
|
||||
@@ -138,7 +144,10 @@
|
||||
dnl * Check for the Libxml2 *
|
||||
dnl ********************************************************
|
||||
|
||||
-AM_PATH_XML2(, enable_xmlmod=yes, enable_xmlmod=no)
|
||||
+AC_ARG_ENABLE(xmlmod, AC_HELP_STRING(--enable-xmlmod, Enable XML), , enable_xmlmod="yes")
|
||||
+if test x$enable_xmlmod = xyes; then
|
||||
+ AM_PATH_XML2(, enable_xmlmod=yes, enable_xmlmod=no)
|
||||
+fi
|
||||
AM_CONDITIONAL(HAVE_XML2, test x$enable_xmlmod = xyes)
|
||||
|
||||
|
||||
@@ -147,9 +156,10 @@
|
||||
dnl * TCP WRAPPER CHECK *
|
||||
dnl **************************************************
|
||||
|
||||
+AC_ARG_WITH(libwrap, AC_HELP_STRING(--with-libwrap, Compile in libwrap (tcp_wrappers) support.), , with_libwrap="yes")
|
||||
AC_ARG_WITH(libwrap-prefix, AC_HELP_STRING(--with-libwrap-prefix@<:@=PFX@:>@,
|
||||
Compile in libwrap (tcp_wrappers) support @<:@default=auto@:>@.),
|
||||
- libwrap_required=true, with_libwrap="yes")
|
||||
+ libwrap_required=true, )
|
||||
|
||||
if test x$with_libwrap != xno; then
|
||||
LIBWRAP_INCLUDE="tcpd.h"
|
@ -0,0 +1,13 @@
|
||||
When : everytime
|
||||
Why : since systemd, run dir has changed
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -304,7 +304,7 @@
|
||||
|
||||
manager_failover_dir=$LOCALSTATEDIR/spool/prelude-manager/failover
|
||||
manager_scheduler_dir=$LOCALSTATEDIR/spool/prelude-manager/scheduler
|
||||
-manager_run_dir=$LOCALSTATEDIR/run/prelude-manager
|
||||
+manager_run_dir=/run/prelude-manager
|
||||
|
||||
AC_DEFINE_UNQUOTED(REPORT_PLUGIN_DIR, "$report_plugin_dir", Prelude-Manager report plugin directory)
|
||||
AC_DEFINE_UNQUOTED(DECODE_PLUGIN_DIR, "$decode_plugin_dir", Prelude-Manager decode plugin directory)
|
@ -0,0 +1,26 @@
|
||||
#!/sbin/runscript
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
BIN_MANAGER=/usr/bin/prelude-manager
|
||||
PID_MANAGER=/run/prelude-manager/prelude-manager.pid
|
||||
|
||||
depend() {
|
||||
need net
|
||||
}
|
||||
|
||||
start() {
|
||||
ebegin "Starting prelude-manager"
|
||||
checkpath -d -m 0755 -o root:root /run/prelude-manager
|
||||
start-stop-daemon --start --exec $BIN_MANAGER \
|
||||
--pidfile $PID_MANAGER -- -d -P $PID_MANAGER
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Stopping prelude-manager"
|
||||
start-stop-daemon --stop --exec $BIN_MANAGER \
|
||||
--pidfile $PID_MANAGER
|
||||
eend $?
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
# Configuration to create /run/prelude-manager directory
|
||||
# Used as part of systemd's tmpfiles
|
||||
|
||||
d /run/prelude-manager 0755 root root
|
@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Description=Prelude-Manager service
|
||||
DefaultDependencies=no
|
||||
After=remote_fs.target
|
||||
Before=prelude-lml.service prelude-correlator.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/prelude-manager -d -P /run/prelude-manager/prelude-manager.pid
|
||||
Type=forking
|
||||
PIDFile=/run/prelude-manager/prelude-manager.pid
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=prelude-lml.service prelude-correlator.service multi-user.target
|
@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>thomas.andrejak@gmail.com</email>
|
||||
<name>Thomas Andrejak</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
Prelude-Manager is a high availability server that
|
||||
accepts secured connections from distributed sensors
|
||||
and saves received events to a media specified by the user
|
||||
(database, log file, mail etc.). The server schedules and
|
||||
establishes the priorities of treatment according to the
|
||||
critical character and the source of the alerts.
|
||||
</longdescription>
|
||||
<use>
|
||||
<flag name="tcpwrapper">Enables Prelude Manager using
|
||||
tcp wrapper. It requires <pkg>sys-apps/tcp-wrappers</pkg>
|
||||
.</flag>
|
||||
<flag name="dbx">Enables Prelude Manager storing Prelude
|
||||
alerts into database through <pkg>dev-libs/libpreludedb</pkg>
|
||||
.</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
@ -0,0 +1,63 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools eutils systemd
|
||||
|
||||
DESCRIPTION="Bus communication for all Prelude modules"
|
||||
HOMEPAGE="https://www.prelude-siem.org"
|
||||
SRC_URI="https://www.prelude-siem.org/pkg/src/3.0.0/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="tcpwrapper xml geoip dbx"
|
||||
|
||||
RDEPEND="net-libs/gnutls
|
||||
dev-libs/libprelude
|
||||
dbx? ( dev-libs/libpreludedb )
|
||||
tcpwrapper? ( sys-apps/tcp-wrappers )
|
||||
xml? ( dev-libs/libxml2 )
|
||||
geoip? ( dev-libs/libmaxminddb )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-conf.patch"
|
||||
"${FILESDIR}/${P}-configure.patch"
|
||||
"${FILESDIR}/${P}-run.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default_src_prepare
|
||||
|
||||
mv "${S}/configure.in" "${S}/configure.ac" || die "mv failed"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--localstatedir=/var \
|
||||
$(use_enable dbx libpreludedb) \
|
||||
$(use_with tcpwrapper libwrap) \
|
||||
$(use_enable xml xmlmod) \
|
||||
$(use_enable geoip libmaxminddb)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default_src_install
|
||||
|
||||
rm -rv "${D}/run" || die "rm failed"
|
||||
keepdir /var/spool/prelude-manager{,/failover,/scheduler}
|
||||
|
||||
prune_libtool_files --modules
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
systemd_newtmpfilesd "${FILESDIR}/${PN}.run" "${PN}.conf"
|
||||
|
||||
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
|
||||
}
|
@ -1,19 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="An improved interface to minibuffer completion"
|
||||
HOMEPAGE="http://homepage1.nifty.com/bmonkey/emacs/index-en.html
|
||||
http://www.emacswiki.org/emacs/McompleteMode"
|
||||
# taken from http://homepage1.nifty.com/bmonkey/emacs/elisp/mcomplete.el
|
||||
SRC_URI="mirror://gentoo/${P}.el.bz2"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
@ -1,3 +1,2 @@
|
||||
DIST v1_10_6.tar.gz 6444740 SHA256 f8699fbbfef7f3de2226f5f7dc4c74d98de3b59bfed4c6dac70bb231ec405760 SHA512 5c2a7dac1614751edf925eefa945e08e0b2fb318903b12fc8d4acde0b6027ecb534c90933da14796edc958f0d9a2f892815fddea9ab41ac921756fc5577acd8e WHIRLPOOL 91c47a66f0ab60f2560b103ef7ac6591088296b470d3403d6d9f511d44e361fc6841d9fda85d9c24d6c60595ea66b2a18ebb34c806d3ab4b465895a427a6d819
|
||||
DIST workrave-1.10.6.tar.gz 6444740 SHA256 f8699fbbfef7f3de2226f5f7dc4c74d98de3b59bfed4c6dac70bb231ec405760 SHA512 5c2a7dac1614751edf925eefa945e08e0b2fb318903b12fc8d4acde0b6027ecb534c90933da14796edc958f0d9a2f892815fddea9ab41ac921756fc5577acd8e WHIRLPOOL 91c47a66f0ab60f2560b103ef7ac6591088296b470d3403d6d9f511d44e361fc6841d9fda85d9c24d6c60595ea66b2a18ebb34c806d3ab4b465895a427a6d819
|
||||
DIST workrave-1.10.15.tar.gz 6375380 SHA256 fa05bedbb32baae9d22ef2b1ac25e90bc9f1363ce588b396190b0240559f471c SHA512 e741f5d0748ffaba9c8e69bcbd67f7b371424423ec8cea81d082462e8c33751c3e322301ae0749037668dc53cab28b19ec2b162f98eb7afbbd5ab85bae33cf7e WHIRLPOOL 02c9f25f06ae0753f7edc418ade789c82bf39736b975e755265a86b2677842098efc966530cf9063401e2e63d9f1670e4fd4ba5d9b635d05faa5cc71b9146afa
|
||||
DIST workrave-1.10.8.tar.gz 6370506 SHA256 15e0c87c2172dc249031d97d4020ee4a47ea9073aa26dc06a4b15e91abf88479 SHA512 67c3725627b42c5b32a61eb4e62e45b4a802806217ddb311ee2b610d281f9c521f69cc4da0db5ded63c99691d9f5c272493a911ba504f335508ac64945cd7403 WHIRLPOOL 9fe2c6dbd2abacc76190dac94ed334bb8ecad1dfb714afa6fee69cbbeae3981f960113dce52b54fb6935bacb29d7ad3939b4aba6ef6323b93d05b56b166edb7e
|
||||
|
@ -0,0 +1,31 @@
|
||||
From e0516ff9a2a49b3fa5698ab1902b2579609c45b5 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Wagner <sebix@sebix.at>
|
||||
Date: Fri, 13 May 2016 23:32:35 +0200
|
||||
Subject: [PATCH] Fix ifdef in GSettings hh, so gconf headers work
|
||||
|
||||
Signed-off-by: Sebastian Wagner <sebix@sebix.at>
|
||||
---
|
||||
backend/src/GSettingsConfigurator.hh | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/backend/src/GSettingsConfigurator.hh b/backend/src/GSettingsConfigurator.hh
|
||||
index 9b8c5d6..3974396 100644
|
||||
--- a/backend/src/GSettingsConfigurator.hh
|
||||
+++ b/backend/src/GSettingsConfigurator.hh
|
||||
@@ -17,8 +17,8 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
//
|
||||
|
||||
-#ifndef GCONFCONFIGURATOR_HH
|
||||
-#define GCONFCONFIGURATOR_HH
|
||||
+#ifndef GSETTINGSCONFIGURATOR_HH
|
||||
+#define GSETTINGSCONFIGURATOR_HH
|
||||
|
||||
#include <string>
|
||||
#include <map>
|
||||
@@ -69,4 +69,4 @@ private:
|
||||
};
|
||||
|
||||
|
||||
-#endif // GCONFCONFIGURATOR_HH
|
||||
+#endif // GGSETTINGSCONFIGURATOR_HH
|
@ -1,95 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
GCONF_DEBUG="yes"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit autotools eutils gnome2 python-single-r1 versionator
|
||||
|
||||
DESCRIPTION="Helpful utility to attack Repetitive Strain Injury (RSI)"
|
||||
HOMEPAGE="http://www.workrave.org/"
|
||||
# SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
MY_PV=$(replace_all_version_separators '_')
|
||||
SRC_URI="https://github.com/rcaelers/${PN}/archive/v${MY_PV}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ppc x86"
|
||||
|
||||
# dbus support looks to be used only for trying to use panel applets on gnome3!
|
||||
IUSE="ayatana doc distribution gnome gstreamer mate nls pulseaudio test xfce"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.28.0:2
|
||||
>=x11-libs/gtk+-3.0:3
|
||||
>=dev-cpp/gtkmm-3.0.0:3.0
|
||||
>=dev-cpp/glibmm-2.28.0:2
|
||||
>=dev-libs/libsigc++-2.2.4.2:2
|
||||
ayatana? (
|
||||
>=dev-libs/libdbusmenu-0.4[gtk3]
|
||||
>=dev-libs/libindicator-0.4:3 )
|
||||
distribution? ( >=net-libs/gnet-2 )
|
||||
gnome? ( >=gnome-base/gnome-shell-3.6.2 )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0 )
|
||||
mate? ( mate-base/mate-applets )
|
||||
pulseaudio? ( >=media-sound/pulseaudio-0.9.15 )
|
||||
xfce? (
|
||||
>=x11-libs/gtk+-2.6.0:2
|
||||
>=xfce-base/xfce4-panel-4.4 )
|
||||
x11-libs/libXScrnSaver
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXtst
|
||||
x11-libs/libXt
|
||||
x11-libs/libXmu
|
||||
"
|
||||
# dbus? (
|
||||
# >=sys-apps/dbus-1.2
|
||||
# dev-libs/dbus-glib )
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-util/intltool-0.40.0
|
||||
x11-proto/xproto
|
||||
x11-proto/inputproto
|
||||
x11-proto/recordproto
|
||||
dev-python/cheetah
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
app-text/docbook-sgml-utils
|
||||
app-text/xmlto )
|
||||
nls? ( >=sys-devel/gettext-0.17 )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
eautoreconf
|
||||
gnome2_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
gnome2_src_configure \
|
||||
--disable-dbus \
|
||||
--enable-exercises \
|
||||
--disable-experimental \
|
||||
--disable-gnome2 \
|
||||
--disable-static \
|
||||
--disable-xml \
|
||||
$(use_enable ayatana indicator) \
|
||||
$(use_enable doc manual) \
|
||||
$(use_enable distribution) \
|
||||
$(use_enable gnome gnome3) \
|
||||
$(use_enable gstreamer) \
|
||||
$(use_enable mate) \
|
||||
$(use_enable nls) \
|
||||
$(use_enable pulseaudio pulse) \
|
||||
$(use_enable test tests) \
|
||||
$(use_enable xfce)
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST dia2code-0.8.7.tar.gz 173733 SHA256 bebeeea56370bea416241128502144736d54d560b32d875174c5927089843adf SHA512 b02eea93488ab388aa6560ed62aef68d8d0f33e8ebf0237122d5038fd007dd1035180bcfe818edbdeb825d7767553d5c8f115acf57fce8085676cfbf6cb821e3 WHIRLPOOL 43e68f100ceca7acbd062847150086fa7c25edd5c0a819970d5e676ed6037d5d3140807cd57a0784d45cc863178521d721015b253bd745d37c73cb037fbbfa7b
|
||||
DIST dia2code-0.8.8.tar.gz 480548 SHA256 b7431a3f8a9f703397e4b849f304897a2c7150a378fe6069ae17cd2bfc1e6294 SHA512 15dfbad66fc7855f0ccc31cfd32488de13380653dcd72a7a47cfcec60727aea265373da3b829f2bb62c4aade5cb06b0cb884fa29b197545a5268b03c75e717a2 WHIRLPOOL 2cbdfaab1e733c4752ca7457a2763b539a1ed48eb351e6bd62264757fa862a11dc1f012a8d957cd05d3e199e88649b2b9c68cf8058e1da52ddc070053e35d6ba
|
||||
|
@ -0,0 +1,23 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
inherit gnome2
|
||||
|
||||
DESCRIPTION="Convert UML diagrams produced with Dia to various source code flavours"
|
||||
HOMEPAGE="http://dia2code.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-libs/libxml2"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_install() {
|
||||
gnome2_src_install
|
||||
doman dia2code.1
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST skrooge-2.3.0.tar.xz 17533492 SHA256 76f57e2cede320848f1f1bef41b3be128aec9d59a8e643701b30bcae61f8a11a SHA512 b4ccd3b21852e726a4872b1df76e2a65f031b55dfc4adc7d9dddeb9a26a9b9c61a9a42c94004de2e159646c900a9d343a5b891053d6566f5572f40a18bfd51e3 WHIRLPOOL 3f6d5337af0d7d721cb0e050b1eda7da99e43a5ee0e07db815ce0bd384a98694601ee58f4becfddcbb85d636f1ba47178632c5bbc28ef0b65f3e482049cc6d1c
|
||||
DIST skrooge-2.4.0.tar.xz 18000104 SHA256 132d022337140f841f51420536c31dfe07c90fa3a38878279026825f5d2526fe SHA512 ce2a9aaf67ed8b751ce062bea020c999da0232aca7d1ddcf58294f76435123231c65cc07f818c92499d142941327253f491cbec48fa504541fe91effde8b78c0 WHIRLPOOL 4cc00833e5df03d8d6b071b1ba612258749852f8acf5bf94c2cefd61680516c2a3a53c8d05273c2687886849dac1c562d5a17b1015090876ab9b570130dd73f7
|
||||
|
@ -1,74 +0,0 @@
|
||||
From: Stephane Mankowski <stephane@mankowski.fr>
|
||||
Date: Wed, 24 Feb 2016 14:07:00 +0000
|
||||
Subject: Building the v2.3.0 package on Arch Linux dies with an error 'isnan' was not declared in this scope
|
||||
X-Git-Url: http://quickgit.kde.org/?p=skrooge.git&a=commitdiff&h=dacb104d4c803679be744c198c70a871c2078dd0
|
||||
---
|
||||
Building the v2.3.0 package on Arch Linux dies with an error 'isnan' was not declared in this scope
|
||||
BUG:359679
|
||||
---
|
||||
|
||||
|
||||
--- a/plugins/import/skrooge_import_gnc/skgimportplugingnc.cpp
|
||||
+++ b/plugins/import/skrooge_import_gnc/skgimportplugingnc.cpp
|
||||
@@ -27,7 +27,6 @@
|
||||
|
||||
#include <qdom.h>
|
||||
#include <qfileinfo.h>
|
||||
-#include <math.h>
|
||||
#include <cmath>
|
||||
|
||||
#include "skgtraces.h"
|
||||
@@ -36,11 +35,6 @@
|
||||
#include "skgobjectbase.h"
|
||||
#include "skgpayeeobject.h"
|
||||
#include "skgimportexportmanager.h"
|
||||
-
|
||||
-#ifdef Q_OS_WIN
|
||||
-#define isnan(a) _isnan(a)
|
||||
-#define isinf(a) !_finite(a)
|
||||
-#endif
|
||||
|
||||
/**
|
||||
* This plugin factory.
|
||||
@@ -386,7 +380,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
- if (!isnan(info.value)) {
|
||||
+ if (!std::isnan(info.value)) {
|
||||
QChar accountType = mapIdType[info.account.text()];
|
||||
if (accountType == 'C') {
|
||||
suboperationsList.push_front(info);
|
||||
|
||||
--- a/skgbasemodeler/skgdocument.cpp
|
||||
+++ b/skgbasemodeler/skgdocument.cpp
|
||||
@@ -42,7 +42,6 @@
|
||||
#include <qurl.h>
|
||||
|
||||
#include <sqlite3.h>
|
||||
-#include <math.h>
|
||||
#include <cmath>
|
||||
|
||||
#include "skgtraces.h"
|
||||
@@ -51,11 +50,6 @@
|
||||
#include "skgpropertyobject.h"
|
||||
#include "skgtransactionmng.h"
|
||||
#include "skgreport.h"
|
||||
-
|
||||
-#ifdef Q_OS_WIN
|
||||
-#define isnan(a) _isnan(a)
|
||||
-#define isinf(a) !_finite(a)
|
||||
-#endif
|
||||
|
||||
#ifdef SKGCIPHER
|
||||
#define SQLDRIVERNAME QStringLiteral("SKGSQLCIPHER")
|
||||
@@ -2693,7 +2687,7 @@
|
||||
if (iValue > 0) {
|
||||
p = '+' % p;
|
||||
}
|
||||
- if (p.count() > 10 || isnan(iValue) || isinf(iValue)) {
|
||||
+ if (p.count() > 10 || std::isnan(iValue) || std::isinf(iValue)) {
|
||||
p = QChar(8734);
|
||||
}
|
||||
return "<font color=\"" %
|
||||
|
@ -1,98 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
KDE_GCC_MINIMAL="4.9"
|
||||
KDE_HANDBOOK="forceoptional"
|
||||
KDE_TEST="forceoptional"
|
||||
VIRTUALX_REQUIRED="test"
|
||||
inherit kde5
|
||||
|
||||
DESCRIPTION="Personal finances manager, aiming at being simple and intuitive"
|
||||
HOMEPAGE="http://www.skrooge.org/"
|
||||
[[ ${PV} == 9999 ]] || SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="activities crypt ofx"
|
||||
|
||||
COMMON_DEPEND="
|
||||
$(add_frameworks_dep karchive)
|
||||
$(add_frameworks_dep kcompletion)
|
||||
$(add_frameworks_dep kconfig)
|
||||
$(add_frameworks_dep kconfigwidgets)
|
||||
$(add_frameworks_dep kcoreaddons)
|
||||
$(add_frameworks_dep kdbusaddons)
|
||||
$(add_frameworks_dep kdelibs4support)
|
||||
$(add_frameworks_dep ki18n)
|
||||
$(add_frameworks_dep kiconthemes)
|
||||
$(add_frameworks_dep kio)
|
||||
$(add_frameworks_dep kitemviews)
|
||||
$(add_frameworks_dep knewstuff)
|
||||
$(add_frameworks_dep knotifications)
|
||||
$(add_frameworks_dep knotifyconfig)
|
||||
$(add_frameworks_dep kparts)
|
||||
$(add_frameworks_dep krunner)
|
||||
$(add_frameworks_dep kservice)
|
||||
$(add_frameworks_dep ktextwidgets)
|
||||
$(add_frameworks_dep kwallet)
|
||||
$(add_frameworks_dep kwidgetsaddons)
|
||||
$(add_frameworks_dep kxmlgui)
|
||||
$(add_qt_dep qtconcurrent)
|
||||
$(add_qt_dep qtdbus)
|
||||
$(add_qt_dep qtdeclarative 'widgets')
|
||||
$(add_qt_dep qtgui)
|
||||
$(add_qt_dep qtprintsupport)
|
||||
$(add_qt_dep qtscript)
|
||||
$(add_qt_dep qtsql)
|
||||
$(add_qt_dep qtsvg)
|
||||
$(add_qt_dep qtwebkit)
|
||||
$(add_qt_dep qtwidgets)
|
||||
$(add_qt_dep qtxml)
|
||||
app-crypt/qca:2[qt5]
|
||||
dev-libs/grantlee:5
|
||||
activities? ( $(add_frameworks_dep kactivities) )
|
||||
crypt? ( dev-db/sqlcipher )
|
||||
!crypt? ( dev-db/sqlite:3 )
|
||||
ofx? ( >=dev-libs/libofx-0.9.1 )
|
||||
"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
$(add_frameworks_dep kdesignerplugin)
|
||||
$(add_frameworks_dep kguiaddons)
|
||||
$(add_frameworks_dep kjobwidgets)
|
||||
$(add_frameworks_dep kwindowsystem)
|
||||
$(add_qt_dep designer)
|
||||
dev-libs/libxslt
|
||||
virtual/pkgconfig
|
||||
x11-misc/shared-mime-info
|
||||
"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/skrooge:4
|
||||
"
|
||||
|
||||
# hangs + installs files
|
||||
RESTRICT="test"
|
||||
|
||||
DOCS=( AUTHORS CHANGELOG README TODO )
|
||||
|
||||
PATCHES=( "${FILESDIR}/${P}-glibc-2.23.patch" )
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DSKG_BUILD_TEST=$(usex test)
|
||||
-DSKG_CIPHER=$(usex crypt)
|
||||
$(cmake-utils_use_find_package activities KF5Activities)
|
||||
$(cmake-utils_use_find_package ofx LibOfx)
|
||||
)
|
||||
|
||||
kde5_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local mycmakeargs=(
|
||||
-DSKG_BUILD_TEST=ON
|
||||
)
|
||||
kde5_src_test
|
||||
}
|
@ -1,185 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
SCONS_MIN_VERSION="2.3.0"
|
||||
CHECKREQS_DISK_BUILD="2400M"
|
||||
CHECKREQS_DISK_USR="512M"
|
||||
CHECKREQS_MEMORY="1024M"
|
||||
|
||||
inherit eutils flag-o-matic multilib pax-utils scons-utils systemd toolchain-funcs user versionator check-reqs
|
||||
|
||||
MY_P=${PN}-src-r${PV/_rc/-rc}
|
||||
|
||||
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
|
||||
HOMEPAGE="http://www.mongodb.org"
|
||||
SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3 Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="debug kerberos libressl mms-agent ssl test +tools"
|
||||
|
||||
RDEPEND=">=app-arch/snappy-1.1.2
|
||||
|| ( =dev-cpp/yaml-cpp-0.5.1 >dev-cpp/yaml-cpp-0.5.2 )
|
||||
>=dev-libs/boost-1.57[threads(+)]
|
||||
>=dev-libs/libpcre-8.37[cxx]
|
||||
dev-libs/snowball-stemmer
|
||||
net-libs/libpcap
|
||||
>=sys-libs/zlib-1.2.8
|
||||
mms-agent? ( app-admin/mms-agent )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-devel/gcc-4.8.2:*
|
||||
sys-libs/ncurses
|
||||
sys-libs/readline
|
||||
debug? ( dev-util/valgrind )
|
||||
kerberos? ( dev-libs/cyrus-sasl[kerberos] )
|
||||
test? (
|
||||
dev-python/pymongo
|
||||
dev-python/pyyaml
|
||||
)"
|
||||
PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ ${REPLACING_VERSIONS} < 3.0 ]]; then
|
||||
ewarn "To upgrade an existing MongoDB deployment to 3.2, you must be"
|
||||
ewarn "running a 3.0-series release. Please update to the latest 3.0"
|
||||
ewarn "release before continuing if wish to keep your data."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup mongodb
|
||||
enewuser mongodb -1 -1 /var/lib/${PN} mongodb
|
||||
|
||||
# Maintainer notes
|
||||
#
|
||||
# --use-system-tcmalloc is strongly NOT recommended:
|
||||
# https://www.mongodb.org/about/contributors/tutorial/build-mongodb-from-source/
|
||||
|
||||
scons_opts=(
|
||||
CC="$(tc-getCC)"
|
||||
CXX="$(tc-getCXX)"
|
||||
|
||||
--disable-warnings-as-errors
|
||||
--use-system-boost
|
||||
--use-system-pcre
|
||||
--use-system-snappy
|
||||
--use-system-stemmer
|
||||
--use-system-yaml
|
||||
--use-system-zlib
|
||||
)
|
||||
|
||||
# wiredtiger not supported on 32bit platforms #572166
|
||||
use x86 && scons_opts+=( --wiredtiger=off )
|
||||
|
||||
if use debug; then
|
||||
scons_opts+=( --dbg=on )
|
||||
fi
|
||||
|
||||
if use prefix; then
|
||||
scons_opts+=(
|
||||
--cpppath="${EPREFIX}/usr/include"
|
||||
--libpath="${EPREFIX}/usr/$(get_libdir)"
|
||||
)
|
||||
fi
|
||||
|
||||
if use kerberos; then
|
||||
scons_opts+=( --use-sasl-client )
|
||||
fi
|
||||
|
||||
if use ssl; then
|
||||
scons_opts+=( --ssl )
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}/${PN}-3.2.0-fix-scons.patch" \
|
||||
"${FILESDIR}/${P}-boost-1.60.patch"
|
||||
epatch_user
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# respect mongoDB upstream's basic recommendations
|
||||
# see bug #536688 and #526114
|
||||
if ! use debug; then
|
||||
filter-flags '-m*'
|
||||
filter-flags '-O?'
|
||||
fi
|
||||
escons "${scons_opts[@]}" core tools
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
|
||||
|
||||
for x in /var/{lib,log}/${PN}; do
|
||||
keepdir "${x}"
|
||||
fowners mongodb:mongodb "${x}"
|
||||
done
|
||||
|
||||
doman debian/mongo*.1
|
||||
dodoc README docs/building.md
|
||||
|
||||
newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
|
||||
newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
|
||||
newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
|
||||
newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
|
||||
|
||||
insinto /etc
|
||||
newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
|
||||
newins "${FILESDIR}/${PN/db/s}.conf-r2" ${PN/db/s}.conf
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
|
||||
insinto /etc/logrotate.d/
|
||||
newins "${FILESDIR}/${PN}.logrotate" ${PN}
|
||||
|
||||
# see bug #526114
|
||||
pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# wrt bug #461466
|
||||
if [[ "$(get_libdir)" == "lib64" ]]; then
|
||||
rmdir "${ED}"/usr/lib/ &>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# this one test fails
|
||||
rm jstests/core/repl_write_threads_start_param.js
|
||||
|
||||
./buildscripts/resmoke.py --dbpathPrefix=test --suites core || die "Tests failed"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ ${REPLACING_VERSIONS} < 3.0 ]]; then
|
||||
ewarn "!! IMPORTANT !!"
|
||||
ewarn " "
|
||||
ewarn "${PN} configuration files have changed !"
|
||||
ewarn " "
|
||||
ewarn "Make sure you migrate from /etc/conf.d/${PN} to the new YAML standard in /etc/${PN}.conf"
|
||||
ewarn " http://docs.mongodb.org/manual/reference/configuration-options/"
|
||||
ewarn " "
|
||||
ewarn "Make sure you also follow the upgrading process :"
|
||||
ewarn " http://docs.mongodb.org/master/release-notes/3.0-upgrade/"
|
||||
ewarn " "
|
||||
ewarn "MongoDB 3.0 introduces the WiredTiger storage engine."
|
||||
ewarn "WiredTiger is incompatible with MMAPv1 and you need to dump/reload your data if you want to use it."
|
||||
ewarn "Once you have your data dumped, you need to set storage.engine: wiredTiger in /etc/${PN}.conf"
|
||||
ewarn " http://docs.mongodb.org/master/release-notes/3.0-upgrade/#change-storage-engine-to-wiredtiger"
|
||||
fi
|
||||
|
||||
ewarn "Make sure to read the release notes and follow the upgrade process:"
|
||||
ewarn " https://docs.mongodb.org/manual/release-notes/3.2/"
|
||||
ewarn " https://docs.mongodb.org/master/release-notes/3.2-upgrade/"
|
||||
ewarn
|
||||
ewarn " Starting in 3.2, MongoDB uses the WiredTiger as the default storage engine."
|
||||
}
|
@ -0,0 +1,204 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit java-vm-2 multilib-build prefix toolchain-funcs
|
||||
|
||||
MULTILIB_COMPAT=( abi_x86_{32,64} )
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
|
||||
BASE_URI="https://dev.gentoo.org/~chewi/distfiles"
|
||||
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 x86; do
|
||||
SRC_URI+="
|
||||
${abi}? (
|
||||
${BASE_URI}/${PN}-core-${PV}-${abi}.tar.xz
|
||||
examples? ( ${BASE_URI}/${PN}-examples-${PV}-${abi}.tar.xz )
|
||||
)"
|
||||
done
|
||||
|
||||
DESCRIPTION="A Gentoo-made binary build of the IcedTea JDK"
|
||||
HOMEPAGE="http://icedtea.classpath.org"
|
||||
LICENSE="GPL-2-with-classpath-exception"
|
||||
SLOT="7"
|
||||
|
||||
IUSE="+alsa cjk +cups doc examples +gtk headless-awt multilib nsplugin nss pulseaudio selinux source +webstart"
|
||||
REQUIRED_USE="gtk? ( !headless-awt ) nsplugin? ( !headless-awt )"
|
||||
|
||||
RESTRICT="preserve-libs strip"
|
||||
QA_PREBUILT="opt/.*"
|
||||
|
||||
RDEPEND=">=dev-libs/glib-2.42:2%
|
||||
>=dev-libs/nss-3.16.1-r1%
|
||||
>=dev-libs/nspr-4.10%
|
||||
>=media-libs/fontconfig-2.11:1.0%
|
||||
>=media-libs/freetype-2.5.5:2%
|
||||
>=media-libs/lcms-2.6:2%
|
||||
>=sys-libs/zlib-1.2.8-r1%
|
||||
virtual/jpeg:62%
|
||||
alsa? ( >=media-libs/alsa-lib-1.0% )
|
||||
cups? ( >=net-print/cups-2.0% )
|
||||
gtk? (
|
||||
>=dev-libs/atk-2.16.0%
|
||||
>=x11-libs/cairo-1.14.2%
|
||||
x11-libs/gdk-pixbuf:2%
|
||||
>=x11-libs/gtk+-2.24:2%
|
||||
>=x11-libs/pango-1.36%
|
||||
)
|
||||
!headless-awt? (
|
||||
>=media-libs/giflib-4.1.6-r1%
|
||||
media-libs/libpng:0/16%
|
||||
>=x11-libs/libX11-1.6%
|
||||
>=x11-libs/libXcomposite-0.4%
|
||||
>=x11-libs/libXext-1.3%
|
||||
>=x11-libs/libXi-1.7%
|
||||
>=x11-libs/libXrender-0.9.8%
|
||||
>=x11-libs/libXtst-1.2%
|
||||
)"
|
||||
|
||||
# gsettings-desktop-schemas is needed for native proxy support. #431972
|
||||
RDEPEND=">=gnome-base/gsettings-desktop-schemas-3.12.2
|
||||
media-fonts/dejavu
|
||||
>=sys-devel/gcc-4.9.3[multilib?]
|
||||
>=sys-libs/glibc-2.22[multilib?]
|
||||
cjk? (
|
||||
media-fonts/arphicfonts
|
||||
media-fonts/baekmuk-fonts
|
||||
media-fonts/lklug
|
||||
media-fonts/lohit-fonts
|
||||
media-fonts/sazanami
|
||||
)
|
||||
selinux? ( sec-policy/selinux-java )
|
||||
multilib? ( ${RDEPEND//%/[${MULTILIB_USEDEP}]} )
|
||||
!multilib? ( ${RDEPEND//%/} )"
|
||||
|
||||
DEPEND="!arm? ( dev-util/patchelf )"
|
||||
|
||||
PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
|
||||
nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )
|
||||
pulseaudio? ( dev-java/icedtea-sound )"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ "$(tc-is-softfloat)" != "no" ]]; then
|
||||
die "These binaries require a hardfloat system."
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if ! use alsa; then
|
||||
rm -v */jre/lib/*/libjsoundalsa.* || die
|
||||
fi
|
||||
|
||||
if use headless-awt; then
|
||||
rm -vr */jre/lib/*/{xawt,libsplashscreen.*} \
|
||||
*/{,jre/}bin/policytool */bin/appletviewer || die
|
||||
fi
|
||||
|
||||
if ! use gtk; then
|
||||
rm -v */jre/lib/*/libjavagtk.* || die
|
||||
fi
|
||||
|
||||
local lib=${P}-${ABI}/jre/lib
|
||||
|
||||
# NSS is already required because of SunEC. The nss flag in the
|
||||
# icedtea package just comments or uncomments this line.
|
||||
sed -i "/=sun\.security\.pkcs11\.SunPKCS11/s/^#*$(usex nss '/' '/#')/" \
|
||||
${lib}/security/java.security || die
|
||||
|
||||
if [[ -n "${EPREFIX}" ]]; then
|
||||
# The binaries are built on a non-prefixed system so the
|
||||
# fontconfig needs to have prefixes inserted.
|
||||
rm ${lib}/fontconfig.Gentoo.bfc || die
|
||||
mv ${lib}/fontconfig.Gentoo.properties{.src,} || die
|
||||
hprefixify ${lib}/fontconfig.Gentoo.properties.src
|
||||
fi
|
||||
|
||||
# Fix the RPATHs, except on arm.
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=543658#c3
|
||||
# https://github.com/NixOS/patchelf/issues/8
|
||||
if use arm; then
|
||||
ewarn "The RPATHs on these binaries are normally modified to avoid"
|
||||
ewarn "conflicts with an icedtea installation built from source. This"
|
||||
ewarn "is currently not possible on ARM so please refrain from"
|
||||
ewarn "installing dev-java/icedtea on the same system."
|
||||
else
|
||||
local old="/usr/$(get_libdir)/icedtea${SLOT}"
|
||||
local new="${EPREFIX}/opt/${P}"
|
||||
local elf rpath
|
||||
|
||||
for elf in $(find -type f -executable ! -name "*.cgi" || die); do
|
||||
rpath=$(patchelf --print-rpath "${elf}" || die "patchelf ${elf}")
|
||||
|
||||
if [[ -n "${rpath}" ]]; then
|
||||
patchelf --set-rpath "${rpath//${old}/${new}}" "${elf}" || die "patchelf ${elf}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
local dest="/opt/${P}-${ABI}"
|
||||
dest="${dest/%-${DEFAULT_ABI}/}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
dodir "${dest}"
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
dodoc ${P}-${ABI}/doc/{ASSEMBLY_EXCEPTION,AUTHORS,NEWS,README,THIRD_PARTY_README}
|
||||
use doc && dodoc -r ${P}/doc/html
|
||||
|
||||
# doins doesn't preserve executable bits.
|
||||
cp -pRP ${P}-${ABI}/{bin,include,jre,lib,man} "${ddest}" || die
|
||||
|
||||
if use examples; then
|
||||
cp -pRP ${P}-${ABI}/{demo,sample} "${ddest}" || die
|
||||
fi
|
||||
|
||||
if use source; then
|
||||
cp ${P}/src.zip "${ddest}" || die
|
||||
fi
|
||||
|
||||
# Use default VMHANDLE.
|
||||
java-vm_install-env "${FILESDIR}/icedtea-bin.env.sh"
|
||||
else
|
||||
local x native=$(get_system_arch ${DEFAULT_ABI})
|
||||
|
||||
for x in {,/jre}/{bin,lib/$(get_system_arch)} /jre/lib/rt.jar; do
|
||||
dodir "${dest}"${x%/*}
|
||||
cp -pRP ${P}-${ABI}${x} "${ddest}"${x} || die
|
||||
done
|
||||
|
||||
for x in ${P}-${DEFAULT_ABI}{,/jre}/lib/*; do
|
||||
[[ ${x##*/} = ${native} ]] && continue
|
||||
[[ -e "${ddest}"/${x#*/} ]] && continue
|
||||
dosym "${EPREFIX}"/opt/${P}/${x#*/} "${dest}"/${x#*/}
|
||||
done
|
||||
|
||||
# Use ABI-suffixed VMHANDLE.
|
||||
VMHANDLE+="-${ABI}" java-vm_install-env "${FILESDIR}/icedtea-bin.env.sh"
|
||||
fi
|
||||
|
||||
# Both icedtea itself and the icedtea ebuild set PAX markings but we
|
||||
# disable them for the icedtea-bin build because the line below will
|
||||
# respect end-user settings when icedtea-bin is actually installed.
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
|
||||
# Each invocation appends to the config.
|
||||
java-vm_revdep-mask "${EPREFIX}${dest}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use multilib; then
|
||||
multilib_foreach_abi multilib_src_install
|
||||
else
|
||||
multilib_src_install
|
||||
fi
|
||||
|
||||
java-vm_sandbox-predict /proc/self/coredump_filter
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
From 2fcc388d9bf238673ed84b8f38d7753279aea48c Mon Sep 17 00:00:00 2001
|
||||
From: Michael Orlitzky <michael@orlitzky.com>
|
||||
Date: Thu, 4 Aug 2016 11:42:56 -0400
|
||||
Subject: [PATCH 1/1] Zend/zend_operators.h: disable x86 assembly on all newer
|
||||
GCC-4.x.
|
||||
|
||||
In bug 69896, a fix was committed to work around a build error: 'asm'
|
||||
operand has impossible constraints, in zend_operators.h, on x86. At
|
||||
the time, the problem was only visible with gcc-4.8, and the fix was
|
||||
to disable that chunk of assembly for gcc-4.8. With gcc-4.9, the
|
||||
problem persists, so we now need to check for gcc-4.9 (at least) in
|
||||
addition to gcc-4.8.
|
||||
|
||||
This commit modifies the earlier conditional that checks for
|
||||
gcc-4.8. The existing check was for equality on the minor component of
|
||||
the gcc version, namely 8. The == operator that performs the
|
||||
comparison has been changed to <=, so that it catches any gcc-4.x with
|
||||
x >= 8. This has been tested and fixes the build on x86 hardware with
|
||||
gcc-4.9.
|
||||
|
||||
PHP-Bug: 69896
|
||||
Gentoo-Bug: 571658
|
||||
---
|
||||
Zend/zend_operators.h | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h
|
||||
index 3705022..dd7c354 100644
|
||||
--- a/Zend/zend_operators.h
|
||||
+++ b/Zend/zend_operators.h
|
||||
@@ -520,7 +520,7 @@ static zend_always_inline void fast_long_decrement_function(zval *op1)
|
||||
|
||||
static zend_always_inline void fast_long_add_function(zval *result, zval *op1, zval *op2)
|
||||
{
|
||||
-#if defined(__GNUC__) && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__)
|
||||
+#if defined(__GNUC__) && defined(__i386__) && !(4 == __GNUC__ && 8 <= __GNUC_MINOR__)
|
||||
__asm__(
|
||||
"movl (%1), %%eax\n\t"
|
||||
"addl (%2), %%eax\n\t"
|
||||
@@ -606,7 +606,7 @@ static zend_always_inline int fast_add_function(zval *result, zval *op1, zval *o
|
||||
|
||||
static zend_always_inline void fast_long_sub_function(zval *result, zval *op1, zval *op2)
|
||||
{
|
||||
-#if defined(__GNUC__) && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__)
|
||||
+#if defined(__GNUC__) && defined(__i386__) && !(4 == __GNUC__ && 8 <= __GNUC_MINOR__)
|
||||
__asm__(
|
||||
"movl (%1), %%eax\n\t"
|
||||
"subl (%2), %%eax\n\t"
|
||||
--
|
||||
2.7.3
|
||||
|
@ -1,814 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils autotools flag-o-matic versionator libtool systemd
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
function php_get_uri ()
|
||||
{
|
||||
case "${1}" in
|
||||
"php-pre")
|
||||
echo "http://downloads.php.net/dsp/${2}"
|
||||
;;
|
||||
"php")
|
||||
echo "http://www.php.net/distributions/${2}"
|
||||
;;
|
||||
"olemarkus")
|
||||
echo "https://dev.gentoo.org/~olemarkus/php/${2}"
|
||||
;;
|
||||
"gentoo")
|
||||
echo "mirror://gentoo/${2}"
|
||||
;;
|
||||
*)
|
||||
die "unhandled case in php_get_uri"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
PHP_MV="$(get_major_version)"
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# alias, so we can handle different types of releases (finals, rcs, alphas,
|
||||
# betas, ...) w/o changing the whole ebuild
|
||||
PHP_PV="${PV/_rc/RC}"
|
||||
PHP_PV="${PHP_PV/_alpha/alpha}"
|
||||
PHP_PV="${PHP_PV/_beta/beta}"
|
||||
PHP_RELEASE="php"
|
||||
[[ ${PV} == ${PV/_alpha/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_beta/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
|
||||
PHP_P="${PN}-${PHP_PV}"
|
||||
|
||||
PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
|
||||
|
||||
PHP_FPM_CONF_VER="1"
|
||||
|
||||
SRC_URI="${PHP_SRC_URI}"
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="http://php.net/"
|
||||
LICENSE="PHP-3"
|
||||
|
||||
S="${WORKDIR}/${PHP_P}"
|
||||
|
||||
# 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} bcmath berkdb bzip2 calendar cdb cjk
|
||||
crypt +ctype curl debug
|
||||
enchant exif frontbase +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"
|
||||
|
||||
DEPEND="
|
||||
>=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )"
|
||||
|
||||
# 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.
|
||||
DEPEND="${DEPEND}
|
||||
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
|
||||
) )
|
||||
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[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/mysql )
|
||||
mysqli? ( >=virtual/mysql-4.1 )
|
||||
)
|
||||
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 )
|
||||
virtual/mta
|
||||
"
|
||||
|
||||
php="=${CATEGORY}/${PF}"
|
||||
|
||||
# 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 ) ) ) ) )"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
DEPEND="${DEPEND}
|
||||
sys-devel/flex
|
||||
>=sys-devel/m4-1.4.3
|
||||
>=sys-devel/libtool-1.5.18"
|
||||
|
||||
# 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_INI_FILE="php.ini"
|
||||
|
||||
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_FILE}"
|
||||
|
||||
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() {
|
||||
# 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
|
||||
|
||||
# Add user patches #357637
|
||||
epatch_user
|
||||
|
||||
# Force rebuilding aclocal.m4
|
||||
rm -f aclocal.m4 || die
|
||||
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_enable bcmath bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar calendar)
|
||||
$(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 -r "${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/sbin/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
|
||||
}
|
@ -1,808 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils autotools flag-o-matic versionator libtool systemd
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
function php_get_uri ()
|
||||
{
|
||||
case "${1}" in
|
||||
"php-pre")
|
||||
echo "http://downloads.php.net/ab/${2}"
|
||||
;;
|
||||
"php")
|
||||
echo "http://www.php.net/distributions/${2}"
|
||||
;;
|
||||
"olemarkus")
|
||||
echo "https://dev.gentoo.org/~olemarkus/php/${2}"
|
||||
;;
|
||||
"gentoo")
|
||||
echo "mirror://gentoo/${2}"
|
||||
;;
|
||||
*)
|
||||
die "unhandled case in php_get_uri"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
PHP_MV="$(get_major_version)"
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# alias, so we can handle different types of releases (finals, rcs, alphas,
|
||||
# betas, ...) w/o changing the whole ebuild
|
||||
PHP_PV="${PV/_rc/RC}"
|
||||
PHP_PV="${PHP_PV/_alpha/alpha}"
|
||||
PHP_PV="${PHP_PV/_beta/beta}"
|
||||
PHP_RELEASE="php"
|
||||
[[ ${PV} == ${PV/_alpha/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_beta/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
|
||||
PHP_P="${PN}-${PHP_PV}"
|
||||
|
||||
PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.xz")"
|
||||
|
||||
PHP_FPM_CONF_VER="1"
|
||||
|
||||
SRC_URI="${PHP_SRC_URI}"
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="http://php.net/"
|
||||
LICENSE="PHP-3"
|
||||
|
||||
S="${WORKDIR}/${PHP_P}"
|
||||
|
||||
# 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} bcmath berkdb bzip2 calendar cdb cjk
|
||||
crypt +ctype curl debug
|
||||
enchant exif frontbase +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"
|
||||
|
||||
DEPEND="
|
||||
>=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )"
|
||||
|
||||
# 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.
|
||||
DEPEND="${DEPEND}
|
||||
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
|
||||
) )
|
||||
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[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 )
|
||||
virtual/mta
|
||||
"
|
||||
|
||||
php="=${CATEGORY}/${PF}"
|
||||
|
||||
# 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 )"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
DEPEND="${DEPEND}
|
||||
sys-devel/flex
|
||||
>=sys-devel/m4-1.4.3
|
||||
>=sys-devel/libtool-1.5.18"
|
||||
|
||||
# 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_INI_FILE="php.ini"
|
||||
|
||||
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_FILE}"
|
||||
|
||||
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() {
|
||||
# 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"
|
||||
|
||||
# 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
|
||||
|
||||
# Add user patches #357637
|
||||
epatch_user
|
||||
|
||||
# Force rebuilding aclocal.m4
|
||||
rm -f aclocal.m4 || die
|
||||
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
|
||||
|
||||
# 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_enable bcmath bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar calendar)
|
||||
$(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 -r "${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/sbin/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
|
||||
}
|
@ -0,0 +1 @@
|
||||
DIST libprelude-3.0.0.tar.gz 2900153 SHA256 8dd1acdd49ec42b3c54642c33987c574ced43b92feb9a523998e07317434cec2 SHA512 a1fd51aa3bb1b68759a00dd1636cb96379f0e954a66f4e39887ab20a5b4c191a0455dd6bd5f41b20ad94d06fff59af7f89b258f42e1c0dd4cfc99185a77d1797 WHIRLPOOL 5ee5a90d0448c8079977dbf84a5c3650bc00aff8c6fe4355a7926313b2364824281d2fea898d92e80bc8b7cb17190c6f7e36b2c9de2ebc62f8b4411417541d58
|
@ -0,0 +1,14 @@
|
||||
When : when building perl bindings. Without this patch, it does not take care of LDFLAGS.
|
||||
Why : It is required if you want to customize your own LDFLAGS, example : for hardening
|
||||
Upstream : https://www.prelude-siem.org/issues/761 It should be added in the next version of Prelude.
|
||||
--- a/bindings/perl/Makefile.PL.in
|
||||
+++ b/bindings/perl/Makefile.PL.in
|
||||
@@ -27,7 +27,7 @@
|
||||
my %attributs = (NAME => 'Prelude',
|
||||
INC => '-I@top_builddir@ -I@top_builddir@/src/include -I@top_srcdir@/src/include -I@top_builddir@/src/libprelude-error -I@top_srcdir@/bindings/c++/include',
|
||||
LIBS => ["-L@top_builddir@/src/.libs -lprelude -L@top_builddir@/bindings/c++/.libs -lpreludecpp", "-L$ENV{LIBDIR} -lprelude @LIBPRELUDE_LIBS@ @LIBADD_DL@ @LTLIBTHREAD@" ],
|
||||
- LDDLFLAGS => "-L@top_builddir@/src/.libs $Config{lddlflags}");
|
||||
+ LDDLFLAGS => "-L@top_builddir@/src/.libs $Config{lddlflags} @LDFLAGS@,-rpath");
|
||||
|
||||
if ( abs_path("@top_srcdir@") ne abs_path("@top_builddir@") ) {
|
||||
foreach my $filename ( qw/Prelude.cxx Prelude.pm/ ) {
|
@ -0,0 +1,14 @@
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -525,9 +525,9 @@
|
||||
dnl * Ruby support *
|
||||
dnl **************************************************
|
||||
|
||||
-
|
||||
-AM_PATH_RUBY(,with_ruby=yes, with_ruby=no)
|
||||
+AC_ARG_WITH(ruby, AC_HELP_STRING(--with-ruby@<:@=PATH@:>@, Enable support for ruby binding @<:@default=auto@:>@),,with_ruby=no)
|
||||
if test x$with_ruby != xno; then
|
||||
+ AM_PATH_RUBY(,with_ruby=yes, with_ruby=no)
|
||||
RUBY_ARCHDIR=`$RUBY -e 'require "rbconfig.rb"; puts RbConfig::expand("\$(archdir)")'`
|
||||
RUBY_LIBRUBYARG=`$RUBY -e 'require "rbconfig.rb"; puts RbConfig::expand("\$(LIBRUBYARG)")'`
|
||||
|
@ -0,0 +1,20 @@
|
||||
When : when building ruby bindings, it can not find ruby versin so configure will never enable ruby support
|
||||
Why : It is required if you want to use libprelude with ruby
|
||||
Upstream : https://www.prelude-siem.org/issues/759 It should be added in the next version of Prelude.
|
||||
--- a/m4/am_path_ruby.m4
|
||||
+++ b/m4/am_path_ruby.m4
|
||||
@@ -96,11 +96,11 @@
|
||||
dnl (shared libraries)
|
||||
AC_CACHE_CHECK([for $am_display_RUBY extension module directory],
|
||||
[am_cv_ruby_rbexecdir],
|
||||
- [am_cv_ruby_rbexecdir=`$RUBY -rrbconfig -e "drive = File::PATH_SEPARATOR == ';' ? /\A\w:/ : /\A/; prefix = Regexp.new('\\A' + Regexp.quote(RbConfig::CONFIG[['prefix']])); \\$prefix = RbConfig::CONFIG[['prefix']].sub(drive, ''); \\$sitearchdir = RbConfig::CONFIG[['sitearchdir']].sub(prefix, '\\$(prefix)').sub(drive, ''); print \\$sitearchdir;" 2>/dev/null || echo "${RUBY_EXEC_PREFIX}/local/lib/site_ruby/${RUBY_VERSION}/${RUBY_PLATFORM}"`])
|
||||
+ [am_cv_ruby_rbexecdir=`$RUBY -r rbconfig -e "print RbConfig::CONFIG[['vendorarchdir']]"`])
|
||||
AC_SUBST([rbexecdir], [$am_cv_ruby_rbexecdir])
|
||||
|
||||
- RUBY_INCLUDES=`$RUBY -r rbconfig -e 'if RbConfig::CONFIG[["archdir"]] then print " -I" + RbConfig::CONFIG[["archdir"]] end
|
||||
- if RbConfig::CONFIG[["rubyhdrdir"]] then print " -I" + RbConfig::CONFIG[["rubyhdrdir"]] end'`
|
||||
+ RUBY_VER=`$RUBY -rrbconfig -e "print RbConfig::CONFIG[['ruby_pc']]" | sed 's/.pc//g'`
|
||||
+ RUBY_INCLUDES=`pkg-config $RUBY_VER --cflags`
|
||||
AC_SUBST([RUBY_INCLUDES])
|
||||
|
||||
dnl pkgrbexecdir -- $(rbexecdir)/$(PACKAGE)
|
@ -0,0 +1,85 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python{2_7,3_{3,4,5}} )
|
||||
|
||||
USE_RUBY="ruby21"
|
||||
|
||||
inherit autotools eutils python-r1 ruby-single
|
||||
|
||||
DESCRIPTION="Prelude-SIEM Framework Library"
|
||||
HOMEPAGE="https://www.prelude-siem.org"
|
||||
SRC_URI="https://www.prelude-siem.org/pkg/src/3.0.0/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc lua python ruby perl"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="dev-libs/libgcrypt:0=
|
||||
net-libs/gnutls
|
||||
perl? ( dev-lang/perl virtual/perl-ExtUtils-MakeMaker )
|
||||
lua? ( dev-lang/lua:* )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
python? ( ${PYTHON_DEPS} )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
doc? ( dev-util/gtk-doc )
|
||||
sys-devel/flex
|
||||
virtual/yacc
|
||||
>=dev-lang/swig-3.0.7
|
||||
virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-perl-hardening.patch"
|
||||
"${FILESDIR}/${P}-ruby-m4.patch"
|
||||
"${FILESDIR}/${P}-ruby-configure.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default_src_prepare
|
||||
|
||||
# Avoid null runpaths in Perl bindings.
|
||||
sed -e 's/ LD_RUN_PATH=""//' -i "${S}/bindings/Makefile.am" || die "sed failed"
|
||||
|
||||
mv "${S}/configure.in" "${S}/configure.ac" || die "mv failed"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local python2_configure=--without-python2
|
||||
local python3_configure=--without-python3
|
||||
|
||||
chk_python() {
|
||||
if [[ ${EPYTHON} == python2* ]]; then
|
||||
python2_configure=--with-python2
|
||||
elif [[ ${EPYTHON} == python3* ]]; then
|
||||
python3_configure=--with-python3
|
||||
fi
|
||||
}
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl chk_python
|
||||
fi
|
||||
|
||||
econf \
|
||||
--enable-easy-bindings \
|
||||
--with-swig \
|
||||
$(use_with perl) \
|
||||
$(use_enable doc gtk-doc) \
|
||||
$(use_with lua) \
|
||||
$(use_with ruby) \
|
||||
${python2_configure} \
|
||||
${python3_configure}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default_src_install
|
||||
prune_libtool_files --modules
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>thomas.andrejak@gmail.com</email>
|
||||
<name>Thomas Andrejak</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
Libprelude is a library that guarantees secure connections between all sensors
|
||||
and the Prelude Manager. Libprelude provides an Application Programming Interface
|
||||
(API) for the communication with Prelude sub-systems, it supplies the necessary
|
||||
functionality for generating and emitting IDMEF events with Prelude and automates
|
||||
the saving and re-transmission of data in times of temporary interruption of one
|
||||
of the components of the system.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
@ -0,0 +1 @@
|
||||
DIST libpreludedb-3.0.0.tar.gz 1269937 SHA256 608afa449388b2fcc25dc6aa2ad74ab2f22fd03ca3a0c0cdb2588d794f82d3ca SHA512 9d80e01be8cf028b8a843e68e45eeb84c561ff37e688fe5b8156e717f337b1db4d3de983f37a0544bf018238bec07580dce0c7208df005113efbba0aab34b981 WHIRLPOOL 1c700c34d05c5ba42fae40ff2597bf3f951bb49674eebfbb6ce80824bd59880f5a1402d786f00e4a5560da94c515968c11f9d84e67e88b1eedbfa02e364abd35
|
@ -0,0 +1,75 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python{2_7,3_{3,4,5}} )
|
||||
|
||||
inherit autotools eutils python-r1
|
||||
|
||||
DESCRIPTION="Framework to easy access to the Prelude database"
|
||||
HOMEPAGE="https://www.prelude-siem.org"
|
||||
SRC_URI="https://www.prelude-siem.org/pkg/src/3.0.0/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc python mysql postgres sqlite"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="dev-libs/libgcrypt:0=
|
||||
net-libs/gnutls
|
||||
dev-libs/libprelude
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
mysql? ( virtual/libmysqlclient )
|
||||
postgres? ( dev-db/postgresql:* )
|
||||
sqlite? ( dev-db/sqlite:3 )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
doc? ( dev-util/gtk-doc )
|
||||
sys-devel/flex
|
||||
virtual/yacc
|
||||
>=dev-lang/swig-3.0.7
|
||||
virtual/pkgconfig"
|
||||
|
||||
src_prepare() {
|
||||
default_src_prepare
|
||||
|
||||
mv "${S}/configure.in" "${S}/configure.ac" || die "mv failed"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local python2_configure=--without-python2
|
||||
local python3_configure=--without-python3
|
||||
|
||||
chk_python() {
|
||||
if [[ ${EPYTHON} == python2* ]]; then
|
||||
python2_configure=--with-python2
|
||||
elif [[ ${EPYTHON} == python3* ]]; then
|
||||
python3_configure=--with-python3
|
||||
fi
|
||||
}
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl chk_python
|
||||
fi
|
||||
|
||||
econf \
|
||||
--enable-easy-bindings \
|
||||
--with-swig \
|
||||
$(use_enable doc gtk-doc) \
|
||||
${python2_configure} \
|
||||
${python3_configure} \
|
||||
$(use_with mysql) \
|
||||
$(use_with postgres postgresql) \
|
||||
$(use_with sqlite sqlite3)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default_src_install
|
||||
prune_libtool_files --modules
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>thomas.andrejak@gmail.com</email>
|
||||
<name>Thomas Andrejak</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
The PreludeDB Library provides an abstraction layer upon the type and the
|
||||
format of the database used to store IDMEF alerts. It allows developers
|
||||
to use the Prelude IDMEF database easily and efficiently without
|
||||
worrying about SQL, and to access the database independently of the
|
||||
type/format of the database.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
@ -1,77 +0,0 @@
|
||||
--- nettle-2.7/examples/Makefile.in
|
||||
+++ nettle-2.7/examples/Makefile.in
|
||||
@@ -8,7 +8,7 @@
|
||||
include ../config.make
|
||||
|
||||
PRE_CPPFLAGS = -I.. -I$(top_srcdir)
|
||||
-PRE_LDFLAGS = -L..
|
||||
+PRE_LDFLAGS = -L../.lib
|
||||
|
||||
OPENSSL_LIBFLAGS = @OPENSSL_LIBFLAGS@
|
||||
BENCH_LIBS = @BENCH_LIBS@ -lm
|
||||
@@ -117,8 +117,8 @@
|
||||
-lhogweed -lnettle $(BENCH_LIBS) $(LIBS) $(OPENSSL_LIBFLAGS) \
|
||||
-o hogweed-benchmark$(EXEEXT)
|
||||
|
||||
-$(TARGETS) : io.$(OBJEXT) ../libnettle.a
|
||||
-$(HOGWEED_TARGETS): ../libhogweed.a
|
||||
+$(TARGETS) : io.$(OBJEXT) ../$(LIBNETTLE_FORLINK)
|
||||
+$(HOGWEED_TARGETS): ../$(LIBHOGWEED_FORLINK)
|
||||
|
||||
check: $(TS_ALL)
|
||||
LD_LIBRARY_PATH=../.lib PATH="../.lib:$$PATH" srcdir="$(srcdir)" \
|
||||
--- nettle-2.7/testsuite/Makefile.in
|
||||
+++ nettle-2.7/testsuite/Makefile.in
|
||||
@@ -8,7 +8,7 @@
|
||||
include ../config.make
|
||||
|
||||
PRE_CPPFLAGS = -I.. -I$(top_srcdir)
|
||||
-PRE_LDFLAGS = -L..
|
||||
+PRE_LDFLAGS = -L../.lib
|
||||
|
||||
TS_NETTLE_SOURCES = aes-test.c arcfour-test.c arctwo-test.c \
|
||||
blowfish-test.c cast128-test.c \
|
||||
@@ -96,7 +96,7 @@
|
||||
include $(srcdir)/.test-rules.make
|
||||
|
||||
$(TARGETS) $(EXTRA_TARGETS): testutils.$(OBJEXT) ../nettle-internal.$(OBJEXT) \
|
||||
- ../libnettle.a @IF_HOGWEED@ ../libhogweed.a
|
||||
+ ../$(LIBNETTLE_FORLINK) @IF_HOGWEED@ ../$(LIBHOGWEED_FORLINK)
|
||||
|
||||
# For use as, e.g.,
|
||||
#
|
||||
--- nettle-2.7/tools/Makefile.in
|
||||
+++ nettle-2.7/tools/Makefile.in
|
||||
@@ -15,7 +15,7 @@
|
||||
include ../config.make
|
||||
|
||||
PRE_CPPFLAGS = -I.. -I$(top_srcdir)
|
||||
-PRE_LDFLAGS = -L..
|
||||
+PRE_LDFLAGS = -L../.lib
|
||||
|
||||
HOGWEED_TARGETS = pkcs1-conv$(EXEEXT)
|
||||
TARGETS = sexp-conv$(EXEEXT) nettle-hash$(EXEEXT) nettle-lfib-stream$(EXEEXT) \
|
||||
@@ -34,19 +34,19 @@
|
||||
DISTFILES = $(SOURCES) Makefile.in input.h misc.h output.h parse.h
|
||||
|
||||
sexp_conv_OBJS = $(sexp_conv_SOURCES:.c=.$(OBJEXT)) $(getopt_OBJS)
|
||||
-sexp-conv$(EXEEXT): $(sexp_conv_OBJS) ../libnettle.a
|
||||
+sexp-conv$(EXEEXT): $(sexp_conv_OBJS) ../$(LIBNETTLE_FORLINK)
|
||||
$(LINK) $(sexp_conv_OBJS) -lnettle $(LIBS) -o $@
|
||||
|
||||
-nettle-lfib-stream$(EXEEXT): nettle-lfib-stream.$(OBJEXT) ../libnettle.a
|
||||
+nettle-lfib-stream$(EXEEXT): nettle-lfib-stream.$(OBJEXT) ../$(LIBNETTLE_FORLINK)
|
||||
$(LINK) nettle-lfib-stream.$(OBJEXT) -lnettle $(LIBS) -o $@
|
||||
|
||||
pkcs1_conv_OBJS = $(pkcs1_conv_SOURCES:.c=.$(OBJEXT)) $(getopt_OBJS)
|
||||
-pkcs1-conv$(EXEEXT): $(pkcs1_conv_OBJS) ../libnettle.a ../libhogweed.a
|
||||
+pkcs1-conv$(EXEEXT): $(pkcs1_conv_OBJS) ../$(LIBNETTLE_FORLINK) ../$(LIBHOGWEED_FORLINK)
|
||||
$(LINK) $(pkcs1_conv_OBJS) -lhogweed -lnettle $(LIBS) -o $@
|
||||
|
||||
# FIXME: Avoid linking with gmp
|
||||
nettle_hash_OBJS = $(nettle_hash_SOURCES:.c=.$(OBJEXT)) $(getopt_OBJS)
|
||||
-nettle-hash$(EXEEXT): $(nettle_hash_OBJS) ../libnettle.a
|
||||
+nettle-hash$(EXEEXT): $(nettle_hash_OBJS) ../$(LIBNETTLE_FORLINK)
|
||||
$(LINK) $(nettle_hash_OBJS) -lnettle $(LIBS) -o $@
|
||||
|
||||
|
@ -0,0 +1,177 @@
|
||||
From 6450224f3e3c78fdfa37eadbe6ada8301279f6c1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
|
||||
Date: Mon, 20 Jun 2016 20:04:56 +0200
|
||||
Subject: Use mpz_powm_sec.
|
||||
Subject: Check for invalid keys, with even p, in dsa_sign.
|
||||
Subject: Reject invalid keys, with even moduli, in rsa_compute_root_tr.
|
||||
Subject: Reject invalid RSA keys with even modulo.
|
||||
|
||||
diff --git a/bignum.h b/bignum.h
|
||||
index 24158e0..0d30534 100644
|
||||
--- a/bignum.h
|
||||
+++ b/bignum.h
|
||||
@@ -53,6 +53,8 @@
|
||||
# define mpz_combit mpz_combit
|
||||
# define mpz_import mpz_import
|
||||
# define mpz_export mpz_export
|
||||
+/* Side-channel silent powm not available in mini-gmp. */
|
||||
+# define mpz_powm_sec mpz_powm
|
||||
#else
|
||||
# include <gmp.h>
|
||||
#endif
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index e1ee64c..1e88477 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -236,9 +236,9 @@ fi
|
||||
# Checks for libraries
|
||||
if test "x$enable_public_key" = "xyes" ; then
|
||||
if test "x$enable_mini_gmp" = "xno" ; then
|
||||
- AC_CHECK_LIB(gmp, __gmpz_getlimbn,,
|
||||
+ AC_CHECK_LIB(gmp, __gmpz_powm_sec,,
|
||||
[AC_MSG_WARN(
|
||||
- [GNU MP not found, or not 3.1 or up, see http://gmplib.org/.
|
||||
+ [GNU MP not found, or too old. GMP-5.0 or later is needed, see http://gmplib.org/.
|
||||
Support for public key algorithms will be unavailable.])]
|
||||
enable_public_key=no)
|
||||
|
||||
diff --git a/dsa-sign.c b/dsa-sign.c
|
||||
index 62c7d4a..b713743 100644
|
||||
--- a/dsa-sign.c
|
||||
+++ b/dsa-sign.c
|
||||
@@ -56,6 +56,11 @@ dsa_sign(const struct dsa_params *params,
|
||||
mpz_t tmp;
|
||||
int res;
|
||||
|
||||
+ /* Check that p is odd, so that invalid keys don't result in a crash
|
||||
+ inside mpz_powm_sec. */
|
||||
+ if (mpz_even_p (params->p))
|
||||
+ return 0;
|
||||
+
|
||||
/* Select k, 0<k<q, randomly */
|
||||
mpz_init_set(tmp, params->q);
|
||||
mpz_sub_ui(tmp, tmp, 1);
|
||||
@@ -65,7 +70,7 @@ dsa_sign(const struct dsa_params *params,
|
||||
mpz_add_ui(k, k, 1);
|
||||
|
||||
/* Compute r = (g^k (mod p)) (mod q) */
|
||||
- mpz_powm(tmp, params->g, k, params->p);
|
||||
+ mpz_powm_sec(tmp, params->g, k, params->p);
|
||||
mpz_fdiv_r(signature->r, tmp, params->q);
|
||||
|
||||
/* Compute hash */
|
||||
diff --git a/rsa-blind.c b/rsa-blind.c
|
||||
index 7662f50..16b03d7 100644
|
||||
--- a/rsa-blind.c
|
||||
+++ b/rsa-blind.c
|
||||
@@ -61,7 +61,7 @@ _rsa_blind (const struct rsa_public_key *pub,
|
||||
while (!mpz_invert (ri, r, pub->n));
|
||||
|
||||
/* c = c*(r^e) mod n */
|
||||
- mpz_powm(r, r, pub->e, pub->n);
|
||||
+ mpz_powm_sec(r, r, pub->e, pub->n);
|
||||
mpz_mul(c, c, r);
|
||||
mpz_fdiv_r(c, c, pub->n);
|
||||
|
||||
diff --git a/rsa-sign-tr.c b/rsa-sign-tr.c
|
||||
index 3d80ed4..8542cae 100644
|
||||
--- a/rsa-sign-tr.c
|
||||
+++ b/rsa-sign-tr.c
|
||||
@@ -60,7 +60,7 @@ rsa_blind (const struct rsa_public_key *pub,
|
||||
while (!mpz_invert (ri, r, pub->n));
|
||||
|
||||
/* c = c*(r^e) mod n */
|
||||
- mpz_powm(r, r, pub->e, pub->n);
|
||||
+ mpz_powm_sec(r, r, pub->e, pub->n);
|
||||
mpz_mul(c, m, r);
|
||||
mpz_fdiv_r(c, c, pub->n);
|
||||
|
||||
@@ -88,6 +88,14 @@ rsa_compute_root_tr(const struct rsa_public_key *pub,
|
||||
int res;
|
||||
mpz_t t, mb, xb, ri;
|
||||
|
||||
+ /* mpz_powm_sec handles only odd moduli. If p, q or n is even, the
|
||||
+ key is invalid and rejected by rsa_private_key_prepare. However,
|
||||
+ some applications, notably gnutls, don't use this function, and
|
||||
+ we don't want an invalid key to lead to a crash down inside
|
||||
+ mpz_powm_sec. So do an additional check here. */
|
||||
+ if (mpz_even_p (pub->n) || mpz_even_p (key->p) || mpz_even_p (key->q))
|
||||
+ return 0;
|
||||
+
|
||||
mpz_init (mb);
|
||||
mpz_init (xb);
|
||||
mpz_init (ri);
|
||||
@@ -97,7 +105,7 @@ rsa_compute_root_tr(const struct rsa_public_key *pub,
|
||||
|
||||
rsa_compute_root (key, xb, mb);
|
||||
|
||||
- mpz_powm(t, xb, pub->e, pub->n);
|
||||
+ mpz_powm_sec(t, xb, pub->e, pub->n);
|
||||
res = (mpz_cmp(mb, t) == 0);
|
||||
|
||||
if (res)
|
||||
diff --git a/rsa-sign.c b/rsa-sign.c
|
||||
index eba7388..4832352 100644
|
||||
--- a/rsa-sign.c
|
||||
+++ b/rsa-sign.c
|
||||
@@ -96,11 +96,11 @@ rsa_compute_root(const struct rsa_private_key *key,
|
||||
|
||||
/* Compute xq = m^d % q = (m%q)^b % q */
|
||||
mpz_fdiv_r(xq, m, key->q);
|
||||
- mpz_powm(xq, xq, key->b, key->q);
|
||||
+ mpz_powm_sec(xq, xq, key->b, key->q);
|
||||
|
||||
/* Compute xp = m^d % p = (m%p)^a % p */
|
||||
mpz_fdiv_r(xp, m, key->p);
|
||||
- mpz_powm(xp, xp, key->a, key->p);
|
||||
+ mpz_powm_sec(xp, xp, key->a, key->p);
|
||||
|
||||
/* Set xp' = (xp - xq) c % p. */
|
||||
mpz_sub(xp, xp, xq);
|
||||
diff --git a/rsa.c b/rsa.c
|
||||
index 19d93de..f594140 100644
|
||||
--- a/rsa.c
|
||||
+++ b/rsa.c
|
||||
@@ -58,13 +58,18 @@ rsa_public_key_clear(struct rsa_public_key *key)
|
||||
}
|
||||
|
||||
/* Computes the size, in octets, of a the modulo. Returns 0 if the
|
||||
- * modulo is too small to be useful. */
|
||||
-
|
||||
+ * modulo is too small to be useful, or otherwise appears invalid. */
|
||||
size_t
|
||||
_rsa_check_size(mpz_t n)
|
||||
{
|
||||
/* Round upwards */
|
||||
- size_t size = (mpz_sizeinbase(n, 2) + 7) / 8;
|
||||
+ size_t size;
|
||||
+
|
||||
+ /* Even moduli are invalid, and not supported by mpz_powm_sec. */
|
||||
+ if (mpz_even_p (n))
|
||||
+ return 0;
|
||||
+
|
||||
+ size = (mpz_sizeinbase(n, 2) + 7) / 8;
|
||||
|
||||
if (size < RSA_MINIMUM_N_OCTETS)
|
||||
return 0;
|
||||
diff --git a/testsuite/rsa-test.c b/testsuite/rsa-test.c
|
||||
index e9b1c03..a429664 100644
|
||||
--- a/testsuite/rsa-test.c
|
||||
+++ b/testsuite/rsa-test.c
|
||||
@@ -57,6 +57,13 @@ test_main(void)
|
||||
|
||||
test_rsa_sha512(&pub, &key, expected);
|
||||
|
||||
+ /* Test detection of invalid keys with even modulo */
|
||||
+ mpz_clrbit (pub.n, 0);
|
||||
+ ASSERT (!rsa_public_key_prepare (&pub));
|
||||
+
|
||||
+ mpz_clrbit (key.p, 0);
|
||||
+ ASSERT (!rsa_private_key_prepare (&key));
|
||||
+
|
||||
/* 777-bit key, generated by
|
||||
*
|
||||
* lsh-keygen -a rsa -l 777 -f advanced-hex
|
||||
--
|
||||
2.7.3
|
||||
|
@ -0,0 +1,67 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools eutils multilib-build multilib-minimal multilib toolchain-funcs
|
||||
|
||||
DESCRIPTION="Low-level cryptographic library"
|
||||
HOMEPAGE="http://www.lysator.liu.se/~nisse/nettle/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( LGPL-3 LGPL-2.1 )"
|
||||
SLOT="0/6" # subslot = libnettle soname version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x86-solaris"
|
||||
IUSE="doc +gmp neon static-libs test cpu_flags_x86_aes"
|
||||
|
||||
DEPEND="gmp? ( >=dev-libs/gmp-5.0:0[${MULTILIB_USEDEP}] )"
|
||||
RDEPEND="${DEPEND}
|
||||
abi_x86_32? (
|
||||
!<=app-emulation/emul-linux-x86-baselibs-20131008-r17
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
)"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-CVE-2016-6489.patch"
|
||||
)
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/nettle/nettle-stdint.h
|
||||
/usr/include/nettle/version.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -e '/CFLAGS=/s: -ggdb3::' \
|
||||
-e 's/solaris\*)/sunldsolaris*)/' \
|
||||
-i configure.ac || die
|
||||
|
||||
# conditionally build tests and examples required by tests
|
||||
use test || sed -i '/SUBDIRS/s/testsuite examples//' Makefile.in || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# --disable-openssl bug #427526
|
||||
ECONF_SOURCE="${S}" econf \
|
||||
--libdir="${EPREFIX}"/usr/$(get_libdir) \
|
||||
--disable-openssl \
|
||||
--disable-fat \
|
||||
$(use_enable gmp public-key) \
|
||||
$(use_enable static-libs static) \
|
||||
$(tc-is-static-only && echo --disable-shared) \
|
||||
$(use_enable doc documentation) \
|
||||
$(use_enable neon arm-neon) \
|
||||
$(use_enable cpu_flags_x86_aes x86-aesni)
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
if use doc ; then
|
||||
dohtml nettle.html
|
||||
dodoc nettle.pdf
|
||||
fi
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST luaevent-0.4.3.tar.gz 29861 SHA256 9a3ea7671caa95af2763a7125818991b3742168db75b3025d04af5241349d9c5 SHA512 5f02c9d40e59589a2b932b49d27230ca6650174feeda2cf412769c33af056c9df52d38fdd5fc12f0f6318b788e29a2deef54f11beb4becc48818edd27185f161 WHIRLPOOL 3b9e0d7dfd0f5d593957d9f34d807ebc3ceef811493efce56732ffb3c436ab21ca835e913f101eb15aa93fe98d5f12ec70538db3ae466bc8579169024ed8ea12
|
||||
DIST luaevent-0.4.4.tar.gz 22249 SHA256 242c95b9cacd87201aa35ba618eb1cd0b0e2a7d1a8fc6734c0bc06dd742e2455 SHA512 2f2d669e645c3186d5060f2a5358fed4756087e173bd94431cf74b158fc25ff8de4640f1a832704d1431a7b10797385a449ae79ce049e98edc414260cd4c85ea WHIRLPOOL 59c671ccd58e56eee4d0936b88f6d29a0ef5e619736fe0f169e0fdffe5e211058c2e240c1440d850f4849127a2d197b9bb354ab0d3e4c759ff69613cd51d953d
|
||||
|
@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="libevent bindings for Lua"
|
||||
HOMEPAGE="http://luaforge.net/projects/luaevent"
|
||||
SRC_URI="https://github.com/harningt/luaevent/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="dev-lang/lua:0
|
||||
dev-libs/libevent:0="
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
src_prepare() {
|
||||
sed -i "s:^CFLAGS =:CFLAGS +=:" "${S}/Makefile" \
|
||||
|| die "sed failed"
|
||||
sed -i "s:^LDFLAGS =:LDFLAGS +=:" "${S}/Makefile" \
|
||||
|| die "sed failed"
|
||||
sed -i "/^LDFLAGS/a CC = $(tc-getCC)" "${S}/Makefile" \
|
||||
|| die "sed failed"
|
||||
sed -i "s:^LUA_INC_DIR ?=.*:LUA_INC_DIR ?= $(pkg-config --variable INSTALL_INC lua):" "${S}/Makefile" \
|
||||
|| die "sed failed"
|
||||
sed -i "s:^INSTALL_DIR_LUA ?=.*:INSTALL_DIR_LUA ?= $(pkg-config --variable INSTALL_LMOD lua):" "${S}/Makefile" \
|
||||
|| die "sed failed"
|
||||
sed -i "s:^INSTALL_DIR_BIN ?=.*:INSTALL_DIR_BIN ?= $(pkg-config --variable INSTALL_CMOD lua):" "${S}/Makefile" \
|
||||
|| die "sed failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "Install failed"
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
diff --git a/Build.PL b/Build.PL
|
||||
index 010efb6..4559535 100644
|
||||
--- a/Build.PL
|
||||
+++ b/Build.PL
|
||||
@@ -2,11 +2,10 @@ use strict;
|
||||
use warnings;
|
||||
|
||||
use File::Spec;
|
||||
-use lib File::Spec->catdir(File::Spec->curdir(), "inc");
|
||||
|
||||
-use Test::Run::Builder::Manifest;
|
||||
+use Module::Build;
|
||||
|
||||
-my $build = Test::Run::Builder::Manifest->new(
|
||||
+my $build = Module::Build->new(
|
||||
'module_name' => "XML::RSS",
|
||||
'requires' =>
|
||||
{
|
||||
@@ -19,7 +18,6 @@ my $build = Test::Run::Builder::Manifest->new(
|
||||
},
|
||||
build_requires =>
|
||||
{
|
||||
- 'Test::Manifest' => '0.9',
|
||||
'Test::More' => 0,
|
||||
},
|
||||
configure_requires =>
|
@ -1,2 +1,3 @@
|
||||
DIST CouchDB-1.0.1.tar.gz 57630 SHA256 ed4d9dbb0a8085e709f8ab11e522c7241f58b554a4e900886225c139fa9a47dc SHA512 5c0ffef5ac3743adfb48ce9efd6af42a01d5d68d412f4d58051e627e97cad225f287d3afb7a5879e12a06503a79e6a5dc063acbf02bf613c736fef82241d2a4e WHIRLPOOL 790cc1d2563630c1cc0b8f80e47bca74bac0a16b0782207fafeb12c9351b5bcaf0c1aa2d78b851e4bc9e0f539b3a914901709fca1ed859c6af1cb0a77f178c21
|
||||
DIST CouchDB-1.0.tar.gz 56791 SHA256 f81de35433932e1d81b922d12119fe9b2435046db5dc53d1fb068a087c1fb264 SHA512 c328a9b027d24ee560ef592925a072a463852fdb7e8e93e1d6e740d7245181ba147985d610d6fd55f4790d7338e69470c44f574469e718eeb7b4163dfb6fc19a WHIRLPOOL 326be4bedd76ebbc5c9fd3cbdc52182230e0701372e75fa074a328633668e407528ccab7d3516b665be8587d131db4e7f7ba054cb6be2fca60b16265793f38c4
|
||||
DIST CouchDB-1.1.tar.gz 60839 SHA256 9503ea413956c33b5e2af248235afb5e0f011f33f816a32e872f8ff9b0a0e710 SHA512 f68a0bb04f74cf91ae7d190eedec2a9c24c03dd0ef333c27cca7ef7abc95d3d355f78d653d68371a0d27dcc9a8d69f5886627f0eb0c6af49b632becf6bd0668f WHIRLPOOL 44f51ab1a2f05edd8cf2219ce6fb108d99264f4dd952cf71ae89030fe97c2adf54350ae7352271200be2861e4f1e33a199aa072cebd0e16d9f489b8657470f59
|
||||
|
@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python{2_7,3_3,3_4,3_5} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_PN="CouchDB"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="Python library for working with CouchDB"
|
||||
HOMEPAGE="https://github.com/djc/couchdb-python https://pypi.python.org/pypi/CouchDB"
|
||||
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc"
|
||||
|
||||
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
# Tests require connectivity to a couchdb server.
|
||||
# Re-enable when the ebuild is capable of starting a local couchdb
|
||||
# instance.
|
||||
RESTRICT=test
|
||||
|
||||
python_compile_all() {
|
||||
use doc && esetup.py build_sphinx
|
||||
}
|
||||
|
||||
python_test() {
|
||||
esetup.py test
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
use doc && local HTML_DOCS=( doc/build/html/. )
|
||||
distutils-r1_python_install_all
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST aws-sdk-ruby-2.2.18.tar.gz 1745330 SHA256 f3e83cd1d502561ebd5ec833b952bb8a29436d1f8ef010a8adb7dff4953cac92 SHA512 dfe5d6ff90724592fc2d6364a0dcee1b6cc1e6836d4c79193362246c54d1f59a0dff0c7a57bf7996f59ef7e0988ea013f86bf27a36bf8cbab9055edc0ea54528 WHIRLPOOL e539ef5a678efb7fbfc57989611216caf40d2510d0e4c6204724b3315f2df2ec0a4d4b7a225da575cb7a6cc37dd4f82d98fe6c5c698eb0def43165b0e2d4fa23
|
||||
DIST aws-sdk-ruby-2.2.37.tar.gz 1832272 SHA256 fa1508e9659e7691bafa5bda1e474c1f372e96033e4edbe57e3727d3bb7b3c55 SHA512 0ad986607127fca329489e0f26aa68d20535126bff4db93d6e6c21671cd0e219f8c57bf1994ab4a3cdeaf007836901a7b8b2783b0cf1835e6b19316ae14a64ce WHIRLPOOL bf7da14db72d64c9b215103de7b91168b48c0ebf471053f551cbf8f7b10a4263bfb4b59780458f320ae73134c7fe19850d937be06330660a60b49344c0d1c32a
|
||||
DIST aws-sdk-ruby-2.2.5.tar.gz 1671525 SHA256 5fba8661d99d939162a349fddf0a89003267856f4faaa8baa5875c916241e4d1 SHA512 93e848922b9410297ccd82d8e71477f8246c4088f6145e53e7300ff7b4d8a3683274aba794a11df9fbe3a600b0b4cf6d4487f5a45f11fe8b4aad967ae4ee6e33 WHIRLPOOL fac9dc67dc047bc652b4645612f534c08f6b29f9ce456e80d1c7d497bdc748961e15b579162b0a9d42f3f416801eb2a9a365c817698e18638ec0f4a38ff1b6b7
|
||||
DIST aws-sdk-ruby-2.5.1.tar.gz 1908362 SHA256 1166835bb978b119028679f5764b6cbb7f6d18199331dab2197bb8d5e9d26de1 SHA512 7254e8ac1557a483f2c9fc67968bb1ebba57c86de9f5a9087b61d55f9af716786be1b903dad96dc275262223c2df49dafb04227ad7dd088c5271a2fb44b960e6 WHIRLPOOL 083cd25005419ce35fc029bd58d4fe2bf5c61641c3cffdd4efcc307a56bc9b2fe1cbadf408cd9d2d8228c11759e4151064f210ed838552d561b5ab43d0bf7476
|
||||
|
@ -0,0 +1,42 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
USE_RUBY="ruby20 ruby21 ruby22"
|
||||
|
||||
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
|
||||
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
|
||||
RUBY_FAKEGEM_DOCDIR="doc"
|
||||
|
||||
RUBY_FAKEGEM_EXTRAINSTALL="apis ca-bundle.crt endpoints.json"
|
||||
|
||||
GITHUB_USER="aws"
|
||||
GITHUB_PROJECT="aws-sdk-ruby"
|
||||
RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
|
||||
|
||||
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="Official SDK for Amazon Web Services"
|
||||
HOMEPAGE="http://aws.amazon.com/sdkforruby"
|
||||
SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="2"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
ruby_add_rdepend "dev-ruby/jmespath:1"
|
||||
|
||||
ruby_add_bdepend "test? ( dev-ruby/webmock )"
|
||||
|
||||
all_ruby_prepare() {
|
||||
sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
|
||||
|
||||
# Avoid spec that gets confused by our directory names
|
||||
sed -i -e '/requires prefixes from plugin names when loading/,/end/ s:^:#:' \
|
||||
spec/seahorse/client/plugin_list_spec.rb || die
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST aws-sdk-ruby-2.2.18.tar.gz 1745330 SHA256 f3e83cd1d502561ebd5ec833b952bb8a29436d1f8ef010a8adb7dff4953cac92 SHA512 dfe5d6ff90724592fc2d6364a0dcee1b6cc1e6836d4c79193362246c54d1f59a0dff0c7a57bf7996f59ef7e0988ea013f86bf27a36bf8cbab9055edc0ea54528 WHIRLPOOL e539ef5a678efb7fbfc57989611216caf40d2510d0e4c6204724b3315f2df2ec0a4d4b7a225da575cb7a6cc37dd4f82d98fe6c5c698eb0def43165b0e2d4fa23
|
||||
DIST aws-sdk-ruby-2.2.37.tar.gz 1832272 SHA256 fa1508e9659e7691bafa5bda1e474c1f372e96033e4edbe57e3727d3bb7b3c55 SHA512 0ad986607127fca329489e0f26aa68d20535126bff4db93d6e6c21671cd0e219f8c57bf1994ab4a3cdeaf007836901a7b8b2783b0cf1835e6b19316ae14a64ce WHIRLPOOL bf7da14db72d64c9b215103de7b91168b48c0ebf471053f551cbf8f7b10a4263bfb4b59780458f320ae73134c7fe19850d937be06330660a60b49344c0d1c32a
|
||||
DIST aws-sdk-ruby-2.2.5.tar.gz 1671525 SHA256 5fba8661d99d939162a349fddf0a89003267856f4faaa8baa5875c916241e4d1 SHA512 93e848922b9410297ccd82d8e71477f8246c4088f6145e53e7300ff7b4d8a3683274aba794a11df9fbe3a600b0b4cf6d4487f5a45f11fe8b4aad967ae4ee6e33 WHIRLPOOL fac9dc67dc047bc652b4645612f534c08f6b29f9ce456e80d1c7d497bdc748961e15b579162b0a9d42f3f416801eb2a9a365c817698e18638ec0f4a38ff1b6b7
|
||||
DIST aws-sdk-ruby-2.5.1.tar.gz 1908362 SHA256 1166835bb978b119028679f5764b6cbb7f6d18199331dab2197bb8d5e9d26de1 SHA512 7254e8ac1557a483f2c9fc67968bb1ebba57c86de9f5a9087b61d55f9af716786be1b903dad96dc275262223c2df49dafb04227ad7dd088c5271a2fb44b960e6 WHIRLPOOL 083cd25005419ce35fc029bd58d4fe2bf5c61641c3cffdd4efcc307a56bc9b2fe1cbadf408cd9d2d8228c11759e4151064f210ed838552d561b5ab43d0bf7476
|
||||
|
@ -0,0 +1,32 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
USE_RUBY="ruby20 ruby21 ruby22"
|
||||
|
||||
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
|
||||
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
|
||||
RUBY_FAKEGEM_DOCDIR="doc"
|
||||
|
||||
RUBY_FAKEGEM_EXTRAINSTALL="resources.schema.json"
|
||||
|
||||
GITHUB_USER="aws"
|
||||
GITHUB_PROJECT="aws-sdk-ruby"
|
||||
RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
|
||||
|
||||
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="Official SDK for Amazon Web Services"
|
||||
HOMEPAGE="http://aws.amazon.com/sdkforruby"
|
||||
SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="2"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
ruby_add_rdepend "~dev-ruby/aws-sdk-core-${PV}"
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue