diff --git a/lib/meson.build b/lib/meson.build
index 573d47f..c9b249e 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -71,14 +71,26 @@ fribidi_sources = [
   'fribidi-shape.c',
 ]
 
-libfribidi = library('fribidi',
-  fribidi_sources, fribidi_unicode_version_h, fribidi_config_h,
-  generated_tab_include_files, config_h,
-  include_directories: incs,
-  c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
-  version: libversion,
-  soversion: soversion,
-  install: true)
+if host_machine.system() == 'windows' and get_option('default_library') == 'static'
+    libfribidi = library('fribidi',
+    fribidi_sources, fribidi_unicode_version_h, fribidi_config_h,
+    generated_tab_include_files, config_h,
+    include_directories: incs,
+    c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
+    version: libversion,
+    soversion: soversion,
+    install: true,
+    name_suffix: 'lib')
+else
+    libfribidi = library('fribidi',
+    fribidi_sources, fribidi_unicode_version_h, fribidi_config_h,
+    generated_tab_include_files, config_h,
+    include_directories: incs,
+    c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
+    version: libversion,
+    soversion: soversion,
+    install: true)
+endif
 
 libfribidi_dep = declare_dependency(link_with: libfribidi,
   include_directories: incs,
