diff --git a/CMakeLists.txt b/CMakeLists.txt
index d4163a0..4e2a312 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -267,6 +267,14 @@ set (SZIP_VERSION_MAJOR  ${SZIP_PACKAGE_VERSION_MAJOR})
 set (SZIP_VERSION_MINOR  ${SZIP_PACKAGE_VERSION_MINOR})
 
 #-----------------------------------------------------------------------------
+# Set default component
+#-----------------------------------------------------------------------------
+set (SZIP_DEFAULT_COMPONENT static)
+if (BUILD_SHARED_LIBS)
+  set (SZIP_DEFAULT_COMPONENT shared)
+endif ()
+
+#-----------------------------------------------------------------------------
 # Configure the szip-config.cmake file for the build directory
 #-----------------------------------------------------------------------------
 set(INCLUDE_INSTALL_DIR ${SZIP_INSTALL_INCLUDE_DIR} )
diff --git a/config/cmake/szip-config.cmake.in b/config/cmake/szip-config.cmake.in
index 4a7fec7..ad54287 100644
--- a/config/cmake/szip-config.cmake.in
+++ b/config/cmake/szip-config.cmake.in
@@ -37,10 +37,10 @@ if (NOT TARGET "@SZIP_PACKAGE@")
   include (@PACKAGE_SHARE_INSTALL_DIR@/@SZIP_PACKAGE@@HDF_PACKAGE_EXT@-targets.cmake)
 endif ()
 
-# Handle default component(static) :
+# Handle default component(@SZIP_DEFAULT_COMPONENT@) :
 if (NOT ${SZIP_PACKAGE_NAME}_FIND_COMPONENTS)
-    set (${SZIP_PACKAGE_NAME}_FIND_COMPONENTS static)
-    set (${SZIP_PACKAGE_NAME}_FIND_REQUIRED_static true)
+    set (${SZIP_PACKAGE_NAME}_FIND_COMPONENTS @SZIP_DEFAULT_COMPONENT@)
+    set (${SZIP_PACKAGE_NAME}_FIND_REQUIRED_@SZIP_DEFAULT_COMPONENT@ true)
 endif ()
 
 # Handle requested components:
