CC = gcc CFLAGS = -fPIC -Wall -Wextra -O2 -g -IIncludes -DHAVE_CONFIG_H LIBS = -ljson-c -lavahi-client -lavahi-common -larsal -larnetworkal LDFLAGS = -shared -Wl,-O1,-as-needed,-no-undefined,-z,relro,-z,now RM = rm -f TARGET_LIB = libardiscovery.so SRCS = Sources/ARDISCOVERY_Connection.c \ Sources/ARDISCOVERY_Discovery.c \ Sources/ARDISCOVERY_Device.c \ Sources/Wifi/ARDISCOVERY_DEVICE_Wifi.c \ Sources/BLE/ARDISCOVERY_DEVICE_Ble.c \ gen/Sources/ARDISCOVERY_Error.c \ Sources/ARDISCOVERY_AvahiDiscovery.c OBJS = $(SRCS:.c=.o) .PHONY: all all: ${TARGET_LIB} $(TARGET_LIB): $(OBJS) $(CC) ${LDFLAGS} -o $@ $^ ${LIBS} $(SRCS:.c=.d):%.d:%.c $(CC) $(CFLAGS) -MM $< >$@ include $(SRCS:.c=.d) .PHONY: clean clean: -${RM} ${TARGET_LIB} ${OBJS} $(SRCS:.c=.d)