Enable Snapserver build for Android

This commit is contained in:
badaix 2021-11-05 21:05:13 +01:00
parent 783c1f5fb2
commit c77a53a9a5
2 changed files with 72 additions and 54 deletions

View file

@ -93,9 +93,9 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
endif() endif()
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Android") elseif (${CMAKE_SYSTEM_NAME} MATCHES "Android")
set (ANDROID TRUE) set (ANDROID TRUE)
if (BUILD_SERVER) # if (BUILD_SERVER)
message(FATAL_ERROR "Snapserver not yet supported for Android, use \"-DBUILD_SERVER=OFF\"") # message(FATAL_ERROR "Snapserver not yet supported for Android, use \"-DBUILD_SERVER=OFF\"")
endif() # endif()
endif() endif()
# Configure paths # Configure paths

View file

@ -41,6 +41,18 @@ set(SERVER_INCLUDE
${CMAKE_SOURCE_DIR}/server ${CMAKE_SOURCE_DIR}/server
${CMAKE_SOURCE_DIR}/common) ${CMAKE_SOURCE_DIR}/common)
if (ANDROID)
find_package(vorbis REQUIRED CONFIG)
list(APPEND SERVER_LIBRARIES boost::boost)
list(APPEND SERVER_LIBRARIES flac::flac)
list(APPEND SERVER_LIBRARIES opus::opus)
list(APPEND SERVER_LIBRARIES ogg::ogg)
list(APPEND SERVER_LIBRARIES vorbis::vorbis)
list(APPEND SERVER_SOURCES encoder/flac_encoder.cpp)
list(APPEND SERVER_SOURCES encoder/ogg_encoder.cpp)
list(APPEND SERVER_SOURCES encoder/opus_encoder.cpp)
else()
# Avahi # Avahi
if (AVAHI_FOUND) if (AVAHI_FOUND)
list(APPEND SERVER_SOURCES publishZeroConf/publish_avahi.cpp) list(APPEND SERVER_SOURCES publishZeroConf/publish_avahi.cpp)
@ -88,10 +100,15 @@ if (EXPAT_FOUND)
list(APPEND SERVER_LIBRARIES ${EXPAT_LIBRARIES}) list(APPEND SERVER_LIBRARIES ${EXPAT_LIBRARIES})
list(APPEND SERVER_INCLUDE ${EXPAT_INCLUDE_DIRS}) list(APPEND SERVER_INCLUDE ${EXPAT_INCLUDE_DIRS})
endif (EXPAT_FOUND) endif (EXPAT_FOUND)
endif()
#list(APPEND SERVER_LIBRARIES Boost::boost) #list(APPEND SERVER_LIBRARIES Boost::boost)
include_directories(${SERVER_INCLUDE}) include_directories(${SERVER_INCLUDE})
if (ANDROID)
add_executable(libsnapserver.so ${SERVER_SOURCES})
target_link_libraries(libsnapserver.so ${SERVER_LIBRARIES} log)
else()
add_executable(snapserver ${SERVER_SOURCES}) add_executable(snapserver ${SERVER_SOURCES})
target_link_libraries(snapserver ${SERVER_LIBRARIES}) target_link_libraries(snapserver ${SERVER_LIBRARIES})
@ -101,3 +118,4 @@ install(FILES etc/snapserver.conf COMPONENT server DESTINATION ${CMAKE_INSTALL_S
install(FILES etc/index.html COMPONENT server DESTINATION ${CMAKE_INSTALL_DATADIR}/snapserver) install(FILES etc/index.html COMPONENT server DESTINATION ${CMAKE_INSTALL_DATADIR}/snapserver)
install(DIRECTORY etc/snapweb/ DESTINATION ${CMAKE_INSTALL_DATADIR}/snapserver/snapweb) install(DIRECTORY etc/snapweb/ DESTINATION ${CMAKE_INSTALL_DATADIR}/snapserver/snapweb)
#install(FILES ../debian/snapserver.service DESTINATION ${SYSTEMD_SERVICES_INSTALL_DIR}) #install(FILES ../debian/snapserver.service DESTINATION ${SYSTEMD_SERVICES_INSTALL_DIR})
endif()