1
0
Fork 0
mirror of https://github.com/gwm17/Specter.git synced 2024-11-22 10:18:50 -05:00
Specter/SpecProject/CMakeLists.txt
2022-11-11 15:18:18 -05:00

55 lines
1.5 KiB
CMake

cmake_minimum_required(VERSION 3.16)
set(CMAKE_CXX_STANDARD 20)
if(NOT CMAKE_BUILD_TYPE STREQUAL "Release")
set(CMAKE_BUILD_TYPE "Debug")
message("Building debug")
else()
message("Building release")
endif()
project(SpecProject)
set(SPECPROJECT_BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../bin)
set(SPECTER_CONFIG_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../lib/cmake)
#Use this to find Specter and its libraries. Specify the path to the Specter/lib & Specter/lib/cmake dir after the PATHS keyword (handles windows/linux usecases)
find_package(Specter REQUIRED PATHS ../lib ../lib/cmake)
add_executable(SpecProject)
target_include_directories(SpecProject PUBLIC
./src
)
target_sources(SpecProject PRIVATE
./src/SPSApp.cpp
./src/MassMap.cpp
./src/MassMap.h
./src/SPSAnalysisStage.cpp
./src/SPSAnalysisStage.h
./src/SPSInputLayer.cpp
./src/SPSInputLayer.h
)
target_link_libraries(SpecProject PRIVATE Specter::Specter)
set_target_properties(SpecProject PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${SPECPROJECT_BINARY_DIR})
if(NOT EXISTS "${SPECPROJECT_BINARY_DIR}/Assets")
if(MSVC)
add_custom_command(TARGET SpecProject
POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_CURRENT_SOURCE_DIR}/Assets
${SPECPROJECT_BINARY_DIR}/Assets
)
else()
add_custom_command(TARGET SpecProject
POST_BUILD COMMAND ${CMAKE_COMMAND} -E create_symlink
${CMAKE_CURRENT_SOURCE_DIR}/Assets
${SPECPROJECT_BINARY_DIR}/Assets
)
endif()
endif()