aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2017-02-22 20:57:39 +0100
committerTristan Gingold <tgingold@free.fr>2017-02-22 20:57:39 +0100
commit8b2856dac2bae82a0b897f60e5198dd459795ee3 (patch)
treebb22f805025c56d893e5237343add186242b4211
parentc1e39ee2038b36ac1d7455f42a33564133e8d6ea (diff)
downloadghdl-8b2856dac2bae82a0b897f60e5198dd459795ee3.tar.gz
ghdl-8b2856dac2bae82a0b897f60e5198dd459795ee3.tar.bz2
ghdl-8b2856dac2bae82a0b897f60e5198dd459795ee3.zip
gcc: move ortho-lang.c selection from configure to Makefile.in
For #291
-rw-r--r--BUILD.txt2
-rw-r--r--Makefile.in12
-rwxr-xr-xconfigure14
3 files changed, 13 insertions, 15 deletions
diff --git a/BUILD.txt b/BUILD.txt
index b917720bd..37f2bad78 100644
--- a/BUILD.txt
+++ b/BUILD.txt
@@ -50,7 +50,7 @@ Building with the gcc backend
*****************************
You need to download and untar the sources of
-gcc version 4.9 [do not modify this line as this is read by scripts].
+gcc version 4.9.x, 5.x or 6.x
First configure ghdl, specify gcc source dir and prefix.
(replace /usr/local by your prefix directory):
diff --git a/Makefile.in b/Makefile.in
index c72b31bfb..cb05b0269 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -28,7 +28,6 @@ EXEEXT=@EXEEXT@
SOEXT=@SOEXT@
PIC_FLAGS=@PIC_FLAGS@
gcc_src_dir=@gcc_src_dir@
-gcc_ortho_lang=@gcc_ortho_lang@
LLVM_CONFIG=@llvm_config@
LDFLAGS=@LDFLAGS@
LIBBACKTRACE=@backtrace_lib@
@@ -173,7 +172,16 @@ copy-sources.gcc: version.ads
$(CP) -p $(srcdir)/src/ortho/gcc/*.ad? $(gcc_vhdl_dir)
$(CP) -p $(srcdir)/src/ortho/gcc/*.c $(gcc_vhdl_dir)
$(CP) -p $(srcdir)/src/ortho/gcc/*.opt $(gcc_vhdl_dir)
- $(CP) -p $(srcdir)/src/ortho/gcc/$(gcc_ortho_lang) \
+ base_ver=`cat $(gcc_src_dir)/gcc/BASE-VER`; \
+ case $$base_ver in \
+ 4.9*) gcc_ortho_lang=ortho-lang.c ;; \
+ 5.*) gcc_ortho_lang=ortho-lang-5.c ;; \
+ 6.*) gcc_ortho_lang=ortho-lang-6.c ;; \
+ *) echo "Mismatch gcc version from $gcc_src_dir" \
+ echo "Need gcc version 4.9.x, 5.x or 6.x" \
+ exit 1 ;; \
+ esac; \
+ $(CP) -p $(srcdir)/src/ortho/gcc/$$gcc_ortho_lang \
$(gcc_vhdl_dir)/ortho-lang.c
$(CP) -p $(srcdir)/doc/ghdl.texi $(srcdir)/doc/ghdl.1 $(gcc_vhdl_dir)
$(MKDIR) $(gcc_vhdl_dir)/ghdldrv
diff --git a/configure b/configure
index 4fe3c1ff3..350410673 100755
--- a/configure
+++ b/configure
@@ -13,7 +13,6 @@ prefix=/usr/local
libdirsuffix=lib/ghdl
libdirreverse=../..
gcc_src_dir=
-gcc_ortho_lang=unknown
llvm_config=
backtrace_lib=
llvm_be=llvm
@@ -26,7 +25,7 @@ PIC_FLAGS=-fPIC
show_help=no
progname=$0
-subst_vars="CC CXX GNATMAKE CFLAGS LDFLAGS build srcdir prefix backend libdirsuffix libdirreverse gcc_src_dir gcc_ortho_lang llvm_config llvm_be llvm_be_ver backtrace_lib build_mode EXEEXT SOEXT PIC_FLAGS default_pie"
+subst_vars="CC CXX GNATMAKE CFLAGS LDFLAGS build srcdir prefix backend libdirsuffix libdirreverse gcc_src_dir llvm_config llvm_be llvm_be_ver backtrace_lib build_mode EXEEXT SOEXT PIC_FLAGS default_pie"
# Find srcdir
srcdir=`dirname $progname`
@@ -133,21 +132,12 @@ if test $backend = mcode; then
fi
fi
-# For gcc backend, check version
+# For gcc backend, check existing version
if test $backend = gcc; then
if ! test -f $gcc_src_dir/gcc/BASE-VER; then
echo "cannot find gcc/BASE-VER in $gcc_src_dir"
exit 1
fi
- base_ver=`cat $gcc_src_dir/gcc/BASE-VER`
- case $base_ver in
- 4.9*) gcc_ortho_lang=ortho-lang.c ;;
- 5.*) gcc_ortho_lang=ortho-lang-5.c ;;
- 6.*) gcc_ortho_lang=ortho-lang-6.c ;;
- *) echo "Mismatch gcc version from $gcc_src_dir"
- echo "Need gcc version 4.9.x, 5.x or 6.x"
- exit 1 ;;
- esac
if test "x$backtrace_lib" = x ; then
# Automatically use libbacktrace from gcc.
backtrace_lib="$prefix/$libdirsuffix/libbacktrace.a"