Skip to content

Commit

Permalink
Tag release v1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
jmert committed May 29, 2017
1 parent 4cb8915 commit 1e4e566
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 32 deletions.
60 changes: 34 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,52 +5,60 @@
## Getting Started

### Downloading
Clone this repository to a local directory:

Either download a release tarball from
https://github.com/jmert/almpure/releases or clone the git repository:

```bash
$ git clone https://github.com/jmert/almpure
```

### Compiling
### Prerequisites

An MPI compiler is required to compile the (P)S2HAT library. At present, only
OpenMPI has been tested, though other compliant MPI implementations should
work as well.
If starting from git sources, the following will be required to bootstrap
the build system:

On some systems (such as Harvard's Odyssey cluster), this software is provided
in loadable modules. The support directory contains small shell scripts which
can be sourced in the shell to load up the correct environment. For example,
on Odyssey,
- The GNU Autotools
- `pkg-config`

```bash
$ cd almpure
$ source support/odyssey_env.sh
```
Generic build dependencies then include:

- A `make` build tool.
- An MPI library implementation.
- The FFTW3 library.
- C and Fortran compilers.

> At present, only OpenMPI has been tested, though other compliant MPI
> implementations should work as well.
Optional components include:

Then configure and compile the library:
- Matlab to build MEX “all-in-one” function wrappers.
* A static FFTW3 library is required for MEX compilation.

### Compiling

To bootstrap the build system from git sources,

```bash
$ autoreconf -vi
$ ./configure
$ make
```

### Compiling Matlab bindings
Next (or for a release tarball), configure and build the library. For example,
for home directory install without the Matlab MEX bindings:

To build the Matlab MEX bindings, the following conditions must be met:

1. Matlab available with a MEX compiler.
2. A static FFTW library. (The dynamic FFTW library used when compiling
the PS2HAT library conflicts with Matlab's internal library, so use
of the static library instead works around this.)
```bash
$ ./configure --without-matlab --prefix=$HOME/local/almpure
$ make && make install
```

The bindings can be built with
More options can be discovered via

```bash
$ make matlab
$ ./configure --help
```

> At this time, only use with Matlab 2016b has been tested.
which will show other available configuration options and variables.

[1]: http://www.apc.univ-paris7.fr/APC_CS/Recherche/Adamis/MIDAS09/software/s2hat/s2hat.html
[2]: http://www.apc.univ-paris7.fr/APC_CS/Recherche/Adamis/MIDAS09/software/pures2hat/pureS2HAT.html
Expand Down
13 changes: 7 additions & 6 deletions configure.ac
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
AC_INIT([almpure], [0.1])
AC_INIT([almpure], [1.0])
AC_CONFIG_AUX_DIR([config])

dnl Take some tricks from
Expand Down Expand Up @@ -45,11 +45,12 @@ AM_CONDITIONAL([KNOWN_MODEXT], [test x"$FC_MODEXT" != x""])
AC_LANG_POP(Fortran)



AC_ARG_WITH([mpi-stub],
[AS_HELP_STRING([--with-mpi-stub],[use a stub MPI implementation @<:@default=no@:>@])],
[],
[with_mpi_stub=no])
dnl Disabled for release build. Not verified to work correctly yet.
dnl
dnl AC_ARG_WITH([mpi-stub],
dnl [AS_HELP_STRING([--with-mpi-stub],[use a stub MPI implementation @<:@default=no@:>@])],
dnl [],
dnl [with_mpi_stub=no])
AM_CONDITIONAL([USE_MPISTUB], [test x"$with_mpi_stub" == xyes])
AS_IF([test x"$with_mpi_stub" == xyes],
[
Expand Down

0 comments on commit 1e4e566

Please sign in to comment.