1# 2# This file is part of MUMPS 4.10.0, built on Tue May 10 12:56:32 UTC 2011 3# 4topdir = .. 5libdir = $(topdir)/lib 6 7default: d 8 9.PHONY: default s d c z mumps_lib clean 10 11s: 12 $(MAKE) ARITH=s mumps_lib 13d: 14 $(MAKE) ARITH=d mumps_lib 15c: 16 $(MAKE) ARITH=c mumps_lib 17z: 18 $(MAKE) ARITH=z mumps_lib 19 20include $(topdir)/Makefile.inc 21 22mumps_lib: $(libdir)/libmumps_common$(PLAT)$(LIBEXT) \ 23 $(libdir)/libmumps_common$(PLAT).so.@SOVER@ \ 24 $(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT) \ 25 $(libdir)/lib$(ARITH)mumps$(PLAT).so.@SOVER@ 26 27OBJS_COMMON = \ 28 mumps_part9.o\ 29 mumps_common.o\ 30 mumps_ooc_common.o\ 31 mumps_orderings.o\ 32 mumps_size.o\ 33 mumps_io.o\ 34 mumps_io_basic.o\ 35 mumps_io_thread.o\ 36 mumps_io_err.o\ 37 mumps_static_mapping.o\ 38 mumps_sol_es.o\ 39 tools_common_mod.o 40 41OBJS = $(ARITH)mumps_part1.o\ 42 $(ARITH)mumps_part2.o\ 43 $(ARITH)mumps_part3.o\ 44 $(ARITH)mumps_part4.o\ 45 $(ARITH)mumps_part5.o\ 46 $(ARITH)mumps_part6.o\ 47 $(ARITH)mumps_part7.o\ 48 $(ARITH)mumps_part8.o\ 49 $(ARITH)mumps_comm_buffer.o\ 50 $(ARITH)mumps_load.o\ 51 $(ARITH)mumps_c.o\ 52 $(ARITH)mumps_ooc_buffer.o\ 53 $(ARITH)mumps_ooc.o\ 54 $(ARITH)mumps_struc_def.o 55 56 57$(libdir)/libmumps_common$(PLAT)$(LIBEXT): $(OBJS_COMMON) 58 $(AR) $@ $? 59 $(RANLIB) $@ 60 61$(libdir)/libmumps_common$(PLAT).so.@SOVER@: $(OBJS_COMMON) 62 $(FC) -shared ${.ALLSRC} -Wl,-soname,libmumps_common$(PLAT).so.@SOVER@ -L$(libdir) $(LORDERINGS) $(LIBPAR) $(LIBOTHERS) -o $(libdir)/libmumps_common$(PLAT).so.@SOVER@ -Wl,-z,defs 63 64$(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT): $(OBJS) 65 $(AR) $@ $? 66 $(RANLIB) $@ 67 68$(libdir)/lib$(ARITH)mumps$(PLAT).so.@SOVER@: $(OBJS) 69 $(FC) -shared ${.ALLSRC} -Wl,-soname,lib$(ARITH)mumps$(PLAT).so.@SOVER@ -L$(libdir) -lmumps_common$(PLAT) $(LORDERINGS) $(LIBPAR) -lblas $(SCALAP) $(LIBOTHERS) -o $(libdir)/lib$(ARITH)mumps$(PLAT).so.@SOVER@ -Wl,-z,defs 70 71$(ARITH)mumps_load.o: $(ARITH)mumps_comm_buffer.o \ 72 $(ARITH)mumps_struc_def.o 73 74$(ARITH)mumps_ooc.o: $(ARITH)mumps_struc_def.o \ 75 $(ARITH)mumps_ooc_buffer.o \ 76 mumps_ooc_common.o 77 78$(ARITH)mumps_ooc_buffer.o: mumps_ooc_common.o 79 80 81$(ARITH)mumps_part1.o \ 82$(ARITH)mumps_part2.o \ 83$(ARITH)mumps_part3.o \ 84$(ARITH)mumps_part4.o \ 85$(ARITH)mumps_part5.o \ 86$(ARITH)mumps_part6.o \ 87$(ARITH)mumps_part7.o \ 88$(ARITH)mumps_part8.o: $(ARITH)mumps_comm_buffer.o \ 89 $(ARITH)mumps_load.o \ 90 $(ARITH)mumps_ooc.o 91 92$(ARITH)mumps_part5.o: mumps_static_mapping.o 93$(ARITH)mumps_part5.o: $(ARITH)mumps_part2.o 94 95$(ARITH)mumps_part2.o : tools_common_mod.o 96$(ARITH)mumps_part8.o : mumps_sol_es.o 97 98.SUFFIXES: .c .F .o 99.F.o: 100 $(FC) $(OPTF) $(INCS) $(IORDERINGSF) $(ORDERINGSF) -I. -I../include -c $*.F $(OUTF)$*.o 101.c.o: 102 $(CC) $(OPTC) $(INCS) -I../include $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o 103 104$(ARITH)mumps_c.o: mumps_c.c 105 $(CC) $(OPTC) $(INCS) $(CDEFS) -DMUMPS_ARITH=MUMPS_ARITH_$(ARITH) \ 106 $(IORDERINGSC) $(ORDERINGSC) -I../include -c $? $(OUTC)$@ 107 108 109clean: 110 $(RM) *.o *.mod 111