changeset 5219:67ff35748e7e

Fix some native build targets * src/suitesparse.mk: depend on os for destinarion so dir * src/sundials-ida.mk: provide a seprate non windows build rule
author John Donoghue
date Wed, 20 Nov 2019 14:18:24 -0500
parents 62bdfe712ec6
children 3ed8bcdf4672
files src/suitesparse.mk src/sundials-ida.mk
diffstat 2 files changed, 33 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/suitesparse.mk	Tue Nov 19 08:33:53 2019 -0500
+++ b/src/suitesparse.mk	Wed Nov 20 14:18:24 2019 -0500
@@ -37,7 +37,6 @@
 endif
 
 $(PKG)_MAKE_OPTS = \
-    UNAME=Windows \
     CPPFLAGS="$($(PKG)_CPPFLAGS)" \
     CC='$(MXE_CC)' \
     CXX='$(MXE_CXX)' \
@@ -52,6 +51,14 @@
     LAPACK='-llapack' \
     CHOLMOD_CONFIG='-DNPARTITION'
 
+ifeq ($(MXE_WINDOWS_BUILD),yes)
+$(PKG)_MAKE_OPTS += \
+    UNAME=Windows 
+$(PKG)_SO_DIR := $($(PKG)_DESTDIR)$(HOST_BINDIR)
+else
+$(PKG)_SO_DIR := $($(PKG)_DESTDIR)$(HOST_LIBDIR)
+endif
+
 $(PKG)_cputype = $(shell uname -m | sed "s/\\ /_/g")
 $(PKG)_systype = $(shell uname -s)
 $(PKG)_METIS_BUILDDIR = build/$($(PKG)_systype)-$($(PKG)_cputype)
@@ -71,8 +78,9 @@
 
     # install metis
     mkdir -p $($(PKG)_DESTDIR)$(HOST_LIBDIR)
+    mkdir -p $($(PKG)_SO_DIR)
     mkdir -p $($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/
-    cp $(1)/metis-5.1.0/$($(PKG)_METIS_BUILDDIR)/libmetis/libmetis.* $($(PKG)_DESTDIR)$(HOST_BINDIR)
+    cp $(1)/metis-5.1.0/$($(PKG)_METIS_BUILDDIR)/libmetis/libmetis.* $($(PKG)_SO_DIR)
     cp $(1)/metis-5.1.0/include/metis.h $($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/
     chmod 755 $($(PKG)_DESTDIR)$(HOST_BINDIR)/libmetis.*
     chmod 644 $($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/metis.h
@@ -80,7 +88,7 @@
     # build all
     $(MAKE) -C '$(1)' -j '$(JOBS)' \
         $($(PKG)_MAKE_OPTS) \
-        MY_METIS_LIB=$($(PKG)_DESTDIR)$(HOST_BINDIR) \
+        MY_METIS_LIB=$($(PKG)_SO_DIR) \
         library
 
     # install libraries and headers
@@ -88,6 +96,6 @@
         $($(PKG)_MAKE_OPTS) \
         INSTALL_INCLUDE='$($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/' \
         INSTALL_LIB='$($(PKG)_DESTDIR)$(HOST_LIBDIR)' \
-        INSTALL_SO='$($(PKG)_DESTDIR)$(HOST_BINDIR)'
+        INSTALL_SO='$($(PKG)_SO_DIR)'
 endef
 
--- a/src/sundials-ida.mk	Tue Nov 19 08:33:53 2019 -0500
+++ b/src/sundials-ida.mk	Wed Nov 20 14:18:24 2019 -0500
@@ -18,6 +18,7 @@
     echo $($(PKG)_VERSION)
 endef
 
+ifeq ($(MXE_WINDOWS_BUILD),yes)
 define $(PKG)_BUILD
     mkdir '$(1).build'
     cd '$(1).build' && cmake \
@@ -43,3 +44,23 @@
         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
+endif