diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3931f12..b570fa8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -909,6 +909,12 @@ endif()
 # Create an export file that CMake users can include() to import our targets.
 if(NOT SKIP_INSTALL_EXPORT AND NOT SKIP_INSTALL_ALL)
   install(EXPORT libpng DESTINATION lib/libpng FILE lib${PNG_LIB_NAME}.cmake)
+  file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/libpng-config.cmake" "
+include(CMakeFindDependencyMacro)
+find_dependency(ZLIB)
+include(\"\${CMAKE_CURRENT_LIST_DIR}/lib${PNG_LIB_NAME}.cmake\")
+")
+  install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libpng-config.cmake" DESTINATION "${CMAKE_INSTALL_LIBDIR}/libpng")
 endif()
 
 # what's with libpng-manual.txt and all the extra files?
