add game_music_emu library.

This commit is contained in:
Adrien Destugues
2016-03-28 11:12:46 +02:00
parent 56a7c92562
commit 37df5d948f
2 changed files with 196 additions and 0 deletions

View File

@@ -0,0 +1,75 @@
SUMMARY="Collection of video game music file emulators"
DESCRIPTION="Game_Music_Emu is a collection of video game music file emulators that
support the following formats and systems:
- AY ZX Spectrum/Amstrad CPC
- GBS Nintendo Game Boy
- GYM Sega Genesis/Mega Drive
- HES NEC TurboGrafx-16/PC Engine
- KSS MSX Home Computer/other Z80 systems (doesn't support FM sound)
- NSF/NSFE Nintendo NES/Famicom (with VRC 6, Namco 106, and FME-7 sound)
- SAP Atari systems using POKEY sound chip
- SPC Super Nintendo/Super Famicom
- VGM/VGZ Sega Master System/Mark III, Sega Genesis/Mega Drive,BBC Micro"
HOMEPAGE="https://bitbucket.org/mpyne/game-music-emu"
COPYRIGHT="2002 Stephane Dallongeville
2003-2009 Shay Green"
LICENSE="GNU LGPL v2.1"
SOURCE_URI="https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-0.6.0.tar.bz2"
CHECKSUM_SHA256="506e81d0c61e1a26d503fbf5351503e0b31f9fbb374cb1f09979758b46a24987"
SOURCE_DIR="game-music-emu-$portVersion"
PATCHES="game_music_emu-$portVersion.patchset"
REVISION="1"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
game_music_emu$secondaryArchSuffix = $portVersion
lib:libgme$secondaryArchSuffix = 0.6.0 compat >= 0
"
REQUIRES="
haiku$secondaryArchSuffix
"
PROVIDES_devel="
game_music_emu${secondaryArchSuffix}_devel = $portVersion
devel:libgme$secondaryArchSuffix = 0.6.0 compat >= 0
"
REQUIRES_devel="
haiku${secondaryArchSuffix}_devel
game_music_emu$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:make
cmd:gcc$secondaryArchSuffix
"
BUILD()
{
mkdir -p build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$prefix
make $jobArgs
}
INSTALL()
{
cd build
make install
# Fixup install paths
mkdir -p $developDir
mv $prefix/include $includeDir
prepareInstalledDevelLib libgme
fixPkgconfig
packageEntries devel \
$developDir
}

View File

@@ -0,0 +1,121 @@
From b7fbbe655bd255a8af2195e6bb1a2cd47c75c6d8 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Mon, 28 Mar 2016 10:51:20 +0200
Subject: gcc2 compatibility.
diff --git a/gme/Gbs_Emu.h b/gme/Gbs_Emu.h
index b233a2b..a256484 100644
--- a/gme/Gbs_Emu.h
+++ b/gme/Gbs_Emu.h
@@ -41,7 +41,11 @@ public:
public:
// deprecated
+#if __GNUC__ <= 2
+ blargg_err_t load(Data_Reader& in) {return Music_Emu::load(in);}
+#else
using Music_Emu::load;
+#endif
blargg_err_t load( header_t const& h, Data_Reader& in ) // use Remaining_Reader
{ return load_remaining_( &h, sizeof h, in ); }
diff --git a/gme/Gym_Emu.h b/gme/Gym_Emu.h
index 1e4ed8b..5ec12f0 100644
--- a/gme/Gym_Emu.h
+++ b/gme/Gym_Emu.h
@@ -34,7 +34,11 @@ public:
public:
// deprecated
+#if __GNUC__ <= 2
+ blargg_err_t load(Data_Reader& in) {return Music_Emu::load(in);}
+#else
using Music_Emu::load;
+#endif
blargg_err_t load( header_t const& h, Data_Reader& in ) // use Remaining_Reader
{ return load_remaining_( &h, sizeof h, in ); }
enum { gym_rate = 60 };
diff --git a/gme/Music_Emu.h b/gme/Music_Emu.h
index b96f4b6..b21a83a 100644
--- a/gme/Music_Emu.h
+++ b/gme/Music_Emu.h
@@ -58,7 +58,11 @@ public:
void ignore_silence( bool disable = true );
// Info for current track
+#if __GNUC__ <= 2
+ blargg_err_t track_info( track_info_t* out, int t ) const {return Gme_File::track_info(out,t);}
+#else
using Gme_File::track_info;
+#endif
blargg_err_t track_info( track_info_t* out ) const;
// Sound customization
diff --git a/gme/Nsf_Emu.h b/gme/Nsf_Emu.h
index 0b00168..1617217 100644
--- a/gme/Nsf_Emu.h
+++ b/gme/Nsf_Emu.h
@@ -44,7 +44,11 @@ public:
public:
// deprecated
+#if __GNUC__ <= 2
+ blargg_err_t load(Data_Reader& in) {return Music_Emu::load(in);}
+#else
using Music_Emu::load;
+#endif
blargg_err_t load( header_t const& h, Data_Reader& in ) // use Remaining_Reader
{ return load_remaining_( &h, sizeof h, in ); }
diff --git a/gme/Nsfe_Emu.h b/gme/Nsfe_Emu.h
index 32b05d5..ea1e975 100644
--- a/gme/Nsfe_Emu.h
+++ b/gme/Nsfe_Emu.h
@@ -46,7 +46,11 @@ public:
public:
// deprecated
struct header_t { char tag [4]; };
+#if __GNUC__ <= 2
+ blargg_err_t load(Data_Reader& in) {return Music_Emu::load(in);}
+#else
using Music_Emu::load;
+#endif
blargg_err_t load( header_t const& h, Data_Reader& in ) // use Remaining_Reader
{ return load_remaining_( &h, sizeof h, in ); }
void disable_playlist( bool = true ); // use clear_playlist()
diff --git a/gme/Spc_Emu.h b/gme/Spc_Emu.h
index 09063f1..d5391e3 100644
--- a/gme/Spc_Emu.h
+++ b/gme/Spc_Emu.h
@@ -48,7 +48,11 @@ public:
public:
// deprecated
+#if __GNUC__ <= 2
+ blargg_err_t load(Data_Reader& in) {return Music_Emu::load(in);}
+#else
using Music_Emu::load;
+#endif
blargg_err_t load( header_t const& h, Data_Reader& in ) // use Remaining_Reader
{ return load_remaining_( &h, sizeof h, in ); }
byte const* trailer() const; // use track_info()
diff --git a/gme/Vgm_Emu.h b/gme/Vgm_Emu.h
index 65895af..d2d0e02 100644
--- a/gme/Vgm_Emu.h
+++ b/gme/Vgm_Emu.h
@@ -51,7 +51,11 @@ public:
public:
// deprecated
+#if __GNUC__ <= 2
+ blargg_err_t load(Data_Reader& in) {return Music_Emu::load(in);}
+#else
using Music_Emu::load;
+#endif
blargg_err_t load( header_t const& h, Data_Reader& in ) // use Remaining_Reader
{ return load_remaining_( &h, sizeof h, in ); }
byte const* gd3_data( int* size_out = 0 ) const; // use track_info()
--
2.7.0