diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libhv')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libhv/default.nix | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libhv/default.nix b/nixpkgs/pkgs/development/libraries/libhv/default.nix new file mode 100644 index 000000000000..e48b836b7cd7 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libhv/default.nix @@ -0,0 +1,44 @@ +{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, curl, openssl, Security }: + +stdenv.mkDerivation (finalAttrs: { + pname = "libhv"; + version = "1.3.2"; + + src = fetchFromGitHub { + owner = "ithewei"; + repo = "libhv"; + rev = "v${finalAttrs.version}"; + hash = "sha256-tVuQwj2HvAhp51urGCuNPjBEIaTu9yR031Ih/5or9Pk="; + }; + + patches = [ + # Fix build failure on gcc-13: + # https://github.com/ithewei/libhv/pull/490 + (fetchpatch { + name = "gcc-13.patch"; + url = "https://github.com/ithewei/libhv/commit/b3e61519fbdbbb956fed275c0a849ba5d4d6e45c.patch"; + hash = "sha256-fuYI+B3qZkSAbLZc0p6/0fnqaHx6w9N9vhTEE2t6UUs="; + }) + ]; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ curl openssl ] ++ lib.optional stdenv.isDarwin Security; + + cmakeFlags = [ + "-DENABLE_UDS=ON" + "-DWITH_MQTT=ON" + "-DWITH_CURL=ON" + "-DWITH_NGHTTP2=ON" + "-DWITH_OPENSSL=ON" + "-DWITH_KCP=ON" + ]; + + meta = with lib; { + description = "A c/c++ network library for developing TCP/UDP/SSL/HTTP/WebSocket/MQTT client/server"; + homepage = "https://github.com/ithewei/libhv"; + license = licenses.bsd3; + maintainers = with maintainers; [ sikmir ]; + platforms = platforms.unix; + }; +}) |