aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsin <sin@2f30.org>2014-12-04 14:18:36 +0000
committersin <sin@2f30.org>2014-12-04 14:20:58 +0000
commitfd8710d8a5f90ea3677b2f9afe3138be94f7b38e (patch)
treef7ef9c21a8121f3941787a3e77c25059a338ecd9
parentf8536ea0d905993652caf1950d6aae1fca881e0f (diff)
Simplify Makefile
-rw-r--r--Makefile77
-rw-r--r--config.mk2
2 files changed, 28 insertions, 51 deletions
diff --git a/Makefile b/Makefile
index 1b7867f..a3d253f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,62 +1,39 @@
include config.mk
-.POSIX:
-.SUFFIXES: .c .o
+OBJ = sinit.o
+BIN = sinit
-SRC = sinit.c
+all: $(BIN)
-OBJ = $(SRC:.c=.o)
-BIN = $(SRC:.c=)
+$(BIN): $(OBJ)
+ $(CC) $(LDFLAGS) -o $@ $(OBJ) $(LDLIBS)
-all: options bin
+sinit.o: config.h
-options:
- @echo sinit build options:
- @echo "CFLAGS = $(CFLAGS)"
- @echo "LDFLAGS = $(LDFLAGS)"
- @echo "CC = $(CC)"
-
-bin: $(BIN)
-
-$(OBJ): config.h config.mk
-
-config.h:
- @echo creating $@ from config.def.h
- @cp config.def.h $@
-
-.o:
- @echo LD $@
- @$(LD) -o $@ $< $(LDFLAGS)
+install: all
+ mkdir -p $(DESTDIR)$(PREFIX)/bin
+ cp -f $(BIN) $(DESTDIR)$(PREFIX)/bin
+ mkdir -p $(DESTDIR)$(MANPREFIX)/man8
+ sed "s/VERSION/$(VERSION)/g" < $(BIN).8 > $(DESTDIR)$(MANPREFIX)/man8/$(BIN).8
-.c.o:
- @echo CC $<
- @$(CC) -c -o $@ $< $(CFLAGS)
+uninstall:
+ rm -f $(DESTDIR)$(PREFIX)/bin/$(BIN)
+ rm -f $(DESTDIR)$(MANPREFIX)/man8/$(BIN).8
dist: clean
- @echo creating dist tarball
- @mkdir -p sinit-$(VERSION)
- @cp LICENSE Makefile README config.def.h config.mk sinit.8 sinit.c \
- sinit-$(VERSION)
- @tar -cf sinit-$(VERSION).tar sinit-$(VERSION)
- @gzip sinit-$(VERSION).tar
- @rm -rf sinit-$(VERSION)
+ mkdir -p sinit-$(VERSION)
+ cp LICENSE Makefile README config.def.h config.mk sinit.8 sinit.c sinit-$(VERSION)
+ tar -cf sinit-$(VERSION).tar sinit-$(VERSION)
+ gzip sinit-$(VERSION).tar
+ rm -rf sinit-$(VERSION)
-install: all
- @echo installing executable to $(DESTDIR)$(PREFIX)/bin
- @mkdir -p $(DESTDIR)$(PREFIX)/bin
- @cp -f $(BIN) $(DESTDIR)$(PREFIX)/bin
- @chmod 755 $(DESTDIR)$(PREFIX)/bin/$(BIN)
- @echo installing manual page to $(DESTDIR)$(MANPREFIX)/man8
- @mkdir -p $(DESTDIR)$(MANPREFIX)/man8
- @sed "s/VERSION/$(VERSION)/g" < sinit.8 > $(DESTDIR)$(MANPREFIX)/man8/sinit.8
- @chmod 644 $(DESTDIR)$(MANPREFIX)/man8/sinit.8
+clean:
+ rm -f $(BIN) $(OBJ) sinit-$(VERSION).tar.gz
-uninstall:
- @echo removing executable from $(DESTDIR)$(PREFIX)/bin
- @cd $(DESTDIR)$(PREFIX)/bin && rm -f $(BIN)
- @echo removing manual page from $(DESTDIR)$(MANPREFIX)/man8
- @rm -f $(DESTDIR)$(MANPREFIX)/man8/sinit.8
+.SUFFIXES: .def.h
-clean:
- @echo cleaning
- @rm -f $(BIN) $(OBJ) sinit-$(VERSION).tar.gz
+.def.h.h:
+ cp $< $@
+
+.PHONY:
+ all install uninstall dist clean
diff --git a/config.mk b/config.mk
index 3b5a6e4..6d59696 100644
--- a/config.mk
+++ b/config.mk
@@ -8,5 +8,5 @@ MANPREFIX = $(PREFIX)/share/man
CC = cc
LD = $(CC)
CPPFLAGS =
-CFLAGS = -Wextra -Wall -Os $(CPPFLAGS)
+CFLAGS = -Wextra -Wall -Os
LDFLAGS = -s -static