diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2015-10-06 15:24:20 +0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2015-10-06 15:24:20 +0200 |
commit | 741bf840dad05cd1728481045466811ae8ae8281 (patch) | |
tree | 93ce9aef00773772dfb9b782f20e20b79f024d48 /pkgs/development/libraries/ncurses | |
parent | fe195af94462a6769f2e2c38c1d5739337c20d57 (diff) | |
download | nixlib-741bf840dad05cd1728481045466811ae8ae8281.tar nixlib-741bf840dad05cd1728481045466811ae8ae8281.tar.gz nixlib-741bf840dad05cd1728481045466811ae8ae8281.tar.bz2 nixlib-741bf840dad05cd1728481045466811ae8ae8281.tar.lz nixlib-741bf840dad05cd1728481045466811ae8ae8281.tar.xz nixlib-741bf840dad05cd1728481045466811ae8ae8281.tar.zst nixlib-741bf840dad05cd1728481045466811ae8ae8281.zip |
Revert "Merge pull request #9543 from NixOS/staging.post-15.06"
This reverts commit f61176c5396ed513f3d399f73f38ab78a066667f, reversing changes made to a27ca029ee2b39e04d7d2a516a7228f4b62067fb. Conflicts: pkgs/development/libraries/ncurses/default.nix
Diffstat (limited to 'pkgs/development/libraries/ncurses')
-rw-r--r-- | pkgs/development/libraries/ncurses/default.nix | 24 | ||||
-rw-r--r-- | pkgs/development/libraries/ncurses/gcc-5.patch | 46 |
2 files changed, 61 insertions, 9 deletions
diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index a76bba24c62f..517410051581 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -1,37 +1,38 @@ -{ lib, stdenv, fetchurl, pkgconfig, libtool +{ lib, stdenv, fetchurl , mouseSupport ? false , unicode ? true , gpm + +# Extra Options +, abiVersion ? "5" }: stdenv.mkDerivation rec { - name = "ncurses-6.0"; + name = "ncurses-5.9"; src = fetchurl { url = "mirror://gnu/ncurses/${name}.tar.gz"; - sha256 = "0q3jck7lna77z5r42f13c4xglc7azd19pxfrjrpgp2yf615w4lgm"; + sha256 = "0fsn7xis81za62afan0vvm38bvgzg5wfmv1m86flqcj0nj7jjilh"; }; + # gcc-5.patch should be removed after 5.9 + patches = [ ./gcc-5.patch ]; + configureFlags = [ "--with-shared" - "--with-cxx-shared" - "--with-libtool" "--without-debug" - "--enable-overwrite" # Needed for proper header installation "--enable-pc-files" "--enable-symlinks" ] ++ lib.optional unicode "--enable-widec"; - nativeBuildInputs = [ pkgconfig libtool ]; buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; preConfigure = '' configureFlagsArray+=("--includedir=$out/include") export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" mkdir -p "$PKG_CONFIG_LIBDIR" - configureFlagsArray+=("--with-pkg-config-libdir=$PKG_CONFIG_LIBDIR") '' + lib.optionalString stdenv.isCygwin '' sed -i -e 's,LIB_SUFFIX="t,LIB_SUFFIX=",' configure ''; @@ -68,6 +69,7 @@ stdenv.mkDerivation rec { for dylibtype in so dll dylib; do if [ -e "$out/lib/lib''${lib}$suffix.$dylibtype" ]; then ln -svf lib''${lib}$suffix.$dylibtype $out/lib/lib$lib$newsuffix.$dylibtype + ln -svf lib''${lib}$suffix.$dylibtype.${abiVersion} $out/lib/lib$lib$newsuffix.$dylibtype.${abiVersion} fi done for statictype in a dll.a la; do @@ -80,6 +82,10 @@ stdenv.mkDerivation rec { done ''; + preFixup = '' + rm $out/lib/*.a + ''; + meta = { description = "Free software emulation of curses in SVR4 and more"; @@ -106,6 +112,6 @@ stdenv.mkDerivation rec { passthru = { ldflags = "-lncurses"; - inherit unicode; + inherit unicode abiVersion; }; } diff --git a/pkgs/development/libraries/ncurses/gcc-5.patch b/pkgs/development/libraries/ncurses/gcc-5.patch new file mode 100644 index 000000000000..2448229b88e1 --- /dev/null +++ b/pkgs/development/libraries/ncurses/gcc-5.patch @@ -0,0 +1,46 @@ +https://bugs.gentoo.org/545114 + +extracted from the upstream change (which had many unrelated commits in one) + +From 97bb4678dc03e753290b39bbff30ba2825df9517 Mon Sep 17 00:00:00 2001 +From: "Thomas E. Dickey" <dickey@invisible-island.net> +Date: Sun, 7 Dec 2014 03:10:09 +0000 +Subject: [PATCH] ncurses 5.9 - patch 20141206 + ++ modify MKlib_gen.sh to work around change in development version of + gcc introduced here: + https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html + https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html + (reports by Marcus Shawcroft, Maohui Lei). + +diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh +index d8cc3c9..b91398c 100755 +--- a/ncurses/base/MKlib_gen.sh ++++ b/ncurses/base/MKlib_gen.sh +@@ -474,11 +474,22 @@ sed -n -f $ED1 \ + -e 's/gen_$//' \ + -e 's/ / /g' >>$TMP + ++cat >$ED1 <<EOF ++s/ / /g ++s/^ // ++s/ $// ++s/P_NCURSES_BOOL/NCURSES_BOOL/g ++EOF ++ ++# A patch discussed here: ++# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html ++# introduces spurious #line markers. Work around that by ignoring the system's ++# attempt to define "bool" and using our own symbol here. ++sed -e 's/bool/P_NCURSES_BOOL/g' $TMP > $ED2 ++cat $ED2 >$TMP ++ + $preprocessor $TMP 2>/dev/null \ +-| sed \ +- -e 's/ / /g' \ +- -e 's/^ //' \ +- -e 's/_Bool/NCURSES_BOOL/g' \ ++| sed -f $ED1 \ + | $AWK -f $AW2 \ + | sed -f $ED3 \ + | sed \ |