[PATCH 9/9] bugfix findBootPrefix so it works under mock

Gene Czarcinski gczarcinski at ec.rr.com
Mon Sep 15 12:50:52 UTC 2014


Some of the btrfs support code depends on findBootPrefix() output.
When grubby is run under mock chroot the output is different than when
not under mock chroot.

To me, findBootPrefix() is a bit of a hack.  more hackery to "fix"
the problems so that regression tests for btrfs run when an
rpm is built under mock.
---
 grubby.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/grubby.c b/grubby.c
index 8123457..8f6ee79 100644
--- a/grubby.c
+++ b/grubby.c
@@ -2315,6 +2315,10 @@ struct singleEntry * findTemplate(struct grubConfig * cfg, const char * prefix,
     return NULL;
 }
 
+/* FIXME: The findBootPrefix() does not work when grubby is run under mock
+   chroot.  This will occur when building an rpm under mock and some regression
+   tests will fail.  The current fix is a hack!
+*/
 static char * findBootPrefix(void) {
     struct stat sb, sb2;
 
@@ -2325,7 +2329,7 @@ static char * findBootPrefix(void) {
     stat("/boot", &sb2);
 #endif
 
-    if (sb.st_dev == sb2.st_dev)
+    if ((sb.st_dev == sb2.st_dev) && (!disableDebug))
 	return strdup("");
 
 #ifdef __ia64__
@@ -4483,7 +4487,8 @@ int main(int argc, const char ** argv) {
 	{ "devtree", 0, POPT_ARG_STRING, &newDevTreePath, 0,
 	    _("device tree file for new stanza"), _("dtb-path") },
 	{ "disable-debug", 0, 0, &disableDebug, 0,
-	    _("at run-time, disable compile-time DEBUG output") },
+	    _("at run-time, disable compile-time DEBUG output "
+	    "(for testing only)") },
 	{ "elilo", 0, POPT_ARG_NONE, &configureELilo, 0,
 	    _("configure elilo bootloader") },
 	{ "efi", 0, POPT_ARG_NONE, &isEfi, 0,
-- 
1.9.3



More information about the anaconda-patches mailing list