[PATCH v5] don't keep a gdb-specific date
Yao Qi
yao@codesourcery.com
Wed Jun 26 02:45:00 GMT 2013
On 06/22/2013 01:31 AM, Tom Tromey wrote:
> +# Create version.c from version.in.
> +# Usage:
> +# create-version.sh PATH-TO-GDB-SRCDIR HOST_ALIAS \
> +# TARGET_ALIAS OUTPUT-FILE-NAME
> +
> +srcdir="$1"
> +host_alias="$2"
> +target_alias="$3"
> +output="$4"
> +
> +rm -f version.c-tmp $output version.tmp
> +date=`sed -n -e 's/^.* BFD_VERSION_DATE \(.*\)$$/\1/p' $srcdir/../bfd/version.h`
> +sed -e "s/DATE/$date/" < $srcdir/common/version.in > version.tmp
> +echo '#include "version.h"' >> version.c-tmp
> +echo 'const char version[] = "'"`sed q version.tmp`"'";' >> version.c-tmp
> +echo 'const char host_name[] = "$host_alias";' >> version.c-tmp
> +echo 'const char target_name[] = "$target_alias";' >> version.c-tmp
> +mv version.c-tmp $output
> +rm -f version.tmp
This script breaks the build of GDBServer,
/bin/sh ../../git/gdb/gdbserver/../common/create-version.sh
../../git/gdb/gdbserver/.. \
mips-linux version.c
mv: missing destination file operand after `version.c-tmp'
Try `mv --help' for more information.
mips-linux-gnu-gcc -g -O2 -I. -I../../git/gdb/gdbserver
-I../../git/gdb/gdbserver/../common -I../../git/gdb/gdbserver/../regformats
-I../../git/gdb/gdbserver/../../include -I../../git/gdb/gdbserver/../gnulib/import
-Ibuild-gnulib-gdbserver/import -Wall -Wdeclaration-after-statement
-Wpointer-arith -Wformat-nonliteral -Wno-char-subscripts -Wempty-body
-Werror -DGDBSERVER -c -o version.o -MT version.o -MMD -MP -MF
.deps/version.Tpo version.c
mips-linux-gnu-gcc: error: version.c: No such file or directory
the gdbserver is configured as
../../git/gdb/gdbserver/configure --host=mips-linux
the target_alias is empty. The doc of autoconf says
"The variables âbuild_aliasâ, âhost_aliasâ, and âtarget_aliasâ are
always exactly the arguments of --build, --host, and --target; in
particular, they are left empty if the user did not use them, even if
the corresponding AC_CANONICAL macro was run.", so target_alias can be
empty.
> diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
> index e8470a8..e5ecdd3 100644
> --- a/gdb/gdbserver/Makefile.in
> +++ b/gdb/gdbserver/Makefile.in
> @@ -389,13 +389,9 @@ am--refresh:
>
> force:
>
> -version.c: Makefile $(srcdir)/../version.in
> - rm -f version.c-tmp version.c
> - echo '#include "server.h"' >> version.c-tmp
> - echo 'const char version[] = "'"`sed q ${srcdir}/../version.in`"'";' >> version.c-tmp
> - echo 'const char host_name[] = "$(host_alias)";' >> version.c-tmp
> - mv version.c-tmp version.c
> -version.o: version.c $(server_h)
> +version.c: Makefile $(srcdir)/../common/version.in $(srcdir)/../../bfd/version.h $(srcdir)/../common/create-version.sh
> + $(SHELL) $(srcdir)/../common/create-version.sh $(srcdir)/.. \
> + $(host_alias) $(target_alias) version.c
On the other hand, original code here only echo 'host_alias'
to version.c.
This patch is to handle the case that 'target_alias' is empty, and
unbreak the gdbserver build.
--
Yao (é½å°§)
gdb:
2013-06-26 Yao Qi <yao@codesourcery.com>
* common/create-version.sh: Update comments. Handle the case
that TARGET_ALIAS is empty.
---
gdb/common/create-version.sh | 17 +++++++++++++----
1 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/gdb/common/create-version.sh b/gdb/common/create-version.sh
index 2bf1a9b..53d6173 100755
--- a/gdb/common/create-version.sh
+++ b/gdb/common/create-version.sh
@@ -20,12 +20,17 @@
# Create version.c from version.in.
# Usage:
# create-version.sh PATH-TO-GDB-SRCDIR HOST_ALIAS \
-# TARGET_ALIAS OUTPUT-FILE-NAME
+# [TARGET_ALIAS] OUTPUT-FILE-NAME
srcdir="$1"
host_alias="$2"
-target_alias="$3"
-output="$4"
+
+if [ "$#" = "4" ]; then
+ target_alias="$3"
+ output="$4"
+else
+ output="$3"
+fi
rm -f version.c-tmp $output version.tmp
date=`sed -n -e 's/^.* BFD_VERSION_DATE \(.*\)$/\1/p' $srcdir/../bfd/version.h`
@@ -33,6 +38,10 @@ sed -e "s/DATE/$date/" < $srcdir/common/version.in > version.tmp
echo '#include "version.h"' >> version.c-tmp
echo 'const char version[] = "'"`sed q version.tmp`"'";' >> version.c-tmp
echo 'const char host_name[] = "'"$host_alias"'";' >> version.c-tmp
-echo 'const char target_name[] = "'"$target_alias"'";' >> version.c-tmp
+
+if [ "$#" = "4" ]; then
+ echo 'const char target_name[] = "'"$target_alias"'";' >> version.c-tmp
+fi
+
mv version.c-tmp $output
rm -f version.tmp
--
1.7.7.6
More information about the Gdb-patches
mailing list