Subversion Repositories Kolibri OS

Rev

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

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