From: Johan Mabille Date: Thu, 15 Sep 2022 08:18:35 +0000 (+0200) Subject: Fixed meson for static build on windows X-Git-Tag: archive/raspbian/1.2.3+ds1-2+rpi1^2~8^2^2~2^2~1 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=8aaef9db2a633d3b19e040024246ed2759ee5491;p=zchunk.git Fixed meson for static build on windows --- diff --git a/src/lib/meson.build b/src/lib/meson.build index 261981a..393b268 100644 --- a/src/lib/meson.build +++ b/src/lib/meson.build @@ -7,19 +7,27 @@ subdir('dl') 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) diff --git a/src/meson.build b/src/meson.build index 5a2d625..215b6d3 100644 --- a/src/meson.build +++ b/src/meson.build @@ -1,7 +1,11 @@ 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 @@ -12,7 +16,8 @@ zck = executable( include_directories: inc, dependencies: argplib, link_with: zcklib, - install: true + install: true, + c_args: preprocessor_defines ) unzck = executable( 'unzck', @@ -20,7 +25,8 @@ unzck = executable( include_directories: inc, dependencies: argplib, link_with: zcklib, - install: true + install: true, + c_args: preprocessor_defines ) zck_gen_zdict = executable( 'zck_gen_zdict', @@ -28,7 +34,8 @@ zck_gen_zdict = executable( include_directories: inc, dependencies: argplib, link_with: zcklib, - install: true + install: true, + c_args: preprocessor_defines ) zck_read_header = executable( 'zck_read_header', @@ -36,7 +43,8 @@ zck_read_header = executable( include_directories: inc, dependencies: argplib, link_with: zcklib, - install: true + install: true, + c_args: preprocessor_defines ) zck_delta_size = executable( 'zck_delta_size', @@ -44,7 +52,8 @@ zck_delta_size = executable( include_directories: inc, dependencies: argplib, link_with: zcklib, - install: true + install: true, + c_args: preprocessor_defines ) zckdl = executable( 'zckdl', @@ -52,5 +61,6 @@ zckdl = executable( include_directories: inc, dependencies: [argplib, curl_dep], link_with: zcklib, - install: true + install: true, + c_args: preprocessor_defines )