From 133fa13c4199323e49db969aa125731ef7572a5f Mon Sep 17 00:00:00 2001 From: wxt <3264117476@qq.com> Date: Mon, 21 Oct 2024 17:21:37 +0800 Subject: [PATCH 1/2] clang-uml: nixfmt --- pkgs/by-name/cl/clang-uml/package.nix | 55 +++++++++++++++------------ 1 file changed, 31 insertions(+), 24 deletions(-) diff --git a/pkgs/by-name/cl/clang-uml/package.nix b/pkgs/by-name/cl/clang-uml/package.nix index bb8a4d98bdb7..da5608e6f168 100644 --- a/pkgs/by-name/cl/clang-uml/package.nix +++ b/pkgs/by-name/cl/clang-uml/package.nix @@ -1,19 +1,19 @@ -{ lib -, fetchFromGitHub -, stdenv -, cmake -, pkg-config -, installShellFiles -, libclang -, clang -, llvmPackages -, libllvm -, yaml-cpp -, elfutils -, libunwind -, enableLibcxx ? false -, debug ? false -, +{ + lib, + fetchFromGitHub, + stdenv, + cmake, + pkg-config, + installShellFiles, + libclang, + clang, + llvmPackages, + libllvm, + yaml-cpp, + elfutils, + libunwind, + enableLibcxx ? false, + debug ? false, }: stdenv.mkDerivation (finalAttrs: { pname = "clang-uml"; @@ -26,14 +26,21 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-YzHlauVuFLT2PmfqJBNwqQ/P7d7tyl3brk7Vo/kTOF4="; }; - nativeBuildInputs = [ - cmake - pkg-config - installShellFiles - ] ++ (if debug then [ - elfutils - libunwind - ] else [ ]); + nativeBuildInputs = + [ + cmake + pkg-config + installShellFiles + ] + ++ ( + if debug then + [ + elfutils + libunwind + ] + else + [ ] + ); buildInputs = [ clang From d9054c25ce560098a625f83a0815ed631826b795 Mon Sep 17 00:00:00 2001 From: wxt <3264117476@qq.com> Date: Mon, 21 Oct 2024 18:04:07 +0800 Subject: [PATCH 2/2] clang-uml: fix build --- pkgs/by-name/cl/clang-uml/package.nix | 14 ++++++++------ pkgs/top-level/all-packages.nix | 4 ++++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/cl/clang-uml/package.nix b/pkgs/by-name/cl/clang-uml/package.nix index da5608e6f168..adc180a4c1ce 100644 --- a/pkgs/by-name/cl/clang-uml/package.nix +++ b/pkgs/by-name/cl/clang-uml/package.nix @@ -6,7 +6,6 @@ pkg-config, installShellFiles, libclang, - clang, llvmPackages, libllvm, yaml-cpp, @@ -42,8 +41,11 @@ stdenv.mkDerivation (finalAttrs: { [ ] ); + cmakeFlags = [ + "-DCUSTOM_COMPILE_OPTIONS=-Wno-error=sign-compare" + ]; + buildInputs = [ - clang libclang libllvm yaml-cpp @@ -70,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: { dontFixup = debug; dontStrip = debug; - meta = with lib; { + meta = { description = "Customizable automatic UML diagram generator for C++ based on Clang"; longDescription = '' clang-uml is an automatic C++ to UML class, sequence, package and include diagram generator, driven by YAML configuration files. @@ -78,9 +80,9 @@ stdenv.mkDerivation (finalAttrs: { The configuration file or files for clang-uml define the types and contents of each generated diagram. The diagrams can be generated in PlantUML, MermaidJS and JSON formats. ''; - maintainers = with maintainers; [ eymeric ]; + maintainers = with lib.maintainers; [ eymeric ]; homepage = "https://clang-uml.github.io/"; - license = licenses.asl20; - platforms = platforms.all; + license = lib.licenses.asl20; + platforms = lib.platforms.all; }; }) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 982de17fe824..376c18b52567 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -444,6 +444,10 @@ with pkgs; circt = callPackage ../development/compilers/circt { }; + clang-uml = callPackage ../by-name/cl/clang-uml/package.nix { + stdenv = clangStdenv; + }; + classicube = callPackage ../games/classicube { }; clj-kondo = callPackage ../development/tools/clj-kondo { };