Patchwork [FYI] Fix the sim build

login
register
mail settings
Submitter Tom Tromey
Date Jan. 26, 2019, 3:53 p.m.
Message ID <20190126155313.24614-1-tom@tromey.com>
Download mbox | patch
Permalink /patch/31217/
State New
Headers show

Comments

Tom Tromey - Jan. 26, 2019, 3:53 p.m.
Simon pointed out that the "common/" include change in gdb broke the
sim build.  The problem was that the sim was using gdb's
create-version.sh, which changed.

This patch copies create-version.sh to the sim, so that it can
generate "version.c" in a way that works in the sim build.

Tested by rebuilding.

sim/common/ChangeLog
2019-01-25  Tom Tromey  <tom@tromey.com>

	* Make-common.in (version.c): Use sim's create-version.sh.
	* create-version.sh: New file.

sim/ppc/ChangeLog
2019-01-25  Tom Tromey  <tom@tromey.com>

	* Makefile.in (version.c): Use sim's create-version.sh.
---
 sim/common/ChangeLog         |  5 +++++
 sim/common/Make-common.in    |  4 ++--
 sim/common/create-version.sh | 38 ++++++++++++++++++++++++++++++++++++
 sim/ppc/ChangeLog            |  4 ++++
 sim/ppc/Makefile.in          |  4 ++--
 5 files changed, 51 insertions(+), 4 deletions(-)
 create mode 100755 sim/common/create-version.sh

Patch

diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
index b211e16baa..1a3bcc9417 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
@@ -289,8 +289,8 @@  stamp-tvals: gentmap
 	$(SHELL) $(srcroot)/move-if-change tmp-tmap.c targ-map.c
 	touch stamp-tvals
 
-version.c: Makefile $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcroot)/gdb/common/create-version.sh
-	$(SHELL) $(srcroot)/gdb/common/create-version.sh $(srcroot)/gdb \
+version.c: Makefile $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcroot)/sim/common/create-version.sh
+	$(SHELL) $(srcroot)/sim/common/create-version.sh $(srcroot)/gdb \
 	    $(host_alias) $(target_alias) version.c
 
 #
diff --git a/sim/common/create-version.sh b/sim/common/create-version.sh
new file mode 100755
index 0000000000..51cffe8db5
--- /dev/null
+++ b/sim/common/create-version.sh
@@ -0,0 +1,38 @@ 
+#!/bin/sh
+
+# Copyright (C) 1989-2019 Free Software Foundation, Inc.
+
+# This file is part of GDB.
+
+# 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 3 of the License, 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, see <http://www.gnu.org/licenses/>.
+
+# 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/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
diff --git a/sim/ppc/Makefile.in b/sim/ppc/Makefile.in
index 1635e01c49..fb5a6bd21e 100644
--- a/sim/ppc/Makefile.in
+++ b/sim/ppc/Makefile.in
@@ -548,8 +548,8 @@  $(TARGETLIB): tmp-igen tmp-dgen tmp-hw tmp-pk tmp-defines $(LIB_OBJ) $(GDB_OBJ)
 	$(AR) $(AR_FLAGS) $(TARGETLIB) $(LIB_OBJ) $(GDB_OBJ)
 	$(RANLIB) $(TARGETLIB)
 
-version.c: Makefile $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcroot)/gdb/common/create-version.sh
-	$(SHELL) $(srcroot)/gdb/common/create-version.sh $(srcroot)/gdb \
+version.c: Makefile $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcroot)/sim/common/create-version.sh
+	$(SHELL) $(srcroot)/sim/common/create-version.sh $(srcroot)/gdb \
 	    $(host_alias) $(target_alias) version.c
 version.o: version.c $(version_h)