diff --git a/interface/meson.build b/interface/meson.build index f7bf03739..b057a1af5 100644 --- a/interface/meson.build +++ b/interface/meson.build @@ -572,10 +572,13 @@ foreach conf : _blas_roots endforeach endif - # Construct the actual symbol names + # Construct the actual symbol names, and mangled symbols + # TODO: This might be conditional on other options sym_name = conf['base'].replace('?', type) + sym_underscored = f'@sym_name@_' if conf.get('cblas', false) cblas_sym_name = 'cblas_' + sym_name + cblas_sym_underscored = f'@cblas_sym_name@_' endif # Construct conditionals @@ -590,22 +593,20 @@ foreach conf : _blas_roots # Make mangled symbols # TODO: This might be conditional on other options - sym_underscored = f'@sym_name@_' - compiler_args += [ - f'-DASMNAME=@sym_name@', - f'-DASMFNAME=@sym_underscored@', - f'-DNAME=@sym_underscored@', - f'-DCNAME=@sym_name@', - f'-DCHAR_NAME="@sym_underscored@"', - f'-DCHAR_CNAME="@sym_name@"' - ] # Create the static library for each symbol lib = static_library( sym_name, sources: conf['fname'], include_directories: _inc, - c_args: compiler_args + c_args: compiler_args + [ + f'-DASMNAME=@sym_name@', + f'-DASMFNAME=@sym_underscored@', + f'-DNAME=@sym_underscored@', + f'-DCNAME=@sym_name@', + f'-DCHAR_NAME="@sym_underscored@"', + f'-DCHAR_CNAME="@sym_name@"' + ] ) _interface_libs += lib @@ -620,7 +621,15 @@ foreach conf : _blas_roots cblas_sym_name, sources: conf['fname'], include_directories: _inc, - c_args: compiler_args + ['-DCBLAS'] + c_args: compiler_args + [ + '-DCBLAS', + f'-DASMNAME=@cblas_sym_name@', + f'-DASMFNAME=@cblas_sym_underscored@', + f'-DNAME=@cblas_sym_underscored@', + f'-DCNAME=@cblas_sym_name@', + f'-DCHAR_NAME="@cblas_sym_underscored@"', + f'-DCHAR_CNAME="@cblas_sym_name@"' + ] ) _interface_libs += cblas_lib endif