Introduction
Introduction Statistics Contact Development Disclaimer Help
Refactor Makefile - ii - irc it, simple FIFO based irc client
git clone git://git.suckless.org/ii
Log
Files
Refs
README
LICENSE
---
commit e32415744c0e7f2d75d4669addefc1b50f977cd6
parent 25ee995ead94f3343edee8aed797eea1140a6bfb
Author: Quentin Rameau <[email protected]>
Date: Tue, 29 May 2018 18:27:36 +0200
Refactor Makefile
Declare it as POSIX-compliant
Use $() instead of ${}
Separate stock CFLAGS from user CFLAGS
Diffstat:
M Makefile | 53 +++++++++++++++--------------…
M config.mk | 24 +++++-------------------
2 files changed, 31 insertions(+), 46 deletions(-)
---
diff --git a/Makefile b/Makefile
@@ -1,50 +1,49 @@
# See LICENSE file for copyright and license details.
+.POSIX:
+
include config.mk
SRC = ii.c strlcpy.c
-OBJ = ${SRC:.c=.o}
+OBJ = $(SRC:.c=.o)
+
+IICFLAGS = -DVERSION=\"$(VERSION)\" -D_DEFAULT_SOURCE $(CFLAGS)
all: ii
options:
@echo ii build options:
- @echo "CFLAGS = ${CFLAGS}"
- @echo "LDFLAGS = ${LDFLAGS}"
- @echo "CC = ${CC}"
-
-.o:
- $(LD) -o $@ $< $(LDFLAGS)
+ @echo "CFLAGS = $(IICFLAGS)"
+ @echo "LDFLAGS = $(LDFLAGS)"
+ @echo "CC = $(CC)"
.c.o:
- $(CC) -c -o $@ $< $(CFLAGS)
+ $(CC) $(IICFLAGS) -c $<
-ii: ${OBJ}
- ${CC} -o $@ ${OBJ} ${LDFLAGS}
+ii: $(OBJ)
+ $(CC) $(LDFLAGS) -o $@ $(OBJ) $(LIBS)
-${OBJ}: arg.h
+$(OBJ): arg.h
install: all
- mkdir -p ${DESTDIR}${DOCDIR}
- mkdir -p ${DESTDIR}${BINDIR}
- mkdir -p ${DESTDIR}${MAN1DIR}
- install -d ${DESTDIR}${BINDIR} ${DESTDIR}${MAN1DIR}
- install -m 644 CHANGES README FAQ LICENSE ${DESTDIR}${DOCDIR}
- install -m 775 ii ${DESTDIR}${BINDIR}
- sed "s/VERSION/${VERSION}/g" < ii.1 > ${DESTDIR}${MAN1DIR}/ii.1
- chmod 644 ${DESTDIR}${MAN1DIR}/ii.1
+ mkdir -p $(DESTDIR)$(PREFIX)/bin
+ mkdir -p $(DESTDIR)$(MANPREFIX)/man1
+ mkdir -p $(DESTDIR)$(DOCPREFIX)/ii
+ install -m 644 CHANGES README FAQ LICENSE $(DESTDIR)$(DOCPREFIX)/ii
+ install -m 775 ii $(DESTDIR)$(PREFIX)/bin
+ sed "s/VERSION/$(VERSION)/g" < ii.1 > $(DESTDIR)$(MANPREFIX)/man1/ii.1
+ chmod 644 $(DESTDIR)$(MANPREFIX)/man1/ii.1
uninstall: all
- rm -f ${DESTDIR}${MAN1DIR}/ii.1 \
- ${DESTDIR}${BINDIR}/ii
- rm -rf ${DESTDIR}${DOCDIR}
+ rm -f $(DESTDIR)$(MANPREFIX)/man1/ii.1 $(DESTDIR)$(PREFIX)/bin/ii
+ rm -rf $(DESTDIR)$(DOCPREFIX)/ii
dist: clean
- mkdir -p ii-${VERSION}
+ mkdir -p ii-$(VERSION)
cp -R Makefile CHANGES README FAQ LICENSE strlcpy.c arg.h \
- config.mk ii.c ii.1 ii-${VERSION}
- tar -cf ii-${VERSION}.tar ii-${VERSION}
- gzip ii-${VERSION}.tar
- rm -rf ii-${VERSION}
+ config.mk ii.c ii.1 ii-$(VERSION)
+ tar -cf ii-$(VERSION).tar ii-$(VERSION)
+ gzip ii-$(VERSION).tar
+ rm -rf ii-$(VERSION)
clean:
rm -f ii *.o
diff --git a/config.mk b/config.mk
@@ -2,24 +2,10 @@
VERSION = 1.8
# paths
-PREFIX = /usr/local
-BINDIR = ${PREFIX}/bin
-MANDIR = ${PREFIX}/share/man
-MAN1DIR = ${MANDIR}/man1
-DOCDIR = ${PREFIX}/share/doc/ii
+PREFIX = /usr/local
+MANPREFIX = ${PREFIX}/share/man
+DOCPREFIX = ${PREFIX}/share/doc
-# includes and libs
-INCLUDES = -I. -I/usr/include
+CFLAGS = -Os
+LDFLAGS = -s
LIBS =
-
-# compiler
-CC = cc
-
-# debug
-#CFLAGS = -g -O0 -pedantic -Wall ${INCLUDES} -DVERSION=\"${VERSION}\" \
-# -std=c99 -D_DEFAULT_SOURCE
-#LDFLAGS = ${LIBS}
-
-# release
-CFLAGS = -Os ${INCLUDES} -DVERSION=\"${VERSION}\" -std=c99 -D_DEFAULT_SOURCE
-LDFLAGS = -s ${LIBS}
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.