This patch worked for me
diff --git a/tree/CMakeLists.txt b/tree/CMakeLists.txt
index 2a9788a..4650a53 100644
--- a/tree/CMakeLists.txt
- "-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}"
- "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
- "-DCMAKE_POSITION_INDEPENDENT_CODE=${CMAKE_POSITION_INDEPENDENT_CODE}"
- "-DLIBRARY_OUTPUT_PATH=${CMAKE_SOURCE_DIR}/abseil-cpp/lib")
- if(DEFINED CMAKE_OSX_ARCHITECTURES)
- set(ABSEIL_CMAKE_ARGS
- ${ABSEIL_CMAKE_ARGS}
- "-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}")
- endif()
- ExternalProject_Add(abseil-cpp
- GIT_REPOSITORY https://github.com/abseil/abseil-cpp.git
- GIT_TAG ${ABSEIL_VER}
- PREFIX ${CMAKE_SOURCE_DIR}/abseil-cpp
- CMAKE_ARGS ${ABSEIL_CMAKE_ARGS}
- )
- ExternalProject_Get_Property(abseil-cpp install_dir)
- set(abseil_install_dir ${install_dir})
- include_directories (${abseil_install_dir}/include)
-
- add_dependencies(_tree abseil-cpp)
-
- if (WIN32 OR MSVC)
- set(ABSEIL_LIB_PREF "absl")
- set(LIB_SUFF "lib")
- else()
- set(ABSEIL_LIB_PREF "libabsl")
- set(LIB_SUFF "a")
- endif()
+set(ABSEIL_LIBS int128 raw_hash_set raw_logging_internal strings throw_delegate)
+find_package(
+ absl
+ REQUIRED
+ COMPONENTS ${ABSEIL_LIBS}
+)
+
+foreach(ABSEIL_LIB IN LISTS ABSEIL_LIBS)
+ target_link_libraries(_tree PRIVATE "absl::${ABSEIL_LIB}")
+endforeach()
- # Link abseil static libs.
- # We don't use find_library here to force cmake to build abseil before linking.
- set(ABSEIL_LIBS int128 raw_hash_set raw_logging_internal strings throw_delegate)
- foreach(ABSEIL_LIB IN LISTS ABSEIL_LIBS)
- target_link_libraries(_tree PRIVATE
- "${abseil_install_dir}/lib/${ABSEIL_LIB_PREF}_${ABSEIL_LIB}.${LIB_SUFF}")
- endforeach()
-else()
- target_link_libraries(_tree PRIVATE absl::int128 absl::raw_hash_set absl::raw_logging_internal absl::strings absl::throw_delegate)
-endif()
# Make the module private to tree package.
set_target_properties(_tree PROPERTIES OUTPUT_NAME tree/_tree)
Pinned Comments
acxz commented on 2020-04-04 17:16 (UTC)
Development is on Github: https://github.com/acxz/pkgbuilds Please open issues and PRs there instead of commenting.