aboutsummaryrefslogtreecommitdiffstats
path: root/BUILD.txt
diff options
context:
space:
mode:
author1138-4EB <1138-4EB@users.noreply.github.com>2017-02-19 18:49:32 +0100
committertgingold <tgingold@users.noreply.github.com>2017-12-10 12:02:05 +0100
commitbb37f17aef2e69655c61510c4896dd8cb303c993 (patch)
treec9d4b97c8d7197f40e8f5909beea2b4b5fa459f2 /BUILD.txt
parent87a5d4a2ea5172b4ba485d208092ecb88dce75cb (diff)
downloadghdl-bb37f17aef2e69655c61510c4896dd8cb303c993.tar.gz
ghdl-bb37f17aef2e69655c61510c4896dd8cb303c993.tar.bz2
ghdl-bb37f17aef2e69655c61510c4896dd8cb303c993.zip
Move split ols txts to doc/oldmds. Add shields to README. Change target of license shield on RTD.
Diffstat (limited to 'BUILD.txt')
-rw-r--r--BUILD.txt140
1 files changed, 0 insertions, 140 deletions
diff --git a/BUILD.txt b/BUILD.txt
deleted file mode 100644
index 27029b757..000000000
--- a/BUILD.txt
+++ /dev/null
@@ -1,140 +0,0 @@
-Build GHDL (Long instructions)
-******************************
-
-GHDL supports many backend (code generator), so you first must choose
-the backend you want to use. There are currently 3 supported backends:
-
-* gcc
-* mcode (this is an internal code generator for x86_64 and i386)
-* llvm (experimental)
-
-Here is a short comparaison:
-
-* gcc:
-+ generated code is faster (particularly with -O or -O2)
-+ generated code can be debugged (with -g)
-+ the output is an executable
-+ ported to many platforms (x86, x86_64, powerpc, sparc)
-- analyze can takes time (particularly for big units)
-- build is more complex
-
-* mcode
-+ very easy to build
-- but x86_64/i386 only
-+ very quick analysis time
-+ can analyze very big designs
-- simulation is slower
-- no executable created
-
-* llvm
-+ same advantages of gcc (good generated code, debuggable)
-+ easier to build than gcc
-
-As GHDL is written in Ada, you need to use the GNU Ada compiler (GNAT).
-I recommend to use GNAT GPL from http://libre.adacore.com (free).
-GHDL was tested with GNAT GPL 2014. Any later version should work.
-The only other dependency is zlib (On ubuntu/debian, install zlib1g-dev).
-
-On UNIX and MinGW systems, you also need standard utilities like sh,
-cmp or make. On MSYS2 packages msys/diffutils and msys/make must be
-installed.
-
-In these instructions, the configure script is executed in the source
-directory; but you can execute in a different directory too, like
-this:
-$ mkdir ghdl-objs
-$ cd ghdl-objs
-$ ../path/to/ghdl/configure ...
-
-Building with mcode backend
-***************************
-
-This is as simple as:
-$ ./configure --prefix=PREFIX
- where PREFIX is the directory for installation
-$ make
- This builds the ghdl_mcode executable, which can be used as is.
-$ make install
- To install within PREFIX
-
-Building with the gcc backend
-*****************************
-
-You need to download and untar the sources of
-gcc version 4.9.x, 5.x, 6.x or 7.x
-
-First configure ghdl, specify gcc source dir and prefix.
-(replace /usr/local by your prefix directory):
-$ ./configure --with-gcc=/path/to/gcc/source/dir --prefix=/usr/local
-
-Then invoke make to copy ghdl sources in the source dir:
-$ make copy-sources
-
-There are some dependencies for building gcc (gmp, mpfr and mpc). If you have
-not them installed on your system, you can either build them manually or use
-the 'download_prerequisite' script provided in gcc source tree (recommended).
-
-$ cd /path/to/gcc/source/dir
-$ ./contrib/download_prerequisites
-
-Then configure gcc. The list of --disable configure options could be
-adjusted for your needs. GHDL don't require all these optional
-libraries and disabling them speed-up the build. Note the prefix
-directory must be the same as the one used to configure ghdl.
-If you have manually built gmp/mpfr/mpc (without using the script
-in contrib) and if you have installed them in a non-standard
-directory, you may need to add --with-gmp=GMP_INSTALL_DIR.
-If your system gcc was configured with --enable-default-pie (check if
-that option appears in the output of gcc -v), you should also add it.
-
-$ mkdir gcc-objs; cd gcc-objs
-$ ../gcc-4.9.3/configure --prefix=/usr/local --enable-languages=c,vhdl \
- --disable-bootstrap --disable-lto --disable-multilib \
- --disable-libssp --disable-libgomp --disable-libquadmath
-$ make -j2
-
-Install gcc:
-$ make install
-or if you don't want to install makeinfo:
-$ make install MAKEINFO=true
-
-Build and install vhdl libraries:
-$ cd /path/to/ghdl/source/dir
-$ make ghdllib
-$ make install
-
-Building with the llvm backend
-******************************
-
-You need to build and install llvm. The supported versions are 3.5
-till 5.x, but only debugging is only supported with llvm 3.5
-(Usually llvm also depends on libedit).
-
-First configure ghdl with '--with-llvm-config'
-$ ./configure --with-llvm-config
-
-If llvm-config is not in your path, you can specify it:
-$ ./configure --with-llvm-config=LLVM_INSTALL/bin/llvm-config
-
-If you want to have stack backtraces on errors (like assert failure or
-index of out bounds), you need to configure and build libbacktrace from gcc
-(you don't need to configure gcc), and add to configure:
- --with-backtrace-lib=/path-to-gcc-build/libbacktrace/.libs/libbacktrace.a
-
-Then build with 'make' and install with 'make install'.
-
-Notes for developpers
-*********************
-
-Developping with the gcc backend:
-Once gcc (with ghdl) has been built once, it is possible to work on ghdl
-sources tree without copying them in gcc tree. Commands are:
-$ make ghdl1-gcc # To build the compiler
-$ make ghdl_gcc # To build the driver
-$ make libs.vhdl.local_gcc # To compile the vhdl libraries
-$ make grt-all # To build the ghdl runtime
-
-In src/ortho/gcc, create a Makefile.conf file that sets the following
-variables:
-AGCC_GCCSRC_DIR=/path/to/gcc/sources
-AGCC_GCCOBJ_DIR=/path/to/gcc/build