summaryrefslogtreecommitdiff
path: root/test cases/windows
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2021-08-30 08:45:56 -0400
committerJussi Pakkanen <jpakkane@gmail.com>2021-09-01 19:26:36 +0300
commitea02c1c48a8a11aab78bd535d18fb17fdf62ae33 (patch)
tree1730c491fbb73e07666aaa23ba0aebeb3f664d1c /test cases/windows
parent22c38a0006735c813000b7320b6c5a133fcab360 (diff)
downloadmeson-ea02c1c48a8a11aab78bd535d18fb17fdf62ae33.tar.gz
msvc: Assume UTF8 source by default
Currently every project that uses UTF8 for its source files must add '/utf-8' argument otherwise they don't work non-English locale MSVC. Since meson.build itself is assumed to be UTF8 by default, seems better to assume it for source files by default too. For example: - https://gitlab.freedesktop.org/gstreamer/gst-build/-/blob/master/meson.build#L62 - https://gitlab.gnome.org/GNOME/glib/-/blob/main/meson.build#L29
Diffstat (limited to 'test cases/windows')
-rw-r--r--test cases/windows/18 msvc charset/iso-8859-1.c7
-rw-r--r--test cases/windows/18 msvc charset/meson.build15
-rw-r--r--test cases/windows/18 msvc charset/meson_options.txt1
-rw-r--r--test cases/windows/18 msvc charset/utf8.c7
4 files changed, 30 insertions, 0 deletions
diff --git a/test cases/windows/18 msvc charset/iso-8859-1.c b/test cases/windows/18 msvc charset/iso-8859-1.c
new file mode 100644
index 000000000..66c6a008a
--- /dev/null
+++ b/test cases/windows/18 msvc charset/iso-8859-1.c
@@ -0,0 +1,7 @@
+#include <stdio.h>
+
+int main(int argc, char *argcv[])
+{
+ printf("This is ISO-8859-1 encoded é\n");
+ return 0;
+}
diff --git a/test cases/windows/18 msvc charset/meson.build b/test cases/windows/18 msvc charset/meson.build
new file mode 100644
index 000000000..bb6f667af
--- /dev/null
+++ b/test cases/windows/18 msvc charset/meson.build
@@ -0,0 +1,15 @@
+project('charset', 'c')
+
+cc = meson.get_compiler('c')
+
+if cc.get_id() != 'msvc'
+ error('MESON_SKIP_TEST requires MSVC.')
+endif
+
+executable('utf8', 'utf8.c')
+
+if get_option('test-failure')
+ executable('iso-8859-1', 'iso-8859-1.c')
+else
+ executable('iso-8859-1', 'iso-8859-1.c', c_args: '/source-charset:.850')
+endif
diff --git a/test cases/windows/18 msvc charset/meson_options.txt b/test cases/windows/18 msvc charset/meson_options.txt
new file mode 100644
index 000000000..2cfba6368
--- /dev/null
+++ b/test cases/windows/18 msvc charset/meson_options.txt
@@ -0,0 +1 @@
+option('test-failure', type: 'boolean', value: false)
diff --git a/test cases/windows/18 msvc charset/utf8.c b/test cases/windows/18 msvc charset/utf8.c
new file mode 100644
index 000000000..d6dc5aa06
--- /dev/null
+++ b/test cases/windows/18 msvc charset/utf8.c
@@ -0,0 +1,7 @@
+#include <stdio.h>
+
+int main(int argc, char *argcv[])
+{
+ printf("This is UTF-8 encoded é\n");
+ return 0;
+}