forked from KolibriOS/kolibrios
Added more functionality
git-svn-id: svn://kolibrios.org@232 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
62c4becf44
commit
1ad99d565b
@ -2,43 +2,71 @@
|
||||
|
||||
set languages=en ru ge
|
||||
set drivers=unisound sis infinity ati2d
|
||||
set targets=all kernel drivers skins clean
|
||||
|
||||
set opt_ok=0
|
||||
for %%a in (%languages%) do if %%a==%1 set opt_ok=1
|
||||
if %opt_ok%==0 goto :Check_Targets
|
||||
call :Check_Target %1
|
||||
for %%a in (all kernel) do if %%a==%target% call :Check_Lang %2
|
||||
call :Target_%target%
|
||||
|
||||
echo building kernel with language %1 ...
|
||||
if ERRORLEVEL 0 goto Exit_OK
|
||||
|
||||
echo Probably at runing has been created error
|
||||
echo For help send a report...
|
||||
pause
|
||||
goto :eof
|
||||
|
||||
|
||||
|
||||
|
||||
:Check_Lang
|
||||
set res=%1
|
||||
:Check_Lang_loop
|
||||
for %%a in (%languages%) do if %%a==%res% set lang=%res%
|
||||
if defined lang goto :eof
|
||||
|
||||
echo Language "%res%" is not founded
|
||||
echo Enter valide languege
|
||||
echo [%languages%]
|
||||
|
||||
set /P res=">
|
||||
goto Check_Lang_loop
|
||||
goto :eof
|
||||
|
||||
:Check_Target
|
||||
set res=%1
|
||||
:Check_Target_loop
|
||||
for %%a in (%targets%) do if %%a==%res% set target=%res%
|
||||
if defined target goto :eof
|
||||
|
||||
echo Target "%res%" is not valide
|
||||
echo Enter valide target
|
||||
echo [%targets%]
|
||||
|
||||
set /P res=">
|
||||
goto Check_Target_loop
|
||||
goto :eof
|
||||
|
||||
|
||||
:Target_kernel
|
||||
echo building kernel with language %lang% ...
|
||||
|
||||
if not exist bin mkdir bin
|
||||
echo lang fix %1 > lang.inc
|
||||
echo lang fix %lang% > lang.inc
|
||||
fasm kernel.asm bin\kernel.mnt
|
||||
if not %errorlevel%==0 goto :Error_FasmFailed
|
||||
erase lang.inc
|
||||
goto :Exit_OK
|
||||
goto :eof
|
||||
|
||||
:Check_Targets
|
||||
|
||||
for %%a in (all drivers skins clean) do if %%a==%1 set opt_ok=1
|
||||
if %opt_ok%==0 goto :Error_WrongOption
|
||||
goto :Target_%1
|
||||
|
||||
:Target_all
|
||||
|
||||
echo building all ...
|
||||
|
||||
if not exist bin mkdir bin
|
||||
for %%a in (%languages%) do (
|
||||
echo lang fix %%a > lang.inc
|
||||
fasm kernel.asm bin\kernel_%%a.mnt
|
||||
if not %errorlevel%==0 goto :Error_FasmFailed
|
||||
)
|
||||
erase lang.inc
|
||||
call :Target_kernel
|
||||
call :Target_drivers
|
||||
call :Target_skins
|
||||
exit :Exit_OK
|
||||
goto :eof
|
||||
|
||||
|
||||
:Target_drivers
|
||||
|
||||
echo building drivers ...
|
||||
|
||||
if not exist bin\drivers mkdir bin\drivers
|
||||
@ -48,10 +76,10 @@ for %%a in (%drivers%) do (
|
||||
if not %errorlevel%==0 goto :Error_FasmFailed
|
||||
)
|
||||
cd ..
|
||||
goto :Exit_OK
|
||||
goto :eof
|
||||
|
||||
|
||||
:Target_skins
|
||||
|
||||
echo building skins ...
|
||||
|
||||
if not exist bin\skins mkdir bin\skins
|
||||
@ -59,10 +87,10 @@ cd skin
|
||||
fasm default.asm ..\bin\skins\default.skn
|
||||
if not %errorlevel%==0 goto :Error_FasmFailed
|
||||
cd ..
|
||||
goto :Exit_OK
|
||||
goto :eof
|
||||
|
||||
|
||||
:Target_clean
|
||||
|
||||
echo cleaning ...
|
||||
|
||||
del /Q bin\drivers\*.*
|
||||
@ -73,15 +101,14 @@ rmdir bin\skins
|
||||
rmdir bin
|
||||
goto :Exit_OK
|
||||
|
||||
:Error_WrongOption
|
||||
|
||||
echo error: specified option is incorrect - '%1'
|
||||
exit 1
|
||||
|
||||
:Error_FasmFailed
|
||||
|
||||
echo error: fasm execution failed
|
||||
erase lang.inc
|
||||
pause
|
||||
exit 1
|
||||
|
||||
:Exit_OK
|
||||
echo all operations has been done
|
||||
pause
|
||||
exit 0
|
Loading…
Reference in New Issue
Block a user