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
|
- fix errors in subdir makes
- parallelize subdir runs
- cleanup flag handling
--- a/Makefile
+++ b/Makefile
@@ -9,19 +9,19 @@
vmconvert vmcp man mon_tools dasdinfo vmur cpuplugd ipl_tools \
ziomon iucvterm cmsfs-fuse
-all: subdirs_make
+SUB_DIRS_ALL = $(patsubst %,subdirs_all_%,$(SUB_DIRS))
+SUB_DIRS_CLEAN = $(patsubst %,subdirs_clean_%,$(SUB_DIRS))
+SUB_DIRS_INSTALL = $(patsubst %,subdirs_install_%,$(SUB_DIRS))
-subdirs_make:
- set -e ; for dir in $(SUB_DIRS) ; do \
- ( cd $$dir ; $(MAKE) TOPDIR=$(TOPDIR) ARCH=$(ARCH); cd .. ); \
- done
+all: $(SUB_DIRS_ALL)
-clean:
- set -e ; for dir in $(SUB_DIRS) ; do \
- ( cd $$dir ; $(MAKE) TOPDIR=$(TOPDIR) ARCH=$(ARCH) clean; cd .. ); \
- done
+_subdir = $(patsubst subdirs_%,%,$@)
+subdir = $(shell expr $(_subdir) : '[^_]*_\(.*\)')
+subtarget = $(shell expr $(_subdir) : '\([^_]*\)_.*')
+subdirs_%:
+ $(MAKE) TOPDIR=$(TOPDIR) ARCH=$(ARCH) -C $(subdir) $(subtarget)
+
+clean: $(SUB_DIRS_CLEAN)
install:
- set -e ; for dir in $(SUB_DIRS) ; do \
- ( cd $$dir ; $(MAKE) TOPDIR=$(TOPDIR) ARCH=$(ARCH) install; cd .. ); \
- done
+ $(MAKE) $(SUB_DIRS_INSTALL)
--- a/common.mak
+++ b/common.mak
@@ -17,10 +17,10 @@
# Cross Compiling Support
CROSS_COMPILE =
AS = $(call echocmd," AS ",/$@)$(CROSS_COMPILE)as
-LINK = $(call echocmd," LINK ",/$@)$(CROSS_COMPILE)gcc
+LINK = $(call echocmd," LINK ",/$@)$(CROSS_COMPILE)gcc $(CFLAGS) $(LDFLAGS)
LD = $(call echocmd," LD ",/$@)$(CROSS_COMPILE)ld
CC = $(call echocmd," CC ",/$@)$(CROSS_COMPILE)gcc
-LINKXX = $(call echocmd," LINKXX ",/$@)$(CROSS_COMPILE)g++
+LINKXX = $(call echocmd," LINKXX ",/$@)$(CROSS_COMPILE)g++ $(CXXFLAGS) $(LDFLAGS)
CXX = $(call echocmd," CXX ",/$@)$(CROSS_COMPILE)g++
CPP = $(call echocmd," CPP ",/$@)$(CROSS_COMPILE)gcc -E
AR = $(call echocmd," AR ",/$@)$(CROSS_COMPILE)ar
@@ -41,11 +41,10 @@
else
WARNFLAGS = -W -Wall
endif
-CFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
- -g $(OPT_FLAGS)
-CXXFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
- -g $(OPT_FLAGS)
-export AS LD CC CPP AR NM STRIP OBJCOPY OBJDUMP INSTALL CFLAGS
+CFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
+CXXFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
+CPPFLAGS += -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE)
+export AS LD CC CPP AR NM STRIP OBJCOPY OBJDUMP INSTALL CFLAGS CXXFLAGS CPPFLAGS
# Support alternate install root
INSTROOT =
@@ -76,7 +75,7 @@
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@
%: %.o
- $(LINK) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
+ $(LINK) $(CFLAGS) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
all:
--- a/zfcpdump/ramdisk/Makefile
+++ b/zfcpdump/ramdisk/Makefile
@@ -12,16 +12,14 @@
all: $(ZFCPDUMP_RD)
-CFLAGS += -D_FILE_OFFSET_BITS=64
+CPPFLAGS += -D_FILE_OFFSET_BITS=64 -I../../include
+LDFLAGS += -static
+LDLIBS += -lz
$(ZFCPDUMP_RD): zfcp_dumper
/bin/sh ./create_rd.sh $(ARCH)
-zfcp_dumper: zfcp_dumper.o
- $(CC) -o zfcp_dumper -static zfcp_dumper.o -lz
-
zfcp_dumper.o: zfcp_dumper.c zfcp_dumper.h
- $(CC) $(CFLAGS) -c -I../../include zfcp_dumper.c
install: $(ZFCPDUMP_RD)
/bin/sh ./create_rd.sh -i
@@ -29,6 +27,3 @@
clean clobber:
/bin/sh ./create_rd.sh -r
rm -f *.o
-
-%.o: %.c
- $(CC) $(CFLAGS) -c -o $@ $<
--- a/zfcpdump_v2/Makefile
+++ b/zfcpdump_v2/Makefile
@@ -6,12 +6,13 @@
LINUX_DIR := linux-$(LINUX_VERSION)
E2FSPROGS := e2fsprogs-1.41.3
-CFLAGS += -D_FILE_OFFSET_BITS=64
+CPPFLAGS += -D_FILE_OFFSET_BITS=64 -DGZIP_SUPPORT
+LDFLAGS += -static
+LDLIBS += -lz
all: zfcpdump.image
zfcpdump: zfcpdump.c zfcpdump.h
- $(CC) $(CFLAGS) -D GZIP_SUPPORT -static -o $@ zfcpdump.c -lz
e2fsck:
tar xfzv $(E2FSPROGS).tar.gz
--- a/zipl/boot/Makefile
+++ b/zipl/boot/Makefile
@@ -3,9 +3,8 @@
S390_TOOLS_VERSION_EBCDIC := $(shell echo -n $(S390_TOOLS_RELEASE) | dd conv=ebcdic 2> /dev/null | hexdump -v -e '/1 "0x%02x,"' | sed 's/.$$//')
-CFLAGS += -I../include -D__ASSEMBLY__ \
+CPPFLAGS += -I../include -D__ASSEMBLY__ \
-DS390_TOOLS_VERSION_EBCDIC=$(S390_TOOLS_VERSION_EBCDIC)
-LDFLAGS = -O2
FILES := fba0.bin fba2.bin eckd0.bin eckd1a.bin eckd1b.bin eckd2.bin \
eckd2dump.bin tapedump.bin stage3.bin tape0.bin fba2dump.bin \
eckd2mvdump.bin
@@ -16,7 +15,7 @@
%: %.S
%.o: %.S
- $(CC) $(CFLAGS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
%.exec: %.o
@STAGE=$$( \
@@ -34,7 +33,7 @@
2) SFLAGS="-nostdlib -Wl,-Ttext,0x2000";; \
3) SFLAGS="-nostdlib -Wl,-Ttext,0xA000";; \
esac; \
- $(LINK) $(LDFLAGS) -o $@ $$SFLAGS $<
+ $(LINK) -o $@ $$SFLAGS $<
%.bin: %.exec
$(OBJCOPY) -O binary --only-section=.text $< $@
|