aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2022-07-20 19:36:25 +0200
committerTristan Gingold <tgingold@free.fr>2022-07-20 19:36:25 +0200
commit76ce880bef54d80cfd5a55817b203616f50de823 (patch)
treed615ae8454d92233e38a524436bc355e8cfd68a1 /src
parent158b4c6fd957b77dfcc01e7a89cca5b8bad277d8 (diff)
downloadghdl-76ce880bef54d80cfd5a55817b203616f50de823.tar.gz
ghdl-76ce880bef54d80cfd5a55817b203616f50de823.tar.bz2
ghdl-76ce880bef54d80cfd5a55817b203616f50de823.zip
configure: add --with-sundials (preliminary work)
Diffstat (limited to 'src')
-rw-r--r--src/grt/Makefile.inc12
-rw-r--r--src/grt/grt-no_sundials_c.c32
2 files changed, 44 insertions, 0 deletions
diff --git a/src/grt/Makefile.inc b/src/grt/Makefile.inc
index 71c202e11..c8e0d9f06 100644
--- a/src/grt/Makefile.inc
+++ b/src/grt/Makefile.inc
@@ -110,6 +110,12 @@ ifeq ($(GRT_USE_PTHREADS),y)
GRT_EXTRA_LIB+=-lpthread
endif
+ifeq ($(with_sundials),true)
+ GRT_ADD_OBJS+=grt-sundials_c.o
+else
+ GRT_ADD_OBJS+=grt-no_sundials_c.o
+endif
+
GRT_LIBBACKTRACE=
ifneq ($(LIBBACKTRACE),)
GRT_LIBBACKTRACE=libbacktrace.a
@@ -217,6 +223,12 @@ pic/grt-cdynload.o: $(GRTSRCDIR)/grt-cdynload.c
grt-cthreads.o: $(GRTSRCDIR)/grt-cthreads.c
$(GRT_C_COMPILE)
+grt-sundials_c.o: $(GRTSRCDIR)/grt-sundials_c.c
+ $(GRT_C_COMPILE) $(sundials_incflags)
+
+grt-no_sundials_c.o: $(GRTSRCDIR)/grt-no_sundials_c.c
+ $(GRT_C_COMPILE)
+
fstapi.o: $(GRTSRCDIR)/fst/fstapi.c
$(GRT_C_COMPILE) -I$(GRTSRCDIR)/fst
diff --git a/src/grt/grt-no_sundials_c.c b/src/grt/grt-no_sundials_c.c
new file mode 100644
index 000000000..87e7bb7a5
--- /dev/null
+++ b/src/grt/grt-no_sundials_c.c
@@ -0,0 +1,32 @@
+#include <stddef.h>
+typedef double realtype;
+
+realtype *
+grt_sundials_get_yy_vec(void)
+{
+ return NULL;
+}
+
+realtype *
+grt_sundials_get_yp_vec(void)
+{
+ return NULL;
+}
+
+int
+grt_sundials_init(int sz)
+{
+ return -1;
+}
+
+int
+grt_sundials_start (void)
+{
+ return -1;
+}
+
+int
+grt_sundials_solve(realtype t0, realtype *tn, int *res)
+{
+ return 1;
+}