makefile 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. # Generated automatically from makefile.in by configure.
  2. #
  3. # Makefile for Meschach via autoconf
  4. #
  5. # Copyright (C) David Stewart & Zbigniew Leyk 1993
  6. #
  7. # $Id: makefile.in,v 1.4 1994/03/14 01:24:06 des Exp $
  8. #
  9. srcdir = .
  10. VPATH = .
  11. CC = gcc
  12. DEFS = -DHAVE_CONFIG_H
  13. LIBS = -lm
  14. RANLIB = ranlib
  15. CFLAGS = -O2 -ffast-math -fexpensive-optimizations
  16. .c.o:
  17. $(CC) -c $(CFLAGS) $(DEFS) $<
  18. SHELL = /bin/sh
  19. MES_PAK = mesch12b
  20. TAR = tar
  21. SHAR = stree -u
  22. ZIP = zip -r -l
  23. FLIST = FILELIST
  24. ###############################
  25. LIST1 = copy.o err.o matrixio.o memory.o vecop.o matop.o pxop.o \
  26. submat.o init.o otherio.o machine.o matlab.o ivecop.o version.o \
  27. meminfo.o memstat.o
  28. LIST2 = lufactor.o bkpfacto.o chfactor.o qrfactor.o solve.o hsehldr.o \
  29. givens.o update.o norm.o hessen.o symmeig.o schur.o svd.o fft.o \
  30. mfunc.o bdfactor.o
  31. LIST3 = sparse.o sprow.o sparseio.o spchfctr.o splufctr.o \
  32. spbkp.o spswap.o iter0.o itersym.o iternsym.o
  33. ZLIST1 = zmachine.o zcopy.o zmatio.o zmemory.o zvecop.o zmatop.o znorm.o \
  34. zfunc.o
  35. ZLIST2 = zlufctr.o zsolve.o zmatlab.o zhsehldr.o zqrfctr.o \
  36. zgivens.o zhessen.o zschur.o
  37. # they are no longer supported
  38. # if you use them add oldpart to all and sparse
  39. OLDLIST = conjgrad.o lanczos.o arnoldi.o
  40. ALL_LISTS = $(LIST1) $(LIST2) $(LIST3) $(ZLIST1) $(ZLIST2) $(OLDLIST)
  41. HBASE = err.h meminfo.h machine.h matrix.h
  42. HLIST = $(HBASE) iter.h matlab.h matrix2.h oldnames.h sparse.h \
  43. sparse2.h zmatrix.h zmatrix2.h
  44. TORTURE = torture.o sptort.o ztorture.o memtort.o itertort.o \
  45. mfuntort.o iotort.o
  46. OTHERS = dmacheps.c extras.c fmacheps.c maxint.c makefile.in \
  47. README configure configure.in machine.h.in copyright \
  48. tutorial.c tutadv.c rk4.dat ls.dat makefile $(FLIST)
  49. # Different configurations
  50. # the dependencies **between** the parts are for dmake
  51. all: part1 part2 part3 zpart1 zpart2
  52. part2: part1
  53. part3: part2
  54. basic: part1 part2
  55. sparse: part1 part2 part3
  56. zpart2: zpart1
  57. complex: part1 part2 zpart1 zpart2
  58. $(LIST1): $(HBASE)
  59. part1: $(LIST1)
  60. ar ru libmeschach.a $(LIST1)
  61. $(RANLIB) libmeschach.a
  62. $(LIST2): $(HBASE) matrix2.h
  63. part2: $(LIST2)
  64. ar ru libmeschach.a $(LIST2)
  65. $(RANLIB) libmeschach.a
  66. $(LIST3): $(HBASE) sparse.h sparse2.h
  67. part3: $(LIST3)
  68. ar ru libmeschach.a $(LIST3)
  69. $(RANLIB) libmeschach.a
  70. $(ZLIST1): $(HBASDE) zmatrix.h
  71. zpart1: $(ZLIST1)
  72. ar ru libmeschach.a $(ZLIST1)
  73. $(RANLIB) libmeschach.a
  74. $(ZLIST2): $(HBASE) zmatrix.h zmatrix2.h
  75. zpart2: $(ZLIST2)
  76. ar ru libmeschach.a $(ZLIST2)
  77. $(RANLIB) libmeschach.a
  78. $(OLDLIST): $(HBASE) sparse.h sparse2.h
  79. oldpart: $(OLDLIST)
  80. ar ru libmeschach.a $(OLDLIST)
  81. $(RANLIB) libmeschach.a
  82. #######################################
  83. tar:
  84. - /bin/rm -f $(MES_PAK).tar
  85. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  86. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  87. chmod 755 configure
  88. $(MAKE) list
  89. $(TAR) cvf $(MES_PAK).tar \
  90. `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  91. $(HLIST) $(OTHERS) \
  92. `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  93. MACHINES DOC
  94. # use this only for PC machines
  95. msdos-zip:
  96. - /bin/rm -f $(MES_PAK).zip
  97. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  98. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  99. chmod 755 configure
  100. $(MAKE) list
  101. $(ZIP) $(MES_PAK).zip \
  102. `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  103. $(HLIST) $(OTHERS) `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  104. MACHINES DOC
  105. fullshar:
  106. - /bin/rm -f $(MES_PAK).shar;
  107. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  108. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  109. chmod 755 configure
  110. $(MAKE) list
  111. $(SHAR) `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  112. $(HLIST) $(OTHERS) `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  113. MACHINES DOC > $(MES_PAK).shar
  114. shar:
  115. - /bin/rm -f meschach1.shar meschach2.shar meschach3.shar \
  116. meschach4.shar oldmeschach.shar meschach0.shar
  117. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  118. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  119. chmod 755 configure
  120. $(MAKE) list
  121. $(SHAR) `echo $(LIST1) | sed -e 's/\.o/.c/g'` > meschach1.shar
  122. $(SHAR) `echo $(LIST2) | sed -e 's/\.o/.c/g'` > meschach2.shar
  123. $(SHAR) `echo $(LIST3) | sed -e 's/\.o/.c/g'` > meschach3.shar
  124. $(SHAR) `echo $(ZLIST1) | sed -e 's/\.o/.c/g'` \
  125. `echo $(ZLIST2) | sed -e 's/\.o/.c/g'` > meschach4.shar
  126. $(SHAR) `echo $(OLDLIST) | sed -e 's/\.o/.c/g'` > oldmeschach.shar
  127. $(SHAR) $(OTHERS) `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  128. $(HLIST) DOC MACHINES > meschach0.shar
  129. list:
  130. /bin/rm -f $(FLIST)
  131. ls -lR `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  132. `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  133. $(HLIST) $(OTHERS) MACHINES DOC \
  134. |awk '/^$$/ {print};/^[-d]/ {printf("%s %s %10d %s %s %s %s\n", \
  135. $$1,$$2,$$5,$$6,$$7,$$8,$$9)}; /^[^-d]/ {print}' \
  136. > $(FLIST)
  137. clean:
  138. /bin/rm -f *.o core asx5213a.mat iotort.dat
  139. cleanup:
  140. /bin/rm -f *.o core asx5213a.mat iotort.dat *.a *.dll *.def
  141. realclean:
  142. /bin/rm -f *.o core asx5213a.mat iotort.dat *.a *.dll *.def
  143. /bin/rm -f torture.exe sptort.exe ztorture.exe memtort.exe \
  144. itertort.exe mfuntort.exe iotort.exe
  145. /bin/rm -f maxint.exe macheps.exe
  146. alltorture: torture sptort ztorture memtort itertort mfuntort iotort
  147. torture:torture.o libmeschach.a
  148. $(CC) $(CFLAGS) $(DEFS) -o torture torture.o \
  149. libmeschach.a $(LIBS)
  150. sptort:sptort.o libmeschach.a
  151. $(CC) $(CFLAGS) $(DEFS) -o sptort sptort.o \
  152. libmeschach.a $(LIBS)
  153. memtort: memtort.o libmeschach.a
  154. $(CC) $(CFLAGS) $(DEFS) -o memtort memtort.o \
  155. libmeschach.a $(LIBS)
  156. ztorture:ztorture.o libmeschach.a
  157. $(CC) $(CFLAGS) $(DEFS) -o ztorture ztorture.o \
  158. libmeschach.a $(LIBS)
  159. itertort: itertort.o libmeschach.a
  160. $(CC) $(CFLAGS) $(DEFS) -o itertort itertort.o \
  161. libmeschach.a $(LIBS)
  162. iotort: iotort.o libmeschach.a
  163. $(CC) $(CFLAGS) $(DEFS) -o iotort iotort.o \
  164. libmeschach.a $(LIBS)
  165. mfuntort: mfuntort.o libmeschach.a
  166. $(CC) $(CFLAGS) $(DEFS) -o mfuntort mfuntort.o \
  167. libmeschach.a $(LIBS)
  168. tstmove: tstmove.o libmeschach.a
  169. $(CC) $(CFLAGS) $(DEFS) -o tstmove tstmove.o \
  170. libmeschach.a $(LIBS)
  171. tstpxvec: tstpxvec.o libmeschach.a
  172. $(CC) $(CFLAGS) $(DEFS) -o tstpxvec tstpxvec.o \
  173. libmeschach.a $(LIBS)
  174. OBJ=$(LIST1) $(LIST2) $(LIST3) $(ZLIST1) $(ZLIST2)
  175. DLLTOOL= dlltool
  176. DLLWRAP= dllwrap
  177. DLL_NAME = meschach.dll
  178. DLL_EXP_DEF = libmeschach_dll.def
  179. DLL_EXP_LIB = libmeschach_dll.a
  180. DLL_LDFLAGS = -L .
  181. DLL_LDLIBS = -lm
  182. DLL_CFLAGS = --verbose --export-all-symbols
  183. DLLWRAP_FLAGS = --output-def $(DLL_EXP_DEF) \
  184. --implib $(DLL_EXP_LIB) \
  185. --driver-name $(CC) #--no-delete
  186. $(DLL_NAME) $(DLL_EXP_DEF) $(DLL_EXP_LIB): $(OBJ)
  187. $(DLLWRAP) $(DLL_CFLAGS) $(DLLWRAP_FLAGS) -o $(DLL_NAME) \
  188. $(OBJ) $(DLL_LDFLAGS) $(DLL_LDLIBS)
  189. dll: $(DLL_NAME)