diff options
Diffstat (limited to 'extra/clucene')
-rw-r--r-- | extra/clucene/PKGBUILD | 78 | ||||
-rw-r--r-- | extra/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch | 42 | ||||
-rw-r--r-- | extra/clucene/clucene-core-2.3.3.4-pkgconfig.patch | 12 | ||||
-rw-r--r-- | extra/clucene/clucene-debug.patch | 11 | ||||
-rw-r--r-- | extra/clucene/clucene-gcc-atomics.patch | 31 | ||||
-rw-r--r-- | extra/clucene/clucene-multimap-put.patch | 10 | ||||
-rw-r--r-- | extra/clucene/clucene-narrowing-conversions.patch | 25 | ||||
-rw-r--r-- | extra/clucene/clucene-warnings.patch | 54 | ||||
-rw-r--r-- | extra/clucene/fix_zlib_detections.diff | 21 |
9 files changed, 284 insertions, 0 deletions
diff --git a/extra/clucene/PKGBUILD b/extra/clucene/PKGBUILD new file mode 100644 index 000000000..dbeb16810 --- /dev/null +++ b/extra/clucene/PKGBUILD @@ -0,0 +1,78 @@ +# $Id: PKGBUILD 162256 2012-06-24 14:30:07Z andyrtr $ +# Maintainer: AndyRTR <andyrtr@archlinux.org> +# Contributor: Alexander Rødseth +# Contributor: Alois Nespor <alois.nespor@gmail.com> +# Contributor: Tobias Powalowski <tpowa@archlinux.org> +pkgname=clucene +pkgver=2.3.3.4 +pkgrel=5 +pkgdesc="C++ port of the high-performance text search engine Lucene" +arch=('x86_64' 'i686') +url="http://clucene.sourceforge.net/" +license=('APACHE' 'LGPL') +depends=('gcc-libs' 'zlib' 'boost-libs') +makedepends=('cmake' 'boost') +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-core-$pkgver.tar.gz + # Fedora patches + clucene-core-2.3.3.4-pkgconfig.patch + clucene-core-2.3.3.4-install_contribs_lib.patch + # upstream patch + fix_zlib_detections.diff + # LibreOffice patches + clucene-warnings.patch + clucene-gcc-atomics.patch + clucene-debug.patch + clucene-narrowing-conversions.patch + clucene-multimap-put.patch) +sha256sums=('ddfdc433dd8ad31b5c5819cc4404a8d2127472a3b720d3e744e8c51d79732eab' + '10c808ce483d997d7ff349cc3ec97b8785c365f956d6eef45458e9caf4e5e88d' + '3d3f73685f75b4ceacf1941e50b6108941bded3ca558ac1343c35b1b7d0e78dc' + 'e1a6a58dc344d8d5e3218137a5e7a689900eb6ea4cce1dc426e861706ab78889' + 'a66922411eca00c1cd171dd15ac462eec7a832cf067dbb0231773553554242ef' + 'b11dca0d6b889f6ddfa4fd2566373717f54fed9590bf0daee054dea5e39a9f46' + 'c944b9de6b18e49bb065d10c5d045446eeb15f680d6af4b5ac7e4f5fbda8f2a0' + 'cfc88dae46efb2a17ffdc088fd78ca28655e653c9d183b83bdae18c0192a8ddd' + '917c8bfc1dd3313a716ecacf398dbcaf0aa02ce61b41ca2d3d7eb84fa160fce3') + +build() { + cd $srcdir/$pkgname-core-$pkgver + + # add missing contrib-libs needed by LibO 3.6, patch by FC + patch -Np1 -i ${srcdir}/clucene-core-2.3.3.4-install_contribs_lib.patch + # pkgconfig file is missing clucene-shared (upstream ID: 3461512), patch by FC + patch -Np1 -i ${srcdir}/clucene-core-2.3.3.4-pkgconfig.patch + # one upstream postrelease commit for proper zlib detection + patch -Np1 -i ${srcdir}/fix_zlib_detections.diff + # LibreOffice patches http://cgit.freedesktop.org/libreoffice/core/tree/clucene/patches + patch -Np0 -i ${srcdir}/clucene-warnings.patch + patch -Np0 -i ${srcdir}/clucene-gcc-atomics.patch + patch -Np0 -i ${srcdir}/clucene-debug.patch + patch -Np0 -i ${srcdir}/clucene-narrowing-conversions.patch + patch -Np0 -i ${srcdir}/clucene-multimap-put.patch + + mkdir build + pushd build + cmake .. \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DENABLE_ASCII_MODE=OFF \ + -DENABLE_PACKAGING=OFF \ + -DBUILD_CONTRIBS_LIB:BOOL=ON \ + -DLIB_DESTINATION:PATH=/usr/lib \ + -DLUCENE_SYS_INCLUDES:PATH=/usr/lib \ + -DDISABLE_MULTITHREADING=OFF + popd + make -C build +} + +#check() { +# cd $srcdir/$pkgname-core-$pkgver +# make cl_test -C build +# make test -C build || /bin/true # currently fails the tests as expected (see FC comment) +#} + +package() { + cd $srcdir/$pkgname-core-$pkgver + make DESTDIR="$pkgdir" install -C build + rm -rf $pkgdir/usr/lib/CLuceneConfig.cmake +} diff --git a/extra/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch b/extra/clucene/clucene-core-2.3.3.4-install_contribs_lib.patch new file mode 100644 index 000000000..8fbb3c716 --- /dev/null +++ b/extra/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/extra/clucene/clucene-core-2.3.3.4-pkgconfig.patch b/extra/clucene/clucene-core-2.3.3.4-pkgconfig.patch new file mode 100644 index 000000000..aff20d7b4 --- /dev/null +++ b/extra/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/extra/clucene/clucene-debug.patch b/extra/clucene/clucene-debug.patch new file mode 100644 index 000000000..640454e2f --- /dev/null +++ b/extra/clucene/clucene-debug.patch @@ -0,0 +1,11 @@ +--- src/core/CLucene/index/TermInfosReader.cpp ++++ src/core/CLucene/index/TermInfosReader.cpp +@@ -111,7 +111,7 @@ + //destroy their elements + #ifdef _DEBUG + for ( int32_t i=0; i<indexTermsLength;++i ){ +- indexTerms[i].__cl_refcount--; ++ indexTerms[i].__cl_decref(); + } + #endif + //Delete the arrays diff --git a/extra/clucene/clucene-gcc-atomics.patch b/extra/clucene/clucene-gcc-atomics.patch new file mode 100644 index 000000000..819e9a7d7 --- /dev/null +++ b/extra/clucene/clucene-gcc-atomics.patch @@ -0,0 +1,31 @@ +--- src/shared/CLucene/config/threads.cpp 2012-02-23 12:06:55.355506304 +0000 ++++ src/shared/CLucene/config/threads.cpp 2012-02-23 12:07:17.131766381 +0000 +@@ -185,7 +185,7 @@ + } + + int32_t atomic_threads::atomic_increment(_LUCENE_ATOMIC_INT *theInteger){ +- #ifdef _CL_HAVE_GCC_ATOMIC_FUNCTIONS ++ #if ( __GNUC__ > 4 ) || (( __GNUC__ == 4) && ( __GNUC_MINOR__ >= 4 )) + return __sync_add_and_fetch(theInteger, 1); + #else + SCOPED_LOCK_MUTEX(theInteger->THIS_LOCK) +@@ -193,7 +193,7 @@ + #endif + } + int32_t atomic_threads::atomic_decrement(_LUCENE_ATOMIC_INT *theInteger){ +- #ifdef _CL_HAVE_GCC_ATOMIC_FUNCTIONS ++ #if ( __GNUC__ > 4 ) || (( __GNUC__ == 4) && ( __GNUC_MINOR__ >= 4 )) + return __sync_sub_and_fetch(theInteger, 1); + #else + SCOPED_LOCK_MUTEX(theInteger->THIS_LOCK) +--- src/shared/CLucene/LuceneThreads.h 2012-02-23 12:36:28.388299322 +0000 ++++ src/shared/CLucene/LuceneThreads.h 2012-02-23 12:37:23.131885433 +0000 +@@ -70,7 +70,7 @@ + void NotifyAll(); + }; + +- #ifdef _CL_HAVE_GCC_ATOMIC_FUNCTIONS ++ #if ( __GNUC__ > 4 ) || (( __GNUC__ == 4) && ( __GNUC_MINOR__ >= 4 )) + #define _LUCENE_ATOMIC_INT uint32_t + #define _LUCENE_ATOMIC_INT_SET(x,v) x=v + #define _LUCENE_ATOMIC_INT_GET(x) x diff --git a/extra/clucene/clucene-multimap-put.patch b/extra/clucene/clucene-multimap-put.patch new file mode 100644 index 000000000..36ed1fe22 --- /dev/null +++ b/extra/clucene/clucene-multimap-put.patch @@ -0,0 +1,10 @@ +--- src/core/CLucene/util/VoidMap.h ++++ src/core/CLucene/util/VoidMap.h +@@ -316,6 +316,7 @@ public: + if ( _this::dk || _this::dv ) + _this::remove(k); + ++ (*this)[k] = v; + } + }; + diff --git a/extra/clucene/clucene-narrowing-conversions.patch b/extra/clucene/clucene-narrowing-conversions.patch new file mode 100644 index 000000000..f0e971c55 --- /dev/null +++ b/extra/clucene/clucene-narrowing-conversions.patch @@ -0,0 +1,25 @@ +--- src/core/CLucene/queryParser/QueryParser.cpp.sav 2011-03-17 01:21:07.000000000 +0100 ++++ src/core/CLucene/queryParser/QueryParser.cpp 2012-03-09 18:20:58.000000000 +0100 +@@ -79,7 +79,7 @@ + _T("<RANGEEX_GOOP>") + }; + +-const int32_t QueryParser::jj_la1_0[] = {0x180,0x180,0xe00,0xe00,0x1f69f80,0x48000,0x10000,0x1f69000,0x1348000,0x80000,0x80000,0x10000,0x18000000,0x2000000,0x18000000,0x10000,0x80000000,0x20000000,0x80000000,0x10000,0x80000,0x10000,0x1f68000}; ++const int32_t QueryParser::jj_la1_0[] = {0x180,0x180,0xe00,0xe00,0x1f69f80,0x48000,0x10000,0x1f69000,0x1348000,0x80000,0x80000,0x10000,0x18000000,0x2000000,0x18000000,0x10000,int32_t(0x80000000),0x20000000,int32_t(0x80000000),0x10000,0x80000,0x10000,0x1f68000}; + const int32_t QueryParser::jj_la1_1[] = {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x0,0x0,0x0,0x0}; + + struct QueryParser::JJCalls { +--- src/core/CLucene/queryParser/QueryParserTokenManager.cpp.sav 2011-03-17 01:21:07.000000000 +0100 ++++ src/core/CLucene/queryParser/QueryParserTokenManager.cpp 2012-03-09 18:20:24.000000000 +0100 +@@ -15,9 +15,9 @@ + + CL_NS_DEF(queryParser) + +-const int64_t QueryParserTokenManager::jjbitVec2[]={0x0L, 0x0L, _ILONGLONG(0xffffffffffffffff), _ILONGLONG(0xffffffffffffffff)}; ++const int64_t QueryParserTokenManager::jjbitVec2[]={0x0L, 0x0L, int64_t(_ILONGLONG(0xffffffffffffffff)), int64_t(_ILONGLONG(0xffffffffffffffff))}; + const int64_t QueryParserTokenManager::jjbitVec0[] = { +- _ILONGLONG(0xfffffffffffffffe), _ILONGLONG(0xffffffffffffffff), _ILONGLONG(0xffffffffffffffff), _ILONGLONG(0xffffffffffffffff) ++ int64_t(_ILONGLONG(0xfffffffffffffffe)), int64_t(_ILONGLONG(0xffffffffffffffff)), int64_t(_ILONGLONG(0xffffffffffffffff)), int64_t(_ILONGLONG(0xffffffffffffffff)) + }; + const int32_t QueryParserTokenManager::jjnextStates[]={ + 15, 17, 18, 29, 32, 23, 33, 30, 20, 21, 32, 23, 33, 31, 34, 27, diff --git a/extra/clucene/clucene-warnings.patch b/extra/clucene/clucene-warnings.patch new file mode 100644 index 000000000..b9676d902 --- /dev/null +++ b/extra/clucene/clucene-warnings.patch @@ -0,0 +1,54 @@ +--- src/core/CLucene/analysis/AnalysisHeader.h 2012-02-22 12:37:22.531637934 +0000 ++++ src/core/CLucene/analysis/AnalysisHeader.h 2012-02-22 12:39:15.369916728 +0000 +@@ -7,6 +7,8 @@ + #ifndef _lucene_analysis_AnalysisHeader_ + #define _lucene_analysis_AnalysisHeader_ + ++#pragma GCC system_header ++ + #include "CLucene/index/Payload.h" + #include "CLucene/util/VoidList.h" + #include "CLucene/LuceneThreads.h" +--- src/core/CLucene/search/Searchable.h 2012-02-22 12:37:22.513637729 +0000 ++++ src/core/CLucene/search/Searchable.h 2012-02-22 12:38:51.073641550 +0000 +@@ -7,6 +7,7 @@ + #ifndef _lucene_search_Searcher_ + #define _lucene_search_Searcher_ + ++#pragma GCC system_header + + //#include "CLucene/index/IndexReader.h" + CL_CLASS_DEF(index,Term) +--- src/core/CLucene/store/IndexInput.h 2012-02-22 12:37:22.508637673 +0000 ++++ src/core/CLucene/store/IndexInput.h 2012-02-22 12:39:00.465747935 +0000 +@@ -7,6 +7,8 @@ + #ifndef _lucene_store_IndexInput_ + #define _lucene_store_IndexInput_ + ++#pragma GCC system_header ++ + #include "CLucene/LuceneThreads.h" + #include "CLucene/util/Equators.h" + +--- src/core/CLucene/util/Array.h 2012-02-22 12:37:22.510637696 +0000 ++++ src/core/CLucene/util/Array.h 2012-02-22 12:38:33.714444884 +0000 +@@ -7,6 +7,8 @@ + #ifndef _lucene_util_Array_ + #define _lucene_util_Array_ + ++#pragma GCC system_header ++ + #include <stdlib.h> + #include <string.h> + +--- src/core/CLucene/util/PriorityQueue.h 2012-02-22 12:37:22.510637696 +0000 ++++ src/core/CLucene/util/PriorityQueue.h 2012-02-22 12:38:40.316519685 +0000 +@@ -7,6 +7,8 @@ + #ifndef _lucene_util_PriorityQueue_ + #define _lucene_util_PriorityQueue_ + ++#pragma GCC system_header ++ + #include <stdlib.h> + + CL_NS_DEF(util) diff --git a/extra/clucene/fix_zlib_detections.diff b/extra/clucene/fix_zlib_detections.diff new file mode 100644 index 000000000..2b08883f5 --- /dev/null +++ b/extra/clucene/fix_zlib_detections.diff @@ -0,0 +1,21 @@ +From: Veit Jahns <idolum@users.sourceforge.net> +Date: Thu, 26 May 2011 11:35:28 +0000 (+0200) +Subject: Fixing ZLIB configuration in shared's CMakeLists +X-Git-Url: http://clucene.git.sourceforge.net/git/gitweb.cgi?p=clucene%2Fclucene;a=commitdiff_plain;h=772481ca94071ddfe65102a451926e4f9aeb4d2c;hp=a834f87bad3543b2a0331cef7202c15ded4245be + +Fixing ZLIB configuration in shared's CMakeLists +--- + +diff --git a/src/shared/CMakeLists.txt b/src/shared/CMakeLists.txt +index 68314a7..3d1975e 100644 +--- a/src/shared/CMakeLists.txt ++++ b/src/shared/CMakeLists.txt +@@ -42,7 +42,7 @@ INCLUDE (CheckAtomicFunctions) + find_package(ZLIB) + IF ( ZLIB_FOUND ) + SET ( EXTRA_LIBS ${EXTRA_LIBS} ${ZLIB_LIBRARY} ) +-ELSEIF ( ZLIB_FOUND ) ++ELSE ( ZLIB_FOUND ) + MESSAGE( "ZLIB not found, using local: ${clucene-ext_SOURCE_DIR}/zlib" ) + SET(ZLIB_INCLUDE_DIR ${clucene-ext_SOURCE_DIR}/zlib ) + SET(ZLIB_LIBRARY ${clucene-ext_BINARY_DIR}) |