Subversion Repositories Kolibri OS

Rev

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