pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

openblas: Rename openblas-devel to fix case-insensitive collision



Module Name:	pkgsrc-wip
Committed By:	Jason W. Bacon <bacon%NetBSD.org@localhost>
Pushed By:	outpaddling
Date:		Sun Jan 7 14:09:16 2018 -0600
Changeset:	f84032a76d3cf84266405f55c505b71b16dd61ba

Modified Files:
	Makefile
Added Files:
	openblas-devel/DESCR
	openblas-devel/Makefile
	openblas-devel/PLIST
	openblas-devel/TODO
	openblas-devel/buildlink3.mk
	openblas-devel/distinfo
	openblas-devel/options.mk
	openblas-devel/patches/patch-Makefile
	openblas-devel/patches/patch-Makefile.rule
	openblas-devel/patches/patch-Makefile.system
	openblas-devel/patches/patch-c_check
	openblas-devel/patches/patch-common__arm.h
	openblas-devel/patches/patch-cpuid__arm.c
	openblas-devel/patches/patch-cpuid__arm64.c
	openblas-devel/patches/patch-cpuid_ia64.c
	openblas-devel/patches/patch-cpuid_sparc.c
	openblas-devel/patches/patch-driver_others_memory.c
	openblas-devel/patches/patch-exports+Makefile
	openblas-devel/patches/patch-f_check
	openblas-devel/patches/patch-interface__ztrmv.c
Removed Files:
	openblas/DESCR
	openblas/Makefile
	openblas/PLIST
	openblas/TODO
	openblas/buildlink3.mk
	openblas/distinfo
	openblas/options.mk
	openblas/patches/patch-Makefile
	openblas/patches/patch-Makefile.rule
	openblas/patches/patch-Makefile.system
	openblas/patches/patch-c_check
	openblas/patches/patch-common__arm.h
	openblas/patches/patch-cpuid__arm.c
	openblas/patches/patch-cpuid__arm64.c
	openblas/patches/patch-cpuid_ia64.c
	openblas/patches/patch-cpuid_sparc.c
	openblas/patches/patch-driver_others_memory.c
	openblas/patches/patch-exports+Makefile
	openblas/patches/patch-f_check
	openblas/patches/patch-interface__ztrmv.c

Log Message:
openblas: Rename openblas-devel to fix case-insensitive collision

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=f84032a76d3cf84266405f55c505b71b16dd61ba

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                           |   2 +-
 openblas-devel/DESCR                               |   6 +
 openblas-devel/Makefile                            | 141 +++++++++++++++++++++
 openblas-devel/PLIST                               |   7 +
 openblas-devel/TODO                                |   3 +
 openblas-devel/buildlink3.mk                       |  12 ++
 openblas-devel/distinfo                            |  27 ++++
 openblas-devel/options.mk                          |  36 ++++++
 openblas-devel/patches/patch-Makefile              |  14 ++
 openblas-devel/patches/patch-Makefile.rule         |  18 +++
 openblas-devel/patches/patch-Makefile.system       |  65 ++++++++++
 openblas-devel/patches/patch-c_check               |  14 ++
 openblas-devel/patches/patch-common__arm.h         |  19 +++
 openblas-devel/patches/patch-cpuid__arm.c          |  15 +++
 openblas-devel/patches/patch-cpuid__arm64.c        |  14 ++
 openblas-devel/patches/patch-cpuid_ia64.c          |  15 +++
 openblas-devel/patches/patch-cpuid_sparc.c         |  13 ++
 .../patches/patch-driver_others_memory.c           |  16 +++
 openblas-devel/patches/patch-exports+Makefile      |  21 +++
 openblas-devel/patches/patch-f_check               |  23 ++++
 openblas-devel/patches/patch-interface__ztrmv.c    |  14 ++
 openblas/DESCR                                     |   6 -
 openblas/Makefile                                  | 141 ---------------------
 openblas/PLIST                                     |   7 -
 openblas/TODO                                      |   3 -
 openblas/buildlink3.mk                             |  12 --
 openblas/distinfo                                  |  27 ----
 openblas/options.mk                                |  36 ------
 openblas/patches/patch-Makefile                    |  14 --
 openblas/patches/patch-Makefile.rule               |  18 ---
 openblas/patches/patch-Makefile.system             |  65 ----------
 openblas/patches/patch-c_check                     |  14 --
 openblas/patches/patch-common__arm.h               |  19 ---
 openblas/patches/patch-cpuid__arm.c                |  15 ---
 openblas/patches/patch-cpuid__arm64.c              |  14 --
 openblas/patches/patch-cpuid_ia64.c                |  15 ---
 openblas/patches/patch-cpuid_sparc.c               |  13 --
 openblas/patches/patch-driver_others_memory.c      |  16 ---
 openblas/patches/patch-exports+Makefile            |  21 ---
 openblas/patches/patch-f_check                     |  23 ----
 openblas/patches/patch-interface__ztrmv.c          |  14 --
 41 files changed, 494 insertions(+), 494 deletions(-)

diffs:
diff --git a/Makefile b/Makefile
index b195e04a1d..870545220a 100644
--- a/Makefile
+++ b/Makefile
@@ -2258,7 +2258,7 @@ SUBDIR+=	open21xx
 SUBDIR+=	openaxiom-svn
 SUBDIR+=	openbgpd
 SUBDIR+=	openbgpd-as4byte
-SUBDIR+=	openblas
+SUBDIR+=	openblas-devel
 SUBDIR+=	openbsc
 SUBDIR+=	openbsd-input-usbtablet
 SUBDIR+=	openca
diff --git a/openblas-devel/DESCR b/openblas-devel/DESCR
new file mode 100644
index 0000000000..ab6c5e9a9c
--- /dev/null
+++ b/openblas-devel/DESCR
@@ -0,0 +1,6 @@
+OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+OpenBLAS is an open source project supported by
+Lab of Parallel Software and Computational Science, ISCAS.
+NOTE: If you want to specify your CPU microarchitecture manually,
+please use TARGET_CPU_ARCH knob, e.g., "make TARGET_CPU_ARCH=NEHALEM".
+This value is set TARGET build flag.
diff --git a/openblas-devel/Makefile b/openblas-devel/Makefile
new file mode 100644
index 0000000000..c9f5f934b7
--- /dev/null
+++ b/openblas-devel/Makefile
@@ -0,0 +1,141 @@
+# $NetBSD$
+#
+###########################################################
+#                  Generated by fbsd2pkg                  #
+#              Thu Sep 21 12:36:18 CDT 2017               #
+###########################################################
+#
+# Build tested on: CentOS 6
+
+DISTNAME=	OpenBLAS-${PORTVERSION}
+PKGNAME=	openblas-${PORTVERSION}
+DIST_SUBDIR=	openblas
+CATEGORIES=	math
+MASTER_SITES=	${MASTER_SITE_GITHUB:=xianyi/} \
+		http://www.netlib.org/lapack/timing/
+DISTFILES=	${DISTNAME}.tar.gz large.tgz timing.tgz
+GITHUB_PROJECT=	OpenBLAS
+GITHUB_TAG=	v${PORTVERSION}
+
+# NetBSD: Cannot find -lssp*
+PKGSRC_USE_SSP=	no
+
+MAINTAINER=	bacon%NetBSD.org@localhost
+HOMEPAGE=	https://github.com/xianyi/OpenBLAS
+COMMENT=	Optimized BLAS library based on GotoBLAS2
+# Check this
+LICENSE=	modified-bsd
+
+# Test and change if necessary.
+# MAKE_JOBS_SAFE=	no
+
+# Just assuming C and C++: Adjust this!
+USE_LANGUAGES=	c fortran
+USE_TOOLS+=	gmake perl:build
+
+PORTVERSION=	0.2.20
+
+LARGE_FILE=	large.tgz
+TIMING_FILE=	timing.tgz
+OPENBLAS_SUFX=	r${PORTVERSION}
+OPENBLAS_LIBS=	libopenblas libopenblasp
+OPENBLAS_SVER=	0
+TEST_TARGET=	tests
+MAXTHREADS?=	8
+
+.if ${MACHINE_ARCH:M*64} == ""
+BUILDFLAGS+=	BINARY32=1
+.else
+BUILDFLAGS+=	BINARY64=1
+.endif
+
+SUBST_CLASSES+=		find
+SUBST_STAGE.find=	post-patch
+SUBST_SED.find+=	-e "s+%%FIND%%+${FIND}+"
+SUBST_SED.find+=	-e "s+%%XARGS%%+${XARGS}+"
+SUBST_SED.find+=	-e "s+%%REINPLACE_CMD%%+${REINPLACE_CMD}+"
+SUBST_FILES.find+=	${WRKSRC}/Makefile
+
+SUBST_CLASSES+=		compiler
+SUBST_STAGE.compiler=	post-patch
+SUBST_SED.compiler+=	-e "s+%%FC%%+${FC}+"
+SUBST_SED.compiler+=	-e "s+%%CC%%+${CC}+"
+SUBST_FILES.compiler+=	${WRKSRC}/Makefile.rule
+
+SUBST_CLASSES+=		arch
+SUBST_STAGE.arch=	post-patch
+SUBST_SED.arch+=	-e "s+(ARCH)+(ARCH_)+"
+SUBST_FILES.arch+=	${WRKSRC}/Makefile.rule
+SUBST_FILES.arch+=	${WRKSRC}/Makefile.tail
+SUBST_FILES.arch+=	${WRKSRC}/driver/level3/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/driver/others/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/exports/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/interface/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/kernel/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/kernel/Makefile.L3
+SUBST_FILES.arch+=	${WRKSRC}/lapack/laswp/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/SRC/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/SRC/VARIANTS/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/TESTING/MATGEN/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/LAPACKE/src/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/LAPACKE/utils/Makefile
+SUBST_FILES.arch+=	${WRKSRC}/reference/Makefile
+
+SUBST_CLASSES+=		system
+SUBST_STAGE.system=	post-patch
+SUBST_SED.system+=	-e "s+(ARCH)+(ARCH_)+"
+SUBST_SED.system+=	-e 's+%%LDFLAGS%%+${LDFLAGS}+'
+SUBST_SED.system+=	-e 's+%%LOCALBASE%%+${PREFIX}+'
+SUBST_SED.system+=	-e 's+%%FIND%%+${FIND}+'
+SUBST_SED.system+=	-e 's+%%XARGS%%+${XARGS}+'
+SUBST_SED.system+=	-e 's+%%REINPLACE_CMD%%+${REINPLACE_CMD}+'
+SUBST_SED.system+=	-e 's+$${CROSS_SUFFIX}+${PREFIX}/bin/+'
+SUBST_SED.system+=	-e '/Clang.*OpenMP/g'
+SUBST_FILES.system+=	${WRKSRC}/Makefile.system
+
+SUBST_CLASSES+=		threads
+SUBST_STAGE.threads=	post-patch
+SUBST_SED.threads+=	-e "s+OPENBLAS_NUM_THREADS+OMP_NUM_THREADS+g"
+SUBST_FILES.threads+=	${WRKSRC}/test/Makefile
+SUBST_FILES.threads+=	${WRKSRC}/ctest/Makefile
+
+# Sets OPSYS, OS_VERSION, MACHINE_ARCH, etc..
+# .include "../../mk/bsd.prefs.mk"
+
+# Keep this if there are user-selectable options.
+# .include "options.mk"
+
+INSTALLATION_DIRS=	lib
+
+post-extract:
+	cd ${DISTDIR}/${DIST_SUBDIR} ; \
+		${CP} ${LARGE_FILE} ${TIMING_FILE} ${WRKSRC}
+	${MKDIR} ${WRKDIR}/lib
+
+do-build:
+	cd ${WRKSRC} ; ${SETENV} ${BUILDFLAGS} NUM_THREADS=1 USE_THREAD=0 \
+		${MAKE_PROGRAM} ${MAKE_ARGS}
+	${CP} ${WRKSRC}/libopenblas-${OPENBLAS_SUFX}.a ${WRKDIR}/lib/libopenblas.a
+	${CP} ${WRKSRC}/libopenblas-${OPENBLAS_SUFX}.so ${WRKDIR}/lib/libopenblas.so.${OPENBLAS_SVER}
+	cd ${WRKSRC} ; ${MAKE_PROGRAM} ${MAKE_ARGS} clean
+	cd ${WRKSRC} ; ${SETENV} ${BUILDFLAGS} ${BUILDFLAGS_THREAD} \
+	${MAKE_PROGRAM} ${MAKE_ARGS}
+	${CP} ${WRKSRC}/libopenblasp-${OPENBLAS_SUFX}.a ${WRKDIR}/lib/libopenblasp.a
+	${CP} ${WRKSRC}/libopenblasp-${OPENBLAS_SUFX}.so ${WRKDIR}/lib/libopenblasp.so.${OPENBLAS_SVER}
+
+.PHONY: benchmark
+benchmark: build
+	cd ${WRKSRC} ; ${SETENV} ${BUILDFLAGS} NUM_THREADS=${MAXTHREADS} \
+	USE_THREAD=1 ${MAKE_PROGRAM} ${MAKE_ARGS} hpl
+	cd ${WRKSRC}/benchmark ; ${SETENV} ${BUILDFLAGS} NUM_THREADS=${MAXTHREADS} \
+	USE_THREAD=1 ${BENCHMARK_THREADS_FLAG} ${MAKE_PROGRAM} ${MAKE_ARGS}
+
+do-install:
+.for l in ${OPENBLAS_LIBS}
+	${INSTALL_DATA} ${WRKDIR}/lib/${l}.a ${DESTDIR}${PREFIX}/lib
+	${INSTALL_LIB} ${WRKDIR}/lib/${l}.so.${OPENBLAS_SVER} ${DESTDIR}${PREFIX}/lib
+	${LN} -sf ${l}.so.${OPENBLAS_SVER} ${DESTDIR}${PREFIX}/lib/${l}.so
+.endfor
+
+.include "options.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/openblas-devel/PLIST b/openblas-devel/PLIST
new file mode 100644
index 0000000000..f9515c1957
--- /dev/null
+++ b/openblas-devel/PLIST
@@ -0,0 +1,7 @@
+@comment $NetBSD$
+lib/libopenblas.a
+lib/libopenblas.so
+lib/libopenblas.so.0
+lib/libopenblasp.a
+lib/libopenblasp.so
+lib/libopenblasp.so.0
diff --git a/openblas-devel/TODO b/openblas-devel/TODO
new file mode 100644
index 0000000000..4c5916b2e3
--- /dev/null
+++ b/openblas-devel/TODO
@@ -0,0 +1,3 @@
+Implement INTERFACE64, OPENMP options
+Disable DYNAMIC_ARCH if not package-building
+Implement AVX, AVX2 for x86
diff --git a/openblas-devel/buildlink3.mk b/openblas-devel/buildlink3.mk
new file mode 100644
index 0000000000..1b3c5bb6c4
--- /dev/null
+++ b/openblas-devel/buildlink3.mk
@@ -0,0 +1,12 @@
+# $NetBSD$
+
+BUILDLINK_TREE+=	openblas
+
+.if !defined(OPENBLAS_BUILDLINK3_MK)
+OPENBLAS_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.openblas+=	openblas>=0.2.20
+BUILDLINK_PKGSRCDIR.openblas?=	../../wip/openblas
+.endif	# OPENBLAS_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-openblas
diff --git a/openblas-devel/distinfo b/openblas-devel/distinfo
new file mode 100644
index 0000000000..6a9ce83b2e
--- /dev/null
+++ b/openblas-devel/distinfo
@@ -0,0 +1,27 @@
+$NetBSD$
+
+SHA1 (openblas/OpenBLAS-0.2.20.tar.gz) = a186074145a24823e82c65672dad1cd1ca6fe89c
+RMD160 (openblas/OpenBLAS-0.2.20.tar.gz) = 2b9728cd227894d7378b0f3686b90d0e7e7975d9
+SHA512 (openblas/OpenBLAS-0.2.20.tar.gz) = 8dfc8e8c8d456b834d2e9544c8eadd9f4770e30db8b8dd76af601ec0735fd86c9cf63dd6a03ccd23fc02ec2e05069a09875b9073dfe29f99aadab3a958ae2634
+Size (openblas/OpenBLAS-0.2.20.tar.gz) = 11637301 bytes
+SHA1 (openblas/large.tgz) = a689e5b180595b40c5719b0f358b31b15b57a2db
+RMD160 (openblas/large.tgz) = 8010ff4002ef42cf22a9ee9345011d68fc27d855
+SHA512 (openblas/large.tgz) = e24db2b8a4253ccff9ca196815901c1fefd55e882f4fe1085715ac84b8f318e1842a91072130c17fdd144344ffc80233a77500da9349acb54e504b3935825965
+Size (openblas/large.tgz) = 2595 bytes
+SHA1 (openblas/timing.tgz) = fd47fc3f26d142a791df51e4a422a49662507252
+RMD160 (openblas/timing.tgz) = f0fe220e7ab611d4db8d8cab960361955e2ab093
+SHA512 (openblas/timing.tgz) = be0abfcfffdf0e118ed7e25a8451639833cf0ad6bb04d101bbe194c16f656b6ce509b2f76acf4ad626d1fb5b126bd5498cfea262f2946c2d077751112a2906af
+Size (openblas/timing.tgz) = 1059485 bytes
+SHA1 (patch-Makefile) = 421b8e8d322edc7801e8cc9b0ccf57644018ccde
+SHA1 (patch-Makefile.rule) = 72108fa4d1e8279f78c01606d21b9149947afdaa
+SHA1 (patch-Makefile.system) = eb5bfb5a2f5308ad6ac6f4d7e4b0c2eeaa049200
+SHA1 (patch-c_check) = 32af951c38db716e3ec81b8c7d4c985368561b8e
+SHA1 (patch-common__arm.h) = 1cc14adb8441d3282d57f1b44d69251f86f51392
+SHA1 (patch-cpuid__arm.c) = b1890daa38f15ad122b3f151563836349c00e9b3
+SHA1 (patch-cpuid__arm64.c) = eb2f5cb73f365c5cdc35c6dd2f3244e5082e26a0
+SHA1 (patch-cpuid_ia64.c) = f33294230098a7fb1ef49dd1557b2a07ed11a3a9
+SHA1 (patch-cpuid_sparc.c) = 709647898b963b6afaa7ab91147dc9f261e3da02
+SHA1 (patch-driver_others_memory.c) = 76d7ef5cfcf2a322182ed454a7416a8323329417
+SHA1 (patch-exports+Makefile) = 2429badefe7f379739c41ae142da0cffd41f46cf
+SHA1 (patch-f_check) = 11751e7e779790a47f80f825555bb24d072d0f30
+SHA1 (patch-interface__ztrmv.c) = fefab5887bfc735fb5050df051f39b03201cee2c
diff --git a/openblas-devel/options.mk b/openblas-devel/options.mk
new file mode 100644
index 0000000000..bc09428bb5
--- /dev/null
+++ b/openblas-devel/options.mk
@@ -0,0 +1,36 @@
+PKG_OPTIONS_VAR=                PKG_OPTIONS.openblas
+PKG_SUPPORTED_OPTIONS=          avx avx2 openmp interface64 dynamic_arch
+PKG_SUGGESTED_OPTIONS=		dynamic_arch
+
+.include "../../mk/bsd.prefs.mk"
+.include "../../mk/bsd.options.mk"
+
+.if empty(PKG_OPTIONS:Mavx)
+BUILDFLAGS+=	NO_AVX=1
+.endif
+
+.if empty(PKG_OPTIONS:Mavx2)
+BUILDFLAGS+=	NO_AVX2=1
+.endif
+
+.if ! empty(PKG_OPTIONS:Mopenmp)
+BUILDFLAGS_THREAD+=	USE_OPENMP=1
+CFLAGS+=		-fopenmp
+CXXFLAGS+=		-fopenmp
+FFLAGS+=		-fopenmp
+BENCHMARK_THREADS_FLAG=	OMP_NUM_THREADS=${BENCHMARK_MAXTHREADS}
+.else
+BUILDFLAGS_THREAD+=	NUM_THREADS=${MAXTHREADS} USE_THREAD=1
+BENCHMARK_THREADS_FLAG=	OPENBLAS_NUM_THREADS=${BENCHMARK_MAXTHREADS}
+.endif
+
+BENCHMARK_MAXTHREADS?=	${MAXTHREADS}
+
+.if ! empty(PKG_OPTIONS:Minterface64)
+BUILDFLAGS+=	INTERFACE64=1
+.endif
+
+.if ! empty(PKG_OPTIONS:Mdynamic_arch)
+# CPU-agnostic build
+BUILDFLAGS+=	DYNAMIC_ARCH=1
+.endif
diff --git a/openblas-devel/patches/patch-Makefile b/openblas-devel/patches/patch-Makefile
new file mode 100644
index 0000000000..3087d7e117
--- /dev/null
+++ b/openblas-devel/patches/patch-Makefile
@@ -0,0 +1,14 @@
+$NetBSD$
+
+# Avoid name collision on ARCH
+--- Makefile.orig	2015-10-27 20:44:50 UTC
++++ Makefile
+@@ -238,7 +238,7 @@ ifndef NOFORTRAN
+ 	-@echo "LOADOPTS    = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
+ 	-@echo "CC          = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
+ 	-@echo "override CFLAGS      = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-	-@echo "ARCH        = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
++	-@echo "ARCH_       = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
+ 	-@echo "ARCHFLAGS   = -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
+ 	-@echo "RANLIB      = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
+ 	-@echo "LAPACKLIB   = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
diff --git a/openblas-devel/patches/patch-Makefile.rule b/openblas-devel/patches/patch-Makefile.rule
new file mode 100644
index 0000000000..d2a24961a1
--- /dev/null
+++ b/openblas-devel/patches/patch-Makefile.rule
@@ -0,0 +1,18 @@
+$NetBSD$
+
+# Respect env
+--- Makefile.rule.orig	2015-10-27 20:44:50 UTC
++++ Makefile.rule
+@@ -19,10 +19,10 @@ VERSION = 0.2.15
+ 
+ # C compiler including binary type(32bit / 64bit). Default is gcc.
+ # Don't use Intel Compiler or PGI, it won't generate right codes as I expect.
+-# CC = gcc
++CC = %%CC%%
+ 
+ # Fortran compiler. Default is g77.
+-# FC = gfortran
++FC = %%FC%%
+ 
+ # Even you can specify cross compiler. Meanwhile, please set HOSTCC.
+ 
diff --git a/openblas-devel/patches/patch-Makefile.system b/openblas-devel/patches/patch-Makefile.system
new file mode 100644
index 0000000000..7bc8d6339f
--- /dev/null
+++ b/openblas-devel/patches/patch-Makefile.system
@@ -0,0 +1,65 @@
+$NetBSD$
+
+# Allow serial and parallel libs to coexist
+--- Makefile.system.orig	2015-10-27 20:44:50 UTC
++++ Makefile.system
+@@ -218,6 +218,7 @@ MD5SUM = md5 -r
+ endif
+ 
+ ifeq ($(OSNAME), FreeBSD)
++EXTRALIB	+= -lm %%LDFLAGS%%
+ MD5SUM = md5 -r
+ endif
+ 
+@@ -889,9 +890,17 @@ SYMBOLSUFFIX =
+ endif
+ 
+ ifndef LIBNAMESUFFIX
++ifndef SMP
+ LIBPREFIX = lib$(SYMBOLPREFIX)openblas$(SYMBOLSUFFIX)
+ else
++LIBPREFIX = lib$(SYMBOLPREFIX)openblasp$(SYMBOLSUFFIX)
++endif
++else
++ifndef SMP
+ LIBPREFIX = lib$(SYMBOLPREFIX)openblas$(SYMBOLSUFFIX)_$(LIBNAMESUFFIX)
++else
++LIBPREFIX = lib$(SYMBOLPREFIX)openblasp$(SYMBOLSUFFIX)_$(LIBNAMESUFFIX)
++endif
+ endif
+ 
+ KERNELDIR	= $(TOPDIR)/kernel/$(ARCH)
+@@ -1020,24 +1029,8 @@ ifndef LIBSUFFIX
+ LIBSUFFIX = a
+ endif
+ 
+-ifneq ($(DYNAMIC_ARCH), 1)
+-ifndef SMP
+-LIBNAME		= $(LIBPREFIX)_$(LIBCORE)$(REVISION).$(LIBSUFFIX)
+-LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)$(REVISION)_p.$(LIBSUFFIX)
+-else
+-LIBNAME		= $(LIBPREFIX)_$(LIBCORE)p$(REVISION).$(LIBSUFFIX)
+-LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)p$(REVISION)_p.$(LIBSUFFIX)
+-endif
+-else
+-ifndef SMP
+ LIBNAME		= $(LIBPREFIX)$(REVISION).$(LIBSUFFIX)
+ LIBNAME_P	= $(LIBPREFIX)$(REVISION)_p.$(LIBSUFFIX)
+-else
+-LIBNAME		= $(LIBPREFIX)p$(REVISION).$(LIBSUFFIX)
+-LIBNAME_P	= $(LIBPREFIX)p$(REVISION)_p.$(LIBSUFFIX)
+-endif
+-endif
+-
+ 
+ LIBDLLNAME   = $(LIBPREFIX).dll
+ LIBSONAME    = $(LIBNAME:.$(LIBSUFFIX)=.so)
+@@ -1067,7 +1060,7 @@ LIB_COMPONENTS = CBLAS
+ endif
+ 
+ export OSNAME
+-export ARCH
++export ARCH_
+ export CORE
+ export LIBCORE
+ export PGCPATH
diff --git a/openblas-devel/patches/patch-c_check b/openblas-devel/patches/patch-c_check
new file mode 100644
index 0000000000..8993dcb9e9
--- /dev/null
+++ b/openblas-devel/patches/patch-c_check
@@ -0,0 +1,14 @@
+$NetBSD$
+
+# Avoid name collision on ARCH
+--- c_check.orig	2015-10-27 20:44:50 UTC
++++ c_check
+@@ -235,7 +235,7 @@ open(CONFFILE, "> $config"  ) || die "Ca
+ # print $data, "\n";
+ 
+ print MAKEFILE "OSNAME=$os\n";
+-print MAKEFILE "ARCH=$architecture\n";
++print MAKEFILE "ARCH_=$architecture\n";
+ print MAKEFILE "C_COMPILER=$compiler\n";
+ print MAKEFILE "BINARY32=\n" if $binformat ne bin32;
+ print MAKEFILE "BINARY64=\n" if $binformat ne bin64;
diff --git a/openblas-devel/patches/patch-common__arm.h b/openblas-devel/patches/patch-common__arm.h
new file mode 100644
index 0000000000..a8c49440be
--- /dev/null
+++ b/openblas-devel/patches/patch-common__arm.h
@@ -0,0 +1,19 @@
+$NetBSD$
+
+# Add clang support
+--- common_arm.h.orig	2016-09-01 03:58:42 UTC
++++ common_arm.h
+@@ -93,6 +93,13 @@ static inline int blas_quickdivide(blasi
+ 
+ #endif
+ 
++/* Translate pre-UAL asm to UAL equivalents */
++#if defined(__clang__)
++#define fnmacs vmls.f32
++#define fnmacd vmls.f64
++#define fnmuls vnmul.f32
++#define fnmuld vnmul.f64
++#endif
+ 
+ #ifndef F_INTERFACE
+ #define REALNAME ASMNAME
diff --git a/openblas-devel/patches/patch-cpuid__arm.c b/openblas-devel/patches/patch-cpuid__arm.c
new file mode 100644
index 0000000000..4d6d357e14
--- /dev/null
+++ b/openblas-devel/patches/patch-cpuid__arm.c
@@ -0,0 +1,15 @@
+$NetBSD$
+
+# Add default arm processor type
+--- cpuid_arm.c.orig	2016-09-01 03:58:42 UTC
++++ cpuid_arm.c
+@@ -181,7 +181,8 @@ int detect(void)
+ 	  }
+ 
+ 	}
+-
++#else
++	return CPU_ARMV6;
+ #endif
+ 
+ 	return CPU_UNKNOWN;
diff --git a/openblas-devel/patches/patch-cpuid__arm64.c b/openblas-devel/patches/patch-cpuid__arm64.c
new file mode 100644
index 0000000000..bcbd67c8ba
--- /dev/null
+++ b/openblas-devel/patches/patch-cpuid__arm64.c
@@ -0,0 +1,14 @@
+$NetBSD$
+
+# Add default arm processor type
+--- cpuid_arm64.c.orig	2016-09-01 03:58:42 UTC
++++ cpuid_arm64.c
+@@ -132,6 +132,8 @@ int detect(void)
+ 
+ 
+ 	}
++#else
++	return CPU_ARMV8;
+ #endif
+ 
+ 	return CPU_UNKNOWN;
diff --git a/openblas-devel/patches/patch-cpuid_ia64.c b/openblas-devel/patches/patch-cpuid_ia64.c
new file mode 100644
index 0000000000..c6d9fbd685
--- /dev/null
+++ b/openblas-devel/patches/patch-cpuid_ia64.c
@@ -0,0 +1,15 @@
+$NetBSD$
+
+# FreeBSD does not have sysinfo in base
+--- cpuid_ia64.c.orig	2015-10-27 20:44:50 UTC
++++ cpuid_ia64.c
+@@ -38,7 +38,9 @@
+ 
+ #include <stdio.h>
+ #include <string.h>
++#ifdef linux
+ #include <sys/sysinfo.h>
++#endif
+ #include "cpuid.h"
+ 
+ #ifdef __ECC
diff --git a/openblas-devel/patches/patch-cpuid_sparc.c b/openblas-devel/patches/patch-cpuid_sparc.c
new file mode 100644
index 0000000000..bc6f502590
--- /dev/null
+++ b/openblas-devel/patches/patch-cpuid_sparc.c
@@ -0,0 +1,13 @@
+$NetBSD$
+
+# Add sparc support
+--- cpuid_sparc.c.orig	2015-10-27 20:44:50 UTC
++++ cpuid_sparc.c
+@@ -49,6 +49,7 @@ void get_subdirname(void){
+ }
+ 
+ void get_cpuconfig(void){
++  printf("#define SPARC\n");
+   printf("#define V9\n");
+   printf("#define DTB_DEFAULT_ENTRIES 32\n");
+ }
diff --git a/openblas-devel/patches/patch-driver_others_memory.c b/openblas-devel/patches/patch-driver_others_memory.c
new file mode 100644
index 0000000000..f77bbc85f5
--- /dev/null
+++ b/openblas-devel/patches/patch-driver_others_memory.c
@@ -0,0 +1,16 @@
+$NetBSD$
+
+# Check for old GCC
+Passing a priority level to constructor/destructor only works on GCC >= 4.3.0;
+improve the upstream check so that the build works with base GCC.
+--- driver/others/memory.c.orig	2016-04-12 19:29:19 UTC
++++ driver/others/memory.c
+@@ -144,7 +144,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ #if defined(_MSC_VER) && !defined(__clang__)
+ #define CONSTRUCTOR __cdecl
+ #define DESTRUCTOR __cdecl
+-#elif (defined(OS_DARWIN) || defined(OS_SUNOS)) && defined(C_GCC)
++#elif (defined(OS_DARWIN) || defined(OS_SUNOS)) || (defined(C_GCC) && ((__GNUC__ == 4) && (__GNUC_MINOR__ < 3)))
+ #define CONSTRUCTOR	__attribute__ ((constructor))
+ #define DESTRUCTOR	__attribute__ ((destructor))
+ #else
diff --git a/openblas-devel/patches/patch-exports+Makefile b/openblas-devel/patches/patch-exports+Makefile
new file mode 100644
index 0000000000..4299ac8e07
--- /dev/null
+++ b/openblas-devel/patches/patch-exports+Makefile
@@ -0,0 +1,21 @@
+$NetBSD$
+
+# Improve dynamic lib naming
+--- exports/Makefile.orig	2015-10-27 20:44:50 UTC
++++ exports/Makefile
+@@ -140,6 +140,7 @@ endif
+ #http://stackoverflow.com/questions/7656425/makefile-ifeq-logical-or
+ ifeq ($(OSNAME), $(filter $(OSNAME),FreeBSD NetBSD))
+ 
++EXTRALIB += -lgfortran
+ so : ../$(LIBSONAME)
+ 
+ ifeq (, $(SYMBOLPREFIX)$(SYMBOLSUFFIX))
+@@ -151,6 +152,7 @@ else
+ endif
+ 	$(CC) $(CFLAGS) $(LDFLAGS)  -shared -o ../$(LIBSONAME) \
+ 	-Wl,--whole-archive $< -Wl,--no-whole-archive \
++	-Wl,-soname,$(LIBPREFIX).so.$(MAJOR_VERSION) \
+ 	$(FEXTRALIB) $(EXTRALIB)
+ 	$(CC) $(CFLAGS) $(LDFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK.
+ 	rm -f linktest
diff --git a/openblas-devel/patches/patch-f_check b/openblas-devel/patches/patch-f_check
new file mode 100644
index 0000000000..120f7179f5
--- /dev/null
+++ b/openblas-devel/patches/patch-f_check
@@ -0,0 +1,23 @@
+$NetBSD$
+
+# Clean up link flags
+--- f_check.orig	2015-10-27 20:44:50 UTC
++++ f_check
+@@ -261,7 +261,7 @@ if ($link ne "") {
+ 
+     foreach $flags (@flags) {
+ 	if (
+-	    ($flags =~ /^\-L/)
++	    ($flags =~ /^\-L\S/)
+ 	    && ($flags !~ /^-LIST:/)
+ 	    && ($flags !~ /^-LANG:/)
+ 	    ) {
+@@ -292,7 +292,7 @@ if ($link ne "") {
+ 	}
+ 
+ 	if (
+-	    ($flags =~ /^\-l/)
++	    ($flags =~ /^\-l\S/)
+ 	    && ($flags !~ /gfortranbegin/)
+ 	    && ($flags !~ /frtbegin/)
+ 	    && ($flags !~ /pathfstart/)
diff --git a/openblas-devel/patches/patch-interface__ztrmv.c b/openblas-devel/patches/patch-interface__ztrmv.c
new file mode 100644
index 0000000000..06e02caa9e
--- /dev/null
+++ b/openblas-devel/patches/patch-interface__ztrmv.c
@@ -0,0 +1,14 @@
+$NetBSD$
+
+# Avoid buffer overflow
+--- interface/ztrmv.c.orig	2016-09-01 03:58:42 UTC
++++ interface/ztrmv.c
+@@ -242,7 +242,7 @@ void CNAME(enum CBLAS_ORDER order, enum 
+   else
+ #endif
+   {
+-    buffer_size = ((n - 1) / DTB_ENTRIES) * 2 * DTB_ENTRIES + 32 / sizeof(FLOAT);
++    buffer_size = (((n - 1) / DTB_ENTRIES) * 2 * DTB_ENTRIES + 32 / sizeof(FLOAT)) + 8;
+     // It seems to be required for some K8 or Barcelona CPU
+     buffer_size += 8;
+     if(incx != 1)
diff --git a/openblas/DESCR b/openblas/DESCR
deleted file mode 100644
index ab6c5e9a9c..0000000000
--- a/openblas/DESCR
+++ /dev/null
@@ -1,6 +0,0 @@
-OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
-OpenBLAS is an open source project supported by
-Lab of Parallel Software and Computational Science, ISCAS.
-NOTE: If you want to specify your CPU microarchitecture manually,
-please use TARGET_CPU_ARCH knob, e.g., "make TARGET_CPU_ARCH=NEHALEM".
-This value is set TARGET build flag.
diff --git a/openblas/Makefile b/openblas/Makefile
deleted file mode 100644
index c9f5f934b7..0000000000
--- a/openblas/Makefile
+++ /dev/null
@@ -1,141 +0,0 @@
-# $NetBSD$
-#
-###########################################################
-#                  Generated by fbsd2pkg                  #
-#              Thu Sep 21 12:36:18 CDT 2017               #
-###########################################################
-#
-# Build tested on: CentOS 6
-
-DISTNAME=	OpenBLAS-${PORTVERSION}
-PKGNAME=	openblas-${PORTVERSION}
-DIST_SUBDIR=	openblas
-CATEGORIES=	math
-MASTER_SITES=	${MASTER_SITE_GITHUB:=xianyi/} \
-		http://www.netlib.org/lapack/timing/
-DISTFILES=	${DISTNAME}.tar.gz large.tgz timing.tgz
-GITHUB_PROJECT=	OpenBLAS
-GITHUB_TAG=	v${PORTVERSION}
-
-# NetBSD: Cannot find -lssp*
-PKGSRC_USE_SSP=	no
-
-MAINTAINER=	bacon%NetBSD.org@localhost
-HOMEPAGE=	https://github.com/xianyi/OpenBLAS
-COMMENT=	Optimized BLAS library based on GotoBLAS2
-# Check this
-LICENSE=	modified-bsd
-
-# Test and change if necessary.
-# MAKE_JOBS_SAFE=	no
-
-# Just assuming C and C++: Adjust this!
-USE_LANGUAGES=	c fortran
-USE_TOOLS+=	gmake perl:build
-
-PORTVERSION=	0.2.20
-
-LARGE_FILE=	large.tgz
-TIMING_FILE=	timing.tgz
-OPENBLAS_SUFX=	r${PORTVERSION}
-OPENBLAS_LIBS=	libopenblas libopenblasp
-OPENBLAS_SVER=	0
-TEST_TARGET=	tests
-MAXTHREADS?=	8
-
-.if ${MACHINE_ARCH:M*64} == ""
-BUILDFLAGS+=	BINARY32=1
-.else
-BUILDFLAGS+=	BINARY64=1
-.endif
-
-SUBST_CLASSES+=		find
-SUBST_STAGE.find=	post-patch
-SUBST_SED.find+=	-e "s+%%FIND%%+${FIND}+"
-SUBST_SED.find+=	-e "s+%%XARGS%%+${XARGS}+"
-SUBST_SED.find+=	-e "s+%%REINPLACE_CMD%%+${REINPLACE_CMD}+"
-SUBST_FILES.find+=	${WRKSRC}/Makefile
-
-SUBST_CLASSES+=		compiler
-SUBST_STAGE.compiler=	post-patch
-SUBST_SED.compiler+=	-e "s+%%FC%%+${FC}+"
-SUBST_SED.compiler+=	-e "s+%%CC%%+${CC}+"
-SUBST_FILES.compiler+=	${WRKSRC}/Makefile.rule
-
-SUBST_CLASSES+=		arch
-SUBST_STAGE.arch=	post-patch
-SUBST_SED.arch+=	-e "s+(ARCH)+(ARCH_)+"
-SUBST_FILES.arch+=	${WRKSRC}/Makefile.rule
-SUBST_FILES.arch+=	${WRKSRC}/Makefile.tail
-SUBST_FILES.arch+=	${WRKSRC}/driver/level3/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/driver/others/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/exports/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/interface/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/kernel/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/kernel/Makefile.L3
-SUBST_FILES.arch+=	${WRKSRC}/lapack/laswp/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/SRC/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/SRC/VARIANTS/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/TESTING/MATGEN/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/LAPACKE/src/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/lapack-netlib/LAPACKE/utils/Makefile
-SUBST_FILES.arch+=	${WRKSRC}/reference/Makefile
-
-SUBST_CLASSES+=		system
-SUBST_STAGE.system=	post-patch
-SUBST_SED.system+=	-e "s+(ARCH)+(ARCH_)+"
-SUBST_SED.system+=	-e 's+%%LDFLAGS%%+${LDFLAGS}+'
-SUBST_SED.system+=	-e 's+%%LOCALBASE%%+${PREFIX}+'
-SUBST_SED.system+=	-e 's+%%FIND%%+${FIND}+'
-SUBST_SED.system+=	-e 's+%%XARGS%%+${XARGS}+'
-SUBST_SED.system+=	-e 's+%%REINPLACE_CMD%%+${REINPLACE_CMD}+'
-SUBST_SED.system+=	-e 's+$${CROSS_SUFFIX}+${PREFIX}/bin/+'
-SUBST_SED.system+=	-e '/Clang.*OpenMP/g'
-SUBST_FILES.system+=	${WRKSRC}/Makefile.system
-
-SUBST_CLASSES+=		threads
-SUBST_STAGE.threads=	post-patch
-SUBST_SED.threads+=	-e "s+OPENBLAS_NUM_THREADS+OMP_NUM_THREADS+g"
-SUBST_FILES.threads+=	${WRKSRC}/test/Makefile
-SUBST_FILES.threads+=	${WRKSRC}/ctest/Makefile
-
-# Sets OPSYS, OS_VERSION, MACHINE_ARCH, etc..
-# .include "../../mk/bsd.prefs.mk"
-
-# Keep this if there are user-selectable options.
-# .include "options.mk"
-
-INSTALLATION_DIRS=	lib
-
-post-extract:
-	cd ${DISTDIR}/${DIST_SUBDIR} ; \
-		${CP} ${LARGE_FILE} ${TIMING_FILE} ${WRKSRC}
-	${MKDIR} ${WRKDIR}/lib
-
-do-build:
-	cd ${WRKSRC} ; ${SETENV} ${BUILDFLAGS} NUM_THREADS=1 USE_THREAD=0 \
-		${MAKE_PROGRAM} ${MAKE_ARGS}
-	${CP} ${WRKSRC}/libopenblas-${OPENBLAS_SUFX}.a ${WRKDIR}/lib/libopenblas.a
-	${CP} ${WRKSRC}/libopenblas-${OPENBLAS_SUFX}.so ${WRKDIR}/lib/libopenblas.so.${OPENBLAS_SVER}
-	cd ${WRKSRC} ; ${MAKE_PROGRAM} ${MAKE_ARGS} clean
-	cd ${WRKSRC} ; ${SETENV} ${BUILDFLAGS} ${BUILDFLAGS_THREAD} \
-	${MAKE_PROGRAM} ${MAKE_ARGS}
-	${CP} ${WRKSRC}/libopenblasp-${OPENBLAS_SUFX}.a ${WRKDIR}/lib/libopenblasp.a
-	${CP} ${WRKSRC}/libopenblasp-${OPENBLAS_SUFX}.so ${WRKDIR}/lib/libopenblasp.so.${OPENBLAS_SVER}
-
-.PHONY: benchmark
-benchmark: build
-	cd ${WRKSRC} ; ${SETENV} ${BUILDFLAGS} NUM_THREADS=${MAXTHREADS} \
-	USE_THREAD=1 ${MAKE_PROGRAM} ${MAKE_ARGS} hpl
-	cd ${WRKSRC}/benchmark ; ${SETENV} ${BUILDFLAGS} NUM_THREADS=${MAXTHREADS} \
-	USE_THREAD=1 ${BENCHMARK_THREADS_FLAG} ${MAKE_PROGRAM} ${MAKE_ARGS}
-
-do-install:
-.for l in ${OPENBLAS_LIBS}
-	${INSTALL_DATA} ${WRKDIR}/lib/${l}.a ${DESTDIR}${PREFIX}/lib
-	${INSTALL_LIB} ${WRKDIR}/lib/${l}.so.${OPENBLAS_SVER} ${DESTDIR}${PREFIX}/lib
-	${LN} -sf ${l}.so.${OPENBLAS_SVER} ${DESTDIR}${PREFIX}/lib/${l}.so
-.endfor
-
-.include "options.mk"
-.include "../../mk/bsd.pkg.mk"
diff --git a/openblas/PLIST b/openblas/PLIST
deleted file mode 100644
index f9515c1957..0000000000
--- a/openblas/PLIST
+++ /dev/null
@@ -1,7 +0,0 @@
-@comment $NetBSD$
-lib/libopenblas.a
-lib/libopenblas.so
-lib/libopenblas.so.0
-lib/libopenblasp.a
-lib/libopenblasp.so
-lib/libopenblasp.so.0
diff --git a/openblas/TODO b/openblas/TODO
deleted file mode 100644
index 4c5916b2e3..0000000000
--- a/openblas/TODO
+++ /dev/null
@@ -1,3 +0,0 @@
-Implement INTERFACE64, OPENMP options
-Disable DYNAMIC_ARCH if not package-building
-Implement AVX, AVX2 for x86
diff --git a/openblas/buildlink3.mk b/openblas/buildlink3.mk
deleted file mode 100644
index 1b3c5bb6c4..0000000000
--- a/openblas/buildlink3.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# $NetBSD$
-
-BUILDLINK_TREE+=	openblas
-
-.if !defined(OPENBLAS_BUILDLINK3_MK)
-OPENBLAS_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.openblas+=	openblas>=0.2.20
-BUILDLINK_PKGSRCDIR.openblas?=	../../wip/openblas
-.endif	# OPENBLAS_BUILDLINK3_MK
-
-BUILDLINK_TREE+=	-openblas
diff --git a/openblas/distinfo b/openblas/distinfo
deleted file mode 100644
index 6a9ce83b2e..0000000000
--- a/openblas/distinfo
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD$
-
-SHA1 (openblas/OpenBLAS-0.2.20.tar.gz) = a186074145a24823e82c65672dad1cd1ca6fe89c
-RMD160 (openblas/OpenBLAS-0.2.20.tar.gz) = 2b9728cd227894d7378b0f3686b90d0e7e7975d9
-SHA512 (openblas/OpenBLAS-0.2.20.tar.gz) = 8dfc8e8c8d456b834d2e9544c8eadd9f4770e30db8b8dd76af601ec0735fd86c9cf63dd6a03ccd23fc02ec2e05069a09875b9073dfe29f99aadab3a958ae2634
-Size (openblas/OpenBLAS-0.2.20.tar.gz) = 11637301 bytes
-SHA1 (openblas/large.tgz) = a689e5b180595b40c5719b0f358b31b15b57a2db
-RMD160 (openblas/large.tgz) = 8010ff4002ef42cf22a9ee9345011d68fc27d855
-SHA512 (openblas/large.tgz) = e24db2b8a4253ccff9ca196815901c1fefd55e882f4fe1085715ac84b8f318e1842a91072130c17fdd144344ffc80233a77500da9349acb54e504b3935825965
-Size (openblas/large.tgz) = 2595 bytes
-SHA1 (openblas/timing.tgz) = fd47fc3f26d142a791df51e4a422a49662507252
-RMD160 (openblas/timing.tgz) = f0fe220e7ab611d4db8d8cab960361955e2ab093
-SHA512 (openblas/timing.tgz) = be0abfcfffdf0e118ed7e25a8451639833cf0ad6bb04d101bbe194c16f656b6ce509b2f76acf4ad626d1fb5b126bd5498cfea262f2946c2d077751112a2906af
-Size (openblas/timing.tgz) = 1059485 bytes
-SHA1 (patch-Makefile) = 421b8e8d322edc7801e8cc9b0ccf57644018ccde
-SHA1 (patch-Makefile.rule) = 72108fa4d1e8279f78c01606d21b9149947afdaa
-SHA1 (patch-Makefile.system) = eb5bfb5a2f5308ad6ac6f4d7e4b0c2eeaa049200
-SHA1 (patch-c_check) = 32af951c38db716e3ec81b8c7d4c985368561b8e
-SHA1 (patch-common__arm.h) = 1cc14adb8441d3282d57f1b44d69251f86f51392
-SHA1 (patch-cpuid__arm.c) = b1890daa38f15ad122b3f151563836349c00e9b3
-SHA1 (patch-cpuid__arm64.c) = eb2f5cb73f365c5cdc35c6dd2f3244e5082e26a0
-SHA1 (patch-cpuid_ia64.c) = f33294230098a7fb1ef49dd1557b2a07ed11a3a9
-SHA1 (patch-cpuid_sparc.c) = 709647898b963b6afaa7ab91147dc9f261e3da02
-SHA1 (patch-driver_others_memory.c) = 76d7ef5cfcf2a322182ed454a7416a8323329417
-SHA1 (patch-exports+Makefile) = 2429badefe7f379739c41ae142da0cffd41f46cf
-SHA1 (patch-f_check) = 11751e7e779790a47f80f825555bb24d072d0f30
-SHA1 (patch-interface__ztrmv.c) = fefab5887bfc735fb5050df051f39b03201cee2c
diff --git a/openblas/options.mk b/openblas/options.mk
deleted file mode 100644
index bc09428bb5..0000000000
--- a/openblas/options.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-PKG_OPTIONS_VAR=                PKG_OPTIONS.openblas
-PKG_SUPPORTED_OPTIONS=          avx avx2 openmp interface64 dynamic_arch
-PKG_SUGGESTED_OPTIONS=		dynamic_arch
-
-.include "../../mk/bsd.prefs.mk"
-.include "../../mk/bsd.options.mk"
-
-.if empty(PKG_OPTIONS:Mavx)
-BUILDFLAGS+=	NO_AVX=1
-.endif
-
-.if empty(PKG_OPTIONS:Mavx2)
-BUILDFLAGS+=	NO_AVX2=1
-.endif
-
-.if ! empty(PKG_OPTIONS:Mopenmp)
-BUILDFLAGS_THREAD+=	USE_OPENMP=1
-CFLAGS+=		-fopenmp
-CXXFLAGS+=		-fopenmp
-FFLAGS+=		-fopenmp
-BENCHMARK_THREADS_FLAG=	OMP_NUM_THREADS=${BENCHMARK_MAXTHREADS}
-.else
-BUILDFLAGS_THREAD+=	NUM_THREADS=${MAXTHREADS} USE_THREAD=1
-BENCHMARK_THREADS_FLAG=	OPENBLAS_NUM_THREADS=${BENCHMARK_MAXTHREADS}
-.endif
-
-BENCHMARK_MAXTHREADS?=	${MAXTHREADS}
-
-.if ! empty(PKG_OPTIONS:Minterface64)
-BUILDFLAGS+=	INTERFACE64=1
-.endif
-
-.if ! empty(PKG_OPTIONS:Mdynamic_arch)
-# CPU-agnostic build
-BUILDFLAGS+=	DYNAMIC_ARCH=1
-.endif
diff --git a/openblas/patches/patch-Makefile b/openblas/patches/patch-Makefile
deleted file mode 100644
index 3087d7e117..0000000000
--- a/openblas/patches/patch-Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-# Avoid name collision on ARCH
---- Makefile.orig	2015-10-27 20:44:50 UTC
-+++ Makefile
-@@ -238,7 +238,7 @@ ifndef NOFORTRAN
- 	-@echo "LOADOPTS    = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
- 	-@echo "CC          = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
- 	-@echo "override CFLAGS      = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
--	-@echo "ARCH        = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
-+	-@echo "ARCH_       = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
- 	-@echo "ARCHFLAGS   = -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
- 	-@echo "RANLIB      = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
- 	-@echo "LAPACKLIB   = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
diff --git a/openblas/patches/patch-Makefile.rule b/openblas/patches/patch-Makefile.rule
deleted file mode 100644
index d2a24961a1..0000000000
--- a/openblas/patches/patch-Makefile.rule
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD$
-
-# Respect env
---- Makefile.rule.orig	2015-10-27 20:44:50 UTC
-+++ Makefile.rule
-@@ -19,10 +19,10 @@ VERSION = 0.2.15
- 
- # C compiler including binary type(32bit / 64bit). Default is gcc.
- # Don't use Intel Compiler or PGI, it won't generate right codes as I expect.
--# CC = gcc
-+CC = %%CC%%
- 
- # Fortran compiler. Default is g77.
--# FC = gfortran
-+FC = %%FC%%
- 
- # Even you can specify cross compiler. Meanwhile, please set HOSTCC.
- 
diff --git a/openblas/patches/patch-Makefile.system b/openblas/patches/patch-Makefile.system
deleted file mode 100644
index 7bc8d6339f..0000000000
--- a/openblas/patches/patch-Makefile.system
+++ /dev/null
@@ -1,65 +0,0 @@
-$NetBSD$
-
-# Allow serial and parallel libs to coexist
---- Makefile.system.orig	2015-10-27 20:44:50 UTC
-+++ Makefile.system
-@@ -218,6 +218,7 @@ MD5SUM = md5 -r
- endif
- 
- ifeq ($(OSNAME), FreeBSD)
-+EXTRALIB	+= -lm %%LDFLAGS%%
- MD5SUM = md5 -r
- endif
- 
-@@ -889,9 +890,17 @@ SYMBOLSUFFIX =
- endif
- 
- ifndef LIBNAMESUFFIX
-+ifndef SMP
- LIBPREFIX = lib$(SYMBOLPREFIX)openblas$(SYMBOLSUFFIX)
- else
-+LIBPREFIX = lib$(SYMBOLPREFIX)openblasp$(SYMBOLSUFFIX)
-+endif
-+else
-+ifndef SMP
- LIBPREFIX = lib$(SYMBOLPREFIX)openblas$(SYMBOLSUFFIX)_$(LIBNAMESUFFIX)
-+else
-+LIBPREFIX = lib$(SYMBOLPREFIX)openblasp$(SYMBOLSUFFIX)_$(LIBNAMESUFFIX)
-+endif
- endif
- 
- KERNELDIR	= $(TOPDIR)/kernel/$(ARCH)
-@@ -1020,24 +1029,8 @@ ifndef LIBSUFFIX
- LIBSUFFIX = a
- endif
- 
--ifneq ($(DYNAMIC_ARCH), 1)
--ifndef SMP
--LIBNAME		= $(LIBPREFIX)_$(LIBCORE)$(REVISION).$(LIBSUFFIX)
--LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)$(REVISION)_p.$(LIBSUFFIX)
--else
--LIBNAME		= $(LIBPREFIX)_$(LIBCORE)p$(REVISION).$(LIBSUFFIX)
--LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)p$(REVISION)_p.$(LIBSUFFIX)
--endif
--else
--ifndef SMP
- LIBNAME		= $(LIBPREFIX)$(REVISION).$(LIBSUFFIX)
- LIBNAME_P	= $(LIBPREFIX)$(REVISION)_p.$(LIBSUFFIX)
--else
--LIBNAME		= $(LIBPREFIX)p$(REVISION).$(LIBSUFFIX)
--LIBNAME_P	= $(LIBPREFIX)p$(REVISION)_p.$(LIBSUFFIX)
--endif
--endif
--
- 
- LIBDLLNAME   = $(LIBPREFIX).dll
- LIBSONAME    = $(LIBNAME:.$(LIBSUFFIX)=.so)
-@@ -1067,7 +1060,7 @@ LIB_COMPONENTS = CBLAS
- endif
- 
- export OSNAME
--export ARCH
-+export ARCH_
- export CORE
- export LIBCORE
- export PGCPATH
diff --git a/openblas/patches/patch-c_check b/openblas/patches/patch-c_check
deleted file mode 100644
index 8993dcb9e9..0000000000
--- a/openblas/patches/patch-c_check
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-# Avoid name collision on ARCH
---- c_check.orig	2015-10-27 20:44:50 UTC
-+++ c_check
-@@ -235,7 +235,7 @@ open(CONFFILE, "> $config"  ) || die "Ca
- # print $data, "\n";
- 
- print MAKEFILE "OSNAME=$os\n";
--print MAKEFILE "ARCH=$architecture\n";
-+print MAKEFILE "ARCH_=$architecture\n";
- print MAKEFILE "C_COMPILER=$compiler\n";
- print MAKEFILE "BINARY32=\n" if $binformat ne bin32;
- print MAKEFILE "BINARY64=\n" if $binformat ne bin64;
diff --git a/openblas/patches/patch-common__arm.h b/openblas/patches/patch-common__arm.h
deleted file mode 100644
index a8c49440be..0000000000
--- a/openblas/patches/patch-common__arm.h
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD$
-
-# Add clang support
---- common_arm.h.orig	2016-09-01 03:58:42 UTC
-+++ common_arm.h
-@@ -93,6 +93,13 @@ static inline int blas_quickdivide(blasi
- 
- #endif
- 
-+/* Translate pre-UAL asm to UAL equivalents */
-+#if defined(__clang__)
-+#define fnmacs vmls.f32
-+#define fnmacd vmls.f64
-+#define fnmuls vnmul.f32
-+#define fnmuld vnmul.f64
-+#endif
- 
- #ifndef F_INTERFACE
- #define REALNAME ASMNAME
diff --git a/openblas/patches/patch-cpuid__arm.c b/openblas/patches/patch-cpuid__arm.c
deleted file mode 100644
index 4d6d357e14..0000000000
--- a/openblas/patches/patch-cpuid__arm.c
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-# Add default arm processor type
---- cpuid_arm.c.orig	2016-09-01 03:58:42 UTC
-+++ cpuid_arm.c
-@@ -181,7 +181,8 @@ int detect(void)
- 	  }
- 
- 	}
--
-+#else
-+	return CPU_ARMV6;
- #endif
- 
- 	return CPU_UNKNOWN;
diff --git a/openblas/patches/patch-cpuid__arm64.c b/openblas/patches/patch-cpuid__arm64.c
deleted file mode 100644
index bcbd67c8ba..0000000000
--- a/openblas/patches/patch-cpuid__arm64.c
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-# Add default arm processor type
---- cpuid_arm64.c.orig	2016-09-01 03:58:42 UTC
-+++ cpuid_arm64.c
-@@ -132,6 +132,8 @@ int detect(void)
- 
- 
- 	}
-+#else
-+	return CPU_ARMV8;
- #endif
- 
- 	return CPU_UNKNOWN;
diff --git a/openblas/patches/patch-cpuid_ia64.c b/openblas/patches/patch-cpuid_ia64.c
deleted file mode 100644
index c6d9fbd685..0000000000
--- a/openblas/patches/patch-cpuid_ia64.c
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-# FreeBSD does not have sysinfo in base
---- cpuid_ia64.c.orig	2015-10-27 20:44:50 UTC
-+++ cpuid_ia64.c
-@@ -38,7 +38,9 @@
- 
- #include <stdio.h>
- #include <string.h>
-+#ifdef linux
- #include <sys/sysinfo.h>
-+#endif
- #include "cpuid.h"
- 
- #ifdef __ECC
diff --git a/openblas/patches/patch-cpuid_sparc.c b/openblas/patches/patch-cpuid_sparc.c
deleted file mode 100644
index bc6f502590..0000000000
--- a/openblas/patches/patch-cpuid_sparc.c
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD$
-
-# Add sparc support
---- cpuid_sparc.c.orig	2015-10-27 20:44:50 UTC
-+++ cpuid_sparc.c
-@@ -49,6 +49,7 @@ void get_subdirname(void){
- }
- 
- void get_cpuconfig(void){
-+  printf("#define SPARC\n");
-   printf("#define V9\n");
-   printf("#define DTB_DEFAULT_ENTRIES 32\n");
- }
diff --git a/openblas/patches/patch-driver_others_memory.c b/openblas/patches/patch-driver_others_memory.c
deleted file mode 100644
index f77bbc85f5..0000000000
--- a/openblas/patches/patch-driver_others_memory.c
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD$
-
-# Check for old GCC
-Passing a priority level to constructor/destructor only works on GCC >= 4.3.0;
-improve the upstream check so that the build works with base GCC.
---- driver/others/memory.c.orig	2016-04-12 19:29:19 UTC
-+++ driver/others/memory.c
-@@ -144,7 +144,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- #if defined(_MSC_VER) && !defined(__clang__)
- #define CONSTRUCTOR __cdecl
- #define DESTRUCTOR __cdecl
--#elif (defined(OS_DARWIN) || defined(OS_SUNOS)) && defined(C_GCC)
-+#elif (defined(OS_DARWIN) || defined(OS_SUNOS)) || (defined(C_GCC) && ((__GNUC__ == 4) && (__GNUC_MINOR__ < 3)))
- #define CONSTRUCTOR	__attribute__ ((constructor))
- #define DESTRUCTOR	__attribute__ ((destructor))
- #else
diff --git a/openblas/patches/patch-exports+Makefile b/openblas/patches/patch-exports+Makefile
deleted file mode 100644
index 4299ac8e07..0000000000
--- a/openblas/patches/patch-exports+Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD$
-
-# Improve dynamic lib naming
---- exports/Makefile.orig	2015-10-27 20:44:50 UTC
-+++ exports/Makefile
-@@ -140,6 +140,7 @@ endif
- #http://stackoverflow.com/questions/7656425/makefile-ifeq-logical-or
- ifeq ($(OSNAME), $(filter $(OSNAME),FreeBSD NetBSD))
- 
-+EXTRALIB += -lgfortran
- so : ../$(LIBSONAME)
- 
- ifeq (, $(SYMBOLPREFIX)$(SYMBOLSUFFIX))
-@@ -151,6 +152,7 @@ else
- endif
- 	$(CC) $(CFLAGS) $(LDFLAGS)  -shared -o ../$(LIBSONAME) \
- 	-Wl,--whole-archive $< -Wl,--no-whole-archive \
-+	-Wl,-soname,$(LIBPREFIX).so.$(MAJOR_VERSION) \
- 	$(FEXTRALIB) $(EXTRALIB)
- 	$(CC) $(CFLAGS) $(LDFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK.
- 	rm -f linktest
diff --git a/openblas/patches/patch-f_check b/openblas/patches/patch-f_check
deleted file mode 100644
index 120f7179f5..0000000000
--- a/openblas/patches/patch-f_check
+++ /dev/null
@@ -1,23 +0,0 @@
-$NetBSD$
-
-# Clean up link flags
---- f_check.orig	2015-10-27 20:44:50 UTC
-+++ f_check
-@@ -261,7 +261,7 @@ if ($link ne "") {
- 
-     foreach $flags (@flags) {
- 	if (
--	    ($flags =~ /^\-L/)
-+	    ($flags =~ /^\-L\S/)
- 	    && ($flags !~ /^-LIST:/)
- 	    && ($flags !~ /^-LANG:/)
- 	    ) {
-@@ -292,7 +292,7 @@ if ($link ne "") {
- 	}
- 
- 	if (
--	    ($flags =~ /^\-l/)
-+	    ($flags =~ /^\-l\S/)
- 	    && ($flags !~ /gfortranbegin/)
- 	    && ($flags !~ /frtbegin/)
- 	    && ($flags !~ /pathfstart/)
diff --git a/openblas/patches/patch-interface__ztrmv.c b/openblas/patches/patch-interface__ztrmv.c
deleted file mode 100644
index 06e02caa9e..0000000000
--- a/openblas/patches/patch-interface__ztrmv.c
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-# Avoid buffer overflow
---- interface/ztrmv.c.orig	2016-09-01 03:58:42 UTC
-+++ interface/ztrmv.c
-@@ -242,7 +242,7 @@ void CNAME(enum CBLAS_ORDER order, enum 
-   else
- #endif
-   {
--    buffer_size = ((n - 1) / DTB_ENTRIES) * 2 * DTB_ENTRIES + 32 / sizeof(FLOAT);
-+    buffer_size = (((n - 1) / DTB_ENTRIES) * 2 * DTB_ENTRIES + 32 / sizeof(FLOAT)) + 8;
-     // It seems to be required for some K8 or Barcelona CPU
-     buffer_size += 8;
-     if(incx != 1)



Home | Main Index | Thread Index | Old Index