Rev 1091 | Rev 1094 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
231 | mikedld | 1 | @echo off |
1093 | Lrz | 2 | cls |
231 | mikedld | 3 | |
271 | kaitz | 4 | set languages=en ru ge et |
769 | Rus | 5 | set drivers=sound sis infinity ensoniq ps2mouse com_mouse uart ati2d vmode |
529 | spraid | 6 | set targets=all kernel drivers skins clean |
231 | mikedld | 7 | |
232 | victor | 8 | call :Check_Target %1 |
9 | for %%a in (all kernel) do if %%a==%target% call :Check_Lang %2 |
||
10 | call :Target_%target% |
||
231 | mikedld | 11 | |
232 | victor | 12 | if ERRORLEVEL 0 goto Exit_OK |
231 | mikedld | 13 | |
467 | mikedld | 14 | echo There was an error executing script. |
15 | echo For any help, please send a report. |
||
232 | victor | 16 | pause |
17 | goto :eof |
||
231 | mikedld | 18 | |
19 | |||
20 | |||
232 | victor | 21 | |
22 | :Check_Lang |
||
23 | set res=%1 |
||
24 | :Check_Lang_loop |
||
25 | for %%a in (%languages%) do if %%a==%res% set lang=%res% |
||
26 | if defined lang goto :eof |
||
27 | |||
467 | mikedld | 28 | echo Language '%res%' is incorrect |
29 | echo Enter valid language [ %languages% ]: |
||
232 | victor | 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 | |||
467 | mikedld | 41 | echo Target '%res%' is incorrect |
42 | echo Enter valid target [ %targets% ]: |
||
232 | victor | 43 | |
44 | set /P res="> |
||
45 | goto Check_Target_loop |
||
46 | goto :eof |
||
47 | |||
48 | |||
49 | :Target_kernel |
||
467 | mikedld | 50 | echo *** building kernel with language '%lang%' ... |
232 | victor | 51 | |
52 | if not exist bin mkdir bin |
||
53 | echo lang fix %lang% > lang.inc |
||
373 | mikedld | 54 | fasm -m 65536 kernel.asm bin\kernel.mnt |
232 | victor | 55 | if not %errorlevel%==0 goto :Error_FasmFailed |
56 | erase lang.inc |
||
57 | goto :eof |
||
58 | |||
59 | |||
231 | mikedld | 60 | :Target_all |
232 | victor | 61 | call :Target_kernel |
62 | call :Target_drivers |
||
63 | call :Target_skins |
||
64 | goto :eof |
||
231 | mikedld | 65 | |
66 | |||
67 | :Target_drivers |
||
467 | mikedld | 68 | echo *** building drivers ... |
231 | mikedld | 69 | |
232 | victor | 70 | if not exist bin\drivers mkdir bin\drivers |
71 | cd drivers |
||
72 | for %%a in (%drivers%) do ( |
||
373 | mikedld | 73 | fasm -m 65536 %%a.asm ..\bin\drivers\%%a.obj |
232 | victor | 74 | if not %errorlevel%==0 goto :Error_FasmFailed |
75 | ) |
||
76 | cd .. |
||
467 | mikedld | 77 | move bin\drivers\vmode.obj bin\drivers\vmode.mdr |
1091 | Lrz | 78 | |
1093 | Lrz | 79 | |
1091 | Lrz | 80 | echo * |
81 | echo ############################################## |
||
82 | echo * |
||
83 | echo Kpack KolibriOS drivers? |
||
84 | echo * |
||
85 | |||
86 | set /P res=[y/n]? |
||
87 | |||
88 | if "%res%"=="y" ( |
||
89 | |||
1093 | Lrz | 90 | echo * |
91 | echo Compressing system |
||
1091 | Lrz | 92 | |
1093 | Lrz | 93 | echo * |
94 | for %%a in (bin\drivers\*.obj) do ( |
||
95 | echo ================== kpack %%a |
||
96 | kpack %%a |
||
97 | if not %errorlevel%==0 goto :Error_FasmFailed |
||
98 | ) |
||
1091 | Lrz | 99 | |
100 | ) |
||
232 | victor | 101 | goto :eof |
231 | mikedld | 102 | |
103 | |||
104 | :Target_skins |
||
467 | mikedld | 105 | echo *** building skins ... |
231 | mikedld | 106 | |
232 | victor | 107 | if not exist bin\skins mkdir bin\skins |
108 | cd skin |
||
373 | mikedld | 109 | fasm -m 65536 default.asm ..\bin\skins\default.skn |
232 | victor | 110 | if not %errorlevel%==0 goto :Error_FasmFailed |
111 | cd .. |
||
112 | goto :eof |
||
231 | mikedld | 113 | |
114 | :Target_clean |
||
467 | mikedld | 115 | echo *** cleaning ... |
489 | victor | 116 | rmdir /S /Q bin |
231 | mikedld | 117 | goto :Exit_OK |
118 | |||
119 | |||
120 | :Error_FasmFailed |
||
121 | echo error: fasm execution failed |
||
1093 | Lrz | 122 | erase lang.inc >nul 2>&1 |
123 | echo. |
||
232 | victor | 124 | pause |
231 | mikedld | 125 | exit 1 |
126 | |||
1093 | Lrz | 127 | :Error_KpackFailed |
128 | echo *** NOTICE *** |
||
129 | echo If you want pack all applications you may |
||
130 | echo place "kpack" in accessible directory. |
||
131 | echo You can download that tool from http://diamondz.land.ru/ |
||
132 | echo. |
||
133 | pause |
||
134 | exit 1 |
||
135 | |||
231 | mikedld | 136 | :Exit_OK |
1093 | Lrz | 137 | echo. |
232 | victor | 138 | echo all operations has been done |
139 | pause |
||
467 | mikedld | 140 | exit 0 |