home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: Science / Science.zip / gmt_os2.zip / src / math / Makefile.os2 < prev    next >
Encoding:
Makefile  |  1996-11-22  |  3.8 KB  |  105 lines

  1. #
  2. #  @(#)Makefile 1.4 95/01/18 
  3. #  ====================================================
  4. #  Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
  5. #  Developed at SunSoft, a Sun Microsystems, Inc. business.
  6. #  Permission to use, copy, modify, and distribute this
  7. #  software is freely granted, provided that this notice 
  8. #  is preserved.
  9. #  ====================================================
  10. #
  11. # There are two options in making libm at fdlibm compile time:
  12. #     _IEEE_LIBM     --- IEEE libm; smaller, and somewhat faster
  13. #    _MULTI_LIBM    --- Support multi-standard at runtime by 
  14. #                imposing wrapper functions defined in 
  15. #                fdlibm.h:
  16. #                _IEEE_MODE     -- IEEE
  17. #                _XOPEN_MODE     -- X/OPEN
  18. #                _POSIX_MODE     -- POSIX/ANSI
  19. #                _SVID3_MODE     -- SVID
  20. #
  21. # Here is how to set up CFLAGS to create the desired libm at 
  22. # compile time:
  23. #
  24. #     CFLAGS = -D_IEEE_LIBM        ... IEEE libm (recommended)
  25. #    CFLAGS = -D_SVID3_MODE    ... Multi-standard supported
  26. #                        libm with SVID as the 
  27. #                        default standard
  28. #    CFLAGS = -D_XOPEN_MODE    ... Multi-standard supported
  29. #                        libm with XOPEN as the 
  30. #                        default standard
  31. #    CFLAGS = -D_POSIX_MODE    ... Multi-standard supported
  32. #                        libm with POSIX as the 
  33. #                        default standard
  34. #    CFLAGS =             ... Multi-standard supported
  35. #                        libm with IEEE as the 
  36. #                        default standard
  37. # NOTE: if scalb's second arguement is an int, then one must
  38. # define _SCALB_INT in CFLAGS. The default prototype of scalb
  39. # is double scalb(double, double)
  40. #
  41. #
  42. #
  43. # Default IEEE libm. Define __LITTLE_ENDIAN for 80x86 machines [OS/2 uses these]
  44. #
  45. CFLAGS = -D_IEEE_LIBM  -D__LITTLE_ENDIAN -O  -Zomf -Zsys -Zmt -Zstack 64000
  46. CC = gcc
  47. INCFILES = fdlibm.h
  48. AR       = emxomfar
  49. ARFLAGS  = rc
  50. %.obj : %.c
  51.     $(CC) -c $(CFLAGS) $<
  52. .INIT: $(INCFILES)
  53. .KEEP_STATE:
  54. src =     k_standard.c k_rem_pio2.c \
  55.     k_cos.c k_sin.c k_tan.c \
  56.     e_acos.c e_acosh.c e_asin.c e_atan2.c \
  57.     e_atanh.c e_cosh.c e_exp.c e_fmod.c \
  58.     e_gamma.c e_gamma_r.c e_hypot.c e_j0.c \
  59.     e_j1.c e_jn.c e_lgamma.c e_lgamma_r.c \
  60.     e_log.c e_log10.c e_pow.c e_rem_pio2.c e_remainder.c \
  61.     e_scalb.c e_sinh.c e_sqrt.c \
  62.     w_acos.c w_acosh.c w_asin.c w_atan2.c \
  63.     w_atanh.c w_cosh.c w_exp.c w_fmod.c \
  64.     w_gamma.c w_gamma_r.c w_hypot.c w_j0.c \
  65.     w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c \
  66.     w_log.c w_log10.c w_pow.c w_remainder.c \
  67.     w_scalb.c w_sinh.c w_sqrt.c \
  68.     s_asinh.c s_atan.c s_cbrt.c s_ceil.c s_copysign.c \
  69.     s_cos.c s_erf.c s_expm1.c s_fabs.c s_finite.c s_floor.c \
  70.     s_frexp.c s_ilogb.c s_isnan.c s_ldexp.c s_lib_version.c \
  71.     s_log1p.c s_logb.c s_matherr.c s_modf.c s_nextafter.c \
  72.     s_rint.c s_scalbn.c s_signgam.c s_significand.c s_sin.c \
  73.     s_tan.c s_tanh.c
  74. obj =     k_standard.obj k_rem_pio2.obj \
  75.     k_cos.obj k_sin.obj k_tan.obj \
  76.     e_acos.obj e_acosh.obj e_asin.obj e_atan2.obj \
  77.     e_atanh.obj e_cosh.obj e_exp.obj e_fmod.obj \
  78.     e_gamma.obj e_gamma_r.obj e_hypot.obj e_j0.obj \
  79.     e_j1.obj e_jn.obj e_lgamma.obj e_lgamma_r.obj \
  80.     e_log.obj e_log10.obj e_pow.obj e_rem_pio2.obj e_remainder.obj  \
  81.     e_scalb.obj e_sinh.obj e_sqrt.obj \
  82.     w_acos.obj w_acosh.obj w_asin.obj w_atan2.obj \
  83.     w_atanh.obj w_cosh.obj w_exp.obj w_fmod.obj \
  84.     w_gamma.obj w_gamma_r.obj w_hypot.obj w_j0.obj \
  85.     w_j1.obj w_jn.obj w_lgamma.obj w_lgamma_r.obj \
  86.     w_log.obj w_log10.obj w_pow.obj w_remainder.obj \
  87.     w_scalb.obj w_sinh.obj w_sqrt.obj \
  88.     s_asinh.obj s_atan.obj s_cbrt.obj s_ceil.obj s_copysign.obj \
  89.     s_cos.obj s_erf.obj s_expm1.obj s_fabs.obj s_finite.obj s_floor.obj \
  90.     s_frexp.obj s_ilogb.obj s_isnan.obj s_ldexp.obj s_lib_version.obj \
  91.     s_log1p.obj s_logb.obj s_matherr.obj s_modf.obj s_nextafter.obj \
  92.     s_rint.obj s_scalbn.obj s_signgam.obj s_significand.obj s_sin.obj \
  93.     s_tan.obj s_tanh.obj
  94. all: libm.lib 
  95. libm.lib : $(obj) 
  96.     $(AR) $(ARFLAGS)  $@ $?
  97. source: $(src) README
  98. clean: 
  99.     delete $(obj)
  100.