From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- dev-libs/xapian-bindings/Manifest | 12 ++ .../xapian-bindings-1.3.6-allow-ruby-2.0.patch | 12 ++ dev-libs/xapian-bindings/metadata.xml | 8 + .../xapian-bindings/xapian-bindings-1.2.22.ebuild | 203 +++++++++++++++++++++ .../xapian-bindings/xapian-bindings-1.2.24.ebuild | 203 +++++++++++++++++++++ .../xapian-bindings/xapian-bindings-1.2.25.ebuild | 203 +++++++++++++++++++++ .../xapian-bindings/xapian-bindings-1.4.4.ebuild | 158 ++++++++++++++++ 7 files changed, 799 insertions(+) create mode 100644 dev-libs/xapian-bindings/Manifest create mode 100644 dev-libs/xapian-bindings/files/xapian-bindings-1.3.6-allow-ruby-2.0.patch create mode 100644 dev-libs/xapian-bindings/metadata.xml create mode 100644 dev-libs/xapian-bindings/xapian-bindings-1.2.22.ebuild create mode 100644 dev-libs/xapian-bindings/xapian-bindings-1.2.24.ebuild create mode 100644 dev-libs/xapian-bindings/xapian-bindings-1.2.25.ebuild create mode 100644 dev-libs/xapian-bindings/xapian-bindings-1.4.4.ebuild (limited to 'dev-libs/xapian-bindings') diff --git a/dev-libs/xapian-bindings/Manifest b/dev-libs/xapian-bindings/Manifest new file mode 100644 index 000000000000..e927425b48a8 --- /dev/null +++ b/dev-libs/xapian-bindings/Manifest @@ -0,0 +1,12 @@ +AUX xapian-bindings-1.3.6-allow-ruby-2.0.patch 477 SHA256 3805bcf6f89888a22ecaa755feffd6707230892f885fb7f5121b26bb82a3726c SHA512 ed9d5a5542054cb9a239d1adfb6e88bfeb9a4931545b9b60208f9a9a8658822329005fae6707fcaebb08e16ece3a8dc44eb23e0f8dd045bce16aa7b008243198 WHIRLPOOL a65144ef393d4861d94e4be58c0f5a401e1fcdf2b9c9787b6b5b1f7c7eaab3c027e54d8a2436f44b1f5fcd5f02098026aabe5428c5333d8344559b9cc54bef01 +DIST xapian-bindings-1.2.22.tar.xz 844040 SHA256 b15ca7984980a1d2aedd3378648ef5f3889cb39a047bac1522a8e5d04f0a8557 SHA512 0eec204ebb92f1230b9dbd080ad2b56ea5fa8e6170eb4354556e5790c7a7da7ba4c8475aaf86fb8f10f102a461d91590184271220626315f55c0631e73e122e0 WHIRLPOOL 05ac5b31d73f9de0c101da832ef289f6a505baa68216eba6fa0cf80df1709feef7e42c7b8f4cf9af35f775e8514c6d4b944c2acebffff10bc558a83305a637ce +DIST xapian-bindings-1.2.24.tar.xz 886148 SHA256 0c2a0df0a4616e2bd8e578d372c9bb4684780573abebbd1ac515502177229965 SHA512 aaedac02ec9fb192ef8b45b07bef5584bc60aff7068c2e3fa0008430ed8296a653780cad04176431d81fe014802df333a3090469dce63204923eead15e6bbaef WHIRLPOOL 996b960727a79dbe669ae8139863c3896c6efdbe781177098d00960982b86a43739433c69db32e62b6660dd4751736d859f5d950d26d6b635c310c35d75a8a0f +DIST xapian-bindings-1.2.25.tar.xz 1711860 SHA256 5f07425d6c5fc540fab965cd011bb043e3ee0df7da03a8814d6fc20dc5e9dd0f SHA512 5d27b2ae2722409ea99a1b9e6bf3f5c61ed9195b67121c090f1533340d3b11c546014985d0989a0725b60a07b392b9705bce054495f423bd3a7c99835aa336c7 WHIRLPOOL aa5c5c310bee6d10f75bb0586386982ec9c32af0b9fbffde8f8c12c37d4a306c66bea69f6dd5502aa6ca93d9d288720fef0d8f7ab6bcea235803c2e3c5b3e57e +DIST xapian-bindings-1.4.4.tar.xz 1117140 SHA256 3b323eac41c42750b7dacc9319b1477a7c1b552c95f590127643dee3b44d8a39 SHA512 006e771b3ea654130b4f76f1a1caee576fd5a3fa6317ca44f1e5483671e8c83073ecbde4f3fc7f84c75590eec53acb59701af4cf9bcd72355ed9d53924492b53 WHIRLPOOL 6932654e8fb4feea2de6db9f58273ab1fd253e0a90992377224c94a671979e102992052396fc319a5a3a8b3122d6a12d43a4bcd73e81e9dfc2b1a3b04838beae +EBUILD xapian-bindings-1.2.22.ebuild 5543 SHA256 a2e433ef7f014430f40e53005a0d0799fae682c75adf1df4919842b22360c49a SHA512 f854e192cfad5da24d2e2334b49e122971dcdf058e1e0a4b29227770906d2e9d3731a782857326f31fe639b347bca66e6c67deff38a18ec77c374ba12bf42dbf WHIRLPOOL dd57b7c016c019fdb940d32b4b4e7af85f21476f7c2564d68d987018c151d193435e455c1e3d6b480f9130f8a0b668ee03949ebcc2ed2553cf5ea8ff3fefba1b +EBUILD xapian-bindings-1.2.24.ebuild 5550 SHA256 6666fa0d07b12f775efd5acfccc80731dc76da976682435304c4b2deb9b12d9a SHA512 4961916df0b4cb265b3e4f68566f0c0f66f767c31d762cd044095a897e916910d3adaebc549e90d924ac738435863095664731272c8c12df6be0fd94dc0039c6 WHIRLPOOL 04dd121595ce0031ad00d1e384e1063b86e5deacbc188bf1204bb642ea71f2b0c26aa99f51e74ea3d08ed72aa692e4c26b7921e9a7a7be17fafacad14d4a8e02 +EBUILD xapian-bindings-1.2.25.ebuild 5551 SHA256 e0c63e5f17099410d6c9e62bfc0e1b80d77e4c229816a9d3354e702889fed29c SHA512 cea9b9dbb61721ce41ec481099c8cdc27fc7d6da5b88c7777503348b124442aecb70b0c888d3d1560332679ae3c8a3ab60eacde4b6154abba9c2be60a853c36a WHIRLPOOL 9f801041c82076cf9cf13b5c4c8725b7f2625140d37a2fc39b2394e19cc5f5ec848e871e11fcc8f2cfb6ae90b18d312c2e9d03a63835b988de70704a9cd29b31 +EBUILD xapian-bindings-1.4.4.ebuild 3520 SHA256 9bb44a875a018919b09f9d1d9a7596eabff7bff6f81a46f862a87980ba464b03 SHA512 89eef2160837ca01c277aba1ac4745d59f527f64d71f6a1961da5bcb36f2ce3f0369cf29c6a3a9c0f0ba23cb24f8fe405975f9dff5668de6ac3513eeb15ca491 WHIRLPOOL 5d3a46a75a69a32a1dd2f7fcf614f279402fbdd1db057f2ac9133554fddb8c00899f6af61ac7e43cb83df0a760bea788e99edc6975a2ee033d9cf4ee83682a56 +MISC ChangeLog 11298 SHA256 355a7ec45f8a7f8dab2028fcdfa14c54f2a205275362b8191bb14c21eb0aa0ac SHA512 63a350ab3561b84a1b9aac73bf936e7f0e40a3b8541053c96007571563aac1a44f96c11fbbdf07d2425659d866ed16f81a8c66b97eaa703b0e273b6ba5a07214 WHIRLPOOL cbf7c5432a60e382073265335d5870435bc8fe8984e0930019bc603e1abecaaed1792fab7d9c515e99cfc3466379ece99ab5a106a31717014163ef96622ab412 +MISC ChangeLog-2015 16665 SHA256 166eec91a7534f172df62c046909000890125664c04f559d21476b32c4b2cdae SHA512 136d0ffff7fc842849ba48fd99f009500a829d8f2c755721584abc4725213b0a183d9159b1043fe8b2601550dc41a08bd7910d7ba8edccad81cb22963a23c04a WHIRLPOOL aea2dc8ac317c6610ba06d41c5b412e21d86f9a559be85a3188cafdab6d9207291dac5c891501f1b9a4b3818d1770d366f162cfd97dde0d2d093a8c682e176a3 +MISC metadata.xml 252 SHA256 a590e5133cd97a615db4f977b0e28e5c60c56cac76eb3d339109cdf379003b60 SHA512 cbda7bf9832872764ae776ce16b2966c37a2ba3a1982d9817006fd6b82d7b17146434cde428bf114062a483e9053d2acdcdd004695e6ebf428d19cdc09937c65 WHIRLPOOL b209a730a169969b9e3c4d4612368bc5b30bfa5fae275d98d83ba96fd0ad01d308a8fed4f7d67a7c9fa417c624dfeb23ce89ab58923a8a0b5b1bd68ee73f288c diff --git a/dev-libs/xapian-bindings/files/xapian-bindings-1.3.6-allow-ruby-2.0.patch b/dev-libs/xapian-bindings/files/xapian-bindings-1.3.6-allow-ruby-2.0.patch new file mode 100644 index 000000000000..7851bfe405bb --- /dev/null +++ b/dev-libs/xapian-bindings/files/xapian-bindings-1.3.6-allow-ruby-2.0.patch @@ -0,0 +1,12 @@ +diff -Naur xapian-bindings-1.3.6.orig/configure xapian-bindings-1.3.6/configure +--- xapian-bindings-1.3.6.orig/configure 2016-05-09 06:19:59.000000000 -0400 ++++ xapian-bindings-1.3.6/configure 2016-05-14 13:53:35.223526344 -0400 +@@ -18695,7 +18695,7 @@ + fi + RUBY= + ;; +- [01].*|2.0.*) ++ [01].*) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $version (too old)" >&5 + $as_echo "$version (too old)" >&6; } + if test yes = "$with_ruby" ; then diff --git a/dev-libs/xapian-bindings/metadata.xml b/dev-libs/xapian-bindings/metadata.xml new file mode 100644 index 000000000000..d920e3ba3e56 --- /dev/null +++ b/dev-libs/xapian-bindings/metadata.xml @@ -0,0 +1,8 @@ + + + + + blueness@gentoo.org + Anthony G. Basile + + diff --git a/dev-libs/xapian-bindings/xapian-bindings-1.2.22.ebuild b/dev-libs/xapian-bindings/xapian-bindings-1.2.22.ebuild new file mode 100644 index 000000000000..f04d5d805817 --- /dev/null +++ b/dev-libs/xapian-bindings/xapian-bindings-1.2.22.ebuild @@ -0,0 +1,203 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads" + +USE_PHP="php5-5" + +PHP_EXT_NAME="xapian" +PHP_EXT_INI="yes" +PHP_EXT_OPTIONAL_USE="php" + +#mono violates sandbox, we disable it until we figure this out +#inherit java-pkg-opt-2 mono-env php-ext-source-r2 python +inherit java-pkg-opt-2 php-ext-source-r2 python-r1 toolchain-funcs + +DESCRIPTION="SWIG and JNI bindings for Xapian" +HOMEPAGE="http://www.xapian.org/" +SRC_URI="http://oligarchy.co.uk/xapian/${PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm ia64 ~mips ppc ppc64 sparc x86" +#IUSE="java lua mono perl php python ruby tcl" +#REQUIRED_USE="|| ( java lua mono perl php python ruby tcl )" +IUSE="java lua perl php python ruby tcl" +REQUIRED_USE="|| ( java lua perl php python ruby tcl ) python? ( ${PYTHON_REQUIRED_USE} )" + +COMMONDEPEND="dev-libs/xapian:0/1.2.22 + lua? ( dev-lang/lua:0 ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + ruby? ( dev-lang/ruby:= ) + tcl? ( >=dev-lang/tcl-8.1:0= )" +# mono? ( >=dev-lang/mono-1.0.8 ) +DEPEND="${COMMONDEPEND} + virtual/pkgconfig + java? ( >=virtual/jdk-1.3 )" +RDEPEND="${COMMONDEPEND} + java? ( >=virtual/jre-1.3 )" + +pkg_setup() { + java-pkg-opt-2_pkg_setup +} + +src_unpack() { + default +} + +src_prepare() { + java-pkg-opt-2_src_prepare + if use java; then + sed \ + -e 's/$(JAVAC)/$(JAVAC) $(JAVACFLAGS)/' \ + -i java{/,/org/xapian/errors/,/org/xapian/}Makefile.in || die "sed failed" + fi + + if use python; then + sed \ + -e 's:\(^pkgpylib_DATA = xapian/__init__.py\).*:\1:' \ + -e 's|\(^xapian/__init__.py: modern/xapian.py\)|\1 xapian/_xapian.so|' \ + -i python/Makefile.in || die "sed failed" + fi +} + +src_configure() { + if use java; then + CXXFLAGS="${CXXFLAGS} $(java-pkg_get-jni-cflags)" + fi + + if use perl; then + export PERL_ARCH="$(perl -MConfig -e 'print $Config{installvendorarch}')" + export PERL_LIB="$(perl -MConfig -e 'print $Config{installvendorlib}')" + fi + + if use lua; then + export LUA_LIB="$($(tc-getPKG_CONFIG) --variable=INSTALL_CMOD lua)" + fi + + econf \ + $(use_with java) \ + $(use_with lua) \ + $(use_with perl) \ + $(use_with php) \ + $(use_with python) \ + $(use_with ruby) \ + $(use_with tcl) +# $(use_with mono csharp) \ + + # PHP and Python bindings are built/tested/installed manually. + sed -e "/SUBDIRS =/s/ php//" -i Makefile || die "sed Makefile" + sed -e "/SUBDIRS =/s/ python//" -i Makefile || die "sed Makefile" +} + +src_compile() { + default + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + cp -r php php-${php_slot} + emake -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" + done + fi + + if use python; then + python_copy_sources +# building() { +# emake -C python \ +# PYTHON="$(PYTHON)" \ +# PYTHON_INC="$(python_get_includedir)" \ +# PYTHON_LIB="$(python_get_libdir)" \ +# PYTHON_SO="$("$(PYTHON)" -c 'import distutils.sysconfig; print(distutils.sysconfig.get_config_vars("SO")[0])')" \ +# pkgpylibdir="$(python_get_sitedir)/xapian" +# } + building() { + emake -C python \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" + VERBOSE="1" + } + python_foreach_impl building + fi +} + +src_test() { + default + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + emake -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" \ + check + done + fi + + if use python; then + testing() { + emake -C python \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" \ + VERBOSE="1" \ + check + } + python_foreach_impl testing + fi +} + +src_install () { + emake DESTDIR="${D}" install + + if use java; then + java-pkg_dojar java/built/xapian_jni.jar + # TODO: make the build system not install this... + java-pkg_doso "${D}/${S}/java/built/libxapian_jni.so" + rm "${D}/${S}/java/built/libxapian_jni.so" + rmdir -p "${D}/${S}/java/built" + rmdir -p "${D}/${S}/java/native" + fi + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + emake DESTDIR="${D}" -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" \ + install + done + + php-ext-source-r2_createinifiles + fi + + if use python; then + installation() { + emake -C python \ + DESTDIR="${D}" \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" \ + VERBOSE="1" \ + install + } + python_foreach_impl installation + fi + + # For some USE combinations this directory is not created + if [[ -d "${D}/usr/share/doc/xapian-bindings" ]]; then + mv "${D}/usr/share/doc/xapian-bindings" "${D}/usr/share/doc/${PF}" + fi + + dodoc AUTHORS HACKING NEWS TODO README +} diff --git a/dev-libs/xapian-bindings/xapian-bindings-1.2.24.ebuild b/dev-libs/xapian-bindings/xapian-bindings-1.2.24.ebuild new file mode 100644 index 000000000000..c862a7af6066 --- /dev/null +++ b/dev-libs/xapian-bindings/xapian-bindings-1.2.24.ebuild @@ -0,0 +1,203 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads" + +USE_PHP="php5-5 php5-6" + +PHP_EXT_NAME="xapian" +PHP_EXT_INI="yes" +PHP_EXT_OPTIONAL_USE="php" + +#mono violates sandbox, we disable it until we figure this out +#inherit java-pkg-opt-2 mono-env php-ext-source-r2 python +inherit java-pkg-opt-2 php-ext-source-r2 python-r1 toolchain-funcs + +DESCRIPTION="SWIG and JNI bindings for Xapian" +HOMEPAGE="http://www.xapian.org/" +SRC_URI="http://oligarchy.co.uk/xapian/${PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm ia64 ~mips ppc ppc64 sparc x86" +#IUSE="java lua mono perl php python ruby tcl" +#REQUIRED_USE="|| ( java lua mono perl php python ruby tcl )" +IUSE="java lua perl php python ruby tcl" +REQUIRED_USE="|| ( java lua perl php python ruby tcl ) python? ( ${PYTHON_REQUIRED_USE} )" + +COMMONDEPEND="dev-libs/xapian:0/1.2.22 + lua? ( dev-lang/lua:0 ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + ruby? ( dev-lang/ruby:= ) + tcl? ( >=dev-lang/tcl-8.1:0= )" +# mono? ( >=dev-lang/mono-1.0.8 ) +DEPEND="${COMMONDEPEND} + virtual/pkgconfig + java? ( >=virtual/jdk-1.3 )" +RDEPEND="${COMMONDEPEND} + java? ( >=virtual/jre-1.3 )" + +pkg_setup() { + java-pkg-opt-2_pkg_setup +} + +src_unpack() { + default +} + +src_prepare() { + java-pkg-opt-2_src_prepare + if use java; then + sed \ + -e 's/$(JAVAC)/$(JAVAC) $(JAVACFLAGS)/' \ + -i java{/,/org/xapian/errors/,/org/xapian/}Makefile.in || die "sed failed" + fi + + if use python; then + sed \ + -e 's:\(^pkgpylib_DATA = xapian/__init__.py\).*:\1:' \ + -e 's|\(^xapian/__init__.py: modern/xapian.py\)|\1 xapian/_xapian.so|' \ + -i python/Makefile.in || die "sed failed" + fi +} + +src_configure() { + if use java; then + CXXFLAGS="${CXXFLAGS} $(java-pkg_get-jni-cflags)" + fi + + if use perl; then + export PERL_ARCH="$(perl -MConfig -e 'print $Config{installvendorarch}')" + export PERL_LIB="$(perl -MConfig -e 'print $Config{installvendorlib}')" + fi + + if use lua; then + export LUA_LIB="$($(tc-getPKG_CONFIG) --variable=INSTALL_CMOD lua)" + fi + + econf \ + $(use_with java) \ + $(use_with lua) \ + $(use_with perl) \ + $(use_with php) \ + $(use_with python) \ + $(use_with ruby) \ + $(use_with tcl) +# $(use_with mono csharp) \ + + # PHP and Python bindings are built/tested/installed manually. + sed -e "/SUBDIRS =/s/ php//" -i Makefile || die "sed Makefile" + sed -e "/SUBDIRS =/s/ python//" -i Makefile || die "sed Makefile" +} + +src_compile() { + default + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + cp -r php php-${php_slot} + emake -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" + done + fi + + if use python; then + python_copy_sources +# building() { +# emake -C python \ +# PYTHON="$(PYTHON)" \ +# PYTHON_INC="$(python_get_includedir)" \ +# PYTHON_LIB="$(python_get_libdir)" \ +# PYTHON_SO="$("$(PYTHON)" -c 'import distutils.sysconfig; print(distutils.sysconfig.get_config_vars("SO")[0])')" \ +# pkgpylibdir="$(python_get_sitedir)/xapian" +# } + building() { + emake -C python \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" + VERBOSE="1" + } + python_foreach_impl building + fi +} + +src_test() { + default + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + emake -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" \ + check + done + fi + + if use python; then + testing() { + emake -C python \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" \ + VERBOSE="1" \ + check + } + python_foreach_impl testing + fi +} + +src_install () { + emake DESTDIR="${D}" install + + if use java; then + java-pkg_dojar java/built/xapian_jni.jar + # TODO: make the build system not install this... + java-pkg_doso "${D}/${S}/java/built/libxapian_jni.so" + rm "${D}/${S}/java/built/libxapian_jni.so" + rmdir -p "${D}/${S}/java/built" + rmdir -p "${D}/${S}/java/native" + fi + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + emake DESTDIR="${D}" -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" \ + install + done + + php-ext-source-r2_createinifiles + fi + + if use python; then + installation() { + emake -C python \ + DESTDIR="${D}" \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" \ + VERBOSE="1" \ + install + } + python_foreach_impl installation + fi + + # For some USE combinations this directory is not created + if [[ -d "${D}/usr/share/doc/xapian-bindings" ]]; then + mv "${D}/usr/share/doc/xapian-bindings" "${D}/usr/share/doc/${PF}" + fi + + dodoc AUTHORS HACKING NEWS TODO README +} diff --git a/dev-libs/xapian-bindings/xapian-bindings-1.2.25.ebuild b/dev-libs/xapian-bindings/xapian-bindings-1.2.25.ebuild new file mode 100644 index 000000000000..cebcd59162e3 --- /dev/null +++ b/dev-libs/xapian-bindings/xapian-bindings-1.2.25.ebuild @@ -0,0 +1,203 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads" + +USE_PHP="php5-6" + +PHP_EXT_NAME="xapian" +PHP_EXT_INI="yes" +PHP_EXT_OPTIONAL_USE="php" + +#mono violates sandbox, we disable it until we figure this out +#inherit java-pkg-opt-2 mono-env php-ext-source-r3 python +inherit java-pkg-opt-2 php-ext-source-r3 python-r1 toolchain-funcs + +DESCRIPTION="SWIG and JNI bindings for Xapian" +HOMEPAGE="http://www.xapian.org/" +SRC_URI="http://oligarchy.co.uk/xapian/${PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" +#IUSE="java lua mono perl php python ruby tcl" +#REQUIRED_USE="|| ( java lua mono perl php python ruby tcl )" +IUSE="java lua perl php python ruby tcl" +REQUIRED_USE="|| ( java lua perl php python ruby tcl ) python? ( ${PYTHON_REQUIRED_USE} )" + +COMMONDEPEND="dev-libs/xapian:0/1.2.22 + lua? ( dev-lang/lua:0 ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + ruby? ( dev-lang/ruby:= ) + tcl? ( >=dev-lang/tcl-8.1:0= )" +# mono? ( >=dev-lang/mono-1.0.8 ) +DEPEND="${COMMONDEPEND} + virtual/pkgconfig + java? ( >=virtual/jdk-1.3 )" +RDEPEND="${COMMONDEPEND} + java? ( >=virtual/jre-1.3 )" + +pkg_setup() { + java-pkg-opt-2_pkg_setup +} + +src_unpack() { + default +} + +src_prepare() { + java-pkg-opt-2_src_prepare + if use java; then + sed \ + -e 's/$(JAVAC)/$(JAVAC) $(JAVACFLAGS)/' \ + -i java{/,/org/xapian/errors/,/org/xapian/}Makefile.in || die "sed failed" + fi + + if use python; then + sed \ + -e 's:\(^pkgpylib_DATA = xapian/__init__.py\).*:\1:' \ + -e 's|\(^xapian/__init__.py: modern/xapian.py\)|\1 xapian/_xapian.so|' \ + -i python/Makefile.in || die "sed failed" + fi +} + +src_configure() { + if use java; then + CXXFLAGS="${CXXFLAGS} $(java-pkg_get-jni-cflags)" + fi + + if use perl; then + export PERL_ARCH="$(perl -MConfig -e 'print $Config{installvendorarch}')" + export PERL_LIB="$(perl -MConfig -e 'print $Config{installvendorlib}')" + fi + + if use lua; then + export LUA_LIB="$($(tc-getPKG_CONFIG) --variable=INSTALL_CMOD lua)" + fi + + econf \ + $(use_with java) \ + $(use_with lua) \ + $(use_with perl) \ + $(use_with php) \ + $(use_with python) \ + $(use_with ruby) \ + $(use_with tcl) +# $(use_with mono csharp) \ + + # PHP and Python bindings are built/tested/installed manually. + sed -e "/SUBDIRS =/s/ php//" -i Makefile || die "sed Makefile" + sed -e "/SUBDIRS =/s/ python//" -i Makefile || die "sed Makefile" +} + +src_compile() { + default + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + cp -r php php-${php_slot} + emake -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" + done + fi + + if use python; then + python_copy_sources +# building() { +# emake -C python \ +# PYTHON="$(PYTHON)" \ +# PYTHON_INC="$(python_get_includedir)" \ +# PYTHON_LIB="$(python_get_libdir)" \ +# PYTHON_SO="$("$(PYTHON)" -c 'import distutils.sysconfig; print(distutils.sysconfig.get_config_vars("SO")[0])')" \ +# pkgpylibdir="$(python_get_sitedir)/xapian" +# } + building() { + emake -C python \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" + VERBOSE="1" + } + python_foreach_impl building + fi +} + +src_test() { + default + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + emake -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" \ + check + done + fi + + if use python; then + testing() { + emake -C python \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" \ + VERBOSE="1" \ + check + } + python_foreach_impl testing + fi +} + +src_install () { + emake DESTDIR="${D}" install + + if use java; then + java-pkg_dojar java/built/xapian_jni.jar + # TODO: make the build system not install this... + java-pkg_doso "${D}/${S}/java/built/libxapian_jni.so" + rm "${D}/${S}/java/built/libxapian_jni.so" + rmdir -p "${D}/${S}/java/built" + rmdir -p "${D}/${S}/java/native" + fi + + if use php; then + local php_slot + for php_slot in $(php_get_slots); do + emake DESTDIR="${D}" -C php-${php_slot} \ + PHP="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php" \ + PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" \ + PHP_EXTENSION_DIR="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --extension-dir)" \ + PHP_INC="$("${EPREFIX}/usr/$(get_libdir)/${php_slot}/bin/php-config" --includes)" \ + install + done + + php-ext-source-r3_createinifiles + fi + + if use python; then + installation() { + emake -C python \ + DESTDIR="${D}" \ + PYTHON_INC="$(python_get_includedir)" \ + pkgpylibdir="$(python_get_sitedir)/xapian" \ + VERBOSE="1" \ + install + } + python_foreach_impl installation + fi + + # For some USE combinations this directory is not created + if [[ -d "${D}/usr/share/doc/xapian-bindings" ]]; then + mv "${D}/usr/share/doc/xapian-bindings" "${D}/usr/share/doc/${PF}" + fi + + dodoc AUTHORS HACKING NEWS TODO README +} diff --git a/dev-libs/xapian-bindings/xapian-bindings-1.4.4.ebuild b/dev-libs/xapian-bindings/xapian-bindings-1.4.4.ebuild new file mode 100644 index 000000000000..5177ca3d309d --- /dev/null +++ b/dev-libs/xapian-bindings/xapian-bindings-1.4.4.ebuild @@ -0,0 +1,158 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python{2_7,3_4,3_5} ) +PYTHON_REQ_USE="threads(+)" + +USE_PHP="php5-6" + +PHP_EXT_NAME="xapian" +PHP_EXT_INI="yes" +PHP_EXT_OPTIONAL_USE="php" + +inherit distutils-r1 libtool java-pkg-opt-2 mono-env php-ext-source-r2 toolchain-funcs + +DESCRIPTION="SWIG and JNI bindings for Xapian" +HOMEPAGE="http://www.xapian.org/" +SRC_URI="http://oligarchy.co.uk/xapian/${PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm ia64 ~mips ~ppc ~ppc64 ~sparc x86" +IUSE="java lua mono perl php python ruby tcl" +REQUIRED_USE="|| ( java lua mono perl php python ruby tcl )" + +COMMONDEPEND="dev-libs/xapian:0/30 + lua? ( dev-lang/lua:= ) + perl? ( dev-lang/perl:= ) + python? ( + dev-python/sphinx[${PYTHON_USEDEP}] + ${PYTHON_DEPS} + ) + ruby? ( dev-lang/ruby:= ) + tcl? ( dev-lang/tcl:= ) + mono? ( dev-lang/mono )" +DEPEND="${COMMONDEPEND} + virtual/pkgconfig + java? ( >=virtual/jdk-1.6 )" +RDEPEND="${COMMONDEPEND} + java? ( >=virtual/jre-1.6 )" + +pkg_setup() { + use mono && mono-env_pkg_setup + use java && java-pkg-opt-2_pkg_setup +} + +src_prepare() { + use java && java-pkg-opt-2_src_prepare + + # http://trac.xapian.org/ticket/702 + export XAPIAN_CONFIG="/usr/bin/xapian-config" + + # Accept ruby 2.0 - patch configure directly to avoid autoreconf + epatch "${FILESDIR}"/${PN}-1.3.6-allow-ruby-2.0.patch + + if use python; then + python_copy_sources + fi +} + +src_configure() { + local conf=( + --disable-documentation + --without-csharp + --without-python + --without-python3 + ) + + if use java; then + export CXXFLAGS="${CXXFLAGS} $(java-pkg_get-jni-cflags)" + conf+=( --with-java ) + fi + + if use perl; then + export PERL_ARCH="$(perl -MConfig -e 'print $Config{installvendorarch}')" + export PERL_LIB="$(perl -MConfig -e 'print $Config{installvendorlib}')" + conf+=( --with-perl ) + fi + + if use lua; then + export LUA_LIB="$($(tc-getPKG_CONFIG) --variable=INSTALL_CMOD lua)" + conf+=( --with-lua ) + fi + + if use php; then + if has_version "=dev-lang/php-7*"; then + conf+=( --with-php7 ) + else + conf+=( --with-php ) + fi + fi + + use ruby && conf+=( --with-ruby ) + use tcl && conf+=( --with-tcl ) + use mono && conf+=( --with-csharp ) + + econf ${conf[@]} + + python_configure() { + local myconf=( + --disable-documentation + --without-java + --without-lua + --without-csharp + --without-perl + --without-php + --without-ruby + --without-tcl + ) + if python_is_python3; then + myconf+=( --with-python3 ) + else + myconf+=( --with-python ) + fi + + # Avoid sandbox failures when compiling modules + addpredict "$(python_get_sitedir)" + + econf "${myconf[@]}" + } + + if use python; then + python_foreach_impl run_in_build_dir python_configure + fi +} + +src_compile() { + default + if use python; then + unset PYTHONDONTWRITEBYTECODE + python_foreach_impl run_in_build_dir emake + fi +} + +src_install() { + emake DESTDIR="${D}" install + + if use java; then + java-pkg_dojar java/built/xapian_jni.jar + # TODO: make the build system not install this... + java-pkg_doso java/.libs/libxapian_jni.so + rm -rf "${D}var" || die "could not remove java cruft!" + fi + + use php && php-ext-source-r2_createinifiles + + if use python; then + python_foreach_impl run_in_build_dir emake DESTDIR="${D}" install + fi + + # For some USE combinations this directory is not created + if [[ -d "${D}/usr/share/doc/xapian-bindings" ]]; then + mv "${D}/usr/share/doc/xapian-bindings" "${D}/usr/share/doc/${PF}" || die + fi + + dodoc AUTHORS HACKING NEWS TODO README +} -- cgit v1.2.3