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

Prevent users from spack installing with conflicting fortran compiler #313

Closed
CamStan opened this issue May 8, 2019 · 0 comments · Fixed by #314
Closed

Prevent users from spack installing with conflicting fortran compiler #313

CamStan opened this issue May 8, 2019 · 0 comments · Fixed by #314

Comments

@CamStan
Copy link
Member

CamStan commented May 8, 2019

Describe the problem you're observing

Since Unify currently conflicts with certain fortran compilers (#300, #304), if a user installs with the FC envar set to a conflicting compiler, Unify will build fine, but will fail at runtime when the user attempts to use anything requiring fortran. When a user installs with Spack, Spack sets/overrides FC for the user based on the compiler selected, which prevents the ability to tell Spack to only conflict with the fortran compiler, and not all associated compilers:

- compiler:
    environment: {}
    extra_rpaths: []
    flags: {}
    modules: []
    operating_system: rhel7
    paths:
      cc: /usr/tce/bin/icc-18.0.2
      cxx: /usr/tce/bin/icpc-18.0.2
      f77: /usr/tce/bin/ifort-18.0.2
      fc: /usr/tce/bin/ifort-18.0.2   <---
    spec: intel@18.0.2
    target: x86_64

We do have this documented so that users who intend to use fortran won't try to do so with anything aside from gfortran. However, if a user wanting fortran misses this note and installs with Spack, we could at least have Spack tell them they cannot do so if we had a +fortran variant:

conflicts('%intel', when='+fortran')

This way users that still want to use intel without fortran can still do so, but users wanting fortran will be notified before run time.

Also, clang doesn't have an associated fortran compiler and currently it is unclear what Spack will do there as other complications have prevented testing this.

Proposed Solution

Create an --enable-fortran configuration option that is off by default and doesn't install any fortran related examples, etc when disabled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant