xref: /btstack/test/gatt_server/CMakeLists.txt (revision e2b8c0950d8508923d7164425b2235102b1391ff)
1*e2b8c095SMilanka Ringwaldcmake_minimum_required (VERSION 3.5)
2*e2b8c095SMilanka Ringwaldproject(gatt_server)
3*e2b8c095SMilanka Ringwald
4*e2b8c095SMilanka Ringwald# fink pkgconfig
5*e2b8c095SMilanka Ringwaldfind_package(PkgConfig REQUIRED)
6*e2b8c095SMilanka Ringwald
7*e2b8c095SMilanka Ringwald# add CppUTest
8*e2b8c095SMilanka Ringwaldinclude_directories("/usr/local/include")
9*e2b8c095SMilanka Ringwaldlink_directories("/usr/local/lib")
10*e2b8c095SMilanka Ringwaldlink_libraries( CppUTest )
11*e2b8c095SMilanka Ringwaldlink_libraries( CppUTestExt )
12*e2b8c095SMilanka Ringwald
13*e2b8c095SMilanka Ringwaldinclude_directories(.)
14*e2b8c095SMilanka Ringwaldinclude_directories(../../src)
15*e2b8c095SMilanka Ringwaldinclude_directories(../../3rd-party/rijndael/)
16*e2b8c095SMilanka Ringwaldinclude_directories(../../3rd-party/micro-ecc/)
17*e2b8c095SMilanka Ringwaldinclude_directories( ${CMAKE_CURRENT_BINARY_DIR})
18*e2b8c095SMilanka Ringwald
19*e2b8c095SMilanka Ringwaldset(SOURCES
20*e2b8c095SMilanka Ringwald    ../../3rd-party/rijndael/rijndael.c
21*e2b8c095SMilanka Ringwald    ../../3rd-party/micro-ecc/uECC.c
22*e2b8c095SMilanka Ringwald    ../../src/ad_parser.c
23*e2b8c095SMilanka Ringwald    ../../src/ble/att_db.c
24*e2b8c095SMilanka Ringwald    ../../src/ble/att_db_util.c
25*e2b8c095SMilanka Ringwald    ../../src/ble/att_dispatch.c
26*e2b8c095SMilanka Ringwald    ../../src/ble/att_server.c
27*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/battery_service_server.c
28*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/cycling_power_service_server.c
29*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/cycling_speed_and_cadence_service_server.c
30*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/device_information_service_server.c
31*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/heart_rate_service_server.c
32*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/hids_device.c
33*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/nordic_spp_service_server.c
34*e2b8c095SMilanka Ringwald    ../../src/ble/gatt-service/ublox_spp_service_server.c
35*e2b8c095SMilanka Ringwald    ../../src/ble/le_device_db_memory.c
36*e2b8c095SMilanka Ringwald    ../../src/btstack_crypto.c
37*e2b8c095SMilanka Ringwald    ../../src/btstack_linked_list.c
38*e2b8c095SMilanka Ringwald    ../../src/btstack_memory.c
39*e2b8c095SMilanka Ringwald    ../../src/btstack_memory_pool.c
40*e2b8c095SMilanka Ringwald    ../../src/btstack_tlv.c
41*e2b8c095SMilanka Ringwald    ../../src/btstack_util.c
42*e2b8c095SMilanka Ringwald    ../../src/hci_cmd.c
43*e2b8c095SMilanka Ringwald    ../../src/hci_dump.c
44*e2b8c095SMilanka Ringwald    mock.c
45*e2b8c095SMilanka Ringwald)
46*e2b8c095SMilanka Ringwald
47*e2b8c095SMilanka Ringwald# create static lib
48*e2b8c095SMilanka Ringwaldadd_library(btstack STATIC ${SOURCES})
49*e2b8c095SMilanka Ringwald
50*e2b8c095SMilanka Ringwald# create targets
51*e2b8c095SMilanka Ringwaldforeach(EXAMPLE_FILE gatt_server_test.cpp)
52*e2b8c095SMilanka Ringwald    get_filename_component(EXAMPLE ${EXAMPLE_FILE} NAME_WE)
53*e2b8c095SMilanka Ringwald    set (SOURCE_FILES ${EXAMPLE_FILE} mock.c)
54*e2b8c095SMilanka Ringwald    # profile.h
55*e2b8c095SMilanka Ringwald    add_custom_command(
56*e2b8c095SMilanka Ringwald        OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/profile.h
57*e2b8c095SMilanka Ringwald        COMMAND ${CMAKE_SOURCE_DIR}/../../tool/compile_gatt.py
58*e2b8c095SMilanka Ringwald        ARGS ${CMAKE_SOURCE_DIR}/profile.gatt ${CMAKE_CURRENT_BINARY_DIR}/profile.h
59*e2b8c095SMilanka Ringwald    )
60*e2b8c095SMilanka Ringwald    list(APPEND SOURCE_FILES ${CMAKE_CURRENT_BINARY_DIR}/profile.h)
61*e2b8c095SMilanka Ringwald    add_executable(${EXAMPLE} ${SOURCE_FILES} )
62*e2b8c095SMilanka Ringwald    target_link_libraries(${EXAMPLE} btstack)
63*e2b8c095SMilanka Ringwaldendforeach(EXAMPLE_FILE)
64