xaizek / euclid-wm (License: BSD 3-Clause) (since 2018-12-07)
A minimalist, tiling window manager for X11 that seeks to allow easy management of numerous windows entirely from the keyboard.
<root> / Makefile (95c922c6e747993e8fe584c70045f8162ae1c9ad) (2,443B) (mode 100644) [raw]
PREFIX    = usr
SHAREDIR  = ${PREFIX}/share
MANDIR    = ${SHAREDIR}/man
BINDIR    = ${PREFIX}/bin
SVNREV 	  = 224 
VER	  = 0.4.3
DIST	  = euclid-wm-${VER}


ifndef ${XDG_CONFIG_HOME}
XDG_CONFIG_HOME=${HOME}/.config
endif
CONFDIR = ${XDG_CONFIG_HOME}/euclid-wm

CC = cc -pedantic -Wall 
CFLAGS = -O3 -g -std=c99 
LDFLAGS = -lX11 -lXinerama

.PHONY: all install install_conf clean uninstall dist dist_clean

#all: euclid-wm euclid-menu
all: euclid-wm 

euclid-wm: euclid-wm.c
	${CC} $< ${LDFLAGS} ${CFLAGS} -o $@

euclid-menu: euclid-menu.c
	${CC} $< ${LDFLAGS} ${CFLAGS} -o $@

noxinerama: euclid-wm.c
	${CC} $< -lX11 ${CFLAGS} -D NOXINERAMA -o $@
	cp noxinerama euclid-wm

install: all
	@install -m755 euclid-wm -D ${DESTDIR}/${BINDIR}/euclid-wm
	@install -m644 euclid.desktop -D ${DESTDIR}/${SHAREDIR}/xsessions/euclid.desktop
	@install -m644 euclid.1 -D ${DESTDIR}/${MANDIR}/man1/euclid-wm.1
	@install -m644 euclid-wm.conf.sample -D -b ${DESTDIR}/${SHAREDIR}/euclid-wm/euclid-wm.conf
	@install -m644 euclidrc -D -b ${DESTDIR}/${SHAREDIR}/euclid-wm/euclidrc
	@install -m644 VERSION -D ${DESTDIR}/${SHAREDIR}/euclid-wm/VERSION 2>/dev/null || echo "From git: `git show --format="%H" --no-patch`/`date +%F`" >${DESTDIR}/${SHAREDIR}/euclid-wm/VERSION
	@sed s_/usr/share_/${SHAREDIR}_ <start-euclid >start-euclid-local
	@install -m755 start-euclid-local -D ${DESTDIR}/${BINDIR}/start-euclid
	#@install -m755 euclid-menu -D ${DESTDIR}/${BINDIR}/euclid-menu
	#@install -m755 ./handlers/c.sh -D  ${DESTDIR}/${SHAREDIR}/euclid-menu/handlers/c.sh
	#@install -m755 ./handlers/default.sh -D ${DESTDIR}/${SHAREDIR}/euclid-menu/handlers/default.sh
	#@install -m755 ./handlers/.echo_file.sh -D ${DESTDIR}/${SHAREDIR}/euclid-menu/handlers/.echo_file.sh



install_conf:
	@install -b -D -m600 euclid-wm.conf.sample ${CONFDIR}/euclid-wm.conf
	@install -b -D -m700 euclidrc ${CONFDIR}/euclidrc

uninstall:
	rm -f ${DESTDIR}/${BINDIR}/euclid-wm
	rm -f ${DESTDIR}/${SHAREDIR}/xsessions/euclid.desktop
	rm -f ${DESTDIR}/${MANDIR}/man1/euclid-wm.1
	rm -f ${DESTDIR}/${BINDIR}/euclid-menu
	rm -rf ${DESTDIR}/${SHAREDIR}/euclid-menu/

clean:
	rm -f euclid-wm
	rm -f start-euclid-local
	rm -f noxinerama
	rm -f euclid-menu

dist: 
	mkdir ${DIST}	
	svn co http://euclid-wm.googlecode.com/svn/trunk ./${DIST} -r ${SVNREV}
	echo "${VER} (svn${SVNREV}/`date +%F`)" > ./${DIST}/VERSION
	rm -rf ${DIST}/.svn
	tar -cvz ${DIST} -f${DIST}.tar.gz

dist_clean: 
	rm -rf ${DIST}

Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/euclid-wm

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/euclid-wm

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master