Subversion Repositories Kolibri OS

Rev

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