Subversion Repositories Kolibri OS

Rev

Rev 7131 | Rev 7160 | 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"},
6958 leency 18
 {"FB2READ", "common/fb2read"},
19
 {"ICONS32.PNG", "common/icons32.png"},
7052 leency 20
 {"ICONS16.PNG", "common/icons16.png"},
6958 leency 21
 {"INDEX.HTM", "common/index_htm"},
22
 {"KUZKINA.MID", "common/kuzkina.mid"},
23
 {"LANG.INC", build_type .. "/lang.inc"},
24
 {"NOTIFY3.PNG", "common/notify3.png"},
6759 leency 25
 {"TOOLBAR.PNG", PROGS .. "/cmm/txtread/toolbar.png"},
6958 leency 26
 {"VMODE", "common/vmode"},
27
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
5098 clevermous 28
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
6958 leency 29
 {"File Managers/EOLITE.INI", "common/File Managers/eolite.ini"},
30
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
31
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
5098 clevermous 32
 {"File Managers/BUTTONS.BMP", PROGS .. "/fs/kfm/trunk/buttons.bmp"},
33
 {"File Managers/ICONS.BMP", PROGS .. "/fs/kfm/trunk/icons.bmp"},
7053 leency 34
 {"File Managers/FNAV/ABOUT.TXT", "common/File Managers/fNav/About.txt"},
7029 0CodErr 35
 {"File Managers/FNAV/FNAV", "common/File Managers/fNav/fNav.kex"},
36
 {"File Managers/FNAV/FNAV.EXT", "common/File Managers/fNav/fnav.ext"},
37
 {"File Managers/FNAV/FNAV.SET", "common/File Managers/fNav/fnav.set"},
38
 {"File Managers/FNAV/FNAV_CUR.PNG", "common/File Managers/fNav/fnav_cur.png"},
39
 {"File Managers/FNAV/FNAV_FNT.PNG", "common/File Managers/fNav/fnav_fnt.png"},
7053 leency 40
 {"File Managers/FNAV/FNAV_ICN.PNG", "common/File Managers/fNav/fnav_icn.png"},
5098 clevermous 41
 {"FONTS/LITT.CHR", PROGS .. "/demos/bgitest/trunk/FONTS/LITT.CHR"},
5764 leency 42
 {"FONTS/TAHOMA.KF", "common/fonts/tahoma.kf"},
5098 clevermous 43
 {"GAMES/SNAKE.INI", PROGS .. "/games/snake/trunk/snake.ini"},
6958 leency 44
 {"LIB/ARRAY.OBJ", "common/lib/array.obj"},
45
 {"LIB/LIBRARY.OBJ", "common/lib/library.obj"},
46
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
47
 {"LIB/KMENU.OBJ", "common/lib/kmenu.obj"},
48
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
49
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
50
 {"MEDIA/IMGF/IMGF", "common/media/ImgF/ImgF"},
51
 {"MEDIA/IMGF/CEDG.OBJ", "common/media/ImgF/cEdg.obj"},
52
 {"MEDIA/IMGF/DITHER.OBJ", "common/media/ImgF/dither.obj"},
53
 {"MEDIA/IMGF/INVSOL.OBJ", "common/media/ImgF/invSol.obj"},
5098 clevermous 54
 {"MEDIA/KIV.INI", PROGS .. "/media/kiv/trunk/kiv.ini"},
5468 leency 55
 {"MEDIA/PIXIE/PIXIE.INI", PROGS .. "/cmm/pixie/pixie.ini"},
56
 {"MEDIA/PIXIE/S_DARK.PNG", PROGS .. "/cmm/pixie/s_dark.png"},
57
 {"MEDIA/PIXIE/S_LIGHT.PNG", PROGS .. "/cmm/pixie/s_light.png"},
58
 {"MEDIA/PIXIE/MINIMP3", PROGS .. "/cmm/pixie/minimp3"},
5098 clevermous 59
 {"NETWORK/WV_SKIN.PNG", PROGS .. "/cmm/browser/wv_skin.png"},
6958 leency 60
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
61
 {"NETWORK/USERS.INI", "common/network/users.ini"},
5873 pathoswith 62
 {"SETTINGS/AUTORUN.DAT", "common/settings/AUTORUN.DAT"},
6958 leency 63
 {"SETTINGS/ASSOC.INI", "common/settings/assoc.ini"},
64
 {"SETTINGS/DOCKY.INI", "common/settings/docky.ini"},
65
 {"SETTINGS/ESKIN.INI", "common/settings/eskin.ini"},
66
 {"SETTINGS/FB2READ.INI", "common/settings/fb2read.ini"},
5098 clevermous 67
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
5873 pathoswith 68
 {"SETTINGS/KEYMAP.KEY", PROGS .. "/system/taskbar/trunk/KEYMAP.KEY"},
6958 leency 69
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
5098 clevermous 70
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
71
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
7137 dunkaist 72
 {"SETTINGS/NETWORK.INI", "common/settings/network.ini"},
73
 {"SETTINGS/TASKBAR.INI", "common/settings/taskbar.ini"},
6065 leency 74
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
5972 leency 75
 {"SETTINGS/SYSTEM.INI", "common/settings/system.ini"},
5098 clevermous 76
}
7010 0CodErr 77
 
5098 clevermous 78
-- For russian build, add russian-only files.
79
if build_type == "rus" then tup.append_table(img_files, {
80
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
81
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
5502 punk_joker 82
 {"SETTINGS/GAME_CENTER.INI", "rus/settings/game_center.ini"},
5098 clevermous 83
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
84
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
85
 {"PIPETKA", build_type .. "/pipetka"},
86
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
87
 {"GAMES/APPDATA.DAT", build_type .. "/games/appdata.dat"},
88
 {"GAMES/ATAKA", build_type .. "/games/ataka"},
7027 0CodErr 89
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
5098 clevermous 90
 {"GAMES/PADENIE", build_type .. "/games/padenie"},
91
 {"GAMES/WHOWTBAM", build_type .. "/games/whowtbam"},
7010 0CodErr 92
}) elseif build_type == "eng" then tup.append_table(img_files, {
7015 0CodErr 93
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
94
 {"SETTINGS/GAME_CENTER.INI", "common/settings/game_center.ini"},
95
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
96
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
97
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
98
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
7010 0CodErr 99
}) elseif build_type == "sp" then tup.append_table(img_files, {
7015 0CodErr 100
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
101
 {"SETTINGS/GAME_CENTER.INI", "common/settings/game_center.ini"},
102
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
103
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
104
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
105
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
7010 0CodErr 106
}) elseif build_type == "it" then tup.append_table(img_files, {
7015 0CodErr 107
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
108
 {"SETTINGS/GAME_CENTER.INI", "common/settings/game_center.ini"},
109
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
110
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7010 0CodErr 111
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
7015 0CodErr 112
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
5098 clevermous 113
}) else tup.append_table(img_files, {
114
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
5502 punk_joker 115
 {"SETTINGS/GAME_CENTER.INI", "common/settings/game_center.ini"},
5098 clevermous 116
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
117
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7010 0CodErr 118
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
5098 clevermous 119
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
120
}) end
121
 
122
--[[
123
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
5132 clevermous 124
 
5098 clevermous 125
The first subitem of every item is name relative to the root of ISO or distribution kit,
126
the second is name of local file.
5132 clevermous 127
 
5098 clevermous 128
If the first subitem ends in /, the last component of local file name is appended.
129
The last component of the second subitem may contain '*'; if so, it will be expanded
130
according to usual rules, but without matching directories.
5132 clevermous 131
 
132
Tup does not allow a direct dependency on a file that is generated in a directory
133
other than where Tupfile.lua is and its children. Most files are generated
134
in the directory with Tupfile.lua; for other files, the item should contain
135
a named subitem "group=path/" and the file should be put in .
5098 clevermous 136
--]]
137
extra_files = {
7137 dunkaist 138
 {"/", "common/distr_data/autorun.inf"},
139
 {"/", "common/distr_data/KolibriOS_icon.ico"},
5098 clevermous 140
 {"/", build_type .. "/settings/kolibri.lbl"},
141
 {"Docs/stack.txt", build_type .. "/docs/STACK.TXT"},
142
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
143
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
144
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
145
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
146
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
147
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
148
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
149
 {"HD_Load/", "common/HD_load/memdisk"},
150
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
151
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
152
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
6226 leency 153
 {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
154
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
155
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
156
 {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"},
157
 {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"},
158
 {"kolibrios/3D/info3ds/TL_SYS_16.PNG", PROGS .. "/develop/info3ds/tl_sys_16.png"},
159
 {"kolibrios/3D/info3ds/TOOLBAR.PNG", PROGS .. "/develop/info3ds/toolbar.png"},
6237 IgorA 160
 {"kolibrios/3D/info3ds/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
6583 leency 161
 {"kolibrios/3D/md2view/", "common/3d/md2view/*"},
6584 leency 162
 {"kolibrios/3D/md2view/md2_model/", "common/3d/md2view/md2_model/*"},
6247 IgorA 163
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
164
 {"kolibrios/3D/voxel_editor/CURSORS.PNG", PROGS .. "/media/voxel_editor/trunk/cursors.png"},
165
 {"kolibrios/3D/voxel_editor/CURSORS_GR.PNG", PROGS .. "/media/voxel_editor/trunk/cursors_gr.png"},
166
 {"kolibrios/3D/voxel_editor/TOOLBAR.PNG", PROGS .. "/media/voxel_editor/trunk/toolbar.png"},
6248 IgorA 167
 {"kolibrios/3D/voxel_editor/VOX_EDITOR.INI", PROGS .. "/media/voxel_editor/trunk/vox_editor.ini"},
6247 IgorA 168
 {"kolibrios/3D/voxel_editor/HOUSE1.VOX", PROGS .. "/media/voxel_editor/trunk/house1.vox"},
169
 {"kolibrios/3D/voxel_editor/HOUSE2.VOX", PROGS .. "/media/voxel_editor/trunk/house2.vox"},
6279 IgorA 170
 {"kolibrios/3D/voxel_editor/SQUIRREL.VOX", PROGS .. "/media/voxel_editor/trunk/squirrel.vox"},
171
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
172
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
173
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
174
 {"kolibrios/3D/voxel_utilites/VOX_MOVER.INI" , PROGS .. "/media/voxel_editor/utilites/vox_mover.ini"},
175
 {"kolibrios/3D/voxel_utilites/TOOLBAR.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar.png"},
176
 {"kolibrios/3D/voxel_utilites/TOOLBAR_M.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar_m.png"},
177
 {"kolibrios/3D/voxel_utilites/TOOLBAR_T.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar_t.png"},
6287 IgorA 178
 {"kolibrios/3D/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
179
 {"kolibrios/3D/TOOLB_1.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/toolb_1.png"},
180
 {"kolibrios/3D/TEST_GLU1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu1"},
181
 {"kolibrios/3D/TEST_GLU2", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu2"},
182
 {"kolibrios/3D/TEXT_2.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/text_2.png"},
183
 {"kolibrios/3D/TEXTURES1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
6613 leency 184
 {"kolibrios/develop/oberon07/", PROGS .. "/develop/oberon07/*"},
185
 {"kolibrios/develop/oberon07/Docs/", PROGS .. "/develop/oberon07/Docs/*"},
186
 {"kolibrios/develop/oberon07/Lib/KolibriOS/", PROGS .. "/develop/oberon07/Lib/KolibriOS/*"},
187
 {"kolibrios/develop/oberon07/Samples/", PROGS .. "/develop/oberon07/Samples/*"},
5098 clevermous 188
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
6225 leency 189
 {"kolibrios/emul/e80/readme.txt", PROGS .. "/emulator/e80/trunk/readme.txt"},
190
 {"kolibrios/emul/fceu/fceu", PROGS .. "/emulator/fceu/fceu"},
191
 {"kolibrios/emul/fceu/FCEU ReadMe.txt", PROGS .. "/emulator/fceu/FCEU ReadMe.txt"},
5098 clevermous 192
 {"kolibrios/emul/", "common/emul/gameboy"},
6578 leency 193
 {"kolibrios/emul/", "common/emul/pokemini"},
5098 clevermous 194
 {"kolibrios/emul/", "common/emul/scummvm"},
195
 {"kolibrios/emul/", "common/emul/zsnes"},
5827 leency 196
 {"kolibrios/demos/ak47.lif", "common/demos/ak47.lif"},
197
 {"kolibrios/demos/life2", "common/demos/life2"},
198
 {"kolibrios/demos/relay.lif", "common/demos/relay.lif"},
199
 {"kolibrios/demos/rpento.lif", "common/demos/rpento.lif"},
6179 leency 200
 {"kolibrios/games/BabyPainter", "common/games/BabyPainter"},
201
 {"kolibrios/games/bomber/ackack.bmp", PROGS .. "/games/bomber/ackack.bmp"},
202
 {"kolibrios/games/bomber/bomb.bmp", PROGS .. "/games/bomber/bomb.bmp"},
203
 {"kolibrios/games/bomber/plane.bmp", PROGS .. "/games/bomber/plane.bmp"},
204
 {"kolibrios/games/bomber/tile.bmp", PROGS .. "/games/bomber/tile.bmp"},
205
 {"kolibrios/games/doom1/", "common/games/doom/*"},
5098 clevermous 206
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
5647 leency 207
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
6179 leency 208
 {"kolibrios/games/knight", "common/games/knight"},
5296 ZblCoder 209
 {"kolibrios/games/LaserTank/", "common/games/LaserTank/*"},
5098 clevermous 210
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
6181 leency 211
 {"kolibrios/games/mun/data/", "common/games/mun/data/*"},
6182 leency 212
 {"kolibrios/games/mun/libc.dll", "common/games/mun/libc.dll"},
6181 leency 213
 {"kolibrios/games/mun/mun", "common/games/mun/mun"},
6991 leency 214
 {"kolibrios/games/pig/", "common/games/pig/*"},
6188 hidnplayr 215
 {"kolibrios/games/soko/", "common/games/soko/*"},
6993 leency 216
 {"kolibrios/games/the_bus/menu.png", PROGS .. "/cmm/the_bus/menu.png"},
217
 {"kolibrios/games/the_bus/objects.png", PROGS .. "/cmm/the_bus/objects.png"},
218
 {"kolibrios/games/the_bus/road.png", PROGS .. "/cmm/the_bus/road.png"},
6583 leency 219
 {"kolibrios/grafx2/fonts/", "common/media/grafx2/fonts/*"},
220
 {"kolibrios/grafx2/scripts/", "common/media/grafx2/scripts/libs/*"},
221
 {"kolibrios/grafx2/scripts/libs/", "common/media/grafx2/scripts/*"},
222
 {"kolibrios/grafx2/skins/", "common/media/grafx2/skins/*"},
223
 {"kolibrios/grafx2/", "common/media/grafx2/*"},
6654 leency 224
 {"kolibrios/drivers/drvinf.ini", "common/drivers/drvinf.ini"},
6156 leency 225
 {"kolibrios/drivers/ahci/", "common/drivers/ahci/*"},
226
 {"kolibrios/drivers/atikms/", "common/drivers/atikms/*"},
227
 {"kolibrios/drivers/i915/", "common/drivers/i915/*"},
228
 {"kolibrios/drivers/vmware/", "common/drivers/vmware/*"},
6719 serge 229
 {"kolibrios/lib/avcodec-56.dll", "common/lib/avcodec-56.dll"},
230
 {"kolibrios/lib/avdevice-56.dll", "common/lib/avdevice-56.dll"},
231
 {"kolibrios/lib/avformat-56.dll", "common/lib/avformat-56.dll"},
232
 {"kolibrios/lib/swscale-3.dll", "common/lib/swscale-3.dll"},
233
 {"kolibrios/lib/avutil-54.dll", "common/lib/avutil-54.dll"},
5098 clevermous 234
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
5378 serge 235
 {"kolibrios/lib/i965-video.dll", "common/lib/i965-video.dll"},
236
 {"kolibrios/lib/libdrm.dll", "common/lib/libdrm.dll"},
237
 {"kolibrios/lib/libegl.dll", "common/lib/libegl.dll"},
238
 {"kolibrios/lib/libGL.dll", "common/lib/libGL.dll"},
6982 leency 239
 {"kolibrios/lib/libjpeg.dll", "common/lib/libjpeg.dll"},
240
 {"kolibrios/lib/libpng16.dll", "common/lib/libpng16.dll"},
5378 serge 241
 {"kolibrios/lib/libva.dll", "common/lib/libva.dll"},
242
 {"kolibrios/lib/libz.dll", "common/lib/libz.dll"},
5132 clevermous 243
 {"kolibrios/lib/libc.dll", "../contrib/sdk/bin/libc.dll", group = "../contrib/sdk/lib/"},
5378 serge 244
 {"kolibrios/lib/pixlib-gl.dll", "common/lib/pixlib-gl.dll"},
6719 serge 245
 {"kolibrios/lib/swresample-1.dll", "common/lib/swresample-1.dll"},
5378 serge 246
 {"kolibrios/lib/i915_dri.drv", "common/lib/i915_dri.drv"},
247
 {"kolibrios/lib/i965_dri.drv", "common/lib/i965_dri.drv"},
248
 {"kolibrios/media/fplay", "common/media/fplay"},
6155 leency 249
 {"kolibrios/media/updf", "common/media/updf"},
250
 {"kolibrios/media/vttf", "common/media/vttf"},
5098 clevermous 251
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
252
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
6094 leency 253
 {"kolibrios/res/skins/", "../skins/authors.txt"},
6250 leency 254
 {"kolibrios/settings/app_plus.ini", "common/settings/app_plus.ini"},
6959 leency 255
 {"kolibrios/res/wallpapers/in_the_wind.png", "common/wallpapers/in_the_wind.png"},
6960 leency 256
 {"kolibrios/res/wallpapers/deink.png", "common/wallpapers/deink.png"},
6958 leency 257
 }
5098 clevermous 258
if build_type == "rus" then tup.append_table(extra_files, {
259
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
260
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
261
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
262
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
263
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
264
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
265
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
266
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
267
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
268
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
269
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
270
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
271
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
272
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
5471 leency 273
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
5098 clevermous 274
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
275
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
276
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
277
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
5334 Anton_K 278
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
279
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
280
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
281
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
282
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
5098 clevermous 283
}) else tup.append_table(extra_files, {
284
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
285
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
286
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
287
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
288
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
289
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
290
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
291
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
292
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
293
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
294
}) end
295
--[[
296
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
297
Same syntax as extra_files.
298
]]--
299
if build_type == "rus" then
300
distr_extra_files = {
301
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
302
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
303
}
304
else
305
distr_extra_files = {
306
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
307
}
308
end
309
--[[
310
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
311
Same syntax as extra_files.
312
]]--
313
if build_type == "rus" then
314
iso_extra_files = {
315
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
316
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
317
}
318
else
319
iso_extra_files = {
320
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
321
}
322
end
323
 
324
-- Programs that require FASM to compile.
325
if tup.getconfig('NO_FASM') ~= 'full' then
326
tup.append_table(img_files, {
327
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
7014 leency 328
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
329
 {"@ICON", PROGS .. "/system/icon_new/icon"},
5098 clevermous 330
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
7014 leency 331
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
332
 {"@OPEN", PROGS .. "/system/open/open"},
5454 leency 333
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
5098 clevermous 334
 {"@SS", PROGS .. "/system/ss/trunk/@ss"},
7014 leency 335
 {"@VOLUME", PROGS .. "/media/volume/volume"},
5098 clevermous 336
 {"ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
337
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
338
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
339
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
340
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
341
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
342
 {"CPUID", PROGS .. "/system/cpuid/trunk/CPUID"},
6169 leency 343
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
6207 leency 344
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
5098 clevermous 345
 {"DISPTEST", PROGS .. "/system/disptest/trunk/disptest"},
346
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
347
 {"END", PROGS .. "/system/end/light/end"},
348
 {"FSPEED", PROGS .. "/fs/fspeed/fspeed"},
349
 {"GMON", PROGS .. "/system/gmon/gmon"},
350
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
351
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
352
 {"KBD", PROGS .. "/system/kbd/trunk/kbd"},
353
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
7118 dunkaist 354
 {"KERPACK", PROGS .. "/other/outdated/kerpack/trunk/kerpack"},
5098 clevermous 355
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
5863 punk_joker 356
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
5098 clevermous 357
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
358
 {"MGB", PROGS .. "/system/mgb/trunk/mgb"},
359
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
360
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
361
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
362
 {"PCIDEV", PROGS .. "/system/pcidev/trunk/PCIDEV"},
363
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
364
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
365
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
366
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
367
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
368
 {"TEST", PROGS .. "/system/test/trunk/test"},
369
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
370
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
371
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
372
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
373
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
374
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
6736 leency 375
 {"3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
6387 leency 376
 {"3D/RAY", PROGS .. "/demos/ray/ray"},
5098 clevermous 377
 {"3D/VIEW3DS", PROGS .. "/demos/3DS/VIEW3DS"},
378
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
379
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
380
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
381
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
382
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
383
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
384
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
385
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
386
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
387
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
388
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
389
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
390
 {"DEMOS/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
391
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
392
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
393
 {"DEVELOP/cObj", PROGS .. "/develop/cObj/trunk/cObj"},
394
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/trunk/fasm"},
395
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
396
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
397
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
398
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
399
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
400
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
6699 clevermous 401
 {"DEVELOP/test_gets", PROGS .. "/develop/libraries/console_coff/examples/test_gets"},
5098 clevermous 402
 {"DEVELOP/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
403
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
404
 {"DEVELOP/INFO/CPP_KOL_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
405
 {"DEVELOP/INFO/CPP_KOL_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
406
 {"DEVELOP/INFO/CPP_KOL_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
407
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
408
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
409
 {"DEVELOP/INFO/INI_FILES.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
410
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
411
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
412
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
413
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
414
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
415
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
416
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
417
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
418
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
419
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
420
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
421
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
422
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
423
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
424
 {"GAMES/SQ_GAME", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
425
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
426
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
427
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
428
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
429
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
430
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
431
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
6699 clevermous 432
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console_coff/console.obj"},
6737 leency 433
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
434
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
5098 clevermous 435
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
436
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
437
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
438
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
439
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
440
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
6737 leency 441
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
6308 pathoswith 442
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
5098 clevermous 443
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
6737 leency 444
 {"LIB/TINYGL.OBJ", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
5098 clevermous 445
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
446
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
447
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
448
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
449
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
450
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
6029 hidnplayr 451
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
5098 clevermous 452
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
453
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
7058 ashmew2 454
 {"NETWORK/NSINSTALL", PROGS .. "/network/netsurf/nsinstall"},
5098 clevermous 455
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
456
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
457
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
458
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
5495 hidnplayr 459
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
5098 clevermous 460
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
461
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
462
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
463
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
464
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
5869 hidnplayr 465
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
5098 clevermous 466
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
467
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
468
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
469
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
470
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
471
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
472
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
473
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
474
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
475
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
476
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
477
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
478
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
479
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
480
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
481
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
482
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
483
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
484
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
485
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
486
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
487
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
488
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
489
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
490
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
491
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
492
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
493
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
494
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
495
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
496
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
497
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
498
})
499
tup.append_table(extra_files, {
500
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
501
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
502
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
503
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
504
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
505
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
506
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
507
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
508
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
509
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
6991 leency 510
 {"kolibrios/demos/buddhabrot", PROGS .. "/demos/buddhabrot/trunk/buddhabrot"},
511
 {"kolibrios/demos/qjulia", PROGS .. "/demos/qjulia/trunk/qjulia"},
512
 {"kolibrios/develop/utils/GenFiles", PROGS .. "/testing/genfiles/GenFiles"},
513
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
6033 leency 514
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
6179 leency 515
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
6180 leency 516
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
5335 yogev_ezra 517
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
518
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
5379 serge 519
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
6991 leency 520
 {"kolibrios/games/megamaze", PROGS .. "/games/megamaze/trunk/megamaze"},
5467 leency 521
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
6991 leency 522
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
523
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
5098 clevermous 524
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
525
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
526
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
527
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
528
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
529
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
530
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
6991 leency 531
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
5098 clevermous 532
})
533
-- For russian build, add russian-only programs.
534
if build_type == "rus" then tup.append_table(img_files, {
535
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
6699 clevermous 536
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_rus"},
5098 clevermous 537
}) else tup.append_table(img_files, {
6699 clevermous 538
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_eng"},
5098 clevermous 539
}) end
540
 
5334 Anton_K 541
if build_type == "rus" then tup.append_table(extra_files, {
542
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
543
}) end
544
 
5098 clevermous 545
end -- tup.getconfig('NO_FASM') ~= 'full'
546
 
547
-- Programs that require NASM to compile.
548
if tup.getconfig('NO_NASM') ~= 'full' then
549
tup.append_table(img_files, {
6952 leency 550
 {"LOD", PROGS .. "/fs/lod/lod"},
551
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
5098 clevermous 552
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
553
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
6952 leency 554
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
5098 clevermous 555
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
6998 0CodErr 556
 {"MEDIA/FILLSCR", PROGS .. "/media/FillScr/fillscr"},
5098 clevermous 557
})
558
end -- tup.getconfig('NO_NASM') ~= 'full'
559
 
7081 0CodErr 560
-- Programs that require JWASM to compile.
561
if tup.getconfig('NO_JWASM') ~= 'full' then
562
tup.append_table(img_files, {
563
 {"RUN", PROGS .. "/system/RunOD/1/RUN"},
564
})
565
end -- tup.getconfig('NO_JWASM') ~= 'full'
566
 
5098 clevermous 567
-- Programs that require C-- to compile.
568
if tup.getconfig('NO_CMM') ~= 'full' then
569
tup.append_table(img_files, {
6776 leency 570
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
571
 {"TXTREAD", PROGS .. "/cmm/txtread/txtread.com"},
572
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
573
 {"GAME_CENTER", PROGS .. "/cmm/software_widget/software_widget.com"},
574
 {"SYSPANEL", PROGS .. "/cmm/software_widget/software_widget.com"},
6569 leency 575
 {"DEVELOP/CLIPVIEW", PROGS .. "/cmm/clipview/clipview.com"},
5098 clevermous 576
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
5993 leency 577
 {"FONT_VIEWER", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
5098 clevermous 578
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
6957 leency 579
 {"GAMES/MBLOCKS", PROGS .. "/cmm/mblocks/mblocks.com"},
6748 leency 580
 {"DEVELOP/DIFF", PROGS .. "/cmm/diff/diff.com"},
5098 clevermous 581
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
6776 leency 582
 {"GAMES/FLOOD-IT", PROGS .. "/games/flood-it/trunk/flood-it.com"},
5098 clevermous 583
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
5467 leency 584
 {"MEDIA/PIXIE/PIXIE", PROGS .. "/cmm/pixie/pixie.com"},
6754 leency 585
 {"MOUSECFG", PROGS .. "/cmm/mousecfg/mousecfg.com"},
5632 leency 586
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
5479 leency 587
 {"PANELS_CFG", PROGS .. "/cmm/panels_cfg/panels_cfg.com"},
5098 clevermous 588
})
6776 leency 589
tup.append_table(extra_files, {
590
 {"kolibrios/drivers/DRVINST.KEX", PROGS .. "/cmm/drvinst/drvinst.com"},
6991 leency 591
 {"kolibrios/games/the_bus/the_bus", PROGS .. "/cmm/the_bus/the_bus.com"},
6776 leency 592
 {"kolibrios/utils/DICTY.KEX", PROGS .. "/cmm/dicty/dicty.com"},
6967 leency 593
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
6776 leency 594
})
5098 clevermous 595
end -- tup.getconfig('NO_CMM') ~= 'full'
596
 
597
-- Programs that require MSVC to compile.
598
if tup.getconfig('NO_MSVC') ~= 'full' then
599
tup.append_table(img_files, {
600
 {"GRAPH", PROGS .. "/other/graph/graph"},
601
 {"TABLE", PROGS .. "/other/table/table"},
602
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
603
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
5113 clevermous 604
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
5115 clevermous 605
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
5098 clevermous 606
})
5110 clevermous 607
tup.append_table(extra_files, {
5109 clevermous 608
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
5276 ZblCoder 609
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
5109 clevermous 610
})
5098 clevermous 611
end -- tup.getconfig('NO_MSVC') ~= 'full'
612
 
613
-- Programs that require GCC to compile.
614
if tup.getconfig('NO_GCC') ~= 'full' then
615
tup.append_table(img_files, {
5123 clevermous 616
 {"GAMES/CHECKERS", PROGS .. "/games/checkers/trunk/checkers"},
5111 clevermous 617
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
5098 clevermous 618
 {"SHELL", PROGS .. "/system/shell/shell"},
619
})
620
tup.append_table(extra_files, {
6736 leency 621
 {"kolibrios/3D/cubeline", PROGS .. "/demos/cubeline/trunk/cubeline"},
5098 clevermous 622
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
6183 leency 623
 {"kolibrios/games/2048/", PROGS .. "/games/2048/2048"},
624
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
5228 alpine 625
 {"kolibrios/games/heliothryx/", PROGS .. "/games/heliothryx/heliothryx"},
5236 alpine 626
 {"kolibrios/games/marblematch3/", PROGS .. "/games/marblematch3/marblematch3"},
5336 yogev_ezra 627
 {"kolibrios/games/nsider/", PROGS .. "/games/nsider/nsider"},
5131 clevermous 628
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
629
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
5098 clevermous 630
})
5327 igevorse 631
-- For russian build, add russian-only programs.
5329 igevorse 632
if build_type == "rus" then tup.append_table(extra_files, {
5327 igevorse 633
 {"kolibrios/games/21days/", PROGS .. "/games/21days/21days"},
5328 igevorse 634
}) end
5098 clevermous 635
end -- tup.getconfig('NO_GCC') ~= 'full'
636
 
637
-- Skins.
638
tup.include("../skins/skinlist.lua")
639
 
640
--[================================[ CODE ]================================]--
641
-- expand extra_files and similar
642
function expand_extra_files(files)
643
  local result = {}
644
  for i,v in ipairs(files) do
645
    if string.match(v[2], "%*")
646
    then
647
      local g = tup.glob(v[2])
648
      for j,x in ipairs(g) do
5132 clevermous 649
        table.insert(result, {v[1], x, group=v.group})
5098 clevermous 650
      end
651
    else
652
      if v.cp1251_from then
653
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
654
      end
5132 clevermous 655
      table.insert(result, {v[1], v[2], group=v.group})
5098 clevermous 656
    end
657
  end
658
  return result
659
end
660
 
661
-- append skins to extra_files
662
for i,v in ipairs(skinlist) do
6094 leency 663
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
5098 clevermous 664
end
665
 
666
-- prepare distr_extra_files and iso_extra_files: expand and append common part
667
extra_files = expand_extra_files(extra_files)
668
distr_extra_files = expand_extra_files(distr_extra_files)
669
iso_extra_files = expand_extra_files(iso_extra_files)
670
tup.append_table(distr_extra_files, extra_files)
671
tup.append_table(iso_extra_files, extra_files)
672
 
673
-- generate list of directories to be created inside kolibri.img
674
img_dirs = {}
675
input_deps = {}
676
for i,v in ipairs(img_files) do
677
  img_file = v[1]
678
  local_file = v[2]
679
 
680
  slash_pos = 0
681
  while true do
682
    slash_pos = string.find(img_file, '/', slash_pos + 1)
683
    if not slash_pos then break end
684
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
685
  end
686
 
687
  -- tup does not want to see hidden files as dependencies
688
  if not string.match(local_file, "/%.") then
5132 clevermous 689
    table.insert(input_deps, v.group or local_file)
5098 clevermous 690
  end
691
end
692
 
693
-- create empty 1.44M file
5118 clevermous 694
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
695
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
5098 clevermous 696
-- format it as a standard 1.44M floppy
697
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
698
-- copy bootloader
699
if tup.getconfig("NO_FASM") ~= "full" then
700
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
701
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
702
table.insert(input_deps, bootloader)
703
end
704
-- make folders
705
table.sort(img_dirs)
706
for i,v in ipairs(img_dirs) do
707
  if v ~= img_dirs[i-1] then
708
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
709
  end
710
end
711
-- copy files
712
for i,v in ipairs(img_files) do
713
  local_file = v[2]
714
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
715
  then
716
    -- for kernel.mnt, insert autobuild revision identifier
717
    -- from .revision to .kernel.mnt
718
    -- note that .revision and .kernel.mnt must begin with .
719
    -- to prevent tup from tracking them
720
    if build_type == "rus"
721
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
722
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
723
    end
724
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
725
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
726
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
727
    make_img_command = make_img_command .. " && str=" .. str
728
    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'
729
    local_file = ".kernel.mnt"
730
  end
731
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
732
end
733
 
734
-- generate tup rule for kolibri.img
735
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
7131 dunkaist 736
tup.definerule{inputs = {"../kernel/trunk/boot/uefi4kos.asm", "kolibri.img", "../kernel/trunk/kernel.bin"}, command = "fasm ../kernel/trunk/boot/uefi4kos.asm %o", outputs = {"kolibri.efi"}}
5098 clevermous 737
 
738
-- generate command and dependencies for mkisofs
739
input_deps = {"kolibri.img"}
740
iso_files_list = ""
741
for i,v in ipairs(iso_extra_files) do
742
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
5132 clevermous 743
  table.insert(input_deps, v.group or v[2])
5098 clevermous 744
end
745
 
746
-- generate tup rule for kolibri.iso
747
if tup.getconfig("INSERT_REVISION_ID") ~= ""
748
then volume_id = "KolibriOS r`cat .revision`"
749
else volume_id = "KolibriOS"
750
end
751
tup.definerule{inputs = input_deps, command =
5118 clevermous 752
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
5098 clevermous 753
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
754
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
755
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
756
  outputs = {"kolibri.iso"}}
757
 
758
-- generate command and dependencies for distribution kit
5104 clevermous 759
cp = 'cp "%f" "%o"'
5102 clevermous 760
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
5098 clevermous 761
for i,v in ipairs(distr_extra_files) do
5132 clevermous 762
  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 763
  if string.sub(v[1], -1) == "/"
5132 clevermous 764
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
765
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
5098 clevermous 766
  end
767
end