Merge pull request #209 from iKarith/master

Stage 1 of building with core-rules (please test)
This commit is contained in:
Twinaphex 2015-02-27 12:58:37 +11:00
commit b05fe5d68e
3 changed files with 399 additions and 245 deletions

View File

@ -1,110 +1,150 @@
# vim: set ts=3 sw=3 noet ft=sh : bash # vim: set ts=3 sw=3 noet ft=sh : bash
libretro_bsnes_fetch_url="https://github.com/libretro/bsnes-libretro.git" libretro_bsnes_fetch_url="https://github.com/libretro/bsnes-libretro.git"
libretro_bsnes_name="bsnes/higan" libretro_bsnes_name="bsnes/higan"
libretro_snes9x_fetch_url="https://github.com/libretro/snes9x.git" libretro_snes9x_fetch_url="https://github.com/libretro/snes9x.git"
libretro_snes9x_name="SNES9x" libretro_snes9x_name="SNES9x"
libretro_snes9x_build_subdir="libretro"
libretro_snes9x_next_fetch_url="https://github.com/libretro/snes9x-next.git" libretro_snes9x_next_fetch_url="https://github.com/libretro/snes9x-next.git"
libretro_snes9x_next_name="SNES9x Next" libretro_snes9x_next_name="SNES9x Next"
libretro_snes9x_next_build_makefile="Makefile.libretro"
libretro_snes9x_next_build_platform="$FORMAT_COMPILER_TARGET_ALT"
libretro_genesis_plus_gx_fetch_url="https://github.com/libretro/Genesis-Plus-GX.git" libretro_genesis_plus_gx_fetch_url="https://github.com/libretro/Genesis-Plus-GX.git"
libretro_genesis_plus_gx_name="Genesis Plus GX" libretro_genesis_plus_gx_name="Genesis Plus GX"
libretro_genesis_plus_gx_build_makefile="Makefile.libretro"
libretro_fb_alpha_fetch_url="https://github.com/libretro/fba-libretro.git" libretro_fb_alpha_fetch_url="https://github.com/libretro/fba-libretro.git"
libretro_fb_alpha_name="Final Burn Alpha" libretro_fb_alpha_name="Final Burn Alpha"
libretro_fb_alpha_build_subdir="svn-current/trunk"
libretro_fb_alpha_build_makefile="makefile.libretro"
libretro_vba_next_fetch_url="https://github.com/libretro/vba-next.git" libretro_vba_next_fetch_url="https://github.com/libretro/vba-next.git"
libretro_vba_next_name="VBA Next" libretro_vba_next_name="VBA Next"
libretro_vba_next_build_makefile="Makefile.libretro"
libretro_vba_next_build_platform="$FORMAT_COMPILER_TARGET_ALT"
libretro_vbam_fetch_url="https://github.com/libretro/vbam-libretro.git" libretro_vbam_fetch_url="https://github.com/libretro/vbam-libretro.git"
libretro_vbam_name="VBA-M" libretro_vbam_name="VBA-M"
libretro_vbam_build_subdir="src/libretro"
libretro_vbam_build_makefile="Makefile"
libretro_vbam_build_platform="$FORMAT_COMPILER_TARGET_ALT"
libretro_handy_fetch_url="https://github.com/libretro/libretro-handy.git" libretro_handy_fetch_url="https://github.com/libretro/libretro-handy.git"
libretro_handy_name="Handy" libretro_handy_name="Handy"
# IMPLICIT
libretro_bnes_fetch_url="https://github.com/libretro/bnes-libretro.git" libretro_bnes_fetch_url="https://github.com/libretro/bnes-libretro.git"
libretro_bnes_name="bnes/higan" libretro_bnes_name="bnes/higan"
libretro_fceumm_fetch_url="https://github.com/libretro/libretro-fceumm.git" libretro_fceumm_fetch_url="https://github.com/libretro/libretro-fceumm.git"
libretro_fceumm_name="FCEUmm" libretro_fceumm_name="FCEUmm"
libretro_fceumm_build_makefile="Makefile.libretro"
libretro_gambatte_fetch_url="https://github.com/libretro/gambatte-libretro.git" libretro_gambatte_fetch_url="https://github.com/libretro/gambatte-libretro.git"
libretro_gambatte_name="Gambatte" libretro_gambatte_name="Gambatte"
libretro_gambatte_build_subdir="libgambatte"
libretro_gambatte_build_makefile="Makefile.libretro"
libretro_gambatte_build_platform="$FORMAT_COMPILER_TARGET_ALT"
libretro_meteor_fetch_url="https://github.com/libretro/meteor-libretro.git" libretro_meteor_fetch_url="https://github.com/libretro/meteor-libretro.git"
libretro_meteor_name="Meteor" libretro_meteor_name="Meteor"
libretro_meteor_build_subdir="libretro"
libretro_nxengine_fetch_url="https://github.com/libretro/nxengine-libretro.git" libretro_nxengine_fetch_url="https://github.com/libretro/nxengine-libretro.git"
libretro_nxengine_name="NXEngine" libretro_nxengine_name="NXEngine"
# IMPLICIT
libretro_prboom_fetch_url="https://github.com/libretro/libretro-prboom.git" libretro_prboom_fetch_url="https://github.com/libretro/libretro-prboom.git"
libretro_prboom_name="PrBoom" libretro_prboom_name="PrBoom"
libretro_prboom_build_platform="$FORMAT_COMPILER_TARGET_ALT"
libretro_stella_fetch_url="https://github.com/libretro/stella-libretro.git" libretro_stella_fetch_url="https://github.com/libretro/stella-libretro.git"
libretro_stella_name="Stella" libretro_stella_name="Stella"
# IMPLICIT
libretro_desmume_fetch_url="https://github.com/libretro/desmume.git" libretro_desmume_fetch_url="https://github.com/libretro/desmume.git"
libretro_desmume_name="DeSmuME" libretro_desmume_name="DeSmuME"
libretro_desmume_build_subdir="desmume"
libretro_desmume_build_makefile="Makefile.libretro"
libretro_quicknes_fetch_url="https://github.com/libretro/QuickNES_Core.git" libretro_quicknes_fetch_url="https://github.com/libretro/QuickNES_Core.git"
libretro_quicknes_name="QuickNES" libretro_quicknes_name="QuickNES"
libretro_quicknes_build_subdir="libretro"
libretro_nestopia_fetch_url="https://github.com/libretro/nestopia.git" libretro_nestopia_fetch_url="https://github.com/libretro/nestopia.git"
libretro_nestopia_name="Nestopia" libretro_nestopia_name="Nestopia"
libretro_nestopia_build_subdir="libretro"
libretro_tyrquake_fetch_url="https://github.com/libretro/tyrquake.git" libretro_tyrquake_fetch_url="https://github.com/libretro/tyrquake.git"
libretro_tyrquake_name="TyrQuake" libretro_tyrquake_name="TyrQuake"
libretro_tyrquake_build_makefile="Makefile.libretro"
libretro_pcsx_rearmed_fetch_url="https://github.com/libretro/pcsx_rearmed.git" libretro_pcsx_rearmed_fetch_url="https://github.com/libretro/pcsx_rearmed.git"
libretro_pcsx_rearmed_name="PCSX ReARMed" libretro_pcsx_rearmed_name="PCSX ReARMed"
libretro_pcsx_rearmed_build_makefile="Makefile.libretro"
libretro_mednafen_gba_fetch_url="https://github.com/libretro/beetle-gba-libretro.git" libretro_mednafen_gba_fetch_url="https://github.com/libretro/beetle-gba-libretro.git"
libretro_mednafen_gba_name="Mednafen/Beetle GBA" libretro_mednafen_gba_name="Mednafen/Beetle GBA"
# IMPLICIT
libretro_mednafen_lynx_fetch_url="https://github.com/libretro/beetle-lynx-libretro.git" libretro_mednafen_lynx_fetch_url="https://github.com/libretro/beetle-lynx-libretro.git"
libretro_mednafen_lynx_name="Mednafen/Beetle Lynx" libretro_mednafen_lynx_name="Mednafen/Beetle Lynx"
# IMPLICIT
libretro_mednafen_ngp_fetch_url="https://github.com/libretro/beetle-ngp-libretro.git" libretro_mednafen_ngp_fetch_url="https://github.com/libretro/beetle-ngp-libretro.git"
libretro_mednafen_ngp_name="Mednafen/Beetle NeoPop" libretro_mednafen_ngp_name="Mednafen/Beetle NeoPop"
# IMPLICIT
libretro_mednafen_pce_fast_fetch_url="https://github.com/libretro/beetle-pce-fast-libretro.git" libretro_mednafen_pce_fast_fetch_url="https://github.com/libretro/beetle-pce-fast-libretro.git"
libretro_mednafen_pce_fast_name="Mednafen/Beetle PCE FAST" libretro_mednafen_pce_fast_name="Mednafen/Beetle PCE FAST"
# IMPLICIT
libretro_mednafen_supergrafx_fetch_url="https://github.com/libretro/beetle-supergrafx-libretro.git" libretro_mednafen_supergrafx_fetch_url="https://github.com/libretro/beetle-supergrafx-libretro.git"
libretro_mednafen_supergrafx_name="Mednafen/Beetle SuperGrafx" libretro_mednafen_supergrafx_name="Mednafen/Beetle SuperGrafx"
# IMPLICIT
libretro_mednafen_psx_fetch_url="https://github.com/libretro/mednafen-psx-libretro.git" libretro_mednafen_psx_fetch_url="https://github.com/libretro/mednafen-psx-libretro.git"
libretro_mednafen_psx_name="Mednafen PSX" libretro_mednafen_psx_name="Mednafen PSX"
# IMPLICIT
libretro_mednafen_pcfx_fetch_url="https://github.com/libretro/beetle-pcfx-libretro.git" libretro_mednafen_pcfx_fetch_url="https://github.com/libretro/beetle-pcfx-libretro.git"
libretro_mednafen_pcfx_name="Mednafen/Beetle PC-FX" libretro_mednafen_pcfx_name="Mednafen/Beetle PC-FX"
# IMPLICIT
libretro_mednafen_snes_fetch_url="https://github.com/libretro/beetle-bsnes-libretro.git" libretro_mednafen_snes_fetch_url="https://github.com/libretro/beetle-bsnes-libretro.git"
libretro_mednafen_snes_name="Mednafen/Beetle bsnes" libretro_mednafen_snes_name="Mednafen/Beetle bsnes"
# IMPLICIT
libretro_mednafen_vb_fetch_url="https://github.com/libretro/beetle-vb-libretro.git" libretro_mednafen_vb_fetch_url="https://github.com/libretro/beetle-vb-libretro.git"
libretro_mednafen_vb_name="Mednafen/Beetle VB" libretro_mednafen_vb_name="Mednafen/Beetle VB"
# IMPLICIT
libretro_mednafen_wswan_fetch_url="https://github.com/libretro/beetle-wswan-libretro.git" libretro_mednafen_wswan_fetch_url="https://github.com/libretro/beetle-wswan-libretro.git"
libretro_mednafen_wswan_name="Mednafen/Beetle WonderSwan" libretro_mednafen_wswan_name="Mednafen/Beetle WonderSwan"
# IMPLICIT
libretro_scummvm_fetch_url="https://github.com/libretro/scummvm.git" libretro_scummvm_fetch_url="https://github.com/libretro/scummvm.git"
libretro_scummvm_name="ScummVM" libretro_scummvm_name="ScummVM"
libretro_scummvm_build_subdir="backends/platform/libretro/build"
libretro_yabause_fetch_url="https://github.com/libretro/yabause.git" libretro_yabause_fetch_url="https://github.com/libretro/yabause.git"
libretro_yabause_name="Yabause" libretro_yabause_name="Yabause"
libretro_yabause_build_subdir="libretro"
libretro_dosbox_fetch_url="https://github.com/libretro/dosbox-libretro.git" libretro_dosbox_fetch_url="https://github.com/libretro/dosbox-libretro.git"
libretro_dosbox_name="DOSBox" libretro_dosbox_name="DOSBox"
libretro_dosbox_makefile="Makefile.libretro"
libretro_virtualjaguar_fetch_url="https://github.com/libretro/virtualjaguar-libretro.git" libretro_virtualjaguar_fetch_url="https://github.com/libretro/virtualjaguar-libretro.git"
libretro_virtualjaguar_name="Virtual Jaguar" libretro_virtualjaguar_name="Virtual Jaguar"
# IMPLICIT
libretro_mame078_fetch_url="https://github.com/libretro/mame2003-libretro.git" libretro_mame078_fetch_url="https://github.com/libretro/mame2003-libretro.git"
libretro_mame078_name="MAME 2003 (0.78)" libretro_mame078_name="MAME 2003 (0.78)"
# IMPLICIT
libretro_mame139_fetch_url="https://github.com/libretro/mame2010-libretro.git" libretro_mame139_fetch_url="https://github.com/libretro/mame2010-libretro.git"
libretro_mame139_name="MAME 2010 (0.139)" libretro_mame139_name="MAME 2010 (0.139)"
@ -125,15 +165,18 @@ libretro_picodrive_fetch_url="https://github.com/libretro/picodrive.git"
libretro_picodrive_name="Picodrive" libretro_picodrive_name="Picodrive"
libretro_picodrive_git_submodules="1" libretro_picodrive_git_submodules="1"
libretro_picodrive_git_submodules_update="1" libretro_picodrive_git_submodules_update="1"
libretro_picodrive_build_makefile="Makefile.libretro"
libretro_tgbdual_fetch_url="https://github.com/libretro/tgbdual-libretro.git" libretro_tgbdual_fetch_url="https://github.com/libretro/tgbdual-libretro.git"
libretro_tgbdual_name="TGB Dual" libretro_tgbdual_name="TGB Dual"
# IMPLICIT
libretro_mupen64plus_fetch_url="https://github.com/libretro/mupen64plus-libretro.git" libretro_mupen64plus_fetch_url="https://github.com/libretro/mupen64plus-libretro.git"
libretro_mupen64plus_name="Mupen64Plus" libretro_mupen64plus_name="Mupen64Plus"
libretro_dinothawr_fetch_url="https://github.com/libretro/Dinothawr.git" libretro_dinothawr_fetch_url="https://github.com/libretro/Dinothawr.git"
libretro_dinothawr_name="Dinothawr" libretro_dinothawr_name="Dinothawr"
libretro_dinothawr_build_platform="$FORMAT_COMPILER_TARGET_ALT"
libretro_uae_fetch_url="https://github.com/libretro/libretro-uae.git" libretro_uae_fetch_url="https://github.com/libretro/libretro-uae.git"
libretro_uae_name="UAE" libretro_uae_name="UAE"
@ -146,13 +189,17 @@ libretro_remotejoy_name="RemoteJoy"
libretro_bluemsx_fetch_url="https://github.com/libretro/blueMSX-libretro.git" libretro_bluemsx_fetch_url="https://github.com/libretro/blueMSX-libretro.git"
libretro_bluemsx_name="blueMSX" libretro_bluemsx_name="blueMSX"
libretro_bluemsx_build_makefile="Makefile.libretro"
libretro_fmsx_fetch_url="https://github.com/libretro/fmsx-libretro.git" libretro_fmsx_fetch_url="https://github.com/libretro/fmsx-libretro.git"
libretro_fmsx_name="fMSX" libretro_fmsx_name="fMSX"
# IMPLICIT
libretro_2048_fetch_url="https://github.com/libretro/libretro-2048.git" libretro_2048_fetch_url="https://github.com/libretro/libretro-2048.git"
libretro_2048_build_makefile="Makefile.libretro"
libretro_vecx_fetch_url="https://github.com/libretro/libretro-vecx.git" libretro_vecx_fetch_url="https://github.com/libretro/libretro-vecx.git"
libretro_vecx_build_makefile="Makefile.libretro"
libretro_ppsspp_fetch_url="https://github.com/libretro/ppsspp.git" libretro_ppsspp_fetch_url="https://github.com/libretro/ppsspp.git"
libretro_ppsspp_name="PPSSPP" libretro_ppsspp_name="PPSSPP"
@ -161,32 +208,85 @@ libretro_ppsspp_git_submodules_update="1"
libretro_prosystem_fetch_url="https://github.com/libretro/prosystem-libretro.git" libretro_prosystem_fetch_url="https://github.com/libretro/prosystem-libretro.git"
libretro_prosystem_name="ProSystem" libretro_prosystem_name="ProSystem"
# IMPLICIT
libretro_o2em_fetch_url="https://github.com/libretro/libretro-o2em.git" libretro_o2em_fetch_url="https://github.com/libretro/libretro-o2em.git"
libretro_o2em_name="O2EM" libretro_o2em_name="O2EM"
# IMPLICIT
libretro_4do_fetch_url="https://github.com/libretro/4do-libretro.git" libretro_4do_fetch_url="https://github.com/libretro/4do-libretro.git"
libretro_4do_name="4DO" libretro_4do_name="4DO"
# IMPLICIT
libretro_catsfc_fetch_url="https://github.com/libretro/CATSFC-libretro.git" libretro_catsfc_fetch_url="https://github.com/libretro/CATSFC-libretro.git"
libretro_catsfc_name="CATSFC" libretro_catsfc_name="CATSFC"
# IMPLICIT
libretro_stonesoup_fetch_url="https://github.com/libretro/crawl-ref.git" libretro_stonesoup_fetch_url="https://github.com/libretro/crawl-ref.git"
libretro_stonesoup_name="Dungeon Crawl Stone Soup" libretro_stonesoup_name="Dungeon Crawl Stone Soup"
libretro_stonesoup_git_submodules="1" libretro_stonesoup_git_submodules="1"
libretro_stonesoup_build_subdir="crawl-ref"
libretro_stonesoup_build_makefile="Makefile.libretro"
libretro_hatari_fetch_url="https://github.com/libretro/hatari.git" libretro_hatari_fetch_url="https://github.com/libretro/hatari.git"
libretro_hatari_name="Hatari" libretro_hatari_name="Hatari"
libretro_hatari_build_makefile="Makefile.libretro"
libretro_tempgba_fetch_url="https://github.com/libretro/TempGBA-libretro.git" libretro_tempgba_fetch_url="https://github.com/libretro/TempGBA-libretro.git"
libretro_tempgba_name="TempGBA" libretro_tempgba_name="TempGBA"
libretro_gpsp_fetch_url="https://github.com/libretro/gpsp.git" libretro_gpsp_fetch_url="https://github.com/libretro/gpsp.git"
libretro_gpsp_name="gpSP" libretro_gpsp_name="gpSP"
# IMPLICIT
libretro_emux_fetch_url="https://github.com/libretro/emux.git" libretro_emux_fetch_url="https://github.com/libretro/emux.git"
libretro_emux_name="Emux" libretro_emux_name="Emux"
libretro_fuse_fetch_url="https://github.com/libretro/fuse-libretro.git" libretro_fuse_fetch_url="https://github.com/libretro/fuse-libretro.git"
libretro_fuse_name="Fuse" libretro_fuse_name="Fuse"
libretro_fuse_build_makefile="Makefile.libretro"
libretro_fuse_build_platform="$FORMAT_COMPILER_TARGET_ALT"
# CORE RULE VARIABLES
#
# All variables follow the format of libretro_<core>_<setting> where <core> is
# a unique identifier customarily consisting of the characters [_a-z0-9], but
# technically uppercase characters would also be legal here. The <setting> may
# be any of the following:
#
# name Pretty-printed name of the core
# Defaults to <core>
#
# dir Name of the core's directory
# Defaults to "libretro-<core>"
#
# fetch_rule Name of the core's fetch rule
# Always fetch_git for the time being
#
# fetch_url Source to fetch via git
# REQUIRED for fetch actions
#
# git_submodules Set if core has git submodules that must be fetched
#
# git_submodules_update
# Set if core has git submodules that require updating
#
# build_subdir Subdir containing the libretro makefile
# Leave unset if in top level of core
#
# build_makefile Name of makefile
# If unset, GNU make has rules for default makefile names
#
# build_platform Set to override the default platform
# (e.g., $FORMAT_COMPILER_TARGET_ALT)
#
# Example:
#
# libretro_dinothawr_fetch_url="https://github.com/libretro/Dinothawr.git"
# libretro_dinothawr_name="Dinothawr"
# libretro_dinothawr_build_platform="$FORMAT_COMPILER_TARGET_ALT"
#
# Since Dinothawr builds using defaults for everything else, you need only
# specify its URL and the platform override. Everything else the core rules
# fetch and build can use default values.

View File

@ -4,6 +4,8 @@
. "$BASE_DIR/script-modules/fetch-rules.sh" . "$BASE_DIR/script-modules/fetch-rules.sh"
. "$BASE_DIR/script-modules/cpu.sh" . "$BASE_DIR/script-modules/cpu.sh"
. "$BASE_DIR/core-rules.sh"
die() { die() {
echo $1 echo $1
#exit 1 #exit 1
@ -200,6 +202,88 @@ build_libretro_generic_makefile() {
fi fi
} }
# build_makefile
#
# $1 Name of the core
# $2 Subdirectory of makefile (use "." for none)
# $3 Name of makefile
# $4 Either FORMAT_COMPILER_TARGET or an alternative
# $5 Skip copying (for cores that don't produce exactly one core)
build_makefile() {
[ -n "$core_build_subdir" ] && core_build_subdir="/$core_build_subdir"
make_cmdline="$MAKE"
if [ -n "$core_build_makefile" ]; then
make_cmdline="$make_cmdline -f $core_build_makefile"
fi
# TODO: Do this better
make_cmdline="$make_cmdline platform=\"${core_build_platform:-$FORMAT_COMPILER_TARGET}\""
[ -n "$JOBS" ] && make_cmdline="$make_cmdline -j$JOBS"
build_dir="$WORKDIR/$core_dir$core_build_subdir"
if build_should_skip $1 "$build_dir"; then
echo "Core $1 is already built, skipping..."
return
fi
if [ -d "$build_dir" ]; then
echo_cmd "cd \"$build_dir\""
if [ -z "$NOCLEAN" ]; then
echo_cmd "$make_cmdline clean"
fi
make_cmdline="$make_cmdline $COMPILER"
echo_cmd "$make_cmdline"
# TODO: Make this a separate stage rule
copy_core_to_dist $1
else
echo "$1 not fetched, skipping ..."
fi
}
# libretro_build_core: Build the given core using its build rules
#
# $1 Name of the core to build
libretro_build_core() {
eval "core_name=\$libretro_${1}_name"
[ -z "$core_name" ] && core_name="$1"
echo "=== $core_name"
eval "core_build_rule=\$libretro_${1}_build_rule"
[ -z "$core_build_rule" ] && core_build_rule=build_makefile
eval "core_dir=\$libretro_${1}_dir"
[ -z "$core_dir" ] && core_dir="libretro-$1"
case "$core_build_rule" in
build_makefile)
eval "core_build_makefile=\$libretro_${1}_build_makefile"
eval echo "core_build_makefile=\$libretro_${1}_build_makefile"
eval "core_build_subdir=\$libretro_${1}_build_subdir"
eval echo "core_build_subdir=\$libretro_${1}_build_subdir"
eval "core_build_platform=\$libretro_${1}_build_platform"
eval echo "core_build_platform=\$libretro_${1}_build_platform"
echo "Building ${1}..."
$core_build_rule $1
;;
*)
echo "libretro_build_core:Unknown build rule for $1: \"$core_build_rule\"."
exit 1
;;
esac
}
build_libretro_test() { build_libretro_test() {
build_dir="$WORKDIR/$1" build_dir="$WORKDIR/$1"
@ -224,41 +308,6 @@ build_libretro_test() {
fi fi
} }
build_libretro_stonesoup() {
build_libretro_generic_makefile "stonesoup" "crawl-ref" "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_hatari() {
build_libretro_generic_makefile "hatari" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_prosystem() {
build_libretro_generic_makefile "prosystem" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_4do() {
build_libretro_generic_makefile "4do" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_o2em() {
build_libretro_generic_makefile "o2em" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_virtualjaguar() {
build_libretro_generic_makefile "virtualjaguar" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_tgbdual() {
build_libretro_generic_makefile "tgbdual" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_nx() {
build_libretro_generic_makefile "nxengine" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_catsfc() {
build_libretro_generic_makefile "catsfc" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_emux() { build_libretro_emux() {
if build_should_skip emux "$WORKDIR/libretro-emux"; then if build_should_skip emux "$WORKDIR/libretro-emux"; then
@ -277,162 +326,6 @@ build_libretro_emux() {
build_save_revision $? "emux" build_save_revision $? "emux"
} }
build_libretro_picodrive() {
build_libretro_generic_makefile "picodrive" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_tyrquake() {
build_libretro_generic_makefile "tyrquake" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_2048() {
build_libretro_generic_makefile "2048" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_vecx() {
build_libretro_generic_makefile "vecx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_stella() {
build_libretro_generic_makefile "stella" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_bluemsx() {
build_libretro_generic_makefile "bluemsx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_handy() {
build_libretro_generic_makefile "handy" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_fmsx() {
build_libretro_generic_makefile "fmsx" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_gpsp() {
build_libretro_generic_makefile "gpsp" "." "Makefile" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_fuse() {
build_libretro_generic_makefile "fuse" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_vba_next() {
build_libretro_generic_makefile "vba_next" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_vbam() {
build_libretro_generic_makefile "vbam" "src/libretro" "Makefile" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_snes9x_next() {
build_libretro_generic_makefile "snes9x_next" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_dinothawr() {
build_libretro_generic_makefile "dinothawr" "." "Makefile" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_genesis_plus_gx() {
build_libretro_generic_makefile "genesis_plus_gx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_mame078() {
build_libretro_generic_makefile "mame078" "." "makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_prboom() {
build_libretro_generic_makefile "prboom" "." "Makefile" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_pcsx_rearmed() {
build_libretro_generic_makefile "pcsx_rearmed" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_fceumm() {
build_libretro_generic_makefile "fceumm" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_snes() {
build_libretro_generic_makefile "mednafen_snes" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_lynx() {
build_libretro_generic_makefile "mednafen_lynx" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_wswan() {
build_libretro_generic_makefile "mednafen_wswan" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_gba() {
build_libretro_generic_makefile "mednafen_gba" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_ngp() {
build_libretro_generic_makefile "mednafen_ngp" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_pce_fast() {
build_libretro_generic_makefile "mednafen_pce_fast" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_vb() {
build_libretro_generic_makefile "mednafen_vb" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_pcfx() {
build_libretro_generic_makefile "mednafen_pcfx" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_psx() {
build_libretro_generic_makefile "beetle_psx" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_mednafen_psx() {
build_libretro_generic_makefile "mednafen_psx" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_beetle_supergrafx() {
build_libretro_generic_makefile "mednafen_supergrafx" "." "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_meteor() {
build_libretro_generic_makefile "meteor" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_nestopia() {
build_libretro_generic_makefile "nestopia" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_gambatte() {
build_libretro_generic_makefile "gambatte" "libgambatte" "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
}
build_libretro_yabause() {
build_libretro_generic_makefile "yabause" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_desmume() {
build_libretro_generic_makefile "desmume" "desmume" "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_snes9x() {
build_libretro_generic_makefile "snes9x" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_quicknes() {
build_libretro_generic_makefile "quicknes" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_dosbox() {
build_libretro_generic_makefile "dosbox" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_fb_alpha() {
build_libretro_generic_makefile "fb_alpha" "svn-current/trunk" "makefile.libretro" $FORMAT_COMPILER_TARGET
}
build_libretro_ffmpeg() { build_libretro_ffmpeg() {
if check_opengl; then if check_opengl; then
build_libretro_generic_makefile "ffmpeg" "libretro" "Makefile" $FORMAT_COMPILER_TARGET build_libretro_generic_makefile "ffmpeg" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
@ -447,10 +340,6 @@ build_libretro_3dengine() {
fi fi
} }
build_libretro_scummvm() {
build_libretro_generic_makefile "scummvm" "backends/platform/libretro/build" "Makefile" $FORMAT_COMPILER_TARGET
}
build_libretro_ppsspp() { build_libretro_ppsspp() {
if check_opengl; then if check_opengl; then
build_libretro_generic_makefile "ppsspp" "libretro" "Makefile" $FORMAT_COMPILER_TARGET build_libretro_generic_makefile "ppsspp" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
@ -702,3 +591,155 @@ create_dist_dir() {
} }
create_dist_dir create_dist_dir
########## LEGACY RULES
# TODO: delete these
build_libretro_2048() {
libretro_build_core 2048
}
build_libretro_4do() {
libretro_build_core 4do
}
build_libretro_beetle_gba() {
libretro_build_core beetle_gba
}
build_libretro_beetle_lynx() {
libretro_build_core beetle_lynx
}
build_libretro_beetle_ngp() {
libretro_build_core beetle_ngp
}
build_libretro_beetle_pce_fast() {
libretro_build_core beetle_pce_fast
}
build_libretro_beetle_pcfx() {
libretro_build_core beetle_pcfx
}
build_libretro_beetle_psx() {
libretro_build_core beetle_psx
}
build_libretro_beetle_snes() {
libretro_build_core beetle_snes
}
build_libretro_beetle_supergrafx() {
libretro_build_core beetle_supergrafx
}
build_libretro_beetle_vb() {
libretro_build_core beetle_vb
}
build_libretro_beetle_wswan() {
libretro_build_core beetle_wsawn
}
build_libretro_bluemsx() {
libretro_build_core bluemsx
}
build_libretro_catsfc() {
libretro_build_core catsfc
}
build_libretro_desmume() {
libretro_build_core desmume
}
build_libretro_dinothawr() {
libretro_build_core dinothawr
}
build_libretro_dosbox() {
libretro_build_core dosbox
}
build_libretro_fb_alpha() {
libretro_build_core fb_alpha
}
build_libretro_fceumm() {
libretro_build_core fceumm
}
build_libretro_fmsx() {
libretro_build_core fmsx
}
build_libretro_fuse() {
libretro_build_core fuse
}
build_libretro_gambatte() {
libretro_build_core gambatte
}
build_libretro_genesis_plus_gx() {
libretro_build_core genesis_plus_gx
}
build_libretro_gpsp() {
libretro_build_core gpsp
}
build_libretro_handy() {
libretro_build_core handy
}
build_libretro_hatari() {
libretro_build_core hatari
}
build_libretro_mame078() {
libretro_build_core mame078
}
build_libretro_mednafen_psx() {
libretro_build_core mednafen_psx
}
build_libretro_meteor() {
libretro_build_core meteor
}
build_libretro_nestopia() {
libretro_build_core nestopia
}
build_libretro_nx() {
libretro_build_core nxengine
}
build_libretro_o2em() {
libretro_build_core o2em
}
build_libretro_pcsx_rearmed() {
libretro_build_core pcsx_rearmed
}
build_libretro_picodrive() {
libretro_build_core picodrive
}
build_libretro_prboom() {
libretro_build_core prboom
}
build_libretro_prosystem() {
libretro_build_core prosystem
}
build_libretro_quicknes() {
libretro_build_core quicknes
}
build_libretro_scummvm() {
libretro_build_core scummvm
}
build_libretro_snes9x() {
libretro_build_core snes9x
}
build_libretro_snes9x_next() {
libretro_build_core snes9x_next
}
build_libretro_stella() {
libretro_build_core stella
}
build_libretro_stonesoup() {
libretro_build_core stonesoup
}
build_libretro_tgbdual() {
libretro_build_core tgbdual
}
build_libretro_tyrquake() {
libretro_build_core tyrquake
}
build_libretro_vba_next() {
libretro_build_core vba_next
}
build_libretro_vbam() {
libretro_build_core vbam
}
build_libretro_vecx() {
libretro_build_core vecx
}
build_libretro_virtualjaguar() {
libretro_build_core virtualjaguar
}
build_libretro_yabause() {
libretro_build_core yabause
}

View File

@ -98,63 +98,72 @@ fi
if [ -n "$1" ]; then if [ -n "$1" ]; then
while [ -n "$1" ]; do while [ -n "$1" ]; do
"$1" case "$1" in
build_libretro_*)
# "Old"-style
$1
;;
*)
# New style (just generic cores for now)
libretro_build_core $1
;;
esac
shift shift
done done
else else
build_libretro_2048 libretro_build_core 2048
build_libretro_4do libretro_build_core 4do
build_libretro_bluemsx libretro_build_core bluemsx
build_libretro_fmsx libretro_build_core fmsx
build_libretro_bsnes_cplusplus98 build_libretro_bsnes_cplusplus98
build_libretro_bsnes build_libretro_bsnes
build_libretro_bsnes_mercury build_libretro_bsnes_mercury
build_libretro_beetle_lynx libretro_build_core beetle_lynx
build_libretro_beetle_gba libretro_build_core beetle_gba
build_libretro_beetle_ngp libretro_build_core beetle_ngp
build_libretro_beetle_pce_fast libretro_build_core beetle_pce_fast
build_libretro_beetle_supergrafx libretro_build_core beetle_supergrafx
build_libretro_beetle_pcfx libretro_build_core beetle_pcfx
build_libretro_beetle_vb libretro_build_core beetle_vb
build_libretro_beetle_wswan libretro_build_core beetle_wswan
build_libretro_mednafen_psx libretro_build_core mednafen_psx
build_libretro_beetle_snes libretro_build_core beetle_snes
build_libretro_catsfc libretro_build_core catsfc
build_libretro_snes9x libretro_build_core snes9x
build_libretro_snes9x_next libretro_build_core snes9x_next
build_libretro_genesis_plus_gx libretro_build_core genesis_plus_gx
build_libretro_fb_alpha libretro_build_core fb_alpha
build_libretro_vbam libretro_build_core vbam
build_libretro_vba_next libretro_build_core vba_next
build_libretro_fceumm libretro_build_core fceumm
build_libretro_gambatte libretro_build_core gambatte
build_libretro_meteor libretro_build_core meteor
build_libretro_nx libretro_build_core nxengine
build_libretro_prboom libretro_build_core prboom
build_libretro_stella libretro_build_core stella
build_libretro_quicknes libretro_build_core quicknes
build_libretro_nestopia libretro_build_core nestopia
build_libretro_tyrquake libretro_build_core tyrquake
build_libretro_mame078 libretro_build_core mame078
build_libretro_mame build_libretro_mame
build_libretro_dosbox libretro_build_core dosbox
build_libretro_scummvm libretro_build_core scummvm
build_libretro_picodrive libretro_build_core picodrive
build_libretro_handy libretro_build_core handy
build_libretro_desmume libretro_build_core desmume
if [ $FORMAT_COMPILER_TARGET != "win" ]; then if [ $FORMAT_COMPILER_TARGET != "win" ]; then
build_libretro_pcsx_rearmed libretro_build_core pcsx_rearmed
fi fi
if [ $FORMAT_COMPILER_TARGET = "ios" ]; then if [ $FORMAT_COMPILER_TARGET = "ios" ]; then
# For self-signed iOS (without jailbreak) # For self-signed iOS (without jailbreak)
build_libretro_pcsx_rearmed_interpreter build_libretro_pcsx_rearmed_interpreter
fi fi
build_libretro_yabause libretro_build_core yabause
build_libretro_vecx libretro_build_core vecx
build_libretro_tgbdual libretro_build_core tgbdual
build_libretro_prosystem libretro_build_core prosystem
build_libretro_dinothawr libretro_build_core dinothawr
build_libretro_virtualjaguar libretro_build_core virtualjaguar
build_libretro_mupen64 build_libretro_mupen64
build_libretro_3dengine build_libretro_3dengine
if [ $FORMAT_COMPILER_TARGET != "ios" ]; then if [ $FORMAT_COMPILER_TARGET != "ios" ]; then
@ -163,12 +172,16 @@ else
build_libretro_ffmpeg build_libretro_ffmpeg
build_libretro_ppsspp build_libretro_ppsspp
fi fi
build_libretro_o2em libretro_build_core o2em
build_libretro_hatari libretro_build_core hatari
build_libretro_gpsp libretro_build_core gpsp
build_libretro_emux build_libretro_emux
build_libretro_fuse libretro_build_core fuse
# Not part of libretro-build as of 2015-02-26
libretro_build_core stonesoup # fails with missing -I for libco
libretro_build_core nxengine # builds successfully on osx
build_libretro_test build_libretro_test
fi fi
build_summary build_summary