Files
haikuports/games-emulation/picodrive_libretro/picodrive_libretro-1.92_20251203.recipe
2026-02-10 07:45:36 +01:00

99 lines
3.7 KiB
Bash

SUMMARY="A port of PicoDrive, a Sega 16bit emulator to the libretro API"
DESCRIPTION="PicoDrive is a Megadrive / Genesis / Sega CD / Mega CD / 32X \
emulator, focusing on performance."
HOMEPAGE="http://notaz.gp2x.de/pico.php"
COPYRIGHT="2005-2018 notaz, the libretro team"
LICENSE="GNU LGPL v2.1"
REVISION="1"
srcGitRev="3365b1774bc8680be9899968fe45b224ad2f11c1"
SOURCE_URI="https://github.com/libretro/picodrive/archive/$srcGitRev.tar.gz"
CHECKSUM_SHA256="75b17504a851f7fed0af595c062fd92c8fd14a5d9169fd63e2ae2824665cb02e"
SOURCE_FILENAME="libretro-picodrive-${portVersion/_/-}-$srcGitRev.tar.gz"
SOURCE_DIR="picodrive-$srcGitRev"
srcGitRev_2="3ac7cf1bdeecb60e2414980e8dc72ff092f69769"
SOURCE_URI_2="https://github.com/notaz/cyclone68000/archive/$srcGitRev_2.tar.gz"
CHECKSUM_SHA256_2="e570e121721441c1bf8015a8bce8614b73954e2344b983b3650e591952f74a6c"
SOURCE_FILENAME_2="cyclone68000-$srcGitRev_2.tar.gz"
SOURCE_DIR_2="cyclone68000-$srcGitRev_2"
srcGitRev_3="e62ac5995b1c7ef65ece35293914843b8ee57d49"
SOURCE_URI_3="https://github.com/irixxxx/libchdr-picodrive/archive/$srcGitRev_3.tar.gz"
CHECKSUM_SHA256_3="59b99005d3d6317a0d1e45e1c4abf0e551070dbf32c8fdc66ed5b4ae6d8ea702"
SOURCE_FILENAME_3="libchdr-picodrive-$srcGitRev_3.tar.gz"
SOURCE_DIR_3="libchdr-$srcGitRev_3"
srcGitRev_4="813cff619f5f01c47bd5c0588c1fd8435530b125"
SOURCE_URI_4="https://github.com/digital-sound-antiques/emu2413/archive/$srcGitRev_4.tar.gz"
CHECKSUM_SHA256_4="45fe278ead8292db677847d48ec70cfeb3498f9a4f8d14c4c6fca6bb02854a9e"
SOURCE_FILENAME_4="emu2413-$srcGitRev_4.tar.gz"
SOURCE_DIR_4="emu2413-$srcGitRev_4"
srcGitRev_5="dd11f2d723162eb1cf8e6db9f40de7db0d0b6bba"
SOURCE_URI_5="https://github.com/irixxxx/libpicofe/archive/$srcGitRev_5.tar.gz"
CHECKSUM_SHA256_5="fb1cc18d24d7b6ea2cd091ff355744a634bfe93e9566bde48ea6a0f7c8b82bea"
SOURCE_FILENAME_5="libpicofe-$srcGitRev_5.tar.gz"
SOURCE_DIR_5="libpicofe-$srcGitRev_5"
srcGitRev_6="5690d4671d7ad07ae6021756d7222eb159745f06"
SOURCE_URI_6="https://github.com/mackron/dr_libs/archive/$srcGitRev_6.tar.gz"
CHECKSUM_SHA256_6="96115bda02a1947e97acff3568863b76f8661b4744507aac4d2817d53bf3d380"
SOURCE_FILENAME_6="dr_libs-$srcGitRev_6.tar.gz"
SOURCE_DIR_6="dr_libs-$srcGitRev_6"
srcGitRev_7="afb604c06bc8beb145fecd42c0ceb5bda8795144"
SOURCE_URI_7="https://github.com/lieff/minimp3/archive/$srcGitRev_7.tar.gz"
CHECKSUM_SHA256_7="21672c32aaac29cf4b7e6f8e0154767080ae87faa79c682498453e5a9bc5e0d3"
SOURCE_FILENAME_7="minimp3-$srcGitRev_7.tar.gz"
SOURCE_DIR_7="minimp3-$srcGitRev_7"
ADDITIONAL_FILES="picodrive_libretro.info.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
picodrive_libretro$secondaryArchSuffix = $portVersion
addon:picodrive_libretro$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
retroarch$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:awk
cmd:find
"
BUILD()
{
sed -e "s/@DISPLAY_VERSION@/v${portVersion/_/-}/" \
$portDir/additional-files/picodrive_libretro.info.in \
> picodrive_libretro.info
# Remove directories from submodules and copy them
rm -rf cpu/cyclone
cp -r $sourceDir2 cpu/cyclone
rm -rf pico/cd/libchdr
cp -r $sourceDir3 pico/cd/libchdr
rm -rf pico/sound/emu2413
cp -r $sourceDir4 pico/sound/emu2413
rm -rf platform/libpicofe
cp -r $sourceDir5 platform/libpicofe
rm -rf platform/common/dr_libs
cp -r $sourceDir6 platform/common/dr_libs
rm -rf platform/common/minimp3
cp -r $sourceDir7 platform/common/minimp3
# Build the core
make -f Makefile.libretro $jobArgs
}
INSTALL()
{
install -m 0755 -d "$docDir"
install -m 0644 -t "$docDir" AUTHORS COPYING README.md
install -m 0755 -d "$addOnsDir"/libretro
install -m 0644 -t "$addOnsDir"/libretro \
picodrive_libretro.info \
picodrive_libretro.so
}