diff --git a/pkgs/development/python-modules/pygame/default.nix b/pkgs/development/python-modules/pygame/default.nix index cad9b17ebad..85f93506c50 100644 --- a/pkgs/development/python-modules/pygame/default.nix +++ b/pkgs/development/python-modules/pygame/default.nix @@ -1,4 +1,5 @@ -args: with args; +{ fetchurl, stdenv, python, pkgconfig, SDL, SDL_image, SDL_ttf, numeric }: + stdenv.mkDerivation { name = "pygame-1.7"; @@ -7,16 +8,29 @@ stdenv.mkDerivation { sha256 = "0hl0rmgjcqj217fibwyilz7w9jpg0kh7hsa7vyzd4cgqyliskpqi"; }; - buildInputs = [python pkgconfig SDL SDL_image SDL_ttf]; + buildInputs = [python pkgconfig SDL SDL_image SDL_ttf numeric]; - configurePhase = - " - export LOCALBASE=/// - sed -e \"/origincdirs =/a'${SDL_image}/include/SDL','${SDL_image}/include',\" -i config_unix.py - sed -e \"/origlibdirs =/aoriglibdirs += '${SDL_image}/lib',\" -i config_unix.py - sed -e \"/origincdirs =/a'${SDL_ttf}/include/SDL','${SDL_ttf}/include',\" -i config_unix.py - sed -e \"/origlibdirs =/aoriglibdirs += '${SDL_ttf}/lib',\" -i config_unix.py - yes Y | python config.py "; + configurePhase = '' + export LOCALBASE=/// + sed -e "/origincdirs =/a'${SDL_image}/include/SDL','${SDL_image}/include'," -i config_unix.py + sed -e "/origlibdirs =/aoriglibdirs += '${SDL_image}/lib'," -i config_unix.py + sed -e "/origincdirs =/a'${SDL_ttf}/include/SDL','${SDL_ttf}/include'," -i config_unix.py + sed -e "/origlibdirs =/aoriglibdirs += '${SDL_ttf}/lib'," -i config_unix.py + sed -e "/origincdirs =/a'${numeric}/include/python2.5'," -i config_unix.py + + sed -e "s|get_python_inc(0)|\"${numeric}/include/python2.5\"|g" -i config_unix.py + + # XXX: `Numeric.pth' should be found by Python but it's not, hence the + # $PYTHONPATH setting below. Gobolinux has the same problem: + # http://bugs.python.org/issue1431 . + yes Y | \ + PYTHONPATH="${numeric}/lib/python2.5/site-packages/Numeric:$PYTHONPATH" \ + python config.py + + # That `config.py' is really deeply broken. + sed -i Setup \ + -e "s|^NUMERIC *=.*$|NUMERIC = -I${numeric}/include/python2.5|g" + ''; buildPhase = "yes Y | python setup.py build"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index acd767aa792..99dcc2eefe8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4584,7 +4584,7 @@ let pygame = import ../development/python-modules/pygame { inherit fetchurl stdenv python pkgconfig SDL SDL_image - SDL_ttf; + SDL_ttf numeric; }; pygobject = import ../development/python-modules/pygobject {