Makefile - expand targets for portability - farbfeld - suckless image format with conversion tools
(HTM) git clone git://git.suckless.org/farbfeld
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 360eccf00a6de6287a3e4c19b59835ff5d4834dd
(DIR) parent bfb27d1baad6f69fa610281809a394617a76e60a
(HTM) Author: Laslo Hunhold <dev@frign.de>
Date: Tue, 30 May 2017 22:25:17 +0200
Makefile - expand targets for portability
Reading the standard thoroughly revealed that the only way to really
get a portable Makefile is to list each target explicitly, so that's
what we'll do now here.
Diffstat:
M Makefile | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
---
(DIR) diff --git a/Makefile b/Makefile
@@ -11,16 +11,26 @@ SCR = 2ff
MAN1 = 2ff.1 $(BIN:=.1)
MAN5 = farbfeld.5
+all: $(BIN)
+
png2ff-LDLIBS = $(PNG-LDLIBS)
ff2png-LDLIBS = $(PNG-LDLIBS)
jpg2ff-LDLIBS = $(JPG-LDLIBS)
ff2jpg-LDLIBS = $(JPG-LDLIBS)
-all: $(BIN)
-
-$(BIN): $(@:=.o) $(REQ:=.o)
+png2ff: png2ff.o $(REQ:=.o)
+ff2png: ff2png.o $(REQ:=.o)
+jpg2ff: jpg2ff.o $(REQ:=.o)
+ff2jpg: ff2jpg.o $(REQ:=.o)
+ff2pam: ff2pam.o $(REQ:=.o)
+ff2ppm: ff2ppm.o $(REQ:=.o)
-$(BIN:=.o): config.mk $(HDR) $(REQ:=.h)
+png2ff.o: png2ff.c config.mk $(HDR) $(REQ:=.h)
+ff2png.o: ff2png.c config.mk $(HDR) $(REQ:=.h)
+jpg2ff.o: jpg2ff.c config.mk $(HDR) $(REQ:=.h)
+ff2jpg.o: ff2jpg.c config.mk $(HDR) $(REQ:=.h)
+ff2pam.o: ff2pam.c config.mk $(HDR) $(REQ:=.h)
+ff2ppm.o: ff2ppm.c config.mk $(HDR) $(REQ:=.h)
.o:
$(CC) -o $@ $(LDFLAGS) $< $(REQ:=.o) $($*-LDLIBS)