Skip to content

Commit 544469c

Browse files
MrAnnobazsi
authored andcommitted
cmake: use modern GLib imported targets
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
1 parent 8222490 commit 544469c

File tree

8 files changed

+61
-22
lines changed

8 files changed

+61
-22
lines changed

cmake/Modules/FindGLIB.cmake

+46
Original file line numberDiff line numberDiff line change
@@ -122,3 +122,49 @@ mark_as_advanced(
122122
GLIB_INCLUDE_DIRS
123123
GLIB_LIBRARIES
124124
)
125+
126+
if (GLIB_FOUND AND NOT TARGET GLib::GLib)
127+
add_library(GLib::GLib UNKNOWN IMPORTED)
128+
set_target_properties(GLib::GLib PROPERTIES
129+
INTERFACE_INCLUDE_DIRECTORIES "${GLIB_INCLUDE_DIRS}"
130+
INTERFACE_LINK_LIBRARIES "${GLIB_LIBRARIES}"
131+
IMPORTED_LOCATION "${GLIB_LIBRARIES}"
132+
)
133+
endif ()
134+
135+
136+
if (EXISTS "${GLIB_GIO_LIBRARIES}" AND NOT TARGET GLib::GIO)
137+
add_library(GLib::GIO UNKNOWN IMPORTED)
138+
set_target_properties(GLib::GIO PROPERTIES
139+
INTERFACE_INCLUDE_DIRECTORIES "${GLIB_INCLUDE_DIRS}"
140+
INTERFACE_LINK_LIBRARIES "${GLIB_GIO_LIBRARIES}"
141+
IMPORTED_LOCATION "${GLIB_GIO_LIBRARIES}"
142+
)
143+
endif ()
144+
145+
if (EXISTS "${GLIB_GOBJECT_LIBRARIES}" AND NOT TARGET GLib::GObject)
146+
add_library(GLib::GObject UNKNOWN IMPORTED)
147+
set_target_properties(GLib::GObject PROPERTIES
148+
INTERFACE_INCLUDE_DIRECTORIES "${GLIB_INCLUDE_DIRS}"
149+
INTERFACE_LINK_LIBRARIES "${GLIB_GOBJECT_LIBRARIES}"
150+
IMPORTED_LOCATION "${GLIB_GOBJECT_LIBRARIES}"
151+
)
152+
endif ()
153+
154+
if (EXISTS "${GLIB_GMODULE_LIBRARIES}" AND NOT TARGET GLib::GModule)
155+
add_library(GLib::GModule UNKNOWN IMPORTED)
156+
set_target_properties(GLib::GModule PROPERTIES
157+
INTERFACE_INCLUDE_DIRECTORIES "${GLIB_INCLUDE_DIRS}"
158+
INTERFACE_LINK_LIBRARIES "${GLIB_GMODULE_LIBRARIES}"
159+
IMPORTED_LOCATION "${GLIB_GMODULE_LIBRARIES}"
160+
)
161+
endif ()
162+
163+
if (EXISTS "${GLIB_GTHREAD_LIBRARIES}" AND NOT TARGET GLib::GThread)
164+
add_library(GLib::GThread UNKNOWN IMPORTED)
165+
set_target_properties(GLib::GThread PROPERTIES
166+
INTERFACE_INCLUDE_DIRECTORIES "${GLIB_INCLUDE_DIRS}"
167+
INTERFACE_LINK_LIBRARIES "${GLIB_GTHREAD_LIBRARIES}"
168+
IMPORTED_LOCATION "${GLIB_GTHREAD_LIBRARIES}"
169+
)
170+
endif ()

lib/CMakeLists.txt

+3-4
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,6 @@ bison_target(ParserExprGrammar
296296
add_flex_bison_dependency(CfgLexer ParserExprGrammar)
297297

298298
set(CORE_INCLUDE_DIRS
299-
${GLIB_INCLUDE_DIRS}
300299
${Gettext_INCLUDE_DIR}
301300
${IVYKIS_INCLUDE_DIR}
302301
${LIBPCRE_INCLUDE_DIRS}
@@ -320,9 +319,9 @@ target_link_libraries(
320319
syslog-ng
321320
PUBLIC
322321
eventlog
323-
${GLIB_GMODULE_LIBRARIES}
324-
${GLIB_GTHREAD_LIBRARIES}
325-
${GLIB_LIBRARIES}
322+
GLib::GLib
323+
GLib::GThread
324+
GLib::GModule
326325
${Gettext_LIBRARIES}
327326
${IVYKIS_LIBRARY}
328327
${LIBPCRE_LIBRARIES}

lib/eventlog/CMakeLists.txt

+1-3
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,11 @@ target_include_directories(eventlog
1212
SYSTEM
1313
INTERFACE
1414
${CMAKE_CURRENT_SOURCE_DIR}/src
15-
PRIVATE
16-
${GLIB_INCLUDE_DIRS}
1715
)
1816

1917
target_link_libraries(eventlog
2018
PRIVATE
21-
${GLIB_LIBRARIES}
19+
GLib::GLib
2220
)
2321

2422
install(TARGETS eventlog DESTINATION lib)

lib/secret-storage/CMakeLists.txt

+1-2
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,11 @@ add_library(secret-storage SHARED ${SECRET_STORAGE_SOURCES})
99

1010
target_include_directories(secret-storage
1111
PRIVATE
12-
${GLIB_INCLUDE_DIRS}
1312
# workaround, "compat" should be a separate static library
1413
${PROJECT_SOURCE_DIR}/lib
1514
)
1615

17-
target_link_libraries(secret-storage PRIVATE ${GLIB_LIBRARIES})
16+
target_link_libraries(secret-storage PRIVATE GLib::GLib)
1817
set_target_properties(secret-storage PROPERTIES C_VISIBILITY_PRESET hidden)
1918

2019
install(TARGETS secret-storage LIBRARY DESTINATION lib)

persist-tool/CMakeLists.txt

+3-4
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,14 @@ add_executable(persist-tool ${PERSIST-TOOL_SOURCE})
1010
include_directories(persist-tool
1111
${CORE_INCLUDE_DIRS}
1212
${CMAKE_CURRENT_SOURCE_DIR}
13-
${GLIB_INCLUDE_DIRS}
1413
${PROJECT_SOURCE_DIR}/lib
1514
${PROJECT_SOURCE_DIR}/lib/eventlog/src
1615
)
1716

1817
target_link_libraries(persist-tool
19-
${GLIB_GMODULE_LIBRARIES}
20-
${GLIB_GTHREAD_LIBRARIES}
21-
${GLIB_LIBRARIES}
18+
GLib::GLib
19+
GLib::GModule
20+
GLib::GThread
2221
syslog-ng
2322
)
2423

syslog-ng-ctl/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ add_executable(syslog-ng-ctl ${SYSLOG_NG_CTL_SOURCES})
2222
target_link_libraries(syslog-ng-ctl PRIVATE
2323
syslog-ng
2424
secret-storage
25-
${GLIB_LIBRARIES}
25+
GLib::GLib
2626
${RESOLV_LIBS})
2727
target_include_directories(syslog-ng-ctl PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
2828
install(TARGETS syslog-ng-ctl RUNTIME DESTINATION sbin)

tests/loggen/CMakeLists.txt

+3-4
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,15 @@ add_library(loggen_helper STATIC ${LOGGEN_HELPER_SOURCE})
1212
target_include_directories(loggen_helper PUBLIC
1313
${CORE_INCLUDE_DIRS}
1414
${CMAKE_CURRENT_SOURCE_DIR}
15-
${GLIB_INCLUDE_DIRS}
1615
${PROJECT_SOURCE_DIR}/lib
1716
)
1817

1918
target_link_libraries(
2019
loggen_helper
2120
PUBLIC
22-
${GLIB_GMODULE_LIBRARIES}
23-
${GLIB_GTHREAD_LIBRARIES}
24-
${GLIB_LIBRARIES}
21+
GLib::GLib
22+
GLib::GModule
23+
GLib::GThread
2524
OpenSSL::SSL
2625
)
2726

tests/loggen/ssl_plugin/CMakeLists.txt

+3-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
include_directories(loggen_ssl_plugin
22
${CORE_INCLUDE_DIRS}
3-
${GLIB_INCLUDE_DIRS}
43
${LOGGEN_INCLUDE_DIR}
54
)
65

@@ -18,9 +17,9 @@ add_library(loggen_ssl_plugin
1817
target_link_libraries(
1918
loggen_ssl_plugin
2019
loggen_helper
21-
${GLIB_GMODULE_LIBRARIES}
22-
${GLIB_GTHREAD_LIBRARIES}
23-
${GLIB_LIBRARIES}
20+
GLib::GLib
21+
GLib::GModule
22+
GLib::GThread
2423
OpenSSL::SSL
2524
)
2625

0 commit comments

Comments
 (0)