CC = gcc CFLAGS = -W -O2 RM = rm -rf SRCDIR = src USERBIN?=$(HOME)/.local/bin USERMAN?=$(HOME)/.local/share/man SYSBIN?=/usr/local/bin SYSMAN?=/usr/local/share/man ifneq ($(wildcard /usr/lib/x86_64-linux-gnu/.),) SYSLIB?=/usr/lib/x86_64-linux-gnu else SYSLIB?=/usr/lib endif default: all all: libgemini2html.so gemini2html libgemini2html.so: $(SRCDIR)/gemini2html.c $(CC) $(CFLAGS) -shared -fPIC $(SRCDIR)/gemini2html.c -o libgemini2html.so gemini2html: $(SRCDIR)/gemini2html.c $(SRCDIR)/main.c $(CC) $(CFLAGS) -o gemini2html $(SRCDIR)/gemini2html.c $(SRCDIR)/main.c install: gemini2html gemini2html.1 libgemini2html.so mkdir -m755 -p $(SYSMAN)/man1 install -m755 gemini2html $(SYSBIN)/gemini2html install -m755 gemini2html.1 $(SYSMAN)/man1/gemini2html.1 install -m755 libgemini2html.so $(SYSLIB)/libgemini2html.so ldconfig -n $(SYSLIB) install_user: gemini2html gemini2html.1 mkdir -m755 -p $(USERMAN)/man1 install -m755 gemini2html $(USERBIN)/gemini2html install -m755 gemini2html.1 $(USERMAN)/man1/gemini2html.1 uninstall: $(RM) $(SYSBIN)/gemini2html $(SYSMAN)/gemini2html.1 $(SYSLIB)/libgemini2html.so uninstall_user: $(RM) $(USERBIN)/gemini2html $(USERMAN)/gemini2html.1 clean: $(RM) libgemini2html.so gemini2html .PHONY: default all install install_user uninstall clean