56 lines
1.6 KiB
Bash
56 lines
1.6 KiB
Bash
#!/bin/sh
|
|
|
|
CORES="$(nproc --all)"
|
|
|
|
SRC="Source/Atmosphere/stratosphere/loader/"
|
|
DEST="build/stratosphere/loader/"
|
|
mkdir -p "dist/atmosphere/kips/"
|
|
mkdir -p "$DEST"
|
|
|
|
echo
|
|
echo "*** Patching loader ***"
|
|
cp -vr "$SRC"/. "$DEST"/
|
|
echo
|
|
|
|
echo "*** Patching exosphere ***"
|
|
EXO_SRC="Source/Atmosphere-Patches"
|
|
EXO_DEST="build/exosphere/program/source/smc"
|
|
LIBEXO_DEST="build/libraries/libexosphere/include/exosphere/secmon"
|
|
|
|
cp -v "$EXO_SRC/secmon_emc_access_table_data.inc" "$EXO_DEST/"
|
|
cp -v "$EXO_SRC/secmon_define_emc_access_table.inc" "$EXO_DEST/"
|
|
cp -v "$EXO_SRC/secmon_rtc_pmc_access_table_data.inc" "$EXO_DEST/"
|
|
cp -v "$EXO_SRC/secmon_define_rtc_pmc_access_table.inc" "$EXO_DEST/"
|
|
cp -v "$EXO_SRC/secmon_smc_register_access.cpp" "$EXO_DEST/"
|
|
cp -v "$EXO_SRC/secmon_smc_handler.cpp" "$EXO_DEST/"
|
|
cp -v "$EXO_SRC/secmon_memory_layout.hpp" "$LIBEXO_DEST/"
|
|
echo
|
|
|
|
echo "CORES: $CORES"
|
|
echo
|
|
|
|
echo "*** Compiling loader ***"
|
|
cd build/stratosphere/loader || exit 1
|
|
make -j$CORES
|
|
hactool -t kip1 out/nintendo_nx_arm64_armv8a/release/loader.kip --uncompress=hoc.kip
|
|
cd ../../../ # exit
|
|
cp -v build/stratosphere/loader/hoc.kip dist/atmosphere/kips/hoc.kip
|
|
|
|
echo
|
|
echo "*** Compiling exosphere ***"
|
|
cd build/exosphere
|
|
make -j$CORES
|
|
cd ../../
|
|
cp -v build/exosphere/out/nintendo_nx_arm64_armv8a/release/exosphere.bin dist/atmosphere/exosphere.bin
|
|
|
|
cd Source/hoc-clk/
|
|
./build.sh
|
|
cp -r dist/ ../../
|
|
|
|
cd ../../
|
|
|
|
echo "*** Compiling horizon-oc-monitor ***"
|
|
cd Source/Horizon-OC-Monitor/
|
|
make -j$CORES
|
|
cp -v Horizon-OC-Monitor.ovl ../../dist/switch/.overlays/Horizon-OC-Monitor.ovl
|