summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-apps/s390-tools
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-apps/s390-tools')
-rw-r--r--sys-apps/s390-tools/Manifest4
-rw-r--r--sys-apps/s390-tools/files/s390-tools-1.13.0-build.patch153
-rw-r--r--sys-apps/s390-tools/files/s390-tools-1.13.0-larl.patch67
-rw-r--r--sys-apps/s390-tools/files/s390-tools-1.16.0-build.patch153
-rw-r--r--sys-apps/s390-tools/files/s390-tools-1.23.1-build.patch153
-rw-r--r--sys-apps/s390-tools/files/s390-tools-1.9.0-build.patch156
-rw-r--r--sys-apps/s390-tools/metadata.xml19
-rw-r--r--sys-apps/s390-tools/s390-tools-1.17.0.ebuild54
-rw-r--r--sys-apps/s390-tools/s390-tools-1.23.1.ebuild54
9 files changed, 813 insertions, 0 deletions
diff --git a/sys-apps/s390-tools/Manifest b/sys-apps/s390-tools/Manifest
new file mode 100644
index 000000000000..e38a00073660
--- /dev/null
+++ b/sys-apps/s390-tools/Manifest
@@ -0,0 +1,4 @@
+DIST e2fsprogs-1.41.3.tar.gz 4365234 SHA256 ce77edae680d090cb8275eca9be282bdbc5fbef028d7bf6f772fb4f04b578d7a
+DIST linux-2.6.27.tar.bz2 50355835 SHA256 0e99bf9e83f4d1ae0c656741a84dfddfa9c4d2469cf35475f5939d02dc3e4393
+DIST s390-tools-1.17.0.tar.bz2 608123 SHA256 4026a93851771c957a880f331ca73d469c171777ed8e79d3027a0877b3220112 SHA512 5d5b82f56ff0990c42b1db15115db5b6924680c7985e20572232ae5f85438b6c28bd25502d162f718b07e24d6837ec3bd15dd5b38a783692d2ead48c4fd2af92 WHIRLPOOL ae885ff376313afecc48159fa952b126e606408c1cb299959763be0d093e7cec8c45bd72b265e819143c131e735ab5c13e7d31f3039c9359da4d0fa52a014c46
+DIST s390-tools-1.23.1.tar.bz2 625295 SHA256 11175b1d7d0c10832dc0295880656f9e10866f004c07770379052a9f7c6ffd8f SHA512 c1f0fe79cfcbf6217e1aba74172e7644eee25f8886b70885e8558ad48342d6b41b35cefd398c3f5ff430d382ea6103b93ed8f666f0038d4f5abc3c3bc787d0eb WHIRLPOOL 501e0233a1f463bd156b2ab199bc75a30fccb4630c62654c4769eb5592e88735bfb718eeaae22b130e380b91b0c16e28f526763263cebbb8ccc45e0fca350fd8
diff --git a/sys-apps/s390-tools/files/s390-tools-1.13.0-build.patch b/sys-apps/s390-tools/files/s390-tools-1.13.0-build.patch
new file mode 100644
index 000000000000..0676a5bb410a
--- /dev/null
+++ b/sys-apps/s390-tools/files/s390-tools-1.13.0-build.patch
@@ -0,0 +1,153 @@
+ - 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 hyptop 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,14 +41,13 @@
+ ZFCPDUMP_RD = zfcpdump.rd
+ export ZFCPDUMP_DIR ZFCPDUMP_IMAGE ZFCPDUMP_RD
+
+-CFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
+- -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
+- -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR) \
+- -g $(OPT_FLAGS)
+-CXXFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
+- -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
+- -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR) \
+- -g $(OPT_FLAGS)
++CFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
++CXXFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
++CPPFLAGS += \
++ -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
++ -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
++ -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR)
++export CPPFLAGS
+
+ # make G=1
+ # Compile tools so that gcov can be used to collect code coverage data.
+@@ -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=$$( \
diff --git a/sys-apps/s390-tools/files/s390-tools-1.13.0-larl.patch b/sys-apps/s390-tools/files/s390-tools-1.13.0-larl.patch
new file mode 100644
index 000000000000..7bf6cf41e94c
--- /dev/null
+++ b/sys-apps/s390-tools/files/s390-tools-1.13.0-larl.patch
@@ -0,0 +1,67 @@
+https://bugs.gentoo.org/391433
+
+You reported a zipl build problem for 31 bit:
+http://marc.info/?l=linux-s390&m=132307473025493&w=2
+
+The following patch (for s390-tools-1.15.0) should fix this problem:
+---
+From: Michael Holzheu <holzheu@linux.vnet.ibm.com>
+Subject: zipl: Do not use larl for 31 bit code
+
+The larl instruction is not available for pre z900 machines in 31 bit mode.
+In order to be able to compile zipl also for that machines, with this
+patch the larl instruction is replaced by instructions that work on
+older machines.
+
+Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
+---
+ zipl/boot/dumpcommon.S | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+--- a/zipl/boot/dumpcommon.S
++++ b/zipl/boot/dumpcommon.S
+@@ -1005,7 +1005,7 @@ _count_mem_32:
+ mr %r2,%r1 # mem size in bytes in %r3
+
+ st %r3,.Ldh_real_mem_size+4-0b(%r13)
+- larl %r7,.Lmem_upper_limit+4
++ l %r7,.Lmem_upper_limit_addr-0b(%r13)
+ l %r6,0(%r7) # check if we have an upper limit
+ clr %r3,%r6
+ bl .Lsavemem-0b(%r13)
+@@ -1018,13 +1018,15 @@ _count_mem_32:
+
+ clr %r6,%r3
+ bne .Lexit-0b(%r13)
+- larl %r2,.Lmsg_mem_limit_set # print mem limit warning
++ la %r2,.Lmsg_mem_limit_set-0b(%r13) # print mem limit warning
+ bras %r14,_sclp_print
+ .Lexit:
+ lm %r6,%r15,120(%r15)
+ br %r14
+ .Lonemb:
+ .int 0x100000
++.Lmem_upper_limit_addr:
++ .long .Lmem_upper_limit+4
+
+
+ # expand Macros
+
+> it fixes most of them, but seems there's still one left :)
+
+Ok, try this one:
+---
+ zipl/boot/tapedump.S | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/zipl/boot/tapedump.S
++++ b/zipl/boot/tapedump.S
+@@ -532,7 +532,7 @@ _dump_mem_32:
+ # Cartridge full
+
+ la %r2,EMEM
+- larl %r14,_panik_32
++ l %r14,.Lpanik_32-0b(%r13)
+ basr %r14,%r14
+
+ 1: # All memory written
diff --git a/sys-apps/s390-tools/files/s390-tools-1.16.0-build.patch b/sys-apps/s390-tools/files/s390-tools-1.16.0-build.patch
new file mode 100644
index 000000000000..5cead716cf0b
--- /dev/null
+++ b/sys-apps/s390-tools/files/s390-tools-1.16.0-build.patch
@@ -0,0 +1,153 @@
+ - 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 hyptop 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,14 +41,13 @@
+ ZFCPDUMP_RD = zfcpdump.rd
+ export ZFCPDUMP_DIR ZFCPDUMP_IMAGE ZFCPDUMP_RD
+
+-CFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
+- -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
+- -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR) \
+- -g $(OPT_FLAGS)
+-CXXFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
+- -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
+- -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR) \
+- -g $(OPT_FLAGS)
++CFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
++CXXFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
++CPPFLAGS += \
++ -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
++ -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
++ -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR)
++export CPPFLAGS
+
+ # make G=1
+ # Compile tools so that gcov can be used to collect code coverage data.
+@@ -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=$$( \
diff --git a/sys-apps/s390-tools/files/s390-tools-1.23.1-build.patch b/sys-apps/s390-tools/files/s390-tools-1.23.1-build.patch
new file mode 100644
index 000000000000..1733f13f78e0
--- /dev/null
+++ b/sys-apps/s390-tools/files/s390-tools-1.23.1-build.patch
@@ -0,0 +1,153 @@
+ - 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 hyptop cmsfs-fuse qethqoat
+
+-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,14 +41,13 @@
+ ZFCPDUMP_RD = zfcpdump.rd
+ export ZFCPDUMP_DIR ZFCPDUMP_IMAGE ZFCPDUMP_RD
+
+-CFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
+- -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
+- -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR) \
+- -g $(OPT_FLAGS)
+-CXXFLAGS = $(WARNFLAGS) -O3 -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
+- -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
+- -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR) \
+- -g $(OPT_FLAGS)
++CFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
++CXXFLAGS += $(WARNFLAGS) $(OPT_FLAGS)
++CPPFLAGS += \
++ -DS390_TOOLS_RELEASE=$(S390_TOOLS_RELEASE) \
++ -DS390_TOOLS_LIBDIR=$(TOOLS_LIBDIR) \
++ -DS390_TOOLS_SYSCONFDIR=$(SYSCONFDIR)
++export CPPFLAGS
+
+ # make G=1
+ # Compile tools so that gcov can be used to collect code coverage data.
+@@ -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 fba1b.bin fba2.bin \
+ eckd0_ldl.bin eckd0_cdl.bin \
+ eckd1.bin eckd1b.bin eckd2.bin \
+@@ -16,7 +15,7 @@
+ %: %.S
+
+ %.o: %.S
+- $(CC) $(CFLAGS) -c -o $@ $<
++ $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+
+ %.exec: %.o
+ @STAGE=$$( \
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 $< $@
diff --git a/sys-apps/s390-tools/metadata.xml b/sys-apps/s390-tools/metadata.xml
new file mode 100644
index 000000000000..87e1df2ef2d4
--- /dev/null
+++ b/sys-apps/s390-tools/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>s390</herd>
+ <maintainer>
+ <email>s390@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+A set of user space utilities that should be used together with the
+zSeries (s390) Linux kernel and device drivers
+</longdescription>
+ <use>
+ <flag name="fuse">build cmsfs-fuse to read files stored on a z/VM CMS disk</flag>
+ <flag name="zfcpdump">build the kernel disk dumping utility</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">e2fsprogs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/s390-tools/s390-tools-1.17.0.ebuild b/sys-apps/s390-tools/s390-tools-1.17.0.ebuild
new file mode 100644
index 000000000000..6c026774d659
--- /dev/null
+++ b/sys-apps/s390-tools/s390-tools-1.17.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils udev
+
+# look at zfcpdump_v2/README
+E2FSPROGS_P=e2fsprogs-1.41.3
+LINUX_P=linux-2.6.27
+
+DESCRIPTION="User space utilities for the zSeries (s390) Linux kernel and device drivers"
+HOMEPAGE="http://www.ibm.com/developerworks/linux/linux390/s390-tools.html"
+SRC_URI="http://download.boulder.ibm.com/ibmdl/pub/software/dw/linux390/ht_src/${P}.tar.bz2
+ zfcpdump? (
+ mirror://sourceforge/e2fsprogs/${E2FSPROGS_P}.tar.gz
+ mirror://kernel/linux/kernel/v2.6/${LINUX_P}.tar.bz2
+ )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* s390"
+IUSE="fuse snmp zfcpdump"
+
+RDEPEND="fuse? ( sys-fs/fuse )
+ snmp? ( net-analyzer/net-snmp )"
+DEPEND="${RDEPEND}
+ dev-util/indent
+ app-admin/genromfs"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.16.0-build.patch
+
+ use snmp || sed -i -e 's:osasnmpd::' Makefile
+ use fuse || { sed -i -e 's:cmsfs-fuse::' Makefile; export WITHOUT_FUSE=1; }
+
+ if use zfcpdump ; then
+ local x
+ for x in ${E2FSPROGS_P}.tar.gz ${LINUX_P}.tar.bz2 ; do
+ ln -s "${DISTDIR}"/${x} zfcpdump_v2/${x} || die "ln ${x}"
+ done
+ sed -i -e '/^ZFCPDUMP_DIR/s:local/::' common.mak
+ sed -i -e '/^SUB_DIRS/s:=:=zfcpdump_v2 :' Makefile
+ fi
+
+ export MAKEOPTS+=" V=1"
+}
+
+src_install() {
+ emake install INSTROOT="${D}" USRBINDIR="${D}/sbin"
+ dodoc README
+ udev_dorules etc/udev/rules.d/*.rules
+}
diff --git a/sys-apps/s390-tools/s390-tools-1.23.1.ebuild b/sys-apps/s390-tools/s390-tools-1.23.1.ebuild
new file mode 100644
index 000000000000..67e52b804acf
--- /dev/null
+++ b/sys-apps/s390-tools/s390-tools-1.23.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils udev
+
+# look at zfcpdump_v2/README
+E2FSPROGS_P=e2fsprogs-1.41.3
+LINUX_P=linux-2.6.27
+
+DESCRIPTION="User space utilities for the zSeries (s390) Linux kernel and device drivers"
+HOMEPAGE="http://www.ibm.com/developerworks/linux/linux390/s390-tools.html"
+SRC_URI="http://download.boulder.ibm.com/ibmdl/pub/software/dw/linux390/ht_src/${P}.tar.bz2
+ zfcpdump? (
+ mirror://sourceforge/e2fsprogs/${E2FSPROGS_P}.tar.gz
+ mirror://kernel/linux/kernel/v2.6/${LINUX_P}.tar.bz2
+ )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* s390"
+IUSE="fuse snmp zfcpdump"
+
+RDEPEND="fuse? ( sys-fs/fuse )
+ snmp? ( net-analyzer/net-snmp )"
+DEPEND="${RDEPEND}
+ dev-util/indent
+ app-admin/genromfs"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.23.1-build.patch
+
+ use snmp || sed -i -e 's:osasnmpd::' Makefile
+ use fuse || { sed -i -e 's:cmsfs-fuse::' Makefile; export WITHOUT_FUSE=1; }
+
+ if use zfcpdump ; then
+ local x
+ for x in ${E2FSPROGS_P}.tar.gz ${LINUX_P}.tar.bz2 ; do
+ ln -s "${DISTDIR}"/${x} zfcpdump_v2/${x} || die "ln ${x}"
+ done
+ sed -i -e '/^ZFCPDUMP_DIR/s:local/::' common.mak
+ sed -i -e '/^SUB_DIRS/s:=:=zfcpdump_v2 :' Makefile
+ fi
+
+ export MAKEOPTS+=" V=1"
+}
+
+src_install() {
+ emake install INSTROOT="${D}" USRBINDIR="${D}/sbin"
+ dodoc README
+ udev_dorules etc/udev/rules.d/*.rules
+}