diff options
author | Song Wenwu <iyzsong@gmail.com> | 2013-06-09 12:12:15 +0800 |
---|---|---|
committer | Song Wenwu <iyzsong@gmail.com> | 2013-06-09 12:12:15 +0800 |
commit | 2ff588bb5d85a00f6e53b800f57d076b1eeb1dda (patch) | |
tree | 961d271f2348a5f7b80d6538725758e0746c55c1 /pkgs/development/python-modules | |
parent | e094ccc10cab3ddf31da47900b64f9d6d7ed11b5 (diff) | |
download | nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.tar nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.tar.gz nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.tar.bz2 nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.tar.lz nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.tar.xz nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.tar.zst nixlib-2ff588bb5d85a00f6e53b800f57d076b1eeb1dda.zip |
pygame: update to 1.9.1
Enable PNG and JPEG support Use pygame-v4l patch from AUR
Diffstat (limited to 'pkgs/development/python-modules')
-rw-r--r-- | pkgs/development/python-modules/pygame/default.nix | 53 | ||||
-rw-r--r-- | pkgs/development/python-modules/pygame/pygame-v4l.patch | 88 |
2 files changed, 110 insertions, 31 deletions
diff --git a/pkgs/development/python-modules/pygame/default.nix b/pkgs/development/python-modules/pygame/default.nix index 347501f8a5b7..912642e3ea94 100644 --- a/pkgs/development/python-modules/pygame/default.nix +++ b/pkgs/development/python-modules/pygame/default.nix @@ -1,46 +1,37 @@ -{ fetchurl, stdenv, python, pkgconfig, SDL, SDL_image, SDL_mixer, SDL_ttf -, numeric }: +{ stdenv, fetchurl, python, pkgconfig +, SDL, SDL_image, SDL_mixer, SDL_ttf, libpng, libjpeg +}: stdenv.mkDerivation { - name = "pygame-1.7"; + name = "pygame-1.9.1"; src = fetchurl { - url = http://www.pygame.org/ftp/pygame-1.7.1release.tar.gz ; - sha256 = "0hl0rmgjcqj217fibwyilz7w9jpg0kh7hsa7vyzd4cgqyliskpqi"; + url = "http://www.pygame.org/ftp/pygame-1.9.1release.tar.gz"; + sha256 = "0cyl0ww4fjlf289pjxa53q4klyn55ajvkgymw0qrdgp4593raq52"; }; - buildInputs = [python pkgconfig SDL SDL_image SDL_ttf numeric]; - + buildInputs = [ + python pkgconfig SDL SDL_image SDL_mixer SDL_ttf libpng libjpeg + ]; + + patches = [ ./pygame-v4l.patch ]; + 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_mixer}/include/SDL','${SDL_mixer}/include'," -i config_unix.py - sed -e "/origlibdirs =/aoriglibdirs += '${SDL_mixer}/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 ; - s|^MIXER *=.*$|MIXER = -I${SDL_mixer}/include -L${SDL_mixer}/lib -lSDL_mixer|g" + for i in ${SDL_image} ${SDL_mixer} ${SDL_ttf} ${libpng} ${libjpeg}; do + sed -e "/origincdirs =/a'$i/include'," -i config_unix.py + sed -e "/origlibdirs =/aoriglibdirs += '$i/lib'," -i config_unix.py + done + + yes Y | LOCALBASE=/ python config.py ''; - buildPhase = "yes Y | python setup.py build"; + buildPhase = "python setup.py build"; - installPhase = "yes Y | python setup.py install --prefix=\${out} "; + installPhase = "python setup.py install --prefix=$out"; meta = { description = "Python library for games"; + homepage = "http://www.pygame.org/"; + licences = "LGPLv2.1+"; }; } diff --git a/pkgs/development/python-modules/pygame/pygame-v4l.patch b/pkgs/development/python-modules/pygame/pygame-v4l.patch new file mode 100644 index 000000000000..3b5a2b9d2bf9 --- /dev/null +++ b/pkgs/development/python-modules/pygame/pygame-v4l.patch @@ -0,0 +1,88 @@ +diff -crB pygame-1.9.1release/Setup.in pygame-1.9.1release-v4lpatch//Setup.in +*** pygame-1.9.1release/Setup.in Thu Jul 2 06:41:56 2009 +--- pygame-1.9.1release-v4lpatch//Setup.in Thu Mar 24 17:31:22 2011 +*************** +*** 34,40 **** + _numericsndarray src/_numericsndarray.c $(SDL) $(MIXER) $(DEBUG) + movie src/movie.c $(SDL) $(SMPEG) $(DEBUG) + scrap src/scrap.c $(SDL) $(SCRAP) $(DEBUG) +! _camera src/_camera.c src/camera_v4l2.c src/camera_v4l.c $(SDL) $(DEBUG) + pypm src/pypm.c $(SDL) $(PORTMIDI) $(PORTTIME) $(DEBUG) + + GFX = src/SDL_gfx/SDL_gfxPrimitives.c +--- 34,40 ---- + _numericsndarray src/_numericsndarray.c $(SDL) $(MIXER) $(DEBUG) + movie src/movie.c $(SDL) $(SMPEG) $(DEBUG) + scrap src/scrap.c $(SDL) $(SCRAP) $(DEBUG) +! _camera src/_camera.c src/camera_v4l2.c $(SDL) $(DEBUG) + pypm src/pypm.c $(SDL) $(PORTMIDI) $(PORTTIME) $(DEBUG) + + GFX = src/SDL_gfx/SDL_gfxPrimitives.c +diff -crB pygame-1.9.1release/src/_camera.c pygame-1.9.1release-v4lpatch//src/_camera.c +*** pygame-1.9.1release/src/_camera.c Sun Mar 15 20:30:41 2009 +--- pygame-1.9.1release-v4lpatch//src/_camera.c Thu Mar 24 16:58:18 2011 +*************** +*** 160,179 **** + { + #if defined(__unix__) + if (v4l2_open_device(self) == 0) { +! if (v4l_open_device(self) == 0) { +! v4l2_close_device(self); +! return NULL; +! } else { +! self->camera_type = CAM_V4L; +! if (v4l_init_device(self) == 0) { +! v4l2_close_device(self); +! return NULL; +! } +! if (v4l_start_capturing(self) == 0) { +! v4l2_close_device(self); +! return NULL; +! } +! } + } else { + self->camera_type = CAM_V4L2; + if (v4l2_init_device(self) == 0) { +--- 160,167 ---- + { + #if defined(__unix__) + if (v4l2_open_device(self) == 0) { +! v4l2_close_device(self); +! return NULL; + } else { + self->camera_type = CAM_V4L2; + if (v4l2_init_device(self) == 0) { +diff -crB pygame-1.9.1release/src/camera.h pygame-1.9.1release-v4lpatch//src/camera.h +*** pygame-1.9.1release/src/camera.h Fri Oct 10 04:37:10 2008 +--- pygame-1.9.1release-v4lpatch//src/camera.h Thu Mar 24 16:44:32 2011 +*************** +*** 39,45 **** + + #include <asm/types.h> /* for videodev2.h */ + +- #include <linux/videodev.h> + #include <linux/videodev2.h> + #endif + +--- 39,44 ---- +*************** +*** 51,57 **** + #define RGB_OUT 1 + #define YUV_OUT 2 + #define HSV_OUT 4 +- #define CAM_V4L 1 + #define CAM_V4L2 2 + + struct buffer +--- 50,55 ---- +*************** +*** 111,118 **** + int v4l2_close_device (PyCameraObject* self); + int v4l2_open_device (PyCameraObject* self); + +- /* internal functions specific to v4l */ +- int v4l_open_device (PyCameraObject* self); +- int v4l_init_device(PyCameraObject* self); +- int v4l_start_capturing(PyCameraObject* self); + #endif +--- 109,112 ---- |