spack/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.3.patch
Tom Payerle f7064fa181
mumps: Fix for problematic src/makefile patch (#20590) (#20758)
* mumps: Fix for problematic src/makefile patch (#20590)

Minor change in src/Makefile between 5.2.0 and 5.3.3 causing patch to
break.  Split into 2 patchfiles

* mumps: Additional patch for fixing #20590

This is to fix issue wherein build fails on Ubuntu due to undefined
symbols, despite symbols being included in other libraries referenced
on the compilation line.  I believe the issue is that the inclusion
of libsmumps.so was (due to my original patch) causing
libmumps_common.so to be automatically loaded, but since libpords.so
was not also required, the error was occuring.  I have added libpords.so
along with libmumps_common.so to be explicit dependencies of
libsmumps.so, etc., which seems to resolve the issue.
2021-01-21 20:41:11 -08:00

25 lines
978 B
Diff

diff -Naur spack-src/src/Makefile spack-src.patched/src/Makefile
--- spack-src/src/Makefile 2020-06-15 05:57:25.000000000 -0400
+++ spack-src.patched/src/Makefile 2021-01-08 14:43:28.655026604 -0500
@@ -193,7 +193,7 @@
$(RANLIB) $@
$(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT): $(OBJS_MOD) $(OBJS_OTHER)
- $(AR)$@ $?
+ $(AR)$@ $? $(EXTRA_LIBS4MUMPS)
$(RANLIB) $@
# Dependencies between modules:
@@ -405,9 +405,9 @@
.SUFFIXES: .c .F .o
.F.o:
- $(FC) $(OPTF) -I. -I../include $(INCS) $(IORDERINGSF) $(ORDERINGSF) -c $*.F $(OUTF)$*.o
+ $(FC) $(OPTF) $(FC_PIC_FLAG) -I. -I../include $(INCS) $(IORDERINGSF) $(ORDERINGSF) -c $*.F $(OUTF)$*.o
.c.o:
- $(CC) $(OPTC) -I../include $(INCS) $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o
+ $(CC) $(OPTC) $(CC_PIC_FLAG) -I../include $(INCS) $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o
$(ARITH)mumps_c.o: mumps_c.c
$(CC) $(OPTC) -I../include $(INCS) $(CDEFS) -DMUMPS_ARITH=MUMPS_ARITH_$(ARITH) \