From 5498dd6364f102e1d5a15433f49c97447da45e65 Mon Sep 17 00:00:00 2001 From: Rahul Gopinath Date: Sun, 19 Mar 2017 10:40:49 -0700 Subject: guile: 2.0 -> 2.2 --- pkgs/development/interpreters/guile/clang.patch | 14 ----------- pkgs/development/interpreters/guile/default.nix | 29 +++++++--------------- .../guile/disable-gc-sensitive-tests.patch | 25 ------------------- .../interpreters/guile/setup-hook-2.0.sh | 13 ---------- .../interpreters/guile/setup-hook-2.2.sh | 13 ++++++++++ 5 files changed, 22 insertions(+), 72 deletions(-) delete mode 100644 pkgs/development/interpreters/guile/clang.patch delete mode 100644 pkgs/development/interpreters/guile/disable-gc-sensitive-tests.patch delete mode 100644 pkgs/development/interpreters/guile/setup-hook-2.0.sh create mode 100644 pkgs/development/interpreters/guile/setup-hook-2.2.sh (limited to 'pkgs/development/interpreters') diff --git a/pkgs/development/interpreters/guile/clang.patch b/pkgs/development/interpreters/guile/clang.patch deleted file mode 100644 index 4d0f342b211..00000000000 --- a/pkgs/development/interpreters/guile/clang.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/lib/stdint.in.h b/lib/stdint.in.h -index 889bca7..15d39b0 100644 ---- a/lib/stdint.in.h -+++ b/lib/stdint.in.h -@@ -74,7 +74,8 @@ - in would reinclude us, skipping our contents because - _@GUARD_PREFIX@_STDINT_H is defined. - The include_next requires a split double-inclusion guard. */ --# @INCLUDE_NEXT@ @NEXT_STDINT_H@ -+# include -+// # @INCLUDE_NEXT@ @NEXT_STDINT_H@ - #endif - - #if ! defined _@GUARD_PREFIX@_STDINT_H && ! defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H diff --git a/pkgs/development/interpreters/guile/default.nix b/pkgs/development/interpreters/guile/default.nix index 04f31dda26a..8a2deeddff6 100644 --- a/pkgs/development/interpreters/guile/default.nix +++ b/pkgs/development/interpreters/guile/default.nix @@ -7,11 +7,12 @@ else stdenv.mkDerivation) (rec { - name = "guile-2.0.13"; + name = "guile-${version}"; + version = "2.2.0"; src = fetchurl { url = "mirror://gnu/guile/${name}.tar.xz"; - sha256 = "12yqkr974y91ylgw6jnmci2v90i90s7h9vxa4zk0sai8vjnz4i1p"; + sha256 = "05dmvhd1y135x7w5qfw4my42cfp6l8bbhjfxvchcc1cbdvzri0f1"; }; outputs = [ "out" "dev" "info" ]; @@ -32,12 +33,8 @@ enableParallelBuilding = true; - patches = [ ./disable-gc-sensitive-tests.patch ./eai_system.patch ./clang.patch - (fetchpatch { - # Fixes stability issues with 00-repl-server.test - url = "http://git.savannah.gnu.org/cgit/guile.git/patch/?id=2fbde7f02adb8c6585e9baf6e293ee49cd23d4c4"; - sha256 = "0p6c1lmw1iniq03z7x5m65kg3lq543kgvdb4nrxsaxjqf3zhl77v"; - }) + patches = [ + ./eai_system.patch ] ++ (stdenv.lib.optional (coverageAnalysis != null) ./gcov-file-name.patch); @@ -47,7 +44,7 @@ # don't have "libgcc_s.so.1" on darwin LDFLAGS = stdenv.lib.optionalString (!stdenv.isDarwin) "-lgcc_s"; - configureFlags = [ "--with-libreadline-prefix" ] + configureFlags = [ "--with-libreadline-prefix=${readline.dev}" ] ++ stdenv.lib.optionals stdenv.isSunOS [ # Make sure the right is found, and not the incompatible # /usr/include/mp.h from OpenSolaris. See @@ -56,7 +53,6 @@ "--with-libgmp-prefix=${gmp.dev}" # Same for these (?). - "--with-libreadline-prefix=${readline.dev}" "--with-libunistring-prefix=${libunistring}" # See below. @@ -69,7 +65,7 @@ # XXX: See http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/18903 for # why `--with-libunistring-prefix' and similar options coming from # `AC_LIB_LINKFLAGS_BODY' don't work on NixOS/x86_64. - sed -i "$out/lib/pkgconfig/guile-2.0.pc" \ + sed -i "$out/lib/pkgconfig/guile-2.2.pc" \ -e "s|-lunistring|-L${libunistring}/lib -lunistring|g ; s|^Cflags:\(.*\)$|Cflags: -I${libunistring}/include \1|g ; s|-lltdl|-L${libtool.lib}/lib -lltdl|g ; @@ -81,7 +77,7 @@ # On Linuxes+Hydra the tests are flaky; feel free to investigate deeper. doCheck = false; - setupHook = ./setup-hook-2.0.sh; + setupHook = ./setup-hook-2.2.sh; crossAttrs.preConfigure = stdenv.lib.optionalString (stdenv.cross.config == "i586-pc-gnu") @@ -96,7 +92,7 @@ description = "Embeddable Scheme implementation"; homepage = http://www.gnu.org/software/guile/; license = stdenv.lib.licenses.lgpl3Plus; - maintainers = with stdenv.lib.maintainers; [ ludo lovek323 ]; + maintainers = with stdenv.lib.maintainers; [ ludo lovek323 vrthra ]; platforms = stdenv.lib.platforms.all; longDescription = '' @@ -111,10 +107,3 @@ }; }) -// - -(stdenv.lib.optionalAttrs (!stdenv.isLinux) { - # Work around . - SHELL = "/bin/sh"; - CONFIG_SHELL = "/bin/sh"; -}) diff --git a/pkgs/development/interpreters/guile/disable-gc-sensitive-tests.patch b/pkgs/development/interpreters/guile/disable-gc-sensitive-tests.patch deleted file mode 100644 index 076091a702a..00000000000 --- a/pkgs/development/interpreters/guile/disable-gc-sensitive-tests.patch +++ /dev/null @@ -1,25 +0,0 @@ -This patch disable GC-sensitive tests. This is particularly useful when -compiling with `-O0' (as is done with coverage analysis) since there may -be many false references held on the stack, leading to the failure of -such tests. - ---- a/test-suite/tests/gc.test -+++ b/test-suite/tests/gc.test -@@ -67,6 +67,7 @@ - - (with-test-prefix "gc" - (pass-if "Unused modules are removed" -+ (throw 'unresolved) - (let* ((guard (make-guardian)) - (total 1000)) - ---- a/test-suite/tests/threads.test -+++ b/test-suite/tests/threads.test -@@ -366,6 +366,7 @@ - (not (mutex-owner m)))) - - (pass-if "mutex with owner not retained (bug #27450)" -+ (throw 'unresolved) - (let ((g (make-guardian))) - (g (let ((m (make-mutex))) (lock-mutex m) m)) - diff --git a/pkgs/development/interpreters/guile/setup-hook-2.0.sh b/pkgs/development/interpreters/guile/setup-hook-2.0.sh deleted file mode 100644 index fd1dc944ed4..00000000000 --- a/pkgs/development/interpreters/guile/setup-hook-2.0.sh +++ /dev/null @@ -1,13 +0,0 @@ -addGuileLibPath () { - if test -d "$1/share/guile/site/2.0" - then - export GUILE_LOAD_PATH="${GUILE_LOAD_PATH}${GUILE_LOAD_PATH:+:}$1/share/guile/site/2.0" - export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site/2.0" - elif test -d "$1/share/guile/site" - then - export GUILE_LOAD_PATH="${GUILE_LOAD_PATH}${GUILE_LOAD_PATH:+:}$1/share/guile/site" - export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site" - fi -} - -envHooks+=(addGuileLibPath) diff --git a/pkgs/development/interpreters/guile/setup-hook-2.2.sh b/pkgs/development/interpreters/guile/setup-hook-2.2.sh new file mode 100644 index 00000000000..86c1e0d3e4a --- /dev/null +++ b/pkgs/development/interpreters/guile/setup-hook-2.2.sh @@ -0,0 +1,13 @@ +addGuileLibPath () { + if test -d "$1/share/guile/site/2.2" + then + export GUILE_LOAD_PATH="${GUILE_LOAD_PATH}${GUILE_LOAD_PATH:+:}$1/share/guile/site/2.2" + export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site/2.2" + elif test -d "$1/share/guile/site" + then + export GUILE_LOAD_PATH="${GUILE_LOAD_PATH}${GUILE_LOAD_PATH:+:}$1/share/guile/site" + export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site" + fi +} + +envHooks+=(addGuileLibPath) -- cgit 1.4.1