Subversion Repositories Kolibri OS

Rev

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

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