Skip to content

Commit 54200e3

Browse files
committed
Merge pull request #120 from sourceryinstitute/install-directions-fixes
Fix outdated INSTALL.md sections and GCC 5.2 refs
2 parents 7f5b166 + a1c1ca5 commit 54200e3

File tree

2 files changed

+23
-39
lines changed

2 files changed

+23
-39
lines changed

INSTALL.md

Lines changed: 21 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Download this file as a PDF document
1717
* [OS X]
1818
* [Windows]
1919
* [Linux]
20-
* [Building from Source]
20+
* [Advanced Installation from Source]
2121
* [Prerequisites]
2222
* [CMake]
2323
* [Make]
@@ -39,7 +39,7 @@ cd opencoarrays
3939
```
4040

4141
Before installing OpenCoarrays, the above bash script will attempt to detect the presence
42-
of the default prequisite packages: [GCC], [MPICH] , and [CMake]. If any of the
42+
of the default prequisite packages: [GCC], [MPICH] , and [CMake]. For additional details, see the [Prerequisites] section. If any of the
4343
aforementioned packages appear to be absent from the user's PATH environment variable,
4444
the [install.sh] script will attempt to download, build, and install any missing packages
4545
after asking permission to do so. The script has been tested on Linux and OS X. Please
@@ -106,41 +106,27 @@ for the relevant Linux distribution. Alternatively, if you desire to install us
106106
Linux package management software such as [yum] or [apt-get], please submit a feature
107107
request via our [Issues] page.
108108

109-
Building from source
109+
Advanced Installation from Source
110110
--------------------
111111

112112
### Prerequisites: ###
113113

114-
For broad coverage of CAF features, ease of installation, and ease of use, first
115-
install the following:
116-
117-
* An OpenCoarrays-aware Fortran compiler: currently [GCC] 5.1 or later,
118-
* The Fortran compiler's companion C compiler that supports the C99 standard, and
119-
* An MPI implementation that supports MPI 3.0 and is built by the aforementioned
120-
Fortran and C compilers (preferably the [MPICH] or [MVAPICH] implementations for
121-
robustness and high performance)
122-
123-
The [install_prerequisites] directory contains experimental [buildgcc], [buildmpich], and
124-
[buildcmake] bash shell scripts that can download and build any one of several versions of the
125-
[GCC] C, C++, and Fortran compilers; the [CMake] build sytem; and the [MPICH] communication
126-
library. (Because newer parts of the GNU Fortran compiler gfortran are written in C++,
127-
installing the GNU Fortran compiler from source requires also installing the GNU C++ compiler
128-
`g++`.) The CMake scripts that build OpenCoarrays also copy [buildgcc], [buildmpich], and
129-
[buildcmake] into the `bin` directory of the OpenCoarrays installation for later use.
130-
131-
We have tested the build scripts on OS X and Linux. Please submit suggestions for improving
132-
the scripts to our [Issues] page or preferably suggeste edits by forking a copy of the
133-
[OpenCoarrays] repository, making the suggested edits, and submitting a pull request.
134-
135-
If installing the above prerequisites is infeasible, then a limited coverage of CAF
136-
features is available via the OpenCoarrays `caf` compiler wrapper and the
137-
[opencoarrays] module, for which the installation prerequisites are the following:
138-
139-
* A Fortran compiler that supports the C-interoperability features of Fortran 2003,
140-
* The Fortran compiler's companion C compiler that supports the C99 standard, and
141-
* An MPI implementation that supports MPI 3.0 and is built by the aforementioned
142-
Fortran and C compilers (preferably the [MPICH] or [MVAPICH] implementations for
143-
robustness and high performance)
114+
The following prerequisites and their dependencies are recommended for the broadest coverage of CAF features. The download, compilation and installation of these prerequisites will be automatically attempted by the [install.sh] script, if any of them are missing or outdated.
115+
116+
```
117+
opencoarrays
118+
├── cmake-3.4.0
119+
└── mpich-3.1.4
120+
└── gcc-5.3.0
121+
├── flex-2.6.0
122+
│   └── bison-3.0.4
123+
│   └── m4-1.4.17
124+
├── gmp
125+
├── mpc
126+
└── mpfr
127+
```
128+
129+
If using the advanced [CMake] or [Make] builds detailed below, please ensure that these dependencies are met before attempting to build and install OpenCoarrays.
144130

145131
### CMake ###
146132

@@ -235,7 +221,7 @@ where the second line builds the flex package that is required for building gcc
235221
[ticket]: https://trac.macports.org/ticket/47806
236222
[Windows]: #windows
237223
[Linux]: #linux
238-
[Building from Source]: #building-from-source
224+
[Advanced Installation from Source]: #advanced-installation-from-source
239225
[Prerequisites]: #prerequisites
240226
[CMake]: #cmake
241227
[Make]: #make
@@ -250,9 +236,7 @@ where the second line builds the flex package that is required for building gcc
250236
[make.inc]: ./src/make.inc
251237
[opencoarrays]: ./src/extensions/opencoarrays.F90
252238
[install_prerequisites]: ./install_prerequisites
253-
[buildgcc]: ./install_prerequisites/buildgcc
254-
[buildmpich]: ./install_prerequisites/buildmpich
255-
[buildcmake]: ./install_prerequisites/buildcmake
239+
[build]: ./install_prerequisites/build
256240
[MPICH]: http://www.mpich.org
257241
[MVAPICH]:http://mvapich.cse.ohio-state.edu
258242
[MacPorts]: http://www.macports.org

src/tests/unit/extensions/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ endif()
44

55
if (NOT CMAKE_VERSION VERSION_LESS 3.3.1)
66
# Detect Fortran compiler version directly
7-
if(gfortran_compiler AND (NOT CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 5.2))
7+
if(gfortran_compiler AND (NOT CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 5.1))
88
set(opencoarrays_aware_compiler true)
99
else()
1010
set(opencoarrays_aware_compiler false)
1111
endif()
1212
else()
1313
# Use the C compiler version as a proxy for the Fortran compiler version (won't work with NAG)
14-
if(gfortran_compiler AND (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.2))
14+
if(gfortran_compiler AND (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.1))
1515
set(opencoarrays_aware_compiler true)
1616
else()
1717
set(opencoarrays_aware_compiler false)

0 commit comments

Comments
 (0)