diff --git a/ctest/meson.build b/ctest/meson.build index a6a5049b8..d4f1dc10b 100644 --- a/ctest/meson.build +++ b/ctest/meson.build @@ -58,7 +58,7 @@ foreach lvl : lvls executable( op_name, sources: mapped_sources, - link_with: [_openblas], + link_with: [openblas_static], dependencies: [dependency('threads')], include_directories: ctest_inc, c_args: ['-DADD_', '-DCBLAS'], diff --git a/lapack-netlib/SRC/meson.build b/lapack-netlib/SRC/meson.build index 2ce359266..1e9a120be 100644 --- a/lapack-netlib/SRC/meson.build +++ b/lapack-netlib/SRC/meson.build @@ -496,16 +496,17 @@ endif # Create the blas library netlib_lapack = library(_netlib_lapack_name, - sources: _lapack_netlib_srcs, - link_with: _libs, - version: lapack_version, - soversion: lapack_major_version, - install: true) + sources: _lapack_netlib_srcs, + link_with: _libs, + version: lapack_version, + soversion: lapack_major_version, + install: true, + ) pkg.generate(netlib_lapack, name: 'lapack', filebase: 'meson-lapack', description: 'lapack via meson build', version: f'@pkg_ver@_lapack', - install_dir: '../../pkgconfig', + install_dir: pkg_install_dir, ) diff --git a/meson.build b/meson.build index 5a8415590..9fdd08dec 100644 --- a/meson.build +++ b/meson.build @@ -29,6 +29,7 @@ prj_src_dir = meson.project_source_root() pkg = import('pkgconfig') pkg_ver = meson.project_version() +pkg_install_dir = '../../pkgconfig' # Common args _args = [] @@ -539,23 +540,19 @@ subdir('driver/level3') subdir('driver/others') subdir('kernel') -_openblas = static_library('openblas', - link_whole: [ - _interface, - _l2_driver, - _l3_driver, - _others, - _kern, - ], - install: true, - ) - -_openblas_so = shared_library('openblas', - link_whole: [_openblas], - dependencies: [dependency('threads')], - override_options: ['b_lundef=false', 'b_asneeded=false'], - install: true, - ) +openblas = both_libraries('openblas', + link_whole: [ + _interface, + _l2_driver, + _l3_driver, + _others, + _kern, + ], + dependencies: [dependency('threads')], + override_options: ['b_lundef=false', 'b_asneeded=false'], + install: true, + ) +openblas_static = openblas.get_static_lib() # Handle headers fs = import('fs') @@ -609,12 +606,12 @@ custom_target('gen_install_headers', depends : pcl, ) -pkg.generate(_openblas, +pkg.generate(openblas, name: 'openblas', filebase: 'meson-openblas', description: 'OpenBLAS via meson build', version: f'@pkg_ver@_meson', - install_dir: '../../pkgconfig', + install_dir: pkg_install_dir, ) if build_testing diff --git a/test/meson.build b/test/meson.build index 71f620de2..117fb8484 100644 --- a/test/meson.build +++ b/test/meson.build @@ -26,7 +26,7 @@ foreach _test : _test_input_array executable( test_id, sources: f'@test_id@.f', - link_with: [_openblas], + link_with: [openblas_static], dependencies: [dependency('threads')], ) diff --git a/utest/meson.build b/utest/meson.build index 99188d179..f821e8263 100644 --- a/utest/meson.build +++ b/utest/meson.build @@ -87,7 +87,7 @@ utest_inc = _inc + [include_directories('.')] openblas_utest_exec = executable( 'openblas_utest', sources: sources_utest, - link_with: _openblas, + link_with: openblas_static, dependencies: [dependency('threads')], include_directories: utest_inc, c_args: _cargs, @@ -96,7 +96,7 @@ openblas_utest_exec = executable( openblas_utest_ext_exec = executable( 'openblas_utest_ext', sources: sources_utest_ext, - link_with: _openblas, + link_with: openblas_static, dependencies: [dependency('threads')], # This hack is required as `utest/test_extensions/common.c` needs # `common.h` from the source root, not `utest/test_extensions` directory