summary refs log tree commit diff
path: root/pkgs/development/libraries/c-ares/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/c-ares/default.nix')
-rw-r--r--pkgs/development/libraries/c-ares/default.nix29
1 files changed, 27 insertions, 2 deletions
diff --git a/pkgs/development/libraries/c-ares/default.nix b/pkgs/development/libraries/c-ares/default.nix
index 14ff7a5f16c3..6b3b69f99971 100644
--- a/pkgs/development/libraries/c-ares/default.nix
+++ b/pkgs/development/libraries/c-ares/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, writeTextDir }:
 
+let self =
 stdenv.mkDerivation rec {
   name = "c-ares-1.13.0";
 
@@ -14,4 +15,28 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     platforms = platforms.all;
   };
-}
+
+  # Adapted from running a cmake build
+  passthru.cmake-config = writeTextDir "c-ares-config.cmake"
+    ''
+      set(c-ares_INCLUDE_DIR "${self}/include")
+
+      set(c-ares_LIBRARY c-ares::cares)
+
+      add_library(c-ares::cares SHARED IMPORTED)
+
+      set_target_properties(c-ares::cares PROPERTIES
+        INTERFACE_INCLUDE_DIRECTORIES "${self}/include"
+        INTERFACE_LINK_LIBRARIES "nsl;rt"
+      )
+      set_property(TARGET c-ares::cares APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+      set_target_properties(c-ares::cares PROPERTIES
+        IMPORTED_LOCATION_RELEASE "${self}/lib/libcares.so.2.2.0"
+        IMPORTED_SONAME_RELEASE "libcares.so.2"
+        )
+      add_library(c-ares::cares_shared INTERFACE IMPORTED)
+      set_target_properties(c-ares::cares_shared PROPERTIES INTERFACE_LINK_LIBRARIES "c-ares::cares")
+      set(c-ares_SHARED_LIBRARY c-ares::cares_shared)
+    '';
+
+}; in self