From 585ba8c27f766a15abcab22c232170f6ae1cc0a9 Mon Sep 17 00:00:00 2001 From: LluĂ­s Batlle i Rossell Date: Sun, 22 Nov 2009 19:51:45 +0000 Subject: Big fixes in the cross build: - Before this changes, cflags and ldflags for the native and the cross compiler got mixed. Not all the gcc-wrapper/gcc-cross-wrapper variables are independant now, but enough, I think. - Fixed the generic stdenv expression, which did a big mess on buildInputs and buildNativeInputs. Now it distinguishes when there is a stdenvCross or not. Maybe we should have a single stdenv and forget about the stdenvCross adapter - this could end in a stdenv a bit complex, but simpler than the generic stdenv + adapter. - Added basic support in pkgconfig for cross-builds: a single PKG_CONFIG_PATH now works for both the cross and the native compilers, but I think this should work well for most cases I can think of. - I tried to fix the guile expression to cross-biuld; guile is built, but not its manual, so the derivation still fails. Guile requires patching to cross-build, as far as I understnad. - Made the glibcCross build to be done through the usage of a gcc-cross-wrapper over the gcc-cross-stage-static, instead of using it directly. - Trying to make physfs (a neverball dependency) cross build. - Updated the gcc expression to support building a cross compiler without getting derivation variables mixed with those of the stdenvCross. svn path=/nixpkgs/branches/stdenv-updates/; revision=18534 --- pkgs/development/interpreters/guile/default.nix | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'pkgs/development/interpreters/guile') diff --git a/pkgs/development/interpreters/guile/default.nix b/pkgs/development/interpreters/guile/default.nix index 5be39a20f5a5..905e475aba27 100644 --- a/pkgs/development/interpreters/guile/default.nix +++ b/pkgs/development/interpreters/guile/default.nix @@ -9,19 +9,26 @@ stdenv.mkDerivation rec { }; buildNativeInputs = [ makeWrapper ]; - propagatedBuildInputs = [ libtool gmp ]; - propagatedBuildNativeInputs = [readline gawk]; + buildInputs = [ libtool ]; + propagatedBuildInputs = [ readline gmp libtool ]; + propagatedBuildNativeInputs = [ gawk ]; postInstall = '' wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin" ''; - NIX_DEBUG=1; - preBuild = '' sed -e '/lt_dlinit/a lt_dladdsearchdir("'$out/lib'");' -i libguile/dynl.c ''; + # Guile needs patching to preset results for the configure tests + # about pthreads, which work only in native builds. + preConfigure = '' + if test -n "$crossConfig"; then + configureFlags="--with-threads=no $configureFlags" + fi + ''; + doCheck = true; setupHook = ./setup-hook.sh; -- cgit 1.4.1