diff --git a/pkgs/development/compilers/llvm/common/lldb.nix b/pkgs/development/compilers/llvm/common/lldb.nix index 6094592ccfe6..97de8b33707f 100644 --- a/pkgs/development/compilers/llvm/common/lldb.nix +++ b/pkgs/development/compilers/llvm/common/lldb.nix @@ -177,25 +177,25 @@ stdenv.mkDerivation ( cmakeFlags = [ - "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}" - "-DLLVM_ENABLE_RTTI=OFF" - "-DClang_DIR=${lib.getDev libclang}/lib/cmake" - "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit" + (lib.cmakeBool "LLDB_INCLUDE_TESTS" finalAttrs.finalPackage.doCheck) + (lib.cmakeBool "LLVM_ENABLE_RTTI" false) + (lib.cmakeFeature "Clang_DIR" "${lib.getDev libclang}/lib/cmake") + (lib.cmakeFeature "LLVM_EXTERNAL_LIT" "${lit}/bin/lit") ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON" + (lib.cmakeBool "LLDB_USE_SYSTEM_DEBUGSERVER" true) ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ - "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic + (lib.cmakeFeature "LLDB_CODESIGN_IDENTITY" "") # codesigning makes nondeterministic ] ++ lib.optionals (lib.versionAtLeast release_version "17") [ - "-DCLANG_RESOURCE_DIR=../../../../${lib.getLib libclang}" + (lib.cmakeFeature "CLANG_RESOURCE_DIR" "../../../../${lib.getLib libclang}") ] ++ lib.optionals enableManpages ( [ - "-DLLVM_ENABLE_SPHINX=ON" - "-DSPHINX_OUTPUT_MAN=ON" - "-DSPHINX_OUTPUT_HTML=OFF" + (lib.cmakeBool "LLVM_ENABLE_SPHINX" true) + (lib.cmakeBool "SPHINX_OUTPUT_MAN" true) + (lib.cmakeBool "SPHINX_OUTPUT_HTML" false) ] ++ lib.optionals (lib.versionAtLeast release_version "15") [ # docs reference `automodapi` but it's not added to the extensions list when @@ -203,12 +203,12 @@ stdenv.mkDerivation ( # https://github.com/llvm/llvm-project/blob/af6ec9200b09039573d85e349496c4f5b17c3d7f/lldb/docs/conf.py#L54 # # so, we just ignore the resulting errors - "-DSPHINX_WARNINGS_AS_ERRORS=OFF" + (lib.cmakeBool "SPHINX_WARNINGS_AS_ERRORS" false) ] ) - ++ lib.optionals doCheck [ - "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" - "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++" + ++ lib.optionals finalAttrs.finalPackage.doCheck [ + (lib.cmakeFeature "LLDB_TEST_C_COMPILER" "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc") + (lib.cmakeFeature "-DLLDB_TEST_CXX_COMPILER" "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++") ] ++ devExtraCmakeFlags;