summaryrefslogblamecommitdiffstats
path: root/Makefile
blob: b146099150229df2c80dad711fc96c61ec0dc9e1 (plain) (tree)
1
2
3
            

                           















                                                                               


                                             






                       



                                                             

          

                                      
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