diff options
author | Laslo Hunhold <dev@frign.de> | 2017-05-01 20:29:25 +0200 |
---|---|---|
committer | Laslo Hunhold <dev@frign.de> | 2017-05-01 20:29:25 +0200 |
commit | 031b208cb24addbe4496eb24da6887b43a54f5e1 (patch) | |
tree | 00736522496ced4238f256aa0c5ec2cd667fe2f8 | |
parent | 64083809662501469ce77027b7a60001e88d39f4 (diff) |
Rename TOOL-LDFLAGS to TOOL-LDLIBS, fix order and add explicit .c.o
The tool-specific flags were LDLIBS and not LDFLAGS, because we specify
the libraries we want to link in, not flags to the linker itself.
The order was broken as it didn't allow -Wl,--as-needed or other things
highly dependent on the order of arguments.
I also wanted to add an explicit .c.o suffix rule. This way, it is
clearer what is happening in the Makefile and the form of compilation
output is controllable.
-rw-r--r-- | Makefile | 13 | ||||
-rw-r--r-- | config.mk | 4 |
2 files changed, 10 insertions, 7 deletions
@@ -11,10 +11,10 @@ SCR = 2ff MAN1 = 2ff.1 $(BIN:=.1) MAN5 = farbfeld.5 -png2ff-LDFLAGS = $(PNG-LDFLAGS) -ff2png-LDFLAGS = $(PNG-LDFLAGS) -jpg2ff-LDFLAGS = $(JPG-LDFLAGS) -ff2jpg-LDFLAGS = $(JPG-LDFLAGS) +png2ff-LDLIBS = $(PNG-LDLIBS) +ff2png-LDLIBS = $(PNG-LDLIBS) +jpg2ff-LDLIBS = $(JPG-LDLIBS) +ff2jpg-LDLIBS = $(JPG-LDLIBS) all: $(BIN) @@ -23,7 +23,10 @@ $(BIN): $(REQ:=.o) $(BIN:=.o): config.mk $(HDR) $(REQ:=.h) .o: - $(CC) -o $@ $< $(REQ:=.o) $($*-LDFLAGS) $(LDFLAGS) + $(CC) -o $@ $(LDFLAGS) $< $(REQ:=.o) $($*-LDLIBS) + +.c.o: + $(CC) -c $(CPPFLAGS) $(CFLAGS) $< clean: rm -f $(BIN) $(BIN:=.o) $(REQ:=.o) @@ -11,8 +11,8 @@ MANPREFIX = ${PREFIX}/man CPPFLAGS = -D_DEFAULT_SOURCE CFLAGS = -std=c99 -pedantic -Wall -Wextra -Os LDFLAGS = -s -PNG-LDFLAGS = -lpng -JPG-LDFLAGS = -ljpeg +PNG-LDLIBS = -lpng +JPG-LDLIBS = -ljpeg # compiler and linker CC = cc |