quiet_cmd_compile.h = UPD $@
define cmd_compile.h
if [ ! -r $@ -o -O $@ ]; then \
- cat .banner; \
sed -e 's/@@date@@/$(XEN_BUILD_DATE)/g' \
-e 's/@@time@@/$(XEN_BUILD_TIME)/g' \
-e 's/@@whoami@@/$(XEN_WHOAMI)/g' \
-e 's/@@subversion@@/$(XEN_SUBVERSION)/g' \
-e 's/@@extraversion@@/$(XEN_EXTRAVERSION)/g' \
-e 's!@@changeset@@!$(shell $(srctree)/tools/scmversion $(XEN_ROOT) || echo "unavailable")!g' \
+ -e 's/@@system_distribution@@/$(shell lsb_release -is)/g' \
+ -e 's/@@system_maintainer_domain@@/$(shell echo "${DEB_MAINTAINER}" | sed -ne 's,^.[^<]*<[^@>]*@\([^>]*\)>,\1,p')/g' \
+ -e 's/@@system_maintainer_local@@/$(shell echo "${DEB_MAINTAINER}" | sed -ne 's,^.[^<]*<\([^@>]*\)@.*>,\1,p')/g' \
+ -e 's/@@system_version@@/$(shell echo "${DEB_VERSION}")/g' \
< $< > $(dot-target).tmp; \
- sed -rf $(srctree)/tools/process-banner.sed < .banner >> $(dot-target).tmp; \
mv -f $(dot-target).tmp $@; \
fi
endef
-include/xen/compile.h: include/xen/compile.h.in .banner FORCE
+include/xen/compile.h: include/xen/compile.h.in FORCE
$(if $(filter-out FORCE,$?),$(Q)rm -fv $@)
$(call if_changed,compile.h)
hypfs_add_dir(&buildinfo, &compileinfo, true);
hypfs_string_set_reference(&compiler, xen_compiler());
- hypfs_string_set_reference(&compile_by, xen_compile_by());
+ hypfs_string_set_reference(&compile_by, xen_compile_system_maintainer_local());
hypfs_string_set_reference(&compile_date, xen_compile_date());
- hypfs_string_set_reference(&compile_domain, xen_compile_domain());
+ hypfs_string_set_reference(&compile_domain, xen_compile_system_maintainer_domain());
hypfs_add_leaf(&compileinfo, &compiler, true);
hypfs_add_leaf(&compileinfo, &compile_by, true);
hypfs_add_leaf(&compileinfo, &compile_date, true);
memset(&info, 0, sizeof(info));
safe_strcpy(info.compiler, deny ? xen_deny() : xen_compiler());
- safe_strcpy(info.compile_by, deny ? xen_deny() : xen_compile_by());
- safe_strcpy(info.compile_domain, deny ? xen_deny() : xen_compile_domain());
+ safe_strcpy(info.compile_by, deny ? xen_deny() : xen_compile_system_maintainer_local());
+ safe_strcpy(info.compile_domain, deny ? xen_deny() : xen_compile_system_maintainer_domain());
safe_strcpy(info.compile_date, deny ? xen_deny() : xen_compile_date());
if ( copy_to_guest(arg, &info, 1) )
return -EFAULT;
return XEN_COMPILE_TIME;
}
-const char *xen_compile_by(void)
+const char *xen_compile_system_distribution(void)
{
- return XEN_COMPILE_BY;
+ return XEN_COMPILE_SYSTEM_DISTRIBUTION;
}
-const char *xen_compile_domain(void)
+const char *xen_compile_system_maintainer_local(void)
{
- return XEN_COMPILE_DOMAIN;
+ return XEN_COMPILE_SYSTEM_MAINTAINER_LOCAL;
}
-const char *xen_compile_host(void)
+const char *xen_compile_system_maintainer_domain(void)
{
- return XEN_COMPILE_HOST;
+ return XEN_COMPILE_SYSTEM_MAINTAINER_DOMAIN;
+}
+
+const char *xen_compile_system_version(void)
+{
+ return XEN_COMPILE_SYSTEM_VERSION;
}
const char *xen_compiler(void)
return XEN_CHANGESET;
}
-const char *xen_banner(void)
-{
- return XEN_BANNER;
-}
-
const char *xen_deny(void)
{
return "<denied>";
pv_console_set_rx_handler(serial_rx);
/* HELLO WORLD --- start-of-day banner text. */
- spin_lock(&console_lock);
- __putstr(xen_banner());
- spin_unlock(&console_lock);
- printk("Xen version %d.%d%s (%s@%s) (%s) %s %s\n",
+ printk("Xen version %d.%d%s (%s %s) (%s@%s) (%s) %s %s\n",
xen_major_version(), xen_minor_version(), xen_extra_version(),
- xen_compile_by(), xen_compile_domain(), xen_compiler(),
- xen_build_info(), xen_compile_date());
- printk("Latest ChangeSet: %s\n", xen_changeset());
+ xen_compile_system_distribution(), xen_compile_system_version(),
+ xen_compile_system_maintainer_local(), xen_compile_system_maintainer_domain(),
+ xen_compiler(), xen_build_info(), xen_compile_date());
/* Locate and print the buildid, if applicable. */
xen_build_init();
#define XEN_COMPILE_DATE "@@date@@"
#define XEN_COMPILE_TIME "@@time@@"
-#define XEN_COMPILE_BY "@@whoami@@"
-#define XEN_COMPILE_DOMAIN "@@domain@@"
-#define XEN_COMPILE_HOST "@@hostname@@"
+#define XEN_COMPILE_SYSTEM_DISTRIBUTION "@@system_distribution@@"
+#define XEN_COMPILE_SYSTEM_MAINTAINER_DOMAIN "@@system_maintainer_domain@@"
+#define XEN_COMPILE_SYSTEM_MAINTAINER_LOCAL "@@system_maintainer_local@@"
+#define XEN_COMPILE_SYSTEM_VERSION "@@system_version@@"
#define XEN_COMPILER "@@compiler@@"
#define XEN_VERSION @@version@@
#define XEN_EXTRAVERSION "@@extraversion@@"
#define XEN_CHANGESET "@@changeset@@"
-#define XEN_BANNER \
const char *xen_compile_date(void);
const char *xen_compile_time(void);
-const char *xen_compile_by(void);
-const char *xen_compile_domain(void);
-const char *xen_compile_host(void);
+const char *xen_compile_system_distribution(void);
+const char *xen_compile_system_maintainer_domain(void);
+const char *xen_compile_system_maintainer_local(void);
+const char *xen_compile_system_version(void);
const char *xen_compiler(void);
unsigned int xen_major_version(void);
unsigned int xen_minor_version(void);