Subversion Repositories Kolibri OS

Rev

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