Subversion Repositories Kolibri OS

Rev

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