diff options
author | Patrick Lehmann <Patrick.Lehmann@tu-dresden.de> | 2017-03-04 20:36:18 +0100 |
---|---|---|
committer | tgingold <tgingold@users.noreply.github.com> | 2017-12-10 12:02:05 +0100 |
commit | 3f5cd97cc29039f8f153541808ca85938c00eef4 (patch) | |
tree | a4877e168191ef1e888f3a37fd7b46ece7daebb6 /doc/building/Directories.rst | |
parent | f38b0364b5a769eb97e87c6fbf5fc303101883d2 (diff) | |
download | ghdl-3f5cd97cc29039f8f153541808ca85938c00eef4.tar.gz ghdl-3f5cd97cc29039f8f153541808ca85938c00eef4.tar.bz2 ghdl-3f5cd97cc29039f8f153541808ca85938c00eef4.zip |
Restructured build section. Created smaller files. Created (hidden) sub-ToCs. Added out-dated build instructions for Windows GNAT GPL flow from private README.md.
Diffstat (limited to 'doc/building/Directories.rst')
-rw-r--r-- | doc/building/Directories.rst | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/doc/building/Directories.rst b/doc/building/Directories.rst new file mode 100644 index 000000000..e7b054a7d --- /dev/null +++ b/doc/building/Directories.rst @@ -0,0 +1,59 @@ +.. _BUILD:dir_structure: + +Directory Structure +################### + +* :samp:`src`: sources of GHDL, all of them in Ada. + +* :samp:`libraries`: mostly third party libraries such as, `ieee`, `mentor`, + `std`, `synopsys` and `vital`. Except a few shell and `Python` scripts, all + the content is written in VHDL. + + * Vendors like Altera, Lattice and Xilinx have their own simulation libraries, + especially for FPGA primitives, soft and hard macros. These libraries can + not be shipped with GHDL, but we offer prepared compile scripts to + pre-compile the vendor libraries, if the vendor tool is present on the + computer. These are located in :samp:`libraries/vendor`. + See Vendor Primitives <VendorPrimitives.html> for information on how to + use them. + +* :samp:`dist`: scripts and auxiliar files to build GHDL in different + environments: + + * :samp:`gcc`: header and configuration files to build GHDL with GCC (all the + platforms). + * :samp:`linux`: build and test script written in shell, and other auxiliary + files used to i) launch docker containers and ii) automate multiple builds + in `Travis CI <https://travis-ci.org/>`_. + + * :samp:`windows`: + + * :samp:`mcode`: + * :samp:`appveyor`: + +* :samp:`doc`: `Markdown` and `reStructuredText` sources and auxiliary files to + build the documentation with `Sphinx <http://www.sphinx-doc.org>`_. Indeed, + `Read the docs <http://readthedocs.org>`_ (RTD) is used to automatically build + and deploy this site and/or PDF you are reading. + +* :samp:`testsuite`: see section :ref:`test_suites`. + +* `.yml` configuration files for CI environments (:samp:`readthedocs`, + :samp:`travis` and :samp:`appveyor`) and `ignore` files for source control + management tools (:samp:`git` and :samp:`.hg`). + +* Files for building GHDL: :samp:`configure` and :samp:`Makefile.in`. + +* Auxiliar files for development: :samp:`.gdbinit` and :samp:`ghdl.gpr.in` + (GNAT project file). + +* Text files: :samp:`COPYING.md`, :samp:`NEWS.md` and :samp:`README.md`. + + +.. TODO:: + + - [@1138-4EB|@Paebbels] Replace link to VendorPrimitives, when the file is translated from md to rst. + + - [@Paebbels] Add brief description of how the content in dist/windows is ordered. From :ghdlsharp:`279`: + - The content in dist/appveyor is for the AppVeyor flow. AppVeyor is a continuous integration service like Travis-CI, but is offers a Windows Server 2012 R2 machine. The AppVeyor flow has more scripts than the Travis-CI flow, so we put them into a separate directory. + - The code in dist/windows/mcode is special code needed to build mcode in windows. mcode is supported on Linux (32/64-bit) and Windows (32-bit). |