Sync with portage [Tue Nov 29 09:14:41 MSK 2016].

mhiretskiy 658
root 8 years ago
parent aded141614
commit 29e6455604

@ -31,7 +31,7 @@ COMMON_DEP="bluetooth? ( net-wireless/bluez )
iconv? ( virtual/libiconv )
icu? ( dev-libs/icu:= )
python? ( ${PYTHON_DEPS} )
ncurses? ( sys-libs/ncurses )
ncurses? ( sys-libs/ncurses:0= )
nls? ( virtual/libintl )
tcl? ( >=dev-lang/tcl-8.4.15:0= )
usb? ( virtual/libusb:0 )
@ -46,7 +46,8 @@ RDEPEND="java? ( >=virtual/jre-1.4 )
src_prepare() {
epatch "${FILESDIR}"/${P}-fix-ldflags.patch \
"${FILESDIR}"/${P}-udev.patch \
"${FILESDIR}"/${P}-respect-AR.patch
"${FILESDIR}"/${P}-respect-AR.patch \
"${FILESDIR}"/${P}-major.patch
java-pkg-opt-2_src_prepare

@ -0,0 +1,59 @@
Bug: https://bugs.gentoo.org/581130
diff --git a/Programs/system_linux.c b/Programs/system_linux.c
index c73bd39..ef7d807 100644
--- a/Programs/system_linux.c
+++ b/Programs/system_linux.c
@@ -25,6 +25,12 @@
#include <sys/ioctl.h>
#include <sys/stat.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#elif defined MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
+
#include "log.h"
#include "file.h"
#include "device.h"
diff --git a/configure.ac b/configure.ac
index 96305f7..dcae1e1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -555,6 +555,8 @@ BRLTTY_ARG_DISABLE(
])
AC_SUBST([install_messages])
+AC_HEADER_MAJOR
+
AC_CHECK_FUNC([wcslen], [AC_CHECK_HEADERS([wchar.h], [dnl
AC_CHECK_FUNCS([wcwidth])
])])
diff --git a/config.h.in b/config.h.in
index 71341c6..ff201c2 100644
--- a/config.h.in
+++ b/config.h.in
@@ -457,2 +457,10 @@ extern "C" {
+/* Define to 1 if `major', `minor', and `makedev' are declared in <mkdev.h>.
+ */
+#undef MAJOR_IN_MKDEV
+
+/* Define to 1 if `major', `minor', and `makedev' are declared in
+ <sysmacros.h>. */
+#undef MAJOR_IN_SYSMACROS
+
/* Define this to be a string containing the path to the root of the Mikropuhe package. */
diff --git a/Programs/brlapi_client.c b/Programs/brlapi_client.c
index bd6497b..df63b30 100644
--- a/Programs/brlapi_client.c
+++ b/Programs/brlapi_client.c
@@ -32,2 +32,8 @@
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#elif defined MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
+
#ifndef __MINGW32__

@ -1 +1 @@
DIST calamares-2.4.4.tar.gz 2140990 SHA256 1804356ce1c8f273171c392188e26f3041f4fedb6c959514e49e73cf247e5a7c SHA512 de74b36acbfe043d8d667a3e4697d6712783353600e93d5dbc7ea9fd27e120f50822c2dee89f9cd6d1115c530d939f63b5fc5c7e9647b1d27b18089b67a184ff WHIRLPOOL c2fc201ef14eb37c16d3fd7f540043ce19a22ebe8905ef85c3682cc953abf99ca14bd8f13d920105f65903e1cf05aa4ac5cd9503655d3918d2dd7e58a8e45d7b
DIST calamares-2.4.5.tar.gz 2142339 SHA256 fe924bf951ea64c92a565195330aff87587b9326c6769f5c8a8e4ee67e20bab5 SHA512 b55ed22f40116e67fe9bea6f1112fa98538f831886b950097465e171390bbef5773f61c374939c7a7a467a721af5e36c9e9845eb419f7cb015e997f82550998c WHIRLPOOL 33e91c774561eb4687eed94dedb7b2708cb0b2c73522d10061c635c9367807c4a01fdc5aee713668f090dfc204c48cd55ba76353af19e2dfff6bfaffccc6f24a

@ -1,2 +1,3 @@
DIST cpulimit-1.8.tar.gz 20610 SHA256 8d0cdc3ec3e462f2ddc6debb195e1a4e7a19cce8233211f473d921f1c517d5f5 SHA512 3098236139b092eb706ec2a6b84528a090b3f4b8b3adfc8debda1b92ffa119ed9adc508898e0f98add593561f5f6b67d52e0966de01a682a6e2e885e3c47b0fa WHIRLPOOL f9be855b9a4b010c8456c2841afc3551a9a28bfc4a9ec3211e2c1e312bf43cdce9e1b745cc325342433feca5a73df03860469ea3a966d3bd37f7ad11a1627510
DIST cpulimit-2.2.tar.gz 22224 SHA256 3f64daa5c4ab9245fa6ae5b564a2ffb3ae60677785103a207fd5f9c5c4cc29e4 SHA512 e708b27e969024ed37689341d76979e5041c050c259359c46f988cfc55f571c16c17f48ca63cd93349041b76bb2c314ab69af36634fec5212e49aa0d0cb0a46e WHIRLPOOL cd9f4c1d2258f2beb7e150c349c5fee984d63c1b4b3c6ca50e8c853ddf26924964ea45230e5196478416b6d17be895966476522b3f9b3702e8c9d5196322029f
DIST cpulimit-2.4.tar.gz 24669 SHA256 a22e373755608048e9b8d4ec0c9309c59eec7178294902acee72b55de2cb24bb SHA512 008dc3fbdcbd8afd875a2a1ce03d609db595c6e110803140c676d3713ea60f4877a1bb8e7aa0e8b669dce31522ad81e2703f616341a0f4cbc69a6b01865b66d0 WHIRLPOOL 39ca5c35d34b19121e367e561b9b47748b4679ad88944a5b3dacea6cdb8f16fe5a551bf5464989f4d4f99b57d6c43f82a4e20303d08cdc870b43c4a9d6d2526a

@ -0,0 +1,35 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit toolchain-funcs
DESCRIPTION="Limits the CPU usage of a process"
HOMEPAGE="http://cpulimit.sourceforge.net"
SRC_URI="mirror://sourceforge/limitcpu/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE=""
DEPEND=""
RDEPEND=""
src_prepare() {
tc-export CC
# set correct VERSION
#sed -i -e "/^#define VERSION/s@[[:digit:]\.]\+\$@${PV}@" cpulimit.c \
# || die 'sed on VERSION string failed'
default
}
src_install() {
local DOCS=( CHANGELOG README )
dosbin ${PN}
doman ${PN}.1
einstalldocs
}

@ -4,3 +4,4 @@ DIST github-backup-utils-2.6.3.tar.gz 50884 SHA256 3a5e48ff250b64a9bcec69a269b0e
DIST github-backup-utils-2.6.4.tar.gz 51270 SHA256 caf34b54a3961562d545ad2fb68ec18a319e6fcc1a1e65e5daa00e04e7f7fb32 SHA512 be2ef9811e20fd9be03d1b57e75151089817bbdd87fa487462a8fe6186195581ad6b1c62b1b930bd64689e89dcf33c2228df7d77a12790404f09b679b1ecf377 WHIRLPOOL a313f94eea953648a3dfbacba5eb3b90e68ca12df034c723133d3d80e60e4be38ef30046b8bbc1bdb827095d75cb239a4152a77dedfed52f188d80b57143fcb0
DIST github-backup-utils-2.7.0.tar.gz 51409 SHA256 9556dbd438ea3525692705844c20b5bedc9a942c5415dd3c0fd9e383323dc11f SHA512 16112e8d05001146a182e225c1bb5bdfbe210ddb3993d989a9fe88b88bbf222196a66f1f48b262b198675af8e4b3e3a10120e7dafa7b244137bf29cd879efaaf WHIRLPOOL 9600d45f69f16cb95b0bb0b3cc5620d7bb6c2e65c2ac6b6942287c85487e83bb2b74d0869b411d0b4829cc9dd2da20972a7635780f00facadc28ca9787028a3b
DIST github-backup-utils-2.7.1.tar.gz 68793 SHA256 e1e9ee69a005252ab4899693d43fee1aaebac3783d97c343e16566d0c12cdc17 SHA512 950c24b3fef8775c2a90789c469a81256323c1ede67b3f6691920e78c1489533adf5616f2ac09f9b844382778b5b2b5106f8c467be7d65b47ee06bf732591880 WHIRLPOOL 87cabe2138c58cf41a803cc43c23748a2f3ed578f3488bfb38861db64b81cb31f4d3aa41e6a240788c3bc9a32d9f523dd28cdb099e1b21cc2472d2cde72f7916
DIST github-backup-utils-2.8.2.tar.gz 71392 SHA256 7aaa435d007b2697c3540ce6e2d3e5ba999fa33339ed21f43db6e9bb42c7d78d SHA512 d3801d37f18b41594bfee83b891ce1eb9f1a15972839bd9dfb6469d311484ef94f635da4319b0b9f2d6778d87b935ca5c0bd42ddbf009f292e05b6a654464bf4 WHIRLPOOL f7c730ee6248b2bc7b8017ece697584717337a9a5f42e38544ed57db498863aa8e1fd3a029b00dcfd26a44f9d32448fba3b092fcccfa3277423ab48ebeb295b1

@ -0,0 +1,49 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
# See https://github.com/github/backup-utils/issues/135
PYTHON_COMPAT=(python2_7)
inherit python-any-r1
DESCRIPTION="Backup and recovery utilities for GitHub Enterprise"
HOMEPAGE="https://github.com/github/backup-utils"
SRC_URI="https://github.com/github/backup-utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="test"
DEPEND="test? (
dev-util/checkbashisms
${PYTHON_DEPS}
)"
RDEPEND="net-misc/rsync"
MY_PN="${PN/#github-/}"
S="${WORKDIR}/${MY_PN}-${PV}"
src_compile() {
:;
}
src_install() {
dobin bin/*
insinto usr/share/${PN}
doins share/${PN}/version
exeinto usr/share/${PN}
doexe share/${PN}/bm.sh
doexe share/${PN}/ghe-*
insinto etc/${PN}
newins backup.config-example backup.config
}
src_test() {
emake test
}

@ -1,4 +1,5 @@
DIST logstash-2.3.4.tar.gz 79779303 SHA256 7f62a03ddc3972e33c343e982ada1796b18284f43ed9c0089a2efee78b239583 SHA512 cc5d6c04e414daf63c836141df87204e0cbc63f71ee02abb69496e29587d5b0803dd738949de559a597979c9f6c6bf9d11d55f4b084ce875f24fb362f2c9bd3b WHIRLPOOL 71b6d915153d80d9bc81d10454ffd14af4643c61557964d7fd8edf50bf1a5d1c53ce0b09c2aec9b079918df596bbb5b07420b8661572bf7ea659e9703694f07c
DIST logstash-2.4.0.tar.gz 83882952 SHA256 622c435c5c0f40e205fd4d9411eb409cc52992cf62dde4c7cd46e480cd8247cc SHA512 27f7e22fcfbeabe58bef1220399a80b32b56b5e2af17c0279e3f583ed5170be649b961b92c3eef33120ce238f126a3cb32e614bd8109bd8c266b538888c5324d WHIRLPOOL 2d1db78ff21d86e22f709600b086dfc253120e6a659d46c1e6ebc6d62dfffd48f0a440c33fa9a1cd7014108f5ae88afa4ccd25211ce57b1a4856f756a855c71e
DIST logstash-5.0.0.zip 110726123 SHA256 9a8ba13f9d4333fb17f373fc822a0ae5458ef8a37c026b823fc9a66044f8e331 SHA512 928541781d5f6bf16d91184f4863c2ecc3b8f07c190fd332b79f4f790091faf0531063459b96a53a250d986060a8968d9d326285e3195a39a116f0dc2ac1e43d WHIRLPOOL a6447c19d717819fa95b4e35e149215f8e6b270032311a80d56b235a1ee3de3561bd3ce5277ee3bd1fc11126819a0333d9ed068306f360e93788742ba45246d0
DIST logstash-5.0.1.zip 110853954 SHA256 e2da648882f1583190e9146b0a994d7956c6e6ec0d17d4c92187b8fc74a1e9ee SHA512 57ceb47fb971d8bebf4d952d01f40dc14c79e9774ee228e2f3f55e8e1cf882df1361902192af93e0a5a74a18fb10ad2387b0922665e9285ff4d3b11add71b2e2 WHIRLPOOL 9867f9f1a2d06e5cccb81fe3db8ee0f8104085103f900442fd041770a3ec8c3941b7639c58766576e8a2d0c99dc5736ce62e7c002d3b6420f0de1205e9c5c09c
DIST logstash-all-plugins-2.4.0.tar.gz 139743651 SHA256 b2ffe60745ece2140ebc4610f42543dcf3ff5ead2707f0b36f0b70e8ddf0baff SHA512 9627f6119d129b4dcdc41ff43e49a3880f4ba5fcb3ee11e1ec821929d542c93629b0f58ded6741c96da49cba16b05eca141acdeee0ed060389abc3f467bba593 WHIRLPOOL 49ddc27d6030ae65aaab0acabda478644232f92cbd2bbe3d1b118782c5ce1167edb2a485def982f3b6c8138f084e79a783273dd50519a82085b984259f7e19d4

@ -0,0 +1,64 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit user
MY_PN="${PN/-bin}"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Tool for managing events and logs"
HOMEPAGE="https://www.elastic.co/products/logstash"
SRC_URI="https://artifacts.elastic.co/downloads/${MY_PN}/${MY_P}.zip"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RESTRICT="strip"
QA_PREBUILT="opt/logstash/vendor/jruby/lib/jni/*/libjffi*.so"
DEPEND=""
RDEPEND="virtual/jre:1.8"
S="${WORKDIR}/${MY_P}"
pkg_setup() {
enewgroup ${MY_PN}
enewuser ${MY_PN} -1 -1 /var/lib/${MY_PN} ${MY_PN}
}
src_install() {
keepdir /etc/"${MY_PN}"/{conf.d,patterns,plugins}
keepdir "/var/log/${MY_PN}"
insinto "/usr/share/${MY_PN}"
doins "${FILESDIR}/agent.conf.sample"
insinto "/opt/${MY_PN}"
doins -r .
fperms 0755 "/opt/${MY_PN}/bin/${MY_PN}" "/opt/${MY_PN}/vendor/jruby/bin/jruby" "/opt/${MY_PN}/bin/logstash-plugin"
insinto /etc/logrotate.d
newins "${FILESDIR}/${MY_PN}.logrotate" "${MY_PN}"
newconfd "${FILESDIR}/${MY_PN}.confd" "${MY_PN}"
newinitd "${FILESDIR}/${MY_PN}.initd3" "${MY_PN}"
}
pkg_postinst() {
ewarn "The default user changed from root to ${MY_PN}. If you wish to run as root (for"
ewarn "example to read local logs), be sure to change LS_USER and LS_GROUP in"
ewarn "/etc/conf.d/${MY_PN}"
einfo
einfo "Getting started with logstash:"
einfo " https://www.elastic.co/guide/en/logstash/current/getting-started-with-logstash.html"
einfo ""
einfo "Packages that might be interesting:"
einfo " app-misc/elasticsearch"
einfo " dev-python/elasticsearch-curator"
einfo " www-apps/kibana-bin"
}

@ -13,7 +13,7 @@ SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86"
IUSE="bzip2 doc +gnutls ldap nls readline selinux smartcard tofu tools usb"
COMMON_DEPEND_LIBS="

@ -1,3 +1,8 @@
DIST neovim-0.1.0.tar.gz 7644722 SHA256 e8659558103b8f5a65aac84007a12e3581b32736321778028017fd07365cfff8 SHA512 b91e5ce5561155ecb3554f56fd4371219612ed3bc35dfeb60a225eb1dbe1473fce5f573eb996bdb01fd9569f764da86493108665c98dc7555fc44f410befb00a WHIRLPOOL 33d7b88588c214ddc670a7b3cffcfd855699e90b15c5e327ac0c17972fddb73bd519b1a8eb609f8454d6c463f18764f17bc1314b6b27448c5ac4607cdbce1551
DIST neovim-0.1.1.tar.gz 7584560 SHA256 f39bcab23457c66ce0d67dcf8029743703f860413db0070f75d4f0ffad27c6c1 SHA512 7098bef9b81862f009789cff49a063d56d52d2f5c74e2fe68ad65c952c61c07eabeb6be150b369a5a179957f20187de3051caaa30b1e0cb4ec1e9e49b4e77333 WHIRLPOOL 9df0d6d59bdda2def2d8a393eec579f341256aff18c485cbb08c96637c597ee4df73a68a09105e776605194412274df2c82b78f7ca0e0bc1e20d4780fcdfa57f
DIST neovim-0.1.2.tar.gz 7610804 SHA256 549881465eff82454660ae92d857d6ffa22383d45c94c46f3753fd1b0e699247 SHA512 dc03d92ff296f3ff55225d514479f1ac201a5a65eb8a6c02e71935ca44feb8ab15897b26a2ea46e53771f902c57b027d07e02f95673268ee060c6b77c4aa90e4 WHIRLPOOL ef1253249120c89c6efc15520263c889a9972df0c11e9353dedeee112c46ee9b92355fa3dabdf2d15cb7d0416681d1c8b55a9c02266048154f3afe104fdf4ff9
DIST neovim-0.1.3.tar.gz 7636777 SHA256 7a86892d941b8829537ad46864b9a363d009ba56aeefdef2ee15ffa3eee5f92b SHA512 70c979fa06784cae4ded43c7fef7906c743729ed43a50003deec1d2ab7a800bfeab81c394893796a06d0f37811867062b2f766936c2a871f7d968b350729d4c8 WHIRLPOOL 1b3ccb589b3b2ee6d0e6bb1e2139c6ae508859637a0b075a6ccef5168386737713549abab37c7148d9d44d19be54a75587253144aaa1b4c5315408838cdaa4c5
DIST neovim-0.1.4.tar.gz 7678847 SHA256 bb7e359eb83db20c5ec5984b470b249372b6dcd813ae2ccf72c01cce560f93e9 SHA512 e96e768703e4b842355a7543e5c9980b148b9b10cd032570fb420e3e1207102f9769fa6d36fba1d263ed9333d339eab387a196d4a8f724d89db2800097b89d37 WHIRLPOOL 6512b91931168c64fc34f626aeb409c8dc9612e00389a86c7fc07232fd8d26bd289d87dbbf8f01ac9297aa48c33682dc129ab936d0b24aee3c38627e863cc9e6
DIST neovim-0.1.5.tar.gz 7813974 SHA256 f286ff7994ef1835272285425d65804063f112c91925fee3ef8865282a6d2b7e SHA512 3332b151d23b4f2b133b8f30f4af41686f7092cebbc7ab402b742be7b302bb6acbe9a01c2f475caad8d14a78dd3570109a5c447ab31f0b65ebf442631a31c6f9 WHIRLPOOL be7cd42978385c62af21cf06a48650e361454ff1c79aa783ed7a221e82d73bf3437a9876c9635f27639e3953fdfbe3ecb6958780341d0fbc80fb465ce50cdf29
DIST neovim-0.1.6.tar.gz 7810818 SHA256 a9fe7aadd38ef015f82ec340f6b6c0629d02c9ca4d85352db0934ae511d2f02a SHA512 360d69bc11a3cb7b2c203adc7e76edad736b1a2fb7033d2d0c6444da168053ea0b621daf7978e9c158e14c5e04af8599005bf5eb800d9d1776007257b0e0e56f WHIRLPOOL 55bd68ab6746369a9c7fbbedb3ddf55c517bfa59a3320ebf04e643acc287d1ac74fc6548fa8341c4d909422a4c9dc2bb54f991a4ef8d516ecdecf3723aaddd16
DIST neovim-0.1.7.tar.gz 7601279 SHA256 d8f885d019b1ad608f36ae23b8f1b15b7e33585e16f7514666ab6c9809bb4b7e SHA512 f7dbac4b2090fbf9764585ebf147c529b655d6e30cca9404cd161e2bd78f3aaa2f714d86a8c3efd1935dc92363757c381833d0059043807db0bea3db2fc6d10c WHIRLPOOL b78cac30a3992f9a1cda50e000cf725d5a35767b18d330ec0f8a5d83b89d8979763ae025ce67b507f1bb29d028c51edc17b773193793f06558f7cb6877bcd698

@ -0,0 +1,78 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+nvimpager perl python +jemalloc"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
>=dev-libs/libuv-1.2.0
>=dev-libs/msgpack-0.6.0_pre20150220
>=dev-libs/unibilium-1.1.1
dev-libs/libvterm
dev-lua/lpeg
dev-lua/messagepack
jemalloc? ( dev-libs/jemalloc )
"
DEPEND="${CDEPEND}
virtual/libiconv
virtual/libintl"
RDEPEND="${CDEPEND}
perl? ( dev-lang/perl )
python? ( dev-python/neovim-python-client )"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
# use our system vim dir
sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
-i src/nvim/os/unix_defs.h || die
# add eclass to bash filetypes
sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
# make less.sh macro actually work with neovim
sed -e 's|vim |nvim |g' -i runtime/macros/less.sh || die
cmake-utils_src_prepare
}
src_configure() {
export USE_BUNDLED_DEPS=OFF
append-cflags "-Wno-error"
local mycmakeargs=(
$(cmake-utils_use_enable jemalloc JEMALLOC)
-DLIBUNIBILIUM_USE_STATIC=OFF
-DLIBTERMKEY_USE_STATIC=OFF
-DLIBVTERM_USE_STATIC=OFF
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}

@ -0,0 +1,78 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+nvimpager perl python +jemalloc"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
>=dev-libs/libuv-1.2.0
>=dev-libs/msgpack-0.6.0_pre20150220
>=dev-libs/unibilium-1.1.1
dev-libs/libvterm
dev-lua/lpeg
dev-lua/messagepack
jemalloc? ( dev-libs/jemalloc )
"
DEPEND="${CDEPEND}
virtual/libiconv
virtual/libintl"
RDEPEND="${CDEPEND}
perl? ( dev-lang/perl )
python? ( dev-python/neovim-python-client )"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
# use our system vim dir
sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
-i src/nvim/globals.h || die
# add eclass to bash filetypes
sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
# make less.sh macro actually work with neovim
sed -e 's|vim |nvim |g' -i runtime/macros/less.sh || die
cmake-utils_src_prepare
}
src_configure() {
export USE_BUNDLED_DEPS=OFF
append-cflags "-Wno-error"
local mycmakeargs=(
$(cmake-utils_use_enable jemalloc JEMALLOC)
-DLIBUNIBILIUM_USE_STATIC=OFF
-DLIBTERMKEY_USE_STATIC=OFF
-DLIBVTERM_USE_STATIC=OFF
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}

@ -0,0 +1,78 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+nvimpager perl python +jemalloc"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
>=dev-libs/libuv-1.2.0
>=dev-libs/msgpack-1.0.0
>=dev-libs/unibilium-1.1.1
dev-libs/libvterm
dev-lua/lpeg
dev-lua/messagepack
jemalloc? ( dev-libs/jemalloc )
"
DEPEND="${CDEPEND}
virtual/libiconv
virtual/libintl"
RDEPEND="${CDEPEND}
perl? ( dev-lang/perl )
python? ( dev-python/neovim-python-client )"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
# use our system vim dir
sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
-i src/nvim/globals.h || die
# add eclass to bash filetypes
sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
# make less.sh macro actually work with neovim
sed -e 's|vim |nvim |g' -i runtime/macros/less.sh || die
cmake-utils_src_prepare
}
src_configure() {
export USE_BUNDLED_DEPS=OFF
append-cflags "-Wno-error"
local mycmakeargs=(
$(cmake-utils_use_enable jemalloc JEMALLOC)
-DLIBUNIBILIUM_USE_STATIC=OFF
-DLIBTERMKEY_USE_STATIC=OFF
-DLIBVTERM_USE_STATIC=OFF
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}

@ -0,0 +1,75 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+nvimpager perl python +jemalloc"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
>=dev-libs/libuv-1.2.0
>=dev-libs/msgpack-1.0.0
>=dev-libs/unibilium-1.1.1
dev-libs/libvterm
dev-lua/lpeg
dev-lua/messagepack
jemalloc? ( dev-libs/jemalloc )
"
DEPEND="${CDEPEND}
virtual/libiconv
virtual/libintl"
RDEPEND="${CDEPEND}
perl? ( dev-lang/perl )
python? ( dev-python/neovim-python-client )"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
# use our system vim dir
sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
-i src/nvim/globals.h || die
# add eclass to bash filetypes
sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
cmake-utils_src_prepare
}
src_configure() {
export USE_BUNDLED_DEPS=OFF
append-cflags "-Wno-error"
local mycmakeargs=(
$(cmake-utils_use_enable jemalloc JEMALLOC)
-DLIBUNIBILIUM_USE_STATIC=OFF
-DLIBTERMKEY_USE_STATIC=OFF
-DLIBVTERM_USE_STATIC=OFF
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}

@ -0,0 +1,75 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+nvimpager perl python +jemalloc"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
>=dev-libs/libuv-1.2.0
>=dev-libs/msgpack-1.0.0
>=dev-libs/unibilium-1.1.1
dev-libs/libvterm
dev-lua/lpeg[luajit]
dev-lua/mpack[luajit]
jemalloc? ( dev-libs/jemalloc )
"
DEPEND="${CDEPEND}
virtual/libiconv
virtual/libintl"
RDEPEND="${CDEPEND}
perl? ( dev-lang/perl )
python? ( dev-python/neovim-python-client )"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
# use our system vim dir
sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
-i src/nvim/globals.h || die
# add eclass to bash filetypes
sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
cmake-utils_src_prepare
}
src_configure() {
export USE_BUNDLED_DEPS=OFF
append-cflags "-Wno-error"
local mycmakeargs=(
$(cmake-utils_use_enable jemalloc JEMALLOC)
-DLIBUNIBILIUM_USE_STATIC=OFF
-DLIBTERMKEY_USE_STATIC=OFF
-DLIBVTERM_USE_STATIC=OFF
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}

@ -0,0 +1,77 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+nvimpager perl python ruby +jemalloc"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
>=dev-libs/libuv-1.2.0
>=dev-libs/msgpack-1.0.0
>=dev-libs/unibilium-1.1.1
dev-libs/libvterm
dev-lua/lpeg[luajit]
dev-lua/mpack[luajit]
jemalloc? ( dev-libs/jemalloc )
"
DEPEND="${CDEPEND}
virtual/libiconv
virtual/libintl"
RDEPEND="${CDEPEND}
perl? ( dev-lang/perl )
python? ( dev-python/neovim-python-client )
ruby? ( dev-ruby/neovim-ruby-client )
"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
# use our system vim dir
sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
-i src/nvim/globals.h || die
# add eclass to bash filetypes
sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
cmake-utils_src_prepare
}
src_configure() {
export USE_BUNDLED_DEPS=OFF
append-cflags "-Wno-error"
local mycmakeargs=(
$(cmake-utils_use_enable jemalloc JEMALLOC)
-DLIBUNIBILIUM_USE_STATIC=OFF
-DLIBTERMKEY_USE_STATIC=OFF
-DLIBVTERM_USE_STATIC=OFF
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}

@ -1 +1,2 @@
DIST eselect-java-0.2.0.tar.bz2 13353 SHA256 a860fdf1d5d0560e206fee3912eb768492115bcb430cb9eba031d0cbf90499bf SHA512 376c72317461c743dd91f8576cff7b1279b8f1672aa878c492ec3ed0da5f3c8d25cbb5fd4d9120109a01466dadbd049fb75d642187c850676d939925bcb55fdd WHIRLPOOL c45da204c312c1277f532756363932aeb057261728f1264cbcc01da6feb7568673aff880fa611c471b60a878434eacda592e3743022130c78247b047dbf848be
DIST eselect-java-0.3.0.tar.bz2 13434 SHA256 e2c5ec1819cceec29d4f6fab6259c7c7fd670e8d2bce0cba99140a6ad960de9e SHA512 d874d1d20d3920d16d5812b2aa28455f9166c6590b711e2bd49b1632e164be18f177eec5f5f2814391966ca3b710aab21b44d29afead2148cc7d0ed90841f9d8 WHIRLPOOL b1b42b5544103c1ab4102dc5c25d24669e6823d4655e9a7357acff3a349975aecc01eb03f935ae69b5dc102e29cfcc71f72d25b041b419ecb0d4112dd332c4a2

@ -0,0 +1,48 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit autotools
DESCRIPTION="A set of eselect modules for Java"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND="
!app-eselect/eselect-ecj
!app-eselect/eselect-maven
!<dev-java/java-config-2.2
app-admin/eselect"
src_prepare() {
default
eautoreconf
# Bug 549498: "eselect XXX show" should never send output to stderr.
sed -i \
-e '/^do_show.. {$/,/^}$/{ /echo/s,>&2$,, }' \
"${S}"/src/modules/maven.eselect.in \
"${S}"/src/modules/ecj.eselect.in
}
pkg_postinst() {
local REMOVED=0
rm -v "${EROOT}"usr/lib*/nsbrowser/plugins/javaplugin.so 2>/dev/null && REMOVED=1
rm -v "${EROOT}"etc/java-config-2/current-icedtea-web-vm 2>/dev/null && REMOVED=1
if [[ "${REMOVED}" = 1 ]]; then
elog "The eselect java-nsplugin module has been removed and your configuration"
elog "has been cleaned up. From now on, you may only install either Oracle or"
elog "IcedTea's plugin but not both. Note you can use IcedTea's plugin with an"
elog "Oracle VM. See the README installed with icedtea-web for more details."
fi
}

@ -13,3 +13,4 @@ DIST elasticsearch-2.3.5.tar.gz 27547995 SHA256 1119a8c18620b98c4b85261318663a1f
DIST elasticsearch-2.4.0.tar.gz 27364449 SHA256 3ae01140ae7bcbb91436feef381fbed774e36ef6d1e8e6a3153640db82acf4c9 SHA512 931f4d42cba43131718ec7480439b5fda0b9222a51cf9639d99ab4c00bdbedbe7e8da7a6016d88b848772cd416bc49fe7af09202160cecf839e39d803b45e869 WHIRLPOOL e03a2f7a6ea5913ce112b82e8578183c401f2d5901070a77c509ddbe7333fe62622fb2bb3e0f786a914bb15c56793e8b13220ae4588271baa3bbbcdf86223f47
DIST elasticsearch-2.4.1.tar.gz 27364109 SHA256 23a369ef42955c19aaaf9e34891eea3a055ed217d7fbe76da0998a7a54bbe167 SHA512 69b22d5c2fc93e9bc83c5da415e110105d4d977aa98633041f51f8c55ba9e6045803584965367f6e1f962122ad81a8e07fefcc5a01c5381057ec921d65bc1751 WHIRLPOOL 893056d0cd23ae41e2cb9e3db4591108777b4360ad6be5c52782cc98379ab0f0c36b42758f9815fbaf8557c9e06723c03765fd9eb4cbfcf9fe0d3203d8e6039d
DIST elasticsearch-5.0.0.tar.gz 32968292 SHA256 a866534f0fa7428e980c985d712024feef1dee04709add6e360fc7b73bb1e7ae SHA512 a4fa650d643c242a1f90059cfe6eb27e3d240b3deafc426abeae72c13aeae84b01ffb8b872b748619dfc58225ca29bde054fe10e1529522f9a06a1051991e4cd WHIRLPOOL a05a6dc785c00bb461ea286490cacc0222f9f95f0dea7ba61c6308cee0284edc53ee0a2047f723e990fa99f7ed09feda46313997b8f6dd487b042a6b26ecf8d6
DIST elasticsearch-5.0.1.tar.gz 32944777 SHA256 542e197485fbcb1aac46097439337d2e9ac6a54b7b1e29ad17761f4d65898833 SHA512 3c4c5a692cc77b01b978d3a02f049fcce36b573b6a2097a9d6714618ec0e6de0583f750516ba461eb1d13386ffad636d8663134452edaaeb2b8889c701316598 WHIRLPOOL d5ceb8e87e36be880f3bf746bfa52f7431d62ff9cd666c9dc64093760474d973ffcad792fd0a5927bef61a8e36c2fced76e03eae42e77eb1d158dcd05579b858

@ -0,0 +1,84 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils systemd user
MY_PN="${PN%-bin}"
DESCRIPTION="Open Source, Distributed, RESTful, Search Engine"
HOMEPAGE="https://www.elastic.co/products/elasticsearch"
SRC_URI="https://artifacts.elastic.co/downloads/${MY_PN}/${MY_PN}-${PV}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
RESTRICT="strip"
RDEPEND="|| ( virtual/jre:1.8 virtual/jre:1.7 )"
S="${WORKDIR}/${MY_PN}-${PV}"
pkg_preinst() {
if has_version '<app-misc/elasticsearch-2.3.2'; then
export UPDATE_NOTES=1
fi
}
pkg_setup() {
enewgroup ${MY_PN}
enewuser ${MY_PN} -1 /bin/bash /usr/share/${MY_PN} ${MY_PN}
esethome ${MY_PN} /usr/share/${MY_PN}
}
src_prepare() {
rm -rf bin/*.{bat,exe}
rm LICENSE.txt
}
src_install() {
dodir /etc/${MY_PN}
dodir /etc/${MY_PN}/scripts
insinto /etc/${MY_PN}
doins config/*
rm -rf config
insinto /usr/share/${MY_PN}
doins -r ./*
insinto /usr/share/${MY_PN}/bin
doins "${FILESDIR}/elasticsearch-systemd-pre-exec"
chmod +x "${D}"/usr/share/${MY_PN}/bin/*
keepdir /var/{lib,log}/${MY_PN}
keepdir /usr/share/${MY_PN}/plugins
insinto /usr/lib/tmpfiles.d
newins "${FILESDIR}/${MY_PN}.tmpfiles.d" "${MY_PN}.conf"
insinto /etc/sysctl.d
newins "${FILESDIR}/${MY_PN}.sysctl.d" "${MY_PN}.conf"
newinitd "${FILESDIR}/elasticsearch.init6" "${MY_PN}"
newconfd "${FILESDIR}/${MY_PN}.conf2" "${MY_PN}"
systemd_newunit "${FILESDIR}"/${PN}.service5 "${PN}.service"
}
pkg_postinst() {
elog
elog "You may create multiple instances of ${MY_PN} by"
elog "symlinking the init script:"
elog "ln -sf /etc/init.d/${MY_PN} /etc/init.d/${MY_PN}.instance"
elog
elog "Please make sure you put elasticsearch.yml and logging.yml"
elog "into the configuration directory of the instance:"
elog "/etc/${MY_PN}/instance"
elog
if ! [ -z ${UPDATE_NOTES} ]; then
elog "This update changes some configuration variables. Please review"
elog "/etc/conf.d/elasticsearch before restarting your services."
fi
}

@ -79,7 +79,7 @@ src_install() {
domenu redist/${PN}.desktop
doicon redist/icons/${PN}.png
insinto /use/share/apps/${PN}/locale
insinto /usr/share/apps/${PN}/locale
doins locale/*.qm
insinto /usr/share/${PN}/help

@ -1,4 +1,4 @@
DIST hunspell-1.3.3.tar.gz 986081 SHA256 a7b2c0de0e2ce17426821dc1ac8eb115029959b3ada9d80a81739fa19373246c SHA512 7599981d002a4a032c41c83f6287243a4942b0e25c408049a3ba86c16f63ce964800a3ac325ace0402b0d7256690c4a4151a66f19a8f58cc455af0498bb1af04 WHIRLPOOL c10f7f7b326ce886bd031da29e9e04a1f4a5914f24cbe75061ed539958e7a8efaa4d4ea16f2b17437c63d97d6f558a27c092bc43c9f56c75078667d5344402f8
DIST hunspell-1.3.4.tar.gz 1004935 SHA256 55918522cb0041748507dd4f5aa92d043cef337aa589b9367c2221da084281ac SHA512 092818570f5eb152b2bf8d0964068510185304f41e1eb0946bf7589c640d21bff67d2b79b49f770e8c0baa9031ab449eefb9e3b0bce8a28e2fc4809007fefa99 WHIRLPOOL 0e7c1941d31824e3a8f93200b6b228f56b0e35f14498a138425b177bc5a47274d422cd7b1d4836ebdb74b449bf777129381382e7b66211f5e8d1507cc3becdf7
DIST hunspell-1.4.2.tar.gz 1000676 SHA256 b6a0b23d083e0130f8c561cca8c980814ba65740ccfa52f47159f9141089946d SHA512 b4528e9cc926456809b6a0c0c95ed95b297ca564c219bb229f8daefcc7aa4d50e77c99778f8eba867106d284a6ed6320e6966a7b304c7af873908cf55118f8f3 WHIRLPOOL 0343c7e507c6eae0d9df38a3c9bcf1ec847c3afc5497ac9dd729df1418cb0a398d25ee47da8fe498230ef7589d6735abb6a5eee6f2d5125e418437eaa9500ddc
DIST hunspell-1.5.2.tar.gz 1110813 SHA256 6d649981f61ab0db81027e165a98902201a68f12f9abe0d42acd57948d67f3d7 SHA512 ed13a54e560bce479920de4b35fc5ffceb599d0b177bd9adf474a480e776ecd0e98dd3054af5324f14217987932de03c5c24f3219555d47ccb2e314d8301c5d1 WHIRLPOOL 32f48c2f84367b9b919874a15fbf2bd5620abb554d7847228af246753627317d771e5065293731eef476a6c43cce9dd89b123d0c43892f6c2edb280314031998
DIST hunspell-1.5.3.tar.gz 1110837 SHA256 1175666ec79b37fa6d3e6fda454414cecafeb537f078dda40eed96031e6fd5cc SHA512 1f3d7639ec5995bb0fa21a4c728145673fcf412b11323176e02d84a08f49f3ad29660253a6bd55856a358c8df75cb05a2465ad00034575490e3c618ffe937ba6 WHIRLPOOL 0a2d59fa1e421127e2ed7e6edc94868a9838d72cfce54a21053b2e53a64e29ffd0a2d31b22d2daef6047df78a92d7e55664797b0c1cba6e068f7249225e11ef2

@ -1,3 +1,4 @@
DIST paperwork-backend-1.0.1.tar.gz 46530 SHA256 8e95a0ac6a0ab73af6f95a575dff8b5857b5a9aed9e2842045d6bcf1f5a112cf SHA512 4a092633ff29cffb738866c9a58aeb4d9f558afb74bb28253c24d4789e8a92cf2a0207f2014e384fca5c225311ecf953d14b9b2925d705626936ad1ef9555c7d WHIRLPOOL c77191ce7385c831950f4b0c1328c129b6f191bb837d88122ea3c4c0c533cf231d4f3bcbcd4f67cce1fcca970d4338461eaaad743de9630196e5d67d657cde7c
DIST paperwork-backend-1.0.2.tar.gz 46565 SHA256 0f3435864880e00df3d0e37ce2d58037d85a8c12f06d09d67fae25aa2895d0a7 SHA512 061b65da55ec432ec76eacee78029e77df9a10d9da02b2e4bedd7efe51b2b771d29cd8d940410f93bf921087365ded5464d9acd3b3940afe9fc4e4a3e1afc5a7 WHIRLPOOL 2529ee71c49e8b43f88ed55812a100541a122a0cb3e68ae32e7b1a219592b98d9b1dccfce094760dbf0c23c53c53b1f5fdc2b6a05eba499f7fcf620c40193ee5
DIST paperwork-backend-1.0.4.tar.gz 46365 SHA256 51f47b56570a5f7926aa5a1a6f95b106b521ec6043c89666d28cb429accac507 SHA512 ed86f3838c39e33bab003fafe297659a25f52701f3101320f3d8c6edd44451d80dcbce2d514bc822c8f6b5fe0c69a4b4e9b0a14c9a0a622810c35c1a0b86e4ff WHIRLPOOL 5a528befe4e815a51df1923c81f73a062a4477ae15b12cbb4bd015ebf9c57a6ea7a5b2cab50cc7ef5aa2e867d6bef2e569aae65841fc0bc34c077650e8e5edc1
DIST paperwork-backend-1.0.5.tar.gz 46433 SHA256 a2e481873eec6b676b89aab21d6863264f10e4179cf72a253f52e565a602fcfd SHA512 87debdcef457bc1873d25d7bdb15addf0c78d9f1cc9c324cec51c60bc863a4e891680f85258399f1f0506235e7524bffbf49783a6f23d0f6d0fee68924d697da WHIRLPOOL ebb5d1fc5054fe4306879404805b9ca5e763eadf39fe491775bb767fb7369bc39484449eac0b81ee2e961597a9bf13a4a4eeef426be0afb21211e717ad3382c7

@ -0,0 +1,29 @@
# 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_4,3_5} )
inherit distutils-r1
DESCRIPTION="Backend part of Paperwork (Python API, no UI)"
HOMEPAGE="https://github.com/jflesch/paperwork-backend"
SRC_URI="https://github.com/jflesch/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RDEPEND="app-text/poppler[introspection]
dev-python/pillow[${PYTHON_USEDEP}]
dev-python/pycairo[${PYTHON_USEDEP}]
dev-python/pycountry[${PYTHON_USEDEP}]
dev-python/pyenchant[${PYTHON_USEDEP}]
dev-python/pygobject:3[${PYTHON_USEDEP}]
dev-python/python-levenshtein[${PYTHON_USEDEP}]
dev-python/simplebayes[${PYTHON_USEDEP}]
dev-python/termcolor[${PYTHON_USEDEP}]
dev-python/whoosh[${PYTHON_USEDEP}]"
DEPEND="${RDEPEND}"

@ -2,3 +2,4 @@ DIST paperwork-0.3.2.tar.gz 179509 SHA256 55a3aa814cf0b62bc2e40d0b4789068ebec9bf
DIST paperwork-1.0.1.tar.gz 206786 SHA256 65976920d18a09ca5ff07088ec73073b857dfb40b4674e428619c8a90726ca01 SHA512 10f854586381b6eb3eabb654cf42c7372594f1c413f601ebbff75f806c841e71e0883bbbfa482802d0f083521689d82ff0416bdbb378d9041402a0ed971b1ed6 WHIRLPOOL 1e314ed44bf86a4c97e7f30667fe07e40ed390715278cf418df0d0bd219b32e33256ac0606cadc10ec5c2a5d7847cda62850adc2bc15ace8c4583da71232bb38
DIST paperwork-1.0.2.tar.gz 274148 SHA256 0884c53f0a23fd396428fbc7cc0499d6ab95f7d76df369d68bffebfd5bf2d1ae SHA512 607fa9f27a367adf8256e59d8d72e2c51822e51563d8e705bc20d4c5a99c3f924f81f262adcc0fd1950f4de97840f5f25e030aa8be164bdabc3bf7c07e2152a4 WHIRLPOOL 74ac71c9c59de5931ba159bbebb9599d1023be1cc4093e27e50600d34b8c0cc00fe52fed8e2409e2f40a7b2aa0bc4b62d2e87ff117a4a32902edbee61bf038af
DIST paperwork-1.0.4.tar.gz 328507 SHA256 08deac7c503f2e589a20e0fd14c56b034a333478cf87761e2e6ce924470a4c79 SHA512 5aae6e719136e25e691b427bb0ad70456d47f2744ce90e42d97ba6bc973c11f8740ab8c8e5a64e3c33d77ed70eebea8832fd7de3b85e5a8e1769f3b4b20608f7 WHIRLPOOL 0b0e9ee62a83a23548181cce1154e78798cc8a6734f181ac3c03af5346da571922754bed33550a3dfc0d6832d72c22b9ffd42bbf2e3bc924aa8db9b57cc6932a
DIST paperwork-1.0.5.tar.gz 328468 SHA256 8a09910f852196983f4beabe97711ae1624d2071755cf6a6fed99d73bedc91ae SHA512 92c7515f10a766064cf1b48a3a482529665c265b09c26c27971e5942020749698168171fa7d242984883d9d4b09c5dd8ae6a29c6626fcb4d96972495164e425e WHIRLPOOL ce18d41ada101cc4b3a7d5d192fe780a78c9d41d044a7c7b1f0eca701ece25653c8b1588bcfd32eb5ae30552e299dd8537850c5363f38d875cde2d29663293a3

@ -0,0 +1,30 @@
# 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_4,3_5} )
inherit distutils-r1
DESCRIPTION="a personal document manager for scanned documents (and PDFs)"
HOMEPAGE="https://github.com/jflesch/paperwork"
SRC_URI="https://github.com/jflesch/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RDEPEND="~app-text/paperwork-backend-${PV}[${PYTHON_USEDEP}]
dev-python/libpillowfight[${PYTHON_USEDEP}]
dev-python/pillow[${PYTHON_USEDEP}]
dev-python/pycairo[${PYTHON_USEDEP}]
dev-python/pyenchant[${PYTHON_USEDEP}]
dev-python/pygobject:3[${PYTHON_USEDEP}]
dev-python/pyinsane:2[${PYTHON_USEDEP}]
>=dev-python/pyocr-0.3.0[${PYTHON_USEDEP}]
dev-python/simplebayes[${PYTHON_USEDEP}]
dev-util/glade[introspection,python]
x11-libs/gtk+:3[introspection]"
DEPEND="${RDEPEND}"

@ -1,6 +1,7 @@
DIST aerospike-server-community-3.10.0-debian7.tgz 10347380 SHA256 12b2c11db1d08ab2f90c26beccf51045d5fcc13eccbe9ebf570490f13e07f206 SHA512 c0e79723b1780460e8c623b2db0ae0878734165406f148f158d7f166d4c2ffc1a071d9dc515f73f37372e9963f3951ed3c5713850d33e540677cc093431de5cf WHIRLPOOL eab8324ad3045f2d58a1374eaa6586fdc9546fe0baba3101ef702d5ce3880cf0f281acfa31b19a88fd72993505c151189752bdcf2035f9ddddf890b03895dc13
DIST aerospike-server-community-3.10.0.1-debian7.tgz 10346827 SHA256 7c994413b51523b09943e872b829bbbca521eb84cd83f670d002e45d9362ec21 SHA512 4c732100eb71a67d9386ac53fc9bc900afb4337a7627570c9a429fc9a53d6605eaf4fcac7e264a2d3816f4864783cbdbf340e49012a2276d76957a73d4ca2641 WHIRLPOOL 005f9f9a1202f30fa4f94e03dd5891ff557af3c0fb1ce585017e0e4c3c3ac1ed42f92d149df95d11eb2143d4c6516cb19d92b94e0820eb00cf58f691c077c9c7
DIST aerospike-server-community-3.10.0.3-debian7.tgz 10347047 SHA256 fb0b47549cbe783317854b0edebe0ec112d8d5b073d7311a54739518bf2ae971 SHA512 1699bc2c8813c4b584eeef4c0edd8481915e9ccac55795717e87e6246894d836365aba2fdf8c884c6f4f4bdb3cc8d2a78141c32b1ef67cbf5efa1dc7340906ce WHIRLPOOL b6bf3a97c0023bb77f19b7cbd58785422551ce66cc7749773a1d8cfb3fa3d3ca1f96a1202718713859c23ccad0c14bded31759f36d0b0fa3039dd86e2ba1d6d2
DIST aerospike-server-community-3.10.1-debian7.tgz 10498243 SHA256 90f5c85af7d659512b3af10e570abb31a69c760849b2c7eb19fe243b1eef869f SHA512 0320cca1f883b58f03d4ebfeefc4020bd233ac2a9d0f11b2ebe4a507a4a1cbd3885dd4d3894ddeb140a338eab58367de4126a516d2b09058f7c76b90f451dfbc WHIRLPOOL d6aa30a9fbfe22bc583abf5a43213dd44c3df937ee7715a1604082d9e987ebe66955533802d243e2dba59504dbea60c72eaa48da3684cee8e64e16d070839cd9
DIST aerospike-server-community-3.9.0.2-debian7.tgz 9783416 SHA256 d822e3e0b1766484f2f5c8568db8169c58bc4db92deb92d52c8883dda44ae739 SHA512 f2c39b45f498ce5566234945987cfddf9dfb3a43afec42d735e1a6f8707dfa53f00bd40b98f59430dc63b35a05fa94b98ec5ccae767061a382b6cc4ddbd0f089 WHIRLPOOL f526fa7090912f042ec9808ba972d598269f6e2365baa68bb9777cfc0b5502b419364ac0828146bc34dffadde64f6a97fd5f722a5630b2743d3175c5e86cf9ce
DIST aerospike-server-community-3.9.0.3-debian7.tgz 9783678 SHA256 ec09d7f12c1001b8341892bff50f15a75a7e8f312b510c3627066befb9fc5612 SHA512 82b826fdb6bfdbb8508346accb2b0bf34f55a601b95e214d8b7fd108790a889e64dd5b76b4351285baa3f1c4f9d6a98945737c8ca42f26229364030674a2623b WHIRLPOOL f7bac66a56ad8b9ee47b3eedc16337b13d8674f42dba40f445876fe9c46ec3620dad73a9324f4a33daef98c740643c6361b86733ac6c741a68757b332101eefb
DIST aerospike-server-community-3.9.1-debian7.tgz 9888658 SHA256 accf3685e148c56295f8bf9498f2aec1c405390dbb4fcb7c338df1d42290e917 SHA512 c6a9304d0a328c0bf3c5908be1d897af4c0579ce0bdb710c90c2c70fd5b364ebf518dcaee27f985f6275e5a03ab0bcf15b8fe5340d7e6129adf28eaf369e8de4 WHIRLPOOL e1d70db94906064cd4e3ba1a25f52996b2399993591d65b0f94d9b5bdd83aa0898432745cd4b89edf106eeace63c2ca9637bbb5cebf4b25a5db516e21f52325c

@ -0,0 +1,69 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils user
DESCRIPTION="Flash-optimized, in-memory, nosql database"
HOMEPAGE="http://www.aerospike.com"
SRC_URI="http://www.aerospike.com/artifacts/${PN}/${PV}/${P}-debian7.tgz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="app-crypt/gcr"
DEPEND="${RDEPEND}"
S="${WORKDIR}/${P}-debian7"
pkg_setup() {
enewgroup aerospike
enewuser aerospike -1 /bin/bash /opt/aerospike aerospike
}
src_prepare() {
local server_deb="${P}.debian7.x86_64.deb"
local tools_deb="aerospike-tools-3.10.2.debian7.x86_64.deb"
ar x "${server_deb}" || die
tar xzf data.tar.gz && rm data.tar.gz || die
ar x "${tools_deb}" || die
tar xzf data.tar.gz && rm data.tar.gz || die
rm *.deb asinstall control.tar.gz debian-binary LICENSE SHA256SUMS
rm usr/bin/{asfixownership,asmigrate2to3}
}
src_install() {
insinto /opt/
doins -r opt/aerospike
fperms +x -R /opt/aerospike/bin/
fperms +x -R /opt/aerospike/lib/python/
for dir in '/etc' '/var/log'; do
keepdir "${dir}/aerospike"
done
insinto /etc/aerospike
for conf in 'aerospike.conf' 'aerospike_mesh.conf' 'aerospike_ssd.conf'; do
doins "${FILESDIR}/${conf}"
done
insinto /usr/bin
doins usr/bin/*
fperms +x -R /usr/bin/asd
insinto /etc/logrotate.d
newins "${FILESDIR}"/aerospike.logrotate aerospike
newinitd "${FILESDIR}"/aerospike.init aerospike
fowners -R aerospike:aerospike /opt/aerospike/
fowners aerospike:aerospike /usr/bin/asd
fowners -R aerospike:aerospike /var/log/aerospike
}

@ -0,0 +1,12 @@
diff -uNr lua-5.1.5.orig/src/ldo.c lua-5.1.5/src/ldo.c
--- lua-5.1.5.orig/src/ldo.c 2016-11-28 20:04:13.177047928 +0100
+++ lua-5.1.5/src/ldo.c 2016-11-28 20:07:15.170432525 +0100
@@ -274,7 +274,7 @@
CallInfo *ci;
StkId st, base;
Proto *p = cl->p;
- luaD_checkstack(L, p->maxstacksize);
+ luaD_checkstack(L, p->maxstacksize + p->numparams);
func = restorestack(L, funcr);
if (!p->is_vararg) { /* no varargs? */
base = func + 1;

@ -0,0 +1,135 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils multilib multilib-minimal portability toolchain-funcs versionator
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="http://www.lua.org/"
SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux ~ppc-aix ~x64-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )"
DEPEND="${RDEPEND}
sys-devel/libtool"
PDEPEND="emacs? ( app-emacs/lua-mode )"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/luaconf.h
)
src_prepare() {
local PATCH_PV=$(get_version_component_range 1-2)
epatch "${FILESDIR}/${P}-fix_vararg_calls.patch"
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make-r1.patch
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-module_paths.patch
# use glibtool on Darwin (versus Apple libtool)
if [[ ${CHOST} == *-darwin* ]] ; then
sed -i -e '/LIBTOOL = /s:libtool:glibtool:' \
Makefile src/Makefile || die
fi
#EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="upstream.patch" epatch
# correct lua versioning
sed -i -e 's/\(LIB_VERSION = \)6:1:1/\16:5:1/' src/Makefile || die
sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html || die
if ! use deprecated ; then
# patches from 5.1.4 still apply
epatch "${FILESDIR}"/${PN}-5.1.4-deprecated.patch
epatch "${FILESDIR}"/${PN}-5.1.4-test.patch
fi
if ! use readline ; then
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-readline.patch
fi
# Using dynamic linked lua is not recommended for performance
# reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
# Mainly, this is of concern if your arch is poor with GPRs, like x86
# Note that this only affects the interpreter binary (named lua), not the lua
# compiler (built statically) nor the lua libraries (both shared and static
# are installed)
if use static ; then
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make_static-r1.patch
fi
# custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
# We want packages to find our things...
sed -i \
-e 's:/usr/local:'${EPREFIX}'/usr:' \
-e "s:\([/\"]\)\<lib\>:\1$(get_libdir):g" \
etc/lua.pc src/luaconf.h || die
}
multilib_src_compile() {
tc-export CC
myflags=
# what to link to liblua
liblibs="-lm"
liblibs="${liblibs} $(dlopen_lib)"
# what to link to the executables
mylibs=
if use readline; then
mylibs="-lreadline"
fi
cd src
emake CC="${CC}" CFLAGS="-DLUA_USE_LINUX ${CFLAGS}" \
RPATH="${EPREFIX}/usr/$(get_libdir)/" \
LUA_LIBS="${mylibs}" \
LIB_LIBS="${liblibs}" \
V=${PV} \
gentoo_all
mv lua_test ../test/lua.static
}
multilib_src_install() {
emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
V=${PV} gentoo_install
insinto /usr/$(get_libdir)/pkgconfig
doins etc/lua.pc
}
multilib_src_install_all() {
dodoc HISTORY README
dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
doicon etc/lua.ico
doman doc/lua.1 doc/luac.1
}
multilib_src_test() {
local positive="bisect cf echo env factorial fib fibfor hello printf sieve
sort trace-calls trace-globals"
local negative="readonly"
local test
cd "${BUILD_DIR}" || die
for test in ${positive}; do
test/lua.static test/${test}.lua || die "test $test failed"
done
for test in ${negative}; do
test/lua.static test/${test}.lua && die "test $test failed"
done
}

@ -1,6 +1,4 @@
DIST php-5.5.37.tar.bz2 13699851 SHA256 d2380ebe46caf17f2c4cd055867d00a82e6702dc5f62dc29ce864a5742905d88 SHA512 d2da921f3efd858e1cb8004873e377ca9c5821d5269d5b8e7c9be830b183f4d18f737b14653f65a43c0957bdca994e09a476d77e3a29a11e357abc24618c4c0f WHIRLPOOL 8db12b1d090bc1bfb3f5b20c661ba05588b8f988484d1887a959f943dd6f1756cb62bac811c809af516e6c3582b64388443546a3b4a17f0527a69fcbafc0452c
DIST php-5.5.38.tar.xz 11077780 SHA256 cb527c44b48343c8557fe2446464ff1d4695155a95601083e5d1f175df95580f SHA512 c2cdb18b2c9edaeff66591e8f58f8ff488260f537cdf9ce09820c163f20ff5209c0def89343d429932c9506ad4ef3daacf224946dac1c59622501092483f30c6 WHIRLPOOL 4380c1daa39f04f90d1457152e366720b295e96aba6859625c6b375a3785b4e0f30fea590c1ee1edb439c2a405446526c702a003d68ea6c817ab8684068a7581
DIST php-5.6.26.tar.xz 12412992 SHA256 203a854f0f243cb2810d1c832bc871ff133eccdf1ff69d32846f93bc1bef58a8 SHA512 06ef6990c1ab6ef3c94157b72039ddbc40a8373b8f38c88ec4dfa771fcd422a0673ff5f6cbf3cf67a0fb10bedd8b9fa85aa95e08abb0d74163a90a322a1d8c24 WHIRLPOOL 11b183089a43bfad1ee787bd2512faf8d4611916cdfe348fb8ba3a2c2d35d560dcd38656e3a5b3ee98efb649e9f7ab219a89da7a72c163270760ad44a64bba09
DIST php-5.6.27.tar.xz 12439168 SHA256 16eb544498339d1d855292826e2e547ab01a31600141094959073e5e10e93ab5 SHA512 e9fdcf0feaa94d385459124e58694d69afcfe8d34ebdd10bfce5bf5828b7c20e7eb92ca75282be8eaef2bdfad0a0f25424fbf9eb9d2f77584f8a80d43f178bf7 WHIRLPOOL 3a942e408ede25daa2f4cb52337a26ccfce7724f2c401ea903e2fa152eef7b25e0ed0a22f53371a7145e8b043894ce5c145b29879de93f01c64c315113b3698d
DIST php-5.6.28.tar.xz 12441072 SHA256 07187ba2870f89cef334cd2ad6cb801aeec5eaf283da0293a9a6be75d6786d11 SHA512 3af54c0533bba23fa74c3815143cb27890900d8b0726ba8ae99a5f7dde4b5411e8eb7f559f73cf41559f11437036da70c7842b64f5555e4fab00d40cf7c35cd1 WHIRLPOOL 6b288cbb8bb005360b67fe998bf024674d685399fa411c03f5feb39a285a639012864c66ab166e2cdb6d468b59c5114f245b172813b5edd384cee598d488306a
DIST php-7.0.13.tar.xz 12528816 SHA256 357ba7f93975d7d836abed0852dc3ed96a988af539e87750613294cbee82f1bf SHA512 745877913889be629a4b5faefad7949e3634fa3f61fa1d8642ac42196fca187e50fbcc330f1af409a62b2e2a6b5c7f782ddff8022937a61403207439659c3f5a WHIRLPOOL dce465f943c278ae58dc3183ee4a303c21650cc5f3ddabf468d9de5f3a4dc1cc07a230decdbc502d03e6bc7c6f5d6ab2f6965353f1c87e966613223739780856

@ -1,766 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit autotools flag-o-matic versionator libtool systemd
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="http://php.net/"
SRC_URI="http://php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3"
SLOT="$(get_version_component_range 1-2)"
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"
# 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"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
# the ones that can be detected to avoid a repeat of bug #564824.
COMMON_DEPEND="
>=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
>=dev-libs/libpcre-8.32[unicode]
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
<www-servers/apache-2.4[threads=] ) )
berkdb? ( || ( sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
sys-libs/db:4.7
sys-libs/db:4.6
sys-libs/db:4.5 ) )
bzip2? ( app-arch/bzip2 )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
cjk? ( !gd? (
virtual/jpeg:0
media-libs/libpng:0=
sys-libs/zlib
) )
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/libmysqlclient:= )
mysqli? ( virtual/libmysqlclient:= )
)
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
odbc? ( >=dev-db/unixODBC-1.8.13 )
postgres? ( dev-db/postgresql:* )
qdbm? ( dev-db/qdbm )
readline? ( sys-libs/readline:0= )
recode? ( app-text/recode )
sharedmem? ( dev-libs/mm )
simplexml? ( >=dev-libs/libxml2-2.6.8 )
snmp? ( >=net-analyzer/net-snmp-5.2 )
soap? ( >=dev-libs/libxml2-2.6.8 )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
sybase-ct? ( dev-db/freetds )
tidy? ( app-text/htmltidy )
truetype? (
=media-libs/freetype-2*
>=media-libs/t1lib-5.0.0
!gd? (
virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
)
unicode? ( dev-libs/oniguruma )
vpx? ( media-libs/libvpx )
wddx? ( >=dev-libs/libxml2-2.6.8 )
xml? ( >=dev-libs/libxml2-2.6.8 )
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
xpm? (
x11-libs/libXpm
virtual/jpeg:0
media-libs/libpng:0= sys-libs/zlib
)
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
zip? ( sys-libs/zlib )
zlib? ( sys-libs/zlib )
"
RDEPEND="${COMMON_DEPEND}
virtual/mta
fpm? (
selinux? ( sec-policy/selinux-phpfpm )
systemd? ( sys-apps/systemd ) )"
DEPEND="${COMMON_DEPEND}
app-arch/xz-utils
sys-devel/flex
>=sys-devel/m4-1.4.3
>=sys-devel/libtool-1.5.18"
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
REQUIRED_USE="
cli? ( ^^ ( readline libedit ) )
truetype? ( gd )
vpx? ( gd )
cjk? ( gd )
exif? ( gd )
xpm? ( gd )
gd? ( zlib )
simplexml? ( xml )
soap? ( xml )
wddx? ( xml )
xmlrpc? ( || ( xml iconv ) )
xmlreader? ( xml )
xslt? ( xml )
ldap-sasl? ( ldap )
mhash? ( hash )
phar? ( hash )
libmysqlclient? ( || (
mysql
mysqli
pdo
) )
qdbm? ( !gdbm )
readline? ( !libedit )
recode? ( !imap !mysql !mysqli )
sharedmem? ( !threads )
!cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )"
PHP_MV="$(get_major_version)"
# Allow users to install production version if they want to
if [[ "${PHP_INI_VERSION}" == "production" ]]; then
PHP_INI_UPSTREAM="php.ini-production"
else
PHP_INI_UPSTREAM="php.ini-development"
fi
php_install_ini() {
local phpsapi="${1}"
# work out where we are installing the ini file
php_set_ini_dir "${phpsapi}"
local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}"
cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" || die
# default to /tmp for save_path, bug #282768
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
# Set the extension dir
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}" || die
# Set the include path to point to where we want to find PEAR packages
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
dodir "${PHP_INI_DIR#${EPREFIX}}"
insinto "${PHP_INI_DIR#${EPREFIX}}"
newins "${phpinisrc}" php.ini
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
elog
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
if use opcache; then
elog "Adding opcache to $PHP_EXT_INI_DIR"
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
fi
# SAPI-specific handling
if [[ "${sapi}" == "fpm" ]] ; then
einfo "Installing FPM config file php-fpm.conf"
insinto "${PHP_INI_DIR#${EPREFIX}}"
doins sapi/fpm/php-fpm.conf
fi
dodoc php.ini-development
dodoc php.ini-production
}
php_set_ini_dir() {
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
}
src_prepare() {
# Change PHP branding
# Get the alpha/beta/rc version
sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \
-i configure.in || die "Unable to change PHP branding"
# Patch PHP to show Gentoo as the server platform
sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \
-i configure.in || die "Failed to fix server platform name"
# Prevent PHP from activating the Apache config,
# as we will do that ourselves
sed -i \
-e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \
-e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \
configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 \
|| die
# Patch PHP to support heimdal instead of mit-krb5
if has_version "app-crypt/heimdal" ; then
sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \
|| die "Failed to fix heimdal libname"
sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \
|| die "Failed to fix heimdal crypt library reference"
fi
eapply_user
# Force rebuilding aclocal.m4
rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
eautoreconf
if [[ ${CHOST} == *-darwin* ]] ; then
# http://bugs.php.net/bug.php?id=48795, bug #343481
sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die
fi
}
src_configure() {
addpredict /usr/share/snmp/mibs/.index
addpredict /var/lib/net-snmp/mib_indexes
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
local our_conf=(
--prefix="${PHP_DESTDIR}"
--mandir="${PHP_DESTDIR}/man"
--infodir="${PHP_DESTDIR}/info"
--libdir="${PHP_DESTDIR}/lib"
--with-libdir="$(get_libdir)"
--localstatedir="${EPREFIX}/var"
--without-pear
$(use_enable threads maintainer-zts)
)
our_conf+=(
$(use_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/bin/apxs" )
else
sapi_conf+=( --without-apxs2 )
fi
;;
esac
done
# Construct the $myeconfargs array by concatenating $our_conf
# (the common args) and $sapi_conf (the SAPI-specific args).
local myeconfargs=( "${our_conf[@]}" )
myeconfargs+=( "${sapi_conf[@]}" )
pushd "${BUILD_DIR}" > /dev/null || die
econf "${myeconfargs[@]}"
popd > /dev/null || die
done
}
src_compile() {
# snmp seems to run during src_compile, too (bug #324739)
addpredict /usr/share/snmp/mibs/.index
addpredict /var/lib/net-snmp/mib_indexes
for sapi in ${SAPIS} ; do
if use "${sapi}"; then
cd "${WORKDIR}/sapis-build/$sapi" || \
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
emake
fi
done
}
src_install() {
# see bug #324739 for what happens when we don't have that
addpredict /usr/share/snmp/mibs/.index
# grab the first SAPI that got built and install common files from there
local first_sapi=""
for sapi in $SAPIS ; do
if use $sapi ; then
first_sapi=$sapi
break
fi
done
# Makefile forgets to create this before trying to write to it...
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
# Install php environment (without any sapis)
cd "${WORKDIR}/sapis-build/$first_sapi" || die
emake INSTALL_ROOT="${D}" \
install-build install-headers install-programs
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
# Create the directory where we'll put version-specific php scripts
keepdir "/usr/share/php${PHP_MV}"
local sapi="", file=""
local sapi_list=""
for sapi in ${SAPIS}; do
if use "${sapi}" ; then
einfo "Installing SAPI: ${sapi}"
cd "${WORKDIR}/sapis-build/${sapi}" || die
if [[ "${sapi}" == "apache2" ]] ; then
# We're specifically not using emake install-sapi as libtool
# may cause unnecessary relink failures (see bug #351266)
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
newins ".libs/libphp5$(get_libname)" \
"libphp${PHP_MV}$(get_libname)"
keepdir "/usr/$(get_libdir)/apache2/modules"
else
# needed each time, php_install_ini would reset it
local dest="${PHP_DESTDIR#${EPREFIX}}"
into "${dest}"
case "$sapi" in
cli)
source="sapi/cli/php"
;;
cgi)
source="sapi/cgi/php-cgi"
;;
fpm)
source="sapi/fpm/php-fpm"
;;
embed)
source="libs/libphp${PHP_MV}$(get_libname)"
;;
*)
die "unhandled sapi in src_install"
;;
esac
if [[ "${source}" == *"$(get_libname)" ]]; then
dolib.so "${source}"
else
dobin "${source}"
local name="$(basename ${source})"
dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
php_install_ini "${sapi}"
# construct correct SAPI string for php-config
# thanks to ferringb for the bash voodoo
if [[ "${sapi}" == "apache2" ]]; then
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
else
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
fi
fi
done
# Installing opcache module
if use opcache ; then
into "${PHP_DESTDIR#${EPREFIX}}"
dolib.so "modules/opcache$(get_libname)"
fi
# Install env.d files
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
# set php-config variable correctly (bug #278439)
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
if use fpm ; then
if use systemd; then
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
"php-fpm@${SLOT}.service"
else
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
"php-fpm@${SLOT}.service"
fi
fi
}
src_test() {
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
if [[ ! -x "${PHP_BIN}" ]] ; then
ewarn "Test phase requires USE=cli, skipping"
return
else
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
fi
if [[ -x "${WORKDIR}/sapis/cgi/php-cgi" ]] ; then
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi"
fi
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
"session.save_path=${T}" \
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
"session.save_path=${T}"
for name in ${EXPECTED_TEST_FAILURES}; do
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
done
local failed="$(find -name '*.out')"
if [[ ${failed} != "" ]] ; then
ewarn "The following test cases failed unexpectedly:"
for name in ${failed}; do
ewarn " ${name/.out/}"
done
else
einfo "No unexpected test failures, all fine"
fi
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
local passed=""
for name in ${EXPECTED_TEST_FAILURES}; do
[[ -f "${name}.diff" ]] && continue
passed="${passed} ${name}"
done
if [[ ${passed} != "" ]] ; then
einfo "The following test cases passed unexpectedly:"
for name in ${passed}; do
ewarn " ${passed}"
done
else
einfo "None of the known-to-fail tests passed, all fine"
fi
fi
}
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
elog
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
elog "your apache2 command. OpenRC users can append that string to"
elog "APACHE2_OPTS in /etc/conf.d/apache2."
elog
elog "The apache module configuration file 70_mod_php.conf is"
elog "provided (and maintained) by eselect-php."
elog
fi
# Create the symlinks for php
for m in ${SAPIS}; do
[[ ${m} == 'embed' ]] && continue;
if use $m ; then
local ci=$(eselect php show $m)
if [[ -z $ci ]]; then
eselect php set $m php${SLOT} || die
einfo "Switched ${m} to use php:${SLOT}"
einfo
elif [[ $ci != "php${SLOT}" ]] ; then
elog "To switch $m to use php:${SLOT}, run"
elog " eselect php set $m php${SLOT}"
elog
fi
fi
done
# Remove dead symlinks for SAPIs that were just disabled. For
# example, if the user has the cgi SAPI enabled, then he has an
# eselect-php symlink for it. If he later reinstalls PHP with
# USE="-cgi", that symlink will break. This call to eselect is
# supposed to remove that dead link per bug 572436.
eselect php cleanup || die
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
elog "To build extensions for this version of PHP, you will need to"
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
elog
fi
# Only mention PHP_INI_VERSION if the user doesn't have it set.
case "${PHP_INI_VERSION}" in
production|development)
;;
*)
elog "This ebuild installed a version of php.ini based on"
elog "${PHP_INI_UPSTREAM}. You can choose which version of"
elog "php.ini to install by default by setting PHP_INI_VERSION"
elog "to either 'production' or 'development' in your make.conf."
elog "Both versions of php.ini can be found with the PHP docs in"
elog "${EPREFIX}/usr/share/doc/${PF}"
elog
;;
esac
elog "For details on how version slotting works, please see"
elog "the wiki:"
elog
elog " https://wiki.gentoo.org/wiki/PHP"
elog
}
pkg_postrm() {
# This serves two purposes. First, if we have just removed the last
# installed version of PHP, then this will remove any dead symlinks
# belonging to eselect-php. Second, if a user upgrades slots from
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
# his existing symlinks to point to the new 7.0 installation. The
# latter is bug 432962.
#
# Note: the eselect-php package may not be installed at this point,
# so we can't die() if this command fails.
eselect php cleanup
}

@ -1,777 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit autotools flag-o-matic versionator libtool systemd
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="http://php.net/"
SRC_URI="http://php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3.01
BSD
Zend-2.0
bcmath? ( LGPL-2.1+ )
fpm? ( BSD-2 )
gd? ( gd )
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(get_version_component_range 1-2)"
KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2"
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
IUSE="${IUSE}
${SAPIS/cli/+cli}
threads"
IUSE="${IUSE} 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"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
# the ones that can be detected to avoid a repeat of bug #564824.
COMMON_DEPEND="
>=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
>=dev-libs/libpcre-8.32[unicode]
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
<www-servers/apache-2.4[threads=] ) )
berkdb? ( || ( sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
sys-libs/db:4.7
sys-libs/db:4.6
sys-libs/db:4.5 ) )
bzip2? ( app-arch/bzip2 )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
cjk? ( !gd? (
virtual/jpeg:0
media-libs/libpng:0=
sys-libs/zlib
) )
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/libmysqlclient:= )
mysqli? ( virtual/libmysqlclient:= )
)
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
odbc? ( >=dev-db/unixODBC-1.8.13 )
postgres? ( dev-db/postgresql:* )
qdbm? ( dev-db/qdbm )
readline? ( sys-libs/readline:0= )
recode? ( app-text/recode )
sharedmem? ( dev-libs/mm )
simplexml? ( >=dev-libs/libxml2-2.6.8 )
snmp? ( >=net-analyzer/net-snmp-5.2 )
soap? ( >=dev-libs/libxml2-2.6.8 )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl )
)
sybase-ct? ( dev-db/freetds )
tidy? ( app-text/htmltidy )
truetype? (
=media-libs/freetype-2*
>=media-libs/t1lib-5.0.0
!gd? (
virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
)
unicode? ( dev-libs/oniguruma )
vpx? ( media-libs/libvpx )
wddx? ( >=dev-libs/libxml2-2.6.8 )
xml? ( >=dev-libs/libxml2-2.6.8 )
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
xpm? (
x11-libs/libXpm
virtual/jpeg:0
media-libs/libpng:0= sys-libs/zlib
)
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
zip? ( sys-libs/zlib )
zlib? ( sys-libs/zlib )
"
RDEPEND="${COMMON_DEPEND}
virtual/mta
fpm? (
selinux? ( sec-policy/selinux-phpfpm )
systemd? ( sys-apps/systemd ) )"
DEPEND="${COMMON_DEPEND}
app-arch/xz-utils
>=sys-devel/bison-3.0.1
sys-devel/flex
>=sys-devel/m4-1.4.3
>=sys-devel/libtool-1.5.18"
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
REQUIRED_USE="
cli? ( ^^ ( readline libedit ) )
truetype? ( gd )
vpx? ( gd )
cjk? ( gd )
exif? ( gd )
xpm? ( gd )
gd? ( zlib )
simplexml? ( xml )
soap? ( xml )
wddx? ( xml )
xmlrpc? ( || ( xml iconv ) )
xmlreader? ( xml )
xslt? ( xml )
ldap-sasl? ( ldap )
mhash? ( hash )
phar? ( hash )
libmysqlclient? ( || (
mysql
mysqli
pdo
) )
qdbm? ( !gdbm )
readline? ( !libedit )
recode? ( !imap !mysql !mysqli )
sharedmem? ( !threads )
!cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )"
PHP_MV="$(get_major_version)"
# Allow users to install production version if they want to
if [[ "${PHP_INI_VERSION}" == "production" ]]; then
PHP_INI_UPSTREAM="php.ini-production"
else
PHP_INI_UPSTREAM="php.ini-development"
fi
php_install_ini() {
local phpsapi="${1}"
# work out where we are installing the ini file
php_set_ini_dir "${phpsapi}"
local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}"
cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" || die
# default to /tmp for save_path, bug #282768
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
# Set the extension dir
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}" || die
# Set the include path to point to where we want to find PEAR packages
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
dodir "${PHP_INI_DIR#${EPREFIX}}"
insinto "${PHP_INI_DIR#${EPREFIX}}"
newins "${phpinisrc}" php.ini
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
elog
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
if use opcache; then
elog "Adding opcache to $PHP_EXT_INI_DIR"
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
fi
# SAPI-specific handling
if [[ "${sapi}" == "fpm" ]] ; then
einfo "Installing FPM config file php-fpm.conf"
insinto "${PHP_INI_DIR#${EPREFIX}}"
doins sapi/fpm/php-fpm.conf
fi
dodoc php.ini-development
dodoc php.ini-production
}
php_set_ini_dir() {
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
}
src_prepare() {
eapply "${FILESDIR}/php-${SLOT}-no-bison-warnings.patch"
# Change PHP branding
# Get the alpha/beta/rc version
sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \
-i configure.in || die "Unable to change PHP branding"
# Patch PHP to show Gentoo as the server platform
sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \
-i configure.in || die "Failed to fix server platform name"
# Prevent PHP from activating the Apache config,
# as we will do that ourselves
sed -i \
-e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \
-e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \
configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 \
|| die
# Patch PHP to support heimdal instead of mit-krb5
if has_version "app-crypt/heimdal" ; then
sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \
|| die "Failed to fix heimdal libname"
sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \
|| die "Failed to fix heimdal crypt library reference"
fi
eapply_user
# Force rebuilding aclocal.m4
rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
eautoreconf
if [[ ${CHOST} == *-darwin* ]] ; then
# http://bugs.php.net/bug.php?id=48795, bug #343481
sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die
fi
}
src_configure() {
addpredict /usr/share/snmp/mibs/.index
addpredict /var/lib/net-snmp/mib_indexes
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
local our_conf=(
--prefix="${PHP_DESTDIR}"
--mandir="${PHP_DESTDIR}/man"
--infodir="${PHP_DESTDIR}/info"
--libdir="${PHP_DESTDIR}/lib"
--with-libdir="$(get_libdir)"
--localstatedir="${EPREFIX}/var"
--without-pear
$(use_enable threads maintainer-zts)
)
our_conf+=(
$(use_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 -a "${S}" "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
local sapi_conf=(
--with-config-file-path="${PHP_INI_DIR}"
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
)
for sapi in $SAPIS ; do
case "$sapi" in
cli|cgi|embed|fpm)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( "--enable-${sapi}" )
else
sapi_conf+=( "--disable-${sapi}" )
fi
;;
apache2)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
else
sapi_conf+=( --without-apxs2 )
fi
;;
esac
done
# Construct the $myeconfargs array by concatenating $our_conf
# (the common args) and $sapi_conf (the SAPI-specific args).
local myeconfargs=( "${our_conf[@]}" )
myeconfargs+=( "${sapi_conf[@]}" )
pushd "${BUILD_DIR}" > /dev/null || die
econf "${myeconfargs[@]}"
popd > /dev/null || die
done
}
src_compile() {
# snmp seems to run during src_compile, too (bug #324739)
addpredict /usr/share/snmp/mibs/.index
addpredict /var/lib/net-snmp/mib_indexes
for sapi in ${SAPIS} ; do
if use "${sapi}"; then
cd "${WORKDIR}/sapis-build/$sapi" || \
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
emake
fi
done
}
src_install() {
# see bug #324739 for what happens when we don't have that
addpredict /usr/share/snmp/mibs/.index
# grab the first SAPI that got built and install common files from there
local first_sapi=""
for sapi in $SAPIS ; do
if use $sapi ; then
first_sapi=$sapi
break
fi
done
# Makefile forgets to create this before trying to write to it...
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
# Install php environment (without any sapis)
cd "${WORKDIR}/sapis-build/$first_sapi" || die
emake INSTALL_ROOT="${D}" \
install-build install-headers install-programs
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
# Create the directory where we'll put version-specific php scripts
keepdir "/usr/share/php${PHP_MV}"
local sapi="", file=""
local sapi_list=""
for sapi in ${SAPIS}; do
if use "${sapi}" ; then
einfo "Installing SAPI: ${sapi}"
cd "${WORKDIR}/sapis-build/${sapi}" || die
if [[ "${sapi}" == "apache2" ]] ; then
# We're specifically not using emake install-sapi as libtool
# may cause unnecessary relink failures (see bug #351266)
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
newins ".libs/libphp5$(get_libname)" \
"libphp${PHP_MV}$(get_libname)"
keepdir "/usr/$(get_libdir)/apache2/modules"
else
# needed each time, php_install_ini would reset it
local dest="${PHP_DESTDIR#${EPREFIX}}"
into "${dest}"
case "$sapi" in
cli)
source="sapi/cli/php"
;;
cgi)
source="sapi/cgi/php-cgi"
;;
fpm)
source="sapi/fpm/php-fpm"
;;
embed)
source="libs/libphp${PHP_MV}$(get_libname)"
;;
*)
die "unhandled sapi in src_install"
;;
esac
if [[ "${source}" == *"$(get_libname)" ]]; then
dolib.so "${source}"
else
dobin "${source}"
local name="$(basename ${source})"
dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
php_install_ini "${sapi}"
# construct correct SAPI string for php-config
# thanks to ferringb for the bash voodoo
if [[ "${sapi}" == "apache2" ]]; then
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
else
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
fi
fi
done
# Installing opcache module
if use opcache ; then
into "${PHP_DESTDIR#${EPREFIX}}"
dolib.so "modules/opcache$(get_libname)"
fi
# Install env.d files
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
# set php-config variable correctly (bug #278439)
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
if use fpm ; then
if use systemd; then
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
"php-fpm@${SLOT}.service"
else
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
"php-fpm@${SLOT}.service"
fi
fi
}
src_test() {
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
if [[ ! -x "${PHP_BIN}" ]] ; then
ewarn "Test phase requires USE=cli, skipping"
return
else
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
fi
if [[ -x "${WORKDIR}/sapis/cgi/php-cgi" ]] ; then
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi"
fi
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
"session.save_path=${T}" \
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
"session.save_path=${T}"
for name in ${EXPECTED_TEST_FAILURES}; do
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
done
local failed="$(find -name '*.out')"
if [[ ${failed} != "" ]] ; then
ewarn "The following test cases failed unexpectedly:"
for name in ${failed}; do
ewarn " ${name/.out/}"
done
else
einfo "No unexpected test failures, all fine"
fi
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
local passed=""
for name in ${EXPECTED_TEST_FAILURES}; do
[[ -f "${name}.diff" ]] && continue
passed="${passed} ${name}"
done
if [[ ${passed} != "" ]] ; then
einfo "The following test cases passed unexpectedly:"
for name in ${passed}; do
ewarn " ${passed}"
done
else
einfo "None of the known-to-fail tests passed, all fine"
fi
fi
}
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
elog
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
elog "your apache2 command. OpenRC users can append that string to"
elog "APACHE2_OPTS in /etc/conf.d/apache2."
elog
elog "The apache module configuration file 70_mod_php.conf is"
elog "provided (and maintained) by eselect-php."
elog
fi
# Create the symlinks for php
for m in ${SAPIS}; do
[[ ${m} == 'embed' ]] && continue;
if use $m ; then
local ci=$(eselect php show $m)
if [[ -z $ci ]]; then
eselect php set $m php${SLOT} || die
einfo "Switched ${m} to use php:${SLOT}"
einfo
elif [[ $ci != "php${SLOT}" ]] ; then
elog "To switch $m to use php:${SLOT}, run"
elog " eselect php set $m php${SLOT}"
elog
fi
fi
done
# Remove dead symlinks for SAPIs that were just disabled. For
# example, if the user has the cgi SAPI enabled, then he has an
# eselect-php symlink for it. If he later reinstalls PHP with
# USE="-cgi", that symlink will break. This call to eselect is
# supposed to remove that dead link per bug 572436.
eselect php cleanup || die
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
elog "To build extensions for this version of PHP, you will need to"
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
elog
fi
# Only mention PHP_INI_VERSION if the user doesn't have it set.
case "${PHP_INI_VERSION}" in
production|development)
;;
*)
elog "This ebuild installed a version of php.ini based on"
elog "${PHP_INI_UPSTREAM}. You can choose which version of"
elog "php.ini to install by default by setting PHP_INI_VERSION"
elog "to either 'production' or 'development' in your make.conf."
elog "Both versions of php.ini can be found with the PHP docs in"
elog "${EPREFIX}/usr/share/doc/${PF}"
elog
;;
esac
elog "For details on how version slotting works, please see"
elog "the wiki:"
elog
elog " https://wiki.gentoo.org/wiki/PHP"
elog
}
pkg_postrm() {
# This serves two purposes. First, if we have just removed the last
# installed version of PHP, then this will remove any dead symlinks
# belonging to eselect-php. Second, if a user upgrades slots from
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
# his existing symlinks to point to the new 7.0 installation. The
# latter is bug 432962.
#
# Note: the eselect-php package may not be installed at this point,
# so we can't die() if this command fails.
eselect php cleanup
}

@ -19,7 +19,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(get_version_component_range 1-2)"
KEYWORDS="alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2"

@ -0,0 +1,103 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
PYTHON_COMPAT=( python2_7 )
CMAKE_BUILD_TYPE="Release"
inherit python-any-r1 cmake-multilib flag-o-matic toolchain-funcs
DESCRIPTION="OpenCL implementation for Intel GPUs"
HOMEPAGE="https://01.org/beignet"
LICENSE="LGPL-2.1+"
SLOT="0"
IUSE="ocl-icd"
if [[ "${PV}" == "9999" ]]; then
inherit git-r3
EGIT_REPO_URI="git://anongit.freedesktop.org/beignet"
KEYWORDS=""
else
KEYWORDS="~amd64"
SRC_URI="https://01.org/sites/default/files/${P}-source.tar.gz"
S=${WORKDIR}/Beignet-${PV}-Source
fi
COMMON="${PYTHON_DEPS}
media-libs/mesa
sys-devel/clang
>=sys-devel/llvm-3.5
>=x11-libs/libdrm-2.4.70[video_cards_intel]
x11-libs/libXext
x11-libs/libXfixes"
RDEPEND="${COMMON}
app-eselect/eselect-opencl"
DEPEND="${COMMON}
${PYTHON_DEPS}
ocl-icd? ( dev-libs/ocl-icd )
virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/no-debian-multiarch.patch
"${FILESDIR}"/${P}-oclicd_optional_gentoo.patch
"${FILESDIR}"/${PN}-1.2.0_no-hardcoded-cflags.patch
"${FILESDIR}"/llvm-terminfo.patch
)
DOCS=(
docs/.
)
pkg_pretend() {
if [[ ${MERGE_TYPE} != "binary" ]]; then
if tc-is-gcc; then
if [[ $(gcc-major-version) -eq 4 ]] && [[ $(gcc-minor-version) -lt 6 ]]; then
eerror "Compilation with gcc older than 4.6 is not supported"
die "Too old gcc found."
fi
fi
fi
}
pkg_setup() {
python_setup
}
src_prepare() {
# See Bug #593968
append-flags -fPIC
cmake-utils_src_prepare
# We cannot run tests because they require permissions to access
# the hardware, and building them is very time-consuming.
cmake_comment_add_subdirectory utests
}
multilib_src_configure() {
VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}"
local mycmakeargs=(
-DCMAKE_INSTALL_PREFIX="${VENDOR_DIR}"
-DOCLICD_COMPAT=$(usex ocl-icd)
)
cmake-utils_src_configure
}
multilib_src_install() {
VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}"
cmake-utils_src_install
insinto /etc/OpenCL/vendors/
echo "${VENDOR_DIR}/lib/${PN}/libcl.so" > "${PN}-${ABI}.icd" || die "Failed to generate ICD file"
doins "${PN}-${ABI}.icd"
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so.1
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so.1
dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so
}

@ -0,0 +1,23 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -223,17 +223,15 @@
# MESSAGE(STATUS "Looking for mesa source code - not found, cl_khr_gl_sharing will be disabled.")
#ENDIF(MESA_SOURCE_FOUND)
+OPTION(OCLICD_COMPAT "OCL ICD compatibility mode" ON)
+IF(OCLICD_COMPAT)
Find_Package(OCLIcd)
IF(OCLIcd_FOUND)
MESSAGE(STATUS "Looking for OCL ICD header file - found")
- configure_file (
- "intel-beignet.icd.in"
- "${ICD_FILE_NAME}"
- )
- install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${ICD_FILE_NAME} DESTINATION /etc/OpenCL/vendors)
ELSE(OCLIcd_FOUND)
MESSAGE(STATUS "Looking for OCL ICD header file - not found")
ENDIF(OCLIcd_FOUND)
+ENDIF(OCLICD_COMPAT)
Find_Package(PythonInterp)

@ -5,4 +5,8 @@
<email>marecki@gentoo.org</email>
<name>Marek Szuba</name>
</maintainer>
<use>
<flag name="ocl-icd">Enable compatibility with the
<pkg>dev-libs/ocl-icd</pkg> OpenCL ICD loader</flag>
</use>
</pkgmetadata>

@ -12,7 +12,7 @@ SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
LICENSE="GPL-3 LGPL-2.1"
SLOT="0"
KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
RDEPEND=">=dev-libs/libgpg-error-1.8"

@ -12,7 +12,7 @@ SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ~ppc ppc64 s390 sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ~ppc ppc64 s390 sh ~sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="common-lisp nls static-libs"
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )

@ -11,5 +11,5 @@ SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86"
KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86"
IUSE="static-libs"

@ -17,10 +17,10 @@ IUSE="doc +ocamlopt +ppx"
RDEPEND=">=dev-lang/ocaml-4.03:=[ocamlopt?]
>=dev-ml/js_of_ocaml-2.8.2:=
>=www-servers/ocsigenserver-2.5:=
>=www-servers/ocsigenserver-2.8:=
>=dev-ml/tyxml-4:=
>=dev-ml/deriving-0.6:=
>=dev-ml/reactiveData-0.2:=
>=dev-ml/reactiveData-0.2.1:=
dev-ml/ocaml-ipaddr:=
dev-ml/react:=
dev-ml/ocaml-ssl:=
@ -35,7 +35,9 @@ DEPEND="${RDEPEND}
src_prepare() {
epatch "${FILESDIR}/"{camlp4,oc43,oc43-2}.patch \
"${FILESDIR}/tyxml4.patch" \
"${FILESDIR}/jsofocaml-282.patch"
"${FILESDIR}/jsofocaml-282.patch" \
"${FILESDIR}/reactivedata.patch" \
"${FILESDIR}/ocsigen28.patch"
}
src_compile() {

@ -25,10 +25,10 @@ IUSE="doc +ocamlopt +ppx"
RDEPEND=">=dev-lang/ocaml-4.03:=[ocamlopt?]
>=dev-ml/js_of_ocaml-2.5-r1:=
>=www-servers/ocsigenserver-2.5:=
>=www-servers/ocsigenserver-2.8:=
>=dev-ml/tyxml-4:=
>=dev-ml/deriving-0.6:=
>=dev-ml/reactiveData-0.2:=
>=dev-ml/reactiveData-0.2.1:=
dev-ml/ocaml-ipaddr:=
dev-ml/react:=
dev-ml/ocaml-ssl:=

@ -0,0 +1,500 @@
Index: eliom-5.0.0/src/lib/eliom_common.server.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_common.server.ml
+++ eliom-5.0.0/src/lib/eliom_common.server.ml
@@ -1372,7 +1372,7 @@ let create_persistent_table name =
let persistent_cookies_table :
(full_state_name * float option * timeout * perssessgrp option)
- Ocsipersist.table Lazy.t =
+ Ocsipersist.table Lwt.t Lazy.t =
lazy (create_persistent_table eliom_persistent_cookie_table)
(* Another tables, containing the session info for each cookie *)
(* the table contains:
@@ -1390,7 +1390,7 @@ let persistent_cookies_table :
let remove_from_all_persistent_tables key =
Perstables.fold (* could be replaced by a parallel map *)
(fun thr t -> thr >>= fun () ->
- Ocsipersist.remove (Ocsipersist.open_table t) key >>= Lwt_unix.yield)
+ Ocsipersist.open_table t >>= fun table -> Ocsipersist.remove table key >>= Lwt_unix.yield)
(return ())
!perstables
Index: eliom-5.0.0/src/lib/eliom_common.server.mli
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_common.server.mli
+++ eliom-5.0.0/src/lib/eliom_common.server.mli
@@ -609,10 +609,10 @@ module Perstables :
val fold : ('a -> 'b -> 'a) -> 'a -> 'b list -> 'a
end
val perstables : string list ref
-val create_persistent_table : string -> 'a Ocsipersist.table
+val create_persistent_table : string -> 'a Ocsipersist.table Lwt.t
val persistent_cookies_table :
(full_state_name * float option * timeout * perssessgrp option)
- Ocsipersist.table Lazy.t
+ Ocsipersist.table Lwt.t Lazy.t
val remove_from_all_persistent_tables : string -> unit Lwt.t
val absolute_change_sitedata : sitedata -> unit
val get_current_sitedata : unit -> sitedata
Index: eliom-5.0.0/src/lib/eliom_reference.server.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_reference.server.ml
+++ eliom-5.0.0/src/lib/eliom_reference.server.ml
@@ -32,8 +32,8 @@ type 'a eref_kind =
| Ref of 'a lazy_t ref (* Ocaml reference *)
| Vol of 'a volatile_table Lazy.t (* Vol. table (group, session, process) *)
| Ocsiper of 'a option Ocsipersist.t Lwt.t (* Global persist. table *)
- | Ocsiper_sit of 'a Ocsipersist.table (* Persist. table for site *)
- | Per of 'a persistent_table (* Persist. table for group session or process *)
+ | Ocsiper_sit of 'a Ocsipersist.table Lwt.t (* Persist. table for site *)
+ | Per of 'a persistent_table Lwt.t (* Persist. table for group session or process *)
type volatile = [ `Volatile ]
type persistent = [ `Persistent ]
@@ -174,9 +174,7 @@ let eref_from_fun_ ~ext ~scope ?secure ?
| None -> (Volatile.eref_from_fun_ ~ext ~scope ?secure f :> _ eref)
| Some name ->
(f, ext,
- Ocsiper (Ocsipersist.make_persistent
- ~store:pers_ref_store
- ~name ~default:None))
+ Ocsiper (pers_ref_store >>= fun store -> Ocsipersist.make_persistent ~store ~name ~default:None))
end
| `Site ->
begin
@@ -207,6 +205,7 @@ let get_site_id () =
let get (f, _, table as eref) =
match table with
| Per t ->
+ t >>= fun t ->
(get_persistent_data ~table:t () >>= function
| Data d -> Lwt.return d
| _ ->
@@ -221,6 +220,7 @@ let get (f, _, table as eref) =
Ocsipersist.set r (Some value) >>= fun () ->
Lwt.return value)
| Ocsiper_sit t ->
+ t >>= fun t ->
(let site_id = get_site_id () in
try_lwt Ocsipersist.find t site_id
with Not_found ->
@@ -231,9 +231,10 @@ let get (f, _, table as eref) =
let set (_, _, table as eref) value =
match table with
- | Per t -> set_persistent_data ~table:t value
+ | Per t -> t >>= fun t -> set_persistent_data ~table:t value
| Ocsiper r -> r >>= fun r -> Ocsipersist.set r (Some value)
| Ocsiper_sit t ->
+ t >>= fun t ->
Ocsipersist.add t (get_site_id ()) value
| _ -> Lwt.return (Volatile.set eref value)
@@ -242,9 +243,10 @@ let modify eref f =
let unset (f, _, table as eref) =
match table with
- | Per t -> remove_persistent_data ~table:t ()
+ | Per t -> t >>= fun t -> remove_persistent_data ~table:t ()
| Ocsiper r -> r >>= fun r -> Ocsipersist.set r None
| Ocsiper_sit t ->
+ t >>= fun t ->
Ocsipersist.remove t (get_site_id ())
| _ -> Lwt.return (Volatile.unset eref)
@@ -258,6 +260,7 @@ module Ext = struct
match table with
| Vol _ -> Lwt.return (Volatile.Ext.get state r)
| Per t ->
+ t >>= fun t ->
(Lwt.catch
(fun () -> Eliom_state.Ext.Low_level.get_persistent_data
~state ~table:t)
@@ -279,6 +282,7 @@ module Ext = struct
match table with
| Vol _ -> Lwt.return (Volatile.Ext.set state r value)
| Per t ->
+ t >>= fun t ->
Eliom_state.Ext.Low_level.set_persistent_data
~state ~table:t value
| _ -> Lwt.fail (Failure "wrong eref for this function")
@@ -291,7 +295,7 @@ module Ext = struct
let state = Eliom_state.Ext.untype_state state in
match table with
| Vol _ -> Lwt.return (Volatile.Ext.unset state r)
- | Per t -> Eliom_state.Ext.Low_level.remove_persistent_data
+ | Per t -> t >>= fun t -> Eliom_state.Ext.Low_level.remove_persistent_data
~state ~table:t
| _ -> failwith "wrong eref for this function"
Index: eliom-5.0.0/src/lib/eliom_state.server.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_state.server.ml
+++ eliom-5.0.0/src/lib/eliom_state.server.ml
@@ -918,11 +918,11 @@ type 'a persistent_table =
bool *
(int64 * 'a) Ocsipersist.table)
-let create_persistent_table ~scope ?secure name : 'a persistent_table =
+let create_persistent_table ~scope ?secure name : 'a persistent_table Lwt.t =
let sitedata = Eliom_request_info.find_sitedata "create_persistent_table" in
let secure = Eliom_common.get_secure secure sitedata in
- let t = Eliom_common.create_persistent_table name in
- (scope, secure, t)
+ Eliom_common.create_persistent_table name >>= fun t ->
+ Lwt.return (scope, secure, t)
let get_p_table_key_
~table:(scope, secure, table)
@@ -1271,10 +1271,8 @@ module Ext = struct
let get_persistent_cookie_info
((_, _, cookie) : ([< Eliom_common.cookie_level ], [ `Pers ]) state) =
- Ocsipersist.find
- (Lazy.force Eliommod_persess.persistent_cookies_table)
- cookie
- >>= fun v ->
+ Lazy.force Eliommod_persess.persistent_cookies_table >>= fun table ->
+ Ocsipersist.find table cookie >>= fun v ->
Lwt.return (cookie, v)
let discard_state ~state =
@@ -1487,10 +1485,8 @@ module Ext = struct
| None -> TNone
| Some t -> TSome t
in
- Ocsipersist.add
- (Lazy.force Eliom_common.persistent_cookies_table)
- cookie
- (fullstname, exp, ti, sessgrp)
+ Lazy.force Eliom_common.persistent_cookies_table >>= fun table ->
+ Ocsipersist.add table cookie (fullstname, exp, ti, sessgrp)
let get_service_cookie_timeout ~cookie:(_, (_, _, _, r, _, _)) =
!r
@@ -1510,10 +1506,8 @@ module Ext = struct
let unset_persistent_data_cookie_timeout
~cookie:(cookie, (fullstname, exp, _, sessgrp)) =
- Ocsipersist.add
- (Lazy.force Eliom_common.persistent_cookies_table)
- cookie
- (fullstname, exp, TGlobal, sessgrp)
+ Lazy.force Eliom_common.persistent_cookies_table >>= fun table ->
+ Ocsipersist.add table cookie (fullstname, exp, TGlobal, sessgrp)
let get_session_group_list () =
Index: eliom-5.0.0/src/lib/eliom_state.server.mli
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_state.server.mli
+++ eliom-5.0.0/src/lib/eliom_state.server.mli
@@ -1019,7 +1019,7 @@ val remove_volatile_data :
val create_persistent_table :
scope:Eliom_common.user_scope ->
?secure:bool ->
- string -> 'a persistent_table
+ string -> 'a persistent_table Lwt.t
(** gets persistent session data for the current persistent session (if any).
(low level) *)
Index: eliom-5.0.0/src/lib/server/eliommod_cookies.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_cookies.ml
+++ eliom-5.0.0/src/lib/server/eliommod_cookies.ml
@@ -152,8 +152,7 @@ let get_cookie_info
lazy
(catch
(fun () ->
- Ocsipersist.find
- (Lazy.force Eliom_common.persistent_cookies_table) value >>=
+ Lazy.force Eliom_common.persistent_cookies_table >>= fun table -> Ocsipersist.find table value >>=
fun (full_state_name, persexp, perstimeout, sessgrp) ->
Eliommod_sessiongroups.Pers.up value sessgrp >>= fun () ->
Index: eliom-5.0.0/src/lib/server/eliommod_gc.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_gc.ml
+++ eliom-5.0.0/src/lib/server/eliommod_gc.ml
@@ -309,7 +309,8 @@ let persistent_session_gc sitedata =
(fun () ->
let now = Unix.time () in
Lwt_log.ign_info ~section "GC of persistent sessions";
- (Ocsipersist.iter_table
+ Lazy.force Eliommod_persess.persistent_cookies_table >>=
+ Ocsipersist.iter_table
(fun k ((scope, _, _), exp, _, session_group) ->
(match exp with
| Some exp when exp < now ->
@@ -320,8 +321,7 @@ let persistent_session_gc sitedata =
session_group k
(*WAS: remove_from_all_persistent_tables k *)
| _ -> return ())
- )
- (Lazy.force Eliommod_persess.persistent_cookies_table)))
+ ))
>>=
f
in ignore (f ())
Index: eliom-5.0.0/src/lib/server/eliommod_pagegen.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_pagegen.ml
+++ eliom-5.0.0/src/lib/server/eliommod_pagegen.ml
@@ -135,8 +135,9 @@ let update_cookie_table ?now sitedata (c
oldv = newc.Eliom_common.pc_value ->
catch
(fun () ->
+ Lazy.force Eliommod_persess.persistent_cookies_table >>= fun table ->
Ocsipersist.replace_if_exists
- (Lazy.force Eliommod_persess.persistent_cookies_table)
+ table
newc.Eliom_common.pc_value
(name,
newexp,
@@ -147,8 +148,9 @@ let update_cookie_table ?now sitedata (c
(* someone else closed the session *)
| e -> fail e)
| _ ->
+ Lazy.force Eliommod_persess.persistent_cookies_table >>= fun table ->
Ocsipersist.add
- (Lazy.force Eliommod_persess.persistent_cookies_table)
+ table
newc.Eliom_common.pc_value
(name,
newexp,
Index: eliom-5.0.0/src/lib/server/eliommod_persess.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_persess.ml
+++ eliom-5.0.0/src/lib/server/eliommod_persess.ml
@@ -50,7 +50,7 @@ let number_of_persistent_table_elements
List.fold_left
(fun thr t ->
thr >>= fun l ->
- Ocsipersist.length (Ocsipersist.open_table t) >>= fun e ->
+ Ocsipersist.open_table t >>= fun table -> Ocsipersist.length table >>= fun e ->
return ((t, e)::l)) (return []) !perstables
let close_persistent_state2
@@ -141,8 +141,7 @@ let rec find_or_create_persistent_cookie
(* We do not need to verify if it already exists.
make_new_session_id does never generate twice the same cookie. *)
let usertimeout = ref Eliom_common.TGlobal (* See global table *) in
- Ocsipersist.add
- (Lazy.force persistent_cookies_table) c
+ Lazy.force persistent_cookies_table >>= fun table -> Ocsipersist.add table c
(full_st_name,
None (* Some 0. *) (* exp on server - We'll change it later *),
Eliom_common.TGlobal (* timeout - see global config *),
Index: eliom-5.0.0/src/lib/server/eliommod_persess.mli
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_persess.mli
+++ eliom-5.0.0/src/lib/server/eliommod_persess.mli
@@ -22,7 +22,7 @@ val perstables : string list ref
val persistent_cookies_table :
(Eliom_common.full_state_name * float option * Eliom_common.timeout *
Eliom_common.perssessgrp option)
- Ocsipersist.table Lazy.t
+ Ocsipersist.table Lwt.t Lazy.t
val number_of_persistent_tables : unit -> int
val number_of_persistent_table_elements : unit -> (string * int) list Lwt.t
val close_persistent_state2 :
Index: eliom-5.0.0/src/lib/server/eliommod_sessadmin.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_sessadmin.ml
+++ eliom-5.0.0/src/lib/server/eliommod_sessadmin.ml
@@ -94,6 +94,7 @@ let close_all_data_states ~scope ~secure
let close_all_persistent_states2 full_st_name sitedata =
+ Lazy.force Eliommod_persess.persistent_cookies_table >>=
Ocsipersist.iter_table
(fun k ((scope, _, _) as full_st_name2, old_exp, old_t, sessiongrp) ->
if full_st_name = full_st_name2 && old_t = Eliom_common.TGlobal
@@ -102,7 +103,6 @@ let close_all_persistent_states2 full_st
Lwt_unix.yield
else return ()
)
- (Lazy.force Eliommod_persess.persistent_cookies_table)
(** Close all persistent sessions for one session name.
If the optional parameter [?state_name] (session name) is not present,
@@ -195,6 +195,7 @@ let update_pers_exp full_st_name sitedat
close_all_persistent_states2 full_st_name sitedata
| _ ->
let now = Unix.time () in
+ Lazy.force Eliommod_persess.persistent_cookies_table >>= fun table ->
Ocsipersist.iter_table
(fun k ((scope, _, _) as full_st_name2, old_exp, old_t, sessgrp) ->
if full_st_name = full_st_name2 && old_t =
@@ -211,11 +212,7 @@ let update_pers_exp full_st_name sitedat
Eliommod_persess.close_persistent_state2
~scope sitedata sessgrp k
| _ ->
- Ocsipersist.add
- (Lazy.force Eliommod_persess.persistent_cookies_table)
- k
- (full_st_name2, newexp,
- Eliom_common.TGlobal, sessgrp) >>= Lwt_unix.yield
+ Ocsipersist.add table k (full_st_name2, newexp, Eliom_common.TGlobal, sessgrp) >>= Lwt_unix.yield
else return ()
)
- (Lazy.force Eliommod_persess.persistent_cookies_table)
+ table
Index: eliom-5.0.0/src/lib/server/eliommod_sessexpl.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_sessexpl.ml
+++ eliom-5.0.0/src/lib/server/eliommod_sessexpl.ml
@@ -57,12 +57,12 @@ let iter_data_cookies f =
(** Iterator on persistent cookies *)
let iter_persistent_cookies f =
+ Lazy.force Eliommod_persess.persistent_cookies_table >>=
Ocsipersist.iter_table
(fun k v ->
f (k, v) >>=
Lwt_unix.yield
)
- (Lazy.force Eliommod_persess.persistent_cookies_table)
(** Iterator on service cookies *)
@@ -94,13 +94,14 @@ let fold_data_cookies f beg =
(** Iterator on persistent cookies *)
let fold_persistent_cookies f beg =
+ Lazy.force Eliommod_persess.persistent_cookies_table >>= fun table ->
Ocsipersist.fold_table
(fun k v beg ->
f (k, v) beg >>= fun res ->
Lwt_unix.yield () >>= fun () ->
return res
)
- (Lazy.force Eliommod_persess.persistent_cookies_table)
+ table
beg
(*****************************************************************************)
@@ -121,4 +122,4 @@ let number_of_table_elements () =
List.map (fun f -> f ()) !Eliommod_datasess.counttableelements
let number_of_persistent_cookies () =
- Ocsipersist.length (Lazy.force Eliommod_persess.persistent_cookies_table)
+ Lazy.force Eliommod_persess.persistent_cookies_table >>= Ocsipersist.length
Index: eliom-5.0.0/src/lib/server/eliommod_sessiongroups.ml
===================================================================
--- eliom-5.0.0.orig/src/lib/server/eliommod_sessiongroups.ml
+++ eliom-5.0.0/src/lib/server/eliommod_sessiongroups.ml
@@ -413,7 +413,7 @@ module Pers = struct
(*VVV Verify this carefully! *)
(*VVV VEOcsigen_request_infoFY concurrent access *)
- let grouptable : (nbmax * string list) Ocsipersist.table Lazy.t =
+ let grouptable : (nbmax * string list) Ocsipersist.table Lwt.t Lazy.t =
lazy (Ocsipersist.open_table "__eliom_session_group_table")
(* It is lazy because if the module is linked statically,
the creation of the table must happen after initialisation
@@ -426,7 +426,7 @@ module Pers = struct
| Some g ->
Lwt.catch
(fun () ->
- Ocsipersist.find !!grouptable
+ !!grouptable >>= fun grouptable -> Ocsipersist.find grouptable
(Eliom_common.string_of_perssessgrp g) >>= fun (_, a) ->
Lwt.return a)
(function
@@ -439,7 +439,7 @@ module Pers = struct
let sg = Eliom_common.string_of_perssessgrp sg in
Lwt.catch
(fun () ->
- Ocsipersist.find !!grouptable sg >>= fun (max2, cl) ->
+ !!grouptable >>= fun grouptable -> Ocsipersist.find grouptable sg >>= fun (max2, cl) ->
let max, newmax = match set_max with
| None -> ((match max2 with
| Default -> defaultmax
@@ -449,7 +449,7 @@ module Pers = struct
| Some (Some v) -> Some v, Val v
in
let cl, toclose = cut max cl in
- Ocsipersist.replace_if_exists !!grouptable sg (newmax, (sess_id::cl))
+ Ocsipersist.replace_if_exists grouptable sg (newmax, (sess_id::cl))
>>= fun () ->
Lwt.return toclose)
(function
@@ -459,7 +459,7 @@ module Pers = struct
| Some None -> Nolimit
| Some (Some v) -> Val v
in
- Ocsipersist.add !!grouptable sg (max, [sess_id]) >>= fun () ->
+ !!grouptable >>= fun grouptable -> Ocsipersist.add grouptable sg (max, [sess_id]) >>= fun () ->
Lwt.return []
| e -> Lwt.fail e)
| None -> Lwt.return []
@@ -502,8 +502,7 @@ module Pers = struct
belonging to the group grp *)
(* group_name is the cookie value *)
remove sitedata group_name grp >>= fun () ->
- Ocsipersist.remove
- (!!Eliom_common.persistent_cookies_table) group_name
+ !!Eliom_common.persistent_cookies_table >>= fun table -> Ocsipersist.remove table group_name
| _ -> Lwt.return ())
>>= fun () ->
@@ -511,7 +510,7 @@ module Pers = struct
match sess_grp with
| Some sg ->
let sg = Eliom_common.string_of_perssessgrp sg in
- Ocsipersist.remove !!grouptable sg
+ !!grouptable >>= fun grouptable -> Ocsipersist.remove grouptable sg
| None -> Lwt.return ()
)
(function Not_found -> Lwt.return () | e -> Lwt.fail e)
@@ -526,7 +525,7 @@ module Pers = struct
match cookie_level with
| `Client_process -> begin
(* We remove cookie info from the table *)
- Ocsipersist.remove (!!Eliom_common.persistent_cookies_table) cookie
+ !!Eliom_common.persistent_cookies_table >>= fun table -> Ocsipersist.remove table cookie
>>= fun () ->
(* We remove the session from its group: *)
@@ -555,7 +554,7 @@ module Pers = struct
let sg = Eliom_common.string_of_perssessgrp sg0 in
Lwt.catch
(fun () ->
- Ocsipersist.find !!grouptable sg >>= fun (max, cl) ->
+ !!grouptable >>= fun grouptable -> Ocsipersist.find grouptable sg >>= fun (max, cl) ->
let newcl = List.remove_first_if_any sess_id cl in
(match newcl with
| [] ->
@@ -570,8 +569,8 @@ module Pers = struct
remove_group ~cookie_level:`Session sitedata sess_grp
| _ -> Lwt.return ()
) >>= fun () ->
- Ocsipersist.remove !!grouptable sg
- | _ -> Ocsipersist.replace_if_exists !!grouptable sg (max, newcl)
+ Ocsipersist.remove grouptable sg
+ | _ -> Ocsipersist.replace_if_exists grouptable sg (max, newcl)
)
)
(function
@@ -586,9 +585,9 @@ module Pers = struct
let sg = Eliom_common.string_of_perssessgrp sg in
Lwt.catch
(fun () ->
- Ocsipersist.find !!grouptable sg >>= fun (max, cl) ->
+ !!grouptable >>= fun grouptable -> Ocsipersist.find grouptable sg >>= fun (max, cl) ->
let newcl = List.remove_first_if_any sess_id cl in
- Ocsipersist.replace_if_exists !!grouptable sg (max, sess_id::newcl)
+ Ocsipersist.replace_if_exists grouptable sg (max, sess_id::newcl)
)
(function
| Not_found -> Lwt.return ()
@@ -601,6 +600,6 @@ module Pers = struct
end
else Lwt.return []
- let nb_of_groups () = Ocsipersist.length !!grouptable
+ let nb_of_groups () = !!grouptable >>= Ocsipersist.length
end

@ -0,0 +1,44 @@
Index: eliom-5.0.0/src/lib/eliom_shared.eliom
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_shared.eliom
+++ eliom-5.0.0/src/lib/eliom_shared.eliom
@@ -288,7 +288,7 @@ module FakeReactiveData = struct
val concat : 'a t -> 'a t -> 'a t
val value : 'a t -> 'a list
val synced : 'a t -> bool
- val signal : 'a t -> 'a list FakeReact.S.t
+ val signal : ?eq:('a -> 'a -> bool) -> 'a t -> 'a list FakeReact.S.t
val singleton_s : 'a FakeReact.S.t -> 'a t
val map : ('a -> 'b) -> 'a t -> 'b t
val from_signal :
@@ -304,7 +304,7 @@ module FakeReactiveData = struct
let singleton_s s = [FakeReact.S.value s], FakeReact.S.synced s
let value (l, _) = l
let synced (_, b) = b
- let signal (l, synced) = fst (FakeReact.S.create ~synced l)
+ let signal ?eq (l, synced) = fst (FakeReact.S.create ~synced l)
let map f (l, b) = List.map f l, b
let from_signal ?eq s = FakeReact.S.(value s, synced s)
module Lwt = struct
@@ -635,7 +635,7 @@ module ReactiveData = struct
let value (s : 'a t) = {shared# 'a list {
FakeReactiveData.RList.value (Value.local %s) }}
- let signal (s : 'a t) = {shared# 'a list FakeReact.S.t {
+ let signal ?eq (s : 'a t) = {shared# 'a list FakeReact.S.t {
FakeReactiveData.RList.signal (Value.local %s) }}
let map f s = {shared# 'a FakeReactiveData.RList.t {
Index: eliom-5.0.0/src/lib/eliom_shared_sigs.shared.mli
===================================================================
--- eliom-5.0.0.orig/src/lib/eliom_shared_sigs.shared.mli
+++ eliom-5.0.0/src/lib/eliom_shared_sigs.shared.mli
@@ -143,7 +143,7 @@ module type RLIST = sig
val concat : 'a t -> 'a t -> 'a t
val value : 'a t -> 'a list Eliom_lib.shared_value
- val signal : 'a t -> 'a list signal
+ val signal : ?eq:(('a -> 'a -> bool)) -> 'a t -> 'a list signal
val singleton_s : 'a signal -> 'a t
val map : ('a -> 'b) Eliom_lib.shared_value -> 'a t -> 'b t
val from_signal :

@ -3,3 +3,4 @@ DIST findlib-1.5.6.tar.gz 250865 SHA256 7743b3dcaf8a344c882e89f61601f7f086d46c0f
DIST findlib-1.6.1.tar.gz 254797 SHA256 411c816e89d17d1b5b454e3d42f9b261cf929fc468f9f6e2787273ab69784b09 SHA512 b781d117ff033e8b91b6610c562382c5868a25ceed51f0a5947a77bfdd5825723ad32adcbe1636d4f7952d4c7535093f5c8ad3b954bebb1dcf4738f7a16d3ef8 WHIRLPOOL 1c3ed89aeb53cd95c0eaa82f1df8c364ad79403cf89ca19245620819998353da089daf5d3377919f2b4676c48f4d926d384e5a80312884f84e1efc41307f88fd
DIST findlib-1.6.2.tar.gz 253764 SHA256 3917904342ffbb66089f9fec1adc023b8854178bc21f303e4cbf96b8b164c946 SHA512 8c4098e6956530bc88d20a1b91512c68368e8a866398ce4d504afe3f71e81124c01644ba31ff97da6e61e7410328b533fb1d31a513166231047dab1933179fc4 WHIRLPOOL a980082607ac97c738ef0899ba08af81eaa45c09a0e96f41ddfb3faaf25c77f133a3063f45a9393819e76b839b17bb10fe71613e83bfc943b4988511547eaa6b
DIST findlib-1.6.3.tar.gz 254512 SHA256 0f989f3f8ea69838423331c34c72a81e5422038e88c2a2bf10bc6e89869cab7e SHA512 ab23eeef3ec301f1a429934a309734386169d31d16a82706a45d9914b1fdc50f04b4fdf86f9436be3d7f0c8869b2cd9a9e07c78247e12eabdfe0738861e22035 WHIRLPOOL ae0fd2ae107d0074bbf8aefffa0facd7d9b892fc3408f94911522866d0bf8e9d7ac9e20da92e0a20b2f6cdf2f26dac6f86fd7c97231119eef890306166bcf05b
DIST findlib-1.7.1.tar.gz 256883 SHA256 5d4b9a79e9abf8be0b509f6b8cf5696221cbe14fa2fbb2bb352342755fd15eef SHA512 1c8002dc2ed1804afc78c2aa92ab55d2b6501fbb021a7ca46698b4de0dea8ad6485a64f7bf9ec5f3df888da1a420ab270efb5e26f1e408cc8b78fa3ccb981ba4 WHIRLPOOL e58d4939277a2b37fbf0ea4055281494d6b163ba806249d8019e4f3dc8c6ca079d9e904a5de6e86fe0d8bc59ed3894c962f86d6d87512f5b80757b8a59458dd1

@ -0,0 +1,16 @@
Avoid installing META files for labltk, camlp4 and ocamlbuild: Those are provided by their
respective packages now.
Index: findlib-1.7.1/configure
===================================================================
--- findlib-1.7.1.orig/configure
+++ findlib-1.7.1/configure
@@ -539,7 +539,7 @@ fi
# Generate the META files now.
-l="$ldbm dynlink graphics num num-top str threads unix stdlib bigarray ocamldoc $llabltk $lcamlp4 $lobuild $lcomplibs $lbytes $lspacetime"
+l="$ldbm dynlink graphics num num-top str threads unix stdlib bigarray ocamldoc $lcomplibs $lbytes $lspacetime"
for dir in site-lib-src/*; do
# We do not really know if $dir is a directory.

@ -0,0 +1,75 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit multilib eutils
DESCRIPTION="OCaml tool to find/use non-standard packages"
HOMEPAGE="http://projects.camlcity.org/projects/findlib.html"
SRC_URI="http://download.camlcity.org/download/${P}.tar.gz"
IUSE="doc +ocamlopt tk"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
DEPEND=">=dev-lang/ocaml-4.02.3-r1:=[ocamlopt?]
tk? ( dev-ml/labltk:= )"
RDEPEND="${DEPEND}"
ocamlfind_destdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
stublibs="${ocamlfind_destdir}/stublibs"
src_prepare() {
epatch "${FILESDIR}/externalmeta4.patch"
}
src_configure() {
local myconf
use tk && myconf="-with-toolbox"
./configure -bindir "${EPREFIX}"/usr/bin -mandir "${EPREFIX}"/usr/share/man \
-sitelib ${ocamlfind_destdir} \
-config ${ocamlfind_destdir}/findlib/findlib.conf \
-no-custom \
${myconf} || die "configure failed"
}
src_compile() {
emake -j1 all
if use ocamlopt; then
emake -j1 opt # optimized code
fi
}
src_install() {
emake prefix="${D}" install
dodir "${stublibs#${EPREFIX}}"
cd "${S}/doc"
dodoc QUICKSTART README DOCINFO
use doc && dohtml -r ref-html guide-html
}
check_stublibs() {
local ocaml_stdlib=`ocamlc -where`
local ldconf="${ocaml_stdlib}/ld.conf"
if [ ! -e ${ldconf} ]
then
echo "${ocaml_stdlib}" > ${ldconf}
echo "${ocaml_stdlib}/stublibs" >> ${ldconf}
fi
if [ -z `grep -e ${stublibs} ${ldconf}` ]
then
echo ${stublibs} >> ${ldconf}
fi
}
pkg_postinst() {
check_stublibs
}

@ -1,2 +1,3 @@
DIST iTeML-2.0.1.tar.gz 38387 SHA256 ae6ff9d0fcc20b8e96a44517fb3641d5193c63169aae33f0c1912db8e14bef1f SHA512 1f72ed8320a7589206daa16232199f33012cac397cf21a60fd8afccb7e8aad6f9125e8b4ac494866f699d0a47569bbd0486584a299786e0ef7a3a2c234f0ac2b WHIRLPOOL c23392412b4fcead6dd5958739802d895cdee3a86f333038ad03639d28a5439858de411bea19ce25df1bce72482b07d3047e8862a89fb49e24cfe0956d45d768
DIST iTeML-2.2.tar.gz 50025 SHA256 c31e5449624fc6729a362cc73efe475b2965d2e602b69b3a06fab2b38ea18b36 SHA512 78fb71a00d785f7faf0faa08c988bdfffe755dc6554437c86c80a4e56d6fb001606c78159e23acf0230286167585d136754dda68f8d7486aef64b228cc69034d WHIRLPOOL 672ce047cd901cd38671cf6f1020bf5d4c6e7cd13b3af4138ebad2015ca7db54a558cbbbdbda66d2aacfb3a1c7f709de95808b8d193b9551660f60349e3f346b
DIST iTeML-2.3.tar.gz 51077 SHA256 749bec7a7f91a0ee4e86811f70e423319181a7d4f2bfcfcb718448020d2dfdd8 SHA512 ac83c18baf9d0cb9de027881356cfffd4cb7e698598cc85badd31ebfbfe2d21ff94d35bf9ac997b08c2a4eb88eded759708f2759a11c088a63fe3c79e3db3ed4 WHIRLPOOL 71ec844e9851ecbc27afbf8d6d0f31ec73064eee7752840c458492abad6e432c2e072fe3fc695c910fc5bbadc4fa9fac8cffd5cbdfed2df82d87c837a2899d73

@ -0,0 +1,29 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit findlib
DESCRIPTION="Inline (Unit) Tests for OCaml"
HOMEPAGE="https://github.com/vincent-hugot/iTeML"
SRC_URI="https://github.com/vincent-hugot/iTeML/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="dev-ml/ounit:=
dev-lang/ocaml:=[ocamlopt]
!dev-ml/qckeck
"
DEPEND="${RDEPEND}"
src_install() {
findlib_src_preinst
dodir /usr/bin
emake BIN="${ED}/usr/bin/" install
dodoc README.adoc HOWTO.adoc
}

@ -1 +1,2 @@
DIST jsonm-0.9.1.tbz 64843 SHA256 3fd4dca045d82332da847e65e981d8b504883571d299a3f7e71447d46bc65f73 SHA512 43689c8fa75810a4ca1f99a0273ac5c0f6386b88f42a49715bcb785ac5ca54901c43a62b0983f7fb74a7c2615b0fb3464f4c864832d590192ff828b5dcb9781f WHIRLPOOL 2efe453596d3234da178b16191db3068dd06b8a66e7b23a0dd8efb0904368e32b357fe177f62891ce73efee96ede08e4b8e84125409b6ed01880dc49d92f122c
DIST jsonm-1.0.0.tbz 21549 SHA256 c258ea713d25445341774cf085fa0cf7d2a570c34d5a8d84a49716939ab174ec SHA512 3b0a332a0f3ddcf21ed9ca33fe3bec97f69e4fa3b6f85728965efc0f8f8c6b3187d0d71138c97a568783d6fb9f2aaf6edcd83061350cad13a9378e3c92c80b6e WHIRLPOOL 2b7cf9afa6cd71a5b180909b245ba6408f4a163a048271cf91da47f7bfb25de3a657351c5414562f5e0e6872c9dd77de74f13b9b2b0b5e536693b756934a24f6

@ -0,0 +1,38 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
DESCRIPTION="Non-blocking streaming JSON codec for OCaml"
HOMEPAGE="http://erratique.ch/software/jsonm"
SRC_URI="http://erratique.ch/software/jsonm/releases/${P}.tbz"
LICENSE="ISC"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="dev-ml/uutf:=
dev-lang/ocaml:=
dev-ml/uchar:="
DEPEND="${RDEPEND}
dev-ml/topkg
dev-ml/opam
dev-ml/ocamlbuild
dev-ml/findlib"
DOCS=( CHANGES README )
src_compile() {
ocaml pkg/pkg.ml build || die
}
src_install() {
opam-installer -i \
--prefix="${ED}/usr" \
--libdir="${D}/$(ocamlc -where)" \
--docdir="${ED}/usr/share/doc/${PF}" \
${PN}.install || die
dodoc CHANGES.md TODO.md README.md
}

@ -0,0 +1,273 @@
Index: markup.ml-0.7.2/test/test_encoding.ml
===================================================================
--- markup.ml-0.7.2.orig/test/test_encoding.ml
+++ markup.ml-0.7.2/test/test_encoding.ml
@@ -15,9 +15,9 @@ let test_ucs_4 (f : Encoding.t) name s1
expect_error (1, 2) (`Decoding_error (bad_bytes, name))
begin fun report ->
let chars = s1 |> string |> f ~report in
- next_option chars ok (assert_equal (Some (Char.code 'f')));
+ next_option chars ok (assert_equal (Some ((Uchar.of_int (Char.code 'f')))));
next_option chars ok (assert_equal (Some Uutf.u_rep));
- next_option chars ok (assert_equal (Some (Char.code 'o')));
+ next_option chars ok (assert_equal (Some ((Uchar.of_int (Char.code 'o')))));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None)
end;
@@ -25,9 +25,9 @@ let test_ucs_4 (f : Encoding.t) name s1
expect_error (2, 2) (`Decoding_error ("\x00\x00\x00", name))
begin fun report ->
let chars = s2 |> string |> f ~report in
- next_option chars ok (assert_equal (Some (Char.code 'f')));
- next_option chars ok (assert_equal (Some 0x000A));
- next_option chars ok (assert_equal (Some (Char.code 'o')));
+ next_option chars ok (assert_equal (Some (Uchar.of_int (Char.code 'f'))));
+ next_option chars ok (assert_equal (Some (Uchar.of_int 0x000A)));
+ next_option chars ok (assert_equal (Some (Uchar.of_int (Char.code 'o'))));
next_option chars ok (assert_equal (Some Uutf.u_rep));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None)
@@ -38,12 +38,12 @@ let tests = [
let s = "\xef\xbb\xbffoo\xf0\x9f\x90\x99bar\xa0more" in
expect_error (1, 8) (`Decoding_error ("\xa0", "utf-8")) begin fun report ->
let chars = s |> string |> utf_8 ~report in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
- next_option chars ok (assert_equal (Some 0x1F419));
- next_n 3 chars ok (assert_equal (List.map Char.code ['b'; 'a'; 'r']));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
+ next_option chars ok (assert_equal (Some (Uchar.of_int 0x1F419)));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['b'; 'a'; 'r']));
next_option chars ok (assert_equal (Some Uutf.u_rep));
next_n 4 chars ok
- (assert_equal (List.map Char.code ['m'; 'o'; 'r'; 'e']));
+ (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['m'; 'o'; 'r'; 'e']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None)
end);
@@ -53,11 +53,11 @@ let tests = [
expect_error (1, 6) (`Decoding_error ("\xdc\x19", "utf-16be"))
begin fun report ->
let chars = s |> string |> utf_16be ~report in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
- next_option chars ok (assert_equal (Some 0x1F419));
- next_option chars ok (assert_equal (Some (Char.code 'b')));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
+ next_option chars ok (assert_equal (Some (Uchar.of_int 0x1F419)));
+ next_option chars ok (assert_equal (Some (Uchar.of_int (Char.code 'b'))));
next_option chars ok (assert_equal (Some Uutf.u_rep));
- next_n 16 chars ok (assert_equal (List.map Char.code ['a'; 'r']));
+ next_n 16 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['a'; 'r']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None)
end);
@@ -67,11 +67,11 @@ let tests = [
expect_error (1, 6) (`Decoding_error ("\x19\xdc", "utf-16le"))
begin fun report ->
let chars = s |> string |> utf_16le ~report in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
- next_option chars ok (assert_equal (Some 0x1F419));
- next_option chars ok (assert_equal (Some (Char.code 'b')));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
+ next_option chars ok (assert_equal (Some (Uchar.of_int 0x1F419)));
+ next_option chars ok (assert_equal (Some (Uchar.of_int (Char.code 'b'))));
next_option chars ok (assert_equal (Some Uutf.u_rep));
- next_n 16 chars ok (assert_equal (List.map Char.code ['a'; 'r']));
+ next_n 16 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['a'; 'r']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None)
end);
@@ -79,7 +79,7 @@ let tests = [
("encoding.iso_8859_1" >:: fun _ ->
let chars = string "foo\xa0" |> iso_8859_1 in
next_n 4 chars
- ok (assert_equal (List.map Char.code ['f'; 'o'; 'o'; '\xa0']));
+ ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o'; '\xa0']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None));
@@ -88,26 +88,26 @@ let tests = [
expect_error (1, 4) (`Decoding_error ("\xa0", "us-ascii"))
begin fun report ->
let chars = s |> string |> us_ascii ~report in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
next_option chars ok (assert_equal (Some Uutf.u_rep));
- next_n 3 chars ok (assert_equal (List.map Char.code ['b'; 'a'; 'r']));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['b'; 'a'; 'r']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None)
end);
("encoding.windows_1251" >:: fun _ ->
let chars = string "foo\xe0\xe1\xe2bar" |> windows_1251 in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
- next_n 3 chars ok (assert_equal [0x0430; 0x0431; 0x0432]);
- next_n 3 chars ok (assert_equal (List.map Char.code ['b'; 'a'; 'r']));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
+ next_n 3 chars ok (assert_equal [Uchar.of_int 0x0430; Uchar.of_int 0x0431; Uchar.of_int 0x0432]);
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['b'; 'a'; 'r']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None));
("encoding.windows_1252" >:: fun _ ->
let chars = string "foo\x80\x83bar" |> windows_1252 in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
- next_n 2 chars ok (assert_equal [0x20AC; 0x0192]);
- next_n 3 chars ok (assert_equal (List.map Char.code ['b'; 'a'; 'r']));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
+ next_n 2 chars ok (assert_equal [Uchar.of_int 0x20AC; Uchar.of_int 0x0192]);
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['b'; 'a'; 'r']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None));
@@ -137,7 +137,7 @@ let tests = [
("encoding.ebcdic" >:: fun _ ->
let chars = string "\x86\x96\x96" |> ebcdic in
- next_n 3 chars ok (assert_equal (List.map Char.code ['f'; 'o'; 'o']));
+ next_n 3 chars ok (assert_equal (List.map (fun x -> Uchar.of_int (Char.code x)) ['f'; 'o'; 'o']));
next_option chars ok (assert_equal None);
next_option chars ok (assert_equal None));
]
Index: markup.ml-0.7.2/test/test_html_tokenizer.ml
===================================================================
--- markup.ml-0.7.2.orig/test/test_html_tokenizer.ml
+++ markup.ml-0.7.2/test/test_html_tokenizer.ml
@@ -134,7 +134,7 @@ let tests = [
expect "&#1000000000000000000000000000000;"
[ 1, 1, E (`Bad_token ("&#1000000000000000000000000000000;",
reference, "out of range"));
- 1, 1, S (`Char Uutf.u_rep);
+ 1, 1, S (`Char (Uchar.to_int Uutf.u_rep));
1, 35, S `EOF];
expect "&#1000000000000000000000000000000"
@@ -142,22 +142,22 @@ let tests = [
reference, "missing ';' at end"));
1, 1, E (`Bad_token ("&#1000000000000000000000000000000",
reference, "out of range"));
- 1, 1, S (`Char Uutf.u_rep);
+ 1, 1, S (`Char (Uchar.to_int Uutf.u_rep));
1, 34, S `EOF];
expect "&#xD800;"
[ 1, 1, E (`Bad_token ("&#xD800;", reference, "out of range"));
- 1, 1, S (`Char Uutf.u_rep);
+ 1, 1, S (`Char (Uchar.to_int Uutf.u_rep));
1, 9, S `EOF];
expect "&#x110000;"
[ 1, 1, E (`Bad_token ("&#x110000;", reference, "out of range"));
- 1, 1, S (`Char Uutf.u_rep);
+ 1, 1, S (`Char (Uchar.to_int Uutf.u_rep));
1, 11, S `EOF];
expect "&#0;"
[ 1, 1, E (`Bad_token ("&#0;", reference, "out of range"));
- 1, 1, S (`Char Uutf.u_rep);
+ 1, 1, S (`Char (Uchar.to_int Uutf.u_rep));
1, 5, S `EOF];
expect "&#x01;"
@@ -264,7 +264,7 @@ let tests = [
expect ~state:`RCDATA "f\x00</foo>"
([ 1, 1, S (`Char 0x66);
1, 2, E (`Bad_token ("U+0000", "content", "null"));
- 1, 2, S (`Char Uutf.u_rep)] @
+ 1, 2, S (`Char (Uchar.to_int Uutf.u_rep))] @
(char_sequence ~start:3 "</foo>"));
expect ~state:`RCDATA "<title>f</title >"
@@ -302,7 +302,7 @@ let tests = [
expect ~state:`RAWTEXT "f\x00</foo>"
([ 1, 1, S (`Char 0x66);
1, 2, E (`Bad_token ("U+0000", "content", "null"));
- 1, 2, S (`Char Uutf.u_rep)] @
+ 1, 2, S (`Char (Uchar.to_int Uutf.u_rep))] @
(char_sequence ~start:3 "</foo>")));
("html.tokenizer.script-data" >:: fun _ ->
@@ -330,7 +330,7 @@ let tests = [
expect ~state:`Script_data "f<!--o\x00o"
((char_sequence ~no_eof:true "f<!--o") @
[1, 7, E (`Bad_token ("U+0000", "script", "null"));
- 1, 7, S (`Char Uutf.u_rep);
+ 1, 7, S (`Char (Uchar.to_int Uutf.u_rep));
1, 8, S (`Char 0x6F);
1, 9, E (`Unexpected_eoi "script");
1, 9, S `EOF]);
@@ -363,7 +363,7 @@ let tests = [
expect ~state:`Script_data "f<!--a-\x00-"
((char_sequence ~no_eof:true "f<!--a-") @
[ 1, 8, E (`Bad_token ("U+0000", "script", "null"));
- 1, 8, S (`Char Uutf.u_rep);
+ 1, 8, S (`Char (Uchar.to_int Uutf.u_rep));
1, 9, S (`Char 0x02D);
1, 10, E (`Unexpected_eoi "script");
1, 10, S `EOF]);
@@ -371,7 +371,7 @@ let tests = [
expect ~state:`Script_data "f<!--a--\x00--"
((char_sequence ~no_eof:true "f<!--a--") @
[ 1, 9, E (`Bad_token ("U+0000", "script", "null"));
- 1, 9, S (`Char Uutf.u_rep);
+ 1, 9, S (`Char (Uchar.to_int Uutf.u_rep));
1, 10, S (`Char 0x02D);
1, 11, S (`Char 0x02D);
1, 12, E (`Unexpected_eoi "script");
@@ -380,14 +380,14 @@ let tests = [
expect ~state:`Script_data "f<!--<script>\x00"
((char_sequence ~no_eof:true "f<!--<script>") @
[ 1, 14, E (`Bad_token ("U+0000", "script", "null"));
- 1, 14, S (`Char Uutf.u_rep);
+ 1, 14, S (`Char (Uchar.to_int Uutf.u_rep));
1, 15, E (`Unexpected_eoi "script");
1, 15, S `EOF]);
expect ~state:`Script_data "f<!--<script>-\x00-"
((char_sequence ~no_eof:true "f<!--<script>-") @
[ 1, 15, E (`Bad_token ("U+0000", "script", "null"));
- 1, 15, S (`Char Uutf.u_rep);
+ 1, 15, S (`Char (Uchar.to_int Uutf.u_rep));
1, 16, S (`Char 0x2D);
1, 17, E (`Unexpected_eoi "script");
1, 17, S `EOF]);
@@ -395,7 +395,7 @@ let tests = [
expect ~state:`Script_data "f<!--<script>--\x00--"
((char_sequence ~no_eof:true "f<!--<script>--") @
[ 1, 16, E (`Bad_token ("U+0000", "script", "null"));
- 1, 16, S (`Char Uutf.u_rep);
+ 1, 16, S (`Char (Uchar.to_int Uutf.u_rep));
1, 17, S (`Char 0x2D);
1, 18, S (`Char 0x2D);
1, 19, E (`Unexpected_eoi "script");
@@ -413,7 +413,7 @@ let tests = [
expect ~state:`Script_data "f\x00</foo>"
([ 1, 1, S (`Char 0x66);
1, 2, E (`Bad_token ("U+0000", "content", "null"));
- 1, 2, S (`Char Uutf.u_rep)] @
+ 1, 2, S (`Char (Uchar.to_int Uutf.u_rep))] @
(char_sequence ~start:3 "</foo>")));
("html.tokenizer.plaintext" >:: fun _ ->
@@ -424,7 +424,7 @@ let tests = [
expect ~state:`PLAINTEXT "f\x00</foo>"
([ 1, 1, S (`Char 0x66);
1, 2, E (`Bad_token ("U+0000", "content", "null"));
- 1, 2, S (`Char Uutf.u_rep)] @
+ 1, 2, S (`Char (Uchar.to_int Uutf.u_rep))] @
(char_sequence ~start:3 "</foo>")));
("html.tokenizer.comment" >:: fun _ ->
Index: markup.ml-0.7.2/test/test_input.ml
===================================================================
--- markup.ml-0.7.2.orig/test/test_input.ml
+++ markup.ml-0.7.2/test/test_input.ml
@@ -71,7 +71,7 @@ let tests = [
end);
("input.bom" >:: fun _ ->
- [0xFEFF; 0x66]
+ [Uchar.of_int 0xFEFF; Uchar.of_int 0x66]
|> of_list
|> preprocess is_valid_xml_char Error.ignore_errors
|> fst

File diff suppressed because it is too large Load Diff

@ -4,21 +4,21 @@
EAPI=5
inherit findlib
inherit findlib eutils
DESCRIPTION="Error-recovering streaming HTML5 and XML parsers"
HOMEPAGE="https://github.com/aantron/markup.ml"
SRC_URI="https://github.com/aantron/markup.ml/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0/${PV}"
SLOT="0/${PV}p1"
KEYWORDS="~amd64"
IUSE="doc test"
DEPEND="
dev-lang/ocaml:=[ocamlopt]
dev-ml/lwt:=[ocamlopt]
dev-ml/uutf:=[ocamlopt]
>=dev-ml/uutf-1.0:=[ocamlopt]
"
RDEPEND="${DEPEND}"
DEPEND="${DEPEND}
@ -26,6 +26,11 @@ DEPEND="${DEPEND}
dev-ml/ocamlbuild"
S="${WORKDIR}/${PN}.ml-${PV}"
src_prepare() {
epatch "${FILESDIR}/uutf.patch" \
"${FILESDIR}/test.patch"
}
src_compile() {
emake
use doc && emake docs

@ -1,2 +1,3 @@
DIST ocaml-ctypes-0.10.2.tar.gz 190090 SHA256 9888667de03c330d3845e8ded0df53f9e1d234be2c3696517a1e98e176116cea SHA512 73374e2063882347fa8458564f8bf49365aa493cb8aa3abcea01c92fc399c1ef0a977df9d87542bd781c6fc6d042dda1c0e13283b550538d173f08df9ce2ce0d WHIRLPOOL ff19c015fb38a1e20fb772b6628fcacce744ca57a42890052b061f6f697fd0bd5d24225de852f734812a623fa63877827993f4b359721b841d0f92b854b2edb3
DIST ocaml-ctypes-0.11.1.tar.gz 202879 SHA256 6be8a5ed4fc2da6051b42aa59648934ea2f9080d783c92f610e91454059b97e2 SHA512 b25beab78ea099d30ef4fdbabfb23eef2eb1dbd9421c3294b632ffda2327c54909913a97837eb25fadb2a0ae6aaf7f4725811845e5a98baa946690b43628b8ce WHIRLPOOL 1c8f1c9045277ea21e5192b08566a4ce363e26ee2b4ab6f5cde77d85965c0080c4ebc7870f827ac91d79f7bcda484c895ce5e4149c451c6b6257b64665bca5e0
DIST ocaml-ctypes-0.4.1.tar.gz 162601 SHA256 74564e049de5d3c0e76ea284c225cb658ac1a2b483345be1efb9be4b3c1702f5 SHA512 8155ffe16a58d5714ceb602afa5531c93526defca39a16047328ac06d2c7c7f52b768b18170391f467e1f6919c69275734faf85d27315e11b8bbefcb1bc8afa9 WHIRLPOOL d8d0ef24e0b6c40f50fddf38fed7238cf95573909d2809cc2ab5c1b9b3dab333210e1ce99cf805804576a79d08d819e2ecdee7b4a6a9e13efb13e7b9f88ad802

@ -0,0 +1,36 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit findlib
DESCRIPTION="Library for binding to C libraries using pure OCaml"
HOMEPAGE="https://github.com/ocamllabs/ocaml-ctypes"
SRC_URI="https://github.com/ocamllabs/ocaml-ctypes/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm ~x86"
IUSE="test"
RDEPEND="
>=dev-lang/ocaml-4.02:=[ocamlopt]
virtual/libffi
"
DEPEND="${RDEPEND}
test? ( dev-ml/ounit )"
src_compile() {
emake -j1
}
src_test() {
emake -j1 test
}
src_install() {
findlib_src_install
dodoc CHANGES.md README.md
}

@ -1 +1,2 @@
DIST reactiveData-0.2.1.tar.gz 21219 SHA256 6e936dd738f5b48470c0479f8e184bce69c3162ed1c08ae66541450bca079a71 SHA512 e4dad870fd1f669566394d9c2ab52665a3d27f6b2dd3807dba245d89ca90eda08b98b266fb0795bcfa5cb4ffed7a86aa719f8db5c316b0d920ee3c342493d029 WHIRLPOOL 0044466c7a7965985ee2a633af1bdb0e00ee84e97f3430cfd5c7523d7437c9e55cc51367014804a1540b28cc69c6286c532d4c458b537c1a90bdd7fd3e75f66a
DIST reactiveData-0.2.tar.gz 21063 SHA256 d80d425d2746ffc7bd1b88e9528b8236a5ca13cca636662dee1a59e96d675367 SHA512 ed6c82b499f7a740dcf3c39825dd9a98b73ab32d15159e372253a2ca9c8406301cd569654d02f5be2530b491b101587bb628984b0b6f1ce1cc21aab010e518cf WHIRLPOOL 819a6d999d84056967c34c9e451655b86840d30bf88903eb1a55bff41dbf552c6bac9dfa61b2d1a6c76c7806f6f61e307b27f382fc66ee7f380c2da5a4f72817

@ -0,0 +1,46 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
DESCRIPTION="Functional reactive programming with incremental changes in data structures"
HOMEPAGE="https://github.com/ocsigen/reactiveData"
if [ "${PV#9999}" != "${PV}" ] ; then
inherit git-r3
SRC_URI=""
EGIT_REPO_URI="https://github.com/ocsigen/reactiveData"
KEYWORDS=""
else
SRC_URI="https://github.com/ocsigen/reactiveData/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="LGPL-3-with-linking-exception"
SLOT="0/${PV}"
IUSE="+ocamlopt"
RDEPEND=">=dev-lang/ocaml-3.12:=[ocamlopt?]
dev-ml/react:="
DEPEND="${RDEPEND}
dev-ml/findlib
dev-ml/opam
dev-ml/ocamlbuild
"
src_compile() {
ocaml pkg/build.ml \
native=$(usex ocamlopt true false) \
native-dynlink=$(usex ocamlopt true false) \
|| die
}
src_install() {
opam-installer \
--prefix="${ED}/usr" \
--libdir="${D}/$(ocamlc -where)" \
--docdir="${ED}/usr/share/doc/${PF}" \
|| die
dodoc README.md
}

@ -0,0 +1 @@
DIST topkg-0.8.1.tar.gz 118529 SHA256 368bf199fe0e92d248057bcb635a1aec081607cc2c64699fa21885e4ea00325c SHA512 d427b9c9e05541b3574a9818efe435c2fade22b0789a4aee3032068b5cdf606634e218e848ef220ab2174272e71a3490e8d7a4acc564f4cc987ed703194b2609 WHIRLPOOL e227990bc32eca743bd3cc74ea6f2af8ded8a10286f5e24579d84c2d3745c7d001b0a72316e317b2f65fa88cafa3c1110fd5ea39c8979f22f7a54560545696a7

@ -2,7 +2,7 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>kde@gentoo.org</email>
<name>Gentoo KDE Project</name>
<email>ml@gentoo.org</email>
<name>Gentoo ML Project</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,34 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit findlib
DESCRIPTION="The transitory OCaml software packager"
HOMEPAGE="http://erratique.ch/software/topkg https://github.com/dbuenzli/topkg"
SRC_URI="https://github.com/dbuenzli/topkg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="ISC"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="dev-ml/result:=
dev-lang/ocaml:="
DEPEND="${RDEPEND}
dev-ml/opam"
src_compile() {
ocaml pkg/pkg.ml build --pkg-name ${PN} || die
}
src_install() {
opam-installer -i \
--prefix="${ED}/usr" \
--libdir="${D}/$(ocamlc -where)" \
--docdir="${ED}/usr/share/doc/${PF}" \
${PN}.install || die
dodoc CHANGES.md DEVEL.md README.md
}

@ -0,0 +1,53 @@
Index: tyxml-4.0.0/lib/xml_print.ml
===================================================================
--- tyxml-4.0.0.orig/lib/xml_print.ml
+++ tyxml-4.0.0/lib/xml_print.ml
@@ -154,15 +154,14 @@ module Utf8 = struct
Uutf.String.fold_utf_8
(fun _ _ d ->
match d with
- | `Uchar 34 ->
- Buffer.add_string buffer "&quot;"
- | `Uchar 38 ->
- Buffer.add_string buffer "&amp;"
- | `Uchar 60 ->
- Buffer.add_string buffer "&lt;"
- | `Uchar 62 ->
- Buffer.add_string buffer "&gt;"
- | `Uchar code ->
+ | `Uchar ucode ->
+ begin
+ match Uchar.to_int ucode with
+ | 34 -> Buffer.add_string buffer "&quot;"
+ | 38 -> Buffer.add_string buffer "&amp;"
+ | 60 -> Buffer.add_string buffer "&lt;"
+ | 62 -> Buffer.add_string buffer "&gt;"
+ | code ->
let u =
(* Illegal characters in html
http://en.wikipedia.org/wiki/Character_encodings_in_HTML
@@ -181,9 +180,10 @@ module Utf8 = struct
|| code land 0xFFFF = 0xFFFE
|| code land 0xFFFF = 0xFFFF
then (warn:=true; Uutf.u_rep)
- else code
+ else ucode
in
Uutf.Buffer.add_utf_8 buffer u
+ end
| `Malformed _ ->
Uutf.Buffer.add_utf_8 buffer Uutf.u_rep;
warn:=true)
Index: tyxml-4.0.0/ppx/ppx_attribute_value.ml
===================================================================
--- tyxml-4.0.0.orig/ppx/ppx_attribute_value.ml
+++ tyxml-4.0.0/ppx/ppx_attribute_value.ml
@@ -160,7 +160,7 @@ let char ?separated_by:_ ?default:_ loc
let c =
match next decoded with
| None -> Ppx_common.error loc "No character in attribute %s" name
- | Some i when i <= 255 -> Char.chr i
+ | Some i when Uchar.to_int i <= 255 -> Char.chr (Uchar.to_int i)
| Some _ ->
Ppx_common.error loc "Character out of range in attribute %s" name
in

@ -18,13 +18,14 @@ KEYWORDS="~amd64"
IUSE="+ppx +camlp4"
DEPEND="
dev-ml/uutf:=
>=dev-ml/uutf-1.0:=
dev-ml/ocaml-re:=
ppx? ( >=dev-ml/ppx_tools-5:= dev-ml/markup:= )
camlp4? ( dev-ml/camlp4:= )"
RDEPEND="${DEPEND}"
DOCS=( CHANGES README.md )
PATCHES=( "${FILESDIR}/uutf.patch" )
src_configure() {
oasis_configure_opts="

@ -1 +1,2 @@
DIST uutf-0.9.4.tbz 36987 SHA256 13706722a0037b167eef359bac68d5426d05f64aa308f44c1784aace9577e1b8 SHA512 95203b06e7506f33822f10607315920b849efde3ed2e032bf8dd805f99ce4851b375bc92a1f95403673c97c6176c5a6974af2be611f530db0a7f36296948edf4 WHIRLPOOL a3446da14f665c06dbc9b245baf530c4650fb657baec02de7773cbb5addb2fdb5ddf9a98822a3af3b72b4800affcf2af39e44a6f37f17d221c55bd02b39c4cce
DIST uutf-1.0.0.tbz 22182 SHA256 67dc4bd7ef6c8ab23ca62d34eb8c861a1f30624f3b009d45ac84772600672022 SHA512 ca033175aeaf2dafac9a7d2ad846f128d728bfbd7688c2c95d0db1d2a9b92a781d82c37d7bbfbede8934bbb6fa59a2df7530db0f0006032994971a7e4570999c WHIRLPOOL ad6e86cb3bc30cb4a139f6bfd081a256ea5a7054bd4fa06f2a8017b26a77265c352389961deb19f5affc3e6c6a72f5ad6cbfe9435b0a4d0b1adb9aba53a82ee4

@ -0,0 +1,50 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
inherit findlib
DESCRIPTION="Non-blocking streaming Unicode codec for OCaml"
HOMEPAGE="http://erratique.ch/software/uutf"
SRC_URI="http://erratique.ch/software/uutf/releases/${P}.tbz"
LICENSE="ISC"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="doc utftrip +ocamlopt test"
RDEPEND=">=dev-lang/ocaml-3.12:=[ocamlopt?]
utftrip? ( dev-ml/cmdliner:= )"
DEPEND="${RDEPEND}
dev-ml/ocamlbuild
dev-ml/topkg
test? ( dev-ml/cmdliner )"
src_compile() {
ocaml pkg/pkg.ml build \
--with-cmdliner "$(usex utftrip true false)" \
|| die
}
src_test() {
if use ocamlopt ; then
ocamlbuild -use-ocamlfind tests.otarget || die
cd _build/test || die
./test.native || die
else
ewarn "Sorry, ${PN} tests require native support (ocamlopt)"
fi
}
src_install() {
# Can't use opam-installer here as it is an opam dep...
findlib_src_preinst
local nativelibs=""
use ocamlopt && nativelibs="$(echo _build/src/uutf.cm{x,xa,xs} _build/src/uutf.a)"
ocamlfind install uutf _build/pkg/META _build/src/uutf.mli _build/src/uutf.cm{a,i} ${nativelibs} || die
use utftrip && newbin utftrip.$(usex ocamlopt native byte) utftrip
dodoc CHANGES.md README.md
use doc && dohtml -r doc/*
}

@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="project">
<email>perl@gentoo.org</email>
<name>Gentoo Perl Project</name>
</maintainer>
<longdescription>
Driver for ivtv based tv tuner cards, currently supports Hauppauge
PVR-[23]50 cards
</longdescription>
</longdescription>
<upstream>
<remote-id type="sourceforge">ivtv</remote-id>
</upstream>

@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="project">
<email>perl@gentoo.org</email>
<name>Gentoo Perl Project</name>
</maintainer>
<longdescription>
Driver for ivtv based tv tuner cards, currently supports Hauppauge
PVR-[23]50 cards
</longdescription>
</longdescription>
<upstream>
<remote-id type="sourceforge">ivtv</remote-id>
</upstream>

@ -1 +1,2 @@
DIST igbinary-1.2.1-r1.tar.gz 143092 SHA256 f71a2e085669ed915740b29f55b6a81e30bae52215d041938afb9212e6bafc27 SHA512 5e69831606cfe47db2ae2b2200bd8bcfce42db32599a2a58cf23238d88896a2ef79baf16e78b3aaefb8725f8fdd7b815470e2d314ba14ea05f33be547da31777 WHIRLPOOL f7eb5d28b536bd1d2b0565f3e8541cbdb39edd2f5130bd041f0d75cc8218edeaa8719ebaea4d8ddf372172df9863d9d72a12dd8fc09c3653418b49e26d0e2f61
DIST igbinary-2.0.0.tar.gz 176546 SHA256 864785bc759f7e249534b7834d7762915851242e57a24ee9e13cac27d2a25b8e SHA512 8cd46e70ca2dfd441fa99c29a458923615fc25aab11a0d4e33770505495dd8fbd0071f9c4822b22c941b1240c609be549b1cb625b76b933b0dec7acc7f792122 WHIRLPOOL 2868676b7beb25aac244fb88a7ae48b6983ff605f9a1f12997ecb23e13a1513a53b59380a72bbf8d08075a9905dc74df527e6363bb1e81c139c23ac1018a22cb

@ -0,0 +1,27 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
PHP_EXT_NAME="${PN}"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS=( ChangeLog NEWS README.md)
PHP_EXT_ECONF_ARGS=( --enable-${PN} )
USE_PHP="php5-6 php7-0"
inherit php-ext-source-r3
KEYWORDS="~amd64 ~x86"
DESCRIPTION="A fast drop-in replacement for the standard PHP serialize"
HOMEPAGE="https://github.com/${PN}/${PN}"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${PF}.tar.gz"
LICENSE="BSD"
SLOT="0"
IUSE=""
DEPEND=""
RDEPEND=""

@ -1,22 +1,22 @@
# Copyright 1999-2014 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
EAPI=6
PHP_EXT_NAME="magickwand"
PHP_EXT_ZENDEXT="no"
PHP_EXT_INI="yes"
DOCS="AUTHOR ChangeLog CREDITS README TODO"
DOCS=( AUTHOR ChangeLog CREDITS README TODO )
MY_PN="MagickWandForPHP"
IUSE=""
USE_PHP="php5-6 php5-5 php5-4"
USE_PHP="php5-6"
S="${WORKDIR}/${MY_PN}-${PV}"
inherit php-ext-source-r2
inherit php-ext-source-r3
DESCRIPTION="A native PHP-extension to the ImageMagick MagickWand API"
HOMEPAGE="http://www.magickwand.org/"

@ -1,3 +1,2 @@
DIST amqp-1.4.0.tgz 48648 SHA256 e6553154acbffeaacfad83edf94a7b94e2e50a850ec953d15537016267720f25 SHA512 aacf3d7e13c0acb7486fbc47a65ee70909e71401106479b38a9b6406453a6279cd32aceb0941ec56a39326f17700e8ea4a15460c9b156d4bef68e5e8f90f5a2e WHIRLPOOL aa83c6acec9c36ef47aa73cbb2209c15b89eb2a1888bb5117dc6d5ece907537f29a559d52787d8cd77ce8653ebc8f4799afc82ebdfdc303d615e78b3f012339d
DIST amqp-1.7.0.tgz 79665 SHA256 b9a642c0ae60cc5e049c169a017cc355bfc0f2478db588b20925eaa63d358e83 SHA512 7fb16c1f49814e8eb74635672e80023bbe8655536efb28f9899c55ef328574dd806d51b7a39f972777cc643105acc6918b10009af09e4106b395b246c3463116 WHIRLPOOL 7f8775eaf45c2ec2fd5afc57a6d6ec73df858636b469dadf5f43faae713280f384169406933e6a14ffbc874185e18dabf1a1e09c54e48144d21bdbc7a4f9665d
DIST amqp-1.7.1.tgz 79905 SHA256 38a92eaef1aa863404170bcd15605f7f78140eeec1ff5be6af65c5b8081e2599 SHA512 3cd712410e6614c764b307670ad2398d374bf438c20d28aaa96dc61cabc63530883f87cb1669d0370691b7ca901604a1d93fe81c4ca7dada776f923a368c3b19 WHIRLPOOL 2ca1b1a161a6d3b0f1c3bb7f87f379930eae931354d6150e59eb08b2290968ade167e6b2f245be02e06e73b6d1aa34d9150e38b83e9f64b857be235bb01b3720
DIST amqp-1.8.0beta2.tgz 91804 SHA256 c21ba46bfd703d399e40467386343e00cd7b3c072fc48ff2ebbf5f2ec96085c0 SHA512 24c63c9f4011f3f7b55e20a5f45967a3976602b40312c14d52df5d7a440d58ce7227d2dcb9dd63c2f6a8d0d115df07b59b481de8d5a73e48c325b00891865bd2 WHIRLPOOL 5687ce7e997ccf05991289e0fb1c11fb168d1e472c758da2b73650d82e511c3c1b1559142b564fb53bea25a34cd1814e158200161af5e19f493c6081981fbaae

@ -1,19 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
USE_PHP="php5-6 php5-4 php5-5"
inherit php-ext-pecl-r2
KEYWORDS="~amd64 ~x86"
DESCRIPTION="PHP Bindings for AMQP 0-9-1 compatible brokers"
LICENSE="PHP-3.01"
SLOT="0"
IUSE=""
DEPEND=">=net-libs/rabbitmq-c-0.4.1"
RDEPEND="${DEPEND}"

@ -2,11 +2,11 @@
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
EAPI=6
USE_PHP="php7-0 php5-6 php5-5"
USE_PHP="php7-0 php5-6"
inherit php-ext-pecl-r2
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"

@ -1,27 +1,26 @@
# Copyright 1999-2014 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
EAPI="6"
PHP_EXT_NAME="bbcode"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS="TODO"
DOCS=( TODO )
USE_PHP="php5-4 php5-5 php5-6"
USE_PHP="php5-6"
MY_PV="${PV/_beta/b}"
PECL_PKG_V="${PECL_PKG}-${MY_PV}"
S="${WORKDIR}/${PECL_PKG_V}"
PECL_PKG_V="${PN/pecl-/}-${MY_PV}"
PHP_EXT_S="${WORKDIR}/${PECL_PKG_V}"
inherit php-ext-pecl-r2
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
FILENAME="${PECL_PKG_V}.tgz"
SRC_URI="http://pecl.php.net/get/${FILENAME}"
HOMEPAGE="http://pecl.php.net/${PECL_PKG}"
SRC_URI="http://pecl.php.net/get/${PECL_PKG_V}.tgz"
HOMEPAGE="http://pecl.php.net/package/bbcode"
DESCRIPTION="A quick and efficient BBCode Parsing Library"
LICENSE="PHP-3.01 BSD"
@ -30,3 +29,5 @@ IUSE=""
DEPEND=""
RDEPEND=""
S="${PHP_EXT_S}"

@ -2,13 +2,15 @@
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
EAPI="6"
DOCS="TODO"
DOCS=( TODO )
USE_PHP="php5-5 php5-6"
USE_PHP="php5-6"
inherit php-ext-pecl-r2
PHP_EXT_S="${WORKDIR}/Cairo-${PV}"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
@ -21,5 +23,4 @@ RDEPEND="${DEPEND}"
IUSE=""
S="${WORKDIR}/Cairo-${PV}"
PHP_EXT_S="$S"
S="${PHP_EXT_S}"

@ -1,16 +1,16 @@
# Copyright 1999-2014 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
EAPI="6"
PHP_EXT_NAME="dbx"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php5-5 php5-4"
USE_PHP="php5-6"
inherit php-ext-pecl-r2
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"

@ -1,18 +1,19 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
EAPI="6"
PHP_EXT_NAME="dio"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php5-5 php5-4"
USE_PHP="php5-6"
MY_PV=${PV/_rc/RC}
S="${WORKDIR}/${PN/pecl-/}-${MY_PV}"
inherit php-ext-pecl-r2
PHP_EXT_S="${WORKDIR}/${PN/pecl-/}-${MY_PV}"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
@ -21,8 +22,4 @@ LICENSE="PHP-3"
SLOT="0"
IUSE=""
src_configure() {
my_conf="--enable-dio --enable-shared"
php-ext-source-r2_src_configure
}
S="${PHP_EXT_S}"

@ -1,2 +1 @@
DIST eio-1.2.5.tgz 57539 SHA256 ee7b21aa413cbe39caaef1d2eb893fa3bcb9a278b5665c28d179a83a4a1bdb51 SHA512 629f4e0cd3f632ec7d5aed299a6f55ba089f8d455a974c02c892515212d1f9a28ee2977ef513eba8b7fddf3431449716f70c29999dcd71df77ea26baae8994d5 WHIRLPOOL 2bffa6aca39ccf85dda44b4a18f966a4be4bcf3dc0a53c2eac2443574b189540732b0204b4c8a7d1825956c7b9aa15946680d65ff16ad7237b3f535c960f10fd
DIST eio-2.0.0.tgz 73615 SHA256 fc25ec8bc88b5d7dbb56f50a31d0672b92b09357817252218b34a672db089fe9 SHA512 e863bfffa78f6009c849b4487d5c81326cbfd7fdd8999282fe373f5f3086b994a8a8e33864b0f4475be0650e886f4c7208e8a681b60629b7d0e631912c88fa49 WHIRLPOOL 510083e2ce87ec2e19ab4d554d421224397a3129e516292a61bde23fd291fd590636804a93e5a9618059770676ca569484b30e9a56cc45d44ec9381645474332
DIST eio-2.0.1.tgz 73968 SHA256 e51e37a0434e8188f09b5267b94c1ab2c2f4e03b0314b5a6f14c8bcef7b8bf66 SHA512 29a85d4eec658003432ff3e5e84d58a3c4aaeb9724d88ca7941e35856dd2f498ae37223c929b4f7012eac69576b40bf88fb0c2e45f850af04bfefa2140d7d593 WHIRLPOOL bc519601862009b50099c4efb8c4bb0a8b66fd1117c8a457566ddc9a124fbd2888d98b80010754f0ee3f8a2902a4fe9f100cfa4e323c662b95768c1c0d62ae5f

@ -1,27 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PHP_EXT_NAME="eio"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS="README.md"
USE_PHP="php5-4 php5-5 php5-6"
inherit php-ext-pecl-r2 confutils
KEYWORDS="~amd64 ~x86"
LICENSE="PHP-3.01"
DESCRIPTION="PHP wrapper for libeio library"
LICENSE="PHP-3"
SLOT="0"
IUSE="debug"
src_configure() {
my_conf="--with-eio"
enable_extension_enable "eio-debug" "debug" 0
php-ext-source-r2_src_configure
}

@ -8,7 +8,7 @@ PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS=( README.md )
USE_PHP="php5-5 php5-6 php7-0"
USE_PHP="php5-6 php7-0"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"

@ -1,15 +1,15 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
EAPI=6
PHP_EXT_NAME="gearman"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php5-5 php5-4 "
USE_PHP="php5-6"
inherit php-ext-pecl-r2
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"

@ -6,7 +6,7 @@ EAPI=6
PHP_EXT_NAME="geoip"
DOCS="README ChangeLog"
USE_PHP="php5-5 php5-6 php7-0"
USE_PHP="php5-6 php7-0"
inherit php-ext-pecl-r3

@ -2,11 +2,11 @@
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
EAPI=6
USE_PHP="php5-5 php5-6"
USE_PHP="php5-6"
inherit php-ext-pecl-r2
inherit php-ext-pecl-r3
DESCRIPTION="An interface to libharu, a PDF generator"
@ -20,9 +20,10 @@ RDEPEND="${DEPEND}"
src_configure() {
# config.m4 is broken checking paths, so we need to override it
my_conf=""
use png && my_conf+=" --with-png-dir=/usr"
use zlib && my_conf+=" --with-zlib-dir=/usr"
local PHP_EXT_ECONF_ARGS=(
$(usex png '--with-png-dir=/usr' '')
$(usex zlib '--with-zlib-dir=/usr' '')
)
php-ext-source-r2_src_configure
php-ext-source-r3_src_configure
}

@ -1,18 +1,18 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
EAPI=6
PHP_EXT_NAME="htscanner"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS="README"
PHPSAPILIST="cgi"
PHP_EXT_SAPIS="cgi"
USE_PHP="php5-6 php5-5 php5-4"
USE_PHP="php5-6"
inherit php-ext-pecl-r2
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
@ -31,13 +31,11 @@ done
DEPEND="${PHPUSEDEPEND}"
RDEPEND="${DEPEND}"
my_conf="--enable-htscanner"
src_install() {
php-ext-pecl-r2_src_install
php-ext-pecl-r3_src_install
php-ext-source-r2_addtoinifiles "config_file" ".htaccess"
php-ext-source-r2_addtoinifiles "default_docroot" "/"
php-ext-source-r2_addtoinifiles "default_ttl" "300"
php-ext-source-r2_addtoinifiles "stop_on_error" "0"
php-ext-source-r3_addtoinifiles "config_file" ".htaccess"
php-ext-source-r3_addtoinifiles "default_docroot" "/"
php-ext-source-r3_addtoinifiles "default_ttl" "300"
php-ext-source-r3_addtoinifiles "stop_on_error" "0"
}

@ -1,2 +1 @@
DIST timezonedb-2015.7.tgz 415259 SHA256 16f59dc2314acc7f870c7a48212db430c17d3aa52f5fd76a1cf1dfacf8d84722 SHA512 5c53fdb415016c1d3ab967fb8ac28cce8d39e9ccacd29dc382234b371ccd6e5ee672f6ba8b748dedd4cfca8979a136dac7eddd4f9aff1a8e0eb72cbb3e09d1c2 WHIRLPOOL 33e9ee96f676bbf25747049c2af4f8ca7009024ab6be9b5402d2518b51d7bfbb51575f7964d8dc76484d2e2672f93ac2176cce0a75670821369f4b6e2c9ac226
DIST timezonedb-2016.6.tgz 420851 SHA256 00120165adae33df34be4b23a144bb66470df9156e460d49ad4b33e7762c7ef2 SHA512 04d1d4659b60335f4d1d13eb988ef6292e382e6db92de5df6aab20385679d443715a5375fd3302fa4e4ff33dd7059eb812ca77ca9fc42f6bab9e44d0f026e3a6 WHIRLPOOL f84d819be0ed0fb40965bcbb3af10586b47230652dce888d7340f7abb06643a855ab97022ae36d092cee0f9bb1488301f873d37f6880794e957a9d29c79389f8
DIST timezonedb-2016.10.tgz 421824 SHA256 dc0a01830de85aec481d96ec7ec03b36814d02d1bc417f52ce655b2cb1eb7ede SHA512 062c5cec18ba091a1b38fcf07059b42b2aad1205fd4b83e87f2a6b59ab68b9a2906a46a9f24214b7feeb802f126282b612cb866870a31f58c7c7e30f54040731 WHIRLPOOL 04be24e3e4b49d484c4f43a4f14df12a97a2a00192393be62d15c301366cd516ac295ca34906476f1fdbcf9d0aab48708e9741c78aa1b89a4972c9b447957fc6

@ -1,19 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PHP_EXT_NAME="timezonedb"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php5-5 php7-0"
inherit php-ext-pecl-r2
DESCRIPTION="Timezone Database to be used with PHP's date and time functions"
LICENSE="PHP-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE=""

@ -8,7 +8,7 @@ PHP_EXT_NAME="timezonedb"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php5-5 php7-0"
USE_PHP="php5-6 php7-0"
inherit php-ext-pecl-r3

@ -5,3 +5,4 @@ DIST elasticsearch-py-1.4.0.tar.gz 74498 SHA256 7959787b47c3523e9c9aeffec441091f
DIST elasticsearch-py-2.3.0.tar.gz 74954 SHA256 3610d3a2d2f4eb1906794276ac6fca1ad801067e0f36d71a8a11c2c9112ed120 SHA512 53ffc265dc2c42ef983bf12a6d6bfcb96a378da97c58b52ff872968e50f01936815f2d28d667d44a647174d90b55fbe6855ebeac6f86248adb4db4ba951facb1 WHIRLPOOL 836ea86fe64851eb1c8891f70ee8502bb2ff76c919536a3f57f06880dfed96626a658f3a722622ac49deb6d55ca9235755b56c771ed55d298b993c009c283b48
DIST elasticsearch-py-2.4.0.tar.gz 77199 SHA256 0cab15c1a5c014f259703d982b074b3c6864fb152dd909fba60d23cde9133b76 SHA512 5a38419b4448850722c6af9181d5f00bed20796b645a336706040244c559893da7f57aa556251b8b2ee022c48f651b5f7646fc51f9f0f20ed3ab1449f244c096 WHIRLPOOL c28412a06b0a13329d8b4ad377cdfe3d88ac2afc130b872fcf51dadc148a6f17c4e3ea6b03982be8553d64c224841932aa8e1847fb225a001331219651c0d6dd
DIST elasticsearch-py-5.0.0.tar.gz 79615 SHA256 544d526b022f398e555df2c83e25728159bcadbddf016aea6f4a8db706945ae9 SHA512 ed5ed433a81cadd71e596b14e7a0d1d69d549f25ea5e5ea3d4de0a755f3939eb3b86820937a4874e6acbfe0aa6d66027b5f696d7fac2fb9e692cbe140ed77417 WHIRLPOOL 741eb9e76aa51da47e18cfe25b474b622efcbe4e4cac5ce38d5112e91f56694561919d3b882274ae8caee4480bde7cdabddf54e8168369e684725463147eda7c
DIST elasticsearch-py-5.0.1.tar.gz 79648 SHA256 b4e17253b950f550c8fb53a68f431abc0a67131154aecd3a1dff19e955c3345c SHA512 a10483c853b3b1b6a9a250ceb51738b5351764cde18140b0b754f6563aa5ed8d3095063e85524968adc0faeb846acebedeeab7a29533e3025db698db228823d9 WHIRLPOOL 109890c3c6a408a700e9d03265308b3d33910a8883e2ec48657c0b2f0c0bb48349067ad19877d76f27945b5712e373db669bda7f74128e077198853f18397a5f

@ -0,0 +1,91 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
PYTHON_COMPAT=( python2_7 python3_{4,5} pypy )
ES_VERSION="5.0.0"
inherit distutils-r1
RESTRICT="test" # fails to start in chroot envs, unreliable
MY_PN=${PN/-py/}
DESCRIPTION="official Python low-level client for Elasticsearch"
HOMEPAGE="http://elasticsearch-py.rtfd.org/"
SRC_URI="https://github.com/elasticsearch/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
test? ( https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/${ES_VERSION}/elasticsearch-${ES_VERSION}.tar.gz )"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="examples doc test"
RDEPEND=">=dev-python/urllib3-1.8[${PYTHON_USEDEP}]
<dev-python/urllib3-2.0[${PYTHON_USEDEP}]"
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
>=dev-python/sphinx-1.3.1-r1[${PYTHON_USEDEP}]
test? ( ${RDEPEND}
>=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
<dev-python/requests-3.0.0[${PYTHON_USEDEP}]
dev-python/nose[${PYTHON_USEDEP}]
dev-python/coverage[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pretty-yaml[${PYTHON_USEDEP}]
dev-python/nosexcover[${PYTHON_USEDEP}]
|| ( virtual/jre:1.8 virtual/jre:1.7 ) )"
python_test() {
ES="${WORKDIR}/elasticsearch-${ES_VERSION}"
ES_PORT="25124"
ES_LOG="${ES}/logs/elasticsearch.log"
PID="${ES}/elasticsearch.pid"
# run Elasticsearch instance on custom port
sed -i "s/# http.port: 9200/http.port: ${ES_PORT}/g; \
s/# cluster.name: my-application/cluster.name: gentoo-es-py-test/g" \
${ES}/config/elasticsearch.yml || die
# start local instance of elasticsearch
${ES}/bin/elasticsearch -d -p ${PID} || die
local i
for i in `seq 10`; do
grep -q "started" ${ES_LOG} 2> /dev/null
if [ $? -eq 0 ]; then
einfo "Elasticsearch started"
eend 0
break
elif grep -q 'BindException\[Address already in use\]' "${ES_LOG}" 2>/dev/null; then
eend 1
eerror "Elasticsearch already running"
die "Cannot start Elasticsearch for tests"
else
einfo "Waiting for Elasticsearch"
eend 1
sleep 2
continue
fi
done
export TEST_ES_SERVER="localhost:${ES_PORT}"
esetup.py test
pkill -F ${PID}
}
python_compile_all() {
cd docs || die
emake man $(usex doc html "")
}
python_install_all() {
use doc && HTML_DOCS=( docs/_build/html/. )
use examples && dodoc -r example
doman docs/_build/man/*
distutils-r1_python_install_all
}

@ -1,4 +1,4 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
IUSE="doc examples test"
RDEPEND="virtual/mpi"

@ -18,7 +18,7 @@ SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.zip"
LICENSE="HPND"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ~ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
IUSE="doc examples jpeg jpeg2k lcms test tiff tk truetype webp zlib"
REQUIRED_USE="test? ( jpeg tiff )"

@ -1,2 +1,2 @@
DIST PyICU-1.9.3.tar.gz 179514 SHA256 1a7a96212cb3e42e8df85b9062f1f1d6e207474d44f087218fad1d4ec210fa42 SHA512 93720f6fd4131b6cff7fe89996a3851b5993c74859e85de7813883a30152b63a0065b8c51c536cd40417b6e3ccf0ec4e26ed471cec84cd48761a306a35bfd15c WHIRLPOOL 97d5ff9d5a96aa98700c3048104bb79309f3b7a2e6610a03be1a1b06b23be44ffaa6ef9afb548144757421616bf2401fa4bffac6d8759a7718021abfa9fb03d0
DIST PyICU-1.9.4.tar.gz 181149 SHA256 bb3df41141b1cde07432906a3e9ee096407d59243ceed496957fd4bc54cd765e SHA512 d635660e569a5c8c02d739c79806a6640ade2fcda07b826ebef5a992a64e38ee6d203e24f5f3f559c37355a78aecba1055404e3922996801b5d843328d69c8d4 WHIRLPOOL b3ecb81a29bf90793e2ab3540d14b0e30663e239da77c66bf3c17959f61cee11d8bdb957cf4a7c643baa006e0850362e62a4e2be06385982b1f37ca5276cba61
DIST PyICU-1.9.5.tar.gz 181878 SHA256 73b052b800861fae3281dbaf9c92d12a81cabf3d31912d94c51862e093ef359b SHA512 19fb3222a68cc67e92ea4171257d00c9a322f993f1303a4432b5c3c4efda32ff4c2372027cf9f3fd31d3dc3cf3bcbcb957dfa420039591044812f0213684e885 WHIRLPOOL 05e931826f445cc989d8d5ad1db10121705e685d53e8696e0befe172ee8e32895482813bcbcac105e3c8ac92ef85d8b96f79c67de35ed6547a7ccc64acee3413

@ -1,46 +0,0 @@
diff --git a/setup.py b/setup.py
index 2cbec9f..ea42e96 100644
--- a/setup.py
+++ b/setup.py
@@ -1,5 +1,5 @@
-import os, sys
+import os, sys, subprocess
try:
from setuptools import setup, Extension
@@ -8,6 +8,7 @@ except ImportError:
VERSION = '1.9.4'
+ICU_VERSION = subprocess.check_output(('icu-config', '--version')).strip()
INCLUDES = {
'darwin': ['/usr/local/include'],
@@ -43,11 +44,11 @@ LFLAGS = {
}
LIBRARIES = {
- 'darwin': ['icui18n', 'icuuc', 'icudata', 'icule'],
- 'linux': ['icui18n', 'icuuc', 'icudata', 'icule'],
- 'freebsd': ['icui18n', 'icuuc', 'icudata', 'icule'],
- 'win32': ['icuin', 'icuuc', 'icudt', 'icule'],
- 'sunos5': ['icui18n', 'icuuc', 'icudata', 'icule'],
+ 'darwin': ['icui18n', 'icuuc', 'icudata'],
+ 'linux': ['icui18n', 'icuuc', 'icudata'],
+ 'freebsd': ['icui18n', 'icuuc', 'icudata'],
+ 'win32': ['icuin', 'icuuc', 'icudt'],
+ 'sunos5': ['icui18n', 'icuuc', 'icudata'],
}
platform = sys.platform
@@ -79,6 +80,9 @@ else:
if 'PYICU_LIBRARIES' in os.environ:
_libraries = os.environ['PYICU_LIBRARIES'].split(os.pathsep)
+elif ((sys.version_info >= (3,) and str(ICU_VERSION, 'ascii') < '58') or
+ (sys.version_info < (3,) and ICU_VERSION < '58')):
+ _libraries = LIBRARIES[platform][:] + ['icule']
else:
_libraries = LIBRARIES[platform]

@ -1,53 +0,0 @@
# 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_4,3_5} )
DISTUTILS_IN_SOURCE_BUILD=1 # setup.py applies 2to3 to tests
inherit distutils-r1
MY_PN="PyICU"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Python bindings for dev-libs/icu"
HOMEPAGE="https://github.com/ovalhub/pyicu"
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc"
RDEPEND="${PYTHON_DEPS}
dev-libs/icu
"
DEPEND="${RDEPEND}
doc? ( dev-python/epydoc )"
S="${WORKDIR}/${MY_P}"
DOCS=(CHANGES CREDITS README.md)
python_compile_all() {
if use doc; then
einfo "Making documentation from ${EPYTHON} build"
mkdir -p doc/html || die
epydoc --html --verbose -o doc/html \
--url="${HOMEPAGE}" --name="${MY_P}" \
icu.py || die "Making the docs failed!"
fi
}
python_test() {
esetup.py test
}
python_install_all() {
if use doc; then
local HTML_DOCS=( doc/html/. )
fi
distutils-r1_python_install_all
}

@ -33,10 +33,6 @@ S="${WORKDIR}/${MY_P}"
DOCS=(CHANGES CREDITS README.md)
PATCHES=(
"${FILESDIR}/${P}-exclude_libicule.patch"
)
# we need an exact version match for epydoc to work on a binary module
pkg_setup() {
use doc && DISTUTILS_ALL_SUBPHASE_IMPLS=( 'python2*' )

@ -1,3 +1,4 @@
DIST pyinsane-1.4.0.tar.gz 303703 SHA256 e0ba69440f366854c26cb4661bf08fdce95eefa4b99a461c5e8d057909210f55 SHA512 ed56f996174be0ab45cae1380eacb0439b0d0549ea6b2e3c34667a2841822412dc99782d7bba7eaae71b70179f0e3cd5039d38e751ac0598562d68eea1aa8ec8 WHIRLPOOL 48204a0f7b66e8e21b010c3efc8fbcaefd6451bb19a5800e687e3c177b41a149f5b1adc9cdf71e7ce1f16288d2e696061bd028b4e1dce0ae5cf8f739c59de017
DIST pyinsane-2.0.3.tar.gz 322092 SHA256 9dfd70f6542ee64f84568c6a14285d08d8235e0e3a8de73842a1bd8bc5b39250 SHA512 3df4a1316680500bec03c54ddb0e4735f732437a4356e4d4b56a901d5a87be71447ec66bec349016ce869bc955f1acb99edf7b158ee67764653a797ecc3bb29b WHIRLPOOL c9fba19bc177ccd32dae16784bb8fd4f355226a9c628c9fc2e568c5b9c8b77b64d7de2ef2368ba6e979dea823191a32791015fb37afcb33292b30707400dc427
DIST pyinsane-2.0.6.tar.gz 322776 SHA256 039e6b462c510edb62bd2fc781c60eea60e7cdac836016195cabeff894d4d203 SHA512 4dac60e3a193f4e4a693ffe77196aebde690a36b89d6a9801ccc7e69a43c81229540e1a250455a3f61ecec655f5bfba9efab83801009263a5a2076fdda676fde WHIRLPOOL 8c4e2ca54507b51cbc46145bb1b3639e72f68a09da02bed6feae8e73b102f5940d64978fd5775ed979075ed30069dfcc4e63b3d4875e417eee4429ba91673756
DIST pyinsane-2.0.7.tar.gz 323240 SHA256 e6a75f8ed0800c6be53f53cceecef70728f915f488138f4e612dd1e6e7e82374 SHA512 8b6f3325c4ca63e18e0fd5cd808fce701186548a13202d8a0c9a6b8106e8995c9cecf4107aa2225207a4e25b7b7720e2bd7bab4171d372c2ff9301dd129b7ec7 WHIRLPOOL 2a6b93734d3d9108093edea5ee6364488a0a80a3f7cd935b208593eae4e6bee280d18a705236f20ea3c9d8f4ac76e9e10348280938b893f4f9009e1d77b26424

@ -0,0 +1,29 @@
# 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_4,3_5} )
inherit distutils-r1
DESCRIPTION="Python implementation of the Sane API and abstration layer"
HOMEPAGE="https://github.com/jflesch/pyinsane"
SRC_URI="https://github.com/jflesch/pyinsane/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="2"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RDEPEND="media-gfx/sane-backends
dev-python/pillow[${PYTHON_USEDEP}]"
DEPEND="${RDEPEND}
test? ( dev-python/nose[${PYTHON_USEDEP}] )"
RESTRICT="test" # Tests require at least one scanner with a flatbed and an ADF
python_prepare_all() {
sed -e "/'nose>=1.0'/d" -i setup.py || die
distutils-r1_python_prepare_all
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save