44 lines
1.7 KiB
CMake
44 lines
1.7 KiB
CMake
project(media-layer-stubs)
|
|
|
|
# Add GLES Stubs For Linking
|
|
add_library(GLESv1_CM SHARED src/GLESv1_CM.c)
|
|
target_link_libraries(GLESv1_CM media-layer-headers)
|
|
set_target_properties(GLESv1_CM PROPERTIES SOVERSION "1")
|
|
|
|
# Stubs Only Needed For ARM
|
|
if(BUILD_ARM_COMPONENTS)
|
|
# Stub RPI-Specific Graphics
|
|
add_library(bcm_host SHARED src/bcm_host.c)
|
|
# Install
|
|
install(TARGETS bcm_host DESTINATION "${MCPI_LIB_DIR}")
|
|
|
|
# Stub EGL
|
|
add_library(EGL SHARED src/EGL.c)
|
|
target_link_libraries(EGL reborn-headers media-layer-headers)
|
|
set_target_properties(EGL PROPERTIES SOVERSION "1")
|
|
# Stub X11
|
|
add_library(X11 SHARED src/X11.c)
|
|
target_link_libraries(X11 reborn-headers media-layer-headers)
|
|
set_target_properties(X11 PROPERTIES SOVERSION "6")
|
|
# Install
|
|
if(MCPI_HEADLESS_MODE OR MCPI_USE_MEDIA_LAYER_PROXY)
|
|
install(TARGETS EGL X11 DESTINATION "${MCPI_LIB_DIR}")
|
|
else()
|
|
install(TARGETS EGL X11 DESTINATION "${MCPI_FALLBACK_LIB_DIR}") # Place At The End Of LD_LIBRARY_PATH
|
|
endif()
|
|
|
|
# Install GLESv1_CM Stubs In Server Mode
|
|
if(MCPI_HEADLESS_MODE)
|
|
install(TARGETS GLESv1_CM DESTINATION "${MCPI_LIB_DIR}")
|
|
endif()
|
|
|
|
# MCPI Depends On GLESv2, But Uses GLESv1_CM
|
|
install_symlink("libGLESv1_CM.so.1" "${MCPI_LIB_DIR}/libGLESv2.so")
|
|
# Prevent MCPI From Linking To The Legacy GL Driver When Directly Linking To GL
|
|
if(NOT MCPI_HEADLESS_MODE AND NOT MCPI_USE_MEDIA_LAYER_PROXY)
|
|
# Symlinks
|
|
install_symlink("/usr/lib/arm-linux-gnueabihf/libEGL.so.1" "${MCPI_LIB_DIR}/libEGL.so")
|
|
install_symlink("/usr/lib/arm-linux-gnueabihf/libGLESv1_CM.so.1" "${MCPI_LIB_DIR}/libGLESv1_CM.so.1")
|
|
endif()
|
|
endif()
|