[SCM] packaging for the mame arcade game emulator branch, master, updated. efa05621713a8c15dca59ba4875b961efa9e70e9

Jordi Mallach jordi at debian.org
Thu May 12 19:06:09 UTC 2011


The following commit has been merged in the master branch:
commit efa05621713a8c15dca59ba4875b961efa9e70e9
Author: Jordi Mallach <jordi at debian.org>
Date:   Thu May 12 21:05:21 2011 +0200

    Introduce a MESS package, via a dpkg source package extra component.
    
    * Add a new mess binary package and transitional packages for xmess-*
      (closes: #507932).
    * Setup the source dir to enable building mess even if its source is in
      a mess subdir, by creating necessary symlinks and directory renames
      before the build, and restoring everything on clean.

diff --git a/debian/changelog b/debian/changelog
index b401d3d..e90a66b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,17 @@
 mame (0.142-2) UNRELEASED; urgency=low
 
-  * Restrict Architectures to those known to not fail due to memory
-    alignment issues: amd64, i386, kfreebsd-amd64, kfreebsd-i386, powerpc,
-    s390.
-  * Add variables in an attempt to fix s390 builds.
+  * Restrict Architectures to those known to not fail to build due to
+    memory alignment issues: amd64, i386, kfreebsd-amd64, kfreebsd-i386,
+    powerpc, s390.
+  * Add the necessary variables to fix s390 builds (it's big endian and
+    has no targetted DRC implementation).
   * Modify get-orig-source to also fetch MESS sources and build a new
     dpkg source component tarball.
+  * Add a new mess binary package and transitional packages for xmess-*
+    (closes: #507932). 
+  * Setup the source dir to enable building mess even if its source is in
+    a mess subdir, by creating necessary symlinks and directory renames
+    before the build, and restoring everything on clean.
 
  -- Jordi Mallach <jordi at debian.org>  Thu, 12 May 2011 16:37:27 +0200
 
diff --git a/debian/control b/debian/control
index d98d384..8dd5294 100644
--- a/debian/control
+++ b/debian/control
@@ -19,8 +19,8 @@ Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Suggests: mame-tools, gnome-video-arcade
 Provides: xmame-common, xmame-sdl, xmame-svga, xmame-x
-Replaces: xmame-common (<< 0.140-1), xmame-sdl (<< 0.140-1), xmame-svga (<< 0.140-1), xmame-x (<< 0.140-1)
-Breaks: xmame-common (<< 0.140-1), xmame-sdl (<< 0.140-1), xmame-svga (<< 0.140-1), xmame-x (<< 0.140-1)
+Replaces: xmame-common (<< 0.140), xmame-sdl (<< 0.140), xmame-svga (<< 0.140), xmame-x (<< 0.140)
+Breaks: xmame-common (<< 0.140), xmame-sdl (<< 0.140), xmame-svga (<< 0.140), xmame-x (<< 0.140)
 Description: Multiple Arcade Machine Emulator (MAME)
  MAME is a hardware emulator: it faithfully reproduces the behavior of many
  arcade machines (it is not a simulation). This program is not a game but can
@@ -35,7 +35,7 @@ Section: non-free/utils
 Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Recommends: mame (= ${source:Version})
-Breaks: xmame-tools (<< 0.140-1)
+Breaks: xmame-tools (<< 0.140)
 Description: Tools for Multiple Arcade Machine Emulator (MAME)
  MAME is a hardware emulator: it faithfully reproduces the behavior of many
  arcade machines (it is not a simulation). This program is not a game but can
@@ -52,6 +52,26 @@ Description: Tools for Multiple Arcade Machine Emulator (MAME)
   - testkeys (Keyboard code viewer)
   - unidasm (Generic MAME disassembler)
 
+Package: mess
+Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: mess-desktop-entries
+Suggests: mame-tools
+Provides: xmess-common, xmess-sdl, xmess-x
+Replaces: xmess-common (<< 0.142), xmess-sdl (<< 0.142), xmess-x (<< 0.142)
+Breaks: xmess-common (<< 0.142), xmess-sdl (<< 0.142), xmess-x (<< 0.142)
+Description: Multi Emulator Super System (MESS)
+ MESS is an emulator for various consoles and computing systems, sharing a
+ lot of codebase with the MAME project.
+ .
+ Some of the well known consoles and computers emulated are the Atari 2600,
+ Lynx, NES, SNES, Nintendo 64, GameBoy, Sega Master System, Sega Megadrive,
+ Game Gear, Colecovision, Vectrex, Apple II, Atari 400/800, Commodore 64/128,
+ IBM PC XT and AT (MDA and CGA), ZX80, ZX Spectrum, TI99/4, TRS-80, and the
+ MSX.
+ .
+ This package provides the MESS binary and configuration files.
+
 Package: xmame-sdl
 Depends: mame, ${misc:Depends}
 Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
@@ -79,3 +99,17 @@ Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
 Description: Transitional package for mame-tools
  This is a transitional package for mame-tools, and can be safely removed
  after the installation is complete.
+
+Package: xmess-sdl
+Depends: mess, ${misc:Depends}
+Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
+Description: Transitional package for xmess-sdl
+ This is a transitional package for xmess-sdl, and can be safely removed
+ after the installation is complete.
+
+Package: xmess-x
+Depends: mess, ${misc:Depends}
+Architecture: amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc s390
+Description: Transitional package for xmess-x
+ This is a transitional package for xmess-x, and can be safely removed
+ after the installation is complete.
diff --git a/debian/mame-tools.install b/debian/mame-tools.install
index c7991bb..f1b8b97 100644
--- a/debian/mame-tools.install
+++ b/debian/mame-tools.install
@@ -5,3 +5,4 @@ ldverify    usr/bin/
 romcmp      usr/bin/
 testkeys    usr/bin/
 unidasm     usr/bin/
+#FIXME# Add MESS tools here
diff --git a/debian/mame.install b/debian/mame.install
index 6e93736..ef769b7 100644
--- a/debian/mame.install
+++ b/debian/mame.install
@@ -7,4 +7,4 @@ debian/install/mame.desktop	usr/share/applications
 
 debian/mame.ini			etc/mame
 
-hash/*	usr/share/games/mame/hash
+hash.mame/*	usr/share/games/mame/hash
diff --git a/debian/mess.install b/debian/mess.install
new file mode 100644
index 0000000..e0e87fb
--- /dev/null
+++ b/debian/mess.install
@@ -0,0 +1,12 @@
+#FIXME# I have no idea of what we need here
+mess				usr/games
+
+#FIXMEsrc/osd/sdl/keymaps		usr/share/games/mame
+
+#FIXMEdebian/install/mame.xpm		usr/share/pixmaps
+#FIXMEdebian/install/mame.desktop	usr/share/applications
+
+#FIXMEdebian/mess.ini			etc/mame
+
+mess/artwork			usr/share/games/mess/artwork
+mess/hash/*			usr/share/games/mess/hash
diff --git a/debian/rules b/debian/rules
index edc6ff9..b8a8450 100755
--- a/debian/rules
+++ b/debian/rules
@@ -99,6 +99,14 @@ endif
 	dh $@
 
 override_dh_auto_build:
+	# MESS is an overlay of the MAME source code, but we need to have
+	# the code in a mess directory, as that's how dpkg components
+	# work. Move dirs and create symlinks for MESS stuff outside its
+	# component directory to enable its build.
+	mv hash hash.mame
+	ln -s ../../hash.mame/megatech.xml mess/hash/
+	ln -s mess/artwork artwork
+	ln -s ../mess/src/mess src/mess
 	$(MAKE) -j3 $(DEB_MAME_OPTS) all
 	$(CURDIR)/mame -createconfig
 	mv mame.ini default.mame.ini
@@ -108,6 +116,7 @@ override_dh_auto_build:
 override_dh_auto_install:
 	dh_auto_install
 	dh_installchangelogs whatsnew.txt
+	dh_installchangelogs -pmess -pmess-tools mess/docs/messnew.txt
 
 # Remove Windows specific documentation
 override_dh_installdocs:
@@ -117,6 +126,9 @@ override_dh_installdocs:
 
 clean:
 	$(MAKE) $(DEB_MAME_OPTS) clean
+	# Undo MESS modifications. This could be a bit more robust.
+	-rm artwork hash src/mess mess/hash/megatech.xml
+	-mv hash.mame hash
 
 # Convert upstream sources from zip to tar.bz2
 VERSION := $(shell dpkg-parsechangelog | sed -ne 's/^Version: \(.*\)-.*/\1/p')

-- 
packaging for the mame arcade game emulator



More information about the Pkg-games-commits mailing list