diff options
author | Dylan Baker <dylan@pnwbakers.com> | 2019-08-09 13:46:35 -0700 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2019-08-14 13:13:23 -0700 |
commit | 06dcbd50eea47b3182081527ea1c0ada01d4d847 (patch) | |
tree | 67a3ad1a5f2a78795edbe25851eecb7053306d2b /mesonbuild/compilers/cpp.py | |
parent | 2bd85c614a4c4c513b025680e23afb6697da95dd (diff) | |
download | meson-06dcbd50eea47b3182081527ea1c0ada01d4d847.zip meson-06dcbd50eea47b3182081527ea1c0ada01d4d847.tar.gz meson-06dcbd50eea47b3182081527ea1c0ada01d4d847.tar.bz2 |
compilers: Dispatch to dynamic linker class
Most of the cuda code is from Olexa Bilaniuk.
Most of the PGI code is from Michael Hirsc
Diffstat (limited to 'mesonbuild/compilers/cpp.py')
-rw-r--r-- | mesonbuild/compilers/cpp.py | 18 |
1 files changed, 2 insertions, 16 deletions
diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py index f942114..f93db3e 100644 --- a/mesonbuild/compilers/cpp.py +++ b/mesonbuild/compilers/cpp.py @@ -36,6 +36,7 @@ from .mixins.intel import IntelGnuLikeCompiler, IntelVisualStudioLikeCompiler from .mixins.clang import ClangCompiler from .mixins.elbrus import ElbrusCompiler from .mixins.pgi import PGICompiler +from .mixins.islinker import BasicLinkerIsCompilerMixin, LinkerEnvVarsMixin def non_msvc_eh_options(eh, args): @@ -183,7 +184,7 @@ class ClangCPPCompiler(ClangCompiler, CPPCompiler): return ['-lstdc++'] -class EmscriptenCPPCompiler(ClangCPPCompiler): +class EmscriptenCPPCompiler(LinkerEnvVarsMixin, BasicLinkerIsCompilerMixin, ClangCPPCompiler): def __init__(self, exelist, version, compiler_type, for_machine: MachineChoice, is_cross, exe_wrapper=None, **kwargs): if not is_cross: raise MesonException('Emscripten compiler can only be used for cross compilation.') @@ -200,18 +201,6 @@ class EmscriptenCPPCompiler(ClangCPPCompiler): def get_option_link_args(self, options): return [] - def get_linker_always_args(self): - return [] - - def get_asneeded_args(self): - return [] - - def get_lundef_args(self): - return [] - - def build_rpath_args(self, *args, **kwargs): - return [] - def get_soname_args(self, *args, **kwargs): raise MesonException('Emscripten does not support shared libraries.') @@ -574,9 +563,6 @@ class CcrxCPPCompiler(CcrxCompiler, CPPCompiler): def get_output_args(self, target): return ['-output=obj=%s' % target] - def get_linker_output_args(self, outputname): - return ['-output=%s' % outputname] - def get_option_link_args(self, options): return [] |