mirror of
https://github.com/QuasarApp/QuasarAppLib.git
synced 2025-05-04 13:39:42 +00:00
first version cmake build system
This commit is contained in:
parent
2d755daeef
commit
29b9baa3ab
32
CMakeLists.txt
Normal file
32
CMakeLists.txt
Normal file
@ -0,0 +1,32 @@
|
||||
#
|
||||
# Copyright (C) 2018-2019 QuasarApp.
|
||||
# Distributed under the lgplv3 software license, see the accompanying
|
||||
# Everyone is permitted to copy and distribute verbatim copies
|
||||
# of this license document, but changing it is not allowed.
|
||||
#
|
||||
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
include(cmake/QuasarAppOut.cmake)
|
||||
|
||||
project(${QUASARAPP_LIB_NAME} LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${QUASARAPP_LIB_OUTPUT_DIR}/lib)
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${QUASARAPP_LIB_OUTPUT_DIR}/lib)
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${QUASARAPP_LIB_OUTPUT_DIR}/bin)
|
||||
|
||||
find_package(Qt5 COMPONENTS Core REQUIRED)
|
||||
|
||||
file(GLOB SOURCE_CPP
|
||||
"*.cpp"
|
||||
)
|
||||
|
||||
add_library(${PROJECT_NAME} SHARED ${SOURCE_CPP})
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Core)
|
||||
|
25
cmake/QuasarApp.cmake
Normal file
25
cmake/QuasarApp.cmake
Normal file
@ -0,0 +1,25 @@
|
||||
#
|
||||
# Copyright (C) 2018-2019 QuasarApp.
|
||||
# Distributed under the lgplv3 software license, see the accompanying
|
||||
# Everyone is permitted to copy and distribute verbatim copies
|
||||
# of this license document, but changing it is not allowed.
|
||||
#
|
||||
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
IF(NOT QUASARAPP_LIB)
|
||||
SET(QUASARAPP_LIB True)
|
||||
include(QuasarAppOut.cmake)
|
||||
|
||||
message(STATUS "buid type " ${CMAKE_BUILD_TYPE})
|
||||
message(STATUS "Project " ${PROJECT_NAME})
|
||||
message(STATUS "c compiler " ${CMAKE_C_COMPILER})
|
||||
message(STATUS "cxx compiler " ${CMAKE_CXX_COMPILER})
|
||||
message(STATUS "build shared " ${BUILD_SHARED_LIBS})
|
||||
|
||||
|
||||
target_link_libraries(${PROJECT_NAME} ${QUASARAPP_LIB_NAME})
|
||||
target_include_directories(${PROJECT_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/../)
|
||||
|
||||
ENDIF(NOT QUASARAPP_LIB)
|
||||
|
22
cmake/QuasarAppOut.cmake
Normal file
22
cmake/QuasarAppOut.cmake
Normal file
@ -0,0 +1,22 @@
|
||||
#
|
||||
# Copyright (C) 2018-2019 QuasarApp.
|
||||
# Distributed under the lgplv3 software license, see the accompanying
|
||||
# Everyone is permitted to copy and distribute verbatim copies
|
||||
# of this license document, but changing it is not allowed.
|
||||
#
|
||||
|
||||
IF(NOT CMAKE_BUILD_TYPE)
|
||||
SET(CMAKE_BUILD_TYPE Release)
|
||||
ENDIF(NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
SET(QUASARAPP_LIB_NAME QuasarApp)
|
||||
|
||||
IF(CMAKE_BUILD_TYPE EQUAL Release)
|
||||
SET(QUASARAPP_LIB_OUTPUT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/build/release)
|
||||
ELSE()
|
||||
SET(QUASARAPP_LIB_OUTPUT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/build/debug)
|
||||
ENDIF(CMAKE_BUILD_TYPE EQUAL Release)
|
||||
|
||||
message(QUASARAPP_LIB_OUTPUT_DIR = ${QUASARAPP_LIB_OUTPUT_DIR})
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user