linkers: skip -export_dynamic flag before MacOS 10.7

The flag was only introduced in ld 224.1, as mentioned in the initial PR
#13291.

Resolves #13543
pull/3891/merge
Wolfgang Walther 3 months ago committed by Dylan Baker
parent d9ba42217f
commit 7280639cb5
  1. 4
      mesonbuild/linkers/linkers.py
  2. 4
      unittests/darwintests.py

@ -840,7 +840,9 @@ class AppleDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
return ["-Wl,-cache_path_lto," + path] return ["-Wl,-cache_path_lto," + path]
def export_dynamic_args(self, env: 'Environment') -> T.List[str]: def export_dynamic_args(self, env: 'Environment') -> T.List[str]:
return self._apply_prefix('-export_dynamic') if mesonlib.version_compare(self.version, '>=224.1'):
return self._apply_prefix('-export_dynamic')
return []
class LLVMLD64DynamicLinker(AppleDynamicLinker): class LLVMLD64DynamicLinker(AppleDynamicLinker):

@ -4,10 +4,11 @@
import subprocess import subprocess
import re import re
import os import os
import platform
import unittest import unittest
from mesonbuild.mesonlib import ( from mesonbuild.mesonlib import (
MachineChoice, is_osx MachineChoice, is_osx, version_compare
) )
from mesonbuild.compilers import ( from mesonbuild.compilers import (
detect_c_compiler detect_c_compiler
@ -81,6 +82,7 @@ class DarwinTests(BasePlatformTests):
self.build() self.build()
self.run_tests() self.run_tests()
@unittest.skipIf(version_compare(platform.mac_ver()[0], '<10.7'), '-export_dynamic was added in 10.7')
def test_apple_lto_export_dynamic(self): def test_apple_lto_export_dynamic(self):
''' '''
Tests that -Wl,-export_dynamic is correctly added, when export_dynamic: true is set. Tests that -Wl,-export_dynamic is correctly added, when export_dynamic: true is set.

Loading…
Cancel
Save