Submitted By: Jim Gifford (jim at linuxfromscratch dot org) Date: 2003-09-26 Initial Package Version: 0.93 Origin: Grub CVS Description: Fixes Automake Errors Fixes memcpy Error diff -Naur grub-0.93.orig/configure.in grub-0.93/configure.in --- grub-0.93.orig/configure.in 2002-11-29 20:12:08.000000000 +0000 +++ grub-0.93/configure.in 2003-09-27 01:17:33.000000000 +0000 @@ -54,8 +54,8 @@ _AM_DEPENDENCIES(CC) dnl Because recent automake complains about AS, set it here. -AS="$CC" -AC_SUBST(AS) +CCAS="$CC" +AC_SUBST(CCAS) AC_ARG_WITH(binutils, [ --with-binutils=DIR search the directory DIR to find binutils]) @@ -619,9 +619,9 @@ AC_SUBST(NET_EXTRAFLAGS) AC_SUBST(NETBOOT_DRIVERS) -dnl Because recent automake complains about ASFLAGS, set it here. -ASFLAGS='$(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)' -AC_SUBST(ASFLAGS) +dnl Because recent automake complains about CCASFLAGS, set it here. +CCASFLAGS='$(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)' +AC_SUBST(CCASFLAGS) dnl Output. diff -Naur grub-0.93.orig/stage1/Makefile.am grub-0.93/stage1/Makefile.am --- grub-0.93.orig/stage1/Makefile.am 2002-09-08 01:58:08.000000000 +0000 +++ grub-0.93/stage1/Makefile.am 2003-09-27 01:17:33.000000000 +0000 @@ -4,7 +4,7 @@ CLEANFILES = $(nodist_pkgdata_DATA) # We can't use builtins or standard includes. -AM_ASFLAGS = $(STAGE1_CFLAGS) -fno-builtin -nostdinc +AM_CCASFLAGS = $(STAGE1_CFLAGS) -fno-builtin -nostdinc LDFLAGS = -nostdlib -Wl,-N,-Ttext,7C00 noinst_PROGRAMS = stage1.exec diff -Naur grub-0.93.orig/stage2/Makefile.am grub-0.93/stage2/Makefile.am --- grub-0.93.orig/stage2/Makefile.am 2002-11-29 18:00:53.000000000 +0000 +++ grub-0.93/stage2/Makefile.am 2003-09-27 01:17:33.000000000 +0000 @@ -88,7 +88,7 @@ fsys_vstafs.c fsys_xfs.c gunzip.c hercules.c md5.c serial.c \ smp-imps.c stage2.c terminfo.c tparm.c pre_stage2_exec_CFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) -pre_stage2_exec_ASFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) +pre_stage2_exec_CCASFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) pre_stage2_exec_LDFLAGS = $(PRE_STAGE2_LINK) if NETBOOT_SUPPORT @@ -109,7 +109,7 @@ echo "#define STAGE2_SIZE $$6" > stage2_size.h start_exec_SOURCES = start.S -start_exec_ASFLAGS = $(STAGE2_COMPILE) +start_exec_CCASFLAGS = $(STAGE2_COMPILE) start_exec_LDFLAGS = $(START_LINK) # XXX: automake doesn't provide a way to specify dependencies for object @@ -127,7 +127,7 @@ stage1_5.c fsys_ext2fs.c bios.c e2fs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_EXT2FS=1 \ -DNO_BLOCK_FILES=1 -e2fs_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_EXT2FS=1 \ +e2fs_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_EXT2FS=1 \ -DNO_BLOCK_FILES=1 e2fs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -136,7 +136,7 @@ stage1_5.c fsys_fat.c bios.c fat_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_FAT=1 \ -DNO_BLOCK_FILES=1 -fat_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_FAT=1 \ +fat_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_FAT=1 \ -DNO_BLOCK_FILES=1 fat_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -145,7 +145,7 @@ stage1_5.c fsys_ffs.c bios.c ffs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_FFS=1 \ -DNO_BLOCK_FILES=1 -ffs_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_FFS=1 \ +ffs_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_FFS=1 \ -DNO_BLOCK_FILES=1 ffs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -154,7 +154,7 @@ stage1_5.c fsys_minix.c bios.c minix_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_MINIX=1 \ -DNO_BLOCK_FILES=1 -minix_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_MINIX=1 \ +minix_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_MINIX=1 \ -DNO_BLOCK_FILES=1 minix_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -163,7 +163,7 @@ disk_io.c stage1_5.c fsys_reiserfs.c bios.c reiserfs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_REISERFS=1 \ -DNO_BLOCK_FILES=1 -reiserfs_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_REISERFS=1 \ +reiserfs_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_REISERFS=1 \ -DNO_BLOCK_FILES=1 reiserfs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -172,7 +172,7 @@ disk_io.c stage1_5.c fsys_vstafs.c bios.c vstafs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_VSTAFS=1 \ -DNO_BLOCK_FILES=1 -vstafs_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_VSTAFS=1 \ +vstafs_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_VSTAFS=1 \ -DNO_BLOCK_FILES=1 vstafs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -181,7 +181,7 @@ disk_io.c stage1_5.c fsys_jfs.c bios.c jfs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_JFS=1 \ -DNO_BLOCK_FILES=1 -jfs_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_JFS=1 \ +jfs_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_JFS=1 \ -DNO_BLOCK_FILES=1 jfs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -190,7 +190,7 @@ disk_io.c stage1_5.c fsys_xfs.c bios.c xfs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_XFS=1 \ -DNO_BLOCK_FILES=1 -xfs_stage1_5_exec_ASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_XFS=1 \ +xfs_stage1_5_exec_CCASFLAGS = $(STAGE1_5_COMPILE) -DFSYS_XFS=1 \ -DNO_BLOCK_FILES=1 xfs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) @@ -198,7 +198,7 @@ diskless_exec_SOURCES = $(pre_stage2_exec_SOURCES) diskless_exec_CFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) \ -DSUPPORT_DISKLESS=1 -diskless_exec_ASFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) \ +diskless_exec_CCASFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) \ -DSUPPORT_DISKLESS=1 diskless_exec_LDFLAGS = $(PRE_STAGE2_LINK) diskless_exec_LDADD = ../netboot/libdrivers.a @@ -210,7 +210,7 @@ # For nbloader target. nbloader_exec_SOURCES = nbloader.S -nbloader_exec_ASFLAGS = $(STAGE2_COMPILE) +nbloader_exec_CCASFLAGS = $(STAGE2_COMPILE) nbloader_exec_LDFLAGS = $(NBLOADER_LINK) # XXX: See the comment for start_exec-start.o. @@ -223,7 +223,7 @@ # For pxeloader target. pxeloader_exec_SOURCES = pxeloader.S -pxeloader_exec_ASFLAGS = $(STAGE2_COMPILE) +pxeloader_exec_CCASFLAGS = $(STAGE2_COMPILE) pxeloader_exec_LDFLAGS = $(PXELOADER_LINK) # XXX: See the comment for start_exec-start.o. diff -Naur grub-0.93.orig/stage2/builtins.c grub-0.93/stage2/builtins.c --- grub-0.93.orig/stage2/builtins.c 2002-12-04 04:41:57.000000000 +0000 +++ grub-0.93/stage2/builtins.c 2003-09-27 01:17:33.000000000 +0000 @@ -4202,12 +4202,13 @@ return errnum; } - ti_set_term (term); + ti_set_term (&term); } else { /* No option specifies printing out current settings. */ - term = ti_get_term (); + struct terminfo* p = ti_get_term (); + grub_memmove(&term, p, sizeof term); grub_printf ("name=%s\n", term.name); grub_printf ("cursor_address=%s\n", term.cursor_address); diff -Naur grub-0.93.orig/stage2/terminfo.c grub-0.93/stage2/terminfo.c --- grub-0.93.orig/stage2/terminfo.c 2002-11-29 19:07:38.000000000 +0000 +++ grub-0.93/stage2/terminfo.c 2003-09-27 01:17:33.000000000 +0000 @@ -29,6 +29,7 @@ #include "terminfo.h" #include "tparm.h" #include "serial.h" +#include "shared.h" /* Current terminal capabilities. Default is "vt100". */ struct terminfo term = @@ -244,16 +245,18 @@ } /* set the current terminal emulation to use */ -void -ti_set_term (struct terminfo new) +void +ti_set_term (struct terminfo* new) { - term = new; + if (new != 0) { + grub_memmove(&term, new, sizeof term); + } } /* return the current terminal emulation */ -struct terminfo +struct terminfo* ti_get_term(void) { - return term; + return &term; } diff -Naur grub-0.93.orig/stage2/terminfo.h grub-0.93/stage2/terminfo.h --- grub-0.93.orig/stage2/terminfo.h 2002-11-29 19:07:14.000000000 +0000 +++ grub-0.93/stage2/terminfo.h 2003-09-27 01:17:33.000000000 +0000 @@ -40,8 +40,8 @@ char *ti_unescape_memory (const char *in, const char *end); char *ti_unescape_string (const char *in); -void ti_set_term (struct terminfo term); -struct terminfo ti_get_term (void); +void ti_set_term (struct terminfo* term); +struct terminfo* ti_get_term (void); void ti_cursor_address (int x, int y); void ti_clear_screen (void);