diff options
Diffstat (limited to 'nixpkgs/pkgs/by-name/fa/fastcdr/package.nix')
-rw-r--r-- | nixpkgs/pkgs/by-name/fa/fastcdr/package.nix | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/fa/fastcdr/package.nix b/nixpkgs/pkgs/by-name/fa/fastcdr/package.nix new file mode 100644 index 000000000000..ef9042b0982e --- /dev/null +++ b/nixpkgs/pkgs/by-name/fa/fastcdr/package.nix @@ -0,0 +1,56 @@ +{ stdenv +, lib +, fetchFromGitHub +, cmake +, gtest +, withDocs ? true +, doxygen +, graphviz-nox +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "fastcdr"; + version = "2.2.0"; + + src = fetchFromGitHub { + owner = "eProsima"; + repo = "Fast-CDR"; + rev = "v${finalAttrs.version}"; + hash = "sha256-hhYNgBLJCTZV/fgHEH7rxlTy+qpShAykxHLbPtPA/Uw="; + }; + + patches = [ + ./0001-Do-not-require-wget-and-unzip.patch + ]; + + cmakeFlags = lib.optional (stdenv.hostPlatform.isStatic) "-DBUILD_SHARED_LIBS=OFF" + # upstream turns BUILD_TESTING=OFF by default and doesn't honor cmake's default (=ON) + ++ lib.optional (finalAttrs.finalPackage.doCheck) "-DBUILD_TESTING=ON" + ++ lib.optional withDocs "-DBUILD_DOCUMENTATION=ON"; + + outputs = [ "out" ] ++ lib.optional withDocs "doc"; + + nativeBuildInputs = [ + cmake + ] ++ lib.optionals withDocs [ + doxygen + graphviz-nox + ]; + + doCheck = true; + + checkInputs = [ gtest ]; + + meta = with lib; { + homepage = "https://github.com/eProsima/Fast-CDR"; + description = "Serialization library for OMG's Common Data Representation (CDR)"; + longDescription = '' + A C++ library that provides two serialization mechanisms. One is the + standard CDR serialization mechanism, while the other is a faster + implementation that modifies the standard. + ''; + license = licenses.asl20; + maintainers = with maintainers; [ panicgh ]; + platforms = platforms.unix; + }; +}) |