Subversion Repositories Kolibri OS

Rev

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

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