-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild_all.sh
63 lines (56 loc) · 1.78 KB
/
build_all.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
(
rm -rf build;
mkdir build;
# PC tools
cd source/tools/;
cp mkcfw-wingui.ps1 ../../build/mkcfw-wingui.ps1;
gcc mkcfw.c -Wno-multichar -o ../../build/mkcfw;
x86_64-w64-mingw32-gcc-win32 -mno-ms-bitfields -Wno-multichar -DWINDOWS mkcfw.c -o ../../build/mkcfw.exe
gcc mksbls.c -o ../../build/mksbls;
x86_64-w64-mingw32-gcc-win32 -mno-ms-bitfields -DWINDOWS mksbls.c -o ../../build/mksbls.exe
gcc mkernie.c -o ../../build/mkernie;
x86_64-w64-mingw32-gcc-win32 -mno-ms-bitfields -DWINDOWS mkernie.c -o ../../build/mkernie.exe
gcc mkmbr.c -o ../../build/mkmbr;
x86_64-w64-mingw32-gcc-win32 -mno-ms-bitfields -DWINDOWS mkmbr.c -o ../../build/mkmbr.exe
gcc mkfs.c -o ../../build/mkfs;
x86_64-w64-mingw32-gcc-win32 -mno-ms-bitfields -DWINDOWS mkfs.c -o ../../build/mkfs.exe
cd ../../;
# Custom imports because VitaSDK doesn't understand backward compat
cd source/;
rm -rf imports;
vita-libs-gen kernel/imports.yml imports;
cd imports/;
make;
for lib in *_stub.a; do
mv -- "$lib" "${lib%_stub.a}_custom.a"
done
cd ../../;
# Compile main
cd source/;
cmake ./ && make;
cd ../;
# Copyout builds
mv source/FWTOOL.vpk build/FWTOOL.vpk;
mv source/compile_psp2swu.self build/psp2swu.self;
mv source/compile_cui_setupper.self build/cui_setupper.self;
# Create a separate dir for repacks
mkdir create;
cp build/mk* create/;
cp build/psp2swu.self create/psp2swu.self;
cp build/cui_setupper.self create/cui_setupper.self;
# Cleanup
cd source/;
rm -rf CMakeFiles && rm cmake_install.cmake && rm CMakeCache.txt && rm Makefile;
rm -rf fwtoolkernel_stubs && rm fwtoolkernel_stubs.yml && rm compile_*;
rm -rf imports;
cd ../;
# Info user
echo "";
echo "VPK: /build/FWTOOL.vpk";
echo "SWU: /build/psp2swu.self";
echo "SUP: /build/cui_setupper.self";
echo "BIN: /build/ && /create/";
echo "";
echo "DONE! [ VPK | SWU | SUP | BIN ]";
echo "";
)