Subversion Repositories Kolibri OS

Rev

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

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