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.
19 lines
614 B
19 lines
614 B
5 years ago
|
cmake_minimum_required(VERSION 3.7)
|
||
|
project(cmObject CXX)
|
||
|
|
||
|
add_executable(genC genC.cpp)
|
||
|
|
||
|
add_custom_command(
|
||
|
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/libC.cpp" "${CMAKE_CURRENT_BINARY_DIR}/libC.hpp"
|
||
|
COMMAND genC
|
||
|
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||
|
)
|
||
|
|
||
|
include_directories("${CMAKE_CURRENT_BINARY_DIR}")
|
||
|
|
||
|
add_library(lib_obj OBJECT libA.cpp libB.cpp "${CMAKE_CURRENT_BINARY_DIR}/libC.cpp" "${CMAKE_CURRENT_BINARY_DIR}/libC.hpp")
|
||
|
add_library(lib_sha SHARED $<TARGET_OBJECTS:lib_obj>)
|
||
|
add_library(lib_sta STATIC $<TARGET_OBJECTS:lib_obj>)
|
||
|
|
||
|
target_compile_definitions(lib_obj PRIVATE "-DBUILD_AS_OBJ=1")
|