mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-06-13 16:23:14 +02:00
Update CMakeLists.txt
This commit is contained in:
+99
-86
@@ -19,10 +19,10 @@ include(cmake/hoto_update_cmake_message.cmake)
|
|||||||
cmake_minimum_required(VERSION 3.14...3.19 FATAL_ERROR)
|
cmake_minimum_required(VERSION 3.14...3.19 FATAL_ERROR)
|
||||||
|
|
||||||
project(qelectrotech
|
project(qelectrotech
|
||||||
VERSION 0.9.0
|
VERSION 0.100.1
|
||||||
DESCRIPTION "QET is a CAD/CAE editor focusing on schematics drawing features."
|
DESCRIPTION "QET is a CAD/CAE editor focusing on schematics drawing features."
|
||||||
HOMEPAGE_URL "https://qelectrotech.org/"
|
HOMEPAGE_URL "https://qelectrotech.org/"
|
||||||
LANGUAGES CXX)
|
LANGUAGES CXX)
|
||||||
|
|
||||||
include(cmake/copyright_message.cmake)
|
include(cmake/copyright_message.cmake)
|
||||||
|
|
||||||
@@ -31,8 +31,8 @@ set(QET_DIR ${PROJECT_SOURCE_DIR})
|
|||||||
# Add sub directories
|
# Add sub directories
|
||||||
option(PACKAGE_TESTS "Build the tests" ON)
|
option(PACKAGE_TESTS "Build the tests" ON)
|
||||||
if(PACKAGE_TESTS)
|
if(PACKAGE_TESTS)
|
||||||
message("Add sub directory tests")
|
message("Add sub directory tests")
|
||||||
add_subdirectory(tests)
|
add_subdirectory(tests)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(cmake/paths_compilation_installation.cmake)
|
include(cmake/paths_compilation_installation.cmake)
|
||||||
@@ -46,31 +46,31 @@ include(cmake/fetch_pugixml.cmake)
|
|||||||
include(cmake/qet_compilation_vars.cmake)
|
include(cmake/qet_compilation_vars.cmake)
|
||||||
|
|
||||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||||
|
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
set(CMAKE_AUTORCC ON)
|
set(CMAKE_AUTORCC ON)
|
||||||
set(CMAKE_AUTOUIC ON)
|
set(CMAKE_AUTOUIC ON)
|
||||||
|
|
||||||
SET(CMAKE_CXX_STANDARD 17)
|
SET(CMAKE_CXX_STANDARD 17)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
find_package(
|
find_package(
|
||||||
QT
|
QT
|
||||||
NAMES
|
NAMES
|
||||||
Qt5
|
Qt5
|
||||||
COMPONENTS
|
COMPONENTS
|
||||||
${QET_COMPONENTS}
|
${QET_COMPONENTS}
|
||||||
REQUIRED
|
REQUIRED
|
||||||
)
|
)
|
||||||
|
|
||||||
find_package(
|
find_package(
|
||||||
Qt${QT_VERSION_MAJOR}
|
Qt${QT_VERSION_MAJOR}
|
||||||
COMPONENTS
|
COMPONENTS
|
||||||
${QET_COMPONENTS}
|
${QET_COMPONENTS}
|
||||||
REQUIRED)
|
REQUIRED)
|
||||||
|
|
||||||
find_package(SQLite3 REQUIRED)
|
find_package(SQLite3 REQUIRED)
|
||||||
|
|
||||||
set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui)
|
set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui)
|
||||||
|
|
||||||
qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES})
|
qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES})
|
||||||
set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang")
|
set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang")
|
||||||
qt5_add_translation(QM_FILES ${TS_FILES})
|
qt5_add_translation(QM_FILES ${TS_FILES})
|
||||||
@@ -78,78 +78,91 @@ qt5_add_translation(QM_FILES ${TS_FILES})
|
|||||||
# als laatse
|
# als laatse
|
||||||
include(cmake/define_definitions.cmake)
|
include(cmake/define_definitions.cmake)
|
||||||
|
|
||||||
add_executable(
|
# On Windows, WIN32 sets /SUBSYSTEM:WINDOWS to suppress the console window.
|
||||||
${PROJECT_NAME}
|
# Qt automatically links qtmain.lib which provides the WinMain entry point,
|
||||||
${QET_RES_FILES}
|
# so no source code change is needed.
|
||||||
${QET_SRC_FILES}
|
if(WIN32)
|
||||||
${QM_FILES}
|
add_executable(
|
||||||
${QET_DIR}/qelectrotech.qrc
|
${PROJECT_NAME}
|
||||||
)
|
WIN32
|
||||||
|
${QET_RES_FILES}
|
||||||
|
${QET_SRC_FILES}
|
||||||
|
${QM_FILES}
|
||||||
|
${QET_DIR}/qelectrotech.qrc
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
add_executable(
|
||||||
|
${PROJECT_NAME}
|
||||||
|
${QET_RES_FILES}
|
||||||
|
${QET_SRC_FILES}
|
||||||
|
${QM_FILES}
|
||||||
|
${QET_DIR}/qelectrotech.qrc
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
${PROJECT_NAME}
|
${PROJECT_NAME}
|
||||||
PUBLIC
|
PUBLIC
|
||||||
PRIVATE
|
PRIVATE
|
||||||
pugixml::pugixml
|
pugixml::pugixml
|
||||||
SingleApplication::SingleApplication
|
SingleApplication::SingleApplication
|
||||||
SQLite::SQLite3
|
SQLite::SQLite3
|
||||||
${KF5_PRIVATE_LIBRARIES}
|
${KF5_PRIVATE_LIBRARIES}
|
||||||
${QET_PRIVATE_LIBRARIES}
|
${QET_PRIVATE_LIBRARIES}
|
||||||
)
|
)
|
||||||
|
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
${PROJECT_NAME}
|
${PROJECT_NAME}
|
||||||
PRIVATE
|
PRIVATE
|
||||||
${QET_DIR}/sources/titleblock
|
${QET_DIR}/sources/titleblock
|
||||||
${QET_DIR}/sources/ui
|
${QET_DIR}/sources/ui
|
||||||
${QET_DIR}/sources/qetgraphicsitem
|
${QET_DIR}/sources/qetgraphicsitem
|
||||||
${QET_DIR}/sources/qetgraphicsitem/ViewItem
|
${QET_DIR}/sources/qetgraphicsitem/ViewItem
|
||||||
${QET_DIR}/sources/qetgraphicsitem/ViewItem/ui
|
${QET_DIR}/sources/qetgraphicsitem/ViewItem/ui
|
||||||
${QET_DIR}/sources/richtext
|
${QET_DIR}/sources/richtext
|
||||||
${QET_DIR}/sources/factory
|
${QET_DIR}/sources/factory
|
||||||
${QET_DIR}/sources/properties
|
${QET_DIR}/sources/properties
|
||||||
${QET_DIR}/sources/dvevent
|
${QET_DIR}/sources/dvevent
|
||||||
${QET_DIR}/sources/editor
|
${QET_DIR}/sources/editor
|
||||||
${QET_DIR}/sources/editor/esevent
|
${QET_DIR}/sources/editor/esevent
|
||||||
${QET_DIR}/sources/editor/graphicspart
|
${QET_DIR}/sources/editor/graphicspart
|
||||||
${QET_DIR}/sources/editor/ui
|
${QET_DIR}/sources/editor/ui
|
||||||
${QET_DIR}/sources/editor/UndoCommand
|
${QET_DIR}/sources/editor/UndoCommand
|
||||||
${QET_DIR}/sources/undocommand
|
${QET_DIR}/sources/undocommand
|
||||||
${QET_DIR}/sources/diagramevent
|
${QET_DIR}/sources/diagramevent
|
||||||
${QET_DIR}/sources/ElementsCollection
|
${QET_DIR}/sources/ElementsCollection
|
||||||
${QET_DIR}/sources/ElementsCollection/ui
|
${QET_DIR}/sources/ElementsCollection/ui
|
||||||
${QET_DIR}/sources/autoNum
|
${QET_DIR}/sources/autoNum
|
||||||
${QET_DIR}/sources/autoNum/ui
|
${QET_DIR}/sources/autoNum/ui
|
||||||
${QET_DIR}/sources/ui/configpage
|
${QET_DIR}/sources/ui/configpage
|
||||||
${QET_DIR}/sources/SearchAndReplace
|
${QET_DIR}/sources/SearchAndReplace
|
||||||
${QET_DIR}/sources/SearchAndReplace/ui
|
${QET_DIR}/sources/SearchAndReplace/ui
|
||||||
${QET_DIR}/sources/NameList
|
${QET_DIR}/sources/NameList
|
||||||
${QET_DIR}/sources/NameList/ui
|
${QET_DIR}/sources/NameList/ui
|
||||||
${QET_DIR}/sources/utils
|
${QET_DIR}/sources/utils
|
||||||
${QET_DIR}/pugixml/src
|
${QET_DIR}/pugixml/src
|
||||||
${QET_DIR}/sources/dataBase
|
${QET_DIR}/sources/dataBase
|
||||||
${QET_DIR}/sources/dataBase/ui
|
${QET_DIR}/sources/dataBase/ui
|
||||||
${QET_DIR}/sources/factory/ui
|
${QET_DIR}/sources/factory/ui
|
||||||
${QET_DIR}/sources/print
|
${QET_DIR}/sources/print
|
||||||
)
|
)
|
||||||
|
|
||||||
install(TARGETS ${PROJECT_NAME})
|
install(TARGETS ${PROJECT_NAME})
|
||||||
|
|
||||||
if (NOT MINGW)
|
if (NOT MINGW)
|
||||||
|
install(DIRECTORY ico/breeze-icons/16x16 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/16x16 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY ico/breeze-icons/22x22 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/22x22 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY ico/breeze-icons/32x32 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/32x32 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY ico/breeze-icons/48x48 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/48x48 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY ico/breeze-icons/64x64 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/64x64 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY ico/breeze-icons/128x128 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/128x128 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY ico/breeze-icons/256x256 DESTINATION ${QET_ICONS_PATH})
|
||||||
install(DIRECTORY ico/breeze-icons/256x256 DESTINATION ${QET_ICONS_PATH})
|
install(DIRECTORY elements DESTINATION share/qelectrotech)
|
||||||
install(DIRECTORY elements DESTINATION share/qelectrotech)
|
install(DIRECTORY examples DESTINATION share/qelectrotech)
|
||||||
install(DIRECTORY examples DESTINATION share/qelectrotech)
|
install(DIRECTORY titleblocks DESTINATION share/qelectrotech)
|
||||||
install(DIRECTORY titleblocks DESTINATION share/qelectrotech)
|
install(FILES LICENSE ELEMENTS.LICENSE CREDIT README ChangeLog DESTINATION share/doc/qelectrotech)
|
||||||
install(FILES LICENSE ELEMENTS.LICENSE CREDIT README ChangeLog DESTINATION share/doc/qelectrotech)
|
install(FILES misc/org.qelectrotech.qelectrotech.desktop DESTINATION share/applications)
|
||||||
install(FILES misc/org.qelectrotech.qelectrotech.desktop DESTINATION share/applications)
|
install(FILES misc/qelectrotech.xml DESTINATION share/mime/packages)
|
||||||
install(FILES misc/qelectrotech.xml DESTINATION share/mime/packages)
|
install(FILES misc/qelectrotech.appdata.xml DESTINATION ${QET_APPDATA_PATH})
|
||||||
install(FILES misc/qelectrotech.appdata.xml DESTINATION ${QET_APPDATA_PATH})
|
install(FILES ${QM_FILES} DESTINATION ${QET_LANG_PATH})
|
||||||
install(FILES ${QM_FILES} DESTINATION ${QET_LANG_PATH})
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
Reference in New Issue
Block a user