Subversion Repositories Kolibri OS

Rev

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

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