minecraft-pi-reborn/media-layer/trampoline/CMakeLists.txt

31 lines
1.4 KiB
CMake
Raw Normal View History

2024-05-12 01:14:14 +00:00
project(media-layer-trampoline)
# Configuration
2024-06-04 22:29:13 +00:00
set(MEDIA_LAYER_TRAMPOLINE_SRC src/media-layer-core.cpp) # Media Layer Trampoline Source
2024-05-12 01:14:14 +00:00
if(NOT MCPI_HEADLESS_MODE)
2024-06-04 22:29:13 +00:00
list(APPEND MEDIA_LAYER_TRAMPOLINE_SRC src/GLESv1_CM.cpp)
2024-05-12 01:14:14 +00:00
endif()
# Build
if(BUILD_NATIVE_COMPONENTS)
# Host Component
2024-06-04 22:29:13 +00:00
add_library(media-layer-trampoline src/host/host.cpp ${MEDIA_LAYER_TRAMPOLINE_SRC})
target_link_libraries(media-layer-trampoline reborn-util media-layer-core trampoline-headers)
2024-05-12 01:14:14 +00:00
if(NOT MCPI_HEADLESS_MODE)
target_link_libraries(media-layer-trampoline GLESv1_CM)
endif()
target_compile_definitions(media-layer-trampoline PRIVATE -DMEDIA_LAYER_TRAMPOLINE_HOST)
# Install
install(TARGETS media-layer-trampoline DESTINATION "${MCPI_LIB_DIR}")
elseif(BUILD_ARM_COMPONENTS)
# Guest Component
2024-06-04 22:29:13 +00:00
add_library(media-layer-core SHARED src/guest/guest.cpp ${MEDIA_LAYER_TRAMPOLINE_SRC} $<TARGET_OBJECTS:media-layer-extras>)
2024-06-08 07:09:55 +00:00
target_link_libraries(media-layer-core PUBLIC media-layer-headers PRIVATE reborn-util PRIVATE trampoline-headers PRIVATE rt)
2024-05-12 01:14:14 +00:00
target_compile_definitions(media-layer-core PRIVATE -DMEDIA_LAYER_TRAMPOLINE_GUEST)
# Install
if(MCPI_USE_MEDIA_LAYER_TRAMPOLINE)
install(TARGETS media-layer-core DESTINATION "${MCPI_LIB_DIR}")
endif()
install(TARGETS media-layer-core EXPORT sdk DESTINATION "${MCPI_SDK_LIB_DIR}")
endif()