Subversion Repositories Kolibri OS

Rev

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