| 
								
							 | 
							
								TOPDIR=$(shell pwd)
							 | 
						
						
						
							| 
								
							 | 
							
								UNAME=$(shell uname)
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								INSTALL=install
							 | 
						
						
						
							| 
								
							 | 
							
								PREFIX=/usr
							 | 
						
						
						
							| 
								
							 | 
							
								SYSCONFDIR=/etc
							 | 
						
						
						
							| 
								
							 | 
							
								PKG_CONFIG=pkg-config
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								# Check if pkg-config is installed, we need it for building CFLAGS/LIBS
							 | 
						
						
						
							| 
								
							 | 
							
								ifeq ($(shell which $(PKG_CONFIG) 2>/dev/null 1>/dev/null || echo 1),1)
							 | 
						
						
						
							| 
								
							 | 
							
								$(error "$(PKG_CONFIG) was not found")
							 | 
						
						
						
							| 
								
							 | 
							
								endif
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								CFLAGS += -std=c99
							 | 
						
						
						
							| 
								
							 | 
							
								CFLAGS += -pipe
							 | 
						
						
						
							| 
								
							 | 
							
								CFLAGS += -Wall
							 | 
						
						
						
							| 
								
							 | 
							
								CPPFLAGS += -D_GNU_SOURCE
							 | 
						
						
						
							| 
								
							 | 
							
								CFLAGS += $(shell $(PKG_CONFIG) --cflags cairo xcb-xinerama xcb-atom xcb-image xcb-xkb xkbcommon xkbcommon-x11)
							 | 
						
						
						
							| 
								
							 | 
							
								LIBS += $(shell $(PKG_CONFIG) --libs cairo xcb-xinerama xcb-atom xcb-image xcb-xkb xkbcommon xkbcommon-x11)
							 | 
						
						
						
							| 
								
							 | 
							
								LIBS += -lev
							 | 
						
						
						
							| 
								
							 | 
							
								LIBS += -lm
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								# OpenBSD lacks PAM, use bsd_auth(3) instead.
							 | 
						
						
						
							| 
								
							 | 
							
								ifneq ($(UNAME),OpenBSD)
							 | 
						
						
						
							| 
								
							 | 
							
								  LIBS += -lpam
							 | 
						
						
						
							| 
								
							 | 
							
								endif
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								FILES:=$(wildcard *.c)
							 | 
						
						
						
							| 
								
							 | 
							
								FILES:=$(FILES:.c=.o)
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								ifeq ($(wildcard .git),)
							 | 
						
						
						
							| 
								
							 | 
							
								  # not in git repository
							 | 
						
						
						
							| 
								
							 | 
							
								  VERSION := $(shell [ -f $(TOPDIR)/I3LOCK_VERSION ] && cat $(TOPDIR)/I3LOCK_VERSION | cut -d '-' -f 1)
							 | 
						
						
						
							| 
								
							 | 
							
								  I3LOCK_VERSION:='$(shell [ -f $(TOPDIR)/I3LOCK_VERSION ] && cat $(TOPDIR)/I3LOCK_VERSION)'
							 | 
						
						
						
							| 
								
							 | 
							
								else
							 | 
						
						
						
							| 
								
							 | 
							
								  VERSION:=$(shell git describe --tags --abbrev=0)
							 | 
						
						
						
							| 
								
							 | 
							
								  I3LOCK_VERSION:="$(shell git describe --tags --always) ($(shell git log --pretty=format:%cd --date=short -n1))"
							 | 
						
						
						
							| 
								
							 | 
							
								endif
							 | 
						
						
						
							| 
								
							 | 
							
								CPPFLAGS += -DVERSION=\"${I3LOCK_VERSION}\"
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								.PHONY: install clean uninstall
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								all: i3lock
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								i3lock: ${FILES}
							 | 
						
						
						
							| 
								
							 | 
							
									$(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								clean:
							 | 
						
						
						
							| 
								
							 | 
							
									rm -f i3lock ${FILES} i3lock-${VERSION}.tar.gz
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								install: all
							 | 
						
						
						
							| 
								
							 | 
							
									$(INSTALL) -d $(DESTDIR)$(PREFIX)/bin
							 | 
						
						
						
							| 
								
							 | 
							
									$(INSTALL) -d $(DESTDIR)$(SYSCONFDIR)/pam.d
							 | 
						
						
						
							| 
								
							 | 
							
									$(INSTALL) -m 755 i3lock $(DESTDIR)$(PREFIX)/bin/i3lock
							 | 
						
						
						
							| 
								
							 | 
							
									$(INSTALL) -m 644 i3lock.pam $(DESTDIR)$(SYSCONFDIR)/pam.d/i3lock
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								uninstall:
							 | 
						
						
						
							| 
								
							 | 
							
									rm -f $(DESTDIR)$(PREFIX)/bin/i3lock
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								dist: clean
							 | 
						
						
						
							| 
								
							 | 
							
									[ ! -d i3lock-${VERSION} ] || rm -rf i3lock-${VERSION}
							 | 
						
						
						
							| 
								
							 | 
							
									[ ! -e i3lock-${VERSION}.tar.bz2 ] || rm i3lock-${VERSION}.tar.bz2
							 | 
						
						
						
							| 
								
							 | 
							
									mkdir i3lock-${VERSION}
							 | 
						
						
						
							| 
								
							 | 
							
									cp *.c *.h i3lock.1 i3lock.pam Makefile LICENSE README.md CHANGELOG i3lock-${VERSION}
							 | 
						
						
						
							| 
								
							 | 
							
									sed -e 's/^\s*I3LOCK_VERSION:=\(.*\)/I3LOCK_VERSION:=$(shell /bin/echo '${I3LOCK_VERSION}' | sed 's/\\/\\\\/g')/g;s/^VERSION:=\(.*\)/VERSION:=${VERSION}/g' Makefile > i3lock-${VERSION}/Makefile
							 | 
						
						
						
							| 
								
							 | 
							
									tar cfj i3lock-${VERSION}.tar.bz2 i3lock-${VERSION}
							 | 
						
						
						
							| 
								
							 | 
							
									rm -rf i3lock-${VERSION}
							 |