Subversion Repositories Kolibri OS

Rev

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

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