Subversion Repositories Kolibri OS

Rev

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