summaryrefslogtreecommitdiff
path: root/translate/gcc
diff options
context:
space:
mode:
authorgingold2012-12-11 02:46:11 +0000
committergingold2012-12-11 02:46:11 +0000
commit560c4c42f15155771b5558c37cec7a1acbb48751 (patch)
treeef3a6144800e7ae38d4caab31ab1be9eb29d6cd7 /translate/gcc
parent03cc455ed44229ecd2b925e110f9019c4e6f497b (diff)
downloadghdl-560c4c42f15155771b5558c37cec7a1acbb48751.tar.gz
ghdl-560c4c42f15155771b5558c37cec7a1acbb48751.tar.bz2
ghdl-560c4c42f15155771b5558c37cec7a1acbb48751.zip
Part of the previous commit (upgrade to gcc 4.7)
Diffstat (limited to 'translate/gcc')
-rw-r--r--translate/gcc/Make-lang.in54
-rwxr-xr-xtranslate/gcc/dist.sh9
2 files changed, 59 insertions, 4 deletions
diff --git a/translate/gcc/Make-lang.in b/translate/gcc/Make-lang.in
index 308f400..3c6e5c3 100644
--- a/translate/gcc/Make-lang.in
+++ b/translate/gcc/Make-lang.in
@@ -69,17 +69,67 @@ AGCC_GCCSRC_DIR=$(srcdir)/..
AGCC_GCCOBJ_DIR=../
####gcc Makefile.inc
+# -*- Makefile -*- for the gcc implemantation of ortho.
+# Copyright (C) 2005 Tristan Gingold
+#
+# GHDL 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.
+#
+# GHDL 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 GCC; see the file COPYING. If not, write to the Free
+# Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# Variable used:
+# AGCC_GCCSRC_DIR: the gcc source base directory (ie gcc-X.Y.Z-objs/)
+# AGCC_GCCOBJ_DIR: the gcc objects base directory
+# agcc_srcdir: the agcc source directory
+# agcc_objdir: the agcc object directory
+
+AGCC_INC_FLAGS=-I$(AGCC_GCCOBJ_DIR)/gcc -I$(AGCC_GCCSRC_DIR)/include \
+ -I$(AGCC_GCCSRC_DIR)/gcc -I$(AGCC_GCCSRC_DIR)/gcc/config \
+ -I$(AGCC_GCCSRC_DIR)/libcpp/include
+AGCC_CFLAGS=-g -Wall -DIN_GCC $(AGCC_INC_FLAGS)
+
+AGCC_LOCAL_OBJS=ortho-lang.o
+
+AGCC_DEPS := $(AGCC_LOCAL_OBJS)
+AGCC_OBJS := $(AGCC_LOCAL_OBJS) $(AGCC_GCCOBJ_DIR)gcc/attribs.o
+# $(AGCC_GCCOBJ_DIR)gcc/toplev.o
+
+ortho-lang.o: $(agcc_srcdir)/ortho-lang.c \
+ $(AGCC_GCCOBJ_DIR)gcc/gtype-vhdl.h \
+ $(AGCC_GCCOBJ_DIR)gcc/gt-vhdl-ortho-lang.h
+ $(CC) -c -o $@ $< $(AGCC_CFLAGS)
+
+agcc-clean: force
+ $(RM) -f $(agcc_objdir)/*.o
+ $(RM) -f $(agcc_srcdir)/*~
+
+agcc-maintainer-clean: force
+ $(RM) -f $(AGCC_DEPS)
+
+
+.PHONY: agcc-clean agcc-maintainer-clean
# The compiler proper.
# It is compiled into the vhdl/ subdirectory to avoid file name clashes but
# linked in in gcc directory to be able to access to gcc object files.
-ghdl1$(exeext): $(AGCC_OBJS) $(AGCC_DEPS) force
+ghdl1$(exeext): $(AGCC_OBJS) $(AGCC_DEPS) force $(BACKEND) $(LIBDEPS)
CURDIR=`pwd`; cd $(srcdir)/vhdl; VHDLSRCDIR=`pwd`; cd $$CURDIR/vhdl; \
$(GNATMAKE) -c -aI$$VHDLSRCDIR ortho_gcc-main \
-cargs $(CFLAGS) $(GHDL_ADAFLAGS)
$(GNATMAKE) -o $@ -aI$(srcdir)/vhdl -aOvhdl ortho_gcc-main \
-bargs -E -cargs $(CFLAGS) $(GHDL_ADAFLAGS) \
- -largs $(AGCC_OBJS) $(LIBS) $(GMPLIBS)
+ -largs $(AGCC_OBJS) $(filter-out main.o,$(BACKEND)) \
+ $(LIBS) $(BACKENDLIBS)
# The driver for ghdl.
ghdl$(exeext): force
diff --git a/translate/gcc/dist.sh b/translate/gcc/dist.sh
index f79719b..9501334 100755
--- a/translate/gcc/dist.sh
+++ b/translate/gcc/dist.sh
@@ -39,7 +39,7 @@
set -e
# GCC version
-GCCVERSION=4.3.4
+GCCVERSION=4.7.2
# Machine name used by GCC
MACHINE=i686-pc-linux-gnu
# Directory where GCC sources (and objects) stay.
@@ -187,12 +187,17 @@ do_compile ()
case x86 in
x86)
BUILD=i686-pc-linux-gnu
- CONFIG_LIBS="--with-gmp=$PWD/../build --with-mpfr=$PWD/../build"
+ # gmp location (mpfr and mpc are supposed to be at the same place)
+ CONFIG_LIBS="--with-gmp=$PWD/../build"
;;
x86-64)
BUILD=x86_64-pc-linux-gnu
CONFIG_LIBS=""
;;
+ darwin)
+ BUILD=x86_64-apple-darwin10.7
+ CONFIG_LIBS="--with-gmp=$HOME/local"
+ ;;
*)
exit 1
;;