Differences between revisions 33 and 34
Revision 33 as of 2015-02-15 08:23:07
Size: 4890
Editor: PaulWise
Comment: use new --show-field option
Revision 34 as of 2015-05-13 17:22:37
Size: 4883
Deletions are marked like this. Additions are marked like this.
Line 54: Line 54:
sudo DIST=sid ARCH=amd64 cowbuilder --build ../mame_0.148-1.dsc sudo DIST=sid ARCH=amd64 cowbuilder --build ../mame*.dsc

Mame: Multiple Arcade Machine Emulator

alt debian game

This is a developer help page for the mame/mess package. See Mame and Mess for the user Readme.


Getting the packaging code

The development of the package is done on Alioth, inside the pkg-games group. To participate in the packaging work, create an account on alioth, and present yourself on the debian-devel-game mailing list (see Games/VCS)

Building a package

For Mame and Mess >= 0.144

Check out the code

#read only
git clone git://git.debian.org/git/pkg-games/mame.git 

#read write
git clone git+ssh://kdev-guest@git.debian.org/git/pkg-games/mame.git  

Replace here kdev-guest with your Alioth username.

Build a package

# get source code
cd mame
./debian/rules get-orig-source
mv *.xz ..

# get mame version
MAME_VERSION=$(dpkg-parsechangelog --show-field=Version | sed -e 's/^\(.*\)-.*/\1/')
cd ..

# untar
ln -s  mame mame-${MAME_VERSION}
tar hxaf mame_${MAME_VERSION}.orig.tar.xz
cd mame-${MAME_VERSION}

# for an end user
dpkg-buildpackage -us -uc

# for a package maintainer (provided the cowbuilder setup was done according to
# https://wiki.debian.org/cowbuilder#Building_your_package_for_many_distributions_at_once
dpkg-buildpackage -S -uc -us
sudo DIST=sid ARCH=amd64 cowbuilder --update
sudo DIST=sid ARCH=amd64 cowbuilder --build ../mame*.dsc
debsign /var/cache/pbuilder/sid-amd64/result/*.changes

Upgrade to new release

Increment changelog

dch --newversion 0.142-1 --distribution UNRELEASED "New upstream release"

Find new files

diff -qr mame-0.144/src mame-0.145/src | grep "Only in mame-0.144"
LANG=C; diff -qr mame-0.144/src mame-0.145/src | grep "Only in mame-0.145"

Building updated releases

Intermediate releases are marked with a letter "u" after the version number, followed by an ascending number (usually between 1 and 4) and are distributed as additional patches only. This means that you have to apply all subsequent patches in order, e.g. patch for 0.147u3 won't apply to 0.147 source tree, you must apply the patches for u1 and u2 first.

Download proper file(s) from http://mamedev.org/updates.html and apply them (note the --binary options, it correctly handles DOS-like line endings)

patch --binary -p0 -E <diffname.diff


  • no done: Add screenshot from mame with Galeco Rally or Mame initial start screen (screenshots.debian.net refuse screenshots from non-free packages)
  • Solve broken upgrade from xmame-x with apt-get
  • Document what has changed since xmame-x package version 0.106
  • Update VCS address to alioth in control file
  • Notify upstream about typo (lintian -I -i warning)cf http://www.mametesters.org/view.php?id=4227. Upstream fixed it !

  • nodone: Test Mame in Xephyr: useless, as Mame has a -window option to start in non-full screen mode
  • Remove useless mame-tools binaries: http://forums.bannister.org/ubbthreads.php?ubb=showflat&Main=6493&Number=66395#Post66395

  • Check if front ends gmameui and kamefu are working with mame / xmame : kamefu has been removed from the archive, and gmameui is broken cf bug report #610483

Current status is:  manu@leonard:~$ ldd /usr/games/mame | wc -l 59  for mame-tools jumped down from 59 to 22

  • Verify of created directories are properly removed when removing the package: OK
  • Look about packaging Gnome Video Arcade which looks like the sanest of the plethora of Mame front ends RFP BUG: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=617437

    • Change maintainer to Debian Games Team, move Ludo to uploaders
    • as of 22/03/2010 Mame FTBS from source because of gcc-4.5

make[2]: *** [obj/sdl/mame/libocore.a] Error 1
make[2]: *** Waiting for unfinished jobs....
gcc: error trying to exec 'x86_64-linux-gnu-gcc-4.4': execvp: No such file or directory
gcc: error trying to exec 'x86_64-linux-gnu-gcc-4.4': execvp: No such file or directory

fixed in http://git.debian.org/?p=pkg-games/mame.git;a=commitdiff;h=4a75e1a9ddf15eba63353b99d06c316eb9635735

  • Remove Windows.txt from mame -help and package
  • Notify Ubuntu about our package
  • Upload a source package to mentors
  • Post debian build logs to mame forums
  • send screenshot of gnome video arcade to screenshots.debian.org