1cmake_minimum_required (VERSION 3.5) 2project(test-gap) 3 4# find pkgconfig 5find_package(PkgConfig REQUIRED) 6 7# pkgconfig required to link cpputest 8find_package(PkgConfig REQUIRED) 9 10# CppuTest 11pkg_check_modules(CPPUTEST REQUIRED CppuTest) 12include_directories(${CPPUTEST_INCLUDE_DIRS}) 13link_directories(${CPPUTEST_LIBRARY_DIRS}) 14link_libraries(${CPPUTEST_LIBRARIES}) 15 16# ASAN 17add_compile_options( -DHAVE_ASSERT) 18add_compile_options( -g -fsanitize=address) 19add_link_options( -fsanitize=address) 20 21include_directories(.) 22include_directories(../../src) 23include_directories(../../platform/posix) 24include_directories( ${CMAKE_CURRENT_BINARY_DIR}) 25 26add_definitions(-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION) 27 28set(SOURCES 29 ../../src/ad_parser.c 30 ../../src/ble/att_db.c 31 ../../src/ble/att_dispatch.c 32 ../../src/ble/gatt_client.c 33 ../../src/ble/le_device_db_memory.c 34 ../../src/btstack_linked_list.c 35 ../../src/btstack_run_loop.c 36 ../../src/btstack_memory.c 37 ../../src/btstack_memory_pool.c 38 ../../src/btstack_util.c 39 ../../src/hci.c 40 ../../src/hci_cmd.c 41 ../../src/hci_dump.c 42 ../../platform/posix/btstack_run_loop_posix.c 43 ../../platform/posix/hci_dump_posix_fs.c 44) 45 46# create static lib 47add_library(btstack STATIC ${SOURCES}) 48 49# create targets 50foreach(EXAMPLE_FILE test_le_scan.cpp hci_test.cpp) 51 get_filename_component(EXAMPLE ${EXAMPLE_FILE} NAME_WE) 52 set (SOURCE_FILES ${EXAMPLE_FILE}) 53 add_executable(${EXAMPLE} ${SOURCE_FILES} ) 54 target_link_libraries(${EXAMPLE} btstack) 55endforeach(EXAMPLE_FILE) 56