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