Skip to content

Commit

Permalink
Merge pull request #155 from williamfgc/doc
Browse files Browse the repository at this point in the history
Updating documentation files
  • Loading branch information
Chuck Atkins authored Jun 20, 2017
2 parents 7943ef3 + fd3382d commit 2623089
Show file tree
Hide file tree
Showing 6 changed files with 108 additions and 3,109 deletions.
4 changes: 2 additions & 2 deletions Contributing.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Contributor's Guide

This guide will walk you through how to submit changes to ADIOS and interact
with the project as a developer.
This guide will walk you through how to submit changes to ADIOS 2.0 and interact
with the project as a developer. Information found on ADIOS 2.0 wiki: https://github.com/ornladios/ADIOS2/wiki under the Contributing to ADIOS section.

Table of Contents
=================
Expand Down
157 changes: 88 additions & 69 deletions ReadMe.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,77 +17,96 @@ Copyright.txt for more details.

## Getting Started

ADIOS 2.0 uses CMake for it's build environment. CMake expects projects to use "out-of-source" builds, which means keeping a separate build and source directory (different from autotools, which usually uses an in-source build). To build ADIOS:
ADIOS 2.0 uses CMake for it's build environment. CMake expects projects to use "out-of-source" builds, which means keeping a separate build and source directory (different from autotools, which usually uses an in-source build). To build ADIOS:

1. Clone the repository:
```
$ mkdir adios
$ cd adios
$ git clone https://github.com/ornladios/adios2.git source
```

```
$ mkdir ADIOS2
$ cd ADIOS2
$ git clone https://github.com/ornladios/adios2.git source
```
2. Create a separate build directory:
```
$ mkdir build
```
3. Configure the project with CMake. The following options can be specified as `ON` or `OFF` with cmake's `-DVAR=VALUE` syntax:
* `ADIOS_BUILD_SHARED_LIBS` - Build shared libraries (`OFF` for static)
* `ADIOS_BUILD_EXAMPLES ` - Build examples
* `ADIOS_BUILD_TESTING ` - Build test code
* `ADIOS_USE_MPI ` - Enable MPI
* `ADIOS_USE_BZip2 ` - Enable BZip2 compression
* `ADIOS_USE_ADIOS1 ` - Enable the ADIOS 1.x engine
* `ADIOS_USE_DataMan ` - Enable the DataMan engine
```
$ cd build
$ cmake -DADIOS_USE_MPI=OFF ../source
-- The C compiler identification is GNU 6.3.1
-- The CXX compiler identification is GNU 6.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found BZip2: /usr/lib64/libbz2.so (found version "1.0.6")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
ADIOS2 build configuration:
C++ Compiler: GNU 6.3.1
/usr/bin/c++
Installation prefix: /usr/local
Features:
Library Type: shared
Build Type: Debug
Testing: ON
MPI: OFF
BZip2: ON
ADIOS1: OFF
DataMan: OFF
-- Configuring done
-- Generating done
-- Build files have been written to: /path/to/adios/build
$
```
You can also use CMake's curses-base UI with `ccmake ../source`.

3. Compile:
```
$ make -j8
```
4. Run tests:
```
$ make test
```

```
$ mkdir build
```

3. ***Configure the project with CMake***. The following options can be specified as `ON` or `OFF` with cmake's `-DVAR=VALUE` syntax, where VAR options are:

* `ADIOS_BUILD_SHARED_LIBS` - Build shared libraries (`OFF` for static)
* `ADIOS_BUILD_EXAMPLES ` - Build examples
* `ADIOS_BUILD_TESTING ` - Build test code
* `ADIOS_USE_MPI ` - Enable MPI
* `ADIOS_USE_BZip2 ` - Enable [BZip2](http://www.bzip.org/) compression
* `ADIOS_USE_ZFP ` - Enable [ZFP](https://github.com/LLNL/zfp) compression
* `ADIOS_USE_ADIOS1 ` - Enable the [ADIOS 1.x](https://www.olcf.ornl.gov/center-projects/adios/) engine
* `ADIOS_USE_DataMan ` - Enable the DataMan engine for WAN transports
* `ADIOS_USE_Python ` - Enable the Python bindings

***Important, automatic discovery***: ADIOS 2.0 CMake has an AUTO discovery "ON" default option. If a certain dependency is found in the system installation path (_e.g._ /usr/), not a custom one (_e.g._ /home , /opt ) it will turn on installation for that dependency automatically

In addition, the -DCMAKE_VAR frequent options can be selected:
* `CMAKE_INSTALL_PREFIX ` - Prefix location for installation with `make install`, default depends on system (_e.g._ /usr/local)
* `CMAKE_BUILD_TYPE ` - Debug (default, debugging symbols), or Release (compiler optimizations)

Example:
```
$ cd build
$ cmake -DADIOS_USE_MPI=ON -DADIOS_USE_BZip2=ON -DCMAKE_BUILD_TYPE=Debug ../ADIOS2
-- The C compiler identification is GNU 6.3.1
-- The CXX compiler identification is GNU 6.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found BZip2: /usr/lib64/libbz2.so (found version "1.0.6")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found

ADIOS2 build configuration:
C++ Compiler: GNU 6.3.1
/usr/bin/c++

Installation prefix: /usr/local
Features:
Library Type: shared
Build Type: Debug
Testing: ON
MPI: OFF
BZip2: ON
ADIOS1: OFF
DataMan: OFF

-- Configuring done
-- Generating done
-- Build files have been written to: /path/to/adios/build
$
```

You can also use CMake's curses-base UI with `ccmake ../source`.

4. Compile:

```
$ make -j8
```

5. Run tests:

```
$ make test
```

## Developers

Please see the [Contributors Guide](Contributing.md) for how to submit changes
to ADIOS.
To summit changes to ADIOS 2.0: please see the wiki https://github.com/ornladios/ADIOS2/wiki Contributing to ADIOS section, or the local [Contributors Guide](Contributing.md).
Loading

0 comments on commit 2623089

Please sign in to comment.