makefile 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. #
  2. #
  3. # Makefile for Meschach for GNU cc/emx (OS/2)
  4. #
  5. # Copyright (C) David Stewart & Zbigniew Leyk 1993
  6. # modified by mati1831@perform.ww.tu-berlin.de
  7. #
  8. # $Id: $
  9. #
  10. srcdir =
  11. VPATH =
  12. CC = gcc
  13. DEFS = -DHAVE_CONFIG_H
  14. LIBS = -lm
  15. # we don't have ranlib
  16. RANLIB = ar -s
  17. CFLAGS = -O6
  18. .c.o:
  19. $(CC) -c $(CFLAGS) $(DEFS) $<
  20. # we do not need the shell
  21. ##SHELL = sh
  22. # if we have rm, otherwise use del.
  23. RM= rm -f
  24. MES_PAK = mesch12a
  25. TAR = tar
  26. SHAR = shar -u
  27. ZIP = gzip -r -l
  28. ###############################
  29. LIST1 = copy.o err.o matrixio.o memory.o vecop.o matop.o pxop.o \
  30. submat.o init.o otherio.o machine.o matlab.o ivecop.o version.o \
  31. meminfo.o memstat.o
  32. LIST2 = lufactor.o bkpfacto.o chfactor.o qrfactor.o solve.o hsehldr.o \
  33. givens.o update.o norm.o hessen.o symmeig.o schur.o svd.o fft.o \
  34. mfunc.o bdfactor.o
  35. LIST3 = sparse.o sprow.o sparseio.o spchfctr.o splufctr.o \
  36. spbkp.o spswap.o iter0.o itersym.o iternsym.o
  37. ZLIST1 = zmachine.o zcopy.o zmatio.o zmemory.o zvecop.o zmatop.o znorm.o \
  38. zfunc.o
  39. ZLIST2 = zlufctr.o zsolve.o zmatlab.o zhsehldr.o zqrfctr.o \
  40. zgivens.o zhessen.o zschur.o
  41. # they are no longer supported
  42. # if you use them add oldpart to all and sparse
  43. OLDLIST = conjgrad.o lanczos.o arnoldi.o
  44. ALL_LISTS = $(LIST1) $(LIST2) $(LIST3) $(ZLIST1) $(ZLIST2) $(OLDLIST)
  45. HLIST = err.h iter.h machine.h matlab.h matrix.h matrix2.h \
  46. meminfo.h oldnames.h sparse.h sparse2.h \
  47. zmatrix.h zmatrix2.h
  48. TORTURE = torture.o sptort.o ztorture.o memtort.o itertort.o \
  49. mfuntort.o iotort.o
  50. OTHERS = dmacheps.c extras.c fmacheps.c maxint.c makefile.in \
  51. README configure configure.in machine.h.in copyright \
  52. tutorial.c tutadv.c rk4.dat ls.dat makefile
  53. # Different configurations
  54. all: part1 part2 part3 zpart1 zpart2
  55. basic: part1 part2
  56. sparse: part1 part2 part3
  57. complex: part1 part2 zpart1 zpart2
  58. HBASE = err.h meminfo.h machine.h matrix.h
  59. $(LIST1): $(HBASE)
  60. part1: $(LIST1)
  61. ar ru meschach.a $(LIST1)
  62. $(RANLIB) meschach.a
  63. $(LIST2): $(HBASE) matrix2.h
  64. part2: $(LIST2)
  65. ar ru meschach.a $(LIST2)
  66. $(RANLIB) meschach.a
  67. $(LIST3): $(HBASE) sparse.h sparse2.h
  68. part3: $(LIST3)
  69. ar ru meschach.a $(LIST3)
  70. $(RANLIB) meschach.a
  71. $(ZLIST1): $(HBASDE) zmatrix.h
  72. zpart1: $(ZLIST1)
  73. ar ru meschach.a $(ZLIST1)
  74. $(RANLIB) meschach.a
  75. $(ZLIST2): $(HBASE) zmatrix.h zmatrix2.h
  76. zpart2: $(ZLIST2)
  77. ar ru meschach.a $(ZLIST2)
  78. $(RANLIB) meschach.a
  79. $(OLDLIST): $(HBASE) sparse.h sparse2.h
  80. oldpart: $(OLDLIST)
  81. ar ru meschach.a $(OLDLIST)
  82. $(RANLIB) meschach.a
  83. #######################################
  84. tar:
  85. - /bin/rm -f $(MES_PAK).tar
  86. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  87. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  88. chmod 755 configure
  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. $(ZIP) $(MES_PAK).zip \
  101. `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  102. $(HLIST) $(OTHERS) `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  103. MACHINES DOC
  104. fullshar:
  105. - /bin/rm -f $(MES_PAK).shar;
  106. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  107. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  108. chmod 755 configure
  109. $(SHAR) `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  110. $(HLIST) $(OTHERS) `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  111. MACHINES DOC > $(MES_PAK).shar
  112. shar:
  113. - /bin/rm -f meschach1.shar meschach2.shar meschach3.shar \
  114. meschach4.shar oldmeschach.shar meschach0.shar
  115. chmod 644 `echo $(ALL_LISTS) | sed -e 's/\.o/.c/g'` \
  116. $(OTHERS) $(HLIST) `echo $(TORTURE) | sed -e 's/\.o/.c/g'`
  117. chmod 755 configure
  118. $(SHAR) `echo $(LIST1) | sed -e 's/\.o/.c/g'` > meschach1.shar
  119. $(SHAR) `echo $(LIST2) | sed -e 's/\.o/.c/g'` > meschach2.shar
  120. $(SHAR) `echo $(LIST3) | sed -e 's/\.o/.c/g'` > meschach3.shar
  121. $(SHAR) `echo $(ZLIST1) | sed -e 's/\.o/.c/g'` \
  122. `echo $(ZLIST2) | sed -e 's/\.o/.c/g'` > meschach4.shar
  123. $(SHAR) `echo $(OLDLIST) | sed -e 's/\.o/.c/g'` > oldmeschach.shar
  124. $(SHAR) $(OTHERS) `echo $(TORTURE) | sed -e 's/\.o/.c/g'` \
  125. $(HLIST) DOC MACHINES > meschach0.shar
  126. clean:
  127. $(RM) *.o core asx5213a.mat iotort.dat
  128. cleanup:
  129. $(RM) *.o core asx5213a.mat iotort.dat *.a
  130. torture sptort ztorture memtort itertort mfuntort iotort
  131. alltorture: torture sptort ztorture memtort itertort mfuntort iotort
  132. torture:torture.o meschach.a
  133. $(CC) $(CFLAGS) $(DEFS) -o torture torture.o \
  134. meschach.a $(LIBS)
  135. emxbind torture
  136. sptort:sptort.o meschach.a
  137. $(CC) $(CFLAGS) $(DEFS) -o sptort sptort.o \
  138. meschach.a $(LIBS)
  139. emxbind sptort
  140. memtort: memtort.o meschach.a
  141. $(CC) $(CFLAGS) $(DEFS) -o memtort memtort.o \
  142. meschach.a $(LIBS)
  143. emxbind memtort
  144. ztorture:ztorture.o meschach.a
  145. $(CC) $(CFLAGS) $(DEFS) -o ztorture ztorture.o \
  146. meschach.a $(LIBS)
  147. emxbind ztorture
  148. itertort: itertort.o meschach.a
  149. $(CC) $(CFLAGS) $(DEFS) -o itertort itertort.o \
  150. meschach.a $(LIBS)
  151. emxbind itertort
  152. iotort: iotort.o meschach.a
  153. $(CC) $(CFLAGS) $(DEFS) -o iotort iotort.o \
  154. meschach.a $(LIBS)
  155. emxbind iotort
  156. mfuntort: mfuntort.o meschach.a
  157. $(CC) $(CFLAGS) $(DEFS) -o mfuntort mfuntort.o \
  158. meschach.a $(LIBS)
  159. emxbind mfuntort
  160. tstmove: tstmove.o meschach.a
  161. $(CC) $(CFLAGS) $(DEFS) -o tstmove tstmove.o \
  162. meschach.a $(LIBS)
  163. emxbind tstmove
  164. tstpxvec: tstpxvec.o meschach.a
  165. $(CC) $(CFLAGS) $(DEFS) -o tstpxvec tstpxvec.o \
  166. meschach.a $(LIBS)
  167. emxbind tstpxvec