diff --git a/BUGS b/BUGS index 5b41e456c..4ceb2dfa0 100644 --- a/BUGS +++ b/BUGS @@ -1,5 +1,9 @@ Known problems/bugs: + - The command "geometry" doesn't work with a floppy very well. This + bug was incorporated after the rewrite of the partition scanning + code by okuji. + - GRUB cannot boot newer versions of NetBSD or OpenBSD directly. - The command "map" seems not to work in some environments. diff --git a/ChangeLog b/ChangeLog index a5660e0db..985dd6c02 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2001-07-07 OKUJI Yoshinori + + * netboot/compile: New file. This was also missing... How many + ``compile''s does automake want? + +2001-07-07 OKUJI Yoshinori + + From Jan Zerebecki : + * acinclude.m4 (grub_DEFINE_FILE): Escape double-quotations as + well. + 2001-07-05 OKUJI Yoshinori * configure.in (AM_INIT_AUTOMAKE): Set the version number to diff --git a/THANKS b/THANKS index 9e1510008..261a8d6ce 100644 --- a/THANKS +++ b/THANKS @@ -37,6 +37,7 @@ Herbert Nachtnebel Hisazumi Kenji HORIKAWA Kazunori Jan Fricke +Jan Zerebecki Jochen Hoenicke Johannes Kroeger John Tobey diff --git a/acinclude.m4 b/acinclude.m4 index bd23b70eb..87312f925 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -343,6 +343,9 @@ main (void) case '\\': fputs ("\\\\", stdout); break; + case '"': + fputs ("\\\"", stdout); + break; default: putchar (c); } diff --git a/aclocal.m4 b/aclocal.m4 index cedc4d703..3fc94fed2 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -356,6 +356,9 @@ main (void) case '\\': fputs ("\\\\", stdout); break; + case '"': + fputs ("\\\"", stdout); + break; default: putchar (c); } diff --git a/configure b/configure index d50bae222..54041b7d9 100644 --- a/configure +++ b/configure @@ -3027,6 +3027,9 @@ main (void) case '\\': fputs ("\\\\", stdout); break; + case '"': + fputs ("\\\"", stdout); + break; default: putchar (c); } @@ -3036,7 +3039,7 @@ main (void) } EOF -if { ac_try='${CC-cc} ${CFLAGS} conftest.c -o conftest'; { (eval echo configure:3040: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest; then +if { ac_try='${CC-cc} ${CFLAGS} conftest.c -o conftest'; { (eval echo configure:3043: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest; then grub_tmp_value=`./conftest < "$enable_preset_menu"` else { echo "configure: error: ${CC-cc} failed to produce an executable file" 1>&2; exit 1; } diff --git a/netboot/Makefile.in b/netboot/Makefile.in index 30b22bc81..321365564 100644 --- a/netboot/Makefile.in +++ b/netboot/Makefile.in @@ -210,7 +210,7 @@ CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ CFLAGS = @CFLAGS@ DIST_SOURCES = $(libdrivers_a_SOURCES) $(EXTRA_libdrivers_a_SOURCES) -DIST_COMMON = Makefile.am Makefile.in +DIST_COMMON = Makefile.am Makefile.in compile SOURCES = $(libdrivers_a_SOURCES) $(EXTRA_libdrivers_a_SOURCES) all: all-am diff --git a/netboot/compile b/netboot/compile new file mode 100644 index 000000000..d4a34aa0e --- /dev/null +++ b/netboot/compile @@ -0,0 +1,82 @@ +#! /bin/sh + +# Wrapper for compilers which do not understand `-c -o'. + +# Copyright 1999, 2000 Free Software Foundation, Inc. +# Written by Tom Tromey . +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# Usage: +# compile PROGRAM [ARGS]... +# `-o FOO.o' is removed from the args passed to the actual compile. + +prog=$1 +shift + +ofile= +cfile= +args= +while test $# -gt 0; do + case "$1" in + -o) + ofile=$2 + shift + ;; + *.c) + cfile=$1 + args="$args $1" + ;; + *) + args="$args $1" + ;; + esac + shift +done + +test -z "$ofile" && { + echo "compile: no \`-o' option seen" 1>&2 + exit 1 +} + +test -z "$cfile" && { + echo "compile: no \`.c' file seen" 1>&2 + exit 1 +} + +# Name of file we expect compiler to create. +cofile=`echo $cfile | sed -e 's|^.*/||' -e 's/\.c$/.o/'` + +# Create the lock directory. +lockdir=`echo $ofile | sed -e 's|/|_|g'` +while true; do + if mkdir $lockdir > /dev/null 2>&1; then + break + fi + sleep 1 +done +# FIXME: race condition here if user kills between mkdir and trap. +trap "rmdir $lockdir; exit 1" 1 2 15 + +# Run the compile. +"$prog" $args +status=$? + +if test -f "$cofile"; then + mv "$cofile" "$ofile" +fi + +rmdir $lockdir +exit $status