Subversion Repositories Kolibri OS

Rev

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