# Makefile for the "num" (exact rational arithmetic) library !include ..\..\config\Makefile.nt # Compilation options CC=$(BYTECC) CFLAGS=-O -I.\bignum\h -I..\..\byterun $(BYTECCCOMPOPTS) CAMLC=..\..\boot\ocamlrun ..\..\boot\ocamlc -I ..\..\boot CAMLOPT=..\..\boot\ocamlrun ..\..\ocamlopt -I ..\..\stdlib CAMLOBJS=int_misc.cmo string_misc.cmo nat.cmo big_int.cmo arith_flags.cmo \ ratio.cmo num.cmo arith_status.cmo CMIFILES=big_int.cmi nat.cmi num.cmi ratio.cmi arith_status.cmi COBJS=nat_stubs.obj all: libnums.lib nums.cma $(CMIFILES) allopt: libnums.lib nums.cmxa $(CMIFILES) nums.cma: $(CAMLOBJS) $(CAMLC) -a -o nums.cma $(CAMLOBJS) nums.cmxa: $(CAMLOBJS:.cmo=.cmx) $(CAMLOPT) -a -o nums.cmxa $(CAMLOBJS:.cmo=.cmx) libnums.lib: bignum\libbignum.lib $(COBJS) $(MKLIB)libnums.lib bignum\libbignum.lib $(COBJS) bignum\libbignum.lib: cd bignum & $(MAKEREC) $(CAMLOBJS:.cmo=.cmx): ..\..\ocamlopt install: cp libnums.lib $(LIBDIR)\libnums.lib cp nums.cma $(CMIFILES) $(LIBDIR) installopt: cp $(CAMLOBJS:.cmo=.cmx) nums.cmxa nums.lib $(LIBDIR) partialclean: rm -f *.cm* clean: partialclean rm -f *.lib *.obj cd bignum & $(MAKEREC) scratch cd test & $(MAKEREC) clean .SUFFIXES: .ml .mli .cmi .cmo .cmx .mli.cmi: $(CAMLC) -c $(COMPFLAGS) $< .ml.cmo: $(CAMLC) -c $(COMPFLAGS) $< .ml.cmx: $(CAMLOPT) -c $(COMPFLAGS) $< nat_stubs.obj: nat.h depend: sed -e "s/\.o/.obj/g" .depend > .depend.nt !include .depend.nt