at master 1.1 kB view raw
1{ 2 lib, 3 stdenv, 4 libstdcxx, 5 gcc_meta, 6 release_version, 7 version, 8 monorepoSrc ? null, 9 runCommand, 10}: 11stdenv.mkDerivation (finalAttrs: { 12 pname = "libsanitizer"; 13 inherit version; 14 15 src = runCommand "libsanitizer-src-${version}" { src = monorepoSrc; } '' 16 runPhase unpackPhase 17 18 mkdir -p "$out/gcc" 19 cp gcc/BASE-VER "$out/gcc" 20 cp gcc/DATESTAMP "$out/gcc" 21 22 cp -r libsanitizer "$out" 23 24 cp config.guess "$out" 25 cp config.rpath "$out" 26 cp config.sub "$out" 27 cp config-ml.in "$out" 28 cp ltmain.sh "$out" 29 cp install-sh "$out" 30 cp mkinstalldirs "$out" 31 32 [[ -f MD5SUMS ]]; cp MD5SUMS "$out" 33 ''; 34 35 sourceRoot = "${finalAttrs.src.name}/libsanitizer"; 36 37 postUnpack = '' 38 mkdir -p libstdc++-v3/src/ 39 ln -s ${libstdcxx}/lib/libstdc++.la libstdc++-v3/src/libstdc++.la 40 ''; 41 42 preConfigure = '' 43 mkdir ../../build 44 cd ../../build 45 configureScript=../$sourceRoot/configure 46 ''; 47 48 doCheck = true; 49 50 passthru = { 51 isGNU = true; 52 }; 53 54 meta = gcc_meta // { 55 homepage = "https://gcc.gnu.org/"; 56 }; 57})