The Meson Build System
http://mesonbuild.com/
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.
38 lines
1.2 KiB
38 lines
1.2 KiB
cmake_minimum_required(VERSION 3.5) |
|
|
|
project(cmMod) |
|
set(CMAKE_CXX_STANDARD 14) |
|
|
|
find_package(ZLIB REQUIRED) |
|
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/lib) |
|
|
|
set(CONFIG_OPT 42) |
|
configure_file("config.h.in" "${CMAKE_CURRENT_BINARY_DIR}/config.h" @ONLY) |
|
|
|
add_library(cmModLib SHARED lib/cmMod.cpp) |
|
add_library(cmModLibStatic STATIC lib/cmMod.cpp) |
|
include(GenerateExportHeader) |
|
generate_export_header(cmModLib) |
|
|
|
set_target_properties(cmModLib PROPERTIES VERSION 1.0.1) |
|
|
|
add_executable(testEXE main.cpp "${CMAKE_CURRENT_BINARY_DIR}/config.h") |
|
|
|
target_link_libraries(cmModLib ZLIB::ZLIB) |
|
target_link_libraries(cmModLibStatic ;ZLIB::ZLIB;) |
|
target_link_libraries(testEXE cmModLib) |
|
|
|
if(APPLE) |
|
find_library(COREFOUNDATION_FRAMEWORK "CoreFoundation") |
|
if(NOT COREFOUNDATION_FRAMEWORK) |
|
message(FATAL_ERROR "CoreFoundation framework not found") |
|
endif() |
|
|
|
target_link_libraries(cmModLibStatic "${COREFOUNDATION_FRAMEWORK}") |
|
target_compile_definitions(cmModLibStatic PUBLIC USE_FRAMEWORK) |
|
endif() |
|
|
|
target_compile_definitions(cmModLibStatic PUBLIC CMMODLIB_STATIC_DEFINE) |
|
|
|
install(TARGETS testEXE LIBRARY DESTINATION lib RUNTIME DESTINATION bin)
|
|
|