Newer
Older
Kevin Whitaker
committed
cmake_minimum_required(VERSION 3.1)
Kevin Whitaker
committed
set(CMAKE_CXX_STANDARD 11) #Change to 17 when possible for filesystem support
Kevin Whitaker
committed
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
find_package(Wt REQUIRED)
find_package(Groove REQUIRED)
Kevin Whitaker
committed
find_package(TagLib REQUIRED)
add_executable(arbitrateor src/main.cpp src/WebInterface.cpp src/GroovePlayer.cpp src/ui/LoginInterface.cpp src/ui/PlayerInterface.cpp src/ui/TrackDetails.cpp src/ui/RequestInterface.cpp src/ui/UploadInterface.cpp src/ui/AdminInterface.cpp)
Kevin Whitaker
committed
target_link_libraries(arbitrateor ${Wt_LIBRARIES} ${GROOVE_LIBRARY} ${GROOVE_FINGERPRINT_LIBRARY} ${GROOVE_PLAYER_LIBRARY} ${GROOVE_LOUDNESS_LIBRARY} ${TAGLIB_LIBRARY} pthread boost_system stdc++fs) #TODO get threading links based on platform. Remove gcc experimental fs when official c++17 exists.
install(TARGETS arbitrateor RUNTIME DESTINATION .)
install(FILES ${CMAKE_SOURCE_DIR}/wt_config.xml DESTINATION .)
install(FILES ${CMAKE_SOURCE_DIR}/run.sh DESTINATION .)