Skip to content

xyce, trilinos16: new ports for Trilinos 16 and Xyce #28221

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

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

bpdegnan
Copy link
Contributor

xyce: Sandia's parallel SPICE-compatible circuit simulator, which depends on trilinos16.
trilinos16: a versioned port for Trilinos 16.1.0 needed by newer scientific packages.
trilinos16 had to be versioned because the 17+ version deprecates some packages needed by xyce. For this reason, these ports are not mutually exclusive.

Type(s)
  • bugfix
  • enhancement
  • security fix
Tested on

macOS 13.7.5 22H527 x86_64
Xcode 14.3.1 14E300c

Verification

Have you

  • followed our Commit Message Guidelines?
  • squashed and minimized your commits?
  • checked that there aren't other open pull requests for the same change?
  • checked your Portfile with port lint?
  • tried existing tests with sudo port test?
  • tried a full install with sudo port -vst install?
  • tested basic functionality of all binary files?

@bpdegnan bpdegnan force-pushed the add-trilinos16-and-xyce branch from 3f4ce74 to bdba0e5 Compare April 27, 2025 15:04
@bpdegnan
Copy link
Contributor Author

I gave the portfiles a major revamp. Learned some stuff. xyce passes all of my base-line semiconductor tests.

@bpdegnan
Copy link
Contributor Author

I need an addendum. I actually fails one test, after many hours. I will look into and sort it out.

@bpdegnan
Copy link
Contributor Author

The most recent push updates both Portfiles.
I tried and tried to get flang to work. In the end, I settled on gcc13 for fortran as many other ports use it as well. CMake is new to me, and the -pipe and -m64 options were an issue because flang-mp-20 doesn't accept those flags. I could hand edit some .yaml to make it work, but it was really hacky. I tried:
configure.optflags ""
configure.universal_args-delete -m64 -pipe
configure.fc_archflags ""
configure.f90_archflags ""
configure.f77_archflags ""
but I never could get -pipe to not pass.

Here's my other notes:

-DCMAKE_INSTALL_PREFIX=${prefix} \
-DCMAKE_C_COMPILER=${configure.cc} \
-DCMAKE_CXX_COMPILER=${configure.cxx} \

These seem to be required to make CMake build Trilinos16. It was mentioned they should be default, but they need to be in the build.

The xyce binary successfully worked on my test semiconductor cases.

@bpdegnan bpdegnan requested a review from reneeotten May 1, 2025 00:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

3 participants