Subversion Repositories Kolibri OS

Rev

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