Subversion Repositories Kolibri OS

Rev

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

Rev Author Line No. Line
8674 Coldy 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"},
7653 leency 20
 {"HOME.PNG", "common/wallpapers/home.png"},
6958 leency 21
 {"ICONS32.PNG", "common/icons32.png"},
7052 leency 22
 {"ICONS16.PNG", "common/icons16.png"},
6958 leency 23
 {"INDEX.HTM", "common/index_htm"},
24
 {"KUZKINA.MID", "common/kuzkina.mid"},
8131 dunkaist 25
 {"SINE.MP3", "common/sine.mp3"},
6958 leency 26
 {"LANG.INC", build_type .. "/lang.inc"},
27
 {"NOTIFY3.PNG", "common/notify3.png"},
7864 leency 28
 {"UNIMG", PROGS .. "/fs/unimg/unimg"},
6958 leency 29
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
5098 clevermous 30
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
6958 leency 31
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
32
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
7053 leency 33
 {"File Managers/FNAV/ABOUT.TXT", "common/File Managers/fNav/About.txt"},
7029 0CodErr 34
 {"File Managers/FNAV/FNAV", "common/File Managers/fNav/fNav.kex"},
35
 {"File Managers/FNAV/FNAV.EXT", "common/File Managers/fNav/fnav.ext"},
36
 {"File Managers/FNAV/FNAV.SET", "common/File Managers/fNav/fnav.set"},
37
 {"File Managers/FNAV/FNAV_CUR.PNG", "common/File Managers/fNav/fnav_cur.png"},
38
 {"File Managers/FNAV/FNAV_FNT.PNG", "common/File Managers/fNav/fnav_fnt.png"},
7053 leency 39
 {"File Managers/FNAV/FNAV_ICN.PNG", "common/File Managers/fNav/fnav_icn.png"},
5764 leency 40
 {"FONTS/TAHOMA.KF", "common/fonts/tahoma.kf"},
6958 leency 41
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
42
 {"LIB/KMENU.OBJ", "common/lib/kmenu.obj"},
43
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
44
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
45
 {"MEDIA/IMGF/IMGF", "common/media/ImgF/ImgF"},
46
 {"MEDIA/IMGF/CEDG.OBJ", "common/media/ImgF/cEdg.obj"},
47
 {"MEDIA/IMGF/DITHER.OBJ", "common/media/ImgF/dither.obj"},
48
 {"MEDIA/IMGF/INVSOL.OBJ", "common/media/ImgF/invSol.obj"},
7633 leency 49
 {"MEDIA/PIXIESKN.PNG", PROGS .. "/cmm/pixie2/pixieskn.png"},
7211 nisargshah 50
 {"NETWORK/FTPC.INI", PROGS .. "/network/ftpc/ftpc.ini"},
6958 leency 51
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
52
 {"NETWORK/USERS.INI", "common/network/users.ini"},
7632 leency 53
 {"NETWORK/FTPC_SYS.PNG", PROGS .. "/network/ftpc/ftpc_sys.png"},
54
 {"NETWORK/FTPC_NOD.PNG", PROGS .. "/network/ftpc/ftpc_nod.png"},
7429 leency 55
 {"SETTINGS/APP.INI", "common/settings/app.ini"},
7519 leency 56
 {"SETTINGS/APP_PLUS.INI", "common/settings/app_plus.ini"},
7429 leency 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/FB2READ.INI", "common/settings/fb2read.ini"},
7429 leency 61
 {"SETTINGS/HOTANGLES.CFG", PROGS .. "/other/ha/SETTINGS/HOTANGLES.CFG"},
5098 clevermous 62
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
5873 pathoswith 63
 {"SETTINGS/KEYMAP.KEY", PROGS .. "/system/taskbar/trunk/KEYMAP.KEY"},
6958 leency 64
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
5098 clevermous 65
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
66
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
7137 dunkaist 67
 {"SETTINGS/NETWORK.INI", "common/settings/network.ini"},
5972 leency 68
 {"SETTINGS/SYSTEM.INI", "common/settings/system.ini"},
7429 leency 69
 {"SETTINGS/TASKBAR.INI", "common/settings/taskbar.ini"},
8589 turbocat 70
 {"SETTINGS/weather.json", PROGS .. "/other/Weather/weather.json"},
5098 clevermous 71
}
7010 0CodErr 72
 
5098 clevermous 73
-- For russian build, add russian-only files.
74
if build_type == "rus" then tup.append_table(img_files, {
7769 leency 75
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
7994 leency 76
 {"DEVELOP/BACKY", PROGS .. "/develop/backy/Backy_ru"},
7769 leency 77
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
78
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
5098 clevermous 79
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
8512 leency 80
 {"GAMES/DESCENT", build_type .. "/games/descent"},
5098 clevermous 81
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
7426 leency 82
 {"SETTINGS/GAMES.INI", "rus/settings/games.ini"},
5098 clevermous 83
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
7769 leency 84
 {"SETTINGS/SYSPANEL.INI", "rus/settings/syspanel.ini"},
7010 0CodErr 85
}) elseif build_type == "eng" then tup.append_table(img_files, {
7769 leency 86
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7994 leency 87
 {"DEVELOP/BACKY", PROGS .. "/develop/backy/Backy"},
7769 leency 88
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
7015 0CodErr 89
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
8512 leency 90
 {"GAMES/DESCENT", "common/games/descent"},
7769 leency 91
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
7426 leency 92
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
7769 leency 93
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
94
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
95
}) elseif build_type == "sp" then tup.append_table(img_files, {
7015 0CodErr 96
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7994 leency 97
 {"DEVELOP/BACKY", PROGS .. "/develop/backy/Backy"},
7015 0CodErr 98
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
99
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
8512 leency 100
 {"GAMES/DESCENT", "common/games/descent"},
7769 leency 101
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
7426 leency 102
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
7015 0CodErr 103
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
7769 leency 104
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
7010 0CodErr 105
}) elseif build_type == "it" then tup.append_table(img_files, {
7769 leency 106
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7994 leency 107
 {"DEVELOP/BACKY", PROGS .. "/develop/backy/Backy"},
7769 leency 108
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
7015 0CodErr 109
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
8512 leency 110
 {"GAMES/DESCENT", "common/games/descent"},
7015 0CodErr 111
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
7010 0CodErr 112
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
7769 leency 113
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
114
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
5098 clevermous 115
}) else tup.append_table(img_files, {
7769 leency 116
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
7994 leency 117
 {"DEVELOP/BACKY", PROGS .. "/develop/backy/Backy"},
5098 clevermous 118
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
7769 leency 119
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
8512 leency 120
 {"GAMES/DESCENT", "common/games/descent"},
7769 leency 121
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
7426 leency 122
 {"SETTINGS/GAMES.INI", "common/settings/games.ini"},
7010 0CodErr 123
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
7769 leency 124
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
5098 clevermous 125
}) end
126
 
127
--[[
128
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
5132 clevermous 129
 
5098 clevermous 130
The first subitem of every item is name relative to the root of ISO or distribution kit,
131
the second is name of local file.
5132 clevermous 132
 
5098 clevermous 133
If the first subitem ends in /, the last component of local file name is appended.
134
The last component of the second subitem may contain '*'; if so, it will be expanded
135
according to usual rules, but without matching directories.
5132 clevermous 136
 
137
Tup does not allow a direct dependency on a file that is generated in a directory
138
other than where Tupfile.lua is and its children. Most files are generated
139
in the directory with Tupfile.lua; for other files, the item should contain
140
a named subitem "group=path/" and the file should be put in .
5098 clevermous 141
--]]
142
extra_files = {
7137 dunkaist 143
 {"/", "common/distr_data/autorun.inf"},
144
 {"/", "common/distr_data/KolibriOS_icon.ico"},
7715 leency 145
 {"Docs/stack.txt", "../kernel/trunk/docs/stack.txt"},
5098 clevermous 146
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
147
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
148
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
149
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
150
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
151
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
152
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
153
 {"HD_Load/", "common/HD_load/memdisk"},
154
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
155
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
156
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
6226 leency 157
 {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"},
158
 {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"},
159
 {"kolibrios/3D/info3ds/TOOLBAR.PNG", PROGS .. "/develop/info3ds/toolbar.png"},
6237 IgorA 160
 {"kolibrios/3D/info3ds/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
6583 leency 161
 {"kolibrios/3D/md2view/", "common/3d/md2view/*"},
6584 leency 162
 {"kolibrios/3D/md2view/md2_model/", "common/3d/md2view/md2_model/*"},
6248 IgorA 163
 {"kolibrios/3D/voxel_editor/VOX_EDITOR.INI", PROGS .. "/media/voxel_editor/trunk/vox_editor.ini"},
6247 IgorA 164
 {"kolibrios/3D/voxel_editor/HOUSE1.VOX", PROGS .. "/media/voxel_editor/trunk/house1.vox"},
165
 {"kolibrios/3D/voxel_editor/HOUSE2.VOX", PROGS .. "/media/voxel_editor/trunk/house2.vox"},
6279 IgorA 166
 {"kolibrios/3D/voxel_editor/SQUIRREL.VOX", PROGS .. "/media/voxel_editor/trunk/squirrel.vox"},
167
 {"kolibrios/3D/voxel_utilites/VOX_MOVER.INI" , PROGS .. "/media/voxel_editor/utilites/vox_mover.ini"},
6287 IgorA 168
 {"kolibrios/3D/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
169
 {"kolibrios/3D/TOOLB_1.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/toolb_1.png"},
170
 {"kolibrios/3D/TEST_GLU1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu1"},
171
 {"kolibrios/3D/TEST_GLU2", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu2"},
172
 {"kolibrios/3D/TEXT_2.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/text_2.png"},
8242 leency 173
 {"kolibrios/develop/c--/", PROGS .. "/cmm/c--/*"},
174
 {"kolibrios/develop/fpc/", "common/develop/fpc/*"},
8244 leency 175
 {"kolibrios/develop/fpc/examples/", PROGS .. "/develop/fp/examples/src/*"},
8243 leency 176
 {"kolibrios/develop/fpc/examples/build.sh", "common/develop/fpc/build.sh"},
8242 leency 177
 {"kolibrios/develop/lua/lua", "../contrib/other/lua-5.2.0/lua"},
178
 {"kolibrios/develop/lua/calc.lua", "../contrib/other/lua-5.2.0/calc.lua"},
179
 {"kolibrios/develop/lua/console.lua", "../contrib/other/lua-5.2.0/console.lua"},
6613 leency 180
 {"kolibrios/develop/oberon07/", PROGS .. "/develop/oberon07/*"},
181
 {"kolibrios/develop/oberon07/Docs/", PROGS .. "/develop/oberon07/Docs/*"},
182
 {"kolibrios/develop/oberon07/Lib/KolibriOS/", PROGS .. "/develop/oberon07/Lib/KolibriOS/*"},
183
 {"kolibrios/develop/oberon07/Samples/", PROGS .. "/develop/oberon07/Samples/*"},
8100 maxcodehac 184
 {"kolibrios/develop/oberon07/tools/", PROGS .. "/develop/oberon07/tools/*"},
7849 leency 185
 {"kolibrios/develop/tcc/", PROGS ..  "/develop/ktcc/trunk/*"},
8432 superturbo 186
 {"kolibrios/develop/tcc/", PROGS ..  "/develop/ktcc/trunk/bin/tcc"},
7849 leency 187
 {"kolibrios/develop/tcc/lib/", PROGS ..  "/develop/ktcc/trunk/bin/lib/*"},
188
 {"kolibrios/develop/tcc/include/", PROGS ..  "/develop/ktcc/trunk/libc/include/*"},
8172 maxcodehac 189
 {"kolibrios/develop/tcc/include/clayer/", PROGS ..  "/develop/ktcc/trunk/libc/include/clayer/*"},
8434 superturbo 190
 {"kolibrios/develop/tcc/include/cryptal/", PROGS ..  "/develop/ktcc/trunk/libc/include/cryptal/*"},
191
 {"kolibrios/develop/tcc/include/net/", PROGS ..  "/develop/ktcc/trunk/libc/include/net/*"},
192
 {"kolibrios/develop/tcc/include/tinygl/", PROGS ..  "/develop/ktcc/trunk/libc/include/tinygl/*"},
8432 superturbo 193
 {"kolibrios/develop/tcc/samples/", PROGS ..  "/develop/ktcc/trunk/samples/*.c"},
194
 {"kolibrios/develop/tcc/samples/", PROGS ..  "/develop/ktcc/trunk/samples/*.sh"},
8172 maxcodehac 195
 {"kolibrios/develop/tcc/samples/clayer/", PROGS ..  "/develop/ktcc/trunk/samples/clayer/*"},
8432 superturbo 196
 {"kolibrios/develop/tcc/samples/net/", PROGS ..  "/develop/ktcc/trunk/samples/net/*"},
197
 {"kolibrios/develop/tcc/samples/tinygl/", PROGS ..  "/develop/ktcc/trunk/samples/tinygl/*"},
7864 leency 198
 {"kolibrios/emul/", "common/emul/*"},
5098 clevermous 199
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
6225 leency 200
 {"kolibrios/emul/e80/readme.txt", PROGS .. "/emulator/e80/trunk/readme.txt"},
7636 leency 201
 {"kolibrios/emul/e80/keyboard.png", PROGS .. "/emulator/e80/trunk/keyboard.png"},
6225 leency 202
 {"kolibrios/emul/fceu/fceu", PROGS .. "/emulator/fceu/fceu"},
203
 {"kolibrios/emul/fceu/FCEU ReadMe.txt", PROGS .. "/emulator/fceu/FCEU ReadMe.txt"},
8725 rgimad 204
 {"kolibrios/emul/chip8/chip8", PROGS .. "/emulator/chip8/chip8"},
205
 {"kolibrios/emul/chip8/readme.txt", PROGS .. "/emulator/chip8/readme.txt"},
206
 {"kolibrios/emul/chip8/roms/", PROGS .. "/emulator/chip8/roms/*"},
7874 leency 207
 {"kolibrios/emul/kwine/kwine", PROGS .. "/emulator/kwine/bin/kwine"},
7875 dunkaist 208
 {"kolibrios/emul/kwine/lib/", PROGS .. "/emulator/kwine/bin/lib/*"},
8377 maxcodehac 209
 {"kolibrios/emul/uarm/", "common/emul/uarm/*"},
5827 leency 210
 {"kolibrios/demos/ak47.lif", "common/demos/ak47.lif"},
211
 {"kolibrios/demos/life2", "common/demos/life2"},
212
 {"kolibrios/demos/relay.lif", "common/demos/relay.lif"},
213
 {"kolibrios/demos/rpento.lif", "common/demos/rpento.lif"},
6179 leency 214
 {"kolibrios/games/BabyPainter", "common/games/BabyPainter"},
215
 {"kolibrios/games/bomber/ackack.bmp", PROGS .. "/games/bomber/ackack.bmp"},
216
 {"kolibrios/games/bomber/bomb.bmp", PROGS .. "/games/bomber/bomb.bmp"},
217
 {"kolibrios/games/bomber/plane.bmp", PROGS .. "/games/bomber/plane.bmp"},
218
 {"kolibrios/games/bomber/tile.bmp", PROGS .. "/games/bomber/tile.bmp"},
219
 {"kolibrios/games/doom1/", "common/games/doom/*"},
5098 clevermous 220
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
5647 leency 221
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
6179 leency 222
 {"kolibrios/games/knight", "common/games/knight"},
7685 leency 223
 {"kolibrios/games/KosChess/", "common/games/KosChess/*"},
7821 leency 224
 {"kolibrios/games/KosChess/images/", "common/games/KosChess/images/*"},
5296 ZblCoder 225
 {"kolibrios/games/LaserTank/", "common/games/LaserTank/*"},
5098 clevermous 226
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
6181 leency 227
 {"kolibrios/games/mun/data/", "common/games/mun/data/*"},
6182 leency 228
 {"kolibrios/games/mun/libc.dll", "common/games/mun/libc.dll"},
6181 leency 229
 {"kolibrios/games/mun/mun", "common/games/mun/mun"},
6991 leency 230
 {"kolibrios/games/pig/", "common/games/pig/*"},
6188 hidnplayr 231
 {"kolibrios/games/soko/", "common/games/soko/*"},
8112 maxcodehac 232
 {"kolibrios/games/fridge/", "common/games/fridge/*"},
6993 leency 233
 {"kolibrios/games/the_bus/menu.png", PROGS .. "/cmm/the_bus/menu.png"},
234
 {"kolibrios/games/the_bus/objects.png", PROGS .. "/cmm/the_bus/objects.png"},
235
 {"kolibrios/games/the_bus/road.png", PROGS .. "/cmm/the_bus/road.png"},
6583 leency 236
 {"kolibrios/grafx2/fonts/", "common/media/grafx2/fonts/*"},
237
 {"kolibrios/grafx2/scripts/", "common/media/grafx2/scripts/libs/*"},
238
 {"kolibrios/grafx2/scripts/libs/", "common/media/grafx2/scripts/*"},
239
 {"kolibrios/grafx2/skins/", "common/media/grafx2/skins/*"},
240
 {"kolibrios/grafx2/", "common/media/grafx2/*"},
6654 leency 241
 {"kolibrios/drivers/drvinf.ini", "common/drivers/drvinf.ini"},
6156 leency 242
 {"kolibrios/drivers/ahci/", "common/drivers/ahci/*"},
243
 {"kolibrios/drivers/atikms/", "common/drivers/atikms/*"},
244
 {"kolibrios/drivers/i915/", "common/drivers/i915/*"},
7591 leency 245
 {"kolibrios/drivers/test/", "common/drivers/test/*"},
6156 leency 246
 {"kolibrios/drivers/vmware/", "common/drivers/vmware/*"},
7655 leency 247
 {"kolibrios/KolibriNext/settings/", "common/KolibriNext/settings/*"},
6719 serge 248
 {"kolibrios/lib/avcodec-56.dll", "common/lib/avcodec-56.dll"},
249
 {"kolibrios/lib/avdevice-56.dll", "common/lib/avdevice-56.dll"},
250
 {"kolibrios/lib/avformat-56.dll", "common/lib/avformat-56.dll"},
251
 {"kolibrios/lib/swscale-3.dll", "common/lib/swscale-3.dll"},
252
 {"kolibrios/lib/avutil-54.dll", "common/lib/avutil-54.dll"},
7191 leency 253
 {"kolibrios/lib/cairo2.dll", "common/lib/cairo2.dll"},
5098 clevermous 254
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
5378 serge 255
 {"kolibrios/lib/i965-video.dll", "common/lib/i965-video.dll"},
256
 {"kolibrios/lib/libdrm.dll", "common/lib/libdrm.dll"},
257
 {"kolibrios/lib/libegl.dll", "common/lib/libegl.dll"},
7180 leency 258
 {"kolibrios/lib/libeglut.dll", "common/lib/libeglut.dll"},
5378 serge 259
 {"kolibrios/lib/libGL.dll", "common/lib/libGL.dll"},
6982 leency 260
 {"kolibrios/lib/libjpeg.dll", "common/lib/libjpeg.dll"},
261
 {"kolibrios/lib/libpng16.dll", "common/lib/libpng16.dll"},
5378 serge 262
 {"kolibrios/lib/libva.dll", "common/lib/libva.dll"},
263
 {"kolibrios/lib/libz.dll", "common/lib/libz.dll"},
5132 clevermous 264
 {"kolibrios/lib/libc.dll", "../contrib/sdk/bin/libc.dll", group = "../contrib/sdk/lib/"},
7191 leency 265
 {"kolibrios/lib/osmesa.dll", "common/lib/osmesa.dll"},
5378 serge 266
 {"kolibrios/lib/pixlib-gl.dll", "common/lib/pixlib-gl.dll"},
7191 leency 267
 {"kolibrios/lib/pixman-1.dll", "common/lib/pixman-1.dll"},
6719 serge 268
 {"kolibrios/lib/swresample-1.dll", "common/lib/swresample-1.dll"},
5378 serge 269
 {"kolibrios/lib/i915_dri.drv", "common/lib/i915_dri.drv"},
270
 {"kolibrios/media/fplay", "common/media/fplay"},
7203 leency 271
 {"kolibrios/media/fplay_run", "common/media/fplay_run"},
7646 leency 272
 {"kolibrios/media/minimp3", "common/media/minimp3"},
6155 leency 273
 {"kolibrios/media/updf", "common/media/updf"},
274
 {"kolibrios/media/vttf", "common/media/vttf"},
7959 leency 275
 {"kolibrios/media/beat/Beat", PROGS .. "/media/Beat/Beat"},
276
 {"kolibrios/media/beat/Beep1.raw", PROGS .. "/media/Beat/Beep1.raw"},
277
 {"kolibrios/media/beat/Beep2.raw", PROGS .. "/media/Beat/Beep2.raw"},
278
 {"kolibrios/media/beat/PlayNote", PROGS .. "/media/Beat/PlayNote/PlayNote"},
279
 {"kolibrios/media/beat/Readme-en.txt", PROGS .. "/media/Beat/Readme-en.txt"},
280
 {"kolibrios/media/beat/Readme-ru.txt", PROGS .. "/media/Beat/Readme-ru.txt"},
5098 clevermous 281
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
282
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
8421 leency 283
 {"kolibrios/netsurf/netsurf", "common/network/netsurf/netsurf"},
8423 leency 284
 {"kolibrios/netsurf/res/", "common/network/netsurf/res/*"},
6094 leency 285
 {"kolibrios/res/skins/", "../skins/authors.txt"},
7569 leency 286
 {"kolibrios/res/templates/", "common/templates/*"},
7640 leency 287
 {"kolibrios/res/templates/", PROGS .. "/emulator/e80/trunk/games/*"},
7643 leency 288
 {"kolibrios/res/templates/NES/", "common/templates/NES/*"},
7544 leency 289
 {"kolibrios/res/wallpapers/", "common/wallpapers/*"},
8241 leency 290
 {"kolibrios/res/system/", build_type .. "/settings/kolibri.lbl"},
8285 leency 291
 {"kolibrios/utils/cnc_editor/cnc_editor", PROGS .. "/other/cnc_editor/cnc_editor"},
292
 {"kolibrios/utils/cnc_editor/kolibri.NC", PROGS .. "/other/cnc_editor/kolibri.NC"},
293
 {"kolibrios/utils/vmode", "common/vmode"},
8303 leency 294
 {"kolibrios/utils/texture", "common/utils/texture"},
6958 leency 295
 }
5098 clevermous 296
if build_type == "rus" then tup.append_table(extra_files, {
297
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
298
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
299
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
300
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
301
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
302
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
303
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
304
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
305
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
306
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
307
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
308
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
309
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
310
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
5471 leency 311
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
5098 clevermous 312
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
313
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
314
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
7650 leency 315
 {"kolibrios/games/ataka", "common/games/ataka/ataka_ru"},
5334 Anton_K 316
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
317
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
318
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
319
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
320
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
7928 leency 321
 {"kolibrios/games/sstartrek/SStarTrek", "common/games/sstartrek/SStarTrek_ru"},
7410 0CodErr 322
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/whowtbam"},
323
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/appdata.dat"},
7569 leency 324
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
325
 {"kolibrios/res/guide/", build_type .. "/docs/guide/*"},
5098 clevermous 326
}) else tup.append_table(extra_files, {
327
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
328
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
329
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
330
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
331
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
332
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
333
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
334
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
335
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
7650 leency 336
 {"kolibrios/games/ataka", "common/games/ataka/ataka_en"},
7928 leency 337
 {"kolibrios/games/sstartrek/SStarTrek", "common/games/sstartrek/SStarTrek_en"},
5098 clevermous 338
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
339
}) end
340
--[[
341
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
342
Same syntax as extra_files.
343
]]--
344
if build_type == "rus" then
345
distr_extra_files = {
346
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
347
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
348
}
349
else
350
distr_extra_files = {
351
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
352
}
353
end
354
--[[
355
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
356
Same syntax as extra_files.
357
]]--
358
if build_type == "rus" then
359
iso_extra_files = {
360
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
361
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
362
}
363
else
364
iso_extra_files = {
365
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
366
}
367
end
368
 
369
-- Programs that require FASM to compile.
370
if tup.getconfig('NO_FASM') ~= 'full' then
371
tup.append_table(img_files, {
372
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
7014 leency 373
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
7390 theonlymir 374
 {"@HOTANGLES", PROGS .. "/other/ha/HOTANGLES"},
7014 leency 375
 {"@ICON", PROGS .. "/system/icon_new/icon"},
5098 clevermous 376
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
7014 leency 377
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
378
 {"@OPEN", PROGS .. "/system/open/open"},
5454 leency 379
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
7658 leency 380
 {"@SS", PROGS .. "/system/scrsaver/scrsaver"},
7014 leency 381
 {"@VOLUME", PROGS .. "/media/volume/volume"},
7390 theonlymir 382
 {"HACONFIG", PROGS .. "/other/ha/HACONFIG"},
7647 leency 383
 {"APM", PROGS .. "/system/apm/apm"},
5098 clevermous 384
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
385
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
386
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
7160 leency 387
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
5098 clevermous 388
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
7900 leency 389
 {"CPUID", PROGS .. "/testing/cpuid/trunk/CPUID"},
7160 leency 390
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
6207 leency 391
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
7899 leency 392
 {"DISPTEST", PROGS .. "/testing/disptest/trunk/disptest"},
5098 clevermous 393
 {"END", PROGS .. "/system/end/light/end"},
7160 leency 394
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
7899 leency 395
 {"FSPEED", PROGS .. "/testing/fspeed/fspeed"},
5098 clevermous 396
 {"GMON", PROGS .. "/system/gmon/gmon"},
397
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
7899 leency 398
 {"KBD", PROGS .. "/testing/kbd/trunk/kbd"},
5098 clevermous 399
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
400
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
7160 leency 401
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
5098 clevermous 402
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
7899 leency 403
 {"MGB", PROGS .. "/testing/mgb/trunk/mgb"},
5098 clevermous 404
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
405
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
406
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
7900 leency 407
 {"PCIDEV", PROGS .. "/testing/pcidev/trunk/PCIDEV"},
5098 clevermous 408
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
409
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
410
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
411
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
412
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
7160 leency 413
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
414
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
7900 leency 415
 {"TEST", PROGS .. "/testing/protection/trunk/test"},
5098 clevermous 416
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
7160 leency 417
 {"UNZ", PROGS .. "/fs/unz/unz"},
5098 clevermous 418
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
419
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
420
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
7350 leency 421
 {"3D/3DCUBE2", PROGS .. "/demos/3dcube2/trunk/3DCUBE2"},
5098 clevermous 422
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
6736 leency 423
 {"3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
6387 leency 424
 {"3D/RAY", PROGS .. "/demos/ray/ray"},
8666 dunkaist 425
 {"3D/VIEW3DS", PROGS .. "/demos/view3ds/view3ds"},
5098 clevermous 426
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
427
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
428
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
429
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
430
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
431
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
432
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
433
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
7606 leency 434
 {"DEMOS/SPIRAL", PROGS .. "/demos/spiral/spiral"},
5098 clevermous 435
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
436
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
437
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
438
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
439
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
8365 leency 440
 {"DEVELOP/ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
5098 clevermous 441
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
8365 leency 442
 {"DEVELOP/COBJ", PROGS .. "/develop/cObj/trunk/cObj"},
7839 leency 443
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/1.73/fasm"},
5098 clevermous 444
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
445
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
446
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
447
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
448
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
449
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
8365 leency 450
 {"DEVELOP/EXAMPLES/CONGET", PROGS .. "/develop/libraries/console_coff/examples/test_gets"},
451
 {"DEVELOP/EXAMPLES/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
452
 {"DEVELOP/EXAMPLES/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
5098 clevermous 453
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
7631 leency 454
 {"DEVELOP/INFO/CPP_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
455
 {"DEVELOP/INFO/CPP_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
456
 {"DEVELOP/INFO/CPP_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
5098 clevermous 457
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
458
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
7631 leency 459
 {"DEVELOP/INFO/INI.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
5098 clevermous 460
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
461
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
462
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
463
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
464
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
465
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
7373 leency 466
 {"GAMES/LIGHTS", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
5098 clevermous 467
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
468
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
469
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
470
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
471
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
472
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
473
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
474
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
475
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
476
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
477
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
478
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
479
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
480
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
6699 clevermous 481
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console_coff/console.obj"},
6737 leency 482
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
8674 Coldy 483
 {"LIB/DLL.OBJ", PROGS .. "/develop/libraries/dll/dll.obj"},
6737 leency 484
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
5098 clevermous 485
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
486
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
487
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
488
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
489
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
490
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
6737 leency 491
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
6308 pathoswith 492
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
5098 clevermous 493
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
6737 leency 494
 {"LIB/TINYGL.OBJ", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
5098 clevermous 495
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
496
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
497
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
498
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
7484 leency 499
 {"MEDIA/MP3INFO", PROGS .. "/media/mp3info/mp3info"},
5098 clevermous 500
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
7650 leency 501
 {"MEDIA/PIANO", PROGS .. "/media/piano/piano"},
5098 clevermous 502
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
6029 hidnplayr 503
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
5098 clevermous 504
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
505
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
8418 leency 506
 {"NETWORK/NSINST", PROGS .. "/network/netsurf/nsinstall"},
5098 clevermous 507
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
508
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
509
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
7640 leency 510
 {"NETWORK/SNTP", PROGS .. "/network/sntp/sntp"},
5098 clevermous 511
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
5495 hidnplayr 512
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
5098 clevermous 513
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
514
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
515
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
516
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
517
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
5869 hidnplayr 518
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
5098 clevermous 519
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
520
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
7811 leency 521
 {"DRIVERS/AR81XX.SYS", "../drivers/ethernet/ar81xx.sys"},
5098 clevermous 522
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
523
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
524
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
525
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
526
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
527
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
528
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
529
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
530
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
531
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
532
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
533
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
534
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
535
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
536
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
537
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
538
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
539
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
540
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
541
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
542
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
543
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
544
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
545
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
546
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
547
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
548
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
549
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
550
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
551
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
552
})
553
tup.append_table(extra_files, {
554
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
555
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
556
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
557
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
558
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
559
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
560
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
561
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
562
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
563
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
7458 leency 564
 {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
7931 leency 565
 {"kolibrios/3D/flatwav", PROGS .. "/demos/flatwav/trunk/flatwav"},
7222 leency 566
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
567
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
7458 leency 568
 {"kolibrios/3D/mos3de", PROGS .. "/demos/mos3de/mos3de"},
7222 leency 569
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
570
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
571
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
572
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
573
 {"kolibrios/3D/textures1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
6991 leency 574
 {"kolibrios/demos/buddhabrot", PROGS .. "/demos/buddhabrot/trunk/buddhabrot"},
7525 leency 575
 {"kolibrios/demos/life3", PROGS .. "/games/life3/trunk/life3"},
6991 leency 576
 {"kolibrios/demos/qjulia", PROGS .. "/demos/qjulia/trunk/qjulia"},
577
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
6033 leency 578
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
6179 leency 579
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
6180 leency 580
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
5335 yogev_ezra 581
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
582
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
5379 serge 583
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
6991 leency 584
 {"kolibrios/games/megamaze", PROGS .. "/games/megamaze/trunk/megamaze"},
5467 leency 585
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
6991 leency 586
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
587
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
8018 leency 588
 {"kolibrios/media/img_transform", PROGS .. "/media/img_transform/img_transform"},
5098 clevermous 589
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
590
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
591
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
592
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
593
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
594
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
595
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
6991 leency 596
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
5098 clevermous 597
})
598
-- For russian build, add russian-only programs.
599
if build_type == "rus" then tup.append_table(img_files, {
600
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
7660 leency 601
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
8365 leency 602
 {"DEVELOP/EXAMPLES/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_rus"},
5098 clevermous 603
}) else tup.append_table(img_files, {
6699 clevermous 604
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_eng"},
5098 clevermous 605
}) end
606
 
5334 Anton_K 607
if build_type == "rus" then tup.append_table(extra_files, {
608
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
609
}) end
610
 
5098 clevermous 611
end -- tup.getconfig('NO_FASM') ~= 'full'
612
 
613
-- Programs that require NASM to compile.
614
if tup.getconfig('NO_NASM') ~= 'full' then
615
tup.append_table(img_files, {
8365 leency 616
 {"ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
6952 leency 617
 {"LOD", PROGS .. "/fs/lod/lod"},
8365 leency 618
 {"TIMER", PROGS .. "/other/Timer/timer"},
6952 leency 619
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
620
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
5098 clevermous 621
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
6998 0CodErr 622
 {"MEDIA/FILLSCR", PROGS .. "/media/FillScr/fillscr"},
5098 clevermous 623
})
7664 dunkaist 624
tup.append_table(extra_files, {
625
 {"kolibrios/develop/utils/GenFiles", PROGS .. "/testing/genfiles/GenFiles"},
626
})
5098 clevermous 627
end -- tup.getconfig('NO_NASM') ~= 'full'
628
 
7081 0CodErr 629
-- Programs that require JWASM to compile.
630
if tup.getconfig('NO_JWASM') ~= 'full' then
631
tup.append_table(img_files, {
632
 {"RUN", PROGS .. "/system/RunOD/1/RUN"},
7492 0CodErr 633
 {"LIB/INPUTBOX.OBJ", PROGS .. "/develop/libraries/InputBox/INPUTBOX.OBJ"},
7081 0CodErr 634
})
635
end -- tup.getconfig('NO_JWASM') ~= 'full'
636
 
5098 clevermous 637
-- Programs that require C-- to compile.
638
if tup.getconfig('NO_CMM') ~= 'full' then
639
tup.append_table(img_files, {
6776 leency 640
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
7911 leency 641
 {"EASYSHOT", PROGS .. "/cmm/misc/easyshot.com"},
7370 leency 642
 {"MOUSECFG", PROGS .. "/cmm/mousecfg/mousecfg.com"},
7630 leency 643
 {"BARSCFG", PROGS .. "/cmm/barscfg/barscfg.com"},
7911 leency 644
 {"SYSPANEL", PROGS .. "/cmm/misc/software_widget.com"},
7370 leency 645
 {"SYSMON", PROGS .. "/cmm/sysmon/sysmon.com"},
7946 leency 646
 {"QUARK", PROGS .. "/cmm/quark/quark.com"},
6776 leency 647
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
6569 leency 648
 {"DEVELOP/CLIPVIEW", PROGS .. "/cmm/clipview/clipview.com"},
7778 leency 649
 {"DEVELOP/MENU", PROGS .. "/cmm/menu/menu.com"},
7911 leency 650
 {"DEVELOP/PIPET", PROGS .. "/cmm/misc/pipet.com"},
5098 clevermous 651
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
7472 leency 652
 {"KF_VIEW", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
5098 clevermous 653
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
7911 leency 654
 {"GAMES/MBLOCKS", PROGS .. "/cmm/misc/mblocks.com"},
6748 leency 655
 {"DEVELOP/DIFF", PROGS .. "/cmm/diff/diff.com"},
5098 clevermous 656
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
6776 leency 657
 {"GAMES/FLOOD-IT", PROGS .. "/games/flood-it/trunk/flood-it.com"},
5098 clevermous 658
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
7630 leency 659
 {"MEDIA/PIXIE", PROGS .. "/cmm/pixie2/pixie.com"},
7254 leency 660
 {"MEDIA/ICONEDIT", PROGS .. "/cmm/iconedit/iconedit.com"},
8278 leency 661
 {"NETWORK/DL", PROGS .. "/cmm/downloader/dl.com"},
5632 leency 662
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
5098 clevermous 663
})
6776 leency 664
tup.append_table(extra_files, {
7541 leency 665
 {"kolibrios/drivers/drvinst.kex", PROGS .. "/cmm/drvinst/drvinst.com"},
7542 leency 666
 {"kolibrios/games/pig/pigex", PROGS .. "/cmm/examples/pigex.com"},
6991 leency 667
 {"kolibrios/games/the_bus/the_bus", PROGS .. "/cmm/the_bus/the_bus.com"},
7654 leency 668
 {"kolibrios/KolibriNext/install.kex", PROGS .. "/cmm/installer/install.com"},
7592 leency 669
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
7541 leency 670
 {"kolibrios/utils/dicty.kex", PROGS .. "/cmm/dicty/dicty.com"},
7640 leency 671
 {"kolibrios/utils/notes", PROGS .. "/cmm/notes/notes.com"},
6776 leency 672
})
5098 clevermous 673
end -- tup.getconfig('NO_CMM') ~= 'full'
674
 
675
-- Programs that require MSVC to compile.
676
if tup.getconfig('NO_MSVC') ~= 'full' then
677
tup.append_table(img_files, {
678
 {"GRAPH", PROGS .. "/other/graph/graph"},
679
 {"TABLE", PROGS .. "/other/table/table"},
680
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
681
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
5113 clevermous 682
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
5115 clevermous 683
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
5098 clevermous 684
})
5110 clevermous 685
tup.append_table(extra_files, {
5109 clevermous 686
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
5276 ZblCoder 687
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
5109 clevermous 688
})
5098 clevermous 689
end -- tup.getconfig('NO_MSVC') ~= 'full'
690
 
8460 superturbo 691
-- Programs that require TCC to compile.
692
if tup.getconfig('NO_TCC') ~= 'full' then
8516 superturbo 693
tup.append_table(img_files, {
694
 {"NETWORK/WHOIS", PROGS .. "/network/whois/whois"},
8684 turbocat 695
-- {"NETWORK/WEATHER", PROGS .. "/other/Weather/weather"},
8516 superturbo 696
})
8460 superturbo 697
tup.append_table(extra_files, {
698
 {"kolibrios/utils/thashview", PROGS .. "/other/TinyHashView/thashview"},
8471 superturbo 699
 {"kolibrios/develop/TinyBasic/", PROGS .. "/develop/tinybasic/TinyBasic"},
700
 {"kolibrios/develop/TinyBasic/", PROGS .. "/develop/tinybasic/TBuserMan.txt"},
8472 superturbo 701
 {"kolibrios/utils/teatool", PROGS .. "/other/TEAtool/teatool"},
8559 rgimad 702
 {"kolibrios/utils/passwordgen", PROGS .. "/other/PasswordGen/passwordgen"},
8585 rgimad 703
 {"kolibrios/media/qr_tool", PROGS .. "/media/qr_tool/qr_tool"},
8736 turbocat 704
 {"kolibrios/utils/weather", PROGS .. "/other/Weather/weather"},
8460 superturbo 705
})
706
end -- tup.getconfig('NO_TCC') ~= 'full'
707
 
5098 clevermous 708
-- Programs that require GCC to compile.
709
if tup.getconfig('NO_GCC') ~= 'full' then
710
tup.append_table(img_files, {
5111 clevermous 711
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
5098 clevermous 712
 {"SHELL", PROGS .. "/system/shell/shell"},
8693 turbocat 713
 {"LIB/LIBC.OBJ", PROGS .. "/develop/libraries/kolibri-libc/source/libc.obj"},
5098 clevermous 714
})
715
tup.append_table(extra_files, {
8529 maxcodehac 716
-- {"kolibrios/3D/cubeline", PROGS .. "/demos/cubeline/trunk/cubeline"},
5098 clevermous 717
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
8375 maxcodehac 718
 {"kolibrios/emul/uarm/", "../contrib/other/uarm/uARM"},
7531 leency 719
 {"kolibrios/games/2048", PROGS .. "/games/2048/2048"},
7528 leency 720
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
7531 leency 721
 {"kolibrios/games/heliothryx", PROGS .. "/games/heliothryx/heliothryx"},
722
 {"kolibrios/games/marblematch3", PROGS .. "/games/marblematch3/marblematch3"},
723
 {"kolibrios/games/nsider", PROGS .. "/games/nsider/nsider"},
5131 clevermous 724
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
725
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
8318 maxcodehac 726
 {"kolibrios/games/fridge/", PROGS .. "/games/fridge/fridge"},
8650 turbocat 727
 {"kolibrios/games/", PROGS .. "/games/checkers/trunk/checkers"},
8653 turbocat 728
 {"kolibrios/games/wolf3d/", "../contrib/games/wolf3d/wolf3d"},
729
 {"kolibrios/games/wolf3d/", "common/games/wolf3d/*"},
5098 clevermous 730
})
5327 igevorse 731
-- For russian build, add russian-only programs.
5329 igevorse 732
if build_type == "rus" then tup.append_table(extra_files, {
7531 leency 733
 {"kolibrios/games/21days", PROGS .. "/games/21days/21days"},
5328 igevorse 734
}) end
5098 clevermous 735
end -- tup.getconfig('NO_GCC') ~= 'full'
736
 
737
-- Skins.
738
tup.include("../skins/skinlist.lua")
739
 
740
--[================================[ CODE ]================================]--
741
-- expand extra_files and similar
742
function expand_extra_files(files)
743
  local result = {}
744
  for i,v in ipairs(files) do
745
    if string.match(v[2], "%*")
746
    then
747
      local g = tup.glob(v[2])
748
      for j,x in ipairs(g) do
5132 clevermous 749
        table.insert(result, {v[1], x, group=v.group})
5098 clevermous 750
      end
751
    else
752
      if v.cp1251_from then
753
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
754
      end
5132 clevermous 755
      table.insert(result, {v[1], v[2], group=v.group})
5098 clevermous 756
    end
757
  end
758
  return result
759
end
760
 
761
-- append skins to extra_files
762
for i,v in ipairs(skinlist) do
6094 leency 763
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
5098 clevermous 764
end
765
 
766
-- prepare distr_extra_files and iso_extra_files: expand and append common part
767
extra_files = expand_extra_files(extra_files)
768
distr_extra_files = expand_extra_files(distr_extra_files)
769
iso_extra_files = expand_extra_files(iso_extra_files)
770
tup.append_table(distr_extra_files, extra_files)
771
tup.append_table(iso_extra_files, extra_files)
772
 
773
-- generate list of directories to be created inside kolibri.img
774
img_dirs = {}
775
input_deps = {}
776
for i,v in ipairs(img_files) do
777
  img_file = v[1]
778
  local_file = v[2]
779
 
780
  slash_pos = 0
781
  while true do
782
    slash_pos = string.find(img_file, '/', slash_pos + 1)
783
    if not slash_pos then break end
784
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
785
  end
786
 
787
  -- tup does not want to see hidden files as dependencies
788
  if not string.match(local_file, "/%.") then
5132 clevermous 789
    table.insert(input_deps, v.group or local_file)
5098 clevermous 790
  end
791
end
792
 
793
-- create empty 1.44M file
5118 clevermous 794
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
795
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
5098 clevermous 796
-- format it as a standard 1.44M floppy
797
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
798
-- copy bootloader
799
if tup.getconfig("NO_FASM") ~= "full" then
800
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
801
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
802
table.insert(input_deps, bootloader)
803
end
804
-- make folders
805
table.sort(img_dirs)
806
for i,v in ipairs(img_dirs) do
807
  if v ~= img_dirs[i-1] then
808
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
809
  end
810
end
811
-- copy files
8060 clevermous 812
output_deps = {"kolibri.img"}
5098 clevermous 813
for i,v in ipairs(img_files) do
814
  local_file = v[2]
815
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
816
  then
817
    -- for kernel.mnt, insert autobuild revision identifier
818
    -- from .revision to .kernel.mnt
819
    -- note that .revision and .kernel.mnt must begin with .
820
    -- to prevent tup from tracking them
821
    if build_type == "rus"
8060 clevermous 822
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(get-current-revision)]"|iconv -f utf8 -t cp866)'
823
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(get-current-revision)]")'
5098 clevermous 824
    end
825
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
826
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
827
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
828
    make_img_command = make_img_command .. " && str=" .. str
829
    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'
830
    local_file = ".kernel.mnt"
8060 clevermous 831
    table.insert(output_deps, local_file)
5098 clevermous 832
  end
833
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
834
end
835
 
836
-- generate tup rule for kolibri.img
8060 clevermous 837
tup.definerule{inputs = input_deps, command = make_img_command, outputs = output_deps}
5098 clevermous 838
 
839
-- generate command and dependencies for mkisofs
840
input_deps = {"kolibri.img"}
841
iso_files_list = ""
842
for i,v in ipairs(iso_extra_files) do
843
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
5132 clevermous 844
  table.insert(input_deps, v.group or v[2])
5098 clevermous 845
end
846
 
847
-- generate tup rule for kolibri.iso
848
if tup.getconfig("INSERT_REVISION_ID") ~= ""
849
then volume_id = "KolibriOS r`cat .revision`"
850
else volume_id = "KolibriOS"
851
end
852
tup.definerule{inputs = input_deps, command =
5118 clevermous 853
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
5098 clevermous 854
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
855
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
856
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
857
  outputs = {"kolibri.iso"}}
858
 
859
-- generate command and dependencies for distribution kit
5104 clevermous 860
cp = 'cp "%f" "%o"'
5102 clevermous 861
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
5098 clevermous 862
for i,v in ipairs(distr_extra_files) do
5132 clevermous 863
  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 864
  if string.sub(v[1], -1) == "/"
5132 clevermous 865
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
866
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
5098 clevermous 867
  end
868
end
8091 dunkaist 869
 
8150 dunkaist 870
-- build kolibri.raw
8148 dunkaist 871
raw_mbr = "../programs/hd_load/usb_boot/mbr"
872
raw_bootsector = "../kernel/trunk/bootloader/extended_primary_loader/fat32/bootsect.bin"
873
raw_files = {
874
 {"KOLIBRI.IMG", "kolibri.img"},
875
 {"KORDLDR.F32", "../kernel/trunk/bootloader/extended_primary_loader/fat32/kordldr.f32"},
876
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt.ext_loader"},
877
 {"CONFIG.INI", "../kernel/trunk/bootloader/extended_primary_loader/config.ini"},
8150 dunkaist 878
 {"EFI/BOOT/BOOTX64.EFI", "../kernel/trunk/bootloader/uefi4kos/bootx64.efi"},
879
 {"EFI/BOOT/BOOTIA32.EFI", "../kernel/trunk/bootloader/uefi4kos/bootia32.efi"},
880
 {"EFI/KOLIBRIOS/KOLIBRI.IMG", "kolibri.img"},
881
 {"EFI/KOLIBRIOS/KOLIBRI.INI", "../kernel/trunk/bootloader/uefi4kos/kolibri.ini"},
882
 {"EFI/KOLIBRIOS/KOLIBRI.KRN", "../kernel/trunk/kolibri.krn"}
8148 dunkaist 883
}
884
 
885
for i,v in ipairs(img_files) do
886
  raw_file = "KOLIBRIOS/" .. string.upper(v[1])
887
  local_file = v[2]
888
  tup.append_table(raw_files, {{raw_file, local_file}})
889
end
890
 
891
tup.append_table(raw_files, extra_files)
892
 
8091 dunkaist 893
make_raw_command = '^ MKIMG kolibri.raw^ ' -- for tup: don't write full command to logs
8148 dunkaist 894
make_raw_command = make_raw_command .. "dd if=/dev/zero of=kolibri.raw bs=1MiB count=128 2>&1"
8118 dunkaist 895
make_raw_command = make_raw_command .. " && parted --script kolibri.raw mktable gpt"
8148 dunkaist 896
make_raw_command = make_raw_command .. " && parted --script kolibri.raw unit MiB mkpart primary fat32 1 127"
8118 dunkaist 897
make_raw_command = make_raw_command .. " && parted --script kolibri.raw set 1 esp on"
898
make_raw_command = make_raw_command .. " && sgdisk kolibri.raw --hybrid 1:EE"
8148 dunkaist 899
make_raw_command = make_raw_command .. " && dd if=" .. raw_mbr .. " of=kolibri.raw bs=1 count=\\$((0x1b8)) conv=notrunc"
900
make_raw_command = make_raw_command .. " && dd if=" .. raw_mbr .. " of=kolibri.raw bs=1 count=1 skip=\\$((0x5a)) seek=\\$((0x1be)) conv=notrunc"
901
make_raw_command = make_raw_command .. " && mformat -i kolibri.raw@@1M -v KOLIBRIOS -T \\$(((128-1-1)*1024*1024/512)) -h 16 -s 32 -H 2048 -c 1 -F -B " .. raw_bootsector .. " ::"
8091 dunkaist 902
 
8148 dunkaist 903
-- generate list of directories to be created inside kolibri.raw
904
raw_dirs = {}
905
input_deps = {raw_mbr, raw_bootsector}
906
for i,v in ipairs(raw_files) do
907
  raw_file = v[1]
908
  local_file = v[2]
8091 dunkaist 909
 
8148 dunkaist 910
  if raw_file ~= "/" then
911
    slash_pos = 0
912
    while true do
913
      slash_pos = string.find(raw_file, '/', slash_pos + 1)
914
      if not slash_pos then break end
915
      table.insert(raw_dirs, string.sub(raw_file, 1, slash_pos - 1))
916
    end
917
  end
918
 
919
  -- tup does not want to see hidden files as dependencies
920
  if not string.match(local_file, "/%.") then
921
    table.insert(input_deps, v.group or local_file)
922
  end
923
end
924
 
925
-- img_files and extra_files have some common dirs with different case
926
for i,d in ipairs(raw_dirs) do
927
  raw_dirs[i] = string.upper(raw_dirs[i])
928
end
929
 
8091 dunkaist 930
-- make folders
8148 dunkaist 931
table.sort(raw_dirs)
932
for i,v in ipairs(raw_dirs) do
933
  if v ~= raw_dirs[i-1] then
934
    make_raw_command = make_raw_command .. ' && mmd -i kolibri.raw@@1M "::' .. v .. '"'
8091 dunkaist 935
  end
936
end
937
 
8148 dunkaist 938
-- copy files
939
for i,v in ipairs(raw_files) do
8091 dunkaist 940
  local_file = v[2]
8148 dunkaist 941
  make_raw_command = make_raw_command .. ' && mcopy -moi kolibri.raw@@1M "' .. local_file .. '" "::' .. v[1] .. '"'
8091 dunkaist 942
end
943
 
944
-- generate tup rule for kolibri.raw
945
tup.definerule{inputs = input_deps, command = make_raw_command, outputs = {"kolibri.raw"}}