Merge pull request #256163 from jtbx/dmd

dmd: 2.100.2 -> 2.105.2

authored by

Fabián Heredia Montiel and committed by
GitHub
f023c727 5e0c30e9

+22 -52
+3 -4
pkgs/development/compilers/dmd/default.nix
··· 1 import ./generic.nix { 2 - version = "2.100.2"; 3 - dmdSha256 = "sha256-o4+G3ARXIGObYHtHooYZKr+Al6kHpiwpMIog3i4BlDM="; 4 - druntimeSha256 = "sha256-qXvY1ECN4mPwOGgOE1FWwvxoRvlSww3tGLWgBdhzAKo="; 5 - phobosSha256 = "sha256-kTHRaAKG7cAGb4IE/NGHWaZ8t7ZceKj03l6E8wLzJzs="; 6 }
··· 1 import ./generic.nix { 2 + version = "2.105.2"; 3 + dmdSha256 = "sha256-IjzIQZttB1711VayKDWcpYvf1MAan+GWGTdpdDTgo1k="; 4 + phobosSha256 = "sha256-2hAq48sBC1qvS1XBWZhGIPUlsA4pGcn4pHNok6lC8R0="; 5 }
+19 -48
pkgs/development/compilers/dmd/generic.nix
··· 1 { version 2 , dmdSha256 3 - , druntimeSha256 4 , phobosSha256 5 }: 6 ··· 21 , installShellFiles 22 , git 23 , unzip 24 - , HOST_DMD ? "${callPackage ./bootstrap.nix { }}/bin/dmd" 25 }: 26 27 let ··· 60 }) 61 (fetchFromGitHub { 62 owner = "dlang"; 63 - repo = "druntime"; 64 - rev = "v${version}"; 65 - sha256 = druntimeSha256; 66 - name = "druntime"; 67 - }) 68 - (fetchFromGitHub { 69 - owner = "dlang"; 70 repo = "phobos"; 71 rev = "v${version}"; 72 sha256 = phobosSha256; ··· 88 extraPrefix = "dmd/"; 89 sha256 = "sha256-N21mAPfaTo+zGCip4njejasraV5IsWVqlGR5eOdFZZE="; 90 }) 91 - ] ++ lib.optionals (lib.versionOlder version "2.092.2") [ 92 - # Fixes C++ tests that compiled on older C++ but not on the current one 93 - (fetchpatch { 94 - url = "https://github.com/dlang/druntime/commit/438990def7e377ca1f87b6d28246673bb38022ab.patch"; 95 - stripLen = 1; 96 - extraPrefix = "druntime/"; 97 - sha256 = "sha256-/pPKK7ZK9E/mBrxm2MZyBNhYExE8p9jz8JqBdZSE6uY="; 98 - }) 99 ]; 100 101 postPatch = '' 102 - patchShebangs dmd/test/{runnable,fail_compilation,compilable,tools}{,/extra-files}/*.sh 103 104 - rm dmd/test/runnable/gdb1.d 105 - rm dmd/test/runnable/gdb10311.d 106 - rm dmd/test/runnable/gdb14225.d 107 - rm dmd/test/runnable/gdb14276.d 108 - rm dmd/test/runnable/gdb14313.d 109 - rm dmd/test/runnable/gdb14330.d 110 - rm dmd/test/runnable/gdb15729.sh 111 - rm dmd/test/runnable/gdb4149.d 112 - rm dmd/test/runnable/gdb4181.d 113 114 # Disable tests that rely on objdump whitespace until fixed upstream: 115 # https://issues.dlang.org/show_bug.cgi?id=23317 116 - rm dmd/test/runnable/cdvecfill.sh 117 - rm dmd/test/compilable/cdcmp.d 118 - 119 - # Grep'd string changed with gdb 12 120 - # https://issues.dlang.org/show_bug.cgi?id=23198 121 - substituteInPlace druntime/test/exceptions/Makefile \ 122 - --replace 'in D main (' 'in _Dmain (' 123 - 124 - # We're using gnused on all platforms 125 - substituteInPlace druntime/test/coverage/Makefile \ 126 - --replace 'freebsd osx' 'none' 127 '' 128 129 + lib.optionalString (lib.versionOlder version "2.091.0") '' 130 # This one has tested against a hardcoded year, then against a current year on 131 # and off again. It just isn't worth it to patch all the historical versions 132 # of it, so just remove it until the most recent change. 133 - rm dmd/test/compilable/ddocYear.d 134 '' + lib.optionalString (lib.versionAtLeast version "2.089.0" && lib.versionOlder version "2.092.2") '' 135 - rm dmd/test/dshell/test6952.d 136 '' + lib.optionalString (lib.versionAtLeast version "2.092.2") '' 137 - substituteInPlace dmd/test/dshell/test6952.d --replace "/usr/bin/env bash" "${bash}/bin/bash" 138 '' 139 140 + lib.optionalString stdenv.isLinux '' ··· 179 buildJobs=1 180 fi 181 182 - make -C dmd -f posix.mak $buildFlags -j$buildJobs HOST_DMD=${HOST_DMD} 183 - make -C druntime -f posix.mak $buildFlags -j$buildJobs DMD=${pathToDmd} 184 echo ${tzdata}/share/zoneinfo/ > TZDatabaseDirFile 185 echo ${lib.getLib curl}/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} > LibcurlPathFile 186 make -C phobos -f posix.mak $buildFlags -j$buildJobs DMD=${pathToDmd} DFLAGS="-version=TZDatabaseDir -version=LibcurlPath -J$PWD" ··· 205 fi 206 207 NIX_ENFORCE_PURITY= \ 208 - make -C dmd/test $checkFlags CC=$CXX SHELL=$SHELL -j$checkJobs N=$checkJobs 209 - 210 - NIX_ENFORCE_PURITY= \ 211 - make -C druntime -f posix.mak unittest $checkFlags -j$checkJobs 212 213 NIX_ENFORCE_PURITY= \ 214 make -C phobos -f posix.mak unittest $checkFlags -j$checkJobs DFLAGS="-version=TZDatabaseDir -version=LibcurlPath -J$PWD" ··· 244 # Everything is now Boost licensed, even the backend. 245 # https://github.com/dlang/dmd/pull/6680 246 license = licenses.boost; 247 - maintainers = with maintainers; [ ThomasMader lionello dukc ]; 248 platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; 249 }; 250 }
··· 1 { version 2 , dmdSha256 3 , phobosSha256 4 }: 5 ··· 20 , installShellFiles 21 , git 22 , unzip 23 + , dmd_bin ? "${callPackage ./bootstrap.nix { }}/bin" 24 }: 25 26 let ··· 59 }) 60 (fetchFromGitHub { 61 owner = "dlang"; 62 repo = "phobos"; 63 rev = "v${version}"; 64 sha256 = phobosSha256; ··· 80 extraPrefix = "dmd/"; 81 sha256 = "sha256-N21mAPfaTo+zGCip4njejasraV5IsWVqlGR5eOdFZZE="; 82 }) 83 ]; 84 85 postPatch = '' 86 + patchShebangs dmd/compiler/test/{runnable,fail_compilation,compilable,tools}{,/extra-files}/*.sh 87 88 + rm dmd/compiler/test/runnable/gdb1.d 89 + rm dmd/compiler/test/runnable/gdb10311.d 90 + rm dmd/compiler/test/runnable/gdb14225.d 91 + rm dmd/compiler/test/runnable/gdb14276.d 92 + rm dmd/compiler/test/runnable/gdb14313.d 93 + rm dmd/compiler/test/runnable/gdb14330.d 94 + rm dmd/compiler/test/runnable/gdb15729.sh 95 + rm dmd/compiler/test/runnable/gdb4149.d 96 + rm dmd/compiler/test/runnable/gdb4181.d 97 98 # Disable tests that rely on objdump whitespace until fixed upstream: 99 # https://issues.dlang.org/show_bug.cgi?id=23317 100 + rm dmd/compiler/test/runnable/cdvecfill.sh 101 + rm dmd/compiler/test/compilable/cdcmp.d 102 '' 103 104 + lib.optionalString (lib.versionOlder version "2.091.0") '' 105 # This one has tested against a hardcoded year, then against a current year on 106 # and off again. It just isn't worth it to patch all the historical versions 107 # of it, so just remove it until the most recent change. 108 + rm dmd/compiler/test/compilable/ddocYear.d 109 '' + lib.optionalString (lib.versionAtLeast version "2.089.0" && lib.versionOlder version "2.092.2") '' 110 + rm dmd/compiler/test/dshell/test6952.d 111 '' + lib.optionalString (lib.versionAtLeast version "2.092.2") '' 112 + substituteInPlace dmd/compiler/test/dshell/test6952.d --replace "/usr/bin/env bash" "${bash}/bin/bash" 113 '' 114 115 + lib.optionalString stdenv.isLinux '' ··· 154 buildJobs=1 155 fi 156 157 + ${dmd_bin}/rdmd dmd/compiler/src/build.d -j$buildJobs HOST_DMD=${dmd_bin}/dmd $buildFlags 158 echo ${tzdata}/share/zoneinfo/ > TZDatabaseDirFile 159 echo ${lib.getLib curl}/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} > LibcurlPathFile 160 make -C phobos -f posix.mak $buildFlags -j$buildJobs DMD=${pathToDmd} DFLAGS="-version=TZDatabaseDir -version=LibcurlPath -J$PWD" ··· 179 fi 180 181 NIX_ENFORCE_PURITY= \ 182 + make -C dmd/compiler/test $checkFlags CC=$CXX SHELL=$SHELL -j$checkJobs N=$checkJobs 183 184 NIX_ENFORCE_PURITY= \ 185 make -C phobos -f posix.mak unittest $checkFlags -j$checkJobs DFLAGS="-version=TZDatabaseDir -version=LibcurlPath -J$PWD" ··· 215 # Everything is now Boost licensed, even the backend. 216 # https://github.com/dlang/dmd/pull/6680 217 license = licenses.boost; 218 + maintainers = with maintainers; [ ThomasMader lionello dukc jtbx ]; 219 platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; 220 }; 221 }