Subversion Repositories Kolibri OS

Rev

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