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