diff --git a/core-rules.sh b/core-rules.sh index f1af6284..8c9712a7 100644 --- a/core-rules.sh +++ b/core-rules.sh @@ -1,110 +1,150 @@ # vim: set ts=3 sw=3 noet ft=sh : bash - libretro_bsnes_fetch_url="https://github.com/libretro/bsnes-libretro.git" libretro_bsnes_name="bsnes/higan" libretro_snes9x_fetch_url="https://github.com/libretro/snes9x.git" libretro_snes9x_name="SNES9x" +libretro_snes9x_build_subdir="libretro" libretro_snes9x_next_fetch_url="https://github.com/libretro/snes9x-next.git" 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_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_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_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_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_name="Handy" +# IMPLICIT libretro_bnes_fetch_url="https://github.com/libretro/bnes-libretro.git" libretro_bnes_name="bnes/higan" libretro_fceumm_fetch_url="https://github.com/libretro/libretro-fceumm.git" libretro_fceumm_name="FCEUmm" +libretro_fceumm_build_makefile="Makefile.libretro" libretro_gambatte_fetch_url="https://github.com/libretro/gambatte-libretro.git" 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_name="Meteor" +libretro_meteor_build_subdir="libretro" libretro_nxengine_fetch_url="https://github.com/libretro/nxengine-libretro.git" libretro_nxengine_name="NXEngine" +# IMPLICIT libretro_prboom_fetch_url="https://github.com/libretro/libretro-prboom.git" 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_name="Stella" +# IMPLICIT libretro_desmume_fetch_url="https://github.com/libretro/desmume.git" 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_name="QuickNES" +libretro_quicknes_build_subdir="libretro" libretro_nestopia_fetch_url="https://github.com/libretro/nestopia.git" libretro_nestopia_name="Nestopia" +libretro_nestopia_build_subdir="libretro" libretro_tyrquake_fetch_url="https://github.com/libretro/tyrquake.git" 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_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_name="Mednafen/Beetle GBA" +# IMPLICIT libretro_mednafen_lynx_fetch_url="https://github.com/libretro/beetle-lynx-libretro.git" libretro_mednafen_lynx_name="Mednafen/Beetle Lynx" +# IMPLICIT libretro_mednafen_ngp_fetch_url="https://github.com/libretro/beetle-ngp-libretro.git" 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_name="Mednafen/Beetle PCE FAST" +# IMPLICIT libretro_mednafen_supergrafx_fetch_url="https://github.com/libretro/beetle-supergrafx-libretro.git" libretro_mednafen_supergrafx_name="Mednafen/Beetle SuperGrafx" +# IMPLICIT libretro_mednafen_psx_fetch_url="https://github.com/libretro/mednafen-psx-libretro.git" libretro_mednafen_psx_name="Mednafen PSX" +# IMPLICIT libretro_mednafen_pcfx_fetch_url="https://github.com/libretro/beetle-pcfx-libretro.git" 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_name="Mednafen/Beetle bsnes" +# IMPLICIT libretro_mednafen_vb_fetch_url="https://github.com/libretro/beetle-vb-libretro.git" libretro_mednafen_vb_name="Mednafen/Beetle VB" +# IMPLICIT libretro_mednafen_wswan_fetch_url="https://github.com/libretro/beetle-wswan-libretro.git" libretro_mednafen_wswan_name="Mednafen/Beetle WonderSwan" +# IMPLICIT libretro_scummvm_fetch_url="https://github.com/libretro/scummvm.git" libretro_scummvm_name="ScummVM" +libretro_scummvm_build_subdir="backends/platform/libretro/build" libretro_yabause_fetch_url="https://github.com/libretro/yabause.git" libretro_yabause_name="Yabause" +libretro_yabause_build_subdir="libretro" libretro_dosbox_fetch_url="https://github.com/libretro/dosbox-libretro.git" libretro_dosbox_name="DOSBox" +libretro_dosbox_makefile="Makefile.libretro" libretro_virtualjaguar_fetch_url="https://github.com/libretro/virtualjaguar-libretro.git" libretro_virtualjaguar_name="Virtual Jaguar" +# IMPLICIT libretro_mame078_fetch_url="https://github.com/libretro/mame2003-libretro.git" libretro_mame078_name="MAME 2003 (0.78)" +# IMPLICIT libretro_mame139_fetch_url="https://github.com/libretro/mame2010-libretro.git" 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_git_submodules="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_name="TGB Dual" +# IMPLICIT libretro_mupen64plus_fetch_url="https://github.com/libretro/mupen64plus-libretro.git" libretro_mupen64plus_name="Mupen64Plus" libretro_dinothawr_fetch_url="https://github.com/libretro/Dinothawr.git" 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_name="UAE" @@ -146,13 +189,17 @@ libretro_remotejoy_name="RemoteJoy" libretro_bluemsx_fetch_url="https://github.com/libretro/blueMSX-libretro.git" libretro_bluemsx_name="blueMSX" +libretro_bluemsx_build_makefile="Makefile.libretro" libretro_fmsx_fetch_url="https://github.com/libretro/fmsx-libretro.git" libretro_fmsx_name="fMSX" +# IMPLICIT 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_build_makefile="Makefile.libretro" libretro_ppsspp_fetch_url="https://github.com/libretro/ppsspp.git" 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_name="ProSystem" +# IMPLICIT libretro_o2em_fetch_url="https://github.com/libretro/libretro-o2em.git" libretro_o2em_name="O2EM" +# IMPLICIT libretro_4do_fetch_url="https://github.com/libretro/4do-libretro.git" libretro_4do_name="4DO" +# IMPLICIT libretro_catsfc_fetch_url="https://github.com/libretro/CATSFC-libretro.git" libretro_catsfc_name="CATSFC" +# IMPLICIT libretro_stonesoup_fetch_url="https://github.com/libretro/crawl-ref.git" libretro_stonesoup_name="Dungeon Crawl Stone Soup" 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_name="Hatari" +libretro_hatari_build_makefile="Makefile.libretro" libretro_tempgba_fetch_url="https://github.com/libretro/TempGBA-libretro.git" libretro_tempgba_name="TempGBA" libretro_gpsp_fetch_url="https://github.com/libretro/gpsp.git" libretro_gpsp_name="gpSP" +# IMPLICIT libretro_emux_fetch_url="https://github.com/libretro/emux.git" libretro_emux_name="Emux" libretro_fuse_fetch_url="https://github.com/libretro/fuse-libretro.git" 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__ where is +# a unique identifier customarily consisting of the characters [_a-z0-9], but +# technically uppercase characters would also be legal here. The may +# be any of the following: +# +# name Pretty-printed name of the core +# Defaults to +# +# dir Name of the core's directory +# Defaults to "libretro-" +# +# 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. diff --git a/libretro-build-common.sh b/libretro-build-common.sh index 014438bc..98f2241b 100755 --- a/libretro-build-common.sh +++ b/libretro-build-common.sh @@ -4,6 +4,8 @@ . "$BASE_DIR/script-modules/fetch-rules.sh" . "$BASE_DIR/script-modules/cpu.sh" +. "$BASE_DIR/core-rules.sh" + die() { echo $1 #exit 1 @@ -200,6 +202,88 @@ build_libretro_generic_makefile() { 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_dir="$WORKDIR/$1" @@ -224,41 +308,6 @@ build_libretro_test() { 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() { if build_should_skip emux "$WORKDIR/libretro-emux"; then @@ -277,162 +326,6 @@ build_libretro_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() { if check_opengl; then build_libretro_generic_makefile "ffmpeg" "libretro" "Makefile" $FORMAT_COMPILER_TARGET @@ -447,10 +340,6 @@ build_libretro_3dengine() { fi } -build_libretro_scummvm() { - build_libretro_generic_makefile "scummvm" "backends/platform/libretro/build" "Makefile" $FORMAT_COMPILER_TARGET -} - build_libretro_ppsspp() { if check_opengl; then build_libretro_generic_makefile "ppsspp" "libretro" "Makefile" $FORMAT_COMPILER_TARGET @@ -702,3 +591,155 @@ 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 +} diff --git a/libretro-build.sh b/libretro-build.sh index 67da549a..55dd9509 100755 --- a/libretro-build.sh +++ b/libretro-build.sh @@ -98,63 +98,72 @@ fi if [ -n "$1" ]; then 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 done else - build_libretro_2048 - build_libretro_4do - build_libretro_bluemsx - build_libretro_fmsx + libretro_build_core 2048 + libretro_build_core 4do + libretro_build_core bluemsx + libretro_build_core fmsx build_libretro_bsnes_cplusplus98 build_libretro_bsnes build_libretro_bsnes_mercury - build_libretro_beetle_lynx - build_libretro_beetle_gba - build_libretro_beetle_ngp - build_libretro_beetle_pce_fast - build_libretro_beetle_supergrafx - build_libretro_beetle_pcfx - build_libretro_beetle_vb - build_libretro_beetle_wswan - build_libretro_mednafen_psx - build_libretro_beetle_snes - build_libretro_catsfc - build_libretro_snes9x - build_libretro_snes9x_next - build_libretro_genesis_plus_gx - build_libretro_fb_alpha - build_libretro_vbam - build_libretro_vba_next - build_libretro_fceumm - build_libretro_gambatte - build_libretro_meteor - build_libretro_nx - build_libretro_prboom - build_libretro_stella - build_libretro_quicknes - build_libretro_nestopia - build_libretro_tyrquake - build_libretro_mame078 + libretro_build_core beetle_lynx + libretro_build_core beetle_gba + libretro_build_core beetle_ngp + libretro_build_core beetle_pce_fast + libretro_build_core beetle_supergrafx + libretro_build_core beetle_pcfx + libretro_build_core beetle_vb + libretro_build_core beetle_wswan + libretro_build_core mednafen_psx + libretro_build_core beetle_snes + libretro_build_core catsfc + libretro_build_core snes9x + libretro_build_core snes9x_next + libretro_build_core genesis_plus_gx + libretro_build_core fb_alpha + libretro_build_core vbam + libretro_build_core vba_next + libretro_build_core fceumm + libretro_build_core gambatte + libretro_build_core meteor + libretro_build_core nxengine + libretro_build_core prboom + libretro_build_core stella + libretro_build_core quicknes + libretro_build_core nestopia + libretro_build_core tyrquake + libretro_build_core mame078 build_libretro_mame - build_libretro_dosbox - build_libretro_scummvm - build_libretro_picodrive - build_libretro_handy - build_libretro_desmume + libretro_build_core dosbox + libretro_build_core scummvm + libretro_build_core picodrive + libretro_build_core handy + libretro_build_core desmume if [ $FORMAT_COMPILER_TARGET != "win" ]; then - build_libretro_pcsx_rearmed + libretro_build_core pcsx_rearmed fi if [ $FORMAT_COMPILER_TARGET = "ios" ]; then # For self-signed iOS (without jailbreak) build_libretro_pcsx_rearmed_interpreter fi - build_libretro_yabause - build_libretro_vecx - build_libretro_tgbdual - build_libretro_prosystem - build_libretro_dinothawr - build_libretro_virtualjaguar + libretro_build_core yabause + libretro_build_core vecx + libretro_build_core tgbdual + libretro_build_core prosystem + libretro_build_core dinothawr + libretro_build_core virtualjaguar build_libretro_mupen64 build_libretro_3dengine if [ $FORMAT_COMPILER_TARGET != "ios" ]; then @@ -163,12 +172,16 @@ else build_libretro_ffmpeg build_libretro_ppsspp fi - build_libretro_o2em - build_libretro_hatari - build_libretro_gpsp + libretro_build_core o2em + libretro_build_core hatari + libretro_build_core gpsp 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 fi build_summary -