Makefile 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. # Makefile for uClibc's math library
  2. # Copyright (C) 2001 by Lineo, inc.
  3. #
  4. # This math library is derived primarily from the Cephes Math Library,
  5. # copyright by Stephen L. Moshier <moshier@world.std.com>
  6. #
  7. # This program is free software; you can redistribute it and/or modify it under
  8. # the terms of the GNU Library General Public License as published by the Free
  9. # Software Foundation; either version 2 of the License, or (at your option) any
  10. # later version.
  11. #
  12. # This program is distributed in the hope that it will be useful, but WITHOUT
  13. # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  14. # FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more
  15. # details.
  16. #
  17. # You should have received a copy of the GNU Library General Public License
  18. # along with this program; if not, write to the Free Software Foundation, Inc.,
  19. # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  20. #
  21. TOPDIR=../../
  22. include $(TOPDIR)Rules.mak
  23. LIBM=../libm.a
  24. TARGET_CC= $(TOPDIR)extra/gcc-uClibc/$(TARGET_ARCH)-uclibc-gcc
  25. CSRC=acosh.c airy.c asin.c asinh.c atan.c atanh.c bdtr.c beta.c \
  26. btdtr.c cbrt.c chbevl.c chdtr.c clog.c cmplx.c const.c \
  27. cosh.c dawsn.c ei.c ellie.c ellik.c ellpe.c ellpj.c ellpk.c \
  28. exp.c exp10.c exp2.c expn.c fabs.c fac.c fdtr.c \
  29. fresnl.c gamma.c gdtr.c hyp2f1.c hyperg.c i0.c i1.c igami.c incbet.c \
  30. incbi.c igam.c isnan.c iv.c j0.c j1.c jn.c jv.c k0.c k1.c kn.c kolmogorov.c \
  31. log.c log2.c log10.c lrand.c nbdtr.c ndtr.c ndtri.c pdtr.c planck.c \
  32. polevl.c polmisc.c polylog.c polyn.c pow.c powi.c psi.c rgamma.c round.c \
  33. shichi.c sici.c sin.c sindg.c sinh.c spence.c stdtr.c struve.c \
  34. tan.c tandg.c tanh.c unity.c yn.c zeta.c zetac.c \
  35. sqrt.c floor.c setprec.c mtherr.c noncephes.c
  36. COBJS=$(patsubst %.c,%.o, $(CSRC))
  37. OBJS=$(COBJS)
  38. all: $(OBJS) $(LIBM)
  39. $(LIBM): ar-target
  40. ar-target: $(OBJS)
  41. $(AR) $(ARFLAGS) $(LIBM) $(OBJS)
  42. $(COBJS): %.o : %.c
  43. $(TARGET_CC) $(CFLAGS) -c $< -o $@
  44. $(STRIPTOOL) -x -R .note -R .comment $*.o
  45. $(OBJ): Makefile
  46. clean:
  47. rm -f *.[oa] *~ core
  48. #-----------------------------------------
  49. #all: libmd.a mtst dtestvec monot dcalc paranoia
  50. time-it: time-it.o
  51. $(CC) -o time-it time-it.o
  52. time-it.o: time-it.c
  53. $(CC) -O2 -c time-it.c
  54. dcalc: dcalc.o libmd.a
  55. $(CC) -o dcalc dcalc.o libmd.a
  56. mtst: mtst.o libmd.a
  57. $(CC) -v -o mtst mtst.o libmd.a
  58. mtst.o: mtst.c
  59. $(CC) -O2 -Wall -c mtst.c
  60. dtestvec: dtestvec.o libmd.a
  61. $(CC) -o dtestvec dtestvec.o libmd.a
  62. dtestvec.o: dtestvec.c
  63. $(CC) -g -c dtestvec.c
  64. monot: monot.o libmd.a
  65. $(CC) -o monot monot.o libmd.a
  66. monot.o: monot.c
  67. $(CC) -g -c monot.c
  68. paranoia: paranoia.o setprec.o libmd.a
  69. $(CC) -o paranoia paranoia.o setprec.o libmd.a
  70. paranoia.o: paranoia.c
  71. $(CC) $(CFLAGS) -Wno-implicit -c paranoia.c
  72. libmd.a: $(OBJS) $(INCS)
  73. $(AR) rv libmd.a $(OBJS)
  74. #clean:
  75. # rm -f *.o
  76. # rm -f mtst
  77. # rm -f paranoia
  78. # rm -f dcalc
  79. # rm -f dtestvec
  80. # rm -f monot
  81. # rm -f libmd.a
  82. # rm -f time-it
  83. # rm -f dtestvec