Warning, /rolisteam/rolisteam/src/libraries/mindmap/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16)
0002
0003 project(rmindmap VERSION 1.0.0 DESCRIPTION "Map your mind")
0004 option(BUILD_GUI OFF)
0005
0006 set(CMAKE_INCLUDE_CURRENT_DIR ON)
0007
0008 set(CMAKE_CXX_STANDARD 17)
0009 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0010 set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
0011 set(CMAKE_AUTOMOC ON)
0012 set(CMAKE_AUTOUIC ON)
0013 set(CMAKE_AUTORCC ON)
0014
0015 # Add a compiler flag
0016 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
0017
0018
0019 find_package(Qt6 COMPONENTS Core Svg Quick QuickControls2 REQUIRED)
0020
0021 set(inc_dir ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap)
0022 set(mindmap_header
0023 ${inc_dir}/mindmap_global.h
0024 ${inc_dir}/controller/selectioncontroller.h
0025 ${inc_dir}/controller/spacingcontroller.h
0026 ${inc_dir}/data/linkcontroller.h
0027 ${inc_dir}/data/mindnode.h
0028 ${inc_dir}/data/minditem.h
0029 ${inc_dir}/data/positioneditem.h
0030 ${inc_dir}/data/packagenode.h
0031 ${inc_dir}/data/nodestyle.h
0032 ${inc_dir}/data/mindmaptypes.h
0033 ${inc_dir}/model/minditemmodel.h
0034 ${inc_dir}/model/imagemodel.h
0035 ${inc_dir}/model/nodeimageprovider.h
0036 ${inc_dir}/geometry/linknode.h
0037 ${inc_dir}/model/nodestylemodel.h
0038 ${inc_dir}/qmlItems/linkitem.h
0039 ${inc_dir}/command/reparentingnodecommand.h
0040 ${inc_dir}/command/dragnodecommand.h
0041 ${inc_dir}/command/removenodecommand.h
0042 ${inc_dir}/command/addimagetonodecommand.h
0043 ${inc_dir}/command/removeimagefromnodecommand.h
0044 ${inc_dir}/command/additemcommand.h
0045 ${inc_dir}/command/commandhelper.h
0046 ${inc_dir}/worker/fileserializer.h
0047 )
0048
0049 # main.cpp
0050 set(mindmap_src
0051 src/controller/selectioncontroller.cpp
0052 src/controller/spacingcontroller.cpp
0053 src/data/linkcontroller.cpp
0054 src/data/mindnode.cpp
0055 src/data/minditem.cpp
0056 src/data/positioneditem.cpp
0057 src/data/nodestyle.cpp
0058 src/data/packagenode.cpp
0059 src/model/minditemmodel.cpp
0060 src/model/imagemodel.cpp
0061 src/model/nodestylemodel.cpp
0062 src/model/nodeimageprovider.cpp
0063 src/command/additemcommand.cpp
0064 src/command/dragnodecommand.cpp
0065 src/command/removenodecommand.cpp
0066 src/command/addimagetonodecommand.cpp
0067 src/command/removeimagefromnodecommand.cpp
0068 src/command/reparentingnodecommand.cpp
0069 src/geometry/linknode.cpp
0070 src/qmlItems/linkitem.cpp
0071 src/worker/fileserializer.cpp
0072 )
0073
0074 set(mindmap_qml
0075 resources/qml/IconButton.qml
0076 resources/qml/Link.qml
0077 resources/qml/MindMap.qml
0078 resources/qml/MindMenu.qml
0079 resources/qml/Content.qml
0080 resources/qml/Node.qml
0081 resources/qml/DrawerMenu.qml
0082 resources/qml/main.qml
0083 )
0084
0085
0086 add_library(rmindmap SHARED ${mindmap_header} ${mindmap_src} ${mindmap_qml} rmindmap.qrc)
0087 target_link_libraries(rmindmap PUBLIC Qt6::Core Qt6::Svg Qt6::Svg Qt6::Qml Qt6::Quick Qt6::QuickControls2 PRIVATE utils)
0088
0089 set_target_properties(rmindmap PROPERTIES VERSION ${PROJECT_VERSION})
0090 set_target_properties(rmindmap PROPERTIES PUBLIC_HEADER "${mindmap_header}")
0091 target_compile_definitions(rmindmap PRIVATE MINDMAP_LIBRARY)
0092
0093 include(GNUInstallDirs)
0094
0095 target_include_directories(rmindmap
0096 PRIVATE
0097 ${CMAKE_CURRENT_SOURCE_DIR}
0098 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/data
0099 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/command
0100 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/controller
0101 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/qmlItems
0102 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/geometry
0103 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/worker
0104 ${CMAKE_CURRENT_SOURCE_DIR}/include/mindmap/model
0105 PUBLIC
0106 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
0107 $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
0108
0109
0110 include(install_helper)
0111 rinstallLib(rmindmap libraries)
0112
0113
0114
0115
0116