#-*- Makefile -*-
include ../../gnuwin32/MkRules
ifdef DEBUG
OPTFLAGS=$(G_FLAG) -O3 -Wall
DLLFLAGS=
else
OPTFLAGS=-O3 -Wall -pedantic
DLLFLAGS=-s
endif
.PHONY: cpy test
all: shared
static:
$(MAKE) -f Makefile.win cpy
$(MAKE) -f Makefile.win makeMakedeps
$(MAKE) -f Makefile.win libRmath.a
shared: static
$(MAKE) -f Makefile.win Rmath.dll
implib: libRmath.dll.a
cpy: stamp-src
stamp-src: $(SOURCES_NMATH)
$(CP) -p ../*.c .
touch $@
test: test.exe test-static.exe
test-CFLAGS=-I../../include
## see README for alternatives
test.exe: test.o
$(CC) -o $@ $< -L. Rmath.dll
$@
test-static.exe: test.o
$(CC) -o $@ $< -L. libRmath.a
$@
clean:
$(RM) $(SOURCES_NMATH) *.o *.d *.def Makedeps stamp-src
distclean: clean
$(RM) *.a Rmath.dll test*.exe
DEFS = -DHAVE_CONFIG_H -DMATHLIB_STANDALONE
CFLAGS=$(OPTFLAGS) -I.. -I../../include $(DEFS)
SOURCES_NMATH = \
mlutils.c \
d1mach.c i1mach.c \
fmax2.c fmin2.c fprec.c fround.c ftrunc.c \
sign.c fsign.c \
imax2.c imin2.c \
chebyshev.c log1p.c expm1.c lgammacor.c gammalims.c stirlerr.c bd0.c \
gamma.c lgamma.c gamma_cody.c beta.c lbeta.c polygamma.c \
bessel_i.c bessel_j.c bessel_k.c bessel_y.c \
choose.c \
snorm.c sexp.c \
dgamma.c pgamma.c qgamma.c rgamma.c \
dbeta.c pbeta.c qbeta.c rbeta.c \
dunif.c punif.c qunif.c runif.c \
dnorm.c pnorm.c qnorm.c rnorm.c \
dlnorm.c plnorm.c qlnorm.c rlnorm.c \
df.c pf.c qf.c rf.c dnf.c \
dt.c pt.c qt.c rt.c dnt.c \
dchisq.c pchisq.c qchisq.c rchisq.c rnchisq.c \
dbinom.c pbinom.c qbinom.c rbinom.c \
rmultinom.c \
dcauchy.c pcauchy.c qcauchy.c rcauchy.c \
dexp.c pexp.c qexp.c rexp.c \
dgeom.c pgeom.c qgeom.c rgeom.c \
dhyper.c phyper.c qhyper.c rhyper.c \
dnbinom.c pnbinom.c qnbinom.c rnbinom.c \
dpois.c ppois.c qpois.c rpois.c \
dweibull.c pweibull.c qweibull.c rweibull.c \
dlogis.c plogis.c qlogis.c rlogis.c \
dnchisq.c pnchisq.c qnchisq.c \
dnbeta.c pnbeta.c qnbeta.c \
pnf.c pnt.c qnf.c qnt.c \
ptukey.c qtukey.c \
toms708.c wilcox.c \
signrank.c
DEPENDS = $(SOURCES_NMATH:.c=.d)
libRmath.a: sunif.o $(SOURCES_NMATH:.c=.o)
Rmath.def: sunif.o $(SOURCES_NMATH:.c=.o)
$(ECHO) EXPORTS > $@
$(NM) $^ | $(SED) -n 's/^........ [BCDRT] _/ /p' >> $@
Rmath.dll: libRmath.a Rmath.def
$(DLL) $(DLLFLAGS) --shared -o $@ Rmath.def $^
libRmath.dll.a: Rmath.def
# Dependencies
makeMakedeps: $(DEPENDS)
@$(RM) Makedeps
@cat $(DEPENDS) >> Makedeps
-include Makedeps
syntax highlighted by Code2HTML, v. 0.9.1