1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
unset(_HDRS)
unset(_UIS)
unset(_SRCS)
unset(_RSCS)
unset(PLUGIN)
set( PLUGIN cleanerplugin )
project(${PLUGIN} LANGUAGES CXX)
cmake_minimum_required(VERSION 3.1.0)
if (POLICY CMP0071)
cmake_policy(SET CMP0071 OLD)
endif ()
set( CMAKE_AUTOMOC TRUE )
get_filename_component(ABS_PLUGINS_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../.." ABSOLUTE)
set(PLUGINS_ROOT_DIR "${ABS_PLUGINS_ROOT_DIR}" CACHE STRING "Plugins root path. Path where include directory placed")
set( CMAKE_MODULE_PATH
${CMAKE_MODULE_PATH}
${PLUGINS_ROOT_DIR}/cmake/modules
)
find_package(PsiPluginsApi REQUIRED)
include(${PsiPluginsApi_DIR}/variables.cmake)
include_directories(
${CMAKE_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_LIST_DIR}
${PsiPluginsApi_INCLUDE_DIR}
)
if(NOT PLUGINS_INSTALL_PATH)
set(PLUGINS_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}/${PLUGINS_PATH}")
endif()
set( _HDRS
${PLUGIN}.h
cleaner.h
common.h
models.h
viewers.h
optionsparser.h
)
set( _SRCS
${PLUGIN}.cpp
cleaner.cpp
common.cpp
models.cpp
viewers.cpp
optionsparser.cpp
)
set( _UIS
cleaner.ui
clearingtab.ui
)
set( _RSCS
${PLUGIN}.qrc
)
find_package( Qt5 COMPONENTS Widgets Xml REQUIRED )
set(QT_DEPLIBS
Qt5::Widgets
Qt5::Xml
)
qt5_wrap_ui(UIS ${_UIS})
qt5_add_resources(RSCS ${_RSCS})
if(WIN32)
set(LIB_TYPE "MODULE")
else()
set(LIB_TYPE "SHARED")
endif()
add_library(
${PLUGIN}
${LIB_TYPE}
${_SRCS}
${UIS}
${RSCS}
)
target_link_libraries(
${PLUGIN}
${QT_DEPLIBS}
)
install(
TARGETS
${PLUGIN}
LIBRARY
DESTINATION
${PLUGINS_INSTALL_PATH}
RUNTIME DESTINATION
${PLUGINS_INSTALL_PATH}
)
|