changeset 5503:1541641533a6

Keep size of "sunindextype" in sync with LAPACK (bug #58795). * src/sundials-ida.mk: Set size of sunindextype based on ENABLE_FORTRAN_INT64.
author Markus Meisinger <chloros2@gmx.de>
date Tue, 28 Jul 2020 17:10:46 +0200
parents beb3380b1665
children 9f9ed6a325bd
files src/sundials-ida.mk
diffstat 1 files changed, 47 insertions(+), 42 deletions(-) [+]
line wrap: on
line diff
--- a/src/sundials-ida.mk	Thu Jul 30 10:11:45 2020 -0400
+++ b/src/sundials-ida.mk	Tue Jul 28 17:10:46 2020 +0200
@@ -18,49 +18,54 @@
     echo $($(PKG)_VERSION)
 endef
 
+$(PKG)_CMAKE_FLAGS := \
+    -DEXAMPLES_ENABLE_C=OFF \
+    -DKLU_ENABLE=ON \
+    -DKLU_INCLUDE_DIR=$(HOST_INCDIR)/suitesparse \
+    -DKLU_LIBRARY_DIR=$(HOST_LIBDIR) \
+    -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
+    -DBUILD_ARKODE=OFF \
+    -DBUILD_CVODE=OFF \
+    -DBUILD_CVODES=OFF \
+    -DBUILD_IDA=ON \
+    -DBUILD_IDAS=OFF \
+    -DBUILD_KINSOL=OFF \
+    -DBUILD_CPODES=OFF
+
+# Keep "sunindextype" in sync with LAPACK (bug #58795)
+ifeq ($(ENABLE_FORTRAN_INT64),yes)
+    $(PKG)_CMAKE_FLAGS += -DSUNDIALS_INDEX_SIZE=64
+else
+    $(PKG)_CMAKE_FLAGS += -DSUNDIALS_INDEX_SIZE=32
+endif
+
 ifeq ($(MXE_WINDOWS_BUILD),yes)
-define $(PKG)_BUILD
-    mkdir '$(1).build'
-    cd '$(1).build' && cmake \
-        -DEXAMPLES_ENABLE=OFF \
-        -DKLU_ENABLE=ON \
-        -DKLU_INCLUDE_DIR=$(HOST_INCDIR)/suitesparse \
-        -DKLU_LIBRARY_DIR=$(HOST_LIBDIR) \
-        -DSUITESPARSECONFIG_LIBRARY=$(HOST_LIBDIR)/libsuitesparseconfig.dll.a \
-        -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
-        -DBUILD_ARKODE=OFF \
-        -DBUILD_CVODE=OFF \
-        -DBUILD_CVODES=OFF \
-        -DBUILD_IDA=ON \
-        -DBUILD_IDAS=OFF \
-        -DBUILD_KINSOL=OFF \
-        -DBUILD_CPODES=OFF \
-        '$(1)'
-    $(MAKE) -C '$(1).build' -j '$(JOBS)' install DESTDIR='$(3)' VERBOSE=1
+
+    $(PKG)_CMAKE_FLAGS += \
+        -DSUITESPARSECONFIG_LIBRARY=$(HOST_LIBDIR)/libsuitesparseconfig.dll.a
 
-    if [ $(MXE_SYSTEM) = mingw ]; then \
-        echo "Install dlls"; \
-        $(INSTALL) -d '$(3)$(HOST_BINDIR)'; \
-        mv '$(3)$(HOST_LIBDIR)/'libsundials*.dll '$(3)$(HOST_BINDIR)/'; \
-    fi
-endef
+    define $(PKG)_BUILD
+        mkdir '$(1).build'
+        cd '$(1).build' && cmake \
+            $($(PKG)_CMAKE_FLAGS) \
+            '$(1)'
+        $(MAKE) -C '$(1).build' -j '$(JOBS)' install DESTDIR='$(3)' VERBOSE=1
+
+        if [ $(MXE_SYSTEM) = mingw ]; then \
+            echo "Install dlls"; \
+            $(INSTALL) -d '$(3)$(HOST_BINDIR)'; \
+            mv '$(3)$(HOST_LIBDIR)/'libsundials*.dll '$(3)$(HOST_BINDIR)/'; \
+        fi
+    endef
+
 else
-define $(PKG)_BUILD
-    mkdir '$(1).build'
-    cd '$(1).build' && cmake \
-        -DEXAMPLES_ENABLE=OFF \
-        -DKLU_ENABLE=ON \
-        -DKLU_INCLUDE_DIR=$(HOST_INCDIR)/suitesparse \
-        -DKLU_LIBRARY_DIR=$(HOST_LIBDIR) \
-        -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
-        -DBUILD_ARKODE=OFF \
-        -DBUILD_CVODE=OFF \
-        -DBUILD_CVODES=OFF \
-        -DBUILD_IDA=ON \
-        -DBUILD_IDAS=OFF \
-        -DBUILD_KINSOL=OFF \
-        -DBUILD_CPODES=OFF \
-        '$(1)'
-    $(MAKE) -C '$(1).build' -j '$(JOBS)' install VERBOSE=1
-endef
+
+    define $(PKG)_BUILD
+        mkdir '$(1).build'
+        cd '$(1).build' && cmake \
+            $($(PKG)_CMAKE_FLAGS) \
+            '$(1)'
+        $(MAKE) -C '$(1).build' -j '$(JOBS)' install VERBOSE=1
+    endef
+
 endif