-
Notifications
You must be signed in to change notification settings - Fork 559
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Trilinos install tests, test demo app, fix cmake --install, fix PR errors (#10774, #10810, #10842) #10813
Add Trilinos install tests, test demo app, fix cmake --install, fix PR errors (#10774, #10810, #10842) #10813
Conversation
The ATDM customers don't need Krino and it has been failing the build for all recorded time on CDash since the package was first added (see trilinos#10524).
Origin repo remote tracking branch: 'github/master' Origin repo remote repo URL: 'github = git@github.com:TriBITSPub/TriBITS.git' Git describe: Vera4.0-RC1-start-1219-g8b3872ed At commit: commit 4b26997a2b19c29cbc6deaba5ad303b2336b63e6 Author: Roscoe A. Bartlett <rabartl@sandia.gov> Date: Thu Jul 21 10:35:22 2022 -0600 Summary: Add dependency of CGNS on HDF5 (trilinos#10774)
Origin repo remote tracking branch: 'github/master' Origin repo remote repo URL: 'github = git@github.com:TriBITSPub/TriBITS.git' Git describe: Vera4.0-RC1-start-1221-g0d1da434 At commit: commit 6d15ef8ea26694f154f89efe3a609a2a4a7e7f30 Author: Roscoe A. Bartlett <rabartl@sandia.gov> Date: Thu Jul 21 20:55:22 2022 -0600 Summary: Fix FindTPLCUDA.cmake (trilinos#299)
I was hasty and put Krino in the wrong disable list. I had put it in the list for extra disables for complex builds.
Origin repo remote tracking branch: 'github/master' Origin repo remote repo URL: 'github = git@github.com:TriBITSPub/TriBITS.git' Git describe: Vera4.0-RC1-start-1224-g46b634b9 At commit: commit 1ecbb99ecf5615b8d06fd1cc16c8d8ee02d65888 Author: Roscoe A. Bartlett <rabartl@sandia.gov> Date: Mon Jul 25 13:07:08 2022 -0600 Summary: Change type to IMPORTED STATIC for *.a file (trilinos#10774)
This allows me to replace: "\${CMAKE_INSTALL_PREFIX}/\${\${PROJECT_NAME}_INSTALL_INCLUDE_DIR}" with: "\${\${PROJECT_NAME}_INSTALL_INCLUDE_DIR}" The perl script string-replace.pl which uses s/<string-to-replace>/<replacement-string>/g can't do that.
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
There were a few problems with this CMakeLists.txt file: * There was a redundant and incorrect install() command using an abs dir that was breaking 'cmake --install . --prefix <some-other-prefix>' (trilinos#10810) * The backwards compatible file KokkosCompat_config.h was not actually being installed. I verified everything is installed correctly by running: cmake --install . --prefix <some-other-prefix> without configuring with -DCMAKE_PREFIX_PATH=<prefix> (so the default prefix of /usr/local is ignored).
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
This correctly uses just ${${PROJECT_NAME}_INSTALL_INCLUDE_DIR} which if relative, CMake assumes is relative to ${CMAKE_INSTALL_PREFIX}. Fixing this means that: cmake --install . --prefix <some-other-prefix> works correctly.
Origin repo remote tracking branch: 'github/master' Origin repo remote repo URL: 'github = git@github.com:TriBITSPub/TriBITS.git' Git describe: Vera4.0-RC1-start-1228-g15992142 At commit: commit 9fc3c95d46d78845b3bf24afd89e0756c19e6d2d Author: Roscoe A. Bartlett <rabartl@sandia.gov> Date: Thu Jul 28 11:42:10 2022 -0600 Summary: Remove GLOBAL from TPL IMPORTED targets, use if (NOT TARGET <upstreamTpl>::all_libs) (trilinos#505)
FYI: I manually ran the use cases:
and verified that the build error in #10842 is triggered before the merge of 485f543 and fixed after the merge. |
Status Flag 'Pull Request AutoTester' - User Requested Retest - Label AT: RETEST will be reset after testing. |
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection Is Not Necessary for this Pull Request. |
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: Trilinos_PR_gcc-8.3.0
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_gcc-7.2.0-serial
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_gcc-7.2.0-debug
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_intel-17.0.1
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_clang-10.0.0
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_cuda-10.1.243
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_python3
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_cuda-11.4.2-uvm-off
Jenkins Parameters
Using Repos:
Pull Request Author: bartlettroscoe |
Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED Pull Request Auto Testing has PASSED (click to expand)Build InformationTest Name: Trilinos_PR_gcc-8.3.0
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_gcc-7.2.0-serial
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_gcc-7.2.0-debug
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_intel-17.0.1
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_clang-10.0.0
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_cuda-10.1.243
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_python3
Jenkins Parameters
Build InformationTest Name: Trilinos_PR_cuda-11.4.2-uvm-off
Jenkins Parameters
|
Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ jhux2 rppawlo ]! |
Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged |
Merge on Pull Request# 10813: IS A SUCCESS - Pull Request successfully merged |
…s:develop' (517d301). * trilinos-develop: (24 commits) Automatic snapshot commit from tribits at b00ab335 Fix build part of test TrilinosInstallTests_simpleBuildAgainstTrilinos on 'ats2' (trilinos#10774, trilinos#10813) Fix running of mpiexec MyApp for rhel7_sems-intel-17.0.1-mpich-3.2-serial build (trilinos#10774, trilinos#10813) doInstall: Send output from cmake --install to file (trilinos#10810) doInstall: Remove install dir before new install if it exists (trilinos#10810) Add test find_package_Trilinos (trilinos#10774, TriBITSPub/TriBITS#299) TrilinosInstallTests: Add a dependency on Tpetra (TriBITSPub/TriBITS#299) Update simpleBuildAgainstTrilinos to use modern targets (TriBITSPub/TriBITS#299) Add package TrilinosInstallTests, test install and simpleBuildAgainstTrilinos (trilinos#10774) Automatic snapshot commit from tribits at 9fc3c95d STK: Fix install( ... DESTINATION ... ) dir (trilinos#10810) ShyLU: Fix install( ... DESTINATION ... ) dir (trilinos#10810) ROL: Fix install( ... DESTINATION ... ) dir (trilinos#10810) Krino: Fix install( ... DESTINATION ... ) dir (trilinos#10810) Intrepid2: Fix install( ... DESTINATION ... ) dir (trilinos#10810) Teuchos: Fix teuchos/kokkoscompat header installs (trilinos#10810) KokkosKernels: Fix install( ... DESTINATION ... ) dir (trilinos#10810) Kokkos: Fix install( ... DESTINATION ... ) dir (trilinos#10810) Add string-replace.py that can replace any chars (trilinos#10810) Automatic snapshot commit from tribits at 1ecbb99e ...
…s:develop' (517d301). * trilinos-develop: (35 commits) Automatic snapshot commit from tribits at b00ab335 Panzer: Bug fix for PlaneMatcher param parsing. Returning unit test paramlist to original. Tacho - use the same destruction order as hip Tacho - reorder stream deallocation order Panzer: Leave todo reminding us to change the default BBox flag but remove ownership. Panzer: Make the bbox flag and related function calls more descriptive. Clean up a few units tests. Addresses Roger's review. Panzer: Missing bit of logic in the acceptance test (STK Search). Panzer: Reorder var in constructor to fix warning. Panzer: Fix an old test for periodic bcs. Panzer: Acceptance test for STKSearch and search implementation. Panzer: Mesh factories need to pass periodic search info along downstream. Panzer: Source and tests for periodic bc refactor. Employs STKSearch. Fix build part of test TrilinosInstallTests_simpleBuildAgainstTrilinos on 'ats2' (trilinos#10774, trilinos#10813) Fix running of mpiexec MyApp for rhel7_sems-intel-17.0.1-mpich-3.2-serial build (trilinos#10774, trilinos#10813) doInstall: Send output from cmake --install to file (trilinos#10810) doInstall: Remove install dir before new install if it exists (trilinos#10810) Add test find_package_Trilinos (trilinos#10774, TriBITSPub/TriBITS#299) TrilinosInstallTests: Add a dependency on Tpetra (TriBITSPub/TriBITS#299) Update simpleBuildAgainstTrilinos to use modern targets (TriBITSPub/TriBITS#299) Add package TrilinosInstallTests, test install and simpleBuildAgainstTrilinos (trilinos#10774) ...
@ndellingwood, I pulled off these commits with |
…s:develop' (517d301). * trilinos-develop: (41 commits) Automatic snapshot commit from tribits at b00ab335 Panzer: Bug fix for PlaneMatcher param parsing. Returning unit test paramlist to original. Tacho - use the same destruction order as hip Tacho - reorder stream deallocation order Remove multi-processor spai meshtying test Panzer: Leave todo reminding us to change the default BBox flag but remove ownership. Panzer: Make the bbox flag and related function calls more descriptive. Clean up a few units tests. Addresses Roger's review. Panzer: Missing bit of logic in the acceptance test (STK Search). Panzer: Reorder var in constructor to fix warning. Panzer: Fix an old test for periodic bcs. Panzer: Acceptance test for STKSearch and search implementation. Panzer: Mesh factories need to pass periodic search info along downstream. Panzer: Source and tests for periodic bc refactor. Employs STKSearch. Fix build part of test TrilinosInstallTests_simpleBuildAgainstTrilinos on 'ats2' (trilinos#10774, trilinos#10813) Fix running of mpiexec MyApp for rhel7_sems-intel-17.0.1-mpich-3.2-serial build (trilinos#10774, trilinos#10813) doInstall: Send output from cmake --install to file (trilinos#10810) doInstall: Remove install dir before new install if it exists (trilinos#10810) Add test find_package_Trilinos (trilinos#10774, TriBITSPub/TriBITS#299) TrilinosInstallTests: Add a dependency on Tpetra (TriBITSPub/TriBITS#299) Update simpleBuildAgainstTrilinos to use modern targets (TriBITSPub/TriBITS#299) ...
…s:develop' (517d301). * trilinos-develop: (46 commits) Panzer MiniEM: Adjust rebalancing targets for RefMaxwell sub-problems Disable pseudo package ShyLU in ATS-2 builds (trilinos#10865) Automatic snapshot commit from tribits at b00ab335 Panzer: Bug fix for PlaneMatcher param parsing. Returning unit test paramlist to original. Tacho - use the same destruction order as hip Tacho - reorder stream deallocation order Remove multi-processor spai meshtying test Panzer: Leave todo reminding us to change the default BBox flag but remove ownership. Panzer: Make the bbox flag and related function calls more descriptive. Clean up a few units tests. Addresses Roger's review. Panzer: Missing bit of logic in the acceptance test (STK Search). Panzer: Reorder var in constructor to fix warning. Panzer: Fix an old test for periodic bcs. Panzer: Acceptance test for STKSearch and search implementation. Panzer: Mesh factories need to pass periodic search info along downstream. Panzer: Source and tests for periodic bc refactor. Employs STKSearch. Tacho : include mkl.h to define __INTEL_MKL__ before including Tacho_Pardiso.hpp Tacho : fix error message Amesos2-Tacho : add parameters to set algorithmic variant for factorization and solver, also call initialize after analyze in symbolic Fix build part of test TrilinosInstallTests_simpleBuildAgainstTrilinos on 'ats2' (trilinos#10774, trilinos#10813) Fix running of mpiexec MyApp for rhel7_sems-intel-17.0.1-mpich-3.2-serial build (trilinos#10774, trilinos#10813) ...
I forgot to remove these vars in Trilinos PR trilinos#10813. They should not be printed anymore because they should not be used anymore.
I forgot to remove these vars in Trilinos PR trilinos#10813. They should not be printed anymore because they should not be used anymore.
CC: @tasmith4, @trilinos/framework, @trilinos/intrepid2, @trilinos/kokkos, @trilinos/kokkos-kernels, @trilinos/rol, @trilinos/shylu, @trilinos/teuchos
Related Issues:
Related Internal Issues:
Description
This PR does a few things:
cmake -- install . --prefix <new-prefix>
which completely overrides/ignoresCMAKE_INSTALL_PREFIX
. (This was done by replacing${CMAKE_INSTALL_PREFIX}/${${PROJECT_NAME}_INSTALL_INCLUDE_DIR}
with${${PROJECT_NAME}_INSTALL_INCLUDE_DIR}
ininstall( ... DESTINATION ...)
calls to install header files in subdirs in a bunch of Trilinos packages (see Many packages erroneously using abs dir CMAKE_PREFIX_PATH for argument to install() #10810).TrilinosInstallTests
to run install of Trilinos usingcmake -- install . --prefix <buildDir>/install
and test callingfind_package(Trilinos)
. (That catches bugs in installation logic and problems with Trilinos package config files and will show if find_package(Trilinos) takes too long. This tests the update of TriBITS for Fix find_package() from separate subdirs for <Package>Config.cmake files (#505) TriBITSPub/TriBITS#506)demo/simpleBuildAgainstTrilinos
against an install of Trilinos (and will get run whenever Tpetra changes but not when the directory demo/simpleBuildAgainstTrilinos/ changes).demo/simpleBuildAgainstTrilinos
to use modern CMake targets and eliminate direct manipulation of include dirs (Move to modern CMake target-based propagation of build information TriBITSPub/TriBITS#299).NOTE: I will pull off the commits for the packages Kokkos, KokkosKernels, Krino, and STK with
git format-patch
and usegit am
to create branches and PRs/MRs for these against their native Git reos (on GitHub and internally).NOTE: This branch was created off of the branch for #10791 which can't be merged yet due to problems with Trilinos PR testing. Therefore, the commits before e79ace8 are being reviewed in PR #10791. (Once PR #10791 is merged, this PR will only show commits starting with e79ace8 and after)
Notes to Reviewers:
Tasks:
TrilinosInstallTests_simpleBuildAgainstTrilinos
for buildrhel7_sems-intel-17.0.1-mpich-3.2-serial_release-debug_static_no-kokkos-arch_no-asan_no-complex_fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
on SEMS RHEL7 machine (see below).TrilinosInstallTests_simpleBuildAgainstTrilinos
for buildats2_cuda-10.1.243-gnu-8.3.1-spmpi-rolling_release_static_Volta70_Power9_no-asan_no-complex_no-fpic_mpi_pt_no-rdc_uvm_deprecated-on_no-package-enables
on machine 'vortex' (see below).AT: RETEST
and try to get PR builds to pass.