AronaCore/CMakeLists.txt
2024-07-15 11:46:59 +08:00

42 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(arona_core)
include(cmake/retrieve_files.cmake)
# setup rtaudio
if (WIN32)
set(RTAUDIO_API_ASIO ON CACHE BOOL "" FORCE)
set(RTAUDIO_API_WASAPI ON CACHE BOOL "" FORCE)
set(RTAUDIO_API_DS OFF CACHE BOOL "" FORCE)
elseif(APPLE)
set(RTAUDIO_API_CORE ON CACHE BOOL "" FORCE)
else()
set(RTAUDIO_API_ALSA ON CACHE BOOL "" FORCE)
endif()
# setup spdlog
set(SPDLOG_BUILD_SHARED ON CACHE BOOL "" FORCE)
set(SPDLOG_BUILD_EXAMPLE OFF CACHE BOOL "" FORCE)
set(SPDLOG_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(SPDLOG_BUILD_BENCH OFF CACHE BOOL "" FORCE)
set(SPDLOG_FMT_EXTERNAL OFF CACHE BOOL "" FORCE)
set(SPDLOG_FMT_EXTERNAL_HO OFF CACHE BOOL "" FORCE)
set(SPDLOG_WCHAR_SUPPORT ON CACHE BOOL "" FORCE)
set(SPDLOG_ENABLE_PCH ON CACHE BOOL "" FORCE)
set(SPDLOG_USE_STD_FORMAT OFF CACHE BOOL "" FORCE)
if (MSVC)
link_directories(${CMAKE_BINARY_DIR}/bin/$<CONFIG>)
endif ()
# setup taskflow
set(TF_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(TF_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
add_subdirectory(core)
add_subdirectory(third_party/rtaudio)
add_subdirectory(third_party/spdlog)
add_subdirectory(third_party/taskflow)
add_subdirectory(third_party/glfw)
add_subdirectory(third_party/midifile)