Skip to content

Commit

Permalink
Merge branch 'master' into catalyst_api_2_structured_blocks
Browse files Browse the repository at this point in the history
Conflicts:
	packages/seacas/libraries/ioss/src/catalyst/Iocatalyst_DatabaseIO.C
  • Loading branch information
tjotaha committed Oct 3, 2023
2 parents fce758c + d5a78ec commit 72f5394
Show file tree
Hide file tree
Showing 417 changed files with 21,246 additions and 15,333 deletions.
66 changes: 62 additions & 4 deletions .github/workflows/build_variant.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:

- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev openmpi-bin libopenmpi-dev
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev openmpi-bin libopenmpi-dev libboost-all-dev

###
# Installing TPL
Expand Down Expand Up @@ -70,6 +70,8 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -84,6 +86,8 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -98,6 +102,8 @@ jobs:
fortran: "NO",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -112,6 +118,8 @@ jobs:
fortran: "NO",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -126,6 +134,8 @@ jobs:
fortran: "NO",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -140,6 +150,8 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -154,6 +166,8 @@ jobs:
fortran: "NO",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -168,6 +182,8 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "YES",
extra: "",
Expand All @@ -182,6 +198,8 @@ jobs:
fortran: "NO",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "APPLICATIONS=NO LEGACY=NO",
Expand All @@ -196,6 +214,8 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "YES",
gtest: "YES",
extra: "",
Expand All @@ -210,6 +230,8 @@ jobs:
fortran: "YES",
use_kokkos: "YES",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "",
Expand All @@ -224,6 +246,8 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "NO",
extra: "OMIT_DEPRECATED=YES",
Expand All @@ -238,18 +262,52 @@ jobs:
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "YES",
extra: "MODERN=YES",
sanitizer: "NO" # address, integer, thread, memory, undefined
}
- {
name: "ADIOS2 enabled",
os: ubuntu-latest,
compiler: "mpi",
debug: "NO",
threadsafe: "NO",
fortran: "YES",
use_kokkos: "NO",
use_adios2: "YES",
use_faodel: "NO",
use_metis: "NO",
use_catalyst2: "NO",
gtest: "YES",
extra: "",
sanitizer: "NO" # address, integer, thread, memory, undefined
}
- {
name: "FAODEL and METIS enabled",
os: ubuntu-latest,
compiler: "mpi",
debug: "NO",
threadsafe: "NO",
fortran: "YES",
use_kokkos: "NO",
use_adios2: "NO",
use_faodel: "YES",
use_metis: "YES",
use_catalyst2: "NO",
gtest: "YES",
extra: "",
sanitizer: "NO" # address, integer, thread, memory, undefined
}
steps:

- uses: actions/checkout@v3

- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev openmpi-bin libopenmpi-dev
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev openmpi-bin libopenmpi-dev libboost-all-dev

- name: Fetch TPL Cache
id: cache-TPL
Expand All @@ -263,10 +321,10 @@ jobs:
run: ls ${HOME} && ls ${HOME}/environments && ls ${HOME}/environments/${{ matrix.config.compiler }}-${{ matrix.hdf5 }}-${{ matrix.netcdf }}-${{ matrix.cgns }} && ls ${HOME}/environments/${{ matrix.config.compiler }}-${{ matrix.hdf5 }}-${{ matrix.netcdf }}-${{ matrix.cgns }}/lib

- name: install additional TPL
if: ${{ matrix.config.use_kokkos == 'YES' || matrix.config.use_adios2 == 'YES' || matrix.config.gtest == 'YES' || matrix.config.use_catalyst == 'YES' }}
if: ${{ matrix.config.use_kokkos == 'YES' || matrix.config.use_adios2 == 'YES' || matrix.config.gtest == 'YES' || matrix.config.use_faodel == 'YES' || matrix.config.use_catalyst == 'YES' || matrix.config.use_metis == 'YES' }}
run: |
set -x
COMPILER=${{ matrix.config.compiler }} KOKKOS=${{ matrix.config.use_kokkos }} ADIOS2=${{ matrix.config.use_adios2 }} CATALYST2=${{ matrix.config.use_catalyst2 }} GNU_PARALLEL=OFF GTEST=${{ matrix.config.gtest }} INSTALL_PATH=${HOME}/environments/${{ matrix.config.compiler }}-${{ matrix.hdf5 }}-${{ matrix.netcdf }}-${{ matrix.cgns }} ./install-tpl.sh
COMPILER=${{ matrix.config.compiler }} KOKKOS=${{ matrix.config.use_kokkos }} ADIOS2=${{ matrix.config.use_adios2 }} CATALYST2=${{ matrix.config.use_catalyst2 }} FAODEL=${{ matrix.config.use_faodel }} METIS=${{ matrix.config.use_metis }} GNU_PARALLEL=OFF GTEST=${{ matrix.config.gtest }} INSTALL_PATH=${HOME}/environments/${{ matrix.config.compiler }}-${{ matrix.hdf5 }}-${{ matrix.netcdf }}-${{ matrix.cgns }} ./install-tpl.sh
ls ${HOME} && ls ${HOME}/environments && ls ${HOME}/environments/${{ matrix.config.compiler }}-${{ matrix.hdf5 }}-${{ matrix.netcdf }}-${{ matrix.cgns }} && ls ${HOME}/environments/${{ matrix.config.compiler }}-${{ matrix.hdf5 }}-${{ matrix.netcdf }}-${{ matrix.cgns }}/lib
###
Expand Down
22 changes: 14 additions & 8 deletions .github/workflows/cla.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,33 +3,39 @@ on:
pull_request_target:
types: [opened,closed,synchronize]

# explicitly configure permissions, in case your GITHUB_TOKEN workflow permissions are set to read-only in repository settings
permissions:
actions: write
contents: write
pull-requests: write
statuses: write

jobs:
CLAssistant:
CLAAssistant:
runs-on: ubuntu-latest
steps:
- name: "CLA Assistant"
if: (github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target'
# Beta Release
uses: cla-assistant/[email protected]
uses: contributor-assistant/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# the below token should have repo scope and must be manually added by you in the repository's secret
PERSONAL_ACCESS_TOKEN : ${{ secrets.PERSONAL_ACCESS_TOKEN }}
# This token is required only if you have configured to store the signatures in a remote repository/organization
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
with:
path-to-signatures: 'signatures/version1/cla.json'
path-to-document: 'https://github.com/sandialabs/seacas/blob/master/SEACAS-CLA.md'
# branch should not be protected
branch: 'master'
allowlist: user1,bot*,*@sandia.gov

#below are the optional inputs - If the optional inputs are not given, then default values will be taken
# the followings are the optional inputs - If the optional inputs are not given, then default values will be taken
#remote-organization-name: enter the remote organization name where the signatures should be stored (Default is storing the signatures in the same repository)
#remote-repository-name: enter the remote repository name where the signatures should be stored (Default is storing the signatures in the same repository)
#remote-repository-name: enter the remote repository name where the signatures should be stored (Default is storing the signatures in the same repository)
#create-file-commit-message: 'For example: Creating file for storing CLA Signatures'
#signed-commit-message: 'For example: $contributorName has signed the CLA in #$pullRequestNo'
#signed-commit-message: 'For example: $contributorName has signed the CLA in $owner/$repo#$pullRequestNo'
#custom-notsigned-prcomment: 'pull request comment with Introductory message to ask new contributors to sign'
#custom-pr-sign-comment: 'The signature to be committed in order to sign the CLA'
#custom-allsigned-prcomment: 'pull request comment when all contributors has signed, defaults to **CLA Assistant Lite bot** All Contributors have signed the CLA.'
#lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true)
#use-dco-flag: true - If you are using DCO instead of CLA

6 changes: 2 additions & 4 deletions .github/workflows/intel-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,12 @@ jobs:
sudo apt-get update
- name: install
run: |
sudo apt-get install -y intel-basekit
sudo apt-get install -y intel-oneapi-common-vars
sudo apt-get install -y intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic
sudo apt-get install -y intel-oneapi-compiler-fortran
sudo apt-get install -y intel-oneapi-mpi
sudo apt-get install -y intel-oneapi-mpi-devel
sudo apt-get install -y intel-oneapi-mkl
sudo apt-get install -y ninja-build
- name: Install System dependencies
shell: bash -l {0}
Expand Down Expand Up @@ -90,13 +89,12 @@ jobs:
sudo apt-get update
- name: install
run: |
sudo apt-get install -y intel-basekit
sudo apt-get install -y intel-oneapi-common-vars
sudo apt-get install -y intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic
sudo apt-get install -y intel-oneapi-compiler-fortran
sudo apt-get install -y intel-oneapi-mpi
sudo apt-get install -y intel-oneapi-mpi-devel
sudo apt-get install -y intel-oneapi-mkl
sudo apt-get install -y ninja-build
- name: Install System dependencies
shell: bash -l {0}
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -327,4 +327,4 @@ a separate license:
| [pdqsort](https://github.com/orlp/pdqsort) | `packages/seacas/libraries/ioss/src` | [Zlib License](https://github.com/orlp/pdqsort/blob/master/license.txt) |
## Contact information

Greg Sjaardema (<[email protected]>, <[email protected]>)
Greg Sjaardema (<[email protected]>, <[email protected]>)
3 changes: 1 addition & 2 deletions TPL/adios2/runcmake.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,10 @@ ${RPATH} \
-D CMAKE_INSTALL_PREFIX:PATH=${INSTALL_PATH} \
-D CMAKE_INSTALL_LIBDIR:PATH=lib \
-D ADIOS2_USE_MPI:BOOL=${MPI} \
-D ADIOS2_HAVE_MPI:BOOL=${MPI} \
-D ADIOS2_BUILD_EXAMPLES:BOOL=OFF \
-D ADIOS2_BUILD_TESTING:BOOL=OFF \
-D INSTALL_GTEST:BOOL=OFF \
-D ADIOS2_USE_Fortran:BOOL=OFF \
-D ADIOS_USE_Profiling=OFF \
$EXTRA_ARGS \
..

Expand Down
Empty file added TPL/boost/keep-me-around
Empty file.
5 changes: 1 addition & 4 deletions TPL/faodel/runcmake.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,11 @@ if [ "X$ACCESS" == "X" ] ; then
echo "ACCESS set to ${ACCESS}"
fi
INSTALL_PATH=${INSTALL_PATH:-${ACCESS}}

. ${ACCESS}/TPL/compiler.sh

if [ "X$BOOST_ROOT" == "X" ] ; then
BOOST_ROOT=$(cd ../../../..; pwd)
echo "Faodel requires these Boost packages: atomic log log_setup serialization"
echo "Please set BOOST_ROOT."
exit 0
fi

rm -f CMakeCache.txt
Expand All @@ -27,7 +24,7 @@ cmake .. \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PATH} \
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DBUILD_SHARED_LIBS:BOOL=ON \
-DGTEST_ROOT=${GTEST_ROOT} \
-DBOOST_ROOT=${BOOST_ROOT} \
-DFaodel_NETWORK_LIBRARY=nnti \
Expand Down
2 changes: 2 additions & 0 deletions TPL/netcdf/runcmake.sh
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@ cmake .. -DCMAKE_C_COMPILER:FILEPATH=${CC} \
-DENABLE_MMAP:BOOL=ON \
-DENABLE_DAP:BOOL=OFF \
-DENABLE_V2_API:BOOL=OFF \
-DENABLE_FILTER_TESTING:BOOL=OFF \
-DENABLE_TESTS:BOOL=OFF \
${LOCAL_ZLIB} \
${LOCAL_SZIP} \
${EXTRA_DEPS} \
Expand Down
7 changes: 5 additions & 2 deletions cmake-config
Original file line number Diff line number Diff line change
Expand Up @@ -160,8 +160,8 @@ then

if [ "$COMPILER" == "intel" ]
then
CXX=icpx
CC=icx
CXX=icpc
CC=icc
FC=ifort
CFLAGS="-Wall -Wunused"
CXXFLAGS="-Wall -Wextra -Wunused"
Expand Down Expand Up @@ -382,6 +382,9 @@ then
LD_EXT="so"
fi
else
# NOTE: Some systems may need `curl` added to Seacas_EXTRA_LINK_FLAGS`
# If you see missing symbols containing `_curl`, try adding `curl`
# EXTRA_LIB="-DSeacas_EXTRA_LINK_FLAGS=curl;z;dl -DSEACASExodus_ENABLE_SHARED:BOOL=OFF"
EXTRA_LIB="-DSeacas_EXTRA_LINK_FLAGS=z;dl -DSEACASExodus_ENABLE_SHARED:BOOL=OFF"
LD_EXT="a"
fi
Expand Down
37 changes: 37 additions & 0 deletions cmake/tribits/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,43 @@
ChangeLog for TriBITS
----------------------------------------

## 2023-06-22:

* **Added:** Packages are now determined to be missing if their dependencies
file `<packageDir>/cmake/Dependencies.cmake` is missing. If the package
directory `<packageDir>` exists but the dependencies file is missing, the
package is determined to be missing but a warning is printed. (This expands
behavior to gracefully deal with a situation where a package source
directory is only partially removed, such as with `git rm -r <packageDir>`,
but the base directory still exists. Therefore, this allows the project to
gracefully configure with the package being considered missing and avoids a
fatal error in this case.)

## 2023-06-02:

* **Added/Deprecated:** External packages/TPLs can now be (and should be)
listed in the `[TEST|LIB]_[REQUIRED|OPTIONAL]_PACKAGES` arguments/lists in
the macro `tribits_package_define_dependencies()` and the
`[TEST|LIB]_[REQUIRED|OPTIONAL]_TPLS` arguments/lists are deprecated (but
with no deprecation warning yet). This makes it easier to write
`<packageDir>/cmake/Dependencies.cmake` files for packages where the set of
internal and external upstream dependent packages is dynamic and changes
depending on the TriBITS project where these package are configured under.
(And conceptually, a downstream package should not care if an upstream
dependent package is pulled in as an external package or built as an
internal package.)

## 2023-05-03:

* **Added:** Added support for non-fully TriBITS-compatible external packages.
Now, a `<Package>Config.cmake` file need not define
`<UpstreamPkg>::all_libs` targets for all of its upstream dependencies. The
updated macro `tribits_process_enabled_tpls()` will find any missing
upstream external packages/TPLs as needed (see updated documentation in the
section "TriBITS-Compliant External Packages" in the "TriBITS Users Guide"
and the section "Processing of external packages/TPLs and TriBITS-compliant
external packages" in the "TriBITS Maintainers Guide").

## 2023-02-24:

* **Changed:** Upgraded minimum required CMake version from 3.17 to 3.23.
Expand Down
Loading

0 comments on commit 72f5394

Please sign in to comment.