Subversion Repositories Kolibri OS

Rev

Rev 8739 | Rev 8748 | 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"},
30
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
31
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
7053 leency 32
 {"File Managers/FNAV/ABOUT.TXT", "common/File Managers/fNav/About.txt"},
7029 0CodErr 33
 {"File Managers/FNAV/FNAV", "common/File Managers/fNav/fNav.kex"},
34
 {"File Managers/FNAV/FNAV.EXT", "common/File Managers/fNav/fnav.ext"},
35
 {"File Managers/FNAV/FNAV.SET", "common/File Managers/fNav/fnav.set"},
36
 {"File Managers/FNAV/FNAV_CUR.PNG", "common/File Managers/fNav/fnav_cur.png"},
37
 {"File Managers/FNAV/FNAV_FNT.PNG", "common/File Managers/fNav/fnav_fnt.png"},
7053 leency 38
 {"File Managers/FNAV/FNAV_ICN.PNG", "common/File Managers/fNav/fnav_icn.png"},
5764 leency 39
 {"FONTS/TAHOMA.KF", "common/fonts/tahoma.kf"},
6958 leency 40
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
41
 {"LIB/KMENU.OBJ", "common/lib/kmenu.obj"},
42
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
43
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
44
 {"MEDIA/IMGF/IMGF", "common/media/ImgF/ImgF"},
45
 {"MEDIA/IMGF/CEDG.OBJ", "common/media/ImgF/cEdg.obj"},
46
 {"MEDIA/IMGF/DITHER.OBJ", "common/media/ImgF/dither.obj"},
47
 {"MEDIA/IMGF/INVSOL.OBJ", "common/media/ImgF/invSol.obj"},
7633 leency 48
 {"MEDIA/PIXIESKN.PNG", PROGS .. "/cmm/pixie2/pixieskn.png"},
7211 nisargshah 49
 {"NETWORK/FTPC.INI", PROGS .. "/network/ftpc/ftpc.ini"},
6958 leency 50
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
51
 {"NETWORK/USERS.INI", "common/network/users.ini"},
7632 leency 52
 {"NETWORK/FTPC_SYS.PNG", PROGS .. "/network/ftpc/ftpc_sys.png"},
53
 {"NETWORK/FTPC_NOD.PNG", PROGS .. "/network/ftpc/ftpc_nod.png"},
7429 leency 54
 {"SETTINGS/APP.INI", "common/settings/app.ini"},
7519 leency 55
 {"SETTINGS/APP_PLUS.INI", "common/settings/app_plus.ini"},
7429 leency 56
 {"SETTINGS/ASSOC.INI", "common/settings/assoc.ini"},
5873 pathoswith 57
 {"SETTINGS/AUTORUN.DAT", "common/settings/AUTORUN.DAT"},
8738 leency 58
 {"SETTINGS/CEDIT.INI", PROGS .. "/develop/cedit/CEDIT.INI"},
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"},
8738 leency 295
 {"kolibrios/utils/t_edit.ini", PROGS .. "/other/t_edit/t_edit.ini"},
8739 leency 296
 {"kolibrios/utils/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
297
 {"kolibrios/utils/INFO/CPP_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
298
 {"kolibrios/utils/INFO/CPP_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
299
 {"kolibrios/utils/INFO/CPP_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
300
 {"kolibrios/utils/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
301
 {"kolibrios/utils/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
302
 {"kolibrios/utils/INFO/INI.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
6958 leency 303
 }
5098 clevermous 304
if build_type == "rus" then tup.append_table(extra_files, {
305
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
306
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
307
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
308
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
309
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
310
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
311
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
312
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
313
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
314
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
315
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
316
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
317
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
318
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
5471 leency 319
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
5098 clevermous 320
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
321
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
322
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
7650 leency 323
 {"kolibrios/games/ataka", "common/games/ataka/ataka_ru"},
5334 Anton_K 324
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
325
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
326
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
327
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
328
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
7928 leency 329
 {"kolibrios/games/sstartrek/SStarTrek", "common/games/sstartrek/SStarTrek_ru"},
7410 0CodErr 330
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/whowtbam"},
331
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/appdata.dat"},
7569 leency 332
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
333
 {"kolibrios/res/guide/", build_type .. "/docs/guide/*"},
5098 clevermous 334
}) else tup.append_table(extra_files, {
335
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
336
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
337
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
338
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
339
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
340
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
341
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
342
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
343
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
7650 leency 344
 {"kolibrios/games/ataka", "common/games/ataka/ataka_en"},
7928 leency 345
 {"kolibrios/games/sstartrek/SStarTrek", "common/games/sstartrek/SStarTrek_en"},
5098 clevermous 346
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
347
}) end
348
--[[
349
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
350
Same syntax as extra_files.
351
]]--
352
if build_type == "rus" then
353
distr_extra_files = {
354
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
355
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
356
}
357
else
358
distr_extra_files = {
359
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
360
}
361
end
362
--[[
363
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
364
Same syntax as extra_files.
365
]]--
366
if build_type == "rus" then
367
iso_extra_files = {
368
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
369
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
370
}
371
else
372
iso_extra_files = {
373
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
374
}
375
end
376
 
377
-- Programs that require FASM to compile.
378
if tup.getconfig('NO_FASM') ~= 'full' then
379
tup.append_table(img_files, {
380
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
7014 leency 381
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
7390 theonlymir 382
 {"@HOTANGLES", PROGS .. "/other/ha/HOTANGLES"},
7014 leency 383
 {"@ICON", PROGS .. "/system/icon_new/icon"},
5098 clevermous 384
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
7014 leency 385
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
386
 {"@OPEN", PROGS .. "/system/open/open"},
5454 leency 387
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
7658 leency 388
 {"@SS", PROGS .. "/system/scrsaver/scrsaver"},
7014 leency 389
 {"@VOLUME", PROGS .. "/media/volume/volume"},
7390 theonlymir 390
 {"HACONFIG", PROGS .. "/other/ha/HACONFIG"},
7647 leency 391
 {"APM", PROGS .. "/system/apm/apm"},
5098 clevermous 392
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
393
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
394
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
7160 leency 395
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
5098 clevermous 396
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
7900 leency 397
 {"CPUID", PROGS .. "/testing/cpuid/trunk/CPUID"},
7160 leency 398
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
6207 leency 399
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
7899 leency 400
 {"DISPTEST", PROGS .. "/testing/disptest/trunk/disptest"},
5098 clevermous 401
 {"END", PROGS .. "/system/end/light/end"},
7160 leency 402
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
7899 leency 403
 {"FSPEED", PROGS .. "/testing/fspeed/fspeed"},
5098 clevermous 404
 {"GMON", PROGS .. "/system/gmon/gmon"},
405
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
7899 leency 406
 {"KBD", PROGS .. "/testing/kbd/trunk/kbd"},
5098 clevermous 407
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
408
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
7160 leency 409
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
5098 clevermous 410
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
7899 leency 411
 {"MGB", PROGS .. "/testing/mgb/trunk/mgb"},
5098 clevermous 412
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
413
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
414
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
7900 leency 415
 {"PCIDEV", PROGS .. "/testing/pcidev/trunk/PCIDEV"},
5098 clevermous 416
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
417
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
418
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
419
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
420
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
7160 leency 421
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
422
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
7900 leency 423
 {"TEST", PROGS .. "/testing/protection/trunk/test"},
5098 clevermous 424
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
7160 leency 425
 {"UNZ", PROGS .. "/fs/unz/unz"},
5098 clevermous 426
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
427
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
428
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
7350 leency 429
 {"3D/3DCUBE2", PROGS .. "/demos/3dcube2/trunk/3DCUBE2"},
5098 clevermous 430
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
6736 leency 431
 {"3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
6387 leency 432
 {"3D/RAY", PROGS .. "/demos/ray/ray"},
8666 dunkaist 433
 {"3D/VIEW3DS", PROGS .. "/demos/view3ds/view3ds"},
5098 clevermous 434
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
435
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
436
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
437
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
438
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
439
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
440
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
441
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
7606 leency 442
 {"DEMOS/SPIRAL", PROGS .. "/demos/spiral/spiral"},
5098 clevermous 443
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
444
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
445
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
446
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
447
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
8365 leency 448
 {"DEVELOP/ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
5098 clevermous 449
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
8738 leency 450
 {"DEVELOP/CEDIT", PROGS .. "/develop/cedit/CEDIT"},
8365 leency 451
 {"DEVELOP/COBJ", PROGS .. "/develop/cObj/trunk/cObj"},
7839 leency 452
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/1.73/fasm"},
5098 clevermous 453
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
454
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
455
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
456
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
457
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
8365 leency 458
 {"DEVELOP/EXAMPLES/CONGET", PROGS .. "/develop/libraries/console_coff/examples/test_gets"},
459
 {"DEVELOP/EXAMPLES/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
460
 {"DEVELOP/EXAMPLES/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
5098 clevermous 461
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
462
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
463
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
464
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
465
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
466
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
7373 leency 467
 {"GAMES/LIGHTS", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
5098 clevermous 468
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
469
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
470
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
471
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
472
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
473
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
474
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
475
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
476
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
477
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
478
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
479
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
480
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
481
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
6699 clevermous 482
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console_coff/console.obj"},
6737 leency 483
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
8674 Coldy 484
 {"LIB/DLL.OBJ", PROGS .. "/develop/libraries/dll/dll.obj"},
6737 leency 485
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
5098 clevermous 486
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
487
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
488
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
489
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
490
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
491
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
6737 leency 492
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
6308 pathoswith 493
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
5098 clevermous 494
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
6737 leency 495
 {"LIB/TINYGL.OBJ", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
5098 clevermous 496
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
497
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
498
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
499
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
7484 leency 500
 {"MEDIA/MP3INFO", PROGS .. "/media/mp3info/mp3info"},
5098 clevermous 501
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
7650 leency 502
 {"MEDIA/PIANO", PROGS .. "/media/piano/piano"},
5098 clevermous 503
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
6029 hidnplayr 504
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
5098 clevermous 505
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
506
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
8418 leency 507
 {"NETWORK/NSINST", PROGS .. "/network/netsurf/nsinstall"},
5098 clevermous 508
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
509
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
510
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
7640 leency 511
 {"NETWORK/SNTP", PROGS .. "/network/sntp/sntp"},
5098 clevermous 512
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
5495 hidnplayr 513
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
5098 clevermous 514
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
515
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
516
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
517
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
518
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
5869 hidnplayr 519
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
5098 clevermous 520
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
521
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
7811 leency 522
 {"DRIVERS/AR81XX.SYS", "../drivers/ethernet/ar81xx.sys"},
5098 clevermous 523
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
524
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
525
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
526
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
527
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
528
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
529
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
530
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
531
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
532
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
533
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
534
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
535
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
536
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
537
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
538
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
539
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
540
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
541
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
542
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
543
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
544
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
545
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
546
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
547
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
548
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
549
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
550
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
551
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
552
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
553
})
554
tup.append_table(extra_files, {
555
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
556
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
557
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
558
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
559
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
560
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
561
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
562
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
563
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
564
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
7458 leency 565
 {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
7931 leency 566
 {"kolibrios/3D/flatwav", PROGS .. "/demos/flatwav/trunk/flatwav"},
7222 leency 567
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
568
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
7458 leency 569
 {"kolibrios/3D/mos3de", PROGS .. "/demos/mos3de/mos3de"},
7222 leency 570
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
571
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
572
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
573
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
574
 {"kolibrios/3D/textures1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
6991 leency 575
 {"kolibrios/demos/buddhabrot", PROGS .. "/demos/buddhabrot/trunk/buddhabrot"},
7525 leency 576
 {"kolibrios/demos/life3", PROGS .. "/games/life3/trunk/life3"},
6991 leency 577
 {"kolibrios/demos/qjulia", PROGS .. "/demos/qjulia/trunk/qjulia"},
578
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
6033 leency 579
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
6179 leency 580
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
6180 leency 581
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
5335 yogev_ezra 582
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
583
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
5379 serge 584
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
6991 leency 585
 {"kolibrios/games/megamaze", PROGS .. "/games/megamaze/trunk/megamaze"},
5467 leency 586
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
6991 leency 587
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
588
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
8018 leency 589
 {"kolibrios/media/img_transform", PROGS .. "/media/img_transform/img_transform"},
5098 clevermous 590
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
591
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
592
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
593
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
594
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
595
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
596
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
6991 leency 597
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
8742 leency 598
 {"kolibrios/utils/t_edit", PROGS .. "/other/t_edit/t_edit"},
5098 clevermous 599
})
600
-- For russian build, add russian-only programs.
601
if build_type == "rus" then tup.append_table(img_files, {
602
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
7660 leency 603
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
8365 leency 604
 {"DEVELOP/EXAMPLES/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_rus"},
5098 clevermous 605
}) else tup.append_table(img_files, {
6699 clevermous 606
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_eng"},
5098 clevermous 607
}) end
608
 
5334 Anton_K 609
if build_type == "rus" then tup.append_table(extra_files, {
610
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
611
}) end
612
 
5098 clevermous 613
end -- tup.getconfig('NO_FASM') ~= 'full'
614
 
615
-- Programs that require NASM to compile.
616
if tup.getconfig('NO_NASM') ~= 'full' then
617
tup.append_table(img_files, {
8365 leency 618
 {"ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
6952 leency 619
 {"LOD", PROGS .. "/fs/lod/lod"},
8365 leency 620
 {"TIMER", PROGS .. "/other/Timer/timer"},
6952 leency 621
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
622
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
5098 clevermous 623
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
6998 0CodErr 624
 {"MEDIA/FILLSCR", PROGS .. "/media/FillScr/fillscr"},
5098 clevermous 625
})
7664 dunkaist 626
tup.append_table(extra_files, {
627
 {"kolibrios/develop/utils/GenFiles", PROGS .. "/testing/genfiles/GenFiles"},
628
})
5098 clevermous 629
end -- tup.getconfig('NO_NASM') ~= 'full'
630
 
7081 0CodErr 631
-- Programs that require JWASM to compile.
632
if tup.getconfig('NO_JWASM') ~= 'full' then
633
tup.append_table(img_files, {
634
 {"RUN", PROGS .. "/system/RunOD/1/RUN"},
7492 0CodErr 635
 {"LIB/INPUTBOX.OBJ", PROGS .. "/develop/libraries/InputBox/INPUTBOX.OBJ"},
7081 0CodErr 636
})
637
end -- tup.getconfig('NO_JWASM') ~= 'full'
638
 
5098 clevermous 639
-- Programs that require C-- to compile.
640
if tup.getconfig('NO_CMM') ~= 'full' then
641
tup.append_table(img_files, {
6776 leency 642
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
7911 leency 643
 {"EASYSHOT", PROGS .. "/cmm/misc/easyshot.com"},
7370 leency 644
 {"MOUSECFG", PROGS .. "/cmm/mousecfg/mousecfg.com"},
7630 leency 645
 {"BARSCFG", PROGS .. "/cmm/barscfg/barscfg.com"},
7911 leency 646
 {"SYSPANEL", PROGS .. "/cmm/misc/software_widget.com"},
7370 leency 647
 {"SYSMON", PROGS .. "/cmm/sysmon/sysmon.com"},
7946 leency 648
 {"QUARK", PROGS .. "/cmm/quark/quark.com"},
6776 leency 649
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
6569 leency 650
 {"DEVELOP/CLIPVIEW", PROGS .. "/cmm/clipview/clipview.com"},
7778 leency 651
 {"DEVELOP/MENU", PROGS .. "/cmm/menu/menu.com"},
7911 leency 652
 {"DEVELOP/PIPET", PROGS .. "/cmm/misc/pipet.com"},
5098 clevermous 653
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
7472 leency 654
 {"KF_VIEW", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
5098 clevermous 655
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
7911 leency 656
 {"GAMES/MBLOCKS", PROGS .. "/cmm/misc/mblocks.com"},
6748 leency 657
 {"DEVELOP/DIFF", PROGS .. "/cmm/diff/diff.com"},
5098 clevermous 658
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
6776 leency 659
 {"GAMES/FLOOD-IT", PROGS .. "/games/flood-it/trunk/flood-it.com"},
5098 clevermous 660
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
7630 leency 661
 {"MEDIA/PIXIE", PROGS .. "/cmm/pixie2/pixie.com"},
7254 leency 662
 {"MEDIA/ICONEDIT", PROGS .. "/cmm/iconedit/iconedit.com"},
8278 leency 663
 {"NETWORK/DL", PROGS .. "/cmm/downloader/dl.com"},
5632 leency 664
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
5098 clevermous 665
})
6776 leency 666
tup.append_table(extra_files, {
7541 leency 667
 {"kolibrios/drivers/drvinst.kex", PROGS .. "/cmm/drvinst/drvinst.com"},
7542 leency 668
 {"kolibrios/games/pig/pigex", PROGS .. "/cmm/examples/pigex.com"},
6991 leency 669
 {"kolibrios/games/the_bus/the_bus", PROGS .. "/cmm/the_bus/the_bus.com"},
7654 leency 670
 {"kolibrios/KolibriNext/install.kex", PROGS .. "/cmm/installer/install.com"},
7592 leency 671
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
7541 leency 672
 {"kolibrios/utils/dicty.kex", PROGS .. "/cmm/dicty/dicty.com"},
7640 leency 673
 {"kolibrios/utils/notes", PROGS .. "/cmm/notes/notes.com"},
6776 leency 674
})
5098 clevermous 675
end -- tup.getconfig('NO_CMM') ~= 'full'
676
 
677
-- Programs that require MSVC to compile.
678
if tup.getconfig('NO_MSVC') ~= 'full' then
679
tup.append_table(img_files, {
680
 {"GRAPH", PROGS .. "/other/graph/graph"},
681
 {"TABLE", PROGS .. "/other/table/table"},
682
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
683
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
5113 clevermous 684
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
5115 clevermous 685
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
5098 clevermous 686
})
5110 clevermous 687
tup.append_table(extra_files, {
5109 clevermous 688
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
5276 ZblCoder 689
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
5109 clevermous 690
})
5098 clevermous 691
end -- tup.getconfig('NO_MSVC') ~= 'full'
692
 
8460 superturbo 693
-- Programs that require TCC to compile.
694
if tup.getconfig('NO_TCC') ~= 'full' then
8516 superturbo 695
tup.append_table(img_files, {
696
 {"NETWORK/WHOIS", PROGS .. "/network/whois/whois"},
8684 turbocat 697
-- {"NETWORK/WEATHER", PROGS .. "/other/Weather/weather"},
8516 superturbo 698
})
8460 superturbo 699
tup.append_table(extra_files, {
700
 {"kolibrios/utils/thashview", PROGS .. "/other/TinyHashView/thashview"},
8471 superturbo 701
 {"kolibrios/develop/TinyBasic/", PROGS .. "/develop/tinybasic/TinyBasic"},
702
 {"kolibrios/develop/TinyBasic/", PROGS .. "/develop/tinybasic/TBuserMan.txt"},
8472 superturbo 703
 {"kolibrios/utils/teatool", PROGS .. "/other/TEAtool/teatool"},
8559 rgimad 704
 {"kolibrios/utils/passwordgen", PROGS .. "/other/PasswordGen/passwordgen"},
8585 rgimad 705
 {"kolibrios/media/qr_tool", PROGS .. "/media/qr_tool/qr_tool"},
8736 turbocat 706
 {"kolibrios/utils/weather", PROGS .. "/other/Weather/weather"},
8460 superturbo 707
})
708
end -- tup.getconfig('NO_TCC') ~= 'full'
709
 
5098 clevermous 710
-- Programs that require GCC to compile.
711
if tup.getconfig('NO_GCC') ~= 'full' then
712
tup.append_table(img_files, {
5111 clevermous 713
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
5098 clevermous 714
 {"SHELL", PROGS .. "/system/shell/shell"},
8693 turbocat 715
 {"LIB/LIBC.OBJ", PROGS .. "/develop/libraries/kolibri-libc/source/libc.obj"},
5098 clevermous 716
})
717
tup.append_table(extra_files, {
8529 maxcodehac 718
-- {"kolibrios/3D/cubeline", PROGS .. "/demos/cubeline/trunk/cubeline"},
5098 clevermous 719
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
8375 maxcodehac 720
 {"kolibrios/emul/uarm/", "../contrib/other/uarm/uARM"},
7531 leency 721
 {"kolibrios/games/2048", PROGS .. "/games/2048/2048"},
7528 leency 722
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
7531 leency 723
 {"kolibrios/games/heliothryx", PROGS .. "/games/heliothryx/heliothryx"},
724
 {"kolibrios/games/marblematch3", PROGS .. "/games/marblematch3/marblematch3"},
725
 {"kolibrios/games/nsider", PROGS .. "/games/nsider/nsider"},
5131 clevermous 726
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
727
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
8318 maxcodehac 728
 {"kolibrios/games/fridge/", PROGS .. "/games/fridge/fridge"},
8650 turbocat 729
 {"kolibrios/games/", PROGS .. "/games/checkers/trunk/checkers"},
8653 turbocat 730
 {"kolibrios/games/wolf3d/", "../contrib/games/wolf3d/wolf3d"},
731
 {"kolibrios/games/wolf3d/", "common/games/wolf3d/*"},
5098 clevermous 732
})
5327 igevorse 733
-- For russian build, add russian-only programs.
5329 igevorse 734
if build_type == "rus" then tup.append_table(extra_files, {
7531 leency 735
 {"kolibrios/games/21days", PROGS .. "/games/21days/21days"},
5328 igevorse 736
}) end
5098 clevermous 737
end -- tup.getconfig('NO_GCC') ~= 'full'
738
 
739
-- Skins.
740
tup.include("../skins/skinlist.lua")
741
 
742
--[================================[ CODE ]================================]--
743
-- expand extra_files and similar
744
function expand_extra_files(files)
745
  local result = {}
746
  for i,v in ipairs(files) do
747
    if string.match(v[2], "%*")
748
    then
749
      local g = tup.glob(v[2])
750
      for j,x in ipairs(g) do
5132 clevermous 751
        table.insert(result, {v[1], x, group=v.group})
5098 clevermous 752
      end
753
    else
754
      if v.cp1251_from then
755
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
756
      end
5132 clevermous 757
      table.insert(result, {v[1], v[2], group=v.group})
5098 clevermous 758
    end
759
  end
760
  return result
761
end
762
 
763
-- append skins to extra_files
764
for i,v in ipairs(skinlist) do
6094 leency 765
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
5098 clevermous 766
end
767
 
768
-- prepare distr_extra_files and iso_extra_files: expand and append common part
769
extra_files = expand_extra_files(extra_files)
770
distr_extra_files = expand_extra_files(distr_extra_files)
771
iso_extra_files = expand_extra_files(iso_extra_files)
772
tup.append_table(distr_extra_files, extra_files)
773
tup.append_table(iso_extra_files, extra_files)
774
 
775
-- generate list of directories to be created inside kolibri.img
776
img_dirs = {}
777
input_deps = {}
778
for i,v in ipairs(img_files) do
779
  img_file = v[1]
780
  local_file = v[2]
781
 
782
  slash_pos = 0
783
  while true do
784
    slash_pos = string.find(img_file, '/', slash_pos + 1)
785
    if not slash_pos then break end
786
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
787
  end
788
 
789
  -- tup does not want to see hidden files as dependencies
790
  if not string.match(local_file, "/%.") then
5132 clevermous 791
    table.insert(input_deps, v.group or local_file)
5098 clevermous 792
  end
793
end
794
 
795
-- create empty 1.44M file
5118 clevermous 796
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
797
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
5098 clevermous 798
-- format it as a standard 1.44M floppy
799
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
800
-- copy bootloader
801
if tup.getconfig("NO_FASM") ~= "full" then
802
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
803
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
804
table.insert(input_deps, bootloader)
805
end
806
-- make folders
807
table.sort(img_dirs)
808
for i,v in ipairs(img_dirs) do
809
  if v ~= img_dirs[i-1] then
810
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
811
  end
812
end
813
-- copy files
8060 clevermous 814
output_deps = {"kolibri.img"}
5098 clevermous 815
for i,v in ipairs(img_files) do
816
  local_file = v[2]
817
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
818
  then
819
    -- for kernel.mnt, insert autobuild revision identifier
820
    -- from .revision to .kernel.mnt
821
    -- note that .revision and .kernel.mnt must begin with .
822
    -- to prevent tup from tracking them
823
    if build_type == "rus"
8060 clevermous 824
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(get-current-revision)]"|iconv -f utf8 -t cp866)'
825
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(get-current-revision)]")'
5098 clevermous 826
    end
827
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
828
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
829
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
830
    make_img_command = make_img_command .. " && str=" .. str
831
    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'
832
    local_file = ".kernel.mnt"
8060 clevermous 833
    table.insert(output_deps, local_file)
5098 clevermous 834
  end
835
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
836
end
837
 
838
-- generate tup rule for kolibri.img
8060 clevermous 839
tup.definerule{inputs = input_deps, command = make_img_command, outputs = output_deps}
5098 clevermous 840
 
841
-- generate command and dependencies for mkisofs
842
input_deps = {"kolibri.img"}
843
iso_files_list = ""
844
for i,v in ipairs(iso_extra_files) do
845
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
5132 clevermous 846
  table.insert(input_deps, v.group or v[2])
5098 clevermous 847
end
848
 
849
-- generate tup rule for kolibri.iso
850
if tup.getconfig("INSERT_REVISION_ID") ~= ""
851
then volume_id = "KolibriOS r`cat .revision`"
852
else volume_id = "KolibriOS"
853
end
854
tup.definerule{inputs = input_deps, command =
5118 clevermous 855
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
5098 clevermous 856
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
857
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
858
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
859
  outputs = {"kolibri.iso"}}
860
 
861
-- generate command and dependencies for distribution kit
5104 clevermous 862
cp = 'cp "%f" "%o"'
5102 clevermous 863
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
5098 clevermous 864
for i,v in ipairs(distr_extra_files) do
5132 clevermous 865
  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 866
  if string.sub(v[1], -1) == "/"
5132 clevermous 867
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
868
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
5098 clevermous 869
  end
870
end
8091 dunkaist 871
 
8150 dunkaist 872
-- build kolibri.raw
8148 dunkaist 873
raw_mbr = "../programs/hd_load/usb_boot/mbr"
874
raw_bootsector = "../kernel/trunk/bootloader/extended_primary_loader/fat32/bootsect.bin"
875
raw_files = {
876
 {"KOLIBRI.IMG", "kolibri.img"},
877
 {"KORDLDR.F32", "../kernel/trunk/bootloader/extended_primary_loader/fat32/kordldr.f32"},
878
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt.ext_loader"},
879
 {"CONFIG.INI", "../kernel/trunk/bootloader/extended_primary_loader/config.ini"},
8150 dunkaist 880
 {"EFI/BOOT/BOOTX64.EFI", "../kernel/trunk/bootloader/uefi4kos/bootx64.efi"},
881
 {"EFI/BOOT/BOOTIA32.EFI", "../kernel/trunk/bootloader/uefi4kos/bootia32.efi"},
882
 {"EFI/KOLIBRIOS/KOLIBRI.IMG", "kolibri.img"},
883
 {"EFI/KOLIBRIOS/KOLIBRI.INI", "../kernel/trunk/bootloader/uefi4kos/kolibri.ini"},
884
 {"EFI/KOLIBRIOS/KOLIBRI.KRN", "../kernel/trunk/kolibri.krn"}
8148 dunkaist 885
}
886
 
887
for i,v in ipairs(img_files) do
888
  raw_file = "KOLIBRIOS/" .. string.upper(v[1])
889
  local_file = v[2]
890
  tup.append_table(raw_files, {{raw_file, local_file}})
891
end
892
 
893
tup.append_table(raw_files, extra_files)
894
 
8091 dunkaist 895
make_raw_command = '^ MKIMG kolibri.raw^ ' -- for tup: don't write full command to logs
8148 dunkaist 896
make_raw_command = make_raw_command .. "dd if=/dev/zero of=kolibri.raw bs=1MiB count=128 2>&1"
8118 dunkaist 897
make_raw_command = make_raw_command .. " && parted --script kolibri.raw mktable gpt"
8148 dunkaist 898
make_raw_command = make_raw_command .. " && parted --script kolibri.raw unit MiB mkpart primary fat32 1 127"
8118 dunkaist 899
make_raw_command = make_raw_command .. " && parted --script kolibri.raw set 1 esp on"
900
make_raw_command = make_raw_command .. " && sgdisk kolibri.raw --hybrid 1:EE"
8148 dunkaist 901
make_raw_command = make_raw_command .. " && dd if=" .. raw_mbr .. " of=kolibri.raw bs=1 count=\\$((0x1b8)) conv=notrunc"
902
make_raw_command = make_raw_command .. " && dd if=" .. raw_mbr .. " of=kolibri.raw bs=1 count=1 skip=\\$((0x5a)) seek=\\$((0x1be)) conv=notrunc"
903
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 904
 
8148 dunkaist 905
-- generate list of directories to be created inside kolibri.raw
906
raw_dirs = {}
907
input_deps = {raw_mbr, raw_bootsector}
908
for i,v in ipairs(raw_files) do
909
  raw_file = v[1]
910
  local_file = v[2]
8091 dunkaist 911
 
8148 dunkaist 912
  if raw_file ~= "/" then
913
    slash_pos = 0
914
    while true do
915
      slash_pos = string.find(raw_file, '/', slash_pos + 1)
916
      if not slash_pos then break end
917
      table.insert(raw_dirs, string.sub(raw_file, 1, slash_pos - 1))
918
    end
919
  end
920
 
921
  -- tup does not want to see hidden files as dependencies
922
  if not string.match(local_file, "/%.") then
923
    table.insert(input_deps, v.group or local_file)
924
  end
925
end
926
 
927
-- img_files and extra_files have some common dirs with different case
928
for i,d in ipairs(raw_dirs) do
929
  raw_dirs[i] = string.upper(raw_dirs[i])
930
end
931
 
8091 dunkaist 932
-- make folders
8148 dunkaist 933
table.sort(raw_dirs)
934
for i,v in ipairs(raw_dirs) do
935
  if v ~= raw_dirs[i-1] then
936
    make_raw_command = make_raw_command .. ' && mmd -i kolibri.raw@@1M "::' .. v .. '"'
8091 dunkaist 937
  end
938
end
939
 
8148 dunkaist 940
-- copy files
941
for i,v in ipairs(raw_files) do
8091 dunkaist 942
  local_file = v[2]
8148 dunkaist 943
  make_raw_command = make_raw_command .. ' && mcopy -moi kolibri.raw@@1M "' .. local_file .. '" "::' .. v[1] .. '"'
8091 dunkaist 944
end
945
 
946
-- generate tup rule for kolibri.raw
947
tup.definerule{inputs = input_deps, command = make_raw_command, outputs = {"kolibri.raw"}}