Subversion Repositories Kolibri OS

Rev

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

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