CMake: Improve library names

Use the same output names as MSVC and makefile.gcc/vc on Windows, and the same as configure on other platforms.
This commit is contained in:
Maarten Bent
2021-05-24 21:10:14 +02:00
parent 01edac992d
commit f830bde25b
4 changed files with 132 additions and 100 deletions

View File

@@ -129,9 +129,11 @@ if(wxBUILD_FLAVOUR)
endif()
set(wxARCH_SUFFIX)
set(wxCOMPILER_PREFIX)
set(wxPLATFORM_LIB_DIR)
# TODO: include compiler version in wxCOMPILER_PREFIX ?
if(WIN32)
# TODO: include compiler version in wxCOMPILER_PREFIX for official builds
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
set(wxCOMPILER_PREFIX "vc")
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
@@ -145,21 +147,17 @@ if(WIN32)
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(wxARCH_SUFFIX "_x64")
endif()
else()
set(wxCOMPILER_PREFIX)
endif()
if(MSVC)
if(WIN32_MSVC_NAMING)
if(wxBUILD_SHARED)
set(lib_suffix "dll")
set(lib_suffix "_dll")
else()
set(lib_suffix "lib")
set(lib_suffix "_lib")
endif()
# Include generator expression to suppress default Debug/Release pair
set(wxPLATFORM_LIB_DIR "$<1:/>${wxCOMPILER_PREFIX}${wxARCH_SUFFIX}_${lib_suffix}")
else()
set(wxPLATFORM_LIB_DIR)
set(wxPLATFORM_LIB_DIR "$<1:/>${wxCOMPILER_PREFIX}${wxARCH_SUFFIX}${lib_suffix}")
endif()
if(wxBUILD_CUSTOM_SETUP_HEADER_PATH)
@@ -169,14 +167,14 @@ if(wxBUILD_CUSTOM_SETUP_HEADER_PATH)
set(wxSETUP_HEADER_PATH ${wxBUILD_CUSTOM_SETUP_HEADER_PATH})
else()
# Set path where setup.h will be created
if(MSVC)
if(WIN32_MSVC_NAMING)
if(wxUSE_UNICODE)
set(lib_unicode u)
else()
set(lib_unicode)
endif()
set(wxSETUP_HEADER_PATH
${wxOUTPUT_DIR}/${wxCOMPILER_PREFIX}${wxARCH_SUFFIX}_${lib_suffix}/${wxBUILD_TOOLKIT}${lib_unicode})
${wxOUTPUT_DIR}/${wxCOMPILER_PREFIX}${wxARCH_SUFFIX}${lib_suffix}/${wxBUILD_TOOLKIT}${lib_unicode})
file(MAKE_DIRECTORY ${wxSETUP_HEADER_PATH}/wx)
file(MAKE_DIRECTORY ${wxSETUP_HEADER_PATH}d/wx)
set(wxSETUP_HEADER_FILE_DEBUG ${wxSETUP_HEADER_PATH}d/wx/setup.h)