* Probably unresolved external due to newer gcc, thus
added libsdl to libui.a as well.
* Make it work for all distros, which either have SDL2::SDL2
or ${SDL2_LIBRARIES}, provided by sdl2-config or FindSDL2.cmake.
Signed-off-by: Andreas J. Reichel <homebase_ar@web.de>
34 lines
935 B
CMake
34 lines
935 B
CMake
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
|
find_package(ALSA)
|
|
if (ALSA_FOUND)
|
|
set(PLAT_SOURCES linux_midi_alsa.c)
|
|
else()
|
|
set(PLAT_SOURCES unix_midi.c)
|
|
endif()
|
|
else()
|
|
set(PLAT_SOURCES unix_midi.c)
|
|
endif()
|
|
add_library(plat STATIC ${PLAT_SOURCES} unix_thread.c)
|
|
add_library(ui STATIC unix.c unix_sdl.c unix_cdrom.c)
|
|
target_compile_definitions(ui PUBLIC _FILE_OFFSET_BITS=64)
|
|
target_link_libraries(ui dl)
|
|
|
|
find_package(SDL2 REQUIRED)
|
|
include_directories(${SDL2_INCLUDE_DIRS})
|
|
if(MINGW)
|
|
target_link_libraries(ui SDL2::SDL2-static)
|
|
else()
|
|
if (TARGET SDL2::SDL2)
|
|
target_link_libraries(ui SDL2::SDL2)
|
|
else()
|
|
target_link_libraries(ui ${SDL2_LIBRARIES})
|
|
endif()
|
|
endif()
|
|
if (ALSA_FOUND)
|
|
target_link_libraries(plat ALSA::ALSA)
|
|
endif()
|
|
|
|
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
|
|
find_package(Threads REQUIRED)
|
|
target_link_libraries(86Box Threads::Threads)
|