about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/cxxopts
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/cxxopts')
-rw-r--r--nixpkgs/pkgs/development/libraries/cxxopts/default.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/cxxopts/default.nix b/nixpkgs/pkgs/development/libraries/cxxopts/default.nix
new file mode 100644
index 000000000000..855a9eef8ea0
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/cxxopts/default.nix
@@ -0,0 +1,33 @@
+{ cmake, fetchFromGitHub, icu, lib, pkg-config, stdenv, enableUnicodeHelp ? true }:
+
+stdenv.mkDerivation rec {
+  name = "cxxopts";
+  version = "unstable-2020-12-14";
+
+  src = fetchFromGitHub {
+    owner = "jarro2783";
+    repo = name;
+    rev = "2d8e17c4f88efce80e274cb03eeb902e055a91d3";
+    sha256 = "0pwrac81zfqjs17g3hx8r3ds2xf04npb6mz111qjy4bx17314ib7";
+  };
+
+  buildInputs = lib.optional enableUnicodeHelp [ icu.dev ];
+  cmakeFlags = [ "-DCXXOPTS_BUILD_EXAMPLES=OFF" ]
+    ++ lib.optional enableUnicodeHelp "-DCXXOPTS_USE_UNICODE_HELP=TRUE"
+    # Due to -Wsuggest-override, remove when cxxopts is updated
+    ++ lib.optional stdenv.isDarwin "-DCXXOPTS_ENABLE_WARNINGS=OFF";
+  nativeBuildInputs = [ cmake ] ++ lib.optional enableUnicodeHelp [ pkg-config ];
+
+  doCheck = true;
+
+  # Conflict on case-insensitive filesystems.
+  dontUseCmakeBuildDir = true;
+
+  meta = with lib; {
+    homepage = "https://github.com/jarro2783/cxxopts";
+    description = "Lightweight C++ GNU-style option parser library";
+    license = licenses.mit;
+    maintainers = [ maintainers.spease ];
+    platforms = platforms.all;
+  };
+}