summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/s390-tools/files/s390-tools-1.9.0-build.patch')
-rw-r--r--sys-apps/s390-tools/files/s390-tools-1.9.0-build.patch156
1 files changed, 156 insertions, 0 deletions
diff --git a/sys-apps/s390-tools/files/s390-tools-1.9.0-build.patch b/sys-apps/s390-tools/files/s390-tools-1.9.0-build.patch
new file mode 100644
index 000000000000..38d3e3f954d0
--- /dev/null
+++ b/sys-apps/s390-tools/files/s390-tools-1.9.0-build.patch
@@ -0,0 +1,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 $< $@