Merge pull request #24 from HaoZeke/sharedLib
BLD: Create OpenBLAS shared object
This commit is contained in:
commit
0701835710
|
@ -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'],
|
||||
|
|
|
@ -496,8 +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: pkg_install_dir,
|
||||
)
|
||||
|
|
33
meson.build
33
meson.build
|
@ -27,6 +27,10 @@ fc_id = fc.get_id()
|
|||
prj_bld_dir = meson.project_build_root()
|
||||
prj_src_dir = meson.project_source_root()
|
||||
|
||||
pkg = import('pkgconfig')
|
||||
pkg_ver = meson.project_version()
|
||||
pkg_install_dir = '../../pkgconfig'
|
||||
|
||||
# Common args
|
||||
_args = []
|
||||
# TODO(rg): Max parallel number should be conditional
|
||||
|
@ -536,15 +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 = 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')
|
||||
|
@ -598,13 +606,12 @@ custom_target('gen_install_headers',
|
|||
depends : pcl,
|
||||
)
|
||||
|
||||
pkg = import ('pkgconfig')
|
||||
pkg_ver = meson.project_version()
|
||||
pkg.generate(_openblas,
|
||||
pkg.generate(openblas,
|
||||
name: 'openblas',
|
||||
filebase: 'openblas',
|
||||
filebase: 'meson-openblas',
|
||||
description: 'OpenBLAS via meson build',
|
||||
version: f'@pkg_ver@_meson',
|
||||
install_dir: pkg_install_dir,
|
||||
)
|
||||
|
||||
if build_testing
|
||||
|
|
|
@ -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')],
|
||||
)
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue