Skip to content

Commit

Permalink
Merge commit '30d82c72e0cdf0b37b7c506f57c743f7ccd1f114' as 'cime'
Browse files Browse the repository at this point in the history
  • Loading branch information
bandre-ucar committed Dec 9, 2015
2 parents e317265 + 30d82c7 commit 4f48b03
Show file tree
Hide file tree
Showing 1,414 changed files with 591,704 additions and 0 deletions.
68 changes: 68 additions & 0 deletions cime/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
cmake_minimum_required(VERSION 2.8)
include(ExternalProject)

project(cime_tests Fortran C)

list(APPEND CMAKE_MODULE_PATH ${CESM_CMAKE_MODULE_DIRECTORY})
include(CESM_utils)
find_package(NETCDF)
include_directories(${NETCDF_INCLUDE_DIRS})

set(CIME_ROOT "${CMAKE_CURRENT_SOURCE_DIR}")

# TODO: Some of the below should be done in the relevant directories, not in
# this top level CMakeLists.

# ------------------------------------------------------------------------
# Build mct
# ------------------------------------------------------------------------
set(MCT_ROOT "${CIME_ROOT}/externals/mct")

ExternalProject_add(mct_project
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
SOURCE_DIR ${MCT_ROOT}
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/mct
CONFIGURE_COMMAND ${MCT_ROOT}/configure --enable-debugging --prefix=${CMAKE_CURRENT_BINARY_DIR}
BUILD_COMMAND make SRCDIR=${MCT_ROOT}
# Leave things in <BINARY_DIR> rather than "installing", because we have
# no need to move things around inside of the CMake binary directory.
INSTALL_COMMAND :
)
# This copy_makefiles step is needed because mct currently doesn't support an
# out-of-source build. I am replicating what is done for the CIME system build.
ExternalProject_add_step(mct_project copy_makefiles
DEPENDEES configure
DEPENDERS build
WORKING_DIRECTORY <BINARY_DIR>
COMMAND cp -p <SOURCE_DIR>/Makefile .
COMMAND mkdir -p mct
COMMAND cp -p <SOURCE_DIR>/mct/Makefile mct/
COMMAND mkdir -p mpeu
COMMAND cp -p <SOURCE_DIR>/mpeu/Makefile mpeu/
)

# Tell cmake to look for libraries & mod files here, because this is where we built libraries
include_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mct)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mpeu)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mct)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mpeu)

# ------------------------------------------------------------------------
# Done MCT build
# ------------------------------------------------------------------------

# Now a bunch of includes for share code.

# csm_share (we don't build it here because it seems to be built differently
# by different tests?)
set(SHARE_ROOT "${CIME_ROOT}/share/csm_share")
add_subdirectory(${SHARE_ROOT}/shr csm_share)
include_directories(${SHARE_ROOT}/include)

# esmf_wrf_timemgr not built here because it depends on csm_share.
add_subdirectory(${CIME_ROOT}/share/esmf_wrf_timemgr esmf_wrf_timemgr)
include_directories(${CIME_ROOT}/share/esmf_wrf_timemgr)

# Now the actual test directories.
add_subdirectory(driver_cpl/unit_test)
add_subdirectory(share/csm_share/test/unit)
34 changes: 34 additions & 0 deletions cime/LICENSE.TXT
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
Copyright (c) 2015, University Corporation for Atmospheric Research (UCAR)
All rights reserved.

Developed by:
University Corporation for Atmospheric Research - National Center for Atmospheric Research
https://www2.cesm.ucar.edu/working-groups/sewg

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the "Software"),
to deal with the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom
the Software is furnished to do so, subject to the following conditions:

- Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimers.
- Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimers in the documentation
and/or other materials provided with the distribution.
- Neither the names of [Name of Development Group, UCAR],
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 THE COPYRIGHT HOLDER 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.
31 changes: 31 additions & 0 deletions cime/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
The cime directory structure (other than the externals/ directory)
was generated from the following trunk tags:

cime/driver_cpl https://svn-ccsm-models.cgd.ucar.edu/drv/seq_mct/trunk_tags/drvseq5_1_15

cime/components/data_comps/datm https://svn-ccsm-models.cgd.ucar.edu/datm7/trunk_tags/datm8_150310
cime/components/data_comps/dice https://svn-ccsm-models.cgd.ucar.edu/dice7/trunk_tags/dice8_150310
cime/components/data_comps/dlnd https://svn-ccsm-models.cgd.ucar.edu/dlnd7/trunk_tags/dlnd8_150310
cime/components/data_comps/docn https://svn-ccsm-models.cgd.ucar.edu/docn7/trunk_tags/docn8_150310
cime/components/data_comps/drof https://svn-ccsm-models.cgd.ucar.edu/drof/trunk_tags/drof_150310
cime/components/stub_comps https://svn-ccsm-models.cgd.ucar.edu/stubs/trunk_tags/stubs1_4_08
cime/components/xcpl_comps https://svn-ccsm-models.cgd.ucar.edu/dead7/trunk_tags/dead7_8_04

cime/machines https://svn-ccsm-models.cgd.ucar.edu/Machines/trunk_tags/Machines_150309

cime/scripts https://svn-ccsm-models.cgd.ucar.edu/scripts/trunk_tags/scripts_150309

cime/share/csm_share https://svn-ccsm-models.cgd.ucar.edu/csm_share/trunk_tags/share3_150116
cime/share/esmf_wrf_timemgr https://svn-ccsm-models.cgd.ucar.edu/esmf_wrf_timemgr/trunk_tags/esmf_wrf_timemgr_141217
cime/share/timing https://svn-ccsm-models.cgd.ucar.edu/timing/trunk_tags/timing_150302

cime/utils/pythonlib https://svn-ccsm-models.cgd.ucar.edu/scripts/trunk_tags/scripts4_150204/scripts/ccsm_utils/Tools/pythonlib
cime/utils/perl5lib https://svn-ccsm-models.cgd.ucar.edu/perl5lib/trunk_tags/perl5lib_150302

cime/tools/load_balancing_tool https://svn-ccsm-models.cgd.ucar.edu/tools/load_balancing_tool/trunk_tags/load_balancing_tool_141008
cime/tools/unit_testing https://svn-ccsm-models.cgd.ucar.edu/unit_testing/trunk_tags/unit_testing_0_16
cime/tools/statistical_ensemble_test https://svn-ccsm-models.cgd.ucar.edu/validation_testing/trunk_tags/validation_20140708/run_CESM/
cime/tools/mapping https://svn-ccsm-models.cgd.ucar.edu/tools/mapping/trunk_tags/mapping_141106
cime/tools/cprnc https://svn-ccsm-models.cgd.ucar.edu/tools/cprnc/trunk_tags/cprnc_150301


74 changes: 74 additions & 0 deletions cime/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# cime
Common Infrastructure for Modeling the Earth

cime (pronounced: seem) represents the infrastructure code for the
<a href="http://www2.cesm.ucar.edu">Community Earth System Model </a>
(CESM) version 1.4

See the CESM web site for documentation and information.

The cime directory structure (other than the externals/ directory)
was generated from the following subversion trunk tags:

* cime/driver_cpl
https://svn-ccsm-models.cgd.ucar.edu/drv/seq_mct/trunk_tags/drvseq5_1_15

* cime/components/data_comps/datm
https://svn-ccsm-models.cgd.ucar.edu/datm7/trunk_tags/datm8_150310

* cime/components/data_comps/dice
https://svn-ccsm-models.cgd.ucar.edu/dice7/trunk_tags/dice8_150310

* cime/components/data_comps/dlnd
https://svn-ccsm-models.cgd.ucar.edu/dlnd7/trunk_tags/dlnd8_150310

* cime/components/data_comps/docn
https://svn-ccsm-models.cgd.ucar.edu/docn7/trunk_tags/docn8_150310

* cime/components/data_comps/drof
https://svn-ccsm-models.cgd.ucar.edu/drof/trunk_tags/drof_150310

* cime/components/stub_comps
https://svn-ccsm-models.cgd.ucar.edu/stubs/trunk_tags/stubs1_4_08

* cime/components/xcpl_comps
https://svn-ccsm-models.cgd.ucar.edu/dead7/trunk_tags/dead7_8_04

* cime/machines
https://svn-ccsm-models.cgd.ucar.edu/Machines/trunk_tags/Machines_150309

* cime/scripts
https://svn-ccsm-models.cgd.ucar.edu/scripts/trunk_tags/scripts_150309

* cime/share/csm_share
https://svn-ccsm-models.cgd.ucar.edu/csm_share/trunk_tags/share3_150116

* cime/share/esmf_wrf_timemgr
https://svn-ccsm-models.cgd.ucar.edu/esmf_wrf_timemgr/trunk_tags/esmf_wrf_timemgr_141217

* cime/share/timing
https://svn-ccsm-models.cgd.ucar.edu/timing/trunk_tags/timing_150302

* cime/utils/pythonlib
https://svn-ccsm-models.cgd.ucar.edu/scripts/trunk_tags/scripts4_150204/scripts/ccsm_utils/Tools/pythonlib

* cime/utils/perl5lib
https://svn-ccsm-models.cgd.ucar.edu/perl5lib/trunk_tags/perl5lib_150302

* cime/tools/load_balancing_tool
https://svn-ccsm-models.cgd.ucar.edu/tools/load_balancing_tool/trunk_tags/load_balancing_tool_141008

* cime/tools/unit_testing
https://svn-ccsm-models.cgd.ucar.edu/unit_testing/trunk_tags/unit_testing_0_16

* cime/tools/statistical_ensemble_test
https://svn-ccsm-models.cgd.ucar.edu/validation_testing/trunk_tags/validation_20140708/run_CESM/

* cime/tools/mapping
https://svn-ccsm-models.cgd.ucar.edu/tools/mapping/trunk_tags/mapping_141106

* cime/tools/cprnc
https://svn-ccsm-models.cgd.ucar.edu/tools/cprnc/trunk_tags/cprnc_150301



6 changes: 6 additions & 0 deletions cime/README.unit_testing
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# To run all CIME unit tests on caldera, run the following command:
# (Note that this must be done from an interactive caldera session, not from yellowstone)
tools/unit_testing/run_tests.py --test-spec-dir=. --compiler=intel --mpilib=mpich2 --mpirun-command=mpirun.lsf --cmake-args=-DPAPI_LIB=/glade/apps/opt/papi/5.3.0/intel/12.1.5/lib64

# The inclusion of PAPI_LIB is needed above since config_compilers includes:
# <ADD_SLIBS> -Wl,-rpath ${PAPI_LIB} -L${PAPI_LIB} -lpapi</ADD_SLIBS>
Loading

0 comments on commit 4f48b03

Please sign in to comment.