Commit 031b208c authored by Laslo Hunhold's avatar Laslo Hunhold

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.
parent 64083809
......@@ -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
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment