From eafd7ebca35741f26e8ffd38d56d4d0b57fbeea0 Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 13:19:25 +0100 Subject: [PATCH 1/8] re2: remove limits --- packages/r/re2/xmake.lua | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index 127bc6fc46d..54ffc8c4a0d 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -1,10 +1,10 @@ package("re2") - set_homepage("https://github.com/google/re2") set_description("RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library.") set_license("BSD-3-Clause") add_urls("https://github.com/google/re2/archive/$(version).tar.gz", {version = function (version) return version:gsub("%.", "-") end}) + add_versions("2020.11.01", "8903cc66c9d34c72e2bc91722288ebc7e3ec37787ecfef44d204b2d6281954d7") add_versions("2021.06.01", "26155e050b10b5969e986dab35654247a3b1b295e0532880b5a9c13c0a700ceb") add_versions("2021.08.01", "cd8c950b528f413e02c12970dce62a7b6f37733d7f68807e73a2d9bc9db79bc8") @@ -14,6 +14,7 @@ package("re2") add_versions("2024.03.01", "7b2b3aa8241eac25f674e5b5b2e23d4ac4f0a8891418a2661869f736f03f57f4") add_versions("2024.04.01", "3f6690c3393a613c3a0b566309cf04dc381d61470079b653afc47c67fb898198") add_versions("2024.06.01", "7326c74cddaa90b12090fcfc915fe7b4655723893c960ee3c2c66e85c5504b6c") + add_versions("2024.07.02", "eb2df807c781601c14a260a507a5bb4509be1ee626024cb45acbd57cb9d4032b") add_deps("cmake", "abseil") @@ -23,17 +24,24 @@ package("re2") on_load(function (package) local version = package:version() - if version:eq("2024.06.01") and package:is_plat("mingw") then + if version:ge("2024.06.01") and package:is_plat("mingw") then package:add("syslinks", "Dbghelp") end end) - on_install("macosx", "linux", "windows", "mingw", "cross", function (package) - local configs = {"-DRE2_BUILD_TESTING=OFF"} - table.insert(configs, "-DCMAKE_CXX_STANDARD=17") + on_install(function (package) + local configs = { + "-DRE2_BUILD_TESTING=OFF", + "-DCMAKE_CXX_STANDARD=17", + "-Dabsl_DIR=" .. package:dep("abseil"):installdir() + } + + io.replace("CMakeLists.txt", "find_package(absl REQUIRED)", "find_package(absl REQUIRED CONFIG)", {plain = true}) + table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF")) - import("package.tools.cmake").install(package, configs) + + import("package.tools.cmake").install(package, configs, {packagedeps = {"abseil"}}) end) on_test(function (package) From fbf97fb17161895cad15922cfa6de1701ff952c2 Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 13:34:26 +0100 Subject: [PATCH 2/8] re2: directly to lib/cmake/absl --- packages/r/re2/xmake.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index 54ffc8c4a0d..eb4825bf6d1 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -33,10 +33,10 @@ package("re2") local configs = { "-DRE2_BUILD_TESTING=OFF", "-DCMAKE_CXX_STANDARD=17", - "-Dabsl_DIR=" .. package:dep("abseil"):installdir() + "-Dabsl_DIR=" .. package:dep("abseil"):installdir("lib/cmake/absl"), } - io.replace("CMakeLists.txt", "find_package(absl REQUIRED)", "find_package(absl REQUIRED CONFIG)", {plain = true}) + -- io.replace("CMakeLists.txt", "find_package(absl REQUIRED)", "find_package(absl REQUIRED CONFIG)", {plain = true}) table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF")) From ade75cb9d80a01e8479436a1d12c95e365e9ae56 Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 13:39:07 +0100 Subject: [PATCH 3/8] re2: clean up code --- packages/r/re2/xmake.lua | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index eb4825bf6d1..e0c0b408ed1 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -33,13 +33,11 @@ package("re2") local configs = { "-DRE2_BUILD_TESTING=OFF", "-DCMAKE_CXX_STANDARD=17", - "-Dabsl_DIR=" .. package:dep("abseil"):installdir("lib/cmake/absl"), } - -- io.replace("CMakeLists.txt", "find_package(absl REQUIRED)", "find_package(absl REQUIRED CONFIG)", {plain = true}) - table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF")) + table.insert(configs, "-Dabsl_DIR=" .. (package:dep("abseil"):installdir("lib/cmake/absl"))) import("package.tools.cmake").install(package, configs, {packagedeps = {"abseil"}}) end) From 6be380b6d13198e601eabaa4127f2afb8cb20af1 Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 13:59:02 +0100 Subject: [PATCH 4/8] re2: move absl_DIR into config table --- packages/r/re2/xmake.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index e0c0b408ed1..5626be865c2 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -33,11 +33,11 @@ package("re2") local configs = { "-DRE2_BUILD_TESTING=OFF", "-DCMAKE_CXX_STANDARD=17", + "-Dabsl_DIR=" .. (package:dep("abseil"):installdir("lib/cmake/absl")), } table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF")) - table.insert(configs, "-Dabsl_DIR=" .. (package:dep("abseil"):installdir("lib/cmake/absl"))) import("package.tools.cmake").install(package, configs, {packagedeps = {"abseil"}}) end) From bdd3121b6da7577493c8a2965b0ab349ea7a5169 Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 14:02:39 +0100 Subject: [PATCH 5/8] move absl_DIR define to abseil package --- packages/a/abseil/xmake.lua | 1 + packages/r/re2/xmake.lua | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/a/abseil/xmake.lua b/packages/a/abseil/xmake.lua index dc0a7a8beff..af462025b71 100644 --- a/packages/a/abseil/xmake.lua +++ b/packages/a/abseil/xmake.lua @@ -34,6 +34,7 @@ package("abseil") if package:is_plat("windows") and package:config("shared") then package:add("defines", "ABSL_CONSUME_DLL") end + package:add("defines", "absl_DIR=" .. package:installdir("lib", "cmake", "absl")) end) on_install(function (package) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index 5626be865c2..16cb25f8159 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -33,7 +33,6 @@ package("re2") local configs = { "-DRE2_BUILD_TESTING=OFF", "-DCMAKE_CXX_STANDARD=17", - "-Dabsl_DIR=" .. (package:dep("abseil"):installdir("lib/cmake/absl")), } table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) From 28f877da475903f3da249649875005118a9d738e Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 14:25:28 +0100 Subject: [PATCH 6/8] re2: revert change --- packages/a/abseil/xmake.lua | 1 - packages/r/re2/xmake.lua | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/a/abseil/xmake.lua b/packages/a/abseil/xmake.lua index af462025b71..dc0a7a8beff 100644 --- a/packages/a/abseil/xmake.lua +++ b/packages/a/abseil/xmake.lua @@ -34,7 +34,6 @@ package("abseil") if package:is_plat("windows") and package:config("shared") then package:add("defines", "ABSL_CONSUME_DLL") end - package:add("defines", "absl_DIR=" .. package:installdir("lib", "cmake", "absl")) end) on_install(function (package) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index 16cb25f8159..92f46719719 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -33,6 +33,7 @@ package("re2") local configs = { "-DRE2_BUILD_TESTING=OFF", "-DCMAKE_CXX_STANDARD=17", + "-Dabsl_DIR=" .. (package:dep("abseil"):installdir("lib", "cmake", "absl")), } table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) From 3a29d637a3f70d0ea953d4a6c2fb7ad94c998075 Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Thu, 15 Aug 2024 18:35:18 +0100 Subject: [PATCH 7/8] re2: bsd add pthread --- packages/r/re2/xmake.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index 92f46719719..8e770a54b0c 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -18,7 +18,7 @@ package("re2") add_deps("cmake", "abseil") - if is_plat("linux") then + if is_plat("linux", "bsd") then add_syslinks("pthread") end From 6710e4f3691f550139d7857bddd3f835771995de Mon Sep 17 00:00:00 2001 From: Chi Huu Huynh <73843190+Chi-EEE@users.noreply.github.com> Date: Fri, 16 Aug 2024 11:20:09 +0100 Subject: [PATCH 8/8] re2: use dep("abseil"):fetch to get absl_DIR --- packages/r/re2/xmake.lua | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/packages/r/re2/xmake.lua b/packages/r/re2/xmake.lua index 8e770a54b0c..ea79d51aa1b 100644 --- a/packages/r/re2/xmake.lua +++ b/packages/r/re2/xmake.lua @@ -33,9 +33,21 @@ package("re2") local configs = { "-DRE2_BUILD_TESTING=OFF", "-DCMAKE_CXX_STANDARD=17", - "-Dabsl_DIR=" .. (package:dep("abseil"):installdir("lib", "cmake", "absl")), } + local absl_dir = "" + local abseil = package:dep("abseil"):fetch() + if abseil then + for _, linkdir in ipairs(abseil.linkdirs) do + local dir = path.join(linkdir, "cmake", "absl") + if os.isdir(dir) then + absl_dir = dir + break + end + end + end + table.insert(configs, "-Dabsl_DIR=" .. absl_dir) + table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))