#!/usr/bin/env bash
mkdir -p rocket-tools
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools.git rocket-tools
pushd rocket-tools
cat >>.git/config <<EOF
[submodule "riscv-isa-sim"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-isa-sim.git
EOF
mkdir -p riscv-isa-sim
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-isa-sim.git riscv-isa-sim
git submodule init riscv-isa-sim
git submodule update riscv-isa-sim
pushd riscv-isa-sim
popd
cat >>.git/config <<EOF
[submodule "riscv-pk"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-pk.git
EOF
mkdir -p riscv-pk
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-pk.git riscv-pk
git submodule init riscv-pk
git submodule update riscv-pk
pushd riscv-pk
popd
cat >>.git/config <<EOF
[submodule "riscv-opcodes"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-opcodes.git
EOF
mkdir -p riscv-opcodes
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-opcodes.git riscv-opcodes
git submodule init riscv-opcodes
git submodule update riscv-opcodes
pushd riscv-opcodes
popd
cat >>.git/config <<EOF
[submodule "riscv-tests"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-tests.git
EOF
mkdir -p riscv-tests
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-tests.git riscv-tests
git submodule init riscv-tests
git submodule update riscv-tests
pushd riscv-tests
cat >>.git/config <<EOF
[submodule "env"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-tests/env.git
EOF
mkdir -p env
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-tests/env.git env
git submodule init env
git submodule update env
pushd env
popd
popd
cat >>.git/config <<EOF
[submodule "riscv-gnu-toolchain"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain.git
EOF
mkdir -p riscv-gnu-toolchain
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain.git riscv-gnu-toolchain
git submodule init riscv-gnu-toolchain
git submodule update riscv-gnu-toolchain
pushd riscv-gnu-toolchain
cat >>.git/config <<EOF
[submodule "binutils"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/binutils.git
EOF
mkdir -p binutils
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/binutils.git binutils
git submodule init binutils
git submodule update binutils
pushd binutils
popd
cat >>.git/config <<EOF
[submodule "gcc"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/gcc.git
EOF
mkdir -p gcc
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/gcc.git gcc
git submodule init gcc
git submodule update gcc
pushd gcc
popd
cat >>.git/config <<EOF
[submodule "glibc"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/glibc.git
EOF
mkdir -p glibc
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/glibc.git glibc
git submodule init glibc
git submodule update glibc
pushd glibc
popd
cat >>.git/config <<EOF
[submodule "dejagnu"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/dejagnu.git
EOF
mkdir -p dejagnu
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/dejagnu.git dejagnu
git submodule init dejagnu
git submodule update dejagnu
pushd dejagnu
popd
cat >>.git/config <<EOF
[submodule "newlib"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/newlib.git
EOF
mkdir -p newlib
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/newlib.git newlib
git submodule init newlib
git submodule update newlib
pushd newlib
popd
cat >>.git/config <<EOF
[submodule "gdb"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/gdb.git
EOF
mkdir -p gdb
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/gdb.git gdb
git submodule init gdb
git submodule update gdb
pushd gdb
popd
cat >>.git/config <<EOF
[submodule "qemu"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu.git
EOF
mkdir -p qemu
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu.git qemu
git submodule init qemu
git submodule update qemu
pushd qemu
cat >>.git/config <<EOF
[submodule "roms/seabios"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/seabios.git
EOF
mkdir -p roms/seabios
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/seabios.git roms/seabios
git submodule init roms/seabios
git submodule update roms/seabios
pushd roms/seabios
popd
cat >>.git/config <<EOF
[submodule "roms/SLOF"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/SLOF.git
EOF
mkdir -p roms/SLOF
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/SLOF.git roms/SLOF
git submodule init roms/SLOF
git submodule update roms/SLOF
pushd roms/SLOF
popd
cat >>.git/config <<EOF
[submodule "roms/ipxe"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/ipxe.git
EOF
mkdir -p roms/ipxe
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/ipxe.git roms/ipxe
git submodule init roms/ipxe
git submodule update roms/ipxe
pushd roms/ipxe
popd
cat >>.git/config <<EOF
[submodule "roms/openbios"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/openbios.git
EOF
mkdir -p roms/openbios
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/openbios.git roms/openbios
git submodule init roms/openbios
git submodule update roms/openbios
pushd roms/openbios
popd
cat >>.git/config <<EOF
[submodule "roms/qemu-palcode"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/qemu-palcode.git
EOF
mkdir -p roms/qemu-palcode
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/qemu-palcode.git roms/qemu-palcode
git submodule init roms/qemu-palcode
git submodule update roms/qemu-palcode
pushd roms/qemu-palcode
popd
cat >>.git/config <<EOF
[submodule "roms/sgabios"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/sgabios.git
EOF
mkdir -p roms/sgabios
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/sgabios.git roms/sgabios
git submodule init roms/sgabios
git submodule update roms/sgabios
pushd roms/sgabios
popd
cat >>.git/config <<EOF
[submodule "dtc"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/dtc.git
EOF
mkdir -p dtc
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/dtc.git dtc
git submodule init dtc
git submodule update dtc
pushd dtc
popd
cat >>.git/config <<EOF
[submodule "roms/u-boot"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/u-boot.git
EOF
mkdir -p roms/u-boot
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/u-boot.git roms/u-boot
git submodule init roms/u-boot
git submodule update roms/u-boot
pushd roms/u-boot
popd
cat >>.git/config <<EOF
[submodule "roms/skiboot"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/skiboot.git
EOF
mkdir -p roms/skiboot
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/skiboot.git roms/skiboot
git submodule init roms/skiboot
git submodule update roms/skiboot
pushd roms/skiboot
popd
cat >>.git/config <<EOF
[submodule "roms/QemuMacDrivers"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/QemuMacDrivers.git
EOF
mkdir -p roms/QemuMacDrivers
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/QemuMacDrivers.git roms/QemuMacDrivers
git submodule init roms/QemuMacDrivers
git submodule update roms/QemuMacDrivers
pushd roms/QemuMacDrivers
popd
cat >>.git/config <<EOF
[submodule "ui/keycodemapdb"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/ui/keycodemapdb.git
EOF
mkdir -p ui/keycodemapdb
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/ui/keycodemapdb.git ui/keycodemapdb
git submodule init ui/keycodemapdb
git submodule update ui/keycodemapdb
pushd ui/keycodemapdb
popd
cat >>.git/config <<EOF
[submodule "roms/seabios-hppa"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/seabios-hppa.git
EOF
mkdir -p roms/seabios-hppa
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/seabios-hppa.git roms/seabios-hppa
git submodule init roms/seabios-hppa
git submodule update roms/seabios-hppa
pushd roms/seabios-hppa
popd
cat >>.git/config <<EOF
[submodule "roms/u-boot-sam460ex"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/u-boot-sam460ex.git
EOF
mkdir -p roms/u-boot-sam460ex
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/u-boot-sam460ex.git roms/u-boot-sam460ex
git submodule init roms/u-boot-sam460ex
git submodule update roms/u-boot-sam460ex
pushd roms/u-boot-sam460ex
popd
cat >>.git/config <<EOF
[submodule "tests/fp/berkeley-testfloat-3"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/tests/fp/berkeley-testfloat-3.git
EOF
mkdir -p tests/fp/berkeley-testfloat-3
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/tests/fp/berkeley-testfloat-3.git tests/fp/berkeley-testfloat-3
git submodule init tests/fp/berkeley-testfloat-3
git submodule update tests/fp/berkeley-testfloat-3
pushd tests/fp/berkeley-testfloat-3
popd
cat >>.git/config <<EOF
[submodule "tests/fp/berkeley-softfloat-3"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/tests/fp/berkeley-softfloat-3.git
EOF
mkdir -p tests/fp/berkeley-softfloat-3
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/tests/fp/berkeley-softfloat-3.git tests/fp/berkeley-softfloat-3
git submodule init tests/fp/berkeley-softfloat-3
git submodule update tests/fp/berkeley-softfloat-3
pushd tests/fp/berkeley-softfloat-3
popd
cat >>.git/config <<EOF
[submodule "roms/edk2"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2.git
EOF
mkdir -p roms/edk2
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2.git roms/edk2
git submodule init roms/edk2
git submodule update roms/edk2
pushd roms/edk2
cat >>.git/config <<EOF
[submodule "CryptoPkg/Library/OpensslLib/openssl"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/CryptoPkg/Library/OpensslLib/openssl.git
EOF
mkdir -p CryptoPkg/Library/OpensslLib/openssl
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/CryptoPkg/Library/OpensslLib/openssl.git CryptoPkg/Library/OpensslLib/openssl
git submodule init CryptoPkg/Library/OpensslLib/openssl
git submodule update CryptoPkg/Library/OpensslLib/openssl
pushd CryptoPkg/Library/OpensslLib/openssl
popd
cat >>.git/config <<EOF
[submodule "ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3.git
EOF
mkdir -p ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3.git ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
git submodule init ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
git submodule update ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
pushd ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
popd
cat >>.git/config <<EOF
[submodule "UnitTestFrameworkPkg/Library/CmockaLib/cmocka"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/UnitTestFrameworkPkg/Library/CmockaLib/cmocka.git
EOF
mkdir -p UnitTestFrameworkPkg/Library/CmockaLib/cmocka
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/UnitTestFrameworkPkg/Library/CmockaLib/cmocka.git UnitTestFrameworkPkg/Library/CmockaLib/cmocka
git submodule init UnitTestFrameworkPkg/Library/CmockaLib/cmocka
git submodule update UnitTestFrameworkPkg/Library/CmockaLib/cmocka
pushd UnitTestFrameworkPkg/Library/CmockaLib/cmocka
popd
cat >>.git/config <<EOF
[submodule "MdeModulePkg/Universal/RegularExpressionDxe/oniguruma"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/MdeModulePkg/Universal/RegularExpressionDxe/oniguruma.git
EOF
mkdir -p MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/MdeModulePkg/Universal/RegularExpressionDxe/oniguruma.git MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
git submodule init MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
git submodule update MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
pushd MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
popd
cat >>.git/config <<EOF
[submodule "MdeModulePkg/Library/BrotliCustomDecompressLib/brotli"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli.git
EOF
mkdir -p MdeModulePkg/Library/BrotliCustomDecompressLib/brotli
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli.git MdeModulePkg/Library/BrotliCustomDecompressLib/brotli
git submodule init MdeModulePkg/Library/BrotliCustomDecompressLib/brotli
git submodule update MdeModulePkg/Library/BrotliCustomDecompressLib/brotli
pushd MdeModulePkg/Library/BrotliCustomDecompressLib/brotli
popd
cat >>.git/config <<EOF
[submodule "BaseTools/Source/C/BrotliCompress/brotli"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/BaseTools/Source/C/BrotliCompress/brotli.git
EOF
mkdir -p BaseTools/Source/C/BrotliCompress/brotli
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/BaseTools/Source/C/BrotliCompress/brotli.git BaseTools/Source/C/BrotliCompress/brotli
git submodule init BaseTools/Source/C/BrotliCompress/brotli
git submodule update BaseTools/Source/C/BrotliCompress/brotli
pushd BaseTools/Source/C/BrotliCompress/brotli
popd
cat >>.git/config <<EOF
[submodule "RedfishPkg/Library/JsonLib/jansson"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/RedfishPkg/Library/JsonLib/jansson.git
EOF
mkdir -p RedfishPkg/Library/JsonLib/jansson
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/edk2/RedfishPkg/Library/JsonLib/jansson.git RedfishPkg/Library/JsonLib/jansson
git submodule init RedfishPkg/Library/JsonLib/jansson
git submodule update RedfishPkg/Library/JsonLib/jansson
pushd RedfishPkg/Library/JsonLib/jansson
popd
popd
cat >>.git/config <<EOF
[submodule "slirp"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/slirp.git
EOF
mkdir -p slirp
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/slirp.git slirp
git submodule init slirp
git submodule update slirp
pushd slirp
popd
cat >>.git/config <<EOF
[submodule "roms/opensbi"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/opensbi.git
EOF
mkdir -p roms/opensbi
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/opensbi.git roms/opensbi
git submodule init roms/opensbi
git submodule update roms/opensbi
pushd roms/opensbi
popd
cat >>.git/config <<EOF
[submodule "roms/qboot"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/qboot.git
EOF
mkdir -p roms/qboot
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/qboot.git roms/qboot
git submodule init roms/qboot
git submodule update roms/qboot
pushd roms/qboot
popd
cat >>.git/config <<EOF
[submodule "meson"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/meson.git
EOF
mkdir -p meson
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/meson.git meson
git submodule init meson
git submodule update meson
pushd meson
popd
cat >>.git/config <<EOF
[submodule "roms/vbootrom"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/vbootrom.git
EOF
mkdir -p roms/vbootrom
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/roms/vbootrom.git roms/vbootrom
git submodule init roms/vbootrom
git submodule update roms/vbootrom
pushd roms/vbootrom
popd
cat >>.git/config <<EOF
[submodule "tests/lcitool/libvirt-ci"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/tests/lcitool/libvirt-ci.git
EOF
mkdir -p tests/lcitool/libvirt-ci
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/tests/lcitool/libvirt-ci.git tests/lcitool/libvirt-ci
git submodule init tests/lcitool/libvirt-ci
git submodule update tests/lcitool/libvirt-ci
pushd tests/lcitool/libvirt-ci
popd
cat >>.git/config <<EOF
[submodule "subprojects/libvfio-user"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/subprojects/libvfio-user.git
EOF
mkdir -p subprojects/libvfio-user
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/qemu/subprojects/libvfio-user.git subprojects/libvfio-user
git submodule init subprojects/libvfio-user
git submodule update subprojects/libvfio-user
pushd subprojects/libvfio-user
popd
popd
cat >>.git/config <<EOF
[submodule "musl"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/musl.git
EOF
mkdir -p musl
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/musl.git musl
git submodule init musl
git submodule update musl
pushd musl
popd
cat >>.git/config <<EOF
[submodule "spike"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/spike.git
EOF
mkdir -p spike
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/spike.git spike
git submodule init spike
git submodule update spike
pushd spike
popd
cat >>.git/config <<EOF
[submodule "pk"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/pk.git
EOF
mkdir -p pk
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/pk.git pk
git submodule init pk
git submodule update pk
pushd pk
popd
cat >>.git/config <<EOF
[submodule "llvm"]
	active = true
	url = https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/llvm.git
EOF
mkdir -p llvm
git clone https://fast-mirror.isrs.ac.cn/riscv-toolchains/git/chipsalliance/rocket-tools/riscv-gnu-toolchain/llvm.git llvm
git submodule init llvm
git submodule update llvm
pushd llvm
