Firefox: 134.0.2 -> 135.0; 128.6.0esr -> 128.7.0esr (#379636)
[NixPkgs.git] / pkgs / by-name / gf / gflags / package.nix
blobb01b862804e3f4c15098e4b83d5f3a75f0e1fabb
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   cmake,
6   enableShared ? !stdenv.hostPlatform.isStatic,
7 }:
9 stdenv.mkDerivation rec {
10   pname = "gflags";
11   version = "2.2.2";
13   src = fetchFromGitHub {
14     owner = "gflags";
15     repo = "gflags";
16     rev = "v${version}";
17     sha256 = "147i3md3nxkjlrccqg4mq1kyzc7yrhvqv5902iibc7znkvzdvlp0";
18   };
20   nativeBuildInputs = [ cmake ];
22   # This isn't used by the build and breaks the CMake build on case-insensitive filesystems (e.g., on Darwin)
23   preConfigure = "rm BUILD";
25   cmakeFlags = [
26     "-DGFLAGS_BUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}"
27     "-DGFLAGS_BUILD_STATIC_LIBS=ON"
28   ];
30   doCheck = false;
32   meta = with lib; {
33     description = "C++ library that implements commandline flags processing";
34     mainProgram = "gflags_completions.sh";
35     longDescription = ''
36       The gflags package contains a C++ library that implements commandline flags processing.
37       As such it's a replacement for getopt().
38       It was owned by Google. google-gflags project has been renamed to gflags and maintained by new community.
39     '';
40     homepage = "https://gflags.github.io/gflags/";
41     license = licenses.bsd3;
42     maintainers = [ maintainers.linquize ];
43     platforms = platforms.all;
44   };