Do not obfuscate what make is doing.
Change some styling too while we're at it.master
parent
b331da550b
commit
fabd4602b3
56
Makefile
56
Makefile
|
@ -1,63 +1,55 @@
|
||||||
# st - simple terminal
|
# st - simple terminal
|
||||||
# See LICENSE file for copyright and license details.
|
# See LICENSE file for copyright and license details.
|
||||||
|
.POSIX:
|
||||||
|
|
||||||
include config.mk
|
include config.mk
|
||||||
|
|
||||||
SRC = st.c x.c
|
SRC = st.c x.c
|
||||||
OBJ = ${SRC:.c=.o}
|
OBJ = $(SRC:.c=.o)
|
||||||
|
|
||||||
all: options st
|
all: options st
|
||||||
|
|
||||||
options:
|
options:
|
||||||
@echo st build options:
|
@echo st build options:
|
||||||
@echo "CFLAGS = ${CFLAGS}"
|
@echo "CFLAGS = $(CFLAGS)"
|
||||||
@echo "LDFLAGS = ${LDFLAGS}"
|
@echo "LDFLAGS = $(LDFLAGS)"
|
||||||
@echo "CC = ${CC}"
|
@echo "CC = $(CC)"
|
||||||
|
|
||||||
config.h:
|
config.h:
|
||||||
cp config.def.h config.h
|
cp config.def.h config.h
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
@echo CC $<
|
$(CC) $(CFLAGS) -c $<
|
||||||
@${CC} -c ${CFLAGS} $<
|
|
||||||
|
|
||||||
st.o: config.h st.h win.h
|
st.o: config.h st.h win.h
|
||||||
x.o: arg.h st.h win.h
|
x.o: arg.h st.h win.h
|
||||||
|
|
||||||
${OBJ}: config.h config.mk
|
$(OBJ): config.h config.mk
|
||||||
|
|
||||||
st: ${OBJ}
|
st: $(OBJ)
|
||||||
@echo CC -o $@
|
$(CC) $(LDFLAGS) -o $@ $(OBJ)
|
||||||
@${CC} -o $@ ${OBJ} ${LDFLAGS}
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@echo cleaning
|
rm -f st $(OBJ) st-$(VERSION).tar.gz
|
||||||
@rm -f st ${OBJ} st-${VERSION}.tar.gz
|
|
||||||
|
|
||||||
dist: clean
|
dist: clean
|
||||||
@echo creating dist tarball
|
mkdir -p st-$(VERSION)
|
||||||
@mkdir -p st-${VERSION}
|
cp -R LICENSE Makefile README config.mk config.def.h st.info st.1 arg.h $(SRC) st-$(VERSION)
|
||||||
@cp -R LICENSE Makefile README config.mk config.def.h st.info st.1 arg.h ${SRC} st-${VERSION}
|
tar -cf - st-$(VERSION) | gzip > st-$(VERSION).tar.gz
|
||||||
@tar -cf st-${VERSION}.tar st-${VERSION}
|
rm -rf st-$(VERSION)
|
||||||
@gzip st-${VERSION}.tar
|
|
||||||
@rm -rf st-${VERSION}
|
|
||||||
|
|
||||||
install: all
|
install: st
|
||||||
@echo installing executable file to ${DESTDIR}${PREFIX}/bin
|
mkdir -p $(DESTDIR)$(PREFIX)/bin
|
||||||
@mkdir -p ${DESTDIR}${PREFIX}/bin
|
cp -f st $(DESTDIR)$(PREFIX)/bin
|
||||||
@cp -f st ${DESTDIR}${PREFIX}/bin
|
chmod 755 $(DESTDIR)$(PREFIX)/bin/st
|
||||||
@chmod 755 ${DESTDIR}${PREFIX}/bin/st
|
mkdir -p $(DESTDIR)$(MANPREFIX)/man1
|
||||||
@echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
|
sed "s/VERSION/$(VERSION)/g" < st.1 > $(DESTDIR)$(MANPREFIX)/man1/st.1
|
||||||
@mkdir -p ${DESTDIR}${MANPREFIX}/man1
|
chmod 644 $(DESTDIR)$(MANPREFIX)/man1/st.1
|
||||||
@sed "s/VERSION/${VERSION}/g" < st.1 > ${DESTDIR}${MANPREFIX}/man1/st.1
|
tic -sx st.info
|
||||||
@chmod 644 ${DESTDIR}${MANPREFIX}/man1/st.1
|
|
||||||
@echo Please see the README file regarding the terminfo entry of st.
|
@echo Please see the README file regarding the terminfo entry of st.
|
||||||
@tic -sx st.info
|
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
@echo removing executable file from ${DESTDIR}${PREFIX}/bin
|
rm -f $(DESTDIR)$(PREFIX)/bin/st
|
||||||
@rm -f ${DESTDIR}${PREFIX}/bin/st
|
rm -f $(DESTDIR)$(MANPREFIX)/man1/st.1
|
||||||
@echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
|
|
||||||
@rm -f ${DESTDIR}${MANPREFIX}/man1/st.1
|
|
||||||
|
|
||||||
.PHONY: all options clean dist install uninstall
|
.PHONY: all options clean dist install uninstall
|
||||||
|
|
16
config.mk
16
config.mk
|
@ -5,24 +5,24 @@ VERSION = 0.7
|
||||||
|
|
||||||
# paths
|
# paths
|
||||||
PREFIX = /usr/local
|
PREFIX = /usr/local
|
||||||
MANPREFIX = ${PREFIX}/share/man
|
MANPREFIX = $(PREFIX)/share/man
|
||||||
|
|
||||||
X11INC = /usr/X11R6/include
|
X11INC = /usr/X11R6/include
|
||||||
X11LIB = /usr/X11R6/lib
|
X11LIB = /usr/X11R6/lib
|
||||||
|
|
||||||
# includes and libs
|
# includes and libs
|
||||||
INCS = -I. -I/usr/include -I${X11INC} \
|
INCS = -I$(X11INC) \
|
||||||
`pkg-config --cflags fontconfig` \
|
`pkg-config --cflags fontconfig` \
|
||||||
`pkg-config --cflags freetype2`
|
`pkg-config --cflags freetype2`
|
||||||
LIBS = -L/usr/lib -lc -L${X11LIB} -lm -lrt -lX11 -lutil -lXft \
|
LIBS = -L$(X11LIB) -lm -lrt -lX11 -lutil -lXft \
|
||||||
`pkg-config --libs fontconfig` \
|
`pkg-config --libs fontconfig` \
|
||||||
`pkg-config --libs freetype2`
|
`pkg-config --libs freetype2`
|
||||||
|
|
||||||
# flags
|
# flags
|
||||||
CPPFLAGS = -DVERSION=\"${VERSION}\" -D_XOPEN_SOURCE=600
|
CPPFLAGS = -DVERSION=\"$(VERSION)\" -D_XOPEN_SOURCE=600
|
||||||
CFLAGS += -g -std=c99 -pedantic -Wall -Wvariadic-macros -Os ${INCS} ${CPPFLAGS}
|
CFLAGS = -g -std=c99 -pedantic -Wall -Wvariadic-macros -Os $(INCS) $(CPPFLAGS)
|
||||||
LDFLAGS += -g ${LIBS}
|
LDFLAGS = -g $(LIBS)
|
||||||
|
|
||||||
# compiler and linker
|
# compiler and linker
|
||||||
# CC = cc
|
# CC = c99
|
||||||
|
|
||||||
|
|
Reference in New Issue