Subversion Repositories Kolibri OS

Rev

Rev 5452 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. @echo off
  2. cls
  3. goto MAIN
  4.  
  5.  
  6. rem
  7. rem %1 - variable name
  8. rem %2-x - allowed values
  9. rem
  10. :input_value
  11.    set __var_name=%1
  12.    set __values=
  13.    set __value=
  14.    set __res=
  15.    shift
  16.    
  17.   :__allowed
  18.    set __values=%1 %__values%
  19.    shift
  20.    if not "%1"=="" goto __allowed
  21.    
  22.    set /P __res=">
  23.   :Check_Value
  24.    for %%a in (%__values%) do if %%a==%__res% set __value=%__res%
  25.    if defined __value goto :__input_value_end
  26.  
  27.    echo Value '%__res%' is incorrect
  28.    echo Enter valid value from [ %__values% ]:
  29.  
  30.    set /P __res=">
  31.    goto Check_Value
  32.    :__input_value_end
  33.    set %__var_name%=%__value%
  34. goto :eof
  35.  
  36.  
  37.  
  38.  
  39. :MAIN
  40. set languages=en ru ge et
  41. set __CPU_type=p5 p6 k6
  42. set BIN=bin
  43.  
  44. echo Build KolibriOS apps
  45. echo Enter valid language
  46. echo     [%languages%]
  47. call :input_value res %languages%
  48. echo lang fix %res% > lang.inc
  49.  
  50. echo Enter CPU_type ("p5" for interrupt, "p6" for SYSENTER, "k6" for SYSCALL)
  51. call :input_value res %__CPU_type%
  52. echo __CPU_type fix %res% > config.inc
  53.  
  54. for %%i in (%BIN% %BIN%\demos %BIN%\develop %BIN%\lib %BIN%\games %BIN%\network %BIN%\3d %BIN%\fonts %BIN%\nightbuild) do if not exist %%i mkdir %%i
  55.  
  56. echo *
  57. echo Building system
  58. echo *
  59. fasm system\calendar\trunk\calendar.asm %BIN%\calendar
  60. fasm system\board\trunk\board.asm %BIN%\develop\board
  61. fasm system\commouse\trunk\commouse.asm %BIN%\commouse
  62. fasm system\cpu\trunk\cpu.asm %BIN%\cpu
  63. fasm system\cpuid\trunk\cpuid.asm %BIN%\cpuid
  64. fasm system\skincfg\trunk\skincfg.asm %BIN%\skincfg
  65. fasm system\docpack\trunk\docpack.asm %BIN%\docpack
  66. fasm system\end\trunk\end.asm %BIN%\end
  67. fasm system\gmon\gmon.asm %BIN%\gmon
  68. fasm system\icon\trunk\icon.asm %BIN%\icon
  69. fasm system\kbd\trunk\kbd.ASM %BIN%\kbd
  70. fasm system\launcher\trunk\launcher.asm %BIN%\launcher
  71. fasm system\menu\trunk\menu.asm %BIN%\@menu
  72. fasm system\mgb\trunk\mgb.asm %BIN%\mgb
  73. fasm system\mousemul\trunk\mousemul.asm %BIN%\mousemul
  74. fasm system\PANEL\trunk\@TASKBAR.ASM %BIN%\@TASKBAR
  75. fasm system\pcidev\trunk\pcidev.asm %BIN%\pcidev
  76. fasm system\RB\trunk\@RB.ASM %BIN%\@RB
  77. fasm system\rdsave\trunk\rdsave.asm %BIN%\rdsave
  78. fasm system\run\trunk\run.asm %BIN%\run
  79. fasm system\setup\trunk\setup.asm %BIN%\setup
  80. fasm system\skinsel\skinsel.asm %BIN%\skinsel
  81. fasm system\ss\trunk\@ss.asm %BIN%\@ss
  82. fasm system\vrr\trunk\vrr.asm %BIN%\vrr
  83. fasm system\vrr_m\trunk\vrr_m.asm %BIN%\vrr_m
  84. fasm system\zkey\trunk\zkey.asm %BIN%\zkey
  85.  
  86. echo *
  87. echo Building develop
  88. echo *
  89. fasm develop\cmd\trunk\cmd.asm %BIN%\cmd
  90. fasm develop\fasm\trunk\fasm.asm %BIN%\develop\fasm
  91. fasm develop\h2d2b\trunk\h2d2b.asm %BIN%\develop\h2d2b
  92. fasm develop\heed\trunk\heed.asm %BIN%\demos\heed
  93. rem fasm develop\hexview\trunk\hexview.asm hexview
  94. fasm develop\keyascii\trunk\keyascii.asm %BIN%\develop\keyascii
  95. fasm develop\mtdbg\mtdbg.asm %BIN%\develop\mtdbg
  96. rem fasm develop\param\trunk\param.asm param
  97. fasm develop\scancode\trunk\scancode.asm %BIN%\develop\scancode
  98. fasm develop\tinypad\trunk\tinypad.asm %BIN%\tinypad
  99. fasm develop\cObj\trunk\cObj.asm %BIN%\develop\cObj
  100.  
  101. echo *
  102. echo Building systems libraries
  103. echo *
  104. fasm develop\libraries\box_lib\trunk\box_lib.asm %BIN%\lib\box_lib.obj
  105. fasm develop\libraries\console\console.asm %BIN%\lib\console.obj
  106. fasm develop\libraries\libs-dev\libgfx\libgfx.asm %BIN%\lib\libgfx.obj
  107. fasm develop\libraries\libs-dev\libimg\libimg.asm %BIN%\lib\libimg.obj
  108. fasm develop\libraries\libs-dev\libini\libini.asm %BIN%\lib\libini.obj
  109. fasm develop\libraries\libs-dev\libio\libio.asm %BIN%\lib\libio.obj
  110.  
  111. echo *
  112. echo Building fs
  113. echo *
  114. fasm fs\copy2\trunk\copy2.asm %BIN%\copy2
  115. fasm fs\copyr\trunk\copyr.asm %BIN%\copyr
  116. fasm fs\kfar\trunk\kfar.asm %BIN%\kfar
  117. rem fasm fs\mfar\trunk\mfar.asm %BIN%\mfar
  118. fasm fs\sysxtree\trunk\sysxtree.asm %BIN%\sysxtree
  119.  
  120. echo *
  121. echo Building network
  122. echo *
  123. fasm network\airc\trunk\airc.asm %BIN%\network\airc
  124. fasm network\arpstat\trunk\arpstat.asm %BIN%\network\arpstat
  125. fasm network\autodhcp\trunk\autodhcp.asm %BIN%\network\autodhcp
  126. fasm network\chess\trunk\chess.asm %BIN%\network\chess
  127. fasm network\dhcp\trunk\dhcp.asm %BIN%\network\dhcp
  128. fasm network\dnsr\trunk\dnsr.asm %BIN%\network\dnsr
  129. fasm network\ethstat\trunk\ethstat.asm %BIN%\network\ethstat
  130. fasm network\ftps\trunk\ftps.asm %BIN%\network\ftps
  131. fasm network\httpc\trunk\httpc.asm %BIN%\network\httpc
  132. fasm network\https\trunk\https.asm %BIN%\network\https
  133. fasm network\ipc\trunk\ipc.asm %BIN%\network\ipc
  134. fasm network\local\trunk\local.asm %BIN%\network\local
  135. fasm network\mp3s\trunk\mp3s.asm %BIN%\network\mp3s
  136. fasm network\netsendc\trunk\netsendc.asm %BIN%\network\netsendc
  137. fasm network\netsends\trunk\netsends.asm %BIN%\network\netsends
  138. fasm network\nntpc\trunk\nntpc.asm %BIN%\network\nntpc
  139. fasm network\popc\trunk\popc.asm %BIN%\network\popc
  140. fasm network\ppp\trunk\ppp.asm %BIN%\network\ppp
  141. fasm network\rccc\trunk\rccc.asm %BIN%\network\rccc
  142. fasm network\rccs\trunk\rccs.asm %BIN%\network\rccs
  143. fasm network\remote\trunk\remote.asm %BIN%\network\remote
  144. fasm network\smtps\trunk\smtps.asm %BIN%\network\smtps
  145. fasm network\stackcfg\trunk\stackcfg.asm %BIN%\network\stackcfg
  146. fasm network\telnet\trunk\telnet.asm %BIN%\network\telnet
  147. fasm network\terminal\trunk\terminal.asm %BIN%\network\terminal
  148. fasm network\tftpa\trunk\tftpa.asm %BIN%\network\tftpa
  149. fasm network\tftpc\trunk\tftpc.asm %BIN%\network\tftpc
  150. fasm network\VNCclient\VNCclient.asm %BIN%\network\VNCclient
  151. fasm network\ym\trunk\ym.asm %BIN%\network\ym
  152.  
  153. echo *
  154. echo Building other
  155. echo *
  156. rem fasm other\archer\trunk\@rcher.asm %BIN%\@rcher
  157. fasm other\calc\trunk\calc.asm %BIN%\calc
  158. fasm other\mhc\trunk\mhc.asm %BIN%\mhc
  159. fasm other\period\trunk\period.asm %BIN%\period
  160. fasm other\rtfread\trunk\rtfread.asm %BIN%\rtfread
  161.  
  162. echo *
  163. echo Building media
  164. echo *
  165. rem media\ac97snd\trunk\ac97snd.asm ac97snd
  166. fasm media\animage\trunk\animage.asm %BIN%\animage
  167. fasm media\cdp\trunk\cdp.asm %BIN%\cdp
  168. fasm media\gifview\trunk\gifview.asm %BIN%\gifview
  169. fasm media\iconedit\trunk\iconedit.asm %BIN%\iconedit
  170. fasm media\jpegview\trunk\jpegview.asm %BIN%\jpegview
  171. fasm media\midamp\trunk\midamp.asm %BIN%\midamp
  172. fasm media\midiplay\trunk\midiplay.asm %BIN%\midiplay
  173. fasm media\mixer\trunk\mixer.asm %BIN%\mixer
  174.  
  175. fasm media\mv\trunk\mv.asm %BIN%\mv
  176. fasm media\pic4\trunk\pic4.asm %BIN%\pic4
  177. fasm media\sb\trunk\sb.asm %BIN%\sb
  178. fasm media\scrshoot\scrshoot.asm %BIN%\scrshoot
  179.  
  180. echo *
  181. echo Building games
  182. echo *
  183. fasm games\15\trunk\15.asm %BIN%\games\15
  184. fasm games\arcanii\trunk\arcanii.asm %BIN%\games\arcanii
  185. fasm games\arcanoid\trunk\arcanoid.asm %BIN%\games\arcanoid
  186. cd games\c4\trunk\
  187. nasmw -f bin -o ..\..\..\%BIN%\games\c4 c4.asm
  188. cd ..\..\..
  189. fasm games\freecell\freecell.asm %BIN%\games\freecell
  190. fasm games\mblocks\trunk\mblocks.asm %BIN%\games\mblocks
  191. fasm games\phenix\trunk\phenix.asm %BIN%\games\phenix
  192. fasm games\pipes\pipes.asm %BIN%\games\pipes
  193. fasm games\pong\trunk\pong.asm %BIN%\games\pong
  194. fasm games\pong3\trunk\pong3.asm %BIN%\games\pong3
  195. fasm games\snake\snake.asm %BIN%\games\snake
  196. copy games\snake\snake.ini %BIN%\games\snake.ini
  197. fasm games\tanks\trunk\tanks.asm %BIN%\games\tanks
  198. fasm games\tetris\trunk\tetris.asm %BIN%\games\tetris
  199. rem fasm games\hunter\trunk\hunter.asm %BIN%\games\hunter
  200.  
  201. echo *
  202. echo Building demos
  203. echo *
  204. fasm demos\3dcube2\trunk\3dcube2.asm %BIN%\3d\3dcube2
  205. rem fasm demos\3detx60b\trunk\3detx60b.asm %BIN%\3d\3detx60b
  206. fasm demos\3dtcub10\trunk\3dtcub10.asm %BIN%\3d\3dtcub10
  207. cd demos\aclock\trunk\
  208. nasmw -t -f bin -o ..\..\..\%BIN%\demos\aclock aclock.asm
  209. cd ..\..\..
  210. fasm demos\bcdclk\trunk\bcdclk.asm %BIN%\demos\bcdclk
  211. fasm demos\bgitest\trunk\bgitest.asm %BIN%\fonts\bgitest
  212. fasm demos\colorref\trunk\colorref.asm %BIN%\demos\colorref
  213. fasm demos\crownscr\trunk\crownscr.asm %BIN%\3d\crownscr
  214. fasm demos\cslide\trunk\cslide.asm %BIN%\demos\cslide
  215. fasm demos\eyes\trunk\eyes.asm %BIN%\demos\eyes
  216. fasm demos\fire\trunk\fire.asm %BIN%\demos\fire
  217. fasm demos\fire2\trunk\fire2.asm %BIN%\demos\fire2
  218. fasm demos\firework\trunk\firework.asm %BIN%\demos\firework
  219. fasm demos\free3d04\trunk\free3d04.asm %BIN%\3d\free3d04
  220. fasm demos\magnify\trunk\magnify.asm %BIN%\magnify
  221. fasm demos\movback\trunk\movback.asm %BIN%\demos\movback
  222. fasm demos\plasma\trunk\plasma.asm %BIN%\demos\plasma
  223. fasm demos\timer\trunk\timer.asm %BIN%\demos\timer
  224. fasm demos\tinyfrac\trunk\tinyfrac.asm %BIN%\demos\tinyfrac
  225. fasm demos\transp\trunk\transp.asm %BIN%\demos\transp
  226. fasm demos\trantest\trunk\trantest.asm %BIN%\demos\trantest
  227. fasm demos\tube\trunk\tube.asm %BIN%\demos\tube
  228. fasm demos\unvwater\trunk\unvwater.asm %BIN%\demos\unvwater
  229.  
  230. echo *
  231. echo Building depend application for fdd's nightbuild
  232. echo *
  233. echo __nightbuild fix yes >> config.inc
  234. fasm media\kiv\trunk\kiv.asm %BIN%\nightbuild\kiv
  235. fasm media\scrshoot\scrshoot.asm %BIN%\nightbuild\scrshoot
  236. fasm media\animage\trunk\animage.asm %BIN%\nightbuild\animage
  237. fasm media\midamp\trunk\midamp.asm %BIN%\nightbuild\midamp
  238. fasm develop\heed\trunk\heed.asm %BIN%\nightbuild\heed
  239. fasm develop\tinypad\trunk\tinypad.asm %BIN%\nightbuild\tinypad
  240. fasm system\skincfg\trunk\skincfg.asm %BIN%\nightbuild\skincfg
  241. fasm system\hdd_info\trunk\hdd_info.asm %BIN%\nightbuild\hdd_info
  242. fasm system\mgb\trunk\mgb.asm %BIN%\nightbuild\mgb
  243. fasm system\rdsave\trunk\rdsave.asm %BIN%\nightbuild\rdsave
  244. fasm other\kpack\trunk\kpack.asm %BIN%\nightbuild\kpack
  245. fasm other\rtfread\trunk\rtfread.asm %BIN%\nightbuild\rtfread
  246. ;restore
  247. echo __CPU_type fix %res% > config.inc
  248. erase lang.inc
  249.  
  250. echo *
  251. echo Finished building
  252. echo *
  253.  
  254.  
  255. kpack /nologo 2> nul
  256. if "%errorlevel%"=="9009" (
  257. echo   *** NOTICE ***
  258. echo If you want to pack all applications you may
  259. echo place "kpack" in accessible directory.
  260. echo You can download that tool from http://diamondz.land.ru/
  261. goto END
  262. )
  263.  
  264. echo Kpack KolibriOS apps?
  265. echo    
  266.  
  267. set /P res=[y/n]?
  268.  
  269. if "%res%"=="y" (
  270.  
  271. echo *
  272. echo Compressing system
  273. echo *
  274. kpack %BIN%\calendar
  275. kpack %BIN%\develop\board
  276. kpack %BIN%\cpu
  277. kpack %BIN%\cpuid
  278. kpack %BIN%\skincfg
  279. kpack %BIN%\docpack
  280. kpack %BIN%\end
  281. kpack %BIN%\gmon
  282. kpack %BIN%\icon
  283. kpack %BIN%\kbd
  284. kpack %BIN%\launcher
  285. kpack %BIN%\menu
  286. kpack %BIN%\mgb
  287. kpack %BIN%\@TASKBAR
  288. kpack %BIN%\pcidev
  289. kpack %BIN%\@RB
  290. kpack %BIN%\rdsave
  291. kpack %BIN%\run
  292. kpack %BIN%\setup
  293. kpack %BIN%\skinsel
  294. kpack %BIN%\@ss
  295. kpack %BIN%\vrr
  296. kpack %BIN%\vrr_m
  297. kpack %BIN%\zkey
  298.  
  299. echo *
  300. echo Compressing develop
  301. echo *
  302.  
  303. kpack %BIN%\cmd
  304. kpack %BIN%\develop\fasm
  305. kpack %BIN%\develop\h2d2b
  306. kpack %BIN%\demos\heed
  307. kpack %BIN%\develop\keyascii
  308. kpack %BIN%\develop\mtdbg
  309. kpack %BIN%\develop\scancode
  310.  
  311. echo *
  312. echo Compressing libraries
  313. echo *
  314.  
  315. kpack %BIN%\lib\box_lib.obj
  316. kpack %BIN%\lib\console.obj
  317. kpack %BIN%\lib\libsgfx.obj
  318. kpack %BIN%\lib\libimg.obj
  319. kpack %BIN%\lib\libini.obj
  320. kpack %BIN%\lib\libio.obj
  321.  
  322.  
  323. echo *
  324. echo Compressing fs
  325. echo *
  326.  
  327. kpack %BIN%\copy2
  328. kpack %BIN%\copyr
  329. kpack %BIN%\kfar
  330. kpack %BIN%\sysxtree
  331.  
  332. echo *
  333. echo Compressing network
  334. echo *
  335.  
  336. kpack %BIN%\network\airc
  337. kpack %BIN%\network\arpstat
  338. kpack %BIN%\network\autodhcp
  339. kpack %BIN%\network\chess
  340. kpack %BIN%\network\dhcp
  341. kpack %BIN%\network\dnsr
  342. kpack %BIN%\network\ethstat
  343. kpack %BIN%\network\httpc
  344. kpack %BIN%\network\https
  345. kpack %BIN%\network\ipc
  346. kpack %BIN%\network\local
  347. kpack %BIN%\network\netsendc
  348. kpack %BIN%\network\netsends
  349. kpack %BIN%\network\nntpc
  350. kpack %BIN%\network\popc
  351. kpack %BIN%\network\ppp
  352. kpack %BIN%\network\rccc
  353. kpack %BIN%\network\rccs
  354. kpack %BIN%\network\remote
  355. kpack %BIN%\network\smtps
  356. kpack %BIN%\network\stackcfg
  357. kpack %BIN%\network\telnet
  358. kpack %BIN%\network\terminal
  359. kpack %BIN%\network\tftpa
  360. kpack %BIN%\network\tftpc
  361. kpack %BIN%\network\VNCclient
  362. kpack %BIN%\network\ym
  363.  
  364. echo *
  365. echo Compressing other
  366. echo *
  367.  
  368. rem kpack %BIN%\@rcher
  369. kpack %BIN%\calc
  370. kpack %BIN%\mhc
  371. kpack %BIN%\period
  372. kpack %BIN%\rtfread
  373.  
  374. echo *
  375. echo Compressing media
  376. echo *
  377.  
  378. kpack %BIN%\animage
  379. kpack %BIN%\cdp
  380. kpack %BIN%\gifview
  381. kpack %BIN%\iconedit
  382. kpack %BIN%\jpegview
  383. kpack %BIN%\midamp
  384. kpack %BIN%\midiplay
  385. kpack %BIN%\mixer
  386. kpack %BIN%\mp3s
  387. kpack %BIN%\mv
  388. kpack %BIN%\pic4
  389. kpack %BIN%\sb
  390. kpack %BIN%\scrshoot
  391.  
  392. echo *
  393. echo Compressing games
  394. echo *
  395.  
  396. kpack %BIN%\games\15
  397. kpack %BIN%\games\arcanii
  398. kpack %BIN%\games\arcanoid
  399. kpack %BIN%\games\freecell
  400. kpack %BIN%\games\mblocks
  401. kpack %BIN%\games\phenix
  402. kpack %BIN%\games\pipes
  403. kpack %BIN%\games\pong
  404. kpack %BIN%\games\pong3
  405. kpack %BIN%\games\tanks
  406. kpack %BIN%\games\tetris
  407.  
  408. echo *
  409. echo Compressing demos
  410. echo *
  411.  
  412. kpack %BIN%\3d\3dcube2
  413. kpack %BIN%\3d\3dtcub10
  414. kpack %BIN%\demos\aclock
  415. kpack %BIN%\demos\bcdclk
  416. kpack %BIN%\fonts\bgitest
  417. kpack %BIN%\demos\colorref
  418. kpack %BIN%\3d\crownscr
  419. kpack %BIN%\demos\cslide
  420. kpack %BIN%\demos\eyes
  421. kpack %BIN%\demos\fire
  422. kpack %BIN%\demos\fire2
  423. kpack %BIN%\demos\firework
  424. kpack %BIN%\3d\free3d04
  425. kpack %BIN%\magnify
  426. kpack %BIN%\demos\movback
  427. kpack %BIN%\demos\plasma
  428. kpack %BIN%\demos\timer
  429. kpack %BIN%\demos\tinyfrac
  430. kpack %BIN%\demos\transp
  431. kpack %BIN%\demos\trantest
  432. kpack %BIN%\demos\tube
  433. kpack %BIN%\demos\unvwater
  434.  
  435. echo *
  436. echo Compressing nightbuild
  437. echo *
  438. kpack %BIN%\nightbuild\kiv
  439. kpack %BIN%\nightbuild\scrshoot
  440. kpack %BIN%\nightbuild\animage
  441. kpack %BIN%\nightbuild\midamp
  442. kpack %BIN%\nightbuild\heed
  443. kpack %BIN%\nightbuild\tinypad
  444. kpack %BIN%\nightbuild\skincfg
  445. kpack %BIN%\nightbuild\hdd_info
  446. kpack %BIN%\nightbuild\mgb
  447. kpack %BIN%\nightbuild\rdsave
  448. kpack %BIN%\nightbuild\kpack
  449. kpack %BIN%\nightbuild\rtfread
  450.  
  451. echo *
  452. echo Compressing complete
  453. echo *
  454. )
  455.  
  456. :END
  457. echo *
  458. echo Done. Thanks for your choice ;)
  459. echo *
  460. pause
  461.