xref: /btstack/test/lc3/CMakeLists.txt (revision e40ee29a889d72d91eb40220df189fbf1d624a43)
1cmake_minimum_required (VERSION 3.12)
2project(BTstack-Test-LC3)
3set (CMAKE_CXX_STANDARD 11)
4
5# find pkgconfig
6find_package(PkgConfig REQUIRED)
7
8# portaudio
9pkg_check_modules(PORTAUDIO portaudio-2.0)
10if(PORTAUDIO_FOUND)
11    include_directories(${PORTAUDIO_INCLUDE_DIRS})
12    link_directories(${PORTAUDIO_LIBRARY_DIRS})
13    link_libraries(${PORTAUDIO_LIBRARIES})
14    add_compile_definitions(HAVE_PORTAUDIO)
15endif()
16
17# local dir for btstack_config.h after build dir to avoid using .h from Makefile
18include_directories(.)
19
20include_directories(../../3rd-party/lc3-google/include)
21include_directories(../../3rd-party/tinydir)
22include_directories(../../platform/posix)
23include_directories(../../src)
24
25file(GLOB SOURCES_POSIX     "../../platform/posix/*.c")
26file(GLOB SOURCES_SRC       "../../src/*.c" "../../src/*.cpp")
27file(GLOB SOURCES_LC3_GOOGLE "../../3rd-party/lc3-google/src/*.c")
28
29# Enable ASAN
30add_compile_options( -g -fsanitize=address)
31add_link_options(       -fsanitize=address)
32
33# create targets
34file(GLOB EXAMPLES "lc3_*.c")
35foreach(EXAMPLE_FILE ${EXAMPLES})
36	get_filename_component(EXAMPLE ${EXAMPLE_FILE} NAME_WE)
37	set (SOURCE_FILES ${SOURCES_POSIX} ${SOURCES_SRC} ${SOURCES_LC3_GOOGLE} ${EXAMPLE_FILE})
38	message("Tool: ${EXAMPLE}")
39	add_executable(${EXAMPLE} ${SOURCE_FILES} )
40endforeach(EXAMPLE_FILE)
41