Subversion Repositories Kolibri OS

Rev

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

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