2024-07-23 21:37:56 +08:00
|
|
|
# Create executable
|
|
|
|
|
add_executable(VSWDecorator "")
|
|
|
|
|
# Setup source files
|
|
|
|
|
target_sources(VSWDecorator
|
|
|
|
|
PRIVATE
|
|
|
|
|
# Sources
|
|
|
|
|
main.cpp
|
|
|
|
|
)
|
|
|
|
|
# Setup header files
|
|
|
|
|
target_sources(VSWDecorator
|
2024-07-24 22:28:44 +08:00
|
|
|
PRIVATE
|
2024-07-23 21:37:56 +08:00
|
|
|
FILE_SET HEADERS
|
|
|
|
|
FILES
|
|
|
|
|
# Headers
|
|
|
|
|
)
|
|
|
|
|
# Setup header infomations
|
|
|
|
|
target_include_directories(VSWDecorator
|
|
|
|
|
PUBLIC
|
|
|
|
|
${CMAKE_CURRENT_LIST_DIR}
|
2024-07-24 22:28:44 +08:00
|
|
|
)
|
|
|
|
|
# Setup linked library
|
|
|
|
|
target_link_libraries(VSWDecorator
|
|
|
|
|
PRIVATE
|
2024-08-01 17:12:31 +08:00
|
|
|
YYCC::YYCCommonplace
|
2024-07-24 22:28:44 +08:00
|
|
|
SQLite3::SQLite3
|
|
|
|
|
VSWShared
|
2024-07-23 21:37:56 +08:00
|
|
|
)
|
|
|
|
|
# Setup C++ standard
|
|
|
|
|
set_target_properties(VSWDecorator
|
|
|
|
|
PROPERTIES
|
2024-08-04 17:43:18 +08:00
|
|
|
CXX_STANDARD 17
|
|
|
|
|
CXX_STANDARD_REQUIRED 17
|
2024-07-23 21:37:56 +08:00
|
|
|
CXX_EXTENSION OFF
|
|
|
|
|
)
|
|
|
|
|
# MSVC specific correction
|
|
|
|
|
target_compile_definitions(VSWDecorator
|
|
|
|
|
PRIVATE
|
|
|
|
|
$<$<CXX_COMPILER_ID:MSVC>:UNICODE>
|
|
|
|
|
$<$<CXX_COMPILER_ID:MSVC>:_UNICODE>
|
|
|
|
|
)
|
|
|
|
|
# Order build as UTF-8 in MSVC
|
|
|
|
|
target_compile_options(VSWDecorator
|
|
|
|
|
PRIVATE
|
|
|
|
|
$<$<CXX_COMPILER_ID:MSVC>:/utf-8>
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
# Install binary
|
|
|
|
|
install(TARGETS VSWDecorator
|
|
|
|
|
CONFIGURATIONS Release
|
|
|
|
|
RUNTIME DESTINATION ${VSW_INSTALL_BIN_PATH}
|
|
|
|
|
)
|