Subversion Repositories Kolibri OS

Rev

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

Rev 5118 Rev 5123
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
 {"DEVELOP/TE_ICON.PNG", PROGS .. "/other/t_edit/te_icon.png"},
18
 {"DEVELOP/TE_ICON.PNG", PROGS .. "/other/t_edit/te_icon.png"},
19
 {"DEVELOP/TL_NOD_16.PNG", PROGS .. "/other/t_edit/tl_nod_16.png"},
19
 {"DEVELOP/TL_NOD_16.PNG", PROGS .. "/other/t_edit/tl_nod_16.png"},
20
 {"DEVELOP/TL_SYS_16.PNG", PROGS .. "/media/log_el/trunk/tl_sys_16.png"},
20
 {"DEVELOP/TL_SYS_16.PNG", PROGS .. "/media/log_el/trunk/tl_sys_16.png"},
21
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
21
 {"DEVELOP/T_EDIT.INI", PROGS .. "/other/t_edit/t_edit.ini"},
22
 {"File Managers/Z_ICONS.PNG", PROGS .. "/fs/opendial/z_icons.png"},
22
 {"File Managers/Z_ICONS.PNG", PROGS .. "/fs/opendial/z_icons.png"},
23
 {"File Managers/BUTTONS.BMP", PROGS .. "/fs/kfm/trunk/buttons.bmp"},
23
 {"File Managers/BUTTONS.BMP", PROGS .. "/fs/kfm/trunk/buttons.bmp"},
24
 {"File Managers/ICONS.BMP", PROGS .. "/fs/kfm/trunk/icons.bmp"},
24
 {"File Managers/ICONS.BMP", PROGS .. "/fs/kfm/trunk/icons.bmp"},
25
 {"FONTS/LITT.CHR", PROGS .. "/demos/bgitest/trunk/FONTS/LITT.CHR"},
25
 {"FONTS/LITT.CHR", PROGS .. "/demos/bgitest/trunk/FONTS/LITT.CHR"},
26
 {"GAMES/SNAKE.INI", PROGS .. "/games/snake/trunk/snake.ini"},
26
 {"GAMES/SNAKE.INI", PROGS .. "/games/snake/trunk/snake.ini"},
27
 {"MEDIA/KIV.INI", PROGS .. "/media/kiv/trunk/kiv.ini"},
27
 {"MEDIA/KIV.INI", PROGS .. "/media/kiv/trunk/kiv.ini"},
28
 {"NETWORK/WV_SKIN.PNG", PROGS .. "/cmm/browser/wv_skin.png"},
28
 {"NETWORK/WV_SKIN.PNG", PROGS .. "/cmm/browser/wv_skin.png"},
29
 {"SETTINGS/AUTORUN.DAT", build_type .. "/settings/autorun.dat"},
29
 {"SETTINGS/AUTORUN.DAT", build_type .. "/settings/autorun.dat"},
30
 {"DEFAULT.SKN", build_type .. "/default.skn"},
30
 {"DEFAULT.SKN", build_type .. "/default.skn"},
31
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
31
 {"SETTINGS/ICON.INI", build_type .. "/settings/icon.ini"},
32
 {"ICONSTRP.PNG", "common/iconstrp.png"},
32
 {"ICONSTRP.PNG", "common/iconstrp.png"},
33
 {"INDEX.HTM", build_type .. "/index_htm"},
33
 {"INDEX.HTM", build_type .. "/index_htm"},
34
 {"KERPACK", "common/kerpack"},
34
 {"KERPACK", "common/kerpack"},
35
 {"SETTINGS/KEYMAP.KEY", build_type .. "/settings/keymap.key"},
35
 {"SETTINGS/KEYMAP.KEY", build_type .. "/settings/keymap.key"},
36
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
36
 {"SETTINGS/LANG.INI", build_type .. "/settings/lang.ini"},
37
 {"KUZKINA.MID", "common/kuzkina.mid"},
37
 {"KUZKINA.MID", "common/kuzkina.mid"},
38
 {"LANG.INC", build_type .. "/lang.inc"},
38
 {"LANG.INC", build_type .. "/lang.inc"},
39
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
39
 {"SETTINGS/MENU.DAT", build_type .. "/settings/menu.dat"},
40
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
40
 {"SETTINGS/KOLIBRI.LBL", build_type .. "/settings/kolibri.lbl"},
41
 {"SETTINGS/PANEL.INI", build_type .. "/settings/panel.ini"},
41
 {"SETTINGS/PANEL.INI", build_type .. "/settings/panel.ini"},
42
 {"SETTINGS/DOCKY.INI", "common/settings/docky.ini"},
42
 {"SETTINGS/DOCKY.INI", "common/settings/docky.ini"},
43
 {"NOTIFY3.PNG", "common/notify3.png"},
43
 {"NOTIFY3.PNG", "common/notify3.png"},
44
 {"SETTINGS/SETUP.DAT", build_type .. "/settings/setup.dat"},
44
 {"SETTINGS/SETUP.DAT", build_type .. "/settings/setup.dat"},
45
 {"VMODE", "common/vmode"},
45
 {"VMODE", "common/vmode"},
46
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
46
 {"3D/HOUSE.3DS", "common/3d/house.3ds"},
47
 {"DEMOS/AK47.LIF", "common/demos/ak47.lif"},
47
 {"DEMOS/AK47.LIF", "common/demos/ak47.lif"},
48
 {"DEMOS/LIFE2", "common/demos/life2"},
48
 {"DEMOS/LIFE2", "common/demos/life2"},
49
 {"DEMOS/RELAY.LIF", "common/demos/relay.lif"},
49
 {"DEMOS/RELAY.LIF", "common/demos/relay.lif"},
50
 {"DEMOS/RPENTO.LIF", "common/demos/rpento.lif"},
50
 {"DEMOS/RPENTO.LIF", "common/demos/rpento.lif"},
51
 {"File Managers/EOLITE.INI", "common/File Managers/eolite.ini"},
51
 {"File Managers/EOLITE.INI", "common/File Managers/eolite.ini"},
52
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
52
 {"File Managers/ICONS.INI", "common/File Managers/icons.ini"},
53
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
53
 {"File Managers/KFM.INI", "common/File Managers/kfm.ini"},
54
 {"GAMES/CHECKERS", build_type .. "/games/checkers"},
-
 
55
 {"GAMES/MEGAMAZE", build_type .. "/games/megamaze"},
54
 {"GAMES/MEGAMAZE", build_type .. "/games/megamaze"},
56
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
55
 {"LIB/PIXLIB.OBJ", "common/lib/pixlib.obj"},
57
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
56
 {"LIB/ICONV.OBJ", "common/lib/iconv.obj"},
58
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
57
 {"LIB/NETCODE.OBJ", "common/lib/netcode.obj"},
59
 {"MEDIA/ImgF/ImgF", "common/media/ImgF/ImgF"},
58
 {"MEDIA/ImgF/ImgF", "common/media/ImgF/ImgF"},
60
 {"MEDIA/ImgF/cEdg.obj", "common/media/ImgF/cEdg.obj"},
59
 {"MEDIA/ImgF/cEdg.obj", "common/media/ImgF/cEdg.obj"},
61
 {"MEDIA/ImgF/dither.obj", "common/media/ImgF/dither.obj"},
60
 {"MEDIA/ImgF/dither.obj", "common/media/ImgF/dither.obj"},
62
 {"MEDIA/ImgF/invSol.obj", "common/media/ImgF/invSol.obj"},
61
 {"MEDIA/ImgF/invSol.obj", "common/media/ImgF/invSol.obj"},
63
 {"SETTINGS/NETWORK.INI", build_type .. "/settings/network.ini"},
62
 {"SETTINGS/NETWORK.INI", build_type .. "/settings/network.ini"},
64
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
63
 {"NETWORK/FTPD.INI", "common/network/ftpd.ini"},
65
 {"NETWORK/USERS.INI", "common/network/users.ini"},
64
 {"NETWORK/USERS.INI", "common/network/users.ini"},
66
}
65
}
67
-- For russian build, add russian-only files.
66
-- For russian build, add russian-only files.
68
if build_type == "rus" then tup.append_table(img_files, {
67
if build_type == "rus" then tup.append_table(img_files, {
69
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
68
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt"},
70
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
69
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/rus/.shell"},
71
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
70
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
72
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
71
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/rus/example.asm"},
73
 {"PIPETKA", build_type .. "/pipetka"},
72
 {"PIPETKA", build_type .. "/pipetka"},
74
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
73
 {"File Managers/KFAR.INI", build_type .. "/File Managers/kfar.ini"},
75
 {"GAMES/APPDATA.DAT", build_type .. "/games/appdata.dat"},
74
 {"GAMES/APPDATA.DAT", build_type .. "/games/appdata.dat"},
76
 {"GAMES/ATAKA", build_type .. "/games/ataka"},
75
 {"GAMES/ATAKA", build_type .. "/games/ataka"},
77
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
76
 {"GAMES/BASEKURS.KLA", build_type .. "/games/basekurs.kla"},
78
 {"GAMES/PADENIE", build_type .. "/games/padenie"},
77
 {"GAMES/PADENIE", build_type .. "/games/padenie"},
79
 {"GAMES/WHOWTBAM", build_type .. "/games/whowtbam"},
78
 {"GAMES/WHOWTBAM", build_type .. "/games/whowtbam"},
80
}) else tup.append_table(img_files, {
79
}) else tup.append_table(img_files, {
81
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
80
 {"File Managers/KFM_KEYS.TXT", PROGS .. "/fs/kfm/trunk/docs/english/kfm_keys.txt"},
82
 {"GAMES/SKIN.RAW", PROGS .. "/games/soko/trunk/SKIN.RAW"},
81
 {"GAMES/SKIN.RAW", PROGS .. "/games/soko/trunk/SKIN.RAW"},
83
 {"GAMES/SOKO-4.LEV", PROGS .. "/games/soko/trunk/SOKO-4.LEV"},
82
 {"GAMES/SOKO-4.LEV", PROGS .. "/games/soko/trunk/SOKO-4.LEV"},
84
 {"GAMES/SOKO-5.LEV", PROGS .. "/games/soko/trunk/SOKO-5.LEV"},
83
 {"GAMES/SOKO-5.LEV", PROGS .. "/games/soko/trunk/SOKO-5.LEV"},
85
 {"GAMES/SOKO-6.LEV", PROGS .. "/games/soko/trunk/SOKO-6.LEV"},
84
 {"GAMES/SOKO-6.LEV", PROGS .. "/games/soko/trunk/SOKO-6.LEV"},
86
 {"GAMES/SOKO-7.LEV", PROGS .. "/games/soko/trunk/SOKO-7.LEV"},
85
 {"GAMES/SOKO-7.LEV", PROGS .. "/games/soko/trunk/SOKO-7.LEV"},
87
 {"GAMES/SOKO-8.LEV", PROGS .. "/games/soko/trunk/SOKO-8.LEV"},
86
 {"GAMES/SOKO-8.LEV", PROGS .. "/games/soko/trunk/SOKO-8.LEV"},
88
 {"GAMES/SOKO-9.LEV", PROGS .. "/games/soko/trunk/SOKO-9.LEV"},
87
 {"GAMES/SOKO-9.LEV", PROGS .. "/games/soko/trunk/SOKO-9.LEV"},
89
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
88
 {"SETTINGS/.shell", PROGS .. "/system/shell/bin/eng/.shell"},
90
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
89
 {"EXAMPLE.ASM", PROGS .. "/develop/examples/example/trunk/example.asm"},
91
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
90
 {"File Managers/KFAR.INI", "common/File Managers/kfar.ini"},
92
}) end
91
}) end
93
if build_type == "it" then tup.append_table(img_files, {
92
if build_type == "it" then tup.append_table(img_files, {
94
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
93
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey_it.ini"},
95
}) else tup.append_table(img_files, {
94
}) else tup.append_table(img_files, {
96
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
95
 {"SETTINGS/MYKEY.INI", PROGS .. "/system/MyKey/trunk/mykey.ini"},
97
}) end
96
}) end
98
 
97
 
99
--[[
98
--[[
100
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
99
Files to be included in kolibri.iso and distribution kit outside of kolibri.img.
101
The first subitem of every item is name relative to the root of ISO or distribution kit,
100
The first subitem of every item is name relative to the root of ISO or distribution kit,
102
the second is name of local file.
101
the second is name of local file.
103
If the first subitem ends in /, the last component of local file name is appended.
102
If the first subitem ends in /, the last component of local file name is appended.
104
The last component of the second subitem may contain '*'; if so, it will be expanded
103
The last component of the second subitem may contain '*'; if so, it will be expanded
105
according to usual rules, but without matching directories.
104
according to usual rules, but without matching directories.
106
--]]
105
--]]
107
extra_files = {
106
extra_files = {
108
 {"/", build_type .. "/distr_data/autorun.inf"},
107
 {"/", build_type .. "/distr_data/autorun.inf"},
109
 {"/", build_type .. "/distr_data/KolibriOS_icon.ico"},
108
 {"/", build_type .. "/distr_data/KolibriOS_icon.ico"},
110
 {"/", build_type .. "/settings/kolibri.lbl"},
109
 {"/", build_type .. "/settings/kolibri.lbl"},
111
 {"Skins/", "../skins/authors.txt"},
110
 {"Skins/", "../skins/authors.txt"},
112
 {"Docs/stack.txt", build_type .. "/docs/STACK.TXT"},
111
 {"Docs/stack.txt", build_type .. "/docs/STACK.TXT"},
113
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
112
 {"HD_Load/9x2klbr/", "common/HD_load/9x2klbr/LDKLBR.VXD"},
114
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
113
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/AUTOEXEC.BAT"},
115
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
114
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/CONFIG.SYS"},
116
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
115
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme.txt"},
117
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
116
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/L_readme_Win.txt"},
118
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
117
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_install.bat"},
119
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
118
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/vista_remove.bat"},
120
 {"HD_Load/", "common/HD_load/memdisk"},
119
 {"HD_Load/", "common/HD_load/memdisk"},
121
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
120
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"},
122
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
121
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
123
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
122
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
124
 {"games/pig/", "common/games/pig/*"},
123
 {"games/pig/", "common/games/pig/*"},
125
 {"games/soko/soko", build_type .. "/games/soko"},
124
 {"games/soko/soko", build_type .. "/games/soko"},
126
 {"games/soko/", "common/games/soko/*"},
125
 {"games/soko/", "common/games/soko/*"},
127
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
126
 {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"},
128
 {"kolibrios/emul/fceu/", "common/emul/fceu/*"},
127
 {"kolibrios/emul/fceu/", "common/emul/fceu/*"},
129
 {"kolibrios/emul/", "common/emul/gameboy"},
128
 {"kolibrios/emul/", "common/emul/gameboy"},
130
 {"kolibrios/emul/", "common/emul/scummvm"},
129
 {"kolibrios/emul/", "common/emul/scummvm"},
131
 {"kolibrios/emul/", "common/emul/zsnes"},
130
 {"kolibrios/emul/", "common/emul/zsnes"},
132
 {"kolibrios/games/doom/", "common/games/doom/*"},
131
 {"kolibrios/games/doom/", "common/games/doom/*"},
133
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
132
 {"kolibrios/games/fara/fara.gfx", "common/games/fara.gfx"},
134
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
133
 {"kolibrios/games/jumpbump/", "common/games/jumpbump/*"},
135
 {"kolibrios/games/quake/", "common/games/quake/*"},
134
 {"kolibrios/games/quake/", "common/games/quake/*"},
136
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
135
 {"kolibrios/games/lrl/", "common/games/lrl/*"},
137
 {"kolibrios/lib/avcodec-55.dll", "common/lib/avcodec-55.dll"},
136
 {"kolibrios/lib/avcodec-55.dll", "common/lib/avcodec-55.dll"},
138
 {"kolibrios/lib/avdevice-55.dll", "common/lib/avdevice-55.dll"},
137
 {"kolibrios/lib/avdevice-55.dll", "common/lib/avdevice-55.dll"},
139
 {"kolibrios/lib/avformat-55.dll", "common/lib/avformat-55.dll"},
138
 {"kolibrios/lib/avformat-55.dll", "common/lib/avformat-55.dll"},
140
 {"kolibrios/lib/avutil-52.dll", "common/lib/avutil-52.dll"},
139
 {"kolibrios/lib/avutil-52.dll", "common/lib/avutil-52.dll"},
141
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
140
 {"kolibrios/lib/freetype.dll", "common/lib/freetype.dll"},
142
 {"kolibrios/lib/libc.dll", "common/lib/libc.dll"},
141
 {"kolibrios/lib/libc.dll", "common/lib/libc.dll"},
143
 {"kolibrios/lib/pixlib.dll", "common/lib/pixlib.dll"},
142
 {"kolibrios/lib/pixlib.dll", "common/lib/pixlib.dll"},
144
 {"kolibrios/lib/swresample-0.dll", "common/lib/swresample-0.dll"},
143
 {"kolibrios/lib/swresample-0.dll", "common/lib/swresample-0.dll"},
145
 {"kolibrios/lib/swscale-2.dll", "common/lib/swscale-2.dll"},
144
 {"kolibrios/lib/swscale-2.dll", "common/lib/swscale-2.dll"},
146
 {"kolibrios/lib/zlib.dll", "common/lib/zlib.dll"},
145
 {"kolibrios/lib/zlib.dll", "common/lib/zlib.dll"},
147
 {"kolibrios/media/fplay-full", "common/media/fplay-full"},
146
 {"kolibrios/media/fplay-full", "common/media/fplay-full"},
148
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
147
 {"kolibrios/media/zsea/zsea.ini", PROGS .. "/media/zsea/zSea.ini"},
149
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
148
 {"kolibrios/media/zsea/buttons/buttons.png", PROGS .. "/media/zsea/buttons.png"},
150
}
149
}
151
if build_type == "rus" then tup.append_table(extra_files, {
150
if build_type == "rus" then tup.append_table(extra_files, {
152
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
151
 {"Docs/cp866/config.txt", build_type .. "/docs/CONFIG.TXT"},
153
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
152
 {"Docs/cp866/gnu.txt", build_type .. "/docs/GNU.TXT"},
154
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
153
 {"Docs/cp866/history.txt", build_type .. "/docs/HISTORY.TXT"},
155
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
154
 {"Docs/cp866/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
156
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
155
 {"Docs/cp866/install.txt", build_type .. "/docs/INSTALL.TXT"},
157
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
156
 {"Docs/cp866/readme.txt", build_type .. "/docs/README.TXT"},
158
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
157
 {"Docs/cp866/sysfuncr.txt", PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
159
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
158
 {"Docs/cp1251/config.txt", build_type .. "/docs/CONFIG.WIN.TXT", cp1251_from = build_type .. "/docs/CONFIG.TXT"},
160
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
159
 {"Docs/cp1251/gnu.txt", build_type .. "/docs/GNU.WIN.TXT", cp1251_from = build_type .. "/docs/GNU.TXT"},
161
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
160
 {"Docs/cp1251/history.txt", build_type .. "/docs/HISTORY.WIN.TXT", cp1251_from = build_type .. "/docs/HISTORY.TXT"},
162
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
161
 {"Docs/cp1251/hot_keys.txt", build_type .. "/docs/HOT_KEYS.WIN.TXT", cp1251_from = build_type .. "/docs/HOT_KEYS.TXT"},
163
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
162
 {"Docs/cp1251/install.txt", build_type .. "/docs/INSTALL.WIN.TXT", cp1251_from = build_type .. "/docs/INSTALL.TXT"},
164
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
163
 {"Docs/cp1251/readme.txt", build_type .. "/docs/README.WIN.TXT", cp1251_from = build_type .. "/docs/README.TXT"},
165
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
164
 {"Docs/cp1251/sysfuncr.txt", build_type .. "/docs/SYSFUNCR.WIN.TXT", cp1251_from = PROGS .. "/system/docpack/trunk/SYSFUNCR.TXT"},
166
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
165
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_dos.txt"},
167
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
166
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme_win.txt"},
168
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
167
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/install.txt"},
169
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
168
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/readme.txt"},
170
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
169
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_rus.txt"},
171
}) else tup.append_table(extra_files, {
170
}) else tup.append_table(extra_files, {
172
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
171
 {"Docs/config.txt", build_type .. "/docs/CONFIG.TXT"},
173
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
172
 {"Docs/copying.txt", build_type .. "/docs/COPYING.TXT"},
174
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
173
 {"Docs/hot_keys.txt", build_type .. "/docs/HOT_KEYS.TXT"},
175
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
174
 {"Docs/install.txt", build_type .. "/docs/INSTALL.TXT"},
176
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
175
 {"Docs/readme.txt", build_type .. "/docs/README.TXT"},
177
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
176
 {"Docs/sysfuncs.txt", PROGS .. "/system/docpack/trunk/SYSFUNCS.TXT"},
178
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
177
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/readme.txt"},
179
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
178
 {"HD_Load/mtldr/install.txt", PROGS .. "/hd_load/mtldr/install_eng.txt"},
180
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
179
 {"HD_Load/USB_Boot/readme.txt", PROGS .. "/hd_load/usb_boot/readme_eng.txt"},
181
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
180
 {"kolibrios/media/zsea/zsea_keys.txt", PROGS .. "/media/zsea/Docs/zSea_keys_eng.txt"},
182
}) end
181
}) end
183
--[[
182
--[[
184
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
183
Files to be included in distribution kit outside of kolibri.img, but not kolibri.iso.
185
Same syntax as extra_files.
184
Same syntax as extra_files.
186
]]--
185
]]--
187
if build_type == "rus" then
186
if build_type == "rus" then
188
distr_extra_files = {
187
distr_extra_files = {
189
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
188
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos_distr.txt"},
190
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
189
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt", cp1251_from = build_type .. "/distr_data/readme_dos_distr.txt"},
191
}
190
}
192
else
191
else
193
distr_extra_files = {
192
distr_extra_files = {
194
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
193
 {"/readme.txt", build_type .. "/distr_data/readme_distr.txt"},
195
}
194
}
196
end
195
end
197
--[[
196
--[[
198
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
197
Files to be included in kolibri.iso outside of kolibri.img, but not distribution kit.
199
Same syntax as extra_files.
198
Same syntax as extra_files.
200
]]--
199
]]--
201
if build_type == "rus" then
200
if build_type == "rus" then
202
iso_extra_files = {
201
iso_extra_files = {
203
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
202
 {"/readme_dos.txt", build_type .. "/distr_data/readme_dos.txt"},
204
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
203
 {"/readme.txt", build_type .. "/distr_data/readme.txt", cp1251_from = build_type .. "/distr_data/readme_dos.txt"},
205
}
204
}
206
else
205
else
207
iso_extra_files = {
206
iso_extra_files = {
208
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
207
 {"/readme.txt", build_type .. "/distr_data/readme.txt"},
209
}
208
}
210
end
209
end
211
 
210
 
212
-- Programs that require FASM to compile.
211
-- Programs that require FASM to compile.
213
if tup.getconfig('NO_FASM') ~= 'full' then
212
if tup.getconfig('NO_FASM') ~= 'full' then
214
tup.append_table(img_files, {
213
tup.append_table(img_files, {
215
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
214
 {"KERNEL.MNT", "../kernel/trunk/kernel.mnt"},
216
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
215
 {"@MENU", PROGS .. "/system/menu/trunk/menu"},
217
 {"@PANEL", PROGS .. "/system/panel/trunk/@PANEL"},
216
 {"@PANEL", PROGS .. "/system/panel/trunk/@PANEL"},
218
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
217
 {"@DOCKY", PROGS .. "/system/docky/trunk/docky"},
219
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
218
 {"@NOTIFY", PROGS .. "/system/notify3/notify"},
220
 {"@SS", PROGS .. "/system/ss/trunk/@ss"},
219
 {"@SS", PROGS .. "/system/ss/trunk/@ss"},
221
 {"REFRSCRN", PROGS .. "/system/refrscrn/refrscrn"},
220
 {"REFRSCRN", PROGS .. "/system/refrscrn/refrscrn"},
222
 {"ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
221
 {"ASCIIVJU", PROGS .. "/develop/asciivju/trunk/asciivju"},
223
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
222
 {"CALC", PROGS .. "/other/calc/trunk/calc"},
224
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
223
 {"CALENDAR", PROGS .. "/system/calendar/trunk/calendar"},
225
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
224
 {"COLRDIAL", PROGS .. "/system/colrdial/color_dialog"},
226
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
225
 {"LOADDRV", PROGS .. "/system/loaddrv/loaddrv"},
227
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
226
 {"CPU", PROGS .. "/system/cpu/trunk/cpu"},
228
 {"CPUID", PROGS .. "/system/cpuid/trunk/CPUID"},
227
 {"CPUID", PROGS .. "/system/cpuid/trunk/CPUID"},
229
 {"DESKTOP", PROGS .. "/system/desktop/trunk/desktop"},
228
 {"DESKTOP", PROGS .. "/system/desktop/trunk/desktop"},
230
 {"DISPTEST", PROGS .. "/system/disptest/trunk/disptest"},
229
 {"DISPTEST", PROGS .. "/system/disptest/trunk/disptest"},
231
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
230
 {"DOCPACK", PROGS .. "/system/docpack/trunk/docpack"},
232
 {"END", PROGS .. "/system/end/light/end"},
231
 {"END", PROGS .. "/system/end/light/end"},
233
 {"FSPEED", PROGS .. "/fs/fspeed/fspeed"},
232
 {"FSPEED", PROGS .. "/fs/fspeed/fspeed"},
234
 {"GMON", PROGS .. "/system/gmon/gmon"},
233
 {"GMON", PROGS .. "/system/gmon/gmon"},
235
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
234
 {"HDD_INFO", PROGS .. "/system/hdd_info/trunk/hdd_info"},
236
 {"@ICON", PROGS .. "/system/icon_new/@icon"},
235
 {"@ICON", PROGS .. "/system/icon_new/@icon"},
237
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
236
 {"CROPFLAT", PROGS .. "/system/cropflat/cropflat"},
238
 {"KBD", PROGS .. "/system/kbd/trunk/kbd"},
237
 {"KBD", PROGS .. "/system/kbd/trunk/kbd"},
239
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
238
 {"KPACK", PROGS .. "/other/kpack/trunk/kpack"},
240
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
239
 {"LAUNCHER", PROGS .. "/system/launcher/trunk/launcher"},
241
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
240
 {"MAGNIFY", PROGS .. "/demos/magnify/trunk/magnify"},
242
 {"MGB", PROGS .. "/system/mgb/trunk/mgb"},
241
 {"MGB", PROGS .. "/system/mgb/trunk/mgb"},
243
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
242
 {"MOUSEMUL", PROGS .. "/system/mousemul/trunk/mousemul"},
244
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
243
 {"MADMOUSE", PROGS .. "/other/madmouse/madmouse"},
245
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
244
 {"MYKEY", PROGS .. "/system/MyKey/trunk/MyKey"},
246
 {"PCIDEV", PROGS .. "/system/pcidev/trunk/PCIDEV"},
245
 {"PCIDEV", PROGS .. "/system/pcidev/trunk/PCIDEV"},
247
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
246
 {"RDSAVE", PROGS .. "/system/rdsave/trunk/rdsave"},
248
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
247
 {"RTFREAD", PROGS .. "/other/rtfread/trunk/rtfread"},
249
 {"RUN", PROGS .. "/system/run/trunk/run"},
248
 {"RUN", PROGS .. "/system/run/trunk/run"},
250
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
249
 {"SEARCHAP", PROGS .. "/system/searchap/searchap"},
251
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
250
 {"SCRSHOOT", PROGS .. "/media/scrshoot/scrshoot"},
252
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
251
 {"SETUP", PROGS .. "/system/setup/trunk/setup"},
253
 {"TEST", PROGS .. "/system/test/trunk/test"},
252
 {"TEST", PROGS .. "/system/test/trunk/test"},
254
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
253
 {"TINYPAD", PROGS .. "/develop/tinypad/trunk/tinypad"},
255
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
254
 {"ZKEY", PROGS .. "/system/zkey/trunk/ZKEY"},
256
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
255
 {"TERMINAL", PROGS .. "/system/terminal/terminal"},
257
 {"3D/3DSHEART", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
256
 {"3D/3DSHEART", PROGS .. "/demos/3dsheart/trunk/3dsheart"},
258
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
257
 {"3D/3DWAV", PROGS .. "/demos/3dwav/trunk/3dwav"},
259
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
258
 {"3D/CROWNSCR", PROGS .. "/demos/crownscr/trunk/crownscr"},
260
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
259
 {"3D/FREE3D04", PROGS .. "/demos/free3d04/trunk/free3d04"},
261
 {"3D/VIEW3DS", PROGS .. "/demos/3DS/VIEW3DS"},
260
 {"3D/VIEW3DS", PROGS .. "/demos/3DS/VIEW3DS"},
262
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
261
 {"DEMOS/BCDCLK", PROGS .. "/demos/bcdclk/trunk/bcdclk"},
263
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
262
 {"DEMOS/CIRCLE", PROGS .. "/develop/examples/circle/trunk/circle"},
264
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
263
 {"DEMOS/COLORREF", PROGS .. "/demos/colorref/trunk/colorref"},
265
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
264
 {"DEMOS/CSLIDE", PROGS .. "/demos/cslide/trunk/cslide"},
266
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
265
 {"DEMOS/EYES", PROGS .. "/demos/eyes/trunk/eyes"},
267
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
266
 {"DEMOS/FIREWORK", PROGS .. "/demos/firework/trunk/firework"},
268
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
267
 {"DEMOS/MOVBACK", PROGS .. "/demos/movback/trunk/movback"},
269
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
268
 {"DEMOS/PLASMA", PROGS .. "/demos/plasma/trunk/plasma"},
270
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
269
 {"DEMOS/TINYFRAC", PROGS .. "/demos/tinyfrac/trunk/tinyfrac"},
271
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
270
 {"DEMOS/TRANTEST", PROGS .. "/demos/trantest/trunk/trantest"},
272
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
271
 {"DEMOS/TUBE", PROGS .. "/demos/tube/trunk/tube"},
273
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
272
 {"DEMOS/UNVWATER", PROGS .. "/demos/unvwater/trunk/unvwater"},
274
 {"DEMOS/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
273
 {"DEMOS/USE_MB", PROGS .. "/demos/use_mb/use_mb"},
275
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
274
 {"DEMOS/WEB", PROGS .. "/demos/web/trunk/web"},
276
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
275
 {"DEVELOP/BOARD", PROGS .. "/system/board/trunk/board"},
277
 {"DEVELOP/cObj", PROGS .. "/develop/cObj/trunk/cObj"},
276
 {"DEVELOP/cObj", PROGS .. "/develop/cObj/trunk/cObj"},
278
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/trunk/fasm"},
277
 {"DEVELOP/FASM", PROGS .. "/develop/fasm/trunk/fasm"},
279
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
278
 {"DEVELOP/H2D2B", PROGS .. "/develop/h2d2b/trunk/h2d2b"},
280
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
279
 {"DEVELOP/HEED", PROGS .. "/develop/heed/trunk/heed"},
281
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
280
 {"DEVELOP/KEYASCII", PROGS .. "/develop/keyascii/trunk/keyascii"},
282
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
281
 {"DEVELOP/MTDBG", PROGS .. "/develop/mtdbg/mtdbg"},
283
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
282
 {"DEVELOP/SCANCODE", PROGS .. "/develop/scancode/trunk/scancode"},
284
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
283
 {"DEVELOP/T_EDIT", PROGS .. "/other/t_edit/t_edit"},
285
 {"DEVELOP/test_gets", PROGS .. "/develop/libraries/console/examples/test_gets"},
284
 {"DEVELOP/test_gets", PROGS .. "/develop/libraries/console/examples/test_gets"},
286
 {"DEVELOP/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
285
 {"DEVELOP/THREAD", PROGS .. "/develop/examples/thread/trunk/thread"},
287
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
286
 {"DEVELOP/INFO/ASM.SYN", PROGS .. "/other/t_edit/info/asm.syn"},
288
 {"DEVELOP/INFO/CPP_KOL_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
287
 {"DEVELOP/INFO/CPP_KOL_CLA.SYN", PROGS .. "/other/t_edit/info/cpp_kol_cla.syn"},
289
 {"DEVELOP/INFO/CPP_KOL_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
288
 {"DEVELOP/INFO/CPP_KOL_DAR.SYN", PROGS .. "/other/t_edit/info/cpp_kol_dar.syn"},
290
 {"DEVELOP/INFO/CPP_KOL_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
289
 {"DEVELOP/INFO/CPP_KOL_DEF.SYN", PROGS .. "/other/t_edit/info/cpp_kol_def.syn"},
291
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
290
 {"DEVELOP/INFO/DEFAULT.SYN", PROGS .. "/other/t_edit/info/default.syn"},
292
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
291
 {"DEVELOP/INFO/HTML.SYN", PROGS .. "/other/t_edit/info/html.syn"},
293
 {"DEVELOP/INFO/INI_FILES.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
292
 {"DEVELOP/INFO/INI_FILES.SYN", PROGS .. "/other/t_edit/info/ini_files.syn"},
294
 {"DEVELOP/INFO/WIN_CONST.SYN", PROGS .. "/other/t_edit/info/win_const.syn"},
293
 {"DEVELOP/INFO/WIN_CONST.SYN", PROGS .. "/other/t_edit/info/win_const.syn"},
295
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
294
 {"File Managers/KFAR", PROGS .. "/fs/kfar/trunk/kfar"},
296
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
295
 {"File Managers/KFM", PROGS .. "/fs/kfm/trunk/kfm"},
297
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
296
 {"File Managers/OPENDIAL", PROGS .. "/fs/opendial/opendial"},
298
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
297
 {"GAMES/15", PROGS .. "/games/15/trunk/15"},
299
 {"GAMES/ARCANII", PROGS .. "/games/arcanii/trunk/arcanii"},
298
 {"GAMES/ARCANII", PROGS .. "/games/arcanii/trunk/arcanii"},
300
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
299
 {"GAMES/FREECELL", PROGS .. "/games/freecell/freecell"},
301
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
300
 {"GAMES/GOMOKU", PROGS .. "/games/gomoku/trunk/gomoku"},
302
 {"GAMES/INVADERS", PROGS .. "/games/invaders/invaders"},
301
 {"GAMES/INVADERS", PROGS .. "/games/invaders/invaders"},
303
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
302
 {"GAMES/KLAVISHA", PROGS .. "/games/klavisha/trunk/klavisha"},
304
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
303
 {"GAMES/LINES", PROGS .. "/games/lines/lines"},
305
 {"GAMES/MBLOCKS", PROGS .. "/games/mblocks/trunk/mblocks"},
304
 {"GAMES/MBLOCKS", PROGS .. "/games/mblocks/trunk/mblocks"},
306
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
305
 {"GAMES/MSQUARE", PROGS .. "/games/MSquare/trunk/MSquare"},
307
 {"GAMES/PHENIX", PROGS .. "/games/phenix/trunk/phenix"},
306
 {"GAMES/PHENIX", PROGS .. "/games/phenix/trunk/phenix"},
308
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
307
 {"GAMES/PIPES", PROGS .. "/games/pipes/pipes"},
309
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
308
 {"GAMES/PONG", PROGS .. "/games/pong/trunk/pong"},
310
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
309
 {"GAMES/PONG3", PROGS .. "/games/pong3/trunk/pong3"},
311
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
310
 {"GAMES/RSQUARE", PROGS .. "/games/rsquare/trunk/rsquare"},
312
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
311
 {"GAMES/SNAKE", PROGS .. "/games/snake/trunk/snake"},
313
 {"GAMES/SQ_GAME", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
312
 {"GAMES/SQ_GAME", PROGS .. "/games/sq_game/trunk/SQ_GAME"},
314
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
313
 {"GAMES/SUDOKU", PROGS .. "/games/sudoku/trunk/sudoku"},
315
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
314
 {"GAMES/SW", PROGS .. "/games/sw/trunk/sw"},
316
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
315
 {"GAMES/TANKS", PROGS .. "/games/tanks/trunk/tanks"},
317
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
316
 {"GAMES/TETRIS", PROGS .. "/games/tetris/trunk/tetris"},
318
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
317
 {"LIB/ARCHIVER.OBJ", PROGS .. "/fs/kfar/trunk/kfar_arc/kfar_arc.obj"},
319
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
318
 {"LIB/BOX_LIB.OBJ", PROGS .. "/develop/libraries/box_lib/trunk/box_lib.obj"},
320
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
319
 {"LIB/BUF2D.OBJ", PROGS .. "/develop/libraries/buf2d/trunk/buf2d.obj"},
321
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console/console.obj"},
320
 {"LIB/CONSOLE.OBJ", PROGS .. "/develop/libraries/console/console.obj"},
322
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
321
 {"LIB/LIBGFX.OBJ", PROGS .. "/develop/libraries/libs-dev/libgfx/libgfx.obj"},
323
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
322
 {"LIB/LIBIMG.OBJ", PROGS .. "/develop/libraries/libs-dev/libimg/libimg.obj"},
324
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
323
 {"LIB/LIBINI.OBJ", PROGS .. "/develop/libraries/libs-dev/libini/libini.obj"},
325
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
324
 {"LIB/LIBIO.OBJ", PROGS .. "/develop/libraries/libs-dev/libio/libio.obj"},
326
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
325
 {"LIB/MSGBOX.OBJ", PROGS .. "/develop/libraries/msgbox/msgbox.obj"},
327
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
326
 {"LIB/NETWORK.OBJ", PROGS .. "/develop/libraries/network/network.obj"},
328
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
327
 {"LIB/SORT.OBJ", PROGS .. "/develop/libraries/sorter/sort.obj"},
329
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
328
 {"LIB/HTTP.OBJ", PROGS .. "/develop/libraries/http/http.obj"},
330
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
329
 {"LIB/PROC_LIB.OBJ", PROGS .. "/develop/libraries/proc_lib/trunk/proc_lib.obj"},
331
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
330
 {"LIB/CNV_PNG.OBJ", PROGS .. "/media/zsea/plugins/png/cnv_png.obj"},
332
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
331
 {"MEDIA/ANIMAGE", PROGS .. "/media/animage/trunk/animage"},
333
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
332
 {"MEDIA/KIV", PROGS .. "/media/kiv/trunk/kiv"},
334
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
333
 {"MEDIA/LISTPLAY", PROGS .. "/media/listplay/trunk/listplay"},
335
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
334
 {"MEDIA/MIDAMP", PROGS .. "/media/midamp/trunk/midamp"},
336
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
335
 {"MEDIA/PALITRA", PROGS .. "/media/palitra/trunk/palitra"},
337
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
336
 {"MEDIA/STARTMUS", PROGS .. "/media/startmus/trunk/STARTMUS"},
338
 {"NETWORK/PING", PROGS .. "/network/icmp/ping"},
337
 {"NETWORK/PING", PROGS .. "/network/icmp/ping"},
339
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
338
 {"NETWORK/NETCFG", PROGS .. "/network/netcfg/netcfg"},
340
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
339
 {"NETWORK/NETSTAT", PROGS .. "/network/netstat/netstat"},
341
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
340
 {"NETWORK/NSLOOKUP", PROGS .. "/network/nslookup/nslookup"},
342
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
341
 {"NETWORK/PASTA", PROGS .. "/network/pasta/pasta"},
343
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
342
 {"NETWORK/SYNERGYC", PROGS .. "/network/synergyc/synergyc"},
344
 {"NETWORK/TCPSERV", PROGS .. "/network/tcpserv/tcpserv"},
343
 {"NETWORK/TCPSERV", PROGS .. "/network/tcpserv/tcpserv"},
345
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
344
 {"NETWORK/TELNET", PROGS .. "/network/telnet/telnet"},
346
 {"NETWORK/ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
345
 {"NETWORK/ZEROCONF", PROGS .. "/network/zeroconf/zeroconf"},
347
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
346
 {"NETWORK/FTPC", PROGS .. "/network/ftpc/ftpc"},
348
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
347
 {"NETWORK/FTPD", PROGS .. "/network/ftpd/ftpd"},
349
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
348
 {"NETWORK/TFTPC", PROGS .. "/network/tftpc/tftpc"},
350
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
349
 {"NETWORK/IRCC", PROGS .. "/network/ircc/ircc"},
351
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
350
 {"NETWORK/DOWNLOADER", PROGS .. "/network/downloader/downloader"},
352
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
351
 {"DRIVERS/VIDINTEL.SYS", "../drivers/video/vidintel.sys"},
353
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
352
 {"DRIVERS/3C59X.SYS", "../drivers/ethernet/3c59x.sys"},
354
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
353
 {"DRIVERS/DEC21X4X.SYS", "../drivers/ethernet/dec21x4x.sys"},
355
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
354
 {"DRIVERS/FORCEDETH.SYS", "../drivers/ethernet/forcedeth.sys"},
356
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
355
 {"DRIVERS/I8254X.SYS", "../drivers/ethernet/i8254x.sys"},
357
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
356
 {"DRIVERS/I8255X.SYS", "../drivers/ethernet/i8255x.sys"},
358
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
357
 {"DRIVERS/MTD80X.SYS", "../drivers/ethernet/mtd80x.sys"},
359
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
358
 {"DRIVERS/PCNET32.SYS", "../drivers/ethernet/pcnet32.sys"},
360
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
359
 {"DRIVERS/R6040.SYS", "../drivers/ethernet/R6040.sys"},
361
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
360
 {"DRIVERS/RHINE.SYS", "../drivers/ethernet/rhine.sys"},
362
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
361
 {"DRIVERS/RTL8029.SYS", "../drivers/ethernet/RTL8029.sys"},
363
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
362
 {"DRIVERS/RTL8139.SYS", "../drivers/ethernet/RTL8139.sys"},
364
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
363
 {"DRIVERS/RTL8169.SYS", "../drivers/ethernet/RTL8169.sys"},
365
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
364
 {"DRIVERS/SIS900.SYS", "../drivers/ethernet/sis900.sys"},
366
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
365
 {"DRIVERS/UHCI.SYS", "../drivers/usb/uhci.sys"},
367
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
366
 {"DRIVERS/OHCI.SYS", "../drivers/usb/ohci.sys"},
368
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
367
 {"DRIVERS/EHCI.SYS", "../drivers/usb/ehci.sys"},
369
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
368
 {"DRIVERS/USBHID.SYS", "../drivers/usb/usbhid/usbhid.sys"},
370
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
369
 {"DRIVERS/USBSTOR.SYS", "../drivers/usb/usbstor.sys"},
371
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
370
 {"DRIVERS/RDC.SYS", "../drivers/video/rdc.sys"},
372
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
371
 {"DRIVERS/COMMOUSE.SYS", "../drivers/mouse/commouse.sys"},
373
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
372
 {"DRIVERS/PS2MOUSE.SYS", "../drivers/mouse/ps2mouse4d/trunk/ps2mouse.sys"},
374
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
373
 {"DRIVERS/TMPDISK.SYS", "../drivers/disk/tmpdisk.sys"},
375
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
374
 {"DRIVERS/intel_hda.sys", "../drivers/audio/intel_hda/intel_hda.sys"},
376
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
375
 {"DRIVERS/SB16.SYS", "../drivers/audio/sb16/sb16.sys"},
377
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
376
 {"DRIVERS/SOUND.SYS", "../drivers/audio/sound.sys"},
378
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
377
 {"DRIVERS/INFINITY.SYS", "../drivers/audio/infinity/infinity.sys"},
379
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
378
 {"DRIVERS/INTELAC97.SYS", "../drivers/audio/intelac97.sys"},
380
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
379
 {"DRIVERS/EMU10K1X.SYS", "../drivers/audio/emu10k1x.sys"},
381
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
380
 {"DRIVERS/FM801.SYS", "../drivers/audio/fm801.sys"},
382
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
381
 {"DRIVERS/VT823X.SYS", "../drivers/audio/vt823x.sys"},
383
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
382
 {"DRIVERS/SIS.SYS", "../drivers/audio/sis.sys"},
384
})
383
})
385
tup.append_table(extra_files, {
384
tup.append_table(extra_files, {
386
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
385
 {"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
387
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
386
 {"HD_Load/MeOSLoad/", PROGS .. "/hd_load/meosload/MeOSload.com"},
388
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
387
 {"HD_Load/mtldr/", PROGS .. "/hd_load/mtldr/mtldr"},
389
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
388
 {"HD_Load/", PROGS .. "/hd_load/mtldr_install/mtldr_install.exe"},
390
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
389
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/BOOT_F32.BIN"},
391
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
390
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/MTLD_F32"},
392
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
391
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/inst.exe"},
393
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
392
 {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"},
394
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
393
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"},
395
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
394
 {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
396
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
395
 {"kolibrios/media/zsea/zsea", PROGS .. "/media/zsea/zSea"},
397
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
396
 {"kolibrios/media/zsea/plugins/cnv_bmp.obj", PROGS .. "/media/zsea/plugins/bmp/cnv_bmp.obj"},
398
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
397
 {"kolibrios/media/zsea/plugins/cnv_gif.obj", PROGS .. "/media/zsea/plugins/gif/cnv_gif.obj"},
399
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
398
 {"kolibrios/media/zsea/plugins/cnv_jpeg.obj", PROGS .. "/media/zsea/plugins/jpeg/cnv_jpeg.obj"},
400
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
399
 {"kolibrios/media/zsea/plugins/convert.obj", PROGS .. "/media/zsea/plugins/convert/convert.obj"},
401
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
400
 {"kolibrios/media/zsea/plugins/rotate.obj", PROGS .. "/media/zsea/plugins/rotate/rotate.obj"},
402
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
401
 {"kolibrios/media/zsea/plugins/scaling.obj", PROGS .. "/media/zsea/plugins/scaling/scaling.obj"},
403
})
402
})
404
-- For russian build, add russian-only programs.
403
-- For russian build, add russian-only programs.
405
if build_type == "rus" then tup.append_table(img_files, {
404
if build_type == "rus" then tup.append_table(img_files, {
406
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
405
 {"PERIOD", PROGS .. "/other/period/trunk/period"},
407
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_rus"},
406
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_rus"},
408
}) else tup.append_table(img_files, {
407
}) else tup.append_table(img_files, {
409
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_eng"},
408
 {"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_eng"},
410
 {"GAMES/SOKO", PROGS .. "/games/soko/trunk/SOKO"},
409
 {"GAMES/SOKO", PROGS .. "/games/soko/trunk/SOKO"},
411
}) end
410
}) end
412
 
411
 
413
end -- tup.getconfig('NO_FASM') ~= 'full'
412
end -- tup.getconfig('NO_FASM') ~= 'full'
414
 
413
 
415
-- Programs that require NASM to compile.
414
-- Programs that require NASM to compile.
416
if tup.getconfig('NO_NASM') ~= 'full' then
415
if tup.getconfig('NO_NASM') ~= 'full' then
417
tup.append_table(img_files, {
416
tup.append_table(img_files, {
418
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
417
 {"DEMOS/ACLOCK", PROGS .. "/demos/aclock/trunk/aclock"},
419
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
418
 {"DEMOS/TIMER", PROGS .. "/other/Timer/timer"},
420
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
419
 {"GAMES/C4", PROGS .. "/games/c4/trunk/c4"},
421
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
420
 {"TINFO", PROGS .. "/system/tinfo/tinfo"},
422
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
421
 {"DEVELOP/MSTATE", PROGS .. "/develop/mstate/mstate"},
423
})
422
})
424
end -- tup.getconfig('NO_NASM') ~= 'full'
423
end -- tup.getconfig('NO_NASM') ~= 'full'
425
 
424
 
426
-- Programs that require C-- to compile.
425
-- Programs that require C-- to compile.
427
if tup.getconfig('NO_CMM') ~= 'full' then
426
if tup.getconfig('NO_CMM') ~= 'full' then
428
tup.append_table(img_files, {
427
tup.append_table(img_files, {
429
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
428
 {"File Managers/EOLITE", PROGS .. "/cmm/eolite/Eolite.com"},
430
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
429
 {"GAMES/CLICKS", PROGS .. "/games/clicks/trunk/clicks.com"},
431
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
430
 {"GAMES/FindNumbers", PROGS .. "/games/FindNumbers/trunk/FindNumbers"},
432
 {"GAMES/flood-it", PROGS .. "/games/flood-it/trunk/flood-it.com"},
431
 {"GAMES/flood-it", PROGS .. "/games/flood-it/trunk/flood-it.com"},
433
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
432
 {"GAMES/MINE", PROGS .. "/games/mine/trunk/mine"},
434
 {"NETWORK/WebView", PROGS .. "/cmm/browser/WebView.com"},
433
 {"NETWORK/WebView", PROGS .. "/cmm/browser/WebView.com"},
435
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
434
 {"TMPDISK", PROGS .. "/cmm/tmpdisk/tmpdisk.com"},
436
})
435
})
437
end -- tup.getconfig('NO_CMM') ~= 'full'
436
end -- tup.getconfig('NO_CMM') ~= 'full'
438
 
437
 
439
-- Programs that require MSVC to compile.
438
-- Programs that require MSVC to compile.
440
if tup.getconfig('NO_MSVC') ~= 'full' then
439
if tup.getconfig('NO_MSVC') ~= 'full' then
441
tup.append_table(img_files, {
440
tup.append_table(img_files, {
442
 {"GRAPH", PROGS .. "/other/graph/graph"},
441
 {"GRAPH", PROGS .. "/other/graph/graph"},
443
 {"TABLE", PROGS .. "/other/table/table"},
442
 {"TABLE", PROGS .. "/other/table/table"},
444
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
443
 {"MEDIA/AC97SND", PROGS .. "/media/ac97snd/ac97snd.bin"},
445
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
444
 {"GAMES/KOSILKA", PROGS .. "/games/kosilka/kosilka"},
446
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
445
 {"GAMES/RFORCES", PROGS .. "/games/rforces/trunk/rforces"},
447
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
446
 {"GAMES/XONIX", PROGS .. "/games/xonix/trunk/xonix"},
448
})
447
})
449
tup.append_table(extra_files, {
448
tup.append_table(extra_files, {
450
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
449
 {"kolibrios/games/fara/fara", PROGS .. "/games/fara/trunk/fara"},
451
})
450
})
452
end -- tup.getconfig('NO_MSVC') ~= 'full'
451
end -- tup.getconfig('NO_MSVC') ~= 'full'
453
 
452
 
454
-- Programs that require GCC to compile.
453
-- Programs that require GCC to compile.
455
if tup.getconfig('NO_GCC') ~= 'full' then
454
if tup.getconfig('NO_GCC') ~= 'full' then
456
tup.append_table(img_files, {
455
tup.append_table(img_files, {
457
 {"3D/CUBELINE", PROGS .. "/demos/cubeline/trunk/cubeline"},
456
 {"3D/CUBELINE", PROGS .. "/demos/cubeline/trunk/cubeline"},
458
 {"3D/GEARS", PROGS .. "/demos/gears/trunk/gears"},
457
 {"3D/GEARS", PROGS .. "/demos/gears/trunk/gears"},
-
 
458
 {"GAMES/CHECKERS", PROGS .. "/games/checkers/trunk/checkers"},
459
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
459
 {"GAMES/REVERSI", PROGS .. "/games/reversi/trunk/reversi"},
460
 {"SHELL", PROGS .. "/system/shell/shell"},
460
 {"SHELL", PROGS .. "/system/shell/shell"},
461
})
461
})
462
tup.append_table(extra_files, {
462
tup.append_table(extra_files, {
463
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
463
 {"kolibrios/emul/e80/e80", PROGS .. "/emulator/e80/trunk/e80"},
464
})
464
})
465
end -- tup.getconfig('NO_GCC') ~= 'full'
465
end -- tup.getconfig('NO_GCC') ~= 'full'
466
 
466
 
467
-- Skins.
467
-- Skins.
468
tup.include("../skins/skinlist.lua")
468
tup.include("../skins/skinlist.lua")
469
 
469
 
470
--[================================[ CODE ]================================]--
470
--[================================[ CODE ]================================]--
471
-- expand extra_files and similar
471
-- expand extra_files and similar
472
function expand_extra_files(files)
472
function expand_extra_files(files)
473
  local result = {}
473
  local result = {}
474
  for i,v in ipairs(files) do
474
  for i,v in ipairs(files) do
475
    if string.match(v[2], "%*")
475
    if string.match(v[2], "%*")
476
    then
476
    then
477
      local g = tup.glob(v[2])
477
      local g = tup.glob(v[2])
478
      for j,x in ipairs(g) do
478
      for j,x in ipairs(g) do
479
        table.insert(result, {v[1], x})
479
        table.insert(result, {v[1], x})
480
      end
480
      end
481
    else
481
    else
482
      if v.cp1251_from then
482
      if v.cp1251_from then
483
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
483
        tup.definerule{inputs = {v.cp1251_from}, command = 'iconv -f cp866 -t cp1251 "%f" > "%o"', outputs = {v[2]}}
484
      end
484
      end
485
      table.insert(result, {v[1], v[2]})
485
      table.insert(result, {v[1], v[2]})
486
    end
486
    end
487
  end
487
  end
488
  return result
488
  return result
489
end
489
end
490
 
490
 
491
-- append skins to extra_files
491
-- append skins to extra_files
492
for i,v in ipairs(skinlist) do
492
for i,v in ipairs(skinlist) do
493
  table.insert(extra_files, {"Skins/", "../skins/" .. v})
493
  table.insert(extra_files, {"Skins/", "../skins/" .. v})
494
end
494
end
495
 
495
 
496
-- prepare distr_extra_files and iso_extra_files: expand and append common part
496
-- prepare distr_extra_files and iso_extra_files: expand and append common part
497
extra_files = expand_extra_files(extra_files)
497
extra_files = expand_extra_files(extra_files)
498
distr_extra_files = expand_extra_files(distr_extra_files)
498
distr_extra_files = expand_extra_files(distr_extra_files)
499
iso_extra_files = expand_extra_files(iso_extra_files)
499
iso_extra_files = expand_extra_files(iso_extra_files)
500
tup.append_table(distr_extra_files, extra_files)
500
tup.append_table(distr_extra_files, extra_files)
501
tup.append_table(iso_extra_files, extra_files)
501
tup.append_table(iso_extra_files, extra_files)
502
 
502
 
503
-- generate list of directories to be created inside kolibri.img
503
-- generate list of directories to be created inside kolibri.img
504
img_dirs = {}
504
img_dirs = {}
505
input_deps = {}
505
input_deps = {}
506
for i,v in ipairs(img_files) do
506
for i,v in ipairs(img_files) do
507
  img_file = v[1]
507
  img_file = v[1]
508
  local_file = v[2]
508
  local_file = v[2]
509
 
509
 
510
  slash_pos = 0
510
  slash_pos = 0
511
  while true do
511
  while true do
512
    slash_pos = string.find(img_file, '/', slash_pos + 1)
512
    slash_pos = string.find(img_file, '/', slash_pos + 1)
513
    if not slash_pos then break end
513
    if not slash_pos then break end
514
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
514
    table.insert(img_dirs, string.sub(img_file, 1, slash_pos - 1))
515
  end
515
  end
516
 
516
 
517
  -- tup does not want to see hidden files as dependencies
517
  -- tup does not want to see hidden files as dependencies
518
  if not string.match(local_file, "/%.") then
518
  if not string.match(local_file, "/%.") then
519
    table.insert(input_deps, local_file)
519
    table.insert(input_deps, local_file)
520
  end
520
  end
521
end
521
end
522
 
522
 
523
-- create empty 1.44M file
523
-- create empty 1.44M file
524
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
524
make_img_command = '^ MKIMG kolibri.img^ ' -- for tup: don't write full command to logs
525
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
525
make_img_command = make_img_command .. "dd if=/dev/zero of=kolibri.img count=2880 bs=512 2>&1"
526
-- format it as a standard 1.44M floppy
526
-- format it as a standard 1.44M floppy
527
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
527
make_img_command = make_img_command .. " && mformat -f 1440 -i kolibri.img ::"
528
-- copy bootloader
528
-- copy bootloader
529
if tup.getconfig("NO_FASM") ~= "full" then
529
if tup.getconfig("NO_FASM") ~= "full" then
530
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
530
bootloader = "../kernel/trunk/bootloader/boot_fat12.bin"
531
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
531
make_img_command = make_img_command .. " && dd if=" .. bootloader .. " of=kolibri.img count=1 bs=512 conv=notrunc 2>&1"
532
table.insert(input_deps, bootloader)
532
table.insert(input_deps, bootloader)
533
end
533
end
534
-- make folders
534
-- make folders
535
table.sort(img_dirs)
535
table.sort(img_dirs)
536
for i,v in ipairs(img_dirs) do
536
for i,v in ipairs(img_dirs) do
537
  if v ~= img_dirs[i-1] then
537
  if v ~= img_dirs[i-1] then
538
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
538
    make_img_command = make_img_command .. ' && mmd -i kolibri.img "::' .. v .. '"'
539
  end
539
  end
540
end
540
end
541
-- copy files
541
-- copy files
542
for i,v in ipairs(img_files) do
542
for i,v in ipairs(img_files) do
543
  local_file = v[2]
543
  local_file = v[2]
544
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
544
  if v[1] == "KERNEL.MNT" and tup.getconfig("INSERT_REVISION_ID") ~= ""
545
  then
545
  then
546
    -- for kernel.mnt, insert autobuild revision identifier
546
    -- for kernel.mnt, insert autobuild revision identifier
547
    -- from .revision to .kernel.mnt
547
    -- from .revision to .kernel.mnt
548
    -- note that .revision and .kernel.mnt must begin with .
548
    -- note that .revision and .kernel.mnt must begin with .
549
    -- to prevent tup from tracking them
549
    -- to prevent tup from tracking them
550
    if build_type == "rus"
550
    if build_type == "rus"
551
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
551
    then str='$(LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(cat .revision)]"|iconv -f utf8 -t cp866)'
552
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
552
    else str='$(date -u +"[auto-build %d %b %Y %R, r$(cat .revision)]")'
553
    end
553
    end
554
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
554
    str = string.gsub(str, "%$", "\\$") -- escape $ as \$
555
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
555
    str = string.gsub(str, "%%", "%%%%") -- escape % as %%
556
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
556
    make_img_command = make_img_command .. " && cp " .. local_file .. " .kernel.mnt"
557
    make_img_command = make_img_command .. " && str=" .. str
557
    make_img_command = make_img_command .. " && str=" .. str
558
    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'
558
    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'
559
    local_file = ".kernel.mnt"
559
    local_file = ".kernel.mnt"
560
  end
560
  end
561
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
561
  make_img_command = make_img_command .. ' && mcopy -moi kolibri.img "' .. local_file .. '" "::' .. v[1] .. '"'
562
end
562
end
563
 
563
 
564
-- generate tup rule for kolibri.img
564
-- generate tup rule for kolibri.img
565
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
565
tup.definerule{inputs = input_deps, command = make_img_command, outputs = {"kolibri.img"}}
566
 
566
 
567
-- generate command and dependencies for mkisofs
567
-- generate command and dependencies for mkisofs
568
input_deps = {"kolibri.img"}
568
input_deps = {"kolibri.img"}
569
iso_files_list = ""
569
iso_files_list = ""
570
for i,v in ipairs(iso_extra_files) do
570
for i,v in ipairs(iso_extra_files) do
571
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
571
  iso_files_list = iso_files_list .. ' "' .. v[1] .. '=' .. v[2] .. '"'
572
  table.insert(input_deps, v[2])
572
  table.insert(input_deps, v[2])
573
end
573
end
574
 
574
 
575
-- generate tup rule for kolibri.iso
575
-- generate tup rule for kolibri.iso
576
if tup.getconfig("INSERT_REVISION_ID") ~= ""
576
if tup.getconfig("INSERT_REVISION_ID") ~= ""
577
then volume_id = "KolibriOS r`cat .revision`"
577
then volume_id = "KolibriOS r`cat .revision`"
578
else volume_id = "KolibriOS"
578
else volume_id = "KolibriOS"
579
end
579
end
580
tup.definerule{inputs = input_deps, command =
580
tup.definerule{inputs = input_deps, command =
581
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
581
  '^ MKISOFS kolibri.iso^ ' .. -- for tup: don't write full command to logs
582
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
582
  'mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points ' ..
583
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
583
  '-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "' .. volume_id .. '" -sysid "KOLIBRI" ' ..
584
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
584
  '-iso-level 3 -o kolibri.iso kolibri.img' .. iso_files_list .. ' 2>&1',
585
  outputs = {"kolibri.iso"}}
585
  outputs = {"kolibri.iso"}}
586
 
586
 
587
-- generate command and dependencies for distribution kit
587
-- generate command and dependencies for distribution kit
588
cp = 'cp "%f" "%o"'
588
cp = 'cp "%f" "%o"'
589
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
589
tup.definerule{inputs = {"kolibri.img"}, command = cp, outputs = {"distribution_kit/kolibri.img"}}
590
for i,v in ipairs(distr_extra_files) do
590
for i,v in ipairs(distr_extra_files) do
591
  if string.sub(v[1], -1) == "/"
591
  if string.sub(v[1], -1) == "/"
592
  then tup.definerule{inputs = {v[2]}, command = cp, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
592
  then tup.definerule{inputs = {v[2]}, command = cp, outputs = {"distribution_kit/" .. v[1] .. tup.file(v[2])}}
593
  else tup.definerule{inputs = {v[2]}, command = cp, outputs = {"distribution_kit/" .. v[1]}}
593
  else tup.definerule{inputs = {v[2]}, command = cp, outputs = {"distribution_kit/" .. v[1]}}
594
  end
594
  end
595
end
595
end