1C_HEADERS ?= /Projects/c_headers/include/ 2BTSTACK_ROOT ?= ../.. 3 4VPATH=${BTSTACK_ROOT}/src 5 6INCLUDES= \ 7 -I ${BTSTACK_ROOT}/src \ 8 -I ${BTSTACK_ROOT}/3rd-party/micro-ecc/ \ 9 -I ${BTSTACK_ROOT}/3rd-party/md5 \ 10 -I ${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/include/ \ 11 -I ${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/include/ \ 12 -I ${BTSTACK_ROOT}/3rd-party/yxml \ 13 -I . 14 15SRC_FILES=$(wildcard ${BTSTACK_ROOT}/src/*.c) 16SRC_BLE_FILES=$(wildcard ${BTSTACK_ROOT}/src/ble/*.c) 17SRC_BLE_GATT_FILES_FILES=$(wildcard ${BTSTACK_ROOT}/src/ble/gatt-service/*.c) 18SRC_CLASSIC_FILES=$(wildcard ${BTSTACK_ROOT}/src/classic/*.c) 19 20SRCS = ${SRC_FILES} ${SRC_BLE_FILES} ${SRC_BLE_GATT_SERVICE_FILES} ${SRC_CLASSIC_FILES} 21 22all: metrics.md metrics.html 23 24metrics.tsv: ${SRCS} 25 ccsm --disable-file --disable-global --exclude-std-headers --exclude-file=.h$$ --output-format=tsv --output-metrics=HIS_.* $^ -- -isystem ${C_HEADERS}/c90 -isystem ${C_HEADERS}/c99 ${INCLUDES} > $@ 26 27metrics.md: metrics.tsv metrics-ccsm.py 28 ./metrics-ccsm.py > metrics.md 29 30metrics.html: metrics.md 31 pandoc --from markdown --to html -o metrics.html metrics.md 32 33clean: 34 rm -f metrics.tsv metrics.md 35