$NetBSD$
* use CMake findthreads instead of hardcoding -lpthread
* install pkg-config file on mac
* set the right libs in Libs.private
--- loader/CMakeLists.txt.orig	2020-12-01 20:50:08.000000000 +0000
+++ loader/CMakeLists.txt
@@ -21,6 +21,10 @@ include_directories(${CMAKE_CURRENT_SOUR
 include(CheckFunctionExists)
 include(CheckIncludeFile)
 
+set(CMAKE_THREAD_PREFER_PTHREAD ON)
+set(THREADS_PREFER_PTHREAD_FLAG ON)
+find_package(Threads REQUIRED)
+
 check_function_exists(secure_getenv HAVE_SECURE_GETENV)
 check_function_exists(__secure_getenv HAVE___SECURE_GETENV)
 if(NOT (HAVE_SECURE_GETENV OR HAVE__SECURE_GETENV))
@@ -259,7 +263,7 @@ else()
                                      "1"
                                      VERSION
                                      "${VulkanHeaders_VERSION_MAJOR}.${VulkanHeaders_VERSION_MINOR}.${VulkanHeaders_VERSION_PATCH}")
-    target_link_libraries(vulkan ${CMAKE_DL_LIBS} pthread m)
+    target_link_libraries(vulkan ${CMAKE_DL_LIBS} Threads::Threads m)
     target_link_libraries(vulkan Vulkan::Headers)
     if(APPLE)
         find_library(COREFOUNDATION_LIBRARY NAMES CoreFoundation)
@@ -289,7 +293,7 @@ else()
             add_library(vulkan-framework SHARED ${NORMAL_LOADER_SRCS} ${OPT_LOADER_SRCS} ${FRAMEWORK_HEADERS})
         endif()
         add_dependencies(vulkan-framework loader_asm_gen_files)
-        target_link_libraries(vulkan-framework -ldl -lpthread -lm "-framework CoreFoundation")
+        target_link_libraries(vulkan-framework -ldl Threads::Threads -lm "-framework CoreFoundation")
         target_link_libraries(vulkan-framework Vulkan::Headers)
 
         # The FRAMEWORK_VERSION needs to be "A" here so that Xcode code-signing works when a user adds their framework to an Xcode
@@ -323,9 +327,12 @@ endif()
 include(FindPkgConfig QUIET)
 if(PKG_CONFIG_FOUND)
     set(VK_API_VERSION "${VulkanHeaders_VERSION_MAJOR}.${VulkanHeaders_VERSION_MINOR}.${VulkanHeaders_VERSION_PATCH}")
-    foreach(LIB ${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES} ${PLATFORM_LIBS})
-        set(PRIVATE_LIBS "${PRIVATE_LIBS} -l${LIB}")
+    foreach(LIB ${CMAKE_C_IMPLICIT_LINK_LIBRARIES} ${PLATFORM_LIBS} ${CMAKE_DL_LIBS} m)
+        list(APPEND PRIVATE_LIBS_LIST "-l${LIB}")
     endforeach()
+    list(APPEND PRIVATE_LIBS_LIST "${CMAKE_THREAD_LIBS_INIT}")
+    list(REMOVE_DUPLICATES PRIVATE_LIBS_LIST)
+    list(JOIN PRIVATE_LIBS_LIST " " PRIVATE_LIBS)
     if(WIN32)
         set(LIB_SUFFIX "-1")
     endif ()
