Subversion Repositories Kolibri OS

Rev

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

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