Subversion Repositories Kolibri OS

Rev

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

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