From f5ec09842dcb16eca6294da30d2f9536bda1d4c0 Mon Sep 17 00:00:00 2001 From: aszlig Date: Fri, 15 Apr 2016 05:35:11 +0200 Subject: [PATCH] pygame: Fix build with multiple outputs The config.py script doesn't seem to cope very well with symlinks, so let's pass it the right derivation outputs wherever possible and fall back to drv.out. I've disabled the tests because they somehow now seem to cause the build to fail even though the tests failed *before* the merge of the closure-size branch, but the whole build didn't fail regardless. Here is a build from before the closure-size branch merge: http://hydra.nixos.org/build/34367296 If you have a look at the build log, you already see a bunch of failing tests (to be exact: the same set of tests that are failing now with the fix of the preConfigure phase). Other than that, the build now succeeds on my machine. Signed-off-by: aszlig --- .../development/python-modules/pygame/default.nix | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/pygame/default.nix b/pkgs/development/python-modules/pygame/default.nix index 321a0b49b08..0928fa6ae7d 100644 --- a/pkgs/development/python-modules/pygame/default.nix +++ b/pkgs/development/python-modules/pygame/default.nix @@ -18,14 +18,17 @@ buildPythonPackage { # /nix/store/94kswjlwqnc0k2bnwgx7ckx0w2kqzaxj-stdenv/setup: line 73: python: command not found disabled = isPy3k; + # Tests fail because of no audio device and display. + doCheck = false; + patches = [ ./pygame-v4l.patch ]; - preConfigure = '' - for i in ${SDL_image} ${SDL_mixer} ${SDL_ttf} ${libpng} ${libjpeg} ${portmidi} ${libX11}; do - sed -e "/origincdirs =/a'$i/include'," -i config_unix.py - sed -e "/origlibdirs =/aoriglibdirs += '$i/lib'," -i config_unix.py - done - + preConfigure = stdenv.lib.concatMapStrings (dep: '' + sed \ + -e "/origincdirs =/a'${dep.dev or dep.out}/include'," \ + -e "/origlibdirs =/aoriglibdirs += '${dep.lib or dep.out}/lib'," \ + -i config_unix.py + '') [ SDL_image SDL_mixer SDL_ttf libpng libjpeg portmidi libX11 ] + '' LOCALBASE=/ python config.py '';