Subversion Repositories Kolibri OS

Rev

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