diff options
Diffstat (limited to 'Build/source/libs/pixman/pixman-src/pixman/meson.build')
-rw-r--r-- | Build/source/libs/pixman/pixman-src/pixman/meson.build | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/Build/source/libs/pixman/pixman-src/pixman/meson.build b/Build/source/libs/pixman/pixman-src/pixman/meson.build index 6ce87e7addb..f48357f261c 100644 --- a/Build/source/libs/pixman/pixman-src/pixman/meson.build +++ b/Build/source/libs/pixman/pixman-src/pixman/meson.build @@ -30,6 +30,11 @@ version_h = configure_file( install_dir : join_paths(get_option('prefix'), get_option('includedir'), 'pixman-1') ) +libpixman_extra_cargs = [] +if cc.has_function_attribute('dllexport') + libpixman_extra_cargs = ['-DPIXMAN_API=__declspec(dllexport)'] +endif + pixman_simd_libs = [] simds = [ # the mmx library can be compiled with mmx on x86/x86_64, iwmmxt on @@ -97,10 +102,18 @@ pixman_files = files( 'pixman-utils.c', ) -libpixman = shared_library( +# We cannot use 'link_with' or 'link_whole' because meson wont do the right +# thing for static archives. +_obs = [] +foreach l : pixman_simd_libs + _obs += l.extract_all_objects() +endforeach + +libpixman = library( 'pixman-1', [pixman_files, config_h, version_h], - link_with : [pixman_simd_libs], + objects : _obs, + c_args : libpixman_extra_cargs, dependencies : [dep_m, dep_threads], version : meson.project_version(), install : true, |