psvitabuild.bat (3108B)
1 @rem Script to build LuaJIT with the PS Vita SDK. 2 @rem Donated to the public domain. 3 @rem 4 @rem Open a "Visual Studio .NET Command Prompt" (32 bit host compiler) 5 @rem Then cd to this directory and run this script. 6 7 @if not defined INCLUDE goto :FAIL 8 @if not defined SCE_PSP2_SDK_DIR goto :FAIL 9 10 @setlocal 11 @rem ---- Host compiler ---- 12 @set LJCOMPILE=cl /nologo /c /MD /O2 /W3 /D_CRT_SECURE_NO_DEPRECATE 13 @set LJLINK=link /nologo 14 @set LJMT=mt /nologo 15 @set DASMDIR=..\dynasm 16 @set DASM=%DASMDIR%\dynasm.lua 17 @set ALL_LIB=lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c 18 19 %LJCOMPILE% host\minilua.c 20 @if errorlevel 1 goto :BAD 21 %LJLINK% /out:minilua.exe minilua.obj 22 @if errorlevel 1 goto :BAD 23 if exist minilua.exe.manifest^ 24 %LJMT% -manifest minilua.exe.manifest -outputresource:minilua.exe 25 26 @rem Check for 32 bit host compiler. 27 @minilua 28 @if errorlevel 8 goto :FAIL 29 30 @set DASMFLAGS=-D FPU -D HFABI 31 minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h vm_arm.dasc 32 @if errorlevel 1 goto :BAD 33 34 %LJCOMPILE% /I "." /I %DASMDIR% -DLUAJIT_TARGET=LUAJIT_ARCH_ARM -DLUAJIT_OS=LUAJIT_OS_OTHER -DLUAJIT_DISABLE_JIT -DLUAJIT_DISABLE_FFI -DLJ_TARGET_PSVITA=1 host\buildvm*.c 35 @if errorlevel 1 goto :BAD 36 %LJLINK% /out:buildvm.exe buildvm*.obj 37 @if errorlevel 1 goto :BAD 38 if exist buildvm.exe.manifest^ 39 %LJMT% -manifest buildvm.exe.manifest -outputresource:buildvm.exe 40 41 buildvm -m elfasm -o lj_vm.s 42 @if errorlevel 1 goto :BAD 43 buildvm -m bcdef -o lj_bcdef.h %ALL_LIB% 44 @if errorlevel 1 goto :BAD 45 buildvm -m ffdef -o lj_ffdef.h %ALL_LIB% 46 @if errorlevel 1 goto :BAD 47 buildvm -m libdef -o lj_libdef.h %ALL_LIB% 48 @if errorlevel 1 goto :BAD 49 buildvm -m recdef -o lj_recdef.h %ALL_LIB% 50 @if errorlevel 1 goto :BAD 51 buildvm -m vmdef -o jit\vmdef.lua %ALL_LIB% 52 @if errorlevel 1 goto :BAD 53 buildvm -m folddef -o lj_folddef.h lj_opt_fold.c 54 @if errorlevel 1 goto :BAD 55 56 @rem ---- Cross compiler ---- 57 @set LJCOMPILE="%SCE_PSP2_SDK_DIR%\host_tools\build\bin\psp2snc" -c -w -DLUAJIT_DISABLE_FFI -DLUAJIT_USE_SYSMALLOC 58 @set LJLIB="%SCE_PSP2_SDK_DIR%\host_tools\build\bin\psp2ld32" -r --output= 59 @set INCLUDE="" 60 61 "%SCE_PSP2_SDK_DIR%\host_tools\build\bin\psp2as" -o lj_vm.o lj_vm.s 62 63 @if "%1" neq "debug" goto :NODEBUG 64 @shift 65 @set LJCOMPILE=%LJCOMPILE% -g -O0 66 @set TARGETLIB=libluajitD.a 67 goto :BUILD 68 :NODEBUG 69 @set LJCOMPILE=%LJCOMPILE% -O2 70 @set TARGETLIB=libluajit.a 71 :BUILD 72 del %TARGETLIB% 73 74 %LJCOMPILE% ljamalg.c 75 @if errorlevel 1 goto :BAD 76 %LJLIB%%TARGETLIB% ljamalg.o lj_vm.o 77 @if errorlevel 1 goto :BAD 78 79 @del *.o *.obj *.manifest minilua.exe buildvm.exe 80 @echo. 81 @echo === Successfully built LuaJIT for PS Vita === 82 83 @goto :END 84 :BAD 85 @echo. 86 @echo ******************************************************* 87 @echo *** Build FAILED -- Please check the error messages *** 88 @echo ******************************************************* 89 @goto :END 90 :FAIL 91 @echo To run this script you must open a "Visual Studio .NET Command Prompt" 92 @echo (32 bit host compiler). The PS Vita SDK must be installed, too. 93 :END