From 660dee1e10b5293c38d372b7a8ddfce49cc14936 Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Thu, 21 Dec 2017 13:33:57 -0800 Subject: LLVM: use DragonFly BSD workaround on FreeBSD as well --- mesonbuild/dependencies/dev.py | 14 +++++++------- mesonbuild/mesonlib.py | 3 +++ 2 files changed, 10 insertions(+), 7 deletions(-) (limited to 'mesonbuild') diff --git a/mesonbuild/dependencies/dev.py b/mesonbuild/dependencies/dev.py index 2be9be4..4a163ea 100644 --- a/mesonbuild/dependencies/dev.py +++ b/mesonbuild/dependencies/dev.py @@ -173,13 +173,13 @@ class LLVMDependency(ConfigToolDependency): def _set_new_link_args(self): """How to set linker args for LLVM versions >= 3.9""" - if (mesonlib.is_dragonflybsd() and not self.static and - version_compare(self.version, '>= 4.0')): - # llvm-config on DragonFly BSD for versions 4.0, 5.0, and 6.0 have - # an error when generating arguments for shared mode linking, even - # though libLLVM.so is installed, because for some reason the tool - # expects to find a .so for each static library. This works around - # that. + if ((mesonlib.is_dragonflybsd() or mesonlib.is_freebsd()) and not + self.static and version_compare(self.version, '>= 4.0')): + # llvm-config on DragonFly BSD and FreeBSD for versions 4.0, 5.0, + # and 6.0 have an error when generating arguments for shared mode + # linking, even though libLLVM.so is installed, because for some + # reason the tool expects to find a .so for each static library. + # This works around that. self.link_args = self.get_config_value(['--ldflags'], 'link_args') self.link_args.append('-lLLVM') return diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py index 8793dff..b7d2992 100644 --- a/mesonbuild/mesonlib.py +++ b/mesonbuild/mesonlib.py @@ -288,6 +288,9 @@ def is_debianlike(): def is_dragonflybsd(): return platform.system().lower() == 'dragonfly' +def is_freebsd(): + return platform.system().lower() == 'freebsd' + def for_windows(is_cross, env): """ Host machine is windows? -- cgit v1.1