init commit

This commit is contained in:
2025-11-15 14:14:20 +08:00
commit 0e48af235d
13 changed files with 196 additions and 0 deletions

43
Prism/CMakeLists.txt Normal file
View File

@ -0,0 +1,43 @@
project(Prism)
file(GLOB_RECURSE SRC_SOURCE src/**.cpp)
# static library
set(STATIC_LIBRARY ${PROJECT_NAME}-static)
add_library(${STATIC_LIBRARY} STATIC ${SRC_SOURCE})
target_compile_definitions(${STATIC_LIBRARY} PRIVATE PRISM_STATIC)
target_include_directories(${STATIC_LIBRARY} PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)
set_target_properties(${STATIC_LIBRARY} PROPERTIES
OUTPUT_NAME ${PROJECT_NAME}
ARCHIVE_OUTPUT_NAME ${PROJECT_NAME}
)
# shared library
set(SHARED_LIBRARY ${PROJECT_NAME}-shared)
add_library(${SHARED_LIBRARY} SHARED ${SRC_SOURCE})
target_compile_definitions(${SHARED_LIBRARY} PRIVATE PRISM_SHARED BUILD_PRISM_DLL)
target_include_directories(${SHARED_LIBRARY} PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)
set_target_properties(${SHARED_LIBRARY} PROPERTIES
OUTPUT_NAME ${PROJECT_NAME}d
LIBRARY_OUTPUT_NAME ${PROJECT_NAME}d
)
# alias
add_library(Prism::static ALIAS Prism-static)
add_library(Prism::shared ALIAS Prism-shared)
add_library(Prism ALIAS Prism-shared)