From 2eda0407303d8fe09b87580fdd7cb40f6f7c9908 Mon Sep 17 00:00:00 2001 From: Willy Sudiarto Raharjo Date: Sat, 9 Jan 2021 16:16:55 +0700 Subject: libraries/LucenePlusPlus: Updated for version 3.0.8. Signed-off-by: Willy Sudiarto Raharjo --- libraries/LucenePlusPlus/LucenePlusPlus.SlackBuild | 11 +- libraries/LucenePlusPlus/LucenePlusPlus.info | 8 +- libraries/LucenePlusPlus/soname.patch | 219 +++++++++++++++++++++ 3 files changed, 228 insertions(+), 10 deletions(-) create mode 100644 libraries/LucenePlusPlus/soname.patch (limited to 'libraries/LucenePlusPlus') diff --git a/libraries/LucenePlusPlus/LucenePlusPlus.SlackBuild b/libraries/LucenePlusPlus/LucenePlusPlus.SlackBuild index adc205acf4f8..44662049337b 100644 --- a/libraries/LucenePlusPlus/LucenePlusPlus.SlackBuild +++ b/libraries/LucenePlusPlus/LucenePlusPlus.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for LucenePlusPlus -# Copyright 2014-2016 Willy Sudiarto Raharjo +# Copyright 2014-2021 Willy Sudiarto Raharjo # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,8 +23,8 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=LucenePlusPlus -VERSION=${VERSION:-3.0.7} -BUILD=${BUILD:-2} +VERSION=${VERSION:-3.0.8} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -69,12 +69,11 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# Disable building internal gtest -sed -i "s/include(CMakeExternal.txt)/#include(CMakeExternal.txt)/" CMakeLists.txt -sed -i "s/enable_testing()/#enable_testing()/" CMakeLists.txt +patch -p1 < $CWD/soname.patch mkdir -p build cd build + export "PATH=/opt/cmake-202x/bin:$PATH" cmake \ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ diff --git a/libraries/LucenePlusPlus/LucenePlusPlus.info b/libraries/LucenePlusPlus/LucenePlusPlus.info index 0d48b7d56156..683eb22c7610 100644 --- a/libraries/LucenePlusPlus/LucenePlusPlus.info +++ b/libraries/LucenePlusPlus/LucenePlusPlus.info @@ -1,10 +1,10 @@ PRGNAM="LucenePlusPlus" -VERSION="3.0.7" +VERSION="3.0.8" HOMEPAGE="https://github.com/luceneplusplus/LucenePlusPlus" -DOWNLOAD="https://github.com/luceneplusplus/LucenePlusPlus/archive/rel_3.0.7.tar.gz" -MD5SUM="e260c1ff9c10af7070faee29f325f955" +DOWNLOAD="https://github.com/luceneplusplus/LucenePlusPlus/archive/rel_3.0.8.tar.gz" +MD5SUM="cb9b2e7cb37b7dd68c1e24a65c6eda9d" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="gtest" +REQUIRES="gtest cmake-202x" MAINTAINER="Willy Sudiarto Raharjo" EMAIL="willysr@slackbuilds.org" diff --git a/libraries/LucenePlusPlus/soname.patch b/libraries/LucenePlusPlus/soname.patch new file mode 100644 index 000000000000..d8ddf049558b --- /dev/null +++ b/libraries/LucenePlusPlus/soname.patch @@ -0,0 +1,219 @@ +commit 1cd2509ed74ae47965006d16de3c09db029b4efe +Author: Gianfranco Costamagna +Date: Mon Jan 4 23:45:13 2021 +0100 + + Fix various cmake issues: + "CMAKE_INSTALL_FULL_LIBDIR" not being correctly evaluated and used + pkgconfig directory wrongly set to include instead of lib + cmake directory wrongly set to include instead of lib + core_libname contrib_libname PACKAGE_CMAKE_INSTALL_INCLUDEDIR PACKAGE_CMAKE_INSTALL_LIBDIR variables not being substituted to cmake.in files + cmake helpers not being correctly set + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 41de688..71dbbd5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -21,7 +21,7 @@ if(NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + endif() + + set(LIB_DESTINATION +- "${CMAKE_INSTALL_FULL_LIBDIR}" CACHE STRING "Define lib output directory name") ++ "${CMAKE_INSTALL_LIBDIR}" CACHE STRING "Define lib output directory name") + + + #################################### +diff --git a/src/config/CMakeLists.txt b/src/config/CMakeLists.txt +index e5e6624..fe8e8b8 100644 +--- a/src/config/CMakeLists.txt ++++ b/src/config/CMakeLists.txt +@@ -1,16 +1,16 @@ + #################################### + # Set config vars + #################################### +-set(core_libname, "lucene++") +-set(contrib_libname, "lucene++-contrib") ++set(core_libname "lucene++") ++set(contrib_libname "lucene++-contrib") + + set( +- PACKAGE_CMAKE_INSTALL_INCLUDEDIR, +- "${lucene++_INCLUDE_DIR}/lucene++/") ++ PACKAGE_CMAKE_INSTALL_INCLUDEDIR ++ "${CMAKE_INSTALL_INCLUDEDIR}/lucene++/") + + set( +- PACKAGE_CMAKE_INSTALL_LIBDIR, +- "${LIB_INSTALL_DIR}/cmake") ++ PACKAGE_CMAKE_INSTALL_LIBDIR ++ "${LIB_DESTINATION}") + + + #################################### +diff --git a/src/config/contrib/CMakeLists.txt b/src/config/contrib/CMakeLists.txt +index c0dd86f..b4a4391 100644 +--- a/src/config/contrib/CMakeLists.txt ++++ b/src/config/contrib/CMakeLists.txt +@@ -9,7 +9,7 @@ if(NOT WIN32) + install( + FILES + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++-contrib.pc" +- DESTINATION "include/pkgconfig") ++ DESTINATION "${LIB_DESTINATION}/pkgconfig") + endif() + + +@@ -19,7 +19,8 @@ endif() + configure_package_config_file( + "${CMAKE_CURRENT_SOURCE_DIR}/liblucene++-contribConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++-contribConfig.cmake" +- INSTALL_DESTINATION "${LIB_DESTINATION}/cmake") ++ INSTALL_DESTINATION "${LIB_DESTINATION}/cmake/liblucene++-contrib" ++ PATH_VARS contrib_libname PACKAGE_CMAKE_INSTALL_INCLUDEDIR PACKAGE_CMAKE_INSTALL_LIBDIR) + + write_basic_package_version_file( + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++-contribConfigVersion.cmake" +@@ -30,4 +31,4 @@ install( + FILES + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++-contribConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++-contribConfigVersion.cmake" +- DESTINATION "include/cmake") ++ DESTINATION "${LIB_DESTINATION}/cmake/liblucene++-contrib") +diff --git a/src/config/contrib/liblucene++-contribConfig.cmake.in b/src/config/contrib/liblucene++-contribConfig.cmake.in +index f92f683..85fdfd2 100644 +--- a/src/config/contrib/liblucene++-contribConfig.cmake.in ++++ b/src/config/contrib/liblucene++-contribConfig.cmake.in +@@ -20,6 +20,6 @@ if (NOT DEFINED set_and_check) + endif() + + +-set_and_check(liblucene++-contrib_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@/@contrib_libname@") +-set_and_check(liblucene++-contrib_LIBRARY_DIRS "@PACKAGE_CMAKE_INSTALL_LIBDIR@") +-set(liblucene++-contrib_LIBRARIES "@PACKAGE_CMAKE_INSTALL_LIBDIR@/@contrib_libname@") ++set_and_check(liblucene++-contrib_INCLUDE_DIRS "${PACKAGE_PREFIX_DIR}/@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@") ++set_and_check(liblucene++-contrib_LIBRARY_DIRS "${PACKAGE_PREFIX_DIR}/@PACKAGE_CMAKE_INSTALL_LIBDIR@") ++set(liblucene++-contrib_LIBRARIES "@contrib_libname@") +diff --git a/src/config/core/CMakeLists.txt b/src/config/core/CMakeLists.txt +index a3eb17a..65376f5 100644 +--- a/src/config/core/CMakeLists.txt ++++ b/src/config/core/CMakeLists.txt +@@ -9,7 +9,7 @@ if(NOT WIN32) + install( + FILES + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++.pc" +- DESTINATION "include/pkgconfig") ++ DESTINATION "${LIB_DESTINATION}/pkgconfig") + endif() + + +@@ -19,7 +19,8 @@ endif() + configure_package_config_file( + "${CMAKE_CURRENT_SOURCE_DIR}/liblucene++Config.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++Config.cmake" +- INSTALL_DESTINATION "${LIB_DESTINATION}/cmake") ++ INSTALL_DESTINATION "${LIB_DESTINATION}/cmake/liblucene++" ++ PATH_VARS core_libname PACKAGE_CMAKE_INSTALL_INCLUDEDIR PACKAGE_CMAKE_INSTALL_LIBDIR) + + write_basic_package_version_file( + ${CMAKE_CURRENT_BINARY_DIR}/liblucene++ConfigVersion.cmake +@@ -30,4 +31,4 @@ install( + FILES + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++Config.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/liblucene++ConfigVersion.cmake" +- DESTINATION "include/cmake") ++ DESTINATION "${LIB_DESTINATION}/cmake/liblucene++") +diff --git a/src/config/core/liblucene++Config.cmake.in b/src/config/core/liblucene++Config.cmake.in +index 89b48a3..574f812 100644 +--- a/src/config/core/liblucene++Config.cmake.in ++++ b/src/config/core/liblucene++Config.cmake.in +@@ -20,8 +20,8 @@ if (NOT DEFINED set_and_check) + endif() + + +-set_and_check(liblucene++_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@/@core_libname@") +-set_and_check(liblucene++_LIBRARY_DIRS "@PACKAGE_CMAKE_INSTALL_LIBDIR@") +-set(liblucene++_LIBRARIES "@PACKAGE_CMAKE_INSTALL_LIBDIR@/@core_libname@") ++set_and_check(liblucene++_INCLUDE_DIRS "${PACKAGE_PREFIX_DIR}/@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@") ++set_and_check(liblucene++_LIBRARY_DIRS "${PACKAGE_PREFIX_DIR}/@PACKAGE_CMAKE_INSTALL_LIBDIR@") ++set(liblucene++_LIBRARIES "@core_libname@") + + + +commit 127492f1ab85fd74ab9f9dff0be5b0a63bf7c271 +Merge: df65bf5 fd9eaf1 +Author: Alan Wright <85800+alanw@users.noreply.github.com> +Date: Tue Dec 29 17:46:39 2020 +0000 + + Merge pull request #160 from Kakueeen/master + + fix a bug of ChineseTokenizer + + +commit fd9eaf10c49239d700af848062acc1d5efd54aa8 +Author: liuzhangjian +Date: Fri Dec 4 15:41:31 2020 +0800 + + Title:fix a bug of ChineseTokenizer + + Description:When I use ChineseAnalyzer for Chinese word segmentation, I find that English and numbers are treated as one word and I think they should be separated. + + RootCause:Null + + Solution: + +diff --git a/src/contrib/analyzers/common/analysis/cn/ChineseFilter.cpp b/src/contrib/analyzers/common/analysis/cn/ChineseFilter.cpp +index d2a19f3..8313445 100644 +--- a/src/contrib/analyzers/common/analysis/cn/ChineseFilter.cpp ++++ b/src/contrib/analyzers/common/analysis/cn/ChineseFilter.cpp +@@ -38,7 +38,7 @@ bool ChineseFilter::incrementToken() { + if (text.length() > 1) { + return true; + } +- } else if (UnicodeUtil::isOther(text[0])) { ++ } else if (UnicodeUtil::isOther(text[0]) || UnicodeUtil::isDigit(text[0])) { + // One Chinese character as one Chinese word. + // Chinese word extraction to be added later here. + return true; +diff --git a/src/contrib/analyzers/common/analysis/cn/ChineseTokenizer.cpp b/src/contrib/analyzers/common/analysis/cn/ChineseTokenizer.cpp +index 38bf987..3b4de74 100644 +--- a/src/contrib/analyzers/common/analysis/cn/ChineseTokenizer.cpp ++++ b/src/contrib/analyzers/common/analysis/cn/ChineseTokenizer.cpp +@@ -65,6 +65,7 @@ bool ChineseTokenizer::incrementToken() { + + length = 0; + start = offset; ++ bool last_is_en = false, last_is_num = false; + + while (true) { + wchar_t c; +@@ -82,11 +83,30 @@ bool ChineseTokenizer::incrementToken() { + c = ioBuffer[bufferIndex++]; + } + +- if (UnicodeUtil::isDigit(c) || UnicodeUtil::isLower(c) || UnicodeUtil::isUpper(c)) { ++ if (UnicodeUtil::isLower(c) || UnicodeUtil::isUpper(c)) { ++ if (last_is_num) { ++ --bufferIndex; ++ --offset; ++ return flush(); ++ } ++ ++ push(c); ++ if (length == MAX_WORD_LEN) { ++ return flush(); ++ } ++ last_is_en = true; ++ } else if (UnicodeUtil::isDigit(c)) { ++ if (last_is_en) { ++ --bufferIndex; ++ --offset; ++ return flush(); ++ } ++ + push(c); + if (length == MAX_WORD_LEN) { + return flush(); + } ++ last_is_num = true; + } else if (UnicodeUtil::isOther(c)) { + if (length > 0) { + --bufferIndex; -- cgit v1.2.3