Subversion Repositories Kolibri OS

Rev

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