@@ -78,14 +78,14 @@ set(SYMBOLPREFIX "" CACHE STRING "Add a prefix to all exported symbol names in
78
78
79
79
set (SYMBOLSUFFIX "" CACHE STRING "Add a suffix to all exported symbol names in the shared library, e.g. _64 for INTERFACE64 builds" )
80
80
81
- if (CMAKE_SYSTEM_NAME MATCHES "Windows" AND BUILD_SHARED_LIBS AND NOT ("${SYMBOLPREFIX}${SYMBOLSUFFIX} " STREQUAL "" ))
82
- set (DELETE_STATIC_LIBS "" )
83
- if (NOT BUILD_STATIC_LIBS )
84
- message (STATUS "forcing build of a temporary static library for symbol renaming" )
85
- set (BUILD_SHARED_LIBS OFF CACHE BOOL "Build shared library" FORCE )
86
- set (BUILD_STATIC_LIBS ON CACHE BOOL "Build static library" FORCE )
87
- set (DELETE_STATIC_LIBS file (REMOVE $< TARGET_FILE_DIR:${OpenBLAS_LIBNAME} _static> /${OpenBLAS_LIBNAME}.lib ))
88
- endif ()
81
+ if (MSVC AND BUILD_SHARED_LIBS AND NOT ("${SYMBOLPREFIX}${SYMBOLSUFFIX} " STREQUAL "" ))
82
+ set (DELETE_STATIC_LIBS "" )
83
+ if (NOT BUILD_STATIC_LIBS )
84
+ message (STATUS "forcing build of a temporary static library for symbol renaming" )
85
+ set (BUILD_SHARED_LIBS OFF CACHE BOOL "Build shared library" FORCE )
86
+ set (BUILD_STATIC_LIBS ON CACHE BOOL "Build static library" FORCE )
87
+ set (DELETE_STATIC_LIBS file (REMOVE $< TARGET_FILE_DIR:${OpenBLAS_LIBNAME} _static> /${OpenBLAS_LIBNAME}.lib ))
88
+ endif ()
89
89
endif ()
90
90
91
91
@@ -519,43 +519,43 @@ if (BUILD_SHARED_LIBS OR DELETE_STATIC_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFFI
519
519
set (BZ 0 )
520
520
endif ()
521
521
522
- if (CMAKE_SYSTEM_NAME MATCHES "Windows" )
523
- set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} /lib )
524
- set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} /lib )
525
- if (CMAKE_BUILD_TYPE MATCHES "Debug" )
526
- set (CRTLIB msvcrtd )
527
- set (PDBOPT -debug -pdb:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.pdb )
528
- set (PDB_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} /lib )
529
- else ()
530
- set (CRTLIB msvcrt )
531
- set (PDBOPT "" )
532
- endif ()
533
- #if (USE_PERL)
534
- message (STATUS "adding postbuild instruction to rename syms" )
535
- add_custom_command (TARGET ${OpenBLAS_LIBNAME} _static POST_BUILD
536
- COMMAND perl ${PROJECT_SOURCE_DIR} /exports/gensymbol.pl "win2k" "${ARCH} " "${BU} " "${EXPRECISION_IN} " "${NO_CBLAS_IN} " "${NO_LAPACK_IN} " "${NO_LAPACKE_IN} " "${NEED2UNDERSCORES_IN} " "${ONLY_CBLAS_IN} " "${SYMBOLPREFIX} " "${SYMBOLSUFFIX} " "${BLD} " "${BBF16} " "${BS} " "${BD} " "${BC} " "${BZ} " > ${PROJECT_BINARY_DIR} /renamesyms.def
537
- COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_FLAGS} -I${PROJECT_SOURCE_DIR} -I${PROJECT_BINARY_DIR} -c -o ${PROJECT_BINARY_DIR} /dllinit.o ${PROJECT_SOURCE_DIR} /exports/dllinit.c
538
- COMMAND lld-link -nodefaultlib:libcmt -defaultlib:${CRTLIB} ${CMAKE_LINKER_FLAGS} -errorlimit:0 -def:${PROJECT_BINARY_DIR}/renamesyms.def ${PROJECT_BINARY_DIR} /dllinit.o $< TARGET_FILE:${OpenBLAS_LIBNAME} _static> -wholearchive:$<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -dll -out:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll -implib:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll.a ${PDBOPT}
539
- #COMMAND lld-link -nodefaultlib:libcmt -defaultlib:msvcrt ${CMAKE_LINKER_FLAGS} -errorlimit:0 -def:${PROJECT_BINARY_DIR}/renamesyms.def ${PROJECT_BINARY_DIR}/dllinit.o $<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -wholearchive:$<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -dll -out:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll -implib:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll.a
540
- ${REMOVE_STATIC_LIB} VERBATIM
541
- )
542
- #endif ()
522
+ if (MSVC )
523
+ set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} /lib )
524
+ set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} /lib )
525
+ if (CMAKE_BUILD_TYPE MATCHES "Debug" )
526
+ set (CRTLIB msvcrtd )
527
+ set (PDBOPT -debug -pdb:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.pdb )
528
+ set (PDB_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} /lib )
529
+ else ()
530
+ set (CRTLIB msvcrt )
531
+ set (PDBOPT "" )
532
+ endif ()
533
+ #if (USE_PERL)
534
+ message (STATUS "adding postbuild instruction to rename syms" )
535
+ add_custom_command (TARGET ${OpenBLAS_LIBNAME} _static POST_BUILD
536
+ COMMAND perl ${PROJECT_SOURCE_DIR} /exports/gensymbol.pl "win2k" "${ARCH} " "${BU} " "${EXPRECISION_IN} " "${NO_CBLAS_IN} " "${NO_LAPACK_IN} " "${NO_LAPACKE_IN} " "${NEED2UNDERSCORES_IN} " "${ONLY_CBLAS_IN} " "${SYMBOLPREFIX} " "${SYMBOLSUFFIX} " "${BLD} " "${BBF16} " "${BS} " "${BD} " "${BC} " "${BZ} " > ${PROJECT_BINARY_DIR} /renamesyms.def
537
+ COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_FLAGS} -I${PROJECT_SOURCE_DIR} -I${PROJECT_BINARY_DIR} -c -o ${PROJECT_BINARY_DIR} /dllinit.o ${PROJECT_SOURCE_DIR} /exports/dllinit.c
538
+ COMMAND lld-link -nodefaultlib:libcmt -defaultlib:${CRTLIB} ${CMAKE_LINKER_FLAGS} -errorlimit:0 -def:${PROJECT_BINARY_DIR}/renamesyms.def ${PROJECT_BINARY_DIR} /dllinit.o $< TARGET_FILE:${OpenBLAS_LIBNAME} _static> -wholearchive:$<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -dll -out:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll -implib:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll.a ${PDBOPT}
539
+ #COMMAND lld-link -nodefaultlib:libcmt -defaultlib:msvcrt ${CMAKE_LINKER_FLAGS} -errorlimit:0 -def:${PROJECT_BINARY_DIR}/renamesyms.def ${PROJECT_BINARY_DIR}/dllinit.o $<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -wholearchive:$<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -dll -out:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll -implib:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll.a
540
+ ${REMOVE_STATIC_LIB} VERBATIM
541
+ )
542
+ #endif ()
543
543
else ()
544
- if (NOT USE_PERL )
545
- add_custom_command (TARGET ${OpenBLAS_LIBNAME} _shared POST_BUILD
546
- COMMAND sh ${PROJECT_SOURCE_DIR} /exports/gensymbol "objcopy" "${ARCH} " "${BU} " "${EXPRECISION_IN} " "${NO_CBLAS_IN} " "${NO_LAPACK_IN} " "${NO_LAPACKE_IN} " "${NEED2UNDERSCORES_IN} " "${ONLY_CBLAS_IN} " \"${SYMBOLPREFIX} \" \" ${SYMBOLSUFFIX} \" " ${BLD} " " ${BBF16} " " ${BS} " " ${BD} " " ${BC} " " ${BZ} " > ${PROJECT_BINARY_DIR} /objcopy.def
547
- COMMAND objcopy --redefine-syms ${PROJECT_BINARY_DIR} /objcopy.def ${PROJECT_BINARY_DIR} /lib/${OpenBLAS_LIBNAME} .so
548
- COMMENT " renaming symbols "
549
- )
550
- else()
551
- add_custom_command(TARGET ${OpenBLAS_LIBNAME} _shared POST_BUILD
552
- COMMAND perl ${PROJECT_SOURCE_DIR} /exports/gensymbol.pl " objcopy " " ${ARCH} " " ${BU} " " ${EXPRECISION_IN} " " ${NO_CBLAS_IN} " " ${NO_LAPACK_IN} " " ${NO_LAPACKE_IN} " " ${NEED2UNDERSCORES_IN} " " ${ONLY_CBLAS_IN} " \" ${SYMBOLPREFIX} \" \" ${SYMBOLSUFFIX} \" " ${BLD} " " ${BBF16} " " ${BS} " " ${BD} " " ${BC} " " ${BZ} " > ${PROJECT_BINARY_DIR} /objcopy.def
553
- COMMAND objcopy --redefine-syms ${PROJECT_BINARY_DIR} /objcopy.def ${PROJECT_BINARY_DIR} /lib/lib${OpenBLAS_LIBNAME} .so
554
- COMMENT " renaming symbols "
555
- )
544
+ if (NOT USE_PERL )
545
+ add_custom_command (TARGET ${OpenBLAS_LIBNAME} _shared POST_BUILD
546
+ COMMAND sh ${PROJECT_SOURCE_DIR} /exports/gensymbol "objcopy" "${ARCH} " "${BU} " "${EXPRECISION_IN} " "${NO_CBLAS_IN} " "${NO_LAPACK_IN} " "${NO_LAPACKE_IN} " "${NEED2UNDERSCORES_IN} " "${ONLY_CBLAS_IN} " \"${SYMBOLPREFIX} \" \" ${SYMBOLSUFFIX} \" " ${BLD} " " ${BBF16} " " ${BS} " " ${BD} " " ${BC} " " ${BZ} " > ${PROJECT_BINARY_DIR} /objcopy.def
547
+ COMMAND objcopy --redefine-syms ${PROJECT_BINARY_DIR} /objcopy.def ${PROJECT_BINARY_DIR} /lib/${OpenBLAS_LIBNAME} .so
548
+ COMMENT " renaming symbols "
549
+ )
550
+ else()
551
+ add_custom_command(TARGET ${OpenBLAS_LIBNAME} _shared POST_BUILD
552
+ COMMAND perl ${PROJECT_SOURCE_DIR} /exports/gensymbol.pl " objcopy " " ${ARCH} " " ${BU} " " ${EXPRECISION_IN} " " ${NO_CBLAS_IN} " " ${NO_LAPACK_IN} " " ${NO_LAPACKE_IN} " " ${NEED2UNDERSCORES_IN} " " ${ONLY_CBLAS_IN} " \" ${SYMBOLPREFIX} \" \" ${SYMBOLSUFFIX} \" " ${BLD} " " ${BBF16} " " ${BS} " " ${BD} " " ${BC} " " ${BZ} " > ${PROJECT_BINARY_DIR} /objcopy.def
553
+ COMMAND objcopy --redefine-syms ${PROJECT_BINARY_DIR} /objcopy.def ${PROJECT_BINARY_DIR} /lib/lib${OpenBLAS_LIBNAME} .so
554
+ COMMENT " renaming symbols "
555
+ )
556
+ endif()
556
557
endif()
557
558
endif()
558
- endif()
559
559
560
560
if (BUILD_BENCHMARKS)
561
561
#find_package(OpenMP REQUIRED)
0 commit comments