diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2018-04-17 21:39:13 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-17 21:39:13 +0300 |
commit | 88ca3805e74e67d81499bcf02362d8935dd8ec7a (patch) | |
tree | 29bd531405a41e29ccabb9a3fb7c416b4ba3a977 /mesonbuild/backend/vs2010backend.py | |
parent | 348248f0a19bdc80e8a184befb2faaa1d5e66f40 (diff) | |
parent | 46ccbe48e7dc902f699d0554055f89c49df4d415 (diff) | |
download | meson-88ca3805e74e67d81499bcf02362d8935dd8ec7a.zip meson-88ca3805e74e67d81499bcf02362d8935dd8ec7a.tar.gz meson-88ca3805e74e67d81499bcf02362d8935dd8ec7a.tar.bz2 |
Merge pull request #1852 from QuLogic/openmp
Add an OpenMP dependency.
Diffstat (limited to 'mesonbuild/backend/vs2010backend.py')
-rw-r--r-- | mesonbuild/backend/vs2010backend.py | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py index 3171451..22383dc 100644 --- a/mesonbuild/backend/vs2010backend.py +++ b/mesonbuild/backend/vs2010backend.py @@ -824,7 +824,10 @@ class Vs2010Backend(backends.Backend): for d in reversed(target.get_external_deps()): # Cflags required by external deps might have UNIX-specific flags, # so filter them out if needed - d_compile_args = compiler.unix_args_to_native(d.get_compile_args()) + if isinstance(d, dependencies.OpenMPDependency): + d_compile_args = compiler.openmp_flags() + else: + d_compile_args = compiler.unix_args_to_native(d.get_compile_args()) for arg in d_compile_args: if arg.startswith(('-D', '/D')): define = arg[2:] @@ -915,11 +918,17 @@ class Vs2010Backend(backends.Backend): for dep in target.get_external_deps(): # Extend without reordering or de-dup to preserve `-L -l` sets # https://github.com/mesonbuild/meson/issues/1718 - extra_link_args.extend_direct(dep.get_link_args()) + if isinstance(dep, dependencies.OpenMPDependency): + extra_link_args.extend_direct(compiler.openmp_flags()) + else: + extra_link_args.extend_direct(dep.get_link_args()) for d in target.get_dependencies(): if isinstance(d, build.StaticLibrary): for dep in d.get_external_deps(): - extra_link_args.extend_direct(dep.get_link_args()) + if isinstance(dep, dependencies.OpenMPDependency): + extra_link_args.extend_direct(compiler.openmp_flags()) + else: + extra_link_args.extend_direct(dep.get_link_args()) # Add link args for c_* or cpp_* build options. Currently this only # adds c_winlibs and cpp_winlibs when building for Windows. This needs # to be after all internal and external libraries so that unresolved |