SCANNER := wayland-scanner

PREFIX=/usr/local
BINDIR=$(PREFIX)/bin
MANDIR=$(PREFIX)/share/man
BASHCOMPDIR=$(PREFIX)/share/bash-completion/completions

CFLAGS+=-Wall -Werror -Wextra -Wpedantic -Wno-unused-parameter -Wconversion -Wformat-security -Wformat -Wsign-conversion -Wfloat-conversion -Wunused-result -Wno-strict-prototypes
LIBS=-lwayland-client
OBJ=wlopm.o wlr-output-power-management-unstable-v1.o
GEN=wlr-output-power-management-unstable-v1.c wlr-output-power-management-unstable-v1.h

wlopm: $(OBJ)
	$(CC) $(LDFLAGS) -o $@ $(OBJ) $(LIBS)

$(OBJ): $(GEN)

%.c: %.xml
	$(SCANNER) private-code < $< > $@

%.h: %.xml
	$(SCANNER) client-header < $< > $@

install: wlopm
	install -d $(DESTDIR)$(BINDIR)
	install wlopm $(DESTDIR)$(BINDIR)
	install -d $(DESTDIR)$(MANDIR)/man1
	install -m 644 wlopm.1 $(DESTDIR)$(MANDIR)/man1
	install bash-completion $(DESTDIR)$(BASHCOMPDIR)/wlopm

uninstall:
	$(RM) $(DESTDIR)$(BINDIR)/wlopm
	$(RM) $(DESTDIR)$(MANDIR)/man1/wlopm.1
	$(RM) $(DESTDIR)$(BASHCOMPDIR)/wlopm

clean:
	$(RM) wlopm $(GEN) $(OBJ)

.PHONY: clean install
