diff --git a/packaging/CMakeLists.txt b/packaging/CMakeLists.txt
index cc26de3459852dce9b723e957311b06e5c8a70d3..ce2d5eff67f74b2000a30bb4741df194b02d3e7f 100644
--- a/packaging/CMakeLists.txt
+++ b/packaging/CMakeLists.txt
@@ -49,10 +49,10 @@ write_basic_package_version_file(
 
 file(READ "../cmake/HandlePolicies.cmake" HANDLE_POLICIES_SCRIPT OFFSET 1128)
 
-configure_file(
+configure_package_config_file(
     "LoadStaticSharedTargetsConfig.cmake.in"
     "${CMAKE_CURRENT_BINARY_DIR}/LoadStaticSharedTargetsConfig.cmake"
-    @ONLY
+    INSTALL_DESTINATION "${LoadStaticSharedTargets_INSTALL_CMAKEDIR}"
 )
 
 install(
diff --git a/packaging/LoadStaticSharedTargetsConfig.cmake.in b/packaging/LoadStaticSharedTargetsConfig.cmake.in
index fe5ff22c2ec2f005b664b9d1ec9a2e350bc84d2a..cf0a8f67203264d95a3f7109ce84cd9ebc59092e 100644
--- a/packaging/LoadStaticSharedTargetsConfig.cmake.in
+++ b/packaging/LoadStaticSharedTargetsConfig.cmake.in
@@ -23,6 +23,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.
 ]]
 
+@PACKAGE_INIT@
+
 cmake_minimum_required(VERSION @CMAKE_MINIMUM_REQUIRED_VERSION@)
 
 set(CMAKE_MAXIMUM_SUPPORTED_VERSION @CMAKE_MAXIMUM_SUPPORTED_VERSION@)
@@ -33,3 +35,5 @@ set(CMAKE_MAXIMUM_SUPPORTED_VERSION @CMAKE_MAXIMUM_SUPPORTED_VERSION@)
 
 # include(LoadStaticSharedTargets) should work after this
 list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
+
+check_required_components(LoadStaticSharedTargets)