| @@ -82,28 +82,28 @@ endif | |||||
| shared : | shared : | ||||
| ifeq ($(OSNAME), Linux) | ifeq ($(OSNAME), Linux) | ||||
| $(MAKE) -C exports so | $(MAKE) -C exports so | ||||
| -ln -fs $(LIBSONAME) libopenblas.so | |||||
| -ln -fs $(LIBSONAME) libopenblas.so.$(MAJOR_VERSION) | |||||
| -ln -fs $(LIBSONAME) $(LIBPREFIX).so | |||||
| -ln -fs $(LIBSONAME) $(LIBPREFIX).so.$(MAJOR_VERSION) | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), FreeBSD) | ifeq ($(OSNAME), FreeBSD) | ||||
| $(MAKE) -C exports so | $(MAKE) -C exports so | ||||
| -ln -fs $(LIBSONAME) libopenblas.so | |||||
| -ln -fs $(LIBSONAME) $(LIBPREFIX).so | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), NetBSD) | ifeq ($(OSNAME), NetBSD) | ||||
| $(MAKE) -C exports so | $(MAKE) -C exports so | ||||
| -ln -fs $(LIBSONAME) libopenblas.so | |||||
| -ln -fs $(LIBSONAME) $(LIBPREFIX).so | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), Darwin) | ifeq ($(OSNAME), Darwin) | ||||
| $(MAKE) -C exports dyn | $(MAKE) -C exports dyn | ||||
| -ln -fs $(LIBDYNNAME) libopenblas.dylib | |||||
| -ln -fs $(LIBDYNNAME) $(LIBPREFIX).dylib | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), WINNT) | ifeq ($(OSNAME), WINNT) | ||||
| $(MAKE) -C exports dll | $(MAKE) -C exports dll | ||||
| -ln -fs $(LIBDLLNAME) libopenblas.dll | |||||
| -ln -fs $(LIBDLLNAME) $(LIBPREFIX).dll | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), CYGWIN_NT) | ifeq ($(OSNAME), CYGWIN_NT) | ||||
| $(MAKE) -C exports dll | $(MAKE) -C exports dll | ||||
| -ln -fs $(LIBDLLNAME) libopenblas.dll | |||||
| -ln -fs $(LIBDLLNAME) $(LIBPREFIX).dll | |||||
| endif | endif | ||||
| tests : | tests : | ||||
| @@ -131,7 +131,7 @@ endif | |||||
| ifeq ($(NOFORTRAN), 1) | ifeq ($(NOFORTRAN), 1) | ||||
| $(error OpenBLAS: Detecting fortran compiler failed. Please install fortran compiler, e.g. gfortran, ifort, openf90.) | $(error OpenBLAS: Detecting fortran compiler failed. Please install fortran compiler, e.g. gfortran, ifort, openf90.) | ||||
| endif | endif | ||||
| -ln -fs $(LIBNAME) libopenblas.$(LIBSUFFIX) | |||||
| -ln -fs $(LIBNAME) $(LIBPREFIX).$(LIBSUFFIX) | |||||
| for d in $(SUBDIRS) ; \ | for d in $(SUBDIRS) ; \ | ||||
| do if test -d $$d; then \ | do if test -d $$d; then \ | ||||
| $(MAKE) -C $$d $(@F) || exit 1 ; \ | $(MAKE) -C $$d $(@F) || exit 1 ; \ | ||||
| @@ -159,7 +159,7 @@ endif | |||||
| prof : prof_blas prof_lapack | prof : prof_blas prof_lapack | ||||
| prof_blas : | prof_blas : | ||||
| ln -fs $(LIBNAME_P) libopenblas_p.$(LIBSUFFIX) | |||||
| ln -fs $(LIBNAME_P) $(LIBPREFIX)_p.$(LIBSUFFIX) | |||||
| for d in $(SUBDIRS) ; \ | for d in $(SUBDIRS) ; \ | ||||
| do if test -d $$d; then \ | do if test -d $$d; then \ | ||||
| $(MAKE) -C $$d prof || exit 1 ; \ | $(MAKE) -C $$d prof || exit 1 ; \ | ||||
| @@ -170,7 +170,7 @@ ifdef DYNAMIC_ARCH | |||||
| endif | endif | ||||
| blas : | blas : | ||||
| ln -fs $(LIBNAME) libopenblas.$(LIBSUFFIX) | |||||
| ln -fs $(LIBNAME) $(LIBPREFIX).$(LIBSUFFIX) | |||||
| for d in $(BLASDIRS) ; \ | for d in $(BLASDIRS) ; \ | ||||
| do if test -d $$d; then \ | do if test -d $$d; then \ | ||||
| $(MAKE) -C $$d libs || exit 1 ; \ | $(MAKE) -C $$d libs || exit 1 ; \ | ||||
| @@ -178,7 +178,7 @@ blas : | |||||
| done | done | ||||
| hpl : | hpl : | ||||
| ln -fs $(LIBNAME) libopenblas.$(LIBSUFFIX) | |||||
| ln -fs $(LIBNAME) $(LIBPREFIX).$(LIBSUFFIX) | |||||
| for d in $(BLASDIRS) ../laswp exports ; \ | for d in $(BLASDIRS) ../laswp exports ; \ | ||||
| do if test -d $$d; then \ | do if test -d $$d; then \ | ||||
| $(MAKE) -C $$d $(@F) || exit 1 ; \ | $(MAKE) -C $$d $(@F) || exit 1 ; \ | ||||
| @@ -192,7 +192,7 @@ ifdef DYNAMIC_ARCH | |||||
| endif | endif | ||||
| hpl_p : | hpl_p : | ||||
| ln -fs $(LIBNAME_P) libopenblas_p.$(LIBSUFFIX) | |||||
| ln -fs $(LIBNAME_P) $(LIBPREFIX)_p.$(LIBSUFFIX) | |||||
| for d in $(SUBDIRS) ../laswp exports ; \ | for d in $(SUBDIRS) ../laswp exports ; \ | ||||
| do if test -d $$d; then \ | do if test -d $$d; then \ | ||||
| $(MAKE) -C $$d $(@F) || exit 1 ; \ | $(MAKE) -C $$d $(@F) || exit 1 ; \ | ||||
| @@ -287,7 +287,7 @@ clean :: | |||||
| @$(MAKE) -C kernel clean | @$(MAKE) -C kernel clean | ||||
| #endif | #endif | ||||
| @$(MAKE) -C reference clean | @$(MAKE) -C reference clean | ||||
| @rm -f *.$(LIBSUFFIX) *.so *~ *.exe getarch getarch_2nd *.dll *.lib *.$(SUFFIX) *.dwf libopenblas.$(LIBSUFFIX) libopenblas_p.$(LIBSUFFIX) *.lnk myconfig.h | |||||
| @rm -f *.$(LIBSUFFIX) *.so *~ *.exe getarch getarch_2nd *.dll *.lib *.$(SUFFIX) *.dwf $(LIBPREFIX).$(LIBSUFFIX) $(LIBPREFIX)_p.$(LIBSUFFIX) $(LIBPREFIX).so.$(MAJOR_VERSION) *.lnk myconfig.h | |||||
| @rm -f Makefile.conf config.h Makefile_kernel.conf config_kernel.h st* *.dylib | @rm -f Makefile.conf config.h Makefile_kernel.conf config_kernel.h st* *.dylib | ||||
| @if test -d lapack-3.4.0; then \ | @if test -d lapack-3.4.0; then \ | ||||
| echo deleting lapack-3.4.0; \ | echo deleting lapack-3.4.0; \ | ||||
| @@ -38,34 +38,34 @@ install : lib.grd | |||||
| #for install static library | #for install static library | ||||
| @echo Copy the static library to $(OPENBLAS_LIBRARY_DIR) | @echo Copy the static library to $(OPENBLAS_LIBRARY_DIR) | ||||
| @cp $(LIBNAME) $(OPENBLAS_LIBRARY_DIR) | @cp $(LIBNAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| @-ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBNAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.$(LIBSUFFIX) | |||||
| @-ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).$(LIBSUFFIX) | |||||
| #for install shared library | #for install shared library | ||||
| @echo Copy the shared library to $(OPENBLAS_LIBRARY_DIR) | @echo Copy the shared library to $(OPENBLAS_LIBRARY_DIR) | ||||
| ifeq ($(OSNAME), Linux) | ifeq ($(OSNAME), Linux) | ||||
| -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR) | -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.so | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.so.$(MAJOR_VERSION) | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so.$(MAJOR_VERSION) | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), FreeBSD) | ifeq ($(OSNAME), FreeBSD) | ||||
| -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR) | -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.so | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), NetBSD) | ifeq ($(OSNAME), NetBSD) | ||||
| -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR) | -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.so | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), Darwin) | ifeq ($(OSNAME), Darwin) | ||||
| -cp $(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR) | -cp $(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| -install_name_tool -id $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) | -install_name_tool -id $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) | ||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.dylib | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).dylib | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), WINNT) | ifeq ($(OSNAME), WINNT) | ||||
| -cp $(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR) | -cp $(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.dll | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).dll | |||||
| endif | endif | ||||
| ifeq ($(OSNAME), CYGWIN_NT) | ifeq ($(OSNAME), CYGWIN_NT) | ||||
| -cp $(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR) | -cp $(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR) | ||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)/libopenblas.dll | |||||
| -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).dll | |||||
| endif | endif | ||||
| @echo Install OK! | @echo Install OK! | ||||
| @@ -5,6 +5,11 @@ | |||||
| # This library's version | # This library's version | ||||
| VERSION = 0.1alpha2.5 | VERSION = 0.1alpha2.5 | ||||
| # If you set the suffix, the library name will be libopenblas_$(LIBNAMESUFFIX).a | |||||
| # and libopenblas_$(LIBNAMESUFFIX).so. Meanwhile, the soname in shared library | |||||
| # is libopenblas_$(LIBNAMESUFFIX).so.0. | |||||
| # LIBNAMESUFFIX = omp | |||||
| # You can specify the target architecture, otherwise it's | # You can specify the target architecture, otherwise it's | ||||
| # automatically detected. | # automatically detected. | ||||
| # TARGET = PENRYN | # TARGET = PENRYN | ||||
| @@ -569,7 +569,11 @@ ifdef USE_SIMPLE_THREADED_LEVEL3 | |||||
| CCOMMON_OPT += -DUSE_SIMPLE_THREADED_LEVEL3 | CCOMMON_OPT += -DUSE_SIMPLE_THREADED_LEVEL3 | ||||
| endif | endif | ||||
| ifndef LIBNAMESUFFIX | |||||
| LIBPREFIX = libopenblas | LIBPREFIX = libopenblas | ||||
| else | |||||
| LIBPREFIX = libopenblas_$(LIBNAMESUFFIX) | |||||
| endif | |||||
| KERNELDIR = $(TOPDIR)/kernel/$(ARCH) | KERNELDIR = $(TOPDIR)/kernel/$(ARCH) | ||||
| @@ -100,7 +100,7 @@ so : ../$(LIBSONAME) | |||||
| ../$(LIBSONAME) : ../$(LIBNAME) linux.def linktest.c | ../$(LIBSONAME) : ../$(LIBNAME) linux.def linktest.c | ||||
| $(CC) $(CFLAGS) -shared -o ../$(LIBSONAME) \ | $(CC) $(CFLAGS) -shared -o ../$(LIBSONAME) \ | ||||
| -Wl,--whole-archive ../$(LIBNAME) -Wl,--no-whole-archive \ | -Wl,--whole-archive ../$(LIBNAME) -Wl,--no-whole-archive \ | ||||
| -Wl,--retain-symbols-file=linux.def -Wl,-soname,libopenblas.so.$(MAJOR_VERSION) $(EXTRALIB) | |||||
| -Wl,--retain-symbols-file=linux.def -Wl,-soname,$(LIBPREFIX).so.$(MAJOR_VERSION) $(EXTRALIB) | |||||
| $(CC) $(CFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK. | $(CC) $(CFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK. | ||||
| rm -f linktest | rm -f linktest | ||||