fix.patch 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. diff --git a/CMakeLists.txt b/CMakeLists.txt
  2. index a6cbcbc..aa7bf4a 100644
  3. --- a/CMakeLists.txt
  4. +++ b/CMakeLists.txt
  5. @@ -217,38 +217,40 @@ endif()
  6. message(STATUS "CMAKE_SYSTEM_PROCESSOR: ${CMAKE_SYSTEM_PROCESSOR}")
  7. -if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64")
  8. - message(STATUS "ARM detected")
  9. -else()
  10. - message(STATUS "x86 detected")
  11. - if (MSVC)
  12. - if(NOT WHISPER_NO_AVX2)
  13. - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX2")
  14. - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /arch:AVX2")
  15. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:AVX2")
  16. +if (NOT ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "")
  17. + if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64")
  18. + message(STATUS "ARM detected")
  19. + else()
  20. + message(STATUS "x86 detected")
  21. + if (MSVC)
  22. + if(NOT WHISPER_NO_AVX2)
  23. + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX2")
  24. + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /arch:AVX2")
  25. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:AVX2")
  26. + else()
  27. + if(NOT WHISPER_NO_AVX)
  28. + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX")
  29. + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /arch:AVX")
  30. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:AVX")
  31. + endif()
  32. + endif()
  33. + else()
  34. + if (EMSCRIPTEN)
  35. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread")
  36. + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
  37. else()
  38. if(NOT WHISPER_NO_AVX)
  39. - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX")
  40. - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /arch:AVX")
  41. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:AVX")
  42. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx")
  43. + endif()
  44. + if(NOT WHISPER_NO_AVX2)
  45. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx2")
  46. + endif()
  47. + if(NOT WHISPER_NO_FMA)
  48. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfma")
  49. + endif()
  50. + if(NOT WHISPER_NO_F16C)
  51. + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mf16c")
  52. endif()
  53. - endif()
  54. - else()
  55. - if (EMSCRIPTEN)
  56. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread")
  57. - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
  58. - else()
  59. - if(NOT WHISPER_NO_AVX)
  60. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx")
  61. - endif()
  62. - if(NOT WHISPER_NO_AVX2)
  63. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx2")
  64. - endif()
  65. - if(NOT WHISPER_NO_FMA)
  66. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfma")
  67. - endif()
  68. - if(NOT WHISPER_NO_F16C)
  69. - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mf16c")
  70. endif()
  71. endif()
  72. endif()
  73. @@ -352,7 +354,7 @@ set_target_properties(${TARGET} PROPERTIES PUBLIC_HEADER "whisper.h")
  74. install(TARGETS ${TARGET}
  75. LIBRARY DESTINATION lib
  76. - ARCHIVE DESTINATION lib/static
  77. + ARCHIVE DESTINATION lib
  78. RUNTIME DESTINATION bin
  79. PUBLIC_HEADER DESTINATION include
  80. )