summarylogtreecommitdiffstats
path: root/0005-Makefile-leverage-default-rules-as-much-as-possible-.patch
blob: df480c0de00757017a706f27420539c98f937737 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
From 170a4d0f10107f40eaca97ba6b3ad46effe66e7a Mon Sep 17 00:00:00 2001
From: Ivan Shapovalov <intelfx@intelfx.name>
Date: Sun, 23 Oct 2016 01:01:59 +0300
Subject: [PATCH 5/5] Makefile: leverage default rules as much as possible to
 fix behavior wrt user compile flags

---
 Makefile        | 92 +++++++++++++++------------------------------------------
 icc2ps/Makefile | 13 ++++----
 2 files changed, 30 insertions(+), 75 deletions(-)

diff --git a/Makefile b/Makefile
index fcca27e..615f9e1 100644
--- a/Makefile
+++ b/Makefile
@@ -452,33 +452,15 @@ all-done:
 	@echo "yourself."
 
 
-foo2zjs: foo2zjs.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2zjs.o $(LIBJBG)
-
-foo2hp: foo2hp.o $(LIBJBG)
-	# $(CC) $(CFLAGS) -o $@ foo2hp.o $(LIBJBG) /usr/local/lib/libdmalloc.a
-	$(CC) $(CFLAGS) -o $@ foo2hp.o $(LIBJBG)
-
-foo2xqx: foo2xqx.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2xqx.o $(LIBJBG)
-
-foo2lava: foo2lava.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2lava.o $(LIBJBG)
-
-foo2qpdl: foo2qpdl.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2qpdl.o $(LIBJBG)
-
-foo2oak: foo2oak.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2oak.o $(LIBJBG)
-
-foo2slx: foo2slx.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2slx.o $(LIBJBG)
-
-foo2hiperc: foo2hiperc.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2hiperc.o $(LIBJBG)
-
-foo2hbpl2: foo2hbpl2.o $(LIBJBG)
-	$(CC) $(CFLAGS) -o $@ foo2hbpl2.o $(LIBJBG)
+foo2zjs: $(LIBJBG)
+foo2hp: $(LIBJBG)
+foo2xqx: $(LIBJBG)
+foo2lava: $(LIBJBG)
+foo2qpdl: $(LIBJBG)
+foo2oak: $(LIBJBG)
+foo2slx: $(LIBJBG)
+foo2hiperc: $(LIBJBG)
+foo2hbpl2: $(LIBJBG)
 
 foo2zjs-loadfw: foo2zjs-loadfw.in Makefile
 	[ ! -f $@ ] || chmod +w $@
@@ -562,54 +544,26 @@ getweb: getweb.in Makefile
 	chmod 555 $@
 
 all-icc2ps:
-	cd icc2ps; $(MAKE) all
+	$(MAKE) -C icc2ps all
 
 all-osx-hotplug:
 ifeq ($(UNAME),Darwin)
 	cd osx-hotplug; $(MAKE) all
 endif
 
-ok: ok.o $(LIBJBG)
-	$(CC) $(CFLAGS) ok.o $(LIBJBG) -o $@
-
-gipddecode: gipddecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) gipddecode.o $(LIBJBG) -o $@
-
-hbpldecode: hbpldecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) hbpldecode.o $(LIBJBG) -o $@
-
-hipercdecode: hipercdecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) hipercdecode.o $(LIBJBG) -o $@
-
-lavadecode: lavadecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) lavadecode.o $(LIBJBG) -o $@
-
-oakdecode: oakdecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) -g oakdecode.o $(LIBJBG) -o $@
-
-opldecode: opldecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) -g opldecode.o $(LIBJBG) -o $@
-
-qpdldecode: qpdldecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) qpdldecode.o $(LIBJBG) -o $@
-
-splcdecode: splcdecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) splcdecode.o $(LIBJBG) -lz -o $@
-
-slxdecode: slxdecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) slxdecode.o $(LIBJBG) -o $@
-
-xqxdecode: xqxdecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) xqxdecode.o $(LIBJBG) -o $@
-
-zjsdecode: zjsdecode.o $(LIBJBG)
-	$(CC) $(CFLAGS) zjsdecode.o $(LIBJBG) -o $@
-
-command2foo2lava-pjl: command2foo2lava-pjl.o
-	$(CC) $(CFLAGS) -L/usr/local/lib command2foo2lava-pjl.o -lcups -o $@
-
-command2foo2lava-pjl.o: command2foo2lava-pjl.c
-	$(CC) $(CFLAGS) -I/usr/local/include -c command2foo2lava-pjl.c
+ok: $(LIBJBG)
+gipddecode: $(LIBJBG)
+hbpldecode: $(LIBJBG)
+hipercdecode: $(LIBJBG)
+lavadecode: $(LIBJBG)
+oakdecode: $(LIBJBG)
+opldecode: $(LIBJBG)
+qpdldecode: $(LIBJBG)
+splcdecode: $(LIBJBG)
+slxdecode: $(LIBJBG)
+xqxdecode: $(LIBJBG)
+zjsdecode: $(LIBJBG)
+command2foo2lava-pjl: LDLIBS += -lcups
 
 #
 # Installation rules
diff --git a/icc2ps/Makefile b/icc2ps/Makefile
index fab1d01..f71c341 100644
--- a/icc2ps/Makefile
+++ b/icc2ps/Makefile
@@ -9,19 +9,20 @@ SRC=	icc2ps.c xgetopt.c
 LIB=	cmscam97.c cmscnvrt.c cmserr.c cmsgamma.c cmsgmt.c cmsintrp.c cmsio1.c \
 	cmslut.c cmsmatsh.c cmsmtrx.c cmsnamed.c cmspack.c cmspcs.c cmsps2.c \
 	cmssamp.c cmswtpnt.c cmsxform.c cmsio0.c cmsvirt.c
-CFLAGS=	-O3
-INSTALL=install
+CFLAGS += -O3
+LDLIBS += -lm
+INSTALL ?= install
 ifeq ($(UNAME),SunOS)
-    INSTALL=/usr/ucb/install
-    CC=gcc
+    INSTALL ?= /usr/ucb/install
+    CC ?= gcc
 endif
 
 .SUFFIXES: .1 .1in
 
 all: foo2zjs-icc2ps man
 
-foo2zjs-icc2ps: $(SRC) $(LIB)
-	$(CC) $(CFLAGS) $(SRC) $(LIB) -lm -o $@
+foo2zjs-icc2ps: $(SRC:.c=.o) $(LIB:.c=.o)
+	$(CC) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
 
 install: all
 	$(INSTALL) -c foo2zjs-icc2ps $(BIN)
-- 
2.10.0