lib_sources += files('zck.c', 'header.c', 'io.c', 'log.c', 'compint.c', 'error.c')
extra_c_args = []
+lib_suffix = []
+
if host_machine.system() != 'windows'
extra_c_args += ['-fvisibility=hidden']
else
lib_sources += files(['win32/regerror.c', 'win32/regcomp.c', 'win32/regexec.c', 'win32/tre-mem.c'])
- extra_c_args += ['-DZCHUNK_EXPORTS=1']
+ if get_option('default_library') == 'shared'
+ extra_c_args += ['-DZCHUNK_EXPORTS=1']
+ else
+ extra_c_args += ['-DZCHUNK_STATIC_LIB']
+ lib_suffix = 'lib'
+ endif
endif
zcklib = library('zck',
- lib_sources,
- # in meson 0.48, use `gnu_symbol_visibility: 'hidden'` kwarg
- c_args: extra_c_args,
- include_directories: inc,
- dependencies: [zstd_dep, openssl_dep],
- install: true,
- version: meson.project_version(),
- soversion: so_version)
+ lib_sources,
+ # in meson 0.48, use `gnu_symbol_visibility: 'hidden'` kwarg
+ c_args: extra_c_args,
+ include_directories: inc,
+ dependencies: [zstd_dep, openssl_dep],
+ install: true,
+ version: meson.project_version(),
+ soversion: so_version,
+ name_suffix: lib_suffix)
subdir('lib')
+preprocessor_defines = []
if host_machine.system() == 'windows'
extra_win_src = ['lib/win32/basename.c', 'lib/win32/ftruncate.c']
+ if get_option('default_library') == 'static'
+ preprocessor_defines = '-DZCHUNK_STATIC_LIB=1'
+ endif
else
extra_win_src = []
endif
include_directories: inc,
dependencies: argplib,
link_with: zcklib,
- install: true
+ install: true,
+ c_args: preprocessor_defines
)
unzck = executable(
'unzck',
include_directories: inc,
dependencies: argplib,
link_with: zcklib,
- install: true
+ install: true,
+ c_args: preprocessor_defines
)
zck_gen_zdict = executable(
'zck_gen_zdict',
include_directories: inc,
dependencies: argplib,
link_with: zcklib,
- install: true
+ install: true,
+ c_args: preprocessor_defines
)
zck_read_header = executable(
'zck_read_header',
include_directories: inc,
dependencies: argplib,
link_with: zcklib,
- install: true
+ install: true,
+ c_args: preprocessor_defines
)
zck_delta_size = executable(
'zck_delta_size',
include_directories: inc,
dependencies: argplib,
link_with: zcklib,
- install: true
+ install: true,
+ c_args: preprocessor_defines
)
zckdl = executable(
'zckdl',
include_directories: inc,
dependencies: [argplib, curl_dep],
link_with: zcklib,
- install: true
+ install: true,
+ c_args: preprocessor_defines
)