diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libmicrohttpd')
4 files changed, 79 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.69.nix b/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.69.nix new file mode 100644 index 000000000000..866658c224f3 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.69.nix @@ -0,0 +1,10 @@ +{ callPackage, fetchurl }: + +callPackage ./generic.nix ( rec { + version = "0.9.69"; + + src = fetchurl { + url = "mirror://gnu/libmicrohttpd/libmicrohttpd-${version}.tar.gz"; + sha256 = "sha256-+5trFIt4dJPmN9MINYhxHmXLy3JvoCzuLNVDxd4n434="; + }; +}) diff --git a/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.71.nix b/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.71.nix new file mode 100644 index 000000000000..7e60f8c72726 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.71.nix @@ -0,0 +1,10 @@ +{ callPackage, fetchurl }: + +callPackage ./generic.nix ( rec { + version = "0.9.71"; + + src = fetchurl { + url = "mirror://gnu/libmicrohttpd/libmicrohttpd-${version}.tar.gz"; + sha256 = "10mii4mifmfs3v7kgciqml7f0fj7ljp0sngrx64pnwmgbzl4bx78"; + }; +}) diff --git a/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.72.nix b/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.72.nix new file mode 100644 index 000000000000..4c695218184c --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libmicrohttpd/0.9.72.nix @@ -0,0 +1,10 @@ +{ callPackage, fetchurl }: + +callPackage ./generic.nix ( rec { + version = "0.9.72"; + + src = fetchurl { + url = "mirror://gnu/libmicrohttpd/libmicrohttpd-${version}.tar.gz"; + sha256 = "sha256-Cugl+ODX9BIB/USg3xz0VMHLC8UP6dWcJlUiYCZML/g="; + }; +}) diff --git a/nixpkgs/pkgs/development/libraries/libmicrohttpd/generic.nix b/nixpkgs/pkgs/development/libraries/libmicrohttpd/generic.nix new file mode 100644 index 000000000000..d5bc619e9042 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libmicrohttpd/generic.nix @@ -0,0 +1,49 @@ +{ lib, stdenv, libgcrypt, curl, gnutls, pkg-config, libiconv, libintl, version, src, meta ? {}, fetchpatch }: + +let + meta_ = meta; +in + +stdenv.mkDerivation rec { + pname = "libmicrohttpd"; + inherit version src; + + patches = lib.optionals (lib.versionOlder version "0.9.76") [ + (fetchpatch { + name = "CVE-2023-27371.patch"; + url = "https://git.gnunet.org/libmicrohttpd.git/patch/?id=e0754d1638c602382384f1eface30854b1defeec"; + hash = "sha256-vzrq9HPysGpc13rFEk6zLPgpUqp/ST4q/Wp30Dam97k="; + excludes = [ + "ChangeLog" + ]; + }) + ]; + + outputs = [ "out" "dev" "devdoc" "info" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libgcrypt curl gnutls libiconv libintl ]; + + preCheck = '' + # Since `localhost' can't be resolved in a chroot, work around it. + sed -ie 's/localhost/127.0.0.1/g' src/test*/*.[ch] + ''; + + # Disabled because the tests can time-out. + doCheck = false; + + meta = with lib; { + description = "Embeddable HTTP server library"; + + longDescription = '' + GNU libmicrohttpd is a small C library that is supposed to make + it easy to run an HTTP server as part of another application. + ''; + + license = licenses.lgpl2Plus; + + homepage = "https://www.gnu.org/software/libmicrohttpd/"; + + maintainers = with maintainers; [ eelco vrthra fpletz ]; + platforms = platforms.unix; + } // meta_; +} |