Subversion Repositories Kolibri OS

Rev

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

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