Skip to content

Commit 9e5c532

Browse files
committed
Multi-configuration generator friendly CMakeLists
1 parent 0126694 commit 9e5c532

File tree

11 files changed

+22
-20
lines changed

11 files changed

+22
-20
lines changed

atkmm/atk/atkmm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ add_custom_command (OUTPUT atkmm.def
2828
COMMAND ECHO Will be generated later > atkmm.def
2929
)
3030
add_custom_command(TARGET atkmm-${ATKMM_VERSION} PRE_LINK
31-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/atkmm.def atkmm-${ATKMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/atkmm-${ATKMM_VERSION}.dir/*.obj
31+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/atkmm.def $<TARGET_FILE_NAME:atkmm-${ATKMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/atkmm-${ATKMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
3232
)
3333

3434
target_link_libraries(atkmm-${ATKMM_VERSION} atk-1.0.lib glibmm-${GLIBMM_VERSION} giomm-${GLIBMM_VERSION} sigc-${SIGC_VERSION})
@@ -38,7 +38,7 @@ LIBRARY DESTINATION "lib"
3838
ARCHIVE DESTINATION "lib"
3939
RUNTIME DESTINATION "bin")
4040

41-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/atkmm-${ATKMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
41+
install(FILES $<TARGET_PDB_FILE:atkmm-${ATKMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
4242

4343
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../${EXTRA}/atkmm/atkmmconfig.h DESTINATION "lib/atkmm-${ATKMM_VERSION}/include")
4444

cairomm/cairomm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ add_custom_command (OUTPUT cairomm.def
2828
COMMAND ECHO Will be generated later > cairomm.def
2929
)
3030
add_custom_command(TARGET cairomm-${CAIROMM_VERSION} PRE_LINK
31-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/cairomm.def cairomm-${CAIROMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/cairomm-${CAIROMM_VERSION}.dir/*.obj
31+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/cairomm.def $<TARGET_FILE_NAME:cairomm-${CAIROMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/cairomm-${CAIROMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
3232
)
3333

3434
target_link_libraries(cairomm-${CAIROMM_VERSION} cairo.lib cairo-gobject.lib sigc-${SIGC_VERSION})
3535

36-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cairomm-${CAIROMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
36+
install(FILES $<TARGET_PDB_FILE:cairomm-${CAIROMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
3737

3838
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../${EXTRA}/cairomm/cairommconfig.h DESTINATION "lib/cairomm-${CAIROMM_VERSION}/include")
3939

glibmm/gio/giomm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -132,15 +132,15 @@ add_custom_command (OUTPUT giomm.def
132132
COMMAND ECHO Will be generated later > giomm.def
133133
)
134134
add_custom_command(TARGET giomm-${GLIBMM_VERSION} PRE_LINK
135-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/giomm.def giomm-${GLIBMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/giomm-${GLIBMM_VERSION}.dir/*.obj
135+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/giomm.def $<TARGET_FILE_NAME:giomm-${GLIBMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/giomm-${GLIBMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
136136
)
137137

138138
install(TARGETS giomm-${GLIBMM_VERSION}
139139
LIBRARY DESTINATION "lib"
140140
ARCHIVE DESTINATION "lib"
141141
RUNTIME DESTINATION "bin")
142142

143-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/giomm-${GLIBMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
143+
install(FILES $<TARGET_PDB_FILE:giomm-${GLIBMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
144144

145145
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../${EXTRA}/giomm/giommconfig.h DESTINATION "lib/giomm-${GLIBMM_VERSION}/include")
146146

glibmm/glib/glibmm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ add_custom_command (OUTPUT glibmm.def
7474
COMMAND echo Will be generated later > glibmm.def
7575
)
7676
add_custom_command(TARGET glibmm-${GLIBMM_VERSION} PRE_LINK
77-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/glibmm.def glibmm-${GLIBMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/glibmm-${GLIBMM_VERSION}.dir/*.obj
77+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/glibmm.def $<TARGET_FILE_NAME:glibmm-${GLIBMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/glibmm-${GLIBMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
7878
)
7979

8080
target_link_libraries(glibmm-${GLIBMM_VERSION} glib-2.0.lib gobject-2.0.lib gmodule-2.0.lib
@@ -85,7 +85,7 @@ LIBRARY DESTINATION "lib"
8585
ARCHIVE DESTINATION "lib"
8686
RUNTIME DESTINATION "bin")
8787

88-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glibmm-${GLIBMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
88+
install(FILES $<TARGET_PDB_FILE:glibmm-${GLIBMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
8989

9090
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../${EXTRA}/glibmm/glibmmconfig.h DESTINATION "lib/glibmm-${GLIBMM_VERSION}/include")
9191

gstreamermm/gstreamer/gstreamermm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ add_custom_command (OUTPUT gstreamermm.def
141141
COMMAND ECHO Will be generated later > gstreamermm.def
142142
)
143143
add_custom_command(TARGET gstreamermm-${GSTREAMERMM_VERSION} PRE_LINK
144-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/gstreamermm.def gstreamermm-${GSTREAMERMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gstreamermm-${GSTREAMERMM_VERSION}.dir/*.obj
144+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/gstreamermm.def $<TARGET_FILE_NAME:gstreamermm-${GSTREAMERMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/gstreamermm-${GSTREAMERMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
145145
)
146146

147147
target_link_libraries(gstreamermm-${GSTREAMERMM_VERSION} gstreamer-1.0 sigc-${SIGC_VERSION} glibmm-${GLIBMM_VERSION} xmlpp-${XMLMM_VERSION} gstaudio-1.0 gstbase-1.0 gstvideo-1.0 gstpbutils-1.0) #glibmm-${GLIBMM_VERSION} giomm-${GLIBMM_VERSION}
@@ -151,7 +151,7 @@ LIBRARY DESTINATION "lib"
151151
ARCHIVE DESTINATION "lib"
152152
RUNTIME DESTINATION "bin")
153153

154-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gstreamermm-${GSTREAMERMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
154+
install(FILES $<TARGET_PDB_FILE:gstreamermm-${GSTREAMERMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
155155

156156
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../gstreamermmconfig.h DESTINATION "lib/gstreamermm-${GSTREAMERMM_VERSION}/include")
157157

gtkmm/demos/gtk-demo/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ LIBRARY DESTINATION "lib"
3737
ARCHIVE DESTINATION "lib"
3838
RUNTIME DESTINATION "bin")
3939

40-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gtkmm3-demo.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
40+
install(FILES $<TARGET_PDB_FILE:gtkmm3-demo> DESTINATION "bin" CONFIGURATIONS DEBUG)
4141

4242
install(DIRECTORY ./ DESTINATION share/gtkmm-3.0/demo
4343
# minimal invasion... until code fixed or patched

gtkmm/gdk/gdkmm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ add_custom_command (OUTPUT gdkmm.def
3131
COMMAND echo Will be generated later > gdkmm.def
3232
)
3333
add_custom_command(TARGET gdkmm-${GTKMM_VERSION} PRE_LINK
34-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/gdkmm.def gdkmm-${GTKMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gdkmm-${GTKMM_VERSION}.dir/*.obj
34+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/gdkmm.def $<TARGET_FILE_NAME:gdkmm-${GTKMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/gdkmm-${GTKMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
3535
)
3636

3737
target_link_libraries(gdkmm-${GTKMM_VERSION} glibmm-${GLIBMM_VERSION} giomm-${GLIBMM_VERSION} sigc-${SIGC_VERSION} cairomm-${CAIROMM_VERSION} gdk-3 gdk_pixbuf-2.0 gtk-3)
@@ -41,7 +41,7 @@ LIBRARY DESTINATION "lib"
4141
ARCHIVE DESTINATION "lib"
4242
RUNTIME DESTINATION "bin")
4343

44-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gdkmm-${GTKMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
44+
install(FILES $<TARGET_PDB_FILE:gdkmm-${GTKMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
4545

4646
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../${EXTRA}/gdkmm/gdkmmconfig.h DESTINATION "lib/gdkmm-${GTKMM_VERSION}/include")
4747

gtkmm/gtk/gtkmm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ add_custom_command (OUTPUT gtkmm.def
247247
COMMAND echo Will be generated later > gtkmm.def
248248
)
249249
add_custom_command(TARGET gtkmm-${GTKMM_VERSION} PRE_LINK
250-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/gtkmm.def gtkmm-${GTKMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gtkmm-${GTKMM_VERSION}.dir/*.obj
250+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/gtkmm.def $<TARGET_FILE_NAME:gtkmm-${GTKMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/gtkmm-${GTKMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
251251
)
252252

253253
target_link_libraries(gtkmm-${GTKMM_VERSION} gdkmm-${GTKMM_VERSION} glibmm-${GLIBMM_VERSION} giomm-${GLIBMM_VERSION} atkmm-${ATKMM_VERSION} pangomm-${PANGOMM_VERSION} sigc-${SIGC_VERSION} cairomm-${CAIROMM_VERSION} gtk-3)
@@ -257,7 +257,7 @@ LIBRARY DESTINATION "lib"
257257
ARCHIVE DESTINATION "lib"
258258
RUNTIME DESTINATION "bin")
259259

260-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gtkmm-${GTKMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
260+
install(FILES $<TARGET_PDB_FILE:gtkmm-${GTKMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
261261

262262
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../${EXTRA}/gtkmm/gtkmmconfig.h DESTINATION "lib/gtkmm-${GTKMM_VERSION}/include")
263263

libsigc++/sigc++/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ LIBRARY DESTINATION "lib"
1717
ARCHIVE DESTINATION "lib"
1818
RUNTIME DESTINATION "bin")
1919

20-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/sigc-${SIGC_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
20+
install(FILES $<TARGET_PDB_FILE:sigc-${SIGC_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
2121

2222
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../${EXTRA}/sigc++config.h DESTINATION "lib/sigc++-${SIGC_VERSION}/include")
2323

libxml++/libxml++/CMakeLists.txt

+4-2
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,10 @@ set_target_properties(xmlpp-${XMLMM_VERSION} PROPERTIES OUTPUT_NAME xml++-${XMLM
4949
add_custom_command (OUTPUT libxml++.def
5050
COMMAND ECHO Will be generated later > libxml++.def
5151
)
52+
# NOTE: Multi-configuration generator does not copy folder hierarchy inside of CMAKE_CFG_INTDIR
5253
add_custom_command(TARGET xmlpp-${XMLMM_VERSION} PRE_LINK
53-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/libxml++.def xml++-${XMLMM_VERSION}${POSTFIX}.dll
54+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/libxml++.def $<TARGET_FILE_NAME:xml++-${XMLMM_VERSION}>
55+
${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/xmlpp-${XMLMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
5456
${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/xmlpp-${XMLMM_VERSION}.dir/*.obj
5557
${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/xmlpp-${XMLMM_VERSION}.dir/io/*.obj
5658
${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/xmlpp-${XMLMM_VERSION}.dir/nodes/*.obj
@@ -65,7 +67,7 @@ LIBRARY DESTINATION "lib"
6567
ARCHIVE DESTINATION "lib"
6668
RUNTIME DESTINATION "bin")
6769

68-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/xml++-${XMLMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
70+
install(FILES $<TARGET_PDB_FILE:xmlpp-${XMLMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
6971

7072
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../${EXTRA}/libxml++/libxml++config.h DESTINATION "lib/libxml++-${XMLMM_VERSION}/include")
7173

pangomm/pango/pangomm/CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ add_custom_command (OUTPUT pangomm.def
3535
COMMAND echo Will be generated later > pangomm.def
3636
)
3737
add_custom_command(TARGET pangomm-${PANGOMM_VERSION} PRE_LINK
38-
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/pangomm.def pangomm-${PANGOMM_VERSION}${POSTFIX}.dll ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/pangomm-${PANGOMM_VERSION}.dir/*.obj
38+
COMMAND gendef ${CMAKE_CURRENT_BINARY_DIR}/pangomm.def $<TARGET_FILE_NAME:pangomm-${PANGOMM_VERSION}> ${CMAKE_CURRENT_BINARY_DIR}/$<$<BOOL:${CMAKE_BUILD_TYPE}>:${CMAKE_FILES_DIRECTORY}>/pangomm-${PANGOMM_VERSION}.dir/${CMAKE_CFG_INTDIR}/*.obj
3939
)
4040

4141
target_link_libraries(pangomm-${PANGOMM_VERSION} pango-1.0.lib cairomm-${CAIROMM_VERSION} pangocairo-1.0.lib glibmm-${GLIBMM_VERSION} sigc-${SIGC_VERSION})
@@ -45,7 +45,7 @@ LIBRARY DESTINATION "lib"
4545
ARCHIVE DESTINATION "lib"
4646
RUNTIME DESTINATION "bin")
4747

48-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/pangomm-${PANGOMM_VERSION}${POSTFIX}.pdb DESTINATION "bin" CONFIGURATIONS DEBUG)
48+
install(FILES $<TARGET_PDB_FILE:pangomm-${PANGOMM_VERSION}> DESTINATION "bin" CONFIGURATIONS DEBUG)
4949

5050
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../${EXTRA}/pangomm/pangommconfig.h DESTINATION "lib/pangomm-${PANGOMM_VERSION}/include")
5151

0 commit comments

Comments
 (0)