nixpkgs/pkgs/development/libraries/gflags/default.nix

41 lines
1.2 KiB
Nix
Raw Normal View History

{ stdenv, fetchFromGitHub, cmake
, enableShared ? !stdenv.hostPlatform.isStatic
}:
2014-02-10 15:27:44 +00:00
stdenv.mkDerivation rec {
2019-07-25 10:27:43 +01:00
pname = "gflags";
version = "2.2.2";
2014-02-10 15:27:44 +00:00
2015-06-17 01:32:15 +01:00
src = fetchFromGitHub {
owner = "gflags";
repo = "gflags";
rev = "v${version}";
sha256 = "147i3md3nxkjlrccqg4mq1kyzc7yrhvqv5902iibc7znkvzdvlp0";
2014-02-10 15:27:44 +00:00
};
2015-06-17 01:32:15 +01:00
nativeBuildInputs = [ cmake ];
# This isn't used by the build and breaks the CMake build on case-insensitive filesystems (e.g., on Darwin)
preConfigure = "rm BUILD";
2015-06-17 01:32:15 +01:00
cmakeFlags = [
2019-12-16 12:05:48 +00:00
"-DGFLAGS_BUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}"
"-DGFLAGS_BUILD_STATIC_LIBS=ON"
2015-06-17 01:32:15 +01:00
];
doCheck = false;
2014-02-10 15:27:44 +00:00
meta = with stdenv.lib; {
2014-02-10 15:27:44 +00:00
description = "A C++ library that implements commandline flags processing";
longDescription = ''
The gflags package contains a C++ library that implements commandline flags processing.
As such it's a replacement for getopt().
It was owned by Google. google-gflags project has been renamed to gflags and maintained by new community.
'';
homepage = "https://gflags.github.io/gflags/";
license = licenses.bsd3;
maintainers = [ maintainers.linquize ];
platforms = platforms.all;
2014-02-10 15:27:44 +00:00
};
}