Skip to content

Commit 058b511

Browse files
authored
deps/libsuitesparse: fix source build (#53150)
fix #53122
1 parent 6e7db14 commit 058b511

File tree

2 files changed

+24
-60
lines changed

2 files changed

+24
-60
lines changed

deps/libsuitesparse.mk

Lines changed: 24 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,38 @@ include $(SRCDIR)/libsuitesparse.version
33

44
ifneq ($(USE_BINARYBUILDER_LIBSUITESPARSE), 1)
55

6-
LIBSUITESPARSE_PROJECTS := "amd;btf;camd;ccolamd;colamd;cholmod;klu;ldl;umfpack;rbio;spqr"
6+
LIBSUITESPARSE_PROJECTS := "suitesparse_config;amd;btf;camd;ccolamd;colamd;cholmod;klu;ldl;umfpack;rbio;spqr"
77
LIBSUITESPARSE_LIBS := $(addsuffix .*$(SHLIB_EXT)*,suitesparseconfig $(subst ;, ,$(LIBSUITESPARSE_PROJECTS)))
88

9+
ifeq ($(OS),WINNT)
10+
BLAS_LIB_NAME_NO_EXT:=blastrampoline-5
11+
else
12+
BLAS_LIB_NAME_NO_EXT:=blastrampoline
13+
endif
14+
915
LIBSUITESPARSE_CMAKE_FLAGS := $(CMAKE_COMMON) \
1016
-DCMAKE_BUILD_TYPE=Release \
1117
-DBUILD_STATIC_LIBS=OFF \
1218
-DBUILD_TESTING=OFF \
13-
-DSUITESPARSE_ENABLE_PROJECTS="suitesparse_config;$(LIBSUITESPARSE_PROJECTS)" \
19+
-DSUITESPARSE_ENABLE_PROJECTS=$(LIBSUITESPARSE_PROJECTS) \
1420
-DSUITESPARSE_DEMOS=OFF \
1521
-DSUITESPARSE_USE_STRICT=ON \
1622
-DSUITESPARSE_USE_CUDA=OFF \
1723
-DSUITESPARSE_USE_FORTRAN=OFF \
1824
-DSUITESPARSE_USE_OPENMP=OFF \
1925
-DCHOLMOD_PARTITION=ON \
2026
-DBLAS_FOUND=1 \
21-
-DBLAS_LIBRARIES="$(build_shlibdir)/libblastrampoline.$(SHLIB_EXT)" \
22-
-DBLAS_LINKER_FLAGS="blastrampoline" \
23-
-DBLA_VENDOR="blastrampoline" \
24-
-DLAPACK_LIBRARIES="$(build_shlibdir)/libblastrampoline.$(SHLIB_EXT)" \
25-
-DLAPACK_LINKER_FLAGS="blastrampoline" \
26-
-DBLAS64_SUFFIX="_64" \
27-
-DSUITESPARSE_USE_64BIT_BLAS=YES
27+
-DBLAS_LIBRARIES="$(build_shlibdir)/lib$(BLAS_LIB_NAME_NO_EXT).$(SHLIB_EXT)" \
28+
-DBLAS_LINKER_FLAGS="$(BLAS_LIB_NAME_NO_EXT)" \
29+
-DBLA_VENDOR="$(BLAS_LIB_NAME_NO_EXT)" \
30+
-DLAPACK_LIBRARIES="$(build_shlibdir)/lib$(BLAS_LIB_NAME_NO_EXT).$(SHLIB_EXT)" \
31+
-DLAPACK_LINKER_FLAGS="${BLAS_LIB_NAME_NO_EXT}"
32+
33+
ifeq ($(BINARY),64)
34+
LIBSUITESPARSE_CMAKE_FLAGS += -DBLAS64_SUFFIX="_64" -DSUITESPARSE_USE_64BIT_BLAS=YES
35+
else
36+
LIBSUITESPARSE_CMAKE_FLAGS += -DSUITESPARSE_USE_64BIT_BLAS=NO
37+
endif
2838

2939
ifneq (,$(findstring $(OS),Linux FreeBSD))
3040
LIBSUITESPARSE_CMAKE_FLAGS += -DCMAKE_INSTALL_RPATH="\$$ORIGIN"
@@ -42,21 +52,15 @@ $(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-extracted: $(SRCCACHE)/Suit
4252
checksum-libsuitesparse: $(SRCCACHE)/SuiteSparse-$(LIBSUITESPARSE_VER).tar.gz
4353
$(JLCHECKSUM) $<
4454

45-
# https://github.com/DrTimothyAldenDavis/SuiteSparse/pull/671
46-
$(SRCCACHE)/SuiteSparse-$(LIBSUITESPARSE_VER)/suitesparse-blas-suffix.patch-applied: $(SRCCACHE)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-extracted
47-
cd $(dir $@) && \
48-
patch -p1 -f < $(SRCDIR)/patches/suitesparse-blas-suffix.patch
49-
echo 1 > $@
50-
51-
$(SRCCACHE)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-patched: $(SRCCACHE)/SuiteSparse-$(LIBSUITESPARSE_VER)/suitesparse-blas-suffix.patch-applied
55+
$(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-patched: $(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-extracted
5256
echo 1 > $@
5357

5458
$(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/build-compiled: | $(build_prefix)/manifest/blastrampoline
5559

56-
$(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/build-compiled: $(SRCCACHE)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-patched
57-
cd $(dir $<) && $(CMAKE) .. $(LIBSUITESPARSE_CMAKE_FLAGS)
58-
make
59-
make install
60+
$(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/build-compiled: $(BUILDDIR)/SuiteSparse-$(LIBSUITESPARSE_VER)/source-patched
61+
cd $(dir $<) && $(CMAKE) . $(LIBSUITESPARSE_CMAKE_FLAGS)
62+
make -C $(dir $<)
63+
make -C $(dir $<) install
6064
echo 1 > $@
6165

6266
ifeq ($(OS),WINNT)

deps/patches/suitesparse-blas-suffix.patch

Lines changed: 0 additions & 40 deletions
This file was deleted.

0 commit comments

Comments
 (0)