You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by cm...@apache.org on 2023/10/16 20:03:00 UTC
[trafficserver] branch master updated: Add resolv find package script (#10624)
This is an automated email from the ASF dual-hosted git repository.
cmcfarlen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/master by this push:
new e3e379bf7b Add resolv find package script (#10624)
e3e379bf7b is described below
commit e3e379bf7bcd427596e8fd082b55ba2b195b3001
Author: Chris McFarlen <ch...@mcfarlen.us>
AuthorDate: Mon Oct 16 15:02:53 2023 -0500
Add resolv find package script (#10624)
* Add resolv find package script
---
CMakeLists.txt | 3 ++
.../CMakeLists.txt => cmake/Findresolv.cmake | 44 ++++++----------------
iocore/eventsystem/CMakeLists.txt | 2 +-
src/tscore/CMakeLists.txt | 5 +--
4 files changed, 17 insertions(+), 37 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 88bac33e31..59966792ad 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -421,6 +421,9 @@ check_struct_has_member("struct sockaddr_in6" sin6_len "netinet/in.h" HAVE_STRUC
check_struct_has_member("struct stat" st_mtimespec "sys/stat.h" HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC)
check_struct_has_member("struct stat" st_mtim "sys/stat.h" HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC)
+# find resolv library if available
+find_package(resolv)
+
if(ENABLE_DOCS OR ENABLE_AUTEST)
find_package(Python3 REQUIRED)
find_program(PipEnv pipenv REQUIRED)
diff --git a/iocore/eventsystem/CMakeLists.txt b/cmake/Findresolv.cmake
similarity index 50%
copy from iocore/eventsystem/CMakeLists.txt
copy to cmake/Findresolv.cmake
index aa0c3fc0fe..eefa1a89c0 100644
--- a/iocore/eventsystem/CMakeLists.txt
+++ b/cmake/Findresolv.cmake
@@ -15,41 +15,19 @@
#
#######################
+find_library(resolv_LIBRARY resolv)
+find_path(resolv_INCLUDE_DIR resolv.h)
-add_library(inkevent STATIC
- EventSystem.cc
- IOBuffer.cc
- Inline.cc
- Lock.cc
- MIOBufferWriter.cc
- PQ-List.cc
- Processor.cc
- ProtectedQueue.cc
- ProxyAllocator.cc
- SocketManager.cc
- Tasks.cc
- Thread.cc
- UnixEThread.cc
- UnixEvent.cc
- UnixEventProcessor.cc
- ConfigProcessor.cc
- RecRawStatsImpl.cc
- RecProcess.cc)
-add_library(ts::inkevent ALIAS inkevent)
+mark_as_advanced(resolv_FOUND resolv_LIBRARY resolv_INCLUDE_DIR)
-target_include_directories(inkevent PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
-
-target_link_libraries(inkevent
- PUBLIC
- ts::records
- ts::tscore
- PRIVATE
- libswoc
- resolv # transitive
- tscpputil # transitive
- yaml-cpp::yaml-cpp # transitive
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(resolv
+ REQUIRED_VARS resolv_LIBRARY resolv_INCLUDE_DIR
)
-if(TS_USE_HWLOC)
- target_link_libraries(inkevent PRIVATE hwloc::hwloc)
+# Add the library but only add libraries if resolv is found
+add_library(resolv::resolv INTERFACE IMPORTED)
+if(resolv_FOUND)
+ target_include_directories(resolv::resolv INTERFACE ${resolv_INCLUDE_DIRS})
+ target_link_libraries(resolv::resolv INTERFACE ${resolv_LIBRARY})
endif()
diff --git a/iocore/eventsystem/CMakeLists.txt b/iocore/eventsystem/CMakeLists.txt
index aa0c3fc0fe..c2d005bfaa 100644
--- a/iocore/eventsystem/CMakeLists.txt
+++ b/iocore/eventsystem/CMakeLists.txt
@@ -45,7 +45,7 @@ target_link_libraries(inkevent
ts::tscore
PRIVATE
libswoc
- resolv # transitive
+ resolv::resolv # transitive
tscpputil # transitive
yaml-cpp::yaml-cpp # transitive
)
diff --git a/src/tscore/CMakeLists.txt b/src/tscore/CMakeLists.txt
index 6be2921cb1..af86033818 100644
--- a/src/tscore/CMakeLists.txt
+++ b/src/tscore/CMakeLists.txt
@@ -118,8 +118,7 @@ target_link_libraries(tscore
PCRE::PCRE
libswoc
yaml-cpp::yaml-cpp
- PRIVATE
- resolv
+ resolv::resolv
)
if(TS_USE_POSIX_CAP)
@@ -174,7 +173,7 @@ if(BUILD_TESTING)
ts::tscore
ts::tsapicore
yaml-cpp::yaml-cpp
- resolv
+ resolv::resolv
ts::tscpputil
OpenSSL::Crypto
OpenSSL::SSL