Skip to content

Patch trilinos for xlf when using clang#8391

Merged
tgamblin merged 4 commits intospack:developfrom
serbanmaerean:fix-ibm-clang/trilinos
Jun 15, 2018
Merged

Patch trilinos for xlf when using clang#8391
tgamblin merged 4 commits intospack:developfrom
serbanmaerean:fix-ibm-clang/trilinos

Conversation

@djfitzgerald
Copy link
Copy Markdown
Contributor

@djfitzgerald djfitzgerald commented Jun 5, 2018

Apply IBM XL patches for trilinos when using the llvm compiler suite, for when llvm is using xlf as its Fortran compiler. Related to #8311, #8388, #8389, #8392, #8393, #8394.

serbanmaerean and others added 4 commits June 5, 2018 17:16
and sanity check, so the tests should be patched only when somebody
wants to build and run them, manually.
…r build and sanity check, so the tests should be patched only when somebody wants to build and run them, manually."

This reverts commit b5cb690.
patch('xlf_seacas.patch', when='@12.10.1:%xl_r')
patch('xlf_tpetra.patch', when='@12.12.1:%xl')
patch('xlf_tpetra.patch', when='@12.12.1:%xl_r')
patch('xlf_seacas.patch', when='@12.12.1:%clang')
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hopefully does not break clang+gfortran

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@davydden As far as the xlf_seacas.patch is concerned, it only affects code applied when cmake identifies the compiler as IBM XL fortran (ELSEIF ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "XL")). While the xlc_seacas.patch is applied over code that will be run in the clang+fortran case, I've been able to verify that I can still build trilinos for clang+gfortran with this pull request applied.

@djfitzgerald
Copy link
Copy Markdown
Contributor Author

@davydden I have a few of these pull requests out there. What do I need to do to convince somebody to merge them?

@davydden
Copy link
Copy Markdown
Member

@davydden I have a few of these pull requests out there. What do I need to do to convince somebody to merge them?

ping @adamjstewart @alalazo or other guys who have merge rights.

@djfitzgerald
Copy link
Copy Markdown
Contributor Author

Thanks, @davydden. So @adamjstewart or @alalazo... could either of you two merge this PR?

@tgamblin tgamblin merged commit 54aab58 into spack:develop Jun 15, 2018
smuething added a commit to smuething/spack that referenced this pull request Jun 18, 2018
* upstream-develop: (430 commits)
  There's only one 'u' in "configuration" (spack#8498)
  Add new versions for TAU and PDT package (spack#8497)
  Add changes to the Krell packages with version updates and ranges for  the latest release. (spack#8468)
  docs: remove vendored sphinx_rtd_theme (spack#8496)
  Trilinos needs parallel-netcdf as an explicit dependency to avoid concretization errors when netcdf is an external. (spack#8493)
  superlu_dist: 'master' is branch - not tag (spack#8495)
  SAMRAI: new versions, handle deprecation of boost in latest version. (spack#8494)
  Fix GDAL Python bindings and add import tests (spack#8482)
  Add newer likwid versions 4.3.1 and 4.3.2 (spack#8488)
  Package/geopm: Update to version 0.5.0 (spack#8487)
  [mfem] Add BLAS+LAPACK to the required dependencies of SuperLU_DIST. (spack#8485)
  openssl: add new version 1.0.2o (spack#8486)
  Update the clang compiler definition to use IBM XL Fortran compiler (spack#8389)
  Patch trilinos for xlf when using clang (spack#8391)
  Use no mangling for all spack compiler definitions that use the XL (spack#8392)
  Use the name of the Fortran compiler to determine what name mangling (spack#8393)
  A new package: megahit. (spack#8471)
  neovim: add info for v0.3.0 (spack#8472)
  oce: add 0.18.3 (spack#8477)
  netgen should depend on zlib (spack#8473)
  ...
smuething added a commit to smuething/spack that referenced this pull request Jun 18, 2018
* upstream-develop: (430 commits)
  There's only one 'u' in "configuration" (spack#8498)
  Add new versions for TAU and PDT package (spack#8497)
  Add changes to the Krell packages with version updates and ranges for  the latest release. (spack#8468)
  docs: remove vendored sphinx_rtd_theme (spack#8496)
  Trilinos needs parallel-netcdf as an explicit dependency to avoid concretization errors when netcdf is an external. (spack#8493)
  superlu_dist: 'master' is branch - not tag (spack#8495)
  SAMRAI: new versions, handle deprecation of boost in latest version. (spack#8494)
  Fix GDAL Python bindings and add import tests (spack#8482)
  Add newer likwid versions 4.3.1 and 4.3.2 (spack#8488)
  Package/geopm: Update to version 0.5.0 (spack#8487)
  [mfem] Add BLAS+LAPACK to the required dependencies of SuperLU_DIST. (spack#8485)
  openssl: add new version 1.0.2o (spack#8486)
  Update the clang compiler definition to use IBM XL Fortran compiler (spack#8389)
  Patch trilinos for xlf when using clang (spack#8391)
  Use no mangling for all spack compiler definitions that use the XL (spack#8392)
  Use the name of the Fortran compiler to determine what name mangling (spack#8393)
  A new package: megahit. (spack#8471)
  neovim: add info for v0.3.0 (spack#8472)
  oce: add 0.18.3 (spack#8477)
  netgen should depend on zlib (spack#8473)
  ...
smuething added a commit to smuething/spack that referenced this pull request Jun 18, 2018
* upstream-develop: (430 commits)
  There's only one 'u' in "configuration" (spack#8498)
  Add new versions for TAU and PDT package (spack#8497)
  Add changes to the Krell packages with version updates and ranges for  the latest release. (spack#8468)
  docs: remove vendored sphinx_rtd_theme (spack#8496)
  Trilinos needs parallel-netcdf as an explicit dependency to avoid concretization errors when netcdf is an external. (spack#8493)
  superlu_dist: 'master' is branch - not tag (spack#8495)
  SAMRAI: new versions, handle deprecation of boost in latest version. (spack#8494)
  Fix GDAL Python bindings and add import tests (spack#8482)
  Add newer likwid versions 4.3.1 and 4.3.2 (spack#8488)
  Package/geopm: Update to version 0.5.0 (spack#8487)
  [mfem] Add BLAS+LAPACK to the required dependencies of SuperLU_DIST. (spack#8485)
  openssl: add new version 1.0.2o (spack#8486)
  Update the clang compiler definition to use IBM XL Fortran compiler (spack#8389)
  Patch trilinos for xlf when using clang (spack#8391)
  Use no mangling for all spack compiler definitions that use the XL (spack#8392)
  Use the name of the Fortran compiler to determine what name mangling (spack#8393)
  A new package: megahit. (spack#8471)
  neovim: add info for v0.3.0 (spack#8472)
  oce: add 0.18.3 (spack#8477)
  netgen should depend on zlib (spack#8473)
  ...
smuething added a commit to smuething/spack that referenced this pull request Jun 18, 2018
* upstream-develop: (430 commits)
  There's only one 'u' in "configuration" (spack#8498)
  Add new versions for TAU and PDT package (spack#8497)
  Add changes to the Krell packages with version updates and ranges for  the latest release. (spack#8468)
  docs: remove vendored sphinx_rtd_theme (spack#8496)
  Trilinos needs parallel-netcdf as an explicit dependency to avoid concretization errors when netcdf is an external. (spack#8493)
  superlu_dist: 'master' is branch - not tag (spack#8495)
  SAMRAI: new versions, handle deprecation of boost in latest version. (spack#8494)
  Fix GDAL Python bindings and add import tests (spack#8482)
  Add newer likwid versions 4.3.1 and 4.3.2 (spack#8488)
  Package/geopm: Update to version 0.5.0 (spack#8487)
  [mfem] Add BLAS+LAPACK to the required dependencies of SuperLU_DIST. (spack#8485)
  openssl: add new version 1.0.2o (spack#8486)
  Update the clang compiler definition to use IBM XL Fortran compiler (spack#8389)
  Patch trilinos for xlf when using clang (spack#8391)
  Use no mangling for all spack compiler definitions that use the XL (spack#8392)
  Use the name of the Fortran compiler to determine what name mangling (spack#8393)
  A new package: megahit. (spack#8471)
  neovim: add info for v0.3.0 (spack#8472)
  oce: add 0.18.3 (spack#8477)
  netgen should depend on zlib (spack#8473)
  ...
@balay
Copy link
Copy Markdown
Contributor

balay commented Jun 22, 2018

I get errros with trilinos@develop on Mac [with clang]

==> Installing trilinos
==> Trying to clone git repository: https://github.com/trilinos/Trilinos.git on branch develop
==> No checksum needed when fetching with git
==> Already staged trilinos-develop-irg6jlvsjqnidqpfwzjywcxrbtjbx42x in /Users/balay/spack/var/spack/stage/trilinos-develop-irg6jlvsjqnidqpfwzjywcxrbtjbx42x
1 out of 1 hunk FAILED -- saving rejects to file packages/seacas/cmake/FortranSettings.cmake.rej
==> Patch xlf_seacas.patch failed.
==> Error: ProcessError: Command exited with status 1:
    '/usr/bin/patch' '-s' '-p' '1' '-i' '/Users/balay/spack/var/spack/repos/builtin/packages/trilinos/xlf_seacas.patch' '-d' '.'
==> Error: [Errno 2] No such file or directory: '/Users/balay/spack/var/spack/stage/trilinos-develop-irg6jlvsjqnidqpfwzjywcxrbtjbx42x/Trilinos/spack-build.out'

perhaps the following change?

diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py
index 9d0b84c1f..0cbeef929 100644
--- a/var/spack/repos/builtin/packages/trilinos/package.py
+++ b/var/spack/repos/builtin/packages/trilinos/package.py
@@ -313,7 +313,7 @@ class Trilinos(CMakePackage):
     patch('xlf_seacas.patch', when='@12.10.1:%xl_r')
     patch('xlf_tpetra.patch', when='@12.12.1:%xl')
     patch('xlf_tpetra.patch', when='@12.12.1:%xl_r')
-    patch('xlf_seacas.patch', when='@12.12.1:%clang')
+    patch('xlf_seacas.patch', when='@12.12.1%clang')
     patch('xlf_tpetra.patch', when='@12.12.1:%clang')

     def url_for_version(self, version):

cc: @keitat

@djfitzgerald djfitzgerald deleted the fix-ibm-clang/trilinos branch September 5, 2018 17:04
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 this pull request may close these issues.

5 participants