Subversion Repositories Kolibri OS

Rev

Rev 8736 | Rev 8739 | 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"},
6958 leency 296
 }
5098 clevermous 297
if build_type == "rus" then tup.append_table(extra_files, {
298
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
299
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
300
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
301
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
302
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
303
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
304
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
305
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
306
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
307
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
308
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
309
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
310
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
311
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
5471 leency 312
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
5098 clevermous 313
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
314
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
315
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
7650 leency 316
 {"kolibrios/games/ataka", "common/games/ataka/ataka_ru"},
5334 Anton_K 317
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
318
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
319
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
320
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
321
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
7928 leency 322
 {"kolibrios/games/sstartrek/SStarTrek", "common/games/sstartrek/SStarTrek_ru"},
7410 0CodErr 323
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/whowtbam"},
324
 {"kolibrios/games/WHOWTBAM/", build_type .. "/games/appdata.dat"},
7569 leency 325
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
326
 {"kolibrios/res/guide/", build_type .. "/docs/guide/*"},
5098 clevermous 327
}) else tup.append_table(extra_files, {
328
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
329
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
330
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
331
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
332
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
333
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
334
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
335
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
336
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
7650 leency 337
 {"kolibrios/games/ataka", "common/games/ataka/ataka_en"},
7928 leency 338
 {"kolibrios/games/sstartrek/SStarTrek", "common/games/sstartrek/SStarTrek_en"},
5098 clevermous 339
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
340
}) end
341
--[[
342
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
343
Same syntax as extra_files.
344
]]--
345
if build_type == "rus" then
346
distr_extra_files = {
347
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
348
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
349
}
350
else
351
distr_extra_files = {
352
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
353
}
354
end
355
--[[
356
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
357
Same syntax as extra_files.
358
]]--
359
if build_type == "rus" then
360
iso_extra_files = {
361
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
362
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
363
}
364
else
365
iso_extra_files = {
366
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
367
}
368
end
369
 
370
-- Programs that require FASM to compile.
371
if tup.getconfig('NO_FASM') ~= 'full' then
372
tup.append_table(img_files, {
373
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
7014 leency 374
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
7390 theonlymir 375
 {"@HOTANGLES", PROGS .. "/other/ha/HOTANGLES"},
7014 leency 376
 {"@ICON", PROGS .. "/system/icon_new/icon"},
5098 clevermous 377
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
7014 leency 378
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
379
 {"@OPEN", PROGS .. "/system/open/open"},
5454 leency 380
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
7658 leency 381
 {"@SS", PROGS .. "/system/scrsaver/scrsaver"},
7014 leency 382
 {"@VOLUME", PROGS .. "/media/volume/volume"},
7390 theonlymir 383
 {"HACONFIG", PROGS .. "/other/ha/HACONFIG"},
7647 leency 384
 {"APM", PROGS .. "/system/apm/apm"},
5098 clevermous 385
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
386
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
387
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
7160 leency 388
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
5098 clevermous 389
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
7900 leency 390
 {"CPUID", PROGS .. "/testing/cpuid/trunk/CPUID"},
7160 leency 391
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
6207 leency 392
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
7899 leency 393
 {"DISPTEST", PROGS .. "/testing/disptest/trunk/disptest"},
5098 clevermous 394
 {"END", PROGS .. "/system/end/light/end"},
7160 leency 395
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
7899 leency 396
 {"FSPEED", PROGS .. "/testing/fspeed/fspeed"},
5098 clevermous 397
 {"GMON", PROGS .. "/system/gmon/gmon"},
398
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
7899 leency 399
 {"KBD", PROGS .. "/testing/kbd/trunk/kbd"},
5098 clevermous 400
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
401
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
7160 leency 402
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
5098 clevermous 403
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
7899 leency 404
 {"MGB", PROGS .. "/testing/mgb/trunk/mgb"},
5098 clevermous 405
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
406
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
407
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
7900 leency 408
 {"PCIDEV", PROGS .. "/testing/pcidev/trunk/PCIDEV"},
5098 clevermous 409
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
410
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
411
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
412
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
413
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
7160 leency 414
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
415
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
7900 leency 416
 {"TEST", PROGS .. "/testing/protection/trunk/test"},
5098 clevermous 417
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
7160 leency 418
 {"UNZ", PROGS .. "/fs/unz/unz"},
5098 clevermous 419
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
420
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
421
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
7350 leency 422
 {"3D/3DCUBE2", PROGS .. "/demos/3dcube2/trunk/3DCUBE2"},
5098 clevermous 423
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
6736 leency 424
 {"3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
6387 leency 425
 {"3D/RAY", PROGS .. "/demos/ray/ray"},
8666 dunkaist 426
 {"3D/VIEW3DS", PROGS .. "/demos/view3ds/view3ds"},
5098 clevermous 427
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
428
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
429
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
430
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
431
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
432
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
433
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
434
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
7606 leency 435
 {"DEMOS/SPIRAL", PROGS .. "/demos/spiral/spiral"},
5098 clevermous 436
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
437
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
438
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
439
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
440
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
8365 leency 441
 {"DEVELOP/ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
5098 clevermous 442
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
8738 leency 443
 {"DEVELOP/CEDIT", PROGS .. "/develop/cedit/CEDIT"},
8365 leency 444
 {"DEVELOP/COBJ", PROGS .. "/develop/cObj/trunk/cObj"},
7839 leency 445
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/1.73/fasm"},
5098 clevermous 446
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
447
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
448
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
449
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
450
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
8365 leency 451
 {"DEVELOP/EXAMPLES/CONGET", PROGS .. "/develop/libraries/console_coff/examples/test_gets"},
452
 {"DEVELOP/EXAMPLES/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
453
 {"DEVELOP/EXAMPLES/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
5098 clevermous 454
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
7631 leency 455
 {"DEVELOP/INFO/CPP_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
456
 {"DEVELOP/INFO/CPP_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
457
 {"DEVELOP/INFO/CPP_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
5098 clevermous 458
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
459
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
7631 leency 460
 {"DEVELOP/INFO/INI.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
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"},
5098 clevermous 598
})
599
-- For russian build, add russian-only programs.
600
if build_type == "rus" then tup.append_table(img_files, {
601
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
7660 leency 602
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
8365 leency 603
 {"DEVELOP/EXAMPLES/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_rus"},
5098 clevermous 604
}) else tup.append_table(img_files, {
6699 clevermous 605
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console_coff/examples/testcon2_eng"},
5098 clevermous 606
}) end
607
 
5334 Anton_K 608
if build_type == "rus" then tup.append_table(extra_files, {
609
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
610
}) end
611
 
5098 clevermous 612
end -- tup.getconfig('NO_FASM') ~= 'full'
613
 
614
-- Programs that require NASM to compile.
615
if tup.getconfig('NO_NASM') ~= 'full' then
616
tup.append_table(img_files, {
8365 leency 617
 {"ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
6952 leency 618
 {"LOD", PROGS .. "/fs/lod/lod"},
8365 leency 619
 {"TIMER", PROGS .. "/other/Timer/timer"},
6952 leency 620
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
621
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
5098 clevermous 622
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
6998 0CodErr 623
 {"MEDIA/FILLSCR", PROGS .. "/media/FillScr/fillscr"},
5098 clevermous 624
})
7664 dunkaist 625
tup.append_table(extra_files, {
626
 {"kolibrios/develop/utils/GenFiles", PROGS .. "/testing/genfiles/GenFiles"},
627
})
5098 clevermous 628
end -- tup.getconfig('NO_NASM') ~= 'full'
629
 
7081 0CodErr 630
-- Programs that require JWASM to compile.
631
if tup.getconfig('NO_JWASM') ~= 'full' then
632
tup.append_table(img_files, {
633
 {"RUN", PROGS .. "/system/RunOD/1/RUN"},
7492 0CodErr 634
 {"LIB/INPUTBOX.OBJ", PROGS .. "/develop/libraries/InputBox/INPUTBOX.OBJ"},
7081 0CodErr 635
})
636
end -- tup.getconfig('NO_JWASM') ~= 'full'
637
 
5098 clevermous 638
-- Programs that require C-- to compile.
639
if tup.getconfig('NO_CMM') ~= 'full' then
640
tup.append_table(img_files, {
6776 leency 641
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
7911 leency 642
 {"EASYSHOT", PROGS .. "/cmm/misc/easyshot.com"},
7370 leency 643
 {"MOUSECFG", PROGS .. "/cmm/mousecfg/mousecfg.com"},
7630 leency 644
 {"BARSCFG", PROGS .. "/cmm/barscfg/barscfg.com"},
7911 leency 645
 {"SYSPANEL", PROGS .. "/cmm/misc/software_widget.com"},
7370 leency 646
 {"SYSMON", PROGS .. "/cmm/sysmon/sysmon.com"},
7946 leency 647
 {"QUARK", PROGS .. "/cmm/quark/quark.com"},
6776 leency 648
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
6569 leency 649
 {"DEVELOP/CLIPVIEW", PROGS .. "/cmm/clipview/clipview.com"},
7778 leency 650
 {"DEVELOP/MENU", PROGS .. "/cmm/menu/menu.com"},
7911 leency 651
 {"DEVELOP/PIPET", PROGS .. "/cmm/misc/pipet.com"},
5098 clevermous 652
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
7472 leency 653
 {"KF_VIEW", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
5098 clevermous 654
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
7911 leency 655
 {"GAMES/MBLOCKS", PROGS .. "/cmm/misc/mblocks.com"},
6748 leency 656
 {"DEVELOP/DIFF", PROGS .. "/cmm/diff/diff.com"},
5098 clevermous 657
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
6776 leency 658
 {"GAMES/FLOOD-IT", PROGS .. "/games/flood-it/trunk/flood-it.com"},
5098 clevermous 659
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
7630 leency 660
 {"MEDIA/PIXIE", PROGS .. "/cmm/pixie2/pixie.com"},
7254 leency 661
 {"MEDIA/ICONEDIT", PROGS .. "/cmm/iconedit/iconedit.com"},
8278 leency 662
 {"NETWORK/DL", PROGS .. "/cmm/downloader/dl.com"},
5632 leency 663
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
5098 clevermous 664
})
6776 leency 665
tup.append_table(extra_files, {
7541 leency 666
 {"kolibrios/drivers/drvinst.kex", PROGS .. "/cmm/drvinst/drvinst.com"},
7542 leency 667
 {"kolibrios/games/pig/pigex", PROGS .. "/cmm/examples/pigex.com"},
6991 leency 668
 {"kolibrios/games/the_bus/the_bus", PROGS .. "/cmm/the_bus/the_bus.com"},
7654 leency 669
 {"kolibrios/KolibriNext/install.kex", PROGS .. "/cmm/installer/install.com"},
7592 leency 670
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
7541 leency 671
 {"kolibrios/utils/dicty.kex", PROGS .. "/cmm/dicty/dicty.com"},
7640 leency 672
 {"kolibrios/utils/notes", PROGS .. "/cmm/notes/notes.com"},
6776 leency 673
})
5098 clevermous 674
end -- tup.getconfig('NO_CMM') ~= 'full'
675
 
676
-- Programs that require MSVC to compile.
677
if tup.getconfig('NO_MSVC') ~= 'full' then
678
tup.append_table(img_files, {
679
 {"GRAPH", PROGS .. "/other/graph/graph"},
680
 {"TABLE", PROGS .. "/other/table/table"},
681
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
682
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
5113 clevermous 683
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
5115 clevermous 684
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
5098 clevermous 685
})
5110 clevermous 686
tup.append_table(extra_files, {
5109 clevermous 687
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
5276 ZblCoder 688
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
5109 clevermous 689
})
5098 clevermous 690
end -- tup.getconfig('NO_MSVC') ~= 'full'
691
 
8460 superturbo 692
-- Programs that require TCC to compile.
693
if tup.getconfig('NO_TCC') ~= 'full' then
8516 superturbo 694
tup.append_table(img_files, {
695
 {"NETWORK/WHOIS", PROGS .. "/network/whois/whois"},
8684 turbocat 696
-- {"NETWORK/WEATHER", PROGS .. "/other/Weather/weather"},
8516 superturbo 697
})
8460 superturbo 698
tup.append_table(extra_files, {
699
 {"kolibrios/utils/thashview", PROGS .. "/other/TinyHashView/thashview"},
8471 superturbo 700
 {"kolibrios/develop/TinyBasic/", PROGS .. "/develop/tinybasic/TinyBasic"},
701
 {"kolibrios/develop/TinyBasic/", PROGS .. "/develop/tinybasic/TBuserMan.txt"},
8472 superturbo 702
 {"kolibrios/utils/teatool", PROGS .. "/other/TEAtool/teatool"},
8559 rgimad 703
 {"kolibrios/utils/passwordgen", PROGS .. "/other/PasswordGen/passwordgen"},
8585 rgimad 704
 {"kolibrios/media/qr_tool", PROGS .. "/media/qr_tool/qr_tool"},
8736 turbocat 705
 {"kolibrios/utils/weather", PROGS .. "/other/Weather/weather"},
8460 superturbo 706
})
707
end -- tup.getconfig('NO_TCC') ~= 'full'
708
 
5098 clevermous 709
-- Programs that require GCC to compile.
710
if tup.getconfig('NO_GCC') ~= 'full' then
711
tup.append_table(img_files, {
5111 clevermous 712
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
5098 clevermous 713
 {"SHELL", PROGS .. "/system/shell/shell"},
8693 turbocat 714
 {"LIB/LIBC.OBJ", PROGS .. "/develop/libraries/kolibri-libc/source/libc.obj"},
5098 clevermous 715
})
716
tup.append_table(extra_files, {
8529 maxcodehac 717
-- {"kolibrios/3D/cubeline", PROGS .. "/demos/cubeline/trunk/cubeline"},
5098 clevermous 718
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
8375 maxcodehac 719
 {"kolibrios/emul/uarm/", "../contrib/other/uarm/uARM"},
7531 leency 720
 {"kolibrios/games/2048", PROGS .. "/games/2048/2048"},
7528 leency 721
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
7531 leency 722
 {"kolibrios/games/heliothryx", PROGS .. "/games/heliothryx/heliothryx"},
723
 {"kolibrios/games/marblematch3", PROGS .. "/games/marblematch3/marblematch3"},
724
 {"kolibrios/games/nsider", PROGS .. "/games/nsider/nsider"},
5131 clevermous 725
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
726
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
8318 maxcodehac 727
 {"kolibrios/games/fridge/", PROGS .. "/games/fridge/fridge"},
8650 turbocat 728
 {"kolibrios/games/", PROGS .. "/games/checkers/trunk/checkers"},
8653 turbocat 729
 {"kolibrios/games/wolf3d/", "../contrib/games/wolf3d/wolf3d"},
730
 {"kolibrios/games/wolf3d/", "common/games/wolf3d/*"},
5098 clevermous 731
})
5327 igevorse 732
-- For russian build, add russian-only programs.
5329 igevorse 733
if build_type == "rus" then tup.append_table(extra_files, {
7531 leency 734
 {"kolibrios/games/21days", PROGS .. "/games/21days/21days"},
5328 igevorse 735
}) end
5098 clevermous 736
end -- tup.getconfig('NO_GCC') ~= 'full'
737
 
738
-- Skins.
739
tup.include("../skins/skinlist.lua")
740
 
741
--[================================[ CODE ]================================]--
742
-- expand extra_files and similar
743
function expand_extra_files(files)
744
  local result = {}
745
  for i,v in ipairs(files) do
746
    if string.match(v[2], "%*")
747
    then
748
      local g = tup.glob(v[2])
749
      for j,x in ipairs(g) do
5132 clevermous 750
        table.insert(result, {v[1], x, group=v.group})
5098 clevermous 751
      end
752
    else
753
      if v.cp1251_from then
754
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
755
      end
5132 clevermous 756
      table.insert(result, {v[1], v[2], group=v.group})
5098 clevermous 757
    end
758
  end
759
  return result
760
end
761
 
762
-- append skins to extra_files
763
for i,v in ipairs(skinlist) do
6094 leency 764
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
5098 clevermous 765
end
766
 
767
-- prepare distr_extra_files and iso_extra_files: expand and append common part
768
extra_files = expand_extra_files(extra_files)
769
distr_extra_files = expand_extra_files(distr_extra_files)
770
iso_extra_files = expand_extra_files(iso_extra_files)
771
tup.append_table(distr_extra_files, extra_files)
772
tup.append_table(iso_extra_files, extra_files)
773
 
774
-- generate list of directories to be created inside kolibri.img
775
img_dirs = {}
776
input_deps = {}
777
for i,v in ipairs(img_files) do
778
  img_file = v[1]
779
  local_file = v[2]
780
 
781
  slash_pos = 0
782
  while true do
783
    slash_pos = string.find(img_file, '/', slash_pos + 1)
784
    if not slash_pos then break end
785
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
786
  end
787
 
788
  -- tup does not want to see hidden files as dependencies
789
  if not string.match(local_file, "/%.") then
5132 clevermous 790
    table.insert(input_deps, v.group or local_file)
5098 clevermous 791
  end
792
end
793
 
794
-- create empty 1.44M file
5118 clevermous 795
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
796
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
5098 clevermous 797
-- format it as a standard 1.44M floppy
798
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
799
-- copy bootloader
800
if tup.getconfig("NO_FASM") ~= "full" then
801
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
802
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
803
table.insert(input_deps, bootloader)
804
end
805
-- make folders
806
table.sort(img_dirs)
807
for i,v in ipairs(img_dirs) do
808
  if v ~= img_dirs[i-1] then
809
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
810
  end
811
end
812
-- copy files
8060 clevermous 813
output_deps = {"kolibri.img"}
5098 clevermous 814
for i,v in ipairs(img_files) do
815
  local_file = v[2]
816
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
817
  then
818
    -- for kernel.mnt, insert autobuild revision identifier
819
    -- from .revision to .kernel.mnt
820
    -- note that .revision and .kernel.mnt must begin with .
821
    -- to prevent tup from tracking them
822
    if build_type == "rus"
8060 clevermous 823
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(get-current-revision)]"|iconv -f utf8 -t cp866)'
824
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(get-current-revision)]")'
5098 clevermous 825
    end
826
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
827
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
828
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
829
    make_img_command = make_img_command .. " && str=" .. str
830
    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'
831
    local_file = ".kernel.mnt"
8060 clevermous 832
    table.insert(output_deps, local_file)
5098 clevermous 833
  end
834
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
835
end
836
 
837
-- generate tup rule for kolibri.img
8060 clevermous 838
tup.definerule{inputs = input_deps, command = make_img_command, outputs = output_deps}
5098 clevermous 839
 
840
-- generate command and dependencies for mkisofs
841
input_deps = {"kolibri.img"}
842
iso_files_list = ""
843
for i,v in ipairs(iso_extra_files) do
844
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
5132 clevermous 845
  table.insert(input_deps, v.group or v[2])
5098 clevermous 846
end
847
 
848
-- generate tup rule for kolibri.iso
849
if tup.getconfig("INSERT_REVISION_ID") ~= ""
850
then volume_id = "KolibriOS r`cat .revision`"
851
else volume_id = "KolibriOS"
852
end
853
tup.definerule{inputs = input_deps, command =
5118 clevermous 854
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
5098 clevermous 855
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
856
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
857
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
858
  outputs = {"kolibri.iso"}}
859
 
860
-- generate command and dependencies for distribution kit
5104 clevermous 861
cp = 'cp "%f" "%o"'
5102 clevermous 862
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
5098 clevermous 863
for i,v in ipairs(distr_extra_files) do
5132 clevermous 864
  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 865
  if string.sub(v[1], -1) == "/"
5132 clevermous 866
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
867
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
5098 clevermous 868
  end
869
end
8091 dunkaist 870
 
8150 dunkaist 871
-- build kolibri.raw
8148 dunkaist 872
raw_mbr = "../programs/hd_load/usb_boot/mbr"
873
raw_bootsector = "../kernel/trunk/bootloader/extended_primary_loader/fat32/bootsect.bin"
874
raw_files = {
875
 {"KOLIBRI.IMG", "kolibri.img"},
876
 {"KORDLDR.F32", "../kernel/trunk/bootloader/extended_primary_loader/fat32/kordldr.f32"},
877
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt.ext_loader"},
878
 {"CONFIG.INI", "../kernel/trunk/bootloader/extended_primary_loader/config.ini"},
8150 dunkaist 879
 {"EFI/BOOT/BOOTX64.EFI", "../kernel/trunk/bootloader/uefi4kos/bootx64.efi"},
880
 {"EFI/BOOT/BOOTIA32.EFI", "../kernel/trunk/bootloader/uefi4kos/bootia32.efi"},
881
 {"EFI/KOLIBRIOS/KOLIBRI.IMG", "kolibri.img"},
882
 {"EFI/KOLIBRIOS/KOLIBRI.INI", "../kernel/trunk/bootloader/uefi4kos/kolibri.ini"},
883
 {"EFI/KOLIBRIOS/KOLIBRI.KRN", "../kernel/trunk/kolibri.krn"}
8148 dunkaist 884
}
885
 
886
for i,v in ipairs(img_files) do
887
  raw_file = "KOLIBRIOS/" .. string.upper(v[1])
888
  local_file = v[2]
889
  tup.append_table(raw_files, {{raw_file, local_file}})
890
end
891
 
892
tup.append_table(raw_files, extra_files)
893
 
8091 dunkaist 894
make_raw_command = '^ MKIMG kolibri.raw^ ' -- for tup: don't write full command to logs
8148 dunkaist 895
make_raw_command = make_raw_command .. "dd if=/dev/zero of=kolibri.raw bs=1MiB count=128 2>&1"
8118 dunkaist 896
make_raw_command = make_raw_command .. " && parted --script kolibri.raw mktable gpt"
8148 dunkaist 897
make_raw_command = make_raw_command .. " && parted --script kolibri.raw unit MiB mkpart primary fat32 1 127"
8118 dunkaist 898
make_raw_command = make_raw_command .. " && parted --script kolibri.raw set 1 esp on"
899
make_raw_command = make_raw_command .. " && sgdisk kolibri.raw --hybrid 1:EE"
8148 dunkaist 900
make_raw_command = make_raw_command .. " && dd if=" .. raw_mbr .. " of=kolibri.raw bs=1 count=\\$((0x1b8)) conv=notrunc"
901
make_raw_command = make_raw_command .. " && dd if=" .. raw_mbr .. " of=kolibri.raw bs=1 count=1 skip=\\$((0x5a)) seek=\\$((0x1be)) conv=notrunc"
902
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 903
 
8148 dunkaist 904
-- generate list of directories to be created inside kolibri.raw
905
raw_dirs = {}
906
input_deps = {raw_mbr, raw_bootsector}
907
for i,v in ipairs(raw_files) do
908
  raw_file = v[1]
909
  local_file = v[2]
8091 dunkaist 910
 
8148 dunkaist 911
  if raw_file ~= "/" then
912
    slash_pos = 0
913
    while true do
914
      slash_pos = string.find(raw_file, '/', slash_pos + 1)
915
      if not slash_pos then break end
916
      table.insert(raw_dirs, string.sub(raw_file, 1, slash_pos - 1))
917
    end
918
  end
919
 
920
  -- tup does not want to see hidden files as dependencies
921
  if not string.match(local_file, "/%.") then
922
    table.insert(input_deps, v.group or local_file)
923
  end
924
end
925
 
926
-- img_files and extra_files have some common dirs with different case
927
for i,d in ipairs(raw_dirs) do
928
  raw_dirs[i] = string.upper(raw_dirs[i])
929
end
930
 
8091 dunkaist 931
-- make folders
8148 dunkaist 932
table.sort(raw_dirs)
933
for i,v in ipairs(raw_dirs) do
934
  if v ~= raw_dirs[i-1] then
935
    make_raw_command = make_raw_command .. ' && mmd -i kolibri.raw@@1M "::' .. v .. '"'
8091 dunkaist 936
  end
937
end
938
 
8148 dunkaist 939
-- copy files
940
for i,v in ipairs(raw_files) do
8091 dunkaist 941
  local_file = v[2]
8148 dunkaist 942
  make_raw_command = make_raw_command .. ' && mcopy -moi kolibri.raw@@1M "' .. local_file .. '" "::' .. v[1] .. '"'
8091 dunkaist 943
end
944
 
945
-- generate tup rule for kolibri.raw
946
tup.definerule{inputs = input_deps, command = make_raw_command, outputs = {"kolibri.raw"}}