NOISSUE get rid of remaining tabs

This commit is contained in:
Petr Mrázek 2018-08-02 01:01:55 +02:00
parent 6aada8adf7
commit 5f2d3f014a
10 changed files with 537 additions and 537 deletions

View File

@ -2,16 +2,16 @@
Before submitting this issue, please make sure you have: Before submitting this issue, please make sure you have:
1. Filled out this form completely, the only optional field is "additional info". 1. Filled out this form completely, the only optional field is "additional info".
- Use as many details as possible and state the problem clearly. - Use as many details as possible and state the problem clearly.
2. Proof-read your ENTIRE issue report. 2. Proof-read your ENTIRE issue report.
- Grammar and spelling mistakes make issue reports harder to understand. - Grammar and spelling mistakes make issue reports harder to understand.
3. Made sure your problem is not caused by an issue in your own modpack. 3. Made sure your problem is not caused by an issue in your own modpack.
- We provide support for MultiMC, not your modpack. Problems with your modpack will be ignored. - We provide support for MultiMC, not your modpack. Problems with your modpack will be ignored.
4. Given the issue a descriptive title. 4. Given the issue a descriptive title.
- A good title includes a brief summary of the issue and avoids things such as "Help" and "What?!". - A good title includes a brief summary of the issue and avoids things such as "Help" and "What?!".
Use of UPPERCASE is discouraged, as it reads like someone is screaming. Use of UPPERCASE is discouraged, as it reads like someone is screaming.
5. Place all information below the ---- of lines. 5. Place all information below the ---- of lines.
- It makes the issue look pretty - It makes the issue look pretty
If you believe your issue to be a bug, please make sure you check the wiki page: https://github.com/MultiMC/MultiMC5/wiki/Report-a-Bug If you believe your issue to be a bug, please make sure you check the wiki page: https://github.com/MultiMC/MultiMC5/wiki/Report-a-Bug
--> -->

View File

@ -44,8 +44,8 @@ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Werror=return-type")
set(MultiMC_NEWS_RSS_URL "http://multimc.org/rss.xml" CACHE STRING "URL to fetch MultiMC's news RSS feed from.") set(MultiMC_NEWS_RSS_URL "http://multimc.org/rss.xml" CACHE STRING "URL to fetch MultiMC's news RSS feed from.")
######## Set version numbers ######## ######## Set version numbers ########
set(MultiMC_VERSION_MAJOR 0) set(MultiMC_VERSION_MAJOR 0)
set(MultiMC_VERSION_MINOR 6) set(MultiMC_VERSION_MINOR 6)
set(MultiMC_VERSION_HOTFIX 2) set(MultiMC_VERSION_HOTFIX 2)
# Build number # Build number

View File

@ -7,292 +7,292 @@ configure_file("${PROJECT_SOURCE_DIR}/BuildConfig.cpp.in" "${PROJECT_BINARY_DIR}
######## Sources and headers ######## ######## Sources and headers ########
SET(MULTIMC_SOURCES SET(MULTIMC_SOURCES
# Application base # Application base
main.cpp main.cpp
MultiMC.h MultiMC.h
MultiMC.cpp MultiMC.cpp
BuildConfig.h BuildConfig.h
${PROJECT_BINARY_DIR}/BuildConfig.cpp ${PROJECT_BINARY_DIR}/BuildConfig.cpp
UpdateController.cpp UpdateController.cpp
UpdateController.h UpdateController.h
# GUI - general utilities # GUI - general utilities
GuiUtil.h GuiUtil.h
GuiUtil.cpp GuiUtil.cpp
ColumnResizer.h ColumnResizer.h
ColumnResizer.cpp ColumnResizer.cpp
InstanceProxyModel.h InstanceProxyModel.h
InstanceProxyModel.cpp InstanceProxyModel.cpp
VersionProxyModel.h VersionProxyModel.h
VersionProxyModel.cpp VersionProxyModel.cpp
ColorCache.h ColorCache.h
ColorCache.cpp ColorCache.cpp
HoeDown.h HoeDown.h
# Super secret! # Super secret!
KonamiCode.h KonamiCode.h
KonamiCode.cpp KonamiCode.cpp
# GUI - windows # GUI - windows
MainWindow.h MainWindow.h
MainWindow.cpp MainWindow.cpp
InstanceWindow.h InstanceWindow.h
InstanceWindow.cpp InstanceWindow.cpp
# GUI - setup wizard # GUI - setup wizard
setupwizard/SetupWizard.h setupwizard/SetupWizard.h
setupwizard/SetupWizard.cpp setupwizard/SetupWizard.cpp
setupwizard/AnalyticsWizardPage.cpp setupwizard/AnalyticsWizardPage.cpp
setupwizard/AnalyticsWizardPage.h setupwizard/AnalyticsWizardPage.h
setupwizard/BaseWizardPage.h setupwizard/BaseWizardPage.h
setupwizard/JavaWizardPage.cpp setupwizard/JavaWizardPage.cpp
setupwizard/JavaWizardPage.h setupwizard/JavaWizardPage.h
setupwizard/LanguageWizardPage.cpp setupwizard/LanguageWizardPage.cpp
setupwizard/LanguageWizardPage.h setupwizard/LanguageWizardPage.h
# GUI - themes # GUI - themes
themes/FusionTheme.cpp themes/FusionTheme.cpp
themes/FusionTheme.h themes/FusionTheme.h
themes/BrightTheme.cpp themes/BrightTheme.cpp
themes/BrightTheme.h themes/BrightTheme.h
themes/CustomTheme.cpp themes/CustomTheme.cpp
themes/CustomTheme.h themes/CustomTheme.h
themes/DarkTheme.cpp themes/DarkTheme.cpp
themes/DarkTheme.h themes/DarkTheme.h
themes/ITheme.cpp themes/ITheme.cpp
themes/ITheme.h themes/ITheme.h
themes/SystemTheme.cpp themes/SystemTheme.cpp
themes/SystemTheme.h themes/SystemTheme.h
# GUI - settings-specific wrappers for paged dialog # GUI - settings-specific wrappers for paged dialog
SettingsUI.h SettingsUI.h
# Processes # Processes
LaunchController.h LaunchController.h
LaunchController.cpp LaunchController.cpp
# page provider for instances # page provider for instances
InstancePageProvider.h InstancePageProvider.h
# Common java checking UI # Common java checking UI
JavaCommon.h JavaCommon.h
JavaCommon.cpp JavaCommon.cpp
# GUI - paged dialog base # GUI - paged dialog base
pages/BasePage.h pages/BasePage.h
pages/BasePageContainer.h pages/BasePageContainer.h
pages/BasePageProvider.h pages/BasePageProvider.h
# GUI - instance pages # GUI - instance pages
pages/instance/VersionPage.cpp pages/instance/VersionPage.cpp
pages/instance/VersionPage.h pages/instance/VersionPage.h
pages/instance/TexturePackPage.h pages/instance/TexturePackPage.h
pages/instance/ResourcePackPage.h pages/instance/ResourcePackPage.h
pages/instance/ModFolderPage.cpp pages/instance/ModFolderPage.cpp
pages/instance/ModFolderPage.h pages/instance/ModFolderPage.h
pages/instance/NewModFolderPage.cpp pages/instance/NewModFolderPage.cpp
pages/instance/NewModFolderPage.h pages/instance/NewModFolderPage.h
pages/instance/NotesPage.cpp pages/instance/NotesPage.cpp
pages/instance/NotesPage.h pages/instance/NotesPage.h
pages/instance/LogPage.cpp pages/instance/LogPage.cpp
pages/instance/LogPage.h pages/instance/LogPage.h
pages/instance/InstanceSettingsPage.cpp pages/instance/InstanceSettingsPage.cpp
pages/instance/InstanceSettingsPage.h pages/instance/InstanceSettingsPage.h
pages/instance/ScreenshotsPage.cpp pages/instance/ScreenshotsPage.cpp
pages/instance/ScreenshotsPage.h pages/instance/ScreenshotsPage.h
pages/instance/OtherLogsPage.cpp pages/instance/OtherLogsPage.cpp
pages/instance/OtherLogsPage.h pages/instance/OtherLogsPage.h
pages/instance/ServersPage.cpp pages/instance/ServersPage.cpp
pages/instance/ServersPage.h pages/instance/ServersPage.h
pages/instance/LegacyUpgradePage.cpp pages/instance/LegacyUpgradePage.cpp
pages/instance/LegacyUpgradePage.h pages/instance/LegacyUpgradePage.h
pages/instance/WorldListPage.cpp pages/instance/WorldListPage.cpp
pages/instance/WorldListPage.h pages/instance/WorldListPage.h
# GUI - global settings pages # GUI - global settings pages
pages/global/AccountListPage.cpp pages/global/AccountListPage.cpp
pages/global/AccountListPage.h pages/global/AccountListPage.h
pages/global/CustomCommandsPage.cpp pages/global/CustomCommandsPage.cpp
pages/global/CustomCommandsPage.h pages/global/CustomCommandsPage.h
pages/global/ExternalToolsPage.cpp pages/global/ExternalToolsPage.cpp
pages/global/ExternalToolsPage.h pages/global/ExternalToolsPage.h
pages/global/JavaPage.cpp pages/global/JavaPage.cpp
pages/global/JavaPage.h pages/global/JavaPage.h
pages/global/MinecraftPage.cpp pages/global/MinecraftPage.cpp
pages/global/MinecraftPage.h pages/global/MinecraftPage.h
pages/global/MultiMCPage.cpp pages/global/MultiMCPage.cpp
pages/global/MultiMCPage.h pages/global/MultiMCPage.h
pages/global/ProxyPage.cpp pages/global/ProxyPage.cpp
pages/global/ProxyPage.h pages/global/ProxyPage.h
pages/global/PasteEEPage.cpp pages/global/PasteEEPage.cpp
pages/global/PasteEEPage.h pages/global/PasteEEPage.h
pages/global/PackagesPage.cpp pages/global/PackagesPage.cpp
pages/global/PackagesPage.h pages/global/PackagesPage.h
# GUI - platform pages # GUI - platform pages
pages/modplatform/VanillaPage.cpp pages/modplatform/VanillaPage.cpp
pages/modplatform/VanillaPage.h pages/modplatform/VanillaPage.h
pages/modplatform/FTBPage.cpp pages/modplatform/FTBPage.cpp
pages/modplatform/FTBPage.h pages/modplatform/FTBPage.h
pages/modplatform/FtbListModel.h pages/modplatform/FtbListModel.h
pages/modplatform/FtbListModel.cpp pages/modplatform/FtbListModel.cpp
pages/modplatform/TwitchPage.cpp pages/modplatform/TwitchPage.cpp
pages/modplatform/TwitchPage.h pages/modplatform/TwitchPage.h
pages/modplatform/TechnicPage.cpp pages/modplatform/TechnicPage.cpp
pages/modplatform/TechnicPage.h pages/modplatform/TechnicPage.h
pages/modplatform/ImportPage.cpp pages/modplatform/ImportPage.cpp
pages/modplatform/ImportPage.h pages/modplatform/ImportPage.h
# GUI - dialogs # GUI - dialogs
dialogs/AboutDialog.cpp dialogs/AboutDialog.cpp
dialogs/AboutDialog.h dialogs/AboutDialog.h
dialogs/ProfileSelectDialog.cpp dialogs/ProfileSelectDialog.cpp
dialogs/ProfileSelectDialog.h dialogs/ProfileSelectDialog.h
dialogs/CopyInstanceDialog.cpp dialogs/CopyInstanceDialog.cpp
dialogs/CopyInstanceDialog.h dialogs/CopyInstanceDialog.h
dialogs/CustomMessageBox.cpp dialogs/CustomMessageBox.cpp
dialogs/CustomMessageBox.h dialogs/CustomMessageBox.h
dialogs/EditAccountDialog.cpp dialogs/EditAccountDialog.cpp
dialogs/EditAccountDialog.h dialogs/EditAccountDialog.h
dialogs/ExportInstanceDialog.cpp dialogs/ExportInstanceDialog.cpp
dialogs/ExportInstanceDialog.h dialogs/ExportInstanceDialog.h
dialogs/IconPickerDialog.cpp dialogs/IconPickerDialog.cpp
dialogs/IconPickerDialog.h dialogs/IconPickerDialog.h
dialogs/LoginDialog.cpp dialogs/LoginDialog.cpp
dialogs/LoginDialog.h dialogs/LoginDialog.h
dialogs/ModEditDialogCommon.cpp dialogs/ModEditDialogCommon.cpp
dialogs/ModEditDialogCommon.h dialogs/ModEditDialogCommon.h
dialogs/NewComponentDialog.cpp dialogs/NewComponentDialog.cpp
dialogs/NewComponentDialog.h dialogs/NewComponentDialog.h
dialogs/NewInstanceDialog.cpp dialogs/NewInstanceDialog.cpp
dialogs/NewInstanceDialog.h dialogs/NewInstanceDialog.h
dialogs/NotificationDialog.cpp dialogs/NotificationDialog.cpp
dialogs/NotificationDialog.h dialogs/NotificationDialog.h
pagedialog/PageDialog.cpp pagedialog/PageDialog.cpp
pagedialog/PageDialog.h pagedialog/PageDialog.h
dialogs/ProgressDialog.cpp dialogs/ProgressDialog.cpp
dialogs/ProgressDialog.h dialogs/ProgressDialog.h
dialogs/UpdateDialog.cpp dialogs/UpdateDialog.cpp
dialogs/UpdateDialog.h dialogs/UpdateDialog.h
dialogs/VersionSelectDialog.cpp dialogs/VersionSelectDialog.cpp
dialogs/VersionSelectDialog.h dialogs/VersionSelectDialog.h
dialogs/SkinUploadDialog.cpp dialogs/SkinUploadDialog.cpp
dialogs/SkinUploadDialog.h dialogs/SkinUploadDialog.h
# GUI - widgets # GUI - widgets
widgets/Common.cpp widgets/Common.cpp
widgets/Common.h widgets/Common.h
widgets/CustomCommands.cpp widgets/CustomCommands.cpp
widgets/CustomCommands.h widgets/CustomCommands.h
widgets/FocusLineEdit.cpp widgets/FocusLineEdit.cpp
widgets/FocusLineEdit.h widgets/FocusLineEdit.h
widgets/IconLabel.cpp widgets/IconLabel.cpp
widgets/IconLabel.h widgets/IconLabel.h
widgets/JavaSettingsWidget.cpp widgets/JavaSettingsWidget.cpp
widgets/JavaSettingsWidget.h widgets/JavaSettingsWidget.h
widgets/LabeledToolButton.cpp widgets/LabeledToolButton.cpp
widgets/LabeledToolButton.h widgets/LabeledToolButton.h
widgets/LineSeparator.cpp widgets/LineSeparator.cpp
widgets/LineSeparator.h widgets/LineSeparator.h
widgets/LogView.cpp widgets/LogView.cpp
widgets/LogView.h widgets/LogView.h
widgets/MCModInfoFrame.cpp widgets/MCModInfoFrame.cpp
widgets/MCModInfoFrame.h widgets/MCModInfoFrame.h
widgets/ModListView.cpp widgets/ModListView.cpp
widgets/ModListView.h widgets/ModListView.h
widgets/PageContainer.cpp widgets/PageContainer.cpp
widgets/PageContainer.h widgets/PageContainer.h
widgets/PageContainer_p.h widgets/PageContainer_p.h
widgets/ServerStatus.cpp widgets/ServerStatus.cpp
widgets/ServerStatus.h widgets/ServerStatus.h
widgets/VersionListView.cpp widgets/VersionListView.cpp
widgets/VersionListView.h widgets/VersionListView.h
widgets/VersionSelectWidget.cpp widgets/VersionSelectWidget.cpp
widgets/VersionSelectWidget.h widgets/VersionSelectWidget.h
widgets/ProgressWidget.h widgets/ProgressWidget.h
widgets/ProgressWidget.cpp widgets/ProgressWidget.cpp
# GUI - instance group view # GUI - instance group view
groupview/GroupedProxyModel.cpp groupview/GroupedProxyModel.cpp
groupview/GroupedProxyModel.h groupview/GroupedProxyModel.h
groupview/GroupView.cpp groupview/GroupView.cpp
groupview/GroupView.h groupview/GroupView.h
groupview/InstanceDelegate.cpp groupview/InstanceDelegate.cpp
groupview/InstanceDelegate.h groupview/InstanceDelegate.h
groupview/VisualGroup.cpp groupview/VisualGroup.cpp
groupview/VisualGroup.h groupview/VisualGroup.h
) )
######## UIs ######## ######## UIs ########
SET(MULTIMC_UIS SET(MULTIMC_UIS
# Instance pages # Instance pages
pages/instance/VersionPage.ui pages/instance/VersionPage.ui
pages/instance/ModFolderPage.ui pages/instance/ModFolderPage.ui
pages/instance/NewModFolderPage.ui pages/instance/NewModFolderPage.ui
pages/instance/LogPage.ui pages/instance/LogPage.ui
pages/instance/InstanceSettingsPage.ui pages/instance/InstanceSettingsPage.ui
pages/instance/NotesPage.ui pages/instance/NotesPage.ui
pages/instance/ScreenshotsPage.ui pages/instance/ScreenshotsPage.ui
pages/instance/OtherLogsPage.ui pages/instance/OtherLogsPage.ui
pages/instance/LegacyUpgradePage.ui pages/instance/LegacyUpgradePage.ui
pages/instance/ServersPage.ui pages/instance/ServersPage.ui
pages/instance/WorldListPage.ui pages/instance/WorldListPage.ui
# Global settings pages # Global settings pages
pages/global/AccountListPage.ui pages/global/AccountListPage.ui
pages/global/ExternalToolsPage.ui pages/global/ExternalToolsPage.ui
pages/global/JavaPage.ui pages/global/JavaPage.ui
pages/global/MinecraftPage.ui pages/global/MinecraftPage.ui
pages/global/MultiMCPage.ui pages/global/MultiMCPage.ui
pages/global/ProxyPage.ui pages/global/ProxyPage.ui
pages/global/PasteEEPage.ui pages/global/PasteEEPage.ui
pages/global/PackagesPage.ui pages/global/PackagesPage.ui
# Platform pages # Platform pages
pages/modplatform/VanillaPage.ui pages/modplatform/VanillaPage.ui
pages/modplatform/FTBPage.ui pages/modplatform/FTBPage.ui
pages/modplatform/TwitchPage.ui pages/modplatform/TwitchPage.ui
pages/modplatform/TechnicPage.ui pages/modplatform/TechnicPage.ui
pages/modplatform/ImportPage.ui pages/modplatform/ImportPage.ui
# Dialogs # Dialogs
dialogs/CopyInstanceDialog.ui dialogs/CopyInstanceDialog.ui
dialogs/NewComponentDialog.ui dialogs/NewComponentDialog.ui
dialogs/NewInstanceDialog.ui dialogs/NewInstanceDialog.ui
dialogs/AboutDialog.ui dialogs/AboutDialog.ui
dialogs/ProgressDialog.ui dialogs/ProgressDialog.ui
dialogs/IconPickerDialog.ui dialogs/IconPickerDialog.ui
dialogs/ProfileSelectDialog.ui dialogs/ProfileSelectDialog.ui
dialogs/EditAccountDialog.ui dialogs/EditAccountDialog.ui
dialogs/ExportInstanceDialog.ui dialogs/ExportInstanceDialog.ui
dialogs/LoginDialog.ui dialogs/LoginDialog.ui
dialogs/UpdateDialog.ui dialogs/UpdateDialog.ui
dialogs/NotificationDialog.ui dialogs/NotificationDialog.ui
dialogs/SkinUploadDialog.ui dialogs/SkinUploadDialog.ui
# Widgets/other # Widgets/other
widgets/CustomCommands.ui widgets/CustomCommands.ui
widgets/MCModInfoFrame.ui widgets/MCModInfoFrame.ui
) )
set(MULTIMC_QRCS set(MULTIMC_QRCS
resources/assets/assets.qrc resources/assets/assets.qrc
resources/backgrounds/backgrounds.qrc resources/backgrounds/backgrounds.qrc
resources/multimc/multimc.qrc resources/multimc/multimc.qrc
resources/pe_dark/pe_dark.qrc resources/pe_dark/pe_dark.qrc
resources/pe_light/pe_light.qrc resources/pe_light/pe_light.qrc
resources/pe_colored/pe_colored.qrc resources/pe_colored/pe_colored.qrc
resources/pe_blue/pe_blue.qrc resources/pe_blue/pe_blue.qrc
resources/OSX/OSX.qrc resources/OSX/OSX.qrc
resources/iOS/iOS.qrc resources/iOS/iOS.qrc
resources/flat/flat.qrc resources/flat/flat.qrc
resources/documents/documents.qrc resources/documents/documents.qrc
) )
######## Windows resource files ######## ######## Windows resource files ########
if(WIN32) if(WIN32)
set(MULTIMC_RCS resources/multimc.rc) set(MULTIMC_RCS resources/multimc.rc)
endif() endif()
# Qt 5 stuff # Qt 5 stuff
@ -303,89 +303,89 @@ qt5_add_resources(MULTIMC_RESOURCES ${MULTIMC_QRCS})
add_executable(MultiMC MACOSX_BUNDLE WIN32 ${MULTIMC_SOURCES} ${MULTIMC_UI} ${MULTIMC_RESOURCES} ${MULTIMC_RCS}) add_executable(MultiMC MACOSX_BUNDLE WIN32 ${MULTIMC_SOURCES} ${MULTIMC_UI} ${MULTIMC_RESOURCES} ${MULTIMC_RCS})
target_link_libraries(MultiMC MultiMC_gui ${QUAZIP_LIBRARIES} hoedown MultiMC_rainbow LocalPeer ganalytics) target_link_libraries(MultiMC MultiMC_gui ${QUAZIP_LIBRARIES} hoedown MultiMC_rainbow LocalPeer ganalytics)
if(DEFINED MultiMC_APP_BINARY_NAME) if(DEFINED MultiMC_APP_BINARY_NAME)
set_target_properties(MultiMC PROPERTIES OUTPUT_NAME "${MultiMC_APP_BINARY_NAME}") set_target_properties(MultiMC PROPERTIES OUTPUT_NAME "${MultiMC_APP_BINARY_NAME}")
endif() endif()
if(DEFINED MultiMC_BINARY_RPATH) if(DEFINED MultiMC_BINARY_RPATH)
SET_TARGET_PROPERTIES(MultiMC PROPERTIES INSTALL_RPATH "${MultiMC_BINARY_RPATH}") SET_TARGET_PROPERTIES(MultiMC PROPERTIES INSTALL_RPATH "${MultiMC_BINARY_RPATH}")
endif() endif()
if(DEFINED MultiMC_APP_BINARY_DEFS) if(DEFINED MultiMC_APP_BINARY_DEFS)
target_compile_definitions(MultiMC PRIVATE ${MultiMC_APP_BINARY_DEFS}) target_compile_definitions(MultiMC PRIVATE ${MultiMC_APP_BINARY_DEFS})
endif() endif()
install(TARGETS MultiMC install(TARGETS MultiMC
BUNDLE DESTINATION ${BUNDLE_DEST_DIR} COMPONENT Runtime BUNDLE DESTINATION ${BUNDLE_DEST_DIR} COMPONENT Runtime
LIBRARY DESTINATION ${LIBRARY_DEST_DIR} COMPONENT Runtime LIBRARY DESTINATION ${LIBRARY_DEST_DIR} COMPONENT Runtime
RUNTIME DESTINATION ${BINARY_DEST_DIR} COMPONENT Runtime RUNTIME DESTINATION ${BINARY_DEST_DIR} COMPONENT Runtime
) )
#### The MultiMC bundle mess! #### #### The MultiMC bundle mess! ####
# Bundle utilities are used to complete the portable packages - they add all the libraries that would otherwise be missing on the target system. # Bundle utilities are used to complete the portable packages - they add all the libraries that would otherwise be missing on the target system.
# NOTE: it seems that this absolutely has to be here, and nowhere else. # NOTE: it seems that this absolutely has to be here, and nowhere else.
if(INSTALL_BUNDLE STREQUAL "full") if(INSTALL_BUNDLE STREQUAL "full")
# Add qt.conf - this makes Qt stop looking for things outside the bundle # Add qt.conf - this makes Qt stop looking for things outside the bundle
install( install(
CODE "file(WRITE \"\${CMAKE_INSTALL_PREFIX}/${RESOURCES_DEST_DIR}/qt.conf\" \" \")" CODE "file(WRITE \"\${CMAKE_INSTALL_PREFIX}/${RESOURCES_DEST_DIR}/qt.conf\" \" \")"
COMPONENT Runtime COMPONENT Runtime
) )
# Bundle plugins # Bundle plugins
if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
# Image formats # Image formats
install( install(
DIRECTORY "${QT_PLUGINS_DIR}/imageformats" DIRECTORY "${QT_PLUGINS_DIR}/imageformats"
DESTINATION ${PLUGIN_DEST_DIR} DESTINATION ${PLUGIN_DEST_DIR}
COMPONENT Runtime COMPONENT Runtime
REGEX "tga|tiff|mng|webp" EXCLUDE REGEX "tga|tiff|mng|webp" EXCLUDE
) )
# Icon engines # Icon engines
install( install(
DIRECTORY "${QT_PLUGINS_DIR}/iconengines" DIRECTORY "${QT_PLUGINS_DIR}/iconengines"
DESTINATION ${PLUGIN_DEST_DIR} DESTINATION ${PLUGIN_DEST_DIR}
COMPONENT Runtime COMPONENT Runtime
REGEX "fontawesome" EXCLUDE REGEX "fontawesome" EXCLUDE
) )
# Platform plugins # Platform plugins
install( install(
DIRECTORY "${QT_PLUGINS_DIR}/platforms" DIRECTORY "${QT_PLUGINS_DIR}/platforms"
DESTINATION ${PLUGIN_DEST_DIR} DESTINATION ${PLUGIN_DEST_DIR}
COMPONENT Runtime COMPONENT Runtime
REGEX "minimal|linuxfb|offscreen" EXCLUDE REGEX "minimal|linuxfb|offscreen" EXCLUDE
) )
else() else()
# Image formats # Image formats
install( install(
DIRECTORY "${QT_PLUGINS_DIR}/imageformats" DIRECTORY "${QT_PLUGINS_DIR}/imageformats"
DESTINATION ${PLUGIN_DEST_DIR} DESTINATION ${PLUGIN_DEST_DIR}
COMPONENT Runtime COMPONENT Runtime
REGEX "tga|tiff|mng|webp" EXCLUDE REGEX "tga|tiff|mng|webp" EXCLUDE
REGEX "d\\." EXCLUDE REGEX "d\\." EXCLUDE
REGEX "_debug\\." EXCLUDE REGEX "_debug\\." EXCLUDE
REGEX "\\.dSYM" EXCLUDE REGEX "\\.dSYM" EXCLUDE
) )
# Icon engines # Icon engines
install( install(
DIRECTORY "${QT_PLUGINS_DIR}/iconengines" DIRECTORY "${QT_PLUGINS_DIR}/iconengines"
DESTINATION ${PLUGIN_DEST_DIR} DESTINATION ${PLUGIN_DEST_DIR}
COMPONENT Runtime COMPONENT Runtime
REGEX "fontawesome" EXCLUDE REGEX "fontawesome" EXCLUDE
REGEX "d\\." EXCLUDE REGEX "d\\." EXCLUDE
REGEX "_debug\\." EXCLUDE REGEX "_debug\\." EXCLUDE
REGEX "\\.dSYM" EXCLUDE REGEX "\\.dSYM" EXCLUDE
) )
# Platform plugins # Platform plugins
install( install(
DIRECTORY "${QT_PLUGINS_DIR}/platforms" DIRECTORY "${QT_PLUGINS_DIR}/platforms"
DESTINATION ${PLUGIN_DEST_DIR} DESTINATION ${PLUGIN_DEST_DIR}
COMPONENT Runtime COMPONENT Runtime
REGEX "minimal|linuxfb|offscreen" EXCLUDE REGEX "minimal|linuxfb|offscreen" EXCLUDE
REGEX "d\\." EXCLUDE REGEX "d\\." EXCLUDE
REGEX "_debug\\." EXCLUDE REGEX "_debug\\." EXCLUDE
REGEX "\\.dSYM" EXCLUDE REGEX "\\.dSYM" EXCLUDE
) )
endif() endif()
configure_file( configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/install_prereqs.cmake.in" "${CMAKE_CURRENT_SOURCE_DIR}/install_prereqs.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/install_prereqs.cmake" "${CMAKE_CURRENT_BINARY_DIR}/install_prereqs.cmake"
@ONLY @ONLY
) )
install(SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/install_prereqs.cmake" COMPONENT Runtime) install(SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/install_prereqs.cmake" COMPONENT Runtime)
endif() endif()

View File

@ -31,7 +31,7 @@
# http://www.boost.org/LICENSE_1_0.txt) # http://www.boost.org/LICENSE_1_0.txt)
if(__get_git_revision_description) if(__get_git_revision_description)
return() return()
endif() endif()
set(__get_git_revision_description YES) set(__get_git_revision_description YES)
@ -40,91 +40,91 @@ set(__get_git_revision_description YES)
get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH) get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH)
function(get_git_head_revision _refspecvar _hashvar) function(get_git_head_revision _refspecvar _hashvar)
set(GIT_PARENT_DIR "${CMAKE_CURRENT_SOURCE_DIR}") set(GIT_PARENT_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
set(GIT_DIR "${GIT_PARENT_DIR}/.git") set(GIT_DIR "${GIT_PARENT_DIR}/.git")
while(NOT EXISTS "${GIT_DIR}") # .git dir not found, search parent directories while(NOT EXISTS "${GIT_DIR}") # .git dir not found, search parent directories
set(GIT_PREVIOUS_PARENT "${GIT_PARENT_DIR}") set(GIT_PREVIOUS_PARENT "${GIT_PARENT_DIR}")
get_filename_component(GIT_PARENT_DIR ${GIT_PARENT_DIR} PATH) get_filename_component(GIT_PARENT_DIR ${GIT_PARENT_DIR} PATH)
if(GIT_PARENT_DIR STREQUAL GIT_PREVIOUS_PARENT) if(GIT_PARENT_DIR STREQUAL GIT_PREVIOUS_PARENT)
# We have reached the root directory, we are not in git # We have reached the root directory, we are not in git
set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE) set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE)
set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE) set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE)
return() return()
endif() endif()
set(GIT_DIR "${GIT_PARENT_DIR}/.git") set(GIT_DIR "${GIT_PARENT_DIR}/.git")
endwhile() endwhile()
# check if this is a submodule # check if this is a submodule
if(NOT IS_DIRECTORY ${GIT_DIR}) if(NOT IS_DIRECTORY ${GIT_DIR})
file(READ ${GIT_DIR} submodule) file(READ ${GIT_DIR} submodule)
string(REGEX REPLACE "gitdir: (.*)\n$" "\\1" GIT_DIR_RELATIVE ${submodule}) string(REGEX REPLACE "gitdir: (.*)\n$" "\\1" GIT_DIR_RELATIVE ${submodule})
get_filename_component(SUBMODULE_DIR ${GIT_DIR} PATH) get_filename_component(SUBMODULE_DIR ${GIT_DIR} PATH)
get_filename_component(GIT_DIR ${SUBMODULE_DIR}/${GIT_DIR_RELATIVE} ABSOLUTE) get_filename_component(GIT_DIR ${SUBMODULE_DIR}/${GIT_DIR_RELATIVE} ABSOLUTE)
endif() endif()
set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data") set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data")
if(NOT EXISTS "${GIT_DATA}") if(NOT EXISTS "${GIT_DATA}")
file(MAKE_DIRECTORY "${GIT_DATA}") file(MAKE_DIRECTORY "${GIT_DATA}")
endif() endif()
if(NOT EXISTS "${GIT_DIR}/HEAD") if(NOT EXISTS "${GIT_DIR}/HEAD")
return() return()
endif() endif()
set(HEAD_FILE "${GIT_DATA}/HEAD") set(HEAD_FILE "${GIT_DATA}/HEAD")
configure_file("${GIT_DIR}/HEAD" "${HEAD_FILE}" COPYONLY) configure_file("${GIT_DIR}/HEAD" "${HEAD_FILE}" COPYONLY)
configure_file("${_gitdescmoddir}/GetGitRevisionDescription.cmake.in" configure_file("${_gitdescmoddir}/GetGitRevisionDescription.cmake.in"
"${GIT_DATA}/grabRef.cmake" "${GIT_DATA}/grabRef.cmake"
@ONLY) @ONLY)
include("${GIT_DATA}/grabRef.cmake") include("${GIT_DATA}/grabRef.cmake")
set(${_refspecvar} "${HEAD_REF}" PARENT_SCOPE) set(${_refspecvar} "${HEAD_REF}" PARENT_SCOPE)
set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE) set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE)
endfunction() endfunction()
function(git_describe _var) function(git_describe _var)
if(NOT GIT_FOUND) if(NOT GIT_FOUND)
find_package(Git QUIET) find_package(Git QUIET)
endif() endif()
get_git_head_revision(refspec hash) get_git_head_revision(refspec hash)
if(NOT GIT_FOUND) if(NOT GIT_FOUND)
set(${_var} "GIT-NOTFOUND" PARENT_SCOPE) set(${_var} "GIT-NOTFOUND" PARENT_SCOPE)
return() return()
endif() endif()
if(NOT hash) if(NOT hash)
set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE) set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE)
return() return()
endif() endif()
# TODO sanitize # TODO sanitize
#if((${ARGN}" MATCHES "&&") OR #if((${ARGN}" MATCHES "&&") OR
# (ARGN MATCHES "||") OR # (ARGN MATCHES "||") OR
# (ARGN MATCHES "\\;")) # (ARGN MATCHES "\\;"))
# message("Please report the following error to the project!") # message("Please report the following error to the project!")
# message(FATAL_ERROR "Looks like someone's doing something nefarious with git_describe! Passed arguments ${ARGN}") # message(FATAL_ERROR "Looks like someone's doing something nefarious with git_describe! Passed arguments ${ARGN}")
#endif() #endif()
#message(STATUS "Arguments to execute_process: ${ARGN}") #message(STATUS "Arguments to execute_process: ${ARGN}")
execute_process(COMMAND execute_process(COMMAND
"${GIT_EXECUTABLE}" "${GIT_EXECUTABLE}"
describe describe
${hash} ${hash}
${ARGN} ${ARGN}
WORKING_DIRECTORY WORKING_DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}"
RESULT_VARIABLE RESULT_VARIABLE
res res
OUTPUT_VARIABLE OUTPUT_VARIABLE
out out
ERROR_QUIET ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
if(NOT res EQUAL 0) if(NOT res EQUAL 0)
set(out "${out}-${res}-NOTFOUND") set(out "${out}-${res}-NOTFOUND")
endif() endif()
set(${_var} "${out}" PARENT_SCOPE) set(${_var} "${out}" PARENT_SCOPE)
endfunction() endfunction()
function(git_get_exact_tag _var) function(git_get_exact_tag _var)
git_describe(out --exact-match ${ARGN}) git_describe(out --exact-match ${ARGN})
set(${_var} "${out}" PARENT_SCOPE) set(${_var} "${out}" PARENT_SCOPE)
endfunction() endfunction()

View File

@ -19,23 +19,23 @@ file(READ "@HEAD_FILE@" HEAD_CONTENTS LIMIT 1024)
string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS) string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS)
if(HEAD_CONTENTS MATCHES "ref") if(HEAD_CONTENTS MATCHES "ref")
# named branch # named branch
string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}") string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}")
if(EXISTS "@GIT_DIR@/${HEAD_REF}") if(EXISTS "@GIT_DIR@/${HEAD_REF}")
configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY) configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY)
else() else()
configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY) configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY)
file(READ "@GIT_DATA@/packed-refs" PACKED_REFS) file(READ "@GIT_DATA@/packed-refs" PACKED_REFS)
if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}") if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}")
set(HEAD_HASH "${CMAKE_MATCH_1}") set(HEAD_HASH "${CMAKE_MATCH_1}")
endif() endif()
endif() endif()
else() else()
# detached HEAD # detached HEAD
configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY) configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY)
endif() endif()
if(NOT HEAD_HASH) if(NOT HEAD_HASH)
file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024) file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024)
string(STRIP "${HEAD_HASH}" HEAD_HASH) string(STRIP "${HEAD_HASH}" HEAD_HASH)
endif() endif()

View File

@ -9,29 +9,29 @@ include(CMakeParseArguments)
if(GIT_FOUND) if(GIT_FOUND)
function(git_run) function(git_run)
set(oneValueArgs OUTPUT_VAR DEFAULT) set(oneValueArgs OUTPUT_VAR DEFAULT)
set(multiValueArgs COMMAND) set(multiValueArgs COMMAND)
cmake_parse_arguments(GIT_RUN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) cmake_parse_arguments(GIT_RUN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
execute_process(COMMAND ${GIT_EXECUTABLE} ${GIT_RUN_COMMAND} execute_process(COMMAND ${GIT_EXECUTABLE} ${GIT_RUN_COMMAND}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
RESULT_VARIABLE GIT_RESULTVAR RESULT_VARIABLE GIT_RESULTVAR
OUTPUT_VARIABLE GIT_OUTVAR OUTPUT_VARIABLE GIT_OUTVAR
OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_STRIP_TRAILING_WHITESPACE
) )
if(GIT_RESULTVAR EQUAL 0) if(GIT_RESULTVAR EQUAL 0)
set(${GIT_RUN_OUTPUT_VAR} "${GIT_OUTVAR}" PARENT_SCOPE) set(${GIT_RUN_OUTPUT_VAR} "${GIT_OUTVAR}" PARENT_SCOPE)
else() else()
set(${GIT_RUN_OUTPUT_VAR} ${GIT_RUN_DEFAULT}) set(${GIT_RUN_OUTPUT_VAR} ${GIT_RUN_DEFAULT})
message(STATUS "Failed to run Git: ${GIT_OUTVAR}") message(STATUS "Failed to run Git: ${GIT_OUTVAR}")
endif() endif()
endfunction() endfunction()
else() else()
function(git_run) function(git_run)
set(oneValueArgs OUTPUT_VAR DEFAULT) set(oneValueArgs OUTPUT_VAR DEFAULT)
set(multiValueArgs COMMAND) set(multiValueArgs COMMAND)
cmake_parse_arguments(GIT_RUN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) cmake_parse_arguments(GIT_RUN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
set(${GIT_RUN_OUTPUT_VAR} ${GIT_RUN_DEFAULT}) set(${GIT_RUN_OUTPUT_VAR} ${GIT_RUN_DEFAULT})
endfunction(git_run) endfunction(git_run)
endif() endif()

View File

@ -2,39 +2,39 @@
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>NSPrincipalClass</key> <key>NSPrincipalClass</key>
<string>NSApplication</string> <string>NSApplication</string>
<key>NSHighResolutionCapable</key> <key>NSHighResolutionCapable</key>
<string>True</string> <string>True</string>
<key>CFBundleDevelopmentRegion</key> <key>CFBundleDevelopmentRegion</key>
<string>English</string> <string>English</string>
<key>CFBundleExecutable</key> <key>CFBundleExecutable</key>
<string>${MACOSX_BUNDLE_EXECUTABLE_NAME}</string> <string>${MACOSX_BUNDLE_EXECUTABLE_NAME}</string>
<key>CFBundleGetInfoString</key> <key>CFBundleGetInfoString</key>
<string>${MACOSX_BUNDLE_INFO_STRING}</string> <string>${MACOSX_BUNDLE_INFO_STRING}</string>
<key>CFBundleIconFile</key> <key>CFBundleIconFile</key>
<string>${MACOSX_BUNDLE_ICON_FILE}</string> <string>${MACOSX_BUNDLE_ICON_FILE}</string>
<key>CFBundleIdentifier</key> <key>CFBundleIdentifier</key>
<string>${MACOSX_BUNDLE_GUI_IDENTIFIER}</string> <string>${MACOSX_BUNDLE_GUI_IDENTIFIER}</string>
<key>CFBundleInfoDictionaryVersion</key> <key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string> <string>6.0</string>
<key>CFBundleLongVersionString</key> <key>CFBundleLongVersionString</key>
<string>${MACOSX_BUNDLE_LONG_VERSION_STRING}</string> <string>${MACOSX_BUNDLE_LONG_VERSION_STRING}</string>
<key>CFBundleName</key> <key>CFBundleName</key>
<string>${MACOSX_BUNDLE_BUNDLE_NAME}</string> <string>${MACOSX_BUNDLE_BUNDLE_NAME}</string>
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>${MACOSX_BUNDLE_SHORT_VERSION_STRING}</string> <string>${MACOSX_BUNDLE_SHORT_VERSION_STRING}</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string> <string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string>
<key>CSResourcesFileMapped</key> <key>CSResourcesFileMapped</key>
<true/> <true/>
<key>LSRequiresCarbon</key> <key>LSRequiresCarbon</key>
<true/> <true/>
<key>NSHumanReadableCopyright</key> <key>NSHumanReadableCopyright</key>
<string>${MACOSX_BUNDLE_COPYRIGHT}</string> <string>${MACOSX_BUNDLE_COPYRIGHT}</string>
</dict> </dict>
</plist> </plist>

View File

@ -5,44 +5,44 @@ set(TEST_RESOURCE_PATH ${CMAKE_CURRENT_LIST_DIR})
message(${TEST_RESOURCE_PATH}) message(${TEST_RESOURCE_PATH})
function(add_unit_test name) function(add_unit_test name)
set(options "") set(options "")
set(oneValueArgs DATA) set(oneValueArgs DATA)
set(multiValueArgs SOURCES LIBS) set(multiValueArgs SOURCES LIBS)
cmake_parse_arguments(OPT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} ) cmake_parse_arguments(OPT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
if(WIN32) if(WIN32)
add_executable(${name}_test ${OPT_SOURCES} ${TEST_RESOURCE_PATH}/UnitTest/test.rc) add_executable(${name}_test ${OPT_SOURCES} ${TEST_RESOURCE_PATH}/UnitTest/test.rc)
else() else()
add_executable(${name}_test ${OPT_SOURCES}) add_executable(${name}_test ${OPT_SOURCES})
endif() endif()
if(NOT "${OPT_DATA}" STREQUAL "") if(NOT "${OPT_DATA}" STREQUAL "")
set(TEST_DATA_PATH "${CMAKE_CURRENT_BINARY_DIR}/data") set(TEST_DATA_PATH "${CMAKE_CURRENT_BINARY_DIR}/data")
set(TEST_DATA_PATH_SRC "${CMAKE_CURRENT_SOURCE_DIR}/${OPT_DATA}") set(TEST_DATA_PATH_SRC "${CMAKE_CURRENT_SOURCE_DIR}/${OPT_DATA}")
message("From ${TEST_DATA_PATH_SRC} to ${TEST_DATA_PATH}") message("From ${TEST_DATA_PATH_SRC} to ${TEST_DATA_PATH}")
string(REGEX REPLACE "[/\\:]" "_" DATA_TARGET_NAME "${TEST_DATA_PATH_SRC}") string(REGEX REPLACE "[/\\:]" "_" DATA_TARGET_NAME "${TEST_DATA_PATH_SRC}")
if(UNIX) if(UNIX)
# on unix we get the third / from the filename # on unix we get the third / from the filename
set(TEST_DATA_URL "file://${TEST_DATA_PATH}") set(TEST_DATA_URL "file://${TEST_DATA_PATH}")
else() else()
# we don't on windows, so we have to add it ourselves # we don't on windows, so we have to add it ourselves
set(TEST_DATA_URL "file:///${TEST_DATA_PATH}") set(TEST_DATA_URL "file:///${TEST_DATA_PATH}")
endif() endif()
if(NOT TARGET "${DATA_TARGET_NAME}") if(NOT TARGET "${DATA_TARGET_NAME}")
add_custom_target(${DATA_TARGET_NAME}) add_custom_target(${DATA_TARGET_NAME})
add_dependencies(${name}_test ${DATA_TARGET_NAME}) add_dependencies(${name}_test ${DATA_TARGET_NAME})
add_custom_command( add_custom_command(
TARGET ${DATA_TARGET_NAME} TARGET ${DATA_TARGET_NAME}
COMMAND ${CMAKE_COMMAND} "-DTEST_DATA_URL=${TEST_DATA_URL}" -DSOURCE=${TEST_DATA_PATH_SRC} -DDESTINATION=${TEST_DATA_PATH} -P ${TEST_RESOURCE_PATH}/UnitTest/generate_test_data.cmake COMMAND ${CMAKE_COMMAND} "-DTEST_DATA_URL=${TEST_DATA_URL}" -DSOURCE=${TEST_DATA_PATH_SRC} -DDESTINATION=${TEST_DATA_PATH} -P ${TEST_RESOURCE_PATH}/UnitTest/generate_test_data.cmake
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
) )
endif() endif()
endif() endif()
target_link_libraries(${name}_test Qt5::Test ${OPT_LIBS}) target_link_libraries(${name}_test Qt5::Test ${OPT_LIBS})
target_include_directories(${name}_test PRIVATE "${TEST_RESOURCE_PATH}/UnitTest/") target_include_directories(${name}_test PRIVATE "${TEST_RESOURCE_PATH}/UnitTest/")
add_test(NAME ${name} COMMAND ${name}_test WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) add_test(NAME ${name} COMMAND ${name}_test WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
endfunction() endfunction()

View File

@ -11,16 +11,16 @@
class TestsInternal class TestsInternal
{ {
public: public:
static QByteArray readFile(const QString &fileName) static QByteArray readFile(const QString &fileName)
{ {
QFile f(fileName); QFile f(fileName);
f.open(QFile::ReadOnly); f.open(QFile::ReadOnly);
return f.readAll(); return f.readAll();
} }
static QString readFileUtf8(const QString &fileName) static QString readFileUtf8(const QString &fileName)
{ {
return QString::fromUtf8(readFile(fileName)); return QString::fromUtf8(readFile(fileName));
} }
}; };
#define MULTIMC_GET_TEST_FILE(file) TestsInternal::readFile(QFINDTESTDATA(file)) #define MULTIMC_GET_TEST_FILE(file) TestsInternal::readFile(QFINDTESTDATA(file))

View File

@ -2,22 +2,22 @@
# variables. Create destination directory if it does not exist. # variables. Create destination directory if it does not exist.
function(configure_files srcDir destDir) function(configure_files srcDir destDir)
make_directory(${destDir}) make_directory(${destDir})
file(GLOB templateFiles RELATIVE ${srcDir} ${srcDir}/*) file(GLOB templateFiles RELATIVE ${srcDir} ${srcDir}/*)
foreach(templateFile ${templateFiles}) foreach(templateFile ${templateFiles})
set(srcTemplatePath ${srcDir}/${templateFile}) set(srcTemplatePath ${srcDir}/${templateFile})
if(NOT IS_DIRECTORY ${srcTemplatePath}) if(NOT IS_DIRECTORY ${srcTemplatePath})
configure_file( configure_file(
${srcTemplatePath} ${srcTemplatePath}
${destDir}/${templateFile} ${destDir}/${templateFile}
@ONLY @ONLY
NEWLINE_STYLE LF NEWLINE_STYLE LF
) )
else() else()
configure_files("${srcTemplatePath}" "${destDir}/${templateFile}") configure_files("${srcTemplatePath}" "${destDir}/${templateFile}")
endif() endif()
endforeach() endforeach()
endfunction() endfunction()
configure_files(${SOURCE} ${DESTINATION}) configure_files(${SOURCE} ${DESTINATION})