1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- .POSIX:
- PREFIX = /usr/local
- BINDIR = $(PREFIX)/bin
- MANDIR = $(PREFIX)/share/man
- DATADIR = $(PREFIX)/share/inaban
- PACKAGE = inaban
- DEPS = xkbcommon wlroots wayland-server
- EXE = inaban
- TRANS =
- CC = cc
- CFLAGS = -g -Wall -Wextra -Wconversion -Wsign-conversion
- CDEPS = -I. `pkg-config --cflags $(DEPS)` -DDATADIR=\"$(DATADIR)\" -DPACKAGE=\"$(PACKAGE)\" -D_POSIX_C_SOURCE=200809L -DWLR_USE_UNSTABLE
- LIBS = `pkg-config --libs $(DEPS)`
- WAYLAND_PROTOCOLS=`pkg-config --variable=pkgdatadir wayland-protocols`
- WAYLAND_SCANNER=`pkg-config --variable=wayland_scanner wayland-scanner`
- all: xdg-shell-protocol.c xdg-decoration-unstable-v1-protocol.c $(EXE) $(TRANS)
- po/messages.pot: $(EXE).c
- xgettext --keyword=_ --language=C -o $@ --add-comments --sort-output -j $<
- po/%.po: po/messages.pot
- msgmerge --update $@ $<
- ${TRANS}: po/${@:.mo=.po}
- mkdir -p locale/${@:.mo=}/LC_MESSAGES
- msgfmt -o locale/${@:.mo=}/LC_MESSAGES/$(PACKAGE).mo po/${@:.mo=.po}
- inaban: config.h inaban.h inaban.c
- .c:
- $(CC) -std=c99 $(CFLAGS) $(CDEPS) -o $@ $< $(LDFLAGS) $(LIBS)
- xdg-shell-protocol.h:
- $(WAYLAND_SCANNER) server-header $(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
- xdg-shell-protocol.c: xdg-shell-protocol.h
- $(WAYLAND_SCANNER) private-code $(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
- xdg-decoration-unstable-v1-protocol.h:
- $(WAYLAND_SCANNER) server-header $(WAYLAND_PROTOCOLS)/unstable/xdg-decoration/xdg-decoration-unstable-v1.xml $@
- xdg-decoration-unstable-v1-protocol.c: xdg-decoration-unstable-v1-protocol.h
- $(WAYLAND_SCANNER) private-code $(WAYLAND_PROTOCOLS)/unstable/xdg-decoration/xdg-decoration-unstable-v1.xml $@
- install: all
- mkdir -p $(DESTDIR)$(BINDIR)
- cp -p $(EXE) $(DESTDIR)$(BINDIR)/$(EXE)
- mkdir -p $(DESTDIR)$(MANDIR)/man1
- cp -p $(EXE).1 $(DESTDIR)$(MANDIR)/man1
- #mkdir -p $(DESTDIR)$(DATADIR)/locale
- #cp -r locale/ $(DESTDIR)$(DATADIR)
- clean:
- rm -fr locale $(EXE) xdg-shell-protocol.c xdg-shell-protocol.h
- format: *.c *.h
- clang-format -style=file -assume-filename=.clang-format -i *.c *.h
- .PHONY: clean install
|