mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
dev-cpp/lucene++: add 3.0.9
Closes: https://bugs.gentoo.org/946534 Closes: https://bugs.gentoo.org/947796 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST lucene++-3.0.7.tar.gz 2013570 BLAKE2B 26abb1a2fa2a24d7240505f11639c078744313541b4993ed84e4d0129fda74346e841f0c4c7552e58a15dd492af9ffd33ea66866c8e6810cd41e5d675833ce79 SHA512 92f3bba320980673cc64c983616aa38d25b44ea811237ed226741b892757fb8151e4f833aa58a18dbe7a0c9a899d94e828aa15e6d7b48a69ab730d1d772db220
|
||||
DIST lucene++-3.0.9.tar.gz 2458287 BLAKE2B cbc6c32bd23525ad53fbcf500628f1806496d7f0575ee33baf0bc189d2ea5710334d07b23869e9b3b205bfa229400bc09c108ba6919e2b83bf0c6259e0a88564 SHA512 220fe1b46518018d176ae16434f03b1453fc345d8d552a294d1af927ea4ab69a83ee4b03c82938e648edaa3e7064526ca047fc86e1c71743b0958b520d59e225
|
||||
|
||||
81
dev-cpp/lucene++/files/lucene++-3.0.9-boost-1.87.patch
Normal file
81
dev-cpp/lucene++/files/lucene++-3.0.9-boost-1.87.patch
Normal file
@@ -0,0 +1,81 @@
|
||||
https://github.com/luceneplusplus/LucenePlusPlus/commit/e6a376836e5c891577eae6369263152106b9bc02
|
||||
|
||||
From e6a376836e5c891577eae6369263152106b9bc02 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Heusel <christian@heusel.eu>
|
||||
Date: Tue, 21 Jan 2025 01:01:58 +0100
|
||||
Subject: [PATCH] Migrate to boost::asio::io_context
|
||||
|
||||
The code previously used the deprecated (and with bost 1.87.0 removed)
|
||||
`boost::asio::io_service`, which used to be an alias to `io_context`.
|
||||
The new version heavily changes the `io_context` API and therefore is no
|
||||
the old interface was removed.
|
||||
|
||||
Fixes https://github.com/luceneplusplus/LucenePlusPlus/issues/208
|
||||
|
||||
Signed-off-by: Christian Heusel <christian@heusel.eu>
|
||||
---
|
||||
include/lucene++/ThreadPool.h | 10 ++++++----
|
||||
src/core/util/ThreadPool.cpp | 9 +++++----
|
||||
2 files changed, 11 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/include/lucene++/ThreadPool.h b/include/lucene++/ThreadPool.h
|
||||
index dc6446ff..175ac8ad 100644
|
||||
--- a/include/lucene++/ThreadPool.h
|
||||
+++ b/include/lucene++/ThreadPool.h
|
||||
@@ -14,7 +14,9 @@
|
||||
|
||||
namespace Lucene {
|
||||
|
||||
-typedef boost::shared_ptr<boost::asio::io_service::work> workPtr;
|
||||
+
|
||||
+typedef boost::asio::io_context io_context_t;
|
||||
+typedef boost::asio::executor_work_guard<io_context_t::executor_type> work_t;
|
||||
|
||||
/// A Future represents the result of an asynchronous computation. Methods are provided to check if the computation
|
||||
/// is complete, to wait for its completion, and to retrieve the result of the computation. The result can only be
|
||||
@@ -51,8 +53,8 @@ class ThreadPool : public LuceneObject {
|
||||
LUCENE_CLASS(ThreadPool);
|
||||
|
||||
protected:
|
||||
- boost::asio::io_service io_service;
|
||||
- workPtr work;
|
||||
+ io_context_t io_context;
|
||||
+ work_t work;
|
||||
boost::thread_group threadGroup;
|
||||
|
||||
static const int32_t THREADPOOL_SIZE;
|
||||
@@ -64,7 +66,7 @@ class ThreadPool : public LuceneObject {
|
||||
template <typename FUNC>
|
||||
FuturePtr scheduleTask(FUNC func) {
|
||||
FuturePtr future(newInstance<Future>());
|
||||
- io_service.post(boost::bind(&ThreadPool::execute<FUNC>, this, func, future));
|
||||
+ boost::asio::post(io_context, boost::bind(&ThreadPool::execute<FUNC>, this, func, future));
|
||||
return future;
|
||||
}
|
||||
|
||||
diff --git a/src/core/util/ThreadPool.cpp b/src/core/util/ThreadPool.cpp
|
||||
index 8086d8b1..116f521c 100644
|
||||
--- a/src/core/util/ThreadPool.cpp
|
||||
+++ b/src/core/util/ThreadPool.cpp
|
||||
@@ -14,15 +14,16 @@ Future::~Future() {
|
||||
|
||||
const int32_t ThreadPool::THREADPOOL_SIZE = 5;
|
||||
|
||||
-ThreadPool::ThreadPool() {
|
||||
- work.reset(new boost::asio::io_service::work(io_service));
|
||||
+ThreadPool::ThreadPool()
|
||||
+ :
|
||||
+ work(boost::asio::make_work_guard(io_context))
|
||||
+{
|
||||
for (int32_t i = 0; i < THREADPOOL_SIZE; ++i) {
|
||||
- threadGroup.create_thread(boost::bind(&boost::asio::io_service::run, &io_service));
|
||||
+ threadGroup.create_thread(boost::bind(&boost::asio::io_context::run, &io_context));
|
||||
}
|
||||
}
|
||||
|
||||
ThreadPool::~ThreadPool() {
|
||||
- work.reset(); // stop all threads
|
||||
threadGroup.join_all(); // wait for all competition
|
||||
}
|
||||
|
||||
|
||||
24
dev-cpp/lucene++/files/lucene++-3.0.9-pkgconfig.patch
Normal file
24
dev-cpp/lucene++/files/lucene++-3.0.9-pkgconfig.patch
Normal file
@@ -0,0 +1,24 @@
|
||||
https://github.com/luceneplusplus/LucenePlusPlus/commit/f40f59c6e169b4e16b7a6439ecb26a629c6540d1
|
||||
|
||||
From f40f59c6e169b4e16b7a6439ecb26a629c6540d1 Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Fedorov <vital.had@gmail.com>
|
||||
Date: Thu, 14 Mar 2024 20:37:34 +0800
|
||||
Subject: [PATCH] Fix install path for liblucene++.pc
|
||||
|
||||
---
|
||||
src/config/core/CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/config/core/CMakeLists.txt b/src/config/core/CMakeLists.txt
|
||||
index e5691f54..69cfefcc 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 "${LIB_DESTINATION}/pkgconfig")
|
||||
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||||
endif()
|
||||
|
||||
|
||||
36
dev-cpp/lucene++/lucene++-3.0.9.ebuild
Normal file
36
dev-cpp/lucene++/lucene++-3.0.9.ebuild
Normal file
@@ -0,0 +1,36 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_P="LucenePlusPlus-rel_${PV}"
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="C++ port of Lucene library, a high-performance, full-featured text search engine"
|
||||
HOMEPAGE="https://github.com/luceneplusplus/LucenePlusPlus"
|
||||
SRC_URI="https://github.com/luceneplusplus/LucenePlusPlus/archive/rel_${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="|| ( LGPL-3 Apache-2.0 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~hppa ~loong ~ppc ~ppc64 ~sparc ~x86"
|
||||
IUSE="debug"
|
||||
RESTRICT="test"
|
||||
|
||||
DEPEND="dev-libs/boost:=[zlib]"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.0.7-boost-1.85.patch"
|
||||
"${FILESDIR}/${PN}-3.0.9-boost-1.87.patch"
|
||||
"${FILESDIR}/${PN}-3.0.9-pkgconfig.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DENABLE_DEMO=OFF
|
||||
-DENABLE_TEST=OFF
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
Reference in New Issue
Block a user