guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: gnu: Add pinball.


From: Eric Bavier
Subject: 01/01: gnu: Add pinball.
Date: Mon, 01 Feb 2016 05:48:27 +0000

bavier pushed a commit to branch master
in repository guix.

commit e3f755f44c257093c26eab1e7f839808edd57973
Author: Eric Bavier <address@hidden>
Date:   Sun Jan 31 23:22:38 2016 -0600

    gnu: Add pinball.
    
    * gnu/packages/games.scm (pinball): New variable.
    * gnu/packages/patches/pinball-const-fix.patch,
      gnu/packages/patches/pinball-cstddef.patch,
      gnu/packages/patches/pinball-missing-separators.patch,
      gnu/packages/patches/pinball-src-deps.patch,
      gnu/packages/patches/pinball-system-ltdl.patch: New patches.
    * gnu-system.am (dist_patch_DATA): Add them.
---
 gnu-system.am                                      |    5 +
 gnu/packages/games.scm                             |   40 ++++++++-
 gnu/packages/patches/pinball-const-fix.patch       |   11 ++
 gnu/packages/patches/pinball-cstddef.patch         |   38 ++++++++
 .../patches/pinball-missing-separators.patch       |  101 ++++++++++++++++++++
 gnu/packages/patches/pinball-src-deps.patch        |   24 +++++
 gnu/packages/patches/pinball-system-ltdl.patch     |   18 ++++
 7 files changed, 236 insertions(+), 1 deletions(-)

diff --git a/gnu-system.am b/gnu-system.am
index 5916d81..f91e66f 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -655,6 +655,11 @@ dist_patch_DATA =                                          
\
   gnu/packages/patches/perl-module-pluggable-search.patch      \
   gnu/packages/patches/perl-source-date-epoch.patch            \
   gnu/packages/patches/pidgin-add-search-path.patch            \
+  gnu/packages/patches/pinball-const-fix.patch                 \
+  gnu/packages/patches/pinball-cstddef.patch                   \
+  gnu/packages/patches/pinball-missing-separators.patch                \
+  gnu/packages/patches/pinball-src-deps.patch                  \
+  gnu/packages/patches/pinball-system-ltdl.patch               \
   gnu/packages/patches/pingus-sdl-libs-config.patch            \
   gnu/packages/patches/plink-1.07-unclobber-i.patch            \
   gnu/packages/patches/plotutils-libpng-jmpbuf.patch           \
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 3fcda40..7eb0e7a 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 John Darrington <address@hidden>
 ;;; Copyright © 2014, 2015 David Thompson <address@hidden>
-;;; Copyright © 2014, 2015 Eric Bavier <address@hidden>
+;;; Copyright © 2014, 2015, 2016 Eric Bavier <address@hidden>
 ;;; Copyright © 2014 Cyrill Schenkel <address@hidden>
 ;;; Copyright © 2014 Sylvain Beucler <address@hidden>
 ;;; Copyright © 2014, 2015 Ludovic Courtès <address@hidden>
@@ -1853,3 +1853,41 @@ usable with any game controller that has at least 4 
buttons, theming support,
 and a game metadata scraper.")
     (home-page "http://www.emulationstation.org";)
     (license license:expat)))
+
+(define-public pinball
+  (package
+    (name "pinball")
+    (version "0.3.1")
+    (source
+     (origin (method url-fetch)
+             (uri (string-append "mirror://sourceforge/pinball/pinball/"
+                                 "pinball-" version "/"
+                                 "pinball-" version ".tar.gz"))
+             (sha256
+              (base32
+               "1f2whlrfidwfh8lvr8cspcyirc6840r5d1ajm7x99qmngygrhixs"))
+             (patches (map search-patch
+                           '("pinball-const-fix.patch"
+                             "pinball-cstddef.patch"
+                             "pinball-missing-separators.patch"
+                             "pinball-src-deps.patch"
+                             "pinball-system-ltdl.patch")))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("glu" ,glu)
+       ("mesa" ,mesa)
+       ("sdl" ,sdl)
+       ("sdl-image" ,sdl-image)
+       ("sdl-mixer" ,sdl-mixer)))
+    (arguments
+     '(#:configure-flags
+       (list (string-append "CPPFLAGS=-I"
+                            (assoc-ref %build-inputs "sdl-image")
+                            "/include/SDL -I"
+                            (assoc-ref %build-inputs "sdl-mixer")
+                            "/include/SDL"))))
+    (home-page "http://pinball.sourceforge.net";)
+    (synopsis "Pinball simulator")
+    (description "The Emilia Pinball Project is a pinball simulator.  There
+are only two levels to play with, but they are very addictive.")
+    (license license:gpl2)))
diff --git a/gnu/packages/patches/pinball-const-fix.patch 
b/gnu/packages/patches/pinball-const-fix.patch
new file mode 100644
index 0000000..6d7b75d
--- /dev/null
+++ b/gnu/packages/patches/pinball-const-fix.patch
@@ -0,0 +1,11 @@
+--- pinball-0.3.1/base/Config.cpp      2009-10-13 18:33:38.000000000 +0200
++++ pinball-0.3.1/base/Config.cpp      2009-10-13 18:37:12.000000000 +0200
+@@ -416,7 +416,7 @@
+   m_sDataDir = string(EM_DATADIR) + "/";
+   m_sExeDir = "./";
+   if ( *( m_sDataDir.c_str() ) != '/' ) {
+-    char* ptr=0; 
++    const char* ptr=0;
+     char* ptrw = 0;
+     //cout<<"relative to exe file"<<endl;
+     ptr = (strrchr(argv0,'/')); // unix /cygwin / check win32 
diff --git a/gnu/packages/patches/pinball-cstddef.patch 
b/gnu/packages/patches/pinball-cstddef.patch
new file mode 100644
index 0000000..e43a132
--- /dev/null
+++ b/gnu/packages/patches/pinball-cstddef.patch
@@ -0,0 +1,38 @@
+Description: Add missing inlcudes of cstddef, fixing FTBFS13.1
+Author: Regis Boudin <address@hidden>
+Bug-Debian: http://bugs.debian.org/624953
+Bug-Debian: http://bugs.debian.org/640726
+
+--- pinball-0.3.1/base/Behavior.cpp
++++ pinball-0.3.1/base/Behavior.cpp
+@@ -10,6 +10,8 @@
+ #include "Behavior.h"
+ #include "Group.h"
+ 
++#include <cstddef>
++
+ Behavior::Behavior() {
+       //EM_COUT("Behavior::Behavior", 1);
+       p_Light = NULL;
+--- pinball-0.3.1/base/SignalSender.cpp
++++ pinball-0.3.1/base/SignalSender.cpp
+@@ -12,6 +12,8 @@
+ #include "Group.h"
+ #include "Behavior.h"
+ 
++#include <cstddef>
++
+ SignalSender * SignalSender::p_SignalSender = NULL;
+ 
+ SignalSender::SignalSender() {
+--- pinball-0.3.1/base/BehaviorVisitor.cpp
++++ pinball-0.3.1/base/BehaviorVisitor.cpp
+@@ -10,6 +10,8 @@
+ #include "Behavior.h"
+ #include "Group.h"
+ 
++#include <cstddef>
++
+ BehaviorVisitor * BehaviorVisitor::p_BehaviorVisitor = NULL;
+ 
+ BehaviorVisitor::BehaviorVisitor() {
diff --git a/gnu/packages/patches/pinball-missing-separators.patch 
b/gnu/packages/patches/pinball-missing-separators.patch
new file mode 100644
index 0000000..eb00314
--- /dev/null
+++ b/gnu/packages/patches/pinball-missing-separators.patch
@@ -0,0 +1,101 @@
+From: Markus Koschany <address@hidden>
+Date: Sun, 3 Aug 2014 22:50:46 +0200
+Subject: missing separators
+
+Bug: https://bugs.debian.org/750082
+
+---
+ src/Makefile.am  | 14 +++++++-------
+ src/Makefile.in  | 14 +++++++-------
+ test/Makefile.am |  2 +-
+ test/Makefile.in |  2 +-
+ 4 files changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index fbd7e8f..96768d3 100755
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -29,7 +29,7 @@ Script.cpp \
+ StateBehavior.cpp \
+ Table.cpp
+ 
+-dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
++# libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
+ 
+ pininclude_HEADERS = \
+ ArmBehavior.h \
+@@ -56,10 +56,10 @@ Table.h
+ # libemilia_pin.a libemilia_addon.a  libemilia_base.a libltdlc.a
+ wpinball.exe:  ${pinball_OBJECTS} ${pinball_DEPENDENCIES}
+       ${GCCLOCALDIR}g++ -g -W -Wall -O2 -o$@ $^ \
+- -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
+- -lSDL_image -lSDLmain -lSDL \
+- -lglu32 -lopengl32 -ljpeg -lpng  \
+- -lwinmm -luser32 -lgdi32 -ldxguid   \
+- -lmingw32 -lSDLmain -lSDL  -mwindows \
+- -L${GCCLOCALDIR}../lib
++      -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
++      -lSDL_image -lSDLmain -lSDL \
++      -lglu32 -lopengl32 -ljpeg -lpng \
++      -lwinmm -luser32 -lgdi32 -ldxguid \
++      -lmingw32 -lSDLmain -lSDL  -mwindows \
++      -L${GCCLOCALDIR}../lib
+ # !-rzr : # have to solve it later # -lstdc++
+diff --git a/src/Makefile.in b/src/Makefile.in
+index ea7651b..8e95cd6 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -505,7 +505,7 @@ uninstall-am: uninstall-binPROGRAMS uninstall-info-am \
+       uninstall-pinincludeHEADERS uninstall-pinlibLIBRARIES
+ 
+ 
+-dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
++      dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
+ 
+ # !+rzr : This trick workaround a bad generated rule (under Linux mingw32)
+ # src/ litool returns:  -L/usr/local//lib /usr/lib/libjpeg.so
+@@ -514,12 +514,12 @@ dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
+ # libemilia_pin.a libemilia_addon.a  libemilia_base.a libltdlc.a
+ wpinball.exe:  ${pinball_OBJECTS} ${pinball_DEPENDENCIES}
+       ${GCCLOCALDIR}g++ -g -W -Wall -O2 -o$@ $^ \
+- -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
+- -lSDL_image -lSDLmain -lSDL \
+- -lglu32 -lopengl32 -ljpeg -lpng  \
+- -lwinmm -luser32 -lgdi32 -ldxguid   \
+- -lmingw32 -lSDLmain -lSDL  -mwindows \
+- -L${GCCLOCALDIR}../lib
++      -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
++      -lSDL_image -lSDLmain -lSDL \
++      -lglu32 -lopengl32 -ljpeg -lpng \
++      -lwinmm -luser32 -lgdi32 -ldxguid \
++      -lmingw32 -lSDLmain -lSDL  -mwindows \
++      -L${GCCLOCALDIR}../lib
+ # !-rzr : # have to solve it later # -lstdc++
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+diff --git a/test/Makefile.am b/test/Makefile.am
+index d87cf34..ea3ffc9 100755
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -4,7 +4,7 @@ testlibdir = $(EM_LIBDIR)
+ testdatadir = $(pkgdatadir)
+ 
+ noinst_PROGRAMS = scale simple light texture load explode collision signal 
billboard font thread menu joy sound trans math misc varray unittest
+-dnl noinst_PROGRAMS = unittest
++# noinst_PROGRAMS = unittest
+ 
+ INCLUDES = -I../base -I../addon -I../src @INCLTDL@
+ LDADD = ../src/libemilia_pin.a ../addon/libemilia_addon.a 
../base/libemilia_base.a @LIBLTDL@
+diff --git a/test/Makefile.in b/test/Makefile.in
+index 6ba2646..47654dc 100644
+--- a/test/Makefile.in
++++ b/test/Makefile.in
+@@ -621,7 +621,7 @@ uninstall-am: uninstall-info-am 
uninstall-testlibLTLIBRARIES
+       mostlyclean-generic mostlyclean-libtool tags uninstall \
+       uninstall-am uninstall-info-am uninstall-testlibLTLIBRARIES
+ 
+-dnl noinst_PROGRAMS = unittest
++# noinst_PROGRAMS = unittest
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
diff --git a/gnu/packages/patches/pinball-src-deps.patch 
b/gnu/packages/patches/pinball-src-deps.patch
new file mode 100644
index 0000000..3ab806b
--- /dev/null
+++ b/gnu/packages/patches/pinball-src-deps.patch
@@ -0,0 +1,24 @@
+Fixes error during make:
+
+"No rule to make target '../src/libemilia_pin.a', needed by 'pinball'.  Stop."
+
+--- pinball-0.3.1/src/Makefile.in      2003-12-10 05:34:47.000000000 -0600
++++ pinball-0.3.1/src/Makefile.in      2016-01-31 22:29:13.134519889 -0600
+@@ -116,7 +116,7 @@
+ 
+ INCLUDES = -I../base -I../addon @INCLTDL@
+ 
+-pinball_LDADD = ../src/libemilia_pin.a ../addon/libemilia_addon.a 
../base/libemilia_base.a @LIBLTDL@
++pinball_LDADD = libemilia_pin.a ../addon/libemilia_addon.a 
../base/libemilia_base.a @LIBLTDL@
+ pinball_LDFLAGS = -export-dynamic
+ 
+ pinball_SOURCES = Pinball.cpp
+@@ -174,7 +174,7 @@
+ 
+ am_pinball_OBJECTS = Pinball.$(OBJEXT)
+ pinball_OBJECTS = $(am_pinball_OBJECTS)
+-pinball_DEPENDENCIES = ../src/libemilia_pin.a ../addon/libemilia_addon.a \
++pinball_DEPENDENCIES = libemilia_pin.a ../addon/libemilia_addon.a \
+       ../base/libemilia_base.a
+ 
+ DEFS = @DEFS@
diff --git a/gnu/packages/patches/pinball-system-ltdl.patch 
b/gnu/packages/patches/pinball-system-ltdl.patch
new file mode 100644
index 0000000..0495880
--- /dev/null
+++ b/gnu/packages/patches/pinball-system-ltdl.patch
@@ -0,0 +1,18 @@
+--- pinball-0.3.1/configure.ac 2010-01-14 17:26:25.000000000 +0100
++++ pinball-0.3.1/configure.ac 2010-01-14 17:26:25.000000000 +0100
+@@ -22,14 +22,12 @@
+ [  --with-cxxflags=CXXFLAGS        use CXXFLAGS as compile time arguments.],
+     [CXXFLAGS=$with_cxxflags; export CXXFLAGS])
+ 
+-AC_CONFIG_SUBDIRS(libltdl)
+-
+ dnl Checks for programs.
+ AC_PROG_CC
+ AC_PROG_CXX
+ AC_PROG_INSTALL
+ AC_LIBTOOL_DLOPEN
+-AC_LIBLTDL_CONVENIENCE
++LTDL_INIT
+ AC_PROG_LIBTOOL
+ 
+ AC_SUBST(INCLTDL)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]