mirror of
https://github.com/CTCaer/RetroArch.git
synced 2024-12-23 11:18:25 +00:00
59 lines
1.8 KiB
Bash
Executable File
59 lines
1.8 KiB
Bash
Executable File
#! /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
|
|
BASE_DIR="$WORKDIR/$BASE_DIR"
|
|
fi
|
|
|
|
WORKDIR=$(pwd)
|
|
|
|
|
|
# A stripped-down version of the fetch_git rule from libretro-super
|
|
# Clones or pulls updates from a git repository into a local directory
|
|
#
|
|
# $1 The URI to fetch
|
|
# $2 The local directory to fetch to (relative)
|
|
fetch_git() {
|
|
fetch_dir="$WORKDIR/$2"
|
|
if [ -d "$fetch_dir/.git" ]; then
|
|
echo "cd \"$fetch_dir\""
|
|
cd "$fetch_dir"
|
|
echo git pull
|
|
git pull
|
|
else
|
|
echo "git clone \"$1\" \"$fetch_dir\""
|
|
git clone "$1" "$fetch_dir"
|
|
fi
|
|
}
|
|
|
|
echo "Fetching RetroArch's submodules..."
|
|
fetch_git "https://github.com/libretro/common-shaders.git" "media/shaders_cg"
|
|
fetch_git "https://github.com/libretro/common-overlays.git" "media/overlays"
|
|
fetch_git "https://github.com/libretro/retroarch-assets.git" "media/assets"
|
|
fetch_git "https://github.com/libretro/retroarch-joypad-autoconfig.git" "media/autoconfig"
|
|
fetch_git "https://github.com/libretro/libretro-database.git" "media/libretrodb"
|
|
|
|
# FIXME: This entire script should be unnecessary. It exists because we don't
|
|
# use git submodules in libretro/RetroArch, which introduces one of three
|
|
# possible build dependencies:
|
|
#
|
|
# 1. The user is using libretro-super. But libretro-super is not supposed to
|
|
# be required because "no dependencies!"
|
|
#
|
|
# 2. Unreasonable expectations of the user: That they are deeply versed in the
|
|
# changing inner workings of a massively-multi-platform project with dozens
|
|
# of modules and submodules, or that they are somehow psychic.
|
|
#
|
|
# 3. The user has a script which cannot depend on libretro-super to fetch the
|
|
# submodules for them. This is it.
|
|
#
|
|
# The third choice is the path of least resistance, but the correct solution
|
|
# is to fix the submodules issue.
|
|
|