diff --git a/community/openblas/APKBUILD b/community/openblas/APKBUILD
index bb6b2f544719d499fb00919f7a1a190800c016b4..0c025568462316b9f61c04c841dfa33544ff4b17 100644
--- a/community/openblas/APKBUILD
+++ b/community/openblas/APKBUILD
@@ -3,7 +3,7 @@
 # Maintainer:
 pkgname=openblas
 _pkgname=OpenBLAS
-pkgver=0.3.20
+pkgver=0.3.21
 pkgrel=0
 pkgdesc="fast BSD-licensed BLAS based on gotoBLAS2, with LAPACK"
 url="https://www.openblas.net/"
@@ -12,15 +12,11 @@ license="BSD-3-Clause"
 depends_dev="gfortran"
 makedepends="$depends_dev perl linux-headers"
 subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-source="https://github.com/xianyi/$_pkgname/archive/v$pkgver/$pkgname-$pkgver.tar.gz
+source="https://github.com/xianyi/$_pkgname/archive/v$pkgver/openblas-$pkgver.tar.gz
 	separate-tests.patch
 	"
 builddir="$srcdir/$_pkgname-$pkgver"
 
-# OpenBLAS library is huge and it's heavily optimized for performance.
-# It doesn't make sense to compile it with -Os.
-CFLAGS=${CFLAGS/-Os/-O2}
-
 _builddir64="$builddir-64"
 
 # ILP64 is not supported on aarch64 (https://github.com/xianyi/OpenBLAS/issues/956)
@@ -73,6 +69,10 @@ prepare() {
 }
 
 build() {
+	# OpenBLAS library is huge and it's heavily optimized for performance.
+	# It doesn't make sense to compile it with -Os.
+	CFLAGS=${CFLAGS/-Os/-O2}
+
 	CFLAGS= make -C "$builddir" \
 		$_flags CFLAGS="$CFLAGS" PREFIX=/usr
 
@@ -119,6 +119,6 @@ ilp64() {
 }
 
 sha512sums="
-0742d40b74b11b781021280fd627fa5798e6856b49f2ba1111a5927aac1a7823bcb8162187555f4cf3a4dd7eadf5b1f2a4685c0b5e189847b2869166d1bc7391  openblas-0.3.20.tar.gz
+4625c8e6ccfa9120281fd714d3f6b7c3ba2265470c1be76121d6b25dc3dacb899d26e5d9a417ddc616d23909f1411495aa995ef8d8d6df8511cd5cefbabcb1c5  openblas-0.3.21.tar.gz
 de2769ba6d1adcb31e19732c6c4a9f39dc1745932b954106a8037a4dfa98d77a468bd414abadab0d72bbbabf17f86748fb9297051c937fd6eae3d375aa5f5ad7  separate-tests.patch
 "