Skip to content
This repository was archived by the owner on Apr 3, 2025. It is now read-only.

Commit 41fb4f1

Browse files
committed
openblas
1 parent af90f8c commit 41fb4f1

File tree

3 files changed

+57
-51
lines changed

3 files changed

+57
-51
lines changed

openblas/PKGBUILD

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ pkgbase=openblas
55
pkgname=(openblas openblas64 blas-openblas blas64-openblas)
66
_pkgname=OpenBLAS
77
pkgver=0.3.26
8-
pkgrel=2
8+
pkgrel=3
99
_blasver=3.12.0
1010
pkgdesc="An optimized BLAS library based on GotoBLAS2 1.13 BSD"
1111
arch=('loong64' 'x86_64')
@@ -14,13 +14,16 @@ license=('BSD')
1414
depends=('gcc-libs')
1515
makedepends=('cmake' 'perl' 'gcc-fortran')
1616
source=(${_pkgname}-v${pkgver}.tar.gz::https://github.com/xianyi/OpenBLAS/archive/v${pkgver}.tar.gz
17-
fix-loong.patch)
17+
https://github.com/OpenMathLib/OpenBLAS/commit/992b71fea2e3916c294dd6a90062b4c31740cd85.patch
18+
openblas-loong64.patch)
1819
sha512sums=('01d3a536fbfa62f276fd6b1ad0e218fb3d91f41545fc83ddc74979fa26372d8389f0baa20334badfe0adacd77bd944c50a47ac920577373fcc1d495553084373'
19-
'195dc3c3daa56c55912831161bd9e73532c1a06b38c894a6eceb8d49befddda1b94e71dcd36e1d3403e2e5f70ded83febdee493059b16adc85ea52fb32e58f81')
20+
'24a9d10752218c34bc1271a91b171ee6ec9e5b73ba0fa559f22d4a4c698b6bdb502a38a436ffeb8110b325d2e690010e855580f7607c9d30263d819be018d8c0'
21+
'e62892a2b290938cb8cad9040a2f9d5787325aa1e8e88eddc71f7e4dd6969b760d9658c0a04c05458272cdb00c339154f98daecb1987ca9b80a2d1528dd59546')
2022

2123
prepare() {
2224
cd "$_pkgname-$pkgver"
23-
patch -p1 -i "$srcdir/fix-loong.patch"
25+
patch -p1 -i "$srcdir/992b71fea2e3916c294dd6a90062b4c31740cd85.patch"
26+
patch -p1 -i "$srcdir/openblas-loong64.patch"
2427
}
2528

2629
build() {

openblas/fix-loong.patch

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

openblas/openblas-loong64.patch

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
Index: OpenBLAS-0.3.26/Makefile.system
2+
===================================================================
3+
--- OpenBLAS-0.3.26.orig/Makefile.system
4+
+++ OpenBLAS-0.3.26/Makefile.system
5+
@@ -948,10 +948,7 @@ BINARY_DEFINED = 1
6+
endif
7+
8+
ifeq ($(ARCH), loongarch64)
9+
-LA64_ABI=$(shell $(CC) -mabi=lp64d -c $(TOPDIR)/cpuid_loongarch64.c -o /dev/null > /dev/null 2> /dev/null && echo lp64d)
10+
-ifneq ($(LA64_ABI), lp64d)
11+
-LA64_ABI=lp64
12+
-endif
13+
+LA64_ABI=lp64d
14+
CCOMMON_OPT += -march=loongarch64 -mabi=$(LA64_ABI)
15+
FCOMMON_OPT += -march=loongarch64 -mabi=$(LA64_ABI)
16+
endif
17+
Index: OpenBLAS-0.3.26/cmake/cc.cmake
18+
===================================================================
19+
--- OpenBLAS-0.3.26.orig/cmake/cc.cmake
20+
+++ OpenBLAS-0.3.26/cmake/cc.cmake
21+
@@ -36,12 +36,7 @@ if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU
22+
23+
if (LOONGARCH64)
24+
if (BINARY64)
25+
- CHECK_CXX_COMPILER_FLAG("-mabi=lp64d" COMPILER_SUPPORT_LP64D_ABI)
26+
- if(COMPILER_SUPPORT_LP64D_ABI)
27+
set(CCOMMON_OPT "${CCOMMON_OPT} -mabi=lp64d")
28+
- else()
29+
- set(CCOMMON_OPT "${CCOMMON_OPT} -mabi=lp64")
30+
- endif ()
31+
else ()
32+
CHECK_CXX_COMPILER_FLAG("-mabi=ilp32d" COMPILER_SUPPORT_ILP32D_ABI)
33+
if(COMPILER_SUPPORT_ILP32D_ABI)
34+
Index: OpenBLAS-0.3.26/cmake/fc.cmake
35+
===================================================================
36+
--- OpenBLAS-0.3.26.orig/cmake/fc.cmake
37+
+++ OpenBLAS-0.3.26/cmake/fc.cmake
38+
@@ -61,12 +61,7 @@ if (${F_COMPILER} STREQUAL "GFORTRAN" OR
39+
endif ()
40+
if (LOONGARCH64)
41+
if (BINARY64)
42+
- CHECK_CXX_COMPILER_FLAG("-mabi=lp64d" COMPILER_SUPPORT_LP64D_ABI)
43+
- if(COMPILER_SUPPORT_LP64D_ABI)
44+
set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=lp64d")
45+
- else()
46+
- set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=lp64")
47+
- endif ()
48+
else ()
49+
CHECK_CXX_COMPILER_FLAG("-mabi=ilp32d" COMPILER_SUPPORT_ILP32D_ABI)
50+
if(COMPILER_SUPPORT_ILP32D_ABI)

0 commit comments

Comments
 (0)