Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
384 mikedld 1
@echo off
2
 
3
set languages=en ru ge et
4
set drivers=sound sis infinity ati2d
5
set targets=all kernel drivers skins clean
6
 
7
call :Check_Target %1
8
for %%a in (all kernel) do if %%a==%target% call :Check_Lang %2
9
call :Target_%target%
10
 
11
if ERRORLEVEL 0 goto Exit_OK
12
 
13
echo Probably at runing has been created error
14
echo For help send a report...
15
pause
16
goto :eof
17
 
18
 
19
 
20
 
21
:Check_Lang
22
   set res=%1
23
  :Check_Lang_loop
24
   for %%a in (%languages%) do if %%a==%res% set lang=%res%
25
   if defined lang goto :eof
26
 
27
   echo Language "%res%" is not founded
28
   echo Enter valide languege
29
   echo     [%languages%]
30
 
31
   set /P res=">
32
   goto Check_Lang_loop
33
goto :eof
34
 
35
:Check_Target
36
   set res=%1
37
  :Check_Target_loop
38
   for %%a in (%targets%) do if %%a==%res% set target=%res%
39
   if defined target goto :eof
40
 
41
   echo Target "%res%" is not valide
42
   echo Enter valide target
43
   echo     [%targets%]
44
 
45
   set /P res=">
46
   goto Check_Target_loop
47
goto :eof
48
 
49
 
50
:Target_kernel
51
   echo building kernel with language %lang% ...
52
 
53
   if not exist bin mkdir bin
54
   echo lang fix %lang% > lang.inc
55
   fasm -m 65536 kernel.asm bin\kernel.mnt
56
   if not %errorlevel%==0 goto :Error_FasmFailed
57
   erase lang.inc
58
goto :eof
59
 
60
 
61
:Target_all
62
   echo building all ...
63
   call :Target_kernel
64
   call :Target_drivers
65
   call :Target_skins
66
goto :eof
67
 
68
 
69
:Target_drivers
70
   echo building drivers ...
71
 
72
   if not exist bin\drivers mkdir bin\drivers
73
   cd drivers
74
   for %%a in (%drivers%) do (
75
     fasm -m 65536 %%a.asm ..\bin\drivers\%%a.obj
76
     if not %errorlevel%==0 goto :Error_FasmFailed
77
   )
78
   cd ..
79
goto :eof
80
 
81
 
82
:Target_skins
83
   echo building skins ...
84
 
85
   if not exist bin\skins mkdir bin\skins
86
   cd skin
87
   fasm -m 65536 default.asm ..\bin\skins\default.skn
88
   if not %errorlevel%==0 goto :Error_FasmFailed
89
   cd ..
90
goto :eof
91
 
92
 
93
:Target_clean
94
   echo cleaning ...
95
 
96
   del /Q bin\drivers\*.*
97
   del /Q bin\skins\*.*
98
   del /Q bin\*.*
99
   rmdir bin\drivers
100
   rmdir bin\skins
101
   rmdir bin
102
goto :Exit_OK
103
 
104
 
105
:Error_FasmFailed
106
echo error: fasm execution failed
107
erase lang.inc
108
pause
109
exit 1
110
 
111
:Exit_OK
112
echo all operations has been done
113
pause
114
exit 0