Hi, Based on the description of host/target triplets in configure.ac:
dnl build -- the environment for building GRUB dnl host -- the environment for running utilities dnl target -- the environment for running GRUB it seems that target_os is an oxymoron. There's no OS in the environment where GRUB will run (well, there's the firmware, but we already use target_vendor for that, and _os has a well-defined meaning). Attached patch fixes that by supressing all references to target_os, and replacing them with host_os where suitable. Christian: since this mostly affects Cygwin, could you verify that it doesn't cause breakage before I commit it? -- Robert Millan The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and how) you may access your data; but nobody's threatening your freedom: we still allow you to remove your data and not access it at all."
2009-01-26 Robert Millan <r...@aybabtu.com> * Makefile.in (host_os, host_cpu): New variables. (target_os): Remove. Update all users. Index: Makefile.in =================================================================== --- Makefile.in (revision 1954) +++ Makefile.in (working copy) @@ -47,8 +47,10 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +host_os = @host_os@ +host_cpu = @host_cpu@ + target_cpu = @target_cpu@ -target_os = @target_os@ platform = @platform@ INSTALL = @INSTALL@ Index: conf/common.rmk =================================================================== --- conf/common.rmk (revision 1954) +++ conf/common.rmk (working copy) @@ -146,7 +146,7 @@ CLEANFILES += update-grub_lib ./config.status --file=$@:$< chmod +x $@ grub-mkconfig_SCRIPTS = 00_header 10_linux 10_hurd 10_freebsd 30_os-prober 40_custom -ifeq ($(target_os), cygwin) +ifeq ($(host_os), cygwin) grub-mkconfig_SCRIPTS += 10_windows endif Index: configure.ac =================================================================== --- configure.ac (revision 1955) +++ configure.ac (working copy) @@ -103,12 +103,10 @@ case "$host_os" in mingw32) host_os=cygwin ;; esac -case "$target_os" in - mingw32) target_os=cygwin ;; -esac +AC_SUBST(host_cpu) +AC_SUBST(host_os) AC_SUBST(target_cpu) -AC_SUBST(target_os) AC_SUBST(platform) # @@ -200,10 +198,10 @@ AC_CHECK_FUNCS(posix_memalign memalign a # Use linker script if present, otherwise use builtin -N script. AC_MSG_CHECKING([for option to link raw image]) -if test -f "${srcdir}/conf/${target_cpu}-${platform}-${target_os}-img-ld.sc"; then - TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/conf/${target_cpu}-${platform}-${target_os}-img-ld.sc" +if test -f "${srcdir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc"; then + TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc" TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT}" - TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/conf/${target_cpu}-${platform}-${target_os}-img-ld.sc" + TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc" else TARGET_IMG_LDSCRIPT= TARGET_IMG_LDFLAGS='-Wl,-N' @@ -215,8 +213,8 @@ 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]) -case "${host_os}:${target_os}" in - cygwin:cygwin) TARGET_OBJ2ELF='grub-pe2elf' ;; +case "${host_os}" in + cygwin) TARGET_OBJ2ELF='grub-pe2elf' ;; *) ;; esac AC_SUBST(TARGET_OBJ2ELF)
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel