store_vcs_revision($which, $rev, $vcs);
}
-sub dir_identify_vcs ($$) {
- my ($ho,$dir) = @_;
- return target_cmd_output($ho, <<END);
+sub dir_identify_vcs ($$;$) {
+ my ($ho,$dir,$optional) = @_;
+ my $vcs = target_cmd_output($ho, <<END);
set -e
if ! test -e $dir; then echo none; exit 0; fi
cd $dir
(test -e .git && echo git) ||
(test -d .hg && echo hg) ||
- (echo >&2 'unable to determine vcs'; fail)
+ (echo >&2 'unable to determine vcs'; echo fail)
END
+ die "unable to determine vcs" if !$optional && $vcs eq 'fail';
+ $vcs = 'none' if $vcs eq 'fail';
+ return $vcs;
}
sub store_revision ($$$;$) {
my ($ho,$which,$dir,$optional) = @_;
- my $vcs= dir_identify_vcs($ho,$dir);
+ my $vcs= dir_identify_vcs($ho,$dir,$optional);
return if $optional && $vcs eq 'none';
my $rev= vcs_dir_revision($ho,$dir,$vcs);
store_vcs_revision($which,$rev,$vcs);
tree_xen=$TREE_XEN \
tree_seabios=$TREE_SEABIOS \
tree_ovmf=$TREE_OVMF \
+ tree_minios=$TREE_MINIOS \
$RUNVARS $BUILD_RUNVARS $BUILD_XEN_RUNVARS $arch_runvars \
$suite_runvars \
host_hostflags=$build_hostflags \
revision_qemu=$REVISION_QEMU \
revision_qemuu=$REVISION_QEMU_UPSTREAM \
revision_seabios=$REVISION_SEABIOS \
- revision_ovmf=$REVISION_OVMF
+ revision_ovmf=$REVISION_OVMF \
+ revision_minios=$REVISION_MINIOS
done
if [ x$want_prevxen = xy ] ; then
END
(nonempty($r{revision_ovmf}) ? <<END : '').
echo >>.config OVMF_UPSTREAM_REVISION='$r{revision_ovmf}'
+END
+ (nonempty($r{tree_minios}) ? <<END : '').
+ echo >>.config MINIOS_UPSTREAM_URL='$r{tree_minios}'
+END
+ (nonempty($r{revision_minios}) ? <<END : '').
+ echo >>.config MINIOS_UPSTREAM_REVISION='$r{revision_minios}'
END
(nonempty($earlyprintk) ? <<END : '').
echo >>.config CONFIG_EARLY_PRINTK=$earlyprintk
sub collectversions () {
my $tools="$builddir/xen/tools";
+ my $extras="$builddir/xen/extras";
store_revision($ho, 'qemu', "$tools/ioemu-dir", 1);
store_revision($ho, 'qemu', "$tools/qemu-xen-traditional-dir", 1);
store_revision($ho, 'qemuu', "$tools/qemu-xen-dir", 1);
store_revision($ho, 'seabios', "$tools/firmware/seabios-dir", 1);
store_revision($ho, 'ovmf', "$tools/firmware/ovmf-dir", 1);
+ store_revision($ho, 'minios', "$extras/mini-os", 1);
}
sub divide () {