Skip to content

Commit

Permalink
strawman open source release
Browse files Browse the repository at this point in the history
(Includes combined effort of strawman contributors)
  • Loading branch information
cyrush committed Jan 10, 2017
0 parents commit 875930b
Show file tree
Hide file tree
Showing 539 changed files with 217,214 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
build-debug/
build-release/
build-debug-xcode/
build-release-xcode/
install-debug/
install-release/
.DS_Store
*.pyc
.ipynb_checkpoints
visitlog.py
uberenv_libs
*.tar.gz
63 changes: 63 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
Copyright (c) 2015-2017, Lawrence Livermore National Security, LLC.

Produced at the Lawrence Livermore National Laboratory

LLNL-CODE-716457

All rights reserved.

This file is part of Strawman.

For details, see: http://software.llnl.gov/strawman/.

Please also read strawman/LICENSE

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice,
this list of conditions and the disclaimer below.

* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the disclaimer (as noted below) in the
documentation and/or other materials provided with the distribution.

* Neither the name of the LLNS/LLNL nor the names of its contributors may
be used to endorse or promote products derived from this software without
specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

Additional BSD Notice

1. This notice is required to be provided under our contract with the U.S.
Department of Energy (DOE). This work was produced at Lawrence
Livermore National Laboratory under Contract No. DE-AC52-07NA27344 with
the DOE.

2. Neither the United States Government nor Lawrence Livermore National
Security, LLC nor any of their employees, makes any warranty, express
or implied, or assumes any liability or responsibility for the
accuracy, completeness, or usefulness of any information, apparatus,
product, or process disclosed, or represents that its use would not
infringe privately-owned rights.

3. Also, reference herein to any specific commercial products, process,
or services by trade name, trademark, manufacturer or otherwise does
not necessarily constitute or imply its endorsement, recommendation,
or favoring by the United States Government or Lawrence Livermore
National Security, LLC. The views and opinions of authors expressed
herein do not necessarily state or reflect those of the United
States Government or Lawrence Livermore National Security, LLC, and
shall not be used for advertising or product endorsement purposes.
31 changes: 31 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

Strawman
===========

Strawman is an open source many-core capable lightweight in situ visualization and analysis infrastructure for multi-physics HPC simulations.

Documentation
=================

To get started building and using Strawman, check out the full documentation:

http://software.llnl.gov/strawman/


Source Repo
=================

Strawman's source is hosted on GitHub:

https://github.com/llnl/strawman


License
===========

Strawman is released under a BSD-style license - for detailed license info, refer to:

http://software.llnl.gov/strawman/licenses.html

or the following files in the Strawman source tree:
- [LICENSE](/LICENSE)
86 changes: 86 additions & 0 deletions bootstrap-env.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
#!/bin/bash
###############################################################################
# Copyright (c) 2015-2017, Lawrence Livermore National Security, LLC.
#
# Produced at the Lawrence Livermore National Laboratory
#
# LLNL-CODE-716457
#
# All rights reserved.
#
# This file is part of Strawman.
#
# For details, see: http://software.llnl.gov/strawman/.
#
# Please also read strawman/LICENSE
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice,
# this list of conditions and the disclaimer below.
#
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the disclaimer (as noted below) in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the name of the LLNS/LLNL nor the names of its contributors may
# be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
# LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
###############################################################################


###############################################################################
#
# file: bootstrap-env.sh
#
###############################################################################

#
# Takes you from zero to an env with TPLS needed to develop conduit on OSX
# and linux.
#
export ALL_ARGS="$@"

function info
{
echo "$@"
}

function uberenv
{
python scripts/uberenv/uberenv.py "$ALL_ARGS"
}

function main
{
uberenv

BOOSTRAP_CWD=`pwd`
SPACK_CMAKE_PREFIX=`ls -d $BOOSTRAP_CWD/uberenv_libs/spack/opt/spack/*/*/cmake*`
SPACK_CMAKE=`ls $SPACK_CMAKE_PREFIX/bin/cmake`

# Only add to PATH if `which cmake` isn't our CMake
CMAKE_CURRENT=`which cmake`
if [[ "$CMAKE_CURRENT" != "$SPACK_CMAKE" ]] ; then
export PATH=$SPACK_CMAKE_PREFIX/bin:$PATH
fi

info "[Active CMake:" `which cmake` "]"
}

main
137 changes: 137 additions & 0 deletions config-build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
#!/bin/bash
###############################################################################
# Copyright (c) 2015-2017, Lawrence Livermore National Security, LLC.
#
# Produced at the Lawrence Livermore National Laboratory
#
# LLNL-CODE-716457
#
# All rights reserved.
#
# This file is part of Strawman.
#
# For details, see: http://software.llnl.gov/strawman/.
#
# Please also read strawman/LICENSE
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice,
# this list of conditions and the disclaimer below.
#
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the disclaimer (as noted below) in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the name of the LLNS/LLNL nor the names of its contributors may
# be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
# LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
###############################################################################


#------------------------------------------------------------------------------
#clean up existing build + install directories
#------------------------------------------------------------------------------
rm -rf build-debug install-debug

#------------------------------------------------------------------------------
# create a new build directory
#------------------------------------------------------------------------------
mkdir build-debug
mkdir install-debug
cd build-debug

#------------------------------------------------------------------------------
# setup desired basic cmake options
#------------------------------------------------------------------------------
export CMAKE_OPTS=" -DCMAKE_BUILD_TYPE=Debug"
export CMAKE_OPTS="$CMAKE_OPTS -DCMAKE_INSTALL_PREFIX=../install-debug"

#------------------------------------------------------------------------------
# Check if a host config was direclty passed
#------------------------------------------------------------------------------
if [ $# -ge 1 ]; then
if [ "${1: -6}" == ".cmake" ]; then
export HOST_CONFIG=../$1
echo "Looking for host-config file: $HOST_CONFIG"
if [[ -e "$HOST_CONFIG" ]]; then
echo "FOUND: $HOST_CONFIG"
export CMAKE_OPTS="$CMAKE_OPTS -C $HOST_CONFIG"
fi
fi
fi

if [[ ! -e "$HOST_CONFIG" ]]; then
#------------------------------------------------------------------------------
# if no host config was passed, try include an initial cmake settings file
# if appropriate
#------------------------------------------------------------------------------
# first look for a specific config for this machine
export HOSTNAME=`hostname`
export HOST_CONFIG=`ls ../host-configs/$HOSTNAME*.cmake`
echo "Looking for host-config file: $HOST_CONFIG"
if [[ -e "$HOST_CONFIG" ]]; then
echo "FOUND: $HOST_CONFIG"
export CMAKE_OPTS="$CMAKE_OPTS -C $HOST_CONFIG"
# then check for a sys-type based config
elif [[ "$SYS_TYPE" != "" ]]; then
export HOST_CONFIG=../host-configs/$SYS_TYPE.cmake
echo "Looking for SYS_TYPE based host-config file: $HOST_CONFIG"
if [[ -e "$HOST_CONFIG" ]]; then
echo "FOUND: $HOST_CONFIG"
export CMAKE_OPTS="$CMAKE_OPTS -C $HOST_CONFIG"
fi
else
# fallback to simple a uname based config (Linux / Darwin / etc)
export HOST_CONFIG=../host-configs/`uname`.cmake
echo "Looking for uname based host-config file: $HOST_CONFIG"
if [[ -e "$HOST_CONFIG" ]]; then
echo "FOUND: $HOST_CONFIG"
export CMAKE_OPTS="$CMAKE_OPTS -C $HOST_CONFIG"
fi
fi
fi

#------------------------------------------------------------------------------
# run cmake to configure
#------------------------------------------------------------------------------
echo "cmake $CMAKE_OPTS ../src"
cmake $CMAKE_OPTS \
../src
# return to the starting dir
cd ../

#------------------------------------------------------------------------------
# add extended builds when a non host config argument is passed
#------------------------------------------------------------------------------
if [ $# -ge 1 ]; then
if [ "${1: -6}" == ".cmake" ]; then
# skip this case
echo ""
else
# also create an xcode build for debugging on osx
if [ "$TERM_PROGRAM" = "Apple_Terminal" ]; then
rm -rf build-debug-xcode
mkdir build-debug-xcode
cd build-debug-xcode
cmake -G Xcode $CMAKE_OPTS ../src
cd ../
fi
fi
fi

54 changes: 54 additions & 0 deletions host-configs/Darwin.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
###############################################################################
# Copyright (c) 2015-2017, Lawrence Livermore National Security, LLC.
#
# Produced at the Lawrence Livermore National Laboratory
#
# LLNL-CODE-716457
#
# All rights reserved.
#
# This file is part of Strawman.
#
# For details, see: http://software.llnl.gov/strawman/.
#
# Please also read strawman/LICENSE
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice,
# this list of conditions and the disclaimer below.
#
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the disclaimer (as noted below) in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the name of the LLNS/LLNL nor the names of its contributors may
# be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
# LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
###############################################################################

###############################################################################
#
# CMake Cache Seed file for OSX
#
###############################################################################

# use clang compilers
set(CMAKE_C_COMPILER "clang" CACHE PATH "")
set(CMAKE_CXX_COMPILER "clang++" CACHE PATH "")

Loading

0 comments on commit 875930b

Please sign in to comment.