Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] SuiteSparse: update to 5.13.0.
@ 2022-10-09 20:48 tornaria
  2022-10-15 13:24 ` tornaria
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: tornaria @ 2022-10-09 20:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1364 bytes --]

There is a new pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 5.13.0.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 1358 bytes --]

From 3c17c0638bacd0bcb986e9464e627fc00ed77fa9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH] SuiteSparse: update to 5.13.0.

---
 srcpkgs/SuiteSparse/template | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..2bb671a50c32 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,8 +1,7 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=5.13.0
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
 make_build_args="BLAS=-lblas LAPACK=-llapack"
 hostmakedepends="cmake chrpath"
 makedepends="libgomp-devel lapack-devel mpfr-devel"
@@ -12,7 +11,7 @@ license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=59c6ca2959623f0c69226cf9afb9a018d12a37fab3a8869db5f6d7f83b6b147d
 
 do_build() {
 	make config library $make_build_args JOBS=$XBPS_MAKEJOBS

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 5.13.0.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
@ 2022-10-15 13:24 ` tornaria
  2022-11-13  3:41 ` [PR PATCH] [Updated] " tornaria
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-10-15 13:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 329 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1279745383

Comment:
What shall we do about this:
```
SuiteSparse-devel and mongoose-devel conflict for
  /usr/lib/libmongoose.a
  /usr/lib/libmongoose.so
Error: Process completed with exit code 1.
```

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] SuiteSparse: update to 5.13.0.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
  2022-10-15 13:24 ` tornaria
@ 2022-11-13  3:41 ` tornaria
  2022-11-15 20:50 ` [PR PATCH] [Updated] SuiteSparse: update to 6.0.0 tornaria
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-13  3:41 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1369 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 5.13.0.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 18978 bytes --]

From 1250706bc7b22d8e8fbd10d06d333f3b6ed1f7d8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH 1/2] SuiteSparse: update to 6.0.0.

---
 srcpkgs/SuiteSparse/patches/769870a0.patch    | 345 ++++++++++++++++++
 .../patches/skip-demo-on-build.patch          |  22 --
 srcpkgs/SuiteSparse/template                  |  28 +-
 3 files changed, 358 insertions(+), 37 deletions(-)
 create mode 100644 srcpkgs/SuiteSparse/patches/769870a0.patch
 delete mode 100644 srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch

diff --git a/srcpkgs/SuiteSparse/patches/769870a0.patch b/srcpkgs/SuiteSparse/patches/769870a0.patch
new file mode 100644
index 000000000000..f110eaf55f3a
--- /dev/null
+++ b/srcpkgs/SuiteSparse/patches/769870a0.patch
@@ -0,0 +1,345 @@
+From 769870a0d3304d93097d346dc466e8015bf4bab9 Mon Sep 17 00:00:00 2001
+From: Tim Davis <DrTimothyAldenDavis@gmail.com>
+Date: Fri, 11 Nov 2022 17:39:19 -0500
+Subject: [PATCH] hide BLAS definitions from user applications
+
+---
+ CHOLMOD/CMakeLists.txt                         |  2 +-
+ CHOLMOD/Doc/ChangeLog                          |  4 ++++
+ CHOLMOD/Doc/cholmod_version.tex                |  2 +-
+ CHOLMOD/Include/cholmod.h                      |  2 +-
+ CHOLMOD/Include/cholmod_internal.h             |  1 +
+ CHOLMOD/Tcov/cm.h                              |  1 +
+ ChangeLog                                      |  6 ++++++
+ README.md                                      |  2 +-
+ SPQR/CMakeLists.txt                            |  2 +-
+ SPQR/Doc/ChangeLog                             |  4 ++++
+ SPQR/Doc/spqr_version.tex                      |  2 +-
+ SPQR/Include/SuiteSparseQR_definitions.h       |  2 +-
+ SPQR/Include/spqr.hpp                          |  1 +
+ SPQR/Tcov/qrtestc.c                            |  1 -
+ SuiteSparse_config/CMakeLists.txt              |  2 +-
+ .../Config/SuiteSparse_config.h.in             | 16 ++++++++++++++++
+ SuiteSparse_config/SuiteSparse_config.h        | 18 +++++++++++++++++-
+ UMFPACK/CMakeLists.txt                         |  2 +-
+ UMFPACK/Doc/ChangeLog                          |  4 ++++
+ UMFPACK/Doc/umfpack_version.tex                |  2 +-
+ UMFPACK/Include/umfpack.h                      |  2 +-
+ UMFPACK/Source/umf_internal.h                  |  1 +
+ 22 files changed, 66 insertions(+), 13 deletions(-)
+
+diff --git a/CHOLMOD/CMakeLists.txt b/CHOLMOD/CMakeLists.txt
+index fcbc5c425..aff0c7a25 100644
+--- a/CHOLMOD/CMakeLists.txt
++++ b/CHOLMOD/CMakeLists.txt
+@@ -15,7 +15,7 @@ cmake_minimum_required ( VERSION 3.22 )
+ set ( CHOLMOD_DATE "Nov 12, 2022" )
+ set ( CHOLMOD_VERSION_MAJOR 4 )
+ set ( CHOLMOD_VERSION_MINOR 0 )
+-set ( CHOLMOD_VERSION_SUB   0 )
++set ( CHOLMOD_VERSION_SUB   1 )
+ 
+ message ( STATUS "Building CHOLMOD version: v"
+     ${CHOLMOD_VERSION_MAJOR}.
+diff --git a/CHOLMOD/Doc/ChangeLog b/CHOLMOD/Doc/ChangeLog
+index 864aec531..3f7995fc5 100644
+--- a/CHOLMOD/Doc/ChangeLog
++++ b/CHOLMOD/Doc/ChangeLog
+@@ -1,3 +1,7 @@
++Nov 12, 2022: version 4.0.1
++
++    * BLAS definitions: no longer exposed to the user application
++
+ Nov 12, 2022: version 4.0.0
+ 
+     * using CMake build system
+diff --git a/CHOLMOD/Doc/cholmod_version.tex b/CHOLMOD/Doc/cholmod_version.tex
+index 194eb45b9..0daae1043 100644
+--- a/CHOLMOD/Doc/cholmod_version.tex
++++ b/CHOLMOD/Doc/cholmod_version.tex
+@@ -1,2 +1,2 @@
+ % version of SuiteSparse/CHOLMOD
+-\date{VERSION 4.0.0, Nov 12, 2022}
++\date{VERSION 4.0.1, Nov 12, 2022}
+diff --git a/CHOLMOD/Include/cholmod.h b/CHOLMOD/Include/cholmod.h
+index 4769b3024..d0c8981b5 100644
+--- a/CHOLMOD/Include/cholmod.h
++++ b/CHOLMOD/Include/cholmod.h
+@@ -100,7 +100,7 @@
+ #define CHOLMOD_DATE "Nov 12, 2022"
+ #define CHOLMOD_MAIN_VERSION   4
+ #define CHOLMOD_SUB_VERSION    0
+-#define CHOLMOD_SUBSUB_VERSION 0
++#define CHOLMOD_SUBSUB_VERSION 1
+ 
+ /* make it easy for C++ programs to include CHOLMOD */
+ #ifdef __cplusplus
+diff --git a/CHOLMOD/Include/cholmod_internal.h b/CHOLMOD/Include/cholmod_internal.h
+index 379be06e6..763f020b2 100644
+--- a/CHOLMOD/Include/cholmod_internal.h
++++ b/CHOLMOD/Include/cholmod_internal.h
+@@ -30,6 +30,7 @@
+ #ifndef CHOLMOD_INTERNAL_H
+ #define CHOLMOD_INTERNAL_H
+ 
++#define SUITESPARSE_BLAS_DEFINITIONS
+ #include "cholmod.h"
+ 
+ /* ========================================================================== */
+diff --git a/CHOLMOD/Tcov/cm.h b/CHOLMOD/Tcov/cm.h
+index c47a46bdf..b8655544f 100644
+--- a/CHOLMOD/Tcov/cm.h
++++ b/CHOLMOD/Tcov/cm.h
+@@ -8,6 +8,7 @@
+ 
+ //------------------------------------------------------------------------------
+ 
++#define SUITESPARSE_BLAS_DEFINITIONS
+ #include "cholmod.h"
+ #include <stdlib.h>
+ #include <stdio.h>
+diff --git a/ChangeLog b/ChangeLog
+index 722a3bf06..ae3f43462 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,9 @@
++Nov 12, 2022: SuiteSparse 6.0.1
++
++    * BLAS: C prototypes for the Fortan BLAS were unintentionally exposed to
++        the user application.  Removed.  If you want to use them, see the
++        instructions in SuiteSparse_config.h.
++
+ Nov 12, 2022: SuiteSparse 6.0.0
+ 
+     * major update: using CMake build system for all packages
+diff --git a/README.md b/README.md
+index 7e8cd7b6c..43cdce36c 100644
+--- a/README.md
++++ b/README.md
+@@ -2,7 +2,7 @@
+ SuiteSparse:  A Suite of Sparse matrix packages at http://suitesparse.com
+ -----------------------------------------------------------------------------
+ 
+-Nov 12, 2022.  SuiteSparse VERSION 6.0.0
++Nov 12, 2022.  SuiteSparse VERSION 6.0.1
+ 
+ SuiteSparse is a set of sparse-matrix-related packages written or co-authored
+ by Tim Davis, available at https://github.com/DrTimothyAldenDavis/SuiteSparse .
+diff --git a/SPQR/CMakeLists.txt b/SPQR/CMakeLists.txt
+index 2e9f3cb8e..af5ec8de6 100644
+--- a/SPQR/CMakeLists.txt
++++ b/SPQR/CMakeLists.txt
+@@ -16,7 +16,7 @@ cmake_minimum_required ( VERSION 3.22 )
+ set ( SPQR_DATE "Nov 12, 2022" )
+ set ( SPQR_VERSION_MAJOR 3 )
+ set ( SPQR_VERSION_MINOR 0 )
+-set ( SPQR_VERSION_SUB   0 )
++set ( SPQR_VERSION_SUB   1 )
+ 
+ message ( STATUS "Building SPQR version: v"
+     ${SPQR_VERSION_MAJOR}.
+diff --git a/SPQR/Doc/ChangeLog b/SPQR/Doc/ChangeLog
+index 98a4ea95a..35a430381 100644
+--- a/SPQR/Doc/ChangeLog
++++ b/SPQR/Doc/ChangeLog
+@@ -1,3 +1,7 @@
++Nov 12, 2022: version 3.0.1
++
++    * BLAS definitions: no longer exposed to the user application
++
+ Nov 12, 2022: version 3.0.0
+ 
+     * using CMake build system
+diff --git a/SPQR/Doc/spqr_version.tex b/SPQR/Doc/spqr_version.tex
+index 9a3e397e3..cdd59169e 100644
+--- a/SPQR/Doc/spqr_version.tex
++++ b/SPQR/Doc/spqr_version.tex
+@@ -1,2 +1,2 @@
+ % version of SuiteSparse/SPQR
+-\date{VERSION 3.0.0, Nov 12, 2022}
++\date{VERSION 3.0.1, Nov 12, 2022}
+diff --git a/SPQR/Include/SuiteSparseQR_definitions.h b/SPQR/Include/SuiteSparseQR_definitions.h
+index 764aa9376..d8cd08be8 100644
+--- a/SPQR/Include/SuiteSparseQR_definitions.h
++++ b/SPQR/Include/SuiteSparseQR_definitions.h
+@@ -65,7 +65,7 @@
+ #define SPQR_DATE "Nov 12, 2022"
+ #define SPQR_MAIN_VERSION   3
+ #define SPQR_SUB_VERSION    0
+-#define SPQR_SUBSUB_VERSION 0
++#define SPQR_SUBSUB_VERSION 1
+ 
+ #define SPQR_VER_CODE(main,sub) ((main) * 1000 + (sub))
+ #define SPQR_VERSION SPQR_VER_CODE(SPQR_MAIN_VERSION,SPQR_SUB_VERSION)
+diff --git a/SPQR/Include/spqr.hpp b/SPQR/Include/spqr.hpp
+index 47386b9b7..adba2a977 100644
+--- a/SPQR/Include/spqr.hpp
++++ b/SPQR/Include/spqr.hpp
+@@ -15,6 +15,7 @@
+ // include files
+ // -----------------------------------------------------------------------------
+ 
++#define SUITESPARSE_BLAS_DEFINITIONS
+ #include "SuiteSparseQR.hpp"
+ #include <stdlib.h>
+ #include <math.h>
+diff --git a/SPQR/Tcov/qrtestc.c b/SPQR/Tcov/qrtestc.c
+index 12b358b40..33377bcdb 100644
+--- a/SPQR/Tcov/qrtestc.c
++++ b/SPQR/Tcov/qrtestc.c
+@@ -10,7 +10,6 @@
+ /* Test the C wrapper functions. */
+ 
+ #include "SuiteSparseQR_C.h"
+-#define int64_t int64_t
+ 
+ #define MAX(a,b) (((a) > (b)) ? (a) : (b))
+ 
+diff --git a/SuiteSparse_config/CMakeLists.txt b/SuiteSparse_config/CMakeLists.txt
+index caa903787..bf526e51c 100644
+--- a/SuiteSparse_config/CMakeLists.txt
++++ b/SuiteSparse_config/CMakeLists.txt
+@@ -17,7 +17,7 @@ cmake_minimum_required ( VERSION 3.22 )
+ set ( SUITESPARSE_DATE "Nov 12, 2022" )
+ set ( SUITESPARSE_VERSION_MAJOR 6 )
+ set ( SUITESPARSE_VERSION_MINOR 0 )
+-set ( SUITESPARSE_VERSION_SUB   0 )
++set ( SUITESPARSE_VERSION_SUB   1 )
+ 
+ message ( STATUS "Building SuiteSparse_config version: v"
+     ${SUITESPARSE_VERSION_MAJOR}.
+diff --git a/SuiteSparse_config/Config/SuiteSparse_config.h.in b/SuiteSparse_config/Config/SuiteSparse_config.h.in
+index 3e65ef246..c9cf2188c 100644
+--- a/SuiteSparse_config/Config/SuiteSparse_config.h.in
++++ b/SuiteSparse_config/Config/SuiteSparse_config.h.in
+@@ -689,6 +689,20 @@ int SuiteSparse_version     // returns SUITESPARSE_VERSION
+ // See https://netlib.org/blas/ and https://netlib.org/lapack/ for the
+ // definitions of the inputs/outputs of these functions.
+ 
++// These prototypes need to be found by UMFPACK, CHOLMOD, and SPQR, and to do
++// so, they need to appear in this public header to ensure the correct BLAS
++// library and integer size is used.  However, these definitions should not
++// (normally) be exposed to the user application.
++
++// If a user application wishes to use these definitions, simply add
++
++//      #define SUITESPARSE_BLAS_DEFINITIONS
++//      #include "SuiteSparse_config.h"
++
++// prior to #include'ing any SuiteSparse headers (amd.h, and so on).
++
++#if defined ( SUITESPARSE_BLAS_DEFINITIONS )
++
+ void SUITESPARSE_BLAS_DGEMV         // Y = alpha*A*x + beta*Y
+ (
+     // input:
+@@ -1447,6 +1461,8 @@ void SUITESPARSE_LAPACK_ZLARF       // apply Householder reflector
+     }                                                                         \
+ }
+ 
++#endif
++
+ //------------------------------------------------------------------------------
+ // SuiteSparse_BLAS_library: return name of BLAS library found
+ //------------------------------------------------------------------------------
+diff --git a/SuiteSparse_config/SuiteSparse_config.h b/SuiteSparse_config/SuiteSparse_config.h
+index 078260e1d..00beef1a1 100644
+--- a/SuiteSparse_config/SuiteSparse_config.h
++++ b/SuiteSparse_config/SuiteSparse_config.h
+@@ -488,7 +488,7 @@ int SuiteSparse_version     // returns SUITESPARSE_VERSION
+ #define SUITESPARSE_DATE "Nov 12, 2022"
+ #define SUITESPARSE_MAIN_VERSION    6
+ #define SUITESPARSE_SUB_VERSION     0
+-#define SUITESPARSE_SUBSUB_VERSION  0
++#define SUITESPARSE_SUBSUB_VERSION  1
+ 
+ #define SUITESPARSE_VER_CODE(main,sub) ((main) * 1000 + (sub))
+ #define SUITESPARSE_VERSION \
+@@ -689,6 +689,20 @@ int SuiteSparse_version     // returns SUITESPARSE_VERSION
+ // See https://netlib.org/blas/ and https://netlib.org/lapack/ for the
+ // definitions of the inputs/outputs of these functions.
+ 
++// These prototypes need to be found by UMFPACK, CHOLMOD, and SPQR, and to do
++// so, they need to appear in this public header to ensure the correct BLAS
++// library and integer size is used.  However, these definitions should not
++// (normally) be exposed to the user application.
++
++// If a user application wishes to use these definitions, simply add
++
++//      #define SUITESPARSE_BLAS_DEFINITIONS
++//      #include "SuiteSparse_config.h"
++
++// prior to #include'ing any SuiteSparse headers (amd.h, and so on).
++
++#if defined ( SUITESPARSE_BLAS_DEFINITIONS )
++
+ void SUITESPARSE_BLAS_DGEMV         // Y = alpha*A*x + beta*Y
+ (
+     // input:
+@@ -1447,6 +1461,8 @@ void SUITESPARSE_LAPACK_ZLARF       // apply Householder reflector
+     }                                                                         \
+ }
+ 
++#endif
++
+ //------------------------------------------------------------------------------
+ // SuiteSparse_BLAS_library: return name of BLAS library found
+ //------------------------------------------------------------------------------
+diff --git a/UMFPACK/CMakeLists.txt b/UMFPACK/CMakeLists.txt
+index c3a0e07d1..8f746ec33 100644
+--- a/UMFPACK/CMakeLists.txt
++++ b/UMFPACK/CMakeLists.txt
+@@ -15,7 +15,7 @@ cmake_minimum_required ( VERSION 3.22 )
+ set ( UMFPACK_DATE "Nov 12, 2022" )
+ set ( UMFPACK_VERSION_MAJOR 6 )
+ set ( UMFPACK_VERSION_MINOR 0 )
+-set ( UMFPACK_VERSION_SUB   0 )
++set ( UMFPACK_VERSION_SUB   1 )
+ 
+ message ( STATUS "Building UMFPACK version: v"
+     ${UMFPACK_VERSION_MAJOR}.
+diff --git a/UMFPACK/Doc/ChangeLog b/UMFPACK/Doc/ChangeLog
+index 051bb2129..d40c1d0f0 100644
+--- a/UMFPACK/Doc/ChangeLog
++++ b/UMFPACK/Doc/ChangeLog
+@@ -1,3 +1,7 @@
++Nov 12, 2022: version 6.0.1
++
++    * BLAS definitions: no longer exposed to the user application
++
+ Nov 12, 2022: version 6.0.0
+ 
+     * using CMake build system
+diff --git a/UMFPACK/Doc/umfpack_version.tex b/UMFPACK/Doc/umfpack_version.tex
+index cf30e6113..9528c7c98 100644
+--- a/UMFPACK/Doc/umfpack_version.tex
++++ b/UMFPACK/Doc/umfpack_version.tex
+@@ -1,2 +1,2 @@
+ % version of SuiteSparse/UMFPACK
+-\date{VERSION 6.0.0, Nov 12, 2022}
++\date{VERSION 6.0.1, Nov 12, 2022}
+diff --git a/UMFPACK/Include/umfpack.h b/UMFPACK/Include/umfpack.h
+index d05ab8459..c3053893c 100644
+--- a/UMFPACK/Include/umfpack.h
++++ b/UMFPACK/Include/umfpack.h
+@@ -85,7 +85,7 @@ extern "C" {
+ #define UMFPACK_DATE "Nov 12, 2022"
+ #define UMFPACK_MAIN_VERSION   6
+ #define UMFPACK_SUB_VERSION    0
+-#define UMFPACK_SUBSUB_VERSION 0
++#define UMFPACK_SUBSUB_VERSION 1
+ 
+ #define UMFPACK_VER_CODE(main,sub) ((main) * 1000 + (sub))
+ #define UMFPACK_VER UMFPACK_VER_CODE(UMFPACK_MAIN_VERSION,UMFPACK_SUB_VERSION)
+diff --git a/UMFPACK/Source/umf_internal.h b/UMFPACK/Source/umf_internal.h
+index 28c2cef1d..d1fc1c336 100644
+--- a/UMFPACK/Source/umf_internal.h
++++ b/UMFPACK/Source/umf_internal.h
+@@ -91,6 +91,7 @@
+ /* -------------------------------------------------------------------------- */
+ 
+ /* stdio.h, stdlib.h, limits.h, and math.h, NDEBUG definition, assert.h */
++#define SUITESPARSE_BLAS_DEFINITIONS
+ #include "amd_internal.h"
+ 
+ /* -------------------------------------------------------------------------- */
diff --git a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch b/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
deleted file mode 100644
index 9ec775229ed6..000000000000
--- a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-This is to avoid running demos on `make install`, which break cross compile
-
---- a/Makefile
-+++ b/Makefile
-@@ -294,7 +294,7 @@ endif
- # just compile GraphBLAS
- gb:
- 	echo $(CMAKE_OPTIONS)
--	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install GraphBLAS libgraphblas_renamed, for MATLAB
- gbrenamed:
-@@ -309,7 +309,7 @@ gbrenamed:
- 
- # just compile Mongoose
- mon:
--	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install Mongoose
- moninstall: mon
diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..7cd8ecb324b7 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,10 +1,8 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=6.0.0
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
-make_build_args="BLAS=-lblas LAPACK=-llapack"
-hostmakedepends="cmake chrpath"
+hostmakedepends="cmake gcc-fortran"
 makedepends="libgomp-devel lapack-devel mpfr-devel"
 short_desc="Suite of sparse matrix software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
@@ -12,22 +10,24 @@ license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=3b07fc5cec46fa66f18f0fbd6a81ad5d552533020bb3595f27c24a0274c89b7a
+
 
 do_build() {
-	make config library $make_build_args JOBS=$XBPS_MAKEJOBS
+	make library \
+		JOBS=$XBPS_MAKEJOBS \
+		CMAKE_OPTIONS="-DBLA_VENDOR=Generic \
+		               -DCMAKE_INSTALL_PREFIX=$DESTDIR/usr"
 }
 
 do_check() {
-	make go $make_build_args LD_LIBRARY_PATH=$wrksrc/lib JOBS=$XBPS_MAKEJOBS
+	make demos \
+		JOBS=$XBPS_MAKEJOBS
 }
 
 do_install() {
-	make install $make_build_args INSTALL=$DESTDIR/usr
+	make install
 	vlicense LICENSE.txt
-
-	# remove invalid rpath
-	chrpath -d $DESTDIR/usr/lib/lib*.so
 }
 
 SuiteSparse-devel_package() {
@@ -35,10 +35,8 @@ SuiteSparse-devel_package() {
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.a"
-		# do not vmove libmetis.so
-		vmove "usr/lib/lib[a-ln-z]*.so"
-		vmove "usr/lib/libmo*.so"
-		vmove usr/share/doc
+		vmove "usr/lib/*.so"
 	}
 }

From 61cce1228184cf181ae6fa4f4a7ef7bfd7accfe7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 13 Nov 2022 00:33:48 -0300
Subject: [PATCH 2/2] python3-cvxopt: revbump for SuiteSparse 6.0.0.

---
 common/shlibs                   | 7 +++----
 srcpkgs/python3-cvxopt/template | 2 +-
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 76512744735e..1d8a2b46a6b6 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -71,7 +71,6 @@ libppl.so.14 ppl-1.2_1
 libppl_c.so.4 ppl-0.11_1
 libstdc++.so.6 libstdc++-4.4.0_1
 libssp.so.0 libssp-4.4.0_1
-libcxsparse.so.3 SuiteSparse-5.10.1_1
 libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
@@ -4062,9 +4061,9 @@ libprimecount.so.7 primecount-7.2_1
 libprimesieve.so.10 primesieve-8.0_1
 libavif.so.15 libavif-0.11.0_1
 libkdumpfile.so.10 libkdumpfile-0.4.1_1
-libamd.so.2 SuiteSparse-5.10.1_1
-libcholmod.so.3 SuiteSparse-5.10.1_1
-libumfpack.so.5 SuiteSparse-5.10.1_1
+libamd.so.3 SuiteSparse-6.0.0_1
+libcholmod.so.4 SuiteSparse-6.0.0_1
+libumfpack.so.6 SuiteSparse-6.0.0_1
 libecl.so.21.2 ecl-21.2.1_1
 libecm.so.1 ecm-7.0.4_3
 libcliquer.so.1 cliquer-1.22_1
diff --git a/srcpkgs/python3-cvxopt/template b/srcpkgs/python3-cvxopt/template
index 4044fbfea2a7..4baeaa1599cb 100644
--- a/srcpkgs/python3-cvxopt/template
+++ b/srcpkgs/python3-cvxopt/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-cvxopt'
 pkgname=python3-cvxopt
 version=1.3.0
-revision=2
+revision=3
 build_style=python3-module
 hostmakedepends="python3-setuptools"
 makedepends="python3-devel blas-devel lapack-devel SuiteSparse-devel gsl-devel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] SuiteSparse: update to 6.0.0.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
  2022-10-15 13:24 ` tornaria
  2022-11-13  3:41 ` [PR PATCH] [Updated] " tornaria
@ 2022-11-15 20:50 ` tornaria
  2022-11-16  1:54 ` SuiteSparse: update to 6.0.1 tornaria
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-15 20:50 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1368 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 6.0.0.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 10269 bytes --]

From c2d663f095a280dd4ad2a49dbf8d3a24941caab3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH 1/2] SuiteSparse: update to 6.0.1.

Also: use openblas instead of lapack when available.
---
 common/shlibs                                 |  7 ++--
 .../patches/skip-demo-on-build.patch          | 22 ----------
 srcpkgs/SuiteSparse/template                  | 40 +++++++++++--------
 3 files changed, 27 insertions(+), 42 deletions(-)
 delete mode 100644 srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch

diff --git a/common/shlibs b/common/shlibs
index 481250d5c924..e142adfe9561 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -71,7 +71,6 @@ libppl.so.14 ppl-1.2_1
 libppl_c.so.4 ppl-0.11_1
 libstdc++.so.6 libstdc++-4.4.0_1
 libssp.so.0 libssp-4.4.0_1
-libcxsparse.so.3 SuiteSparse-5.10.1_1
 libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
@@ -4062,9 +4061,9 @@ libprimecount.so.7 primecount-7.2_1
 libprimesieve.so.10 primesieve-8.0_1
 libavif.so.15 libavif-0.11.0_1
 libkdumpfile.so.10 libkdumpfile-0.4.1_1
-libamd.so.2 SuiteSparse-5.10.1_1
-libcholmod.so.3 SuiteSparse-5.10.1_1
-libumfpack.so.5 SuiteSparse-5.10.1_1
+libamd.so.3 SuiteSparse-6.0.1_1
+libcholmod.so.4 SuiteSparse-6.0.1_1
+libumfpack.so.6 SuiteSparse-6.0.1_1
 libecl.so.21.2 ecl-21.2.1_1
 libecm.so.1 ecm-7.0.4_3
 libcliquer.so.1 cliquer-1.22_1
diff --git a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch b/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
deleted file mode 100644
index 9ec775229ed6..000000000000
--- a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-This is to avoid running demos on `make install`, which break cross compile
-
---- a/Makefile
-+++ b/Makefile
-@@ -294,7 +294,7 @@ endif
- # just compile GraphBLAS
- gb:
- 	echo $(CMAKE_OPTIONS)
--	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install GraphBLAS libgraphblas_renamed, for MATLAB
- gbrenamed:
-@@ -309,7 +309,7 @@ gbrenamed:
- 
- # just compile Mongoose
- mon:
--	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install Mongoose
- moninstall: mon
diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..212162449103 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,33 +1,43 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=6.0.1
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
-make_build_args="BLAS=-lblas LAPACK=-llapack"
-hostmakedepends="cmake chrpath"
-makedepends="libgomp-devel lapack-devel mpfr-devel"
+hostmakedepends="cmake gcc-fortran"
+makedepends="libgomp-devel mpfr-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 short_desc="Suite of sparse matrix software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=06f55a0449775d1f43d8a33ba8c8417ea8cf76c27833b465c49825baa8741d0c
+
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
 
 do_build() {
-	make config library $make_build_args JOBS=$XBPS_MAKEJOBS
+	make library \
+		JOBS=$XBPS_MAKEJOBS \
+		CMAKE_OPTIONS="-DBLA_VENDOR=$(vopt_if openblas 'OpenBLAS' 'Generic') \
+		               -DCMAKE_INSTALL_PREFIX=$DESTDIR/usr"
 }
 
 do_check() {
-	make go $make_build_args LD_LIBRARY_PATH=$wrksrc/lib JOBS=$XBPS_MAKEJOBS
+	make demos \
+		JOBS=$XBPS_MAKEJOBS
 }
 
 do_install() {
-	make install $make_build_args INSTALL=$DESTDIR/usr
+	make install
 	vlicense LICENSE.txt
-
-	# remove invalid rpath
-	chrpath -d $DESTDIR/usr/lib/lib*.so
 }
 
 SuiteSparse-devel_package() {
@@ -35,10 +45,8 @@ SuiteSparse-devel_package() {
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.a"
-		# do not vmove libmetis.so
-		vmove "usr/lib/lib[a-ln-z]*.so"
-		vmove "usr/lib/libmo*.so"
-		vmove usr/share/doc
+		vmove "usr/lib/*.so"
 	}
 }

From fcec15005abf362314c7801fc09bbada500c4bc0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 13 Nov 2022 00:33:48 -0300
Subject: [PATCH 2/2] python3-cvxopt: revbump for SuiteSparse 6.0.1.

Also: use openblas instead of lapack when available.
---
 srcpkgs/python3-cvxopt/patches/fix-gsl.patch  | 11 ---
 .../python3-cvxopt/patches/test-modules.patch | 76 +++++++++++++++++++
 srcpkgs/python3-cvxopt/template               | 18 ++++-
 3 files changed, 91 insertions(+), 14 deletions(-)
 delete mode 100644 srcpkgs/python3-cvxopt/patches/fix-gsl.patch
 create mode 100644 srcpkgs/python3-cvxopt/patches/test-modules.patch

diff --git a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch b/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
deleted file mode 100644
index e32dc2fbf1e1..000000000000
--- a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py	2022-03-07 18:58:58.000000000 -0300
-+++ b/setup.py	2022-04-14 22:25:18.860887901 -0300
-@@ -129,7 +129,7 @@
- # optional modules
- 
- if BUILD_GSL:
--    gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB,
-+    gsl = Extension('gsl', libraries = M_LIB + ['gsl', 'gslcblas'],
-         include_dirs = [ GSL_INC_DIR ],
-         library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ],
-         define_macros = GSL_MACROS,
diff --git a/srcpkgs/python3-cvxopt/patches/test-modules.patch b/srcpkgs/python3-cvxopt/patches/test-modules.patch
new file mode 100644
index 000000000000..6562b7e002e1
--- /dev/null
+++ b/srcpkgs/python3-cvxopt/patches/test-modules.patch
@@ -0,0 +1,76 @@
+diff --git a/tests/test_dsdp.py b/tests/test_dsdp.py
+index d514dc8..2a5e5bf 100644
+--- a/tests/test_dsdp.py
++++ b/tests/test_dsdp.py
+@@ -4,9 +4,10 @@ class TestDSDP(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import dsdp, matrix
+-        except:
++            import cvxopt.dsdp
++        except ModuleNotFoundError:
+             self.skipTest("DSDP not available")
++        from cvxopt import matrix
+         c = matrix([1.,-1.,1.])
+         G = [ matrix([[-7., -11., -11., 3.],
+                     [ 7., -18., -18., 8.],
+diff --git a/tests/test_glpk.py b/tests/test_glpk.py
+index 89f876d..dad5801 100644
+--- a/tests/test_glpk.py
++++ b/tests/test_glpk.py
+@@ -4,15 +4,16 @@ class TestGLPK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import glpk, matrix
+-            c = matrix([-4., -5.])
+-            G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
+-            h = matrix([3., 3., 0., 0.])
+-            A = matrix([1.0,1.0],(1,2))
+-            b = matrix(1.0)
+-            self._prob_data = (c,G,h,A,b)
+-        except:
++            import cvxopt.glpk
++        except ModuleNotFoundError:
+             self.skipTest("GLPK not available")
++        from cvxopt import matrix
++        c = matrix([-4., -5.])
++        G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
++        h = matrix([3., 3., 0., 0.])
++        A = matrix([1.0,1.0],(1,2))
++        b = matrix(1.0)
++        self._prob_data = (c,G,h,A,b)
+ 
+     def test_lp(self):
+         from cvxopt import solvers, glpk
+diff --git a/tests/test_gsl.py b/tests/test_gsl.py
+index d24f058..3ee9a37 100644
+--- a/tests/test_gsl.py
++++ b/tests/test_gsl.py
+@@ -4,8 +4,8 @@ class TestGSL(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import gsl
+-        except:
++            import cvxopt.gsl
++        except ModuleNotFoundError:
+             self.skipTest("GSL not available")
+ 
+     def test1(self):
+diff --git a/tests/test_mosek.py b/tests/test_mosek.py
+index e3d0f4e..6cd1fbf 100644
+--- a/tests/test_mosek.py
++++ b/tests/test_mosek.py
+@@ -4,8 +4,8 @@ class TestMOSEK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import msk
+-        except:
++            import cvxopt.msk
++        except ModuleNotFoundError:
+             self.skipTest("MOSEK not available")
+ 
+     def assertAlmostEqualLists(self,L1,L2,places=3):
diff --git a/srcpkgs/python3-cvxopt/template b/srcpkgs/python3-cvxopt/template
index 4044fbfea2a7..944086e37837 100644
--- a/srcpkgs/python3-cvxopt/template
+++ b/srcpkgs/python3-cvxopt/template
@@ -1,11 +1,11 @@
 # Template file for 'python3-cvxopt'
 pkgname=python3-cvxopt
 version=1.3.0
-revision=2
+revision=3
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-makedepends="python3-devel blas-devel lapack-devel SuiteSparse-devel gsl-devel
- glpk-devel fftw-devel"
+makedepends="python3-devel SuiteSparse-devel gsl-devel glpk-devel fftw-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 checkdepends="python3-pytest"
 short_desc="Python software for convex optimization"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
@@ -14,8 +14,20 @@ homepage="http://cvxopt.org/"
 distfiles="${PYPI_SITE}/c/cvxopt/cvxopt-${version}.tar.gz"
 checksum=00b1b232f9d1f902d578a9d75814b67fa020758d5ae422e28ca8cef6269fa5c6
 
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
+
 pre_build() {
 	export CVXOPT_BUILD_GSL=1
 	export CVXOPT_BUILD_GLPK=1
 	export CVXOPT_BUILD_FFTW=1
+	export CVXOPT_BLAS_LIB=$(vopt_if openblas 'openblas' 'blas;gslcblas')
+	export CVXOPT_LAPACK_LIB=$(vopt_if openblas 'openblas' 'lapack')
 }

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (2 preceding siblings ...)
  2022-11-15 20:50 ` [PR PATCH] [Updated] SuiteSparse: update to 6.0.0 tornaria
@ 2022-11-16  1:54 ` tornaria
  2022-11-24 10:55 ` [PR PATCH] [Updated] " tornaria
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-16  1:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 736 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1316171090

Comment:
The CI failures look harmless:
 - A file conflict that we already have; I don't know how this can be resolved.
```
SuiteSparse-devel and mongoose-devel conflict for
  /usr/lib/libmongoose.a
  /usr/lib/libmongoose.so
```
- Package `igraph` used to depend on a shlib that bumped soname so it would merit a revbump. However, there is #40224 to update  `igraph`, the new version does not depend on SuiteSparse at all.
```
Trying to install dependants of SuiteSparse-devel:
igraph-0.9.8_1: broken, unresolvable shlib `libcxsparse.so.3'
Transaction aborted due to unresolved shlibs.
``` 

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (3 preceding siblings ...)
  2022-11-16  1:54 ` SuiteSparse: update to 6.0.1 tornaria
@ 2022-11-24 10:55 ` tornaria
  2022-11-24 11:19 ` tornaria
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-24 10:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1368 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 6.0.1.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 10535 bytes --]

From 52d2e9cd6e77640acc204b26d711f9bc7df73a04 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH 1/2] SuiteSparse: update to 6.0.1.

 - use openblas instead of lapack when available.
 - add shlibs that will be used by octave.
---
 common/shlibs                                 | 13 ++++--
 .../patches/skip-demo-on-build.patch          | 22 ----------
 srcpkgs/SuiteSparse/template                  | 40 +++++++++++--------
 3 files changed, 33 insertions(+), 42 deletions(-)
 delete mode 100644 srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch

diff --git a/common/shlibs b/common/shlibs
index 61f21bc3b94e..2e6db58a102b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -71,7 +71,6 @@ libppl.so.14 ppl-1.2_1
 libppl_c.so.4 ppl-0.11_1
 libstdc++.so.6 libstdc++-4.4.0_1
 libssp.so.0 libssp-4.4.0_1
-libcxsparse.so.3 SuiteSparse-5.10.1_1
 libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
@@ -4064,9 +4063,15 @@ libprimecount.so.7 primecount-7.2_1
 libprimesieve.so.10 primesieve-8.0_1
 libavif.so.15 libavif-0.11.0_1
 libkdumpfile.so.10 libkdumpfile-0.4.1_1
-libamd.so.2 SuiteSparse-5.10.1_1
-libcholmod.so.3 SuiteSparse-5.10.1_1
-libumfpack.so.5 SuiteSparse-5.10.1_1
+libamd.so.3 SuiteSparse-6.0.1_1
+libcamd.so.3 SuiteSparse-6.0.1_1
+libccolamd.so.3 SuiteSparse-6.0.1_1
+libcholmod.so.4 SuiteSparse-6.0.1_1
+libcolamd.so.3 SuiteSparse-6.0.1_1
+libcxsparse.so.4 SuiteSparse-6.0.1_1
+libspqr.so.3 SuiteSparse-6.0.1_1
+libsuitesparseconfig.so.6 SuiteSparse-6.0.1_1
+libumfpack.so.6 SuiteSparse-6.0.1_1
 libecl.so.21.2 ecl-21.2.1_1
 libecm.so.1 ecm-7.0.4_3
 libcliquer.so.1 cliquer-1.22_1
diff --git a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch b/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
deleted file mode 100644
index 9ec775229ed6..000000000000
--- a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-This is to avoid running demos on `make install`, which break cross compile
-
---- a/Makefile
-+++ b/Makefile
-@@ -294,7 +294,7 @@ endif
- # just compile GraphBLAS
- gb:
- 	echo $(CMAKE_OPTIONS)
--	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install GraphBLAS libgraphblas_renamed, for MATLAB
- gbrenamed:
-@@ -309,7 +309,7 @@ gbrenamed:
- 
- # just compile Mongoose
- mon:
--	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install Mongoose
- moninstall: mon
diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..212162449103 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,33 +1,43 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=6.0.1
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
-make_build_args="BLAS=-lblas LAPACK=-llapack"
-hostmakedepends="cmake chrpath"
-makedepends="libgomp-devel lapack-devel mpfr-devel"
+hostmakedepends="cmake gcc-fortran"
+makedepends="libgomp-devel mpfr-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 short_desc="Suite of sparse matrix software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=06f55a0449775d1f43d8a33ba8c8417ea8cf76c27833b465c49825baa8741d0c
+
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
 
 do_build() {
-	make config library $make_build_args JOBS=$XBPS_MAKEJOBS
+	make library \
+		JOBS=$XBPS_MAKEJOBS \
+		CMAKE_OPTIONS="-DBLA_VENDOR=$(vopt_if openblas 'OpenBLAS' 'Generic') \
+		               -DCMAKE_INSTALL_PREFIX=$DESTDIR/usr"
 }
 
 do_check() {
-	make go $make_build_args LD_LIBRARY_PATH=$wrksrc/lib JOBS=$XBPS_MAKEJOBS
+	make demos \
+		JOBS=$XBPS_MAKEJOBS
 }
 
 do_install() {
-	make install $make_build_args INSTALL=$DESTDIR/usr
+	make install
 	vlicense LICENSE.txt
-
-	# remove invalid rpath
-	chrpath -d $DESTDIR/usr/lib/lib*.so
 }
 
 SuiteSparse-devel_package() {
@@ -35,10 +45,8 @@ SuiteSparse-devel_package() {
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.a"
-		# do not vmove libmetis.so
-		vmove "usr/lib/lib[a-ln-z]*.so"
-		vmove "usr/lib/libmo*.so"
-		vmove usr/share/doc
+		vmove "usr/lib/*.so"
 	}
 }

From f3387c874c4b1b6421c016dee45309b221502253 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 13 Nov 2022 00:33:48 -0300
Subject: [PATCH 2/2] python3-cvxopt: revbump for SuiteSparse 6.0.1.

 - use openblas instead of lapack when available.
---
 srcpkgs/python3-cvxopt/patches/fix-gsl.patch  | 11 ---
 .../python3-cvxopt/patches/test-modules.patch | 76 +++++++++++++++++++
 srcpkgs/python3-cvxopt/template               | 18 ++++-
 3 files changed, 91 insertions(+), 14 deletions(-)
 delete mode 100644 srcpkgs/python3-cvxopt/patches/fix-gsl.patch
 create mode 100644 srcpkgs/python3-cvxopt/patches/test-modules.patch

diff --git a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch b/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
deleted file mode 100644
index e32dc2fbf1e1..000000000000
--- a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py	2022-03-07 18:58:58.000000000 -0300
-+++ b/setup.py	2022-04-14 22:25:18.860887901 -0300
-@@ -129,7 +129,7 @@
- # optional modules
- 
- if BUILD_GSL:
--    gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB,
-+    gsl = Extension('gsl', libraries = M_LIB + ['gsl', 'gslcblas'],
-         include_dirs = [ GSL_INC_DIR ],
-         library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ],
-         define_macros = GSL_MACROS,
diff --git a/srcpkgs/python3-cvxopt/patches/test-modules.patch b/srcpkgs/python3-cvxopt/patches/test-modules.patch
new file mode 100644
index 000000000000..6562b7e002e1
--- /dev/null
+++ b/srcpkgs/python3-cvxopt/patches/test-modules.patch
@@ -0,0 +1,76 @@
+diff --git a/tests/test_dsdp.py b/tests/test_dsdp.py
+index d514dc8..2a5e5bf 100644
+--- a/tests/test_dsdp.py
++++ b/tests/test_dsdp.py
+@@ -4,9 +4,10 @@ class TestDSDP(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import dsdp, matrix
+-        except:
++            import cvxopt.dsdp
++        except ModuleNotFoundError:
+             self.skipTest("DSDP not available")
++        from cvxopt import matrix
+         c = matrix([1.,-1.,1.])
+         G = [ matrix([[-7., -11., -11., 3.],
+                     [ 7., -18., -18., 8.],
+diff --git a/tests/test_glpk.py b/tests/test_glpk.py
+index 89f876d..dad5801 100644
+--- a/tests/test_glpk.py
++++ b/tests/test_glpk.py
+@@ -4,15 +4,16 @@ class TestGLPK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import glpk, matrix
+-            c = matrix([-4., -5.])
+-            G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
+-            h = matrix([3., 3., 0., 0.])
+-            A = matrix([1.0,1.0],(1,2))
+-            b = matrix(1.0)
+-            self._prob_data = (c,G,h,A,b)
+-        except:
++            import cvxopt.glpk
++        except ModuleNotFoundError:
+             self.skipTest("GLPK not available")
++        from cvxopt import matrix
++        c = matrix([-4., -5.])
++        G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
++        h = matrix([3., 3., 0., 0.])
++        A = matrix([1.0,1.0],(1,2))
++        b = matrix(1.0)
++        self._prob_data = (c,G,h,A,b)
+ 
+     def test_lp(self):
+         from cvxopt import solvers, glpk
+diff --git a/tests/test_gsl.py b/tests/test_gsl.py
+index d24f058..3ee9a37 100644
+--- a/tests/test_gsl.py
++++ b/tests/test_gsl.py
+@@ -4,8 +4,8 @@ class TestGSL(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import gsl
+-        except:
++            import cvxopt.gsl
++        except ModuleNotFoundError:
+             self.skipTest("GSL not available")
+ 
+     def test1(self):
+diff --git a/tests/test_mosek.py b/tests/test_mosek.py
+index e3d0f4e..6cd1fbf 100644
+--- a/tests/test_mosek.py
++++ b/tests/test_mosek.py
+@@ -4,8 +4,8 @@ class TestMOSEK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import msk
+-        except:
++            import cvxopt.msk
++        except ModuleNotFoundError:
+             self.skipTest("MOSEK not available")
+ 
+     def assertAlmostEqualLists(self,L1,L2,places=3):
diff --git a/srcpkgs/python3-cvxopt/template b/srcpkgs/python3-cvxopt/template
index 4044fbfea2a7..944086e37837 100644
--- a/srcpkgs/python3-cvxopt/template
+++ b/srcpkgs/python3-cvxopt/template
@@ -1,11 +1,11 @@
 # Template file for 'python3-cvxopt'
 pkgname=python3-cvxopt
 version=1.3.0
-revision=2
+revision=3
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-makedepends="python3-devel blas-devel lapack-devel SuiteSparse-devel gsl-devel
- glpk-devel fftw-devel"
+makedepends="python3-devel SuiteSparse-devel gsl-devel glpk-devel fftw-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 checkdepends="python3-pytest"
 short_desc="Python software for convex optimization"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
@@ -14,8 +14,20 @@ homepage="http://cvxopt.org/"
 distfiles="${PYPI_SITE}/c/cvxopt/cvxopt-${version}.tar.gz"
 checksum=00b1b232f9d1f902d578a9d75814b67fa020758d5ae422e28ca8cef6269fa5c6
 
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
+
 pre_build() {
 	export CVXOPT_BUILD_GSL=1
 	export CVXOPT_BUILD_GLPK=1
 	export CVXOPT_BUILD_FFTW=1
+	export CVXOPT_BLAS_LIB=$(vopt_if openblas 'openblas' 'blas;gslcblas')
+	export CVXOPT_LAPACK_LIB=$(vopt_if openblas 'openblas' 'lapack')
 }

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (4 preceding siblings ...)
  2022-11-24 10:55 ` [PR PATCH] [Updated] " tornaria
@ 2022-11-24 11:19 ` tornaria
  2022-11-24 11:22 ` tornaria
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-24 11:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1368 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 6.0.1.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 10651 bytes --]

From cf57d89aec6c479abe8088e11e6cedad64e0c1d7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH 1/2] SuiteSparse: update to 6.0.1.

 - use openblas instead of lapack when available.
 - add shlibs that will be used by octave.
 - SuiteSparse-devel and mongoose-devel conflict for libmongoose.{so,a}
---
 common/shlibs                                 | 13 ++++--
 .../patches/skip-demo-on-build.patch          | 22 ----------
 srcpkgs/SuiteSparse/template                  | 41 +++++++++++--------
 3 files changed, 34 insertions(+), 42 deletions(-)
 delete mode 100644 srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch

diff --git a/common/shlibs b/common/shlibs
index 61f21bc3b94e..2e6db58a102b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -71,7 +71,6 @@ libppl.so.14 ppl-1.2_1
 libppl_c.so.4 ppl-0.11_1
 libstdc++.so.6 libstdc++-4.4.0_1
 libssp.so.0 libssp-4.4.0_1
-libcxsparse.so.3 SuiteSparse-5.10.1_1
 libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
@@ -4064,9 +4063,15 @@ libprimecount.so.7 primecount-7.2_1
 libprimesieve.so.10 primesieve-8.0_1
 libavif.so.15 libavif-0.11.0_1
 libkdumpfile.so.10 libkdumpfile-0.4.1_1
-libamd.so.2 SuiteSparse-5.10.1_1
-libcholmod.so.3 SuiteSparse-5.10.1_1
-libumfpack.so.5 SuiteSparse-5.10.1_1
+libamd.so.3 SuiteSparse-6.0.1_1
+libcamd.so.3 SuiteSparse-6.0.1_1
+libccolamd.so.3 SuiteSparse-6.0.1_1
+libcholmod.so.4 SuiteSparse-6.0.1_1
+libcolamd.so.3 SuiteSparse-6.0.1_1
+libcxsparse.so.4 SuiteSparse-6.0.1_1
+libspqr.so.3 SuiteSparse-6.0.1_1
+libsuitesparseconfig.so.6 SuiteSparse-6.0.1_1
+libumfpack.so.6 SuiteSparse-6.0.1_1
 libecl.so.21.2 ecl-21.2.1_1
 libecm.so.1 ecm-7.0.4_3
 libcliquer.so.1 cliquer-1.22_1
diff --git a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch b/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
deleted file mode 100644
index 9ec775229ed6..000000000000
--- a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-This is to avoid running demos on `make install`, which break cross compile
-
---- a/Makefile
-+++ b/Makefile
-@@ -294,7 +294,7 @@ endif
- # just compile GraphBLAS
- gb:
- 	echo $(CMAKE_OPTIONS)
--	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install GraphBLAS libgraphblas_renamed, for MATLAB
- gbrenamed:
-@@ -309,7 +309,7 @@ gbrenamed:
- 
- # just compile Mongoose
- mon:
--	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install Mongoose
- moninstall: mon
diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..5b081d701b3c 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,44 +1,53 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=6.0.1
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
-make_build_args="BLAS=-lblas LAPACK=-llapack"
-hostmakedepends="cmake chrpath"
-makedepends="libgomp-devel lapack-devel mpfr-devel"
+hostmakedepends="cmake gcc-fortran"
+makedepends="libgomp-devel mpfr-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 short_desc="Suite of sparse matrix software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=06f55a0449775d1f43d8a33ba8c8417ea8cf76c27833b465c49825baa8741d0c
+
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
 
 do_build() {
-	make config library $make_build_args JOBS=$XBPS_MAKEJOBS
+	make library \
+		JOBS=$XBPS_MAKEJOBS \
+		CMAKE_OPTIONS="-DBLA_VENDOR=$(vopt_if openblas 'OpenBLAS' 'Generic') \
+		               -DCMAKE_INSTALL_PREFIX=$DESTDIR/usr"
 }
 
 do_check() {
-	make go $make_build_args LD_LIBRARY_PATH=$wrksrc/lib JOBS=$XBPS_MAKEJOBS
+	make demos \
+		JOBS=$XBPS_MAKEJOBS
 }
 
 do_install() {
-	make install $make_build_args INSTALL=$DESTDIR/usr
+	make install
 	vlicense LICENSE.txt
-
-	# remove invalid rpath
-	chrpath -d $DESTDIR/usr/lib/lib*.so
 }
 
 SuiteSparse-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
+	conflicts="mongoose-devel"
 	pkg_install() {
 		vmove usr/include
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.a"
-		# do not vmove libmetis.so
-		vmove "usr/lib/lib[a-ln-z]*.so"
-		vmove "usr/lib/libmo*.so"
-		vmove usr/share/doc
+		vmove "usr/lib/*.so"
 	}
 }

From 0ab7ebf8b3d8358c343c175ed996f708c75056ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 13 Nov 2022 00:33:48 -0300
Subject: [PATCH 2/2] python3-cvxopt: revbump for SuiteSparse 6.0.1.

 - use openblas instead of lapack when available.
---
 srcpkgs/python3-cvxopt/patches/fix-gsl.patch  | 11 ---
 .../python3-cvxopt/patches/test-modules.patch | 76 +++++++++++++++++++
 srcpkgs/python3-cvxopt/template               | 18 ++++-
 3 files changed, 91 insertions(+), 14 deletions(-)
 delete mode 100644 srcpkgs/python3-cvxopt/patches/fix-gsl.patch
 create mode 100644 srcpkgs/python3-cvxopt/patches/test-modules.patch

diff --git a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch b/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
deleted file mode 100644
index e32dc2fbf1e1..000000000000
--- a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py	2022-03-07 18:58:58.000000000 -0300
-+++ b/setup.py	2022-04-14 22:25:18.860887901 -0300
-@@ -129,7 +129,7 @@
- # optional modules
- 
- if BUILD_GSL:
--    gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB,
-+    gsl = Extension('gsl', libraries = M_LIB + ['gsl', 'gslcblas'],
-         include_dirs = [ GSL_INC_DIR ],
-         library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ],
-         define_macros = GSL_MACROS,
diff --git a/srcpkgs/python3-cvxopt/patches/test-modules.patch b/srcpkgs/python3-cvxopt/patches/test-modules.patch
new file mode 100644
index 000000000000..6562b7e002e1
--- /dev/null
+++ b/srcpkgs/python3-cvxopt/patches/test-modules.patch
@@ -0,0 +1,76 @@
+diff --git a/tests/test_dsdp.py b/tests/test_dsdp.py
+index d514dc8..2a5e5bf 100644
+--- a/tests/test_dsdp.py
++++ b/tests/test_dsdp.py
+@@ -4,9 +4,10 @@ class TestDSDP(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import dsdp, matrix
+-        except:
++            import cvxopt.dsdp
++        except ModuleNotFoundError:
+             self.skipTest("DSDP not available")
++        from cvxopt import matrix
+         c = matrix([1.,-1.,1.])
+         G = [ matrix([[-7., -11., -11., 3.],
+                     [ 7., -18., -18., 8.],
+diff --git a/tests/test_glpk.py b/tests/test_glpk.py
+index 89f876d..dad5801 100644
+--- a/tests/test_glpk.py
++++ b/tests/test_glpk.py
+@@ -4,15 +4,16 @@ class TestGLPK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import glpk, matrix
+-            c = matrix([-4., -5.])
+-            G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
+-            h = matrix([3., 3., 0., 0.])
+-            A = matrix([1.0,1.0],(1,2))
+-            b = matrix(1.0)
+-            self._prob_data = (c,G,h,A,b)
+-        except:
++            import cvxopt.glpk
++        except ModuleNotFoundError:
+             self.skipTest("GLPK not available")
++        from cvxopt import matrix
++        c = matrix([-4., -5.])
++        G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
++        h = matrix([3., 3., 0., 0.])
++        A = matrix([1.0,1.0],(1,2))
++        b = matrix(1.0)
++        self._prob_data = (c,G,h,A,b)
+ 
+     def test_lp(self):
+         from cvxopt import solvers, glpk
+diff --git a/tests/test_gsl.py b/tests/test_gsl.py
+index d24f058..3ee9a37 100644
+--- a/tests/test_gsl.py
++++ b/tests/test_gsl.py
+@@ -4,8 +4,8 @@ class TestGSL(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import gsl
+-        except:
++            import cvxopt.gsl
++        except ModuleNotFoundError:
+             self.skipTest("GSL not available")
+ 
+     def test1(self):
+diff --git a/tests/test_mosek.py b/tests/test_mosek.py
+index e3d0f4e..6cd1fbf 100644
+--- a/tests/test_mosek.py
++++ b/tests/test_mosek.py
+@@ -4,8 +4,8 @@ class TestMOSEK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import msk
+-        except:
++            import cvxopt.msk
++        except ModuleNotFoundError:
+             self.skipTest("MOSEK not available")
+ 
+     def assertAlmostEqualLists(self,L1,L2,places=3):
diff --git a/srcpkgs/python3-cvxopt/template b/srcpkgs/python3-cvxopt/template
index 4044fbfea2a7..944086e37837 100644
--- a/srcpkgs/python3-cvxopt/template
+++ b/srcpkgs/python3-cvxopt/template
@@ -1,11 +1,11 @@
 # Template file for 'python3-cvxopt'
 pkgname=python3-cvxopt
 version=1.3.0
-revision=2
+revision=3
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-makedepends="python3-devel blas-devel lapack-devel SuiteSparse-devel gsl-devel
- glpk-devel fftw-devel"
+makedepends="python3-devel SuiteSparse-devel gsl-devel glpk-devel fftw-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 checkdepends="python3-pytest"
 short_desc="Python software for convex optimization"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
@@ -14,8 +14,20 @@ homepage="http://cvxopt.org/"
 distfiles="${PYPI_SITE}/c/cvxopt/cvxopt-${version}.tar.gz"
 checksum=00b1b232f9d1f902d578a9d75814b67fa020758d5ae422e28ca8cef6269fa5c6
 
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
+
 pre_build() {
 	export CVXOPT_BUILD_GSL=1
 	export CVXOPT_BUILD_GLPK=1
 	export CVXOPT_BUILD_FFTW=1
+	export CVXOPT_BLAS_LIB=$(vopt_if openblas 'openblas' 'blas;gslcblas')
+	export CVXOPT_LAPACK_LIB=$(vopt_if openblas 'openblas' 'lapack')
 }

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (5 preceding siblings ...)
  2022-11-24 11:19 ` tornaria
@ 2022-11-24 11:22 ` tornaria
  2022-11-24 11:27 ` tornaria
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-24 11:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1368 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 6.0.1.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 10697 bytes --]

From 90bf14f32c03f0d37474f4307f1f0d51e8e69618 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH 1/2] SuiteSparse: update to 6.0.1.

 - use openblas instead of lapack when available.
 - add shlibs that will be used by octave.
 - SuiteSparse-devel and mongoose-devel conflict for libmongoose.{so,a}.
---
 common/shlibs                                 | 13 ++++--
 .../patches/skip-demo-on-build.patch          | 22 ----------
 srcpkgs/SuiteSparse/template                  | 42 ++++++++++++-------
 3 files changed, 35 insertions(+), 42 deletions(-)
 delete mode 100644 srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch

diff --git a/common/shlibs b/common/shlibs
index 61f21bc3b94e..2e6db58a102b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -71,7 +71,6 @@ libppl.so.14 ppl-1.2_1
 libppl_c.so.4 ppl-0.11_1
 libstdc++.so.6 libstdc++-4.4.0_1
 libssp.so.0 libssp-4.4.0_1
-libcxsparse.so.3 SuiteSparse-5.10.1_1
 libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
@@ -4064,9 +4063,15 @@ libprimecount.so.7 primecount-7.2_1
 libprimesieve.so.10 primesieve-8.0_1
 libavif.so.15 libavif-0.11.0_1
 libkdumpfile.so.10 libkdumpfile-0.4.1_1
-libamd.so.2 SuiteSparse-5.10.1_1
-libcholmod.so.3 SuiteSparse-5.10.1_1
-libumfpack.so.5 SuiteSparse-5.10.1_1
+libamd.so.3 SuiteSparse-6.0.1_1
+libcamd.so.3 SuiteSparse-6.0.1_1
+libccolamd.so.3 SuiteSparse-6.0.1_1
+libcholmod.so.4 SuiteSparse-6.0.1_1
+libcolamd.so.3 SuiteSparse-6.0.1_1
+libcxsparse.so.4 SuiteSparse-6.0.1_1
+libspqr.so.3 SuiteSparse-6.0.1_1
+libsuitesparseconfig.so.6 SuiteSparse-6.0.1_1
+libumfpack.so.6 SuiteSparse-6.0.1_1
 libecl.so.21.2 ecl-21.2.1_1
 libecm.so.1 ecm-7.0.4_3
 libcliquer.so.1 cliquer-1.22_1
diff --git a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch b/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
deleted file mode 100644
index 9ec775229ed6..000000000000
--- a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-This is to avoid running demos on `make install`, which break cross compile
-
---- a/Makefile
-+++ b/Makefile
-@@ -294,7 +294,7 @@ endif
- # just compile GraphBLAS
- gb:
- 	echo $(CMAKE_OPTIONS)
--	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install GraphBLAS libgraphblas_renamed, for MATLAB
- gbrenamed:
-@@ -309,7 +309,7 @@ gbrenamed:
- 
- # just compile Mongoose
- mon:
--	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install Mongoose
- moninstall: mon
diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..869237dc9f85 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,44 +1,54 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=6.0.1
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
-make_build_args="BLAS=-lblas LAPACK=-llapack"
-hostmakedepends="cmake chrpath"
-makedepends="libgomp-devel lapack-devel mpfr-devel"
+hostmakedepends="cmake gcc-fortran"
+makedepends="libgomp-devel mpfr-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 short_desc="Suite of sparse matrix software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=06f55a0449775d1f43d8a33ba8c8417ea8cf76c27833b465c49825baa8741d0c
+
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
 
 do_build() {
-	make config library $make_build_args JOBS=$XBPS_MAKEJOBS
+	make library \
+		JOBS=$XBPS_MAKEJOBS \
+		CMAKE_OPTIONS="-DBLA_VENDOR=$(vopt_if openblas 'OpenBLAS' 'Generic') \
+		               -DCMAKE_INSTALL_PREFIX=$DESTDIR/usr"
 }
 
 do_check() {
-	make go $make_build_args LD_LIBRARY_PATH=$wrksrc/lib JOBS=$XBPS_MAKEJOBS
+	make demos \
+		JOBS=$XBPS_MAKEJOBS
 }
 
 do_install() {
-	make install $make_build_args INSTALL=$DESTDIR/usr
+	make install
 	vlicense LICENSE.txt
-
-	# remove invalid rpath
-	chrpath -d $DESTDIR/usr/lib/lib*.so
 }
 
 SuiteSparse-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
+	# conflict for /usr/lib/libmongoose.{a,so}
+	conflicts="mongoose-devel"
 	pkg_install() {
 		vmove usr/include
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.a"
-		# do not vmove libmetis.so
-		vmove "usr/lib/lib[a-ln-z]*.so"
-		vmove "usr/lib/libmo*.so"
-		vmove usr/share/doc
+		vmove "usr/lib/*.so"
 	}
 }

From f221245feecbec93f863b5a101b2b7e864d744b2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 13 Nov 2022 00:33:48 -0300
Subject: [PATCH 2/2] python3-cvxopt: revbump for SuiteSparse 6.0.1.

 - use openblas instead of lapack when available.
---
 srcpkgs/python3-cvxopt/patches/fix-gsl.patch  | 11 ---
 .../python3-cvxopt/patches/test-modules.patch | 76 +++++++++++++++++++
 srcpkgs/python3-cvxopt/template               | 18 ++++-
 3 files changed, 91 insertions(+), 14 deletions(-)
 delete mode 100644 srcpkgs/python3-cvxopt/patches/fix-gsl.patch
 create mode 100644 srcpkgs/python3-cvxopt/patches/test-modules.patch

diff --git a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch b/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
deleted file mode 100644
index e32dc2fbf1e1..000000000000
--- a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py	2022-03-07 18:58:58.000000000 -0300
-+++ b/setup.py	2022-04-14 22:25:18.860887901 -0300
-@@ -129,7 +129,7 @@
- # optional modules
- 
- if BUILD_GSL:
--    gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB,
-+    gsl = Extension('gsl', libraries = M_LIB + ['gsl', 'gslcblas'],
-         include_dirs = [ GSL_INC_DIR ],
-         library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ],
-         define_macros = GSL_MACROS,
diff --git a/srcpkgs/python3-cvxopt/patches/test-modules.patch b/srcpkgs/python3-cvxopt/patches/test-modules.patch
new file mode 100644
index 000000000000..6562b7e002e1
--- /dev/null
+++ b/srcpkgs/python3-cvxopt/patches/test-modules.patch
@@ -0,0 +1,76 @@
+diff --git a/tests/test_dsdp.py b/tests/test_dsdp.py
+index d514dc8..2a5e5bf 100644
+--- a/tests/test_dsdp.py
++++ b/tests/test_dsdp.py
+@@ -4,9 +4,10 @@ class TestDSDP(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import dsdp, matrix
+-        except:
++            import cvxopt.dsdp
++        except ModuleNotFoundError:
+             self.skipTest("DSDP not available")
++        from cvxopt import matrix
+         c = matrix([1.,-1.,1.])
+         G = [ matrix([[-7., -11., -11., 3.],
+                     [ 7., -18., -18., 8.],
+diff --git a/tests/test_glpk.py b/tests/test_glpk.py
+index 89f876d..dad5801 100644
+--- a/tests/test_glpk.py
++++ b/tests/test_glpk.py
+@@ -4,15 +4,16 @@ class TestGLPK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import glpk, matrix
+-            c = matrix([-4., -5.])
+-            G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
+-            h = matrix([3., 3., 0., 0.])
+-            A = matrix([1.0,1.0],(1,2))
+-            b = matrix(1.0)
+-            self._prob_data = (c,G,h,A,b)
+-        except:
++            import cvxopt.glpk
++        except ModuleNotFoundError:
+             self.skipTest("GLPK not available")
++        from cvxopt import matrix
++        c = matrix([-4., -5.])
++        G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
++        h = matrix([3., 3., 0., 0.])
++        A = matrix([1.0,1.0],(1,2))
++        b = matrix(1.0)
++        self._prob_data = (c,G,h,A,b)
+ 
+     def test_lp(self):
+         from cvxopt import solvers, glpk
+diff --git a/tests/test_gsl.py b/tests/test_gsl.py
+index d24f058..3ee9a37 100644
+--- a/tests/test_gsl.py
++++ b/tests/test_gsl.py
+@@ -4,8 +4,8 @@ class TestGSL(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import gsl
+-        except:
++            import cvxopt.gsl
++        except ModuleNotFoundError:
+             self.skipTest("GSL not available")
+ 
+     def test1(self):
+diff --git a/tests/test_mosek.py b/tests/test_mosek.py
+index e3d0f4e..6cd1fbf 100644
+--- a/tests/test_mosek.py
++++ b/tests/test_mosek.py
+@@ -4,8 +4,8 @@ class TestMOSEK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import msk
+-        except:
++            import cvxopt.msk
++        except ModuleNotFoundError:
+             self.skipTest("MOSEK not available")
+ 
+     def assertAlmostEqualLists(self,L1,L2,places=3):
diff --git a/srcpkgs/python3-cvxopt/template b/srcpkgs/python3-cvxopt/template
index 4044fbfea2a7..944086e37837 100644
--- a/srcpkgs/python3-cvxopt/template
+++ b/srcpkgs/python3-cvxopt/template
@@ -1,11 +1,11 @@
 # Template file for 'python3-cvxopt'
 pkgname=python3-cvxopt
 version=1.3.0
-revision=2
+revision=3
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-makedepends="python3-devel blas-devel lapack-devel SuiteSparse-devel gsl-devel
- glpk-devel fftw-devel"
+makedepends="python3-devel SuiteSparse-devel gsl-devel glpk-devel fftw-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 checkdepends="python3-pytest"
 short_desc="Python software for convex optimization"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
@@ -14,8 +14,20 @@ homepage="http://cvxopt.org/"
 distfiles="${PYPI_SITE}/c/cvxopt/cvxopt-${version}.tar.gz"
 checksum=00b1b232f9d1f902d578a9d75814b67fa020758d5ae422e28ca8cef6269fa5c6
 
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
+
 pre_build() {
 	export CVXOPT_BUILD_GSL=1
 	export CVXOPT_BUILD_GLPK=1
 	export CVXOPT_BUILD_FFTW=1
+	export CVXOPT_BLAS_LIB=$(vopt_if openblas 'openblas' 'blas;gslcblas')
+	export CVXOPT_LAPACK_LIB=$(vopt_if openblas 'openblas' 'lapack')
 }

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (6 preceding siblings ...)
  2022-11-24 11:22 ` tornaria
@ 2022-11-24 11:27 ` tornaria
  2022-11-24 12:45 ` tornaria
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-24 11:27 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 404 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1326320552

Comment:
Apologies for the multiple force-push. Just two changes:
 - added more shlibs to `common/shlibs`, they will be used by octave in #40720
 - annotate the conflict between `SuiteSparse-devel` and `mongoose-devel`

Hopefully with these two changes CI will pass.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (7 preceding siblings ...)
  2022-11-24 11:27 ` tornaria
@ 2022-11-24 12:45 ` tornaria
  2022-12-03 22:37 ` Piraty
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-11-24 12:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 423 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1326403975

Comment:
Now the three CI failures are just the expected `igraph-0.9.8_1: broken, unresolvable shlib `libcxsparse.so.3'` because of the soname change. This will resolve once #40224 is merged, since igraph-0.10.2 does not link to SuiteSparse at all, it seems a waste to revbump igraph here.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (8 preceding siblings ...)
  2022-11-24 12:45 ` tornaria
@ 2022-12-03 22:37 ` Piraty
  2022-12-03 22:46 ` Piraty
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: Piraty @ 2022-12-03 22:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 245 bytes --]

New comment by Piraty on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1336271191

Comment:
of course igraph requires a revbump, in `igraph-0.9.8_1`,  `libigraph.so.0.0.0` links `libcxsparse.so.3`

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (9 preceding siblings ...)
  2022-12-03 22:37 ` Piraty
@ 2022-12-03 22:46 ` Piraty
  2022-12-03 22:48 ` Piraty
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: Piraty @ 2022-12-03 22:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 286 bytes --]

New comment by Piraty on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1336271191

Comment:
of course igraph requires a revbump, in `igraph-0.9.8_1`,  `libigraph.so.0.0.0` links `libcxsparse.so.3`
EDIT: ah i see, igraph vendors CSparse.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (10 preceding siblings ...)
  2022-12-03 22:46 ` Piraty
@ 2022-12-03 22:48 ` Piraty
  2022-12-04  0:16 ` Piraty
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: Piraty @ 2022-12-03 22:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 337 bytes --]

New comment by Piraty on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1336271191

Comment:
of course igraph requires a revbump, in `igraph-0.9.8_1`,  `libigraph.so.0.0.0` links `libcxsparse.so.3`
EDIT: ah i see, igraph vendors CSparse. no revbump needed now that igraph update is merged

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (11 preceding siblings ...)
  2022-12-03 22:48 ` Piraty
@ 2022-12-04  0:16 ` Piraty
  2022-12-04  0:23 ` [PR PATCH] [Updated] " tornaria
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: Piraty @ 2022-12-04  0:16 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 180 bytes --]

New comment by Piraty on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1336284759

Comment:
can you please rebase, so CI runs again

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (12 preceding siblings ...)
  2022-12-04  0:16 ` Piraty
@ 2022-12-04  0:23 ` tornaria
  2022-12-04  1:44 ` tornaria
  2022-12-04 21:11 ` [PR PATCH] [Merged]: " Piraty
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-12-04  0:23 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1368 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages SuiteSparse
https://github.com/void-linux/void-packages/pull/39846

SuiteSparse: update to 6.0.1.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39846.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-SuiteSparse-39846.patch --]
[-- Type: text/x-diff, Size: 10697 bytes --]

From 6ebe71ce7c92ceccf503b2739e516cec5c9a1784 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 9 Oct 2022 17:46:15 -0300
Subject: [PATCH 1/2] SuiteSparse: update to 6.0.1.

 - use openblas instead of lapack when available.
 - add shlibs that will be used by octave.
 - SuiteSparse-devel and mongoose-devel conflict for libmongoose.{so,a}.
---
 common/shlibs                                 | 13 ++++--
 .../patches/skip-demo-on-build.patch          | 22 ----------
 srcpkgs/SuiteSparse/template                  | 42 ++++++++++++-------
 3 files changed, 35 insertions(+), 42 deletions(-)
 delete mode 100644 srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch

diff --git a/common/shlibs b/common/shlibs
index 644676c76ec2..2832875d8ce4 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -71,7 +71,6 @@ libppl.so.14 ppl-1.2_1
 libppl_c.so.4 ppl-0.11_1
 libstdc++.so.6 libstdc++-4.4.0_1
 libssp.so.0 libssp-4.4.0_1
-libcxsparse.so.3 SuiteSparse-5.10.1_1
 libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
@@ -4071,9 +4070,15 @@ libprimecount.so.7 primecount-7.2_1
 libprimesieve.so.10 primesieve-8.0_1
 libavif.so.15 libavif-0.11.0_1
 libkdumpfile.so.10 libkdumpfile-0.4.1_1
-libamd.so.2 SuiteSparse-5.10.1_1
-libcholmod.so.3 SuiteSparse-5.10.1_1
-libumfpack.so.5 SuiteSparse-5.10.1_1
+libamd.so.3 SuiteSparse-6.0.1_1
+libcamd.so.3 SuiteSparse-6.0.1_1
+libccolamd.so.3 SuiteSparse-6.0.1_1
+libcholmod.so.4 SuiteSparse-6.0.1_1
+libcolamd.so.3 SuiteSparse-6.0.1_1
+libcxsparse.so.4 SuiteSparse-6.0.1_1
+libspqr.so.3 SuiteSparse-6.0.1_1
+libsuitesparseconfig.so.6 SuiteSparse-6.0.1_1
+libumfpack.so.6 SuiteSparse-6.0.1_1
 libecl.so.21.2 ecl-21.2.1_1
 libecm.so.1 ecm-7.0.4_3
 libcliquer.so.1 cliquer-1.22_1
diff --git a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch b/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
deleted file mode 100644
index 9ec775229ed6..000000000000
--- a/srcpkgs/SuiteSparse/patches/skip-demo-on-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-This is to avoid running demos on `make install`, which break cross compile
-
---- a/Makefile
-+++ b/Makefile
-@@ -294,7 +294,7 @@ endif
- # just compile GraphBLAS
- gb:
- 	echo $(CMAKE_OPTIONS)
--	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install GraphBLAS libgraphblas_renamed, for MATLAB
- gbrenamed:
-@@ -309,7 +309,7 @@ gbrenamed:
- 
- # just compile Mongoose
- mon:
--	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' )
-+	( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library )
- 
- # compile and install Mongoose
- moninstall: mon
diff --git a/srcpkgs/SuiteSparse/template b/srcpkgs/SuiteSparse/template
index b304dfc8f786..869237dc9f85 100644
--- a/srcpkgs/SuiteSparse/template
+++ b/srcpkgs/SuiteSparse/template
@@ -1,44 +1,54 @@
 # Template file for 'SuiteSparse'
 pkgname=SuiteSparse
-version=5.12.0
+version=6.0.1
 revision=1
-# XXX: re-enable TBB=-ltbb -DSPQR_CONFIG=-DHAVE_TBB when updating, if possible
-make_build_args="BLAS=-lblas LAPACK=-llapack"
-hostmakedepends="cmake chrpath"
-makedepends="libgomp-devel lapack-devel mpfr-devel"
+hostmakedepends="cmake gcc-fortran"
+makedepends="libgomp-devel mpfr-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 short_desc="Suite of sparse matrix software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="custom:multiple"
 homepage="https://people.engr.tamu.edu/davis/suitesparse.html"
 changelog="https://raw.githubusercontent.com/DrTimothyAldenDavis/SuiteSparse/master/ChangeLog"
 distfiles="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${version}.tar.gz"
-checksum=5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de
+checksum=06f55a0449775d1f43d8a33ba8c8417ea8cf76c27833b465c49825baa8741d0c
+
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
 
 do_build() {
-	make config library $make_build_args JOBS=$XBPS_MAKEJOBS
+	make library \
+		JOBS=$XBPS_MAKEJOBS \
+		CMAKE_OPTIONS="-DBLA_VENDOR=$(vopt_if openblas 'OpenBLAS' 'Generic') \
+		               -DCMAKE_INSTALL_PREFIX=$DESTDIR/usr"
 }
 
 do_check() {
-	make go $make_build_args LD_LIBRARY_PATH=$wrksrc/lib JOBS=$XBPS_MAKEJOBS
+	make demos \
+		JOBS=$XBPS_MAKEJOBS
 }
 
 do_install() {
-	make install $make_build_args INSTALL=$DESTDIR/usr
+	make install
 	vlicense LICENSE.txt
-
-	# remove invalid rpath
-	chrpath -d $DESTDIR/usr/lib/lib*.so
 }
 
 SuiteSparse-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
+	# conflict for /usr/lib/libmongoose.{a,so}
+	conflicts="mongoose-devel"
 	pkg_install() {
 		vmove usr/include
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.a"
-		# do not vmove libmetis.so
-		vmove "usr/lib/lib[a-ln-z]*.so"
-		vmove "usr/lib/libmo*.so"
-		vmove usr/share/doc
+		vmove "usr/lib/*.so"
 	}
 }

From e27800bd05eff541dc3cbfe9f0e7a3b5db59fe89 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Sun, 13 Nov 2022 00:33:48 -0300
Subject: [PATCH 2/2] python3-cvxopt: revbump for SuiteSparse 6.0.1.

 - use openblas instead of lapack when available.
---
 srcpkgs/python3-cvxopt/patches/fix-gsl.patch  | 11 ---
 .../python3-cvxopt/patches/test-modules.patch | 76 +++++++++++++++++++
 srcpkgs/python3-cvxopt/template               | 18 ++++-
 3 files changed, 91 insertions(+), 14 deletions(-)
 delete mode 100644 srcpkgs/python3-cvxopt/patches/fix-gsl.patch
 create mode 100644 srcpkgs/python3-cvxopt/patches/test-modules.patch

diff --git a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch b/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
deleted file mode 100644
index e32dc2fbf1e1..000000000000
--- a/srcpkgs/python3-cvxopt/patches/fix-gsl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py	2022-03-07 18:58:58.000000000 -0300
-+++ b/setup.py	2022-04-14 22:25:18.860887901 -0300
-@@ -129,7 +129,7 @@
- # optional modules
- 
- if BUILD_GSL:
--    gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB,
-+    gsl = Extension('gsl', libraries = M_LIB + ['gsl', 'gslcblas'],
-         include_dirs = [ GSL_INC_DIR ],
-         library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ],
-         define_macros = GSL_MACROS,
diff --git a/srcpkgs/python3-cvxopt/patches/test-modules.patch b/srcpkgs/python3-cvxopt/patches/test-modules.patch
new file mode 100644
index 000000000000..6562b7e002e1
--- /dev/null
+++ b/srcpkgs/python3-cvxopt/patches/test-modules.patch
@@ -0,0 +1,76 @@
+diff --git a/tests/test_dsdp.py b/tests/test_dsdp.py
+index d514dc8..2a5e5bf 100644
+--- a/tests/test_dsdp.py
++++ b/tests/test_dsdp.py
+@@ -4,9 +4,10 @@ class TestDSDP(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import dsdp, matrix
+-        except:
++            import cvxopt.dsdp
++        except ModuleNotFoundError:
+             self.skipTest("DSDP not available")
++        from cvxopt import matrix
+         c = matrix([1.,-1.,1.])
+         G = [ matrix([[-7., -11., -11., 3.],
+                     [ 7., -18., -18., 8.],
+diff --git a/tests/test_glpk.py b/tests/test_glpk.py
+index 89f876d..dad5801 100644
+--- a/tests/test_glpk.py
++++ b/tests/test_glpk.py
+@@ -4,15 +4,16 @@ class TestGLPK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import glpk, matrix
+-            c = matrix([-4., -5.])
+-            G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
+-            h = matrix([3., 3., 0., 0.])
+-            A = matrix([1.0,1.0],(1,2))
+-            b = matrix(1.0)
+-            self._prob_data = (c,G,h,A,b)
+-        except:
++            import cvxopt.glpk
++        except ModuleNotFoundError:
+             self.skipTest("GLPK not available")
++        from cvxopt import matrix
++        c = matrix([-4., -5.])
++        G = matrix([[2., 1., -1., 0.], [1., 2., 0., -1.]])
++        h = matrix([3., 3., 0., 0.])
++        A = matrix([1.0,1.0],(1,2))
++        b = matrix(1.0)
++        self._prob_data = (c,G,h,A,b)
+ 
+     def test_lp(self):
+         from cvxopt import solvers, glpk
+diff --git a/tests/test_gsl.py b/tests/test_gsl.py
+index d24f058..3ee9a37 100644
+--- a/tests/test_gsl.py
++++ b/tests/test_gsl.py
+@@ -4,8 +4,8 @@ class TestGSL(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import gsl
+-        except:
++            import cvxopt.gsl
++        except ModuleNotFoundError:
+             self.skipTest("GSL not available")
+ 
+     def test1(self):
+diff --git a/tests/test_mosek.py b/tests/test_mosek.py
+index e3d0f4e..6cd1fbf 100644
+--- a/tests/test_mosek.py
++++ b/tests/test_mosek.py
+@@ -4,8 +4,8 @@ class TestMOSEK(unittest.TestCase):
+ 
+     def setUp(self):
+         try:
+-            from cvxopt import msk
+-        except:
++            import cvxopt.msk
++        except ModuleNotFoundError:
+             self.skipTest("MOSEK not available")
+ 
+     def assertAlmostEqualLists(self,L1,L2,places=3):
diff --git a/srcpkgs/python3-cvxopt/template b/srcpkgs/python3-cvxopt/template
index 4044fbfea2a7..944086e37837 100644
--- a/srcpkgs/python3-cvxopt/template
+++ b/srcpkgs/python3-cvxopt/template
@@ -1,11 +1,11 @@
 # Template file for 'python3-cvxopt'
 pkgname=python3-cvxopt
 version=1.3.0
-revision=2
+revision=3
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-makedepends="python3-devel blas-devel lapack-devel SuiteSparse-devel gsl-devel
- glpk-devel fftw-devel"
+makedepends="python3-devel SuiteSparse-devel gsl-devel glpk-devel fftw-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel')"
 checkdepends="python3-pytest"
 short_desc="Python software for convex optimization"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
@@ -14,8 +14,20 @@ homepage="http://cvxopt.org/"
 distfiles="${PYPI_SITE}/c/cvxopt/cvxopt-${version}.tar.gz"
 checksum=00b1b232f9d1f902d578a9d75814b67fa020758d5ae422e28ca8cef6269fa5c6
 
+build_options="openblas"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
+
 pre_build() {
 	export CVXOPT_BUILD_GSL=1
 	export CVXOPT_BUILD_GLPK=1
 	export CVXOPT_BUILD_FFTW=1
+	export CVXOPT_BLAS_LIB=$(vopt_if openblas 'openblas' 'blas;gslcblas')
+	export CVXOPT_LAPACK_LIB=$(vopt_if openblas 'openblas' 'lapack')
 }

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (13 preceding siblings ...)
  2022-12-04  0:23 ` [PR PATCH] [Updated] " tornaria
@ 2022-12-04  1:44 ` tornaria
  2022-12-04 21:11 ` [PR PATCH] [Merged]: " Piraty
  15 siblings, 0 replies; 17+ messages in thread
From: tornaria @ 2022-12-04  1:44 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 223 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/39846#issuecomment-1336297706

Comment:
> can you please rebase, so CI runs again

Done, everything passed.

Thanks!

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Merged]: SuiteSparse: update to 6.0.1.
  2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
                   ` (14 preceding siblings ...)
  2022-12-04  1:44 ` tornaria
@ 2022-12-04 21:11 ` Piraty
  15 siblings, 0 replies; 17+ messages in thread
From: Piraty @ 2022-12-04 21:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1206 bytes --]

There's a merged pull request on the void-packages repository

SuiteSparse: update to 6.0.1.
https://github.com/void-linux/void-packages/pull/39846

Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

`SuiteSparse` is used in sagemath through `python3-cvxopt` -- I ran the sagemath testsuite with this update.

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-12-04 21:11 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-09 20:48 [PR PATCH] SuiteSparse: update to 5.13.0 tornaria
2022-10-15 13:24 ` tornaria
2022-11-13  3:41 ` [PR PATCH] [Updated] " tornaria
2022-11-15 20:50 ` [PR PATCH] [Updated] SuiteSparse: update to 6.0.0 tornaria
2022-11-16  1:54 ` SuiteSparse: update to 6.0.1 tornaria
2022-11-24 10:55 ` [PR PATCH] [Updated] " tornaria
2022-11-24 11:19 ` tornaria
2022-11-24 11:22 ` tornaria
2022-11-24 11:27 ` tornaria
2022-11-24 12:45 ` tornaria
2022-12-03 22:37 ` Piraty
2022-12-03 22:46 ` Piraty
2022-12-03 22:48 ` Piraty
2022-12-04  0:16 ` Piraty
2022-12-04  0:23 ` [PR PATCH] [Updated] " tornaria
2022-12-04  1:44 ` tornaria
2022-12-04 21:11 ` [PR PATCH] [Merged]: " Piraty

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).