/
CMakeLists.txt
72 lines (59 loc) · 2.14 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
cmake_minimum_required(VERSION 3.7)
project(BeagleAudio)
set(CMAKE_CXX_STANDARD 11)
file(GLOB MAXIMILIAN
"maximilian/*.h"
"maximilian/*.cpp"
"maximilian/*.c"
"maximilian/libs/*.h"
"maximilian/libs/*.cpp"
"maximilian/libs/*.c"
)
set(SOURCE_FILES main.cpp ${MAXIMILIAN})
add_executable(BeagleAudio ${SOURCE_FILES})
#target_include_directories(BeagleAudio PRIVATE maximilian)
macro(ADD_OSX_FRAMEWORK fwname target)
find_library(FRAMEWORK_${fwname}
NAMES ${fwname}
PATHS ${CMAKE_OSX_SYSROOT}/System/Library
PATH_SUFFIXES Frameworks
NO_DEFAULT_PATH)
if( ${FRAMEWORK_${fwname}} STREQUAL FRAMEWORK_${fwname}-NOTFOUND)
MESSAGE(ERROR ": Framework ${fwname} not found")
else()
TARGET_LINK_LIBRARIES(${target} PUBLIC "${FRAMEWORK_${fwname}}/${fwname}")
MESSAGE(STATUS "Framework ${fwname} found at ${FRAMEWORK_${fwname}}")
endif()
endmacro(ADD_OSX_FRAMEWORK)
# POCO
set(ENABLE_MONGODB false)
set(ENABLE_DATA false)
set(ENABLE_ZIP false)
set(ENABLE_PAGECOMPILER false)
set(ENABLE_PAGECOMPILER_FILE2PAGE false)
set(ENABLE_XML false)
set(ENABLE_NET false)
set(ENABLE_UTIL true)
set(CMAKE_MODULE_PATH
${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
find_package(Poco REQUIRED JSON Util Foundation)
find_package(EventQueue REQUIRED)
target_link_libraries(BeagleAudio PUBLIC ${EventQueue_LIBRARY})
target_link_libraries(BeagleAudio PUBLIC ${Poco_Foundation_LIBRARY})
target_link_libraries(BeagleAudio PUBLIC ${Poco_Util_LIBRARY})
target_link_libraries(BeagleAudio PUBLIC ${Poco_JSON_LIBRARY})
target_link_libraries(BeagleAudio PUBLIC ${EventQueue_LIBRARY})
if(APPLE)
ADD_OSX_FRAMEWORK(CoreFoundation BeagleAudio)
ADD_OSX_FRAMEWORK(CoreAudio BeagleAudio)
ADD_OSX_FRAMEWORK(Accelerate BeagleAudio)
add_definitions(-D__MACOSX_CORE__)
else()
add_definitions(-D__LINUX_ALSA__)
find_package (Threads)
target_link_libraries (BeagleAudio PUBLIC ${CMAKE_THREAD_LIBS_INIT})
find_package(ALSA REQUIRED)
include_directories(${ALSA_INCLUDE_DIRS})
target_link_libraries (BeagleAudio PUBLIC ${ALSA_LIBRARIES})
#-lasound -lpthread
endif()