Subversion Repositories Kolibri OS

Rev

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