parent
aded141614
commit
29e6455604
@ -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
|
||||
}
|
@ -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"
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
@ -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}"
|
@ -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}"
|
@ -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
|
||||
}
|
@ -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)
|
||||
|
@ -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 :
|
@ -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 "�"
|
||||
[ 1, 1, E (`Bad_token ("�",
|
||||
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 "�"
|
||||
@@ -142,22 +142,22 @@ let tests = [
|
||||
reference, "missing ';' at end"));
|
||||
1, 1, E (`Bad_token ("�",
|
||||
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 "�"
|
||||
[ 1, 1, E (`Bad_token ("�", 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 "�"
|
||||
[ 1, 1, E (`Bad_token ("�", 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 "�"
|
||||
[ 1, 1, E (`Bad_token ("�", 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 ""
|
||||
@@ -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
@ -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
|
@ -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 """
|
||||
- | `Uchar 38 ->
|
||||
- Buffer.add_string buffer "&"
|
||||
- | `Uchar 60 ->
|
||||
- Buffer.add_string buffer "<"
|
||||
- | `Uchar 62 ->
|
||||
- Buffer.add_string buffer ">"
|
||||
- | `Uchar code ->
|
||||
+ | `Uchar ucode ->
|
||||
+ begin
|
||||
+ match Uchar.to_int ucode with
|
||||
+ | 34 -> Buffer.add_string buffer """
|
||||
+ | 38 -> Buffer.add_string buffer "&"
|
||||
+ | 60 -> Buffer.add_string buffer "<"
|
||||
+ | 62 -> Buffer.add_string buffer ">"
|
||||
+ | 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
|
@ -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 +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}"
|
@ -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,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
|
||||
}
|
@ -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"
|
||||
|
@ -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=""
|
@ -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,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
|
||||
}
|
@ -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…
Reference in new issue