Skip to content

Commit 85636ff

Browse files
committed
Merge branch 'develop'
2 parents 12ab180 + 821affb commit 85636ff

File tree

241 files changed

+54749
-3061
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

241 files changed

+54749
-3061
lines changed

CMakeLists.txt

+6-6
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 2.8.4)
66
project(OpenBLAS)
77
set(OpenBLAS_MAJOR_VERSION 0)
88
set(OpenBLAS_MINOR_VERSION 2)
9-
set(OpenBLAS_PATCH_VERSION 18)
9+
set(OpenBLAS_PATCH_VERSION 19)
1010
set(OpenBLAS_VERSION "${OpenBLAS_MAJOR_VERSION}.${OpenBLAS_MINOR_VERSION}.${OpenBLAS_PATCH_VERSION}")
1111

1212
enable_language(ASM)
@@ -45,8 +45,8 @@ endif()
4545

4646
message(WARNING "CMake support is experimental. This will not produce the same Makefiles that OpenBLAS ships with. Only x86 support is currently available.")
4747

48-
include("${CMAKE_SOURCE_DIR}/cmake/utils.cmake")
49-
include("${CMAKE_SOURCE_DIR}/cmake/system.cmake")
48+
include("${PROJECT_SOURCE_DIR}/cmake/utils.cmake")
49+
include("${PROJECT_SOURCE_DIR}/cmake/system.cmake")
5050

5151
set(BLASDIRS interface driver/level2 driver/level3 driver/others)
5252

@@ -123,9 +123,9 @@ endforeach ()
123123
# Can't just use lapack-netlib's CMake files, since they are set up to search for BLAS, build and install a binary. We just want to build a couple of lib files out of lapack and lapacke.
124124
# Not using add_subdirectory here because lapack-netlib already has its own CMakeLists.txt. Instead include a cmake script with the sources we want.
125125
if (NOT NOFORTRAN AND NOT NO_LAPACK)
126-
include("${CMAKE_SOURCE_DIR}/cmake/lapack.cmake")
126+
include("${PROJECT_SOURCE_DIR}/cmake/lapack.cmake")
127127
if (NOT NO_LAPACKE)
128-
include("${CMAKE_SOURCE_DIR}/cmake/lapacke.cmake")
128+
include("${PROJECT_SOURCE_DIR}/cmake/lapacke.cmake")
129129
endif ()
130130
endif ()
131131

@@ -137,7 +137,7 @@ endif()
137137
# add objects to the openblas lib
138138
add_library(${OpenBLAS_LIBNAME} SHARED ${LA_SOURCES} ${LAPACKE_SOURCES} ${TARGET_OBJS} ${OpenBLAS_DEF_FILE})
139139

140-
include("${CMAKE_SOURCE_DIR}/cmake/export.cmake")
140+
include("${PROJECT_SOURCE_DIR}/cmake/export.cmake")
141141

142142
# Set output for libopenblas
143143
set_target_properties( ${OpenBLAS_LIBNAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)

CONTRIBUTORS.md

+11
Original file line numberDiff line numberDiff line change
@@ -150,3 +150,14 @@ In chronological order:
150150
* theoractice <https://github.com/theoractice/>
151151
* [2016-03-20] Fix compiler error in VisualStudio with CMake
152152
* [2016-03-22] Fix access violation on Windows while static linking
153+
154+
* Paul Mustière <https://github.com/buffer51/>
155+
* [2016-02-04] Fix Android build on ARMV7
156+
* [2016-04-26] Android build with LAPACK for ARMV7 & ARMV8
157+
158+
* Shivraj Patil <https://github.com/sva-img/>
159+
* [2016-05-03] DGEMM optimization for MIPS P5600 and I6400 using MSA
160+
161+
* Kaustubh Raste <https://github.com/ksraste/>
162+
* [2016-05-09] DTRSM optimization for MIPS P5600 and I6400 using MSA
163+
* [2016-05-20] STRSM optimization for MIPS P5600 and I6400 using MSA

Changelog.txt

+18
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,22 @@
11
OpenBLAS ChangeLog
2+
====================================================================
3+
Version 0.2.19
4+
1-Sep-2016
5+
common:
6+
* Improved cross compiling.
7+
* Fix the bug on musl libc.
8+
9+
POWER:
10+
* Optimize BLAS on Power8
11+
* Fixed Julia+OpenBLAS bugs on Power8
12+
13+
MIPS:
14+
* Optimize BLAS on MIPS P5600 and I6400 (Thanks, Shivraj Patil, Kaustubh Raste)
15+
16+
ARM:
17+
* Improved on ARM Cortex-A57. (Thanks, Ashwin Sekhar T K)
18+
19+
220
====================================================================
321
Version 0.2.18
422
12-Apr-2016

Makefile

-4
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,6 @@ endif
108108

109109
tests :
110110
ifndef NOFORTRAN
111-
ifndef TARGET
112-
ifndef CROSS
113111
touch $(LIBNAME)
114112
ifndef NO_FBLAS
115113
$(MAKE) -C test all
@@ -119,8 +117,6 @@ ifndef NO_CBLAS
119117
$(MAKE) -C ctest all
120118
endif
121119
endif
122-
endif
123-
endif
124120

125121
libs :
126122
ifeq ($(CORE), UNKOWN)

Makefile.install

+49-49
Original file line numberDiff line numberDiff line change
@@ -20,110 +20,110 @@ lib.grd :
2020
$(error OpenBLAS: Please run "make" firstly)
2121

2222
install : lib.grd
23-
@-mkdir -p $(DESTDIR)$(PREFIX)
24-
@-mkdir -p $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
25-
@-mkdir -p $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
26-
@-mkdir -p $(DESTDIR)$(OPENBLAS_BINARY_DIR)
27-
@-mkdir -p $(DESTDIR)$(OPENBLAS_CMAKE_DIR)
23+
@-mkdir -p "$(DESTDIR)$(PREFIX)"
24+
@-mkdir -p "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)"
25+
@-mkdir -p "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
26+
@-mkdir -p "$(DESTDIR)$(OPENBLAS_BINARY_DIR)"
27+
@-mkdir -p "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)"
2828
@echo Generating openblas_config.h in $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
2929
#for inc
30-
@echo \#ifndef OPENBLAS_CONFIG_H > $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
31-
@echo \#define OPENBLAS_CONFIG_H >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
32-
@$(AWK) 'NF {print $$1, "OPENBLAS_"$$2, $$3}' config_last.h >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
33-
@echo \#define OPENBLAS_VERSION \" OpenBLAS $(VERSION) \" >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
34-
@cat openblas_config_template.h >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
35-
@echo \#endif \/\* OPENBLAS_CONFIG_H \*\/ >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
30+
@echo \#ifndef OPENBLAS_CONFIG_H > "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h"
31+
@echo \#define OPENBLAS_CONFIG_H >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h"
32+
@$(AWK) 'NF {print $$1, "OPENBLAS_"$$2, $$3}' config_last.h >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h"
33+
@echo \#define OPENBLAS_VERSION \" OpenBLAS $(VERSION) \" >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h"
34+
@cat openblas_config_template.h >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h"
35+
@echo \#endif \/\* OPENBLAS_CONFIG_H \*\/ >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h"
3636

3737
@echo Generating f77blas.h in $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
38-
@echo \#ifndef OPENBLAS_F77BLAS_H > $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h
39-
@echo \#define OPENBLAS_F77BLAS_H >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h
40-
@echo \#include \"openblas_config.h\" >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h
41-
@cat common_interface.h >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h
42-
@echo \#endif >> $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h
38+
@echo \#ifndef OPENBLAS_F77BLAS_H > "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h"
39+
@echo \#define OPENBLAS_F77BLAS_H >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h"
40+
@echo \#include \"openblas_config.h\" >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h"
41+
@cat common_interface.h >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h"
42+
@echo \#endif >> "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/f77blas.h"
4343

4444
ifndef NO_CBLAS
4545
@echo Generating cblas.h in $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
46-
@sed 's/common/openblas_config/g' cblas.h > $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/cblas.h
46+
@sed 's/common/openblas_config/g' cblas.h > "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/cblas.h"
4747
endif
4848

4949
ifndef NO_LAPACKE
5050
@echo Copying LAPACKE header files to $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
51-
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke.h
52-
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_config.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_config.h
53-
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_mangling_with_flags.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_mangling.h
54-
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_utils.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h
51+
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke.h"
52+
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_config.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_config.h"
53+
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_mangling_with_flags.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_mangling.h"
54+
@-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_utils.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h"
5555
endif
5656

5757
#for install static library
5858
ifndef NO_STATIC
5959
@echo Copying the static library to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
60-
@install -pm644 $(LIBNAME) $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
61-
@cd $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) ; \
60+
@install -pm644 $(LIBNAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
61+
@cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \
6262
ln -fs $(LIBNAME) $(LIBPREFIX).$(LIBSUFFIX)
6363
endif
6464
#for install shared library
6565
ifndef NO_SHARED
6666
@echo Copying the shared library to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
6767
ifeq ($(OSNAME), $(filter $(OSNAME),Linux SunOS))
68-
@install -pm755 $(LIBSONAME) $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
69-
@cd $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) ; \
68+
@install -pm755 $(LIBSONAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
69+
@cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \
7070
ln -fs $(LIBSONAME) $(LIBPREFIX).so ; \
7171
ln -fs $(LIBSONAME) $(LIBPREFIX).so.$(MAJOR_VERSION)
7272
endif
7373
ifeq ($(OSNAME), FreeBSD)
74-
@cp $(LIBSONAME) $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
75-
@cd $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) ; \
74+
@cp $(LIBSONAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
75+
@cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \
7676
ln -fs $(LIBSONAME) $(LIBPREFIX).so
7777
endif
7878
ifeq ($(OSNAME), NetBSD)
79-
@cp $(LIBSONAME) $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
80-
@cd $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) ; \
79+
@cp $(LIBSONAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
80+
@cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \
8181
ln -fs $(LIBSONAME) $(LIBPREFIX).so
8282
endif
8383
ifeq ($(OSNAME), Darwin)
84-
@-cp $(LIBDYNNAME) $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
85-
@-install_name_tool -id $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME)
86-
@cd $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) ; \
84+
@-cp $(LIBDYNNAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
85+
@-install_name_tool -id "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME)" "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME)"
86+
@cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \
8787
ln -fs $(LIBDYNNAME) $(LIBPREFIX).dylib
8888
endif
8989
ifeq ($(OSNAME), WINNT)
90-
@-cp $(LIBDLLNAME) $(DESTDIR)$(OPENBLAS_BINARY_DIR)
91-
@-cp $(LIBDLLNAME).a $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
90+
@-cp $(LIBDLLNAME) "$(DESTDIR)$(OPENBLAS_BINARY_DIR)"
91+
@-cp $(LIBDLLNAME).a "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)"
9292
endif
9393
ifeq ($(OSNAME), CYGWIN_NT)
9494
@-cp $(LIBDLLNAME) $(OPENBLAS_BINARY_DIR)
9595
endif
9696
endif
9797
#Generating OpenBLASConfig.cmake
9898
@echo Generating $(OPENBLAS_CMAKE_CONFIG) in $(DESTDIR)$(OPENBLAS_CMAKE_DIR)
99-
@echo "SET(OpenBLAS_VERSION \"${VERSION}\")" > $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
100-
@echo "SET(OpenBLAS_INCLUDE_DIRS ${OPENBLAS_INCLUDE_DIR})" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
99+
@echo "SET(OpenBLAS_VERSION \"${VERSION}\")" > "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)"
100+
@echo "SET(OpenBLAS_INCLUDE_DIRS ${OPENBLAS_INCLUDE_DIR})" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)"
101101

102102
ifndef NO_SHARED
103103
#ifeq logical or
104104
ifeq ($(OSNAME), $(filter $(OSNAME),Linux FreeBSD NetBSD))
105-
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).so)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
105+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).so)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)"
106106
endif
107107
ifeq ($(OSNAME), $(filter $(OSNAME),WINNT CYGWIN_NT))
108-
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_BINARY_DIR}/$(LIBDLLNAME))" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
108+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_BINARY_DIR}/$(LIBDLLNAME))" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)"
109109
endif
110110
ifeq ($(OSNAME), Darwin)
111-
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).dylib)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
111+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).dylib)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)"
112112
endif
113113
else
114114
#only static
115-
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).$(LIBSUFFIX))" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
115+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).$(LIBSUFFIX))" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)"
116116
endif
117117
#Generating OpenBLASConfigVersion.cmake
118118
@echo Generating $(OPENBLAS_CMAKE_CONFIG_VERSION) in $(DESTDIR)$(OPENBLAS_CMAKE_DIR)
119-
@echo "set (PACKAGE_VERSION \"${VERSION}\")" > $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
120-
@echo "if (PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
121-
@echo " set (PACKAGE_VERSION_COMPATIBLE FALSE)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
122-
@echo "else ()" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
123-
@echo " set (PACKAGE_VERSION_COMPATIBLE TRUE)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
124-
@echo " if (PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
125-
@echo " set (PACKAGE_VERSION_EXACT TRUE)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
126-
@echo " endif ()" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
127-
@echo "endif ()" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)
119+
@echo "set (PACKAGE_VERSION \"${VERSION}\")" > "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
120+
@echo "if (PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
121+
@echo " set (PACKAGE_VERSION_COMPATIBLE FALSE)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
122+
@echo "else ()" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
123+
@echo " set (PACKAGE_VERSION_COMPATIBLE TRUE)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
124+
@echo " if (PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
125+
@echo " set (PACKAGE_VERSION_EXACT TRUE)" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
126+
@echo " endif ()" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
127+
@echo "endif ()" >> "$(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG_VERSION)"
128128
@echo Install OK!
129129

Makefile.mips

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
ifdef BINARY64
2+
else
3+
endif

Makefile.power

+33-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,26 @@
1-
# CCOMMON_OPT += -DALLOC_SHM
1+
2+
ifdef USE_THREAD
3+
ifeq ($(USE_THREAD), 0)
4+
USE_OPENMP = 0
5+
else
6+
USE_OPENMP = 1
7+
endif
8+
else
9+
USE_OPENMP = 1
10+
endif
11+
12+
13+
14+
ifeq ($(CORE), POWER8)
15+
ifeq ($(USE_OPENMP), 1)
16+
COMMON_OPT += -Ofast -mcpu=power8 -mtune=power8 -mvsx -malign-power -DUSE_OPENMP -fno-fast-math -fopenmp
17+
FCOMMON_OPT += -O2 -frecursive -mcpu=power8 -mtune=power8 -malign-power -DUSE_OPENMP -fno-fast-math -fopenmp
18+
else
19+
COMMON_OPT += -Ofast -mcpu=power8 -mtune=power8 -mvsx -malign-power -fno-fast-math
20+
FCOMMON_OPT += -O2 -frecursive -mcpu=power8 -mtune=power8 -malign-power -fno-fast-math
21+
endif
22+
endif
23+
224

325
FLAMEPATH = $(HOME)/flame/lib
426

@@ -16,6 +38,16 @@ else
1638
endif
1739
endif
1840

41+
#Either uncomment below line or run make with `USE_MASS=1` to enable support of MASS library
42+
#USE_MASS = 1
43+
44+
ifeq ($(USE_MASS), 1)
45+
# Path to MASS libs, change it if the libs are installed at any other location
46+
MASSPATH = /opt/ibm/xlmass/8.1.3/lib
47+
COMMON_OPT += -mveclibabi=mass -ftree-vectorize -funsafe-math-optimizations -DUSE_MASS
48+
EXTRALIB += -L$(MASSPATH) -lmass -lmassvp8 -lmass_simdp8
49+
endif
50+
1951
ifdef BINARY64
2052

2153

Makefile.prebuild

+14-2
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,26 @@ ifdef CPUIDEMU
1717
EXFLAGS = -DCPUIDEMU -DVENDOR=99
1818
endif
1919

20+
ifeq ($(TARGET), P5600)
21+
TARGET_FLAGS = -mips32r5
22+
endif
23+
24+
ifeq ($(TARGET), I6400)
25+
TARGET_FLAGS = -mips64r6
26+
endif
27+
28+
ifeq ($(TARGET), P6600)
29+
TARGET_FLAGS = -mips64r6
30+
endif
31+
2032
all: getarch_2nd
2133
./getarch_2nd 0 >> $(TARGET_MAKE)
2234
./getarch_2nd 1 >> $(TARGET_CONF)
2335

2436
config.h : c_check f_check getarch
25-
perl ./c_check $(TARGET_MAKE) $(TARGET_CONF) $(CC)
37+
perl ./c_check $(TARGET_MAKE) $(TARGET_CONF) $(CC) $(TARGET_FLAGS)
2638
ifneq ($(ONLY_CBLAS), 1)
27-
perl ./f_check $(TARGET_MAKE) $(TARGET_CONF) $(FC)
39+
perl ./f_check $(TARGET_MAKE) $(TARGET_CONF) $(FC) $(TARGET_FLAGS)
2840
else
2941
#When we only build CBLAS, we set NOFORTRAN=2
3042
echo "NOFORTRAN=2" >> $(TARGET_MAKE)

Makefile.rule

+4-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#
44

55
# This library's version
6-
VERSION = 0.2.18
6+
VERSION = 0.2.19
77

88
# If you set the suffix, the library name will be libopenblas_$(LIBNAMESUFFIX).a
99
# and libopenblas_$(LIBNAMESUFFIX).so. Meanwhile, the soname in shared library
@@ -52,6 +52,7 @@ VERSION = 0.2.18
5252
# USE_THREAD = 0
5353

5454
# If you're going to use this library with OpenMP, please comment it in.
55+
# This flag is always set for POWER8. Don't modify the flag
5556
# USE_OPENMP = 1
5657

5758
# You can define maximum number of threads. Basically it should be
@@ -153,10 +154,12 @@ NO_AFFINITY = 1
153154

154155
# Common Optimization Flag;
155156
# The default -O2 is enough.
157+
# Flags for POWER8 are defined in Makefile.power. Don't modify COMMON_OPT
156158
# COMMON_OPT = -O2
157159

158160
# gfortran option for LAPACK
159161
# enable this flag only on 64bit Linux and if you need a thread safe lapack library
162+
# Flags for POWER8 are defined in Makefile.power. Don't modify FCOMMON_OPT
160163
# FCOMMON_OPT = -frecursive
161164

162165
# Profiling flags

0 commit comments

Comments
 (0)