PREFIX ?= /usr/local PROG ?= calculer CFLAGS ?= -O0 -g3 LDFLAGS ?= LIBS ?= CALCULER_VERSION := 1.0 __CFLAGS := -std=c99 \ -Wall \ -DCALCULER_VERSION=\"$(CALCULER_VERSION)\" \ -DCALCULER_PREFIX=\"$(PREFIX)\" \ $(shell pkg-config --cflags readline) __LDFLAGS := __LIBS := $(shell pkg-config --libs readline) all: $(PROG) libcli.so libtui.so libray.so $(PROG): src/calc_data.o src/calculer.o src/disp.o src/input.o $(CC) -o $@ $^ $(__LDFLAGS) $(__LIBS) $(LDFLAGS) $(LIBS) src/calc_data.o: src/calc_data.c src/calc_data.h $(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c $< src/calculer.o: src/calculer.c src/disp.h $(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c $< src/disp.o: src/disp.c src/disp.h $(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c $< libcli.so: src/cli.o $(CC) -shared -o $@ $< libtui.so: src/tui.o $(CC) -shared -o $@ $< libray.so: src/ray.o $(CC) -shared -o $@ $< src/cli.o: src/cli.c src/disp.h $(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $< src/tui.o: src/tui.c src/disp.h $(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $< src/ray.o: src/ray.c src/disp.h $(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $< install: $(PROG) mkdir -p $(PREFIX)/bin install --mode=0755 $(PROG) $(PREFIX)/bin/ mkdir -p $(PREFIX)/lib/calculer install --mode=0755 libcli.so libtui.so libray.so $(PREFIX)/lib/calculer/ uninstall: rm -rf $(PREFIX)/bin/$(PROG) $(PREFIX)/lib/calculer clean: rm -rf $(PROG) *.so *.tar.gz src/*.o dist: git archive \ --output="calculer-$(CALCULER_VERSION).tar.gz" \ --prefix="calculer-$(CALCULER_VERSION)/" \ HEAD .PHONY: all clean dist install uninstall