TARGET=xlnch PREFIX?=/usr/local MANUALS=$(PREFIX)/share/man SRC=*.c CC=gcc CFLAGS=-D_GNU_SOURCE -std=c99 -pedantic REL_FLAGS=-O3 DBG_FLAGS=-Wall -g3 LIBS=-l X11 make: $(SRC) $(CC) $(REL_FLAGS) $(CFLAGS) -o $(TARGET) $^ $(LIBS) debug: $(SRC) $(CC) $(DBG_FLAGS) -fsanitize=address $(CFLAGS) -o $(TARGET) $^ $(LIBS) noasan: $(SRC) $(CC) $(DBG_FLAGS) $(CFLAGS) -o $(TARGET) $^ $(LIBS) docs: scdoc < man/xlnch.1.scd > man/xlnch.1 .PHONY: clean clean: rm -f *.o rm -f $(TARGET) install: $(TARGET) mkdir -p $(PREFIX)/bin $(MANUALS)/man1 @cp -v $(TARGET) $(PREFIX)/bin/$(TARGET) @install -v -m644 man/xlnch.1 $(MANUALS)/man1/xlnch.1 uninstall: @rm -v $(PREFIX)/bin/$(TARGET) @rm -v $(MANUALS)/man1/xlnch.1