# Generated by tools/vendor.sh from tools/Makevars.in. Edit the template.
#
# SUNDIALS is compiled into a static library under inst/lib for other packages
# to link via sundials::LdFlags(); the package's own .so is just a stub.
# On Windows R_ARCH is /x64, so the archive lands in inst/lib/x64/.

PKG_CPPFLAGS = -I../inst/include -Isundials/sundials -DNDEBUG -DSUNDIALS_R_NO_DEPRECATION_WARNINGS

SUNDIALS_OBJECTS = \
  sundials/arkode/arkode.o \
  sundials/arkode/arkode_adapt.o \
  sundials/arkode/arkode_arkstep.o \
  sundials/arkode/arkode_arkstep_io.o \
  sundials/arkode/arkode_arkstep_nls.o \
  sundials/arkode/arkode_bandpre.o \
  sundials/arkode/arkode_bbdpre.o \
  sundials/arkode/arkode_butcher.o \
  sundials/arkode/arkode_butcher_dirk.o \
  sundials/arkode/arkode_butcher_erk.o \
  sundials/arkode/arkode_cli.o \
  sundials/arkode/arkode_erkstep.o \
  sundials/arkode/arkode_erkstep_io.o \
  sundials/arkode/arkode_forcingstep.o \
  sundials/arkode/arkode_interp.o \
  sundials/arkode/arkode_io.o \
  sundials/arkode/arkode_ls.o \
  sundials/arkode/arkode_lsrkstep.o \
  sundials/arkode/arkode_lsrkstep_io.o \
  sundials/arkode/arkode_mri_tables.o \
  sundials/arkode/arkode_mristep.o \
  sundials/arkode/arkode_mristep_controller.o \
  sundials/arkode/arkode_mristep_extsts.o \
  sundials/arkode/arkode_mristep_io.o \
  sundials/arkode/arkode_mristep_nls.o \
  sundials/arkode/arkode_relaxation.o \
  sundials/arkode/arkode_root.o \
  sundials/arkode/arkode_splittingstep.o \
  sundials/arkode/arkode_splittingstep_coefficients.o \
  sundials/arkode/arkode_sprk.o \
  sundials/arkode/arkode_sprkstep.o \
  sundials/arkode/arkode_sprkstep_io.o \
  sundials/arkode/arkode_sunstepper.o \
  sundials/arkode/arkode_user_controller.o \
  sundials/cvodes/cvodea.o \
  sundials/cvodes/cvodea_io.o \
  sundials/cvodes/cvodes.o \
  sundials/cvodes/cvodes_bandpre.o \
  sundials/cvodes/cvodes_bbdpre.o \
  sundials/cvodes/cvodes_cli.o \
  sundials/cvodes/cvodes_diag.o \
  sundials/cvodes/cvodes_io.o \
  sundials/cvodes/cvodes_ls.o \
  sundials/cvodes/cvodes_nls.o \
  sundials/cvodes/cvodes_nls_sim.o \
  sundials/cvodes/cvodes_nls_stg.o \
  sundials/cvodes/cvodes_nls_stg1.o \
  sundials/cvodes/cvodes_proj.o \
  sundials/cvodes/cvodes_resize.o \
  sundials/idas/idaa.o \
  sundials/idas/idaa_io.o \
  sundials/idas/idas.o \
  sundials/idas/idas_bbdpre.o \
  sundials/idas/idas_cli.o \
  sundials/idas/idas_ic.o \
  sundials/idas/idas_io.o \
  sundials/idas/idas_ls.o \
  sundials/idas/idas_nls.o \
  sundials/idas/idas_nls_sim.o \
  sundials/idas/idas_nls_stg.o \
  sundials/kinsol/kinsol.o \
  sundials/kinsol/kinsol_aa.o \
  sundials/kinsol/kinsol_bbdpre.o \
  sundials/kinsol/kinsol_cli.o \
  sundials/kinsol/kinsol_io.o \
  sundials/kinsol/kinsol_ls.o \
  sundials/kinsol/kinsol_orth.o \
  sundials/nvector/manyvector/nvector_manyvector.o \
  sundials/nvector/serial/nvector_serial.o \
  sundials/sunadaptcontroller/imexgus/sunadaptcontroller_imexgus.o \
  sundials/sunadaptcontroller/mrihtol/sunadaptcontroller_mrihtol.o \
  sundials/sunadaptcontroller/soderlind/sunadaptcontroller_soderlind.o \
  sundials/sunadjointcheckpointscheme/fixed/sunadjointcheckpointscheme_fixed.o \
  sundials/sundials/sundatanode/sundatanode_inmem.o \
  sundials/sundials/sundials_adaptcontroller.o \
  sundials/sundials/sundials_adjointcheckpointscheme.o \
  sundials/sundials/sundials_adjointstepper.o \
  sundials/sundials/sundials_band.o \
  sundials/sundials/sundials_cli.o \
  sundials/sundials/sundials_context.o \
  sundials/sundials/sundials_datanode.o \
  sundials/sundials/sundials_dense.o \
  sundials/sundials/sundials_direct.o \
  sundials/sundials/sundials_domeigestimator.o \
  sundials/sundials/sundials_errors.o \
  sundials/sundials/sundials_futils.o \
  sundials/sundials/sundials_hashmap.o \
  sundials/sundials/sundials_iterative.o \
  sundials/sundials/sundials_linearsolver.o \
  sundials/sundials/sundials_logger.o \
  sundials/sundials/sundials_math.o \
  sundials/sundials/sundials_matrix.o \
  sundials/sundials/sundials_memory.o \
  sundials/sundials/sundials_nonlinearsolver.o \
  sundials/sundials/sundials_nvector.o \
  sundials/sundials/sundials_nvector_senswrapper.o \
  sundials/sundials/sundials_profiler.o \
  sundials/sundials/sundials_stepper.o \
  sundials/sundials/sundials_version.o \
  sundials/sundomeigest/power/sundomeigest_power.o \
  sundials/sunlinsol/band/sunlinsol_band.o \
  sundials/sunlinsol/dense/sunlinsol_dense.o \
  sundials/sunlinsol/pcg/sunlinsol_pcg.o \
  sundials/sunlinsol/spbcgs/sunlinsol_spbcgs.o \
  sundials/sunlinsol/spfgmr/sunlinsol_spfgmr.o \
  sundials/sunlinsol/spgmr/sunlinsol_spgmr.o \
  sundials/sunlinsol/sptfqmr/sunlinsol_sptfqmr.o \
  sundials/sunmatrix/band/sunmatrix_band.o \
  sundials/sunmatrix/dense/sunmatrix_dense.o \
  sundials/sunmatrix/sparse/sunmatrix_sparse.o \
  sundials/sunmemory/system/sundials_system_memory.o \
  sundials/sunnonlinsol/auto/sunnonlinsol_auto.o \
  sundials/sunnonlinsol/fixedpoint/sunnonlinsol_fixedpoint.o \
  sundials/sunnonlinsol/newton/sunnonlinsol_newton.o

LIBDIR = ../inst/lib$(R_ARCH)
STATICLIB = $(LIBDIR)/libsundials.a

OBJECTS = init.o

all: $(SHLIB) $(STATICLIB)

# force the archive to build (and its objects) before the stub .so links
$(SHLIB): $(STATICLIB)

$(STATICLIB): $(SUNDIALS_OBJECTS)
	@mkdir -p $(LIBDIR)
	$(AR) rcs $@ $(SUNDIALS_OBJECTS)
	$(RANLIB) $@

clean:
	rm -f $(SUNDIALS_OBJECTS) $(OBJECTS) $(SHLIB) $(STATICLIB)

.PHONY: all clean
