Package: ncurses Version: 6.0+20161126-1 Severity: wishlist Tags: patch Dear Maintainer,
Please consider applying the attached patch to build 32bit packages on s390x. This patch has been part of Ubuntu for over a year now [1]. The original patch [2] does not apply cleanly as it assumes x32 support has also been added. [1] https://launchpad.net/ubuntu/+source/ncurses/6.0+20151024-2ubuntu2 [2] http://launchpadlibrarian.net/236280845/ncurses_6.0+20151024-2ubuntu1_6.0+20151024-2ubuntu2.diff.gz Many thanks, Tiago Daitx -- System Information: Debian Release: stretch/sid APT prefers xenial-updates APT policy: (500, 'xenial-updates'), (500, 'xenial-security'), (500, 'xenial'), (400, 'xenial-proposed'), (100, 'xenial-backports') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.8.0-34-generic (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system)
diff -Nru ncurses-6.0+20161126/debian/changelog ncurses-6.0+20161126/debian/changelog --- ncurses-6.0+20161126/debian/changelog 2016-11-29 18:19:08.000000000 -0200 +++ ncurses-6.0+20161126/debian/changelog 2017-03-03 22:33:14.000000000 -0300 @@ -1,3 +1,9 @@ +ncurses (6.0+20161126-2) unstable; urgency=medium + + * Build 32bit packages on s390x. + + -- Dimitri John Ledkov <x...@ubuntu.com> Thu, 04 Feb 2016 15:20:19 +0000 + ncurses (6.0+20161126-1) unstable; urgency=low * New upstream patchlevel. diff -Nru ncurses-6.0+20161126/debian/control ncurses-6.0+20161126/debian/control --- ncurses-6.0+20161126/debian/control 2016-11-28 15:50:38.000000000 -0200 +++ ncurses-6.0+20161126/debian/control 2016-11-30 02:13:08.000000000 -0200 @@ -1,7 +1,7 @@ Maintainer: Craig Small <csm...@debian.org> Uploaders: Sven Joachim <svenj...@gmx.de> Build-Depends: debhelper (>= 9.20141010), dpkg-dev (>= 1.17.14), - g++-multilib [amd64 i386 powerpc ppc64 s390 sparc] <!nobiarch>, + g++-multilib [amd64 i386 powerpc ppc64 s390 s390x sparc] <!nobiarch>, libgpm-dev [linux-any], pkg-config, autotools-dev, @@ -206,7 +208,7 @@ architecture. Package: lib32ncurses5 -Architecture: amd64 ppc64 +Architecture: amd64 ppc64 s390x Priority: optional Depends: lib32tinfo5 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} @@ -223,7 +225,7 @@ architecture. Package: lib32ncurses5-dev -Architecture: amd64 ppc64 +Architecture: amd64 ppc64 s390x Section: libdevel Priority: optional Depends: lib32tinfo5 (= ${binary:Version}), lib32ncurses5 (= ${binary:Version}), @@ -242,7 +244,7 @@ architecture. Package: lib32ncursesw5 -Architecture: amd64 ppc64 +Architecture: amd64 ppc64 s390x Priority: optional Depends: lib32tinfo5 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} @@ -258,7 +260,7 @@ architecture. Package: lib32ncursesw5-dev -Architecture: amd64 ppc64 +Architecture: amd64 ppc64 s390x Section: libdevel Priority: optional Depends: lib32tinfo5 (= ${binary:Version}), lib32ncursesw5 (= ${binary:Version}), @@ -293,7 +295,7 @@ This package supports the 64-bit ABI variant of your system's architecture. Package: lib32tinfo5 -Architecture: amd64 ppc64 +Architecture: amd64 ppc64 s390x Priority: optional Depends: ${shlibs:Depends}, ${misc:Depends} Replaces: lib32ncurses5 (<< 5.9-3) @@ -308,7 +310,7 @@ This package supports the 32-bit ABI variant of your system's architecture. Package: lib32tinfo-dev -Architecture: amd64 ppc64 +Architecture: amd64 ppc64 s390x Section: libdevel Priority: optional Depends: lib32tinfo5 (= ${binary:Version}), diff -Nru ncurses-6.0+20161126/debian/rules ncurses-6.0+20161126/debian/rules --- ncurses-6.0+20161126/debian/rules 2016-11-28 15:50:38.000000000 -0200 +++ ncurses-6.0+20161126/debian/rules 2017-03-03 22:22:57.000000000 -0300 @@ -47,6 +47,8 @@ package-dbgti=libtinfo$(soname)-dbg package-term=ncurses-term package-examples=ncurses-examples + +m32_flag= -m32 workdir=$(shell pwd) tempdir=debian/tmp @@ -93,6 +105,14 @@ build_64 = build-64 endif +ifeq ($(DEB_HOST_ARCH),s390x) +build_32_target = s390-$(DEB_HOST_GNU_SYSTEM) +build_32 = build-32 build-wide-32 +lib32 = /lib32 +usr_lib32 = /usr/lib32 +m32_flag = -m31 +endif + ifeq ($(DEB_HOST_ARCH),sparc) build_64_target = sparc64-$(DEB_HOST_GNU_SYSTEM) build_64 = build-64 @@ -213,8 +235,8 @@ cf_cv_type_of_bool='unsigned char'; export cf_cv_type_of_bool; \ cf_cv_working_poll=yes; export cf_cv_working_poll; \ - cd $(objdir-32) && CFLAGS="$(CFLAGS)" CC="$(HOST_CC) -m32" \ - BUILD_CC="gcc" CXX="$(HOST_CXX) -m32" \ + cd $(objdir-32) && CFLAGS="$(CFLAGS)" CC="$(HOST_CC) $(m32_flag)" \ + BUILD_CC="gcc" CXX="$(HOST_CXX) $(m32_flag)" \ $(relsrcdir)/configure \ $(CONFARGS) \ --host=$(build_32_target) \ @@ -278,8 +315,8 @@ cf_cv_type_of_bool='unsigned char'; export cf_cv_type_of_bool; \ cf_cv_working_poll=yes; export cf_cv_working_poll; \ - cd $(wobjdir-32) && CFLAGS="$(CFLAGS)" CC="$(HOST_CC) -m32" \ - BUILD_CC="gcc" BUILD_CPPFLAGS="-D_GNU_SOURCE" CXX="$(HOST_CXX) -m32" \ + cd $(wobjdir-32) && CFLAGS="$(CFLAGS)" CC="$(HOST_CC) $(m32_flag)" \ + BUILD_CC="gcc" BUILD_CPPFLAGS="-D_GNU_SOURCE" CXX="$(HOST_CXX) $(m32_flag)" \ $(relsrcdir)/configure \ $(CONFARGS) \ --host=$(build_32_target) \ @@ -310,7 +363,7 @@ touch $@ build-32: $(objdir-32)/config.status - cd $(objdir-32) && $(MAKE) CC="$(HOST_CC) -m32" CXX="$(HOST_CXX) -m32" + cd $(objdir-32) && $(MAKE) CC="$(HOST_CC) $(m32_flag)" CXX="$(HOST_CXX) $(m32_flag)" touch $@ build-64: $(objdir-64)/config.status @@ -332,7 +389,7 @@ touch $@ build-wide-32: $(wobjdir-32)/config.status - cd $(wobjdir-32) && $(MAKE) CC="$(HOST_CC) -m32" CXX="$(HOST_CXX) -m32" + cd $(wobjdir-32) && $(MAKE) CC="$(HOST_CC) $(m32_flag)" CXX="$(HOST_CXX) $(m32_flag)" touch $@ build-wide-debug: $(wobjdir-debug)/config.status