aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2021-05-10 13:54:19 +0200
committerEike Ziller <eike.ziller@qt.io>2021-05-20 10:03:11 +0000
commit759e15dbb4d3262e174d0d5ef15db355e2b18878 (patch)
treec20a9a52589336709c576a0d945305884f49e419
parent2c8a9a67610c38e86ca0c2b59b3fa7a3834915ca (diff)
CMake build: put .lib files next to .dll files for libraries
- there is no reason for putting them elsewhere - since CMake file-api only reports the .lib location for linked libraries, Qt Creator has difficulties with adding the correct PATH for running e.g. manual tests, when the .lib files are at an arbitrary location Fixes: QTCREATORBUG-25684 Change-Id: I24b26a79c70fd5384f534f8f0b66b51fca1ecc56 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
-rw-r--r--cmake/QtCreatorAPI.cmake5
-rw-r--r--cmake/QtCreatorAPIInternal.cmake3
-rw-r--r--qtcreator.pri2
-rw-r--r--src/libs/CMakeLists.txt3
m---------src/libs/qlitehtml0
5 files changed, 10 insertions, 3 deletions
diff --git a/cmake/QtCreatorAPI.cmake b/cmake/QtCreatorAPI.cmake
index 4c2b612af1e..9198f0b234d 100644
--- a/cmake/QtCreatorAPI.cmake
+++ b/cmake/QtCreatorAPI.cmake
@@ -13,6 +13,7 @@ set(IDE_APP_TARGET "${_IDE_APP_TARGET}") # The IDE application na
set(IDE_PLUGIN_PATH "${_IDE_PLUGIN_PATH}") # The IDE plugin path (relative to CMAKE_INSTALL_PREFIX).
set(IDE_LIBRARY_BASE_PATH "${_IDE_LIBRARY_BASE_PATH}") # The IDE library base path (relative to CMAKE_INSTALL_PREFIX).
set(IDE_LIBRARY_PATH "${_IDE_LIBRARY_PATH}") # The IDE library path (relative to CMAKE_INSTALL_PREFIX).
+set(IDE_LIBRARY_ARCHIVE_PATH "${_IDE_LIBRARY_ARCHIVE_PATH}") # The IDE library archive path (relative to CMAKE_INSTALL_PREFIX).
set(IDE_LIBEXEC_PATH "${_IDE_LIBEXEC_PATH}") # The IDE libexec path (relative to CMAKE_INSTALL_PREFIX).
set(IDE_DATA_PATH "${_IDE_DATA_PATH}") # The IDE data path (relative to CMAKE_INSTALL_PREFIX).
set(IDE_DOC_PATH "${_IDE_DOC_PATH}") # The IDE documentation path (relative to CMAKE_INSTALL_PREFIX).
@@ -249,7 +250,7 @@ function(add_qtc_library name)
INSTALL_RPATH "${_LIB_RPATH}"
RUNTIME_OUTPUT_DIRECTORY "${_output_binary_dir}/${_DESTINATION}"
LIBRARY_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_PATH}"
- ARCHIVE_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_PATH}"
+ ARCHIVE_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_ARCHIVE_PATH}"
${_arg_PROPERTIES}
)
enable_pch(${name})
@@ -289,7 +290,7 @@ function(add_qtc_library name)
DESTINATION "${IDE_LIBRARY_PATH}"
COMPONENT Devel EXCLUDE_FROM_ALL
ARCHIVE
- DESTINATION "${IDE_LIBRARY_PATH}"
+ DESTINATION "${IDE_LIBRARY_ARCHIVE_PATH}"
COMPONENT Devel EXCLUDE_FROM_ALL
OPTIONAL
)
diff --git a/cmake/QtCreatorAPIInternal.cmake b/cmake/QtCreatorAPIInternal.cmake
index 549f05a9448..4c32dca5090 100644
--- a/cmake/QtCreatorAPIInternal.cmake
+++ b/cmake/QtCreatorAPIInternal.cmake
@@ -46,6 +46,7 @@ if (APPLE)
set(_IDE_DATA_PATH "${_IDE_OUTPUT_PATH}/Resources")
set(_IDE_DOC_PATH "${_IDE_OUTPUT_PATH}/Resources/doc")
set(_IDE_BIN_PATH "${_IDE_OUTPUT_PATH}/MacOS")
+ set(_IDE_LIBRARY_ARCHIVE_PATH "${_IDE_LIBRARY_PATH}")
set(_IDE_HEADER_INSTALL_PATH "${_IDE_DATA_PATH}/Headers/qtcreator")
set(_IDE_CMAKE_INSTALL_PATH "${_IDE_DATA_PATH}/lib/cmake")
@@ -60,6 +61,7 @@ elseif(WIN32)
set(_IDE_DATA_PATH "share/qtcreator")
set(_IDE_DOC_PATH "share/doc/qtcreator")
set(_IDE_BIN_PATH "bin")
+ set(_IDE_LIBRARY_ARCHIVE_PATH "${_IDE_BIN_PATH}")
set(_IDE_HEADER_INSTALL_PATH "include/qtcreator")
set(_IDE_CMAKE_INSTALL_PATH "lib/cmake")
@@ -75,6 +77,7 @@ else ()
set(_IDE_DATA_PATH "${CMAKE_INSTALL_DATAROOTDIR}/qtcreator")
set(_IDE_DOC_PATH "${CMAKE_INSTALL_DATAROOTDIR}/doc/qtcreator")
set(_IDE_BIN_PATH "${CMAKE_INSTALL_BINDIR}")
+ set(_IDE_LIBRARY_ARCHIVE_PATH "${_IDE_LIBRARY_PATH}")
set(_IDE_HEADER_INSTALL_PATH "include/qtcreator")
set(_IDE_CMAKE_INSTALL_PATH "lib/cmake")
diff --git a/qtcreator.pri b/qtcreator.pri
index 584e3970d0d..a03d88ad310 100644
--- a/qtcreator.pri
+++ b/qtcreator.pri
@@ -193,6 +193,8 @@ CONFIG += \
LIBS *= -L$$LINK_LIBRARY_PATH # Qt Creator libraries
exists($$IDE_LIBRARY_PATH): LIBS *= -L$$IDE_LIBRARY_PATH # library path from output path
+# linking against Qt Creator built with CMake
+win32: LIBS *= -L$$IDE_BUILD_TREE/bin
!isEmpty(vcproj) {
DEFINES += IDE_LIBRARY_BASENAME=\"$$IDE_LIBRARY_BASENAME\"
diff --git a/src/libs/CMakeLists.txt b/src/libs/CMakeLists.txt
index 7907d8272af..920f1607dd5 100644
--- a/src/libs/CMakeLists.txt
+++ b/src/libs/CMakeLists.txt
@@ -25,6 +25,7 @@ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/qlitehtml/src/CMakeLists.txt)
if(BUILD_LIBRARY_QLITEHTML)
set(QLITEHTML_BIN_PATH ${IDE_BIN_PATH})
set(QLITEHTML_LIBRARY_PATH ${IDE_LIBRARY_PATH})
+ set(QLITEHTML_LIBRARY_ARCHIVE_PATH ${IDE_LIBRARY_ARCHIVE_PATH})
set(QLITEHTML_EXPORT QtCreator)
set(QLITEHTML_DEVEL_COMPONENT Devel)
set(QLITEHTML_DEVEL_EXCLUDE_FROM_ALL ON)
@@ -42,7 +43,7 @@ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/qlitehtml/src/CMakeLists.txt)
INSTALL_RPATH "${_LIB_RPATH}"
RUNTIME_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_BIN_PATH}"
LIBRARY_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_PATH}"
- ARCHIVE_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_PATH}"
+ ARCHIVE_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_ARCHIVE_PATH}"
)
endif()
endif()
diff --git a/src/libs/qlitehtml b/src/libs/qlitehtml
-Subproject b90c00274b47fa7d66f9889872506e7e898d08a
+Subproject 44e15759b7400901bfdc6b69ffb1256c82cc169