1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
Create a shared version of the MUMPS library.
--- a/src/Makefile
+++ b/src/Makefile
@@ -19,19 +19,19 @@
zshared: cshared
libcommon: $(incdir)/mumps_int_def.h
- $(MAKE) $(libdir)/libmumps_common$(PLAT)$(LIBEXT)
+ $(MAKE) FPIC=$(FPIC_OPT) $(libdir)/libmumps_common$(PLAT)$(LIBEXT) $(libdir)/libmumps_common$(PLAT)$(LIBEXT_SHARED)
s: $(incdir)/mumps_int_def.h libcommon
- $(MAKE) ARITH=s $(libdir)/libsmumps$(PLAT)$(LIBEXT)
+ $(MAKE) FPIC=$(FPIC_OPT) ARITH=s $(libdir)/libsmumps$(PLAT)$(LIBEXT) $(libdir)/libsmumps$(PLAT)$(LIBEXT_SHARED)
d: $(incdir)/mumps_int_def.h libcommon
- $(MAKE) ARITH=d $(libdir)/libdmumps$(PLAT)$(LIBEXT)
+ $(MAKE) FPIC=$(FPIC_OPT) ARITH=d $(libdir)/libdmumps$(PLAT)$(LIBEXT) $(libdir)/libdmumps$(PLAT)$(LIBEXT_SHARED)
c: $(incdir)/mumps_int_def.h libcommon
- $(MAKE) ARITH=c $(libdir)/libcmumps$(PLAT)$(LIBEXT)
+ $(MAKE) FPIC=$(FPIC_OPT) ARITH=c $(libdir)/libcmumps$(PLAT)$(LIBEXT) $(libdir)/libcmumps$(PLAT)$(LIBEXT_SHARED)
z: $(incdir)/mumps_int_def.h libcommon
- $(MAKE) ARITH=z $(libdir)/libzmumps$(PLAT)$(LIBEXT)
+ $(MAKE) FPIC=$(FPIC_OPT) ARITH=z $(libdir)/libzmumps$(PLAT)$(LIBEXT) $(libdir)/libzmumps$(PLAT)$(LIBEXT_SHARED)
# Rules for shared libraries
@@ -242,14 +242,18 @@
$(RANLIB) $@
$(libdir)/libmumps_common$(PLAT)$(LIBEXT_SHARED): $(OBJS_COMMON_MOD) $(OBJS_COMMON_OTHER) $(OBJS_C_COMMON)
- $(FC) $(OPTL) $(SHARED_OPT) $^ -Wl,$(SONAME),libmumps_common$(PLAT)$(LIBEXT_SHARED) -L$(libdir) $(RPATH_OPT) $(LORDERINGS) $(LIBS) $(LIBOTHERS) -o $@
+ $(FC) $(OPTL) $(SHARED_OPT) $^ -Wl,$(SONAME),libmumps_common$(PLAT)-$(SOVERSION)$(LIBEXT_SHARED) -L$(libdir) $(RPATH_OPT) $(LORDERINGS) $(LIBS) $(LIBOTHERS) -o $(libdir)/libmumps_common$(PLAT)-$(VERSION)$(LIBEXT_SHARED)
+ ln -s libmumps_common$(PLAT)-$(VERSION)$(LIBEXT_SHARED) $(libdir)/libmumps_common$(PLAT)-$(SOVERSION)$(LIBEXT_SHARED)
+ ln -s libmumps_common$(PLAT)-$(VERSION)$(LIBEXT_SHARED) $@
$(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT): $(OBJS_MOD_ARITHDEP) $(OBJS_OTHER)
$(AR)$@ $?
$(RANLIB) $@
$(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT_SHARED): $(OBJS_MOD_ARITHDEP) $(OBJS_OTHER) $(libdir)/libmumps_common$(PLAT)$(LIBEXT_SHARED)
- $(FC) $(OPTL) $(SHARED_OPT) $(OBJS_MOD_ARITHDEP) $(OBJS_OTHER) -L$(libdir) $(LORDERINGS) $(LIBS) $(LIBOTHERS) -lmumps_common$(PLAT) -o $@ $(RPATH_OPT)
+ $(FC) $(OPTL) $(SHARED_OPT) -Wl,-soname,lib$(ARITH)mumps$(PLAT)-$(SOVERSION)$(LIBEXT_SHARED) $(OBJS_MOD_ARITHDEP) $(OBJS_OTHER) -L$(libdir) $(LORDERINGS) $(LIBS) $(LIBOTHERS) -lmumps_common$(PLAT) -o $(libdir)/lib$(ARITH)mumps$(PLAT)-$(VERSION)$(LIBEXT_SHARED) $(RPATH_OPT)
+ ln -s lib$(ARITH)mumps$(PLAT)-$(VERSION)$(LIBEXT_SHARED) $(libdir)/lib$(ARITH)mumps$(PLAT)-$(SOVERSION)$(LIBEXT_SHARED)
+ ln -s lib$(ARITH)mumps$(PLAT)-$(VERSION)$(LIBEXT_SHARED) $@
# Dependencies between modules:
|