mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2024-11-27 19:57:45 +03:00
CMake: Call UIC on the .ui files manually
Fixes unnecessary recompilation when editing GUI files. PR #16151.
This commit is contained in:
parent
bc2ef5d726
commit
96965ae347
3 changed files with 48 additions and 33 deletions
|
@ -63,11 +63,10 @@ else()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# automatically call Qt moc, rcc and uic as needed for all targets by default
|
# automatically call Qt moc and rcc as needed for all targets by default
|
||||||
set(CMAKE_AUTORCC_OPTIONS --compress 9 --threshold 5)
|
set(CMAKE_AUTORCC_OPTIONS --compress 9 --threshold 5)
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
set(CMAKE_AUTORCC ON)
|
set(CMAKE_AUTORCC ON)
|
||||||
set(CMAKE_AUTOUIC ON)
|
|
||||||
|
|
||||||
# create interface-only target libraries with common compile options/definitions to link to
|
# create interface-only target libraries with common compile options/definitions to link to
|
||||||
include(MacroQbtCommonConfig)
|
include(MacroQbtCommonConfig)
|
||||||
|
|
|
@ -110,10 +110,17 @@ if (STACKTRACE)
|
||||||
target_sources(qbt_app PRIVATE stacktrace_win.h)
|
target_sources(qbt_app PRIVATE stacktrace_win.h)
|
||||||
|
|
||||||
if (GUI)
|
if (GUI)
|
||||||
|
qt_wrap_ui(STACKTRACE_UI_HEADERS stacktracedialog.ui)
|
||||||
|
|
||||||
target_sources(qbt_app PRIVATE
|
target_sources(qbt_app PRIVATE
|
||||||
stacktracedialog.h
|
stacktracedialog.h
|
||||||
stacktracedialog.cpp
|
stacktracedialog.cpp
|
||||||
stacktracedialog.ui
|
${STACKTRACE_UI_HEADERS}
|
||||||
|
)
|
||||||
|
|
||||||
|
# UI headers will be generated in ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
target_include_directories(qbt_app PRIVATE
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,37 @@
|
||||||
|
|
||||||
|
# CMAKE_AUTO_UI causes unncessary rebuilds
|
||||||
|
qt_wrap_ui(UI_HEADERS
|
||||||
|
aboutdialog.ui
|
||||||
|
addnewtorrentdialog.ui
|
||||||
|
autoexpandabledialog.ui
|
||||||
|
banlistoptionsdialog.ui
|
||||||
|
cookiesdialog.ui
|
||||||
|
deletionconfirmationdialog.ui
|
||||||
|
downloadfromurldialog.ui
|
||||||
|
executionlogwidget.ui
|
||||||
|
ipsubnetwhitelistoptionsdialog.ui
|
||||||
|
mainwindow.ui
|
||||||
|
optionsdialog.ui
|
||||||
|
previewselectdialog.ui
|
||||||
|
properties/peersadditiondialog.ui
|
||||||
|
properties/propertieswidget.ui
|
||||||
|
properties/trackersadditiondialog.ui
|
||||||
|
rss/automatedrssdownloader.ui
|
||||||
|
rss/rsswidget.ui
|
||||||
|
search/pluginselectdialog.ui
|
||||||
|
search/pluginsourcedialog.ui
|
||||||
|
search/searchjobwidget.ui
|
||||||
|
search/searchwidget.ui
|
||||||
|
shutdownconfirmdialog.ui
|
||||||
|
speedlimitdialog.ui
|
||||||
|
statsdialog.ui
|
||||||
|
torrentcategorydialog.ui
|
||||||
|
torrentcreatordialog.ui
|
||||||
|
torrentoptionsdialog.ui
|
||||||
|
trackerentriesdialog.ui
|
||||||
|
watchedfolderoptionsdialog.ui
|
||||||
|
)
|
||||||
|
|
||||||
add_library(qbt_gui STATIC
|
add_library(qbt_gui STATIC
|
||||||
# headers
|
# headers
|
||||||
aboutdialog.h
|
aboutdialog.h
|
||||||
|
@ -161,40 +195,15 @@ add_library(qbt_gui STATIC
|
||||||
watchedfolderoptionsdialog.cpp
|
watchedfolderoptionsdialog.cpp
|
||||||
watchedfoldersmodel.cpp
|
watchedfoldersmodel.cpp
|
||||||
|
|
||||||
# forms
|
# generated .ui headers
|
||||||
aboutdialog.ui
|
${UI_HEADERS}
|
||||||
addnewtorrentdialog.ui
|
|
||||||
autoexpandabledialog.ui
|
|
||||||
banlistoptionsdialog.ui
|
|
||||||
cookiesdialog.ui
|
|
||||||
deletionconfirmationdialog.ui
|
|
||||||
downloadfromurldialog.ui
|
|
||||||
executionlogwidget.ui
|
|
||||||
ipsubnetwhitelistoptionsdialog.ui
|
|
||||||
mainwindow.ui
|
|
||||||
optionsdialog.ui
|
|
||||||
previewselectdialog.ui
|
|
||||||
properties/peersadditiondialog.ui
|
|
||||||
properties/propertieswidget.ui
|
|
||||||
properties/trackersadditiondialog.ui
|
|
||||||
rss/automatedrssdownloader.ui
|
|
||||||
rss/rsswidget.ui
|
|
||||||
search/pluginselectdialog.ui
|
|
||||||
search/pluginsourcedialog.ui
|
|
||||||
search/searchjobwidget.ui
|
|
||||||
search/searchwidget.ui
|
|
||||||
shutdownconfirmdialog.ui
|
|
||||||
speedlimitdialog.ui
|
|
||||||
statsdialog.ui
|
|
||||||
torrentcategorydialog.ui
|
|
||||||
torrentcreatordialog.ui
|
|
||||||
torrentoptionsdialog.ui
|
|
||||||
trackerentriesdialog.ui
|
|
||||||
watchedfolderoptionsdialog.ui
|
|
||||||
)
|
)
|
||||||
|
|
||||||
target_sources(qbt_gui INTERFACE about.qrc)
|
target_sources(qbt_gui INTERFACE about.qrc)
|
||||||
|
|
||||||
|
# UI headers will be generated in ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
target_include_directories(qbt_gui PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
|
||||||
target_link_libraries(qbt_gui
|
target_link_libraries(qbt_gui
|
||||||
PRIVATE
|
PRIVATE
|
||||||
qbt_base
|
qbt_base
|
||||||
|
|
Loading…
Reference in a new issue