Skip to content

Commit 3677925

Browse files
authored
Merge pull request log4cplus#660 from wilx/master
Use target_link_libraries with PRIVATE keyword. Fixes log4cplus#659.
2 parents 82ad08a + b59e66c commit 3677925

File tree

3 files changed

+18
-13
lines changed

3 files changed

+18
-13
lines changed

CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ set (CMAKE_POSITION_INDEPENDENT_CODE ON)
2525
set (CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE ON)
2626
set (CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELWITHDEBINFO ON)
2727
set (CMAKE_INTERPROCEDURAL_OPTIMIZATION_MINSIZEREL ON)
28+
# Hint to prefer -pthread over -lpthread
29+
set (THREADS_PREFER_PTHREAD_FLAG ON)
2830

2931
enable_language (CXX)
3032
if (MSVC)
@@ -61,11 +63,11 @@ endif(LOG4CPLUS_REQUIRE_EXPLICIT_INITIALIZATION)
6163

6264
option(LOG4CPLUS_ENABLE_THREAD_POOL "Instantiate internal thread pool for when AsyncAppend=true" ON)
6365
if (LOG4CPLUS_ENABLE_THREAD_POOL)
64-
add_compile_definitions (LOG4CPLUS_ENABLE_THREAD_POOL=1)
66+
add_compile_definitions (LOG4CPLUS_ENABLE_THREAD_POOL=1)
6567
endif()
6668

6769
if(NOT LOG4CPLUS_SINGLE_THREADED)
68-
find_package (Threads)
70+
find_package (Threads REQUIRED)
6971
message (STATUS "Threads: ${CMAKE_THREAD_LIBS_INIT}")
7072
endif(NOT LOG4CPLUS_SINGLE_THREADED)
7173

simpleserver/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ if (UNICODE)
1010
target_compile_definitions (${loggingserver} PUBLIC _UNICODE)
1111
add_definitions (-UMBCS -U_MBCS)
1212
endif (UNICODE)
13-
target_link_libraries (${loggingserver} ${log4cplus})
13+
target_link_libraries (${loggingserver} PUBLIC ${log4cplus})
1414

1515
install(TARGETS ${loggingserver} DESTINATION ${CMAKE_INSTALL_BINDIR})

src/CMakeLists.txt

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -105,29 +105,31 @@ if (UNICODE)
105105
add_definitions (-UMBCS -U_MBCS)
106106
endif (UNICODE)
107107

108-
set (log4cplus_LIBS ${CMAKE_THREAD_LIBS_INIT})
108+
if (NOT LOG4CPLUS_SINGLE_THREADED)
109+
target_link_libraries (${log4cplus} PRIVATE Threads::Threads)
110+
endif ()
111+
109112
if (LIBRT)
110-
list (APPEND log4cplus_LIBS ${LIBRT})
113+
target_link_libraries (${log4cplus} PRIVATE ${LIBRT})
111114
endif ()
112115
if (LIBPOSIX4)
113-
list (APPEND log4cplus_LIBS ${LIBPOSIX4})
116+
target_link_libraries (${log4cplus} PRIVATE ${LIBPOSIX4})
114117
endif ()
115118
if (LIBCPOSIX)
116-
list (APPEND log4cplus_LIBS ${LIBCPOSIX})
119+
target_link_libraries (${log4cplus} PRIVATE ${LIBCPOSIX})
117120
endif ()
118121
if (LIBSOCKET)
119-
list (APPEND log4cplus_LIBS ${LIBSOCKET})
122+
target_link_libraries (${log4cplus} PRIVATE ${LIBSOCKET})
120123
endif ()
121124
if (LIBNSL)
122-
list (APPEND log4cplus_LIBS ${LIBNSL})
125+
target_link_libraries (${log4cplus} PRIVATE ${LIBNSL})
123126
endif ()
124127
if (LOG4CPLUS_WITH_ICONV AND LIBICONV)
125-
list (APPEND log4cplus_LIBS ${LIBICONV})
128+
target_link_libraries (${log4cplus} PRIVATE ${LIBICONV})
126129
endif ()
127130
if (ANDROID AND WITH_UNIT_TESTS)
128-
list (APPEND log4cplus_LIBS ${ANDROID_LOG_LIB})
131+
target_link_libraries (${log4cplus} PRIVATE ${ANDROID_LOG_LIB})
129132
endif ()
130-
target_link_libraries (${log4cplus} ${log4cplus_LIBS})
131133

132134
if (ANDROID)
133135
# Android does not seem to have SO version support.
@@ -155,7 +157,8 @@ endif ()
155157
if (WIN32)
156158
set_target_properties (${log4cplus} PROPERTIES
157159
DEBUG_POSTFIX "D")
158-
target_link_libraries (${log4cplus} ws2_32 advapi32)
160+
target_link_libraries (${log4cplus} PRIVATE ws2_32)
161+
target_link_libraries (${log4cplus} PRIVATE advapi32)
159162
endif ()
160163

161164
###

0 commit comments

Comments
 (0)