| @@ -152,14 +152,15 @@ if(MSVC AND BUILD_SHARED_LIBS) | |||
| if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} LESS 3.4) | |||
| include("${PROJECT_SOURCE_DIR}/cmake/export.cmake") | |||
| else() | |||
| # Creates verbose .def file (51KB vs 18KB) | |||
| set_target_properties(${OpenBLAS_LIBNAME} PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS true) | |||
| endif() | |||
| endif() | |||
| # Set output for libopenblas | |||
| set_target_properties( ${OpenBLAS_LIBNAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) | |||
| set_target_properties( ${OpenBLAS_LIBNAME} PROPERTIES LIBRARY_OUTPUT_NAME_DEBUG "${OpenBLAS_LIBNAME}_d") | |||
| # Creates verbose .def file (51KB vs 18KB) | |||
| set_target_properties( ${OpenBLAS_LIBNAME} PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE) | |||
| foreach (OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES}) | |||
| string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG ) | |||
| @@ -24,23 +24,32 @@ skip_commits: | |||
| message: /\[av skip\]/ | |||
| environment: | |||
| global: | |||
| CONDA_INSTALL_LOCN: C:\\Miniconda36-x64 | |||
| matrix: | |||
| - COMPILER: clang-cl | |||
| DYNAMIC_ARCH: ON | |||
| WITH_FORTRAN: yes | |||
| - COMPILER: clang-cl | |||
| DYNAMIC_ARCH: ON | |||
| WITH_FORTRAN: no | |||
| - COMPILER: cl | |||
| install: | |||
| - if [%COMPILER%]==[clang-cl] call C:\Miniconda36-x64\Scripts\activate.bat | |||
| - if [%COMPILER%]==[clang-cl] call %CONDA_INSTALL_LOCN%\Scripts\activate.bat | |||
| - if [%COMPILER%]==[clang-cl] conda config --add channels conda-forge --force | |||
| - if [%COMPILER%]==[clang-cl] conda install --yes clangdev ninja cmake | |||
| - if [%WITH_FORTRAN%]==[yes] conda config --add channels isuruf/label/flang --force | |||
| - if [%COMPILER%]==[clang-cl] conda install --yes --quiet clangdev ninja cmake | |||
| - if [%WITH_FORTRAN%]==[yes] conda install --yes --quiet flangdev clangdev cmake | |||
| - if [%COMPILER%]==[clang-cl] call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 | |||
| - if [%COMPILER%]==[clang-cl] set "LIB=%CONDA_INSTALL_LOCN%\Library\lib;%LIB%" | |||
| - if [%COMPILER%]==[clang-cl] set "CPATH=%CONDA_INSTALL_LOCN%\Library\include;%CPATH%" | |||
| before_build: | |||
| - echo Running cmake... | |||
| - cd c:\projects\OpenBLAS | |||
| - if [%COMPILER%]==[cl] cmake -G "Visual Studio 12 Win64" . | |||
| - if [%COMPILER%]==[clang-cl] cmake -G "Ninja" -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl . | |||
| - if [%WITH_FORTRAN%]==[no] cmake -G "Ninja" -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl . | |||
| - if [%WITH_FORTRAN%]==[yes] cmake -G "NMake Makefiles" -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl -DCMAKE_Fortran_COMPILER=flang -DBUILD_WITHOUT_LAPACK=no -DNOFORTRAN=0 . | |||
| - if [%DYNAMIC_ARCH%]==[ON] cmake -DDYNAMIC_ARCH=ON . | |||
| build_script: | |||
| @@ -20,12 +20,6 @@ | |||
| # NEEDBUNDERSCORE | |||
| # NEED2UNDERSCORES | |||
| if (MSVC) | |||
| # had to do this for MSVC, else CMake automatically assumes I have ifort... -hpa | |||
| include(CMakeForceCompiler) | |||
| CMAKE_FORCE_Fortran_COMPILER(gfortran GNU) | |||
| endif () | |||
| if (NOT NO_LAPACK) | |||
| enable_language(Fortran) | |||
| else() | |||
| @@ -38,7 +32,6 @@ if (NOT ONLY_CBLAS) | |||
| # TODO: detect whether underscore needed, set #defines and BU appropriately - use try_compile | |||
| # TODO: set FEXTRALIB flags a la f_check? | |||
| set(BU "_") | |||
| file(APPEND ${TARGET_CONF_TEMP} | |||
| "#define BUNDERSCORE _\n" | |||
| @@ -132,7 +132,9 @@ set(CLASRC | |||
| DEPRECATED/cgegs.f DEPRECATED/cgegv.f cgehd2.f cgehrd.f cgelq2.f cgelqf.f | |||
| cgels.f cgelsd.f cgelss.f DEPRECATED/cgelsx.f cgelsy.f cgeql2.f cgeqlf.f cgeqp3.f | |||
| DEPRECATED/cgeqpf.f cgeqr2.f cgeqr2p.f cgeqrf.f cgeqrfp.f cgerfs.f | |||
| cgerq2.f cgerqf.f cgesc2.f cgesdd.f cgesvd.f | |||
| cgerq2.f cgerqf.f cgesc2.f cgesdd.f cgesvd.f cgejsv.f cgesvdx.f cgesvj.f | |||
| cgetrf2.f cgges3.f cggev3.f cgghd3.f cggsvd3.f cggsvp3.f cpotrf2.f csysv_aa.f | |||
| csytrs_aa.f cgsvj0.f cgsvj1.f cunm22.f csytrf_aa.f clasyf_aa.f | |||
| cgesvx.f cgetc2.f cgetri.f | |||
| cggbak.f cggbal.f cgges.f cggesx.f cggev.f cggevx.f cggglm.f | |||
| cgghrd.f cgglse.f cggqrf.f cggrqf.f | |||
| @@ -362,6 +364,26 @@ set(ZLASRC | |||
| zlarfy.f | |||
| ) | |||
| set(SCATGEN slatm1.f slaran.f slarnd.f) | |||
| set(SMATGEN slatms.f slatme.f slatmr.f slatmt.f | |||
| slagge.f slagsy.f slakf2.f slarge.f slaror.f slarot.f slatm2.f | |||
| slatm3.f slatm5.f slatm6.f slatm7.f slahilb.f) | |||
| set(CMATGEN clatms.f clatme.f clatmr.f clatmt.f | |||
| clagge.f claghe.f clagsy.f clakf2.f clarge.f claror.f clarot.f | |||
| clatm1.f clarnd.f clatm2.f clatm3.f clatm5.f clatm6.f clahilb.f slatm7.f) | |||
| set(DZATGEN dlatm1.f dlaran.f dlarnd.f) | |||
| set(DMATGEN dlatms.f dlatme.f dlatmr.f dlatmt.f | |||
| dlagge.f dlagsy.f dlakf2.f dlarge.f dlaror.f dlarot.f dlatm2.f | |||
| dlatm3.f dlatm5.f dlatm6.f dlatm7.f dlahilb.f) | |||
| set(ZMATGEN zlatms.f zlatme.f zlatmr.f zlatmt.f | |||
| zlagge.f zlaghe.f zlagsy.f zlakf2.f zlarge.f zlaror.f zlarot.f | |||
| zlatm1.f zlarnd.f zlatm2.f zlatm3.f zlatm5.f zlatm6.f zlahilb.f dlatm7.f) | |||
| set(LA_REL_SRC ${ALLAUX}) | |||
| if (BUILD_SINGLE) | |||
| list(APPEND LA_REL_SRC ${SLASRC} ${DSLASRC} ${SCLAUX}) | |||
| @@ -379,9 +401,27 @@ if (BUILD_COMPLEX16) | |||
| list(APPEND LA_REL_SRC ${ZLASRC} ${ZCLASRC} ${DZLAUX}) | |||
| endif () | |||
| set(MATGEN_SRC "") | |||
| if(BUILD_SINGLE) | |||
| list(APPEND MATGEN_SRC ${SMATGEN} ${SCATGEN}) | |||
| endif() | |||
| if(BUILD_DOUBLE) | |||
| list(APPEND MATGEN_SRC ${ALLOBJ} ${DMATGEN} ${DZATGEN}) | |||
| endif() | |||
| if(BUILD_COMPLEX) | |||
| list(APPEND MATGEN_SRC ${ALLOBJ} ${CMATGEN} ${SCATGEN}) | |||
| endif() | |||
| if(BUILD_COMPLEX16) | |||
| list(APPEND MATGEN_SRC ${ALLOBJ} ${ZMATGEN} ${DZATGEN}) | |||
| endif() | |||
| # add lapack-netlib folder to the sources | |||
| set(LA_SOURCES "") | |||
| foreach (LA_FILE ${LA_REL_SRC}) | |||
| list(APPEND LA_SOURCES "${NETLIB_LAPACK_DIR}/SRC/${LA_FILE}") | |||
| endforeach () | |||
| foreach (LA_FILE ${MATGEN_SRC}) | |||
| list(APPEND LA_SOURCES "${NETLIB_LAPACK_DIR}/TESTING/MATGEN/${LA_FILE}") | |||
| endforeach () | |||
| set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS}") | |||
| @@ -1,5 +1,5 @@ | |||
| set(C_SRC | |||
| set(CSRC | |||
| lapacke_cbbcsd.c | |||
| lapacke_cbbcsd_work.c | |||
| lapacke_cbdsqr.c | |||
| @@ -1839,6 +1839,12 @@ set(ZSRC | |||
| lapacke_zhbevd_work.c | |||
| lapacke_zhbevx.c | |||
| lapacke_zhbevx_work.c | |||
| lapacke_zhbev_2stage.c | |||
| lapacke_zhbev_2stage_work.c | |||
| lapacke_zhbevd_2stage.c | |||
| lapacke_zhbevd_2stage_work.c | |||
| lapacke_zhbevx_2stage.c | |||
| lapacke_zhbevx_2stage_work.c | |||
| lapacke_zhbgst.c | |||
| lapacke_zhbgst_work.c | |||
| lapacke_zhbgv.c | |||
| @@ -2363,7 +2369,7 @@ lapacke_dpb_nancheck.c lapacke_sst_nancheck.c | |||
| lapacke_dpb_trans.c lapacke_ssy_nancheck.c | |||
| ) | |||
| set(LAPACKE_REL_SRC "") | |||
| set(LAPACKE_REL_SRC "${MATGEN}") | |||
| if (BUILD_SINGLE) | |||
| list(APPEND LAPACKE_REL_SRC ${SSRC}) | |||
| endif () | |||