diff --git a/pkgs/development/libraries/marl/default.nix b/pkgs/development/libraries/marl/default.nix new file mode 100644 index 000000000000..2bf23962d53e --- /dev/null +++ b/pkgs/development/libraries/marl/default.nix @@ -0,0 +1,26 @@ +{ stdenv, cmake, fetchFromGitHub }: + +stdenv.mkDerivation rec { + pname = "marl"; + version = "1.0.0"; # Based on marl's CHANGES.md + + src = fetchFromGitHub { + owner = "google"; + repo = pname; + sha256 = "0pnbarbyv82h05ckays2m3vgxzdhpcpg59bnzsddlb5v7rqhw51w"; + rev = "40209e952f5c1f3bc883d2b7f53b274bd454ca53"; + }; + + nativeBuildInputs = [ cmake ]; + + # Turn on the flag to install after building the library. + cmakeFlags = ["-DMARL_INSTALL=ON"]; + + meta = with stdenv.lib; { + homepage = "https://github.com/google/marl"; + description = "A hybrid thread / fiber task scheduler written in C++ 11"; + platforms = platforms.all; + license = licenses.asl20; + maintainers = with maintainers; [ breakds ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 500c3b8dd1ab..2a9618a8f2ed 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2376,6 +2376,8 @@ in mapproxy = callPackage ../applications/misc/mapproxy { }; + marl = callPackage ../development/libraries/marl {}; + marlin-calc = callPackage ../tools/misc/marlin-calc {}; masscan = callPackage ../tools/security/masscan {