Merge pull request #36399 from obsidiansystems/no-stdenv-cross-adapter
guile: Fix cross more, including 1.8
This commit is contained in:
commit
b5cf1d2e50
3 changed files with 41 additions and 28 deletions
|
@ -1,25 +1,33 @@
|
||||||
{ fetchurl, stdenv, libtool, readline, gmp
|
{ stdenv, buildPackages
|
||||||
, gawk, makeWrapper }:
|
, buildPlatform, hostPlatform
|
||||||
|
, fetchurl, makeWrapper, gawk, pkgconfig
|
||||||
|
, libtool, readline, gmp
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "guile-1.8.8";
|
name = "guile-1.8.8";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnu/guile/" + name + ".tar.gz";
|
url = "mirror://gnu/guile/${name}.tar.gz";
|
||||||
sha256 = "0l200a0v7h8bh0cwz6v7hc13ds39cgqsmfrks55b1rbj5vniyiy3";
|
sha256 = "0l200a0v7h8bh0cwz6v7hc13ds39cgqsmfrks55b1rbj5vniyiy3";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./cpp-4.5.patch ];
|
|
||||||
|
|
||||||
outputs = [ "out" "dev" "info" ];
|
outputs = [ "out" "dev" "info" ];
|
||||||
setOutputFlags = false; # $dev gets into the library otherwise
|
setOutputFlags = false; # $dev gets into the library otherwise
|
||||||
|
|
||||||
# GCC 4.6 raises a number of set-but-unused warnings.
|
# GCC 4.6 raises a number of set-but-unused warnings.
|
||||||
configureFlags = [ "--disable-error-on-warning" ];
|
configureFlags = [ "--disable-error-on-warning" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper gawk ];
|
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
||||||
propagatedBuildInputs = [ readline gmp libtool ];
|
++ stdenv.lib.optional (hostPlatform != buildPlatform)
|
||||||
selfNativeBuildInput = true;
|
buildPackages.buildPackages.guile_1_8;
|
||||||
|
nativeBuildInputs = [ makeWrapper gawk pkgconfig ];
|
||||||
|
buildInputs = [ readline libtool ];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ gmp ];
|
||||||
|
|
||||||
|
patches = [ ./cpp-4.5.patch ];
|
||||||
|
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin"
|
wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin"
|
||||||
|
@ -46,17 +54,16 @@ stdenv.mkDerivation rec {
|
||||||
setupHook = ./setup-hook.sh;
|
setupHook = ./setup-hook.sh;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "GNU Guile, an embeddable Scheme interpreter";
|
description = "Embeddable Scheme implementation";
|
||||||
|
homepage = http://www.gnu.org/software/guile/;
|
||||||
|
license = stdenv.lib.licenses.lgpl2Plus;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||||
|
platforms = stdenv.lib.platforms.unix;
|
||||||
|
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
GNU Guile is an interpreter for the Scheme programming language,
|
GNU Guile is an interpreter for the Scheme programming language,
|
||||||
packaged as a library that can be embedded into programs to make
|
packaged as a library that can be embedded into programs to make
|
||||||
them extensible. It supports many SRFIs.
|
them extensible. It supports many SRFIs.
|
||||||
'';
|
'';
|
||||||
|
|
||||||
homepage = http://www.gnu.org/software/guile/;
|
|
||||||
license = stdenv.lib.licenses.lgpl2Plus;
|
|
||||||
|
|
||||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
|
||||||
platforms = stdenv.lib.platforms.unix;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
{ fetchurl, stdenv, libtool, readline, gmp, pkgconfig, boehmgc, libunistring
|
{ stdenv, buildPackages
|
||||||
, libffi, gawk, makeWrapper, fetchpatch, coverageAnalysis ? null, gnu ? null
|
, buildPlatform, hostPlatform
|
||||||
, hostPlatform, buildPackages
|
, fetchpatch, fetchurl, makeWrapper, gawk, pkgconfig
|
||||||
|
, libffi, libtool, readline, gmp, boehmgc, libunistring
|
||||||
|
, coverageAnalysis ? null, gnu ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# Do either a coverage analysis build or a standard build.
|
# Do either a coverage analysis build or a standard build.
|
||||||
|
@ -19,12 +21,13 @@
|
||||||
outputs = [ "out" "dev" "info" ];
|
outputs = [ "out" "dev" "info" ];
|
||||||
setOutputFlags = false; # $dev gets into the library otherwise
|
setOutputFlags = false; # $dev gets into the library otherwise
|
||||||
|
|
||||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
||||||
nativeBuildInputs = [ makeWrapper gawk pkgconfig ] ++
|
++ stdenv.lib.optional (hostPlatform != buildPlatform)
|
||||||
stdenv.lib.optional stdenv.isCross buildPackages.buildPackages.guile_2_0;
|
buildPackages.buildPackages.guile_2_0;
|
||||||
|
nativeBuildInputs = [ makeWrapper gawk pkgconfig ];
|
||||||
buildInputs = [ readline libtool libunistring libffi ];
|
buildInputs = [ readline libtool libunistring libffi ];
|
||||||
propagatedBuildInputs = [ gmp boehmgc ]
|
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ gmp boehmgc ]
|
||||||
# XXX: These ones aren't normally needed here, but since
|
# XXX: These ones aren't normally needed here, but since
|
||||||
# `libguile-2.0.la' reads `-lltdl -lunistring', adding them here will add
|
# `libguile-2.0.la' reads `-lltdl -lunistring', adding them here will add
|
||||||
# the needed `-L' flags. As for why the `.la' file lacks the `-L' flags,
|
# the needed `-L' flags. As for why the `.la' file lacks the `-L' flags,
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
{ fetchurl, stdenv, libtool, readline, gmp, pkgconfig, boehmgc, libunistring
|
{ stdenv, buildPackages
|
||||||
, libffi, gawk, makeWrapper, fetchpatch, coverageAnalysis ? null, gnu ? null
|
, buildPlatform, hostPlatform
|
||||||
, hostPlatform, buildPackages
|
, fetchurl, makeWrapper, gawk, pkgconfig
|
||||||
|
, libffi, libtool, readline, gmp, boehmgc, libunistring
|
||||||
|
, coverageAnalysis ? null, gnu ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# Do either a coverage analysis build or a standard build.
|
# Do either a coverage analysis build or a standard build.
|
||||||
|
@ -20,9 +22,10 @@
|
||||||
outputs = [ "out" "dev" "info" ];
|
outputs = [ "out" "dev" "info" ];
|
||||||
setOutputFlags = false; # $dev gets into the library otherwise
|
setOutputFlags = false; # $dev gets into the library otherwise
|
||||||
|
|
||||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
||||||
nativeBuildInputs = [ makeWrapper gawk pkgconfig ] ++
|
++ stdenv.lib.optional (hostPlatform != buildPlatform)
|
||||||
stdenv.lib.optional stdenv.isCross buildPackages.buildPackages.guile;
|
buildPackages.buildPackages.guile;
|
||||||
|
nativeBuildInputs = [ makeWrapper gawk pkgconfig ];
|
||||||
buildInputs = [ readline libtool libunistring libffi ];
|
buildInputs = [ readline libtool libunistring libffi ];
|
||||||
|
|
||||||
propagatedBuildInputs = [ gmp boehmgc ]
|
propagatedBuildInputs = [ gmp boehmgc ]
|
||||||
|
|
Loading…
Reference in a new issue