You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
dp4-uos/example/CMakeLists.txt

65 lines
2.1 KiB

cmake_minimum_required(VERSION 3.7)
project(example)
include(GNUInstallDirs)
if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX /usr)
endif ()
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_PREFIX_PATH $ENV{Qt5_DIR})
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall")
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
ADD_DEFINITIONS(-DQM_FILES_DIR="${CMAKE_BINARY_DIR}/dp4-login-plugin")
ADD_DEFINITIONS(-DSERVICE_CONFIG_DIR="${CMAKE_BINARY_DIR}/share/")
ADD_DEFINITIONS(-DSERVICE_LIB_DIR="${CMAKE_BINARY_DIR}/dp4-dbus-service/")
ADD_DEFINITIONS(-DUSER_ICON="${CMAKE_BINARY_DIR}/user-192.png")
else()
ADD_DEFINITIONS(-DSERVICE_CONFIG_DIR="${CMAKE_INSTALL_PREFIX}/share/deepin-service-manager/")
ADD_DEFINITIONS(-DSERVICE_LIB_DIR="${CMAKE_INSTALL_FULL_LIBDIR}/deepin-service-manager/")
ADD_DEFINITIONS(-DQM_FILES_DIR="/usr/lib/dp4-login-plugin/translations")
ADD_DEFINITIONS(-DUSER_ICON="/usr/share/wallpapers/deepin/dp4-login/user-192.png")
endif()
file(GLOB_RECURSE COMPILEFILES *.h *.cpp ../dp4-login-plugin/*.h ../dp4-login-plugin/*.cpp)
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -fsanitize=address -O0")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -fsanitize=address -O0")
endif()
add_executable(${PROJECT_NAME} ${COMPILEFILES})
find_package(PAM REQUIRED)
find_package(Qt5 COMPONENTS Core Widgets DBus Network REQUIRED)
find_package(DdeSessionShell REQUIRED)
set(TRY_KF5_LIBRARIES
IMPORTED_LOCATION_DEBIAN
IMPORTED_LOCATION_NOCONFIG
)
target_include_directories(${PROJECT_NAME} PUBLIC
./service
../dp4-login-plugin/
${PAM_INCLUDE_DIR}
${Qt5Widget_INCLUDE_DIRS}
${Qt5Core_INCLUDE_DIRS}
${Qt5DBus_INCLUDE_DIRS}
${Qt5Network_INCLUDE_DIRS}
${DDESESSIONSHELL_INCLUDE_DIR}
)
target_link_libraries(${PROJECT_NAME} PRIVATE
${PAM_LIBRARIES}
${Qt5Widgets_LIBRARIES}
${Qt5Core_LIBRARIES}
${Qt5DBus_LIBRARIES}
${Qt5Network_LIBRARIES}
)