Mercurial > mxe-octave
changeset 6873:e7e566396211
SuiteSparse: Update to 7.2.0
* src/suitesparse.mk: Update version and checksum. Adapt build rules.
* src/suitesparse-1-fixes.patch, src/suitesparse-2-metis.patch: Remove patches
that are no longer needed.
* src/glpk-1-fixes.patch: Remove workaround for older SuiteSparse version.
* dist-files.mk: Remove deleted files from list.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Tue, 26 Sep 2023 12:14:45 +0200 |
parents | 67d42de94b0a |
children | fff6ec3b0cf5 |
files | dist-files.mk src/glpk-1-fixes.patch src/suitesparse-1-fixes.patch src/suitesparse-2-metis.patch src/suitesparse.mk |
diffstat | 5 files changed, 18 insertions(+), 977 deletions(-) [+] |
line wrap: on
line diff
--- a/dist-files.mk Tue Sep 26 11:14:59 2023 +0200 +++ b/dist-files.mk Tue Sep 26 12:14:45 2023 +0200 @@ -736,8 +736,6 @@ src-msys-zlib.mk \ stable-octave-1-gnulib.patch \ stable-octave.mk \ - suitesparse-1-fixes.patch \ - suitesparse-2-metis.patch \ suitesparse.mk \ sundials-ida.mk \ t4k_common.mk \
--- a/src/glpk-1-fixes.patch Tue Sep 26 11:14:59 2023 +0200 +++ b/src/glpk-1-fixes.patch Tue Sep 26 12:14:45 2023 +0200 @@ -90,20 +90,6 @@ +simplex/spydual.c ## eof ## -diff -ur glpk-4.65.orig/src/draft/glpmat.c glpk-4.65/src/draft/glpmat.c ---- glpk-4.65.orig/src/draft/glpmat.c 2019-02-20 15:21:37.117944413 -0500 -+++ glpk-4.65/src/draft/glpmat.c 2019-02-20 15:22:58.407893375 -0500 -@@ -25,8 +25,8 @@ - #include "env.h" - #include "glpmat.h" - #include "qmd.h" --#include "amd.h" --#include "colamd.h" -+#include <suitesparse/amd.h> -+#include <suitesparse/colamd.h> - - /*---------------------------------------------------------------------- - -- check_fvs - check sparse vector in full-vector storage format. diff -ur glpk-4.65.orig/src/env/stdc.c glpk-4.65/src/env/stdc.c --- glpk-4.65.orig/src/env/stdc.c 2019-02-20 15:29:18.821040444 -0500 +++ glpk-4.65/src/env/stdc.c 2019-02-20 15:40:06.948676811 -0500
--- a/src/suitesparse-1-fixes.patch Tue Sep 26 11:14:59 2023 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,814 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -Contains ad hoc patches for cross building. - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Tony Theodore <tonyt@logyst.com> -Date: Tue, 21 Nov 2017 00:39:21 +1100 -Subject: [PATCH 1/3] mingw-w64-Use-a-not-lib-as-AR_TARGET-extension - -taken from: -https://github.com/Alexpux/MINGW-packages/blob/6d1afc34842f2faf6c50c04e5904cdb8b7f20e3b/mingw-w64-suitesparse/0001-mingw-w64-Use-a-not-lib-as-AR_TARGET-extension.patch - -diff --git a/SuiteSparse_config/SuiteSparse_config.mk b/SuiteSparse_config/SuiteSparse_config.mk -index 1111111..2222222 100644 ---- a/SuiteSparse_config/SuiteSparse_config.mk -+++ b/SuiteSparse_config/SuiteSparse_config.mk -@@ -440,7 +441,7 @@ SO_OPTS = $(LDFLAGS) - - ifeq ($(UNAME),Windows) - # Cygwin Make on Windows -- AR_TARGET = $(LIBRARY).lib -+ AR_TARGET = $(LIBRARY).a - SO_TARGET = $(LIBRARY).dll - # The following two links are just garbage copies of the real target - # they aren't actually supported by this OS - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Tony Theodore <tonyt@logyst.com> -Date: Tue, 21 Nov 2017 00:41:07 +1100 -Subject: [PATCH 2/3] - mingw-w64-Set-SO_OPTS--shared-move-dlls-create-import-libs - -taken from: -https://github.com/Alexpux/MINGW-packages/blob/6d1afc34842f2faf6c50c04e5904cdb8b7f20e3b/mingw-w64-suitesparse/0002-mingw-w64-Set-SO_OPTS--shared-move-dlls-create-import-libs.patch - -diff --git a/AMD/Lib/Makefile b/AMD/Lib/Makefile -index 1111111..2222222 100644 ---- a/AMD/Lib/Makefile -+++ b/AMD/Lib/Makefile -@@ -81,28 +81,24 @@ libamdf77.a: $(AMDF77) - #------------------------------------------------------------------------------- - - # install AMD --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/amd.h $(INSTALL_INCLUDE) - $(CP) ../Doc/AMD_UserGuide.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/AMD_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/amd.h - chmod 644 $(INSTALL_DOC)/AMD_UserGuide.pdf - chmod 644 $(INSTALL_DOC)/AMD_README.txt - - # uninstall AMD - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/amd.h - $(RM) $(INSTALL_DOC)/AMD_UserGuide.pdf - $(RM) $(INSTALL_DOC)/AMD_README.txt -diff --git a/BTF/Lib/Makefile b/BTF/Lib/Makefile -index 1111111..2222222 100644 ---- a/BTF/Lib/Makefile -+++ b/BTF/Lib/Makefile -@@ -66,25 +66,21 @@ btf_l_strongcomp.o: ../Source/btf_strongcomp.c - #------------------------------------------------------------------------------- - - # install BTF --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/btf.h $(INSTALL_INCLUDE) - $(CP) ../README.txt $(INSTALL_DOC)/BTF_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/btf.h - chmod 644 $(INSTALL_DOC)/BTF_README.txt - - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/btf.h - $(RM) $(INSTALL_DOC)/BTF_README.txt - -diff --git a/CAMD/Lib/Makefile b/CAMD/Lib/Makefile -index 1111111..2222222 100644 ---- a/CAMD/Lib/Makefile -+++ b/CAMD/Lib/Makefile -@@ -62,28 +62,24 @@ $(AR_TARGET): $(OBJ) - #------------------------------------------------------------------------------- - - # install CAMD --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/camd.h $(INSTALL_INCLUDE) - $(CP) ../Doc/CAMD_UserGuide.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/CAMD_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/camd.h - chmod 644 $(INSTALL_DOC)/CAMD_UserGuide.pdf - chmod 644 $(INSTALL_DOC)/CAMD_README.txt - - # uninstall CAMD - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/camd.h - $(RM) $(INSTALL_DOC)/CAMD_UserGuide.pdf - $(RM) $(INSTALL_DOC)/CAMD_README.txt -diff --git a/CCOLAMD/Lib/Makefile b/CCOLAMD/Lib/Makefile -index 1111111..2222222 100644 ---- a/CCOLAMD/Lib/Makefile -+++ b/CCOLAMD/Lib/Makefile -@@ -49,25 +49,21 @@ distclean: clean - - $(RM) -r $(PURGE) - - # install CCOLAMD --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/ccolamd.h $(INSTALL_INCLUDE) - $(CP) ../README.txt $(INSTALL_DOC)/CCOLAMD_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/ccolamd.h - chmod 644 $(INSTALL_DOC)/CCOLAMD_README.txt - - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/ccolamd.h - $(RM) $(INSTALL_DOC)/CCOLAMD_README.txt - -diff --git a/CHOLMOD/Lib/Makefile b/CHOLMOD/Lib/Makefile -index 1111111..2222222 100644 ---- a/CHOLMOD/Lib/Makefile -+++ b/CHOLMOD/Lib/Makefile -@@ -535,29 +535,25 @@ cholmod_l_gpu.o: ../GPU/cholmod_gpu.c - #------------------------------------------------------------------------------- - - # install CHOLMOD --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CXX) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/cholmod*.h $(INSTALL_INCLUDE) - $(RM) $(INSTALL_INCLUDE)/cholmod_internal.h - $(CP) ../Doc/CHOLMOD_UserGuide.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/CHOLMOD_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/cholmod*.h - chmod 644 $(INSTALL_DOC)/CHOLMOD_UserGuide.pdf - chmod 644 $(INSTALL_DOC)/CHOLMOD_README.txt - - # uninstall CHOLMOD - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/cholmod*.h - $(RM) $(INSTALL_DOC)/CHOLMOD_UserGuide.pdf - $(RM) $(INSTALL_DOC)/CHOLMOD_README.txt -diff --git a/COLAMD/Lib/Makefile b/COLAMD/Lib/Makefile -index 1111111..2222222 100644 ---- a/COLAMD/Lib/Makefile -+++ b/COLAMD/Lib/Makefile -@@ -49,25 +49,21 @@ distclean: clean - - $(RM) -r $(PURGE) - - # install COLAMD --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/colamd.h $(INSTALL_INCLUDE) - $(CP) ../README.txt $(INSTALL_DOC)/COLAMD_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/colamd.h - chmod 644 $(INSTALL_DOC)/COLAMD_README.txt - - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/colamd.h - $(RM) $(INSTALL_DOC)/COLAMD_README.txt - -diff --git a/CXSparse/Lib/Makefile b/CXSparse/Lib/Makefile -index 1111111..2222222 100644 ---- a/CXSparse/Lib/Makefile -+++ b/CXSparse/Lib/Makefile -@@ -113,26 +113,22 @@ distclean: clean - - $(RM) -r $(PURGE) - - # install CXSparse --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(CS) -+$(INSTALL_SO)/$(SO_TARGET): $(CS) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/cs.h $(INSTALL_INCLUDE) - $(CP) ../README.txt $(INSTALL_DOC)/CXSPARSE_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/cs.h - chmod 644 $(INSTALL_DOC)/CXSPARSE_README.txt - - # uninstall CXSparse - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/cs.h - $(RM) $(INSTALL_DOC)/CXSPARSE_README.txt - -diff --git a/CXSparse_newfiles/Lib/Makefile b/CXSparse_newfiles/Lib/Makefile -index 1111111..2222222 100644 ---- a/CXSparse_newfiles/Lib/Makefile -+++ b/CXSparse_newfiles/Lib/Makefile -@@ -113,26 +113,22 @@ distclean: clean - - $(RM) -r $(PURGE) - - # install CXSparse --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(CS) -+$(INSTALL_SO)/$(SO_TARGET): $(CS) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/cs.h $(INSTALL_INCLUDE) - $(CP) ../README.txt $(INSTALL_DOC)/CXSPARSE_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/cs.h - chmod 644 $(INSTALL_DOC)/CXSPARSE_README.txt - - # uninstall CXSparse - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/cs.h - $(RM) $(INSTALL_DOC)/CXSPARSE_README.txt - -diff --git a/GPUQREngine/Lib/Makefile b/GPUQREngine/Lib/Makefile -index 1111111..2222222 100644 ---- a/GPUQREngine/Lib/Makefile -+++ b/GPUQREngine/Lib/Makefile -@@ -129,24 +129,20 @@ $(AR_TARGET): $(OBJS) - #------------------------------------------------------------------------------- - - # install GPUQREngine. Note that the include files are not installed. --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJS) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJS) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CXX) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../README.txt $(INSTALL_DOC)/GPUQRENGINE_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_DOC)/GPUQRENGINE_README.txt - - # uninstall GPUQREngine - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_DOC)/GPUQRENGINE_README.txt - - #------------------------------------------------------------------------------- -diff --git a/KLU/Lib/Makefile b/KLU/Lib/Makefile -index 1111111..2222222 100644 ---- a/KLU/Lib/Makefile -+++ b/KLU/Lib/Makefile -@@ -263,28 +263,24 @@ klu_l_memory.o: ../Source/klu_memory.c - #------------------------------------------------------------------------------- - - # install KLU --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/klu.h $(INSTALL_INCLUDE) - $(CP) ../Doc/KLU_UserGuide.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/KLU_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/klu.h - chmod 644 $(INSTALL_DOC)/KLU_UserGuide.pdf - chmod 644 $(INSTALL_DOC)/KLU_README.txt - - # uninstall KLU - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/klu.h - $(RM) $(INSTALL_DOC)/KLU_UserGuide.pdf - $(RM) $(INSTALL_DOC)/KLU_README.txt -diff --git a/LDL/Lib/Makefile b/LDL/Lib/Makefile -index 1111111..2222222 100644 ---- a/LDL/Lib/Makefile -+++ b/LDL/Lib/Makefile -@@ -46,28 +46,24 @@ clean: - - $(RM) -r $(CLEAN) - - # install LDL --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/ldl.h $(INSTALL_INCLUDE) - $(CP) ../Doc/ldl_userguide.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/LDL_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/ldl.h - chmod 644 $(INSTALL_DOC)/ldl_userguide.pdf - chmod 644 $(INSTALL_DOC)/LDL_README.txt - - # uninstall LDL - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/ldl.h - $(RM) $(INSTALL_DOC)/ldl_userguide.pdf - $(RM) $(INSTALL_DOC)/LDL_README.txt -diff --git a/Makefile b/Makefile -index 1111111..2222222 100644 ---- a/Makefile -+++ b/Makefile -@@ -63,13 +63,13 @@ ifeq (,$(MY_METIS_LIB)) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) -- - $(CP) lib/libmetis.* $(INSTALL_LIB) -+ - $(CP) lib/libmetis.* $(INSTALL_SO) - - $(CP) metis-5.1.0/manual/manual.pdf $(INSTALL_DOC)/METIS_manual.pdf - - $(CP) metis-5.1.0/README.txt $(INSTALL_DOC)/METIS_README.txt - # the following is needed only on the Mac, so *.dylib is hardcoded: - $(SO_INSTALL_NAME) $(INSTALL_LIB)/libmetis.dylib $(INSTALL_LIB)/libmetis.dylib - - $(CP) include/metis.h $(INSTALL_INCLUDE) -- chmod 755 $(INSTALL_LIB)/libmetis.* -+ chmod 755 $(INSTALL_SO)/libmetis.* - chmod 644 $(INSTALL_INCLUDE)/metis.h - chmod 644 $(INSTALL_DOC)/METIS_manual.pdf - chmod 644 $(INSTALL_DOC)/METIS_README.txt -diff --git a/RBio/Lib/Makefile b/RBio/Lib/Makefile -index 1111111..2222222 100644 ---- a/RBio/Lib/Makefile -+++ b/RBio/Lib/Makefile -@@ -60,25 +60,21 @@ RBio_i.o: ../Source/RBio.c - #------------------------------------------------------------------------------- - - # install RBio --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/RBio.h $(INSTALL_INCLUDE) - $(CP) ../README.txt $(INSTALL_DOC)/RBIO_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/RBio.h - chmod 644 $(INSTALL_DOC)/RBIO_README.txt - - # uninstall RBio - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/RBio.h - $(RM) $(INSTALL_DOC)/RBIO_README.txt -diff --git a/SPQR/Lib/Makefile b/SPQR/Lib/Makefile -index 1111111..2222222 100644 ---- a/SPQR/Lib/Makefile -+++ b/SPQR/Lib/Makefile -@@ -242,22 +242,20 @@ spqrgpu_computeFrontStaging.o: ../SPQRGPU/spqrgpu_computeFrontStaging.cpp - #------------------------------------------------------------------------------- - - # install SPQR --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CXX) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/SuiteSparseQR.hpp $(INSTALL_INCLUDE) - $(CP) ../Include/SuiteSparseQR_C.h $(INSTALL_INCLUDE) - $(CP) ../Include/SuiteSparseQR_definitions.h $(INSTALL_INCLUDE) - $(CP) ../Include/spqr.hpp $(INSTALL_INCLUDE) - $(CP) ../Doc/spqr_user_guide.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/SPQR_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/SuiteSparseQR.hpp - chmod 644 $(INSTALL_INCLUDE)/SuiteSparseQR_C.h - chmod 644 $(INSTALL_INCLUDE)/SuiteSparseQR_definitions.h -@@ -267,9 +265,7 @@ $(INSTALL_LIB)/$(SO_TARGET): $(OBJ) - - # uninstall SPQR - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/SuiteSparseQR.hpp - $(RM) $(INSTALL_INCLUDE)/SuiteSparseQR_C.h - $(RM) $(INSTALL_INCLUDE)/SuiteSparseQR_definitions.h -diff --git a/SuiteSparse_GPURuntime/Lib/Makefile b/SuiteSparse_GPURuntime/Lib/Makefile -index 1111111..2222222 100644 ---- a/SuiteSparse_GPURuntime/Lib/Makefile -+++ b/SuiteSparse_GPURuntime/Lib/Makefile -@@ -70,23 +70,19 @@ SuiteSparseGPU_Workspace_transfer.o: ../Source/SuiteSparseGPU_Workspace_transfer - #------------------------------------------------------------------------------- - - # install SuiteSparse_GPURuntime (just the library, not the include files) --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJS) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJS) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CXX) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../README.txt $(INSTALL_DOC)/GPURUNTIME_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_DOC)/GPURUNTIME_README.txt - - # uninstall SuiteSparse_GPURuntime - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_DOC)/GPURUNTIME_README.txt - -diff --git a/SuiteSparse_config/Makefile b/SuiteSparse_config/Makefile -index 1111111..2222222 100644 ---- a/SuiteSparse_config/Makefile -+++ b/SuiteSparse_config/Makefile -@@ -44,27 +44,22 @@ clean: - - $(RM) -r $(CLEAN) - - # install SuiteSparse_config --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) SuiteSparse_config.h $(INSTALL_INCLUDE) - $(CP) README.txt $(INSTALL_DOC)/SUITESPARSECONFIG_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -- chmod 755 $(INSTALL_LIB)/$(SO_PLAIN) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/SuiteSparse_config.h - chmod 644 $(INSTALL_DOC)/SUITESPARSECONFIG_README.txt - - # uninstall SuiteSparse_config - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/SuiteSparse_config.h - $(RM) $(INSTALL_DOC)/SUITESPARSECONFIG_README.txt - ( cd xerbla ; $(MAKE) uninstall ) -diff -urN SuiteSparse-5.11.0/SuiteSparse_config/SuiteSparse_config.mk.orig SuiteSparse-5.11.0/SuiteSparse_config/SuiteSparse_config.mk ---- SuiteSparse-5.11.0/SuiteSparse_config/SuiteSparse_config.mk.orig 2022-03-15 00:33:19.000000000 +0100 -+++ SuiteSparse-5.11.0/SuiteSparse_config/SuiteSparse_config.mk 2022-03-20 13:25:30.876107144 +0100 -@@ -73,6 +73,7 @@ - # and documentation in /solo/mydox. - INSTALL ?= $(SUITESPARSE) - INSTALL_LIB ?= $(INSTALL)/lib -+ INSTALL_SO ?= $(INSTALL)/lib - INSTALL_INCLUDE ?= $(INSTALL)/include - INSTALL_DOC ?= $(INSTALL)/share/doc/suitesparse-$(SUITESPARSE_VERSION) - -@@ -349,7 +350,7 @@ - ifeq ($(UNAME),Linux) - # add the posix realtime extensions library: librt - LDLIBS += -lrt -- LDFLAGS += -Wl,-rpath=$(INSTALL_LIB) -+ LDFLAGS += -Wl,-rpath=$(INSTALL_SO) - endif - - #--------------------------------------------------------------------------- -@@ -365,7 +366,7 @@ - LAPACK ?= -framework Accelerate - # OpenMP is not yet supported by default in clang - CFOPENMP = -- LDLIBS += -rpath $(INSTALL_LIB) -+ LDLIBS += -rpath $(INSTALL_SO) - endif - - #--------------------------------------------------------------------------- -@@ -446,7 +447,8 @@ - # they aren't actually supported by this OS - SO_MAIN = $(LIBRARY).$(SO_VERSION).dll - SO_PLAIN = $(LIBRARY).$(VERSION).dll -- SO_OPTS += -shared -+ SO_OPTS += -shared -Wl,--out-implib,$(INSTALL_LIB)/$(LIBRARY).dll.a -+ INSTALL_SO = $(INSTALL)/bin - SO_INSTALL_NAME = echo - else - # Mac or Linux/Unix -@@ -568,6 +570,7 @@ - @echo 'System: UNAME= ' '$(UNAME)' - @echo 'Install directory: INSTALL= ' '$(INSTALL)' - @echo 'Install libraries in: INSTALL_LIB= ' '$(INSTALL_LIB)' -+ @echo 'Install shared libs in: INSTALL_SO= ' '$(INSTALL_SO)' - @echo 'Install include files in: INSTALL_INCLUDE=' '$(INSTALL_INCLUDE)' - @echo 'Install documentation in: INSTALL_DOC= ' '$(INSTALL_DOC)' - @echo 'Optimization level: OPTIMIZATION= ' '$(OPTIMIZATION)' -diff --git a/SuiteSparse_config/xerbla/Makefile b/SuiteSparse_config/xerbla/Makefile -index 1111111..2222222 100644 ---- a/SuiteSparse_config/xerbla/Makefile -+++ b/SuiteSparse_config/xerbla/Makefile -@@ -53,16 +53,13 @@ $(INSTALL_LIB)/$(SO_TARGET): $(DEPENDS) - $(COMPILE) - $(CC) $(SO_OPTS) xerbla.o -o $@ - - $(RM) xerbla.o -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) xerbla.h $(INSTALL_INCLUDE) -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/xerbla.h - - # uninstall libcerbla / libxerbla - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/xerbla.h - - distclean: purge -diff --git a/UMFPACK/Lib/Makefile b/UMFPACK/Lib/Makefile -index 1111111..2222222 100644 ---- a/UMFPACK/Lib/Makefile -+++ b/UMFPACK/Lib/Makefile -@@ -288,20 +288,18 @@ clean: - - #------------------------------------------------------------------------------- - # install UMFPACK --install: $(AR_TARGET) $(INSTALL_LIB)/$(SO_TARGET) -+install: $(AR_TARGET) $(INSTALL_SO)/$(SO_TARGET) - --$(INSTALL_LIB)/$(SO_TARGET): $(OBJ) -+$(INSTALL_SO)/$(SO_TARGET): $(OBJ) - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) - $(CC) $(SO_OPTS) $^ -o $@ $(LDLIBS) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_PLAIN) ) -- ( cd $(INSTALL_LIB) ; ln -sf $(SO_TARGET) $(SO_MAIN) ) - $(CP) ../Include/umfpack*.h $(INSTALL_INCLUDE) - $(CP) ../Doc/UMFPACK_UserGuide.pdf $(INSTALL_DOC) - $(CP) ../Doc/UMFPACK_QuickStart.pdf $(INSTALL_DOC) - $(CP) ../README.txt $(INSTALL_DOC)/UMFPACK_README.txt -- chmod 755 $(INSTALL_LIB)/$(SO_TARGET) -+ chmod 755 $(INSTALL_SO)/$(SO_TARGET) - chmod 644 $(INSTALL_INCLUDE)/umfpack*.h - chmod 644 $(INSTALL_DOC)/UMFPACK_UserGuide.pdf - chmod 644 $(INSTALL_DOC)/UMFPACK_QuickStart.pdf -@@ -309,9 +307,7 @@ $(INSTALL_LIB)/$(SO_TARGET): $(OBJ) - - # uninstall UMFPACK - uninstall: -- $(RM) $(INSTALL_LIB)/$(SO_TARGET) -- $(RM) $(INSTALL_LIB)/$(SO_PLAIN) -- $(RM) $(INSTALL_LIB)/$(SO_MAIN) -+ $(RM) $(INSTALL_SO)/$(SO_TARGET) - $(RM) $(INSTALL_INCLUDE)/umfpack*.h - $(RM) $(INSTALL_DOC)/UMFPACK_UserGuide.pdf - $(RM) $(INSTALL_DOC)/UMFPACK_QuickStart.pdf -diff -urN SuiteSparse-5.11.0/Makefile.orig SuiteSparse-5.11.0/Makefile ---- SuiteSparse-5.11.0/Makefile.orig 2022-03-15 00:33:19.000000000 +0100 -+++ SuiteSparse-5.11.0/Makefile 2022-03-20 13:51:19.924606309 +0100 -@@ -16,7 +16,6 @@ - # installs all libraries SuiteSparse/lib. - go: metis - ( cd SuiteSparse_config && $(MAKE) ) -- ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' ) - ( cd AMD && $(MAKE) ) - ( cd BTF && $(MAKE) ) - ( cd CAMD && $(MAKE) ) -@@ -34,7 +33,6 @@ - ( cd GPUQREngine && $(MAKE) ) - endif - ( cd SPQR && $(MAKE) ) -- ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' ) - ( cd SLIP_LU && $(MAKE) ) - # ( cd PIRO_BAND && $(MAKE) ) - # ( cd SKYLINE_SVD && $(MAKE) ) -@@ -44,9 +42,8 @@ - # sudo make install INSTALL=/usr/local - # See SuiteSparse/README.md for more details. - # (note that CSparse is not installed; CXSparse is installed instead) --install: metisinstall gbinstall moninstall -+install: metisinstall - ( cd SuiteSparse_config && $(MAKE) install ) -- # ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' install ) - ( cd AMD && $(MAKE) install ) - ( cd BTF && $(MAKE) install ) - ( cd CAMD && $(MAKE) install ) -@@ -63,7 +60,6 @@ - ( cd GPUQREngine && $(MAKE) install ) - endif - ( cd SPQR && $(MAKE) install ) -- # ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' install ) - # ( cd PIRO_BAND && $(MAKE) install ) - # ( cd SKYLINE_SVD && $(MAKE) install ) - ( cd SLIP_LU && $(MAKE) install ) -@@ -76,7 +72,7 @@ - @mkdir -p $(INSTALL_LIB) - @mkdir -p $(INSTALL_INCLUDE) - @mkdir -p $(INSTALL_DOC) -- - $(CP) lib/libmetis.* $(INSTALL_SO) -+ - $(CP) lib/libmetis.* $(INSTALL_SO) - - $(CP) metis-5.1.0/manual/manual.pdf $(INSTALL_DOC)/METIS_manual.pdf - - $(CP) metis-5.1.0/README.txt $(INSTALL_DOC)/METIS_README.txt - # the following is needed only on the Mac, so *.dylib is hardcoded: -@@ -93,8 +89,6 @@ - $(RM) $(INSTALL_DOC)/SuiteSparse_README.md - ( cd SuiteSparse_config && $(MAKE) uninstall ) - - ( cd metis-5.1.0 && $(MAKE) uninstall ) -- - ( cd GraphBLAS && $(MAKE) uninstall ) -- - ( cd Mongoose && $(MAKE) uninstall ) - ( cd AMD && $(MAKE) uninstall ) - ( cd CAMD && $(MAKE) uninstall ) - ( cd COLAMD && $(MAKE) uninstall ) -@@ -126,7 +120,6 @@ - # the static library - library: metis - ( cd SuiteSparse_config && $(MAKE) ) -- ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library ) - ( cd AMD && $(MAKE) library ) - ( cd BTF && $(MAKE) library ) - ( cd CAMD && $(MAKE) library ) -@@ -144,7 +137,6 @@ - ( cd GPUQREngine && $(MAKE) library ) - endif - ( cd SPQR && $(MAKE) library ) -- ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library ) - ( cd SLIP_LU && $(MAKE) library ) - # ( cd PIRO_BAND && $(MAKE) library ) - # ( cd SKYLINE_SVD && $(MAKE) library ) -@@ -154,7 +146,6 @@ - # both the dynamic and static libraries. - static: metis - ( cd SuiteSparse_config && $(MAKE) static ) -- ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' static ) - ( cd AMD && $(MAKE) static ) - ( cd BTF && $(MAKE) static ) - ( cd CAMD && $(MAKE) static ) -@@ -172,7 +163,6 @@ - ( cd GPUQREngine && $(MAKE) static ) - endif - ( cd SPQR && $(MAKE) static ) -- ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' static ) - ( cd SLIP_LU && $(MAKE) static ) - # ( cd PIRO_BAND && $(MAKE) static ) - # ( cd SKYLINE_SVD && $(MAKE) static ) -@@ -182,8 +172,6 @@ - - ( cd SuiteSparse_config && $(MAKE) purge ) - - ( cd metis-5.1.0 && $(MAKE) distclean ) - - ( cd AMD && $(MAKE) purge ) -- - ( cd GraphBLAS && $(MAKE) purge ) -- - ( cd Mongoose && $(MAKE) purge ) - - ( cd CAMD && $(MAKE) purge ) - - ( cd COLAMD && $(MAKE) purge ) - - ( cd BTF && $(MAKE) purge ) -@@ -210,8 +198,6 @@ - clean: - - ( cd SuiteSparse_config && $(MAKE) clean ) - - ( cd metis-5.1.0 && $(MAKE) clean ) -- - ( cd GraphBLAS && $(MAKE) clean ) -- - ( cd Mongoose && $(MAKE) clean ) - - ( cd AMD && $(MAKE) clean ) - - ( cd CAMD && $(MAKE) clean ) - - ( cd COLAMD && $(MAKE) clean ) -@@ -233,8 +219,6 @@ - - # Create the PDF documentation - docs: -- ( cd GraphBLAS && $(MAKE) docs ) -- ( cd Mongoose && $(MAKE) docs ) - ( cd AMD && $(MAKE) docs ) - ( cd CAMD && $(MAKE) docs ) - ( cd KLU && $(MAKE) docs )
--- a/src/suitesparse-2-metis.patch Tue Sep 26 11:14:59 2023 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,85 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -Contains ad hoc patches for cross building. - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Tony Theodore <tonyt@logyst.com> -Date: Mon, 20 Nov 2017 22:54:25 +1100 -Subject: [PATCH 1/3] mingw-w64-does-not-have-sys-resource-h - -taken from: -https://github.com/Alexpux/MINGW-packages/blob/484b873e8a1967b7809127682635888b7329417f/mingw-w64-metis/0001-mingw-w64-does-not-have-sys-resource-h.patch - -diff --git a/metis-5.1.0/GKlib/gk_arch.h b/metis-5.1.0/GKlib/gk_arch.h -index 1111111..2222222 100644 ---- a/metis-5.1.0/GKlib/gk_arch.h -+++ b/metis-5.1.0/GKlib/gk_arch.h -@@ -41,7 +41,9 @@ - #endif - #include <inttypes.h> - #include <sys/types.h> -- #include <sys/resource.h> -+ #ifndef __MINGW32__ -+ #include <sys/resource.h> -+ #endif - #include <sys/time.h> - #endif - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Tony Theodore <tonyt@logyst.com> -Date: Mon, 20 Nov 2017 22:55:34 +1100 -Subject: [PATCH 2/3] mingw-w64-do-not-use-reserved-double-underscored-names - -taken from: -https://github.com/Alexpux/MINGW-packages/blob/484b873e8a1967b7809127682635888b7329417f/mingw-w64-metis/0002-mingw-w64-do-not-use-reserved-double-underscored-names.patch - -diff --git a/metis-5.1.0/GKlib/gk_getopt.h b/metis-5.1.0/GKlib/gk_getopt.h -index 1111111..2222222 100644 ---- a/metis-5.1.0/GKlib/gk_getopt.h -+++ b/metis-5.1.0/GKlib/gk_getopt.h -@@ -52,10 +52,10 @@ struct gk_option { - - - /* Function prototypes */ --extern int gk_getopt(int __argc, char **__argv, char *__shortopts); --extern int gk_getopt_long(int __argc, char **__argv, char *__shortopts, -+extern int gk_getopt(int gk_argc, char **gk_argv, char *__shortopts); -+extern int gk_getopt_long(int gk_argc, char **gk_argv, char *__shortopts, - struct gk_option *__longopts, int *__longind); --extern int gk_getopt_long_only (int __argc, char **__argv, -+extern int gk_getopt_long_only (int gk_argc, char **gk_argv, - char *__shortopts, struct gk_option *__longopts, int *__longind); - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Tony Theodore <tonyt@logyst.com> -Date: Mon, 20 Nov 2017 22:58:20 +1100 -Subject: [PATCH 3/3] WIN32-Install-RUNTIME-to-bin - -taken from: -https://github.com/Alexpux/MINGW-packages/blob/484b873e8a1967b7809127682635888b7329417f/mingw-w64-metis/0003-WIN32-Install-RUNTIME-to-bin.patch - -diff --git a/metis-5.1.0/libmetis/CMakeLists.txt b/metis-5.1.0/libmetis/CMakeLists.txt -index 1111111..2222222 100644 ---- a/metis-5.1.0/libmetis/CMakeLists.txt -+++ b/metis-5.1.0/libmetis/CMakeLists.txt -@@ -8,9 +8,15 @@ if(UNIX) - target_link_libraries(metis m) - endif() - -+if(WIN32) -+ set(RT_DEST bin) -+else() -+ set(RT_DEST lib) -+endif() -+ - if(METIS_INSTALL) - install(TARGETS metis - LIBRARY DESTINATION lib -- RUNTIME DESTINATION lib -+ RUNTIME DESTINATION ${RT_DEST} - ARCHIVE DESTINATION lib) - endif() -
--- a/src/suitesparse.mk Tue Sep 26 11:14:59 2023 +0200 +++ b/src/suitesparse.mk Tue Sep 26 12:14:45 2023 +0200 @@ -2,8 +2,8 @@ # See index.html for further information. PKG := suitesparse -$(PKG)_VERSION := 5.13.0 -$(PKG)_CHECKSUM := 71963dec82e46226eb329432069a916144fa4d98 +$(PKG)_VERSION := 7.2.0 +$(PKG)_CHECKSUM := cb79ed80422b1808b4a5aba27f5878ef84c82f56 $(PKG)_SUBDIR := SuiteSparse-$($(PKG)_VERSION) $(PKG)_FILE := $($(PKG)_SUBDIR).tar.gz $(PKG)_URL := https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v$($(PKG)_VERSION).tar.gz @@ -33,87 +33,43 @@ endif endif -ifeq ($(USE_CCACHE),yes) - $(PKG)_COMPILER_OPTS := CC='$(CCACHE) $(MXE_CC)' \ - CXX='$(CCACHE) $(MXE_CXX)' \ - CPLUSPLUS='$(CCACHE) $(MXE_CXX)' \ - F77='$(CCACHE) $(MXE_F77)' -else - $(PKG)_COMPILER_OPTS := CC='$(MXE_CC)' \ - CXX='$(MXE_CXX)' \ - CPLUSPLUS='$(MXE_CXX)' \ - F77='$(MXE_F77)' +ifneq ($(MXE_NATIVE_BUILD),yes) + ifeq ($(MXE_WINDOWS_BUILD),yes) + # The corresponding test (in GraphBLAS) succeeds on Windows (MinGW-w64). + $(PKG)_CMAKE_CROSS_FLAGS += -DHAVE_GETENV_HOME=ON + else + # Use fallback for other targets. + $(PKG)_CMAKE_CROSS_FLAGS += -DHAVE_GETENV_HOME=OFF + endif endif $(PKG)_MAKE_OPTS = \ CPPFLAGS="$($(PKG)_CPPFLAGS)" \ - $($(PKG)_COMPILER_OPTS) \ FFLAGS='$(MXE_FFLAGS)' \ CFLAGS='$(MXE_CFLAGS)' \ CXXFLAGS='$(MXE_CXXFLAGS)' \ AR='$(MXE_AR)' \ RANLIB='$(MXE_RANLIB)' \ - BLAS="-lblas -lgfortran" \ - LAPACK='-llapack' \ CHOLMOD_CONFIG='-DNPARTITION' \ - CMAKE_OPTIONS='-DCMAKE_TOOLCHAIN_FILE="$(CMAKE_TOOLCHAIN_FILE)" $(CMAKE_CCACHE_FLAGS) $(CMAKE_BUILD_SHARED_OR_STATIC)' + CMAKE_OPTIONS='-DCMAKE_TOOLCHAIN_FILE="$(CMAKE_TOOLCHAIN_FILE)" \ + -DCOMPACT=ON -DNFORTRAN=ON \ + -DBLA_VENDOR="Generic" -DBLAS_LIBRARIES="-lblas -lgfortran" -DLAPACK_LIBRARIES="-llapack" \ + -DENABLE_CUDA=OFF \ + $($(PKG)_CMAKE_CROSS_FLAGS) \ + $(CMAKE_CCACHE_FLAGS) $(CMAKE_BUILD_SHARED_OR_STATIC)' 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) -$(PKG)_METIS_CONFIG_FLAGS = -DCMAKE_VERBOSE_MAKEFILE=1 \ - -DGKLIB_PATH=$(1)/metis-5.1.0/GKlib \ - -DCMAKE_INSTALL_PREFIX=$(1) \ - -DSHARED=1 - define $(PKG)_BUILD - # build metis - mkdir $(1)/metis-5.1.0/$($(PKG)_METIS_BUILDDIR) - cd $(1)/metis-5.1.0/$($(PKG)_METIS_BUILDDIR) && \ - cmake $(1)/metis-5.1.0 \ - $(CMAKE_CCACHE_FLAGS) \ - $(CMAKE_BUILD_SHARED_OR_STATIC) \ - -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ - $($(PKG)_METIS_CONFIG_FLAGS) - $(MAKE) -C '$(1)/metis-5.1.0/$($(PKG)_METIS_BUILDDIR)' metis -j '$(JOBS)' - - # 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)_SO_DIR) - cp $(1)/metis-5.1.0/include/metis.h $($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/ - chmod 755 $($(PKG)_SO_DIR)/libmetis.* - chmod 644 $($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/metis.h - # build all $(MAKE) -C '$(1)' -j '$(JOBS)' \ - $($(PKG)_MAKE_OPTS) \ - MY_METIS_LIB=$($(PKG)_SO_DIR) \ - library + $($(PKG)_MAKE_OPTS) # install libraries and headers $(MAKE) -C '$(1)' -j 1 install \ - $($(PKG)_MAKE_OPTS) \ - INSTALL_INCLUDE='$($(PKG)_DESTDIR)$(HOST_INCDIR)/suitesparse/' \ - INSTALL_LIB='$($(PKG)_DESTDIR)$(HOST_LIBDIR)' \ - INSTALL_SO='$($(PKG)_SO_DIR)' - - # some dependers (e.g. SUNDIALS IDA) won't find libraries with version suffix - if [ $(MXE_WINDOWS_BUILD) = no ]; then \ - cd '$($(PKG)_DESTDIR)$(HOST_LIBDIR)' && ln -sf libsuitesparseconfig.so.$($(PKG)_VERSION) libsuitesparseconfig.so; \ - cd '$($(PKG)_DESTDIR)$(HOST_LIBDIR)' && ln -sf libamd.so.2 libamd.so; \ - cd '$($(PKG)_DESTDIR)$(HOST_LIBDIR)' && ln -sf libbtf.so.1 libbtf.so; \ - cd '$($(PKG)_DESTDIR)$(HOST_LIBDIR)' && ln -sf libcolamd.so.2 libcolamd.so; \ - cd '$($(PKG)_DESTDIR)$(HOST_LIBDIR)' && ln -sf libklu.so.1 libklu.so; \ - fi + $($(PKG)_MAKE_OPTS) endef