diff --git a/media-libs/game-music-emu/game_music_emu-0.6.0.recipe b/media-libs/game-music-emu/game_music_emu-0.6.0.recipe new file mode 100644 index 000000000..da535dd47 --- /dev/null +++ b/media-libs/game-music-emu/game_music_emu-0.6.0.recipe @@ -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 +} diff --git a/media-libs/game-music-emu/patches/game_music_emu-0.6.0.patchset b/media-libs/game-music-emu/patches/game_music_emu-0.6.0.patchset new file mode 100644 index 000000000..1e13c0a4e --- /dev/null +++ b/media-libs/game-music-emu/patches/game_music_emu-0.6.0.patchset @@ -0,0 +1,121 @@ +From b7fbbe655bd255a8af2195e6bb1a2cd47c75c6d8 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +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 +