CC ?= cc CFLAGS ?= -O2 -g PREFIX ?= /usr/local __CFLAGS := -I./include/ -std=c99 -D_POSIX_C_SOURCE=200809L -Wall -Wextra all: libuconfig.a test/uconfig_test libuconfig.a: src/uconfig.o ar rcs $@ $^ src/uconfig.o: src/uconfig.c include/uconfig.h $(CC) $(__CFLAGS) -c -fPIC $(CFLAGS) -o $@ $< test/uconfig_test: test/uconfig_test.o libuconfig.a $(CC) -o $@ $^ test/uconfig_test.o: test/uconfig_test.c include/uconfig.h $(CC) $(__CFLAGS) -c -o $@ $< check: all ./test/uconfig_test clean: rm -f libuconfig.a src/uconfig.o install: libuconfig.a mkdir -p $(PREFIX)/lib $(PREFIX)/include install --mode=0644 libuconfig.a $(PREFIX)/lib/ install --mode=0644 include/uconfig.h $(PREFIX)/include/ uninstall: rm -f $(PREFIX)/lib/libuconfig.a $(PREFIX)/include/uconfig.h .PHONY: all check clean install uninstall