31 lines
993 B
CMake
31 lines
993 B
CMake
# Simple examples for using hdk-sdl.
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
option(HDK_SDL_INSTALL_EXAMPLES "Install hdk-sdl example binaries and assets" OFF)
|
|
|
|
set(HDK_SDL_EXAMPLES_ASSETS_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/assets)
|
|
set(HDK_SDL_EXAMPLES_ASSETS_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/../assets)
|
|
|
|
add_executable(HelloRenderer2D HelloRenderer2D.cpp)
|
|
target_link_libraries(HelloRenderer2D PRIVATE hdk-sdl)
|
|
|
|
# Stage shared example assets beside the example executables in the build tree.
|
|
add_custom_command(TARGET HelloRenderer2D POST_BUILD
|
|
COMMAND ${CMAKE_COMMAND} -E rm -rf ${HDK_SDL_EXAMPLES_ASSETS_BUILD_DIR}
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
${HDK_SDL_EXAMPLES_ASSETS_SOURCE_DIR}
|
|
${HDK_SDL_EXAMPLES_ASSETS_BUILD_DIR}
|
|
COMMENT "Staging hdk-sdl example assets"
|
|
VERBATIM
|
|
)
|
|
|
|
if(HDK_SDL_INSTALL_EXAMPLES)
|
|
install(TARGETS HelloRenderer2D
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
)
|
|
|
|
install(DIRECTORY ${HDK_SDL_EXAMPLES_ASSETS_SOURCE_DIR}/
|
|
DESTINATION assets
|
|
)
|
|
endif() |