@@ -73,32 +73,40 @@ function(ADD_WHISPER_COMPONENT COMPONENT LIB_TYPE SOURCE_DIR LIB_DIR)
7373 whisper_lib_paths (${COMPONENT} ${LIB_DIR} WHISPER_STATIC_LIB_PATH WHISPER_SHARED_LIB_PATH WHISPER_SHARED_MODULE_PATH )
7474 lib_name (${COMPONENT} WHISPER_COMPONENT_IMPORT_LIB )
7575
76- add_library (${COMPONENT} ${LIB_TYPE} IMPORTED )
77-
78- if (LIB_TYPE STREQUAL STATIC)
79- set_target_properties (${COMPONENT} PROPERTIES IMPORTED_LOCATION "${WHISPER_STATIC_LIB_PATH} " )
76+ if (APPLE AND (LIB_TYPE STREQUAL SHARED))
77+ target_link_libraries (${CMAKE_PROJECT_NAME } PRIVATE "${WHISPER_SHARED_LIB_PATH} " )
78+ target_sources (${CMAKE_PROJECT_NAME } PRIVATE "${WHISPER_SHARED_LIB_PATH} " )
79+ set_property (SOURCE "${WHISPER_SHARED_LIB_PATH} " PROPERTY MACOSX_PACKAGE_LOCATION Frameworks)
80+ source_group ("Frameworks" FILES "${WHISPER_SHARED_LIB_PATH} " )
81+ add_custom_command (
82+ TARGET "${CMAKE_PROJECT_NAME } "
83+ PRE_BUILD VERBATIM
84+ COMMAND /usr/bin/codesign --force --verify --verbose --sign "${CODESIGN_IDENTITY} " "${WHISPER_SHARED_LIB_PATH} " )
85+ message (STATUS "lib name: ${WHISPER_COMPONENT_IMPORT_LIB} " )
86+ if (${WHISPER_COMPONENT_IMPORT_LIB} STREQUAL whisper)
87+ set (DYLIB_NAME ${CMAKE_SHARED_LIBRARY_PREFIX }${WHISPER_COMPONENT_IMPORT_LIB} .1${CMAKE_SHARED_LIBRARY_SUFFIX } )
88+ else ()
89+ set (DYLIB_NAME ${CMAKE_SHARED_LIBRARY_PREFIX }${WHISPER_COMPONENT_IMPORT_LIB}${CMAKE_SHARED_LIBRARY_SUFFIX } )
90+ endif ()
91+ add_custom_command (
92+ TARGET "${CMAKE_PROJECT_NAME } "
93+ POST_BUILD
94+ COMMAND
95+ ${CMAKE_INSTALL_NAME_TOOL} -change "@rpath/${DYLIB_NAME} "
96+ "@loader_path/../Frameworks/${DYLIB_NAME} "
97+ $<TARGET_FILE :${CMAKE_PROJECT_NAME } >)
8098 else ()
81- if (APPLE )
82- add_custom_command (
83- TARGET "${CMAKE_PROJECT_NAME } "
84- PRE_BUILD VERBATIM
85- COMMAND /usr/bin/codesign --force --verify --verbose --sign "${CODESIGN_IDENTITY} " "${WHISPER_SHARED_LIB_PATH} " )
86- add_custom_command (
87- TARGET "${CMAKE_PROJECT_NAME } "
88- PRE_BUILD
89- COMMAND
90- ${CMAKE_INSTALL_NAME_TOOL} -id
91- "@rpath/${CMAKE_SHARED_LIBRARY_PREFIX }${WHISPER_COMPONENT_IMPORT_LIB}${CMAKE_SHARED_LIBRARY_SUFFIX } "
92- $<TARGET_FILE :${COMPONENT} >)
93- set_target_properties (${COMPONENT} PROPERTIES INSTALL_RPATH "@loader_path/../Frameworks" )
94- set_target_properties (${CMAKE_PROJECT_NAME } PROPERTIES INSTALL_RPATH "@loader_path/../Frameworks" )
99+ add_library (${COMPONENT} ${LIB_TYPE} IMPORTED )
100+
101+ if (LIB_TYPE STREQUAL STATIC)
102+ set_target_properties (${COMPONENT} PROPERTIES IMPORTED_LOCATION "${WHISPER_STATIC_LIB_PATH} " )
103+ else ()
104+ set_target_properties (${COMPONENT} PROPERTIES IMPORTED_LOCATION "${WHISPER_SHARED_LIB_PATH} " )
105+ set_target_properties (${COMPONENT} PROPERTIES IMPORTED_IMPLIB "${WHISPER_STATIC_LIB_PATH} " )
95106 endif ()
96- set_target_properties (${COMPONENT} PROPERTIES IMPORTED_LOCATION "${WHISPER_SHARED_LIB_PATH} " )
97- set_target_properties ( ${COMPONENT} PROPERTIES IMPORTED_IMPLIB " ${WHISPER_STATIC_LIB_PATH} " )
107+ set_target_properties (${COMPONENT} PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${SOURCE_DIR} /include " )
108+ target_link_libraries ( Whispercpp INTERFACE ${COMPONENT} )
98109 endif ()
99- set_target_properties (${COMPONENT} PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${SOURCE_DIR} /include" )
100- target_link_libraries (Whispercpp INTERFACE ${COMPONENT} )
101- # endif()
102110endfunction ()
103111
104112function (ADD_WHISPER_RUNTIME_MODULE COMPONENT SOURCE_DIR LIB_DIR )
0 commit comments