Subversion Repositories Kolibri OS

Rev

Rev 7233 | Rev 7245 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

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