Subversion Repositories Kolibri OS

Rev

Rev 7592 | Rev 7610 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6310 akron1 1
-- Do nothing unless explicitly requested in tup.config.
5098 clevermous 2
build_type = tup.getconfig('BUILD_TYPE')
3
if build_type == "" then
4
  return
5
end
6
 
7
--[================================[ DATA ]================================]--
8
 
9
PROGS = "../programs"
10
 
11
-- Static data that doesn't need to be compiled
12
-- Files to be included in kolibri.img.
13
-- The first subitem of every item is name inside kolibri.img, the second is name of local file.
14
img_files = {
15
 {"MACROS.INC", PROGS .. "/macros.inc"},
16
 {"CONFIG.INC", PROGS .. "/config.inc"},
17
 {"STRUCT.INC", PROGS .. "/struct.inc"},
6958 leency 18
 {"FB2READ", "common/fb2read"},
7425 leency 19
 {"ALLGAMES", "common/allgames"},
6958 leency 20
 {"ICONS32.PNG", "common/icons32.png"},
7052 leency 21
 {"ICONS16.PNG", "common/icons16.png"},
6958 leency 22
 {"INDEX.HTM", "common/index_htm"},
23
 {"KUZKINA.MID", "common/kuzkina.mid"},
24
 {"LANG.INC", build_type .. "/lang.inc"},
25
 {"NOTIFY3.PNG", "common/notify3.png"},
6759 leency 26
 {"TOOLBAR.PNG", PROGS .. "/cmm/txtread/toolbar.png"},
6958 leency 27
 {"VMODE", "common/vmode"},
28
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
5098 clevermous 29
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
6958 leency 30
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
31
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
5098 clevermous 32
 {"File Managers/BUTTONS.BMP", PROGS .. "/fs/kfm/trunk/buttons.bmp"},
33
 {"File Managers/ICONS.BMP", PROGS .. "/fs/kfm/trunk/icons.bmp"},
7053 leency 34
 {"File Managers/FNAV/ABOUT.TXT", "common/File Managers/fNav/About.txt"},
7029 0CodErr 35
 {"File Managers/FNAV/FNAV", "common/File Managers/fNav/fNav.kex"},
36
 {"File Managers/FNAV/FNAV.EXT", "common/File Managers/fNav/fnav.ext"},
37
 {"File Managers/FNAV/FNAV.SET", "common/File Managers/fNav/fnav.set"},
38
 {"File Managers/FNAV/FNAV_CUR.PNG", "common/File Managers/fNav/fnav_cur.png"},
39
 {"File Managers/FNAV/FNAV_FNT.PNG", "common/File Managers/fNav/fnav_fnt.png"},
7053 leency 40
 {"File Managers/FNAV/FNAV_ICN.PNG", "common/File Managers/fNav/fnav_icn.png"},
5764 leency 41
 {"FONTS/TAHOMA.KF", "common/fonts/tahoma.kf"},
6958 leency 42
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
43
 {"LIB/KMENU.OBJ", "common/lib/kmenu.obj"},
44
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
45
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
46
 {"MEDIA/IMGF/IMGF", "common/media/ImgF/ImgF"},
47
 {"MEDIA/IMGF/CEDG.OBJ", "common/media/ImgF/cEdg.obj"},
48
 {"MEDIA/IMGF/DITHER.OBJ", "common/media/ImgF/dither.obj"},
49
 {"MEDIA/IMGF/INVSOL.OBJ", "common/media/ImgF/invSol.obj"},
7234 leency 50
 {"MEDIA/PIXIE/SKIN.PNG", PROGS .. "/cmm/pixie2/skin.png"},
7211 nisargshah 51
 {"NETWORK/FTPC.INI", PROGS .. "/network/ftpc/ftpc.ini"},
6958 leency 52
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
53
 {"NETWORK/USERS.INI", "common/network/users.ini"},
7167 nisargshah 54
 {"NETWORK/TL_SYS_16.PNG", PROGS .. "/network/ftpc/tl_sys_16.png"},
55
 {"NETWORK/TL_NOD_16.PNG", PROGS .. "/network/ftpc/tl_nod_16.png"},
7429 leency 56
 {"SETTINGS/APP.INI", "common/settings/app.ini"},
7519 leency 57
 {"SETTINGS/APP_PLUS.INI", "common/settings/app_plus.ini"},
7429 leency 58
 {"SETTINGS/ASSOC.INI", "common/settings/assoc.ini"},
5873 pathoswith 59
 {"SETTINGS/AUTORUN.DAT", "common/settings/AUTORUN.DAT"},
6958 leency 60
 {"SETTINGS/DOCKY.INI", "common/settings/docky.ini"},
61
 {"SETTINGS/ESKIN.INI", "common/settings/eskin.ini"},
62
 {"SETTINGS/FB2READ.INI", "common/settings/fb2read.ini"},
7429 leency 63
 {"SETTINGS/HOTANGLES.CFG", PROGS .. "/other/ha/SETTINGS/HOTANGLES.CFG"},
5098 clevermous 64
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
5873 pathoswith 65
 {"SETTINGS/KEYMAP.KEY", PROGS .. "/system/taskbar/trunk/KEYMAP.KEY"},
6958 leency 66
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
5098 clevermous 67
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
68
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
7137 dunkaist 69
 {"SETTINGS/NETWORK.INI", "common/settings/network.ini"},
6065 leency 70
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
5972 leency 71
 {"SETTINGS/SYSTEM.INI", "common/settings/system.ini"},
7429 leency 72
 {"SETTINGS/TASKBAR.INI", "common/settings/taskbar.ini"},
5098 clevermous 73
}
7010 0CodErr 74
 
5098 clevermous 75
-- For russian build, add russian-only files.
76
if build_type == "rus" then tup.append_table(img_files, {
77
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
78
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
7426 leency 79
 {"SETTINGS/GAMES.INI", "rus/settings/games.ini"},
5098 clevermous 80
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
81
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
82
 {"PIPETKA", build_type .. "/pipetka"},
83
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
84
 {"GAMES/ATAKA", build_type .. "/games/ataka"},
7027 0CodErr 85
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
7410 0CodErr 86
 {"GAMES/PADENIE", build_type .. "/games/padenie"},
7010 0CodErr 87
}) elseif build_type == "eng" then tup.append_table(img_files, {
7015 0CodErr 88
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
7426 leency 89
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
7015 0CodErr 90
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
91
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
92
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
93
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
7010 0CodErr 94
}) elseif build_type == "sp" then tup.append_table(img_files, {
7015 0CodErr 95
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
7426 leency 96
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
7015 0CodErr 97
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
98
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
99
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
100
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
7010 0CodErr 101
}) elseif build_type == "it" then tup.append_table(img_files, {
7015 0CodErr 102
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
7426 leency 103
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
7015 0CodErr 104
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
105
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7010 0CodErr 106
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
7015 0CodErr 107
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
5098 clevermous 108
}) else tup.append_table(img_files, {
109
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
7426 leency 110
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
5098 clevermous 111
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
112
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7010 0CodErr 113
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
5098 clevermous 114
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
115
}) end
116
 
117
--[[
118
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
5132 clevermous 119
 
5098 clevermous 120
The first subitem of every item is name relative to the root of ISO or distribution kit,
121
the second is name of local file.
5132 clevermous 122
 
5098 clevermous 123
If the first subitem ends in /, the last component of local file name is appended.
124
The last component of the second subitem may contain '*'; if so, it will be expanded
125
according to usual rules, but without matching directories.
5132 clevermous 126
 
127
Tup does not allow a direct dependency on a file that is generated in a directory
128
other than where Tupfile.lua is and its children. Most files are generated
129
in the directory with Tupfile.lua; for other files, the item should contain
130
a named subitem "group=path/" and the file should be put in .
5098 clevermous 131
--]]
132
extra_files = {
7137 dunkaist 133
 {"/", "common/distr_data/autorun.inf"},
134
 {"/", "common/distr_data/KolibriOS_icon.ico"},
5098 clevermous 135
 {"/", build_type .. "/settings/kolibri.lbl"},
136
 {"Docs/stack.txt", build_type .. "/docs/STACK.TXT"},
137
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
138
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
139
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
140
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
141
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
142
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
143
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
144
 {"HD_Load/", "common/HD_load/memdisk"},
145
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
146
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
147
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
6226 leency 148
 {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"},
149
 {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"},
150
 {"kolibrios/3D/info3ds/TL_SYS_16.PNG", PROGS .. "/develop/info3ds/tl_sys_16.png"},
151
 {"kolibrios/3D/info3ds/TOOLBAR.PNG", PROGS .. "/develop/info3ds/toolbar.png"},
6237 IgorA 152
 {"kolibrios/3D/info3ds/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
6583 leency 153
 {"kolibrios/3D/md2view/", "common/3d/md2view/*"},
6584 leency 154
 {"kolibrios/3D/md2view/md2_model/", "common/3d/md2view/md2_model/*"},
6248 IgorA 155
 {"kolibrios/3D/voxel_editor/VOX_EDITOR.INI", PROGS .. "/media/voxel_editor/trunk/vox_editor.ini"},
6247 IgorA 156
 {"kolibrios/3D/voxel_editor/HOUSE1.VOX", PROGS .. "/media/voxel_editor/trunk/house1.vox"},
157
 {"kolibrios/3D/voxel_editor/HOUSE2.VOX", PROGS .. "/media/voxel_editor/trunk/house2.vox"},
6279 IgorA 158
 {"kolibrios/3D/voxel_editor/SQUIRREL.VOX", PROGS .. "/media/voxel_editor/trunk/squirrel.vox"},
159
 {"kolibrios/3D/voxel_utilites/VOX_MOVER.INI" , PROGS .. "/media/voxel_editor/utilites/vox_mover.ini"},
6287 IgorA 160
 {"kolibrios/3D/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
161
 {"kolibrios/3D/TOOLB_1.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/toolb_1.png"},
162
 {"kolibrios/3D/TEST_GLU1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu1"},
163
 {"kolibrios/3D/TEST_GLU2", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu2"},
164
 {"kolibrios/3D/TEXT_2.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/text_2.png"},
6613 leency 165
 {"kolibrios/develop/oberon07/", PROGS .. "/develop/oberon07/*"},
166
 {"kolibrios/develop/oberon07/Docs/", PROGS .. "/develop/oberon07/Docs/*"},
167
 {"kolibrios/develop/oberon07/Lib/KolibriOS/", PROGS .. "/develop/oberon07/Lib/KolibriOS/*"},
168
 {"kolibrios/develop/oberon07/Samples/", PROGS .. "/develop/oberon07/Samples/*"},
7543 leency 169
 {"kolibrios/develop/c--/", PROGS .. "/cmm/c--/*"},
7540 leency 170
 {"kolibrios/develop/tcc/", "common/develop/tcc/*"},
7216 leency 171
 {"kolibrios/develop/TinyBasic/", "common/develop/TinyBasic/*"},
7368 pavelyakov 172
 {"kolibrios/utils/cnc_editor/cnc_editor", PROGS .. "/other/cnc_editor/cnc_editor"},
173
 {"kolibrios/utils/cnc_editor/kolibri.NC", PROGS .. "/other/cnc_editor/kolibri.NC"},
5098 clevermous 174
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
6225 leency 175
 {"kolibrios/emul/e80/readme.txt", PROGS .. "/emulator/e80/trunk/readme.txt"},
176
 {"kolibrios/emul/fceu/fceu", PROGS .. "/emulator/fceu/fceu"},
177
 {"kolibrios/emul/fceu/FCEU ReadMe.txt", PROGS .. "/emulator/fceu/FCEU ReadMe.txt"},
5098 clevermous 178
 {"kolibrios/emul/", "common/emul/gameboy"},
6578 leency 179
 {"kolibrios/emul/", "common/emul/pokemini"},
5098 clevermous 180
 {"kolibrios/emul/", "common/emul/scummvm"},
181
 {"kolibrios/emul/", "common/emul/zsnes"},
5827 leency 182
 {"kolibrios/demos/ak47.lif", "common/demos/ak47.lif"},
183
 {"kolibrios/demos/life2", "common/demos/life2"},
7525 leency 184
 {"kolibrios/demos/life3tb.png", PROGS .. "/games/life3/trunk/life3tb.png"},
5827 leency 185
 {"kolibrios/demos/relay.lif", "common/demos/relay.lif"},
186
 {"kolibrios/demos/rpento.lif", "common/demos/rpento.lif"},
6179 leency 187
 {"kolibrios/games/BabyPainter", "common/games/BabyPainter"},
188
 {"kolibrios/games/bomber/ackack.bmp", PROGS .. "/games/bomber/ackack.bmp"},
189
 {"kolibrios/games/bomber/bomb.bmp", PROGS .. "/games/bomber/bomb.bmp"},
190
 {"kolibrios/games/bomber/plane.bmp", PROGS .. "/games/bomber/plane.bmp"},
191
 {"kolibrios/games/bomber/tile.bmp", PROGS .. "/games/bomber/tile.bmp"},
192
 {"kolibrios/games/doom1/", "common/games/doom/*"},
5098 clevermous 193
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
5647 leency 194
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
6179 leency 195
 {"kolibrios/games/knight", "common/games/knight"},
5296 ZblCoder 196
 {"kolibrios/games/LaserTank/", "common/games/LaserTank/*"},
5098 clevermous 197
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
6181 leency 198
 {"kolibrios/games/mun/data/", "common/games/mun/data/*"},
6182 leency 199
 {"kolibrios/games/mun/libc.dll", "common/games/mun/libc.dll"},
6181 leency 200
 {"kolibrios/games/mun/mun", "common/games/mun/mun"},
6991 leency 201
 {"kolibrios/games/pig/", "common/games/pig/*"},
6188 hidnplayr 202
 {"kolibrios/games/soko/", "common/games/soko/*"},
7445 leency 203
 {"kolibrios/games/sstartrek/", "common/games/sstartrek/*"},
6993 leency 204
 {"kolibrios/games/the_bus/menu.png", PROGS .. "/cmm/the_bus/menu.png"},
205
 {"kolibrios/games/the_bus/objects.png", PROGS .. "/cmm/the_bus/objects.png"},
206
 {"kolibrios/games/the_bus/road.png", PROGS .. "/cmm/the_bus/road.png"},
6583 leency 207
 {"kolibrios/grafx2/fonts/", "common/media/grafx2/fonts/*"},
208
 {"kolibrios/grafx2/scripts/", "common/media/grafx2/scripts/libs/*"},
209
 {"kolibrios/grafx2/scripts/libs/", "common/media/grafx2/scripts/*"},
210
 {"kolibrios/grafx2/skins/", "common/media/grafx2/skins/*"},
211
 {"kolibrios/grafx2/", "common/media/grafx2/*"},
6654 leency 212
 {"kolibrios/drivers/drvinf.ini", "common/drivers/drvinf.ini"},
6156 leency 213
 {"kolibrios/drivers/ahci/", "common/drivers/ahci/*"},
214
 {"kolibrios/drivers/atikms/", "common/drivers/atikms/*"},
215
 {"kolibrios/drivers/i915/", "common/drivers/i915/*"},
7591 leency 216
 {"kolibrios/drivers/test/", "common/drivers/test/*"},
6156 leency 217
 {"kolibrios/drivers/vmware/", "common/drivers/vmware/*"},
6719 serge 218
 {"kolibrios/lib/avcodec-56.dll", "common/lib/avcodec-56.dll"},
219
 {"kolibrios/lib/avdevice-56.dll", "common/lib/avdevice-56.dll"},
220
 {"kolibrios/lib/avformat-56.dll", "common/lib/avformat-56.dll"},
221
 {"kolibrios/lib/swscale-3.dll", "common/lib/swscale-3.dll"},
222
 {"kolibrios/lib/avutil-54.dll", "common/lib/avutil-54.dll"},
7191 leency 223
 {"kolibrios/lib/cairo2.dll", "common/lib/cairo2.dll"},
5098 clevermous 224
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
5378 serge 225
 {"kolibrios/lib/i965-video.dll", "common/lib/i965-video.dll"},
226
 {"kolibrios/lib/libdrm.dll", "common/lib/libdrm.dll"},
227
 {"kolibrios/lib/libegl.dll", "common/lib/libegl.dll"},
7180 leency 228
 {"kolibrios/lib/libeglut.dll", "common/lib/libeglut.dll"},
5378 serge 229
 {"kolibrios/lib/libGL.dll", "common/lib/libGL.dll"},
6982 leency 230
 {"kolibrios/lib/libjpeg.dll", "common/lib/libjpeg.dll"},
231
 {"kolibrios/lib/libpng16.dll", "common/lib/libpng16.dll"},
5378 serge 232
 {"kolibrios/lib/libva.dll", "common/lib/libva.dll"},
233
 {"kolibrios/lib/libz.dll", "common/lib/libz.dll"},
5132 clevermous 234
 {"kolibrios/lib/libc.dll", "../contrib/sdk/bin/libc.dll", group = "../contrib/sdk/lib/"},
7191 leency 235
 {"kolibrios/lib/osmesa.dll", "common/lib/osmesa.dll"},
5378 serge 236
 {"kolibrios/lib/pixlib-gl.dll", "common/lib/pixlib-gl.dll"},
7191 leency 237
 {"kolibrios/lib/pixman-1.dll", "common/lib/pixman-1.dll"},
6719 serge 238
 {"kolibrios/lib/swresample-1.dll", "common/lib/swresample-1.dll"},
5378 serge 239
 {"kolibrios/lib/i915_dri.drv", "common/lib/i915_dri.drv"},
240
 {"kolibrios/media/fplay", "common/media/fplay"},
7203 leency 241
 {"kolibrios/media/fplay_run", "common/media/fplay_run"},
6155 leency 242
 {"kolibrios/media/updf", "common/media/updf"},
243
 {"kolibrios/media/vttf", "common/media/vttf"},
5098 clevermous 244
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
245
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
6094 leency 246
 {"kolibrios/res/skins/", "../skins/authors.txt"},
7569 leency 247
 {"kolibrios/res/templates/", "common/templates/*"},
7544 leency 248
 {"kolibrios/res/wallpapers/", "common/wallpapers/*"},
6958 leency 249
 }
5098 clevermous 250
if build_type == "rus" then tup.append_table(extra_files, {
251
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
252
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
253
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
254
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
255
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
256
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
257
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
258
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
259
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
260
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
261
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
262
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
263
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
264
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
5471 leency 265
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
5098 clevermous 266
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
267
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
268
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
5334 Anton_K 269
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
270
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
271
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
272
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
273
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
7410 0CodErr 274
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/whowtbam"},
275
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/appdata.dat"},
7569 leency 276
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
277
 {"kolibrios/res/guide/", build_type .. "/docs/guide/*"},
5098 clevermous 278
}) else tup.append_table(extra_files, {
279
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
280
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
281
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
282
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
283
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
284
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
285
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
286
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
287
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
288
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
289
}) end
290
--[[
291
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
292
Same syntax as extra_files.
293
]]--
294
if build_type == "rus" then
295
distr_extra_files = {
296
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
297
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
298
}
299
else
300
distr_extra_files = {
301
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
302
}
303
end
304
--[[
305
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
306
Same syntax as extra_files.
307
]]--
308
if build_type == "rus" then
309
iso_extra_files = {
310
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
311
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
312
}
313
else
314
iso_extra_files = {
315
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
316
}
317
end
318
 
319
-- Programs that require FASM to compile.
320
if tup.getconfig('NO_FASM') ~= 'full' then
321
tup.append_table(img_files, {
322
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
7014 leency 323
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
7390 theonlymir 324
 {"@HOTANGLES", PROGS .. "/other/ha/HOTANGLES"},
7014 leency 325
 {"@ICON", PROGS .. "/system/icon_new/icon"},
5098 clevermous 326
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
7014 leency 327
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
328
 {"@OPEN", PROGS .. "/system/open/open"},
5454 leency 329
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
5098 clevermous 330
 {"@SS", PROGS .. "/system/ss/trunk/@ss"},
7014 leency 331
 {"@VOLUME", PROGS .. "/media/volume/volume"},
7390 theonlymir 332
 {"HACONFIG", PROGS .. "/other/ha/HACONFIG"},
5098 clevermous 333
 {"ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
334
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
335
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
336
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
7160 leency 337
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
5098 clevermous 338
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
339
 {"CPUID", PROGS .. "/system/cpuid/trunk/CPUID"},
7160 leency 340
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
6207 leency 341
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
5098 clevermous 342
 {"DISPTEST", PROGS .. "/system/disptest/trunk/disptest"},
343
 {"END", PROGS .. "/system/end/light/end"},
7160 leency 344
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
5098 clevermous 345
 {"FSPEED", PROGS .. "/fs/fspeed/fspeed"},
346
 {"GMON", PROGS .. "/system/gmon/gmon"},
347
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
348
 {"KBD", PROGS .. "/system/kbd/trunk/kbd"},
349
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
7118 dunkaist 350
 {"KERPACK", PROGS .. "/other/outdated/kerpack/trunk/kerpack"},
5098 clevermous 351
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
7160 leency 352
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
5098 clevermous 353
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
354
 {"MGB", PROGS .. "/system/mgb/trunk/mgb"},
355
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
356
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
357
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
358
 {"PCIDEV", PROGS .. "/system/pcidev/trunk/PCIDEV"},
359
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
360
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
361
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
362
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
363
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
7160 leency 364
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
365
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
5098 clevermous 366
 {"TEST", PROGS .. "/system/test/trunk/test"},
367
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
7160 leency 368
 {"UNZ", PROGS .. "/fs/unz/unz"},
5098 clevermous 369
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
370
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
371
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
7350 leency 372
 {"3D/3DCUBE2", PROGS .. "/demos/3dcube2/trunk/3DCUBE2"},
5098 clevermous 373
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
6736 leency 374
 {"3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
6387 leency 375
 {"3D/RAY", PROGS .. "/demos/ray/ray"},
5098 clevermous 376
 {"3D/VIEW3DS", PROGS .. "/demos/3DS/VIEW3DS"},
377
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
378
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
379
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
380
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
381
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
382
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
383
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
384
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
7606 leency 385
 {"DEMOS/SPIRAL", PROGS .. "/demos/spiral/spiral"},
5098 clevermous 386
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
387
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
388
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
389
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
390
 {"DEMOS/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
391
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
392
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
393
 {"DEVELOP/cObj", PROGS .. "/develop/cObj/trunk/cObj"},
394
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/trunk/fasm"},
395
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
396
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
397
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
398
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
399
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
400
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
6699 clevermous 401
 {"DEVELOP/test_gets", PROGS .. "/develop/libraries/console_coff/examples/test_gets"},
5098 clevermous 402
 {"DEVELOP/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
403
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
404
 {"DEVELOP/INFO/CPP_KOL_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
405
 {"DEVELOP/INFO/CPP_KOL_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
406
 {"DEVELOP/INFO/CPP_KOL_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
407
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
408
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
409
 {"DEVELOP/INFO/INI_FILES.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
410
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
411
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
412
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
413
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
414
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
415
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
416
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
7373 leency 417
 {"GAMES/LIGHTS", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
5098 clevermous 418
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
419
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
420
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
421
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
422
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
423
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
424
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
425
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
426
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
427
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
428
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
429
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
430
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
431
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
6699 clevermous 432
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console_coff/console.obj"},
6737 leency 433
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
434
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
5098 clevermous 435
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
436
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
437
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
438
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
439
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
440
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
6737 leency 441
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
6308 pathoswith 442
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
5098 clevermous 443
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
6737 leency 444
 {"LIB/TINYGL.OBJ", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
5098 clevermous 445
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
446
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
447
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
448
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
7484 leency 449
 {"MEDIA/MP3INFO", PROGS .. "/media/mp3info/mp3info"},
5098 clevermous 450
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
451
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
6029 hidnplayr 452
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
5098 clevermous 453
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
454
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
7058 ashmew2 455
 {"NETWORK/NSINSTALL", PROGS .. "/network/netsurf/nsinstall"},
5098 clevermous 456
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
457
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
458
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
459
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
5495 hidnplayr 460
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
5098 clevermous 461
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
462
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
463
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
464
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
465
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
5869 hidnplayr 466
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
5098 clevermous 467
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
468
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
469
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
470
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
471
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
472
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
473
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
474
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
475
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
476
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
477
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
478
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
479
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
480
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
481
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
482
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
483
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
484
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
485
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
486
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
487
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
488
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
489
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
490
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
491
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
492
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
493
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
494
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
495
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
496
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
497
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
498
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
499
})
500
tup.append_table(extra_files, {
501
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
502
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
503
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
504
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
505
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
506
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
507
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
508
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
509
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
510
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
7458 leency 511
 {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
7222 leency 512
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
513
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
7458 leency 514
 {"kolibrios/3D/mos3de", PROGS .. "/demos/mos3de/mos3de"},
7222 leency 515
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
516
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
517
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
518
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
519
 {"kolibrios/3D/textures1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
6991 leency 520
 {"kolibrios/demos/buddhabrot", PROGS .. "/demos/buddhabrot/trunk/buddhabrot"},
7525 leency 521
 {"kolibrios/demos/life3", PROGS .. "/games/life3/trunk/life3"},
6991 leency 522
 {"kolibrios/demos/qjulia", PROGS .. "/demos/qjulia/trunk/qjulia"},
523
 {"kolibrios/develop/utils/GenFiles", PROGS .. "/testing/genfiles/GenFiles"},
524
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
6033 leency 525
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
6179 leency 526
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
6180 leency 527
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
5335 yogev_ezra 528
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
529
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
5379 serge 530
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
6991 leency 531
 {"kolibrios/games/megamaze", PROGS .. "/games/megamaze/trunk/megamaze"},
5467 leency 532
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
6991 leency 533
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
534
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
5098 clevermous 535
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
536
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
537
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
538
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
539
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
540
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
541
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
6991 leency 542
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
5098 clevermous 543
})
544
-- For russian build, add russian-only programs.
545
if build_type == "rus" then tup.append_table(img_files, {
546
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
6699 clevermous 547
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_rus"},
5098 clevermous 548
}) else tup.append_table(img_files, {
6699 clevermous 549
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_eng"},
5098 clevermous 550
}) end
551
 
5334 Anton_K 552
if build_type == "rus" then tup.append_table(extra_files, {
553
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
554
}) end
555
 
5098 clevermous 556
end -- tup.getconfig('NO_FASM') ~= 'full'
557
 
558
-- Programs that require NASM to compile.
559
if tup.getconfig('NO_NASM') ~= 'full' then
560
tup.append_table(img_files, {
6952 leency 561
 {"LOD", PROGS .. "/fs/lod/lod"},
562
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
5098 clevermous 563
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
564
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
6952 leency 565
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
5098 clevermous 566
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
6998 0CodErr 567
 {"MEDIA/FILLSCR", PROGS .. "/media/FillScr/fillscr"},
5098 clevermous 568
})
569
end -- tup.getconfig('NO_NASM') ~= 'full'
570
 
7081 0CodErr 571
-- Programs that require JWASM to compile.
572
if tup.getconfig('NO_JWASM') ~= 'full' then
573
tup.append_table(img_files, {
574
 {"RUN", PROGS .. "/system/RunOD/1/RUN"},
7492 0CodErr 575
 {"LIB/INPUTBOX.OBJ", PROGS .. "/develop/libraries/InputBox/INPUTBOX.OBJ"},
7081 0CodErr 576
})
577
end -- tup.getconfig('NO_JWASM') ~= 'full'
578
 
5098 clevermous 579
-- Programs that require C-- to compile.
580
if tup.getconfig('NO_CMM') ~= 'full' then
581
tup.append_table(img_files, {
6776 leency 582
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
7245 leency 583
 {"EASYSHOT", PROGS .. "/cmm/easyshot/easyshot.com"},
7370 leency 584
 {"MOUSECFG", PROGS .. "/cmm/mousecfg/mousecfg.com"},
7444 leency 585
 {"NOTES", PROGS .. "/cmm/notes/notes.com"},
7370 leency 586
 {"PANELS_CFG", PROGS .. "/cmm/panels_cfg/panels_cfg.com"},
587
 {"SYSPANEL", PROGS .. "/cmm/software_widget/software_widget.com"},
588
 {"SYSMON", PROGS .. "/cmm/sysmon/sysmon.com"},
6776 leency 589
 {"TXTREAD", PROGS .. "/cmm/txtread/txtread.com"},
590
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
6569 leency 591
 {"DEVELOP/CLIPVIEW", PROGS .. "/cmm/clipview/clipview.com"},
5098 clevermous 592
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
7472 leency 593
 {"KF_VIEW", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
5098 clevermous 594
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
6957 leency 595
 {"GAMES/MBLOCKS", PROGS .. "/cmm/mblocks/mblocks.com"},
6748 leency 596
 {"DEVELOP/DIFF", PROGS .. "/cmm/diff/diff.com"},
5098 clevermous 597
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
6776 leency 598
 {"GAMES/FLOOD-IT", PROGS .. "/games/flood-it/trunk/flood-it.com"},
5098 clevermous 599
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
7233 leency 600
 {"MEDIA/PIXIE/PIXIE", PROGS .. "/cmm/pixie2/pixie.com"},
7254 leency 601
 {"MEDIA/ICONEDIT", PROGS .. "/cmm/iconedit/iconedit.com"},
5632 leency 602
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
5098 clevermous 603
})
6776 leency 604
tup.append_table(extra_files, {
7541 leency 605
 {"kolibrios/drivers/drvinst.kex", PROGS .. "/cmm/drvinst/drvinst.com"},
7542 leency 606
 {"kolibrios/games/pig/pigex", PROGS .. "/cmm/examples/pigex.com"},
6991 leency 607
 {"kolibrios/games/the_bus/the_bus", PROGS .. "/cmm/the_bus/the_bus.com"},
7592 leency 608
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
609
 {"kolibrios/utils/codeview", PROGS .. "/cmm/codeview/codeview.com"},
7541 leency 610
 {"kolibrios/utils/dicty.kex", PROGS .. "/cmm/dicty/dicty.com"},
611
 {"kolibrios/utils/netcheck", PROGS .. "/cmm/examples/netcheck.com"},
6776 leency 612
})
5098 clevermous 613
end -- tup.getconfig('NO_CMM') ~= 'full'
614
 
615
-- Programs that require MSVC to compile.
616
if tup.getconfig('NO_MSVC') ~= 'full' then
617
tup.append_table(img_files, {
618
 {"GRAPH", PROGS .. "/other/graph/graph"},
619
 {"TABLE", PROGS .. "/other/table/table"},
620
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
621
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
5113 clevermous 622
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
5115 clevermous 623
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
5098 clevermous 624
})
5110 clevermous 625
tup.append_table(extra_files, {
5109 clevermous 626
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
5276 ZblCoder 627
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
5109 clevermous 628
})
5098 clevermous 629
end -- tup.getconfig('NO_MSVC') ~= 'full'
630
 
631
-- Programs that require GCC to compile.
632
if tup.getconfig('NO_GCC') ~= 'full' then
633
tup.append_table(img_files, {
5123 clevermous 634
 {"GAMES/CHECKERS", PROGS .. "/games/checkers/trunk/checkers"},
5111 clevermous 635
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
5098 clevermous 636
 {"SHELL", PROGS .. "/system/shell/shell"},
637
})
638
tup.append_table(extra_files, {
6736 leency 639
 {"kolibrios/3D/cubeline", PROGS .. "/demos/cubeline/trunk/cubeline"},
5098 clevermous 640
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
7531 leency 641
 {"kolibrios/games/2048", PROGS .. "/games/2048/2048"},
7528 leency 642
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
7531 leency 643
 {"kolibrios/games/heliothryx", PROGS .. "/games/heliothryx/heliothryx"},
644
 {"kolibrios/games/marblematch3", PROGS .. "/games/marblematch3/marblematch3"},
645
 {"kolibrios/games/nsider", PROGS .. "/games/nsider/nsider"},
5131 clevermous 646
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
647
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
5098 clevermous 648
})
5327 igevorse 649
-- For russian build, add russian-only programs.
5329 igevorse 650
if build_type == "rus" then tup.append_table(extra_files, {
7531 leency 651
 {"kolibrios/games/21days", PROGS .. "/games/21days/21days"},
5328 igevorse 652
}) end
5098 clevermous 653
end -- tup.getconfig('NO_GCC') ~= 'full'
654
 
655
-- Skins.
656
tup.include("../skins/skinlist.lua")
657
 
658
--[================================[ CODE ]================================]--
659
-- expand extra_files and similar
660
function expand_extra_files(files)
661
  local result = {}
662
  for i,v in ipairs(files) do
663
    if string.match(v[2], "%*")
664
    then
665
      local g = tup.glob(v[2])
666
      for j,x in ipairs(g) do
5132 clevermous 667
        table.insert(result, {v[1], x, group=v.group})
5098 clevermous 668
      end
669
    else
670
      if v.cp1251_from then
671
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
672
      end
5132 clevermous 673
      table.insert(result, {v[1], v[2], group=v.group})
5098 clevermous 674
    end
675
  end
676
  return result
677
end
678
 
679
-- append skins to extra_files
680
for i,v in ipairs(skinlist) do
6094 leency 681
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
5098 clevermous 682
end
683
 
684
-- prepare distr_extra_files and iso_extra_files: expand and append common part
685
extra_files = expand_extra_files(extra_files)
686
distr_extra_files = expand_extra_files(distr_extra_files)
687
iso_extra_files = expand_extra_files(iso_extra_files)
688
tup.append_table(distr_extra_files, extra_files)
689
tup.append_table(iso_extra_files, extra_files)
690
 
691
-- generate list of directories to be created inside kolibri.img
692
img_dirs = {}
693
input_deps = {}
694
for i,v in ipairs(img_files) do
695
  img_file = v[1]
696
  local_file = v[2]
697
 
698
  slash_pos = 0
699
  while true do
700
    slash_pos = string.find(img_file, '/', slash_pos + 1)
701
    if not slash_pos then break end
702
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
703
  end
704
 
705
  -- tup does not want to see hidden files as dependencies
706
  if not string.match(local_file, "/%.") then
5132 clevermous 707
    table.insert(input_deps, v.group or local_file)
5098 clevermous 708
  end
709
end
710
 
711
-- create empty 1.44M file
5118 clevermous 712
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
713
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
5098 clevermous 714
-- format it as a standard 1.44M floppy
715
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
716
-- copy bootloader
717
if tup.getconfig("NO_FASM") ~= "full" then
718
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
719
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
720
table.insert(input_deps, bootloader)
721
end
722
-- make folders
723
table.sort(img_dirs)
724
for i,v in ipairs(img_dirs) do
725
  if v ~= img_dirs[i-1] then
726
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
727
  end
728
end
729
-- copy files
730
for i,v in ipairs(img_files) do
731
  local_file = v[2]
732
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
733
  then
734
    -- for kernel.mnt, insert autobuild revision identifier
735
    -- from .revision to .kernel.mnt
736
    -- note that .revision and .kernel.mnt must begin with .
737
    -- to prevent tup from tracking them
738
    if build_type == "rus"
739
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
740
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
741
    end
742
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
743
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
744
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
745
    make_img_command = make_img_command .. " && str=" .. str
746
    make_img_command = make_img_command .. ' && echo -n $str | dd of=.kernel.mnt bs=1 seek=`expr 279 - length "$str"` conv=notrunc 2>/dev/null'
747
    local_file = ".kernel.mnt"
748
  end
749
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
750
end
751
 
752
-- generate tup rule for kolibri.img
753
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
7131 dunkaist 754
tup.definerule{inputs = {"../kernel/trunk/boot/uefi4kos.asm", "kolibri.img", "../kernel/trunk/kernel.bin"}, command = "fasm ../kernel/trunk/boot/uefi4kos.asm %o", outputs = {"kolibri.efi"}}
5098 clevermous 755
 
756
-- generate command and dependencies for mkisofs
757
input_deps = {"kolibri.img"}
758
iso_files_list = ""
759
for i,v in ipairs(iso_extra_files) do
760
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
5132 clevermous 761
  table.insert(input_deps, v.group or v[2])
5098 clevermous 762
end
763
 
764
-- generate tup rule for kolibri.iso
765
if tup.getconfig("INSERT_REVISION_ID") ~= ""
766
then volume_id = "KolibriOS r`cat .revision`"
767
else volume_id = "KolibriOS"
768
end
769
tup.definerule{inputs = input_deps, command =
5118 clevermous 770
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
5098 clevermous 771
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
772
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
773
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
774
  outputs = {"kolibri.iso"}}
775
 
776
-- generate command and dependencies for distribution kit
5104 clevermous 777
cp = 'cp "%f" "%o"'
5102 clevermous 778
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
5098 clevermous 779
for i,v in ipairs(distr_extra_files) do
5132 clevermous 780
  cmd = cp:gsub("%%f", v[2]) -- input can be a group, we can't rely on tup's expansion of %f in this case
5098 clevermous 781
  if string.sub(v[1], -1) == "/"
5132 clevermous 782
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
783
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
5098 clevermous 784
  end
785
end