lanl / ports-of-call

Performance Portability Utilities
https://lanl.github.io/ports-of-call/
BSD 3-Clause "New" or "Revised" License
2 stars 1 forks source link

Finish cmake configuration to support `FindPackage` and friends #3

Closed Yurlungur closed 2 years ago

Yurlungur commented 2 years ago

PR Summary

Add the package configuration.

PR Checklist

Yurlungur commented 2 years ago

This now works, thanks to the help of @mauneyc-LANL , and is ready for review.

mauneyc-LANL commented 2 years ago

@Yurlungur up to 211e8c9 I redid some directory setup and export config, and updated the test. Let me know if any issues arise on your end

mauneyc-LANL commented 2 years ago

@Yurlungur up to 211e8c9 I redid some directory setup and export config, and updated the test. Let me know if any issues arise on your end

And some tidying up, test now attempts to compile skeleton code that just includes a PoC header.

Yurlungur commented 2 years ago

Nice improvements, @mauneyc-LANL ! Thanks!

One thought: This implies that the portability strategy is set at "install" time. I guess this is consistent with how, e.g., Kokkos works. And it doesn't do anything regarding in-tree builds. Is being able to change the portability strategy "post-install" something that's important to people? I think since in-tree builds are still flexible, this is consistent with, e.g., Kokkos, and probably fine.

What are people's thoughts?

Yurlungur commented 2 years ago

@chadmeyer @mauneyc-LANL @junghans @jdolence @brryan I'd like to merge this soon. I'll wait 24 hours and if no one has reviewed by then, I will merge by fiat.

Yurlungur commented 2 years ago

@junghans I've addressed your comment. Please take a look (and if you're happy) approve when you get the chance.

Yurlungur commented 2 years ago

All change requests addressed. Also passed the PORTABILITY_STRATEGY through spack as a variant and added some guards against multiple portability strategies. Merging. Thanks all for your help!