|
|
@ -4990,9 +4990,18 @@ class WindowsTests(BasePlatformTests): |
|
|
|
def test_link_environment_variable_optlink(self): |
|
|
|
def test_link_environment_variable_optlink(self): |
|
|
|
self._check_ld('optlink', 'c', 'optlink') |
|
|
|
self._check_ld('optlink', 'c', 'optlink') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@skip_if_not_language('rust') |
|
|
|
def test_link_environment_variable_rust(self): |
|
|
|
def test_link_environment_variable_rust(self): |
|
|
|
self._check_ld('link', 'rust', 'link') |
|
|
|
self._check_ld('link', 'rust', 'link') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@skip_if_not_language('d') |
|
|
|
|
|
|
|
def test_link_environment_variable_d(self): |
|
|
|
|
|
|
|
env = get_fake_env() |
|
|
|
|
|
|
|
comp = getattr(env, 'detect_d_compiler')(MachineChoice.HOST) |
|
|
|
|
|
|
|
if comp.id == 'dmd': |
|
|
|
|
|
|
|
raise unittest.SkipTest('meson cannot reliably make DMD use a different linker.') |
|
|
|
|
|
|
|
self._check_ld('lld-link', 'd', 'lld-link') |
|
|
|
|
|
|
|
|
|
|
|
def test_pefile_checksum(self): |
|
|
|
def test_pefile_checksum(self): |
|
|
|
try: |
|
|
|
try: |
|
|
|
import pefile |
|
|
|
import pefile |
|
|
@ -6342,23 +6351,31 @@ c = ['{0}'] |
|
|
|
def test_ld_environment_variable_lld(self): |
|
|
|
def test_ld_environment_variable_lld(self): |
|
|
|
self._check_ld('ld.lld', 'lld', 'c', 'ld.lld') |
|
|
|
self._check_ld('ld.lld', 'lld', 'c', 'ld.lld') |
|
|
|
|
|
|
|
|
|
|
|
@skipIfNoExecutable('rustc') |
|
|
|
@skip_if_not_language('rust') |
|
|
|
def test_ld_environment_variable_rust(self): |
|
|
|
def test_ld_environment_variable_rust(self): |
|
|
|
self._check_ld('ld.gold', 'gold', 'rust', 'ld.gold') |
|
|
|
self._check_ld('ld.gold', 'gold', 'rust', 'ld.gold') |
|
|
|
|
|
|
|
|
|
|
|
def test_ld_environment_variable_cpp(self): |
|
|
|
def test_ld_environment_variable_cpp(self): |
|
|
|
self._check_ld('ld.gold', 'gold', 'cpp', 'ld.gold') |
|
|
|
self._check_ld('ld.gold', 'gold', 'cpp', 'ld.gold') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@skip_if_not_language('objc') |
|
|
|
def test_ld_environment_variable_objc(self): |
|
|
|
def test_ld_environment_variable_objc(self): |
|
|
|
self._check_ld('ld.gold', 'gold', 'objc', 'ld.gold') |
|
|
|
self._check_ld('ld.gold', 'gold', 'objc', 'ld.gold') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@skip_if_not_language('objcpp') |
|
|
|
def test_ld_environment_variable_objcpp(self): |
|
|
|
def test_ld_environment_variable_objcpp(self): |
|
|
|
self._check_ld('ld.gold', 'gold', 'objcpp', 'ld.gold') |
|
|
|
self._check_ld('ld.gold', 'gold', 'objcpp', 'ld.gold') |
|
|
|
|
|
|
|
|
|
|
|
@skipIfNoExecutable('gfortran') |
|
|
|
@skip_if_not_language('fortran') |
|
|
|
def test_ld_environment_variable_fortran(self): |
|
|
|
def test_ld_environment_variable_fortran(self): |
|
|
|
self._check_ld('ld.gold', 'gold', 'fortran', 'ld.gold') |
|
|
|
self._check_ld('ld.gold', 'gold', 'fortran', 'ld.gold') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@skip_if_not_language('d') |
|
|
|
|
|
|
|
def test_ld_environment_variable_d(self): |
|
|
|
|
|
|
|
# At least for me, ldc defaults to gold, and gdc defaults to bfd, so |
|
|
|
|
|
|
|
# let's pick lld, which isn't the default for either (currently) |
|
|
|
|
|
|
|
self._check_ld('ld.lld', 'lld', 'd', 'ld.lld') |
|
|
|
|
|
|
|
|
|
|
|
def compute_sha256(self, filename): |
|
|
|
def compute_sha256(self, filename): |
|
|
|
with open(filename, 'rb') as f: |
|
|
|
with open(filename, 'rb') as f: |
|
|
|
return hashlib.sha256(f.read()).hexdigest() |
|
|
|
return hashlib.sha256(f.read()).hexdigest() |
|
|
|