diff options
author | Tristan Gingold <tgingold@free.fr> | 2017-08-19 05:05:05 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2017-08-19 05:05:05 +0200 |
commit | e879d9691ac85c5334b2bf27e5fb35c755e2b879 (patch) | |
tree | d31910968c49caab906168fca7bfac9dcfdce9a4 | |
parent | a1126998bf603d410f440a068eeaa3047b7c31a3 (diff) | |
download | ghdl-e879d9691ac85c5334b2bf27e5fb35c755e2b879.tar.gz ghdl-e879d9691ac85c5334b2bf27e5fb35c755e2b879.tar.bz2 ghdl-e879d9691ac85c5334b2bf27e5fb35c755e2b879.zip |
Add --enable-openieee to configure
-rw-r--r-- | Makefile.in | 2 | ||||
-rwxr-xr-x | configure | 23 | ||||
-rw-r--r-- | libraries/Makefile.inc | 10 |
3 files changed, 27 insertions, 8 deletions
diff --git a/Makefile.in b/Makefile.in index ca3b9043e..23770e800 100644 --- a/Makefile.in +++ b/Makefile.in @@ -36,6 +36,7 @@ llvm_be=@llvm_be@ build_mode=@build_mode@ enable_werror=@enable_werror@ enable_checks=@enable_checks@ +enable_openieee=@enable_openieee@ INSTALL_PROGRAM=install -m 755 INSTALL_DATA=install -m 644 @@ -109,6 +110,7 @@ LIBDST_DIR:=$(libdirsuffix) LIBVHDL_FLAGS_TO_PASS=\ LIBSRC_DIR="$(LIBSRC_DIR)" \ LIBDST_DIR="$(LIBDST_DIR)" \ + enable_openieee="$(enable_openieee)" \ LN="$(LN)" CP="$(CP)" MKDIR="$(MKDIR)" all: Makefile all.$(backend) @@ -20,6 +20,7 @@ build= build_mode= enable_werror=true enable_checks=true +enable_openieee=unknown EXEEXT= SOEXT=.so PIC_FLAGS=-fPIC @@ -27,7 +28,7 @@ PIC_FLAGS=-fPIC show_help=no progname=$0 -subst_vars="CC CXX GNATMAKE CFLAGS LDFLAGS build srcdir abs_srcdir prefix backend libdirsuffix libdirreverse gcc_src_dir llvm_config llvm_be backtrace_lib build_mode EXEEXT SOEXT PIC_FLAGS default_pie enable_werror enable_checks" +subst_vars="CC CXX GNATMAKE CFLAGS LDFLAGS build srcdir abs_srcdir prefix backend libdirsuffix libdirreverse gcc_src_dir llvm_config llvm_be backtrace_lib build_mode EXEEXT SOEXT PIC_FLAGS default_pie enable_werror enable_checks enable_openieee" # Find srcdir srcdir=`dirname $progname` @@ -76,6 +77,8 @@ for opt do --disable-werror) enable_werror=false;; --enable-checks) enable_checks=true;; --disable-checks) enable_checks=false;; + --enable-openieee) enable_openieee=true;; + --disable-openieee) enable_openieee=false;; --enable-coverage) build_mode="coverage";; -h|-help|--help) show_help=yes;; *) echo "$0: unknown option $opt; try $0 --help" @@ -98,6 +101,7 @@ Options [defaults in brackets]: backtrace on errors (only for llvm). --disable-werror warnings don't stop build --disable-checks disable internal checks + --enable-openieee use gpl-compatible sources for ieee library EOF exit 0 fi @@ -142,6 +146,23 @@ if ! $CC -v 2> /dev/null; then exit 1 fi +# Default for enable_openieee +if [ "$enable_openieee" = "unknown" ]; then + if test -d $srcdir/libraries/ieee ; then + enable_openieee=false + echo "Use full IEEE library" + else + enable_openieee=true + echo "Use openieee source files for IEEE library (but partial)" + fi +elif [ "$enable_openieee" = false ]; then + if ! test -d $srcdir/libraries/ieee ; then + echo "Sorry, full ieee library source files not present" + echo "consider --enable-openieee" + exit 1 + fi +fi + # Compute build machine if test x$build = x; then build=`$CC $CFLAGS -dumpmachine` diff --git a/libraries/Makefile.inc b/libraries/Makefile.inc index 05c632559..16783684e 100644 --- a/libraries/Makefile.inc +++ b/libraries/Makefile.inc @@ -28,13 +28,9 @@ vhdl.libs.all: vhdl.libs.v87 vhdl.libs.v93 vhdl.libs.v08 -ifeq ($(wildcard ieee), ieee) -full_library=y -else -full_library=n -endif +enable_openieee=false -ifeq ($(full_library),y) +ifeq ($(enable_openieee),false) # Full libraries vhdl.libs.v87: std.v87 ieee.v87 synopsys.v87 vhdl.libs.v93: std.v93 ieee.v93 synopsys.v93 mentor.v93 @@ -55,7 +51,7 @@ SYNOPSYS_V_BSRCS := synopsys/std_logic_misc.vhdl \ SYNOPSYS8793_BSRCS := synopsys/std_logic_textio.vhdl MENTOR_BSRCS := mentor/std_logic_arith.vhdl mentor/std_logic_arith_body.vhdl -ifeq ($(full_library),y) +ifeq ($(enable_openieee),false) IEEE_SRCS := ieee/std_logic_1164.vhdl ieee/std_logic_1164_body.vhdl \ ieee/numeric_bit.vhdl ieee/numeric_bit-body.vhdl \ ieee/numeric_std.vhdl ieee/numeric_std-body.vhdl |