Skip to content

Instantly share code, notes, and snippets.

Revisions

  1. zchothia created this gist Apr 7, 2012.
    2,678 changes: 2,678 additions & 0 deletions openblas-r0.1.0-0002-Build-LAPACKE-C-Interface-to-LAPACK.patch
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,2678 @@
    From 26c35fd278ed7f0047f809316f55acdd5b9b207d Mon Sep 17 00:00:00 2001
    From: Zaheer Chothia <[email protected]>
    Date: Sat, 7 Apr 2012 10:40:46 +0200
    Subject: [PATCH] Build LAPACKE: C Interface to LAPACK.

    ---
    Makefile | 93 ++-
    Makefile.install | 7 +
    Makefile.rule | 3 +
    Makefile.system | 8 +
    exports/Makefile | 16 +-
    exports/gensymbol | 2152 +++++++++++++++++++++++++++++++++++++++++++++++-
    patch.for_lapack-3.4.0 | 155 ++++
    7 files changed, 2371 insertions(+), 63 deletions(-)

    diff --git a/Makefile b/Makefile
    index ba04aa9..3e30b72 100644
    --- a/Makefile
    +++ b/Makefile
    @@ -26,10 +26,10 @@ endif

    SUBDIRS_ALL = $(SUBDIRS) test ctest utest exports benchmark ../laswp ../bench

    -.PHONY : all libs netlib test ctest shared install
    +.PHONY : all libs netlib lapacke test ctest shared install
    .NOTPARALLEL : all libs prof lapack-test install

    -all :: libs netlib tests shared
    +all :: libs netlib lapacke tests shared
    @echo
    @echo " OpenBLAS build complete."
    @echo
    @@ -203,41 +203,64 @@ ifeq ($(NO_LAPACK), 1)
    netlib :

    else
    -netlib : lapack-3.4.0 patch.for_lapack-3.4.0 lapack-3.4.0/make.inc
    +netlib : lapack-3.4.0 patch.for_lapack-3.4.0 $(NETLIB_LAPACK_DIR)/make.inc
    ifndef NOFORTRAN
    - -@$(MAKE) -C lapack-3.4.0 lapacklib
    + -@$(MAKE) -C $(NETLIB_LAPACK_DIR) lapacklib
    endif
    endif

    -prof_lapack : lapack-3.4.0 lapack-3.4.0/make.inc
    - -@$(MAKE) -C lapack-3.4.0 lapack_prof
    +ifeq ($(NO_LAPACKE), 1)
    +lapacke :

    -lapack-3.4.0/make.inc :
    +else
    +lapacke : lapack-3.4.0 $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    +ifndef NOFORTRAN
    + -@$(MAKE) -C $(NETLIB_LAPACK_DIR)/lapacke
    +endif
    +endif
    +
    +prof_lapack : lapack-3.4.0 $(NETLIB_LAPACK_DIR)/make.inc
    + -@$(MAKE) -C $(NETLIB_LAPACK_DIR) lapack_prof
    +
    +$(NETLIB_LAPACK_DIR)/make.inc :
    +ifndef NOFORTRAN
    + -@echo "FORTRAN = $(FC)" > $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "OPTS = $(FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "POPTS = $(FPFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "NOOPT = $(FFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "PNOOPT = $(FPFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "LOADOPTS = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "ARCH = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "RANLIB = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "LAPACKLIB = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "SUFFIX = $(SUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@echo "PSUFFIX = $(PSUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
    +# -@echo "CEXTRALIB = $(CEXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
    + -@cat make.inc >> $(NETLIB_LAPACK_DIR)/make.inc
    +endif
    +
    +$(NETLIB_LAPACK_DIR)/lapacke/make.inc :
    ifndef NOFORTRAN
    - -@echo "FORTRAN = $(FC)" > lapack-3.4.0/make.inc
    - -@echo "OPTS = $(FFLAGS)" >> lapack-3.4.0/make.inc
    - -@echo "POPTS = $(FPFLAGS)" >> lapack-3.4.0/make.inc
    - -@echo "NOOPT = $(FFLAGS) -O0" >> lapack-3.4.0/make.inc
    - -@echo "PNOOPT = $(FPFLAGS) -O0" >> lapack-3.4.0/make.inc
    - -@echo "LOADOPTS = $(FFLAGS) $(EXTRALIB)" >> lapack-3.4.0/make.inc
    - -@echo "ARCH = $(AR)" >> lapack-3.4.0/make.inc
    - -@echo "RANLIB = $(RANLIB)" >> lapack-3.4.0/make.inc
    - -@echo "LAPACKLIB = ../$(LIBNAME)" >> lapack-3.4.0/make.inc
    - -@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> lapack-3.4.0/make.inc
    - -@echo "SUFFIX = $(SUFFIX)" >> lapack-3.4.0/make.inc
    - -@echo "PSUFFIX = $(PSUFFIX)" >> lapack-3.4.0/make.inc
    -# -@echo "CEXTRALIB = $(CEXTRALIB)" >> lapack-3.4.0/make.inc
    - -@cat make.inc >> lapack-3.4.0/make.inc
    + -@echo "CC = $(CC)" > $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "CFLAGS = $(CFLAGS)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "LINKER = $(FC)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "LDFLAGS = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "LAPACKE = ../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "LIBS = $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "ARCH = $(AR)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "ARCHFLAGS = -ru" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    + -@echo "RANLIB = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/lapacke/make.inc
    endif

    lapack-3.4.0 : lapack-3.4.0.tgz
    ifndef NOFORTRAN
    @if test `$(MD5SUM) lapack-3.4.0.tgz | $(AWK) '{print $$1}'` = 02d5706ec03ba885fc246e5fa10d8c70; then \
    echo $(TAR) zxf $< ;\
    - $(TAR) zxf $< && (cd lapack-3.4.0; $(PATCH) -p1 < ../patch.for_lapack-3.4.0) ;\
    + $(TAR) zxf $< && (cd $(NETLIB_LAPACK_DIR); $(PATCH) -p1 < ../patch.for_lapack-3.4.0) ;\
    else \
    echo " lapack-3.4.0.tgz check sum is wrong (Please use orignal)." ;\
    - rm -rf lapack-3.4.0 ;\
    + rm -rf $(NETLIB_LAPACK_DIR) ;\
    fi
    endif

    @@ -258,19 +281,19 @@ endif

    lapack-timing : lapack-3.4.0 large.tgz timing.tgz
    ifndef NOFORTRAN
    - (cd lapack-3.4.0; $(TAR) zxf ../timing.tgz TIMING)
    - (cd lapack-3.4.0/TIMING; $(TAR) zxf ../../large.tgz )
    - make -C lapack-3.4.0 tmglib
    - make -C lapack-3.4.0/TIMING
    + (cd $(NETLIB_LAPACK_DIR); $(TAR) zxf ../timing.tgz TIMING)
    + (cd $(NETLIB_LAPACK_DIR)/TIMING; $(TAR) zxf ../../large.tgz )
    + make -C $(NETLIB_LAPACK_DIR) tmglib
    + make -C $(NETLIB_LAPACK_DIR)/TIMING
    endif


    lapack-test :
    - $(MAKE) -C lapack-3.4.0 tmglib
    - $(MAKE) -C lapack-3.4.0/TESTING xeigtstc xeigtstd xeigtsts xeigtstz xlintstc xlintstd xlintstds xlintsts xlintstz xlintstzc
    - @rm -f lapack-3.4.0/TESTING/*.out
    - $(MAKE) -j 1 -C lapack-3.4.0/TESTING
    - $(GREP) failed lapack-3.4.0/TESTING/*.out
    + $(MAKE) -C $(NETLIB_LAPACK_DIR) tmglib
    + $(MAKE) -C $(NETLIB_LAPACK_DIR)/TESTING xeigtstc xeigtstd xeigtsts xeigtstz xlintstc xlintstd xlintstds xlintsts xlintstz xlintstzc
    + @rm -f $(NETLIB_LAPACK_DIR)/TESTING/*.out
    + $(MAKE) -j 1 -C $(NETLIB_LAPACK_DIR)/TESTING
    + $(GREP) failed $(NETLIB_LAPACK_DIR)/TESTING/*.out

    dummy :

    @@ -289,9 +312,9 @@ clean ::
    @$(MAKE) -C reference clean
    @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
    - @if test -d lapack-3.4.0; then \
    - echo deleting lapack-3.4.0; \
    - rm -rf lapack-3.4.0 ;\
    + @if test -d $(NETLIB_LAPACK_DIR); then \
    + echo deleting $(NETLIB_LAPACK_DIR); \
    + rm -rf $(NETLIB_LAPACK_DIR) ;\
    fi
    @rm -f *.grd Makefile.conf_last config_last.h
    @echo Done.
    \ No newline at end of file
    diff --git a/Makefile.install b/Makefile.install
    index 46105fc..2ba10d0 100644
    --- a/Makefile.install
    +++ b/Makefile.install
    @@ -35,6 +35,13 @@ install : lib.grd
    @echo Generating cblas.h in $(OPENBLAS_INCLUDE_DIR)
    @sed 's/common/openblas_config/g' cblas.h > $(OPENBLAS_INCLUDE_DIR)/cblas.h

    +ifndef NO_LAPACKE
    + @echo Copying LAPACKE header files to $(OPENBLAS_LIBRARY_DIR)
    + @cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke.h $(OPENBLAS_INCLUDE_DIR)/lapacke.h
    + @cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_config.h $(OPENBLAS_INCLUDE_DIR)/lapacke_config.h
    + @cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_utils.h $(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h
    +endif
    +
    #for install static library
    @echo Copy the static library to $(OPENBLAS_LIBRARY_DIR)
    @cp $(LIBNAME) $(OPENBLAS_LIBRARY_DIR)
    diff --git a/Makefile.rule b/Makefile.rule
    index 650478a..843888b 100644
    --- a/Makefile.rule
    +++ b/Makefile.rule
    @@ -51,6 +51,9 @@ VERSION = 0.1.0
    # If you don't need LAPACK, please comment it in.
    # NO_LAPACK = 1

    +# If you don't need LAPACKE (C Interface to LAPACK), please comment it in.
    +# NO_LAPACKE = 1
    +
    # If you want to use legacy threaded Level 3 implementation.
    # USE_SIMPLE_THREADED_LEVEL3 = 1

    diff --git a/Makefile.system b/Makefile.system
    index 0fd223d..6e4893c 100644
    --- a/Makefile.system
    +++ b/Makefile.system
    @@ -9,6 +9,10 @@ ifndef TOPDIR
    TOPDIR = .
    endif

    +ifndef NETLIB_LAPACK_DIR
    +NETLIB_LAPACK_DIR = $(TOPDIR)/lapack-3.4.0
    +endif
    +
    # Default C compiler
    CC = gcc

    @@ -535,6 +539,10 @@ ifeq ($(NO_LAPACK), 1)
    CCOMMON_OPT += -DNO_LAPACK
    endif

    +ifeq ($(NO_LAPACKE), 1)
    +CCOMMON_OPT += -DNO_LAPACKE
    +endif
    +
    ifdef SMP
    CCOMMON_OPT += -DSMP_SERVER

    diff --git a/exports/Makefile b/exports/Makefile
    index 873e8b2..c4d2abd 100644
    --- a/exports/Makefile
    +++ b/exports/Makefile
    @@ -76,13 +76,13 @@ libgoto2_shared.dll : ../$(LIBNAME) libgoto2_shared.def
    -Wl,--out-implib,libgoto2_shared.lib $(FEXTRALIB)

    libopenblas.def : gensymbol
    - perl ./gensymbol win2k $(ARCH) dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > $(@F)
    + perl ./gensymbol win2k $(ARCH) dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > $(@F)

    libgoto2_shared.def : gensymbol
    - perl ./gensymbol win2k $(ARCH) dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > $(@F)
    + perl ./gensymbol win2k $(ARCH) dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > $(@F)

    libgoto_hpl.def : gensymbol
    - perl ./gensymbol win2khpl $(ARCH) dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > $(@F)
    + perl ./gensymbol win2khpl $(ARCH) dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > $(@F)

    $(LIBDYNNAME) : ../$(LIBNAME) osx.def
    $(CC) $(CFLAGS) -all_load -headerpad_max_install_names -install_name $(CURDIR)/../$(LIBDYNNAME) -dynamiclib -o ../$(LIBDYNNAME) $< -Wl,-exported_symbols_list,osx.def $(FEXTRALIB)
    @@ -163,23 +163,23 @@ static : ../$(LIBNAME)
    rm -f goto.$(SUFFIX)

    linux.def : gensymbol ../Makefile.system ../getarch.c
    - perl ./gensymbol linux $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > $(@F)
    + perl ./gensymbol linux $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > $(@F)

    osx.def : gensymbol ../Makefile.system ../getarch.c
    - perl ./gensymbol osx $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > $(@F)
    + perl ./gensymbol osx $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > $(@F)

    aix.def : gensymbol ../Makefile.system ../getarch.c
    - perl ./gensymbol aix $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > $(@F)
    + perl ./gensymbol aix $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > $(@F)

    symbol.S : gensymbol
    - perl ./gensymbol win2kasm noarch dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > symbol.S
    + perl ./gensymbol win2kasm noarch dummy $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > symbol.S

    test : linktest.c
    $(CC) $(CFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) -lm && echo OK.
    rm -f linktest

    linktest.c : gensymbol ../Makefile.system ../getarch.c
    - perl ./gensymbol linktest $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) > linktest.c
    + perl ./gensymbol linktest $(ARCH) $(BU) $(EXPRECISION) $(NO_CBLAS) $(NO_LAPACK) $(NO_LAPACKE) > linktest.c

    clean ::
    @rm -f *.def *.dylib __.SYMDEF*
    diff --git a/exports/gensymbol b/exports/gensymbol
    index 6b2a006..a6d0592 100644
    --- a/exports/gensymbol
    +++ b/exports/gensymbol
    @@ -298,24 +298,2136 @@
    zcgesv, zlag2c, clag2z,
    );

    +@lapackeobjs = (
    + lapack_make_complex_double,
    + lapack_make_complex_float,
    + LAPACKE_c_nancheck,
    + LAPACKE_cbbcsd,
    + LAPACKE_cbbcsd_work,
    + LAPACKE_cbdsqr,
    + LAPACKE_cbdsqr_work,
    + LAPACKE_cgb_nancheck,
    + LAPACKE_cgb_trans,
    + LAPACKE_cgbbrd,
    + LAPACKE_cgbbrd_work,
    + LAPACKE_cgbcon,
    + LAPACKE_cgbcon_work,
    + LAPACKE_cgbequ,
    + LAPACKE_cgbequ_work,
    + LAPACKE_cgbequb,
    + LAPACKE_cgbequb_work,
    + LAPACKE_cgbrfs,
    + LAPACKE_cgbrfs_work,
    + LAPACKE_cgbsv,
    + LAPACKE_cgbsv_work,
    + LAPACKE_cgbsvx,
    + LAPACKE_cgbsvx_work,
    + LAPACKE_cgbtrf,
    + LAPACKE_cgbtrf_work,
    + LAPACKE_cgbtrs,
    + LAPACKE_cgbtrs_work,
    + LAPACKE_cge_nancheck,
    + LAPACKE_cge_trans,
    + LAPACKE_cgebak,
    + LAPACKE_cgebak_work,
    + LAPACKE_cgebal,
    + LAPACKE_cgebal_work,
    + LAPACKE_cgebrd,
    + LAPACKE_cgebrd_work,
    + LAPACKE_cgecon,
    + LAPACKE_cgecon_work,
    + LAPACKE_cgeequ,
    + LAPACKE_cgeequ_work,
    + LAPACKE_cgeequb,
    + LAPACKE_cgeequb_work,
    + LAPACKE_cgees,
    + LAPACKE_cgees_work,
    + LAPACKE_cgeesx,
    + LAPACKE_cgeesx_work,
    + LAPACKE_cgeev,
    + LAPACKE_cgeev_work,
    + LAPACKE_cgeevx,
    + LAPACKE_cgeevx_work,
    + LAPACKE_cgehrd,
    + LAPACKE_cgehrd_work,
    + LAPACKE_cgelq2,
    + LAPACKE_cgelq2_work,
    + LAPACKE_cgelqf,
    + LAPACKE_cgelqf_work,
    + LAPACKE_cgels,
    + LAPACKE_cgels_work,
    + LAPACKE_cgelsd,
    + LAPACKE_cgelsd_work,
    + LAPACKE_cgelss,
    + LAPACKE_cgelss_work,
    + LAPACKE_cgelsy,
    + LAPACKE_cgelsy_work,
    + LAPACKE_cgemqrt,
    + LAPACKE_cgemqrt_work,
    + LAPACKE_cgeqlf,
    + LAPACKE_cgeqlf_work,
    + LAPACKE_cgeqp3,
    + LAPACKE_cgeqp3_work,
    + LAPACKE_cgeqpf,
    + LAPACKE_cgeqpf_work,
    + LAPACKE_cgeqr2,
    + LAPACKE_cgeqr2_work,
    + LAPACKE_cgeqrf,
    + LAPACKE_cgeqrf_work,
    + LAPACKE_cgeqrfp,
    + LAPACKE_cgeqrfp_work,
    + LAPACKE_cgeqrt,
    + LAPACKE_cgeqrt2,
    + LAPACKE_cgeqrt2_work,
    + LAPACKE_cgeqrt3,
    + LAPACKE_cgeqrt3_work,
    + LAPACKE_cgeqrt_work,
    + LAPACKE_cgerfs,
    + LAPACKE_cgerfs_work,
    + LAPACKE_cgerqf,
    + LAPACKE_cgerqf_work,
    + LAPACKE_cgesdd,
    + LAPACKE_cgesdd_work,
    + LAPACKE_cgesv,
    + LAPACKE_cgesv_work,
    + LAPACKE_cgesvd,
    + LAPACKE_cgesvd_work,
    + LAPACKE_cgesvx,
    + LAPACKE_cgesvx_work,
    + LAPACKE_cgetf2,
    + LAPACKE_cgetf2_work,
    + LAPACKE_cgetrf,
    + LAPACKE_cgetrf_work,
    + LAPACKE_cgetri,
    + LAPACKE_cgetri_work,
    + LAPACKE_cgetrs,
    + LAPACKE_cgetrs_work,
    + LAPACKE_cgg_nancheck,
    + LAPACKE_cgg_trans,
    + LAPACKE_cggbak,
    + LAPACKE_cggbak_work,
    + LAPACKE_cggbal,
    + LAPACKE_cggbal_work,
    + LAPACKE_cgges,
    + LAPACKE_cgges_work,
    + LAPACKE_cggesx,
    + LAPACKE_cggesx_work,
    + LAPACKE_cggev,
    + LAPACKE_cggev_work,
    + LAPACKE_cggevx,
    + LAPACKE_cggevx_work,
    + LAPACKE_cggglm,
    + LAPACKE_cggglm_work,
    + LAPACKE_cgghrd,
    + LAPACKE_cgghrd_work,
    + LAPACKE_cgglse,
    + LAPACKE_cgglse_work,
    + LAPACKE_cggqrf,
    + LAPACKE_cggqrf_work,
    + LAPACKE_cggrqf,
    + LAPACKE_cggrqf_work,
    + LAPACKE_cggsvd,
    + LAPACKE_cggsvd_work,
    + LAPACKE_cggsvp,
    + LAPACKE_cggsvp_work,
    + LAPACKE_cgt_nancheck,
    + LAPACKE_cgtcon,
    + LAPACKE_cgtcon_work,
    + LAPACKE_cgtrfs,
    + LAPACKE_cgtrfs_work,
    + LAPACKE_cgtsv,
    + LAPACKE_cgtsv_work,
    + LAPACKE_cgtsvx,
    + LAPACKE_cgtsvx_work,
    + LAPACKE_cgttrf,
    + LAPACKE_cgttrf_work,
    + LAPACKE_cgttrs,
    + LAPACKE_cgttrs_work,
    + LAPACKE_chb_nancheck,
    + LAPACKE_chb_trans,
    + LAPACKE_chbev,
    + LAPACKE_chbev_work,
    + LAPACKE_chbevd,
    + LAPACKE_chbevd_work,
    + LAPACKE_chbevx,
    + LAPACKE_chbevx_work,
    + LAPACKE_chbgst,
    + LAPACKE_chbgst_work,
    + LAPACKE_chbgv,
    + LAPACKE_chbgv_work,
    + LAPACKE_chbgvd,
    + LAPACKE_chbgvd_work,
    + LAPACKE_chbgvx,
    + LAPACKE_chbgvx_work,
    + LAPACKE_chbtrd,
    + LAPACKE_chbtrd_work,
    + LAPACKE_che_nancheck,
    + LAPACKE_che_trans,
    + LAPACKE_checon,
    + LAPACKE_checon_work,
    + LAPACKE_cheequb,
    + LAPACKE_cheequb_work,
    + LAPACKE_cheev,
    + LAPACKE_cheev_work,
    + LAPACKE_cheevd,
    + LAPACKE_cheevd_work,
    + LAPACKE_cheevr,
    + LAPACKE_cheevr_work,
    + LAPACKE_cheevx,
    + LAPACKE_cheevx_work,
    + LAPACKE_chegst,
    + LAPACKE_chegst_work,
    + LAPACKE_chegv,
    + LAPACKE_chegv_work,
    + LAPACKE_chegvd,
    + LAPACKE_chegvd_work,
    + LAPACKE_chegvx,
    + LAPACKE_chegvx_work,
    + LAPACKE_cherfs,
    + LAPACKE_cherfs_work,
    + LAPACKE_chesv,
    + LAPACKE_chesv_work,
    + LAPACKE_chesvx,
    + LAPACKE_chesvx_work,
    + LAPACKE_cheswapr,
    + LAPACKE_cheswapr_work,
    + LAPACKE_chetrd,
    + LAPACKE_chetrd_work,
    + LAPACKE_chetrf,
    + LAPACKE_chetrf_work,
    + LAPACKE_chetri,
    + LAPACKE_chetri2,
    + LAPACKE_chetri2_work,
    + LAPACKE_chetri2x,
    + LAPACKE_chetri2x_work,
    + LAPACKE_chetri_work,
    + LAPACKE_chetrs,
    + LAPACKE_chetrs2,
    + LAPACKE_chetrs2_work,
    + LAPACKE_chetrs_work,
    + LAPACKE_chfrk,
    + LAPACKE_chfrk_work,
    + LAPACKE_chgeqz,
    + LAPACKE_chgeqz_work,
    + LAPACKE_chp_nancheck,
    + LAPACKE_chp_trans,
    + LAPACKE_chpcon,
    + LAPACKE_chpcon_work,
    + LAPACKE_chpev,
    + LAPACKE_chpev_work,
    + LAPACKE_chpevd,
    + LAPACKE_chpevd_work,
    + LAPACKE_chpevx,
    + LAPACKE_chpevx_work,
    + LAPACKE_chpgst,
    + LAPACKE_chpgst_work,
    + LAPACKE_chpgv,
    + LAPACKE_chpgv_work,
    + LAPACKE_chpgvd,
    + LAPACKE_chpgvd_work,
    + LAPACKE_chpgvx,
    + LAPACKE_chpgvx_work,
    + LAPACKE_chprfs,
    + LAPACKE_chprfs_work,
    + LAPACKE_chpsv,
    + LAPACKE_chpsv_work,
    + LAPACKE_chpsvx,
    + LAPACKE_chpsvx_work,
    + LAPACKE_chptrd,
    + LAPACKE_chptrd_work,
    + LAPACKE_chptrf,
    + LAPACKE_chptrf_work,
    + LAPACKE_chptri,
    + LAPACKE_chptri_work,
    + LAPACKE_chptrs,
    + LAPACKE_chptrs_work,
    + LAPACKE_chs_nancheck,
    + LAPACKE_chs_trans,
    + LAPACKE_chsein,
    + LAPACKE_chsein_work,
    + LAPACKE_chseqr,
    + LAPACKE_chseqr_work,
    + LAPACKE_clacgv,
    + LAPACKE_clacgv_work,
    + LAPACKE_clacpy,
    + LAPACKE_clacpy_work,
    + LAPACKE_clag2z,
    + LAPACKE_clag2z_work,
    + LAPACKE_clange,
    + LAPACKE_clange_work,
    + LAPACKE_clanhe,
    + LAPACKE_clanhe_work,
    + LAPACKE_clansy,
    + LAPACKE_clansy_work,
    + LAPACKE_clantr,
    + LAPACKE_clantr_work,
    + LAPACKE_clapmr,
    + LAPACKE_clapmr_work,
    + LAPACKE_clarfb,
    + LAPACKE_clarfb_work,
    + LAPACKE_clarfg,
    + LAPACKE_clarfg_work,
    + LAPACKE_clarft,
    + LAPACKE_clarft_work,
    + LAPACKE_clarfx,
    + LAPACKE_clarfx_work,
    + LAPACKE_clarnv,
    + LAPACKE_clarnv_work,
    + LAPACKE_claset,
    + LAPACKE_claset_work,
    + LAPACKE_claswp,
    + LAPACKE_claswp_work,
    + LAPACKE_clauum,
    + LAPACKE_clauum_work,
    + LAPACKE_cpb_nancheck,
    + LAPACKE_cpb_trans,
    + LAPACKE_cpbcon,
    + LAPACKE_cpbcon_work,
    + LAPACKE_cpbequ,
    + LAPACKE_cpbequ_work,
    + LAPACKE_cpbrfs,
    + LAPACKE_cpbrfs_work,
    + LAPACKE_cpbstf,
    + LAPACKE_cpbstf_work,
    + LAPACKE_cpbsv,
    + LAPACKE_cpbsv_work,
    + LAPACKE_cpbsvx,
    + LAPACKE_cpbsvx_work,
    + LAPACKE_cpbtrf,
    + LAPACKE_cpbtrf_work,
    + LAPACKE_cpbtrs,
    + LAPACKE_cpbtrs_work,
    + LAPACKE_cpf_nancheck,
    + LAPACKE_cpf_trans,
    + LAPACKE_cpftrf,
    + LAPACKE_cpftrf_work,
    + LAPACKE_cpftri,
    + LAPACKE_cpftri_work,
    + LAPACKE_cpftrs,
    + LAPACKE_cpftrs_work,
    + LAPACKE_cpo_nancheck,
    + LAPACKE_cpo_trans,
    + LAPACKE_cpocon,
    + LAPACKE_cpocon_work,
    + LAPACKE_cpoequ,
    + LAPACKE_cpoequ_work,
    + LAPACKE_cpoequb,
    + LAPACKE_cpoequb_work,
    + LAPACKE_cporfs,
    + LAPACKE_cporfs_work,
    + LAPACKE_cposv,
    + LAPACKE_cposv_work,
    + LAPACKE_cposvx,
    + LAPACKE_cposvx_work,
    + LAPACKE_cpotrf,
    + LAPACKE_cpotrf_work,
    + LAPACKE_cpotri,
    + LAPACKE_cpotri_work,
    + LAPACKE_cpotrs,
    + LAPACKE_cpotrs_work,
    + LAPACKE_cpp_nancheck,
    + LAPACKE_cpp_trans,
    + LAPACKE_cppcon,
    + LAPACKE_cppcon_work,
    + LAPACKE_cppequ,
    + LAPACKE_cppequ_work,
    + LAPACKE_cpprfs,
    + LAPACKE_cpprfs_work,
    + LAPACKE_cppsv,
    + LAPACKE_cppsv_work,
    + LAPACKE_cppsvx,
    + LAPACKE_cppsvx_work,
    + LAPACKE_cpptrf,
    + LAPACKE_cpptrf_work,
    + LAPACKE_cpptri,
    + LAPACKE_cpptri_work,
    + LAPACKE_cpptrs,
    + LAPACKE_cpptrs_work,
    + LAPACKE_cpstrf,
    + LAPACKE_cpstrf_work,
    + LAPACKE_cpt_nancheck,
    + LAPACKE_cptcon,
    + LAPACKE_cptcon_work,
    + LAPACKE_cpteqr,
    + LAPACKE_cpteqr_work,
    + LAPACKE_cptrfs,
    + LAPACKE_cptrfs_work,
    + LAPACKE_cptsv,
    + LAPACKE_cptsv_work,
    + LAPACKE_cptsvx,
    + LAPACKE_cptsvx_work,
    + LAPACKE_cpttrf,
    + LAPACKE_cpttrf_work,
    + LAPACKE_cpttrs,
    + LAPACKE_cpttrs_work,
    + LAPACKE_csp_nancheck,
    + LAPACKE_csp_trans,
    + LAPACKE_cspcon,
    + LAPACKE_cspcon_work,
    + LAPACKE_csprfs,
    + LAPACKE_csprfs_work,
    + LAPACKE_cspsv,
    + LAPACKE_cspsv_work,
    + LAPACKE_cspsvx,
    + LAPACKE_cspsvx_work,
    + LAPACKE_csptrf,
    + LAPACKE_csptrf_work,
    + LAPACKE_csptri,
    + LAPACKE_csptri_work,
    + LAPACKE_csptrs,
    + LAPACKE_csptrs_work,
    + LAPACKE_cst_nancheck,
    + LAPACKE_cstedc,
    + LAPACKE_cstedc_work,
    + LAPACKE_cstegr,
    + LAPACKE_cstegr_work,
    + LAPACKE_cstein,
    + LAPACKE_cstein_work,
    + LAPACKE_cstemr,
    + LAPACKE_cstemr_work,
    + LAPACKE_csteqr,
    + LAPACKE_csteqr_work,
    + LAPACKE_csy_nancheck,
    + LAPACKE_csy_trans,
    + LAPACKE_csycon,
    + LAPACKE_csycon_work,
    + LAPACKE_csyconv,
    + LAPACKE_csyconv_work,
    + LAPACKE_csyequb,
    + LAPACKE_csyequb_work,
    + LAPACKE_csyrfs,
    + LAPACKE_csyrfs_work,
    + LAPACKE_csysv,
    + LAPACKE_csysv_work,
    + LAPACKE_csysvx,
    + LAPACKE_csysvx_work,
    + LAPACKE_csyswapr,
    + LAPACKE_csyswapr_work,
    + LAPACKE_csytrf,
    + LAPACKE_csytrf_work,
    + LAPACKE_csytri,
    + LAPACKE_csytri2,
    + LAPACKE_csytri2_work,
    + LAPACKE_csytri2x,
    + LAPACKE_csytri2x_work,
    + LAPACKE_csytri_work,
    + LAPACKE_csytrs,
    + LAPACKE_csytrs2,
    + LAPACKE_csytrs2_work,
    + LAPACKE_csytrs_work,
    + LAPACKE_ctb_nancheck,
    + LAPACKE_ctb_trans,
    + LAPACKE_ctbcon,
    + LAPACKE_ctbcon_work,
    + LAPACKE_ctbrfs,
    + LAPACKE_ctbrfs_work,
    + LAPACKE_ctbtrs,
    + LAPACKE_ctbtrs_work,
    + LAPACKE_ctf_nancheck,
    + LAPACKE_ctf_trans,
    + LAPACKE_ctfsm,
    + LAPACKE_ctfsm_work,
    + LAPACKE_ctftri,
    + LAPACKE_ctftri_work,
    + LAPACKE_ctfttp,
    + LAPACKE_ctfttp_work,
    + LAPACKE_ctfttr,
    + LAPACKE_ctfttr_work,
    + LAPACKE_ctgevc,
    + LAPACKE_ctgevc_work,
    + LAPACKE_ctgexc,
    + LAPACKE_ctgexc_work,
    + LAPACKE_ctgsen,
    + LAPACKE_ctgsen_work,
    + LAPACKE_ctgsja,
    + LAPACKE_ctgsja_work,
    + LAPACKE_ctgsna,
    + LAPACKE_ctgsna_work,
    + LAPACKE_ctgsyl,
    + LAPACKE_ctgsyl_work,
    + LAPACKE_ctp_nancheck,
    + LAPACKE_ctp_trans,
    + LAPACKE_ctpcon,
    + LAPACKE_ctpcon_work,
    + LAPACKE_ctpmqrt,
    + LAPACKE_ctpmqrt_work,
    + LAPACKE_ctpqrt,
    + LAPACKE_ctpqrt2,
    + LAPACKE_ctpqrt2_work,
    + LAPACKE_ctpqrt_work,
    + LAPACKE_ctprfb,
    + LAPACKE_ctprfb_work,
    + LAPACKE_ctprfs,
    + LAPACKE_ctprfs_work,
    + LAPACKE_ctptri,
    + LAPACKE_ctptri_work,
    + LAPACKE_ctptrs,
    + LAPACKE_ctptrs_work,
    + LAPACKE_ctpttf,
    + LAPACKE_ctpttf_work,
    + LAPACKE_ctpttr,
    + LAPACKE_ctpttr_work,
    + LAPACKE_ctr_nancheck,
    + LAPACKE_ctr_trans,
    + LAPACKE_ctrcon,
    + LAPACKE_ctrcon_work,
    + LAPACKE_ctrevc,
    + LAPACKE_ctrevc_work,
    + LAPACKE_ctrexc,
    + LAPACKE_ctrexc_work,
    + LAPACKE_ctrrfs,
    + LAPACKE_ctrrfs_work,
    + LAPACKE_ctrsen,
    + LAPACKE_ctrsen_work,
    + LAPACKE_ctrsna,
    + LAPACKE_ctrsna_work,
    + LAPACKE_ctrsyl,
    + LAPACKE_ctrsyl_work,
    + LAPACKE_ctrtri,
    + LAPACKE_ctrtri_work,
    + LAPACKE_ctrtrs,
    + LAPACKE_ctrtrs_work,
    + LAPACKE_ctrttf,
    + LAPACKE_ctrttf_work,
    + LAPACKE_ctrttp,
    + LAPACKE_ctrttp_work,
    + LAPACKE_ctzrzf,
    + LAPACKE_ctzrzf_work,
    + LAPACKE_cunbdb,
    + LAPACKE_cunbdb_work,
    + LAPACKE_cuncsd,
    + LAPACKE_cuncsd_work,
    + LAPACKE_cungbr,
    + LAPACKE_cungbr_work,
    + LAPACKE_cunghr,
    + LAPACKE_cunghr_work,
    + LAPACKE_cunglq,
    + LAPACKE_cunglq_work,
    + LAPACKE_cungql,
    + LAPACKE_cungql_work,
    + LAPACKE_cungqr,
    + LAPACKE_cungqr_work,
    + LAPACKE_cungrq,
    + LAPACKE_cungrq_work,
    + LAPACKE_cungtr,
    + LAPACKE_cungtr_work,
    + LAPACKE_cunmbr,
    + LAPACKE_cunmbr_work,
    + LAPACKE_cunmhr,
    + LAPACKE_cunmhr_work,
    + LAPACKE_cunmlq,
    + LAPACKE_cunmlq_work,
    + LAPACKE_cunmql,
    + LAPACKE_cunmql_work,
    + LAPACKE_cunmqr,
    + LAPACKE_cunmqr_work,
    + LAPACKE_cunmrq,
    + LAPACKE_cunmrq_work,
    + LAPACKE_cunmrz,
    + LAPACKE_cunmrz_work,
    + LAPACKE_cunmtr,
    + LAPACKE_cunmtr_work,
    + LAPACKE_cupgtr,
    + LAPACKE_cupgtr_work,
    + LAPACKE_cupmtr,
    + LAPACKE_cupmtr_work,
    + LAPACKE_d_nancheck,
    + LAPACKE_dbbcsd,
    + LAPACKE_dbbcsd_work,
    + LAPACKE_dbdsdc,
    + LAPACKE_dbdsdc_work,
    + LAPACKE_dbdsqr,
    + LAPACKE_dbdsqr_work,
    + LAPACKE_ddisna,
    + LAPACKE_ddisna_work,
    + LAPACKE_dgb_nancheck,
    + LAPACKE_dgb_trans,
    + LAPACKE_dgbbrd,
    + LAPACKE_dgbbrd_work,
    + LAPACKE_dgbcon,
    + LAPACKE_dgbcon_work,
    + LAPACKE_dgbequ,
    + LAPACKE_dgbequ_work,
    + LAPACKE_dgbequb,
    + LAPACKE_dgbequb_work,
    + LAPACKE_dgbrfs,
    + LAPACKE_dgbrfs_work,
    + LAPACKE_dgbsv,
    + LAPACKE_dgbsv_work,
    + LAPACKE_dgbsvx,
    + LAPACKE_dgbsvx_work,
    + LAPACKE_dgbtrf,
    + LAPACKE_dgbtrf_work,
    + LAPACKE_dgbtrs,
    + LAPACKE_dgbtrs_work,
    + LAPACKE_dge_nancheck,
    + LAPACKE_dge_trans,
    + LAPACKE_dgebak,
    + LAPACKE_dgebak_work,
    + LAPACKE_dgebal,
    + LAPACKE_dgebal_work,
    + LAPACKE_dgebrd,
    + LAPACKE_dgebrd_work,
    + LAPACKE_dgecon,
    + LAPACKE_dgecon_work,
    + LAPACKE_dgeequ,
    + LAPACKE_dgeequ_work,
    + LAPACKE_dgeequb,
    + LAPACKE_dgeequb_work,
    + LAPACKE_dgees,
    + LAPACKE_dgees_work,
    + LAPACKE_dgeesx,
    + LAPACKE_dgeesx_work,
    + LAPACKE_dgeev,
    + LAPACKE_dgeev_work,
    + LAPACKE_dgeevx,
    + LAPACKE_dgeevx_work,
    + LAPACKE_dgehrd,
    + LAPACKE_dgehrd_work,
    + LAPACKE_dgejsv,
    + LAPACKE_dgejsv_work,
    + LAPACKE_dgelq2,
    + LAPACKE_dgelq2_work,
    + LAPACKE_dgelqf,
    + LAPACKE_dgelqf_work,
    + LAPACKE_dgels,
    + LAPACKE_dgels_work,
    + LAPACKE_dgelsd,
    + LAPACKE_dgelsd_work,
    + LAPACKE_dgelss,
    + LAPACKE_dgelss_work,
    + LAPACKE_dgelsy,
    + LAPACKE_dgelsy_work,
    + LAPACKE_dgemqrt,
    + LAPACKE_dgemqrt_work,
    + LAPACKE_dgeqlf,
    + LAPACKE_dgeqlf_work,
    + LAPACKE_dgeqp3,
    + LAPACKE_dgeqp3_work,
    + LAPACKE_dgeqpf,
    + LAPACKE_dgeqpf_work,
    + LAPACKE_dgeqr2,
    + LAPACKE_dgeqr2_work,
    + LAPACKE_dgeqrf,
    + LAPACKE_dgeqrf_work,
    + LAPACKE_dgeqrfp,
    + LAPACKE_dgeqrfp_work,
    + LAPACKE_dgeqrt,
    + LAPACKE_dgeqrt2,
    + LAPACKE_dgeqrt2_work,
    + LAPACKE_dgeqrt3,
    + LAPACKE_dgeqrt3_work,
    + LAPACKE_dgeqrt_work,
    + LAPACKE_dgerfs,
    + LAPACKE_dgerfs_work,
    + LAPACKE_dgerqf,
    + LAPACKE_dgerqf_work,
    + LAPACKE_dgesdd,
    + LAPACKE_dgesdd_work,
    + LAPACKE_dgesv,
    + LAPACKE_dgesv_work,
    + LAPACKE_dgesvd,
    + LAPACKE_dgesvd_work,
    + LAPACKE_dgesvj,
    + LAPACKE_dgesvj_work,
    + LAPACKE_dgesvx,
    + LAPACKE_dgesvx_work,
    + LAPACKE_dgetf2,
    + LAPACKE_dgetf2_work,
    + LAPACKE_dgetrf,
    + LAPACKE_dgetrf_work,
    + LAPACKE_dgetri,
    + LAPACKE_dgetri_work,
    + LAPACKE_dgetrs,
    + LAPACKE_dgetrs_work,
    + LAPACKE_dgg_nancheck,
    + LAPACKE_dgg_trans,
    + LAPACKE_dggbak,
    + LAPACKE_dggbak_work,
    + LAPACKE_dggbal,
    + LAPACKE_dggbal_work,
    + LAPACKE_dgges,
    + LAPACKE_dgges_work,
    + LAPACKE_dggesx,
    + LAPACKE_dggesx_work,
    + LAPACKE_dggev,
    + LAPACKE_dggev_work,
    + LAPACKE_dggevx,
    + LAPACKE_dggevx_work,
    + LAPACKE_dggglm,
    + LAPACKE_dggglm_work,
    + LAPACKE_dgghrd,
    + LAPACKE_dgghrd_work,
    + LAPACKE_dgglse,
    + LAPACKE_dgglse_work,
    + LAPACKE_dggqrf,
    + LAPACKE_dggqrf_work,
    + LAPACKE_dggrqf,
    + LAPACKE_dggrqf_work,
    + LAPACKE_dggsvd,
    + LAPACKE_dggsvd_work,
    + LAPACKE_dggsvp,
    + LAPACKE_dggsvp_work,
    + LAPACKE_dgt_nancheck,
    + LAPACKE_dgtcon,
    + LAPACKE_dgtcon_work,
    + LAPACKE_dgtrfs,
    + LAPACKE_dgtrfs_work,
    + LAPACKE_dgtsv,
    + LAPACKE_dgtsv_work,
    + LAPACKE_dgtsvx,
    + LAPACKE_dgtsvx_work,
    + LAPACKE_dgttrf,
    + LAPACKE_dgttrf_work,
    + LAPACKE_dgttrs,
    + LAPACKE_dgttrs_work,
    + LAPACKE_dhgeqz,
    + LAPACKE_dhgeqz_work,
    + LAPACKE_dhs_nancheck,
    + LAPACKE_dhs_trans,
    + LAPACKE_dhsein,
    + LAPACKE_dhsein_work,
    + LAPACKE_dhseqr,
    + LAPACKE_dhseqr_work,
    + LAPACKE_dlacpy,
    + LAPACKE_dlacpy_work,
    + LAPACKE_dlag2s,
    + LAPACKE_dlag2s_work,
    + LAPACKE_dlamch,
    + LAPACKE_dlamch_work,
    + LAPACKE_dlange,
    + LAPACKE_dlange_work,
    + LAPACKE_dlansy,
    + LAPACKE_dlansy_work,
    + LAPACKE_dlantr,
    + LAPACKE_dlantr_work,
    + LAPACKE_dlapmr,
    + LAPACKE_dlapmr_work,
    + LAPACKE_dlapy2,
    + LAPACKE_dlapy2_work,
    + LAPACKE_dlapy3,
    + LAPACKE_dlapy3_work,
    + LAPACKE_dlarfb,
    + LAPACKE_dlarfb_work,
    + LAPACKE_dlarfg,
    + LAPACKE_dlarfg_work,
    + LAPACKE_dlarft,
    + LAPACKE_dlarft_work,
    + LAPACKE_dlarfx,
    + LAPACKE_dlarfx_work,
    + LAPACKE_dlarnv,
    + LAPACKE_dlarnv_work,
    + LAPACKE_dlartgp,
    + LAPACKE_dlartgp_work,
    + LAPACKE_dlartgs,
    + LAPACKE_dlartgs_work,
    + LAPACKE_dlaset,
    + LAPACKE_dlaset_work,
    + LAPACKE_dlasrt,
    + LAPACKE_dlasrt_work,
    + LAPACKE_dlaswp,
    + LAPACKE_dlaswp_work,
    + LAPACKE_dlauum,
    + LAPACKE_dlauum_work,
    + LAPACKE_dopgtr,
    + LAPACKE_dopgtr_work,
    + LAPACKE_dopmtr,
    + LAPACKE_dopmtr_work,
    + LAPACKE_dorbdb,
    + LAPACKE_dorbdb_work,
    + LAPACKE_dorcsd,
    + LAPACKE_dorcsd_work,
    + LAPACKE_dorgbr,
    + LAPACKE_dorgbr_work,
    + LAPACKE_dorghr,
    + LAPACKE_dorghr_work,
    + LAPACKE_dorglq,
    + LAPACKE_dorglq_work,
    + LAPACKE_dorgql,
    + LAPACKE_dorgql_work,
    + LAPACKE_dorgqr,
    + LAPACKE_dorgqr_work,
    + LAPACKE_dorgrq,
    + LAPACKE_dorgrq_work,
    + LAPACKE_dorgtr,
    + LAPACKE_dorgtr_work,
    + LAPACKE_dormbr,
    + LAPACKE_dormbr_work,
    + LAPACKE_dormhr,
    + LAPACKE_dormhr_work,
    + LAPACKE_dormlq,
    + LAPACKE_dormlq_work,
    + LAPACKE_dormql,
    + LAPACKE_dormql_work,
    + LAPACKE_dormqr,
    + LAPACKE_dormqr_work,
    + LAPACKE_dormrq,
    + LAPACKE_dormrq_work,
    + LAPACKE_dormrz,
    + LAPACKE_dormrz_work,
    + LAPACKE_dormtr,
    + LAPACKE_dormtr_work,
    + LAPACKE_dpb_nancheck,
    + LAPACKE_dpb_trans,
    + LAPACKE_dpbcon,
    + LAPACKE_dpbcon_work,
    + LAPACKE_dpbequ,
    + LAPACKE_dpbequ_work,
    + LAPACKE_dpbrfs,
    + LAPACKE_dpbrfs_work,
    + LAPACKE_dpbstf,
    + LAPACKE_dpbstf_work,
    + LAPACKE_dpbsv,
    + LAPACKE_dpbsv_work,
    + LAPACKE_dpbsvx,
    + LAPACKE_dpbsvx_work,
    + LAPACKE_dpbtrf,
    + LAPACKE_dpbtrf_work,
    + LAPACKE_dpbtrs,
    + LAPACKE_dpbtrs_work,
    + LAPACKE_dpf_nancheck,
    + LAPACKE_dpf_trans,
    + LAPACKE_dpftrf,
    + LAPACKE_dpftrf_work,
    + LAPACKE_dpftri,
    + LAPACKE_dpftri_work,
    + LAPACKE_dpftrs,
    + LAPACKE_dpftrs_work,
    + LAPACKE_dpo_nancheck,
    + LAPACKE_dpo_trans,
    + LAPACKE_dpocon,
    + LAPACKE_dpocon_work,
    + LAPACKE_dpoequ,
    + LAPACKE_dpoequ_work,
    + LAPACKE_dpoequb,
    + LAPACKE_dpoequb_work,
    + LAPACKE_dporfs,
    + LAPACKE_dporfs_work,
    + LAPACKE_dposv,
    + LAPACKE_dposv_work,
    + LAPACKE_dposvx,
    + LAPACKE_dposvx_work,
    + LAPACKE_dpotrf,
    + LAPACKE_dpotrf_work,
    + LAPACKE_dpotri,
    + LAPACKE_dpotri_work,
    + LAPACKE_dpotrs,
    + LAPACKE_dpotrs_work,
    + LAPACKE_dpp_nancheck,
    + LAPACKE_dpp_trans,
    + LAPACKE_dppcon,
    + LAPACKE_dppcon_work,
    + LAPACKE_dppequ,
    + LAPACKE_dppequ_work,
    + LAPACKE_dpprfs,
    + LAPACKE_dpprfs_work,
    + LAPACKE_dppsv,
    + LAPACKE_dppsv_work,
    + LAPACKE_dppsvx,
    + LAPACKE_dppsvx_work,
    + LAPACKE_dpptrf,
    + LAPACKE_dpptrf_work,
    + LAPACKE_dpptri,
    + LAPACKE_dpptri_work,
    + LAPACKE_dpptrs,
    + LAPACKE_dpptrs_work,
    + LAPACKE_dpstrf,
    + LAPACKE_dpstrf_work,
    + LAPACKE_dpt_nancheck,
    + LAPACKE_dptcon,
    + LAPACKE_dptcon_work,
    + LAPACKE_dpteqr,
    + LAPACKE_dpteqr_work,
    + LAPACKE_dptrfs,
    + LAPACKE_dptrfs_work,
    + LAPACKE_dptsv,
    + LAPACKE_dptsv_work,
    + LAPACKE_dptsvx,
    + LAPACKE_dptsvx_work,
    + LAPACKE_dpttrf,
    + LAPACKE_dpttrf_work,
    + LAPACKE_dpttrs,
    + LAPACKE_dpttrs_work,
    + LAPACKE_dsb_nancheck,
    + LAPACKE_dsb_trans,
    + LAPACKE_dsbev,
    + LAPACKE_dsbev_work,
    + LAPACKE_dsbevd,
    + LAPACKE_dsbevd_work,
    + LAPACKE_dsbevx,
    + LAPACKE_dsbevx_work,
    + LAPACKE_dsbgst,
    + LAPACKE_dsbgst_work,
    + LAPACKE_dsbgv,
    + LAPACKE_dsbgv_work,
    + LAPACKE_dsbgvd,
    + LAPACKE_dsbgvd_work,
    + LAPACKE_dsbgvx,
    + LAPACKE_dsbgvx_work,
    + LAPACKE_dsbtrd,
    + LAPACKE_dsbtrd_work,
    + LAPACKE_dsfrk,
    + LAPACKE_dsfrk_work,
    + LAPACKE_dsgesv,
    + LAPACKE_dsgesv_work,
    + LAPACKE_dsp_nancheck,
    + LAPACKE_dsp_trans,
    + LAPACKE_dspcon,
    + LAPACKE_dspcon_work,
    + LAPACKE_dspev,
    + LAPACKE_dspev_work,
    + LAPACKE_dspevd,
    + LAPACKE_dspevd_work,
    + LAPACKE_dspevx,
    + LAPACKE_dspevx_work,
    + LAPACKE_dspgst,
    + LAPACKE_dspgst_work,
    + LAPACKE_dspgv,
    + LAPACKE_dspgv_work,
    + LAPACKE_dspgvd,
    + LAPACKE_dspgvd_work,
    + LAPACKE_dspgvx,
    + LAPACKE_dspgvx_work,
    + LAPACKE_dsposv,
    + LAPACKE_dsposv_work,
    + LAPACKE_dsprfs,
    + LAPACKE_dsprfs_work,
    + LAPACKE_dspsv,
    + LAPACKE_dspsv_work,
    + LAPACKE_dspsvx,
    + LAPACKE_dspsvx_work,
    + LAPACKE_dsptrd,
    + LAPACKE_dsptrd_work,
    + LAPACKE_dsptrf,
    + LAPACKE_dsptrf_work,
    + LAPACKE_dsptri,
    + LAPACKE_dsptri_work,
    + LAPACKE_dsptrs,
    + LAPACKE_dsptrs_work,
    + LAPACKE_dst_nancheck,
    + LAPACKE_dstebz,
    + LAPACKE_dstebz_work,
    + LAPACKE_dstedc,
    + LAPACKE_dstedc_work,
    + LAPACKE_dstegr,
    + LAPACKE_dstegr_work,
    + LAPACKE_dstein,
    + LAPACKE_dstein_work,
    + LAPACKE_dstemr,
    + LAPACKE_dstemr_work,
    + LAPACKE_dsteqr,
    + LAPACKE_dsteqr_work,
    + LAPACKE_dsterf,
    + LAPACKE_dsterf_work,
    + LAPACKE_dstev,
    + LAPACKE_dstev_work,
    + LAPACKE_dstevd,
    + LAPACKE_dstevd_work,
    + LAPACKE_dstevr,
    + LAPACKE_dstevr_work,
    + LAPACKE_dstevx,
    + LAPACKE_dstevx_work,
    + LAPACKE_dsy_nancheck,
    + LAPACKE_dsy_trans,
    + LAPACKE_dsycon,
    + LAPACKE_dsycon_work,
    + LAPACKE_dsyconv,
    + LAPACKE_dsyconv_work,
    + LAPACKE_dsyequb,
    + LAPACKE_dsyequb_work,
    + LAPACKE_dsyev,
    + LAPACKE_dsyev_work,
    + LAPACKE_dsyevd,
    + LAPACKE_dsyevd_work,
    + LAPACKE_dsyevr,
    + LAPACKE_dsyevr_work,
    + LAPACKE_dsyevx,
    + LAPACKE_dsyevx_work,
    + LAPACKE_dsygst,
    + LAPACKE_dsygst_work,
    + LAPACKE_dsygv,
    + LAPACKE_dsygv_work,
    + LAPACKE_dsygvd,
    + LAPACKE_dsygvd_work,
    + LAPACKE_dsygvx,
    + LAPACKE_dsygvx_work,
    + LAPACKE_dsyrfs,
    + LAPACKE_dsyrfs_work,
    + LAPACKE_dsysv,
    + LAPACKE_dsysv_work,
    + LAPACKE_dsysvx,
    + LAPACKE_dsysvx_work,
    + LAPACKE_dsyswapr,
    + LAPACKE_dsyswapr_work,
    + LAPACKE_dsytrd,
    + LAPACKE_dsytrd_work,
    + LAPACKE_dsytrf,
    + LAPACKE_dsytrf_work,
    + LAPACKE_dsytri,
    + LAPACKE_dsytri2,
    + LAPACKE_dsytri2_work,
    + LAPACKE_dsytri2x,
    + LAPACKE_dsytri2x_work,
    + LAPACKE_dsytri_work,
    + LAPACKE_dsytrs,
    + LAPACKE_dsytrs2,
    + LAPACKE_dsytrs2_work,
    + LAPACKE_dsytrs_work,
    + LAPACKE_dtb_nancheck,
    + LAPACKE_dtb_trans,
    + LAPACKE_dtbcon,
    + LAPACKE_dtbcon_work,
    + LAPACKE_dtbrfs,
    + LAPACKE_dtbrfs_work,
    + LAPACKE_dtbtrs,
    + LAPACKE_dtbtrs_work,
    + LAPACKE_dtf_nancheck,
    + LAPACKE_dtf_trans,
    + LAPACKE_dtfsm,
    + LAPACKE_dtfsm_work,
    + LAPACKE_dtftri,
    + LAPACKE_dtftri_work,
    + LAPACKE_dtfttp,
    + LAPACKE_dtfttp_work,
    + LAPACKE_dtfttr,
    + LAPACKE_dtfttr_work,
    + LAPACKE_dtgevc,
    + LAPACKE_dtgevc_work,
    + LAPACKE_dtgexc,
    + LAPACKE_dtgexc_work,
    + LAPACKE_dtgsen,
    + LAPACKE_dtgsen_work,
    + LAPACKE_dtgsja,
    + LAPACKE_dtgsja_work,
    + LAPACKE_dtgsna,
    + LAPACKE_dtgsna_work,
    + LAPACKE_dtgsyl,
    + LAPACKE_dtgsyl_work,
    + LAPACKE_dtp_nancheck,
    + LAPACKE_dtp_trans,
    + LAPACKE_dtpcon,
    + LAPACKE_dtpcon_work,
    + LAPACKE_dtpmqrt,
    + LAPACKE_dtpmqrt_work,
    + LAPACKE_dtpqrt,
    + LAPACKE_dtpqrt2,
    + LAPACKE_dtpqrt2_work,
    + LAPACKE_dtpqrt_work,
    + LAPACKE_dtprfb,
    + LAPACKE_dtprfb_work,
    + LAPACKE_dtprfs,
    + LAPACKE_dtprfs_work,
    + LAPACKE_dtptri,
    + LAPACKE_dtptri_work,
    + LAPACKE_dtptrs,
    + LAPACKE_dtptrs_work,
    + LAPACKE_dtpttf,
    + LAPACKE_dtpttf_work,
    + LAPACKE_dtpttr,
    + LAPACKE_dtpttr_work,
    + LAPACKE_dtr_nancheck,
    + LAPACKE_dtr_trans,
    + LAPACKE_dtrcon,
    + LAPACKE_dtrcon_work,
    + LAPACKE_dtrevc,
    + LAPACKE_dtrevc_work,
    + LAPACKE_dtrexc,
    + LAPACKE_dtrexc_work,
    + LAPACKE_dtrrfs,
    + LAPACKE_dtrrfs_work,
    + LAPACKE_dtrsen,
    + LAPACKE_dtrsen_work,
    + LAPACKE_dtrsna,
    + LAPACKE_dtrsna_work,
    + LAPACKE_dtrsyl,
    + LAPACKE_dtrsyl_work,
    + LAPACKE_dtrtri,
    + LAPACKE_dtrtri_work,
    + LAPACKE_dtrtrs,
    + LAPACKE_dtrtrs_work,
    + LAPACKE_dtrttf,
    + LAPACKE_dtrttf_work,
    + LAPACKE_dtrttp,
    + LAPACKE_dtrttp_work,
    + LAPACKE_dtzrzf,
    + LAPACKE_dtzrzf_work,
    + LAPACKE_lsame,
    + LAPACKE_s_nancheck,
    + LAPACKE_sbbcsd,
    + LAPACKE_sbbcsd_work,
    + LAPACKE_sbdsdc,
    + LAPACKE_sbdsdc_work,
    + LAPACKE_sbdsqr,
    + LAPACKE_sbdsqr_work,
    + LAPACKE_sdisna,
    + LAPACKE_sdisna_work,
    + LAPACKE_sgb_nancheck,
    + LAPACKE_sgb_trans,
    + LAPACKE_sgbbrd,
    + LAPACKE_sgbbrd_work,
    + LAPACKE_sgbcon,
    + LAPACKE_sgbcon_work,
    + LAPACKE_sgbequ,
    + LAPACKE_sgbequ_work,
    + LAPACKE_sgbequb,
    + LAPACKE_sgbequb_work,
    + LAPACKE_sgbrfs,
    + LAPACKE_sgbrfs_work,
    + LAPACKE_sgbsv,
    + LAPACKE_sgbsv_work,
    + LAPACKE_sgbsvx,
    + LAPACKE_sgbsvx_work,
    + LAPACKE_sgbtrf,
    + LAPACKE_sgbtrf_work,
    + LAPACKE_sgbtrs,
    + LAPACKE_sgbtrs_work,
    + LAPACKE_sge_nancheck,
    + LAPACKE_sge_trans,
    + LAPACKE_sgebak,
    + LAPACKE_sgebak_work,
    + LAPACKE_sgebal,
    + LAPACKE_sgebal_work,
    + LAPACKE_sgebrd,
    + LAPACKE_sgebrd_work,
    + LAPACKE_sgecon,
    + LAPACKE_sgecon_work,
    + LAPACKE_sgeequ,
    + LAPACKE_sgeequ_work,
    + LAPACKE_sgeequb,
    + LAPACKE_sgeequb_work,
    + LAPACKE_sgees,
    + LAPACKE_sgees_work,
    + LAPACKE_sgeesx,
    + LAPACKE_sgeesx_work,
    + LAPACKE_sgeev,
    + LAPACKE_sgeev_work,
    + LAPACKE_sgeevx,
    + LAPACKE_sgeevx_work,
    + LAPACKE_sgehrd,
    + LAPACKE_sgehrd_work,
    + LAPACKE_sgejsv,
    + LAPACKE_sgejsv_work,
    + LAPACKE_sgelq2,
    + LAPACKE_sgelq2_work,
    + LAPACKE_sgelqf,
    + LAPACKE_sgelqf_work,
    + LAPACKE_sgels,
    + LAPACKE_sgels_work,
    + LAPACKE_sgelsd,
    + LAPACKE_sgelsd_work,
    + LAPACKE_sgelss,
    + LAPACKE_sgelss_work,
    + LAPACKE_sgelsy,
    + LAPACKE_sgelsy_work,
    + LAPACKE_sgemqrt,
    + LAPACKE_sgemqrt_work,
    + LAPACKE_sgeqlf,
    + LAPACKE_sgeqlf_work,
    + LAPACKE_sgeqp3,
    + LAPACKE_sgeqp3_work,
    + LAPACKE_sgeqpf,
    + LAPACKE_sgeqpf_work,
    + LAPACKE_sgeqr2,
    + LAPACKE_sgeqr2_work,
    + LAPACKE_sgeqrf,
    + LAPACKE_sgeqrf_work,
    + LAPACKE_sgeqrfp,
    + LAPACKE_sgeqrfp_work,
    + LAPACKE_sgeqrt,
    + LAPACKE_sgeqrt2,
    + LAPACKE_sgeqrt2_work,
    + LAPACKE_sgeqrt3,
    + LAPACKE_sgeqrt3_work,
    + LAPACKE_sgeqrt_work,
    + LAPACKE_sgerfs,
    + LAPACKE_sgerfs_work,
    + LAPACKE_sgerqf,
    + LAPACKE_sgerqf_work,
    + LAPACKE_sgesdd,
    + LAPACKE_sgesdd_work,
    + LAPACKE_sgesv,
    + LAPACKE_sgesv_work,
    + LAPACKE_sgesvd,
    + LAPACKE_sgesvd_work,
    + LAPACKE_sgesvj,
    + LAPACKE_sgesvj_work,
    + LAPACKE_sgesvx,
    + LAPACKE_sgesvx_work,
    + LAPACKE_sgetf2,
    + LAPACKE_sgetf2_work,
    + LAPACKE_sgetrf,
    + LAPACKE_sgetrf_work,
    + LAPACKE_sgetri,
    + LAPACKE_sgetri_work,
    + LAPACKE_sgetrs,
    + LAPACKE_sgetrs_work,
    + LAPACKE_sgg_nancheck,
    + LAPACKE_sgg_trans,
    + LAPACKE_sggbak,
    + LAPACKE_sggbak_work,
    + LAPACKE_sggbal,
    + LAPACKE_sggbal_work,
    + LAPACKE_sgges,
    + LAPACKE_sgges_work,
    + LAPACKE_sggesx,
    + LAPACKE_sggesx_work,
    + LAPACKE_sggev,
    + LAPACKE_sggev_work,
    + LAPACKE_sggevx,
    + LAPACKE_sggevx_work,
    + LAPACKE_sggglm,
    + LAPACKE_sggglm_work,
    + LAPACKE_sgghrd,
    + LAPACKE_sgghrd_work,
    + LAPACKE_sgglse,
    + LAPACKE_sgglse_work,
    + LAPACKE_sggqrf,
    + LAPACKE_sggqrf_work,
    + LAPACKE_sggrqf,
    + LAPACKE_sggrqf_work,
    + LAPACKE_sggsvd,
    + LAPACKE_sggsvd_work,
    + LAPACKE_sggsvp,
    + LAPACKE_sggsvp_work,
    + LAPACKE_sgt_nancheck,
    + LAPACKE_sgtcon,
    + LAPACKE_sgtcon_work,
    + LAPACKE_sgtrfs,
    + LAPACKE_sgtrfs_work,
    + LAPACKE_sgtsv,
    + LAPACKE_sgtsv_work,
    + LAPACKE_sgtsvx,
    + LAPACKE_sgtsvx_work,
    + LAPACKE_sgttrf,
    + LAPACKE_sgttrf_work,
    + LAPACKE_sgttrs,
    + LAPACKE_sgttrs_work,
    + LAPACKE_shgeqz,
    + LAPACKE_shgeqz_work,
    + LAPACKE_shs_nancheck,
    + LAPACKE_shs_trans,
    + LAPACKE_shsein,
    + LAPACKE_shsein_work,
    + LAPACKE_shseqr,
    + LAPACKE_shseqr_work,
    + LAPACKE_slacpy,
    + LAPACKE_slacpy_work,
    + LAPACKE_slag2d,
    + LAPACKE_slag2d_work,
    + LAPACKE_slamch,
    + LAPACKE_slamch_work,
    + LAPACKE_slange,
    + LAPACKE_slange_work,
    + LAPACKE_slansy,
    + LAPACKE_slansy_work,
    + LAPACKE_slantr,
    + LAPACKE_slantr_work,
    + LAPACKE_slapmr,
    + LAPACKE_slapmr_work,
    + LAPACKE_slapy2,
    + LAPACKE_slapy2_work,
    + LAPACKE_slapy3,
    + LAPACKE_slapy3_work,
    + LAPACKE_slarfb,
    + LAPACKE_slarfb_work,
    + LAPACKE_slarfg,
    + LAPACKE_slarfg_work,
    + LAPACKE_slarft,
    + LAPACKE_slarft_work,
    + LAPACKE_slarfx,
    + LAPACKE_slarfx_work,
    + LAPACKE_slarnv,
    + LAPACKE_slarnv_work,
    + LAPACKE_slartgp,
    + LAPACKE_slartgp_work,
    + LAPACKE_slartgs,
    + LAPACKE_slartgs_work,
    + LAPACKE_slaset,
    + LAPACKE_slaset_work,
    + LAPACKE_slasrt,
    + LAPACKE_slasrt_work,
    + LAPACKE_slaswp,
    + LAPACKE_slaswp_work,
    + LAPACKE_slauum,
    + LAPACKE_slauum_work,
    + LAPACKE_sopgtr,
    + LAPACKE_sopgtr_work,
    + LAPACKE_sopmtr,
    + LAPACKE_sopmtr_work,
    + LAPACKE_sorbdb,
    + LAPACKE_sorbdb_work,
    + LAPACKE_sorcsd,
    + LAPACKE_sorcsd_work,
    + LAPACKE_sorgbr,
    + LAPACKE_sorgbr_work,
    + LAPACKE_sorghr,
    + LAPACKE_sorghr_work,
    + LAPACKE_sorglq,
    + LAPACKE_sorglq_work,
    + LAPACKE_sorgql,
    + LAPACKE_sorgql_work,
    + LAPACKE_sorgqr,
    + LAPACKE_sorgqr_work,
    + LAPACKE_sorgrq,
    + LAPACKE_sorgrq_work,
    + LAPACKE_sorgtr,
    + LAPACKE_sorgtr_work,
    + LAPACKE_sormbr,
    + LAPACKE_sormbr_work,
    + LAPACKE_sormhr,
    + LAPACKE_sormhr_work,
    + LAPACKE_sormlq,
    + LAPACKE_sormlq_work,
    + LAPACKE_sormql,
    + LAPACKE_sormql_work,
    + LAPACKE_sormqr,
    + LAPACKE_sormqr_work,
    + LAPACKE_sormrq,
    + LAPACKE_sormrq_work,
    + LAPACKE_sormrz,
    + LAPACKE_sormrz_work,
    + LAPACKE_sormtr,
    + LAPACKE_sormtr_work,
    + LAPACKE_spb_nancheck,
    + LAPACKE_spb_trans,
    + LAPACKE_spbcon,
    + LAPACKE_spbcon_work,
    + LAPACKE_spbequ,
    + LAPACKE_spbequ_work,
    + LAPACKE_spbrfs,
    + LAPACKE_spbrfs_work,
    + LAPACKE_spbstf,
    + LAPACKE_spbstf_work,
    + LAPACKE_spbsv,
    + LAPACKE_spbsv_work,
    + LAPACKE_spbsvx,
    + LAPACKE_spbsvx_work,
    + LAPACKE_spbtrf,
    + LAPACKE_spbtrf_work,
    + LAPACKE_spbtrs,
    + LAPACKE_spbtrs_work,
    + LAPACKE_spf_nancheck,
    + LAPACKE_spf_trans,
    + LAPACKE_spftrf,
    + LAPACKE_spftrf_work,
    + LAPACKE_spftri,
    + LAPACKE_spftri_work,
    + LAPACKE_spftrs,
    + LAPACKE_spftrs_work,
    + LAPACKE_spo_nancheck,
    + LAPACKE_spo_trans,
    + LAPACKE_spocon,
    + LAPACKE_spocon_work,
    + LAPACKE_spoequ,
    + LAPACKE_spoequ_work,
    + LAPACKE_spoequb,
    + LAPACKE_spoequb_work,
    + LAPACKE_sporfs,
    + LAPACKE_sporfs_work,
    + LAPACKE_sposv,
    + LAPACKE_sposv_work,
    + LAPACKE_sposvx,
    + LAPACKE_sposvx_work,
    + LAPACKE_spotrf,
    + LAPACKE_spotrf_work,
    + LAPACKE_spotri,
    + LAPACKE_spotri_work,
    + LAPACKE_spotrs,
    + LAPACKE_spotrs_work,
    + LAPACKE_spp_nancheck,
    + LAPACKE_spp_trans,
    + LAPACKE_sppcon,
    + LAPACKE_sppcon_work,
    + LAPACKE_sppequ,
    + LAPACKE_sppequ_work,
    + LAPACKE_spprfs,
    + LAPACKE_spprfs_work,
    + LAPACKE_sppsv,
    + LAPACKE_sppsv_work,
    + LAPACKE_sppsvx,
    + LAPACKE_sppsvx_work,
    + LAPACKE_spptrf,
    + LAPACKE_spptrf_work,
    + LAPACKE_spptri,
    + LAPACKE_spptri_work,
    + LAPACKE_spptrs,
    + LAPACKE_spptrs_work,
    + LAPACKE_spstrf,
    + LAPACKE_spstrf_work,
    + LAPACKE_spt_nancheck,
    + LAPACKE_sptcon,
    + LAPACKE_sptcon_work,
    + LAPACKE_spteqr,
    + LAPACKE_spteqr_work,
    + LAPACKE_sptrfs,
    + LAPACKE_sptrfs_work,
    + LAPACKE_sptsv,
    + LAPACKE_sptsv_work,
    + LAPACKE_sptsvx,
    + LAPACKE_sptsvx_work,
    + LAPACKE_spttrf,
    + LAPACKE_spttrf_work,
    + LAPACKE_spttrs,
    + LAPACKE_spttrs_work,
    + LAPACKE_ssb_nancheck,
    + LAPACKE_ssb_trans,
    + LAPACKE_ssbev,
    + LAPACKE_ssbev_work,
    + LAPACKE_ssbevd,
    + LAPACKE_ssbevd_work,
    + LAPACKE_ssbevx,
    + LAPACKE_ssbevx_work,
    + LAPACKE_ssbgst,
    + LAPACKE_ssbgst_work,
    + LAPACKE_ssbgv,
    + LAPACKE_ssbgv_work,
    + LAPACKE_ssbgvd,
    + LAPACKE_ssbgvd_work,
    + LAPACKE_ssbgvx,
    + LAPACKE_ssbgvx_work,
    + LAPACKE_ssbtrd,
    + LAPACKE_ssbtrd_work,
    + LAPACKE_ssfrk,
    + LAPACKE_ssfrk_work,
    + LAPACKE_ssp_nancheck,
    + LAPACKE_ssp_trans,
    + LAPACKE_sspcon,
    + LAPACKE_sspcon_work,
    + LAPACKE_sspev,
    + LAPACKE_sspev_work,
    + LAPACKE_sspevd,
    + LAPACKE_sspevd_work,
    + LAPACKE_sspevx,
    + LAPACKE_sspevx_work,
    + LAPACKE_sspgst,
    + LAPACKE_sspgst_work,
    + LAPACKE_sspgv,
    + LAPACKE_sspgv_work,
    + LAPACKE_sspgvd,
    + LAPACKE_sspgvd_work,
    + LAPACKE_sspgvx,
    + LAPACKE_sspgvx_work,
    + LAPACKE_ssprfs,
    + LAPACKE_ssprfs_work,
    + LAPACKE_sspsv,
    + LAPACKE_sspsv_work,
    + LAPACKE_sspsvx,
    + LAPACKE_sspsvx_work,
    + LAPACKE_ssptrd,
    + LAPACKE_ssptrd_work,
    + LAPACKE_ssptrf,
    + LAPACKE_ssptrf_work,
    + LAPACKE_ssptri,
    + LAPACKE_ssptri_work,
    + LAPACKE_ssptrs,
    + LAPACKE_ssptrs_work,
    + LAPACKE_sst_nancheck,
    + LAPACKE_sstebz,
    + LAPACKE_sstebz_work,
    + LAPACKE_sstedc,
    + LAPACKE_sstedc_work,
    + LAPACKE_sstegr,
    + LAPACKE_sstegr_work,
    + LAPACKE_sstein,
    + LAPACKE_sstein_work,
    + LAPACKE_sstemr,
    + LAPACKE_sstemr_work,
    + LAPACKE_ssteqr,
    + LAPACKE_ssteqr_work,
    + LAPACKE_ssterf,
    + LAPACKE_ssterf_work,
    + LAPACKE_sstev,
    + LAPACKE_sstev_work,
    + LAPACKE_sstevd,
    + LAPACKE_sstevd_work,
    + LAPACKE_sstevr,
    + LAPACKE_sstevr_work,
    + LAPACKE_sstevx,
    + LAPACKE_sstevx_work,
    + LAPACKE_ssy_nancheck,
    + LAPACKE_ssy_trans,
    + LAPACKE_ssycon,
    + LAPACKE_ssycon_work,
    + LAPACKE_ssyconv,
    + LAPACKE_ssyconv_work,
    + LAPACKE_ssyequb,
    + LAPACKE_ssyequb_work,
    + LAPACKE_ssyev,
    + LAPACKE_ssyev_work,
    + LAPACKE_ssyevd,
    + LAPACKE_ssyevd_work,
    + LAPACKE_ssyevr,
    + LAPACKE_ssyevr_work,
    + LAPACKE_ssyevx,
    + LAPACKE_ssyevx_work,
    + LAPACKE_ssygst,
    + LAPACKE_ssygst_work,
    + LAPACKE_ssygv,
    + LAPACKE_ssygv_work,
    + LAPACKE_ssygvd,
    + LAPACKE_ssygvd_work,
    + LAPACKE_ssygvx,
    + LAPACKE_ssygvx_work,
    + LAPACKE_ssyrfs,
    + LAPACKE_ssyrfs_work,
    + LAPACKE_ssysv,
    + LAPACKE_ssysv_work,
    + LAPACKE_ssysvx,
    + LAPACKE_ssysvx_work,
    + LAPACKE_ssyswapr,
    + LAPACKE_ssyswapr_work,
    + LAPACKE_ssytrd,
    + LAPACKE_ssytrd_work,
    + LAPACKE_ssytrf,
    + LAPACKE_ssytrf_work,
    + LAPACKE_ssytri,
    + LAPACKE_ssytri2,
    + LAPACKE_ssytri2_work,
    + LAPACKE_ssytri2x,
    + LAPACKE_ssytri2x_work,
    + LAPACKE_ssytri_work,
    + LAPACKE_ssytrs,
    + LAPACKE_ssytrs2,
    + LAPACKE_ssytrs2_work,
    + LAPACKE_ssytrs_work,
    + LAPACKE_stb_nancheck,
    + LAPACKE_stb_trans,
    + LAPACKE_stbcon,
    + LAPACKE_stbcon_work,
    + LAPACKE_stbrfs,
    + LAPACKE_stbrfs_work,
    + LAPACKE_stbtrs,
    + LAPACKE_stbtrs_work,
    + LAPACKE_stf_nancheck,
    + LAPACKE_stf_trans,
    + LAPACKE_stfsm,
    + LAPACKE_stfsm_work,
    + LAPACKE_stftri,
    + LAPACKE_stftri_work,
    + LAPACKE_stfttp,
    + LAPACKE_stfttp_work,
    + LAPACKE_stfttr,
    + LAPACKE_stfttr_work,
    + LAPACKE_stgevc,
    + LAPACKE_stgevc_work,
    + LAPACKE_stgexc,
    + LAPACKE_stgexc_work,
    + LAPACKE_stgsen,
    + LAPACKE_stgsen_work,
    + LAPACKE_stgsja,
    + LAPACKE_stgsja_work,
    + LAPACKE_stgsna,
    + LAPACKE_stgsna_work,
    + LAPACKE_stgsyl,
    + LAPACKE_stgsyl_work,
    + LAPACKE_stp_nancheck,
    + LAPACKE_stp_trans,
    + LAPACKE_stpcon,
    + LAPACKE_stpcon_work,
    + LAPACKE_stpmqrt,
    + LAPACKE_stpmqrt_work,
    + LAPACKE_stpqrt2,
    + LAPACKE_stpqrt2_work,
    + LAPACKE_stprfb,
    + LAPACKE_stprfb_work,
    + LAPACKE_stprfs,
    + LAPACKE_stprfs_work,
    + LAPACKE_stptri,
    + LAPACKE_stptri_work,
    + LAPACKE_stptrs,
    + LAPACKE_stptrs_work,
    + LAPACKE_stpttf,
    + LAPACKE_stpttf_work,
    + LAPACKE_stpttr,
    + LAPACKE_stpttr_work,
    + LAPACKE_str_nancheck,
    + LAPACKE_str_trans,
    + LAPACKE_strcon,
    + LAPACKE_strcon_work,
    + LAPACKE_strevc,
    + LAPACKE_strevc_work,
    + LAPACKE_strexc,
    + LAPACKE_strexc_work,
    + LAPACKE_strrfs,
    + LAPACKE_strrfs_work,
    + LAPACKE_strsen,
    + LAPACKE_strsen_work,
    + LAPACKE_strsna,
    + LAPACKE_strsna_work,
    + LAPACKE_strsyl,
    + LAPACKE_strsyl_work,
    + LAPACKE_strtri,
    + LAPACKE_strtri_work,
    + LAPACKE_strtrs,
    + LAPACKE_strtrs_work,
    + LAPACKE_strttf,
    + LAPACKE_strttf_work,
    + LAPACKE_strttp,
    + LAPACKE_strttp_work,
    + LAPACKE_stzrzf,
    + LAPACKE_stzrzf_work,
    + LAPACKE_xerbla,
    + LAPACKE_z_nancheck,
    + LAPACKE_zbbcsd,
    + LAPACKE_zbbcsd_work,
    + LAPACKE_zbdsqr,
    + LAPACKE_zbdsqr_work,
    + LAPACKE_zcgesv,
    + LAPACKE_zcgesv_work,
    + LAPACKE_zcposv,
    + LAPACKE_zcposv_work,
    + LAPACKE_zgb_nancheck,
    + LAPACKE_zgb_trans,
    + LAPACKE_zgbbrd,
    + LAPACKE_zgbbrd_work,
    + LAPACKE_zgbcon,
    + LAPACKE_zgbcon_work,
    + LAPACKE_zgbequ,
    + LAPACKE_zgbequ_work,
    + LAPACKE_zgbequb,
    + LAPACKE_zgbequb_work,
    + LAPACKE_zgbrfs,
    + LAPACKE_zgbrfs_work,
    + LAPACKE_zgbsv,
    + LAPACKE_zgbsv_work,
    + LAPACKE_zgbsvx,
    + LAPACKE_zgbsvx_work,
    + LAPACKE_zgbtrf,
    + LAPACKE_zgbtrf_work,
    + LAPACKE_zgbtrs,
    + LAPACKE_zgbtrs_work,
    + LAPACKE_zge_nancheck,
    + LAPACKE_zge_trans,
    + LAPACKE_zgebak,
    + LAPACKE_zgebak_work,
    + LAPACKE_zgebal,
    + LAPACKE_zgebal_work,
    + LAPACKE_zgebrd,
    + LAPACKE_zgebrd_work,
    + LAPACKE_zgecon,
    + LAPACKE_zgecon_work,
    + LAPACKE_zgeequ,
    + LAPACKE_zgeequ_work,
    + LAPACKE_zgeequb,
    + LAPACKE_zgeequb_work,
    + LAPACKE_zgees,
    + LAPACKE_zgees_work,
    + LAPACKE_zgeesx,
    + LAPACKE_zgeesx_work,
    + LAPACKE_zgeev,
    + LAPACKE_zgeev_work,
    + LAPACKE_zgeevx,
    + LAPACKE_zgeevx_work,
    + LAPACKE_zgehrd,
    + LAPACKE_zgehrd_work,
    + LAPACKE_zgelq2,
    + LAPACKE_zgelq2_work,
    + LAPACKE_zgelqf,
    + LAPACKE_zgelqf_work,
    + LAPACKE_zgels,
    + LAPACKE_zgels_work,
    + LAPACKE_zgelsd,
    + LAPACKE_zgelsd_work,
    + LAPACKE_zgelss,
    + LAPACKE_zgelss_work,
    + LAPACKE_zgelsy,
    + LAPACKE_zgelsy_work,
    + LAPACKE_zgemqrt,
    + LAPACKE_zgemqrt_work,
    + LAPACKE_zgeqlf,
    + LAPACKE_zgeqlf_work,
    + LAPACKE_zgeqp3,
    + LAPACKE_zgeqp3_work,
    + LAPACKE_zgeqpf,
    + LAPACKE_zgeqpf_work,
    + LAPACKE_zgeqr2,
    + LAPACKE_zgeqr2_work,
    + LAPACKE_zgeqrf,
    + LAPACKE_zgeqrf_work,
    + LAPACKE_zgeqrfp,
    + LAPACKE_zgeqrfp_work,
    + LAPACKE_zgeqrt,
    + LAPACKE_zgeqrt2,
    + LAPACKE_zgeqrt2_work,
    + LAPACKE_zgeqrt3,
    + LAPACKE_zgeqrt3_work,
    + LAPACKE_zgeqrt_work,
    + LAPACKE_zgerfs,
    + LAPACKE_zgerfs_work,
    + LAPACKE_zgerqf,
    + LAPACKE_zgerqf_work,
    + LAPACKE_zgesdd,
    + LAPACKE_zgesdd_work,
    + LAPACKE_zgesv,
    + LAPACKE_zgesv_work,
    + LAPACKE_zgesvd,
    + LAPACKE_zgesvd_work,
    + LAPACKE_zgesvx,
    + LAPACKE_zgesvx_work,
    + LAPACKE_zgetf2,
    + LAPACKE_zgetf2_work,
    + LAPACKE_zgetrf,
    + LAPACKE_zgetrf_work,
    + LAPACKE_zgetri,
    + LAPACKE_zgetri_work,
    + LAPACKE_zgetrs,
    + LAPACKE_zgetrs_work,
    + LAPACKE_zgg_nancheck,
    + LAPACKE_zgg_trans,
    + LAPACKE_zggbak,
    + LAPACKE_zggbak_work,
    + LAPACKE_zggbal,
    + LAPACKE_zggbal_work,
    + LAPACKE_zgges,
    + LAPACKE_zgges_work,
    + LAPACKE_zggesx,
    + LAPACKE_zggesx_work,
    + LAPACKE_zggev,
    + LAPACKE_zggev_work,
    + LAPACKE_zggevx,
    + LAPACKE_zggevx_work,
    + LAPACKE_zggglm,
    + LAPACKE_zggglm_work,
    + LAPACKE_zgghrd,
    + LAPACKE_zgghrd_work,
    + LAPACKE_zgglse,
    + LAPACKE_zgglse_work,
    + LAPACKE_zggqrf,
    + LAPACKE_zggqrf_work,
    + LAPACKE_zggrqf,
    + LAPACKE_zggrqf_work,
    + LAPACKE_zggsvd,
    + LAPACKE_zggsvd_work,
    + LAPACKE_zggsvp,
    + LAPACKE_zggsvp_work,
    + LAPACKE_zgt_nancheck,
    + LAPACKE_zgtcon,
    + LAPACKE_zgtcon_work,
    + LAPACKE_zgtrfs,
    + LAPACKE_zgtrfs_work,
    + LAPACKE_zgtsv,
    + LAPACKE_zgtsv_work,
    + LAPACKE_zgtsvx,
    + LAPACKE_zgtsvx_work,
    + LAPACKE_zgttrf,
    + LAPACKE_zgttrf_work,
    + LAPACKE_zgttrs,
    + LAPACKE_zgttrs_work,
    + LAPACKE_zhb_nancheck,
    + LAPACKE_zhb_trans,
    + LAPACKE_zhbev,
    + LAPACKE_zhbev_work,
    + LAPACKE_zhbevd,
    + LAPACKE_zhbevd_work,
    + LAPACKE_zhbevx,
    + LAPACKE_zhbevx_work,
    + LAPACKE_zhbgst,
    + LAPACKE_zhbgst_work,
    + LAPACKE_zhbgv,
    + LAPACKE_zhbgv_work,
    + LAPACKE_zhbgvd,
    + LAPACKE_zhbgvd_work,
    + LAPACKE_zhbgvx,
    + LAPACKE_zhbgvx_work,
    + LAPACKE_zhbtrd,
    + LAPACKE_zhbtrd_work,
    + LAPACKE_zhe_nancheck,
    + LAPACKE_zhe_trans,
    + LAPACKE_zhecon,
    + LAPACKE_zhecon_work,
    + LAPACKE_zheequb,
    + LAPACKE_zheequb_work,
    + LAPACKE_zheev,
    + LAPACKE_zheev_work,
    + LAPACKE_zheevd,
    + LAPACKE_zheevd_work,
    + LAPACKE_zheevr,
    + LAPACKE_zheevr_work,
    + LAPACKE_zheevx,
    + LAPACKE_zheevx_work,
    + LAPACKE_zhegst,
    + LAPACKE_zhegst_work,
    + LAPACKE_zhegv,
    + LAPACKE_zhegv_work,
    + LAPACKE_zhegvd,
    + LAPACKE_zhegvd_work,
    + LAPACKE_zhegvx,
    + LAPACKE_zhegvx_work,
    + LAPACKE_zherfs,
    + LAPACKE_zherfs_work,
    + LAPACKE_zhesv,
    + LAPACKE_zhesv_work,
    + LAPACKE_zhesvx,
    + LAPACKE_zhesvx_work,
    + LAPACKE_zheswapr,
    + LAPACKE_zheswapr_work,
    + LAPACKE_zhetrd,
    + LAPACKE_zhetrd_work,
    + LAPACKE_zhetrf,
    + LAPACKE_zhetrf_work,
    + LAPACKE_zhetri,
    + LAPACKE_zhetri2,
    + LAPACKE_zhetri2_work,
    + LAPACKE_zhetri2x,
    + LAPACKE_zhetri2x_work,
    + LAPACKE_zhetri_work,
    + LAPACKE_zhetrs,
    + LAPACKE_zhetrs2,
    + LAPACKE_zhetrs2_work,
    + LAPACKE_zhetrs_work,
    + LAPACKE_zhfrk,
    + LAPACKE_zhfrk_work,
    + LAPACKE_zhgeqz,
    + LAPACKE_zhgeqz_work,
    + LAPACKE_zhp_nancheck,
    + LAPACKE_zhp_trans,
    + LAPACKE_zhpcon,
    + LAPACKE_zhpcon_work,
    + LAPACKE_zhpev,
    + LAPACKE_zhpev_work,
    + LAPACKE_zhpevd,
    + LAPACKE_zhpevd_work,
    + LAPACKE_zhpevx,
    + LAPACKE_zhpevx_work,
    + LAPACKE_zhpgst,
    + LAPACKE_zhpgst_work,
    + LAPACKE_zhpgv,
    + LAPACKE_zhpgv_work,
    + LAPACKE_zhpgvd,
    + LAPACKE_zhpgvd_work,
    + LAPACKE_zhpgvx,
    + LAPACKE_zhpgvx_work,
    + LAPACKE_zhprfs,
    + LAPACKE_zhprfs_work,
    + LAPACKE_zhpsv,
    + LAPACKE_zhpsv_work,
    + LAPACKE_zhpsvx,
    + LAPACKE_zhpsvx_work,
    + LAPACKE_zhptrd,
    + LAPACKE_zhptrd_work,
    + LAPACKE_zhptrf,
    + LAPACKE_zhptrf_work,
    + LAPACKE_zhptri,
    + LAPACKE_zhptri_work,
    + LAPACKE_zhptrs,
    + LAPACKE_zhptrs_work,
    + LAPACKE_zhs_nancheck,
    + LAPACKE_zhs_trans,
    + LAPACKE_zhsein,
    + LAPACKE_zhsein_work,
    + LAPACKE_zhseqr,
    + LAPACKE_zhseqr_work,
    + LAPACKE_zlacgv,
    + LAPACKE_zlacgv_work,
    + LAPACKE_zlacpy,
    + LAPACKE_zlacpy_work,
    + LAPACKE_zlag2c,
    + LAPACKE_zlag2c_work,
    + LAPACKE_zlange,
    + LAPACKE_zlange_work,
    + LAPACKE_zlanhe,
    + LAPACKE_zlanhe_work,
    + LAPACKE_zlansy,
    + LAPACKE_zlansy_work,
    + LAPACKE_zlantr,
    + LAPACKE_zlantr_work,
    + LAPACKE_zlapmr,
    + LAPACKE_zlapmr_work,
    + LAPACKE_zlarfb,
    + LAPACKE_zlarfb_work,
    + LAPACKE_zlarfg,
    + LAPACKE_zlarfg_work,
    + LAPACKE_zlarft,
    + LAPACKE_zlarft_work,
    + LAPACKE_zlarfx,
    + LAPACKE_zlarfx_work,
    + LAPACKE_zlarnv,
    + LAPACKE_zlarnv_work,
    + LAPACKE_zlaset,
    + LAPACKE_zlaset_work,
    + LAPACKE_zlaswp,
    + LAPACKE_zlaswp_work,
    + LAPACKE_zlauum,
    + LAPACKE_zlauum_work,
    + LAPACKE_zpb_nancheck,
    + LAPACKE_zpb_trans,
    + LAPACKE_zpbcon,
    + LAPACKE_zpbcon_work,
    + LAPACKE_zpbequ,
    + LAPACKE_zpbequ_work,
    + LAPACKE_zpbrfs,
    + LAPACKE_zpbrfs_work,
    + LAPACKE_zpbstf,
    + LAPACKE_zpbstf_work,
    + LAPACKE_zpbsv,
    + LAPACKE_zpbsv_work,
    + LAPACKE_zpbsvx,
    + LAPACKE_zpbsvx_work,
    + LAPACKE_zpbtrf,
    + LAPACKE_zpbtrf_work,
    + LAPACKE_zpbtrs,
    + LAPACKE_zpbtrs_work,
    + LAPACKE_zpf_nancheck,
    + LAPACKE_zpf_trans,
    + LAPACKE_zpftrf,
    + LAPACKE_zpftrf_work,
    + LAPACKE_zpftri,
    + LAPACKE_zpftri_work,
    + LAPACKE_zpftrs,
    + LAPACKE_zpftrs_work,
    + LAPACKE_zpo_nancheck,
    + LAPACKE_zpo_trans,
    + LAPACKE_zpocon,
    + LAPACKE_zpocon_work,
    + LAPACKE_zpoequ,
    + LAPACKE_zpoequ_work,
    + LAPACKE_zpoequb,
    + LAPACKE_zpoequb_work,
    + LAPACKE_zporfs,
    + LAPACKE_zporfs_work,
    + LAPACKE_zposv,
    + LAPACKE_zposv_work,
    + LAPACKE_zposvx,
    + LAPACKE_zposvx_work,
    + LAPACKE_zpotrf,
    + LAPACKE_zpotrf_work,
    + LAPACKE_zpotri,
    + LAPACKE_zpotri_work,
    + LAPACKE_zpotrs,
    + LAPACKE_zpotrs_work,
    + LAPACKE_zpp_nancheck,
    + LAPACKE_zpp_trans,
    + LAPACKE_zppcon,
    + LAPACKE_zppcon_work,
    + LAPACKE_zppequ,
    + LAPACKE_zppequ_work,
    + LAPACKE_zpprfs,
    + LAPACKE_zpprfs_work,
    + LAPACKE_zppsv,
    + LAPACKE_zppsv_work,
    + LAPACKE_zppsvx,
    + LAPACKE_zppsvx_work,
    + LAPACKE_zpptrf,
    + LAPACKE_zpptrf_work,
    + LAPACKE_zpptri,
    + LAPACKE_zpptri_work,
    + LAPACKE_zpptrs,
    + LAPACKE_zpptrs_work,
    + LAPACKE_zpstrf,
    + LAPACKE_zpstrf_work,
    + LAPACKE_zpt_nancheck,
    + LAPACKE_zptcon,
    + LAPACKE_zptcon_work,
    + LAPACKE_zpteqr,
    + LAPACKE_zpteqr_work,
    + LAPACKE_zptrfs,
    + LAPACKE_zptrfs_work,
    + LAPACKE_zptsv,
    + LAPACKE_zptsv_work,
    + LAPACKE_zptsvx,
    + LAPACKE_zptsvx_work,
    + LAPACKE_zpttrf,
    + LAPACKE_zpttrf_work,
    + LAPACKE_zpttrs,
    + LAPACKE_zpttrs_work,
    + LAPACKE_zsp_nancheck,
    + LAPACKE_zsp_trans,
    + LAPACKE_zspcon,
    + LAPACKE_zspcon_work,
    + LAPACKE_zsprfs,
    + LAPACKE_zsprfs_work,
    + LAPACKE_zspsv,
    + LAPACKE_zspsv_work,
    + LAPACKE_zspsvx,
    + LAPACKE_zspsvx_work,
    + LAPACKE_zsptrf,
    + LAPACKE_zsptrf_work,
    + LAPACKE_zsptri,
    + LAPACKE_zsptri_work,
    + LAPACKE_zsptrs,
    + LAPACKE_zsptrs_work,
    + LAPACKE_zst_nancheck,
    + LAPACKE_zstedc,
    + LAPACKE_zstedc_work,
    + LAPACKE_zstegr,
    + LAPACKE_zstegr_work,
    + LAPACKE_zstein,
    + LAPACKE_zstein_work,
    + LAPACKE_zstemr,
    + LAPACKE_zstemr_work,
    + LAPACKE_zsteqr,
    + LAPACKE_zsteqr_work,
    + LAPACKE_zsy_nancheck,
    + LAPACKE_zsy_trans,
    + LAPACKE_zsycon,
    + LAPACKE_zsycon_work,
    + LAPACKE_zsyconv,
    + LAPACKE_zsyconv_work,
    + LAPACKE_zsyequb,
    + LAPACKE_zsyequb_work,
    + LAPACKE_zsyrfs,
    + LAPACKE_zsyrfs_work,
    + LAPACKE_zsysv,
    + LAPACKE_zsysv_work,
    + LAPACKE_zsysvx,
    + LAPACKE_zsysvx_work,
    + LAPACKE_zsyswapr,
    + LAPACKE_zsyswapr_work,
    + LAPACKE_zsytrf,
    + LAPACKE_zsytrf_work,
    + LAPACKE_zsytri,
    + LAPACKE_zsytri2,
    + LAPACKE_zsytri2_work,
    + LAPACKE_zsytri2x,
    + LAPACKE_zsytri2x_work,
    + LAPACKE_zsytri_work,
    + LAPACKE_zsytrs,
    + LAPACKE_zsytrs2,
    + LAPACKE_zsytrs2_work,
    + LAPACKE_zsytrs_work,
    + LAPACKE_ztb_nancheck,
    + LAPACKE_ztb_trans,
    + LAPACKE_ztbcon,
    + LAPACKE_ztbcon_work,
    + LAPACKE_ztbrfs,
    + LAPACKE_ztbrfs_work,
    + LAPACKE_ztbtrs,
    + LAPACKE_ztbtrs_work,
    + LAPACKE_ztf_nancheck,
    + LAPACKE_ztf_trans,
    + LAPACKE_ztfsm,
    + LAPACKE_ztfsm_work,
    + LAPACKE_ztftri,
    + LAPACKE_ztftri_work,
    + LAPACKE_ztfttp,
    + LAPACKE_ztfttp_work,
    + LAPACKE_ztfttr,
    + LAPACKE_ztfttr_work,
    + LAPACKE_ztgevc,
    + LAPACKE_ztgevc_work,
    + LAPACKE_ztgexc,
    + LAPACKE_ztgexc_work,
    + LAPACKE_ztgsen,
    + LAPACKE_ztgsen_work,
    + LAPACKE_ztgsja,
    + LAPACKE_ztgsja_work,
    + LAPACKE_ztgsna,
    + LAPACKE_ztgsna_work,
    + LAPACKE_ztgsyl,
    + LAPACKE_ztgsyl_work,
    + LAPACKE_ztp_nancheck,
    + LAPACKE_ztp_trans,
    + LAPACKE_ztpcon,
    + LAPACKE_ztpcon_work,
    + LAPACKE_ztpmqrt,
    + LAPACKE_ztpmqrt_work,
    + LAPACKE_ztpqrt,
    + LAPACKE_ztpqrt2,
    + LAPACKE_ztpqrt2_work,
    + LAPACKE_ztpqrt_work,
    + LAPACKE_ztprfb,
    + LAPACKE_ztprfb_work,
    + LAPACKE_ztprfs,
    + LAPACKE_ztprfs_work,
    + LAPACKE_ztptri,
    + LAPACKE_ztptri_work,
    + LAPACKE_ztptrs,
    + LAPACKE_ztptrs_work,
    + LAPACKE_ztpttf,
    + LAPACKE_ztpttf_work,
    + LAPACKE_ztpttr,
    + LAPACKE_ztpttr_work,
    + LAPACKE_ztr_nancheck,
    + LAPACKE_ztr_trans,
    + LAPACKE_ztrcon,
    + LAPACKE_ztrcon_work,
    + LAPACKE_ztrevc,
    + LAPACKE_ztrevc_work,
    + LAPACKE_ztrexc,
    + LAPACKE_ztrexc_work,
    + LAPACKE_ztrrfs,
    + LAPACKE_ztrrfs_work,
    + LAPACKE_ztrsen,
    + LAPACKE_ztrsen_work,
    + LAPACKE_ztrsna,
    + LAPACKE_ztrsna_work,
    + LAPACKE_ztrsyl,
    + LAPACKE_ztrsyl_work,
    + LAPACKE_ztrtri,
    + LAPACKE_ztrtri_work,
    + LAPACKE_ztrtrs,
    + LAPACKE_ztrtrs_work,
    + LAPACKE_ztrttf,
    + LAPACKE_ztrttf_work,
    + LAPACKE_ztrttp,
    + LAPACKE_ztrttp_work,
    + LAPACKE_ztzrzf,
    + LAPACKE_ztzrzf_work,
    + LAPACKE_zunbdb,
    + LAPACKE_zunbdb_work,
    + LAPACKE_zuncsd,
    + LAPACKE_zuncsd_work,
    + LAPACKE_zungbr,
    + LAPACKE_zungbr_work,
    + LAPACKE_zunghr,
    + LAPACKE_zunghr_work,
    + LAPACKE_zunglq,
    + LAPACKE_zunglq_work,
    + LAPACKE_zungql,
    + LAPACKE_zungql_work,
    + LAPACKE_zungqr,
    + LAPACKE_zungqr_work,
    + LAPACKE_zungrq,
    + LAPACKE_zungrq_work,
    + LAPACKE_zungtr,
    + LAPACKE_zungtr_work,
    + LAPACKE_zunmbr,
    + LAPACKE_zunmbr_work,
    + LAPACKE_zunmhr,
    + LAPACKE_zunmhr_work,
    + LAPACKE_zunmlq,
    + LAPACKE_zunmlq_work,
    + LAPACKE_zunmql,
    + LAPACKE_zunmql_work,
    + LAPACKE_zunmqr,
    + LAPACKE_zunmqr_work,
    + LAPACKE_zunmrq,
    + LAPACKE_zunmrq_work,
    + LAPACKE_zunmrz,
    + LAPACKE_zunmrz_work,
    + LAPACKE_zunmtr,
    + LAPACKE_zunmtr_work,
    + LAPACKE_zupgtr,
    + LAPACKE_zupgtr_work,
    + LAPACKE_zupmtr,
    + LAPACKE_zupmtr_work,
    + );
    +
    if ($ARGV[5] == 1) {
    #NO_LAPACK=1
    - @objs = (@blasobjs);
    + @underscore_objs = (@blasobjs);
    } elsif (-d "../lapack-3.1.1" || -d "../lapack-3.4.0") {
    - @objs = (@blasobjs, @lapackobjs, @lapackobjs2);
    + @underscore_objs = (@blasobjs, @lapackobjs, @lapackobjs2);
    } else {
    - @objs = (@blasobjs, @lapackobjs);
    + @underscore_objs = (@blasobjs, @lapackobjs);
    }

    -if ($ARGV[3] == 1){ @objs = (@objs, @exblasobjs); };
    +if ($ARGV[3] == 1){ @underscore_objs = (@underscore_objs, @exblasobjs); };
    +
    +if ($ARGV[1] eq "X86_64"){ @underscore_objs = (@underscore_objs, @gemm3mobjs); };

    -if ($ARGV[1] eq "X86_64"){ @objs = (@objs, @gemm3mobjs); };
    +if ($ARGV[1] eq "x86"){ @underscore_objs = (@underscore_objs, @gemm3mobjs); };

    -if ($ARGV[1] eq "x86"){ @objs = (@objs, @gemm3mobjs); };
    +if ($ARGV[1] eq "ia64"){ @underscore_objs = (@underscore_objs, @gemm3mobjs); };

    -if ($ARGV[1] eq "ia64"){ @objs = (@objs, @gemm3mobjs); };
    +if ($ARGV[1] eq "MIPS"){ @underscore_objs = (@underscore_objs, @gemm3mobjs); };

    -if ($ARGV[1] eq "MIPS"){ @objs = (@objs, @gemm3mobjs); };
    +if ($ARGV[6] == 1) {
    + #NO_LAPACK=1
    + @no_underscore_objs = (@cblasobjs);
    +} else {
    + @no_underscore_objs = (@cblasobjs, @lapackeobjs);
    +}

    @linuxobjs = ('__strtol_internal', 'exit', 'free', 'getenv', 'malloc',
    'mmap', 'printf', 'sqrt',
    @@ -333,12 +2445,12 @@ $bu = $ARGV[2];
    $bu = "" if (($bu eq "0") || ($bu eq "1"));

    if ($ARGV[0] eq "linux"){
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    print $objs, $bu, "\n";
    }

    if ($ARGV[4] == 0) {
    - foreach $objs (@cblasobjs) {
    + foreach $objs (@no_underscore_objs) {
    print $objs, "\n";
    }
    }
    @@ -350,12 +2462,12 @@ if ($ARGV[0] eq "linux"){
    }

    if ($ARGV[0] eq "osx"){
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    print "_", $objs, $bu, "\n";
    }

    if ($ARGV[4] == 0) {
    - foreach $objs (@cblasobjs) {
    + foreach $objs (@no_underscore_objs) {
    print "_", $objs, "\n";
    }
    }
    @@ -363,12 +2475,12 @@ if ($ARGV[0] eq "osx"){
    }

    if ($ARGV[0] eq "aix"){
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    print $objs, $bu, "\n";
    }

    if ($ARGV[4] == 0) {
    - foreach $objs (@cblasobjs) {
    + foreach $objs (@no_underscore_objs) {
    print $objs, "\n";
    }
    }
    @@ -378,7 +2490,7 @@ if ($ARGV[0] eq "aix"){
    if ($ARGV[0] eq "win2k"){
    print "EXPORTS\n";
    $count = 1;
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    $uppercase = $objs;
    $uppercase =~ tr/[a-z]/[A-Z]/;
    print "\t$objs=$objs","_ \@", $count, "\n";
    @@ -390,7 +2502,7 @@ if ($ARGV[0] eq "win2k"){
    }

    if ($ARGV[4] == 0) {
    - foreach $objs (@cblasobjs) {
    + foreach $objs (@no_underscore_objs) {
    print "\t",$objs,"=$objs"," \@", $count, "\n";
    $count ++;
    }
    @@ -424,7 +2536,7 @@ if ($ARGV[0] eq "win2khpl"){
    if ($ARGV[0] eq "microsoft"){
    print "EXPORTS\n";
    $count = 1;
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    $uppercase = $objs;
    $uppercase =~ tr/[a-z]/[A-Z]/;
    print "\t$objs = $objs","_\n";
    @@ -441,7 +2553,7 @@ if ($ARGV[0] eq "microsoft"){

    if ($ARGV[0] eq "win2kasm"){
    print "\t.text\n";
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    $uppercase = $objs;
    $uppercase =~ tr/[a-z]/[A-Z]/;
    print "\t.align 16\n";
    @@ -454,11 +2566,11 @@ if ($ARGV[0] eq "win2kasm"){

    if ($ARGV[0] eq "linktest"){
    print "int main(void){\n";
    - foreach $objs (@objs) {
    + foreach $objs (@underscore_objs) {
    print $objs, $bu, "();\n" if $objs ne "xerbla";
    }
    if ($ARGV[4] == 0) {
    - foreach $objs (@cblasobjs) {
    + foreach $objs (@no_underscore_objs) {
    print $objs, "();\n";
    }
    }
    diff --git a/patch.for_lapack-3.4.0 b/patch.for_lapack-3.4.0
    index 9d3cd5f..5d048f9 100644
    --- a/patch.for_lapack-3.4.0
    +++ b/patch.for_lapack-3.4.0
    @@ -887,3 +887,158 @@ diff -ruN lapack-3.4.0.old/TESTING/LIN/Makefile lapack-3.4.0/TESTING/LIN/Makefil

    ../xlintsts: xlintsts
    mv xlintsts $@
    +
    +diff -ruN lapack-3.4.0.old/lapacke/make.inc lapack-3.4.0/lapacke/make.inc
    +--- lapack-3.4.0.old/lapacke/make.inc 2011-11-09 23:56:15 +0100
    ++++ lapack-3.4.0/lapacke/make.inc 1970-01-01 01:00:00 +0100
    +@@ -1,66 +0,0 @@
    +-##############################################################################
    +-# Copyright (c) 2010, Intel Corp.
    +-# All rights reserved.
    +-#
    +-# Redistribution and use in source and binary forms, with or without
    +-# modification, are permitted provided that the following conditions are met:
    +-#
    +-# * Redistributions of source code must retain the above copyright notice,
    +-# this list of conditions and the following disclaimer.
    +-# * Redistributions in binary form must reproduce the above copyright
    +-# notice, this list of conditions and the following disclaimer in the
    +-# documentation and/or other materials provided with the distribution.
    +-# * Neither the name of Intel Corporation nor the names of its contributors
    +-# may be used to endorse or promote products derived from this software
    +-# without specific prior written permission.
    +-#
    +-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    +-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    +-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +-# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
    +-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +-# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    +-# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    +-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    +-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    +-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
    +-# THE POSSIBILITY OF SUCH DAMAGE.
    +-##############################################################################
    +-# Contents: Native C interface to LAPACK
    +-# Author: Intel Corporation
    +-# September, 2010
    +-##############################################################################
    +-# This is the make.inc example. The following settings are used:
    +-#
    +-# Compiler: gcc
    +-# Configuration file: turned off (default)
    +-# Complex types: C99 (default)
    +-# Name pattern: mixed case (default)
    +-# (64-bit) Data model: LP64 (default)
    +-#
    +-# Basic include options.
    +-# CC is the C compiler, normally invoked with options CFLAGS.
    +-# LINKER is the linker, invoked with LDFLAGS.
    +-#
    +-# If libraries lapack.a and blas.a are built with
    +-# - ifort, set: LINKER = ifort
    +-# LDFLAGS = -nofor-main
    +-# - gfortran, set: LINKER = gfortran
    +-#
    +-CC = gcc
    +-CFLAGS =
    +-LINKER = gfortran
    +-LDFLAGS =
    +-#
    +-# The name of the libraries to be created/linked to
    +-# Ensure that the libraries have the same data model (LP64/ILP64).
    +-#
    +-LAPACKE = lapacke.a
    +-LIBS = /Users/julie/Documents/Boulot/lapack-dev/lapack/trunk/lapack_LINUX.a \
    +- /Users/julie/Documents/Boulot/lapack-dev/lapack/trunk/blas_LINUX.a -lm
    +-# The archiver and the flag(s) to use when building archive (library)
    +-# If your system has no ranlib, set RANLIB = echo.
    +-#
    +-ARCH = ar
    +-ARCHFLAGS = cr
    +-RANLIB = ranlib
    +diff -ruN lapack-3.4.0.old/lapacke/make.inc.example lapack-3.4.0/lapacke/make.inc.example
    +--- lapack-3.4.0.old/lapacke/make.inc.example 1970-01-01 01:00:00 +0100
    ++++ lapack-3.4.0/lapacke/make.inc.example 2011-11-09 23:56:15 +0100
    +@@ -0,0 +1,66 @@
    ++##############################################################################
    ++# Copyright (c) 2010, Intel Corp.
    ++# All rights reserved.
    ++#
    ++# Redistribution and use in source and binary forms, with or without
    ++# modification, are permitted provided that the following conditions are met:
    ++#
    ++# * Redistributions of source code must retain the above copyright notice,
    ++# this list of conditions and the following disclaimer.
    ++# * Redistributions in binary form must reproduce the above copyright
    ++# notice, this list of conditions and the following disclaimer in the
    ++# documentation and/or other materials provided with the distribution.
    ++# * Neither the name of Intel Corporation nor the names of its contributors
    ++# may be used to endorse or promote products derived from this software
    ++# without specific prior written permission.
    ++#
    ++# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    ++# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    ++# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    ++# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
    ++# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    ++# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    ++# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    ++# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    ++# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ++# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
    ++# THE POSSIBILITY OF SUCH DAMAGE.
    ++##############################################################################
    ++# Contents: Native C interface to LAPACK
    ++# Author: Intel Corporation
    ++# September, 2010
    ++##############################################################################
    ++# This is the make.inc example. The following settings are used:
    ++#
    ++# Compiler: gcc
    ++# Configuration file: turned off (default)
    ++# Complex types: C99 (default)
    ++# Name pattern: mixed case (default)
    ++# (64-bit) Data model: LP64 (default)
    ++#
    ++# Basic include options.
    ++# CC is the C compiler, normally invoked with options CFLAGS.
    ++# LINKER is the linker, invoked with LDFLAGS.
    ++#
    ++# If libraries lapack.a and blas.a are built with
    ++# - ifort, set: LINKER = ifort
    ++# LDFLAGS = -nofor-main
    ++# - gfortran, set: LINKER = gfortran
    ++#
    ++CC = gcc
    ++CFLAGS =
    ++LINKER = gfortran
    ++LDFLAGS =
    ++#
    ++# The name of the libraries to be created/linked to
    ++# Ensure that the libraries have the same data model (LP64/ILP64).
    ++#
    ++LAPACKE = lapacke.a
    ++LIBS = /Users/julie/Documents/Boulot/lapack-dev/lapack/trunk/lapack_LINUX.a \
    ++ /Users/julie/Documents/Boulot/lapack-dev/lapack/trunk/blas_LINUX.a -lm
    ++# The archiver and the flag(s) to use when building archive (library)
    ++# If your system has no ranlib, set RANLIB = echo.
    ++#
    ++ARCH = ar
    ++ARCHFLAGS = cr
    ++RANLIB = ranlib
    +
    +diff -ruN lapack-3.4.0.old/lapacke/src/Makefile lapack-3.4.0/lapacke/src/Makefile
    +--- lapack-3.4.0.old/lapacke/src/Makefile 2011-11-09 23:56:15 +0100
    ++++ lapack-3.4.0/lapacke/src/Makefile 2012-04-06 13:57:50 +0200
    +@@ -40,7 +40,8 @@
    + all: lib
    +
    + lib: $(OBJ_FILES)
    +- $(ARCH) $(ARCHFLAGS) ../$(LAPACKE) $(OBJ_FILES)
    ++ # http://hackage.haskell.org/trac/gtk2hs/ticket/1146
    ++ echo $(OBJ_FILES) | xargs --max-args=100 $(ARCH) $(ARCHFLAGS) ../$(LAPACKE)
    + $(RANLIB) ../$(LAPACKE)
    +
    + .c.o:
    --
    1.7.9.msysgit.0