mirror of
https://github.com/Serial-Studio/Serial-Studio.git
synced 2025-01-31 17:42:55 +08:00
103 lines
2.6 KiB
CMake
103 lines
2.6 KiB
CMake
cmake_minimum_required(VERSION 3.20)
|
|
project(QCodeEditor)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
option(BUILD_EXAMPLE "Example building required" OFF)
|
|
|
|
if (${BUILD_EXAMPLE})
|
|
message(STATUS "QCodeEditor example will be built.")
|
|
add_subdirectory(example)
|
|
endif()
|
|
|
|
set(RESOURCES_FILE
|
|
resources/qcodeeditor_resources.qrc
|
|
)
|
|
|
|
set(INCLUDE_FILES
|
|
include/QHighlightRule
|
|
include/QHighlightBlockRule
|
|
include/QCodeEditor
|
|
include/QCXXHighlighter
|
|
include/QJavascriptHighlighter
|
|
include/QLineNumberArea
|
|
include/QStyleSyntaxHighlighter
|
|
include/QSyntaxStyle
|
|
include/QGLSLCompleter
|
|
include/QGLSLHighlighter
|
|
include/QLanguage
|
|
include/QXMLHighlighter
|
|
include/QJSONHighlighter
|
|
include/QLuaCompleter
|
|
include/QLuaHighlighter
|
|
include/QPythonHighlighter
|
|
include/QFramedTextAttribute
|
|
include/QJavascriptCompleter
|
|
include/internal/QHighlightRule.hpp
|
|
include/internal/QHighlightBlockRule.hpp
|
|
include/internal/QCodeEditor.hpp
|
|
include/internal/QCXXHighlighter.hpp
|
|
include/internal/QJavascriptHighlighter.hpp
|
|
include/internal/QLineNumberArea.hpp
|
|
include/internal/QStyleSyntaxHighlighter.hpp
|
|
include/internal/QSyntaxStyle.hpp
|
|
include/internal/QGLSLCompleter.hpp
|
|
include/internal/QGLSLHighlighter.hpp
|
|
include/internal/QLanguage.hpp
|
|
include/internal/QXMLHighlighter.hpp
|
|
include/internal/QJSONHighlighter.hpp
|
|
include/internal/QLuaCompleter.hpp
|
|
include/internal/QLuaHighlighter.hpp
|
|
include/internal/QPythonCompleter.hpp
|
|
include/internal/QPythonHighlighter.hpp
|
|
include/internal/QFramedTextAttribute.hpp
|
|
include/internal/QJavascriptCompleter.hpp
|
|
)
|
|
|
|
set(SOURCE_FILES
|
|
src/internal/QCodeEditor.cpp
|
|
src/internal/QLineNumberArea.cpp
|
|
src/internal/QCXXHighlighter.cpp
|
|
src/internal/QJavascriptHighlighter.cpp
|
|
src/internal/QSyntaxStyle.cpp
|
|
src/internal/QStyleSyntaxHighlighter.cpp
|
|
src/internal/QGLSLCompleter.cpp
|
|
src/internal/QGLSLHighlighter.cpp
|
|
src/internal/QLanguage.cpp
|
|
src/internal/QXMLHighlighter.cpp
|
|
src/internal/QJSONHighlighter.cpp
|
|
src/internal/QLuaCompleter.cpp
|
|
src/internal/QLuaHighlighter.cpp
|
|
src/internal/QPythonCompleter.cpp
|
|
src/internal/QPythonHighlighter.cpp
|
|
src/internal/QFramedTextAttribute.cpp
|
|
src/internal/QJavascriptCompleter.cpp
|
|
)
|
|
|
|
# Create code for QObjects
|
|
set(CMAKE_AUTOMOC On)
|
|
|
|
# Create code from resource files
|
|
set(CMAKE_AUTORCC ON)
|
|
|
|
# Find includes in corresponding build directories
|
|
find_package(Qt6Core CONFIG REQUIRED)
|
|
find_package(Qt6Widgets CONFIG REQUIRED)
|
|
find_package(Qt6Gui CONFIG REQUIRED)
|
|
|
|
add_library(QCodeEditor STATIC
|
|
${RESOURCES_FILE}
|
|
${SOURCE_FILES}
|
|
${INCLUDE_FILES}
|
|
)
|
|
|
|
target_include_directories(QCodeEditor PUBLIC
|
|
include
|
|
)
|
|
|
|
target_link_libraries(QCodeEditor
|
|
Qt6::Core
|
|
Qt6::Widgets
|
|
Qt6::Gui
|
|
)
|