Subversion Repositories Kolibri OS

Rev

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

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