Subversion Repositories Kolibri OS

Rev

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

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