16
16
, compiler-rt_src
17
17
, libcxxabi
18
18
, debugVersion ? false
19
+ , enableManpages ? true
19
20
, enableSharedLibraries ? true
20
21
, darwin
21
22
} :
@@ -38,9 +39,13 @@ in stdenv.mkDerivation rec {
38
39
mv compiler-rt-* $sourceRoot/projects/compiler-rt
39
40
'' ;
40
41
41
- outputs = [ "out" "man" ] ++ stdenv . lib . optional enableSharedLibraries "lib" ;
42
+ outputs = [ "out" ]
43
+ ++ stdenv . lib . optional enableSharedLibraries "lib"
44
+ ++ stdenv . lib . optional enableManpages "man" ;
45
+
46
+ nativeBuildInputs = [ perl groff cmake python ]
47
+ ++ stdenv . lib . optional enableManpages python . pkgs . sphinx ;
42
48
43
- nativeBuildInputs = [ perl groff cmake python python . pkgs . sphinx ] ;
44
49
buildInputs = [ libxml2 libffi ]
45
50
++ stdenv . lib . optionals stdenv . isDarwin [ libcxxabi ] ;
46
51
@@ -81,16 +86,19 @@ in stdenv.mkDerivation rec {
81
86
"-DLLVM_ENABLE_FFI=ON"
82
87
"-DLLVM_ENABLE_RTTI=ON"
83
88
"-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code
89
+ ]
90
+ ++ stdenv . lib . optional enableSharedLibraries
91
+ "-DLLVM_LINK_LLVM_DYLIB=ON"
92
+ ++ stdenv . lib . optionals enableManpages [
84
93
"-DLLVM_BUILD_DOCS=ON"
85
94
"-DLLVM_ENABLE_SPHINX=ON"
86
95
"-DSPHINX_OUTPUT_MAN=ON"
87
96
"-DSPHINX_OUTPUT_HTML=OFF"
88
97
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
89
- ] ++ stdenv . lib . optional enableSharedLibraries [
90
- "-DLLVM_LINK_LLVM_DYLIB=ON"
91
- ] ++ stdenv . lib . optional ( ! isDarwin )
98
+ ]
99
+ ++ stdenv . lib . optional ( ! isDarwin )
92
100
"-DLLVM_BINUTILS_INCDIR=${ binutils . dev } /include"
93
- ++ stdenv . lib . optionals ( isDarwin ) [
101
+ ++ stdenv . lib . optionals ( isDarwin ) [
94
102
"-DLLVM_ENABLE_LIBCXX=ON"
95
103
"-DCAN_TARGET_i386=false"
96
104
] ;
@@ -109,10 +117,10 @@ in stdenv.mkDerivation rec {
109
117
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib
110
118
'' ;
111
119
112
- postInstall = ''
120
+ postInstall = stdenv . lib . optionalString enableManpages ''
113
121
moveToOutput "share/man" "$man"
114
122
''
115
- + stdenv . lib . optionalString ( enableSharedLibraries ) ''
123
+ + stdenv . lib . optionalString enableSharedLibraries ''
116
124
moveToOutput "lib/libLLVM-*" "$lib"
117
125
moveToOutput "lib/libLLVM.${ shlib } " "$lib"
118
126
substituteInPlace "$out/lib/cmake/llvm/LLVMExports-release.cmake" \
0 commit comments