diff options
author | fuzzard <fuzzard@kodi.tv> | 2022-03-21 16:09:17 +1000 |
---|---|---|
committer | fuzzard <fuzzard@kodi.tv> | 2022-03-21 17:40:45 +1000 |
commit | f4755875a93ab7be928ed4efe7a21502cda2715c (patch) | |
tree | ea49d77290cc9d729bbbcbf945a89c68b953ecbe /cmake | |
parent | 75e79865f33b5982ad5b0b21fcacfb7d6b99dd19 (diff) |
[cmake] rework DEBUG_POSTFIX usage in SETUP_BUILD_VARS macro
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/scripts/common/ModuleHelpers.cmake | 25 | ||||
-rw-r--r-- | cmake/scripts/darwin_embedded/ArchSetup.cmake | 2 | ||||
-rw-r--r-- | cmake/scripts/osx/ArchSetup.cmake | 4 |
3 files changed, 25 insertions, 6 deletions
diff --git a/cmake/scripts/common/ModuleHelpers.cmake b/cmake/scripts/common/ModuleHelpers.cmake index cf819a9ad4..795e7c4718 100644 --- a/cmake/scripts/common/ModuleHelpers.cmake +++ b/cmake/scripts/common/ModuleHelpers.cmake @@ -48,16 +48,29 @@ function(get_archive_name module_name) set(${UPPER_MODULE_NAME}_ARCHIVE ${${UPPER_MODULE_NAME}_ARCHIVE} PARENT_SCOPE) if(${UPPER_MODULE_NAME}_BYPRODUCT) - # strip the extension, if debug, add DEBUG_POSTFIX and then add the .lib extension back - if(WIN32 OR WINDOWS_STORE) - string(REGEX REPLACE "\\.[^.]*$" "" ${UPPER_MODULE_NAME}_BYPRODUCT ${${UPPER_MODULE_NAME}_BYPRODUCT}) - if($<CONFIG:Debug>) - set(${UPPER_MODULE_NAME}_BYPRODUCT "${${UPPER_MODULE_NAME}_BYPRODUCT}${DEBUG_POSTFIX}") + # strip the extension, if debug, add DEBUG_POSTFIX and then add the extension back + if(${UPPER_MODULE_NAME}_DEBUG_POSTFIX) + set(_POSTFIX ${${UPPER_MODULE_NAME}_DEBUG_POSTFIX}) + else() + set(_POSTFIX ${DEBUG_POSTFIX}) + endif() + + # Only add debug postfix if platform or module supply a DEBUG_POSTFIX + if(NOT _POSTFIX STREQUAL "") + string(REGEX REPLACE "\\.[^.]*$" "" ${UPPER_MODULE_NAME}_BYPRODUCT_DEBUG ${${UPPER_MODULE_NAME}_BYPRODUCT}) + if(WIN32 OR WINDOWS_STORE) + set(${UPPER_MODULE_NAME}_BYPRODUCT_DEBUG "${${UPPER_MODULE_NAME}_BYPRODUCT_DEBUG}${_POSTFIX}.lib") + else() + set(${UPPER_MODULE_NAME}_BYPRODUCT_DEBUG "${${UPPER_MODULE_NAME}_BYPRODUCT_DEBUG}${_POSTFIX}.a") endif() - set(${UPPER_MODULE_NAME}_BYPRODUCT "${${UPPER_MODULE_NAME}_BYPRODUCT}.lib") + + # Set Debug and Release library names + set(${UPPER_MODULE_NAME}_LIBRARY_DEBUG ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/${${UPPER_MODULE_NAME}_BYPRODUCT_DEBUG} PARENT_SCOPE) + set(${UPPER_MODULE_NAME}_LIBRARY_RELEASE ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/${${UPPER_MODULE_NAME}_BYPRODUCT} PARENT_SCOPE) endif() set(${UPPER_MODULE_NAME}_LIBRARY ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/${${UPPER_MODULE_NAME}_BYPRODUCT} PARENT_SCOPE) endif() + set(${UPPER_MODULE_NAME}_INCLUDE_DIR ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/include PARENT_SCOPE) set(${UPPER_MODULE_NAME}_VER ${${UPPER_MODULE_NAME}_VER} PARENT_SCOPE) diff --git a/cmake/scripts/darwin_embedded/ArchSetup.cmake b/cmake/scripts/darwin_embedded/ArchSetup.cmake index 0a47345086..c9741a586f 100644 --- a/cmake/scripts/darwin_embedded/ArchSetup.cmake +++ b/cmake/scripts/darwin_embedded/ArchSetup.cmake @@ -33,6 +33,8 @@ endif() list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${NATIVEPREFIX}) +set(DEBUG_POSTFIX d CACHE STRING "Debug library postfix.") + list(APPEND DEPLIBS "-framework CoreFoundation" "-framework CoreVideo" "-framework CoreAudio" "-framework AudioToolbox" "-framework QuartzCore" "-framework MediaPlayer" diff --git a/cmake/scripts/osx/ArchSetup.cmake b/cmake/scripts/osx/ArchSetup.cmake index 234ca86750..dd2b9f2936 100644 --- a/cmake/scripts/osx/ArchSetup.cmake +++ b/cmake/scripts/osx/ArchSetup.cmake @@ -29,6 +29,10 @@ endif() set(CMAKE_OSX_ARCHITECTURES ${CPU}) +if(CMAKE_GENERATOR STREQUAL Xcode) + set(DEBUG_POSTFIX d CACHE STRING "Debug library postfix.") +endif() + # Additional SYSTEM_DEFINES list(APPEND SYSTEM_DEFINES -DHAS_POSIX_NETWORK -DHAS_OSX_NETWORK -DHAS_ZEROCONF) |