summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk4
-rw-r--r--gnu/packages/games.scm38
-rw-r--r--gnu/packages/patches/pinball-const-fix.patch11
-rw-r--r--gnu/packages/patches/pinball-cstddef.patch38
-rw-r--r--gnu/packages/patches/pinball-missing-separators.patch101
-rw-r--r--gnu/packages/patches/pinball-src-deps.patch24
-rw-r--r--gnu/packages/patches/pinball-system-ltdl.patch24
7 files changed, 34 insertions, 206 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index dd68bb5957..20d37f3b11 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1542,10 +1542,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/picard-fix-id3-rename-test.patch		\
   %D%/packages/patches/picprog-non-intel-support.patch		\
   %D%/packages/patches/pidgin-add-search-path.patch		\
-  %D%/packages/patches/pinball-const-fix.patch			\
-  %D%/packages/patches/pinball-cstddef.patch			\
-  %D%/packages/patches/pinball-missing-separators.patch		\
-  %D%/packages/patches/pinball-src-deps.patch			\
   %D%/packages/patches/pinball-system-ltdl.patch		\
   %D%/packages/patches/pingus-boost-headers.patch		\
   %D%/packages/patches/pingus-sdl-libs-config.patch		\
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 6908d115f2..24e487a2b8 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -4688,34 +4688,48 @@ images, etc.)")
 (define-public pinball
   (package
     (name "pinball")
-    (version "0.3.1")
+    (version "0.3.20201218")
     (source
-     (origin (method url-fetch)
-             (uri (string-append "mirror://sourceforge/pinball/pinball/"
-                                 "pinball-" version "/"
-                                 "pinball-" version ".tar.gz"))
+     (origin (method git-fetch)
+             (uri (git-reference
+                   (url "https://github.com/adoptware/pinball")
+                   (commit version)))
+             (file-name (git-file-name name version))
              (sha256
               (base32
-               "1f2whlrfidwfh8lvr8cspcyirc6840r5d1ajm7x99qmngygrhixs"))
-             (patches (search-patches "pinball-const-fix.patch"
-                                      "pinball-cstddef.patch"
-                                      "pinball-missing-separators.patch"
-                                      "pinball-src-deps.patch"
-                                      "pinball-system-ltdl.patch"))))
+               "056jk98v6zlkrj9vjm06p0pmpnav1x658n6qw10v5klg5gr6ldf7"))
+             (patches (search-patches "pinball-system-ltdl.patch"))))
     (build-system gnu-build-system)
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("pkg-config" ,pkg-config)
+       ("libtool" ,libtool)))
     (inputs
      `(("glu" ,glu)
+       ("libltdl" ,libltdl)
        ("mesa" ,mesa)
        ("sdl" ,sdl)
        ("sdl-image" ,sdl-image)
        ("sdl-mixer" ,sdl-mixer)))
     (arguments
      '(#:configure-flags
+       ;; Configure tries to use pkg-config, but falls short, so:
        (list (string-append "CPPFLAGS=-I"
                             (assoc-ref %build-inputs "sdl-image")
                             "/include/SDL -I"
                             (assoc-ref %build-inputs "sdl-mixer")
-                            "/include/SDL"))))
+                            "/include/SDL"))
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'bootstrap
+           ;; The `bootstrap` script tries to call a script with
+           ;; `/usr/bin/make` in the shebang, but ultimately does the same as
+           ;; autoreconf would do, so just use that.
+           (lambda _
+             (symlink "README.md" "README")
+             (display (which "autoreconf")) (newline)
+             (invoke "autoreconf" "-vif"))))))
     (home-page "http://pinball.sourceforge.net")
     (synopsis "Pinball simulator")
     (description "The Emilia Pinball Project is a pinball simulator.  There
diff --git a/gnu/packages/patches/pinball-const-fix.patch b/gnu/packages/patches/pinball-const-fix.patch
deleted file mode 100644
index 6d7b75dd48..0000000000
--- a/gnu/packages/patches/pinball-const-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- 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
deleted file mode 100644
index e43a132d84..0000000000
--- a/gnu/packages/patches/pinball-cstddef.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Description: Add missing inlcudes of cstddef, fixing FTBFS13.1
-Author: Regis Boudin <regis@debian.org>
-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
deleted file mode 100644
index eb00314a3d..0000000000
--- a/gnu/packages/patches/pinball-missing-separators.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From: Markus Koschany <apo@gambaru.de>
-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
deleted file mode 100644
index 3ab806bae9..0000000000
--- a/gnu/packages/patches/pinball-src-deps.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-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
index 0495880940..fb45eee827 100644
--- a/gnu/packages/patches/pinball-system-ltdl.patch
+++ b/gnu/packages/patches/pinball-system-ltdl.patch
@@ -1,18 +1,10 @@
---- 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])
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,6 +1,6 @@
+ AUTOMAKE_OPTIONS = gnu
  
--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
+-SUBDIRS = libltdl addon base data src test
++SUBDIRS = addon base data src test
+ 
+ EXTRA_DIST = bootstrap pinball.spec clean pinball.desktop
  
- AC_SUBST(INCLTDL)