summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorScott McMillan <scott.andrew.mcmillan@gmail.com>2022-04-21 12:10:46 -0500
committerGitHub <noreply@github.com>2022-04-21 11:10:46 -0600
commit616a8eebcd8bb02be512185ec8a19525d1cbe866 (patch)
tree23f3cb264d1e58ed6d8ad4a3e0674790954c55b1 /var
parentac9bd3d72d7a4ed49e5bbdd3f07a4fdf91f8d0ce (diff)
downloadspack-616a8eebcd8bb02be512185ec8a19525d1cbe866.tar.gz
spack-616a8eebcd8bb02be512185ec8a19525d1cbe866.tar.bz2
spack-616a8eebcd8bb02be512185ec8a19525d1cbe866.tar.xz
spack-616a8eebcd8bb02be512185ec8a19525d1cbe866.zip
perl: fix issues when compiling 5.34 with nvhpc compilers (#30110)
Co-authored-by: Scott McMillan <smcmillan@nvidia.com>
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/perl/nvhpc-5.34.patch42
-rw-r--r--var/spack/repos/builtin/packages/perl/package.py2
2 files changed, 43 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/perl/nvhpc-5.34.patch b/var/spack/repos/builtin/packages/perl/nvhpc-5.34.patch
new file mode 100644
index 0000000000..18b18b2e64
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl/nvhpc-5.34.patch
@@ -0,0 +1,42 @@
+--- a/Configure
++++ b/Configure
+@@ -4862,7 +4862,7 @@
+ # and usrinc directly from the compiler.
+ # Note that ccname for clang is also gcc.
+ case "$ccname" in
+- gcc)
++ XXX)
+ realpath=`which realpath 2>/dev/null | sed 's/no realpath in.*//'`
+ $echo 'extern int foo;' > try.c
+ set X `$cppstdin -v try.c 2>&1 | $awk '/^#include </,/^End of search /'|$cppfilter $grep '/include'`
+--- a/Makefile.SH
++++ b/Makefile.SH
+@@ -1143,7 +1143,7 @@
+ # But also this ensures that all extensions are built before we try to scan
+ # them, which picks up Devel::PPPort's documentation.
+ pod/perltoc.pod: $(perltoc_pod_prereqs) $(PERL_EXE) $(ext) pod/buildtoc
+- $(RUN_PERL) -f pod/buildtoc -q
++ $(MINIPERL) -f pod/buildtoc -q
+
+ pod/perlapi.pod: pod/perlintern.pod
+
+@@ -1200,8 +1200,8 @@
+ $spitshell >>$Makefile <<EOT
+
+ install_$name install-$name: \$(INSTALL_DEPENDENCE) installperl all installman
+- \$(RUN_PERL) installperl --destdir=\$(DESTDIR) $flags \$(INSTALLFLAGS) \$(STRIPFLAGS)
+- \$(RUN_PERL) installman --destdir=\$(DESTDIR) $flags
++ \$(MINIPERL) installperl --destdir=\$(DESTDIR) $flags \$(INSTALLFLAGS) \$(STRIPFLAGS)
++ \$(MINIPERL) installman --destdir=\$(DESTDIR) $flags
+ EOT
+ fi
+
+@@ -1219,7 +1219,7 @@
+ LOCAL_PERL='$(RUN_PERL)'
+ $spitshell >>$Makefile <<'!NO!SUBS!'
+ install.perl: $(INSTALL_DEPENDENCE) installperl
+- $(RUN_PERL) installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
++ $(MINIPERL) installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
+ -@test ! -s extras.lst || PATH="`pwd`:\${PATH}" PERL5LIB="`pwd`/lib" \$(RUN_PERL) -Ilib -MCPAN -e '@ARGV&&install(@ARGV)' `cat extras.lst`
+
+ !NO!SUBS!
diff --git a/var/spack/repos/builtin/packages/perl/package.py b/var/spack/repos/builtin/packages/perl/package.py
index ba5e80eb4e..07f2396a27 100644
--- a/var/spack/repos/builtin/packages/perl/package.py
+++ b/var/spack/repos/builtin/packages/perl/package.py
@@ -105,7 +105,7 @@ class Perl(Package): # Perl doesn't use Autotools, it should subclass Package
# the mini Perl environment to bootstrap installation.
patch('nvhpc-5.30.patch', when='@5.30.0:5.30 %nvhpc')
patch('nvhpc-5.32.patch', when='@5.32.0:5.32 %nvhpc')
- conflicts('@5.34.0:', when='%nvhpc') # todo, add patches...
+ patch('nvhpc-5.34.patch', when='@5.34.0:5.34 %nvhpc')
conflicts('@5.32.0:', when='%nvhpc@:20.11',
msg='The NVIDIA compilers are incompatible with version 5.32 and later')