This patch prevents the install of grub.d/10_windows on other OS.

grub-pe2elf is only installed if requested by --enable-grub-pe2elf. Even on Cygwin, grub-pe2elf is only required during build.

Christian

2008-08-08  Christian Franke  <[EMAIL PROTECTED]>

        * Makefile.in: Add `target_os' and `enable_grub_pe2elf'.
        * conf/common.rmk: Install `grub-pe2elf' only if requested.
        Install `grub.d/10_windows' only on Cygwin.
        * configure.ac: Add subst of `target_os'.
        Check `target_os' also before setting TARGET_OBJ2ELF.
        Add `--enable-grub-pe2elf'.


diff --git a/Makefile.in b/Makefile.in
index 2121431..6137974 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -48,6 +48,7 @@ PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 
 target_cpu = @target_cpu@
+target_os = @target_os@
 platform = @platform@
 
 INSTALL = @INSTALL@
@@ -92,6 +93,7 @@ UNIFONT_HEX = @UNIFONT_HEX@
 # Options.
 enable_grub_emu = @enable_grub_emu@
 enable_grub_fstest = @enable_grub_fstest@
+enable_grub_pe2elf = @enable_grub_pe2elf@
 enable_lzo = @enable_lzo@
 
 ### General variables.
diff --git a/conf/common.rmk b/conf/common.rmk
index 3d674a6..95859f7 100644
--- a/conf/common.rmk
+++ b/conf/common.rmk
@@ -100,7 +100,10 @@ grub_editenv_SOURCES = util/grub-editenv.c lib/envblk.c util/misc.c kern/misc.c
 CLEANFILES += grub-editenv
 
 # for grub-pe2elf
+ifeq ($(enable_grub_pe2elf), yes)
 bin_UTILITIES += grub-pe2elf
+endif
+
 grub_pe2elf_SOURCES = util/grub-pe2elf.c util/misc.c
 CLEANFILES += grub-pe2elf
 
@@ -120,7 +123,11 @@ CLEANFILES += update-grub_lib
 %: util/grub.d/%.in config.status
 	./config.status --file=$@:$<
 	chmod +x $@
-update-grub_SCRIPTS = 00_header 10_linux 10_hurd 10_windows 30_os-prober 40_custom
+update-grub_SCRIPTS = 00_header 10_linux 10_hurd 30_os-prober 40_custom
+ifeq ($(target_os), cygwin)
+update-grub_SCRIPTS += 10_windows
+endif
+
 CLEANFILES += $(update-grub_SCRIPTS)
 
 update-grub_DATA += util/grub.d/README
diff --git a/configure.ac b/configure.ac
index 7a5938a..f561b8b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -100,6 +100,7 @@ case "$target_cpu" in
 esac
 
 AC_SUBST(target_cpu)
+AC_SUBST(target_os)
 AC_SUBST(platform)
 
 #
@@ -206,9 +207,10 @@ AC_MSG_RESULT([$TARGET_IMG_LDFLAGS_AC])
 
 # For platforms where ELF is not the default link format.
 AC_MSG_CHECKING([for command to convert module to ELF format])
-if test "$host_os" = cygwin; then
-  TARGET_OBJ2ELF='grub-pe2elf.exe'
-fi
+case "${host_os}:${target_os}" in
+  cygwin:cygwin) TARGET_OBJ2ELF='grub-pe2elf' ;;
+  *) ;;
+esac
 AC_SUBST(TARGET_OBJ2ELF)
 AC_MSG_RESULT([$TARGET_OBJ2ELF])
 
@@ -385,6 +387,11 @@ AC_ARG_ENABLE([grub-fstest],
                              [build and install the `grub-fstest' debugging utility])])
 AC_SUBST([enable_grub_fstest])
 
+AC_ARG_ENABLE([grub-pe2elf],
+	      [AS_HELP_STRING([--enable-grub-pe2elf],
+                             [build and install the `grub-pe2elf' conversion utility])])
+AC_SUBST([enable_grub_pe2elf])
+
 # Output files.
 AC_CONFIG_LINKS([include/grub/cpu:include/grub/$target_cpu
 	include/grub/machine:include/grub/$target_cpu/$platform])
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to