Skip to content
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

clean up hypre dependency install #244

Merged
merged 9 commits into from
Jun 5, 2020

Conversation

sslattery
Copy link
Collaborator

The hypre dependency was not being correctly installed so downstream packages would have had to included hypre in their CMAKE_PREFIX_PATH even though it is an implementation detail in Cajita. This PR adds proper install for this.

@sslattery sslattery added the bug Something isn't working label Jun 4, 2020
@sslattery sslattery requested a review from junghans June 4, 2020 14:22
@sslattery sslattery self-assigned this Jun 4, 2020
@sslattery
Copy link
Collaborator Author

@junghans I can't quite figure out how to get the downstream package to use FindHYPRE.cmake when it finds Cabana in the prefix path. Here is my current error with ExaMPM:

> ./configure.sh
-- The CXX compiler identification is AppleClang 11.0.0.11000033
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/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 MPI_CXX: /Users/uy7/install/openmpi-4.0.0/lib/libmpi.dylib (found version "3.1")
-- Found MPI: TRUE (found version "3.1")
-- Enabled Kokkos devices: SERIAL
-- Enabled Kokkos devices: SERIAL
-- Found MPI: TRUE (found version "3.1") found components: CXX
CMake Error at /opt/local/share/cmake-3.17/Modules/CMakeFindDependencyMacro.cmake:47 (find_package):
  By not providing "FindHYPRE.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "HYPRE", but
  CMake did not find one.

  Could not find a package configuration file provided by "HYPRE" with any of
  the following names:

    HYPREConfig.cmake
    hypre-config.cmake

  Add the installation prefix of "HYPRE" to CMAKE_PREFIX_PATH or set
  "HYPRE_DIR" to a directory containing one of the above files.  If "HYPRE"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  /Users/uy7/install/Cabana/debug/lib/cmake/Cabana/CabanaConfig.cmake:11 (find_dependency)
  CMakeLists.txt:12 (find_package)


-- Configuring incomplete, errors occurred!
See also "/Users/uy7/build/ExaMPM/debug/CMakeFiles/CMakeOutput.log".

sslattery and others added 2 commits June 4, 2020 12:17
Co-authored-by: Christoph Junghans <junghans@lanl.gov>
@junghans junghans marked this pull request as draft June 4, 2020 16:49
@sslattery sslattery force-pushed the install_find_hypre branch from 2d0469d to 85a5dd6 Compare June 4, 2020 17:21
@sslattery sslattery marked this pull request as ready for review June 4, 2020 17:21
@sslattery sslattery changed the title WIP: clean up hypre dependency install clean up hypre dependency install Jun 4, 2020
@sslattery sslattery requested a review from streeve June 4, 2020 20:08
@sslattery
Copy link
Collaborator Author

Travis isn't reporting back but the downstream testing for external packages is breaking in some builds:

~/build/ECP-copa/Cabana/example/tutorial/01_hello_world/build ~/build/ECP-copa/Cabana/example/tutorial/01_hello_world
2815-- The C compiler identification is GNU 7.5.0
2816-- The CXX compiler identification is GNU 7.5.0
2817-- Check for working C compiler: /usr/lib/ccache/gcc
2818-- Check for working C compiler: /usr/lib/ccache/gcc -- works
2819-- Detecting C compiler ABI info
2820-- Detecting C compiler ABI info - done
2821-- Detecting C compile features
2822-- Detecting C compile features - done
2823-- Check for working CXX compiler: /usr/lib/ccache/g++
2824-- Check for working CXX compiler: /usr/lib/ccache/g++ -- works
2825-- Detecting CXX compiler ABI info
2826-- Detecting CXX compiler ABI info - done
2827-- Detecting CXX compile features
2828-- Detecting CXX compile features - done
2829-- Enabled Kokkos devices: SERIAL
2830-- Found MPI_CXX: /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi_cxx.so (found version "3.1") 
2831-- Found MPI: TRUE (found version "3.1") found components:  CXX 
2832-- Configuring done
2833CMake Error at CMakeLists.txt:9 (add_executable):
2834  Target "HelloWorld" links to target "ArborX::ArborX" but the target was not
2835  found.  Perhaps a find_package() call is missing for an IMPORTED target, or
2836  an ALIAS target is missing?

I'm surprised ArborX isn't getting picked up

@sslattery
Copy link
Collaborator Author

ah it was related to #245! @junghans you beat me to it

@sslattery sslattery merged commit 174b4fe into ECP-copa:master Jun 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants