From 8dad4910bfc75aa1085a20de95ceee951588deae Mon Sep 17 00:00:00 2001 From: Laslo Hunhold Date: Thu, 10 Aug 2017 21:32:10 +0200 Subject: [PATCH] Refactor build system --- Makefile | 22 +++++++++++----------- config.mk | 22 ++++++++++++---------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/Makefile b/Makefile index 9e1d0d5..dbe636e 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,13 @@ # See LICENSE file for copyright and license details. +# slstatus - suckless status monitor +.POSIX: include config.mk all: slstatus slstatus: slstatus.c config.h config.mk - ${CC} ${CFLAGS} -o $@ slstatus.c ${LDFLAGS} + $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) slstatus.c $(LDLIBS) config.h: cp config.def.h $@ @@ -14,15 +16,13 @@ clean: rm -f slstatus install: all - mkdir -p ${DESTDIR}${PREFIX}/bin - cp -f slstatus ${DESTDIR}${PREFIX}/bin - chmod 755 ${DESTDIR}${PREFIX}/bin/slstatus - mkdir -p ${DESTDIR}${MANPREFIX}/man1 - cp -f slstatus.1 ${DESTDIR}${MANPREFIX}/man1 - chmod 644 ${DESTDIR}${MANPREFIX}/man1/slstatus.1 + mkdir -p "$(DESTDIR)$(PREFIX)/bin" + cp -f slstatus "$(DESTDIR)$(PREFIX)/bin" + chmod 755 "$(DESTDIR)$(PREFIX)/bin/slstatus" + mkdir -p "$(DESTDIR)$(MANPREFIX)/man1" + cp -f slstatus.1 "$(DESTDIR)$(MANPREFIX)/man1" + chmod 644 "$(DESTDIR)$(MANPREFIX)/man1/slstatus.1" uninstall: - rm -f ${DESTDIR}${PREFIX}/bin/slstatus - rm -f ${DESTDIR}${MANPREFIX}/man1/slstatus.1 - -.PHONY: all clean install uninstall + rm -f "$(DESTDIR)$(PREFIX)/bin/slstatus" + rm -f "$(DESTDIR)$(MANPREFIX)/man1/slstatus.1" diff --git a/config.mk b/config.mk index 67fd628..dad0684 100644 --- a/config.mk +++ b/config.mk @@ -1,18 +1,20 @@ -# See LICENSE file for copyright and license details. +# slstatus version +VERSION = 0 +# Customize below to fit your system + +#paths PREFIX = /usr/local -MANPREFIX = ${PREFIX}/share/man +MANPREFIX = ${PREFIX}/man X11INC = /usr/X11R6/include X11LIB = /usr/X11R6/lib -INCS = -I/usr/include -I${X11INC} -LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 - -CPPFLAGS = -D_GNU_SOURCE -# -Wno-unused-function for routines not activated by user -CFLAGS = -std=c99 -pedantic -Wno-unused-function -Wall -Wextra -Os -fstack-protector-strong -fstack-check -fPIE ${INCS} ${CPPFLAGS} -LDFLAGS = ${LIBS} +# flags +CPPFLAGS = -I$(X11INC) -DVERSION=\"$(VERSION)\" -D_DEFAULT_SOURCE +CFLAGS = -std=c99 -pedantic -Wall -Wextra -Wno-unused -Os +LDFLAGS = -L$(X11LIB) -s +LDLIBS = -lX11 +# compiler and linker CC = cc -LD = ld