pygame: update to 1.9.1
Enable PNG and JPEG support Use pygame-v4l patch from AUR
This commit is contained in:
parent
e094ccc10c
commit
2ff588bb5d
@ -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
|
||||
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
|
||||
|
||||
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"
|
||||
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+";
|
||||
};
|
||||
}
|
||||
|
88
pkgs/development/python-modules/pygame/pygame-v4l.patch
Normal file
88
pkgs/development/python-modules/pygame/pygame-v4l.patch
Normal file
@ -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 ----
|
Loading…
Reference in New Issue
Block a user