From de53dd7a33ad5bdc42629f06adb8dbcbc2e827eb Mon Sep 17 00:00:00 2001 From: Max Rees Date: Wed, 27 Dec 2017 10:58:37 +0000 Subject: [PATCH] user/clucene: new package !check due to segfaults for the following tests: threads reuters ramdirectory analyzers indexwriter indexmodifier queryparser highfreq search datefilter --- user/clucene/APKBUILD | 71 ++++++++++++++++++++++ ...clucene-core-2.3.3.4-install_contribs_lib.patch | 42 +++++++++++++ user/clucene/clucene-core-2.3.3.4-pkgconfig.patch | 12 ++++ user/clucene/clucene-core-2.3.3.4-usleep.patch | 12 ++++ 4 files changed, 137 insertions(+) create mode 100644 user/clucene/APKBUILD create mode 100644 user/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch create mode 100644 user/clucene/clucene-core-2.3.3.4-pkgconfig.patch create mode 100644 user/clucene/clucene-core-2.3.3.4-usleep.patch diff --git a/user/clucene/APKBUILD b/user/clucene/APKBUILD new file mode 100644 index 0000000..f3a4a21 --- /dev/null +++ b/user/clucene/APKBUILD @@ -0,0 +1,71 @@ +# Maintainer: Max Rees +pkgname=clucene +pkgver=2.3.3.4 +pkgrel=5 +pkgdesc="A C++ port of Lucene" +url="http://www.sourceforge.net/projects/clucene" +arch="all" +license="LGPLv2+ or ASL 2.0" +depends="" +depends_dev="zlib-dev boost-dev" +makedepends="cmake $depends_dev" +install="" +subpackages="$pkgname-dev $pkgname-contribs" +source="http://downloads.sourceforge.net/clucene/clucene-core-$pkgver.tar.gz + clucene-core-2.3.3.4-pkgconfig.patch + clucene-core-2.3.3.4-install_contribs_lib.patch + clucene-core-2.3.3.4-usleep.patch + " +builddir="$srcdir/clucene-core-$pkgver" +options="!check" + +prepare() { + default_prepare + cd "$builddir" + sed -ie '/ADD_SUBDIRECTORY (src\/ext)/d' \ + CMakeLists.txt + rm -rf src/ext +} + +build() { + cd "$builddir" + cmake . -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_CONTRIBS_LIB=BOOL:ON \ + -DLIB_DESTINATION:PATH=/usr/lib \ + -DLUCENE_SYS_INCLUDES:PATH=/usr/lib + #-DICONV_SECOND_ARGUMENT_IS_CONST=0 + make +} + +check() { + cd "$builddir" + # Need to force cmake to update - some sort of race condition + touch CMakeCache.txt + make cl_test + cd bin + # Multiple tests segfault here + ./cl_test +} + +package() { + cd "$builddir" + make install/fast DESTDIR="$pkgdir" + rm -r "$pkgdir"/usr/lib/CLuceneConfig.cmake +} + +contribs() { + pkgdesc="Language specific text analyzers for CLucene" + mkdir -p "$subpkgdir"/usr/lib + mv "$pkgdir"/usr/lib/libclucene-contribs*.so.* "$subpkgdir"/usr/lib/ +} + +dev() { + default_dev + mv "$pkgdir"/usr/lib/CLucene/*.cmake "$subpkgdir"/usr/lib/CLucene/ +} + +sha512sums="1c9da9077edcebd46563bd9e47d330518e0b30061016650a759cfe051e9748fdad8932a472b1cca53a6adafed5f41656527271fc5f55ddfcefb558f0d83286b4 clucene-core-2.3.3.4.tar.gz +b357cb5a1c5d66219f3168724a71af3ebf5c45c752a612d3a69c170b739acc065dc17c261c3a730298ea6c637fe820637a100f73ab03d931734f80bb598fbf55 clucene-core-2.3.3.4-pkgconfig.patch +0aa92635949089196e4e7c579e78761e8751987ef5036320a161a4aaa67da3c63756398c903419c76ea0fbdc8a949e871fcb65be98179a9853a24a5a4cacfde3 clucene-core-2.3.3.4-install_contribs_lib.patch +5de49cb5eba1f9033f28281e0e5ff0e29fe6842ea3e1cb246c12649dc12dedad15e1811b45ccc989a1b743657eb0eeb4937616aa19ec5ee482cd323f54431b99 clucene-core-2.3.3.4-usleep.patch" diff --git a/user/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch b/user/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch new file mode 100644 index 0000000..8fbb3c7 --- /dev/null +++ b/user/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch @@ -0,0 +1,42 @@ +diff -NaurpBb clucene-core-2.3.3.4/CMakeLists.txt clucene-core-2.3.3.4-mod/CMakeLists.txt +--- clucene-core-2.3.3.4/CMakeLists.txt 2011-03-17 03:21:07.000000000 +0300 ++++ clucene-core-2.3.3.4-mod/CMakeLists.txt 2011-08-16 16:56:55.968268152 +0400 +@@ -163,7 +163,7 @@ IF ( BUILD_CONTRIBS ) + SET(BUILD_CONTRIBS_LIB 1) + ENDIF ( BUILD_CONTRIBS ) + IF ( BUILD_CONTRIBS_LIB ) +- ADD_SUBDIRECTORY (src/contribs-lib EXCLUDE_FROM_ALL) ++ ADD_SUBDIRECTORY (src/contribs-lib) + ENDIF ( BUILD_CONTRIBS_LIB ) + + +diff -NaurpBb clucene-core-2.3.3.4/src/contribs-lib/CMakeLists.txt clucene-core-2.3.3.4-mod/src/contribs-lib/CMakeLists.txt +--- clucene-core-2.3.3.4/src/contribs-lib/CMakeLists.txt 2011-03-17 03:21:07.000000000 +0300 ++++ clucene-core-2.3.3.4-mod/src/contribs-lib/CMakeLists.txt 2011-08-16 17:14:13.499275499 +0400 +@@ -106,9 +106,26 @@ add_library(clucene-contribs-lib SHARED + ) + TARGET_LINK_LIBRARIES(clucene-contribs-lib ${clucene_contrib_extra_libs}) + ++#install public headers. ++FOREACH(file ${HEADERS}) ++ get_filename_component(apath ${file} PATH) ++ get_filename_component(aname ${file} NAME) ++ file(RELATIVE_PATH relpath ${CMAKE_SOURCE_DIR}/src/contribs-lib ${apath}) ++ IF ( NOT aname MATCHES "^_.*" ) ++ install(FILES ${file} ++ DESTINATION include/${relpath} ++ COMPONENT development) ++ ENDIF ( NOT aname MATCHES "^_.*" ) ++ENDFOREACH(file) ++ + #set properties on the libraries + SET_TARGET_PROPERTIES(clucene-contribs-lib PROPERTIES + VERSION ${CLUCENE_VERSION} + SOVERSION ${CLUCENE_SOVERSION} + COMPILE_DEFINITIONS_DEBUG _DEBUG + ) ++ ++#and install library ++install(TARGETS clucene-contribs-lib ++ DESTINATION ${LIB_DESTINATION} ++ COMPONENT runtime ) diff --git a/user/clucene/clucene-core-2.3.3.4-pkgconfig.patch b/user/clucene/clucene-core-2.3.3.4-pkgconfig.patch new file mode 100644 index 0000000..aff20d7 --- /dev/null +++ b/user/clucene/clucene-core-2.3.3.4-pkgconfig.patch @@ -0,0 +1,12 @@ +diff -up clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake.pkgconfig_sys_includes clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake +--- clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake.pkgconfig_sys_includes 2011-03-16 19:21:07.000000000 -0500 ++++ clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake 2012-03-19 09:01:00.689263954 -0500 +@@ -6,6 +6,6 @@ includedir=${prefix}/include:${prefix}/i + Name: libclucene + Description: CLucene - a C++ search engine, ported from the popular Apache Lucene + Version: @CLUCENE_VERSION_MAJOR@.@CLUCENE_VERSION_MINOR@.@CLUCENE_VERSION_REVISION@.@CLUCENE_VERSION_PATCH@ +-Libs: -L${prefix}/@LIB_DESTINATION@/ -lclucene-core +-Cflags: -I${prefix}/include -I${prefix}/include/CLucene/ext ++Libs: -L${prefix}/@LIB_DESTINATION@/ -lclucene-core -lclucene-shared ++Cflags: -I${prefix}/include -I${prefix}/include/CLucene/ext -I@LUCENE_SYS_INCLUDES@ + ~ diff --git a/user/clucene/clucene-core-2.3.3.4-usleep.patch b/user/clucene/clucene-core-2.3.3.4-usleep.patch new file mode 100644 index 0000000..d6cbac3 --- /dev/null +++ b/user/clucene/clucene-core-2.3.3.4-usleep.patch @@ -0,0 +1,12 @@ +Add missing include needed to run tests which use usleep + +--- clucene-core-2.3.3.4/src/test/test.h 2011-03-17 00:21:07.000000000 +0000 ++++ clucene-core-2.3.3.4/src/test/test.h 2017-12-27 09:43:25.320000000 +0000 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + using namespace std; + -- 2.14.1