libretro-build-common: echo build commands and improve shell quoting

This commit is contained in:
T. Joseph Carter 2015-02-17 22:32:27 -08:00
parent 7aa9e47e32
commit ff0cfdabc1

View File

@ -22,17 +22,17 @@ fi
echo "Compiler: CC=\"$CC\" CXX=\"$CXX\"" echo "Compiler: CC=\"$CC\" CXX=\"$CXX\""
[[ "${ARM_NEON}" ]] && echo '=== ARM NEON opts enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-neon" [[ "${ARM_NEON}" ]] && echo '=== ARM NEON opts enabled... ===' && export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-neon"
[[ "${CORTEX_A8}" ]] && echo '=== Cortex A8 opts enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-cortexa8" [[ "${CORTEX_A8}" ]] && echo '=== Cortex A8 opts enabled... ===' && export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-cortexa8"
[[ "${CORTEX_A9}" ]] && echo '=== Cortex A9 opts enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-cortexa9" [[ "${CORTEX_A9}" ]] && echo '=== Cortex A9 opts enabled... ===' && export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-cortexa9"
[[ "${ARM_HARDFLOAT}" ]] && echo '=== ARM hardfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-hardfloat" [[ "${ARM_HARDFLOAT}" ]] && echo '=== ARM hardfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-hardfloat"
[[ "${ARM_SOFTFLOAT}" ]] && echo '=== ARM softfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-softfloat" [[ "${ARM_SOFTFLOAT}" ]] && echo '=== ARM softfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-softfloat"
[[ "${X86}" ]] && echo '=== x86 CPU detected... ===' [[ "$X86" ]] && echo '=== x86 CPU detected... ==='
[[ "${X86}" ]] && [[ "${X86_64}" ]] && echo '=== x86_64 CPU detected... ===' [[ "$X86" ]] && [[ "$X86_64" ]] && echo '=== x86_64 CPU detected... ==='
[[ "${IOS}" ]] && echo '=== iOS ==' [[ "${IOS}" ]] && echo '=== iOS =='
echo "${FORMAT_COMPILER_TARGET}" echo "$FORMAT_COMPILER_TARGET"
echo "${FORMAT_COMPILER_TARGET_ALT}" echo "$FORMAT_COMPILER_TARGET_ALT"
RESET_FORMAT_COMPILER_TARGET=$FORMAT_COMPILER_TARGET RESET_FORMAT_COMPILER_TARGET=$FORMAT_COMPILER_TARGET
RESET_FORMAT_COMPILER_TARGET_ALT=$FORMAT_COMPILER_TARGET_ALT RESET_FORMAT_COMPILER_TARGET_ALT=$FORMAT_COMPILER_TARGET_ALT
@ -48,12 +48,12 @@ check_opengl() {
if [ "${BUILD_LIBRETRO_GL}" ]; then if [ "${BUILD_LIBRETRO_GL}" ]; then
if [ "${ENABLE_GLES}" ]; then if [ "${ENABLE_GLES}" ]; then
echo '=== OpenGL ES enabled ===' echo '=== OpenGL ES enabled ==='
export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-gles" export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-gles"
export FORMAT_COMPILER_TARGET_ALT="${FORMAT_COMPILER_TARGET}" export FORMAT_COMPILER_TARGET_ALT="$FORMAT_COMPILER_TARGET"
else else
echo '=== OpenGL enabled ===' echo '=== OpenGL enabled ==='
export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-opengl" export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-opengl"
export FORMAT_COMPILER_TARGET_ALT="${FORMAT_COMPILER_TARGET}" export FORMAT_COMPILER_TARGET_ALT="$FORMAT_COMPILER_TARGET"
fi fi
else else
echo '=== OpenGL disabled in build ===' echo '=== OpenGL disabled in build ==='
@ -66,17 +66,21 @@ reset_compiler_targets() {
} }
build_libretro_pcsx_rearmed_interpreter() { build_libretro_pcsx_rearmed_interpreter() {
build_dir="${WORKDIR}/libretro-pcsx_rearmed" build_dir="$WORKDIR/libretro-pcsx_rearmed"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '=== Building PCSX ReARMed Interpreter ===' echo '=== Building PCSX ReARMed Interpreter ==='
cd "${build_dir}" echo "cd \"$build_dir\""
cd "$build_dir"
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean PCSX ReARMed' echo "$MAKE -f Makefile.libretro platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean PCSX ReARMed'
fi fi
"${MAKE}" -f Makefile.libretro USE_DYNAREC=0 platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build PCSX ReARMed' echo "$MAKE -f Makefile.libretro USE_DYNAREC=0 platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
cp "pcsx_rearmed_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/pcsx_rearmed_interpreter${FORMAT}.${FORMAT_EXT}" $MAKE -f Makefile.libretro USE_DYNAREC=0 platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build PCSX ReARMed'
build_summary_log ${?} "pcsx_rearmed_interpreter" echo "cp \"pcsx_rearmed_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR/pcsx_rearmed_interpreter${FORMAT}.$FORMAT_EXT\""
cp "pcsx_rearmed_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR/pcsx_rearmed_interpreter${FORMAT}.$FORMAT_EXT"
build_summary_log $? "pcsx_rearmed_interpreter"
else else
echo 'PCSX ReARMed not fetched, skipping ...' echo 'PCSX ReARMed not fetched, skipping ...'
fi fi
@ -88,51 +92,58 @@ build_libretro_pcsx_rearmed_interpreter() {
# $4 is Makefile name # $4 is Makefile name
# $5 is preferred platform # $5 is preferred platform
build_libretro_generic_makefile_subcore() { build_libretro_generic_makefile_subcore() {
build_dir="${WORKDIR}/libretro-${1}" build_dir="$WORKDIR/libretro-$1"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo "=== Building ${2} ===" echo "=== Building $2 ==="
cd "${build_dir}/${3}" echo "cd \"$build_dir/$3\""
cd "$build_dir/$3"
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
make -f ${4} platform=${5} -j$JOBS clean || die "Failed to clean ${2}" echo "$MAKE -f \"$4\" platform=$5 -j$JOBS clean"
$MAKE -f "$4" platform=$5 -j$JOBS clean || die "Failed to clean $2"
fi fi
make -f ${4} platform=${5} -j$JOBS || die "Failed to build ${2}" echo "$MAKE -f $4 platform=$5 -j$JOBS"
cp ${2}_libretro$FORMAT.${FORMAT_EXT} $RARCH_DIST_DIR/${2}_libretro$FORMAT.${FORMAT_EXT} $MAKE -f $4 platform=$5 -j$JOBS || die "Failed to build $2"
build_summary_log ${?} ${2} echo "cp ${2}_libretro${FORMAT}.$FORMAT_EXT $RARCH_DIST_DIR/${2}_libretro${FORMAT}.$FORMAT_EXT"
cp ${2}_libretro${FORMAT}.$FORMAT_EXT $RARCH_DIST_DIR/${2}_libretro${FORMAT}.$FORMAT_EXT
build_summary_log $? "$2"
fi fi
} }
build_libretro_fba_cps2() { build_libretro_fba_cps2() {
build_libretro_generic_makefile_subcore "fb_alpha" "fba_cores_cps2" "svn-current/trunk/fbacores/cps2" "makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile_subcore "fb_alpha" "fba_cores_cps2" "svn-current/trunk/fbacores/cps2" "makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_fba_neogeo() { build_libretro_fba_neogeo() {
build_libretro_generic_makefile_subcore "fb_alpha" "fba_cores_neo" "svn-current/trunk/fbacores/neogeo" "makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile_subcore "fb_alpha" "fba_cores_neo" "svn-current/trunk/fbacores/neogeo" "makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_fba_cps1() { build_libretro_fba_cps1() {
build_libretro_generic_makefile_subcore "fb_alpha" "fba_cores_cps1" "svn-current/trunk/fbacores/cps1" "makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile_subcore "fb_alpha" "fba_cores_cps1" "svn-current/trunk/fbacores/cps1" "makefile.libretro" $FORMAT_COMPILER_TARGET
} }
copy_core_to_dist() { copy_core_to_dist() {
if [ "$FORMAT_COMPILER_TARGET" = "theos_ios" ]; then if [ "$FORMAT_COMPILER_TARGET" = "theos_ios" ]; then
cp "objs/obj/${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"objs/obj/${1}_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} ${1} cp "objs/obj/${1}_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "$1"
else else
cp "${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"${1}_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} ${1} cp "${1}_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "$1"
fi fi
} }
build_libretro_generic() { build_libretro_generic() {
cd "${5}/${2}" cd "$5/$2"
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f ${3} platform="${4}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die "Failed to build ${1}" echo "$MAKE -f \"$3\" platform=\"$4\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE -f "$3" platform="$4" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die "Failed to clean $1"
fi fi
echo "${MAKE}" -f ${3} platform="${4}" CC="$CC" CXX="$CXX" "-j${JOBS}" echo "$MAKE -f \"$3\" platform=\"$4\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
"${MAKE}" -f ${3} platform="${4}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die "Failed to build ${1}" $MAKE -f "$3" platform="$4" CC="$CC" CXX="$CXX" "-j$JOBS" || die "Failed to build $1"
} }
# $1 is corename # $1 is corename
@ -140,65 +151,65 @@ build_libretro_generic() {
# $3 is Makefile name # $3 is Makefile name
# $4 is preferred platform # $4 is preferred platform
build_libretro_generic_makefile() { build_libretro_generic_makefile() {
build_dir="${WORKDIR}/libretro-${1}" build_dir="$WORKDIR/libretro-$1"
if [ -d "$build_dir" ]; then if [ -d "$build_dir" ]; then
echo "=== Building ${1} ===" echo "=== Building $1 ==="
build_libretro_generic $1 $2 $3 $4 "$build_dir" build_libretro_generic $1 "$2" "$3" $4 "$build_dir"
copy_core_to_dist $1 copy_core_to_dist $1
else else
echo "${1} not fetched, skipping ..." echo "$1 not fetched, skipping ..."
fi fi
} }
build_retroarch_generic_makefile() { build_retroarch_generic_makefile() {
build_dir="${WORKDIR}/${1}" build_dir="$WORKDIR/$1"
if [ -d "$build_dir" ]; then if [ -d "$build_dir" ]; then
echo "=== Building ${2} ===" echo "=== Building $2 ==="
build_libretro_generic $1 $2 $3 $4 "$build_dir" build_libretro_generic $1 "$2" "$3" $4 "$build_dir"
copy_core_to_dist $5 copy_core_to_dist $5
else else
echo "${1} not fetched, skipping ..." echo "$1 not fetched, skipping ..."
fi fi
} }
build_libretro_stonesoup() { build_libretro_stonesoup() {
build_libretro_generic_makefile "stonesoup" "crawl-ref" "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "stonesoup" "crawl-ref" "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_hatari() { build_libretro_hatari() {
build_libretro_generic_makefile "hatari" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "hatari" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_prosystem() { build_libretro_prosystem() {
build_libretro_generic_makefile "prosystem" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "prosystem" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_4do() { build_libretro_4do() {
build_libretro_generic_makefile "4do" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "4do" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_o2em() { build_libretro_o2em() {
build_libretro_generic_makefile "o2em" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "o2em" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_virtualjaguar() { build_libretro_virtualjaguar() {
build_libretro_generic_makefile "virtualjaguar" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "virtualjaguar" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_tgbdual() { build_libretro_tgbdual() {
build_libretro_generic_makefile "tgbdual" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "tgbdual" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_nx() { build_libretro_nx() {
build_libretro_generic_makefile "nxengine" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "nxengine" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_catsfc() { build_libretro_catsfc() {
build_libretro_generic_makefile "catsfc" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "catsfc" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_emux() { build_libretro_emux() {
build_libretro_generic_makefile "emux" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} 1 build_libretro_generic_makefile "emux" "libretro" "Makefile" $FORMAT_COMPILER_TARGET 1
copy_core_to_dist "emux_chip8" copy_core_to_dist "emux_chip8"
copy_core_to_dist "emux_gb" copy_core_to_dist "emux_gb"
copy_core_to_dist "emux_nes" copy_core_to_dist "emux_nes"
@ -206,324 +217,356 @@ build_libretro_emux() {
} }
build_libretro_test() { build_libretro_test() {
build_retroarch_generic_makefile "retroarch" "libretro-test" "Makefile" ${FORMAT_COMPILER_TARGET} "test" build_retroarch_generic_makefile "retroarch" "libretro-test" "Makefile" $FORMAT_COMPILER_TARGET "test"
} }
build_libretro_testgl() { build_libretro_testgl() {
build_retroarch_generic_makefile "retroarch" "libretro-test-gl" "Makefile" ${FORMAT_COMPILER_TARGET} "testgl" build_retroarch_generic_makefile "retroarch" "libretro-test-gl" "Makefile" $FORMAT_COMPILER_TARGET "testgl"
} }
build_libretro_picodrive() { build_libretro_picodrive() {
build_libretro_generic_makefile "picodrive" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "picodrive" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_tyrquake() { build_libretro_tyrquake() {
build_libretro_generic_makefile "tyrquake" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "tyrquake" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_2048() { build_libretro_2048() {
build_libretro_generic_makefile "2048" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "2048" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_vecx() { build_libretro_vecx() {
build_libretro_generic_makefile "vecx" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "vecx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_stella() { build_libretro_stella() {
build_libretro_generic_makefile "stella" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "stella" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_bluemsx() { build_libretro_bluemsx() {
build_libretro_generic_makefile "bluemsx" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "bluemsx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_handy() { build_libretro_handy() {
build_libretro_generic_makefile "handy" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "handy" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_fmsx() { build_libretro_fmsx() {
build_libretro_generic_makefile "fmsx" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "fmsx" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_gpsp() { build_libretro_gpsp() {
build_libretro_generic_makefile "gpsp" "." "Makefile" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "gpsp" "." "Makefile" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_vba_next() { build_libretro_vba_next() {
build_libretro_generic_makefile "vba_next" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "vba_next" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_vbam() { build_libretro_vbam() {
build_libretro_generic_makefile "vbam" "src/libretro" "Makefile" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "vbam" "src/libretro" "Makefile" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_snes9x_next() { build_libretro_snes9x_next() {
build_libretro_generic_makefile "snes9x_next" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "snes9x_next" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_dinothawr() { build_libretro_dinothawr() {
build_libretro_generic_makefile "dinothawr" "." "Makefile" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "dinothawr" "." "Makefile" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_genesis_plus_gx() { build_libretro_genesis_plus_gx() {
build_libretro_generic_makefile "genesis_plus_gx" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "genesis_plus_gx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_mame078() { build_libretro_mame078() {
build_libretro_generic_makefile "mame078" "." "makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mame078" "." "makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_prboom() { build_libretro_prboom() {
build_libretro_generic_makefile "prboom" "." "Makefile" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "prboom" "." "Makefile" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_pcsx_rearmed() { build_libretro_pcsx_rearmed() {
build_libretro_generic_makefile "pcsx_rearmed" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "pcsx_rearmed" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_fceumm() { build_libretro_fceumm() {
build_libretro_generic_makefile "fceumm" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "fceumm" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_snes() { build_libretro_beetle_snes() {
build_libretro_generic_makefile "mednafen_snes" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_snes" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_lynx() { build_libretro_beetle_lynx() {
build_libretro_generic_makefile "mednafen_lynx" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_lynx" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_wswan() { build_libretro_beetle_wswan() {
build_libretro_generic_makefile "mednafen_wswan" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_wswan" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_gba() { build_libretro_beetle_gba() {
build_libretro_generic_makefile "mednafen_gba" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_gba" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_ngp() { build_libretro_beetle_ngp() {
build_libretro_generic_makefile "mednafen_ngp" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_ngp" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_pce_fast() { build_libretro_beetle_pce_fast() {
build_libretro_generic_makefile "mednafen_pce_fast" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_pce_fast" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_vb() { build_libretro_beetle_vb() {
build_libretro_generic_makefile "mednafen_vb" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_vb" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_pcfx() { build_libretro_beetle_pcfx() {
build_libretro_generic_makefile "mednafen_pcfx" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_pcfx" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_psx() { build_libretro_beetle_psx() {
build_libretro_generic_makefile "beetle_psx" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "beetle_psx" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_mednafen_psx() { build_libretro_mednafen_psx() {
build_libretro_generic_makefile "mednafen_psx" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_psx" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_beetle_supergrafx() { build_libretro_beetle_supergrafx() {
build_libretro_generic_makefile "mednafen_supergrafx" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "mednafen_supergrafx" "." "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_meteor() { build_libretro_meteor() {
build_libretro_generic_makefile "meteor" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "meteor" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_nestopia() { build_libretro_nestopia() {
build_libretro_generic_makefile "nestopia" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "nestopia" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_gambatte() { build_libretro_gambatte() {
build_libretro_generic_makefile "gambatte" "libgambatte" "Makefile.libretro" ${FORMAT_COMPILER_TARGET_ALT} build_libretro_generic_makefile "gambatte" "libgambatte" "Makefile.libretro" $FORMAT_COMPILER_TARGET_ALT
} }
build_libretro_yabause() { build_libretro_yabause() {
build_libretro_generic_makefile "yabause" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "yabause" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_desmume() { build_libretro_desmume() {
build_libretro_generic_makefile "desmume" "desmume" "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "desmume" "desmume" "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_snes9x() { build_libretro_snes9x() {
build_libretro_generic_makefile "snes9x" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "snes9x" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_quicknes() { build_libretro_quicknes() {
build_libretro_generic_makefile "quicknes" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "quicknes" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_dosbox() { build_libretro_dosbox() {
build_libretro_generic_makefile "dosbox" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "dosbox" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_fb_alpha() { build_libretro_fb_alpha() {
build_libretro_generic_makefile "fb_alpha" "svn-current/trunk" "makefile.libretro" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "fb_alpha" "svn-current/trunk" "makefile.libretro" $FORMAT_COMPILER_TARGET
} }
build_libretro_ffmpeg() { build_libretro_ffmpeg() {
check_opengl check_opengl
build_libretro_generic_makefile "ffmpeg" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "ffmpeg" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
reset_compiler_targets reset_compiler_targets
} }
build_libretro_3dengine() { build_libretro_3dengine() {
check_opengl check_opengl
build_libretro_generic_makefile "3dengine" "." "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "3dengine" "." "Makefile" $FORMAT_COMPILER_TARGET
reset_compiler_targets reset_compiler_targets
} }
build_libretro_scummvm() { build_libretro_scummvm() {
build_libretro_generic_makefile "scummvm" "backends/platform/libretro/build" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "scummvm" "backends/platform/libretro/build" "Makefile" $FORMAT_COMPILER_TARGET
} }
build_libretro_ppsspp() { build_libretro_ppsspp() {
check_opengl check_opengl
build_libretro_generic_makefile "ppsspp" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} build_libretro_generic_makefile "ppsspp" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
reset_compiler_targets reset_compiler_targets
} }
build_libretro_mame() { build_libretro_mame() {
build_dir="${WORKDIR}/libretro-mame" build_dir="$WORKDIR/libretro-mame"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '' echo ''
echo '=== Building MAME ===' echo '=== Building MAME ==='
cd "${build_dir}" echo "cd \"$build_dir\""
cd "$build_dir"
if [ "$IOS" ]; then if [ "$IOS" ]; then
echo '=== Building MAME (iOS) ===' echo '=== Building MAME (iOS) ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "NATIVE=1" buildtools "-j${JOBS}" || die 'Failed to build MAME buildtools' echo "$MAKE -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"NATIVE=1\" buildtools \"-j$JOBS\""
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" emulator "-j${JOBS}" || die 'Failed to build MAME (iOS)' $MAKE -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "NATIVE=1" buildtools "-j$JOBS" || die 'Failed to build MAME buildtools'
echo "$MAKE -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" emulator \"-j$JOBS\""
$MAKE -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" emulator "-j$JOBS" || die 'Failed to build MAME (iOS)'
elif [ "$X86_64" = "true" ]; then elif [ "$X86_64" = "true" ]; then
echo '=== Building MAME64 ===' echo '=== Building MAME64 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE PTR64=1 -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE PTR64=1 -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
else else
echo '=== Building MAME32 ===' echo '=== Building MAME32 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mame\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE -f Makefile.libretro "TARGET=mame" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
fi fi
cp "mame_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"mame_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
cp "mame_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
else else
echo 'MAME not fetched, skipping ...' echo 'MAME not fetched, skipping ...'
fi fi
} }
build_libretro_mess() { build_libretro_mess() {
build_dir="${WORKDIR}/libretro-mame" build_dir="$WORKDIR/libretro-mame"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '' echo ''
echo '=== Building MESS ===' echo '=== Building MESS ==='
cd "${build_dir}" echo "cd \"$build_dir\""
cd "$build_dir"
if [ "$X86_64" = "true" ]; then if [ "$X86_64" = "true" ]; then
echo '=== Building MESS64 ===' echo '=== Building MESS64 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=mess\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE PTR64=1 -f Makefile.libretro "TARGET=mess" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=mess\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE PTR64=1 -f Makefile.libretro "TARGET=mess" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
else else
echo '=== Building MESS32 ===' echo '=== Building MESS32 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mess\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro "TARGET=mess" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mess\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE -f Makefile.libretro "TARGET=mess" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
fi fi
cp "mess_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"mess_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} "mess" cp "mess_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "mess"
else else
echo 'MAME not fetched, skipping ...' echo 'MAME not fetched, skipping ...'
fi fi
} }
rebuild_libretro_mess() { rebuild_libretro_mess() {
build_dir="${WORKDIR}/libretro-mame" build_dir="$WORKDIR/libretro-mame"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '' echo ''
echo '=== Building MESS ===' echo '=== Building MESS ==='
cd "${build_dir}" echo "cd \"$build_dir\""
cd "$build_dir"
if [ "$X86_64" = "true" ]; then if [ "$X86_64" = "true" ]; then
echo '=== Building MESS64 ===' echo '=== Building MESS64 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mess" "PARTIAL=1" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=mess\" \"PARTIAL=1\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE PTR64=1 -f Makefile.libretro "TARGET=mess" "PARTIAL=1" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=mess\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE PTR64=1 -f Makefile.libretro "TARGET=mess" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
else else
echo '=== Building MESS32 ===' echo '=== Building MESS32 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro "TARGET=mess" "PARTIAL=1" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mess\" \"PARTIAL=1\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro "TARGET=mess" "PARTIAL=1" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE -f Makefile.libretro \"TARGET=mess\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE -f Makefile.libretro "TARGET=mess" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
fi fi
cp "mess_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"mess_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} "mess" cp "mess_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "mess"
else else
echo 'MAME not fetched, skipping ...' echo 'MAME not fetched, skipping ...'
fi fi
} }
build_libretro_ume() { build_libretro_ume() {
build_dir="${WORKDIR}/libretro-mame" build_dir="$WORKDIR/libretro-mame"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '' echo ''
echo '=== Building UME ===' echo '=== Building UME ==='
cd "${build_dir}" cd "$build_dir"
if [ "$X86_64" = "true" ]; then if [ "$X86_64" = "true" ]; then
echo '=== Building UME64 ===' echo '=== Building UME64 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=ume\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE PTR64=1 -f Makefile.libretro "TARGET=ume" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=ume\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE PTR64=1 -f Makefile.libretro "TARGET=ume" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
else else
echo '=== Building UME32 ===' echo '=== Building UME32 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE -f Makefile.libretro \"TARGET=ume\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro "TARGET=ume" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE -f Makefile.libretro \"TARGET=ume\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE -f Makefile.libretro "TARGET=ume" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
fi fi
cp "ume_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"ume_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} "ume" cp "ume_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "ume"
else else
echo 'MAME not fetched, skipping ...' echo 'MAME not fetched, skipping ...'
fi fi
} }
rebuild_libretro_ume() { rebuild_libretro_ume() {
build_dir="${WORKDIR}/libretro-mame" build_dir="$WORKDIR/libretro-mame"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '' echo ''
echo '=== Building UME ===' echo '=== Building UME ==='
cd "${build_dir}" echo "cd \"$build_dir\""
cd "$build_dir"
if [ "$X86_64" = "true" ]; then if [ "$X86_64" = "true" ]; then
echo '=== Building UME64 ===' echo '=== Building UME64 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=ume" "PARTIAL=1" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=ume\" \"PARTIAL=1\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE PTR64=1 -f Makefile.libretro "TARGET=ume" "PARTIAL=1" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE PTR64=1 -f Makefile.libretro \"TARGET=ume\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE PTR64=1 -f Makefile.libretro "TARGET=ume" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
else else
echo '=== Building UME32 ===' echo '=== Building UME32 ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile.libretro "TARGET=ume" "PARTIAL=1" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die 'Failed to clean MAME' echo "$MAKE -f Makefile.libretro \"TARGET=ume\" \"PARTIAL=1\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" clean"
$MAKE -f Makefile.libretro "TARGET=ume" "PARTIAL=1" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" clean || die 'Failed to clean MAME'
fi fi
"${MAKE}" -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME' echo "$MAKE -f Makefile.libretro \"TARGET=ume\" platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE -f Makefile.libretro "TARGET=ume" platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build MAME'
fi fi
cp "ume_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"ume_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} "ume" cp "ume_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "ume"
else else
echo 'MAME not fetched, skipping ...' echo 'MAME not fetched, skipping ...'
fi fi
@ -533,20 +576,23 @@ rebuild_libretro_ume() {
# $2 is profile shortname. # $2 is profile shortname.
# $3 is profile name # $3 is profile name
build_libretro_bsnes_modern() { build_libretro_bsnes_modern() {
build_dir="${WORKDIR}/libretro-${1}" build_dir="$WORKDIR/libretro-$1"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo "=== Building ${1} ${3} ===" echo "=== Building $1 $3 ==="
cd ${build_dir} echo "cd \"$build_dir\""
cd "$build_dir"
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
rm -f obj/*.{o,"${FORMAT_EXT}"} rm -f obj/*.{o,"$FORMAT_EXT"}
rm -f out/*.{o,"${FORMAT_EXT}"} rm -f out/*.{o,"$FORMAT_EXT"}
fi fi
"${MAKE}" -f Makefile platform="${FORMAT_COMPILER_TARGET}" compiler="$CXX11" ui='target-libretro' profile="${3}" "-j${JOBS}" || die "Failed to build ${1} ${3} core" echo "$MAKE -f Makefile platform=\"$FORMAT_COMPILER_TARGET\" compiler=\"$CXX11\" ui='target-libretro' profile=\"${3}\" \"-j$JOBS\""
cp -f "out/${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/${1}_${3}_libretro${FORMAT}.${FORMAT_EXT}" $MAKE -f Makefile platform="$FORMAT_COMPILER_TARGET" compiler="$CXX11" ui='target-libretro' profile="${3}" "-j$JOBS" || die "Failed to build $1 $3 core"
build_summary_log ${?} "${1}_${3}" echo "cp -f \"out/${1}_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR/${1}_${3}_libretro${FORMAT}.$FORMAT_EXT\""
cp -f "out/${1}_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR/${1}_${3}_libretro${FORMAT}.$FORMAT_EXT"
build_summary_log $? "${1}_$3"
else else
echo "${1} ${3} not fetched, skipping ..." echo "$1 $3 not fetched, skipping ..."
fi fi
} }
@ -564,35 +610,43 @@ build_libretro_bsnes_mercury() {
build_libretro_bsnes_cplusplus98() { build_libretro_bsnes_cplusplus98() {
CORENAME="bsnes_cplusplus98" CORENAME="bsnes_cplusplus98"
build_dir="${WORKDIR}/libretro-${CORENAME}" build_dir="$WORKDIR/libretro-$CORENAME"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo "=== Building ${CORENAME} ===" echo "=== Building $CORENAME ==="
cd ${build_dir} echo "cd \"$build_dir\""
cd "$build_dir"
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" clean || die "Failed to clean ${CORENAME}" echo "$MAKE clean"
$MAKE clean || die "Failed to clean $CORENAME"
fi fi
"${MAKE}" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" echo "$MAKE platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
cp "out/libretro.${FORMAT_EXT}" "${RARCH_DIST_DIR}/${CORENAME}_libretro${FORMAT}.${FORMAT_EXT}" $MAKE platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS"
build_summary_log ${?} ${CORENAME} echo "cp \"out/libretro.$FORMAT_EXT\" \"$RARCH_DIST_DIR/$CORENAME_libretro${FORMAT}.$FORMAT_EXT\""
cp "out/libretro.$FORMAT_EXT" "$RARCH_DIST_DIR/$CORENAME_libretro${FORMAT}.$FORMAT_EXT"
build_summary_log $? $CORENAME
else else
echo "${CORENAME} not fetched, skipping ..." echo "$CORENAME not fetched, skipping ..."
fi fi
} }
build_libretro_bnes() { build_libretro_bnes() {
build_dir="${WORKDIR}/libretro-bnes" build_dir="$WORKDIR/libretro-bnes"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
echo '=== Building bNES ===' echo '=== Building bNES ==='
cd ${build_dir} echo "cd \"$build_dir\""
cd "$build_dir"
mkdir -p obj mkdir -p obj
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" -f Makefile "-j${JOBS}" clean || die 'Failed to clean bNES' echo "$MAKE -f Makefile \"-j$JOBS\" clean"
$MAKE -f Makefile "-j$JOBS" clean || die 'Failed to clean bNES'
fi fi
"${MAKE}" -f Makefile CC="$CC" CXX="$CXX" "-j${JOBS}" compiler="${CXX11}" || die 'Failed to build bNES' echo "$MAKE -f Makefile CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" compiler=\"${CXX11}\""
cp "libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/bnes_libretro${FORMAT}.${FORMAT_EXT}" $MAKE -f Makefile CC="$CC" CXX="$CXX" "-j$JOBS" compiler="${CXX11}" || die 'Failed to build bNES'
build_summary_log ${?} "bnes" echo "cp \"libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR/bnes_libretro${FORMAT}.$FORMAT_EXT\""
cp "libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR/bnes_libretro${FORMAT}.$FORMAT_EXT"
build_summary_log $? "bnes"
else else
echo 'bNES not fetched, skipping ...' echo 'bNES not fetched, skipping ...'
fi fi
@ -600,38 +654,48 @@ build_libretro_bnes() {
build_libretro_mupen64() { build_libretro_mupen64() {
check_opengl check_opengl
build_dir="${WORKDIR}/libretro-mupen64plus" build_dir="$WORKDIR/libretro-mupen64plus"
if [ -d "${build_dir}" ]; then if [ -d "$build_dir" ]; then
cd "${build_dir}" echo cd \"$build_dir\"
cd "$build_dir"
mkdir -p obj mkdir -p obj
if [ "${X86}" ] && [ "${X86_64}" ]; then if [ "$X86" ] && [ "$X86_64" ]; then
echo '=== Building Mupen 64 Plus (x86_64 dynarec) ===' echo '=== Building Mupen 64 Plus (x86_64 dynarec) ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" WITH_DYNAREC='x86_64' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (x86_64 dynarec)' echo "$MAKE WITH_DYNAREC='x86_64' platform=\"$FORMAT_COMPILER_TARGET_ALT\" \"-j$JOBS\" clean"
$MAKE WITH_DYNAREC='x86_64' platform="$FORMAT_COMPILER_TARGET_ALT" "-j$JOBS" clean || die 'Failed to clean Mupen 64 (x86_64 dynarec)'
fi fi
"${MAKE}" WITH_DYNAREC='x86_64' platform="${FORMAT_COMPILER_TARGET_ALT}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build Mupen 64 (x86_64 dynarec)' echo "$MAKE WITH_DYNAREC='x86_64' platform=\"$FORMAT_COMPILER_TARGET_ALT\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" || die 'Failed to build Mupen 64 (x86_64 dynarec)'"
elif [ "${X86}" ]; then $MAKE WITH_DYNAREC='x86_64' platform="$FORMAT_COMPILER_TARGET_ALT" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build Mupen 64 (x86_64 dynarec)'
elif [ "$X86" ]; then
echo '=== Building Mupen 64 Plus (x86 32bit dynarec) ===' echo '=== Building Mupen 64 Plus (x86 32bit dynarec) ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" WITH_DYNAREC='x86' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (x86 dynarec)' echo "$MAKE WITH_DYNAREC='x86' platform=\"$FORMAT_COMPILER_TARGET_ALT\" \"-j$JOBS\" clean"
$MAKE WITH_DYNAREC='x86' platform="$FORMAT_COMPILER_TARGET_ALT" "-j$JOBS" clean || die 'Failed to clean Mupen 64 (x86 dynarec)'
fi fi
"${MAKE}" WITH_DYNAREC='x86' platform="${FORMAT_COMPILER_TARGET_ALT}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build Mupen 64 (x86 dynarec)' echo "$MAKE WITH_DYNAREC='x86' platform=\"$FORMAT_COMPILER_TARGET_ALT\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE WITH_DYNAREC='x86' platform="$FORMAT_COMPILER_TARGET_ALT" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build Mupen 64 (x86 dynarec)'
elif [ "${CORTEX_A8}" ] || [ "${CORTEX_A9}" ] || [ "${IOS}" ]; then elif [ "${CORTEX_A8}" ] || [ "${CORTEX_A9}" ] || [ "${IOS}" ]; then
echo '=== Building Mupen 64 Plus (ARM dynarec) ===' echo '=== Building Mupen 64 Plus (ARM dynarec) ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" WITH_DYNAREC='arm' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (ARM dynarec)' echo "$MAKE WITH_DYNAREC='arm' platform=\"$FORMAT_COMPILER_TARGET_ALT\" \"-j$JOBS\""
$MAKE WITH_DYNAREC='arm' platform="$FORMAT_COMPILER_TARGET_ALT" "-j$JOBS" clean || die 'Failed to clean Mupen 64 (ARM dynarec)'
fi fi
"${MAKE}" WITH_DYNAREC='arm' platform="${FORMAT_COMPILER_TARGET_ALT}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build Mupen 64 (ARM dynarec)' echo "$MAKE WITH_DYNAREC='arm' platform=\"$FORMAT_COMPILER_TARGET_ALT\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE WITH_DYNAREC='arm' platform="$FORMAT_COMPILER_TARGET_ALT" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build Mupen 64 (ARM dynarec)'
else else
echo '=== Building Mupen 64 Plus ===' echo '=== Building Mupen 64 Plus ==='
if [ -z "${NOCLEAN}" ]; then if [ -z "$NOCLEAN" ]; then
"${MAKE}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64' echo "$MAKE \"-j$JOBS\" clean"
$MAKE "-j$JOBS" clean || die 'Failed to clean Mupen 64'
fi fi
"${MAKE}" platform="${FORMAT_COMPILER_TARGET_ALT}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build Mupen 64' echo "$MAKE platform=\"$FORMAT_COMPILER_TARGET_ALT\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
$MAKE platform="$FORMAT_COMPILER_TARGET_ALT" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build Mupen 64'
fi fi
cp "mupen64plus_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}" echo "cp \"mupen64plus_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
build_summary_log ${?} "mupen64plus" cp "mupen64plus_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
build_summary_log $? "mupen64plus"
else else
echo 'Mupen64 Plus not fetched, skipping ...' echo 'Mupen64 Plus not fetched, skipping ...'
fi fi
@ -661,11 +725,7 @@ build_summary() {
} }
create_dist_dir() { create_dist_dir() {
if [ -d "${RARCH_DIST_DIR}" ]; then mkdir -p "$RARCH_DIST_DIR"
echo "Directory ${RARCH_DIST_DIR} already exists, skipping creation..."
else
mkdir -p "${RARCH_DIST_DIR}"
fi
} }
create_dist_dir create_dist_dir