Merge pull request #187 from iKarith/master
libretro-build-common: echo build commands and improve shell quoting
This commit is contained in:
commit
50c7a048d8
|
@ -19,6 +19,10 @@ iKarith, 2015-02-07
|
|||
|
||||
## History
|
||||
|
||||
2015-02-17.0: Updated to reflect the now deleted iKarith files
|
||||
There are changes to the planned implementation not discussed
|
||||
here yet, so just know that that section is still obsolete. It
|
||||
is still in the RFC stage, though, so it can wait a day or two.
|
||||
2015-02-08.1: Extensive rewrite of future direction portions
|
||||
2015-02-08.0: Added discussion of dependencies
|
||||
2015-02-07.1: Changed heading levels
|
||||
|
@ -59,12 +63,17 @@ additional set of build scripts replacing most of these almost in their
|
|||
entirety written for the buildbot. And then there's the Makefiles which
|
||||
are often just as much of a mess (but a separate problem…)
|
||||
|
||||
This is why the iKarith-\*.sh scripts. If you touch any of the mainline
|
||||
scripts to do what we need to do, you *will* break something. In fact, I
|
||||
happen to know that most of the scripts need a (fairly trivial) patch as it
|
||||
is. Mea culpa for introducing the need, but those scripts that don't get
|
||||
patched before I get to them are the ones I can assume may have suffered other
|
||||
forms of bit rot and will require additional care/testing.
|
||||
Originally I began working on this using iKarith-\*.sh scripts which were
|
||||
copies of the build scripts in libretro-super, but were a safe sandbox for
|
||||
changing stuff. The reason was that if you touch the mainline scripts in any
|
||||
significant way, you *will* break something. Indeed, many of the more minor
|
||||
platform build scripts will not function at present without a (fairly trivial)
|
||||
patch to enable them to be used outside of the libretro-super directory.
|
||||
|
||||
I'm personally leaving them in their known slightly-broken state. Justified
|
||||
by the fact that any script that goes unpatched hasn't been tested in awhile
|
||||
and needs more careful scrutiny when its features are incorporated into the
|
||||
new build system.
|
||||
|
||||
|
||||
### The Political Problem?
|
||||
|
@ -444,19 +453,4 @@ of adding an extension to COPYING. I also chose to give it a version
|
|||
designation.
|
||||
|
||||
|
||||
## Porting features
|
||||
|
||||
Porting features from the iKarith scripts to the standard scripts is fine,
|
||||
indeed it's welcome. Just keep in mind that while it's possible to do, you
|
||||
really need to test everything you can if you do. At the very least, make
|
||||
sure that you test Linux, Windows, and OS X if possible. You might also want
|
||||
to check with radius as to whether or not your changes will break his
|
||||
buildbot.
|
||||
|
||||
That's about all I can think of for now. This file will see updates as the
|
||||
concepts contained herein evolve.
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- vim: set tw=78 ts=8 sw=8 noet ft=markdown spell: -->
|
||||
|
|
|
@ -1,652 +0,0 @@
|
|||
# vim: set ts=3 sw=3 noet ft=sh : bash
|
||||
|
||||
die() {
|
||||
echo $1
|
||||
#exit 1
|
||||
}
|
||||
|
||||
#
|
||||
# FIXME: Okay regarding COMPILER... It's no longer used to build any targets
|
||||
# in this file because it doesn't let you specify arguments to the compiler
|
||||
# such as CC="gcc -something". We need to be able to do that on the Mac in
|
||||
# particular because we need to be able to specify -arch to build on a CPU
|
||||
# other than the default.
|
||||
#
|
||||
# Basically, if you use this variable, you should stop. :)
|
||||
#
|
||||
if [ "${CC}" ] && [ "${CXX}" ]; then
|
||||
COMPILER="CC=\"${CC}\" CXX=\"${CXX}\""
|
||||
else
|
||||
COMPILER=""
|
||||
fi
|
||||
|
||||
echo "Compiler: CC=\"$CC\" CXX=\"$CXX\""
|
||||
|
||||
[[ "${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_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_SOFTFLOAT}" ]] && echo '=== ARM softfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-softfloat"
|
||||
[[ "${X86}" ]] && echo '=== x86 CPU detected... ==='
|
||||
[[ "${X86}" ]] && [[ "${X86_64}" ]] && echo '=== x86_64 CPU detected... ==='
|
||||
[[ "${IOS}" ]] && echo '=== iOS =='
|
||||
|
||||
echo "${FORMAT_COMPILER_TARGET}"
|
||||
echo "${FORMAT_COMPILER_TARGET_ALT}"
|
||||
RESET_FORMAT_COMPILER_TARGET=$FORMAT_COMPILER_TARGET
|
||||
RESET_FORMAT_COMPILER_TARGET_ALT=$FORMAT_COMPILER_TARGET_ALT
|
||||
|
||||
build_summary_log() {
|
||||
if [ -n "${BUILD_SUMMARY}" ]; then
|
||||
if [ "${1}" -eq "0" ]; then
|
||||
echo ${2} >> ${BUILD_SUCCESS}
|
||||
else
|
||||
echo ${2} >> ${BUILD_FAIL}
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
check_opengl() {
|
||||
if [ "${BUILD_LIBRETRO_GL}" ]; then
|
||||
if [ "${ENABLE_GLES}" ]; then
|
||||
echo '=== OpenGL ES enabled ==='
|
||||
export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-gles"
|
||||
export FORMAT_COMPILER_TARGET_ALT="${FORMAT_COMPILER_TARGET}"
|
||||
else
|
||||
echo '=== OpenGL enabled ==='
|
||||
export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-opengl"
|
||||
export FORMAT_COMPILER_TARGET_ALT="${FORMAT_COMPILER_TARGET}"
|
||||
fi
|
||||
else
|
||||
echo '=== OpenGL disabled in build ==='
|
||||
fi
|
||||
}
|
||||
|
||||
reset_compiler_targets() {
|
||||
export FORMAT_COMPILER_TARGET=$RESET_FORMAT_COMPILER_TARGET
|
||||
export FORMAT_COMPILER_TARGET_ALT=$RESET_FORMAT_COMPILER_TARGET_ALT
|
||||
}
|
||||
|
||||
build_libretro_pcsx_rearmed_interpreter() {
|
||||
build_dir="${WORKDIR}/libretro-pcsx_rearmed"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo '=== Building PCSX ReARMed Interpreter ==='
|
||||
cd "${build_dir}"
|
||||
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" -f Makefile.libretro USE_DYNAREC=0 platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build PCSX ReARMed'
|
||||
cp "pcsx_rearmed_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/pcsx_rearmed_interpreter${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} "pcsx_rearmed_interpreter"
|
||||
else
|
||||
echo 'PCSX ReARMed not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
# $1 is corename
|
||||
# $2 is subcorename
|
||||
# $3 is subdir. In case there is no subdir, enter "." here
|
||||
# $4 is Makefile name
|
||||
# $5 is preferred platform
|
||||
build_libretro_generic_makefile_subcore() {
|
||||
build_dir="${WORKDIR}/libretro-${1}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${2} ==="
|
||||
cd "${build_dir}/${3}"
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
make -f ${4} platform=${5} -j$JOBS clean || die "Failed to clean ${2}"
|
||||
fi
|
||||
make -f ${4} platform=${5} -j$JOBS || die "Failed to build ${2}"
|
||||
cp ${2}_libretro$FORMAT.${FORMAT_EXT} $RARCH_DIST_DIR/${2}_libretro$FORMAT.${FORMAT_EXT}
|
||||
build_summary_log ${?} ${2}
|
||||
fi
|
||||
}
|
||||
|
||||
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_fba_neogeo() {
|
||||
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_generic_makefile_subcore "fb_alpha" "fba_cores_cps1" "svn-current/trunk/fbacores/cps1" "makefile.libretro" ${FORMAT_COMPILER_TARGET}
|
||||
}
|
||||
|
||||
|
||||
copy_core_to_dist() {
|
||||
if [ "$FORMAT_COMPILER_TARGET" = "theos_ios" ]; then
|
||||
cp "objs/obj/${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} ${1}
|
||||
else
|
||||
cp "${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} ${1}
|
||||
fi
|
||||
}
|
||||
|
||||
# $1 is corename
|
||||
# $2 is subdir. In case there is no subdir, enter "." here
|
||||
# $3 is Makefile name
|
||||
# $4 is preferred platform
|
||||
build_libretro_generic_makefile() {
|
||||
build_dir="${WORKDIR}/libretro-${1}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${1} ==="
|
||||
cd "${build_dir}/${2}"
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" -f ${3} platform="${4}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die "Failed to build ${1}"
|
||||
fi
|
||||
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}"
|
||||
if [ -z "${5}" ]; then
|
||||
copy_core_to_dist $1
|
||||
fi
|
||||
else
|
||||
echo "${1} not fetched, skipping ..."
|
||||
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_generic_makefile "emux" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET} 1
|
||||
copy_core_to_dist "emux_chip8"
|
||||
copy_core_to_dist "emux_gb"
|
||||
copy_core_to_dist "emux_nes"
|
||||
copy_core_to_dist "emux_sms"
|
||||
}
|
||||
|
||||
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_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() {
|
||||
check_opengl
|
||||
build_libretro_generic_makefile "ffmpeg" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
reset_compiler_targets
|
||||
}
|
||||
|
||||
build_libretro_3dengine() {
|
||||
check_opengl
|
||||
build_libretro_generic_makefile "3dengine" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
reset_compiler_targets
|
||||
}
|
||||
|
||||
build_libretro_scummvm() {
|
||||
build_libretro_generic_makefile "scummvm" "backends/platform/libretro/build" "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
}
|
||||
|
||||
build_libretro_ppsspp() {
|
||||
check_opengl
|
||||
build_libretro_generic_makefile "ppsspp" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
reset_compiler_targets
|
||||
}
|
||||
|
||||
|
||||
build_libretro_mame() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo ''
|
||||
echo '=== Building MAME ==='
|
||||
cd "${build_dir}"
|
||||
|
||||
if [ "$IOS" ]; then
|
||||
echo '=== Building MAME (iOS) ==='
|
||||
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'
|
||||
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'
|
||||
"${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
|
||||
echo '=== Building MAME64 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
else
|
||||
echo '=== Building MAME32 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
fi
|
||||
cp "mame_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_mess() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo ''
|
||||
echo '=== Building MESS ==='
|
||||
cd "${build_dir}"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building MESS64 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
else
|
||||
echo '=== Building MESS32 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
fi
|
||||
cp "mess_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "mess"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
rebuild_libretro_mess() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo ''
|
||||
echo '=== Building MESS ==='
|
||||
cd "${build_dir}"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building MESS64 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
else
|
||||
echo '=== Building MESS32 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" -f Makefile.libretro "TARGET=mess" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
fi
|
||||
cp "mess_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "mess"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_ume() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo ''
|
||||
echo '=== Building UME ==='
|
||||
cd "${build_dir}"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building UME64 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
else
|
||||
echo '=== Building UME32 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
fi
|
||||
cp "ume_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "ume"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
rebuild_libretro_ume() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo ''
|
||||
echo '=== Building UME ==='
|
||||
cd "${build_dir}"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building UME64 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" PTR64=1 -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
else
|
||||
echo '=== Building UME32 ==='
|
||||
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'
|
||||
fi
|
||||
"${MAKE}" -f Makefile.libretro "TARGET=ume" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build MAME'
|
||||
fi
|
||||
cp "ume_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "ume"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
# $1 is corename
|
||||
# $2 is profile shortname.
|
||||
# $3 is profile name
|
||||
# $4 is compiler
|
||||
build_libretro_bsnes_modern() {
|
||||
build_dir="${WORKDIR}/libretro-${1}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${1} ${3} ==="
|
||||
cd ${build_dir}
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
rm -f obj/*.{o,"${FORMAT_EXT}"}
|
||||
rm -f out/*.{o,"${FORMAT_EXT}"}
|
||||
fi
|
||||
"${MAKE}" -f Makefile platform="${FORMAT_COMPILER_TARGET}" compiler="$CXX11" ui='target-libretro' profile="${3}" "-j${JOBS}" || die "Failed to build ${1} ${3} core"
|
||||
cp -f "out/${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/${1}_${3}_libretro${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} "${1}_${3}"
|
||||
else
|
||||
echo "${1} ${3} not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_bsnes() {
|
||||
build_libretro_bsnes_modern "bsnes" "perf" "performance"
|
||||
build_libretro_bsnes_modern "bsnes" "balanced" "balanced"
|
||||
build_libretro_bsnes_modern "bsnes" "." "accuracy"
|
||||
}
|
||||
|
||||
build_libretro_bsnes_mercury() {
|
||||
build_libretro_bsnes_modern "bsnes_mercury" "perf" "performance"
|
||||
build_libretro_bsnes_modern "bsnes_mercury" "balanced" "balanced"
|
||||
build_libretro_bsnes_modern "bsnes_mercury" "." "accuracy"
|
||||
}
|
||||
|
||||
build_libretro_bsnes_cplusplus98() {
|
||||
CORENAME="bsnes_cplusplus98"
|
||||
build_dir="${WORKDIR}/libretro-${CORENAME}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${CORENAME} ==="
|
||||
cd ${build_dir}
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" clean || die "Failed to clean ${CORENAME}"
|
||||
fi
|
||||
"${MAKE}" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}"
|
||||
cp "out/libretro.${FORMAT_EXT}" "${RARCH_DIST_DIR}/${CORENAME}_libretro${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} ${CORENAME}
|
||||
else
|
||||
echo "${CORENAME} not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_bnes() {
|
||||
build_dir="${WORKDIR}/libretro-bnes"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo '=== Building bNES ==='
|
||||
cd ${build_dir}
|
||||
|
||||
mkdir -p obj
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" -f Makefile "-j${JOBS}" clean || die 'Failed to clean bNES'
|
||||
fi
|
||||
"${MAKE}" -f Makefile CC="$CC" CXX="$CXX" "-j${JOBS}" compiler="${CXX11}" || die 'Failed to build bNES'
|
||||
cp "libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/bnes_libretro${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} "bnes"
|
||||
else
|
||||
echo 'bNES not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_mupen64() {
|
||||
check_opengl
|
||||
build_dir="${WORKDIR}/libretro-mupen64plus"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
cd "${build_dir}"
|
||||
|
||||
mkdir -p obj
|
||||
if [ "${X86}" ] && [ "${X86_64}" ]; then
|
||||
echo '=== Building Mupen 64 Plus (x86_64 dynarec) ==='
|
||||
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)'
|
||||
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)'
|
||||
elif [ "${X86}" ]; then
|
||||
echo '=== Building Mupen 64 Plus (x86 32bit dynarec) ==='
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" WITH_DYNAREC='x86' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (x86 dynarec)'
|
||||
fi
|
||||
"${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
|
||||
echo '=== Building Mupen 64 Plus (ARM dynarec) ==='
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" WITH_DYNAREC='arm' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (ARM dynarec)'
|
||||
fi
|
||||
"${MAKE}" WITH_DYNAREC='arm' platform="${FORMAT_COMPILER_TARGET_ALT}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build Mupen 64 (ARM dynarec)'
|
||||
else
|
||||
echo '=== Building Mupen 64 Plus ==='
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64'
|
||||
fi
|
||||
"${MAKE}" platform="${FORMAT_COMPILER_TARGET_ALT}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build Mupen 64'
|
||||
fi
|
||||
cp "mupen64plus_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "mupen64plus"
|
||||
else
|
||||
echo 'Mupen64 Plus not fetched, skipping ...'
|
||||
fi
|
||||
reset_compiler_targets
|
||||
}
|
||||
|
||||
build_summary() {
|
||||
if [ -z "${NOBUILD_SUMMARY}" ]; then
|
||||
echo "=== Core Build Summary ===" > ${BUILD_SUMMARY}
|
||||
if [ -r "${BUILD_SUCCESS}" ]; then
|
||||
echo "`wc -l < ${BUILD_SUCCESS}` core(s) successfully built:" >> ${BUILD_SUMMARY}
|
||||
${BUILD_SUMMARY_FMT} ${BUILD_SUCCESS} >> ${BUILD_SUMMARY}
|
||||
else
|
||||
echo " 0 cores successfully built. :(" >> ${BUILD_SUMMARY}
|
||||
echo "`wc -l < ${BUILD_FAIL}` core(s) failed to build:"
|
||||
fi
|
||||
if [ -r "${BUILD_FAIL}" ]; then
|
||||
echo "`wc -l < ${BUILD_FAIL}` core(s) failed to build:" >> ${BUILD_SUMMARY}
|
||||
${BUILD_SUMMARY_FMT} ${BUILD_FAIL} >> ${BUILD_SUMMARY}
|
||||
else
|
||||
echo " 0 cores failed to build! :D" >> ${BUILD_SUMMARY}
|
||||
fi
|
||||
rm -f $BUILD_SUCCESS $BUILD_FAIL
|
||||
cat ${BUILD_SUMMARY}
|
||||
fi
|
||||
}
|
||||
|
||||
create_dist_dir() {
|
||||
if [ -d "${RARCH_DIST_DIR}" ]; then
|
||||
echo "Directory ${RARCH_DIST_DIR} already exists, skipping creation..."
|
||||
else
|
||||
mkdir -p "${RARCH_DIST_DIR}"
|
||||
fi
|
||||
}
|
||||
|
||||
create_dist_dir
|
|
@ -1,152 +0,0 @@
|
|||
#! /usr/bin/env bash
|
||||
# vim: set ts=3 sw=3 noet ft=sh : bash
|
||||
|
||||
SCRIPT="${0#./}"
|
||||
BASE_DIR="${SCRIPT%/*}"
|
||||
WORKDIR=$(pwd)
|
||||
|
||||
if [ "$BASE_DIR" = "$SCRIPT" ]; then
|
||||
BASE_DIR="$WORKDIR"
|
||||
else
|
||||
if [[ "$0" != /* ]]; then
|
||||
# Make the path absolute
|
||||
BASE_DIR="$WORKDIR/$BASE_DIR"
|
||||
fi
|
||||
fi
|
||||
|
||||
. ${BASE_DIR}/iKarith-libretro-config.sh
|
||||
|
||||
if [ -z "$RARCH_DIST_DIR" ]; then
|
||||
RARCH_DIR="${WORKDIR}/dist"
|
||||
RARCH_DIST_DIR="$RARCH_DIR/$DIST_DIR"
|
||||
fi
|
||||
|
||||
if [ -z "$JOBS" ]; then
|
||||
JOBS=7
|
||||
fi
|
||||
|
||||
die()
|
||||
{
|
||||
echo $1
|
||||
#exit 1
|
||||
}
|
||||
|
||||
if [ "$HOST_CC" ]; then
|
||||
CC="${HOST_CC}-gcc"
|
||||
CXX="${HOST_CC}-g++"
|
||||
CXX11="${HOST_CC}-g++"
|
||||
STRIP="${HOST_CC}-strip"
|
||||
fi
|
||||
|
||||
if [ -z "$MAKE" ]; then
|
||||
if uname -s | grep -i MINGW32 > /dev/null 2>&1; then
|
||||
MAKE=mingw32-make
|
||||
else
|
||||
if type gmake > /dev/null 2>&1; then
|
||||
MAKE=gmake
|
||||
else
|
||||
MAKE=make
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if [ -z "$CC" ]; then
|
||||
if [ $FORMAT_COMPILER_TARGET = "osx" ]; then
|
||||
CC=cc
|
||||
elif uname -s | grep -i MINGW32 > /dev/null 2>&1; then
|
||||
CC=mingw32-gcc
|
||||
else
|
||||
CC=gcc
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$CXX" ]; then
|
||||
if [ $FORMAT_COMPILER_TARGET = "osx" ]; then
|
||||
CXX=c++
|
||||
CXX11="clang++ -std=c++11 -stdlib=libc++"
|
||||
elif uname -s | grep -i MINGW32 > /dev/null 2>&1; then
|
||||
CXX=mingw32-g++
|
||||
CXX11=mingw32-g++
|
||||
else
|
||||
CXX=g++
|
||||
CXX11=g++
|
||||
fi
|
||||
fi
|
||||
|
||||
FORMAT_COMPILER_TARGET_ALT=$FORMAT_COMPILER_TARGET
|
||||
echo "CC = $CC"
|
||||
echo "CXX = $CXX"
|
||||
echo "STRIP = $STRIP"
|
||||
|
||||
. ${BASE_DIR}/iKarith-libretro-build-common.sh
|
||||
|
||||
mkdir -p "$RARCH_DIST_DIR"
|
||||
|
||||
if [ -n "${1}" ]; then
|
||||
NOBUILD_SUMMARY=1
|
||||
while [ -n "${1}" ]; do
|
||||
"${1}"
|
||||
shift
|
||||
done
|
||||
else
|
||||
build_libretro_2048
|
||||
build_libretro_4do
|
||||
build_libretro_bluemsx
|
||||
build_libretro_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_bnes
|
||||
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
|
||||
build_libretro_mame
|
||||
build_libretro_dosbox
|
||||
build_libretro_scummvm
|
||||
build_libretro_picodrive
|
||||
build_libretro_handy
|
||||
build_libretro_desmume
|
||||
if [ $FORMAT_COMPILER_TARGET != "win" ]; then
|
||||
build_libretro_pcsx_rearmed
|
||||
fi
|
||||
build_libretro_yabause
|
||||
build_libretro_vecx
|
||||
build_libretro_tgbdual
|
||||
build_libretro_prosystem
|
||||
build_libretro_dinothawr
|
||||
build_libretro_virtualjaguar
|
||||
build_libretro_mupen64
|
||||
build_libretro_ffmpeg
|
||||
build_libretro_3dengine
|
||||
build_libretro_ppsspp
|
||||
build_libretro_o2em
|
||||
build_libretro_hatari
|
||||
build_libretro_gpsp
|
||||
build_libretro_emux
|
||||
build_summary
|
||||
fi
|
|
@ -1,220 +0,0 @@
|
|||
# vim: set ts=3 sw=3 noet ft=sh : bash
|
||||
|
||||
# Architecture Assignment
|
||||
config_cpu() {
|
||||
[ -n "${2}" ] && ARCH=${1}
|
||||
[ -z "${ARCH}" ] && ARCH="`uname -m`"
|
||||
case "${ARCH}" in
|
||||
x86_64)
|
||||
X86=true
|
||||
X86_64=true
|
||||
;;
|
||||
i386|i686)
|
||||
X86=true
|
||||
;;
|
||||
armv*)
|
||||
ARM=true
|
||||
export FORMAT_COMPILER_TARGET=armv
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -marm"
|
||||
case "${ARCH}" in
|
||||
armv5tel) ARMV5=true ;;
|
||||
armv6l) ARMV6=true ;;
|
||||
armv7l) ARMV7=true ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
if [ -n "${PROCESSOR_ARCHITEW6432}" -a "${PROCESSOR_ARCHITEW6432}" = "AMD64" ]; then
|
||||
ARCH=x86_64
|
||||
X86=true && X86_64=true
|
||||
fi
|
||||
}
|
||||
|
||||
# Platform Assignment
|
||||
config_platform() {
|
||||
[ -n "${1}" ] && platform="${1}"
|
||||
[ -z "${platform}" ] && platform="`uname`"
|
||||
case "${platform}" in
|
||||
*BSD*)
|
||||
FORMAT_EXT="so"
|
||||
FORMAT_COMPILER_TARGET="unix"
|
||||
DIST_DIR="bsd"
|
||||
;;
|
||||
osx|*Darwin*)
|
||||
FORMAT_EXT="dylib"
|
||||
FORMAT_COMPILER_TARGET="osx"
|
||||
DIST_DIR="osx"
|
||||
;;
|
||||
win|*mingw32*|*MINGW32*|*MSYS_NT*)
|
||||
FORMAT_EXT="dll"
|
||||
FORMAT_COMPILER_TARGET="win"
|
||||
DIST_DIR="win_x86"
|
||||
;;
|
||||
win64|*mingw64*|*MINGW64*)
|
||||
FORMAT_EXT="dll"
|
||||
FORMAT_COMPILER_TARGET="win"
|
||||
DIST_DIR="win_x64"
|
||||
;;
|
||||
*psp1*)
|
||||
FORMAT_EXT="a"
|
||||
FORMAT_COMPILER_TARGET="psp1"
|
||||
DIST_DIR="psp1"
|
||||
;;
|
||||
*ios|theos_ios*)
|
||||
FORMAT_EXT="dylib"
|
||||
FORMAT_COMPILER_TARGET="theos_ios"
|
||||
DIST_DIR="theos"
|
||||
;;
|
||||
android)
|
||||
FORMAT_EXT="so"
|
||||
FORMAT_COMPILER_TARGET="android"
|
||||
DIST_DIR="android"
|
||||
;;
|
||||
*android-armv7*)
|
||||
FORMAT_EXT="so"
|
||||
FORMAT_COMPILER_TARGET="android-armv7"
|
||||
DIST_DIR="android/armeabi-v7a"
|
||||
;;
|
||||
*)
|
||||
FORMAT_EXT="so"
|
||||
FORMAT_COMPILER_TARGET="unix"
|
||||
DIST_DIR="unix"
|
||||
;;
|
||||
esac
|
||||
export FORMAT_COMPILER_TARGET_ALT="$FORMAT_COMPILER_TARGET"
|
||||
}
|
||||
|
||||
config_log_build_host() {
|
||||
echo "PLATFORM: ${platform}"
|
||||
echo "ARCHITECTURE: ${ARCH}"
|
||||
echo "TARGET: ${FORMAT_COMPILER_TARGET}"
|
||||
}
|
||||
|
||||
config_cpu
|
||||
config_platform
|
||||
config_log_build_host
|
||||
|
||||
if [ -z "${JOBS}" ]; then
|
||||
if command -v nproc >/dev/null; then
|
||||
JOBS=`nproc`
|
||||
else
|
||||
JOBS=1
|
||||
fi
|
||||
fi
|
||||
|
||||
#if uncommented, will fetch repos with read+write access. Useful for committers
|
||||
#export WRITERIGHTS=1
|
||||
|
||||
|
||||
#if uncommented, will build experimental cores as well which are not yet fit for release.
|
||||
#export BUILD_EXPERIMENTAL=1
|
||||
|
||||
#ARM DEFINES
|
||||
#===========
|
||||
|
||||
#if uncommented, will build cores with Cortex A8 compiler optimizations
|
||||
#export CORTEX_A8=1
|
||||
|
||||
#if uncommented, will build cores with Cortex A9 compiler optimizations
|
||||
#export CORTEX_A9=1
|
||||
|
||||
#if uncommented, will build cores with ARM hardfloat ABI
|
||||
#export ARM_HARDFLOAT=1
|
||||
|
||||
#if uncommented, will build cores with ARM softfloat ABI
|
||||
#export ARM_SOFTFLOAT=1
|
||||
|
||||
#if uncommented, will build cores with ARM NEON support (ARMv7+ only)
|
||||
#export ARM_NEON=1
|
||||
|
||||
#OPENGL DEFINES
|
||||
#==============
|
||||
|
||||
#if uncommented, will build libretro GL cores. Ignored for mobile platforms - GL cores will always be built there.
|
||||
export BUILD_LIBRETRO_GL=1
|
||||
|
||||
#if uncommented, will build cores with OpenGL ES 2 support. Not needed
|
||||
#for platform-specific cores - only for generic core builds (ie. libretro-build.sh)
|
||||
#export ENABLE_GLES=1
|
||||
|
||||
#ANDROID DEFINES
|
||||
#================
|
||||
|
||||
export TARGET_ABIS="armeabi armeabi-v7a x86"
|
||||
|
||||
#uncomment to define NDK standalone toolchain for ARM
|
||||
#export NDK_ROOT_DIR_ARM =
|
||||
|
||||
#uncomment to define NDK standalone toolchain for MIPS
|
||||
#export NDK_ROOT_DIR_MIPS =
|
||||
|
||||
#uncomment to define NDK standalone toolchain for x86
|
||||
#export NDK_ROOT_DIR_X86 =
|
||||
|
||||
# android version target if GLES is in use
|
||||
export NDK_GL_HEADER_VER=android-18
|
||||
|
||||
# android version target if GLES is not in use
|
||||
export NDK_NO_GL_HEADER_VER=android-9
|
||||
|
||||
# Retroarch target android API level
|
||||
export RA_ANDROID_API=android-18
|
||||
|
||||
# Retroarch minimum API level (defines low end android version compatability)
|
||||
export RA_ANDROID_MIN_API=android-9
|
||||
|
||||
#OSX DEFINES
|
||||
#===========
|
||||
|
||||
# Define this to skip the universal build
|
||||
# export NOUNIVERSAL=1
|
||||
|
||||
# ARCHFLAGS is a very convenient way of doing this for simple/obvious cores
|
||||
# that don't need anything defined on the command line for 32 vs 64 bit
|
||||
# systems, however it won't work for anything that does. For that, you need
|
||||
# to do two separate builds, one for each arch, and then do something like:
|
||||
# lipo -create core_i386.dylib core_x86_64.dylib -output core_ub.dylib
|
||||
#
|
||||
# If building on 10.5/10.6, it's possible that you could actually build a UB
|
||||
# for Intel/PowerPC, but please don't. ;) Consider this a proof of concept
|
||||
# for now just to test a few cores.
|
||||
|
||||
if [[ "${FORMAT_COMPILER_TARGET}" = "osx" && -z "${NOUNIVERSAL}" ]]; then
|
||||
case "${ARCH}" in
|
||||
i385|x86_64)
|
||||
export ARCHFLAGS="-arch i386 -arch x86_64"
|
||||
;;
|
||||
ppc|ppc64)
|
||||
export ARCHFLAGS="-arch ppc -arch ppc64"
|
||||
;;
|
||||
*)
|
||||
echo "Universal build requested with unknown ARCH=\"${ARCH}\""
|
||||
esac
|
||||
fi
|
||||
|
||||
#CORE BUILD SUMMARY
|
||||
#==================
|
||||
|
||||
# Remove this to enable the core build summary
|
||||
export BUILD_SUMMARY=1
|
||||
|
||||
BUILD_SUMMARY=${WORKDIR}/build-summary.log
|
||||
BUILD_SUCCESS=${WORKDIR}/build-success.log
|
||||
BUILD_FAIL=${WORKDIR}/build-fail.log
|
||||
if [ -z "${BUILD_SUMMARY_FMT}" ]; then
|
||||
if command -v column >/dev/null; then
|
||||
BUILD_SUMMARY_FMT=column
|
||||
else
|
||||
BUILD_SUMMARY_FMT=cat
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#USER DEFINES
|
||||
#------------
|
||||
#These options should be defined inside your own
|
||||
#local libretro-config-user.sh file rather than here.
|
||||
#The following below is just a sample.
|
||||
|
||||
if [ -f "${WORKDIR}/libretro-config-user.sh" ]; then
|
||||
. ${WORKDIR}/libretro-config-user.sh
|
||||
fi
|
|
@ -1,129 +0,0 @@
|
|||
#! /usr/bin/env bash
|
||||
# vim: set ts=3 sw=3 noet ft=sh : bash
|
||||
|
||||
SCRIPT="${0#./}"
|
||||
BASE_DIR="${SCRIPT%/*}"
|
||||
WORKDIR=$(pwd)
|
||||
|
||||
if [ "$BASE_DIR" = "$SCRIPT" ]; then
|
||||
BASE_DIR="$WORKDIR"
|
||||
else
|
||||
if [[ "$0" != /* ]]; then
|
||||
# Make the path absolute
|
||||
BASE_DIR="$WORKDIR/$BASE_DIR"
|
||||
fi
|
||||
fi
|
||||
|
||||
. $BASE_DIR/iKarith-libretro-config.sh
|
||||
|
||||
if [ -z "$RARCH_DIST_DIR" ]; then
|
||||
RARCH_DIR="$BASE_DIR/dist"
|
||||
RARCH_DIST_DIR="$RARCH_DIR/$DIST_DIR"
|
||||
fi
|
||||
|
||||
die()
|
||||
{
|
||||
echo $1
|
||||
#exit 1
|
||||
}
|
||||
|
||||
if [ "$HOST_CC" ]; then
|
||||
CC="${HOST_CC}-gcc"
|
||||
CXX="${HOST_CC}-g++"
|
||||
STRIP="${HOST_CC}-strip"
|
||||
fi
|
||||
|
||||
if [ -z "$MAKE" ]; then
|
||||
if [ "$(expr substr $(uname -s) 1 7)" = "MINGW32" ]; then
|
||||
MAKE=mingw32-make
|
||||
else
|
||||
MAKE=make
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$CC" ]; then
|
||||
if [ $FORMAT_COMPILER_TARGET = "osx" ]; then
|
||||
CC=clang
|
||||
elif [ "$(expr substr $(uname -s) 1 7)" = "MINGW32" ]; then
|
||||
CC=mingw32-gcc
|
||||
else
|
||||
CC=gcc
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$CXX" ]; then
|
||||
if [ $FORMAT_COMPILER_TARGET = "osx" ]; then
|
||||
CXX=clang++
|
||||
elif [ "$(expr substr $(uname -s) 1 7)" = "MINGW32" ]; then
|
||||
CXX=mingw32-g++
|
||||
else
|
||||
CXX=g++
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "CC = $CC"
|
||||
echo "CXX = $CXX"
|
||||
echo "STRIP = $STRIP"
|
||||
|
||||
mkdir -p "$RARCH_DIST_DIR"
|
||||
|
||||
export RARCHCFLAGS=""
|
||||
|
||||
check_deps()
|
||||
{
|
||||
if [ $ENABLE_GLES ]; then
|
||||
echo "=== Enabling OpenGL ES ==="
|
||||
export ENABLE_GLES="--enable-gles"
|
||||
fi
|
||||
if [ $ARM_NEON ]; then
|
||||
echo "=== Enabling ARM NEON support ==="
|
||||
export ENABLE_NEON="--enable-neon"
|
||||
fi
|
||||
|
||||
if [ $ARM_HARDFLOAT ]; then
|
||||
echo "=== Enabling ARM Hard float ABI support ==="
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -mfloat-abi=hard"
|
||||
fi
|
||||
if [ $ARM_SOFTFLOAT ]; then
|
||||
echo "=== Enabling ARM Soft float ABI support ==="
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -mfloat-abi=softfp"
|
||||
fi
|
||||
if [ "$CORTEX_A8" ]; then
|
||||
echo "=== Enabling Cortex A8 CFLAGS ==="
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -mcpu=cortex-a8 -mtune=cortex-a8"
|
||||
fi
|
||||
if [ "$CORTEX_A9" ]; then
|
||||
echo "=== Enabling Cortex A9 CFLAGS ==="
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -mcpu=cortex-a9 -mtune=cortex-a9"
|
||||
fi
|
||||
|
||||
if [ $ARM_NEON ]; then
|
||||
echo "=== Enabling ARM NEON support (CFLAGS) ==="
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -mfpu=neon"
|
||||
fi
|
||||
}
|
||||
|
||||
build_retroarch()
|
||||
{
|
||||
cd "$BASE_DIR"
|
||||
pwd
|
||||
if [ -d "retroarch" ]; then
|
||||
echo "=== Building RetroArch ==="
|
||||
cd retroarch
|
||||
check_deps
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
./configure $ENABLE_GLES $ENABLE_NEON
|
||||
${MAKE} -f Makefile platform=${FORMAT_COMPILER_TARGET} CC="gcc ${RARCHCFLAGS}" $COMPILER -j$JOBS clean || die "Failed to clean RetroArch"
|
||||
fi
|
||||
${MAKE} -f Makefile platform=${FORMAT_COMPILER_TARGET} CC="gcc ${RARCHCFLAGS}" $COMPILER -j$JOBS || die "Failed to build RetroArch"
|
||||
else
|
||||
echo "RetroArch not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
if [ $1 ]; then
|
||||
$1
|
||||
else
|
||||
build_retroarch
|
||||
fi
|
|
@ -22,17 +22,17 @@ fi
|
|||
|
||||
echo "Compiler: CC=\"$CC\" CXX=\"$CXX\""
|
||||
|
||||
[[ "${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_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_SOFTFLOAT}" ]] && echo '=== ARM softfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-softfloat"
|
||||
[[ "${X86}" ]] && echo '=== x86 CPU detected... ==='
|
||||
[[ "${X86}" ]] && [[ "${X86_64}" ]] && echo '=== x86_64 CPU detected... ==='
|
||||
[[ "${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_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_SOFTFLOAT}" ]] && echo '=== ARM softfloat ABI enabled... ===' && export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-softfloat"
|
||||
[[ "$X86" ]] && echo '=== x86 CPU detected... ==='
|
||||
[[ "$X86" ]] && [[ "$X86_64" ]] && echo '=== x86_64 CPU detected... ==='
|
||||
[[ "${IOS}" ]] && echo '=== iOS =='
|
||||
|
||||
echo "${FORMAT_COMPILER_TARGET}"
|
||||
echo "${FORMAT_COMPILER_TARGET_ALT}"
|
||||
echo "$FORMAT_COMPILER_TARGET"
|
||||
echo "$FORMAT_COMPILER_TARGET_ALT"
|
||||
RESET_FORMAT_COMPILER_TARGET=$FORMAT_COMPILER_TARGET
|
||||
RESET_FORMAT_COMPILER_TARGET_ALT=$FORMAT_COMPILER_TARGET_ALT
|
||||
|
||||
|
@ -48,12 +48,12 @@ check_opengl() {
|
|||
if [ "${BUILD_LIBRETRO_GL}" ]; then
|
||||
if [ "${ENABLE_GLES}" ]; then
|
||||
echo '=== OpenGL ES enabled ==='
|
||||
export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-gles"
|
||||
export FORMAT_COMPILER_TARGET_ALT="${FORMAT_COMPILER_TARGET}"
|
||||
export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-gles"
|
||||
export FORMAT_COMPILER_TARGET_ALT="$FORMAT_COMPILER_TARGET"
|
||||
else
|
||||
echo '=== OpenGL enabled ==='
|
||||
export FORMAT_COMPILER_TARGET="${FORMAT_COMPILER_TARGET}-opengl"
|
||||
export FORMAT_COMPILER_TARGET_ALT="${FORMAT_COMPILER_TARGET}"
|
||||
export FORMAT_COMPILER_TARGET="$FORMAT_COMPILER_TARGET-opengl"
|
||||
export FORMAT_COMPILER_TARGET_ALT="$FORMAT_COMPILER_TARGET"
|
||||
fi
|
||||
else
|
||||
echo '=== OpenGL disabled in build ==='
|
||||
|
@ -66,17 +66,21 @@ reset_compiler_targets() {
|
|||
}
|
||||
|
||||
build_libretro_pcsx_rearmed_interpreter() {
|
||||
build_dir="${WORKDIR}/libretro-pcsx_rearmed"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-pcsx_rearmed"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo '=== Building PCSX ReARMed Interpreter ==='
|
||||
cd "${build_dir}"
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${MAKE}" -f Makefile.libretro USE_DYNAREC=0 platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}" || die 'Failed to build PCSX ReARMed'
|
||||
cp "pcsx_rearmed_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/pcsx_rearmed_interpreter${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} "pcsx_rearmed_interpreter"
|
||||
echo "$MAKE -f Makefile.libretro USE_DYNAREC=0 platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
|
||||
$MAKE -f Makefile.libretro USE_DYNAREC=0 platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS" || die 'Failed to build PCSX ReARMed'
|
||||
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
|
||||
echo 'PCSX ReARMed not fetched, skipping ...'
|
||||
fi
|
||||
|
@ -88,51 +92,58 @@ build_libretro_pcsx_rearmed_interpreter() {
|
|||
# $4 is Makefile name
|
||||
# $5 is preferred platform
|
||||
build_libretro_generic_makefile_subcore() {
|
||||
build_dir="${WORKDIR}/libretro-${1}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${2} ==="
|
||||
cd "${build_dir}/${3}"
|
||||
build_dir="$WORKDIR/libretro-$1"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo "=== Building $2 ==="
|
||||
echo "cd \"$build_dir/$3\""
|
||||
cd "$build_dir/$3"
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
make -f ${4} platform=${5} -j$JOBS clean || die "Failed to clean ${2}"
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
echo "$MAKE -f \"$4\" platform=$5 -j$JOBS clean"
|
||||
$MAKE -f "$4" platform=$5 -j$JOBS clean || die "Failed to clean $2"
|
||||
fi
|
||||
make -f ${4} platform=${5} -j$JOBS || die "Failed to build ${2}"
|
||||
cp ${2}_libretro$FORMAT.${FORMAT_EXT} $RARCH_DIST_DIR/${2}_libretro$FORMAT.${FORMAT_EXT}
|
||||
build_summary_log ${?} ${2}
|
||||
echo "$MAKE -f $4 platform=$5 -j$JOBS"
|
||||
$MAKE -f $4 platform=$5 -j$JOBS || die "Failed to build $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
|
||||
}
|
||||
|
||||
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_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_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() {
|
||||
if [ "$FORMAT_COMPILER_TARGET" = "theos_ios" ]; then
|
||||
cp "objs/obj/${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} ${1}
|
||||
echo "cp \"objs/obj/${1}_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "objs/obj/${1}_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "$1"
|
||||
else
|
||||
cp "${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} ${1}
|
||||
echo "cp \"${1}_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "${1}_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "$1"
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_generic() {
|
||||
cd "${5}/${2}"
|
||||
cd "$5/$2"
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" -f ${3} platform="${4}" CC="$CC" CXX="$CXX" "-j${JOBS}" clean || die "Failed to build ${1}"
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
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}"
|
||||
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"
|
||||
}
|
||||
|
||||
# $1 is corename
|
||||
|
@ -140,65 +151,65 @@ build_libretro_generic() {
|
|||
# $3 is Makefile name
|
||||
# $4 is preferred platform
|
||||
build_libretro_generic_makefile() {
|
||||
build_dir="${WORKDIR}/libretro-${1}"
|
||||
build_dir="$WORKDIR/libretro-$1"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo "=== Building ${1} ==="
|
||||
build_libretro_generic $1 $2 $3 $4 "$build_dir"
|
||||
echo "=== Building $1 ==="
|
||||
build_libretro_generic $1 "$2" "$3" $4 "$build_dir"
|
||||
copy_core_to_dist $1
|
||||
else
|
||||
echo "${1} not fetched, skipping ..."
|
||||
echo "$1 not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
build_retroarch_generic_makefile() {
|
||||
build_dir="${WORKDIR}/${1}"
|
||||
build_dir="$WORKDIR/$1"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo "=== Building ${2} ==="
|
||||
build_libretro_generic $1 $2 $3 $4 "$build_dir"
|
||||
echo "=== Building $2 ==="
|
||||
build_libretro_generic $1 "$2" "$3" $4 "$build_dir"
|
||||
copy_core_to_dist $5
|
||||
else
|
||||
echo "${1} not fetched, skipping ..."
|
||||
echo "$1 not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
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_generic_makefile "hatari" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "hatari" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "4do" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "4do" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "virtualjaguar" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "virtualjaguar" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "nxengine" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "nxengine" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_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_gb"
|
||||
copy_core_to_dist "emux_nes"
|
||||
|
@ -206,324 +217,356 @@ build_libretro_emux() {
|
|||
}
|
||||
|
||||
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_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_generic_makefile "picodrive" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET}
|
||||
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_generic_makefile "tyrquake" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "vecx" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "vecx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "bluemsx" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "bluemsx" "." "Makefile.libretro" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "fmsx" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "fmsx" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_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_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_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_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_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_generic_makefile "mame078" "." "makefile" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "mame078" "." "makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_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_generic_makefile "fceumm" "." "Makefile.libretro" ${FORMAT_COMPILER_TARGET}
|
||||
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_generic_makefile "mednafen_snes" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "mednafen_wswan" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
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_generic_makefile "mednafen_gba" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_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_generic_makefile "mednafen_vb" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
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_generic_makefile "mednafen_pcfx" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "mednafen_psx" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
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_generic_makefile "mednafen_supergrafx" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "nestopia" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
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_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_generic_makefile "yabause" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_generic_makefile "snes9x" "libretro" "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
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_generic_makefile "quicknes" "libretro" "Makefile" $FORMAT_COMPILER_TARGET
|
||||
}
|
||||
|
||||
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_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() {
|
||||
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
|
||||
}
|
||||
|
||||
build_libretro_3dengine() {
|
||||
check_opengl
|
||||
build_libretro_generic_makefile "3dengine" "." "Makefile" ${FORMAT_COMPILER_TARGET}
|
||||
build_libretro_generic_makefile "3dengine" "." "Makefile" $FORMAT_COMPILER_TARGET
|
||||
reset_compiler_targets
|
||||
}
|
||||
|
||||
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() {
|
||||
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
|
||||
}
|
||||
|
||||
|
||||
build_libretro_mame() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-mame"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo ''
|
||||
echo '=== Building MAME ==='
|
||||
cd "${build_dir}"
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
if [ "$IOS" ]; then
|
||||
echo '=== Building MAME (iOS) ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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'
|
||||
"${MAKE}" -f Makefile.libretro "TARGET=mame" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" emulator "-j${JOBS}" || die 'Failed to build MAME (iOS)'
|
||||
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" "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
|
||||
echo '=== Building MAME64 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building MAME32 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
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
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_mess() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-mame"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo ''
|
||||
echo '=== Building MESS ==='
|
||||
cd "${build_dir}"
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building MESS64 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building MESS32 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
cp "mess_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "mess"
|
||||
echo "cp \"mess_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "mess_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "mess"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
rebuild_libretro_mess() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-mame"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo ''
|
||||
echo '=== Building MESS ==='
|
||||
cd "${build_dir}"
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building MESS64 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building MESS32 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
cp "mess_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "mess"
|
||||
echo "cp \"mess_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "mess_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "mess"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_ume() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-mame"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo ''
|
||||
echo '=== Building UME ==='
|
||||
cd "${build_dir}"
|
||||
cd "$build_dir"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building UME64 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building UME32 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
cp "ume_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "ume"
|
||||
echo "cp \"ume_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "ume_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "ume"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
}
|
||||
|
||||
rebuild_libretro_ume() {
|
||||
build_dir="${WORKDIR}/libretro-mame"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-mame"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo ''
|
||||
echo '=== Building UME ==='
|
||||
cd "${build_dir}"
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
if [ "$X86_64" = "true" ]; then
|
||||
echo '=== Building UME64 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building UME32 ==='
|
||||
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'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
cp "ume_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "ume"
|
||||
echo "cp \"ume_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "ume_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "ume"
|
||||
else
|
||||
echo 'MAME not fetched, skipping ...'
|
||||
fi
|
||||
|
@ -533,20 +576,23 @@ rebuild_libretro_ume() {
|
|||
# $2 is profile shortname.
|
||||
# $3 is profile name
|
||||
build_libretro_bsnes_modern() {
|
||||
build_dir="${WORKDIR}/libretro-${1}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${1} ${3} ==="
|
||||
cd ${build_dir}
|
||||
build_dir="$WORKDIR/libretro-$1"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo "=== Building $1 $3 ==="
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
rm -f obj/*.{o,"${FORMAT_EXT}"}
|
||||
rm -f out/*.{o,"${FORMAT_EXT}"}
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
rm -f obj/*.{o,"$FORMAT_EXT"}
|
||||
rm -f out/*.{o,"$FORMAT_EXT"}
|
||||
fi
|
||||
"${MAKE}" -f Makefile platform="${FORMAT_COMPILER_TARGET}" compiler="$CXX11" ui='target-libretro' profile="${3}" "-j${JOBS}" || die "Failed to build ${1} ${3} core"
|
||||
cp -f "out/${1}_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/${1}_${3}_libretro${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} "${1}_${3}"
|
||||
echo "$MAKE -f Makefile platform=\"$FORMAT_COMPILER_TARGET\" compiler=\"$CXX11\" ui='target-libretro' profile=\"${3}\" \"-j$JOBS\""
|
||||
$MAKE -f Makefile platform="$FORMAT_COMPILER_TARGET" compiler="$CXX11" ui='target-libretro' profile="${3}" "-j$JOBS" || die "Failed to build $1 $3 core"
|
||||
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
|
||||
echo "${1} ${3} not fetched, skipping ..."
|
||||
echo "$1 $3 not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -564,35 +610,43 @@ build_libretro_bsnes_mercury() {
|
|||
|
||||
build_libretro_bsnes_cplusplus98() {
|
||||
CORENAME="bsnes_cplusplus98"
|
||||
build_dir="${WORKDIR}/libretro-${CORENAME}"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
echo "=== Building ${CORENAME} ==="
|
||||
cd ${build_dir}
|
||||
build_dir="$WORKDIR/libretro-$CORENAME"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo "=== Building $CORENAME ==="
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" clean || die "Failed to clean ${CORENAME}"
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
echo "$MAKE clean"
|
||||
$MAKE clean || die "Failed to clean $CORENAME"
|
||||
fi
|
||||
"${MAKE}" platform="${FORMAT_COMPILER_TARGET}" CC="$CC" CXX="$CXX" "-j${JOBS}"
|
||||
cp "out/libretro.${FORMAT_EXT}" "${RARCH_DIST_DIR}/${CORENAME}_libretro${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} ${CORENAME}
|
||||
echo "$MAKE platform=\"$FORMAT_COMPILER_TARGET\" CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\""
|
||||
$MAKE platform="$FORMAT_COMPILER_TARGET" CC="$CC" CXX="$CXX" "-j$JOBS"
|
||||
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
|
||||
echo "${CORENAME} not fetched, skipping ..."
|
||||
echo "$CORENAME not fetched, skipping ..."
|
||||
fi
|
||||
}
|
||||
|
||||
build_libretro_bnes() {
|
||||
build_dir="${WORKDIR}/libretro-bnes"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
build_dir="$WORKDIR/libretro-bnes"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo '=== Building bNES ==='
|
||||
cd ${build_dir}
|
||||
echo "cd \"$build_dir\""
|
||||
cd "$build_dir"
|
||||
|
||||
mkdir -p obj
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" -f Makefile "-j${JOBS}" clean || die 'Failed to clean bNES'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
echo "$MAKE -f Makefile \"-j$JOBS\" clean"
|
||||
$MAKE -f Makefile "-j$JOBS" clean || die 'Failed to clean bNES'
|
||||
fi
|
||||
"${MAKE}" -f Makefile CC="$CC" CXX="$CXX" "-j${JOBS}" compiler="${CXX11}" || die 'Failed to build bNES'
|
||||
cp "libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}/bnes_libretro${FORMAT}.${FORMAT_EXT}"
|
||||
build_summary_log ${?} "bnes"
|
||||
echo "$MAKE -f Makefile CC=\"$CC\" CXX=\"$CXX\" \"-j$JOBS\" compiler=\"${CXX11}\""
|
||||
$MAKE -f Makefile CC="$CC" CXX="$CXX" "-j$JOBS" compiler="${CXX11}" || die 'Failed to build 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
|
||||
echo 'bNES not fetched, skipping ...'
|
||||
fi
|
||||
|
@ -600,38 +654,48 @@ build_libretro_bnes() {
|
|||
|
||||
build_libretro_mupen64() {
|
||||
check_opengl
|
||||
build_dir="${WORKDIR}/libretro-mupen64plus"
|
||||
if [ -d "${build_dir}" ]; then
|
||||
cd "${build_dir}"
|
||||
build_dir="$WORKDIR/libretro-mupen64plus"
|
||||
if [ -d "$build_dir" ]; then
|
||||
echo cd \"$build_dir\"
|
||||
cd "$build_dir"
|
||||
|
||||
mkdir -p obj
|
||||
if [ "${X86}" ] && [ "${X86_64}" ]; then
|
||||
if [ "$X86" ] && [ "$X86_64" ]; then
|
||||
echo '=== Building Mupen 64 Plus (x86_64 dynarec) ==='
|
||||
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)'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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 "$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)'"
|
||||
$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) ==='
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" WITH_DYNAREC='x86' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (x86 dynarec)'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building Mupen 64 Plus (ARM dynarec) ==='
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" WITH_DYNAREC='arm' platform="${FORMAT_COMPILER_TARGET_ALT}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64 (ARM dynarec)'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
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
|
||||
"${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
|
||||
echo '=== Building Mupen 64 Plus ==='
|
||||
if [ -z "${NOCLEAN}" ]; then
|
||||
"${MAKE}" "-j${JOBS}" clean || die 'Failed to clean Mupen 64'
|
||||
if [ -z "$NOCLEAN" ]; then
|
||||
echo "$MAKE \"-j$JOBS\" clean"
|
||||
$MAKE "-j$JOBS" clean || die 'Failed to clean Mupen 64'
|
||||
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
|
||||
cp "mupen64plus_libretro${FORMAT}.${FORMAT_EXT}" "${RARCH_DIST_DIR}"
|
||||
build_summary_log ${?} "mupen64plus"
|
||||
echo "cp \"mupen64plus_libretro${FORMAT}.$FORMAT_EXT\" \"$RARCH_DIST_DIR\""
|
||||
cp "mupen64plus_libretro${FORMAT}.$FORMAT_EXT" "$RARCH_DIST_DIR"
|
||||
build_summary_log $? "mupen64plus"
|
||||
else
|
||||
echo 'Mupen64 Plus not fetched, skipping ...'
|
||||
fi
|
||||
|
@ -661,11 +725,7 @@ build_summary() {
|
|||
}
|
||||
|
||||
create_dist_dir() {
|
||||
if [ -d "${RARCH_DIST_DIR}" ]; then
|
||||
echo "Directory ${RARCH_DIST_DIR} already exists, skipping creation..."
|
||||
else
|
||||
mkdir -p "${RARCH_DIST_DIR}"
|
||||
fi
|
||||
mkdir -p "$RARCH_DIST_DIR"
|
||||
}
|
||||
|
||||
create_dist_dir
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
|
||||
# Architecture Assignment
|
||||
config_cpu() {
|
||||
[ -n "${2}" ] && ARCH=${1}
|
||||
[ -z "${ARCH}" ] && ARCH="`uname -m`"
|
||||
case "${ARCH}" in
|
||||
[ -n "$2" ] && ARCH="$1"
|
||||
[ -z "$ARCH" ] && ARCH="$(uname -m)"
|
||||
case "$ARCH" in
|
||||
x86_64)
|
||||
X86=true
|
||||
X86_64=true
|
||||
|
@ -15,7 +15,7 @@ config_cpu() {
|
|||
armv*)
|
||||
ARM=true
|
||||
export FORMAT_COMPILER_TARGET=armv
|
||||
export RARCHCFLAGS="${RARCHCFLAGS} -marm"
|
||||
export RARCHCFLAGS="$RARCHCFLAGS -marm"
|
||||
case "${ARCH}" in
|
||||
armv5tel) ARMV5=true ;;
|
||||
armv6l) ARMV6=true ;;
|
||||
|
@ -23,7 +23,7 @@ config_cpu() {
|
|||
esac
|
||||
;;
|
||||
esac
|
||||
if [ -n "${PROCESSOR_ARCHITEW6432}" -a "${PROCESSOR_ARCHITEW6432}" = "AMD64" ]; then
|
||||
if [ -n "$PROCESSOR_ARCHITEW6432" -a "$PROCESSOR_ARCHITEW6432" = "AMD64" ]; then
|
||||
ARCH=x86_64
|
||||
X86=true && X86_64=true
|
||||
fi
|
||||
|
@ -31,9 +31,9 @@ config_cpu() {
|
|||
|
||||
# Platform Assignment
|
||||
config_platform() {
|
||||
[ -n "${1}" ] && platform="${1}"
|
||||
[ -z "${platform}" ] && platform="`uname`"
|
||||
case "${platform}" in
|
||||
[ -n "$1" ] && platform="$1"
|
||||
[ -z "$platform" ] && platform="$(uname)"
|
||||
case "$platform" in
|
||||
*BSD*)
|
||||
FORMAT_EXT="so"
|
||||
FORMAT_COMPILER_TARGET="unix"
|
||||
|
@ -84,27 +84,23 @@ config_platform() {
|
|||
}
|
||||
|
||||
config_log_build_host() {
|
||||
echo "PLATFORM: ${platform}"
|
||||
echo "ARCHITECTURE: ${ARCH}"
|
||||
echo "TARGET: ${FORMAT_COMPILER_TARGET}"
|
||||
echo "PLATFORM: $platform"
|
||||
echo "ARCHITECTURE: $ARCH"
|
||||
echo "TARGET: $FORMAT_COMPILER_TARGET"
|
||||
}
|
||||
|
||||
config_cpu
|
||||
config_platform
|
||||
config_log_build_host
|
||||
|
||||
if [ -z "${JOBS}" ]; then
|
||||
if [ -z "$JOBS" ]; then
|
||||
if command -v nproc >/dev/null; then
|
||||
JOBS=`nproc`
|
||||
JOBS="$(nproc)"
|
||||
else
|
||||
JOBS=1
|
||||
fi
|
||||
fi
|
||||
|
||||
#if uncommented, will fetch repos with read+write access. Useful for committers
|
||||
#export WRITERIGHTS=1
|
||||
|
||||
|
||||
#if uncommented, will build experimental cores as well which are not yet fit for release.
|
||||
#export BUILD_EXPERIMENTAL=1
|
||||
|
||||
|
@ -178,16 +174,16 @@ export RA_ANDROID_MIN_API=android-9
|
|||
# for Intel/PowerPC, but please don't. ;) Consider this a proof of concept
|
||||
# for now just to test a few cores.
|
||||
|
||||
if [[ "${FORMAT_COMPILER_TARGET}" = "osx" && -z "${NOUNIVERSAL}" ]]; then
|
||||
case "${ARCH}" in
|
||||
i385|x86_64)
|
||||
if [[ "$FORMAT_COMPILER_TARGET" = "osx" && -z "$NOUNIVERSAL" ]]; then
|
||||
case "$ARCH" in
|
||||
i386|x86_64)
|
||||
export ARCHFLAGS="-arch i386 -arch x86_64"
|
||||
;;
|
||||
ppc|ppc64)
|
||||
export ARCHFLAGS="-arch ppc -arch ppc64"
|
||||
;;
|
||||
*)
|
||||
echo "Universal build requested with unknown ARCH=\"${ARCH}\""
|
||||
echo "Universal build requested with unknown ARCH=\"$ARCH\""
|
||||
esac
|
||||
fi
|
||||
|
||||
|
|
|
@ -23,10 +23,10 @@ fi
|
|||
# doing it wrong. We should fix this.
|
||||
fetch_project_bsnes()
|
||||
{
|
||||
echo "=== Fetching ${3} ==="
|
||||
fetch_git "${1}" "${2}" ""
|
||||
fetch_git "${WORKDIR}/${2}" "${2}/perf" ""
|
||||
fetch_git "${WORKDIR}/${2}" "${2}/balanced" ""
|
||||
echo "=== Fetching $3 ==="
|
||||
fetch_git "$1" "$2" ""
|
||||
fetch_git "$WORKDIR/$2" "$2/perf" ""
|
||||
fetch_git "$WORKDIR/$2" "$2/balanced" ""
|
||||
}
|
||||
|
||||
|
||||
|
@ -297,9 +297,9 @@ fetch_libretro_sdk() {
|
|||
}
|
||||
|
||||
|
||||
if [ -n "${1}" ]; then
|
||||
while [ -n "${1}" ]; do
|
||||
"${1}"
|
||||
if [ -n "$1" ]; then
|
||||
while [ -n "$1" ]; do
|
||||
"$1"
|
||||
shift
|
||||
done
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue