summaryrefslogtreecommitdiff
path: root/dev-php
diff options
context:
space:
mode:
Diffstat (limited to 'dev-php')
-rw-r--r--dev-php/libphutil/ChangeLog3
-rw-r--r--dev-php/libphutil/Manifest4
-rw-r--r--dev-php/libphutil/libphutil-9999.ebuild60
3 files changed, 62 insertions, 5 deletions
diff --git a/dev-php/libphutil/ChangeLog b/dev-php/libphutil/ChangeLog
index ce73daf5..5cc09d73 100644
--- a/dev-php/libphutil/ChangeLog
+++ b/dev-php/libphutil/ChangeLog
@@ -1,3 +1,6 @@
+ 02 Sep 2013; Bertrand Jacquin <beber@meleeweb.net> libphutil-9999.ebuild:
+ dev-php/libphutil: Implement FEATURES=test
+
22 Aug 2013; Bertrand Jacquin <beber@meleeweb.net> libphutil-9999.ebuild:
dev-php/libphutil: Add missing DEPEND to awk for build
diff --git a/dev-php/libphutil/Manifest b/dev-php/libphutil/Manifest
index e73ab7ba..9ba12a4a 100644
--- a/dev-php/libphutil/Manifest
+++ b/dev-php/libphutil/Manifest
@@ -1,4 +1,4 @@
AUX 0001-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch 2166 SHA256 b4043eaf30612f01879c19083ff261b6f9949e3f94389e29cab2ab8635290bb8 WHIRLPOOL 5b8a10f9abb54a1d1253c94f7991ea9c958f9ac1a2988c56c0d951fadf8138df7ac689844d5c6278a27f3d469514de12dbd4dc68e3881715b7349b9bc9ba0096
-EBUILD libphutil-9999.ebuild 987 SHA256 820b6f629fa787973ca544cab4503674be13ad5b1e7555f6f5d7f1f756e45fec WHIRLPOOL 9cf270a936d62fbf808fcd905a5ca33f3b1ef193df8d74d6e8b1d3f08ccc490b4744145a803e784b806118e4d640f8234891bfcf434def0fff9ae919c8ee763a
-MISC ChangeLog 1148 SHA256 3fc3fed2413b6741cf44f949008d336a0275a7ef9b545df303b9127b361e96d9 WHIRLPOOL b0d73983b80c4906ed1fcf1b4194d6afc69b2f8d859d68ae31d9dc48007d9851dd314a809ba54dcff0700108b092b39ae14730f2e2a5b6fca9c5b13279c0bbe3
+EBUILD libphutil-9999.ebuild 2559 SHA256 38c4a528409b29faff775144ee460591bf46bd01d0b4e84b573fbd8bb85635f7 WHIRLPOOL 5f693c27d660bce07a66def1a942e04b00ede332917267d8a406358b22a1443134d5f08ee36f3f061ff6608c6c86693a21b1abbc94015217a95e5cf069056a1f
+MISC ChangeLog 1270 SHA256 4d206ce7585c80d58794a69158ccd06c9980c8e17a33cf8d4326b9e298e9fa81 WHIRLPOOL c98f93eb97e21adb4dcb8f2fc5b0aa5674acf03972cfd4754b88a41a30c076f7dcc1106aafc3154c024c24d43ea8e05fb29d3119d2fa2fde74ecdf3f4f8110e2
MISC metadata.xml 254 SHA256 c56bc3d6780712c960298c70bb86867aeb6661e97a317cc624516b0e16b72fcc WHIRLPOOL 2ebbfaa14ef0c1847284fe64a79f052cd7e73b25a724fba728c084aaaf2dd0692e068eedcf42ccef7e205077f00c35780ded7ec69118dc01ddb988b4802e46ae
diff --git a/dev-php/libphutil/libphutil-9999.ebuild b/dev-php/libphutil/libphutil-9999.ebuild
index 084ae4d1..4d6e5f29 100644
--- a/dev-php/libphutil/libphutil-9999.ebuild
+++ b/dev-php/libphutil/libphutil-9999.ebuild
@@ -3,7 +3,7 @@
# $Header: $
EAPI=5
-inherit eutils git-2
+inherit eutils toolchain-funcs git-2
DESCRIPTION="Collection of utility classes and functions for PHP used by phabricator"
HOMEPAGE="http://www.phabricator.org"
@@ -12,23 +12,77 @@ EGIT_REPO_URI="git://github.com/facebook/libphutil.git"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS=""
-IUSE="ssl"
+IUSE="ssl test"
-DEPEND="virtual/awk:0"
+DEPEND="virtual/awk:0
+ test? (
+ sys-devel/bison:0
+ >=sys-devel/flex-2.5.35:0
+ =www-client/arcanist-${PV}:0
+ dev-lang/php[cli]
+ )"
RDEPEND=">=dev-lang/php-5.2.3[curl,iconv,json,mysql,mysqli,pcntl,ssl?,unicode]
dev-php/pecl-apc:0"
src_prepare() {
epatch "${FILESDIR}/0001-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch"
+
+ if use test ; then
+ tc-export AR CXX
+ fi
+}
+
+src_compile() {
+ if use test ; then
+ cd support/xhpast
+
+ # Avoid sandbox violation for dev-lang/php[snmp]
+ # php -f generate_nodes.php'
+ #
+ # * ACCESS DENIED: open_wr: /var/lib/net-snmp/mib_indexes/0
+ # abs_path: /var/lib/net-snmp/mib_indexes/0
+ # res_path: /var/lib/net-snmp/mib_indexes/0
+ # /usr/lib64/libsandbox.so(+0xd9d1)[0x7f226c8899d1]
+ # /usr/lib64/libsandbox.so(+0xdaf8)[0x7f226c889af8]
+ # /usr/lib64/libsandbox.so(+0x59cf)[0x7f226c8819cf]
+ # /usr/lib64/libsandbox.so(fopen+0x7c)[0x7f226c8843ec]
+ # /usr/lib64/libnetsnmp.so.30(netsnmp_mibindex_new+0x48)[0x7f22695f55e8]
+ # /usr/lib64/libnetsnmp.so.30(add_mibdir+0x9c)[0x7f226960a00c]
+ # /usr/lib64/libnetsnmp.so.30(netsnmp_init_mib+0xca)[0x7f22695f4bea]
+ # /usr/lib64/libnetsnmp.so.30(init_snmp+0x32d)[0x7f226961c2dd]
+ # php(zm_startup_snmp+0x51)[0x7f226cf81e11]
+ # php(zend_startup_module_ex+0x11a)[0x7f226d0bccea]
+ # /proc/15834/cmdline: php -f generate_nodes.php
+ #
+ # See snmp_config(5)
+ export SNMP_PERSISTENT_DIR="${T}"
+
+ emake
+ emake install
+ fi
+}
+
+src_test() {
+ arc unit --everything --no-coverage || die "arc unit failed"
}
src_install() {
rm -r scripts/daemon/torture
rm scripts/build_xhpast.sh
+ rm src/parser/xhpast/bin/xhpast.exe
+
+ if ! use test ; then
+ rm -r src/parser/xhpast/bin
+ fi
insinto "/usr/share/php/${PN}"
doins -r scripts src
+ if use test ; then
+ fperms 755 "/usr/share/php/${PN}/src/parser/xhpast/bin/xhpast"
+ dosym "/usr/share/php/${PN}/src/parser/xhpast/bin/xhpast" /usr/bin/xhpast
+ fi
+
# Make executable all shebanged files
find "${ED}" -type f \
| xargs -n 1 --no-run-if-empty -- \