Skip to content

Commit

Permalink
Merge pull request #23 from sourceryinstitute/housekeeping
Browse files Browse the repository at this point in the history
Chores: fix error message & document build commands with more compilers
  • Loading branch information
rouson authored Feb 10, 2024
2 parents b599c1a + a955337 commit e9b9c29
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 11 deletions.
43 changes: 33 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,26 +60,21 @@ Downloading, Building, and Running Examples
Assert was developed primarily with `gfortran` 11.2.0 and `nagfor` 7.1.
Recent versions of the Cray and Intel compilers should also suffice.

### Downloading, building, and testing

#### Downloading Assert
### Downloading Assert
```
git clone git@github.com:sourceryinstitute/assert
cd assert
```

#### Building and testing: single-image (serial) execution
### Building and testing with `gfortran`
#### Single-image (serial) execution
The following command builds Assert and runs the full test suite in a single image:
```
fpm test
```
where `fpm test` builds the Assert library and runs the test suite, including the tests.
To build with the Numerical Algorithms Group (NAG) Fortran compiler, use
```
fpm test --compiler nagfor --flag -fpp
```

#### Building and testing: multi-image (parallel) execution
#### Multi-image (parallel) execution
With `gfortran` and OpenCoarrays installed,
```
fpm test --compiler caf --runner "cafrun -n 2"
Expand All @@ -90,7 +85,35 @@ To build and test with the Numerical Algorithms Group (NAG) Fortran compiler ver
fpm test --compiler=nagfor --flag="-coarray=cosmp -fpp -f2018"
```

For documentation on using Assert with other compilers, please submit an issue or pull request.
### Building and testing with the Intel `ifx` compiler
```
fpm test --compiler ifx --flag -coarray
```

### Building and testing with the Numerical Algorithms Group (NAG) compiler
```
fpm test --compiler nagfor --flag "-fpp -coarray=cosmp"
```

### Building and testing with the Cray Compiler Environment (CCE)
Because `fpm` uses the compiler name to determine the compiler identity and because
CCE provides one compiler wrapper, `ftn`, for invoking all compilers, you will
need to invoke `ftn` in a shell script named to identify CCE compiler. For example,
place a script named `crayftn.sh` in your path with the following contents and with
executable privileges set appropriately:
```
#!/bin/bash
ftn $@
```
Then build and test Assert with the command
```
fpm test --compiler crayftn.sh
```


### Building and testing with the Cray Compiler Environment (CCE)
To use Assert with other compilers, please submit an issue or pull request.

### Running the examples
See the [./example](./example) subdirectory.
Expand Down
2 changes: 1 addition & 1 deletion src/assert/intrinsic_array_s.F90
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
type is(double precision)
allocate(intrinsic_array%double_precision_1D, source = array)
class default
error stop "intrinsic_array_t construct: unsupported rank-2 type"
error stop "intrinsic_array_t construct: unsupported rank-1 type"
end select
rank(2)
select type(array)
Expand Down

0 comments on commit e9b9c29

Please sign in to comment.