From 99a2546b24a8f4eaea0431c5ec26f6aefe2d095c Mon Sep 17 00:00:00 2001 From: AndresSM Date: Thu, 6 Nov 2014 14:40:27 -0800 Subject: [PATCH] Added new recipes, changed some wording and added an info file explaining how to add additional recipes --- ...nd-build.sh => libretro-buildbot-recipe.sh | 77 +++++++++++++++---- recipes.txt | 12 --- recipes.win-mingw64-seh | 8 -- recipes.win-mingw64-sjlj | 3 - recipes/recipes.info | 54 +++++++++++++ recipes/recipes.win-mingw64-seh | 46 +++++++++++ recipes/recipes.win-mingw64-sjlj | 3 + 7 files changed, 167 insertions(+), 36 deletions(-) rename libretro-fetch-and-build.sh => libretro-buildbot-recipe.sh (80%) delete mode 100644 recipes.txt delete mode 100644 recipes.win-mingw64-seh delete mode 100644 recipes.win-mingw64-sjlj create mode 100644 recipes/recipes.info create mode 100644 recipes/recipes.win-mingw64-seh create mode 100644 recipes/recipes.win-mingw64-sjlj diff --git a/libretro-fetch-and-build.sh b/libretro-buildbot-recipe.sh similarity index 80% rename from libretro-fetch-and-build.sh rename to libretro-buildbot-recipe.sh index 62b09121..5b466d22 100644 --- a/libretro-fetch-and-build.sh +++ b/libretro-buildbot-recipe.sh @@ -271,29 +271,78 @@ while read line; do then ARGS="${ARGS} ${TEMP}" fi + TEMP="" + TEMP=`echo $line | cut --fields=12 --delimiter=" "` + if [ -n ${TEMP} ]; + then + ARGS="${ARGS} ${TEMP}" + fi + TEMP="" + TEMP=`echo $line | cut --fields=13 --delimiter=" "` + if [ -n ${TEMP} ]; + then + ARGS="${ARGS} ${TEMP}" + fi + TEMP="" + TEMP=`echo $line | cut --fields=14 --delimiter=" "` + if [ -n ${TEMP} ]; + then + ARGS="${ARGS} ${TEMP}" + fi echo ARGS: $ARGS echo echo - if [ -d "${DIR}/.git" ]; + if [ "${TYPE}" == "PROJECT" ]; then - cd $DIR - echo "pulling from repo... " - OUT=`git pull` - if [[ $OUT == *"Already up-to-date"* ]] + if [ -d "${DIR}/.git" ]; then - BUILD="NO" + + cd $DIR + echo "pulling from repo... " + OUT=`git pull` + if [[ $OUT == *"Already up-to-date"* ]] + then + BUILD="NO" + else + BUILD="YES" + fi + + cd .. + else - BUILD="YES" + echo "cloning repo..." + git clone --depth=1 "$URL" "$DIR" + BUILD="YES" fi + elif [ "${TYPE}" == "SUBMODULE" ]; + then + if [ -d "${DIR}/.git" ]; + then - cd .. + cd $DIR + echo "pulling from repo... " + OUT=`git pull` + OUT=`git submodule foreach git pull origin master` + if [[ $OUT == *"Already up-to-date"* ]] + then + BUILD="NO" + else + BUILD="YES" + fi + + cd .. + + else + echo "cloning repo..." + git clone --depth=1 "$URL" "$DIR" + cd $DIR + git submodule update --init + BUILD="YES" + fi + - else - echo "cloning repo..." - git clone --depth=1 "$URL" "$DIR" - BUILD="YES" fi if [ "${BUILD}" == "YES" -o "${FORCE}" == "YES" ]; @@ -301,8 +350,10 @@ while read line; do echo building core... if [ "${COMMAND}" == "GENERIC" ]; then build_libretro_generic_makefile $NAME $DIR $SUBDIR $MAKEFILE ${FORMAT_COMPILER_TARGET} "${ARGS}" - elif [ "${COMMAND}" == "GL" ]; then + elif [ "${COMMAND}" == "GENERIC_GL" ]; then build_libretro_generic_gl_makefile $NAME $DIR $SUBDIR $MAKEFILE ${FORMAT_COMPILER_TARGET} "${ARGS}" + elif [ "${COMMAND}" == "GENERIC_ALT" ]; then + build_libretro_generic_makefile $NAME $DIR $SUBDIR $MAKEFILE ${FORMAT_COMPILER_TARGET_ALT} "${ARGS}" fi else diff --git a/recipes.txt b/recipes.txt deleted file mode 100644 index 2135f38d..00000000 --- a/recipes.txt +++ /dev/null @@ -1,12 +0,0 @@ -CORENAME COREDIR URL REPOTYPE ENABLED COMMAND MAKEFILE SUBDIR - -EXAMPLES: - -fb_alpha libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk -fba_cores_cps1 libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps1 -fba_cores_cps2 libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps2 -fba_cores_neo libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk/fbacores/neogeo -mupen64plus libretro-mupen64plus https://github.com/libretro/mupen64plus-libretro.git project YES GL Makefile . WITH_DYNAREC=x86_64 -nestopia libretro-nestopia https://github.com/libretro/nestopia.git project NO GENERIC Makefile libretro -pcsx_rearmed libretro-pcsx_rearmed https://github.com/libretro/pcsx_rearmed.git project NO GENERIC Makefile.libretro . USE_DYNAREC=0 TEST=1 -tgbdual libretro-tgbdual https://github.com/libretro/tgbdual-libretro.git project NO GENERIC Makefile . diff --git a/recipes.win-mingw64-seh b/recipes.win-mingw64-seh deleted file mode 100644 index 599043e5..00000000 --- a/recipes.win-mingw64-seh +++ /dev/null @@ -1,8 +0,0 @@ -fb_alpha libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk -fba_cores_cps1 libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps1 -fba_cores_cps2 libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps2 -fba_cores_neo libretro-fba https://github.com/libretro/fba-libretro.git project NO GENERIC makefile.libretro svn-current/trunk/fbacores/neogeo -mupen64plus libretro-mupen64plus https://github.com/libretro/mupen64plus-libretro.git project YES GL Makefile . WITH_DYNAREC=x86_64 -nestopia libretro-nestopia https://github.com/libretro/nestopia.git project NO GENERIC Makefile libretro -pcsx_rearmed libretro-pcsx_rearmed https://github.com/libretro/pcsx_rearmed.git project NO GENERIC Makefile.libretro . USE_DYNAREC=0 TEST=1 -tgbdual libretro-tgbdual https://github.com/libretro/tgbdual-libretro.git project NO GENERIC Makefile . diff --git a/recipes.win-mingw64-sjlj b/recipes.win-mingw64-sjlj deleted file mode 100644 index 714be45b..00000000 --- a/recipes.win-mingw64-sjlj +++ /dev/null @@ -1,3 +0,0 @@ -mame libretro-mame https://github.com/libretro/mame.git project YES GENERIC Makefile.libretro . TARGET=mame PTR64=1 -mame libretro-mame https://github.com/libretro/mame.git project YES GENERIC Makefile.libretro . TARGET=mess PTR64=1 -mame libretro-mame https://github.com/libretro/mame.git project YES GENERIC Makefile.libretro . TARGET=ume PTR64=1 diff --git a/recipes/recipes.info b/recipes/recipes.info new file mode 100644 index 00000000..d8915640 --- /dev/null +++ b/recipes/recipes.info @@ -0,0 +1,54 @@ +RECIPE FORMAT: +CORENAME COREDIR URL REPOTYPE ENABLED COMMAND MAKEFILE SUBDIR + +The following are know to work for Windows x64 with the toolchain provided by MSYS2 by default (SEH exception model): + +4do libretro-4do https://github.com/libretro/4do-libretro.git PROJECT NO GENERIC Makefile . +bluemsx libretro-bluemsx https://github.com/libretro/blueMSX-libretro.git PROJECT NO GENERIC Makefile.libretro . +bsnes libretro-bsnes https://github.com/libretro/bsnes-libretro.git PROJECT NO BSNES Makefile . +dinothawr libretro-dinothawr https://github.com/libretro/Dinothawr.git PROJECT NO GENERIC_ALT Makefile . +fb_alpha libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk +fba_cores_cps1 libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps1 +fba_cores_cps2 libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps2 +fba_cores_neo libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk/fbacores/neogeo +fmsx libretro-fmsx https://github.com/libretro/fmsx-libretro.git PROJECT NO GENERIC Makefile . +gambatte libretro-gambatte https://github.com/libretro/gambatte-libretro.git PROJECT NO GENERIC_ALT Makefile.libretro libgambatte +genesis_plus_gx libretro-genesis_plus_gx https://github.com/libretro/Genesis-Plus-GX.git PROJECT NO GENERIC Makefile.libretro . +handy libretro-handy https://github.com/libretro/libretro-handy.git PROJECT NO GENERIC Makefile . +mednafen_gba libretro-mednafen_gba https://github.com/libretro/beetle-gba-libretro.git PROJECT NO GENERIC Makefile . +mednafen_lynx libretro-mednafen_lynx https://github.com/libretro/beetle-lynx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_ngp libretro-mednafen_ngp https://github.com/libretro/beetle-ngp-libretro.git PROJECT NO GENERIC Makefile . +mednafen_pce_fast libretro-mednafen_pce_fast https://github.com/libretro/beetle-pce-fast-libretro.git PROJECT NO GENERIC Makefile . +mednafen_pcfx libretro-mednafen_pcfx https://github.com/libretro/beetle-pcfx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_psx libretro-mednafen_psx https://github.com/libretro/beetle-psx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_snes libretro-mednafen_snes https://github.com/libretro/beetle-bsnes-libretro.git PROJECT NO GENERIC Makefile . +mednafen_supergrafx libretro-mednafen_supergrafx https://github.com/libretro/beetle-supergrafx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_vb libretro-mednafen_vb https://github.com/libretro/beetle-vb-libretro.git PROJECT NO GENERIC Makefile . +mednafen_wswan libretro-mednafen_wswan https://github.com/libretro/beetle-wswan-libretro.git PROJECT NO GENERIC Makefile . +mupen64plus libretro-mupen64plus https://github.com/libretro/mupen64plus-libretro.git PROJECT NO GENERIC_GL Makefile . WITH_DYNAREC=x86_64 +nestopia libretro-nestopia https://github.com/libretro/nestopia.git PROJECT NO GENERIC Makefile libretro +nxengine libretro-nxengine https://github.com/libretro/nxengine-libretro.git PROJECT NO GENERIC Makefile . +o2em libretro-o2em https://github.com/libretro/libretro-o2em.git PROJECT NO GENERIC Makefile . +pcsx_rearmed libretro-pcsx_rearmed https://github.com/libretro/pcsx_rearmed.git PROJECT NO GENERIC Makefile.libretro . USE_DYNAREC=0 +picodrive libretro-picodrive https://github.com/libretro/picodrive.git SUBMODULE YES GENERIC Makefile.libretro . +prosystem libretro-prosystem https://github.com/libretro/prosystem-libretro.git PROJECT NO GENERIC Makefile . +snes9x libretro-snes9x https://github.com/libretro/snes9x.git PROJECT NO GENERIC Makefile libretro +snes9x_next libretro-snes9x_next https://github.com/libretro/snes9x-next.git PROJECT NO GENERIC_ALT Makefile.libretro . +tgbdual libretro-tgbdual https://github.com/libretro/tgbdual-libretro.git PROJECT NO GENERIC Makefile . +tyrquake libretro-tyrquake https://github.com/libretro/tyrquake.git PROJECT NO GENERIC Makefile.libretro . +vba_next libretro-vba_next https://github.com/libretro/vba-next.git PROJECT NO GENERIC_ALT Makefile.libretro . +vbam libretro-vbam https://github.com/libretro/vbam-libretro.git PROJECT NO GENERIC_ALT Makefile src/libretro +virtualjaguar libretro-virtualjaguar https://github.com/libretro/virtualjaguar-libretro.git PROJECT NO GENERIC Makefile . +yabause libretro-yabause https://github.com/libretro/yabause.git PROJECT NO GENERIC Makefile libretro + +The following are know to work for Windows x64 with MINGW-W64 (SJLJ exception model) + +mame libretro-mame https://github.com/libretro/mame.git PROJECT YES GENERIC Makefile.libretro . TARGET=mame PTR64=1 +mame libretro-mame https://github.com/libretro/mame.git PROJECT YES GENERIC Makefile.libretro . TARGET=mess PTR64=1 +mame libretro-mame https://github.com/libretro/mame.git PROJECT YES GENERIC Makefile.libretro . TARGET=ume PTR64=1 + +The following are not working for Windows x64 at the moment + +catsfc libretro-catsfc https://github.com/libretro/CATSFC-libretro.git PROJECT NO GENERIC Makefile . ===>BROKEN +desmume libretro-desmume https://github.com/libretro/desmume.git PROJECT NO GENERIC Makefile.libretro desmume ===>BROKEN +dosbox libretro-dosbox https://github.com/libretro/dosbox-libretro.git PROJECT NO GENERIC Makefile.libretro . ===>BROKEN diff --git a/recipes/recipes.win-mingw64-seh b/recipes/recipes.win-mingw64-seh new file mode 100644 index 00000000..ff75ee56 --- /dev/null +++ b/recipes/recipes.win-mingw64-seh @@ -0,0 +1,46 @@ + + + + + + +4do libretro-4do https://github.com/libretro/4do-libretro.git PROJECT NO GENERIC Makefile . +bluemsx libretro-bluemsx https://github.com/libretro/blueMSX-libretro.git PROJECT NO GENERIC Makefile.libretro . +bsnes libretro-bsnes https://github.com/libretro/bsnes-libretro.git PROJECT NO BSNES Makefile . +catsfc libretro-catsfc https://github.com/libretro/CATSFC-libretro.git PROJECT NO GENERIC Makefile . ===>BROKEN +desmume libretro-desmume https://github.com/libretro/desmume.git PROJECT NO GENERIC Makefile.libretro desmume ===>BROKEN +dinothawr libretro-dinothawr https://github.com/libretro/Dinothawr.git PROJECT NO GENERIC_ALT Makefile . +dosbox libretro-dosbox https://github.com/libretro/dosbox-libretro.git PROJECT NO GENERIC Makefile.libretro . ===>BROKEN +fb_alpha libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk +fba_cores_cps1 libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps1 +fba_cores_cps2 libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk/fbacores/cps2 +fba_cores_neo libretro-fba https://github.com/libretro/fba-libretro.git PROJECT NO GENERIC makefile.libretro svn-current/trunk/fbacores/neogeo +fmsx libretro-fmsx https://github.com/libretro/fmsx-libretro.git PROJECT NO GENERIC Makefile . +gambatte libretro-gambatte https://github.com/libretro/gambatte-libretro.git PROJECT NO GENERIC_ALT Makefile.libretro libgambatte +genesis_plus_gx libretro-genesis_plus_gx https://github.com/libretro/Genesis-Plus-GX.git PROJECT NO GENERIC Makefile.libretro . +handy libretro-handy https://github.com/libretro/libretro-handy.git PROJECT NO GENERIC Makefile . +mednafen_gba libretro-mednafen_gba https://github.com/libretro/beetle-gba-libretro.git PROJECT NO GENERIC Makefile . +mednafen_lynx libretro-mednafen_lynx https://github.com/libretro/beetle-lynx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_ngp libretro-mednafen_ngp https://github.com/libretro/beetle-ngp-libretro.git PROJECT NO GENERIC Makefile . +mednafen_pce_fast libretro-mednafen_pce_fast https://github.com/libretro/beetle-pce-fast-libretro.git PROJECT NO GENERIC Makefile . +mednafen_pcfx libretro-mednafen_pcfx https://github.com/libretro/beetle-pcfx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_psx libretro-mednafen_psx https://github.com/libretro/beetle-psx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_snes libretro-mednafen_snes https://github.com/libretro/beetle-bsnes-libretro.git PROJECT NO GENERIC Makefile . +mednafen_supergrafx libretro-mednafen_supergrafx https://github.com/libretro/beetle-supergrafx-libretro.git PROJECT NO GENERIC Makefile . +mednafen_vb libretro-mednafen_vb https://github.com/libretro/beetle-vb-libretro.git PROJECT NO GENERIC Makefile . +mednafen_wswan libretro-mednafen_wswan https://github.com/libretro/beetle-wswan-libretro.git PROJECT NO GENERIC Makefile . +mupen64plus libretro-mupen64plus https://github.com/libretro/mupen64plus-libretro.git PROJECT NO GENERIC_GL Makefile . WITH_DYNAREC=x86_64 +nestopia libretro-nestopia https://github.com/libretro/nestopia.git PROJECT NO GENERIC Makefile libretro +nxengine libretro-nxengine https://github.com/libretro/nxengine-libretro.git PROJECT NO GENERIC Makefile . +o2em libretro-o2em https://github.com/libretro/libretro-o2em.git PROJECT NO GENERIC Makefile . +pcsx_rearmed libretro-pcsx_rearmed https://github.com/libretro/pcsx_rearmed.git PROJECT NO GENERIC Makefile.libretro . USE_DYNAREC=0 +picodrive libretro-picodrive https://github.com/libretro/picodrive.git SUBMODULE YES GENERIC Makefile.libretro . +prosystem libretro-prosystem https://github.com/libretro/prosystem-libretro.git PROJECT NO GENERIC Makefile . +snes9x libretro-snes9x https://github.com/libretro/snes9x.git PROJECT NO GENERIC Makefile libretro +snes9x_next libretro-snes9x_next https://github.com/libretro/snes9x-next.git PROJECT NO GENERIC_ALT Makefile.libretro . +tgbdual libretro-tgbdual https://github.com/libretro/tgbdual-libretro.git PROJECT NO GENERIC Makefile . +tyrquake libretro-tyrquake https://github.com/libretro/tyrquake.git PROJECT NO GENERIC Makefile.libretro . +vba_next libretro-vba_next https://github.com/libretro/vba-next.git PROJECT NO GENERIC_ALT Makefile.libretro . +vbam libretro-vbam https://github.com/libretro/vbam-libretro.git PROJECT NO GENERIC_ALT Makefile src/libretro +virtualjaguar libretro-virtualjaguar https://github.com/libretro/virtualjaguar-libretro.git PROJECT NO GENERIC Makefile . +yabause libretro-yabause https://github.com/libretro/yabause.git PROJECT NO GENERIC Makefile libretro diff --git a/recipes/recipes.win-mingw64-sjlj b/recipes/recipes.win-mingw64-sjlj new file mode 100644 index 00000000..083e7fe6 --- /dev/null +++ b/recipes/recipes.win-mingw64-sjlj @@ -0,0 +1,3 @@ +mame libretro-mame https://github.com/libretro/mame.git PROJECT YES GENERIC Makefile.libretro . TARGET=mame PTR64=1 +mame libretro-mame https://github.com/libretro/mame.git PROJECT YES GENERIC Makefile.libretro . TARGET=mess PTR64=1 +mame libretro-mame https://github.com/libretro/mame.git PROJECT YES GENERIC Makefile.libretro . TARGET=ume PTR64=1