44 lines
1.4 KiB
Makefile
44 lines
1.4 KiB
Makefile
CC ?= gcc
|
|
AR ?= ar
|
|
|
|
MBEDTLS_CFLAGS := $(shell pkg-config --cflags mbedtls 2>/dev/null)
|
|
MBEDTLS_LIBS := $(shell pkg-config --libs mbedtls 2>/dev/null) -lmbedx509 -lmbedcrypto
|
|
|
|
CPPFLAGS += -Iinclude $(MBEDTLS_CFLAGS)
|
|
CFLAGS ?= -O2 -Wall -Wextra -Wpedantic -std=c11 -D_POSIX_C_SOURCE=200809L
|
|
|
|
LIB_OBJECTS = src/device.o src/protocol.o src/request.o src/fdt.o src/sensor.o src/config.o src/tls.o src/session.o
|
|
LIBRARY = libgxfp.a
|
|
|
|
all: $(LIBRARY) fdt-monitor sensor-probe session-regression analyze-capture capture-to-pgm
|
|
|
|
$(LIBRARY): $(LIB_OBJECTS)
|
|
$(AR) rcs $@ $^
|
|
|
|
fdt-monitor: examples/fdt-monitor.o $(LIBRARY)
|
|
$(CC) $(CFLAGS) -o $@ examples/fdt-monitor.o $(LIBRARY) $(MBEDTLS_LIBS)
|
|
|
|
sensor-probe: examples/sensor-probe.o $(LIBRARY)
|
|
$(CC) $(CFLAGS) -o $@ examples/sensor-probe.o $(LIBRARY) $(MBEDTLS_LIBS)
|
|
|
|
session-regression: examples/session-regression.o $(LIBRARY)
|
|
$(CC) $(CFLAGS) -o $@ examples/session-regression.o $(LIBRARY) $(MBEDTLS_LIBS) -pthread
|
|
|
|
analyze-capture: tools/analyze_capture.o
|
|
$(CC) $(CFLAGS) -o $@ $^
|
|
|
|
capture-to-pgm: tools/capture_to_pgm.o
|
|
$(CC) $(CFLAGS) -o $@ $^
|
|
|
|
src/%.o: src/%.c
|
|
$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
|
|
|
|
examples/%.o: examples/%.c
|
|
$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
|
|
|
|
tools/%.o: tools/%.c
|
|
$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
|
|
|
|
clean:
|
|
rm -f $(LIB_OBJECTS) examples/*.o tools/*.o $(LIBRARY) fdt-monitor sensor-probe session-regression analyze-capture capture-to-pgm
|