From 9e286e0ef55033b2daddaaf48abae5f026923a67 Mon Sep 17 00:00:00 2001 From: star9029 Date: Fri, 6 Sep 2024 19:33:47 +0800 Subject: [PATCH 1/2] cppjieba: add package --- packages/c/cppjieba/xmake.lua | 28 ++++++++++++++++++++++++++++ packages/l/limonp/xmake.lua | 27 +++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 packages/c/cppjieba/xmake.lua create mode 100644 packages/l/limonp/xmake.lua diff --git a/packages/c/cppjieba/xmake.lua b/packages/c/cppjieba/xmake.lua new file mode 100644 index 00000000000..ff7a97112cc --- /dev/null +++ b/packages/c/cppjieba/xmake.lua @@ -0,0 +1,28 @@ +package("cppjieba") + set_kind("library", {headeronly = true}) + set_homepage("https://github.com/yanyiwu/cppjieba") + set_description([["结巴"中文分词的C++版本]]) + set_license("MIT") + + add_urls("https://github.com/yanyiwu/cppjieba/archive/refs/tags/$(version).tar.gz", + "https://github.com/yanyiwu/cppjieba.git", {submodules = false}) + + add_versions("v5.2.0", "00c420e9e1b212827a38b6e252468895f744c0e7be8c4feaab4e0a93b8d3b1ca") + + add_deps("cmake") + add_deps("limonp") + + on_install(function (package) + if package:has_tool("cxx", "cl") then + package:add("cxxflags", "/utf-8") + end + os.cp("include", package:installdir()) + end) + + on_test(function (package) + assert(package:check_cxxsnippets({test = [[ + void test() { + cppjieba::Jieba jieba("DICT_PATH", "HMM_PATH", "USER_DICT_PATH", "IDF_PATH", "STOP_WORD_PATH"); + } + ]]}, {configs = {languages = "c++14"}, includes = "cppjieba/Jieba.hpp"})) + end) diff --git a/packages/l/limonp/xmake.lua b/packages/l/limonp/xmake.lua new file mode 100644 index 00000000000..19a40aa6d87 --- /dev/null +++ b/packages/l/limonp/xmake.lua @@ -0,0 +1,27 @@ +package("limonp") + set_kind("library", {headeronly = true}) + set_homepage("https://github.com/yanyiwu/limonp") + set_description("C++ headers(hpp) library with Python style.") + set_license("MIT") + + add_urls("https://github.com/yanyiwu/limonp/archive/refs/tags/$(version).tar.gz", + "https://github.com/yanyiwu/limonp.git") + + add_versions("v0.9.0", "92d90b262ab2e3375dd386731deeb028f88ee7d07d0695d53d10bef6887d2f5f") + + add_deps("cmake") + + on_install(function (package) + local configs = {} + table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:is_debug() and "Debug" or "Release")) + io.replace("CMakeLists.txt", "ADD_SUBDIRECTORY(test)", "", {plain = true}) + import("package.tools.cmake").install(package, configs) + end) + + on_test(function (package) + assert(package:check_cxxsnippets({test = [[ + void test() { + limonp::StringFormat("format"); + } + ]]}, {configs = {languages = "c++11"}, includes = "limonp/StringUtil.hpp"})) + end) From c1b90c69a89448606b577acfec2a611ff33e5c26 Mon Sep 17 00:00:00 2001 From: star9029 Date: Fri, 6 Sep 2024 19:34:32 +0800 Subject: [PATCH 2/2] improve xmake.lua --- packages/c/cppjieba/xmake.lua | 1 - packages/l/limonp/xmake.lua | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/c/cppjieba/xmake.lua b/packages/c/cppjieba/xmake.lua index ff7a97112cc..336da361989 100644 --- a/packages/c/cppjieba/xmake.lua +++ b/packages/c/cppjieba/xmake.lua @@ -9,7 +9,6 @@ package("cppjieba") add_versions("v5.2.0", "00c420e9e1b212827a38b6e252468895f744c0e7be8c4feaab4e0a93b8d3b1ca") - add_deps("cmake") add_deps("limonp") on_install(function (package) diff --git a/packages/l/limonp/xmake.lua b/packages/l/limonp/xmake.lua index 19a40aa6d87..82c6ec91db2 100644 --- a/packages/l/limonp/xmake.lua +++ b/packages/l/limonp/xmake.lua @@ -12,9 +12,10 @@ package("limonp") add_deps("cmake") on_install(function (package) + io.replace("CMakeLists.txt", "ADD_SUBDIRECTORY(test)", "", {plain = true}) + local configs = {} table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:is_debug() and "Debug" or "Release")) - io.replace("CMakeLists.txt", "ADD_SUBDIRECTORY(test)", "", {plain = true}) import("package.tools.cmake").install(package, configs) end)