xref: /btstack/test/lc3/CMakeLists.txt (revision e40ee29a889d72d91eb40220df189fbf1d624a43)
13d88d85aSMatthias Ringwaldcmake_minimum_required (VERSION 3.12)
23d88d85aSMatthias Ringwaldproject(BTstack-Test-LC3)
33d88d85aSMatthias Ringwaldset (CMAKE_CXX_STANDARD 11)
43d88d85aSMatthias Ringwald
53d88d85aSMatthias Ringwald# find pkgconfig
63d88d85aSMatthias Ringwaldfind_package(PkgConfig REQUIRED)
73d88d85aSMatthias Ringwald
83d88d85aSMatthias Ringwald# portaudio
93d88d85aSMatthias Ringwaldpkg_check_modules(PORTAUDIO portaudio-2.0)
103d88d85aSMatthias Ringwaldif(PORTAUDIO_FOUND)
113d88d85aSMatthias Ringwald    include_directories(${PORTAUDIO_INCLUDE_DIRS})
123d88d85aSMatthias Ringwald    link_directories(${PORTAUDIO_LIBRARY_DIRS})
133d88d85aSMatthias Ringwald    link_libraries(${PORTAUDIO_LIBRARIES})
143d88d85aSMatthias Ringwald    add_compile_definitions(HAVE_PORTAUDIO)
153d88d85aSMatthias Ringwaldendif()
163d88d85aSMatthias Ringwald
173d88d85aSMatthias Ringwald# local dir for btstack_config.h after build dir to avoid using .h from Makefile
183d88d85aSMatthias Ringwaldinclude_directories(.)
193d88d85aSMatthias Ringwald
20*e40ee29aSMatthias Ringwaldinclude_directories(../../3rd-party/lc3-google/include)
213d88d85aSMatthias Ringwaldinclude_directories(../../3rd-party/tinydir)
223d88d85aSMatthias Ringwaldinclude_directories(../../platform/posix)
23*e40ee29aSMatthias Ringwaldinclude_directories(../../src)
243d88d85aSMatthias Ringwald
253d88d85aSMatthias Ringwaldfile(GLOB SOURCES_POSIX     "../../platform/posix/*.c")
263d88d85aSMatthias Ringwaldfile(GLOB SOURCES_SRC       "../../src/*.c" "../../src/*.cpp")
27*e40ee29aSMatthias Ringwaldfile(GLOB SOURCES_LC3_GOOGLE "../../3rd-party/lc3-google/src/*.c")
283d88d85aSMatthias Ringwald
293d88d85aSMatthias Ringwald# Enable ASAN
303d88d85aSMatthias Ringwaldadd_compile_options( -g -fsanitize=address)
313d88d85aSMatthias Ringwaldadd_link_options(       -fsanitize=address)
323d88d85aSMatthias Ringwald
333d88d85aSMatthias Ringwald# create targets
343d88d85aSMatthias Ringwaldfile(GLOB EXAMPLES "lc3_*.c")
353d88d85aSMatthias Ringwaldforeach(EXAMPLE_FILE ${EXAMPLES})
363d88d85aSMatthias Ringwald	get_filename_component(EXAMPLE ${EXAMPLE_FILE} NAME_WE)
37*e40ee29aSMatthias Ringwald	set (SOURCE_FILES ${SOURCES_POSIX} ${SOURCES_SRC} ${SOURCES_LC3_GOOGLE} ${EXAMPLE_FILE})
383d88d85aSMatthias Ringwald	message("Tool: ${EXAMPLE}")
393d88d85aSMatthias Ringwald	add_executable(${EXAMPLE} ${SOURCE_FILES} )
403d88d85aSMatthias Ringwaldendforeach(EXAMPLE_FILE)
41