summaryrefslogtreecommitdiff
path: root/staging/python-pygame
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-10-02 01:06:16 -0700
committerroot <root@rshg054.dnsready.net>2012-10-02 01:06:16 -0700
commit941550cbc215d608bd18439f99500b74fbb80f0d (patch)
treeced50aee5db693d8495b19c59d2bdbd6927c9393 /staging/python-pygame
parent9b6be78b0c13a61c14d5278f1363eaf9c6388e4c (diff)
Tue Oct 2 01:06:06 PDT 2012
Diffstat (limited to 'staging/python-pygame')
-rw-r--r--staging/python-pygame/PKGBUILD38
-rw-r--r--staging/python-pygame/config.patch26
-rw-r--r--staging/python-pygame/pygame-v4l.patch88
3 files changed, 152 insertions, 0 deletions
diff --git a/staging/python-pygame/PKGBUILD b/staging/python-pygame/PKGBUILD
new file mode 100644
index 000000000..2cd71fc35
--- /dev/null
+++ b/staging/python-pygame/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id: PKGBUILD 167394 2012-10-01 22:41:51Z eric $
+# Maintainer: Eric BĂ©langer <eric@archlinux.org>
+
+pkgbase=python-pygame
+pkgname=python2-pygame
+pkgver=1.9.1
+pkgrel=6
+pkgdesc="Python game library"
+arch=('i686' 'x86_64')
+url="http://www.pygame.org/"
+license=('LGPL')
+depends=('sdl_mixer' 'sdl_ttf' 'sdl_image' 'python2' 'portmidi')
+source=(http://pygame.org/ftp/pygame-${pkgver}release.tar.gz \
+ config.patch pygame-v4l.patch)
+sha1sums=('a45aeb0623e36ae7a1707b5f41ee6274f72ca4fa'
+ '285815e28705d5a2aea53c9d952d35fddf10dd13'
+ '7e693fb2ef5ef636f9965ba1a4eb854f8b0b5070')
+
+build() {
+ cd "${srcdir}/pygame-${pkgver}release"
+ patch -Np0 -i "${srcdir}/config.patch"
+ patch -Np1 -i "${srcdir}/pygame-v4l.patch"
+}
+
+package_python2-pygame() {
+ cd "${srcdir}/pygame-${pkgver}release"
+ python2 config.py -auto
+ python2 setup.py install --root="${pkgdir}" --prefix=/usr
+
+# Copying the examples and tests
+ cp -R examples lib/* "${pkgdir}/usr/lib/python2.7/site-packages/pygame"
+ cp -R test/* "${pkgdir}/usr/lib/python2.7/site-packages/pygame/tests"
+
+ find "${pkgdir}" -type f -exec sed -i 's#/usr/bin/env python#/usr/bin/env python2#' {} +
+
+# Fixing permissions
+ chmod 644 "${pkgdir}"/usr/include/python2.7/pygame/*
+}
diff --git a/staging/python-pygame/config.patch b/staging/python-pygame/config.patch
new file mode 100644
index 000000000..b3dab162c
--- /dev/null
+++ b/staging/python-pygame/config.patch
@@ -0,0 +1,26 @@
+Index: config_unix.py
+===================================================================
+--- config_unix.py (revision 2567)
++++ config_unix.py (working copy)
+@@ -174,7 +174,7 @@
+
+ for d in DEPS[1:]:
+ if not d.found:
+- if not confirm("""
++ if "-auto" not in sys.argv and not confirm("""
+ Warning, some of the pygame dependencies were not found. Pygame can still
+ compile and install, but games that depend on those missing dependencies
+ will not run. Would you like to continue the configuration?"""):
+Index: config_msys.py
+===================================================================
+--- config_msys.py (revision 2567)
++++ config_msys.py (working copy)
+@@ -283,7 +283,7 @@
+
+ for d in DEPS[1:]:
+ if not d.found:
+- if not confirm("""
++ if "-auto" not in sys.argv and not confirm("""
+ Warning, some of the pygame dependencies were not found. Pygame can still
+ compile and install, but games that depend on those missing dependencies
+ will not run. Would you like to continue the configuration?"""):
diff --git a/staging/python-pygame/pygame-v4l.patch b/staging/python-pygame/pygame-v4l.patch
new file mode 100644
index 000000000..3b5a2b9d2
--- /dev/null
+++ b/staging/python-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 ----