diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2022-02-28 14:09:17 +0100 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2022-02-28 22:12:16 +0100 |
commit | f00fefd616073ccaf0eb8b1d309f5fdad59a361d (patch) | |
tree | 66fcf6ff4246f7b29cc205fa7ce0604f567fbbec /app-i18n/librime | |
parent | media-gfx/solvespace: Drop 2.3 (diff) | |
download | gentoo-f00fefd616073ccaf0eb8b1d309f5fdad59a361d.tar.gz gentoo-f00fefd616073ccaf0eb8b1d309f5fdad59a361d.tar.bz2 gentoo-f00fefd616073ccaf0eb8b1d309f5fdad59a361d.zip |
app-i18n/librime: Drop 1.5.3-r2, 1.6.0-r1 and 1.6.1-r1
Closes: https://bugs.gentoo.org/793926
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'app-i18n/librime')
-rw-r--r-- | app-i18n/librime/Manifest | 3 | ||||
-rw-r--r-- | app-i18n/librime/files/librime-1.5.3-log_files_mode.patch | 14 | ||||
-rw-r--r-- | app-i18n/librime/files/librime-1.6.0-plugins.patch | 247 | ||||
-rw-r--r-- | app-i18n/librime/files/librime-1.6.1-plugins.patch | 247 | ||||
-rw-r--r-- | app-i18n/librime/librime-1.5.3-r2.ebuild | 74 | ||||
-rw-r--r-- | app-i18n/librime/librime-1.6.0-r1.ebuild | 74 | ||||
-rw-r--r-- | app-i18n/librime/librime-1.6.1-r1.ebuild | 74 |
7 files changed, 0 insertions, 733 deletions
diff --git a/app-i18n/librime/Manifest b/app-i18n/librime/Manifest index f2e2c6fc1359..155c1c2574ff 100644 --- a/app-i18n/librime/Manifest +++ b/app-i18n/librime/Manifest @@ -1,4 +1 @@ -DIST librime-1.5.3.tar.gz 2847083 BLAKE2B 4ffb2c5ddaf52f9c9227fa4ea019ef2965e61139f678798c08ef37dc52b863763651b63ed820caad0de1b06f48ab5c1a7a2682653340d2ae7f5f9eec3cec80b2 SHA512 4d7f6ec43bd5728f59f0b3581bcd8a46128651430b6873017d80659942b8f6aa1a2f25f439ba8fba461fe22acbf701c2da7a786104a2e4852a70a89cdc0452d3 -DIST librime-1.6.0.tar.gz 2856645 BLAKE2B de6d843a5028f6b0308c3432ada7dd00c08a71e73fe799b157fd71a4054c757a00d3b0fdc7743d94d6e87b03f256e822ee29c16c86f96f5d24c7d864266c4f78 SHA512 4aeace0f1628293d4b607483ab976841093a1ff03df8bf63d545715af00254d1f0b1bdcd120795ea688d152287069881e0740372f40e2174a14ae6f53b7f950b -DIST librime-1.6.1.tar.gz 2856751 BLAKE2B c6b01342dcc9e8ee571cb14a36b851a50bf7b191211197421647ab05e6fa64c676f8936920870dcc335d06c635e354fed706832e41192bccd0a17aff02df1a43 SHA512 944361e9459662bb97b97ce9e2651acf0beb368b3769d1b9576cf4e5c2779302cae470fa39f5bc262cabb6a0e8590bcb77d32ffc87d7385b9465869fe7d5bcb3 DIST librime-1.7.3.tar.gz 2859513 BLAKE2B 834622860cdc3038d1b983f476bca70f211dfbc3bc2b565a998163e22688841ee3a0c7f9a64bce285e2f3f5b5a9a802bd5506f17904ccb3291babf80d4748fb5 SHA512 8767d17c3d14a5a1bbb8269fab1627b907de72c288b362fdbc6191223937da21e8b18471b4ae8f83ce5afc0ec5c3ab12fbcb49930eb9969c1764c7390d9ee4b0 diff --git a/app-i18n/librime/files/librime-1.5.3-log_files_mode.patch b/app-i18n/librime/files/librime-1.5.3-log_files_mode.patch deleted file mode 100644 index 7a36dea64d24..000000000000 --- a/app-i18n/librime/files/librime-1.5.3-log_files_mode.patch +++ /dev/null @@ -1,14 +0,0 @@ -https://github.com/rime/librime/issues/316 -https://github.com/rime/librime/commit/90839b0b3d47cbfef715ea5f061c7505666ff75d - ---- /src/rime/setup.cc -+++ /src/rime/setup.cc -@@ -35,6 +35,8 @@ - - RIME_API void SetupLogging(const char* app_name) { - #ifdef RIME_ENABLE_LOGGING -+ // Do not allow other users to read/write log files created by current process. -+ FLAGS_logfile_mode = 0600; - google::InitGoogleLogging(app_name); - #endif // RIME_ENABLE_LOGGING - } diff --git a/app-i18n/librime/files/librime-1.6.0-plugins.patch b/app-i18n/librime/files/librime-1.6.0-plugins.patch deleted file mode 100644 index c79072f31cbb..000000000000 --- a/app-i18n/librime/files/librime-1.6.0-plugins.patch +++ /dev/null @@ -1,247 +0,0 @@ -https://github.com/rime/librime/issues/431 - ---- /CMakeLists.txt -+++ /CMakeLists.txt -@@ -11,6 +11,14 @@ - - include(GNUInstallDirs) - -+if(NOT DEFINED BIN_INSTALL_DIR) -+ set(BIN_INSTALL_DIR ${CMAKE_INSTALL_BINDIR}) -+endif() -+ -+if(NOT DEFINED LIB_INSTALL_DIR) -+ set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}) -+endif() -+ - option(BUILD_SHARED_LIBS "Build Rime as shared library" ON) - option(BUILD_MERGED_PLUGINS "Merge plugins into one Rime library" ON) - option(BUILD_STATIC "Build with dependencies as static libraries" OFF) -@@ -22,8 +30,11 @@ - option(BOOST_USE_CXX11 "Boost has been built with C++11 support" OFF) - option(BOOST_USE_SIGNALS2 "Boost use signals2 instead of signals" ON) - option(ENABLE_ASAN "Enable Address Sanitizer (Unix Only)" OFF) -+option(INSTALL_PRIVATE_HEADERS "Install private headers (usually needed for externally built Rime plugins)" OFF) -+option(ENABLE_EXTERNAL_PLUGINS "Enable loading of externally built Rime plugins (from directory set by RIME_PLUGINS_DIR variable)" OFF) - --set(rime_data_dir "/share/rime-data" CACHE STRING "Target directory for Rime data") -+set(RIME_DATA_DIR "share/rime-data" CACHE STRING "Target directory for Rime data") -+set(RIME_PLUGINS_DIR "${LIB_INSTALL_DIR}/rime-plugins" CACHE STRING "Target directory for externally built Rime plugins") - - if(WIN32) - set(ext ".exe") -@@ -61,7 +72,7 @@ - set(BOOST_COMPONENTS filesystem regex system) - - if(BOOST_USE_SIGNALS2) -- add_definitions("-DBOOST_SIGNALS2") -+ set(RIME_BOOST_SIGNALS2 1) - else() - set(BOOST_COMPONENTS ${BOOST_COMPONENTS} signals) - endif() -@@ -89,7 +100,7 @@ - add_definitions(-DGOOGLE_GLOG_DLL_DECL=) - endif() - -- add_definitions(-DRIME_ENABLE_LOGGING) -+ set(RIME_ENABLE_LOGGING 1) - - endif() - -@@ -134,6 +145,11 @@ - message(WARNING "X11/keysym.h not found.") - endif() - -+configure_file( -+ "${PROJECT_SOURCE_DIR}/src/rime/build_config.h.in" -+ "${PROJECT_BINARY_DIR}/src/rime/build_config.h") -+ -+include_directories(${PROJECT_BINARY_DIR}/src) - include_directories(${PROJECT_SOURCE_DIR}/src) - include_directories(${PROJECT_SOURCE_DIR}/thirdparty/include) - link_directories(${PROJECT_SOURCE_DIR}/thirdparty/lib) -@@ -154,14 +170,6 @@ - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") - endif() - --if(NOT DEFINED LIB_INSTALL_DIR) -- set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}) --endif() -- --if(NOT DEFINED BIN_INSTALL_DIR) -- set(BIN_INSTALL_DIR ${CMAKE_INSTALL_BINDIR}) --endif() -- - # uninstall target - configure_file( - "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" -@@ -175,7 +183,8 @@ - set(exec_prefix "${CMAKE_INSTALL_PREFIX}") - set(bindir "${exec_prefix}/${BIN_INSTALL_DIR}") - set(libdir "${exec_prefix}/${LIB_INSTALL_DIR}") -- set(pkgdatadir "${prefix}${rime_data_dir}") -+ set(pkgdatadir "${prefix}/${RIME_DATA_DIR}") -+ set(pluginsdir "${exec_prefix}/${RIME_PLUGINS_DIR}") - set(includedir "${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") - configure_file( - ${PROJECT_SOURCE_DIR}/rime.pc.in -@@ -189,11 +198,19 @@ - - file(GLOB rime_public_header_files ${PROJECT_SOURCE_DIR}/src/*.h) - install(FILES ${rime_public_header_files} DESTINATION include) -+if(INSTALL_PRIVATE_HEADERS) -+ file(GLOB rime_private_header_files ${PROJECT_SOURCE_DIR}/src/rime/*.h ${PROJECT_BINARY_DIR}/src/rime/*.h) -+ install(FILES ${rime_private_header_files} DESTINATION include/rime) -+ foreach(rime_private_header_files_dir algo config dict gear lever) -+ file(GLOB rime_private_header_files ${PROJECT_SOURCE_DIR}/src/rime/${rime_private_header_files_dir}/*.h) -+ install(FILES ${rime_private_header_files} DESTINATION include/rime/${rime_private_header_files_dir}) -+ endforeach() -+endif() - - if(BUILD_DATA) - file(GLOB rime_preset_data_files ${PROJECT_SOURCE_DIR}/data/preset/*.yaml) - install(FILES ${rime_preset_data_files} -- DESTINATION ${CMAKE_INSTALL_PREFIX}${rime_data_dir}) -+ DESTINATION ${CMAKE_INSTALL_PREFIX}/${RIME_DATA_DIR}) - endif() - - if(BUILD_SHARED_LIBS) -@@ -223,6 +240,11 @@ - set(rime_plugins_library rime-plugins) - endif() - -+add_definitions("-DRIME_PLUGINS_DIR=\"${CMAKE_INSTALL_PREFIX}/${RIME_PLUGINS_DIR}\"") -+if(ENABLE_EXTERNAL_PLUGINS) -+ add_definitions(-DRIME_ENABLE_EXTERNAL_PLUGINS) -+endif() -+ - add_subdirectory(src) - - if(BUILD_SHARED_LIBS) ---- /rime.pc.in -+++ /rime.pc.in -@@ -2,6 +2,8 @@ - exec_prefix=@exec_prefix@ - libdir=@libdir@ - includedir=@includedir@ -+pkgdatadir=@pkgdatadir@ -+pluginsdir=@pluginsdir@ - - Name: Rime - Description: Rime Input Method Engine ---- /src/CMakeLists.txt -+++ /src/CMakeLists.txt -@@ -36,6 +36,9 @@ - if(Gflags_FOUND) - set(rime_optional_deps ${rime_optional_deps} ${Gflags_LIBRARY}) - endif() -+if(ENABLE_EXTERNAL_PLUGINS) -+ set(rime_optional_deps ${rime_optional_deps} dl) -+endif() - - set(rime_core_deps - ${Boost_LIBRARIES} ---- /src/rime/build_config.h.in -+++ /src/rime/build_config.h.in -@@ -0,0 +1,11 @@ -+// -+// Copyright RIME Developers -+// Distributed under the BSD License -+// -+#ifndef RIME_BUILD_CONFIG_H_ -+#define RIME_BUILD_CONFIG_H_ -+ -+#cmakedefine RIME_BOOST_SIGNALS2 -+#cmakedefine RIME_ENABLE_LOGGING -+ -+#endif // RIME_BUILD_CONFIG_H_ ---- /src/rime/common.h -+++ /src/rime/common.h -@@ -7,6 +7,8 @@ - #ifndef RIME_COMMON_H_ - #define RIME_COMMON_H_ - -+#include <rime/build_config.h> -+ - #include <functional> - #include <list> - #include <map> -@@ -20,7 +22,7 @@ - #include <vector> - #include <boost/optional.hpp> - #define BOOST_BIND_NO_PLACEHOLDERS --#ifdef BOOST_SIGNALS2 -+#ifdef RIME_BOOST_SIGNALS2 - #include <boost/signals2/connection.hpp> - #include <boost/signals2/signal.hpp> - #else -@@ -79,7 +81,7 @@ - return std::make_shared<T>(std::forward<Args>(args)...); - } - --#ifdef BOOST_SIGNALS2 -+#ifdef RIME_BOOST_SIGNALS2 - using boost::signals2::connection; - using boost::signals2::signal; - #else ---- /src/rime/lever/deployment_tasks.cc -+++ /src/rime/lever/deployment_tasks.cc -@@ -4,6 +4,9 @@ - // - // 2011-12-10 GONG Chen <chen.sst@gmail.com> - // -+ -+#include <rime/build_config.h> -+ - #include <algorithm> - #include <boost/algorithm/string.hpp> - #include <boost/filesystem.hpp> ---- /src/rime/setup.cc -+++ /src/rime/setup.cc -@@ -5,6 +5,13 @@ - // 2011-10-02 GONG Chen <chen.sst@gmail.com> - // - -+#include <rime/build_config.h> -+ -+#ifdef RIME_ENABLE_EXTERNAL_PLUGINS -+#include <dlfcn.h> -+#include <glob.h> -+#endif // RIME_ENABLE_EXTERNAL_PLUGINS -+ - #ifdef RIME_ENABLE_LOGGING - #include <glog/logging.h> - #endif // RIME_ENABLE_LOGGING -@@ -33,6 +40,32 @@ - mm.LoadModule(module); - } - } -+ -+#ifdef RIME_ENABLE_EXTERNAL_PLUGINS -+ fs::path plugins_dir = fs::path(RIME_PLUGINS_DIR); -+ fs::path plugins_files = plugins_dir / "*.so"; -+ glob_t glob_buffer; -+ if (glob(plugins_files.string().c_str(), 0, NULL, &glob_buffer) == 0) { -+ for (size_t i = 0; i < glob_buffer.gl_pathc; i++) { -+ fs::path plugin_file(glob_buffer.gl_pathv[i]); -+ fs::path plugin_name = plugin_file.stem(); -+ fs::file_status plugin_file_status = fs::status(plugin_file); -+ if (fs::is_regular_file(plugin_file) && -+ plugin_file_status.permissions() & (fs::owner_exe | fs::group_exe | fs::others_exe)) { -+ void* handle = dlopen(plugin_file.string().c_str(), RTLD_LAZY); -+ if (handle) { -+ if (RimeModule* module = mm.Find(plugin_name.string())) { -+ mm.LoadModule(module); -+ } -+ } -+ else { -+ LOG(ERROR) << "dlopen error: " << dlerror(); -+ } -+ } -+ } -+ globfree(&glob_buffer); -+ } -+#endif - } - - // assume member is a non-null pointer in struct *p. diff --git a/app-i18n/librime/files/librime-1.6.1-plugins.patch b/app-i18n/librime/files/librime-1.6.1-plugins.patch deleted file mode 100644 index 68099d618693..000000000000 --- a/app-i18n/librime/files/librime-1.6.1-plugins.patch +++ /dev/null @@ -1,247 +0,0 @@ -https://github.com/rime/librime/issues/431 - ---- /CMakeLists.txt -+++ /CMakeLists.txt -@@ -11,6 +11,14 @@ - - include(GNUInstallDirs) - -+if(NOT DEFINED BIN_INSTALL_DIR) -+ set(BIN_INSTALL_DIR ${CMAKE_INSTALL_BINDIR}) -+endif() -+ -+if(NOT DEFINED LIB_INSTALL_DIR) -+ set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}) -+endif() -+ - option(BUILD_SHARED_LIBS "Build Rime as shared library" ON) - option(BUILD_MERGED_PLUGINS "Merge plugins into one Rime library" ON) - option(BUILD_STATIC "Build with dependencies as static libraries" OFF) -@@ -22,8 +30,11 @@ - option(BOOST_USE_CXX11 "Boost has been built with C++11 support" OFF) - option(BOOST_USE_SIGNALS2 "Boost use signals2 instead of signals" ON) - option(ENABLE_ASAN "Enable Address Sanitizer (Unix Only)" OFF) -+option(INSTALL_PRIVATE_HEADERS "Install private headers (usually needed for externally built Rime plugins)" OFF) -+option(ENABLE_EXTERNAL_PLUGINS "Enable loading of externally built Rime plugins (from directory set by RIME_PLUGINS_DIR variable)" OFF) - --set(rime_data_dir "/share/rime-data" CACHE STRING "Target directory for Rime data") -+set(RIME_DATA_DIR "share/rime-data" CACHE STRING "Target directory for Rime data") -+set(RIME_PLUGINS_DIR "${LIB_INSTALL_DIR}/rime-plugins" CACHE STRING "Target directory for externally built Rime plugins") - - if(WIN32) - set(ext ".exe") -@@ -61,7 +72,7 @@ - set(BOOST_COMPONENTS filesystem regex system) - - if(BOOST_USE_SIGNALS2) -- add_definitions("-DBOOST_SIGNALS2") -+ set(RIME_BOOST_SIGNALS2 1) - else() - set(BOOST_COMPONENTS ${BOOST_COMPONENTS} signals) - endif() -@@ -89,7 +100,7 @@ - add_definitions(-DGOOGLE_GLOG_DLL_DECL=) - endif() - -- add_definitions(-DRIME_ENABLE_LOGGING) -+ set(RIME_ENABLE_LOGGING 1) - - endif() - -@@ -134,6 +145,11 @@ - message(WARNING "X11/keysym.h not found.") - endif() - -+configure_file( -+ "${PROJECT_SOURCE_DIR}/src/rime/build_config.h.in" -+ "${PROJECT_BINARY_DIR}/src/rime/build_config.h") -+ -+include_directories(${PROJECT_BINARY_DIR}/src) - include_directories(${PROJECT_SOURCE_DIR}/src) - include_directories(${PROJECT_SOURCE_DIR}/thirdparty/include) - link_directories(${PROJECT_SOURCE_DIR}/thirdparty/lib) -@@ -154,14 +170,6 @@ - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") - endif() - --if(NOT DEFINED LIB_INSTALL_DIR) -- set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}) --endif() -- --if(NOT DEFINED BIN_INSTALL_DIR) -- set(BIN_INSTALL_DIR ${CMAKE_INSTALL_BINDIR}) --endif() -- - # uninstall target - configure_file( - "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" -@@ -175,7 +183,8 @@ - set(exec_prefix "${CMAKE_INSTALL_PREFIX}") - set(bindir "${exec_prefix}/${BIN_INSTALL_DIR}") - set(libdir "${exec_prefix}/${LIB_INSTALL_DIR}") -- set(pkgdatadir "${prefix}${rime_data_dir}") -+ set(pkgdatadir "${prefix}/${RIME_DATA_DIR}") -+ set(pluginsdir "${exec_prefix}/${RIME_PLUGINS_DIR}") - set(includedir "${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") - configure_file( - ${PROJECT_SOURCE_DIR}/rime.pc.in -@@ -189,11 +198,19 @@ - - file(GLOB rime_public_header_files ${PROJECT_SOURCE_DIR}/src/*.h) - install(FILES ${rime_public_header_files} DESTINATION include) -+if(INSTALL_PRIVATE_HEADERS) -+ file(GLOB rime_private_header_files ${PROJECT_SOURCE_DIR}/src/rime/*.h ${PROJECT_BINARY_DIR}/src/rime/*.h) -+ install(FILES ${rime_private_header_files} DESTINATION include/rime) -+ foreach(rime_private_header_files_dir algo config dict gear lever) -+ file(GLOB rime_private_header_files ${PROJECT_SOURCE_DIR}/src/rime/${rime_private_header_files_dir}/*.h) -+ install(FILES ${rime_private_header_files} DESTINATION include/rime/${rime_private_header_files_dir}) -+ endforeach() -+endif() - - if(BUILD_DATA) - file(GLOB rime_preset_data_files ${PROJECT_SOURCE_DIR}/data/preset/*.yaml) - install(FILES ${rime_preset_data_files} -- DESTINATION ${CMAKE_INSTALL_PREFIX}${rime_data_dir}) -+ DESTINATION ${CMAKE_INSTALL_PREFIX}/${RIME_DATA_DIR}) - endif() - - if(BUILD_SHARED_LIBS) -@@ -223,6 +240,11 @@ - set(rime_plugins_library rime-plugins) - endif() - -+add_definitions("-DRIME_PLUGINS_DIR=\"${CMAKE_INSTALL_PREFIX}/${RIME_PLUGINS_DIR}\"") -+if(ENABLE_EXTERNAL_PLUGINS) -+ add_definitions(-DRIME_ENABLE_EXTERNAL_PLUGINS) -+endif() -+ - add_subdirectory(src) - - if(BUILD_SHARED_LIBS) ---- /rime.pc.in -+++ /rime.pc.in -@@ -2,6 +2,8 @@ - exec_prefix=@exec_prefix@ - libdir=@libdir@ - includedir=@includedir@ -+pkgdatadir=@pkgdatadir@ -+pluginsdir=@pluginsdir@ - - Name: Rime - Description: Rime Input Method Engine ---- /src/CMakeLists.txt -+++ /src/CMakeLists.txt -@@ -36,6 +36,9 @@ - if(Gflags_FOUND) - set(rime_optional_deps ${rime_optional_deps} ${Gflags_LIBRARY}) - endif() -+if(ENABLE_EXTERNAL_PLUGINS) -+ set(rime_optional_deps ${rime_optional_deps} dl) -+endif() - - set(rime_core_deps - ${Boost_LIBRARIES} ---- /src/rime/build_config.h.in -+++ /src/rime/build_config.h.in -@@ -0,0 +1,11 @@ -+// -+// Copyright RIME Developers -+// Distributed under the BSD License -+// -+#ifndef RIME_BUILD_CONFIG_H_ -+#define RIME_BUILD_CONFIG_H_ -+ -+#cmakedefine RIME_BOOST_SIGNALS2 -+#cmakedefine RIME_ENABLE_LOGGING -+ -+#endif // RIME_BUILD_CONFIG_H_ ---- /src/rime/common.h -+++ /src/rime/common.h -@@ -7,6 +7,8 @@ - #ifndef RIME_COMMON_H_ - #define RIME_COMMON_H_ - -+#include <rime/build_config.h> -+ - #include <functional> - #include <list> - #include <map> -@@ -20,7 +22,7 @@ - #include <vector> - #include <boost/optional.hpp> - #define BOOST_BIND_NO_PLACEHOLDERS --#ifdef BOOST_SIGNALS2 -+#ifdef RIME_BOOST_SIGNALS2 - #include <boost/signals2/connection.hpp> - #include <boost/signals2/signal.hpp> - #else -@@ -79,7 +81,7 @@ - return std::make_shared<T>(std::forward<Args>(args)...); - } - --#ifdef BOOST_SIGNALS2 -+#ifdef RIME_BOOST_SIGNALS2 - using boost::signals2::connection; - using boost::signals2::signal; - #else ---- /src/rime/lever/deployment_tasks.cc -+++ /src/rime/lever/deployment_tasks.cc -@@ -4,6 +4,9 @@ - // - // 2011-12-10 GONG Chen <chen.sst@gmail.com> - // -+ -+#include <rime/build_config.h> -+ - #include <algorithm> - #include <boost/algorithm/string.hpp> - #include <boost/filesystem.hpp> ---- /src/rime/setup.cc -+++ /src/rime/setup.cc -@@ -5,6 +5,13 @@ - // 2011-10-02 GONG Chen <chen.sst@gmail.com> - // - -+#include <rime/build_config.h> -+ -+#ifdef RIME_ENABLE_EXTERNAL_PLUGINS -+#include <dlfcn.h> -+#include <glob.h> -+#endif // RIME_ENABLE_EXTERNAL_PLUGINS -+ - #ifdef RIME_ENABLE_LOGGING - #include <glog/logging.h> - #endif // RIME_ENABLE_LOGGING -@@ -36,6 +43,32 @@ - mm.LoadModule(module); - } - } -+ -+#ifdef RIME_ENABLE_EXTERNAL_PLUGINS -+ fs::path plugins_dir = fs::path(RIME_PLUGINS_DIR); -+ fs::path plugins_files = plugins_dir / "*.so"; -+ glob_t glob_buffer; -+ if (glob(plugins_files.string().c_str(), 0, NULL, &glob_buffer) == 0) { -+ for (size_t i = 0; i < glob_buffer.gl_pathc; i++) { -+ fs::path plugin_file(glob_buffer.gl_pathv[i]); -+ fs::path plugin_name = plugin_file.stem(); -+ fs::file_status plugin_file_status = fs::status(plugin_file); -+ if (fs::is_regular_file(plugin_file) && -+ plugin_file_status.permissions() & (fs::owner_exe | fs::group_exe | fs::others_exe)) { -+ void* handle = dlopen(plugin_file.string().c_str(), RTLD_LAZY); -+ if (handle) { -+ if (RimeModule* module = mm.Find(plugin_name.string())) { -+ mm.LoadModule(module); -+ } -+ } -+ else { -+ LOG(ERROR) << "dlopen error: " << dlerror(); -+ } -+ } -+ } -+ globfree(&glob_buffer); -+ } -+#endif - } - - // assume member is a non-null pointer in struct *p. diff --git a/app-i18n/librime/librime-1.5.3-r2.ebuild b/app-i18n/librime/librime-1.5.3-r2.ebuild deleted file mode 100644 index bec00f1025a0..000000000000 --- a/app-i18n/librime/librime-1.5.3-r2.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2012-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit cmake-utils - -if [[ "${PV}" == "9999" ]]; then - inherit git-r3 - - EGIT_REPO_URI="https://github.com/rime/librime" - EGIT_SUBMODULES=() -fi - -DESCRIPTION="RIME (Rime Input Method Engine) core library" -HOMEPAGE="https://rime.im/ https://github.com/rime/librime" -if [[ "${PV}" == "9999" ]]; then - SRC_URI="" -else - SRC_URI="https://github.com/rime/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" -fi - -LICENSE="BSD" -SLOT="0/1" -KEYWORDS="amd64 arm64 ppc ppc64 x86" -IUSE="debug test" -RESTRICT="!test? ( test )" - -BDEPEND="" -RDEPEND="app-i18n/opencc:0= - >=dev-cpp/glog-0.3.5:0= - dev-cpp/yaml-cpp:0= - dev-libs/boost:0=[nls,threads(+)] - dev-libs/leveldb:0= - dev-libs/marisa:0=" -DEPEND="${RDEPEND} - dev-libs/darts - dev-libs/utfcpp - x11-base/xorg-proto - test? ( dev-cpp/gtest )" - -PATCHES=( - "${FILESDIR}/${P}-log_files_mode.patch" -) - -DOCS=(CHANGELOG.md README.md) - -src_prepare() { - # Use headers of dev-libs/darts, dev-libs/utfcpp and x11-base/xorg-proto. - sed -e "/\${PROJECT_SOURCE_DIR}\/thirdparty/d" -i CMakeLists.txt || die - rm -r thirdparty || die - - cmake-utils_src_prepare -} - -src_configure() { - local -x CXXFLAGS="${CXXFLAGS} -I${ESYSROOT}/usr/include/utf8cpp" - - if use debug; then - CXXFLAGS+=" -DDCHECK_ALWAYS_ON" - else - CXXFLAGS+=" -DNDEBUG" - fi - - local mycmakeargs=( - -DBOOST_USE_CXX11=ON - -DBUILD_TEST=$(usex test ON OFF) - -DCMAKE_DISABLE_FIND_PACKAGE_Gflags=ON - -DCMAKE_DISABLE_FIND_PACKAGE_Iconv=ON - -DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)" - ) - - cmake-utils_src_configure -} diff --git a/app-i18n/librime/librime-1.6.0-r1.ebuild b/app-i18n/librime/librime-1.6.0-r1.ebuild deleted file mode 100644 index 77cc61ea01a8..000000000000 --- a/app-i18n/librime/librime-1.6.0-r1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2012-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit cmake - -if [[ "${PV}" == "9999" ]]; then - inherit git-r3 - - EGIT_REPO_URI="https://github.com/rime/librime" - EGIT_SUBMODULES=() -fi - -DESCRIPTION="RIME (Rime Input Method Engine) core library" -HOMEPAGE="https://rime.im/ https://github.com/rime/librime" -if [[ "${PV}" == "9999" ]]; then - SRC_URI="" -else - SRC_URI="https://github.com/rime/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" -fi - -LICENSE="BSD" -SLOT="0/1-${PV}" -KEYWORDS="~amd64 ~arm64 ~x86" -IUSE="debug test" -RESTRICT="!test? ( test )" - -BDEPEND="dev-libs/capnproto:0" -RDEPEND="app-i18n/opencc:0= - >=dev-cpp/glog-0.3.5:0= - dev-cpp/yaml-cpp:0= - dev-libs/boost:0=[threads(+)] - dev-libs/capnproto:0= - dev-libs/leveldb:0= - dev-libs/marisa:0=" -DEPEND="${RDEPEND} - dev-libs/darts - dev-libs/utfcpp - x11-base/xorg-proto - test? ( dev-cpp/gtest )" - -DOCS=(CHANGELOG.md README.md) - -src_prepare() { - eapply "${FILESDIR}/${PN}-1.6.0-boost-1.76.patch" - eapply "${FILESDIR}/${PN}-1.6.0-plugins.patch" - - # Use headers of dev-libs/darts, dev-libs/utfcpp and x11-base/xorg-proto. - sed -e "/\${PROJECT_SOURCE_DIR}\/thirdparty/d" -i CMakeLists.txt || die - rm -r thirdparty || die - - cmake_src_prepare -} - -src_configure() { - local -x CXXFLAGS="${CXXFLAGS} -I${ESYSROOT}/usr/include/utf8cpp" - - if use debug; then - CXXFLAGS+=" -DDCHECK_ALWAYS_ON" - else - CXXFLAGS+=" -DNDEBUG" - fi - - local mycmakeargs=( - -DBOOST_USE_CXX11=ON - -DBUILD_TEST=$(usex test ON OFF) - -DCMAKE_DISABLE_FIND_PACKAGE_Gflags=ON - -DENABLE_EXTERNAL_PLUGINS=ON - -DINSTALL_PRIVATE_HEADERS=ON - ) - - cmake_src_configure -} diff --git a/app-i18n/librime/librime-1.6.1-r1.ebuild b/app-i18n/librime/librime-1.6.1-r1.ebuild deleted file mode 100644 index 0f2a5d3dbec4..000000000000 --- a/app-i18n/librime/librime-1.6.1-r1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2012-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit cmake - -if [[ "${PV}" == "9999" ]]; then - inherit git-r3 - - EGIT_REPO_URI="https://github.com/rime/librime" - EGIT_SUBMODULES=() -fi - -DESCRIPTION="RIME (Rime Input Method Engine) core library" -HOMEPAGE="https://rime.im/ https://github.com/rime/librime" -if [[ "${PV}" == "9999" ]]; then - SRC_URI="" -else - SRC_URI="https://github.com/rime/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" -fi - -LICENSE="BSD" -SLOT="0/1-${PV}" -KEYWORDS="~amd64 ~arm64 ~x86" -IUSE="debug test" -RESTRICT="!test? ( test )" - -BDEPEND="dev-libs/capnproto:0" -RDEPEND="app-i18n/opencc:0= - >=dev-cpp/glog-0.3.5:0= - dev-cpp/yaml-cpp:0= - dev-libs/boost:0=[threads(+)] - dev-libs/capnproto:0= - dev-libs/leveldb:0= - dev-libs/marisa:0=" -DEPEND="${RDEPEND} - dev-libs/darts - dev-libs/utfcpp - x11-base/xorg-proto - test? ( dev-cpp/gtest )" - -DOCS=(CHANGELOG.md README.md) - -src_prepare() { - eapply "${FILESDIR}/${PN}-1.6.0-boost-1.76.patch" - eapply "${FILESDIR}/${PN}-1.6.1-plugins.patch" - - # Use headers of dev-libs/darts, dev-libs/utfcpp and x11-base/xorg-proto. - sed -e "/\${PROJECT_SOURCE_DIR}\/thirdparty/d" -i CMakeLists.txt || die - rm -r thirdparty || die - - cmake_src_prepare -} - -src_configure() { - local -x CXXFLAGS="${CXXFLAGS} -I${ESYSROOT}/usr/include/utf8cpp" - - if use debug; then - CXXFLAGS+=" -DDCHECK_ALWAYS_ON" - else - CXXFLAGS+=" -DNDEBUG" - fi - - local mycmakeargs=( - -DBOOST_USE_CXX11=ON - -DBUILD_TEST=$(usex test ON OFF) - -DCMAKE_DISABLE_FIND_PACKAGE_Gflags=ON - -DENABLE_EXTERNAL_PLUGINS=ON - -DINSTALL_PRIVATE_HEADERS=ON - ) - - cmake_src_configure -} |