Subversion Repositories Kolibri OS

Rev

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