diff --git a/cmake/whisper-config.cmake.in b/cmake/whisper-config.cmake.in
index b70c1e5a..aea19444 100644
--- a/cmake/whisper-config.cmake.in
+++ b/cmake/whisper-config.cmake.in
@@ -6,8 +6,9 @@ set(WHISPER_SHARED_LIB   @BUILD_SHARED_LIBS@)
 @PACKAGE_INIT@
 
 set_and_check(WHISPER_INCLUDE_DIR "@PACKAGE_WHISPER_INCLUDE_INSTALL_DIR@")
-set_and_check(WHISPER_LIB_DIR     "@PACKAGE_WHISPER_LIB_INSTALL_DIR@")
-set_and_check(WHISPER_BIN_DIR     "@PACKAGE_WHISPER_BIN_INSTALL_DIR@")
+# In vcpkg, the following would be subject to vcpkg build type.
+# set_and_check(WHISPER_LIB_DIR     "@PACKAGE_WHISPER_LIB_INSTALL_DIR@")
+# set_and_check(WHISPER_BIN_DIR     "@PACKAGE_WHISPER_BIN_INSTALL_DIR@")
 
 find_package(ggml REQUIRED HINTS ${LLAMA_LIB_DIR}/cmake)
 
@@ -17,6 +18,12 @@ find_library(whisper_LIBRARY whisper
     NO_CMAKE_FIND_ROOT_PATH
 )
 
+if(NOT TARGET whisper)
+if(NOT "@BUILD_SHARED_LIBS@")
+    include(CMakeFindDependencyMacro)
+    find_dependency(ggml)
+    list(APPEND _whisper_link_deps ggml::ggml)
+endif()
 add_library(whisper UNKNOWN IMPORTED)
 set_target_properties(whisper
     PROPERTIES
@@ -26,5 +33,6 @@ set_target_properties(whisper
         IMPORTED_LOCATION "${whisper_LIBRARY}"
         INTERFACE_COMPILE_FEATURES cxx_std_11
         POSITION_INDEPENDENT_CODE ON )
+endif()
 
 check_required_components(whisper)
