diff --git a/Modelica/Resources/BuildProjects/CMake/CMakeLists.txt b/Modelica/Resources/BuildProjects/CMake/CMakeLists.txt index 4852e35f893..636d243012d 100644 --- a/Modelica/Resources/BuildProjects/CMake/CMakeLists.txt +++ b/Modelica/Resources/BuildProjects/CMake/CMakeLists.txt @@ -80,7 +80,33 @@ else() message(FATAL_ERROR "Not UNIX (or CYGWIN), not MSVC or MINGW => No Support") endif() -set(CMAKE_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/Library/${TARGET_DIR}" CACHE PATH "Library installation path (don't change)" FORCE) +if (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 17.*") + set(COMPILER_NAME_DIR "vs2022") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 16.*") + set(COMPILER_NAME_DIR "vs2019") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 15.*") + set(COMPILER_NAME_DIR "vs2017") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 14.*") + set(COMPILER_NAME_DIR "vs2015") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 12.*") + set(COMPILER_NAME_DIR "vs2013") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 11.*") + set(COMPILER_NAME_DIR "vs2012") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 10.*") + set(COMPILER_NAME_DIR "vs2010") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 9.*") + set(COMPILER_NAME_DIR "vs2008") +elseif (WIN32 AND CMAKE_GENERATOR MATCHES "Visual Studio 8.*") + set(COMPILER_NAME_DIR "vs2005") +else() + set(CMAKE_INSTALL_LIBDIR "") +endif() + +if (NOT COMPILER_NAME_DIR STREQUAL "") + set(CMAKE_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/Library/${TARGET_DIR}/${COMPILER_NAME_DIR}" CACHE PATH "Library installation path (don't change)" FORCE) +else() + set(CMAKE_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/Library/${TARGET_DIR}" CACHE PATH "Library installation path (don't change)" FORCE) +endif() # Check for 32-bit flag on UNIX if (UNIX)