diff --git a/CHANGELOG.md b/CHANGELOG.md
index ce3a8442..4e98c671 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -34,6 +34,7 @@
- Dev: Words from `TextElement`s are now combined where possible. (#5847)
- Dev: Fixed assertion failure when closing the edit-hotkey dialog. (#5869)
- Dev: Updated `qtkeychain` to 0.15.0. (#5871)
+- Dev: Fixed duplicate CMake configure in clean builds. (#5940)
## 2.5.2
diff --git a/cmake/resources/generate_resources.cmake b/cmake/resources/generate_resources.cmake
index df227a7d..75de92e6 100644
--- a/cmake/resources/generate_resources.cmake
+++ b/cmake/resources/generate_resources.cmake
@@ -21,12 +21,22 @@ list(FILTER RES_IMAGE_FILES EXCLUDE REGEX ${RES_IMAGE_EXCLUDE_FILTER})
###############################
# Generate resources_autogenerated.qrc
###############################
+set(WINDOWS_ARGUMENTS "@Invalid()") # empty QVariant() in QSettings
+if (CHATTERINO_USE_GDI_FONTENGINE AND Qt${MAJOR_QT_VERSION}_VERSION VERSION_GREATER_EQUAL "6.8.0")
+ message(STATUS "Using legacy GDI fontengine")
+ set(WINDOWS_ARGUMENTS "fontengine=gdi")
+endif ()
+
+configure_file("${CMAKE_CURRENT_LIST_DIR}/qt.conf.in" "${CMAKE_BINARY_DIR}/autogen/qt.conf")
+set(RES_QT_CONF_PATH "${CMAKE_BINARY_DIR}/autogen/qt.conf")
+
message(STATUS "Generating resources_autogenerated.qrc")
foreach (_file ${RES_ALL_FILES})
- list(APPEND RES_RESOURCES_CONTENT " ${_file}")
+ list(APPEND RES_RESOURCES_CONTENT " ${RES_DIR}/${_file}")
endforeach ()
list(JOIN RES_RESOURCES_CONTENT "\n" RES_RESOURCES_CONTENT)
-configure_file(${CMAKE_CURRENT_LIST_DIR}/resources_autogenerated.qrc.in ${RES_DIR}/resources_autogenerated.qrc @ONLY)
+configure_file("${CMAKE_CURRENT_LIST_DIR}/resources_autogenerated.qrc.in" "${CMAKE_BINARY_DIR}/autogen/resources_autogenerated.qrc" @ONLY)
+list(APPEND RES_AUTOGEN_FILES "${CMAKE_BINARY_DIR}/autogen/resources_autogenerated.qrc")
###############################
# Generate ResourcesAutogen.cpp
@@ -88,17 +98,7 @@ if (WIN32)
list(APPEND RES_AUTOGEN_FILES "${CMAKE_BINARY_DIR}/autogen/windows.rc")
endif ()
-set(WINDOWS_ARGUMENTS "@Invalid()") # empty QVariant() in QSettings
-if (CHATTERINO_USE_GDI_FONTENGINE AND Qt${MAJOR_QT_VERSION}_VERSION VERSION_GREATER_EQUAL "6.8.0")
- message(STATUS "Using legacy GDI fontengine")
- set(WINDOWS_ARGUMENTS "fontengine=gdi")
-endif ()
-
-configure_file("${CMAKE_CURRENT_LIST_DIR}/qt.conf.in" "${CMAKE_SOURCE_DIR}/resources/qt.conf")
-list(APPEND RES_AUTOGEN_FILES "${CMAKE_SOURCE_DIR}/resources/qt.conf")
-
list(APPEND RES_AUTOGEN_FILES
- "${CMAKE_SOURCE_DIR}/resources/resources_autogenerated.qrc"
"${CMAKE_BINARY_DIR}/autogen/ResourcesAutogen.cpp"
"${CMAKE_BINARY_DIR}/autogen/ResourcesAutogen.hpp"
)
diff --git a/cmake/resources/resources_autogenerated.qrc.in b/cmake/resources/resources_autogenerated.qrc.in
index 9e28de4a..ec65d90e 100644
--- a/cmake/resources/resources_autogenerated.qrc.in
+++ b/cmake/resources/resources_autogenerated.qrc.in
@@ -7,6 +7,6 @@
@RES_RESOURCES_CONTENT@
- qt.conf
+ @RES_QT_CONF_PATH@
-
\ No newline at end of file
+
diff --git a/lib/twitch-eventsub-ws/CMakeLists.txt b/lib/twitch-eventsub-ws/CMakeLists.txt
index 53f36565..535eb7ba 100644
--- a/lib/twitch-eventsub-ws/CMakeLists.txt
+++ b/lib/twitch-eventsub-ws/CMakeLists.txt
@@ -1,7 +1,6 @@
cmake_minimum_required(VERSION 3.15)
cmake_policy(SET CMP0087 NEW) # evaluates generator expressions in `install(CODE/SCRIPT)`
cmake_policy(SET CMP0091 NEW) # select MSVC runtime library through `CMAKE_MSVC_RUNTIME_LIBRARY`
-include(FeatureSummary)
list(APPEND CMAKE_MODULE_PATH
"${CMAKE_SOURCE_DIR}/cmake"
@@ -33,5 +32,3 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
include(cmake/GenerateJson.cmake)
add_subdirectory(src)
-
-feature_summary(WHAT ALL)