ENH: Tweak CMake cache variables "advancedness"
[freefoam.git] / README
blobb5d196218041d71e262c12f412a61f839aa89098
1 {project} README for Version {fullver}
2 ======================================
3 Michael Wild <themiwi@users.sourceforge.net>
4 :Author Initials: MW
5 v{fullver}, {localdate}
6 {homepage}
8 :apidoc: {homepage}/doc/Doxygen/html
9 :asciidoc: http://www.methods.co.nz/asciidoc
10 :bugreport: http://sourceforge.net/apps/mantisbt/freefoam
11 :ccmio: https://wci.llnl.gov/codes/visit/3rd_party/libccmio-2.6.1.tar.gz
12 :cmake: http://cmake.org
13 :doxygen: http://www.doxygen.org
14 :flex: http://flex.sourceforge.net
15 :gcc: http://gcc.gnu.org
16 :git: http://git.or.cz
17 :m4: http://www.gnu.org/software/m4/
18 :make: http://www.gnu.org/software/make
19 :metis: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview
20 :mgridgen: http://glaros.dtc.umn.edu/gkhome/mgridgen/overview
21 :openfoamforum: http://www.cfd-online.com/Forums/openfoam
22 :openmpi: http://www.open-mpi.org[OpenMPI]
23 :paraview: http://www.paraview.org
24 :parmetis: http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview
25 :scotch: http://www.labri.fr/perso/pelegrin/scotch
26 :zlib: http://www.zlib.net
28 Copyright
29 ---------
30 {project} is free software; you can redistribute it and/or modify it under the
31 terms of the GNU General Public License as published by the Free Software
32 Foundation; either version 2 of the License, or (at your option) any later
33 version.  See the file COPYING in this directory, for a description of the GNU
34 General Public License terms under which you can copy the files.
36 System requirements
37 -------------------
38 {project} is developed and tested on Linux, but should work with other Unix
39 style systems, notably Mac OS X (C). The support for Microsoft Windows is a
40 goal, which, however, is still far off.
42 Required software to build {project}
43 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44 [[cmake]]CMake::
45   In order to build {project} you need to have CMake with version 2.8.0 or
46   newer installed. {cmake}
47 [[build_system]]Build system::
48   CMake requires a native build system. On Unix like platforms GNU Make is
49   recommended. {make}
50 [[cxx_compiler]]{cpp} compiler::
51   In order to build {project} you need a {cpp} compiler with good support for
52   template expressions. The g++ compiler from GCC-4.3 and above will do
53   fine. {gcc}
54 [[flex]]flex::
55   The flex lexer generator. Version 2.5.33 is known to work. For more recent
56   versions there have been reports of problems. {flex}
57 [[zlib]]zlib::
58   zlib compression library. {zlib}
59 [[scotch]]SCOTCH::
60   The SCOTCH graph partitioning library. Version 5.1.7 is know to work.
61   {scotch}
62 [[python]]Python::
63   The Python interpreter. Version 2.6.1 is known to work, but care has been
64   taken to make {project} work with versions from 2.4 on, including 3.x.
66 Optional software
67 ~~~~~~~~~~~~~~~~~
68 [[git]]git::
69   To check out a current development version of {project}, git is required.
70   {git}
71 [[parlib]]Parallel Communications Library::
72   In order to run {project} in parallel, a communications library is required.
73   The following list gives an overview of the available options:
74   - MPI (_Message Passing Interface_): There are many implementations of the
75     MPI standard. The one that has been tested and is known to work with
76     {project} is {openmpi}.
77 [[metis]]METIS::
78   The METIS graph partitioning library, version 5.0pre2. If your package
79   manager doesn't contain it, you can also have {project} build it
80   automatically for you (see the <<installation,installation section>>).
81   {metis}
82 [[parmetis]]ParMetis::
83   If you use an MPI library, the ParMetis library is required. If your package
84   manager doesn't contain this library, {project} can build it automatically
85   for you (refer to the <<installation,installation notes>> below). {parmetis}
86 [[mgridgen]]MGRIDGEN:: MGRIDGEN is a grid coarsening library for multi-grid
87   solvers. {project} can build this automatically for you. Please refer to the
88   link:INSTALL.html#enable-parmgridgen[INSTALL] file for license restrictions.
89   {mgridgen}
90 [[libccmio]]libccmio::
91   pro-STAR (C) input/output library. {project} can build this automatically for
92   you. Please refer to the link:INSTALL.html#enable-ccmio[INSTALL] file for
93   license restrictions. {ccmio}
94 [[paraview]]ParaView::
95   The {project} utility 'para' requires this visualization application, version
96   3.8 or later. {paraview}
97 [[m4]]M4::
98   Some of the provided tutorial cases require the M4 macro processor. {m4}
99 [[doxygen]]Doxygen::
100   Automatic API-documentation generator. Required to build the source
101   documentation. {doxygen}
102 [[asciidoc]]Asciidoc::
103   In order to create the man-pages or the html-documentation you need to have a
104   fully working Asciidoc toolchain installed. Versions newer than 8.5 are known
105   to work. Asciidoc itself needs Python 2.4 or newer (but not 3.x), xsltproc,
106   the DocBook XML DTD's and the DocBook XSL stylesheets. Refer to the Asciidoc
107   installation instructions for the details. {asciidoc}
109 [[installation]]
110 Installation
111 ------------
112 For installation and basic usage instructions, refer to the
113 link:INSTALL.html[INSTALL] file.
115 Documentation
116 -------------
117 All the applications and the frequently used script utilities come with a brief
118 man-page. Unfortunately, most of them are little more than stubs and need more
119 work. The man-page _freefoam(1)_ gives a short overview over all applications
120 and utilities and documents the {project} configuration options.
122 API-documentation is available from {apidoc}.
124 Further, most {project} applications and utilities support the '-doc' and
125 '-srcDoc' options, which will automatically display the API-documentation and
126 the source code of the application, respectively.
128 Help
129 ----
130 - {homepage}/support
131 - {openfoamforum} *please only ask questions related to _OpenFOAM_ there*.
133 Reporting Bugs in {project}
134 ---------------------------
135 {bugreport}
137 ///////////////////////////////////////////////////////////////////
138 Process with: asciidoc -a toc -f data/asciidoc/html.conf README
140 Vim users, this is for you:
141 vim: ft=asciidoc sw=2 expandtab fenc=utf-8
142 ///////////////////////////////////////////////////////////////////