diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2018-01-21 11:35:10 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2018-01-21 11:35:10 +0100 |
commit | 5fb5beb9294b715f73f7c4b2776546dda7dd7c8b (patch) | |
tree | 0c0c4c418b09f836010008b9509a75d7824e14ed /pkgs/development/compilers/llvm/5/clang | |
parent | 29deef012c4f77c83a6912521faf363d5d751979 (diff) | |
parent | 514f67e3a89d2dc98aba1761f75210a649f2cf6c (diff) | |
download | nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.tar nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.tar.gz nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.tar.bz2 nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.tar.lz nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.tar.xz nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.tar.zst nixlib-5fb5beb9294b715f73f7c4b2776546dda7dd7c8b.zip |
Merge #33948: {llvm,clang}-{4,5}: better man-pages
Don't rebuild entire projects just to get manpages.
Diffstat (limited to 'pkgs/development/compilers/llvm/5/clang')
-rw-r--r-- | pkgs/development/compilers/llvm/5/clang/default.nix | 37 |
1 files changed, 23 insertions, 14 deletions
diff --git a/pkgs/development/compilers/llvm/5/clang/default.nix b/pkgs/development/compilers/llvm/5/clang/default.nix index aaddd020a729..021971a45431 100644 --- a/pkgs/development/compilers/llvm/5/clang/default.nix +++ b/pkgs/development/compilers/llvm/5/clang/default.nix @@ -5,7 +5,7 @@ let gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc; - self = stdenv.mkDerivation { + self = stdenv.mkDerivation ({ name = "clang-${version}"; unpackPhase = '' @@ -37,9 +37,8 @@ let patches = [ ./purity.patch ]; - postBuild = stdenv.lib.optionalString enableManpages '' - cmake --build . --target docs-clang-man - ''; + # XXX: TODO: This should be removed on next rebuild + postBuild = ""; postPatch = '' sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \ @@ -50,8 +49,7 @@ let sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt ''; - outputs = [ "out" "lib" "python" ] - ++ stdenv.lib.optional enableManpages "man"; + outputs = [ "out" "lib" "python" ]; # Clang expects to find LLVMgold in its own prefix # Clang expects to find sanitizer libraries in its own prefix @@ -70,13 +68,6 @@ let fi mv $out/share/clang/*.py $python/share/clang rm $out/bin/c-index-test - '' - + stdenv.lib.optionalString enableManpages '' - # Manually install clang manpage - cp docs/man/*.1 $out/share/man/man1/ - - # Move it and other man pages to 'man' output - moveToOutput "share/man" "$man" ''; enableParallelBuilding = true; @@ -94,5 +85,23 @@ let license = stdenv.lib.licenses.ncsa; platforms = stdenv.lib.platforms.all; }; - }; + } // stdenv.lib.optionalAttrs enableManpages { + name = "clang-manpages-${version}"; + + buildPhase = '' + make docs-clang-man + ''; + + installPhase = '' + mkdir -p $out/share/man/man1 + # Manually install clang manpage + cp docs/man/*.1 $out/share/man/man1/ + ''; + + outputs = [ "out" ]; + + doCheck = false; + + meta.description = "man page for Clang ${version}"; + }); in self |