Subversion Repositories Kolibri OS

Rev

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

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