Subversion Repositories Kolibri OS

Rev

Rev 6308 | Rev 6387 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6308 Rev 6310
1
-- Do nothing unless explicitly requested in tup.config.
1
-- Do nothing unless explicitly requested in tup.config.
2
build_type = tup.getconfig('BUILD_TYPE')
2
build_type = tup.getconfig('BUILD_TYPE')
3
if build_type == "" then
3
if build_type == "" then
4
  return
4
  return
5
end
5
end
6
 
6
 
7
--[================================[ DATA ]================================]--
7
--[================================[ DATA ]================================]--
8
 
8
 
9
PROGS = "../programs"
9
PROGS = "../programs"
10
 
10
 
11
-- Static data that doesn't need to be compiled
11
-- Static data that doesn't need to be compiled
12
-- Files to be included in kolibri.img.
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.
13
-- The first subitem of every item is name inside kolibri.img, the second is name of local file.
14
img_files = {
14
img_files = {
15
 {"MACROS.INC", PROGS .. "/macros.inc"},
15
 {"MACROS.INC", PROGS .. "/macros.inc"},
16
 {"CONFIG.INC", PROGS .. "/config.inc"},
16
 {"CONFIG.INC", PROGS .. "/config.inc"},
17
 {"STRUCT.INC", PROGS .. "/struct.inc"},
17
 {"STRUCT.INC", PROGS .. "/struct.inc"},
18
 {"TOOLBAR.PNG", PROGS .. "/cmm/textreader/toolbar.png"},
18
 {"TOOLBAR.PNG", PROGS .. "/cmm/textreader/toolbar.png"},
19
 {"DEVELOP/TE_ICON.PNG", PROGS .. "/other/t_edit/te_icon.png"},
19
 {"DEVELOP/TE_ICON.PNG", PROGS .. "/other/t_edit/te_icon.png"},
20
 {"DEVELOP/TL_NOD_16.PNG", PROGS .. "/other/t_edit/tl_nod_16.png"},
20
 {"DEVELOP/TL_NOD_16.PNG", PROGS .. "/other/t_edit/tl_nod_16.png"},
21
 {"DEVELOP/TL_SYS_16.PNG", PROGS .. "/media/log_el/trunk/tl_sys_16.png"},
21
 {"DEVELOP/TL_SYS_16.PNG", PROGS .. "/media/log_el/trunk/tl_sys_16.png"},
22
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
22
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
23
 {"FB2READ", "common/fb2read"},
23
 {"FB2READ", "common/fb2read"},
24
 {"File Managers/Z_ICONS.PNG", PROGS .. "/fs/opendial/z_icons.png"},
24
 {"File Managers/Z_ICONS.PNG", PROGS .. "/fs/opendial/z_icons.png"},
25
 {"File Managers/BUTTONS.BMP", PROGS .. "/fs/kfm/trunk/buttons.bmp"},
25
 {"File Managers/BUTTONS.BMP", PROGS .. "/fs/kfm/trunk/buttons.bmp"},
26
 {"File Managers/ICONS.BMP", PROGS .. "/fs/kfm/trunk/icons.bmp"},
26
 {"File Managers/ICONS.BMP", PROGS .. "/fs/kfm/trunk/icons.bmp"},
27
 {"FONTS/LITT.CHR", PROGS .. "/demos/bgitest/trunk/FONTS/LITT.CHR"},
27
 {"FONTS/LITT.CHR", PROGS .. "/demos/bgitest/trunk/FONTS/LITT.CHR"},
28
 {"FONTS/TAHOMA.KF", "common/fonts/tahoma.kf"},
28
 {"FONTS/TAHOMA.KF", "common/fonts/tahoma.kf"},
29
 {"GAMES/SNAKE.INI", PROGS .. "/games/snake/trunk/snake.ini"},
29
 {"GAMES/SNAKE.INI", PROGS .. "/games/snake/trunk/snake.ini"},
30
 {"MEDIA/KIV.INI", PROGS .. "/media/kiv/trunk/kiv.ini"},
30
 {"MEDIA/KIV.INI", PROGS .. "/media/kiv/trunk/kiv.ini"},
31
 {"MEDIA/PIXIE/PIXIE.INI", PROGS .. "/cmm/pixie/pixie.ini"},
31
 {"MEDIA/PIXIE/PIXIE.INI", PROGS .. "/cmm/pixie/pixie.ini"},
32
 {"MEDIA/PIXIE/S_DARK.PNG", PROGS .. "/cmm/pixie/s_dark.png"},
32
 {"MEDIA/PIXIE/S_DARK.PNG", PROGS .. "/cmm/pixie/s_dark.png"},
33
 {"MEDIA/PIXIE/S_LIGHT.PNG", PROGS .. "/cmm/pixie/s_light.png"},
33
 {"MEDIA/PIXIE/S_LIGHT.PNG", PROGS .. "/cmm/pixie/s_light.png"},
34
 {"MEDIA/PIXIE/MINIMP3", PROGS .. "/cmm/pixie/minimp3"},
34
 {"MEDIA/PIXIE/MINIMP3", PROGS .. "/cmm/pixie/minimp3"},
35
 {"NETWORK/WV_SKIN.PNG", PROGS .. "/cmm/browser/wv_skin.png"},
35
 {"NETWORK/WV_SKIN.PNG", PROGS .. "/cmm/browser/wv_skin.png"},
36
 {"SETTINGS/AUTORUN.DAT", "common/settings/AUTORUN.DAT"},
36
 {"SETTINGS/AUTORUN.DAT", "common/settings/AUTORUN.DAT"},
37
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
37
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
38
 {"ICONS32.PNG", "common/icons32.png"},
38
 {"ICONS32.PNG", "common/icons32.png"},
39
 {"INDEX.HTM", "common/index_htm"},
39
 {"INDEX.HTM", "common/index_htm"},
40
 {"KERPACK", "common/kerpack"},
40
 {"KERPACK", "common/kerpack"},
41
 {"SETTINGS/KEYMAP.KEY", PROGS .. "/system/taskbar/trunk/KEYMAP.KEY"},
41
 {"SETTINGS/KEYMAP.KEY", PROGS .. "/system/taskbar/trunk/KEYMAP.KEY"},
42
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
42
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
43
 {"KUZKINA.MID", "common/kuzkina.mid"},
43
 {"KUZKINA.MID", "common/kuzkina.mid"},
44
 {"LANG.INC", build_type .. "/lang.inc"},
44
 {"LANG.INC", build_type .. "/lang.inc"},
45
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
45
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
46
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
46
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
47
 {"SETTINGS/TASKBAR.INI", build_type .. "/settings/taskbar.ini"},
47
 {"SETTINGS/TASKBAR.INI", build_type .. "/settings/taskbar.ini"},
48
 {"SETTINGS/ESKIN.INI", "common/settings/eskin.ini"},
48
 {"SETTINGS/ESKIN.INI", "common/settings/eskin.ini"},
49
 {"SETTINGS/DOCKY.INI", "common/settings/docky.ini"},
49
 {"SETTINGS/DOCKY.INI", "common/settings/docky.ini"},
50
 {"SETTINGS/ASSOC.INI", "common/settings/assoc.ini"},
50
 {"SETTINGS/ASSOC.INI", "common/settings/assoc.ini"},
51
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
51
 {"SETTINGS/SYSPANEL.INI", "common/settings/syspanel.ini"},
-
 
52
 {"SETTINGS/FB2READ.INI", "common/settings/fb2read.ini"},
52
 {"NOTIFY3.PNG", "common/notify3.png"},
53
 {"NOTIFY3.PNG", "common/notify3.png"},
53
 {"SETTINGS/SYSTEM.INI", "common/settings/system.ini"},
54
 {"SETTINGS/SYSTEM.INI", "common/settings/system.ini"},
54
 {"VMODE", "common/vmode"},
55
 {"VMODE", "common/vmode"},
55
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
56
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
56
 {"File Managers/EOLITE.INI", "common/File Managers/eolite.ini"},
57
 {"File Managers/EOLITE.INI", "common/File Managers/eolite.ini"},
57
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
58
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
58
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
59
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
59
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
60
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
60
 {"LIB/FS.OBJ", "common/lib/fs.obj"},
61
 {"LIB/FS.OBJ", "common/lib/fs.obj"},
61
 {"LIB/ARRAY.OBJ", "common/lib/array.obj"},
62
 {"LIB/ARRAY.OBJ", "common/lib/array.obj"},
62
 {"LIB/LIBRARY.OBJ", "common/lib/library.obj"},
63
 {"LIB/LIBRARY.OBJ", "common/lib/library.obj"},
63
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
64
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
64
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
65
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
65
 {"LIB/KMENU.OBJ", "common/lib/kmenu.obj"},
66
 {"LIB/KMENU.OBJ", "common/lib/kmenu.obj"},
66
 {"MEDIA/IMGF/IMGF", "common/media/ImgF/ImgF"},
67
 {"MEDIA/IMGF/IMGF", "common/media/ImgF/ImgF"},
67
 {"MEDIA/IMGF/CEDG.OBJ", "common/media/ImgF/cEdg.obj"},
68
 {"MEDIA/IMGF/CEDG.OBJ", "common/media/ImgF/cEdg.obj"},
68
 {"MEDIA/IMGF/DITHER.OBJ", "common/media/ImgF/dither.obj"},
69
 {"MEDIA/IMGF/DITHER.OBJ", "common/media/ImgF/dither.obj"},
69
 {"MEDIA/IMGF/INVSOL.OBJ", "common/media/ImgF/invSol.obj"},
70
 {"MEDIA/IMGF/INVSOL.OBJ", "common/media/ImgF/invSol.obj"},
70
 {"SETTINGS/NETWORK.INI", build_type .. "/settings/network.ini"},
71
 {"SETTINGS/NETWORK.INI", build_type .. "/settings/network.ini"},
71
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
72
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
72
 {"NETWORK/USERS.INI", "common/network/users.ini"},
73
 {"NETWORK/USERS.INI", "common/network/users.ini"},
73
}
74
}
74
-- For russian build, add russian-only files.
75
-- For russian build, add russian-only files.
75
if build_type == "rus" then tup.append_table(img_files, {
76
if build_type == "rus" then tup.append_table(img_files, {
76
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
77
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
77
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
78
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
78
 {"SETTINGS/GAME_CENTER.INI", "rus/settings/game_center.ini"},
79
 {"SETTINGS/GAME_CENTER.INI", "rus/settings/game_center.ini"},
79
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
80
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
80
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
81
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
81
 {"PIPETKA", build_type .. "/pipetka"},
82
 {"PIPETKA", build_type .. "/pipetka"},
82
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
83
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
83
 {"GAMES/APPDATA.DAT", build_type .. "/games/appdata.dat"},
84
 {"GAMES/APPDATA.DAT", build_type .. "/games/appdata.dat"},
84
 {"GAMES/ATAKA", build_type .. "/games/ataka"},
85
 {"GAMES/ATAKA", build_type .. "/games/ataka"},
85
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
86
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
86
 {"GAMES/PADENIE", build_type .. "/games/padenie"},
87
 {"GAMES/PADENIE", build_type .. "/games/padenie"},
87
 {"GAMES/WHOWTBAM", build_type .. "/games/whowtbam"},
88
 {"GAMES/WHOWTBAM", build_type .. "/games/whowtbam"},
88
}) else tup.append_table(img_files, {
89
}) else tup.append_table(img_files, {
89
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
90
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
90
 {"SETTINGS/GAME_CENTER.INI", "common/settings/game_center.ini"},
91
 {"SETTINGS/GAME_CENTER.INI", "common/settings/game_center.ini"},
91
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
92
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
92
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
93
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
93
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
94
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
94
}) end
95
}) end
95
if build_type == "it" then tup.append_table(img_files, {
96
if build_type == "it" then tup.append_table(img_files, {
96
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
97
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
97
}) else tup.append_table(img_files, {
98
}) else tup.append_table(img_files, {
98
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
99
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
99
}) end
100
}) end
100
 
101
 
101
--[[
102
--[[
102
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
103
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
103
 
104
 
104
The first subitem of every item is name relative to the root of ISO or distribution kit,
105
The first subitem of every item is name relative to the root of ISO or distribution kit,
105
the second is name of local file.
106
the second is name of local file.
106
 
107
 
107
If the first subitem ends in /, the last component of local file name is appended.
108
If the first subitem ends in /, the last component of local file name is appended.
108
The last component of the second subitem may contain '*'; if so, it will be expanded
109
The last component of the second subitem may contain '*'; if so, it will be expanded
109
according to usual rules, but without matching directories.
110
according to usual rules, but without matching directories.
110
 
111
 
111
Tup does not allow a direct dependency on a file that is generated in a directory
112
Tup does not allow a direct dependency on a file that is generated in a directory
112
other than where Tupfile.lua is and its children. Most files are generated
113
other than where Tupfile.lua is and its children. Most files are generated
113
in the directory with Tupfile.lua; for other files, the item should contain
114
in the directory with Tupfile.lua; for other files, the item should contain
114
a named subitem "group=path/" and the file should be put in .
115
a named subitem "group=path/" and the file should be put in .
115
--]]
116
--]]
116
extra_files = {
117
extra_files = {
117
 {"/", build_type .. "/distr_data/autorun.inf"},
118
 {"/", build_type .. "/distr_data/autorun.inf"},
118
 {"/", build_type .. "/distr_data/KolibriOS_icon.ico"},
119
 {"/", build_type .. "/distr_data/KolibriOS_icon.ico"},
119
 {"/", build_type .. "/settings/kolibri.lbl"},
120
 {"/", build_type .. "/settings/kolibri.lbl"},
120
 {"Docs/stack.txt", build_type .. "/docs/STACK.TXT"},
121
 {"Docs/stack.txt", build_type .. "/docs/STACK.TXT"},
121
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
122
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
122
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
123
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
123
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
124
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
124
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
125
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
125
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
126
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
126
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
127
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
127
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
128
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
128
 {"HD_Load/", "common/HD_load/memdisk"},
129
 {"HD_Load/", "common/HD_load/memdisk"},
129
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
130
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
130
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
131
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
131
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
132
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
132
 {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
133
 {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
133
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
134
 {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"},
134
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
135
 {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"},
135
 {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"},
136
 {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"},
136
 {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"},
137
 {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"},
137
 {"kolibrios/3D/info3ds/TL_SYS_16.PNG", PROGS .. "/develop/info3ds/tl_sys_16.png"},
138
 {"kolibrios/3D/info3ds/TL_SYS_16.PNG", PROGS .. "/develop/info3ds/tl_sys_16.png"},
138
 {"kolibrios/3D/info3ds/TOOLBAR.PNG", PROGS .. "/develop/info3ds/toolbar.png"},
139
 {"kolibrios/3D/info3ds/TOOLBAR.PNG", PROGS .. "/develop/info3ds/toolbar.png"},
139
 {"kolibrios/3D/info3ds/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
140
 {"kolibrios/3D/info3ds/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
140
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
141
 {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"},
141
 {"kolibrios/3D/voxel_editor/CURSORS.PNG", PROGS .. "/media/voxel_editor/trunk/cursors.png"},
142
 {"kolibrios/3D/voxel_editor/CURSORS.PNG", PROGS .. "/media/voxel_editor/trunk/cursors.png"},
142
 {"kolibrios/3D/voxel_editor/CURSORS_GR.PNG", PROGS .. "/media/voxel_editor/trunk/cursors_gr.png"},
143
 {"kolibrios/3D/voxel_editor/CURSORS_GR.PNG", PROGS .. "/media/voxel_editor/trunk/cursors_gr.png"},
143
 {"kolibrios/3D/voxel_editor/TOOLBAR.PNG", PROGS .. "/media/voxel_editor/trunk/toolbar.png"},
144
 {"kolibrios/3D/voxel_editor/TOOLBAR.PNG", PROGS .. "/media/voxel_editor/trunk/toolbar.png"},
144
 {"kolibrios/3D/voxel_editor/VOX_EDITOR.INI", PROGS .. "/media/voxel_editor/trunk/vox_editor.ini"},
145
 {"kolibrios/3D/voxel_editor/VOX_EDITOR.INI", PROGS .. "/media/voxel_editor/trunk/vox_editor.ini"},
145
 {"kolibrios/3D/voxel_editor/HOUSE1.VOX", PROGS .. "/media/voxel_editor/trunk/house1.vox"},
146
 {"kolibrios/3D/voxel_editor/HOUSE1.VOX", PROGS .. "/media/voxel_editor/trunk/house1.vox"},
146
 {"kolibrios/3D/voxel_editor/HOUSE2.VOX", PROGS .. "/media/voxel_editor/trunk/house2.vox"},
147
 {"kolibrios/3D/voxel_editor/HOUSE2.VOX", PROGS .. "/media/voxel_editor/trunk/house2.vox"},
147
 {"kolibrios/3D/voxel_editor/SQUIRREL.VOX", PROGS .. "/media/voxel_editor/trunk/squirrel.vox"},
148
 {"kolibrios/3D/voxel_editor/SQUIRREL.VOX", PROGS .. "/media/voxel_editor/trunk/squirrel.vox"},
148
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
149
 {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"},
149
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
150
 {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"},
150
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
151
 {"kolibrios/3D/voxel_utilites/VOX_TGL" , PROGS .. "/media/voxel_editor/utilites/vox_tgl"},
151
 {"kolibrios/3D/voxel_utilites/VOX_MOVER.INI" , PROGS .. "/media/voxel_editor/utilites/vox_mover.ini"},
152
 {"kolibrios/3D/voxel_utilites/VOX_MOVER.INI" , PROGS .. "/media/voxel_editor/utilites/vox_mover.ini"},
152
 {"kolibrios/3D/voxel_utilites/TOOLBAR.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar.png"},
153
 {"kolibrios/3D/voxel_utilites/TOOLBAR.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar.png"},
153
 {"kolibrios/3D/voxel_utilites/TOOLBAR_M.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar_m.png"},
154
 {"kolibrios/3D/voxel_utilites/TOOLBAR_M.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar_m.png"},
154
 {"kolibrios/3D/voxel_utilites/TOOLBAR_T.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar_t.png"},
155
 {"kolibrios/3D/voxel_utilites/TOOLBAR_T.PNG" , PROGS .. "/media/voxel_editor/utilites/toolbar_t.png"},
155
 {"kolibrios/3D/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
156
 {"kolibrios/3D/FONT8X9.BMP", PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
156
 {"kolibrios/3D/TOOLB_1.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/toolb_1.png"},
157
 {"kolibrios/3D/TOOLB_1.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/toolb_1.png"},
157
 {"kolibrios/3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
158
 {"kolibrios/3D/GEARS", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/gears"},
158
 {"kolibrios/3D/TEST_GLU1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu1"},
159
 {"kolibrios/3D/TEST_GLU1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu1"},
159
 {"kolibrios/3D/TEST_GLU2", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu2"},
160
 {"kolibrios/3D/TEST_GLU2", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/test_glu2"},
160
 {"kolibrios/3D/TEXT_2.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/text_2.png"},
161
 {"kolibrios/3D/TEXT_2.PNG", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/text_2.png"},
161
 {"kolibrios/3D/TEXTURES1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
162
 {"kolibrios/3D/TEXTURES1", PROGS .. "/develop/libraries/TinyGL/asm_fork/examples/textures1"},
162
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
163
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
163
 {"kolibrios/emul/e80/readme.txt", PROGS .. "/emulator/e80/trunk/readme.txt"},
164
 {"kolibrios/emul/e80/readme.txt", PROGS .. "/emulator/e80/trunk/readme.txt"},
164
 {"kolibrios/emul/fceu/fceu", PROGS .. "/emulator/fceu/fceu"},
165
 {"kolibrios/emul/fceu/fceu", PROGS .. "/emulator/fceu/fceu"},
165
 {"kolibrios/emul/fceu/FCEU ReadMe.txt", PROGS .. "/emulator/fceu/FCEU ReadMe.txt"},
166
 {"kolibrios/emul/fceu/FCEU ReadMe.txt", PROGS .. "/emulator/fceu/FCEU ReadMe.txt"},
166
 {"kolibrios/emul/", "common/emul/gameboy"},
167
 {"kolibrios/emul/", "common/emul/gameboy"},
167
 {"kolibrios/emul/", "common/emul/scummvm"},
168
 {"kolibrios/emul/", "common/emul/scummvm"},
168
 {"kolibrios/emul/", "common/emul/zsnes"},
169
 {"kolibrios/emul/", "common/emul/zsnes"},
169
 {"kolibrios/demos/ak47.lif", "common/demos/ak47.lif"},
170
 {"kolibrios/demos/ak47.lif", "common/demos/ak47.lif"},
170
 {"kolibrios/demos/life2", "common/demos/life2"},
171
 {"kolibrios/demos/life2", "common/demos/life2"},
171
 {"kolibrios/demos/relay.lif", "common/demos/relay.lif"},
172
 {"kolibrios/demos/relay.lif", "common/demos/relay.lif"},
172
 {"kolibrios/demos/rpento.lif", "common/demos/rpento.lif"},
173
 {"kolibrios/demos/rpento.lif", "common/demos/rpento.lif"},
173
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
174
 {"kolibrios/games/Almaz", PROGS .. "/games/almaz/almaz"},
174
 {"kolibrios/games/BabyPainter", "common/games/BabyPainter"},
175
 {"kolibrios/games/BabyPainter", "common/games/BabyPainter"},
175
 {"kolibrios/games/bomber/ackack.bmp", PROGS .. "/games/bomber/ackack.bmp"},
176
 {"kolibrios/games/bomber/ackack.bmp", PROGS .. "/games/bomber/ackack.bmp"},
176
 {"kolibrios/games/bomber/bomb.bmp", PROGS .. "/games/bomber/bomb.bmp"},
177
 {"kolibrios/games/bomber/bomb.bmp", PROGS .. "/games/bomber/bomb.bmp"},
177
 {"kolibrios/games/bomber/plane.bmp", PROGS .. "/games/bomber/plane.bmp"},
178
 {"kolibrios/games/bomber/plane.bmp", PROGS .. "/games/bomber/plane.bmp"},
178
 {"kolibrios/games/bomber/tile.bmp", PROGS .. "/games/bomber/tile.bmp"},
179
 {"kolibrios/games/bomber/tile.bmp", PROGS .. "/games/bomber/tile.bmp"},
179
 {"kolibrios/games/doom1/", "common/games/doom/*"},
180
 {"kolibrios/games/doom1/", "common/games/doom/*"},
180
 {"kolibrios/games/pig/", "common/games/pig/*"},
181
 {"kolibrios/games/pig/", "common/games/pig/*"},
181
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
182
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
182
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
183
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
183
 {"kolibrios/games/knight", "common/games/knight"},
184
 {"kolibrios/games/knight", "common/games/knight"},
184
 {"kolibrios/games/LaserTank/", "common/games/LaserTank/*"},
185
 {"kolibrios/games/LaserTank/", "common/games/LaserTank/*"},
185
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
186
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
186
 {"kolibrios/games/megamaze", build_type .. "/games/megamaze"},
187
 {"kolibrios/games/megamaze", build_type .. "/games/megamaze"},
187
 {"kolibrios/games/mun/data/", "common/games/mun/data/*"},
188
 {"kolibrios/games/mun/data/", "common/games/mun/data/*"},
188
 {"kolibrios/games/mun/libc.dll", "common/games/mun/libc.dll"},
189
 {"kolibrios/games/mun/libc.dll", "common/games/mun/libc.dll"},
189
 {"kolibrios/games/mun/mun", "common/games/mun/mun"}, 
190
 {"kolibrios/games/mun/mun", "common/games/mun/mun"}, 
190
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
191
 {"kolibrios/games/phenix", PROGS .. "/games/phenix/trunk/phenix"},
191
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
192
 {"kolibrios/games/soko/soko", PROGS .. "/games/soko/trunk/SOKO"},
192
 {"kolibrios/games/soko/", "common/games/soko/*"},
193
 {"kolibrios/games/soko/", "common/games/soko/*"},
193
 {"kolibrios/drivers/ahci/", "common/drivers/ahci/*"},
194
 {"kolibrios/drivers/ahci/", "common/drivers/ahci/*"},
194
 {"kolibrios/drivers/atikms/", "common/drivers/atikms/*"},
195
 {"kolibrios/drivers/atikms/", "common/drivers/atikms/*"},
195
 {"kolibrios/drivers/i915/", "common/drivers/i915/*"},
196
 {"kolibrios/drivers/i915/", "common/drivers/i915/*"},
196
 {"kolibrios/drivers/vmware/", "common/drivers/vmware/*"},
197
 {"kolibrios/drivers/vmware/", "common/drivers/vmware/*"},
197
 {"kolibrios/lib/avcodec-55.dll", "common/lib/avcodec-55.dll"},
198
 {"kolibrios/lib/avcodec-55.dll", "common/lib/avcodec-55.dll"},
198
 {"kolibrios/lib/avdevice-55.dll", "common/lib/avdevice-55.dll"},
199
 {"kolibrios/lib/avdevice-55.dll", "common/lib/avdevice-55.dll"},
199
 {"kolibrios/lib/avformat-55.dll", "common/lib/avformat-55.dll"},
200
 {"kolibrios/lib/avformat-55.dll", "common/lib/avformat-55.dll"},
200
 {"kolibrios/lib/avutil-52.dll", "common/lib/avutil-52.dll"},
201
 {"kolibrios/lib/avutil-52.dll", "common/lib/avutil-52.dll"},
201
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
202
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
202
 {"kolibrios/lib/i965-video.dll", "common/lib/i965-video.dll"},
203
 {"kolibrios/lib/i965-video.dll", "common/lib/i965-video.dll"},
203
 {"kolibrios/lib/libdrm.dll", "common/lib/libdrm.dll"},
204
 {"kolibrios/lib/libdrm.dll", "common/lib/libdrm.dll"},
204
 {"kolibrios/lib/libegl.dll", "common/lib/libegl.dll"},
205
 {"kolibrios/lib/libegl.dll", "common/lib/libegl.dll"},
205
 {"kolibrios/lib/libGL.dll", "common/lib/libGL.dll"},
206
 {"kolibrios/lib/libGL.dll", "common/lib/libGL.dll"},
206
 {"kolibrios/lib/libva.dll", "common/lib/libva.dll"},
207
 {"kolibrios/lib/libva.dll", "common/lib/libva.dll"},
207
 {"kolibrios/lib/libz.dll", "common/lib/libz.dll"},
208
 {"kolibrios/lib/libz.dll", "common/lib/libz.dll"},
208
 {"kolibrios/lib/libc.dll", "../contrib/sdk/bin/libc.dll", group = "../contrib/sdk/lib/"},
209
 {"kolibrios/lib/libc.dll", "../contrib/sdk/bin/libc.dll", group = "../contrib/sdk/lib/"},
209
 {"kolibrios/lib/pixlib-gl.dll", "common/lib/pixlib-gl.dll"},
210
 {"kolibrios/lib/pixlib-gl.dll", "common/lib/pixlib-gl.dll"},
210
 {"kolibrios/lib/swresample-0.dll", "common/lib/swresample-0.dll"},
211
 {"kolibrios/lib/swresample-0.dll", "common/lib/swresample-0.dll"},
211
 {"kolibrios/lib/i915_dri.drv", "common/lib/i915_dri.drv"},
212
 {"kolibrios/lib/i915_dri.drv", "common/lib/i915_dri.drv"},
212
 {"kolibrios/lib/i965_dri.drv", "common/lib/i965_dri.drv"},
213
 {"kolibrios/lib/i965_dri.drv", "common/lib/i965_dri.drv"},
213
 {"kolibrios/lib/tinygl.obj", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
214
 {"kolibrios/lib/tinygl.obj", PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"},
214
 {"kolibrios/media/fplay", "common/media/fplay"},
215
 {"kolibrios/media/fplay", "common/media/fplay"},
215
 {"kolibrios/media/updf", "common/media/updf"},
216
 {"kolibrios/media/updf", "common/media/updf"},
216
 {"kolibrios/media/vttf", "common/media/vttf"},
217
 {"kolibrios/media/vttf", "common/media/vttf"},
217
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
218
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
218
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
219
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
219
 {"kolibrios/res/skins/", "../skins/authors.txt"},
220
 {"kolibrios/res/skins/", "../skins/authors.txt"},
220
 {"kolibrios/settings/app_plus.ini", "common/settings/app_plus.ini"},
221
 {"kolibrios/settings/app_plus.ini", "common/settings/app_plus.ini"},
221
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
222
 {"kolibrios/utils/appearance", PROGS .. "/cmm/appearance/appearance.com"},
222
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
223
 {"kolibrios/utils/calcplus", PROGS .. "/other/calcplus/calcplus"},
223
}
224
}
224
if build_type == "rus" then tup.append_table(extra_files, {
225
if build_type == "rus" then tup.append_table(extra_files, {
225
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
226
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
226
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
227
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
227
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
228
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
228
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
229
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
229
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
230
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
230
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
231
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
231
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
232
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
232
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
233
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
233
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
234
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
234
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
235
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
235
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
236
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
236
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
237
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
237
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
238
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
238
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
239
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
239
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
240
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
240
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
241
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
241
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
242
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
242
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
243
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
243
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
244
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
244
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
245
 {"kolibrios/games/Dungeons/Resources/Textures/Environment/", PROGS .. "/games/Dungeons/Resources/Textures/Environment/*"},
245
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
246
 {"kolibrios/games/Dungeons/Resources/Textures/Objects/", PROGS .. "/games/Dungeons/Resources/Textures/Objects/*"},
246
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
247
 {"kolibrios/games/Dungeons/Resources/Textures/HUD/", PROGS .. "/games/Dungeons/Resources/Textures/HUD/*"},
247
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
248
 {"kolibrios/games/Dungeons/Resources/Textures/", PROGS .. "/games/Dungeons/Resources/Textures/Licenses.txt"},
248
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
249
 {"kolibrios/games/Dungeons/", PROGS .. "/games/Dungeons/readme_ru.txt"},
249
}) else tup.append_table(extra_files, {
250
}) else tup.append_table(extra_files, {
250
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
251
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
251
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
252
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
252
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
253
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
253
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
254
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
254
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
255
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
255
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
256
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
256
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
257
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
257
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
258
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
258
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
259
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
259
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
260
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
260
}) end
261
}) end
261
--[[
262
--[[
262
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
263
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
263
Same syntax as extra_files.
264
Same syntax as extra_files.
264
]]--
265
]]--
265
if build_type == "rus" then
266
if build_type == "rus" then
266
distr_extra_files = {
267
distr_extra_files = {
267
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
268
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
268
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
269
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
269
}
270
}
270
else
271
else
271
distr_extra_files = {
272
distr_extra_files = {
272
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
273
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
273
}
274
}
274
end
275
end
275
--[[
276
--[[
276
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
277
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
277
Same syntax as extra_files.
278
Same syntax as extra_files.
278
]]--
279
]]--
279
if build_type == "rus" then
280
if build_type == "rus" then
280
iso_extra_files = {
281
iso_extra_files = {
281
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
282
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
282
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
283
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
283
}
284
}
284
else
285
else
285
iso_extra_files = {
286
iso_extra_files = {
286
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
287
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
287
}
288
}
288
end
289
end
289
 
290
 
290
-- Programs that require FASM to compile.
291
-- Programs that require FASM to compile.
291
if tup.getconfig('NO_FASM') ~= 'full' then
292
if tup.getconfig('NO_FASM') ~= 'full' then
292
tup.append_table(img_files, {
293
tup.append_table(img_files, {
293
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
294
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
294
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
295
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
295
 {"@VOLUME", PROGS .. "/media/volume/volume"},
296
 {"@VOLUME", PROGS .. "/media/volume/volume"},
296
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
297
 {"@TASKBAR", PROGS .. "/system/taskbar/trunk/TASKBAR"},
297
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
298
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
298
 {"@OPEN", PROGS .. "/system/open/open"},
299
 {"@OPEN", PROGS .. "/system/open/open"},
299
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
300
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
300
 {"@SS", PROGS .. "/system/ss/trunk/@ss"},
301
 {"@SS", PROGS .. "/system/ss/trunk/@ss"},
301
 {"REFRSCRN", PROGS .. "/system/refrscrn/refrscrn"},
302
 {"REFRSCRN", PROGS .. "/system/refrscrn/refrscrn"},
302
 {"ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
303
 {"ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
303
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
304
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
304
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
305
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
305
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
306
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
306
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
307
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
307
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
308
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
308
 {"CPUID", PROGS .. "/system/cpuid/trunk/CPUID"},
309
 {"CPUID", PROGS .. "/system/cpuid/trunk/CPUID"},
309
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
310
 {"SKINCFG", PROGS .. "/system/skincfg/trunk/skincfg"},
310
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
311
 {"DEFAULT.SKN", "../skins/Leency/Shkvorka/Shkvorka.skn"},
311
 {"DISPTEST", PROGS .. "/system/disptest/trunk/disptest"},
312
 {"DISPTEST", PROGS .. "/system/disptest/trunk/disptest"},
312
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
313
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
313
 {"END", PROGS .. "/system/end/light/end"},
314
 {"END", PROGS .. "/system/end/light/end"},
314
 {"FSPEED", PROGS .. "/fs/fspeed/fspeed"},
315
 {"FSPEED", PROGS .. "/fs/fspeed/fspeed"},
315
 {"GMON", PROGS .. "/system/gmon/gmon"},
316
 {"GMON", PROGS .. "/system/gmon/gmon"},
316
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
317
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
317
 {"@ICON", PROGS .. "/system/icon_new/@icon"},
318
 {"@ICON", PROGS .. "/system/icon_new/@icon"},
318
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
319
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
319
 {"KBD", PROGS .. "/system/kbd/trunk/kbd"},
320
 {"KBD", PROGS .. "/system/kbd/trunk/kbd"},
320
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
321
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
321
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
322
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
322
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
323
 {"ESKIN", PROGS .. "/system/eskin/trunk/eskin"},
323
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
324
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
324
 {"MGB", PROGS .. "/system/mgb/trunk/mgb"},
325
 {"MGB", PROGS .. "/system/mgb/trunk/mgb"},
325
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
326
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
326
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
327
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
327
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
328
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
328
 {"PCIDEV", PROGS .. "/system/pcidev/trunk/PCIDEV"},
329
 {"PCIDEV", PROGS .. "/system/pcidev/trunk/PCIDEV"},
329
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
330
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
330
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
331
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
331
 {"RUN", PROGS .. "/system/run/trunk/run"},
332
 {"RUN", PROGS .. "/system/run/trunk/run"},
332
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
333
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
333
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
334
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
334
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
335
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
335
 {"TEST", PROGS .. "/system/test/trunk/test"},
336
 {"TEST", PROGS .. "/system/test/trunk/test"},
336
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
337
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
337
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
338
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
338
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
339
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
339
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
340
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
340
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
341
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
341
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
342
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
342
 {"3D/VIEW3DS", PROGS .. "/demos/3DS/VIEW3DS"},
343
 {"3D/VIEW3DS", PROGS .. "/demos/3DS/VIEW3DS"},
343
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
344
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
344
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
345
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
345
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
346
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
346
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
347
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
347
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
348
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
348
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
349
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
349
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
350
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
350
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
351
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
351
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
352
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
352
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
353
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
353
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
354
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
354
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
355
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
355
 {"DEMOS/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
356
 {"DEMOS/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
356
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
357
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
357
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
358
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
358
 {"DEVELOP/cObj", PROGS .. "/develop/cObj/trunk/cObj"},
359
 {"DEVELOP/cObj", PROGS .. "/develop/cObj/trunk/cObj"},
359
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/trunk/fasm"},
360
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/trunk/fasm"},
360
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
361
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
361
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
362
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
362
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
363
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
363
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
364
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
364
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
365
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
365
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
366
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
366
 {"DEVELOP/test_gets", PROGS .. "/develop/libraries/console/examples/test_gets"},
367
 {"DEVELOP/test_gets", PROGS .. "/develop/libraries/console/examples/test_gets"},
367
 {"DEVELOP/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
368
 {"DEVELOP/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
368
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
369
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
369
 {"DEVELOP/INFO/CPP_KOL_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
370
 {"DEVELOP/INFO/CPP_KOL_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
370
 {"DEVELOP/INFO/CPP_KOL_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
371
 {"DEVELOP/INFO/CPP_KOL_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
371
 {"DEVELOP/INFO/CPP_KOL_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
372
 {"DEVELOP/INFO/CPP_KOL_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
372
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
373
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
373
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
374
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
374
 {"DEVELOP/INFO/INI_FILES.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
375
 {"DEVELOP/INFO/INI_FILES.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
375
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
376
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
376
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
377
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
377
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
378
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
378
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
379
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
379
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
380
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
380
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
381
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
381
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
382
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
382
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
383
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
383
 {"GAMES/MBLOCKS", PROGS .. "/games/mblocks/trunk/mblocks"},
384
 {"GAMES/MBLOCKS", PROGS .. "/games/mblocks/trunk/mblocks"},
384
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
385
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
385
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
386
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
386
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
387
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
387
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
388
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
388
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
389
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
389
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
390
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
390
 {"GAMES/SQ_GAME", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
391
 {"GAMES/SQ_GAME", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
391
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
392
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
392
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
393
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
393
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
394
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
394
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
395
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
395
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
396
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
396
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
397
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
397
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
398
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
398
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console/console.obj"},
399
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console/console.obj"},
399
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
400
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
400
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
401
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
401
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
402
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
402
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
403
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
403
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
404
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
404
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
405
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
405
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
406
 {"LIB/RASTERWORKS.OBJ", PROGS .. "/develop/libraries/fontRasterWorks(unicode)/RasterWorks.obj"},
406
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
407
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
407
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
408
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
408
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
409
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
409
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
410
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
410
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
411
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
411
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
412
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
412
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
413
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
413
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
414
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
414
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
415
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
415
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
416
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
416
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
417
 {"NETWORK/PING", PROGS .. "/network/ping/ping"},
417
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
418
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
418
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
419
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
419
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
420
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
420
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
421
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
421
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
422
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
422
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
423
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
423
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
424
 {"NETWORK/@ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
424
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
425
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
425
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
426
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
426
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
427
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
427
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
428
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
428
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
429
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
429
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
430
 {"NETWORK/VNCC", PROGS .. "/network/vncc/vncc"},
430
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
431
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
431
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
432
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
432
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
433
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
433
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
434
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
434
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
435
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
435
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
436
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
436
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
437
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
437
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
438
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
438
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
439
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
439
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
440
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
440
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
441
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
441
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
442
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
442
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
443
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
443
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
444
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
444
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
445
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
445
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
446
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
446
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
447
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
447
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
448
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
448
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
449
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
449
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
450
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
450
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
451
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
451
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
452
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
452
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
453
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
453
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
454
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
454
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
455
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
455
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
456
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
456
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
457
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
457
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
458
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
458
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
459
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
459
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
460
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
460
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
461
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
461
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
462
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
462
})
463
})
463
tup.append_table(extra_files, {
464
tup.append_table(extra_files, {
464
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
465
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
465
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
466
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
466
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
467
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
467
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
468
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
468
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
469
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
469
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
470
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
470
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
471
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
471
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
472
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
472
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
473
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
473
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
474
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
474
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
475
 {"kolibrios/games/arcanii", PROGS .. "/games/arcanii/trunk/arcanii"},
475
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
476
 {"kolibrios/games/bomber/bomber", PROGS .. "/games/bomber/bomber"},
476
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
477
 {"kolibrios/games/bomber/bomberdata.bin", PROGS .. "/games/bomber/sounds/bomberdata.bin"},
477
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
478
 {"kolibrios/games/codemaster/binary_master", PROGS .. "/games/codemaster/binary_master"},
478
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
479
 {"kolibrios/games/codemaster/hang_programmer", PROGS .. "/games/codemaster/hang_programmer"},
479
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
480
 {"kolibrios/games/codemaster/kolibri_puzzle", PROGS .. "/games/codemaster/kolibri_puzzle"},
480
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
481
 {"kolibrios/games/invaders", PROGS .. "/games/invaders/invaders"},
481
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
482
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
482
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
483
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
483
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
484
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
484
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
485
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
485
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
486
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
486
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
487
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
487
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
488
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
488
})
489
})
489
-- For russian build, add russian-only programs.
490
-- For russian build, add russian-only programs.
490
if build_type == "rus" then tup.append_table(img_files, {
491
if build_type == "rus" then tup.append_table(img_files, {
491
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
492
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
492
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_rus"},
493
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_rus"},
493
}) else tup.append_table(img_files, {
494
}) else tup.append_table(img_files, {
494
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_eng"},
495
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_eng"},
495
}) end
496
}) end
496
 
497
 
497
if build_type == "rus" then tup.append_table(extra_files, {
498
if build_type == "rus" then tup.append_table(extra_files, {
498
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
499
 {"kolibrios/games/Dungeons/Dungeons", PROGS .. "/games/Dungeons/Dungeons"},
499
}) end
500
}) end
500
 
501
 
501
end -- tup.getconfig('NO_FASM') ~= 'full'
502
end -- tup.getconfig('NO_FASM') ~= 'full'
502
 
503
 
503
-- Programs that require NASM to compile.
504
-- Programs that require NASM to compile.
504
if tup.getconfig('NO_NASM') ~= 'full' then
505
if tup.getconfig('NO_NASM') ~= 'full' then
505
tup.append_table(img_files, {
506
tup.append_table(img_files, {
506
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
507
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
507
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
508
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
508
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
509
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
509
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
510
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
510
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
511
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
511
})
512
})
512
end -- tup.getconfig('NO_NASM') ~= 'full'
513
end -- tup.getconfig('NO_NASM') ~= 'full'
513
 
514
 
514
-- Programs that require C-- to compile.
515
-- Programs that require C-- to compile.
515
if tup.getconfig('NO_CMM') ~= 'full' then
516
if tup.getconfig('NO_CMM') ~= 'full' then
516
tup.append_table(img_files, {
517
tup.append_table(img_files, {
517
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
518
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
518
 {"FONT_VIEWER", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
519
 {"FONT_VIEWER", PROGS .. "/cmm/kf_font_viewer/font_viewer.com"},
519
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
520
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
520
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
521
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
521
 {"GAMES/flood-it", PROGS .. "/games/flood-it/trunk/flood-it.com"},
522
 {"GAMES/flood-it", PROGS .. "/games/flood-it/trunk/flood-it.com"},
522
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
523
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
523
 {"MEDIA/PIXIE/PIXIE", PROGS .. "/cmm/pixie/pixie.com"},
524
 {"MEDIA/PIXIE/PIXIE", PROGS .. "/cmm/pixie/pixie.com"},
524
 {"MOUSE_CFG", PROGS .. "/cmm/mouse_cfg/mouse_cfg.com"},
525
 {"MOUSE_CFG", PROGS .. "/cmm/mouse_cfg/mouse_cfg.com"},
525
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
526
 {"NETWORK/WEBVIEW", PROGS .. "/cmm/browser/WebView.com"},
526
 {"PANELS_CFG", PROGS .. "/cmm/panels_cfg/panels_cfg.com"},
527
 {"PANELS_CFG", PROGS .. "/cmm/panels_cfg/panels_cfg.com"},
527
 {"TEXTREADER", PROGS .. "/cmm/textreader/textreader.com"},
528
 {"TEXTREADER", PROGS .. "/cmm/textreader/textreader.com"},
528
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
529
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
529
 {"GAME_CENTER", PROGS .. "/cmm/software_widget/software_widget.com"},
530
 {"GAME_CENTER", PROGS .. "/cmm/software_widget/software_widget.com"},
530
 {"SYSPANEL", PROGS .. "/cmm/software_widget/software_widget.com"},
531
 {"SYSPANEL", PROGS .. "/cmm/software_widget/software_widget.com"},
531
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
532
 {"APP_PLUS", PROGS .. "/cmm/app_plus/app_plus.com"},
532
})
533
})
533
end -- tup.getconfig('NO_CMM') ~= 'full'
534
end -- tup.getconfig('NO_CMM') ~= 'full'
534
 
535
 
535
-- Programs that require MSVC to compile.
536
-- Programs that require MSVC to compile.
536
if tup.getconfig('NO_MSVC') ~= 'full' then
537
if tup.getconfig('NO_MSVC') ~= 'full' then
537
tup.append_table(img_files, {
538
tup.append_table(img_files, {
538
 {"GRAPH", PROGS .. "/other/graph/graph"},
539
 {"GRAPH", PROGS .. "/other/graph/graph"},
539
 {"TABLE", PROGS .. "/other/table/table"},
540
 {"TABLE", PROGS .. "/other/table/table"},
540
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
541
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
541
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
542
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
542
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
543
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
543
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
544
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
544
})
545
})
545
tup.append_table(extra_files, {
546
tup.append_table(extra_files, {
546
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
547
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
547
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
548
 {"kolibrios/games/LaserTank/LaserTank", PROGS .. "/games/LaserTank/trunk/LaserTank"},
548
})
549
})
549
end -- tup.getconfig('NO_MSVC') ~= 'full'
550
end -- tup.getconfig('NO_MSVC') ~= 'full'
550
 
551
 
551
-- Programs that require GCC to compile.
552
-- Programs that require GCC to compile.
552
if tup.getconfig('NO_GCC') ~= 'full' then
553
if tup.getconfig('NO_GCC') ~= 'full' then
553
tup.append_table(img_files, {
554
tup.append_table(img_files, {
554
 {"3D/CUBELINE", PROGS .. "/demos/cubeline/trunk/cubeline"},
555
 {"3D/CUBELINE", PROGS .. "/demos/cubeline/trunk/cubeline"},
555
 {"3D/GEARS", PROGS .. "/demos/gears/trunk/gears"},
556
 {"3D/GEARS", PROGS .. "/demos/gears/trunk/gears"},
556
 {"GAMES/CHECKERS", PROGS .. "/games/checkers/trunk/checkers"},
557
 {"GAMES/CHECKERS", PROGS .. "/games/checkers/trunk/checkers"},
557
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
558
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
558
 {"SHELL", PROGS .. "/system/shell/shell"},
559
 {"SHELL", PROGS .. "/system/shell/shell"},
559
})
560
})
560
tup.append_table(extra_files, {
561
tup.append_table(extra_files, {
561
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
562
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
562
 {"kolibrios/games/2048/", PROGS .. "/games/2048/2048"},
563
 {"kolibrios/games/2048/", PROGS .. "/games/2048/2048"},
563
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
564
 {"kolibrios/games/donkey", PROGS .. "/games/donkey/donkey"},
564
 {"kolibrios/games/heliothryx/", PROGS .. "/games/heliothryx/heliothryx"},
565
 {"kolibrios/games/heliothryx/", PROGS .. "/games/heliothryx/heliothryx"},
565
 {"kolibrios/games/marblematch3/", PROGS .. "/games/marblematch3/marblematch3"},
566
 {"kolibrios/games/marblematch3/", PROGS .. "/games/marblematch3/marblematch3"},
566
 {"kolibrios/games/nsider/", PROGS .. "/games/nsider/nsider"},
567
 {"kolibrios/games/nsider/", PROGS .. "/games/nsider/nsider"},
567
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
568
 {"kolibrios/games/quake/", "common/games/quake/*"}, -- not really gcc, but no sense without sdlquake
568
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
569
 {"kolibrios/games/quake/", "../contrib/other/sdlquake-1.0.9/sdlquake"},
569
})
570
})
570
-- For russian build, add russian-only programs.
571
-- For russian build, add russian-only programs.
571
if build_type == "rus" then tup.append_table(extra_files, {
572
if build_type == "rus" then tup.append_table(extra_files, {
572
 {"kolibrios/games/21days/", PROGS .. "/games/21days/21days"},
573
 {"kolibrios/games/21days/", PROGS .. "/games/21days/21days"},
573
}) end
574
}) end
574
end -- tup.getconfig('NO_GCC') ~= 'full'
575
end -- tup.getconfig('NO_GCC') ~= 'full'
575
 
576
 
576
-- Skins.
577
-- Skins.
577
tup.include("../skins/skinlist.lua")
578
tup.include("../skins/skinlist.lua")
578
 
579
 
579
--[================================[ CODE ]================================]--
580
--[================================[ CODE ]================================]--
580
-- expand extra_files and similar
581
-- expand extra_files and similar
581
function expand_extra_files(files)
582
function expand_extra_files(files)
582
  local result = {}
583
  local result = {}
583
  for i,v in ipairs(files) do
584
  for i,v in ipairs(files) do
584
    if string.match(v[2], "%*")
585
    if string.match(v[2], "%*")
585
    then
586
    then
586
      local g = tup.glob(v[2])
587
      local g = tup.glob(v[2])
587
      for j,x in ipairs(g) do
588
      for j,x in ipairs(g) do
588
        table.insert(result, {v[1], x, group=v.group})
589
        table.insert(result, {v[1], x, group=v.group})
589
      end
590
      end
590
    else
591
    else
591
      if v.cp1251_from then
592
      if v.cp1251_from then
592
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
593
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
593
      end
594
      end
594
      table.insert(result, {v[1], v[2], group=v.group})
595
      table.insert(result, {v[1], v[2], group=v.group})
595
    end
596
    end
596
  end
597
  end
597
  return result
598
  return result
598
end
599
end
599
 
600
 
600
-- append skins to extra_files
601
-- append skins to extra_files
601
for i,v in ipairs(skinlist) do
602
for i,v in ipairs(skinlist) do
602
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
603
  table.insert(extra_files, {"kolibrios/res/skins/", "../skins/" .. v})
603
end
604
end
604
 
605
 
605
-- prepare distr_extra_files and iso_extra_files: expand and append common part
606
-- prepare distr_extra_files and iso_extra_files: expand and append common part
606
extra_files = expand_extra_files(extra_files)
607
extra_files = expand_extra_files(extra_files)
607
distr_extra_files = expand_extra_files(distr_extra_files)
608
distr_extra_files = expand_extra_files(distr_extra_files)
608
iso_extra_files = expand_extra_files(iso_extra_files)
609
iso_extra_files = expand_extra_files(iso_extra_files)
609
tup.append_table(distr_extra_files, extra_files)
610
tup.append_table(distr_extra_files, extra_files)
610
tup.append_table(iso_extra_files, extra_files)
611
tup.append_table(iso_extra_files, extra_files)
611
 
612
 
612
-- generate list of directories to be created inside kolibri.img
613
-- generate list of directories to be created inside kolibri.img
613
img_dirs = {}
614
img_dirs = {}
614
input_deps = {}
615
input_deps = {}
615
for i,v in ipairs(img_files) do
616
for i,v in ipairs(img_files) do
616
  img_file = v[1]
617
  img_file = v[1]
617
  local_file = v[2]
618
  local_file = v[2]
618
 
619
 
619
  slash_pos = 0
620
  slash_pos = 0
620
  while true do
621
  while true do
621
    slash_pos = string.find(img_file, '/', slash_pos + 1)
622
    slash_pos = string.find(img_file, '/', slash_pos + 1)
622
    if not slash_pos then break end
623
    if not slash_pos then break end
623
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
624
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
624
  end
625
  end
625
 
626
 
626
  -- tup does not want to see hidden files as dependencies
627
  -- tup does not want to see hidden files as dependencies
627
  if not string.match(local_file, "/%.") then
628
  if not string.match(local_file, "/%.") then
628
    table.insert(input_deps, v.group or local_file)
629
    table.insert(input_deps, v.group or local_file)
629
  end
630
  end
630
end
631
end
631
 
632
 
632
-- create empty 1.44M file
633
-- create empty 1.44M file
633
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
634
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
634
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
635
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
635
-- format it as a standard 1.44M floppy
636
-- format it as a standard 1.44M floppy
636
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
637
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
637
-- copy bootloader
638
-- copy bootloader
638
if tup.getconfig("NO_FASM") ~= "full" then
639
if tup.getconfig("NO_FASM") ~= "full" then
639
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
640
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
640
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
641
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
641
table.insert(input_deps, bootloader)
642
table.insert(input_deps, bootloader)
642
end
643
end
643
-- make folders
644
-- make folders
644
table.sort(img_dirs)
645
table.sort(img_dirs)
645
for i,v in ipairs(img_dirs) do
646
for i,v in ipairs(img_dirs) do
646
  if v ~= img_dirs[i-1] then
647
  if v ~= img_dirs[i-1] then
647
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
648
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
648
  end
649
  end
649
end
650
end
650
-- copy files
651
-- copy files
651
for i,v in ipairs(img_files) do
652
for i,v in ipairs(img_files) do
652
  local_file = v[2]
653
  local_file = v[2]
653
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
654
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
654
  then
655
  then
655
    -- for kernel.mnt, insert autobuild revision identifier
656
    -- for kernel.mnt, insert autobuild revision identifier
656
    -- from .revision to .kernel.mnt
657
    -- from .revision to .kernel.mnt
657
    -- note that .revision and .kernel.mnt must begin with .
658
    -- note that .revision and .kernel.mnt must begin with .
658
    -- to prevent tup from tracking them
659
    -- to prevent tup from tracking them
659
    if build_type == "rus"
660
    if build_type == "rus"
660
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
661
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
661
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
662
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
662
    end
663
    end
663
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
664
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
664
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
665
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
665
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
666
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
666
    make_img_command = make_img_command .. " && str=" .. str
667
    make_img_command = make_img_command .. " && str=" .. str
667
    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'
668
    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'
668
    local_file = ".kernel.mnt"
669
    local_file = ".kernel.mnt"
669
  end
670
  end
670
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
671
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
671
end
672
end
672
 
673
 
673
-- generate tup rule for kolibri.img
674
-- generate tup rule for kolibri.img
674
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
675
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
675
 
676
 
676
-- generate command and dependencies for mkisofs
677
-- generate command and dependencies for mkisofs
677
input_deps = {"kolibri.img"}
678
input_deps = {"kolibri.img"}
678
iso_files_list = ""
679
iso_files_list = ""
679
for i,v in ipairs(iso_extra_files) do
680
for i,v in ipairs(iso_extra_files) do
680
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
681
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
681
  table.insert(input_deps, v.group or v[2])
682
  table.insert(input_deps, v.group or v[2])
682
end
683
end
683
 
684
 
684
-- generate tup rule for kolibri.iso
685
-- generate tup rule for kolibri.iso
685
if tup.getconfig("INSERT_REVISION_ID") ~= ""
686
if tup.getconfig("INSERT_REVISION_ID") ~= ""
686
then volume_id = "KolibriOS r`cat .revision`"
687
then volume_id = "KolibriOS r`cat .revision`"
687
else volume_id = "KolibriOS"
688
else volume_id = "KolibriOS"
688
end
689
end
689
tup.definerule{inputs = input_deps, command =
690
tup.definerule{inputs = input_deps, command =
690
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
691
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
691
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
692
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
692
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
693
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
693
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
694
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
694
  outputs = {"kolibri.iso"}}
695
  outputs = {"kolibri.iso"}}
695
 
696
 
696
-- generate command and dependencies for distribution kit
697
-- generate command and dependencies for distribution kit
697
cp = 'cp "%f" "%o"'
698
cp = 'cp "%f" "%o"'
698
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
699
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
699
for i,v in ipairs(distr_extra_files) do
700
for i,v in ipairs(distr_extra_files) do
700
  cmd = cp:gsub("%%f", v[2]) -- input can be a group, we can't rely on tup's expansion of %f in this case
701
  cmd = cp:gsub("%%f", v[2]) -- input can be a group, we can't rely on tup's expansion of %f in this case
701
  if string.sub(v[1], -1) == "/"
702
  if string.sub(v[1], -1) == "/"
702
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
703
  then tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
703
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
704
  else tup.definerule{inputs = {v.group or v[2]}, command = cmd, outputs = {"distribution_kit/" .. v[1]}}
704
  end
705
  end
705
end
706
end