From e4d5fbc9139629b3ddaaf134b145bd013a4981c7 Mon Sep 17 00:00:00 2001 From: Attila Mark Date: Fri, 24 Jan 2020 19:39:01 -0800 Subject: [PATCH 1/6] Configure fmt.pc library name correctly. --- CMakeLists.txt | 9 +++++++++ support/cmake/fmt.pc.in | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b4ec0a79227..37df6febb6c8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -178,6 +178,15 @@ set_target_properties(fmt PROPERTIES VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} DEBUG_POSTFIX d) +# Configure pkg-config fmt.pc properly +string(TOLOWER ${PROJECT_NAME} PROJECT_NAME_LOWER) +if(CMAKE_BUILD_TYPE STREQUAL "Debug") + get_target_property(_FMT_LIB_POSTFIX ${PROJECT_NAME_LOWER} DEBUG_POSTFIX) + set(FMT_LIB_NAME ${PROJECT_NAME_LOWER}${_FMT_LIB_POSTFIX}) +else() + set(FMT_LIB_NAME ${PROJECT_NAME_LOWER}) +endif() + if (BUILD_SHARED_LIBS) if (UNIX AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "SunOS") # Fix rpmlint warning: diff --git a/support/cmake/fmt.pc.in b/support/cmake/fmt.pc.in index e935dc78e118..4e030afdf52a 100644 --- a/support/cmake/fmt.pc.in +++ b/support/cmake/fmt.pc.in @@ -6,6 +6,6 @@ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ Name: fmt Description: A modern formatting library Version: @FMT_VERSION@ -Libs: -L${libdir} -lfmt +Libs: -L${libdir} -l@FMT_LIB_NAME@ Cflags: -I${includedir} From 98622ec4aaddefe42759271553ac243950d93172 Mon Sep 17 00:00:00 2001 From: Attila Mark Date: Sat, 25 Jan 2020 12:19:56 -0800 Subject: [PATCH 2/6] Simplify getting library name. --- CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 37df6febb6c8..175d52609379 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -175,16 +175,16 @@ target_include_directories(fmt PUBLIC $) set_target_properties(fmt PROPERTIES - VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} + OUTPUT_NAME fmt + VERSION ${FMT_VERSION} + SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} DEBUG_POSTFIX d) # Configure pkg-config fmt.pc properly -string(TOLOWER ${PROJECT_NAME} PROJECT_NAME_LOWER) +get_target_property(FMT_LIB_NAME fmt OUTPUT_NAME) if(CMAKE_BUILD_TYPE STREQUAL "Debug") - get_target_property(_FMT_LIB_POSTFIX ${PROJECT_NAME_LOWER} DEBUG_POSTFIX) - set(FMT_LIB_NAME ${PROJECT_NAME_LOWER}${_FMT_LIB_POSTFIX}) -else() - set(FMT_LIB_NAME ${PROJECT_NAME_LOWER}) + get_target_property(_FMT_LIB_POSTFIX fmt DEBUG_POSTFIX) + set(FMT_LIB_NAME ${FMT_LIB_NAME}${_FMT_LIB_POSTFIX}) endif() if (BUILD_SHARED_LIBS) From 8a9232668a8e98fe9c0cb87e38717c94a0052670 Mon Sep 17 00:00:00 2001 From: Attila Mark Date: Sat, 25 Jan 2020 12:39:23 -0800 Subject: [PATCH 3/6] Add FMT_DEBUG_SUFFIX variable. --- CMakeLists.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 175d52609379..84db4c848ea5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -173,18 +173,19 @@ target_compile_features(fmt INTERFACE ${FMT_REQUIRED_FEATURES}) target_include_directories(fmt PUBLIC $ $) + +set(FMT_DEBUG_POSTFIX d) set_target_properties(fmt PROPERTIES OUTPUT_NAME fmt VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} - DEBUG_POSTFIX d) + DEBUG_POSTFIX ${FMT_DEBUG_POSTFIX}) # Configure pkg-config fmt.pc properly get_target_property(FMT_LIB_NAME fmt OUTPUT_NAME) if(CMAKE_BUILD_TYPE STREQUAL "Debug") - get_target_property(_FMT_LIB_POSTFIX fmt DEBUG_POSTFIX) - set(FMT_LIB_NAME ${FMT_LIB_NAME}${_FMT_LIB_POSTFIX}) + set(FMT_LIB_NAME ${FMT_LIB_NAME}${FMT_DEBUG_POSTFIX}) endif() if (BUILD_SHARED_LIBS) From 6479143067c86ca677fbd7cb51bee34281b933f8 Mon Sep 17 00:00:00 2001 From: Attila Mark Date: Thu, 6 Feb 2020 22:48:51 -0800 Subject: [PATCH 4/6] Remove merge problem. --- CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 89129617ed79..699b8ec611cb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -176,8 +176,6 @@ target_include_directories(fmt PUBLIC set(FMT_DEBUG_POSTFIX d) -set(FMT_DEBUG_POSTFIX d) - set_target_properties(fmt PROPERTIES VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} DEBUG_POSTFIX ${FMT_DEBUG_POSTFIX}) From d08cad5b2854387c5cc32d033509306c4ea55e54 Mon Sep 17 00:00:00 2001 From: Attila Mark Date: Thu, 6 Feb 2020 23:12:59 -0800 Subject: [PATCH 5/6] Add back OUTPUT_NAME variable --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 699b8ec611cb..1e043689e627 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -177,6 +177,7 @@ target_include_directories(fmt PUBLIC set(FMT_DEBUG_POSTFIX d) set_target_properties(fmt PROPERTIES + OUTPUT_NAME "fmt" VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} DEBUG_POSTFIX ${FMT_DEBUG_POSTFIX}) From 4979178ca116911da114e9a922a1ca600e7a2ab6 Mon Sep 17 00:00:00 2001 From: Attila Mark Date: Wed, 18 Mar 2020 13:10:36 -0700 Subject: [PATCH 6/6] Add missing target property OUTPUT_NAME --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 466b342f047b..534ac33f2e3b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -198,6 +198,7 @@ target_include_directories(fmt PUBLIC set(FMT_DEBUG_POSTFIX d CACHE STRING "Debug library postfix.") set_target_properties(fmt PROPERTIES + OUTPUT_NAME "fmt" VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} DEBUG_POSTFIX "${FMT_DEBUG_POSTFIX}")