Subversion Repositories Kolibri OS

Rev

Rev 7432 | Rev 7445 | 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/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
148
 {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"},
149
 {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"},
150
 {"kolibrios/3D/info3ds/TL_SYS_16.PNG", PROGS .. "/develop/info3ds/tl_sys_16.png"},
151
 {"kolibrios/3D/info3ds/TOOLBAR.PNG", PROGS .. "/develop/info3ds/toolbar.png"},
6237 IgorA 152
 {"kolibrios/3D/info3ds/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
6583 leency 153
 {"kolibrios/3D/md2view/", "common/3d/md2view/*"},
6584 leency 154
 {"kolibrios/3D/md2view/md2_model/", "common/3d/md2view/md2_model/*"},
6248 IgorA 155
 {"kolibrios/3D/voxel_editor/VOX_EDITOR.INI", PROGS .. "/media/voxel_editor/trunk/vox_editor.ini"},
6247 IgorA 156
 {"kolibrios/3D/voxel_editor/HOUSE1.VOX", PROGS .. "/media/voxel_editor/trunk/house1.vox"},
157
 {"kolibrios/3D/voxel_editor/HOUSE2.VOX", PROGS .. "/media/voxel_editor/trunk/house2.vox"},
6279 IgorA 158
 {"kolibrios/3D/voxel_editor/SQUIRREL.VOX", PROGS .. "/media/voxel_editor/trunk/squirrel.vox"},
159
 {"kolibrios/3D/voxel_utilites/VOX_MOVER.INI" , PROGS .. "/media/voxel_editor/utilites/vox_mover.ini"},
6287 IgorA 160
 {"kolibrios/3D/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
161
 {"kolibrios/3D/TOOLB_1.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/toolb_1.png"},
162
 {"kolibrios/3D/TEST_GLU1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu1"},
163
 {"kolibrios/3D/TEST_GLU2", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu2"},
164
 {"kolibrios/3D/TEXT_2.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/text_2.png"},
6613 leency 165
 {"kolibrios/develop/oberon07/", PROGS .. "/develop/oberon07/*"},
166
 {"kolibrios/develop/oberon07/Docs/", PROGS .. "/develop/oberon07/Docs/*"},
167
 {"kolibrios/develop/oberon07/Lib/KolibriOS/", PROGS .. "/develop/oberon07/Lib/KolibriOS/*"},
168
 {"kolibrios/develop/oberon07/Samples/", PROGS .. "/develop/oberon07/Samples/*"},
7216 leency 169
 {"kolibrios/develop/TinyBasic/", "common/develop/TinyBasic/*"},
7368 pavelyakov 170
 {"kolibrios/utils/cnc_editor/cnc_editor", PROGS .. "/other/cnc_editor/cnc_editor"},
171
 {"kolibrios/utils/cnc_editor/kolibri.NC", PROGS .. "/other/cnc_editor/kolibri.NC"},
5098 clevermous 172
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
6225 leency 173
 {"kolibrios/emul/e80/readme.txt", PROGS .. "/emulator/e80/trunk/readme.txt"},
174
 {"kolibrios/emul/fceu/fceu", PROGS .. "/emulator/fceu/fceu"},
175
 {"kolibrios/emul/fceu/FCEU ReadMe.txt", PROGS .. "/emulator/fceu/FCEU ReadMe.txt"},
5098 clevermous 176
 {"kolibrios/emul/", "common/emul/gameboy"},
6578 leency 177
 {"kolibrios/emul/", "common/emul/pokemini"},
5098 clevermous 178
 {"kolibrios/emul/", "common/emul/scummvm"},
179
 {"kolibrios/emul/", "common/emul/zsnes"},
5827 leency 180
 {"kolibrios/demos/ak47.lif", "common/demos/ak47.lif"},
181
 {"kolibrios/demos/life2", "common/demos/life2"},
182
 {"kolibrios/demos/relay.lif", "common/demos/relay.lif"},
183
 {"kolibrios/demos/rpento.lif", "common/demos/rpento.lif"},
6179 leency 184
 {"kolibrios/games/BabyPainter", "common/games/BabyPainter"},
185
 {"kolibrios/games/bomber/ackack.bmp", PROGS .. "/games/bomber/ackack.bmp"},
186
 {"kolibrios/games/bomber/bomb.bmp", PROGS .. "/games/bomber/bomb.bmp"},
187
 {"kolibrios/games/bomber/plane.bmp", PROGS .. "/games/bomber/plane.bmp"},
188
 {"kolibrios/games/bomber/tile.bmp", PROGS .. "/games/bomber/tile.bmp"},
189
 {"kolibrios/games/doom1/", "common/games/doom/*"},
5098 clevermous 190
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
5647 leency 191
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
6179 leency 192
 {"kolibrios/games/knight", "common/games/knight"},
5296 ZblCoder 193
 {"kolibrios/games/LaserTank/", "common/games/LaserTank/*"},
5098 clevermous 194
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
6181 leency 195
 {"kolibrios/games/mun/data/", "common/games/mun/data/*"},
6182 leency 196
 {"kolibrios/games/mun/libc.dll", "common/games/mun/libc.dll"},
6181 leency 197
 {"kolibrios/games/mun/mun", "common/games/mun/mun"},
6991 leency 198
 {"kolibrios/games/pig/", "common/games/pig/*"},
6188 hidnplayr 199
 {"kolibrios/games/soko/", "common/games/soko/*"},
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"},
434
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
6737 leency 435
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
6308 pathoswith 436
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
5098 clevermous 437
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
6737 leency 438
 {"LIB/TINYGL.OBJ", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
5098 clevermous 439
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
440
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
441
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
442
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
443
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
444
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
6029 hidnplayr 445
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
5098 clevermous 446
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
447
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
7058 ashmew2 448
 {"NETWORK/NSINSTALL", PROGS .. "/network/netsurf/nsinstall"},
5098 clevermous 449
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
450
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
451
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
452
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
5495 hidnplayr 453
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
5098 clevermous 454
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
455
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
456
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
457
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
458
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
5869 hidnplayr 459
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
5098 clevermous 460
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
461
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
462
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
463
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
464
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
465
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
466
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
467
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
468
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
469
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
470
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
471
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
472
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
473
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
474
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
475
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
476
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
477
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
478
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
479
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
480
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
481
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
482
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
483
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
484
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
485
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
486
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
487
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
488
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
489
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
490
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
491
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
492
})
493
tup.append_table(extra_files, {
494
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
495
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
496
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
497
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
498
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
499
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
500
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
501
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
502
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
503
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
7222 leency 504
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
505
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
506
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
507
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
508
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
509
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
510
 {"kolibrios/3D/textures1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
6991 leency 511
 {"kolibrios/demos/buddhabrot", PROGS .. "/demos/buddhabrot/trunk/buddhabrot"},
512
 {"kolibrios/demos/qjulia", PROGS .. "/demos/qjulia/trunk/qjulia"},
513
 {"kolibrios/develop/utils/GenFiles", PROGS .. "/testing/genfiles/GenFiles"},
514
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
6033 leency 515
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
6179 leency 516
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
6180 leency 517
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
5335 yogev_ezra 518
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
519
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
5379 serge 520
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
6991 leency 521
 {"kolibrios/games/megamaze", PROGS .. "/games/megamaze/trunk/megamaze"},
5467 leency 522
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
6991 leency 523
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
524
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
5098 clevermous 525
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
526
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
527
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
528
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
529
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
530
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
531
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
6991 leency 532
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
5098 clevermous 533
})
534
-- For russian build, add russian-only programs.
535
if build_type == "rus" then tup.append_table(img_files, {
536
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
6699 clevermous 537
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_rus"},
5098 clevermous 538
}) else tup.append_table(img_files, {
6699 clevermous 539
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_eng"},
5098 clevermous 540
}) end
541
 
5334 Anton_K 542
if build_type == "rus" then tup.append_table(extra_files, {
543
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
544
}) end
545
 
5098 clevermous 546
end -- tup.getconfig('NO_FASM') ~= 'full'
547
 
548
-- Programs that require NASM to compile.
549
if tup.getconfig('NO_NASM') ~= 'full' then
550
tup.append_table(img_files, {
6952 leency 551
 {"LOD", PROGS .. "/fs/lod/lod"},
552
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
5098 clevermous 553
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
554
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
6952 leency 555
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
5098 clevermous 556
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
6998 0CodErr 557
 {"MEDIA/FILLSCR", PROGS .. "/media/FillScr/fillscr"},
5098 clevermous 558
})
559
end -- tup.getconfig('NO_NASM') ~= 'full'
560
 
7081 0CodErr 561
-- Programs that require JWASM to compile.
562
if tup.getconfig('NO_JWASM') ~= 'full' then
563
tup.append_table(img_files, {
564
 {"RUN", PROGS .. "/system/RunOD/1/RUN"},
565
})
566
end -- tup.getconfig('NO_JWASM') ~= 'full'
567
 
5098 clevermous 568
-- Programs that require C-- to compile.
569
if tup.getconfig('NO_CMM') ~= 'full' then
570
tup.append_table(img_files, {
6776 leency 571
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
7245 leency 572
 {"EASYSHOT", PROGS .. "/cmm/easyshot/easyshot.com"},
7370 leency 573
 {"MOUSECFG", PROGS .. "/cmm/mousecfg/mousecfg.com"},
574
 {"PANELS_CFG", PROGS .. "/cmm/panels_cfg/panels_cfg.com"},
575
 {"SYSPANEL", PROGS .. "/cmm/software_widget/software_widget.com"},
576
 {"SYSMON", PROGS .. "/cmm/sysmon/sysmon.com"},
6776 leency 577
 {"TXTREAD", PROGS .. "/cmm/txtread/txtread.com"},
578
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
6569 leency 579
 {"DEVELOP/CLIPVIEW", PROGS .. "/cmm/clipview/clipview.com"},
5098 clevermous 580
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
5993 leency 581
 {"FONT_VIEWER", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
5098 clevermous 582
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
6957 leency 583
 {"GAMES/MBLOCKS", PROGS .. "/cmm/mblocks/mblocks.com"},
6748 leency 584
 {"DEVELOP/DIFF", PROGS .. "/cmm/diff/diff.com"},
5098 clevermous 585
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
6776 leency 586
 {"GAMES/FLOOD-IT", PROGS .. "/games/flood-it/trunk/flood-it.com"},
5098 clevermous 587
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
7233 leency 588
 {"MEDIA/PIXIE/PIXIE", PROGS .. "/cmm/pixie2/pixie.com"},
7254 leency 589
 {"MEDIA/ICONEDIT", PROGS .. "/cmm/iconedit/iconedit.com"},
5632 leency 590
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
5098 clevermous 591
})
6776 leency 592
tup.append_table(extra_files, {
593
 {"kolibrios/drivers/DRVINST.KEX", PROGS .. "/cmm/drvinst/drvinst.com"},
6991 leency 594
 {"kolibrios/games/the_bus/the_bus", PROGS .. "/cmm/the_bus/the_bus.com"},
6776 leency 595
 {"kolibrios/utils/DICTY.KEX", PROGS .. "/cmm/dicty/dicty.com"},
6967 leency 596
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
6776 leency 597
})
5098 clevermous 598
end -- tup.getconfig('NO_CMM') ~= 'full'
599
 
600
-- Programs that require MSVC to compile.
601
if tup.getconfig('NO_MSVC') ~= 'full' then
602
tup.append_table(img_files, {
603
 {"GRAPH", PROGS .. "/other/graph/graph"},
604
 {"TABLE", PROGS .. "/other/table/table"},
605
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
606
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
5113 clevermous 607
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
5115 clevermous 608
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
5098 clevermous 609
})
5110 clevermous 610
tup.append_table(extra_files, {
5109 clevermous 611
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
5276 ZblCoder 612
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
5109 clevermous 613
})
5098 clevermous 614
end -- tup.getconfig('NO_MSVC') ~= 'full'
615
 
616
-- Programs that require GCC to compile.
617
if tup.getconfig('NO_GCC') ~= 'full' then
618
tup.append_table(img_files, {
5123 clevermous 619
 {"GAMES/CHECKERS", PROGS .. "/games/checkers/trunk/checkers"},
5111 clevermous 620
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
5098 clevermous 621
 {"SHELL", PROGS .. "/system/shell/shell"},
622
})
623
tup.append_table(extra_files, {
6736 leency 624
 {"kolibrios/3D/cubeline", PROGS .. "/demos/cubeline/trunk/cubeline"},
5098 clevermous 625
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
6183 leency 626
 {"kolibrios/games/2048/", PROGS .. "/games/2048/2048"},
627
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
5228 alpine 628
 {"kolibrios/games/heliothryx/", PROGS .. "/games/heliothryx/heliothryx"},
5236 alpine 629
 {"kolibrios/games/marblematch3/", PROGS .. "/games/marblematch3/marblematch3"},
5336 yogev_ezra 630
 {"kolibrios/games/nsider/", PROGS .. "/games/nsider/nsider"},
5131 clevermous 631
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
632
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
5098 clevermous 633
})
5327 igevorse 634
-- For russian build, add russian-only programs.
5329 igevorse 635
if build_type == "rus" then tup.append_table(extra_files, {
5327 igevorse 636
 {"kolibrios/games/21days/", PROGS .. "/games/21days/21days"},
5328 igevorse 637
}) end
5098 clevermous 638
end -- tup.getconfig('NO_GCC') ~= 'full'
639
 
640
-- Skins.
641
tup.include("../skins/skinlist.lua")
642
 
643
--[================================[ CODE ]================================]--
644
-- expand extra_files and similar
645
function expand_extra_files(files)
646
  local result = {}
647
  for i,v in ipairs(files) do
648
    if string.match(v[2], "%*")
649
    then
650
      local g = tup.glob(v[2])
651
      for j,x in ipairs(g) do
5132 clevermous 652
        table.insert(result, {v[1], x, group=v.group})
5098 clevermous 653
      end
654
    else
655
      if v.cp1251_from then
656
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
657
      end
5132 clevermous 658
      table.insert(result, {v[1], v[2], group=v.group})
5098 clevermous 659
    end
660
  end
661
  return result
662
end
663
 
664
-- append skins to extra_files
665
for i,v in ipairs(skinlist) do
6094 leency 666
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
5098 clevermous 667
end
668
 
669
-- prepare distr_extra_files and iso_extra_files: expand and append common part
670
extra_files = expand_extra_files(extra_files)
671
distr_extra_files = expand_extra_files(distr_extra_files)
672
iso_extra_files = expand_extra_files(iso_extra_files)
673
tup.append_table(distr_extra_files, extra_files)
674
tup.append_table(iso_extra_files, extra_files)
675
 
676
-- generate list of directories to be created inside kolibri.img
677
img_dirs = {}
678
input_deps = {}
679
for i,v in ipairs(img_files) do
680
  img_file = v[1]
681
  local_file = v[2]
682
 
683
  slash_pos = 0
684
  while true do
685
    slash_pos = string.find(img_file, '/', slash_pos + 1)
686
    if not slash_pos then break end
687
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
688
  end
689
 
690
  -- tup does not want to see hidden files as dependencies
691
  if not string.match(local_file, "/%.") then
5132 clevermous 692
    table.insert(input_deps, v.group or local_file)
5098 clevermous 693
  end
694
end
695
 
696
-- create empty 1.44M file
5118 clevermous 697
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
698
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
5098 clevermous 699
-- format it as a standard 1.44M floppy
700
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
701
-- copy bootloader
702
if tup.getconfig("NO_FASM") ~= "full" then
703
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
704
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
705
table.insert(input_deps, bootloader)
706
end
707
-- make folders
708
table.sort(img_dirs)
709
for i,v in ipairs(img_dirs) do
710
  if v ~= img_dirs[i-1] then
711
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
712
  end
713
end
714
-- copy files
715
for i,v in ipairs(img_files) do
716
  local_file = v[2]
717
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
718
  then
719
    -- for kernel.mnt, insert autobuild revision identifier
720
    -- from .revision to .kernel.mnt
721
    -- note that .revision and .kernel.mnt must begin with .
722
    -- to prevent tup from tracking them
723
    if build_type == "rus"
724
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
725
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
726
    end
727
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
728
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
729
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
730
    make_img_command = make_img_command .. " && str=" .. str
731
    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'
732
    local_file = ".kernel.mnt"
733
  end
734
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
735
end
736
 
737
-- generate tup rule for kolibri.img
738
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
7131 dunkaist 739
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 740
 
741
-- generate command and dependencies for mkisofs
742
input_deps = {"kolibri.img"}
743
iso_files_list = ""
744
for i,v in ipairs(iso_extra_files) do
745
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
5132 clevermous 746
  table.insert(input_deps, v.group or v[2])
5098 clevermous 747
end
748
 
749
-- generate tup rule for kolibri.iso
750
if tup.getconfig("INSERT_REVISION_ID") ~= ""
751
then volume_id = "KolibriOS r`cat .revision`"
752
else volume_id = "KolibriOS"
753
end
754
tup.definerule{inputs = input_deps, command =
5118 clevermous 755
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
5098 clevermous 756
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
757
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
758
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
759
  outputs = {"kolibri.iso"}}
760
 
761
-- generate command and dependencies for distribution kit
5104 clevermous 762
cp = 'cp "%f" "%o"'
5102 clevermous 763
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
5098 clevermous 764
for i,v in ipairs(distr_extra_files) do
5132 clevermous 765
  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 766
  if string.sub(v[1], -1) == "/"
5132 clevermous 767
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
768
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
5098 clevermous 769
  end
770
end