diff options
224 files changed, 7055 insertions, 6938 deletions
@@ -1,3 +1,1916 @@ +commit 2219cfb92daf9b9413de35a1089efa3a1dff7602 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 16:29:40 2017 +0100 + + mkenums: Keep compatibility with Python 2.x + + Since every other tool in GLib is allowed to be used with Python 2.x, + glib-mkenums should follow suit. + + gobject/glib-mkenums.in | 16 ++++++++++++++-- + 1 file changed, 14 insertions(+), 2 deletions(-) + +commit f18556749c75629b9bff538dced6311cf77a3ffb +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 16:04:03 2017 +0100 + + mkenums: Skip unparsed lines + + The old glib-mkenums just skipped lines it could not understand. + + gobject/glib-mkenums.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 1e4135f253bcc315a459363bfe62a8f01b127ee7 +Author: Matthias Clasen <mclasen@redhat.com> +Date: Mon Jul 17 10:46:19 2017 -0400 + + 2.53.4 + + NEWS | 34 ++++++++++++++++++++++++++++++++++ + configure.ac | 2 +- + 2 files changed, 35 insertions(+), 1 deletion(-) + +commit a45bf85ce5c9bc7dd26551430cd2e2d80e079d1c +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 13:59:20 2017 +0100 + + tests: Do not use gnome.genmarshal() + + We are providing glib-genmarshal; using the gnome module in Meson does + not call the just built glib-genmarshal tool. + + tests/gobject/meson.build | 44 + +++++++++++++++++++++++++++++++------------- + 1 file changed, 31 insertions(+), 13 deletions(-) + +commit 4f17d1049f49d8d9e880b4e8a34cc62e0da9092e +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 11:15:06 2017 +0100 + + mkenums: Add missing --fprod handler + + We are not generating the template for the --fprod command line + argument. + + gobject/glib-mkenums.in | 1 + + 1 file changed, 1 insertion(+) + +commit 3c03cc8f68b5d81c7b47423b1a3be3b8c9197d1c +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 10:54:28 2017 +0100 + + meson: Simplify the use of built tools + + The Meson build has fallen a bit behind the Autotools one, when + it comes + to the internally built tools like glib-mkenums and glib-genmarshals. + + We don't need to generate gmarshal.strings any more, and since the + glib-genmarshal tool is now written in Python it can also be used when + cross-compiling, and without indirection, just like we use + glib-mkenums. + + We can also coalesce various rules into a simple array iteration, with + minimal changes to glib-mkenums, thus making the build a bit more + resilient and without unnecessary duplication. + + gobject/glib-mkenums.in | 21 ++++++------- + gobject/gmarshal-list-to-strings.py | 21 ------------- + gobject/meson.build | 43 +++++++++++++-------------- + gobject/tests/gobject_test_marshal.py | 21 ------------- + gobject/tests/meson.build | 55 + +++++++++++++++++++++-------------- + meson.build | 1 + + tests/gobject/meson.build | 2 +- + 7 files changed, 65 insertions(+), 99 deletions(-) + +commit 7ee050dc4bf5187842f656889017414aa1c9a729 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 10:32:33 2017 +0100 + + mkenums: Use the same reporting functions from genmarshal + + We can reuse the same code to make error reporting stand out a + bit more, + with colors and potentially with the ability to make warnings fatal. + + gobject/glib-mkenums.in | 49 + ++++++++++++++++++++++++++++++++++++++++++++++--- + 1 file changed, 46 insertions(+), 3 deletions(-) + +commit 69515e9f5c43046e673e8751e3703703cd41e540 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 10:24:32 2017 +0100 + + mkenums: Skip files not found + + The old glib-mkenums was more forgiving, and simply ignored any + files it + could not find. + + We're going to print a warning, as in the future we may want to allow + more strictness. + + gobject/glib-mkenums.in | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +commit 77a3a962189df86a48c28a3c35d46575f35f7b95 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Mon Jul 17 09:36:13 2017 +0100 + + mkenums: Change ordering for template file and arguments + + This is a bit of a hack to maintain some semblance of backward + compatibility with the old, Perl-based glib-mkenums. The old tool + had an + implicit ordering on the arguments and templates; each argument was + parsed in order, and all the strings appended. This allowed developers + to write: + + glib-mkenums \ + --fhead ... \ + --template a-template-file.c.in \ + --ftail ... + + And have the fhead be prepended to the file-head stanza in the + template, + as well as the ftail be appended to the file-tail stanza in the + template. Short of throwing away ArgumentParser and going over + sys.argv[] element by element, we can simulate that behaviour by + ensuring some ordering in how we build the template strings: + + - the head stanzas are always prepended to the template + - the prod stanzas are always appended to the template + - the tail stanzas are always appended to the template + + Within each instance of the command line argument, we append each + value + to the array in the order in which it appears on the command line. + + This change fixes the libqmi build. + + gobject/glib-mkenums.in | 41 ++++++++++++++++++++++++++++++++++------- + 1 file changed, 34 insertions(+), 7 deletions(-) + +commit 5ba3b4022ebda9e1756d568b7baac7f285bfc0b4 +Author: Chun-wei Fan <fanchunwei@src.gnome.org> +Date: Mon Jul 17 12:49:24 2017 +0800 + + meson.build: Improve checks for va_copy() and __va_copy() + + On Visual Studio, the compilation of the check program for va_copy() + and + __va_copy() succeeds even though they may not be really available. + So, + make sure we include msvc_recommended_pragmas.h which helps us + to detect + this situation by bailing out when warning C4013 (which means this + function is really not available) is encountered. + + Also make sure that on Visual Studio builds we always include + msvc_recommended_pragmas.h is included so that it helps us to find out + problems in the build, and update comments for dirent.h and sys/time.h + as they are not shipped with any Visual Studio. + + https://bugzilla.gnome.org/show_bug.cgi?id=783270 + + meson.build | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) + +commit 35db0457297d29a5d2446c7af840eb74324e90be +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Sun Jul 16 17:25:08 2017 +0100 + + mkenums: Fix typo + + There's a stray '~' that needs to be removed. + + gobject/glib-mkenums.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 69389bdc3475e2b5621f69bb1da2b3781a52539c +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Sun Jul 16 12:06:34 2017 +0100 + + mkenums: Do not check for None + + The symprefix variable can only be a string. + + gobject/glib-mkenums.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit af4a6457eb2ee67296f7f0b8bf05413bb285724b +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Sun Jul 16 11:56:52 2017 +0100 + + mkenums: Some arguments can be used multiple times + + Some of the arguments that affect the generated result in glib-mkenums + can be used multiple times, to avoid embedding unnecessary newlines in + their values. + + This change fixes the NetworkManager build. + + gobject/glib-mkenums.in | 26 +++++++++++++------------- + 1 file changed, 13 insertions(+), 13 deletions(-) + +commit d19f53a7676f456cc18b14750675bd1f70852bb2 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Sun Jul 16 11:15:07 2017 +0100 + + Add more compatibility mode hacks + + When using the `--header --body` compatibility mode, we need to emit + things we generally define in the header, such as the aliases for + standard marshallers, and aliases for deprecated tokens. + + This fixes dbus-binding-tool, which is using `--header --body` and + deprecated tokens. + + See: https://bugs.freedesktop.org/show_bug.cgi?id=101799 + + gobject/glib-genmarshal.in | 33 +++++++++++++++++++++++++++------ + 1 file changed, 27 insertions(+), 6 deletions(-) + +commit fbf35113093e79c8c80f44ade21b5e8a338fe9b2 +Author: Christoph Reiter <creiter@src.gnome.org> +Date: Sun Jul 16 00:18:43 2017 +0200 + + meson: fix typo in install path for gobject_gdb.py + + gobject/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 8451f0b8173cf726d0c6d5275aff465960383276 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat Jul 15 10:17:48 2017 +0100 + + glib-mkenums: unescape \n etc. in command line arguments + + Fixes generation of GStreamer enumtype files with autotools build. + + https://bugzilla.gnome.org/show_bug.cgi?id=779332 + + gobject/glib-mkenums.in | 19 ++++++++++++------- + 1 file changed, 12 insertions(+), 7 deletions(-) + +commit a882c974d30174f308dff325d9f3cec0e303d7c6 +Author: Igor Gnatenko <ignatenko@src.gnome.org> +Date: Sat Jul 15 15:31:05 2017 +0200 + + mkenums: pass string for re.sub() for real + + Signed-off-by: Igor Gnatenko <ignatenko@src.gnome.org> + + gobject/glib-mkenums.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 1a182df5d1abdc7a1101c53651561e6cc5f30f73 +Author: Igor Gnatenko <ignatenko@src.gnome.org> +Date: Sat Jul 15 15:30:16 2017 +0200 + + mkenums: don't try to call undefined function + + argparse will take care about everything + + Signed-off-by: Igor Gnatenko <ignatenko@src.gnome.org> + + gobject/glib-mkenums.in | 3 --- + 1 file changed, 3 deletions(-) + +commit 615238d0a46bcce8fa7109c7d6653f5fbf239e24 +Author: Igor Gnatenko <ignatenko@src.gnome.org> +Date: Sat Jul 15 15:26:54 2017 +0200 + + mkenums: make string raw for real regex + + Signed-off-by: Igor Gnatenko <ignatenko@src.gnome.org> + + gobject/glib-mkenums.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit d753a411c0f74b8fc8f4e9bc106b29bd1b603776 +Author: Igor Gnatenko <ignatenko@src.gnome.org> +Date: Sat Jul 15 15:22:20 2017 +0200 + + mkenums: trivial style fixes + + Signed-off-by: Igor Gnatenko <ignatenko@src.gnome.org> + + gobject/glib-mkenums.in | 58 + ++++++++++++++++++++++++++----------------------- + 1 file changed, 31 insertions(+), 27 deletions(-) + +commit 112908d9e4a7a9ecac8cda830dba599f88b47672 +Author: Igor Gnatenko <ignatenko@src.gnome.org> +Date: Sat Jul 15 15:21:11 2017 +0200 + + mkenums: fix main incompatibility with python2 + + Signed-off-by: Igor Gnatenko <ignatenko@src.gnome.org> + + gobject/glib-mkenums.in | 2 ++ + 1 file changed, 2 insertions(+) + +commit 9306ada4fdd2c00813c7ea088cd6fb5003ccd352 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat Jul 15 11:21:57 2017 +0100 + + meson: fix 'Unknown variable "gtester"' error on windows + + With msys64/mingw. + + glib/tests/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 683809d5f751575775d12917581eb7b9a2acf0f5 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Fri Jul 14 22:05:01 2017 +0100 + + Use env for gdbus-codegen's script + + This allows us to build with Python 3 without using an absolute path. + + gio/gdbus-2.0/codegen/gdbus-codegen.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 4395a8977727e2c569b472dbe8710ffb87c219e2 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Fri Jul 14 21:21:33 2017 +0100 + + Use env to run the Python-based tools + + Otherwise overriding the Python interpreter with `--with-python` won't + work correctly. + + gobject/glib-genmarshal.in | 2 +- + gobject/glib-mkenums.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit 0f18a2ebda4ec0440ec545542f9fc2f60cd54c5d +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Fri Jul 14 20:43:19 2017 +0100 + + meson: Substitute the Python shebang + + Just like we do with Autotools. This allows building glib-mkenums and + glib-genmarshal on older platforms that only have Python 2. + + gobject/glib-genmarshal.in | 2 +- + gobject/glib-mkenums.in | 2 +- + gobject/meson.build | 2 ++ + 3 files changed, 4 insertions(+), 2 deletions(-) + +commit 1eda0627f3792cc626f19c28eb1f478dd9d2df5e +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Fri Jul 14 13:56:47 2017 +0100 + + meson: Use the appropriate libdir-relative paths + + meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit 065a8a488ad2ee4a7523fb673e1555e5cf8762b5 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Fri Jul 14 13:56:02 2017 +0100 + + meson: Use the appropriate interface and binary ages + + We need to build them out of the project version, and then propagate + them. + + glib/tests/meson.build | 2 +- + gobject/tests/meson.build | 2 +- + meson.build | 15 +++++++++------ + 3 files changed, 11 insertions(+), 8 deletions(-) + +commit 37ff4189fdbb73e81c6431c6862317d94fbef55e +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Fri Jul 14 13:55:42 2017 +0100 + + meson: Sync the version with Autotools + + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit be8820128faf1eb466ad896afd6133c8e5092156 +Author: Thibault Saunier <thibault.saunier@osg.samsung.com> +Date: Thu Jul 13 22:22:16 2017 -0400 + + meson: fix remaining wrong #include's for gdbus_codegen files + + This is a follow up on 266bc1e510e154f7b5e793adb227d979ae655446 + to fix building tests and examples when using GLib as a meson + subproject. + + gio/tests/gdbus-object-manager-example/meson.build | 5 +++-- + gio/tests/meson.build | 3 ++- + 2 files changed, 5 insertions(+), 3 deletions(-) + +commit b8c8bb73b0683456b632cf8a49fa9d00568115b5 +Author: Matthias Clasen <mclasen@redhat.com> +Date: Thu Jul 13 19:35:09 2017 -0400 + + Fix glib-genmarshal build with meson + + This is no longer built from a C source, but a python file. + + gobject/glib-genmarshal.in | 2 +- + gobject/meson.build | 10 ++++++---- + 2 files changed, 7 insertions(+), 5 deletions(-) + +commit 653be67d7d756958917f6107d676c78666416dc4 +Author: Matthias Clasen <mclasen@redhat.com> +Date: Thu Jul 13 19:34:21 2017 -0400 + + Add gopenuriportal.c to the meson build + + This was added recently. + + gio/meson.build | 6 ++++++ + 1 file changed, 6 insertions(+) + +commit 4db695bfb7d9f2d085020ace67b370afc8838172 +Author: Alessandro Decina <alessandro.d@gmail.com> +Date: Wed Jul 12 21:57:11 2017 +1000 + + meson: replace meson.current_source_dir() with files() + + As the meson reference doc says, files() is preferred over building + paths with current_source_dir(). + + gio/meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit 266bc1e510e154f7b5e793adb227d979ae655446 +Author: Alessandro Decina <alessandro.d@gmail.com> +Date: Wed Jul 12 16:15:38 2017 +1000 + + meson: fix wrong #include's for gdbus_codegen files + + When building glib as a subproject, #include's for xdp-dbus.h from + xdp-dbus.c + and for gdbus-daemon-generated.h from gdbus-daemon-generated.c were + generated as + being prefixed with the subproject prefix, eg + #include "subproject/glib/gio/gdbus-daemon-generated.h". + That failed since the root of the build directory is obviously not + part of the + include path when building a subproject. + + Passing --output-directory @OUTDIR@ to gdbus-codegen and removing + @OUTDIR@ from + --generate-c-code fixes the issue. + + gio/meson.build | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +commit dbf0a566703586db9777c3d56e01aa40c02ab9ac +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Mon Jun 26 23:50:01 2017 +0100 + + glib-mkenums: pick up /*< nick=xyz >*/ annotation again + + ... in glib-mkenums python port. + + Was parsed correctly but then skipped due to inverted condition. + + https://bugzilla.gnome.org/show_bug.cgi?id=779332 + + gobject/glib-mkenums.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 4268372fae64a1942bcab0f8b1acb0b16a1d65cd +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Wed Jun 14 23:57:11 2017 +0100 + + meson: error out if atomic ops would be available with -march=i486 + + Same as autotools build. + + meson.build | 9 +++++++++ + 1 file changed, 9 insertions(+) + +commit 0689231bd61f86190688cc262fcc3058cb672557 +Author: Thibault Saunier <thibault.saunier@osg.samsung.com> +Date: Fri Jun 23 12:36:38 2017 -0400 + + meson: Fix the build defining HAVE_RTLD_X + + Otherwise RTLD_XXX get redefined. + + https://bugzilla.gnome.org/show_bug.cgi?id=784133 + + config.h.meson | 3 +++ + meson.build | 12 ++++++++++++ + 2 files changed, 15 insertions(+) + +commit eb2196e89d1700941b35c604bf6b657660b3b2c8 +Author: Thibault Saunier <thibault.saunier@osg.samsung.com> +Date: Fri Jun 23 12:00:13 2017 -0400 + + meson: Fix building as a subproject + + meson.source_root() returns the toplevel source directory + of the toplevel project, thus the paths were wrong when using + it. Simply using files() gets us the right path + + https://bugzilla.gnome.org/show_bug.cgi?id=784133 + + gio/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 1d30c9eebc8bc4efcd8da8c479040389edd0cfe3 +Author: Thibault Saunier <thibault.saunier@osg.samsung.com> +Date: Fri Jun 23 11:58:51 2017 -0400 + + meson: Defining MAJOR_IN_ as done by AC_HEADER_MAJOR + + https://bugzilla.gnome.org/show_bug.cgi?id=784133 + + config.h.meson | 3 +++ + meson.build | 6 ++++++ + 2 files changed, 9 insertions(+) + +commit 10ae3867274457aa2906b96991e46fbce3db63bd +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sun Jun 4 16:13:21 2017 +0100 + + meson: gio tests need to link against gobject as well + + With meson from git dependencies of dependencies are no + longer added automatically and recursively to the linker + lines. Meaning dependencies that are used have to be + passed directly and explicitly or we'll get linker errors. + + gio/tests/meson.build | 26 ++++++++++++++------------ + 1 file changed, 14 insertions(+), 12 deletions(-) + +commit 24ea260b4cb623db4af02085f8f8492ddf635b7e +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Wed May 31 23:54:59 2017 +0100 + + meson: docs: make gtk-doc find the gobject.types file + + Should really use files('gobject.types') instead, but that + seems to get expanded to the build path for some reason: + https://github.com/mesonbuild/meson/issues/1875 + + docs/reference/gobject/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 42705b57f78556ce0327f3a4bf741bf8bb1d3a2b +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Mon May 29 15:59:11 2017 +0100 + + meson add missing gio/tests subdirectory/file + + gio/tests/de/LC_MESSAGES/meson.build | 8 ++++++++ + 1 file changed, 8 insertions(+) + +commit dc9b01fd64e74fc678ee5f03360778c5fc32b9da +Author: Matej Knopp <matej.knopp@gmail.com> +Date: Sun May 28 22:29:20 2017 +0200 + + glib-mkenums: add back missing --fprod option + + ... in glib-mkenums python port. + + https://bugzilla.gnome.org/show_bug.cgi?id=779332 + https://bugzilla.gnome.org/show_bug.cgi?id=783198 + + gobject/glib-mkenums.in | 2 ++ + 1 file changed, 2 insertions(+) + +commit 29f9fe041b75c32d0d7400a22dae346f4ad6a670 +Author: Matej Knopp <matej.knopp@gmail.com> +Date: Sun May 28 22:29:20 2017 +0200 + + glib-mkenums: Fix parsing of multiline comments + + ... in glib-mkenums python port. + + https://bugzilla.gnome.org/show_bug.cgi?id=779332 + https://bugzilla.gnome.org/show_bug.cgi?id=783198 + + gobject/glib-mkenums.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit 69bfd1a7710fb4da4b2a226a401a406aec24df6b +Author: Sebastian Dröge <sebastian@centricular.com> +Date: Mon May 22 13:07:19 2017 +0300 + + meson: Install missing guuid.h header + + glib/meson.build | 1 + + 1 file changed, 1 insertion(+) + +commit 1672678bc48c1c060d1ee6bb3df124b3e4f9ca33 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat May 13 14:56:29 2017 +0100 + + glib-mkenums: fix parsing of /*< flags >*/ annotation + + Fixes get_type function generation for: + + - GMountMountFlags + - GDriveStartFlags + - GResourceLookupFlags + - GSocketMsgFlags + - GTlsDatabaseVerifyFlags + - GTestDBusFlags + + which were registered as enum types before, which broke + some unit tests. + + Problem is that the flags annotation has no value, so + options.get('flags') would always return None even if + it was present. + + https://bugzilla.gnome.org/show_bug.cgi?id=779332 + + gobject/glib-mkenums.in | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +commit 03eac5fac51da789085ad60dc1858b2cf2c6a80d +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat May 13 11:10:52 2017 +0100 + + meson: rebase on top of master ~2.53.1 + + From 2.51.2 + + gio/meson.build | 29 ++++++++++++++++++----------- + gio/tests/meson.build | 34 ++++++++++++++++++++++------------ + meson.build | 22 +++++++++++++++++++++- + 3 files changed, 61 insertions(+), 24 deletions(-) + +commit 2e9fd74b2576d276e246655aef7c40e04e51ea9e +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Tue May 2 17:04:58 2017 +0100 + + meson: add tests/gobject and tests/refcount + + meson.build | 3 ++- + tests/gobject/meson.build | 59 + ++++++++++++++++++++++++++++++++++++++++++++++ + tests/meson.build | 14 +++++++++++ + tests/refcount/meson.build | 29 +++++++++++++++++++++++ + 4 files changed, 104 insertions(+), 1 deletion(-) + +commit 6af4f1752a44384290f378594c9fb7f655e31682 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Fri Feb 24 20:58:04 2017 +0000 + + meson: gio/tests: remove some leftover rubbish + + gio/tests/meson.build | 40 ---------------------------------------- + 1 file changed, 40 deletions(-) + +commit 613e00826ead73e541648fcb53cbfde77c36650d +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Fri Feb 24 09:46:36 2017 +0000 + + meson: gio/tests: add more gio tests + + Need to fix up some of the tests a little, because the + test binary will not necessarily be run from the current + build sub-directory, and the build directory structure + might not always be a mirror of the source directory + structure, so pass location of glib-mkenums and + glib-compile-scheme and such directly. + + gio/meson.build | 2 +- + gio/tests/appinfo.c | 9 ++++++++ + gio/tests/desktop-app-info.c | 8 +++++++ + gio/tests/gschema-compile.c | 7 +++++- + gio/tests/gsettings.c | 30 +++++++++++++++++++++----- + gio/tests/meson.build | 51 + ++++++++++++++++++++++++++++++++++++++++---- + 6 files changed, 96 insertions(+), 11 deletions(-) + +commit 1acd6de763b33f43b366c0298653734087001f5f +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Sat Mar 25 11:09:46 2017 +0530 + + meson: Use glib-mkenums directly instead of via build_mkenum.py + + This is no longer needed because we use templates and custom targets + can capture output just fine on all platforms. + + gio/build_mkenum.py | 25 ------------------------- + gio/meson.build | 14 ++++++++------ + 2 files changed, 8 insertions(+), 31 deletions(-) + +commit 2d72a9e1d13fbcf9483eaf9ddb2a258d7aaf3ca2 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Thu Mar 23 10:29:50 2017 +0530 + + glib-mkenums: misc fixes to python port + + gobject/glib-mkenums.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 806a4be4cfd6186b43a379bf1653224804d3a224 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 22:45:42 2017 +0530 + + Add zlib, libffi, and proxy-libintl subproject wraps + + This allows you to clone glib and just build it anywhere without any + extra dependencies besides Python 3 and Meson itself (and maybe git). + + .gitignore | 2 +- + subprojects/libffi.wrap | 4 ++++ + subprojects/proxy-libintl.wrap | 4 ++++ + subprojects/zlib.wrap | 4 ++++ + 4 files changed, 13 insertions(+), 1 deletion(-) + +commit dd8ff547362bb407f786ff31d853a0b3a61024f7 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 22:12:19 2017 +0530 + + meson: Use Python port of glib-mkenums + + This reduces the build-time dependencies of glib to only Python 3, + Meson, and git. Git is also optional if you provide a tarball in + which the subproject directories already exist. + + The Python port was done by Jussi Pakkanen on bugzilla: + https://bugzilla.gnome.org/show_bug.cgi?id=779332 + + This version contains some fixes from that and also changes all + instances of `@` to `\u0040` because Meson does not yet provide a + configure_file() mode that ignores unknown @MACRO@ values. + + gio/build_mkenum.py | 4 +- + gio/meson.build | 4 +- + gobject/glib-mkenums.in | 1150 + +++++++++++++++++++++++------------------------ + gobject/meson.build | 1 - + meson.build | 3 - + 5 files changed, 579 insertions(+), 583 deletions(-) + +commit ee94ad776ef533f16c2561ea038106a8e23b1a75 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 22:06:22 2017 +0530 + + meson: Use proxy-libintl if gettext is not found + + This is a stub-only library that can be used while building against + MSVC and contains no i18n machinery at all. + + The dependencies added indirectly use the libintl.h header, and when + built as a subproject, the header won't be in a path known the + pre-processor. + + gio/meson.build | 2 +- + gio/win32/meson.build | 1 + + glib/meson.build | 8 ++++---- + gobject/meson.build | 2 +- + meson.build | 25 ++++++++++++++++--------- + 5 files changed, 23 insertions(+), 15 deletions(-) + +commit fb1f52e32fa21e0d7a3b5ac5e37afbd155ed8cee +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 16:49:55 2017 +0530 + + meson: Only require libmount on Linux + + It's not available on other platforms, so don't require the user to + explicitly disable it there. + + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit eb07a2c87dd22039f2ce90aef7872aaef2e5d4af +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 16:49:09 2017 +0530 + + meson: Allow using libffi and zlib as subprojects + + Also use the python3 module to find python3, and require Meson 0.37.1 + + meson.build | 14 ++++---------- + 1 file changed, 4 insertions(+), 10 deletions(-) + +commit 2f792f64848307d6662e7b2f026c1c8ea1fc9437 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 16:41:40 2017 +0530 + + meson: Print output for more compiler checks + + When no 'name:' kwarg is specified for cc.run, no output is printed. + + This makes it difficult to figure out what is causing a pause in the + configure process. + + meson.build | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +commit 88e437873ad1444e6f93b8c47145b1c9eea9c592 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Tue Mar 21 16:38:47 2017 +0530 + + meson: Detect with-docs and with-man automatically + + By default, only build man pages and gtk-doc if the build-deps were + found. To force-enable, pass -Dwith-docs=yes and -Dwith-man=yes. + + Also use a foreach loop for man pages instead of listing them all + manually + + docs/reference/gio/meson.build | 86 + ++++++-------------------------------- + docs/reference/glib/meson.build | 36 +++++----------- + docs/reference/gobject/meson.build | 36 +++++----------- + meson.build | 11 +++-- + meson_options.txt | 4 +- + 5 files changed, 42 insertions(+), 131 deletions(-) + +commit 5549a1d0c387d320f6141d46e34db58d1d041f84 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Fri Feb 24 16:07:45 2017 +0530 + + meson: Rebase and update to 2.51.2 + + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 192cd652d4a2c3b6fec9cfab357c87a6850492f8 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Thu Feb 23 16:13:23 2017 +0000 + + tests: gio/tests: add gdbus tests + + gio/tests/meson.build | 130 + ++++++++++++++++++++++++++++++++++++++++++++------ + 1 file changed, 116 insertions(+), 14 deletions(-) + +commit 4e0ef7655de3692e10d17f56224310ccb3f6cf9c +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Thu Feb 23 00:40:45 2017 +0000 + + meson: gio/tests: add more gresource tests + + gio/meson.build | 2 +- + gio/tests/meson.build | 72 + ++++++++++++++++++++++++++++++++++++++++++++++++++- + 2 files changed, 72 insertions(+), 2 deletions(-) + +commit 2f29ee1735fe83e65505c47e1a68630d9f7e1032 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Thu Feb 16 09:52:58 2017 +0000 + + meson: add -fvisibility=hidden explicitly to selected targets + + Don't use it project-wide for building everything. Otherwise + symbols for shared modules won't be exposed, e.g. in the + resourceplugin used by the gio resource unit test. + + gio/meson.build | 3 +++ + gio/xdgmime/meson.build | 2 +- + glib/libcharset/meson.build | 2 +- + glib/meson.build | 2 +- + glib/pcre/meson.build | 2 +- + gmodule/meson.build | 3 +-- + gobject/meson.build | 2 +- + gthread/meson.build | 3 +-- + meson.build | 5 +++-- + 9 files changed, 13 insertions(+), 11 deletions(-) + +commit 1224ff0c39b9975e685f433893fe7163eec1a81b +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Thu Feb 16 09:50:56 2017 +0000 + + meson: use add_project_arguments() instead of add_global_arguments() + + add_global_arguments() doesn't work if the project is used as a + subproject. + + meson.build | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +commit 34e4e25d53d72db65bb2225a607d3274854fb549 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat Jan 28 12:52:18 2017 +0000 + + meson: gio/tests: add more missing tests + + gio/meson.build | 3 +- + gio/tests/gdbus-object-manager-example/meson.build | 23 ++++ + gio/tests/gengiotypefuncs.py | 45 ++++++ + gio/tests/meson.build | 151 + ++++++++++++--------- + gobject/tests/meson.build | 8 ++ + 5 files changed, 163 insertions(+), 67 deletions(-) + +commit f438c04fac22d31d43afef5f7666bf04dda75bf3 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat Jan 28 17:00:41 2017 +0000 + + gio: tests: rename generated giotypefunc.c to giotypefuncs.inc + + This is needed for the Meson port, a file name .c that's included + and shouldn't be compiled into an object is difficult to manage + otherwise. + + gio/tests/.gitignore | 2 +- + gio/tests/Makefile.am | 6 +++--- + gio/tests/defaultvalue.c | 2 +- + 3 files changed, 5 insertions(+), 5 deletions(-) + +commit 33fb1bbb61bce38368acd5d503a16e46c511b674 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Sat Jan 28 16:59:45 2017 +0000 + + meson: gio, gobject: use files() for headers list + + Since these variables are referenced from other directories + such as the tests/ subdir as well. + + gio/meson.build | 16 ++++++++-------- + gobject/meson.build | 4 ++-- + 2 files changed, 10 insertions(+), 10 deletions(-) + +commit 89ee284d2b4487096d7881060ff7fc6d363c824f +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Thu Jan 26 10:49:47 2017 +0000 + + meson: glib/tests: add missing tests + + glib/meson.build | 2 +- + glib/tests/meson.build | 30 ++++++++++++++++++++++++++++++ + 2 files changed, 31 insertions(+), 1 deletion(-) + +commit d29f022b0b2697df22918e7675bf18a6ca0b83c4 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Wed Jan 25 17:02:51 2017 +0000 + + meson: add support for dtrace/systemtap + + Still at least one FIXME. And untested so far. It builds. + + gio/meson.build | 17 +++++++++++++++++ + glib/meson.build | 17 +++++++++++++++++ + gobject/meson.build | 17 +++++++++++++++++ + meson.build | 44 ++++++++++++++++++++++++++++++++++++++++++++ + meson_options.txt | 6 ++++++ + 5 files changed, 101 insertions(+) + +commit 9fdcb2bf37d5a877ac35e040d8f8570cd776a073 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Jan 25 18:29:59 2017 +0530 + + meson: Add a comment about the gdbus-peer gio test + + So that it's not forgotten later. + + gio/tests/meson.build | 1 + + 1 file changed, 1 insertion(+) + +commit 5afc6600e8de778c73d8b9addbc9860830d1ba6d +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Jan 25 18:17:24 2017 +0530 + + meson: Add missing termios.h check + + Same change as d1d1aba3b4c024255b530b0f4f2dc9dd19a7086e + + https://bugzilla.gnome.org/show_bug.cgi?id=775517 + + meson.build | 1 + + 1 file changed, 1 insertion(+) + +commit 3c6261993073ea83f5f985790964e503db26e8ea +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Thu Dec 29 08:09:44 2016 +0530 + + tests: autoptr test can be run on gcc, clang, intel + + The only place where it won't work, is MSVC and maybe Sun Studio, but + we'd need someone to test Sun Studio first. + + gio/tests/meson.build | 2 +- + glib/tests/meson.build | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit 9096bde3ce3f5a03abffcd9f08645dbe3b159bfb +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Dec 21 08:51:50 2016 +0530 + + build: Remove function checks for unused functions + + These were removed several years ago. + + configure.ac | 4 ++-- + meson.build | 2 -- + 2 files changed, 2 insertions(+), 4 deletions(-) + +commit 70021b0e837c7b74ab687d95c6b788f8288c3463 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Dec 21 08:50:30 2016 +0530 + + meson: Derive defines from header, struct, function names + + This is what Autoconf macros do too, so no need to hard-code the + names. + + meson.build | 288 + ++++++++++++++++++++++++++++++------------------------------ + 1 file changed, 146 insertions(+), 142 deletions(-) + +commit 122f4c051db2d1f02569db5b167c0932ae29aa4d +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Dec 21 07:46:30 2016 +0530 + + meson: Add tls-interaction test, and fix giomodule test + + giomodule test needed symbol visibility pragmas added. This is + needed on + Windows anyway, so it's better to do it this way rather than disabling + -fvisibility=hidden for the test modules. + + gio/tests/meson.build | 8 ++++++++ + gio/tests/modules/symbol-visibility.h | 16 ++++++++++++++++ + gio/tests/modules/test-module-a.c | 6 ++++-- + gio/tests/modules/test-module-b.c | 6 ++++-- + 4 files changed, 32 insertions(+), 4 deletions(-) + +commit e2da3cb5996707c1c351ce02695fdb6a9b2af78b +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Dec 21 06:34:47 2016 +0530 + + meson: Port to latest master (2.51.0) + + Also remove headers from some gio sources. Headers do not need to be + added to the list of sources. + + + various smaller self-explanatory fixes. + + docs/reference/gio/meson.build | 9 +++++ + gio/meson.build | 78 + +++++++++++++++++++++++++++++++----------- + glib/meson.build | 2 +- + gobject/meson.build | 2 +- + meson.build | 34 +++++++++++++++--- + meson_options.txt | 1 + + 6 files changed, 99 insertions(+), 27 deletions(-) + +commit d10be6102f28e63f5d85c9d8500af28dff2b7ca7 +Author: Patrick Griffis <tingping@tingping.se> +Date: Fri Dec 9 14:30:22 2016 -0500 + + meson: Minor modernizations + + gio/gdbus-2.0/codegen/meson.build | 12 ++- + gio/inotify/meson.build | 3 +- + gio/kqueue/meson.build | 3 +- + gio/meson.build | 11 ++- + gio/win32/meson.build | 3 +- + gio/xdgmime/meson.build | 3 +- + glib/libcharset/meson.build | 3 +- + glib/meson.build | 176 + +++++++++++++++++++------------------- + glib/pcre/meson.build | 40 ++++----- + gmodule/meson.build | 2 +- + gobject/meson.build | 6 +- + meson.build | 40 +++++---- + 12 files changed, 158 insertions(+), 144 deletions(-) + +commit bc2bb5639b4d499e07ae2f718def07c86a3ded67 +Author: Patrick Griffis <tingping@tingping.se> +Date: Fri Dec 9 13:51:41 2016 -0500 + + meson: Match upstream gtkdoc changes + + docs/reference/gio/meson.build | 6 +----- + docs/reference/glib/meson.build | 8 +------- + docs/reference/gobject/meson.build | 6 +----- + 3 files changed, 3 insertions(+), 17 deletions(-) + +commit 0df9aab0537dd61e2ee637c3b6ddc9d9d60bcddf +Author: Patrick Griffis <tingping@tingping.se> +Date: Wed Dec 7 05:28:33 2016 -0500 + + meson: Build all docs + + docs/reference/gio/meson.build | 216 + +++++++++++++++++++++++ + docs/reference/gio/xml/gtkdocentities.ent.in | 8 + + docs/reference/gio/xml/meson.build | 14 ++ + docs/reference/glib/meson.build | 123 +++++++++++++ + docs/reference/glib/xml/gtkdocentities.ent.in | 8 + + docs/reference/glib/xml/meson.build | 14 ++ + docs/reference/gobject/meson.build | 82 +++++++++ + docs/reference/gobject/xml/gtkdocentities.ent.in | 8 + + docs/reference/gobject/xml/meson.build | 14 ++ + meson.build | 27 ++- + 10 files changed, 512 insertions(+), 2 deletions(-) + +commit c61a72f4bc01d7e4f5071c8f6a8de29405cac1d0 +Author: Patrick Griffis <tingping@tingping.se> +Date: Tue Dec 6 10:14:57 2016 -0500 + + meson: Match soname version of autotools + + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit a690e2a375ac0803412186b68eadf8723ee43a39 +Author: Patrick Griffis <tingping@tingping.se> +Date: Tue Dec 6 08:07:03 2016 -0500 + + meson: More build fixes + + - Fix installing various data files + - Build translations + + gio/meson.build | 25 ++++++---- + glib/meson.build | 13 ++++++ + gobject/meson.build | 11 +++++ + meson.build | 10 +++- + meson_options.txt | 2 + + po/meson.build | 129 + ++++++++++++++++++++++++++++++++++++++++++++++++++++ + 6 files changed, 178 insertions(+), 12 deletions(-) + +commit fe2a9887a8ccb14f2386e01b14834e97a33bc2d7 +Author: Nirbheek Chauhan <nirbheek@centricular.com> +Date: Wed Dec 21 04:07:24 2016 +0530 + + meson: Improve MSVC and MinGW support and fix dependencies everywhere + + Disable gio tests on Windows, fix .gitignore to not ignore + config.h.meson, and add more things to it. + + Rename the library file naming and versioning to match what Autotools + outputs, e.g., libglib-2.0.so.0.5000.2 on Linux, libglib-2.0-0.dll + and + glib-2.0-0.dll on Windows with MSVC. + + Several more tiny fixes, more executables built and installed, install + pkg-config and m4 files, fix building of gobject tests. + + Changes to gdbus-codegen to support out-of-tree builds without + environment variables set (which you can't in Meson). We now add the + build directory to the Python module search path. + + .gitignore | 15 +- + config.h.meson | 15 +- + gio/build_mkenum.py | 16 +- + gio/data-to-c.py | 16 + + gio/gdbus-2.0/codegen/codegen.py | 2 +- + gio/gdbus-2.0/codegen/config.py.in | 3 - + gio/gdbus-2.0/codegen/gdbus-codegen.in | 12 +- + gio/gdbus-2.0/codegen/meson.build | 35 ++ + gio/inotify/meson.build | 3 +- + gio/kqueue/meson.build | 4 +- + gio/meson.build | 365 +++++++-------- + gio/tests/meson.build | 40 +- + gio/tests/modules/meson.build | 6 +- + gio/win32/meson.build | 4 +- + gio/xdgmime/meson.build | 2 +- + glib/libcharset/meson.build | 2 +- + glib/meson.build | 95 +++- + glib/pcre/meson.build | 50 +++ + glib/tests/meson.build | 50 +-- + gmodule/meson.build | 40 +- + gobject/gmarshal-list-to-strings.py | 21 + + gobject/meson.build | 53 ++- + gobject/tests/gobject_test_marshal.py | 10 +- + gobject/tests/meson.build | 20 +- + gthread/meson.build | 9 +- + meson.build | 799 + +++++++++++++++++++-------------- + 26 files changed, 981 insertions(+), 706 deletions(-) + +commit 213957970ee4e58e37ee2c81766284af34dddcb9 +Author: Tim-Philipp Müller <tim@centricular.com> +Date: Mon Mar 7 11:13:24 2016 +0000 + + meson: Fix glib, add gobject, gio, gthread, gmodule, etc + + Several small fixes to the build files. + + Lots of tests have also been added, and glib tests pass now. + + config.h.meson | 786 ++++++++++++++++++++++ + gio/build_mkenum.py | 23 + + gio/inotify/meson.build | 13 + + gio/kqueue/meson.build | 15 + + gio/meson.build | 802 ++++++++++++++++++++++ + gio/tests/meson.build | 219 ++++++ + gio/tests/modules/meson.build | 13 + + gio/win32/meson.build | 13 + + gio/xdgmime/meson.build | 15 + + glib/glibconfig.h.in | 83 +-- + glib/libcharset/meson.build | 4 +- + glib/meson.build | 108 ++- + glib/tests/Makefile.am | 1 + + glib/tests/meson.build | 165 +++++ + gmodule/meson.build | 90 +++ + gobject/meson.build | 65 ++ + gobject/tests/gobject_test_marshal.py | 17 + + gobject/tests/meson.build | 69 ++ + gthread/meson.build | 11 + + meson.build | 1197 + ++++++++++++++++++++++++++------- + 20 files changed, 3405 insertions(+), 304 deletions(-) + +commit 98e641424b2e24cdae8c6e4ba022e53fc89d4640 +Author: Jussi Pakkanen <jpakkane@gmail.com> +Date: Wed Aug 7 23:41:12 2013 +0300 + + meson: initial glib build + + https://mail.gnome.org/archives/gtk-devel-list/2013-August/msg00001.html + + glib/glibconfig.h.in | 222 ++++++++++++++++++ + glib/libcharset/meson.build | 3 + + glib/meson.build | 106 +++++++++ + meson.build | 538 + ++++++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 869 insertions(+) + +commit 41385745e73df690ff3ab9f07d975626935a51de +Author: Matthias Clasen <mclasen@redhat.com> +Date: Thu Jul 13 19:03:00 2017 -0400 + + Revert "mkenums: Support public/private trigraph" + + This reverts commit 9ba17d511e325eec1e0c1c27cb4d37de4f12ac1e. + + This conflicts with the python port in the meson branch. + + gobject/glib-mkenums.in | 19 ------------------- + 1 file changed, 19 deletions(-) + +commit 9aa98db40450bc539a5cf59640c9f9cf28da93e8 +Author: Chun-wei Fan <fanchunwei@src.gnome.org> +Date: Thu Jul 13 17:45:44 2017 +0800 + + Visual Studio builds: Use PythonDir instead of PythonPath + + This is to avoid confusion with the PYTHONPATH envvar that is commonly + used to determine where additional Python modules can be loaded, + especially in the case of a MSBuild build. Note that envvar names are + not case sensitive on Windows in general. + + win32/vs10/README.txt | 2 +- + win32/vs10/glib-install.propsin | 8 ++++---- + win32/vs10/glib-version-paths.props.in | 14 +++++++------- + win32/vs9/README.txt | 2 +- + win32/vs9/glib-install.vspropsin | 8 ++++---- + win32/vs9/glib-version-paths.vsprops.in | 2 +- + 6 files changed, 18 insertions(+), 18 deletions(-) + +commit 75fa8c2afbab4f414d2eb03684d9f807bd690aef +Author: Руслан Ижбулатов <lrn1986@gmail.com> +Date: Thu Jul 13 01:42:13 2017 +0000 + + W32 - don't use gettext & gcov during gettext init + + Non-representable characters during UTF16->locale conversion + will cause gcov code to return an error, for which it will try + to use gettext, so that the error message is localized. + + If such call is made while gettext is being initialized + (there's a g_once_init_enter up the stack), the thread will hang + forever. + + To solve this, use W32 API to do the UTF16->locale conversion + and don't use gettext when it returns an error. + + Also optimize g_win32_locale_filename_from_utf8() a bit, + as we need more UTF16 and less UTF8 now. + + https://bugzilla.gnome.org/show_bug.cgi?id=784579 + + glib/gwin32.c | 76 + ++++++++++++++++++++++++++++++++++++++++++++++------------- + 1 file changed, 60 insertions(+), 16 deletions(-) + +commit b803c0a224f88c4d9afac1ae967832c6d9633551 +Author: Christoph Reiter <creiter@src.gnome.org> +Date: Wed Jul 12 23:36:18 2017 +0200 + + gspawn-win32: Fix multiple definition error with a static build + + gspawn-win32.c gets included by gspawn-win32-helper.c and in case + of a static build the definitions there clash with the ones from + libglib. Fixed by not compiling the ABI comapt code in case + GSPAWN_HELPER is defined. + + I missed this issue in commit 23dffdd949eb1c + + https://bugzilla.gnome.org/show_bug.cgi?id=780634 + + glib/gspawn-win32.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +commit b60e4665ef3c74179885f528c3f675526600830e +Author: Christoph Reiter <creiter@src.gnome.org> +Date: Wed Jul 12 22:32:25 2017 +0200 + + gwin32: Fix missing prototypes on win64 + + I missed this in commit 5067d25a74783a8b6e + + https://bugzilla.gnome.org/show_bug.cgi?id=780634 + + glib/gwin32.h | 2 -- + 1 file changed, 2 deletions(-) + +commit c4b5702e08d97b1b1163c2022ad4c7d92bee140c +Author: Руслан Ижбулатов <lrn1986@gmail.com> +Date: Wed Jul 12 19:46:07 2017 +0000 + + Use %lu format for DWORD + + glib/gmain.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 5eededccda6236cd307b0f0bcc852e495e9fd8f8 +Author: Daniel Boles <dboles@src.gnome.org> +Date: Wed Jul 12 19:23:40 2017 +0100 + + gsettingsschema: Fix a compiler warning + + g_build_filename() returns a gchar*, but it was stored in a const + gchar* + and then g_free()d, which is wrong and led to a warning about + the const + qualifier being cast away. + + gio/gsettingsschema.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 7d64d109f0d78ba683df1122ddfadd5ace3e9143 +Author: Chun-wei Fan <fanchunwei@src.gnome.org> +Date: Wed Jul 12 18:18:28 2017 +0800 + + MSVC 201x builds: Allow different Python versions per toolset + + Use conditionals to select the Python installation, so that we + can more + stick to the default Visual Studio versions used to compile each + official Python releases more closely. + + This means by default: + -2010/2012/2013 builds use Python 3.4.x, which is built with 2010 + -2015/2017 builds use Python 3.6.x, which is built with 2015 + + win32/vs10/glib-version-paths.props.in | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +commit a00e7ed32e510791016725ce0a3dc08f59b9a443 +Author: Chun-wei Fan <fanchunwei@src.gnome.org> +Date: Wed Jul 12 11:45:34 2017 +0800 + + win32: Update MSVC projects for glib-genmarshal + + glib-genmarshal is now a Python script instead of a compiled + program, so + we need to: + + -Remove the projects that are used to build the glib-genmarshal + sources. + -Generate the full glib-genmarshal Python script from + glib-genmarshal.in + -Make Python a hard build-time requirement, since we use this tool + in many parts of the stack (and it is the case for glib-mkenums). + -Tell people in the Visual Studio build README.txt files that Python + 2.7.x or 3.x is now required for the build/"install". + + win32/gen_util_scripts.py | 7 +- + win32/vs10/Makefile.am | 2 - + win32/vs10/README.txt | 5 + + win32/vs10/glib-genmarshal.vcxproj | 173 + ----------------------------- + win32/vs10/glib-genmarshal.vcxproj.filters | 22 ---- + win32/vs10/glib-install.propsin | 19 ++-- + win32/vs10/glib-install.vcxproj | 12 +- + win32/vs10/glib-install.vcxproj.filters | 1 + + win32/vs10/glib.sln | 90 ++++++--------- + win32/vs11/Makefile.am | 2 - + win32/vs12/Makefile.am | 2 - + win32/vs14/Makefile.am | 2 - + win32/vs15/Makefile.am | 2 - + win32/vs9/Makefile.am | 1 - + win32/vs9/README.txt | 7 +- + win32/vs9/glib-genmarshal.vcproj | 161 + --------------------------- + win32/vs9/glib-install.vcproj | 34 ++++++ + win32/vs9/glib-install.vspropsin | 17 +-- + win32/vs9/glib.sln | 70 ++++-------- + 19 files changed, 141 insertions(+), 488 deletions(-) + +commit c6793d1cfb845ae1cab7fa03a8044568e3494ecd +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Tue Jul 11 18:23:38 2017 +0100 + + Allow whitespace between marshallers list tokens + + Some (older) list files use whitespace, and we need to take that into + account when splitting off the various tokens. + + gobject/glib-genmarshal.in | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +commit cf7ee86b97981f116a4f2c736cbfb355588a5262 +Author: Aleksandr Slobodeniuk <alenuke@yandex.ru> +Date: Tue Jul 11 15:48:58 2017 +0300 + + docs: fixing lost character + + https://bugzilla.gnome.org/show_bug.cgi?id=784792 + + glib/gvariant.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 522ba7303ea4302dd3b36221304d309efaaca238 +Author: Daniel Boles <dboles@src.gnome.org> +Date: Tue Jul 11 12:49:40 2017 +0100 + + docs: tut_gsignal: Fix mismatched argument names + + The names differed between the argument declaration and its + description. + + docs/reference/gobject/tut_gsignal.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 30b961607a187c2e55cadc73db96ec99d3d8a44b +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Tue Jul 11 12:24:10 2017 +0100 + + Avoid a leak for arguments in va_list marshallers + + We need to revers a check on whether the list of arguments needs + unboxing. + + gobject/glib-genmarshal.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit ea365530d2ddf88fec914a12899f1ece6d9962ba +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Tue Jul 11 12:15:44 2017 +0100 + + Do not mix declarations and statements + + Projects using glib-genmarshal may still wish to support C89. + + gobject/glib-genmarshal.in | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +commit 9c66e65b29d5fd17dcfd77c4b010aa792b2e1d5a +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Wed Jul 5 19:26:26 2017 +0100 + + Remove unused marshallers-related files + + We don't use gmarshal.list any more, and the generated + gmarshal.strings + file is not used after the Python port of glib-genmarshal. + + https://bugzilla.gnome.org/show_bug.cgi?id=784528 + + gobject/Makefile.am | 6 ++---- + gobject/glib-genmarshal.in | 2 +- + gobject/gmarshal.list | 32 -------------------------------- + gobject/marshal-genstrings.pl | 9 --------- + win32/setup.py | 20 -------------------- + 5 files changed, 3 insertions(+), 66 deletions(-) + +commit f7643a7df750684c97aaef8b3fbf66fcc2661e84 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Wed Jul 5 17:10:08 2017 +0100 + + Re-enable signal tests when cross-compiling + + The glib-genmarshal tool has been rewritten in Python, which means we + can run it when cross-compiling. + + https://bugzilla.gnome.org/show_bug.cgi?id=784528 + + gobject/tests/Makefile.am | 26 ++++++++++++++++++-------- + 1 file changed, 18 insertions(+), 8 deletions(-) + +commit 93f16a45abe81c3186c84a343a2e47493cf5d875 +Author: Emmanuele Bassi <ebassi@gnome.org> +Date: Thu Jun 22 17:04:05 2017 +0100 + + Rewrite glib-genmarshal in Python + + We're in the process or rewriting other tools in Python to reduce the + number of dependencies of GLib. + + Additionally, making glib-genmarshal a Python script reduces the + complexity when cross-compiling, as we don't need a native build to + generate the marshallers. + + https://bugzilla.gnome.org/show_bug.cgi?id=784528 + + configure.ac | 2 + + docs/reference/gobject/glib-genmarshal.xml | 107 ++- + gobject/Makefile.am | 19 +- + gobject/glib-genmarshal.c | 1136 + ---------------------------- + gobject/glib-genmarshal.in | 1022 + +++++++++++++++++++++++++ + 5 files changed, 1121 insertions(+), 1165 deletions(-) + +commit 2502bfd8b0e9a8136aae833dc674a28a884f1de1 +Author: Philip Withnall <withnall@endlessm.com> +Date: Mon Jul 10 11:35:11 2017 +0100 + + Re-normalise line endings of README.win32 + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + README.win32 | 406 + +++++++++++++++++++++++++++++------------------------------ + 1 file changed, 203 insertions(+), 203 deletions(-) + +commit a88302683fd2b332ba665baac6d8be592d7e52aa +Author: Philip Withnall <withnall@endlessm.com> +Date: Mon Jul 10 11:31:52 2017 +0100 + + git: Add .gitattributes file with EOL settings for README.win32 + + Set it to always have CRLF line endings, since we want it to be + readable + on Windows by default. This should result in the line endings being + normalised to CRLF even after it’s edited by someone on Linux. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + .gitattributes | 1 + + 1 file changed, 1 insertion(+) + +commit a13113491855bf2803374bcfece824df0891c82a +Author: Philip Withnall <withnall@endlessm.com> +Date: Mon Jul 3 11:30:08 2017 +0100 + + build: Drop nmake/MSC build system for GLib + + It hasn’t been seriously maintained for the best part of 10 years + and is + very outdated. The recommended way to build GLib on Windows is now + Visual Studio: + + https://wiki.gnome.org/Projects/GTK%2B/Win32/MSVCCompilationOfGTKStack#GLib + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=722047 + + Makefile.am | 1 - + README.win32 | 183 +--------------------------- + build/win32/Makefile.am | 4 - + build/win32/dirent/Makefile.am | 1 - + build/win32/dirent/makefile.msc | 16 --- + build/win32/make.msc | 237 + ------------------------------------ + build/win32/module.defs | 124 ------------------- + configure.ac | 5 - + gio/Makefile.am | 1 - + gio/makefile.msc | 260 + ---------------------------------------- + gio/win32/makefile.msc | 35 ------ + glib/.gitignore | 1 - + glib/Makefile.am | 2 - + glib/gnulib/Makefile.am | 3 - + glib/gnulib/makefile.msc | 18 --- + glib/makefile.msc.in | 143 ---------------------- + glib/pcre/Makefile.am | 4 +- + glib/pcre/makefile.msc | 30 ----- + glib/update-pcre/update.sh | 38 ------ + gmodule/.gitignore | 1 - + gmodule/Makefile.am | 2 - + gmodule/makefile.msc.in | 37 ------ + gobject/.gitignore | 1 - + gobject/Makefile.am | 2 - + gobject/makefile.msc.in | 83 ------------- + gthread/.gitignore | 1 - + gthread/Makefile.am | 2 - + gthread/makefile.msc.in | 26 ---- + makefile.msc | 28 ----- + tests/.gitignore | 2 - + tests/Makefile.am | 4 - + tests/makefile.msc.in | 105 ---------------- + win32-fixup.pl | 41 ------- + 33 files changed, 2 insertions(+), 1439 deletions(-) + +commit 1d3210a8abeed853a943fe1620ccd4f24b76eb05 +Author: Aleksander Morgado <aleksander@aleksander.es> +Date: Mon Jul 10 11:11:39 2017 +0200 + + configure: fix minor typo 'be build'->'be built' + + https://bugzilla.gnome.org/show_bug.cgi?id=784739 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 28cc905cd02043a64135ccdf7f4e05d5672e4756 +Author: Yosef Or Boczko <yoseforb@src.gnome.org> +Date: Sun Jul 9 20:47:55 2017 +0300 + + Updated Hebrew translation + + po/he.po | 904 + ++++++++++++++++++++++++++++++++------------------------------- + 1 file changed, 459 insertions(+), 445 deletions(-) + +commit 28cc6aeb19dd2b5ff6e01362dbee833636930eeb +Author: Matthias Clasen <mclasen@redhat.com> +Date: Fri Jul 7 19:11:51 2017 -0400 + + gsettings: Try harder to describe keys + + If a key has no description, show the summary, + rather than "(null)". Since thats not helpful at all. + + gio/gsettings-tool.c | 2 ++ + 1 file changed, 2 insertions(+) + +commit 85e4a2591227940db712223d8e39ccd7ae75802f +Author: Matthias Clasen <mclasen@redhat.com> +Date: Sat Jul 1 20:31:51 2017 -0400 + + Avoid a race with the openuri portal + + Same as the previous commit; use the new predictable request + object path to connect to the Response signal early. + + gio/gopenuriportal.c | 67 + ++++++++++++++++++++++++++++++++++++++++++---------- + 1 file changed, 55 insertions(+), 12 deletions(-) + +commit a95e2a4c64c74fa648e5ac5b6130c84ad73731ad +Author: Bastien Nocera <hadess@hadess.net> +Date: Wed Jul 5 22:52:54 2017 +0200 + + docs: Fix cut'n'paste error in g_resources_get_info() doc + + https://bugzilla.gnome.org/show_bug.cgi?id=784581 + + gio/gresource.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit 8e23a514b02c67104f03545dec58116f00087229 +Author: Rico Tzschichholz <ricotz@ubuntu.com> +Date: Sun Jul 2 22:51:30 2017 +0200 + + unicode: Update test data files for unicode 10.0.0 + + https://bugzilla.gnome.org/show_bug.cgi?id=784456 + + tests/casefold.txt | 2 +- + tests/casemap.txt | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit 4e1567a079c13036320802f49ee8f78f78d0273a +Author: Rico Tzschichholz <ricotz@ubuntu.com> +Date: Sun Jul 2 22:47:09 2017 +0200 + + unicode: Update to unicode 10.0.0 + + https://bugzilla.gnome.org/show_bug.cgi?id=784456 + + glib/gscripttable.h | 78 ++-- + glib/gunibreak.h | 1062 + ++++++++++++++++++++++++++++++------------------ + glib/gunichartables.h | 1074 + ++++++++++++++++++++++++++++++++----------------- + glib/gunicode.h | 12 +- + glib/gunidecomp.h | 72 ++-- + glib/guniprop.c | 6 + + glib/tests/unicode.c | 10 + + 7 files changed, 1476 insertions(+), 838 deletions(-) + +commit a74fe20064d0f5f1ad8f191b2f988c3d11776054 +Author: Philip Withnall <withnall@endlessm.com> +Date: Wed Jul 5 16:35:58 2017 +0100 + + tests: Drop local timezone GTimeVal overflow check + + We can’t reasonably control the local timezone in the test + environment, so drop some assertions which were assuming the local + timezone offset was not big enough to cause an overflow in the + GTimeVal + handling for GDateTime. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + glib/tests/gdatetime.c | 7 ------- + 1 file changed, 7 deletions(-) + +commit 5a8b02cae6a630a19cc0c164f5f8a93eddb240ab +Author: Philip Withnall <withnall@endlessm.com> +Date: Tue Jul 4 10:21:38 2017 +0100 + + gdbusutils: Add an example to g_dbus_gvariant_to_gvalue() docs + + Clarify that GVariants of type v are not magically unboxed. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=784433 + + gio/gdbusutils.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +commit 9bc3d025f97ad1db456604f42bd014b7a9ac4048 +Author: Jehan <jehan@girinstud.io> +Date: Sat Jul 1 17:03:29 2017 +0200 + + configure: close a parenthese in an error message. + + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit f39024038fd009d94a5929f9bab656cb2f7097cc +Author: Matthias Clasen <mclasen@redhat.com> +Date: Wed Jun 28 15:49:40 2017 -0400 + + Disambiguate source names + + This makes debugging more pleasant. + + gio/gdbusconnection.c | 2 +- + gio/gdbusnameowning.c | 2 +- + gio/gdbusnamewatching.c | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +commit 79e4d4c6be616277d7d6ba2f830852967c42f6e3 +Author: Emanuele Aina <emanuele.aina@collabora.com> +Date: Wed Jun 21 15:45:07 2017 +0200 + + gio: Mention the ALL_METADATA flag in g_file_copy() + + The g_file_copy() documentation didn't mention if + G_FILE_COPY_ALL_METADATA was applicable or not, and users were led to + call g_file_copy_attributes() to specify it after the g_file_copy() + call, unless they checked the source (been there, done that). + + https://bugzilla.gnome.org/show_bug.cgi?id=784037 + + gio/gfile.c | 4 ++++ + 1 file changed, 4 insertions(+) + +commit fd329f4853f180eb92746f39fc96fd5d91394009 +Author: Sebastian Dröge <sebastian@centricular.com> +Date: Wed Jun 21 09:52:06 2017 +0300 + + GKeyFile – Add array length annotations to to_data(), get_keys() + and get_groups() + + https://bugzilla.gnome.org/show_bug.cgi?id=784020 + + glib/gkeyfile.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +commit 1366ce7ee004f97886807b9fede205c0af8b1a17 +Author: Philip Withnall <withnall@endlessm.com> +Date: Tue Jun 20 13:41:10 2017 +0100 + + gutf8: Clarify return value docs for g_utf8_find_next_char() + + Make it clearer that it will only return NULL if @end is non-NULL. Add + a + test for this too. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=773842 + + glib/gutf8.c | 8 +++++++- + glib/tests/utf8-pointer.c | 9 +++++++++ + 2 files changed, 16 insertions(+), 1 deletion(-) + +commit 3e89b19c44d353edfafde876e12b56ddd29ef8a4 +Author: Philip Withnall <withnall@endlessm.com> +Date: Fri Mar 17 12:15:15 2017 +0000 + + gutf8: Fix documentation for g_utf8_get_char_validated() length limits + + If g_utf8_get_char_validated() encounters a nul byte in the middle + of a + string of given longer length, it returns -2, indicating a partial + gunichar. That is not the obvious behaviour, but since + g_utf8_get_char_validated() has been API for a long time, the + behaviour + cannot be changed. + + Document it, and add some unit tests (for this behaviour and the other + behaviour of g_utf8_get_char_validated()). + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=780095 + + glib/gutf8.c | 4 ++++ + glib/tests/utf8-validate.c | 53 + ++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 57 insertions(+) + +commit 428acd9b1486beba186c073577ea659eee44ae0a +Author: Philip Withnall <withnall@endlessm.com> +Date: Mon Jun 19 13:57:36 2017 +0100 + + tests: Fix overflows in find_maximum_supported_tv_sec() + + The addition (highest_success + lowest_failure) could have overflowed, + and typically would do on 32-bit platforms where the real + highest_success should be G_MAXLONG. Fix that, and introduce special + handling of the corner case of (highest_success = G_MAXLONG). + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=783841 + + glib/tests/gdatetime.c | 16 ++++++++++++---- + 1 file changed, 12 insertions(+), 4 deletions(-) + +commit 30fed3b906f3408aa4fc9a7996fa03cf7b940ebe +Author: Philip Withnall <withnall@endlessm.com> +Date: Fri Jun 16 12:42:32 2017 +0100 + + tests: Fix GDateTime overflow tests on 32-bit architectures + + On architectures where sizeof(glong) == 32 bits, there are no problems + with overflow when constructing a GDateTime from a GTimeVal. Adjust + the + test for this by basing it on the maximum supported tv_sec value + it can + calculate, rather than a fixed ‘known unsupported’ value. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=783841 + + glib/tests/gdatetime.c | 35 +++++++++++++++++++++-------------- + 1 file changed, 21 insertions(+), 14 deletions(-) + +commit 2db7aa479919dc7ae8742f52ad5d54191a7282fd +Author: Philip Withnall <withnall@endlessm.com> +Date: Fri Jun 16 12:31:58 2017 +0100 + + gdatetime: Fix a potential overflow in overflow calculations + + I can’t remember whether glong (tv.tv_sec) needs to be explicitly + promoted to gint64 here, or whether C does it automatically. Safer to + make the cast explicit to avoid overflow issues on 32-bit platforms, + where glong is 32-bit. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=783841 + + glib/gdatetime.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 18f8b77c04be373fd4f65560519ab0e09596801e +Author: Philip Withnall <withnall@endlessm.com> +Date: Tue Jun 20 14:58:14 2017 +0100 + + gio: Use g_strerror() instead of strerror() + + This marginally improves thread safety, and marginally improves + consistency. + + Signed-off-by: Philip Withnall <withnall@endlessm.com> + + https://bugzilla.gnome.org/show_bug.cgi?id=733821 + + gio/gdbusauthmechanismsha1.c | 12 ++++++------ + gio/gdbusmessage.c | 2 +- + gio/gdbusserver.c | 2 +- + gio/gtestdbus.c | 4 ++-- + gio/gunixconnection.c | 6 +++--- + gio/tests/gdbus-peer.c | 2 +- + gio/tests/gsubprocess-testprog.c | 2 +- + 7 files changed, 15 insertions(+), 15 deletions(-) + +commit c8e268bbce70ee05da5a94e424517168a14c7645 +Author: Igor Pashev <pashev.igor@gmail.com> +Date: Tue Jun 20 13:38:00 2017 +0000 + + Fix detection and usage of strerror_r() + + autoconf provides a macro for this situation, which saves us having to + manually work out whether strerror_r() returns a char* or an int. + + https://bugzilla.gnome.org/show_bug.cgi?id=784000 + + configure.ac | 3 ++- + glib/gstrfuncs.c | 4 ++-- + 2 files changed, 4 insertions(+), 3 deletions(-) + commit bb50b70713dbe8b41c8a729ecb90829e451ae335 Author: Matthias Clasen <mclasen@redhat.com> Date: Mon Jun 19 21:51:09 2017 -0400 @@ -1,8 +1,8 @@ Simple install procedure ======================== - % tar xf glib-2.53.3.tar.gz # unpack the sources - % cd glib-2.53.3 # change to the toplevel directory + % tar xf glib-2.53.4.tar.gz # unpack the sources + % cd glib-2.53.4 # change to the toplevel directory % ./configure # run the `configure' script % make # build GLIB diff --git a/Makefile.am b/Makefile.am index 008ad5826..4e2a36b47 100644 --- a/Makefile.am +++ b/Makefile.am @@ -49,7 +49,6 @@ EXTRA_DIST += \ glib-tap.mk \ tap-driver.sh \ tap-test \ - makefile.msc \ msvc_recommended_pragmas.h \ config.h.win32.in \ po/po2tbl.sed.in \ diff --git a/Makefile.in b/Makefile.in index b1bb5aed5..5f44c2ce7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -439,7 +439,7 @@ am__DIST_COMMON = $(srcdir)/INSTALL.in $(srcdir)/Makefile.in \ $(srcdir)/gobject-2.0.pc.in $(srcdir)/gthread-2.0.pc.in \ $(top_srcdir)/glib.mk AUTHORS COPYING ChangeLog INSTALL NEWS \ README compile config.guess config.sub install-sh ltmain.sh \ - missing test-driver + missing py-compile test-driver DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -750,12 +750,11 @@ EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ glib-zip.in NEWS.pre-1-3 acglib.m4 sanity_check README.commits \ README.in README.rationale INSTALL.in README.win32 HACKING \ autogen.sh glib.mk glib-tap.mk tap-driver.sh tap-test \ - makefile.msc msvc_recommended_pragmas.h config.h.win32.in \ - po/po2tbl.sed.in glib-2.0.pc.in gobject-2.0.pc.in \ - gmodule-2.0.pc.in gmodule-export-2.0.pc.in \ - gmodule-no-export-2.0.pc.in gthread-2.0.pc.in gio-2.0.pc.in \ - gio-unix-2.0.pc.in gio-windows-2.0.pc.in check-abis.sh \ - gtk-doc.make $(NULL) + msvc_recommended_pragmas.h config.h.win32.in po/po2tbl.sed.in \ + glib-2.0.pc.in gobject-2.0.pc.in gmodule-2.0.pc.in \ + gmodule-export-2.0.pc.in gmodule-no-export-2.0.pc.in \ + gthread-2.0.pc.in gio-2.0.pc.in gio-unix-2.0.pc.in \ + gio-windows-2.0.pc.in check-abis.sh gtk-doc.make $(NULL) # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. @@ -1,3 +1,37 @@ +Overview of changes in GLib 2.53.4 +================================== + +* Unicode support has been updated to Unicode 10.0.0 + +* glib-genmarshal and glib-mkenums have been rewritten in python. + Every effort has been made to keep compatibility. Please report + problems related to these tools + +* GLib can now be built with meson. autotools are still supported + +* Bugs fixed: + 722047 drop makefile.msc? + 733821 g_strerror() uses strerror(3) instead of strerror_r(3) + 773842 g_utf8_find_next_char() won't signal the end of a NUL-terminated string + 779332 Rewrite mkenums in Python + 780095 g_utf8_get_char_validated() stopping at nul byte even for length specified... + 780634 Remove remaining old codepage ABI comapt code + 783841 test_GDateTime_new_from_timeval_overflow fails on 32 bit systems + 784000 Improve strerror_r() detection + 784020 GKeyFile – Add array length annotations to to_data(), get_keys() and get_g... + 784037 gio: Mention the ALL_METADATA flag in g_file_copy() + 784433 gdbus-codegen with variant type parameters result in nested variant + 784456 Update to Unicode 10.0.0 + 784528 Rewrite glib-genmarshal in Python + 784579 Calling g_dir_open on Missing Directory When Executable File Path Contains... + 784581 docs: Fix cut'n'paste error in g_resources_get_info() doc + 784739 Minor typo in configure error message + 784792 Just fixing a little typo in comments + +* Translation updates: + Hebrew + + Overview of changes in GLib 2.53.3 ================================== @@ -1,7 +1,7 @@ General Information =================== -This is GLib version 2.53.3. GLib is the low-level core +This is GLib version 2.53.4. GLib is the low-level core library that forms the basis for projects such as GTK+ and GNOME. It provides data structure handling for C, portability wrappers, and interfaces for such runtime functionality as an event loop, threads, diff --git a/README.win32 b/README.win32 index fa6a3a016..83f0c987a 100644 --- a/README.win32 +++ b/README.win32 @@ -6,8 +6,7 @@ fashion. Lots of information here might be misleading or outdated. You have been warned.
The general parts, and the section about gcc and autoconfiscated
-build, and about a Visual Studio build are by Tor Lillqvist. The
-sections about MSVC build with NMAKE is by Hans Breuer.
+build, and about a Visual Studio build are by Tor Lillqvist.
General
=======
@@ -201,184 +200,4 @@ $python win32/setup.py --perl path_to_your_perl.exe for more usage on this script, run
$python win32/setup.py -h/--help
-Building with MSVC and NMAKE
-============================
-
-If you are building from a GIT snapshot, you will not have all
-makefile.msc files. You should copy the corresponding makefile.msc.in
-file to that name, and replace any @...@ strings with the correct
-value (or use the python script de-in.py from http://hans.breuer.org/gtk/de-in.py).
-
-This is done automatically when an official GLib source distribution
-package is built, so if you get GLib from a source distribution
-package, there should be makefile.msc files ready to use (possibly after some
-editing).
-
-The hand-written makefile.msc files, and the stuff in the "build"
-subdirectory, produce DLLs and import libraries that match what the
-so-called autoconfiscated build produces.
-
-All the MSVC makefiles are for the command line build with nmake. If
-you want to use the VC-UI you can simply create wrapper .dsp makefiles
-(read the VC docs how to do so).
-
-Some modules may require Perl to auto-generate files. The goal (at
-least Hans's) is to not require any more tools. Of course you need
-the Microsoft Platform SDK in a recent enough - but not too recent - version.
-The last PSDK for Visual Studio 6 is:
- http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
-At least install the Core SDK, maybe also the "Tablet PC SDK".
-
-
-Build with:
-
-nmake -f makefile.msc
- or
-nmake -f makefile.msc DEBUG=1
-
-[
- The former will create 'release' versions of the DLLs. If you
- plan to distribute you DLLs please use this command. The latter
- will create DLLs with debug information _and_ link them with
- msvcrtd.dll instead of msvcrt.dll.
- Beware: There are known problems with mixing DLLs in one
- application, which are build against different runtimes.
- Especially the index-to-file mapping used by 'unix-style' file
- operation - _open() _pipe() etc. - breaks sometimes in strange
- ways (for example the Gimp plug-in communication).
-]
-
-Required libraries (not build from svn)
-------------------
- libintl (gnu-intl),
-
-are available pre-built from the website mentioned above.
-
-Versioning
-----------
-Instead of the Unix and auto* way of tracking versions and resolving
-dependencies (configure; make; make install) involving autoconf,
-automake, libtool and friends the MSVC build uses a different
-approach.
-
-The core of it's versioning is the file build/win32/module.defs.
-It contains entries of the form MODULE_VER, e.g.:
-
- GLIB_VER = 2.0
- LIBICONV_VER = 1.3
-
-and the placement of these modules defined as MODULE, e.g.:
-
- GLIB = $(TOP)/glib
- LIBICONV = $(TOP)/libiconv-$(LIBICONV_VER)
-
-whereas TOP is defined as the relative path from the respective
-module directory to your top build directory. Every makefile.msc
-needs to define TOP before including the common make file part
-make.msc, which than includes module.defs, like:
-
-TOP = ../..
-!INCLUDE $(TOP)/glib/build/win32/make.msc
-
-(Taken from gtk+/gdk/makefile.msc)
-
-With this provision it is possible to create almost placement
-independent makefiles without requiring to 'install' the libraries and
-headers into a common place (as it is done on Unix, and as Tor does
-when producing his zipfiles with prebuilt GLib, GTK+ etc).
-
-Special Files
--------------
- config.h.win32.in : @XXX_MAJOR_VERSION@ needs to be replaced by
-the current version/build number. The resulting file is to be saved
-as 'config.h.win32'. This should be automatically done if a package
-gets build on the Unix platform.
-
- makefile.msc.in : @XXX_MAJOR_VERSION@ to be replaced. Save as
-makefile.msc.
-
- <module>.def : every function which should be used from the outside of
-a dll needs to be marked for 'export'. It is common that one needs to change
-these files after some api changes occured. If there are variables to be
-exported another mechanism is needed, like :
-
- #ifdef G_OS_WIN32
- # ifdef GDK_COMPILATION
- # define GDKVAR __declspec(dllexport)
- # else
- # define GDKVAR extern __declspec(dllimport)
- # endif
- #else
- # define GDKVAR extern
- #endif
-
-
-
-Directory Structure
--------------------
-all modules should be build in a common directory tree otherwise you
-need to adapt the file 'module.defs'. They are listed here in increasing
-dependencies order.
-
-<common rootdir without spaces>
- |
- +- glib
- | |
- | +- build : [this module lives in the SVN root dir]
- | | +- win32
- | | .\module.defs : defines (relative) locations of the headers
- | | and libs and version numbers to be include
- | | in dll names
- | | .\make.msc : include by almost every 'makefile.msc'
- | |
- | | .\README.WIN32 : more information how to build
- | | .\glibconfig.h.win32.in : similar to config.h.win32.in
- | | .\makefile.msc : master makefile, sub dir makefiles should work
- | |
- | +- glib
- | +- gmodule
- | +- gthread : does _not_ depend on pthread anymore
- | +- gobject
- |
- +- pango
- | +- pango : 'native' build does not require extra libs and
- | | includes the minimal required text renderer
- | | (there is also a currently slightly broken FreeType2
- | | based implementation for win32)
- | +- modules (not yet build)
- |
- +- atk
- | +- atk
- | .\makefile.msc : build here
- |
- +- gtk+
- | | .\config.h.win32 : for all the below
- | |
- | +- gdk-pixbuf
- | | .\gdk_pixbuf.rc.in : version resource for the DLLs. Needs
- | | to be converted (filled with version info)
- | | as described above.
- | |
- | +- gdk
- | | | .\makefile.msc : some auto-generation is needed to build in the
- | | | in the subdirectory
- | | +- win32
- | |
- | +- gtk
-
- |
- +- gimp
- | .\makefile.msc : master makefile to build The Gimp. The makefiles
- | from the sub dirs should work stand alone, but than
- | the user needs to know the build order
-
- |
- +- dia : additionally depends on libart_lgpl (in SVN)
- | and libxml2 ( see http://www.xmlsoft.org/ )
- +- lib
- +- app
- +- objects
- +- plug-ins
- +- python
-
[1]: https://wiki.gnome.org/Projects/GTK%2B/Win32/MSVCCompilationOfGTKStack under "Preparations"
diff --git a/build/win32/Makefile.am b/build/win32/Makefile.am index 2f701b063..4b7951324 100644 --- a/build/win32/Makefile.am +++ b/build/win32/Makefile.am @@ -1,6 +1,2 @@ SUBDIRS = \ dirent - -EXTRA_DIST = \ - make.msc \ - module.defs diff --git a/build/win32/Makefile.in b/build/win32/Makefile.in index 916491b70..05fe816a9 100644 --- a/build/win32/Makefile.in +++ b/build/win32/Makefile.in @@ -439,10 +439,6 @@ top_srcdir = @top_srcdir@ SUBDIRS = \ dirent -EXTRA_DIST = \ - make.msc \ - module.defs - all: all-recursive .SUFFIXES: diff --git a/build/win32/dirent/Makefile.am b/build/win32/dirent/Makefile.am index 87b5216ab..d146efe9a 100644 --- a/build/win32/dirent/Makefile.am +++ b/build/win32/dirent/Makefile.am @@ -3,7 +3,6 @@ EXTRA_DIST = \ dirent.c \ dirent.h \ wdirent.c \ - makefile.msc \ dirent-zip diff --git a/build/win32/dirent/Makefile.in b/build/win32/dirent/Makefile.in index deb2ef8aa..d3b9826ee 100644 --- a/build/win32/dirent/Makefile.in +++ b/build/win32/dirent/Makefile.in @@ -381,7 +381,6 @@ EXTRA_DIST = \ dirent.c \ dirent.h \ wdirent.c \ - makefile.msc \ dirent-zip all: all-am diff --git a/build/win32/dirent/makefile.msc b/build/win32/dirent/makefile.msc deleted file mode 100644 index 00f2e34ad..000000000 --- a/build/win32/dirent/makefile.msc +++ /dev/null @@ -1,16 +0,0 @@ -TOP = ..\..\..\.. - -!INCLUDE $(TOP)\glib\build\win32\make.msc - -dirent_OBJECTS = dirent.obj wdirent.obj - -INCLUDES = -I. - -all : dirent.lib - -dirent.lib : $(dirent_OBJECTS) - lib /out:dirent.lib /nodefaultlib $(dirent_OBJECTS) - -clean:: - del /f $(dirent_OBJECTS) - del /f dirent.lib diff --git a/build/win32/make.msc b/build/win32/make.msc deleted file mode 100644 index 3b534ea59..000000000 --- a/build/win32/make.msc +++ /dev/null @@ -1,237 +0,0 @@ -# Note that this file is hardly maintained, hardly usable without -# manual editing, and not really part of a recommended way to build -# GLib and related software with Microsoft's compilers. Only a few -# persons use a build setup that involves this file. - -# Common makefile definitions for building GLib, GTk+, and various -# software that use these libraries with msvc on Win32 - -# Debug builds shoud link with msvcrtd release build with msvcrt. -!IFNDEF DEBUG -# Full optimization: -OPTIMIZE = -Ox -# release with debug -OPTIMIZE = -Zi -DG_ENABLE_DEBUG=1 -CRUNTIME = -MD -LINKDEBUG = /OPT:REF -!ELSE -# Debugging: -OPTIMIZE = -CRUNTIME = -MDd -DEBUGINFO = -Zi -DG_ENABLE_DEBUG=1 -LINKDEBUG = /debug /nodefaultlib:msvcrt.lib -!ENDIF - -LDFLAGS = /link /machine:ix86 $(LINKDEBUG) - -!IFNDEF TOP -TOP = .. -!ENDIF - -!IFNDEF PERL -PERL = perl -!ENDIF - -XSLTPROC = d:\gnome-0\xsltproc - -# paths and version numbers -!INCLUDE $(TOP)\glib\build\win32\module.defs - -################ -# CFLAGS and LIBS for the packages in module.defs. -# In alphabetical order. - -# Note that these CFLAGS and LIBS refer to stuff in "source" -# directories. This is for historical reasons, and only useable if you -# have the GLib, Pango, etc sources. If you use the prebuilt developer -# packages, you should fix these to instead refer to the place where -# you unzipped the developer packages. Easiest of all, run pkg-config -# --cflags gtk+-2.0 (for instance), and paste its output as the -# definition of GTK2_CFLAGS. Etc. - -ATK_CFLAGS = -I $(ATK) -ATK_LIBS = $(ATK)\atk\atk-$(ATK_VER).lib -BABL_CFLAGS = -I $(BABL) -BABL_LIBS = $(BABL)\babl\babl-1.0.lib - -# force inclusion of the _right_ cairoversion.h even when using without installation -CAIRO_CFLAGS = -FI $(CAIRO)\cairo-version.h -I $(CAIRO)\src -I $(CAIRO) -CAIRO_LIBS = $(CAIRO)\src\libcairo.lib - -DIRENT_CFLAGS = -I $(GLIB)\build\win32\dirent -DIRENT_LIBS = $(GLIB)\build\win32\dirent\dirent.lib - -!IFNDEF EXIF -EXIF_CFLAGS = -I $(DEVTOP)\include -EXIF_LIBS = $(DEVTOP)\lib\exif.lib -EXIF = 1 -!ENDIF - -# Don't know if Freetype2, FriBiDi and some others actually can be -# built with MSVC, but one can produce an import library even if the -# DLL was built with gcc. -!IFDEF FREETYPE2 -FREETYPE2_CFLAGS = -I $(FREETYPE2)\include -FREETYPE2_LIBS = $(FREETYPE2)\obj\freetype-$(FREETYPE2_VER).lib -!ELSE -FREETYPE2_CFLAGS = -I $(DEVTOP)\include -I $(DEVTOP)\include\freetype2 -FREETYPE2_LIBS = $(DEVTOP)\lib\freetype6.lib -!ENDIF - -!IFNDEF FONTCONFIG -FONTCONFIG_CFLAGS = -I $(DEVTOP)\include -FONTCONFIG_LIBS = $(DEVTOP)\lib\fontconfig.lib -!ENDIF - -GDK_PIXBUF_CFLAGS = -I $(GDK_PIXBUF) -GDK_PIXBUF_LIBS = $(GTK2)\gdk-pixbuf\gdk_pixbuf-$(GDK_PIXBUF_VER).lib - -GIMP_CFLAGS = -I $(GIMP) -GIMP_PLUGIN_LIBS = $(GIMP)\libgimp\gimp-$(GIMP_VER).lib $(GIMP)\libgimp\gimpui-$(GIMP_VER).lib - -# overide definition to use it as callable path -GLIB = $(TOP)\glib - -GLIB_CFLAGS = -I $(GLIB) -I $(GLIB)\glib -I $(GLIB)\gmodule $(INTL_CFLAGS) -GLIB_LIBS = $(GLIB)\glib\glib-$(GLIB_VER).lib $(GLIB)\gmodule\gmodule-$(GLIB_VER).lib $(GLIB)\gobject\gobject-$(GLIB_VER).lib $(GLIB)\gio\gio-$(GLIB_VER).lib -GTHREAD_LIBS = $(GLIB)\gthread\gthread-$(GLIB_VER).lib - -!IFNDEF GDK_PIXBUF -GDK_PIXBUF_CFLAGS = $(GTK2_CFLAGS) -GDK_PIXBUF_LIBS = $(GTK2_LIBS) -!ENDIF - -GNOMECANVAS_CFLAGS = -I $(GNOMECANVAS) -GNOMECANVAS_LIBS = $(GNOMECANVAS)\libgnomecanvas\libgnomecanvas-$(GNOMECANVAS_VER).lib - -GNOMEPRINT_CFLAGS = -I $(GNOMEPRINT) -GNOMEPRINT_LIBS = $(GNOMEPRINT)\libgnomeprint\gnome-print-$(GNOMEPRINT_VER).lib - -GNOMEPRINTUI_CFLAGS = -I $(GNOMEPRINTUI) -GNOMEPRINTUI_LIBS = $(GNOMEPRINTUI)\libgnomeprintui\gnome-printui-$(GNOMEPRINTUI_VER).lib - -GTK_CFLAGS = -I$(GTK)\gdk -I$(GTK)\gdk -I$(GTK) -GTK_LIBS = $(GTK)\gtk\gtk.lib $(GTK)\gdk\gdk.lib - -GTK2_CFLAGS = $(GLIB_CFLAGS) $(ATK_CFLAGS) -I$(GTK2)\gdk -I$(GTK2)\gdk -I$(GTK2) -I$(PANGO) -I$(ATK) $(CAIRO_CFLAGS) -GTK2_LIBS = $(GTK2)\gtk\gtk-win32-$(GTK2_VER).lib $(GTK2)\gdk\gdk-win32-$(GTK2_VER).lib $(GTK2)\gdk-pixbuf\gdk_pixbuf-$(GTK2_VER).lib $(PANGO_LIBS) - -GTKGLAREA_CFLAGS = -I $(GTKGLAREA) -GTKGLAREA_LIBS = $(GTKGLAREA)\gtkgl\gtkgl-$(GTKGLAREA_VER).lib - -GTKSOURCEVIEW_CFLAGS = -I $(GTKSOURCEVIEW) -GTKSOURCEVIEW_LIBS = $(GTKSOURCEVIEW)\gtksourceview\gtksourceview.lib - -LIBART_CFLAGS = -I$(LIBART)\.. -FIlibart_lgpl/art_config.h -LIBART_LIBS = $(LIBART)\art_lgpl_2.lib - -!IFNDEF INTL -INTL_CFLAGS = -I $(DEVTOP)\include -INTL_LIBS = $(DEVTOP)\lib\intl.lib -!ELSE -INTL_CFLAGS = -I $(INTL) -INTL_LIBS = $(INTL)\intl.lib -!ENDIF - -!IFDEF LCMS -LCMS_CFLAGS = -DLCMS_DLL -I $(LCMS)\include -LCMS_LIBS = $(LCMS)\Projects\VC6\Release\lcms.lib -!ENDIF - -LIBICONV_CFLAGS = -I $(LIBICONV)\include -LIBICONV_LIBS = $(LIBICONV)\lib\iconv.lib - -LIBXML_CFLAGS = -I $(LIBXML) -LIBXML_LIBS = $(LIBXML)\xml-$(LIBXML_VER).lib - -LIBXML2_CFLAGS = $(LIBICONV_CFLAGS) -I $(LIBXML2)\include -LIBXML2_LIBS = $(LIBXML2)\libxml2.lib - -LIBXSLT_CFLAGS = -I $(LIBXSLT) -LIBXSLT_LIBS = $(LIBXSLT)\libxslt\libxslt.lib - -LCMS_CFLAGS = -I $(LCMS)\include -DLCMS_DLL -LCMS_LIBS = $(LCMS)\Projects\VC6\Release\lcms.lib - -!IFNDEF JPEG -JPEG_CFLAGS = -I $(DEVTOP)\include -JPEG_LIBS = $(DEVTOP)\lib\jpeg.lib -!ELSE -JPEG_CFLAGS = -I $(JPEG) -JPEG_LIBS = $(JPEG)\libjpeg.lib -!ENDIF - -OPENGL_CFLAGS = # None needed, headers bundled with the compiler -OPENGL_LIBS = opengl32.lib lglu32.lib - -PANGO_CFLAGS = -I $(PANGO) -PANGO_LIBS = $(PANGO)\pango\pango-$(PANGO_VER).lib -PANGOCAIRO_LIBS = $(PANGO_LIBS) $(PANGO)\pango\pangocairo-$(PANGO_VER).lib -PANGOWIN32_LIBS = $(PANGO_LIBS) $(PANGO)\pango\pangowin32-$(PANGO_VER).lib -PANGOFT2_LIBS = $(PANGO_LIBS) $(PANGO)\pango\pangoft2-$(PANGO_VER).lib - -!IFDEF PNG -PNG_CFLAGS = -I $(PNG) $(ZLIB_CFLAGS) -PNG_LIBS = $(PNG)\projects\visualc6\Win32_LIB_Release\libpng.lib $(ZLIB_LIBS) -!ELSE -PNG_CFLAGS = -I $(DEVTOP)\include $(ZLIB_CFLAGS) -PNG_LIBS = $(DEVTOP)\lib\libpng.lib $(ZLIB_LIBS) -!ENDIF - -RSVG_CFLAGS = -I $(RSVG)\.. -RSVG_LIBS = $(RSVG)\librsvg-2.lib - -SVG_CFLAGS = -I $(SVG)\src -SVG_LIBS = $(SVG)\src\libsvg-$(SVG_VER).lib - -!IFDEF TIFF -TIFF_CFLAGS = -I $(TIFF)\libtiff -# Use single import library for both libtiff DLL versions (with or -# without LZW code). The user selects which DLL to use. -TIFF_LIBS = $(TIFF)\libtiff\libtiff.lib $(JPEG_LIBS) $(ZLIB_LIBS) user32.lib -!ELSE -TIFF_CFLAGS = -I $(DEVTOP)\include -TIFF_LIBS = $(DEVTOP)\lib\libtiff.lib -!ENDIF - -VIPS_CFLAGS = -I $(VIPS)/include -VIPS_LIBS = $(VIPS)/libsrc/vips.lib - -!IFDEF ZLIB -ZLIB_CFLAGS = -I $(ZLIB) -ZLIB_LIBS = $(ZLIB)\projects\visualc6\Win32_LIB_Release\zlib.lib -!ELSE -ZLIB_CFLAGS = -I $(DEVTOP)\include -ZLIB_LIBS = $(DEVTOP)\lib\zdll.lib -!ENDIF - -################ -# Compiler to use. - -CCOMPILER = cl -CC = $(CCOMPILER) $(OPTIMIZE) $(CRUNTIME) -W3 -nologo - -################ -# The including makefile should define INCLUDES, DEFINES and -# DEPCFLAGS. INCLUDES are the includes related to the module being -# built. DEFINES similarly. DEPCFLAGS should be set to a set of -# GLIB_CFLAGS, GTK_CFLAGS etc corresponding to what other modules we -# depend on. - -CFLAGS = $(OPTIMIZE) $(DEBUGINFO) $(INCLUDES) $(DEFINES) $(DEPCFLAGS) -# make cl/wcl386 compatible (c99 and cdecl) -#OPTIMIZE = -Ox -#CFLAGS = /passwopts:-za99 /passwopts:-ecc $(DEBUGINFO) $(INCLUDES) $(DEFINES) $(DEPCFLAGS) -.c.i : - $(CC) $(CFLAGS) -E $< >$@ - -# The default target should be "all" - -default: all - -clean:: - -del *.obj *.res *.i *.exe *.dll *.lib *.err *.map *.exp *.lk1 *.mk1 *.ilk *.manifest - -del *.pdb - -# Needed by hacker rule to make makefile.msc from makefile.msc.in: -SED = e:\cygwin\bin\sed diff --git a/build/win32/module.defs b/build/win32/module.defs deleted file mode 100644 index 1745c6272..000000000 --- a/build/win32/module.defs +++ /dev/null @@ -1,124 +0,0 @@ -# Note that this file is hardly maintained, hardly usable without -# manual editing, and not really part of a recommended way to build -# GLib and related software with Microsoft's compilers. Only a few -# persons use a build setup that involves this file. - -# This file is included by makefiles for both GNU Make (for gcc -# (mingw) builds, and NMAKE (for MSVC builds). - -MODULE_DEFS_INCLUDED=1 - -# fallback if a specifc library is not contained in TOP (i.e. not self-compiled) -DEVTOP=$(TOP)\..\other\dev - -################ -# The version macros define what versions of libraries to use. - -# The version numbers are defined unconditionally. If you want to -# produce a newer version of one of these libraries, the new number -# should be defined in the specific project makefile _after_ including -# this file (or make.{mingw,msc}). These version numbers are used in -# the names of some import libraries. - -# Please note that there are two (or three) ways to build the GLib -# (and GTK+ etc) libraries on Win32: Either using the same -# auto*/configure mechanism to generate makefiles as on Unix, and -# libtool to handle DLL creation. This currently only works for gcc, -# and even then it is hellish to set up to work 100% correctly. For -# people using that, this file is totally irrelevant. - -# Or, use hand-written makefiles, either for MSVC (these are called -# makefile.msc and maintained by Hans Breuer), or for gcc -# (makefile.mingw, by Tor Lillqvist). Only for GLib are the -# makefile.mingw files believed to be up-to-date, for other modules -# they have been left to rot after Tor started using the -# autoconfiscated way of building. - -# The stuff here uses the same name for (import) libraries as on Unix, -# as libtool uses those, and the semi-official developer packages are -# built using libtool. - -ATK_VER = 1.0 -CAIRO_VER = 1.4 -FREETYPE2_VER = 2.0 -GIMP_VER = 1.2 -GDK_PIXBUF_VER = 2.0 -GLIB_VER = 2.0 -GTKGLAREA_VER = 1.2.2 -GTK2_VER = 2.0 -LIBGLADE_VER = 0.14 -LIBICONV_VER = 1.7 -LIBXML_VER = 1.8.7 -LIBXML2_VER = 2.4.2 -PANGO_VER = 1.0 -POPT_VER = 1.4 -SVG_VER = 0.1 -RSVG_VER = 2.4 - -################ -# Locations of various source directories. TOP is defined in make.{mingw,msc} - -# First stuff that is in the GNOME CVS repository. -# In alphabetical order. - -ATK = $(TOP)/atk -BABL = $(TOP)/babl -CAIRO = d:\devel\from-svn\other\cairo-1.8.4 -GIMP = $(TOP)/gimp -GEGL = $(TOP)/gegl -GLIB = $(TOP)/glib -GNOMECANVAS = $(TOP)\libgnomecanvas -GNOMECANVAS_VER = 2.9 - -# GTK+ 1.3.0, gtk-1-3-win32-production branch. Rename directory -# to gtk+p after initial checkout from CVS. -GTK = $(TOP)/gtk+p -# GTK+ 2.0 -GTK2 = $(TOP)/gtk+ -GTKSOURCEVIEW = $(TOP)/gtksourceview -GNOMEPRINT = $(TOP)\libgnomeprint -GNOMEPRINT_VER = 2.8 -LIBGLADE = $(TOP)/libglade -LIBXML = $(TOP)/libxml-$(LIBXML_VER) -LIBXML2 = $(TOP)/libxml2 -#PANGO = $(TOP)/pango-1-8 -PANGO = $(TOP)/pango - -GNOMEPRINTUI = $(TOP)\libgnomeprintui -GNOMEPRINTUI_VER = 2.2 - -# Aux programs -GLIB_GENMARSHAL = $(GLIB)/gobject/glib-genmarshal - -# Stuff from other places. - -# Note this was is specific to what tml happened to have on his disk -# at some time in history. To really be able to recompile something -# that uses for instance libjpeg, you should download a suitable -# binary "developer" distribution of it, unpack it into some location, -# and edit this file correspondingly. You should not take the versions -# mentioned here too literally, use the latest version you can find, -# or the ones the current GTK+ 2.0 for Windows uses. - -#FREETYPE2 = $(TOP)/freetype2 -GTKEXTRA = $(TOP)/gtk+extra -GTKGLAREA = $(TOP)/gtkglarea -#INTL = d:/devel/from-svn/other/intl-tml -JPEG = d:/devel/from-svn/other/jpeg-6b -LCMS = d:/devel/other/lcms-1.15 -LIBART = $(TOP)/libart_lgpl -LIBICONV = $(TOP)/libiconv-$(LIBICONV_VER) -LIBXSLT = $(TOP)/libxslt -#PNG = d:/devel/from-svn/other/lpng1224 -RSVG = $(TOP)\librsvg -SVG = $(TOP)\libsvg -#TIFF = d:/devel/from-svn/other/tiff-3.7.2 -#ZLIB = d:/devel/from-svn/other/zlib123 - -# Headers from Microsoft's PlatformSDK (that aren't present in -# mingw) are needed by a just a few packages when compiling with gcc. -# This is just where tml has it installed. -PLATFORMSDK = i:/src/psdk - -# -WTKIT = d:/devel/from-svn/other\wtkit126 diff --git a/config.h.in b/config.h.in index ff57916fe..a7881ca55 100644 --- a/config.h.in +++ b/config.h.in @@ -109,6 +109,10 @@ /* Define to 1 if you have the `dcgettext' function. */ #undef HAVE_DCGETTEXT +/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you + don't. */ +#undef HAVE_DECL_STRERROR_R + /* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H @@ -170,9 +174,6 @@ /* Define to 1 if you have the `getmntent_r' function. */ #undef HAVE_GETMNTENT_R -/* Define to 1 if you have the `getprotobyname_r' function. */ -#undef HAVE_GETPROTOBYNAME_R - /* Define to 1 if you have the `getpwuid_r' function. */ #undef HAVE_GETPWUID_R @@ -288,9 +289,6 @@ /* Define to 1 if you have the `memalign' function. */ #undef HAVE_MEMALIGN -/* Define to 1 if you have the `memmem' function. */ -#undef HAVE_MEMMEM - /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H @@ -704,6 +702,9 @@ /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS +/* Define to 1 if strerror_r returns char *. */ +#undef STRERROR_R_CHAR_P + /* Use no threads */ #undef THREADS_NONE diff --git a/config.h.win32 b/config.h.win32 index 2a134b42f..f7314e540 100644 --- a/config.h.win32 +++ b/config.h.win32 @@ -38,7 +38,7 @@ #define GETTEXT_PACKAGE "glib20" /* Define to the GLIB binary age */ -#define GLIB_BINARY_AGE 5303 +#define GLIB_BINARY_AGE 5304 /* Define to the GLIB interface age */ #define GLIB_INTERFACE_AGE 0 @@ -50,7 +50,7 @@ #define GLIB_MAJOR_VERSION 2 /* Define to the GLIB micro version */ -#define GLIB_MICRO_VERSION 3 +#define GLIB_MICRO_VERSION 4 /* Define to the GLIB minor version */ #define GLIB_MINOR_VERSION 53 @@ -690,7 +690,7 @@ #define PACKAGE_NAME "glib" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "glib 2.53.3" +#define PACKAGE_STRING "glib 2.53.4" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "glib" @@ -699,7 +699,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.53.3" +#define PACKAGE_VERSION "2.53.4" /* define if posix_memalign() can allocate any size */ /* #undef POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS */ @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for glib 2.53.3. +# Generated by GNU Autoconf 2.69 for glib 2.53.4. # # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=glib>. # @@ -591,8 +591,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='glib' PACKAGE_TARNAME='glib' -PACKAGE_VERSION='2.53.3' -PACKAGE_STRING='glib 2.53.3' +PACKAGE_VERSION='2.53.4' +PACKAGE_STRING='glib 2.53.4' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=glib' PACKAGE_URL='' @@ -1589,7 +1589,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures glib 2.53.3 to adapt to many kinds of systems. +\`configure' configures glib 2.53.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1659,7 +1659,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of glib 2.53.3:";; + short | recursive ) echo "Configuration of glib 2.53.4:";; esac cat <<\_ACEOF @@ -1850,7 +1850,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -glib configure 2.53.3 +glib configure 2.53.4 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2391,6 +2391,52 @@ $as_echo "$ac_res" >&6; } } # ac_fn_c_check_type +# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES +# --------------------------------------------- +# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR +# accordingly. +ac_fn_c_check_decl () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + as_decl_name=`echo $2|sed 's/ *(.*//'` + as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 +$as_echo_n "checking whether $as_decl_name is declared... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +#ifndef $as_decl_name +#ifdef __cplusplus + (void) $as_decl_use; +#else + (void) $as_decl_name; +#endif +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_decl + # ac_fn_c_compute_int LINENO EXPR VAR INCLUDES # -------------------------------------------- # Tries to find the compile-time value of EXPR in a program that includes @@ -2630,57 +2676,11 @@ $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_member - -# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES -# --------------------------------------------- -# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR -# accordingly. -ac_fn_c_check_decl () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - as_decl_name=`echo $2|sed 's/ *(.*//'` - as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 -$as_echo_n "checking whether $as_decl_name is declared... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main () -{ -#ifndef $as_decl_name -#ifdef __cplusplus - (void) $as_decl_use; -#else - (void) $as_decl_name; -#endif -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_decl cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by glib $as_me 2.53.3, which was +It was created by glib $as_me 2.53.4, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3552,7 +3552,7 @@ fi # Define the identity of the package. PACKAGE='glib' - VERSION='2.53.3' + VERSION='2.53.4' # Some tools Automake needs. @@ -3821,10 +3821,10 @@ AM_BACKSLASH='\' GLIB_MAJOR_VERSION=2 GLIB_MINOR_VERSION=53 -GLIB_MICRO_VERSION=3 +GLIB_MICRO_VERSION=4 GLIB_INTERFACE_AGE=0 -GLIB_BINARY_AGE=5303 -GLIB_VERSION=2.53.3 +GLIB_BINARY_AGE=5304 +GLIB_VERSION=2.53.4 @@ -3840,20 +3840,20 @@ $as_echo "#define GLIB_MAJOR_VERSION 2" >>confdefs.h $as_echo "#define GLIB_MINOR_VERSION 53" >>confdefs.h -$as_echo "#define GLIB_MICRO_VERSION 3" >>confdefs.h +$as_echo "#define GLIB_MICRO_VERSION 4" >>confdefs.h $as_echo "#define GLIB_INTERFACE_AGE 0" >>confdefs.h -$as_echo "#define GLIB_BINARY_AGE 5303" >>confdefs.h +$as_echo "#define GLIB_BINARY_AGE 5304" >>confdefs.h # libtool versioning LT_RELEASE=2.53 -LT_CURRENT=5303 +LT_CURRENT=5304 LT_REVISION=0 -LT_AGE=5303 +LT_AGE=5304 LT_CURRENT_MINUS_AGE=0 @@ -8784,7 +8784,7 @@ $as_echo "$LINGUAS" >&6; } if test "$gt_cv_have_gettext" != "yes" ; then as_fn_error $? " *** You must have either have gettext support in your C library, or use the -*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html +*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html) " "$LINENO" 5 fi @@ -20463,7 +20463,7 @@ Usage: $0 [OPTIONS] Report bugs to <bug-libtool@gnu.org>." lt_cl_version="\ -glib config.lt 2.53.3 +glib config.lt 2.53.4 configured by $0, generated by GNU Autoconf 2.69. Copyright (C) 2011 Free Software Foundation, Inc. @@ -21848,7 +21848,7 @@ _ACEOF fi done -for ac_func in timegm gmtime_r strerror_r +for ac_func in timegm gmtime_r do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" @@ -21860,6 +21860,98 @@ _ACEOF fi done +ac_fn_c_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" +if test "x$ac_cv_have_decl_strerror_r" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRERROR_R $ac_have_decl +_ACEOF + +for ac_func in strerror_r +do : + ac_fn_c_check_func "$LINENO" "strerror_r" "ac_cv_func_strerror_r" +if test "x$ac_cv_func_strerror_r" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_STRERROR_R 1 +_ACEOF + +fi +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror_r returns char *" >&5 +$as_echo_n "checking whether strerror_r returns char *... " >&6; } +if ${ac_cv_func_strerror_r_char_p+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ac_cv_func_strerror_r_char_p=no + if test $ac_cv_have_decl_strerror_r = yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ + + char buf[100]; + char x = *strerror_r (0, buf, sizeof buf); + char *p = strerror_r (0, buf, sizeof buf); + return !p || x; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_func_strerror_r_char_p=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + else + # strerror_r is not declared. Choose between + # systems that have relatively inaccessible declarations for the + # function. BeOS and DEC UNIX 4.0 fall in this category, but the + # former has a strerror_r that returns char*, while the latter + # has a strerror_r that returns `int'. + # This test should segfault on the DEC system. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default + extern char *strerror_r (); +int +main () +{ +char buf[100]; + char x = *strerror_r (0, buf, sizeof buf); + return ! isalpha (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_func_strerror_r_char_p=yes +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strerror_r_char_p" >&5 +$as_echo "$ac_cv_func_strerror_r_char_p" >&6; } +if test $ac_cv_func_strerror_r_char_p = yes; then + +$as_echo "#define STRERROR_R_CHAR_P 1" >>confdefs.h + +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __libc_enable_secure" >&5 $as_echo_n "checking for __libc_enable_secure... " >&6; } @@ -23798,7 +23890,7 @@ fi $as_echo "$glib_ssize_type" >&6; } # Check for some functions -for ac_func in lstat strsignal vsnprintf stpcpy strcasecmp strncasecmp poll vasprintf setenv unsetenv getc_unlocked readlink symlink fdwalk memmem +for ac_func in lstat strsignal vsnprintf stpcpy strcasecmp strncasecmp poll vasprintf setenv unsetenv getc_unlocked readlink symlink fdwalk do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" @@ -24079,7 +24171,7 @@ if $glib_failed ; then as_fn_error $? "Could not determine values for MSG_* constants" "$LINENO" 5 fi -for ac_func in getprotobyname_r endservent if_nametoindex if_indextoname sendmmsg recvmmsg +for ac_func in endservent if_nametoindex if_indextoname sendmmsg recvmmsg do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" @@ -27440,7 +27532,7 @@ volatile int atomic = 2;\ } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - as_fn_error $? "GLib must be build with -march=i486 or later." "$LINENO" 5 + as_fn_error $? "GLib must be built with -march=i486 or later." "$LINENO" 5 fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext @@ -29464,7 +29556,7 @@ gio_INCLUDES='$(gmodule_INCLUDES)' -ac_config_files="$ac_config_files glib-2.0.pc gmodule-2.0.pc gmodule-export-2.0.pc gmodule-no-export-2.0.pc gthread-2.0.pc gobject-2.0.pc gio-2.0.pc gio-unix-2.0.pc gio-windows-2.0.pc glib-zip glib-gettextize Makefile build/Makefile build/win32/Makefile build/win32/dirent/Makefile win32/Makefile win32/vs9/Makefile win32/vs9/glib-version-paths.vsprops win32/vs10/Makefile win32/vs10/glib-version-paths.props win32/vs11/Makefile win32/vs12/Makefile win32/vs14/Makefile win32/vs15/Makefile glib/Makefile glib/libcharset/Makefile glib/gnulib/Makefile glib/pcre/Makefile glib/update-pcre/Makefile glib/tests/Makefile gmodule/Makefile gmodule/gmoduleconf.h gobject/Makefile gobject/glib-mkenums gobject/tests/Makefile gthread/Makefile gio/Makefile gio/gdbus-2.0/codegen/Makefile gio/gdbus-2.0/codegen/config.py gio/gnetworking.h gio/xdgmime/Makefile gio/inotify/Makefile gio/kqueue/Makefile gio/fam/Makefile gio/win32/Makefile gio/tests/Makefile gio/tests/gdbus-object-manager-example/Makefile gio/tests/services/Makefile gio/tests/services/org.gtk.GDBus.Examples.ObjectManager.service gio/tests/modules/Makefile po/Makefile.in docs/Makefile docs/reference/Makefile docs/reference/glib/Makefile docs/reference/glib/version.xml docs/reference/gobject/Makefile docs/reference/gobject/version.xml docs/reference/gio/Makefile docs/reference/gio/version.xml tests/Makefile tests/gobject/Makefile tests/refcount/Makefile m4macros/Makefile" +ac_config_files="$ac_config_files glib-2.0.pc gmodule-2.0.pc gmodule-export-2.0.pc gmodule-no-export-2.0.pc gthread-2.0.pc gobject-2.0.pc gio-2.0.pc gio-unix-2.0.pc gio-windows-2.0.pc glib-zip glib-gettextize Makefile build/Makefile build/win32/Makefile build/win32/dirent/Makefile win32/Makefile win32/vs9/Makefile win32/vs9/glib-version-paths.vsprops win32/vs10/Makefile win32/vs10/glib-version-paths.props win32/vs11/Makefile win32/vs12/Makefile win32/vs14/Makefile win32/vs15/Makefile glib/Makefile glib/libcharset/Makefile glib/gnulib/Makefile glib/pcre/Makefile glib/update-pcre/Makefile glib/tests/Makefile gmodule/Makefile gmodule/gmoduleconf.h gobject/Makefile gobject/glib-genmarshal gobject/glib-mkenums gobject/tests/Makefile gthread/Makefile gio/Makefile gio/gdbus-2.0/codegen/Makefile gio/gdbus-2.0/codegen/config.py gio/gnetworking.h gio/xdgmime/Makefile gio/inotify/Makefile gio/kqueue/Makefile gio/fam/Makefile gio/win32/Makefile gio/tests/Makefile gio/tests/gdbus-object-manager-example/Makefile gio/tests/services/Makefile gio/tests/services/org.gtk.GDBus.Examples.ObjectManager.service gio/tests/modules/Makefile po/Makefile.in docs/Makefile docs/reference/Makefile docs/reference/glib/Makefile docs/reference/glib/version.xml docs/reference/gobject/Makefile docs/reference/gobject/version.xml docs/reference/gio/Makefile docs/reference/gio/version.xml tests/Makefile tests/gobject/Makefile tests/refcount/Makefile m4macros/Makefile" ac_config_commands="$ac_config_commands chmod-scripts" @@ -29474,7 +29566,7 @@ ac_config_commands="$ac_config_commands chmod-scripts" # and automake generated makefiles know about these generated files. # They are only needed to distcheck the package if false; then - ac_config_files="$ac_config_files INSTALL README config.h.win32 glib/glibconfig.h.win32 glib/makefile.msc glib/glib.rc gmodule/makefile.msc gmodule/gmodule.rc gobject/makefile.msc gobject/gobject.rc gthread/makefile.msc gthread/gthread.rc gio/gio.rc tests/makefile.msc" + ac_config_files="$ac_config_files INSTALL README config.h.win32 glib/glibconfig.h.win32 glib/glib.rc gmodule/gmodule.rc gobject/gobject.rc gthread/gthread.rc gio/gio.rc" fi @@ -30189,7 +30281,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by glib $as_me 2.53.3, which was +This file was extended by glib $as_me 2.53.4, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -30255,7 +30347,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -glib config.status 2.53.3 +glib config.status 2.53.4 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -31091,6 +31183,7 @@ do "gmodule/Makefile") CONFIG_FILES="$CONFIG_FILES gmodule/Makefile" ;; "gmodule/gmoduleconf.h") CONFIG_FILES="$CONFIG_FILES gmodule/gmoduleconf.h" ;; "gobject/Makefile") CONFIG_FILES="$CONFIG_FILES gobject/Makefile" ;; + "gobject/glib-genmarshal") CONFIG_FILES="$CONFIG_FILES gobject/glib-genmarshal" ;; "gobject/glib-mkenums") CONFIG_FILES="$CONFIG_FILES gobject/glib-mkenums" ;; "gobject/tests/Makefile") CONFIG_FILES="$CONFIG_FILES gobject/tests/Makefile" ;; "gthread/Makefile") CONFIG_FILES="$CONFIG_FILES gthread/Makefile" ;; @@ -31126,16 +31219,11 @@ do "README") CONFIG_FILES="$CONFIG_FILES README" ;; "config.h.win32") CONFIG_FILES="$CONFIG_FILES config.h.win32" ;; "glib/glibconfig.h.win32") CONFIG_FILES="$CONFIG_FILES glib/glibconfig.h.win32" ;; - "glib/makefile.msc") CONFIG_FILES="$CONFIG_FILES glib/makefile.msc" ;; "glib/glib.rc") CONFIG_FILES="$CONFIG_FILES glib/glib.rc" ;; - "gmodule/makefile.msc") CONFIG_FILES="$CONFIG_FILES gmodule/makefile.msc" ;; "gmodule/gmodule.rc") CONFIG_FILES="$CONFIG_FILES gmodule/gmodule.rc" ;; - "gobject/makefile.msc") CONFIG_FILES="$CONFIG_FILES gobject/makefile.msc" ;; "gobject/gobject.rc") CONFIG_FILES="$CONFIG_FILES gobject/gobject.rc" ;; - "gthread/makefile.msc") CONFIG_FILES="$CONFIG_FILES gthread/makefile.msc" ;; "gthread/gthread.rc") CONFIG_FILES="$CONFIG_FILES gthread/gthread.rc" ;; "gio/gio.rc") CONFIG_FILES="$CONFIG_FILES gio/gio.rc" ;; - "tests/makefile.msc") CONFIG_FILES="$CONFIG_FILES tests/makefile.msc" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac @@ -32856,6 +32944,7 @@ $as_echo "$as_me: glib/glibconfig.h is unchanged" >&6;} ;; "chmod-scripts":C) chmod 0755 glib-zip chmod 0755 glib-gettextize +chmod 0755 gobject/glib-genmarshal chmod 0755 gobject/glib-mkenums ;; esac diff --git a/configure.ac b/configure.ac index c653a922c..fbc440058 100644 --- a/configure.ac +++ b/configure.ac @@ -31,7 +31,7 @@ m4_define(glib_configure_ac) m4_define([glib_major_version], [2]) m4_define([glib_minor_version], [53]) -m4_define([glib_micro_version], [3]) +m4_define([glib_micro_version], [4]) m4_define([glib_interface_age], [0]) m4_define([glib_binary_age], [m4_eval(100 * glib_minor_version + glib_micro_version)]) @@ -465,8 +465,8 @@ GLIB_GNU_GETTEXT if test "$gt_cv_have_gettext" != "yes" ; then AC_MSG_ERROR([ -*** You must have either have gettext support in your C library, or use the -*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html +*** You must have either have gettext support in your C library, or use the +*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html) ]) fi @@ -525,7 +525,8 @@ AM_CONDITIONAL(OS_WIN32_AND_DLL_COMPILATION, [test x$glib_native_win32 = xyes -a # Checks for library functions. AC_FUNC_ALLOCA AC_CHECK_FUNCS(mmap posix_memalign memalign valloc fsync pipe2 issetugid) -AC_CHECK_FUNCS(timegm gmtime_r strerror_r) +AC_CHECK_FUNCS(timegm gmtime_r) +AC_FUNC_STRERROR_R() AC_CACHE_CHECK([for __libc_enable_secure], glib_cv_have_libc_enable_secure, [AC_TRY_LINK([#include <unistd.h> @@ -889,7 +890,7 @@ int main () AC_MSG_RESULT($glib_ssize_type) # Check for some functions -AC_CHECK_FUNCS(lstat strsignal vsnprintf stpcpy strcasecmp strncasecmp poll vasprintf setenv unsetenv getc_unlocked readlink symlink fdwalk memmem) +AC_CHECK_FUNCS(lstat strsignal vsnprintf stpcpy strcasecmp strncasecmp poll vasprintf setenv unsetenv getc_unlocked readlink symlink fdwalk) AC_CHECK_FUNCS(lchmod lchown fchmod fchown utimes getresuid) AC_CHECK_FUNCS(getmntent_r setmntent endmntent hasmntopt getfsstat getvfsstat fallocate) case $host_os in aix*) ac_cv_func_splice=no ;; esac # AIX splice() is something else @@ -958,7 +959,7 @@ if $glib_failed ; then AC_MSG_ERROR([Could not determine values for MSG_* constants]) fi -AC_CHECK_FUNCS(getprotobyname_r endservent if_nametoindex if_indextoname sendmmsg recvmmsg) +AC_CHECK_FUNCS(endservent if_nametoindex if_indextoname sendmmsg recvmmsg) AS_IF([test $glib_native_win32 = yes], [ # <wspiapi.h> in the Windows SDK and in mingw-w64 has wrappers for @@ -2242,7 +2243,7 @@ AC_CACHE_CHECK([for lock-free atomic intrinsics], glib_cv_g_atomic_lock_free, [ AC_TRY_LINK([], [volatile int atomic = 2;\ __sync_bool_compare_and_swap (&atomic, 2, 3);], - [AC_MSG_ERROR([GLib must be build with -march=i486 or later.])], + [AC_MSG_ERROR([GLib must be built with -march=i486 or later.])], []) CFLAGS="${SAVE_CFLAGS}" fi @@ -3466,6 +3467,7 @@ glib/tests/Makefile gmodule/Makefile gmodule/gmoduleconf.h gobject/Makefile +gobject/glib-genmarshal gobject/glib-mkenums gobject/tests/Makefile gthread/Makefile @@ -3501,6 +3503,7 @@ m4macros/Makefile AC_CONFIG_COMMANDS([chmod-scripts], [chmod 0755 glib-zip chmod 0755 glib-gettextize +chmod 0755 gobject/glib-genmarshal chmod 0755 gobject/glib-mkenums]) # we want to invoke this macro solely so that the config.status script @@ -3512,16 +3515,11 @@ if false; then README config.h.win32 glib/glibconfig.h.win32 - glib/makefile.msc glib/glib.rc - gmodule/makefile.msc gmodule/gmodule.rc - gobject/makefile.msc gobject/gobject.rc - gthread/makefile.msc gthread/gthread.rc gio/gio.rc - tests/makefile.msc ]) fi diff --git a/docs/reference/gio/gapplication.1 b/docs/reference/gio/gapplication.1 index 4e2eb3a25..0a809d27b 100644 --- a/docs/reference/gio/gapplication.1 +++ b/docs/reference/gio/gapplication.1 @@ -2,7 +2,7 @@ .\" Title: gapplication .\" Author: Ryan Lortie .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/gdbus-codegen.1 b/docs/reference/gio/gdbus-codegen.1 index e2d9023d3..af0a1d95d 100644 --- a/docs/reference/gio/gdbus-codegen.1 +++ b/docs/reference/gio/gdbus-codegen.1 @@ -2,7 +2,7 @@ .\" Title: gdbus-codegen .\" Author: David Zeuthen <zeuthen@gmail.com> .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/gdbus.1 b/docs/reference/gio/gdbus.1 index 4e3467111..87904ec88 100644 --- a/docs/reference/gio/gdbus.1 +++ b/docs/reference/gio/gdbus.1 @@ -2,7 +2,7 @@ .\" Title: gdbus .\" Author: David Zeuthen <zeuthen@gmail.com> .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/gio-querymodules.1 b/docs/reference/gio/gio-querymodules.1 index 92bab6fc0..eb2adff46 100644 --- a/docs/reference/gio/gio-querymodules.1 +++ b/docs/reference/gio/gio-querymodules.1 @@ -2,7 +2,7 @@ .\" Title: gio-querymodules .\" Author: Alexander Larsson .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/gio.1 b/docs/reference/gio/gio.1 index c9ba0ae12..c56980801 100644 --- a/docs/reference/gio/gio.1 +++ b/docs/reference/gio/gio.1 @@ -2,7 +2,7 @@ .\" Title: gio .\" Author: Matthias Clasen <mclasen@redhat.com> .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/glib-compile-resources.1 b/docs/reference/gio/glib-compile-resources.1 index 7b6473890..8c9c3f44d 100644 --- a/docs/reference/gio/glib-compile-resources.1 +++ b/docs/reference/gio/glib-compile-resources.1 @@ -2,7 +2,7 @@ .\" Title: glib-compile-resources .\" Author: Alexander Larsson .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/glib-compile-schemas.1 b/docs/reference/gio/glib-compile-schemas.1 index 96493c549..edc2465d6 100644 --- a/docs/reference/gio/glib-compile-schemas.1 +++ b/docs/reference/gio/glib-compile-schemas.1 @@ -2,7 +2,7 @@ .\" Title: glib-compile-schemas .\" Author: Ryan Lortie .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/gresource.1 b/docs/reference/gio/gresource.1 index 207b952a6..1f0544b6f 100644 --- a/docs/reference/gio/gresource.1 +++ b/docs/reference/gio/gresource.1 @@ -2,7 +2,7 @@ .\" Title: gresource .\" Author: Matthias Clasen .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/gsettings.1 b/docs/reference/gio/gsettings.1 index 715bed808..6c5f8f259 100644 --- a/docs/reference/gio/gsettings.1 +++ b/docs/reference/gio/gsettings.1 @@ -2,7 +2,7 @@ .\" Title: gsettings .\" Author: Ryan Lortie .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GIO .\" Language: English diff --git a/docs/reference/gio/html/GFile.html b/docs/reference/gio/html/GFile.html index 15bb3f6da..741018095 100644 --- a/docs/reference/gio/html/GFile.html +++ b/docs/reference/gio/html/GFile.html @@ -4573,6 +4573,9 @@ existing <em class="parameter"><code>destination</code></em> will be copied as symlinks, otherwise the target of the <em class="parameter"><code>source</code></em> symlink will be copied.</p> +<p>If the flag <a class="link" href="GFile.html#G-FILE-COPY-ALL-METADATA:CAPS"><span class="type">G_FILE_COPY_ALL_METADATA</span></a> is specified then all the metadata +that is possible to copy is copied, not just the default subset (which, +for instance, does not include the owner, see <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>).</p> <p>If <em class="parameter"><code>cancellable</code></em> is not <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation diff --git a/docs/reference/gio/html/GResource.html b/docs/reference/gio/html/GResource.html index bbef36a34..d055c473b 100644 --- a/docs/reference/gio/html/GResource.html +++ b/docs/reference/gio/html/GResource.html @@ -1066,8 +1066,8 @@ or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</ </tr> <tr> <td class="parameter_name"><p>flags</p></td> -<td class="parameter_description"><p> a location to place the flags about the file, -or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the length is not needed. </p></td> +<td class="parameter_description"><p> a location to place the <a class="link" href="GResource.html#GResourceFlags" title="enum GResourceFlags"><span class="type">GResourceFlags</span></a> about the file, +or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the flags are not needed. </p></td> <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL may be passed instead of a pointer to a location."><span class="acronym">optional</span></acronym>]</span></td> </tr> <tr> diff --git a/docs/reference/gio/html/gio-D-Bus-Utilities.html b/docs/reference/gio/html/gio-D-Bus-Utilities.html index 78d432556..371389475 100644 --- a/docs/reference/gio/html/gio-D-Bus-Utilities.html +++ b/docs/reference/gio/html/gio-D-Bus-Utilities.html @@ -351,7 +351,11 @@ g_dbus_gvariant_to_gvalue (<em class="parameter"><code><a href="../glib-GVariant <p>Converts a <a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> to a <a href="../gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>. If <em class="parameter"><code>value</code></em> is floating, it is consumed.</p> <p>The rules specified in the <a class="link" href="gio-D-Bus-Utilities.html#g-dbus-gvalue-to-gvariant" title="g_dbus_gvalue_to_gvariant ()"><code class="function">g_dbus_gvalue_to_gvariant()</code></a> function are -used - this function is essentially its reverse form.</p> +used - this function is essentially its reverse form. So, a <a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> +containing any basic or string array type will be converted to a <a href="../gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> +containing a basic value or string array. Any other <a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> (handle, +variant, tuple, dict entry) will be converted to a <a href="../gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> containing that +<a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a>.</p> <p>The conversion never fails - a valid <a href="../gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> is always returned in <em class="parameter"><code>out_gvalue</code></em> .</p> diff --git a/docs/reference/gio/html/index.html b/docs/reference/gio/html/index.html index 4ae352ab4..9a301b162 100644 --- a/docs/reference/gio/html/index.html +++ b/docs/reference/gio/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GIO Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for GIO 2.53.3 + for GIO 2.53.4 The latest version of this documentation can be found on-line at <a class="ulink" href="https://developer.gnome.org/gio/unstable/" target="_top">https://developer.gnome.org/gio/unstable/</a>. diff --git a/docs/reference/gio/version.xml b/docs/reference/gio/version.xml index 27b2061b6..75cc04805 100644 --- a/docs/reference/gio/version.xml +++ b/docs/reference/gio/version.xml @@ -1 +1 @@ -2.53.3 +2.53.4 diff --git a/docs/reference/glib/glib-gettextize.1 b/docs/reference/glib/glib-gettextize.1 index 186497fc0..382086256 100644 --- a/docs/reference/glib/glib-gettextize.1 +++ b/docs/reference/glib/glib-gettextize.1 @@ -2,7 +2,7 @@ .\" Title: glib-gettextize .\" Author: Owen Taylor .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GLib .\" Language: English diff --git a/docs/reference/glib/gtester-report.1 b/docs/reference/glib/gtester-report.1 index 469cbc676..0ff05c750 100644 --- a/docs/reference/glib/gtester-report.1 +++ b/docs/reference/glib/gtester-report.1 @@ -2,7 +2,7 @@ .\" Title: gtester-report .\" Author: Tim Janik .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GLib .\" Language: English diff --git a/docs/reference/glib/gtester.1 b/docs/reference/glib/gtester.1 index 2fd0e6893..6a665126a 100644 --- a/docs/reference/glib/gtester.1 +++ b/docs/reference/glib/gtester.1 @@ -2,7 +2,7 @@ .\" Title: gtester .\" Author: Tim Janik .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GLib .\" Language: English diff --git a/docs/reference/glib/html/glib-GVariant.html b/docs/reference/glib/html/glib-GVariant.html index db12f6308..ea3c85ec2 100644 --- a/docs/reference/glib/html/glib-GVariant.html +++ b/docs/reference/glib/html/glib-GVariant.html @@ -1242,7 +1242,7 @@ child.</p> <a name="id-1.6.19.6.27"></a><h4>Summary</h4> <p>To put the entire example together, for our dictionary mapping strings to variants (with two entries, as given above), we are -using 91 bytes of memory for type information, 29 byes of memory +using 91 bytes of memory for type information, 29 bytes of memory for the serialised data, 16 bytes for buffer management and 24 bytes for the <a class="link" href="glib-GVariant.html#GVariant" title="GVariant"><span class="type">GVariant</span></a> instance, or a total of 160 bytes, plus malloc overhead. If we were to use <a class="link" href="glib-GVariant.html#g-variant-get-child-value" title="g_variant_get_child_value ()"><code class="function">g_variant_get_child_value()</code></a> to diff --git a/docs/reference/glib/html/glib-Key-value-file-parser.html b/docs/reference/glib/html/glib-Key-value-file-parser.html index d0c3be375..996451927 100644 --- a/docs/reference/glib/html/glib-Key-value-file-parser.html +++ b/docs/reference/glib/html/glib-Key-value-file-parser.html @@ -1122,7 +1122,8 @@ returned string, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" t <div class="refsect3"> <a name="g-key-file-to-data.returns"></a><h4>Returns</h4> <p> a newly allocated string holding -the contents of the <a class="link" href="glib-Key-value-file-parser.html#GKeyFile" title="GKeyFile"><span class="type">GKeyFile</span></a> </p> +the contents of the <a class="link" href="glib-Key-value-file-parser.html#GKeyFile" title="GKeyFile"><span class="type">GKeyFile</span></a>. </p> +<p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p> </div> <p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p> </div> @@ -1237,7 +1238,7 @@ The array of returned groups will be <a class="link" href="glib-Standard-Macros. <a name="g-key-file-get-groups.returns"></a><h4>Returns</h4> <p> a newly-allocated <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings. Use <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a> to free it. </p> -<p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> +<p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1 length=length][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> </div> <p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p> </div> @@ -1294,7 +1295,7 @@ be found, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL <a name="g-key-file-get-keys.returns"></a><h4>Returns</h4> <p> a newly-allocated <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings. Use <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a> to free it. </p> -<p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> +<p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1 length=length][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> </div> <p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p> </div> diff --git a/docs/reference/glib/html/glib-Unicode-Manipulation.html b/docs/reference/glib/html/glib-Unicode-Manipulation.html index 873ee225c..dcd69457a 100644 --- a/docs/reference/glib/html/glib-Unicode-Manipulation.html +++ b/docs/reference/glib/html/glib-Unicode-Manipulation.html @@ -1916,6 +1916,10 @@ g_utf8_get_char_validated (<em class="parameter"><code>const <a class="link" hre This function checks for incomplete characters, for invalid characters such as characters that are out of the range of Unicode, and for overlong encodings of valid characters.</p> +<p>Note that <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char-validated" title="g_utf8_get_char_validated ()"><code class="function">g_utf8_get_char_validated()</code></a> returns (gunichar)-2 if +<em class="parameter"><code>max_len</code></em> + is positive and any of the bytes in the first UTF-8 character +sequence are nul.</p> <div class="refsect3"> <a name="g-utf8-get-char-validated.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> @@ -2085,6 +2089,12 @@ g_utf8_find_next_char (<em class="parameter"><code>const <a class="link" href="g does not have to be at the beginning of a UTF-8 character. No check is made to see if the character found is actually valid other than it starts with an appropriate byte.</p> +<p>If <em class="parameter"><code>end</code></em> + is <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, the return value will never be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>: if the end of the +string is reached, a pointer to the terminating nul byte is returned. If +<em class="parameter"><code>end</code></em> + is non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, the return value will be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if the end of the string +is reached.</p> <div class="refsect3"> <a name="g-utf8-find-next-char.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> @@ -2110,7 +2120,10 @@ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code </div> <div class="refsect3"> <a name="g-utf8-find-next-char.returns"></a><h4>Returns</h4> -<p> a pointer to the found character or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a></p> +<p> a pointer to the found character or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if <em class="parameter"><code>end</code></em> +is +set and is reached. </p> +<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> </div> </div> <hr> @@ -4990,6 +5003,26 @@ See <a class="ulink" href="http://www.unicode.org/reports/tr24/" target="_top">U </td> <td class="enum_member_annotations"> </td> </tr> +<tr> +<td class="enum_member_name"><p><a name="G-UNICODE-SCRIPT-MASARAM-GONDI:CAPS"></a>G_UNICODE_SCRIPT_MASARAM_GONDI</p></td> +<td> </td> +<td> </td> +</tr> +<tr> +<td class="enum_member_name"><p><a name="G-UNICODE-SCRIPT-NUSHU:CAPS"></a>G_UNICODE_SCRIPT_NUSHU</p></td> +<td> </td> +<td> </td> +</tr> +<tr> +<td class="enum_member_name"><p><a name="G-UNICODE-SCRIPT-SOYOMBO:CAPS"></a>G_UNICODE_SCRIPT_SOYOMBO</p></td> +<td> </td> +<td> </td> +</tr> +<tr> +<td class="enum_member_name"><p><a name="G-UNICODE-SCRIPT-ZANABAZAR-SQUARE:CAPS"></a>G_UNICODE_SCRIPT_ZANABAZAR_SQUARE</p></td> +<td> </td> +<td> </td> +</tr> </tbody> </table></div> </div> diff --git a/docs/reference/glib/html/glib-Version-Information.html b/docs/reference/glib/html/glib-Version-Information.html index c9c36904a..700a55b03 100644 --- a/docs/reference/glib/html/glib-Version-Information.html +++ b/docs/reference/glib/html/glib-Version-Information.html @@ -355,7 +355,7 @@ linked against at application run time.</p> <hr> <div class="refsect2"> <a name="GLIB-MICRO-VERSION:CAPS"></a><h3>GLIB_MICRO_VERSION</h3> -<pre class="programlisting">#define GLIB_MICRO_VERSION 3 +<pre class="programlisting">#define GLIB_MICRO_VERSION 4 </pre> <p>The micro version number of the GLib library.</p> <p>Like <span class="type">gtk_micro_version</span>, but from the headers used at diff --git a/docs/reference/glib/html/glib.devhelp2 b/docs/reference/glib/html/glib.devhelp2 index 1c69d0136..a74e4874e 100644 --- a/docs/reference/glib/html/glib.devhelp2 +++ b/docs/reference/glib/html/glib.devhelp2 @@ -2701,6 +2701,10 @@ <keyword type="constant" name="G_UNICODE_SCRIPT_NEWA" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-NEWA:CAPS"/> <keyword type="constant" name="G_UNICODE_SCRIPT_OSAGE" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-OSAGE:CAPS"/> <keyword type="constant" name="G_UNICODE_SCRIPT_TANGUT" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-TANGUT:CAPS"/> + <keyword type="constant" name="G_UNICODE_SCRIPT_MASARAM_GONDI" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-MASARAM-GONDI:CAPS"/> + <keyword type="constant" name="G_UNICODE_SCRIPT_NUSHU" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-NUSHU:CAPS"/> + <keyword type="constant" name="G_UNICODE_SCRIPT_SOYOMBO" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-SOYOMBO:CAPS"/> + <keyword type="constant" name="G_UNICODE_SCRIPT_ZANABAZAR_SQUARE" link="glib-Unicode-Manipulation.html#G-UNICODE-SCRIPT-ZANABAZAR-SQUARE:CAPS"/> <keyword type="constant" name="G_NORMALIZE_DEFAULT" link="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"/> <keyword type="constant" name="G_NORMALIZE_NFD" link="glib-Unicode-Manipulation.html#G-NORMALIZE-NFD:CAPS"/> <keyword type="constant" name="G_NORMALIZE_DEFAULT_COMPOSE" link="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT-COMPOSE:CAPS"/> diff --git a/docs/reference/glib/html/index.html b/docs/reference/glib/html/index.html index 180801ecd..e4dac7aab 100644 --- a/docs/reference/glib/html/index.html +++ b/docs/reference/glib/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GLib Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for GLib 2.53.3 + for GLib 2.53.4 The latest version of this documentation can be found on-line at <a class="ulink" href="https://developer.gnome.org/glib/unstable/" target="_top">https://developer.gnome.org/glib/unstable/</a>. diff --git a/docs/reference/glib/version.xml b/docs/reference/glib/version.xml index 27b2061b6..75cc04805 100644 --- a/docs/reference/glib/version.xml +++ b/docs/reference/glib/version.xml @@ -1 +1 @@ -2.53.3 +2.53.4 diff --git a/docs/reference/gobject/glib-genmarshal.1 b/docs/reference/gobject/glib-genmarshal.1 index f85532e84..53365517f 100644 --- a/docs/reference/gobject/glib-genmarshal.1 +++ b/docs/reference/gobject/glib-genmarshal.1 @@ -1,8 +1,8 @@ '\" t .\" Title: glib-genmarshal -.\" Author: Tim Janik +.\" Author: Emmanuele Bassi .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GObject .\" Language: English @@ -38,7 +38,9 @@ glib-genmarshal \- C code marshaller generation utility for GLib closures is a small utility that generates C code marshallers for callback functions of the GClosure mechanism in the GObject sublibrary of GLib\&. The marshaller functions have a standard signature, they get passed in the invoking closure, an array of value structures holding the callback function parameters and a value structure for the return value of the callback\&. The marshaller is then responsible to call the respective C code function of the closure with all the parameters on the stack and to collect its return value\&. .PP \fBglib\-genmarshal\fR -takes a list of marshallers to generate as input\&. The marshaller list is either read from standard input or from files passed as additional arguments on the command line\&. +takes a list of marshallers to generate as input\&. The marshaller list is either read from files passed as additional arguments on the command line; or from standard input, by using +\- +as the input file\&. .SS "Marshaller list format" .PP The marshaller lists are processed line by line, a line can contain a comment in the form of @@ -56,9 +58,6 @@ or a marshaller specification of the form .if n \{\ .RE .\} -.sp -(up to 16 -\fIPTYPE\fRs may be present)\&. .PP The \fIRTYPE\fR @@ -185,18 +184,22 @@ deprecated alias for .PP \fB\-\-header\fR .RS 4 -Generate header file contents of the marshallers\&. +Generate header file contents of the marshallers\&. This option is mutually exclusive with the +\fB\-\-body\fR +option\&. .RE .PP \fB\-\-body\fR .RS 4 -Generate C code file contents of the marshallers\&. +Generate C code file contents of the marshallers\&. This option is mutually exclusive with the +\fB\-\-header\fR +option\&. .RE .PP \fB\-\-prefix=\fR\fB\fIPREFIX\fR\fR .RS 4 Specify marshaller prefix\&. The default prefix is -`g_cclosure_marshal\*(Aq\&. +`g_cclosure_user_marshal\*(Aq\&. .RE .PP \fB\-\-skip\-source\fR @@ -207,25 +210,31 @@ Skip source location remarks in generated comments\&. \fB\-\-stdinc\fR .RS 4 Use the standard marshallers of the GObject library, and include -gmarshal\&.h -in generated header files\&. +glib\-object\&.h +in generated header files\&. This option is mutually exclusive with the +\fB\-\-nostdinc\fR +option\&. .RE .PP \fB\-\-nostdinc\fR .RS 4 Do not use the standard marshallers of the GObject library, and skip -gmarshal\&.h -include directive in generated header files\&. +glib\-object\&.h +include directive in generated header files\&. This option is mutually exclusive with the +\fB\-\-stdinc\fR +option\&. .RE .PP \fB\-\-internal\fR .RS 4 -Mark generated functions as internal, using G_GNUC_INTERNAL\&. +Mark generated functions as internal, using +G_GNUC_INTERNAL\&. .RE .PP \fB\-\-valist\-marshallers\fR .RS 4 -Generate valist marshallers, for use with g_signal_set_va_marshaller()\&. +Generate valist marshallers, for use with +\fBg_signal_set_va_marshaller()\fR\&. .RE .PP \fB\-v\fR, \fB\-\-version\fR @@ -250,7 +259,78 @@ Print version and exit\&. .PP \fB\-\-output=FILE\fR .RS 4 -Write output to FILE instead of stdout\&. +Write output to +\fIFILE\fR +instead of the standard output\&. +.RE +.PP +\fB\-\-prototypes\fR +.RS 4 +Generate function prototypes before the function definition in the C source file, in order to avoid a +missing\-prototypes +compiler warning\&. This option is only useful when using the +\fB\-\-body\fR +option\&. +.RE +.PP +\fB\-\-pragma\-once\fR +.RS 4 +Use the +once +pragma instead of an old style header guard when generating the C header file\&. This option is only useful when using the +\fB\-\-header\fR +option\&. +.RE +.PP +\fB\-\-include\-header=\fR\fB\fIHEADER\fR\fR +.RS 4 +Adds a +#include +directive for the given file in the C source file\&. This option is only useful when using the +\fB\-\-body\fR +option\&. +.RE +.PP +\fB\-D \fR\fB\fISYMBOL[=VALUE]\fR\fR +.RS 4 +Adds a +#define +C pre\-processor directive for +\fISYMBOL\fR +and its given +\fIVALUE\fR, or "1" if the value is unset\&. You can use this option multiple times; if you do, all the symbols will be defined in the same order given on the command line, before the symbols undefined using the +\fB\-U\fR +option\&. This option is only useful when using the +\fB\-\-body\fR +option\&. +.RE +.PP +\fB\-U \fR\fB\fISYMBOL\fR\fR +.RS 4 +Adds a +#undef +C pre\-processor directive to undefine the given +\fISYMBOL\fR\&. You can use this option multiple times; if you do, all the symbols will be undefined in the same order given on the command line, after the symbols defined using the +\fB\-D\fR +option\&. This option is only useful when using the +\fB\-\-body\fR +option\&. +.RE +.PP +\fB\-\-quiet\fR +.RS 4 +Minimizes the output of +\fBglib\-genmarshal\fR, by printing only warnings and errors\&. This option is mutually exclusive with the +\fB\-\-verbose\fR +option\&. +.RE +.PP +\fB\-\-verbose\fR +.RS 4 +Increases the verbosity of +\fBglib\-genmarshal\fR, by printing debugging information\&. This option is mutually exclusive with the +\fB\-\-quiet\fR +option\&. .RE .SH "EXAMPLE" .PP @@ -309,9 +389,9 @@ The generated marshallers have the arguments encoded in their function name\&. F .RS 4 .\} .nf -g_cclosure_user_marshal_VOID__VOID(), -g_cclosure_user_marshal_VOID__INT(), -g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR()\&. +g_cclosure_user_marshal_VOID__VOID(\&.\&.\&.), +g_cclosure_user_marshal_VOID__INT(\&.\&.\&.), +g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR(\&.\&.\&.)\&. .fi .if n \{\ .RE diff --git a/docs/reference/gobject/glib-genmarshal.xml b/docs/reference/gobject/glib-genmarshal.xml index 5ddbc34a4..61cfe774a 100644 --- a/docs/reference/gobject/glib-genmarshal.xml +++ b/docs/reference/gobject/glib-genmarshal.xml @@ -6,6 +6,11 @@ <authorgroup> <author> <contrib>Developer</contrib> + <firstname>Emmanuele</firstname> + <surname>Bassi</surname> + </author> + <author> + <contrib>Original developer</contrib> <firstname>Tim</firstname> <surname>Janik</surname> </author> @@ -43,8 +48,9 @@ collect its return value. </para> <para><command>glib-genmarshal</command> takes a list of marshallers to generate as -input. The marshaller list is either read from standard input or from files -passed as additional arguments on the command line. +input. The marshaller list is either read from files passed as additional arguments +on the command line; or from standard input, by using <literal>-</literal> as the +input file. </para> <refsect2><title>Marshaller list format</title> @@ -60,7 +66,6 @@ or a marshaller specification of the form <replaceable>RTYPE</replaceable>:<replaceable>PTYPE</replaceable>,<replaceable>PTYPE</replaceable> <replaceable>RTYPE</replaceable>:<replaceable>PTYPE</replaceable>,<replaceable>PTYPE</replaceable>,<replaceable>PTYPE</replaceable> </programlisting> -(up to 16 <replaceable>PTYPE</replaceable>s may be present). </para> <para> The <replaceable>RTYPE</replaceable> part specifies the callback's return @@ -239,21 +244,23 @@ deprecated alias for <replaceable>BOOLEAN</replaceable> <varlistentry> <term><option>--header</option></term> <listitem><para> -Generate header file contents of the marshallers. +Generate header file contents of the marshallers. This option is mutually +exclusive with the <option>--body</option> option. </para></listitem> </varlistentry> <varlistentry> <term><option>--body</option></term> <listitem><para> -Generate C code file contents of the marshallers. +Generate C code file contents of the marshallers. This option is mutually +exclusive with the <option>--header</option> option. </para></listitem> </varlistentry> <varlistentry> <term><option>--prefix=<replaceable>PREFIX</replaceable></option></term> <listitem><para> -Specify marshaller prefix. The default prefix is <literal>`g_cclosure_marshal'</literal>. +Specify marshaller prefix. The default prefix is <literal>`g_cclosure_user_marshal'</literal>. </para></listitem> </varlistentry> @@ -268,7 +275,9 @@ Skip source location remarks in generated comments. <term><option>--stdinc</option></term> <listitem><para> Use the standard marshallers of the GObject library, and include -<filename>gmarshal.h</filename> in generated header files. +<filename>glib-object.h</filename> in generated header files. This +option is mutually exclusive with the <option>--nostdinc</option> +option. </para></listitem> </varlistentry> @@ -276,21 +285,22 @@ Use the standard marshallers of the GObject library, and include <term><option>--nostdinc</option></term> <listitem><para> Do not use the standard marshallers of the GObject library, and skip -<filename>gmarshal.h</filename> include directive in generated header files. +<filename>glib-object.h</filename> include directive in generated header files. +This option is mutually exclusive with the <option>--stdinc</option> option. </para></listitem> </varlistentry> <varlistentry> <term><option>--internal</option></term> <listitem><para> -Mark generated functions as internal, using G_GNUC_INTERNAL. +Mark generated functions as internal, using <literal>G_GNUC_INTERNAL</literal>. </para></listitem> </varlistentry> <varlistentry> <term><option>--valist-marshallers</option></term> <listitem><para> -Generate valist marshallers, for use with g_signal_set_va_marshaller(). +Generate valist marshallers, for use with <function>g_signal_set_va_marshaller()</function>. </para></listitem> </varlistentry> @@ -325,7 +335,76 @@ Print version and exit. <varlistentry> <term><option>--output=FILE</option></term> <listitem><para> -Write output to FILE instead of stdout. +Write output to <replaceable>FILE</replaceable> instead of the standard output. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>--prototypes</option></term> +<listitem><para> +Generate function prototypes before the function definition in the C source +file, in order to avoid a <literal>missing-prototypes</literal> compiler +warning. This option is only useful when using the <option>--body</option> +option. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>--pragma-once</option></term> +<listitem><para> +Use the <literal>once</literal> pragma instead of an old style header guard +when generating the C header file. This option is only useful when using the +<option>--header</option> option. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>--include-header=<replaceable>HEADER</replaceable></option></term> +<listitem><para> +Adds a <literal>#include</literal> directive for the given file in the C +source file. This option is only useful when using the <option>--body</option> +option. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-D <replaceable>SYMBOL[=VALUE]</replaceable></option></term> +<listitem><para> +Adds a <literal>#define</literal> C pre-processor directive for +<replaceable>SYMBOL</replaceable> and its given <replaceable>VALUE</replaceable>, +or "1" if the value is unset. You can use this option multiple times; if you do, +all the symbols will be defined in the same order given on the command line, before +the symbols undefined using the <option>-U</option> option. This option is only +useful when using the <option>--body</option> option. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-U <replaceable>SYMBOL</replaceable></option></term> +<listitem><para> +Adds a <literal>#undef</literal> C pre-processor directive to undefine the +given <replaceable>SYMBOL</replaceable>. You can use this option multiple times; +if you do, all the symbols will be undefined in the same order given on the +command line, after the symbols defined using the <option>-D</option> option. +This option is only useful when using the <option>--body</option> option. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>--quiet</option></term> +<listitem><para> +Minimizes the output of <command>glib-genmarshal</command>, by printing only +warnings and errors. This option is mutually exclusive with the +<option>--verbose</option> option. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>--verbose</option></term> +<listitem><para> +Increases the verbosity of <command>glib-genmarshal</command>, by printing +debugging information. This option is mutually exclusive with the +<option>--quiet</option> option. </para></listitem> </varlistentry> @@ -367,9 +446,9 @@ The generated marshallers have the arguments encoded in their function name. For this particular list, they are </para> <programlisting> -g_cclosure_user_marshal_VOID__VOID(), -g_cclosure_user_marshal_VOID__INT(), -g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR(). +g_cclosure_user_marshal_VOID__VOID(...), +g_cclosure_user_marshal_VOID__INT(...), +g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR(...). </programlisting> <para> They can be used directly for GClosures or be passed in as the diff --git a/docs/reference/gobject/glib-mkenums.1 b/docs/reference/gobject/glib-mkenums.1 index 626ce0342..5a6a9e5c3 100644 --- a/docs/reference/gobject/glib-mkenums.1 +++ b/docs/reference/gobject/glib-mkenums.1 @@ -2,7 +2,7 @@ .\" Title: glib-mkenums .\" Author: Owen Taylor .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GObject .\" Language: English diff --git a/docs/reference/gobject/gobject-query.1 b/docs/reference/gobject/gobject-query.1 index 2592776b3..f04526a6e 100644 --- a/docs/reference/gobject/gobject-query.1 +++ b/docs/reference/gobject/gobject-query.1 @@ -2,7 +2,7 @@ .\" Title: gobject-query .\" Author: Tim Janik .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> -.\" Date: 06/19/2017 +.\" Date: 07/17/2017 .\" Manual: User Commands .\" Source: GObject .\" Language: English diff --git a/docs/reference/gobject/html/glib-genmarshal.html b/docs/reference/gobject/html/glib-genmarshal.html index 77245bb26..faa0fef10 100644 --- a/docs/reference/gobject/html/glib-genmarshal.html +++ b/docs/reference/gobject/html/glib-genmarshal.html @@ -44,8 +44,9 @@ code function of the closure with all the parameters on the stack and to collect its return value. </p> <p><span class="command"><strong>glib-genmarshal</strong></span> takes a list of marshallers to generate as -input. The marshaller list is either read from standard input or from files -passed as additional arguments on the command line. +input. The marshaller list is either read from files passed as additional arguments +on the command line; or from standard input, by using <code class="literal">-</code> as the +input file. </p> <div class="refsect2"> <a name="id-1.5.3.5.4"></a><h3>Marshaller list format</h3> @@ -73,7 +74,6 @@ or a marshaller specification of the form <em class="replaceable"><code>RTYPE</code></em>:<em class="replaceable"><code>PTYPE</code></em>,<em class="replaceable"><code>PTYPE</code></em>,<em class="replaceable"><code>PTYPE</code></em> </pre> <p> -(up to 16 <em class="replaceable"><code>PTYPE</code></em>s may be present). </p> <p> The <em class="replaceable"><code>RTYPE</code></em> part specifies the callback's return @@ -245,19 +245,21 @@ deprecated alias for <em class="replaceable"><code>BOOLEAN</code></em> <tr> <td><p><span class="term"><code class="option">--header</code></span></p></td> <td><p> -Generate header file contents of the marshallers. +Generate header file contents of the marshallers. This option is mutually +exclusive with the <code class="option">--body</code> option. </p></td> </tr> <tr> <td><p><span class="term"><code class="option">--body</code></span></p></td> <td><p> -Generate C code file contents of the marshallers. +Generate C code file contents of the marshallers. This option is mutually +exclusive with the <code class="option">--header</code> option. </p></td> </tr> <tr> <td><p><span class="term"><code class="option">--prefix=<em class="replaceable"><code>PREFIX</code></em></code></span></p></td> <td><p> -Specify marshaller prefix. The default prefix is <code class="literal">`g_cclosure_marshal'</code>. +Specify marshaller prefix. The default prefix is <code class="literal">`g_cclosure_user_marshal'</code>. </p></td> </tr> <tr> @@ -270,26 +272,29 @@ Skip source location remarks in generated comments. <td><p><span class="term"><code class="option">--stdinc</code></span></p></td> <td><p> Use the standard marshallers of the GObject library, and include -<code class="filename">gmarshal.h</code> in generated header files. +<code class="filename">glib-object.h</code> in generated header files. This +option is mutually exclusive with the <code class="option">--nostdinc</code> +option. </p></td> </tr> <tr> <td><p><span class="term"><code class="option">--nostdinc</code></span></p></td> <td><p> Do not use the standard marshallers of the GObject library, and skip -<code class="filename">gmarshal.h</code> include directive in generated header files. +<code class="filename">glib-object.h</code> include directive in generated header files. +This option is mutually exclusive with the <code class="option">--stdinc</code> option. </p></td> </tr> <tr> <td><p><span class="term"><code class="option">--internal</code></span></p></td> <td><p> -Mark generated functions as internal, using G_GNUC_INTERNAL. +Mark generated functions as internal, using <code class="literal">G_GNUC_INTERNAL</code>. </p></td> </tr> <tr> <td><p><span class="term"><code class="option">--valist-marshallers</code></span></p></td> <td><p> -Generate valist marshallers, for use with g_signal_set_va_marshaller(). +Generate valist marshallers, for use with <code class="function">g_signal_set_va_marshaller()</code>. </p></td> </tr> <tr> @@ -319,7 +324,69 @@ Print version and exit. <tr> <td><p><span class="term"><code class="option">--output=FILE</code></span></p></td> <td><p> -Write output to FILE instead of stdout. +Write output to <em class="replaceable"><code>FILE</code></em> instead of the standard output. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">--prototypes</code></span></p></td> +<td><p> +Generate function prototypes before the function definition in the C source +file, in order to avoid a <code class="literal">missing-prototypes</code> compiler +warning. This option is only useful when using the <code class="option">--body</code> +option. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">--pragma-once</code></span></p></td> +<td><p> +Use the <code class="literal">once</code> pragma instead of an old style header guard +when generating the C header file. This option is only useful when using the +<code class="option">--header</code> option. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">--include-header=<em class="replaceable"><code>HEADER</code></em></code></span></p></td> +<td><p> +Adds a <code class="literal">#include</code> directive for the given file in the C +source file. This option is only useful when using the <code class="option">--body</code> +option. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">-D <em class="replaceable"><code>SYMBOL[=VALUE]</code></em></code></span></p></td> +<td><p> +Adds a <code class="literal">#define</code> C pre-processor directive for +<em class="replaceable"><code>SYMBOL</code></em> and its given <em class="replaceable"><code>VALUE</code></em>, +or "1" if the value is unset. You can use this option multiple times; if you do, +all the symbols will be defined in the same order given on the command line, before +the symbols undefined using the <code class="option">-U</code> option. This option is only +useful when using the <code class="option">--body</code> option. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">-U <em class="replaceable"><code>SYMBOL</code></em></code></span></p></td> +<td><p> +Adds a <code class="literal">#undef</code> C pre-processor directive to undefine the +given <em class="replaceable"><code>SYMBOL</code></em>. You can use this option multiple times; +if you do, all the symbols will be undefined in the same order given on the +command line, after the symbols defined using the <code class="option">-D</code> option. +This option is only useful when using the <code class="option">--body</code> option. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">--quiet</code></span></p></td> +<td><p> +Minimizes the output of <span class="command"><strong>glib-genmarshal</strong></span>, by printing only +warnings and errors. This option is mutually exclusive with the +<code class="option">--verbose</code> option. +</p></td> +</tr> +<tr> +<td><p><span class="term"><code class="option">--verbose</code></span></p></td> +<td><p> +Increases the verbosity of <span class="command"><strong>glib-genmarshal</strong></span>, by printing +debugging information. This option is mutually exclusive with the +<code class="option">--quiet</code> option. </p></td> </tr> </tbody> @@ -377,9 +444,9 @@ The generated marshallers have the arguments encoded in their function name. For this particular list, they are </p> <pre class="programlisting"> -g_cclosure_user_marshal_VOID__VOID(), -g_cclosure_user_marshal_VOID__INT(), -g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR(). +g_cclosure_user_marshal_VOID__VOID(...), +g_cclosure_user_marshal_VOID__INT(...), +g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR(...). </pre> <p> They can be used directly for GClosures or be passed in as the diff --git a/docs/reference/gobject/html/index.html b/docs/reference/gobject/html/index.html index a94ff8c36..7de4f0327 100644 --- a/docs/reference/gobject/html/index.html +++ b/docs/reference/gobject/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GObject Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for GObject 2.53.3 + for GObject 2.53.4 The latest version of this documentation can be found on-line at <a class="ulink" href="https://developer.gnome.org/gobject/unstable/" target="_top">https://developer.gnome.org/gobject/unstable/</a>. diff --git a/docs/reference/gobject/html/signal.html b/docs/reference/gobject/html/signal.html index 45cc7b0de..dc064e7ec 100644 --- a/docs/reference/gobject/html/signal.html +++ b/docs/reference/gobject/html/signal.html @@ -123,7 +123,7 @@ closures. </p></li> <li class="listitem"><p> - <em class="parameter"><code>accumulator_data</code></em>: this pointer will be passed down to each invocation of the + <em class="parameter"><code>accu_data</code></em>: this pointer will be passed down to each invocation of the accumulator during emission. </p></li> <li class="listitem"><p> diff --git a/docs/reference/gobject/tut_gsignal.xml b/docs/reference/gobject/tut_gsignal.xml index 6a1420a63..f990ab805 100644 --- a/docs/reference/gobject/tut_gsignal.xml +++ b/docs/reference/gobject/tut_gsignal.xml @@ -250,7 +250,7 @@ guint g_signal_newv (const gchar *signal_name, closures. </para></listitem> <listitem><para> - <parameter>accumulator_data</parameter>: this pointer will be passed down to each invocation of the + <parameter>accu_data</parameter>: this pointer will be passed down to each invocation of the accumulator during emission. </para></listitem> <listitem><para> diff --git a/docs/reference/gobject/version.xml b/docs/reference/gobject/version.xml index 27b2061b6..75cc04805 100644 --- a/docs/reference/gobject/version.xml +++ b/docs/reference/gobject/version.xml @@ -1 +1 @@ -2.53.3 +2.53.4 diff --git a/gio/Makefile.am b/gio/Makefile.am index f07c94ab5..b2db99581 100644 --- a/gio/Makefile.am +++ b/gio/Makefile.am @@ -757,7 +757,6 @@ EXTRA_DIST += \ data-to-c.pl \ gioenumtypes.h.template \ gioenumtypes.c.template \ - makefile.msc \ gio.rc.in \ gschema.dtd \ gconstructor_as_data.h \ diff --git a/gio/Makefile.in b/gio/Makefile.in index dd4e458d8..dc0450eb5 100644 --- a/gio/Makefile.in +++ b/gio/Makefile.in @@ -1234,9 +1234,9 @@ MAINTAINERCLEANFILES = EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ gdbusdaemon.c gdbusdaemon.h dbus-daemon.xml \ $(portal_interfaces) strinfo.c data-to-c.pl \ - gioenumtypes.h.template gioenumtypes.c.template makefile.msc \ - gio.rc.in gschema.dtd gconstructor_as_data.h \ - gnetworking.h.win32 $(NULL) gio.stp.in $(completion_DATA) + gioenumtypes.h.template gioenumtypes.c.template gio.rc.in \ + gschema.dtd gconstructor_as_data.h gnetworking.h.win32 $(NULL) \ + gio.stp.in $(completion_DATA) # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. diff --git a/gio/gdbus-2.0/codegen/codegen.py b/gio/gdbus-2.0/codegen/codegen.py index 15cf96124..3a8347fb3 100644 --- a/gio/gdbus-2.0/codegen/codegen.py +++ b/gio/gdbus-2.0/codegen/codegen.py @@ -50,7 +50,7 @@ class CodeGenerator: self.ns_upper = '' self.ns_lower = '' self.interface_prefix = interface_prefix - self.header_guard = header_name.upper().replace('.', '_').replace('-', '_').replace('/', '_') + self.header_guard = header_name.upper().replace('.', '_').replace('-', '_').replace('/', '_').replace(':', '_') # ---------------------------------------------------------------------------------------------------- diff --git a/gio/gdbus-2.0/codegen/config.py b/gio/gdbus-2.0/codegen/config.py index 04e3e5f56..4abd04beb 100644 --- a/gio/gdbus-2.0/codegen/config.py +++ b/gio/gdbus-2.0/codegen/config.py @@ -19,7 +19,4 @@ # # Author: David Zeuthen <davidz@redhat.com> -DATADIR = "${prefix}/share" -DATADIR = DATADIR.replace( - "${prefix}", "/home/mclasen/gnome") -VERSION = "2.53.3" +VERSION = "2.53.4" diff --git a/gio/gdbus-2.0/codegen/config.py.in b/gio/gdbus-2.0/codegen/config.py.in index 80d20ee78..a91178a95 100644 --- a/gio/gdbus-2.0/codegen/config.py.in +++ b/gio/gdbus-2.0/codegen/config.py.in @@ -19,7 +19,4 @@ # # Author: David Zeuthen <davidz@redhat.com> -DATADIR = "@datarootdir@" -DATADIR = DATADIR.replace( - "${prefix}", "@prefix@") VERSION = "@VERSION@" diff --git a/gio/gdbus-2.0/codegen/gdbus-codegen.in b/gio/gdbus-2.0/codegen/gdbus-codegen.in index 9c086fe87..805098188 100644 --- a/gio/gdbus-2.0/codegen/gdbus-codegen.in +++ b/gio/gdbus-2.0/codegen/gdbus-codegen.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!/usr/bin/env @PYTHON@ # GDBus - GLib D-Bus Library # @@ -24,14 +24,18 @@ import os import sys srcdir = os.getenv('UNINSTALLED_GLIB_SRCDIR', None) +filedir = os.path.dirname(__file__) if srcdir is not None: path = os.path.join(srcdir, 'gio', 'gdbus-2.0') -elif os.name == 'nt': - # Makes gdbus-codegen 'relocatable' at runtime on Windows. - path = os.path.join(os.path.dirname(__file__), '..', 'share', 'glib-2.0') +elif os.path.basename(filedir) == 'bin': + # Make the prefix containing gdbus-codegen 'relocatable' at runtime by + # adding /some/prefix/bin/../share/glib-2.0 to the python path + path = os.path.join(filedir, '..', 'share', 'glib-2.0') else: - path = os.path.join('@datadir@', 'glib-2.0') + # Assume that the modules we need are in the current directory and add the + # parent directory to the python path. + path = os.path.join(filedir, '..') sys.path.insert(0, os.path.abspath(path)) from codegen import codegen_main diff --git a/gio/gdbus-daemon-generated.c b/gio/gdbus-daemon-generated.c index c1544f832..696919a73 100644 --- a/gio/gdbus-daemon-generated.c +++ b/gio/gdbus-daemon-generated.c @@ -1,5 +1,5 @@ /* - * Generated by gdbus-codegen 2.53.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.53.4. DO NOT EDIT. * * The license of this code is the same as for the source it was derived from. */ diff --git a/gio/gdbus-daemon-generated.h b/gio/gdbus-daemon-generated.h index 07eb57654..05732fce7 100644 --- a/gio/gdbus-daemon-generated.h +++ b/gio/gdbus-daemon-generated.h @@ -1,5 +1,5 @@ /* - * Generated by gdbus-codegen 2.53.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.53.4. DO NOT EDIT. * * The license of this code is the same as for the source it was derived from. */ diff --git a/gio/gdbusauthmechanismsha1.c b/gio/gdbusauthmechanismsha1.c index d4ebe354e..0b17b906b 100644 --- a/gio/gdbusauthmechanismsha1.c +++ b/gio/gdbusauthmechanismsha1.c @@ -260,7 +260,7 @@ ensure_keyring_directory (GError **error) g_io_error_from_errno (errno), _("Error when getting information for directory “%s”: %s"), path, - strerror (errno)); + g_strerror (errno)); g_free (path); path = NULL; goto out; @@ -293,7 +293,7 @@ ensure_keyring_directory (GError **error) g_io_error_from_errno (errno), _("Error creating directory “%s”: %s"), path, - strerror (errno)); + g_strerror (errno)); g_free (path); path = NULL; goto out; @@ -531,7 +531,7 @@ keyring_acquire_lock (const gchar *path, g_io_error_from_errno (errno), _("Error deleting stale lock file “%s”: %s"), lock, - strerror (errno)); + g_strerror (errno)); goto out; } _log ("Deleted stale lock file '%s'", lock); @@ -563,7 +563,7 @@ keyring_acquire_lock (const gchar *path, g_io_error_from_errno (errno), _("Error creating lock file “%s”: %s"), lock, - strerror (errno)); + g_strerror (errno)); goto out; } @@ -593,7 +593,7 @@ keyring_release_lock (const gchar *path, g_io_error_from_errno (errno), _("Error closing (unlinked) lock file “%s”: %s"), lock, - strerror (errno)); + g_strerror (errno)); goto out; } if (g_unlink (lock) != 0) @@ -603,7 +603,7 @@ keyring_release_lock (const gchar *path, g_io_error_from_errno (errno), _("Error unlinking lock file “%s”: %s"), lock, - strerror (errno)); + g_strerror (errno)); goto out; } diff --git a/gio/gdbusconnection.c b/gio/gdbusconnection.c index 15146dc0a..b56c5a875 100644 --- a/gio/gdbusconnection.c +++ b/gio/gdbusconnection.c @@ -4901,7 +4901,7 @@ schedule_method_call (GDBusConnection *connection, call_in_idle_cb, invocation, g_object_unref); - g_source_set_name (idle_source, "[gio] call_in_idle_cb"); + g_source_set_name (idle_source, "[gio, " __FILE__ "] call_in_idle_cb"); g_source_attach (idle_source, main_context); g_source_unref (idle_source); } diff --git a/gio/gdbusmessage.c b/gio/gdbusmessage.c index ce655ed53..915885850 100644 --- a/gio/gdbusmessage.c +++ b/gio/gdbusmessage.c @@ -3504,7 +3504,7 @@ g_dbus_message_print (GDBusMessage *message, } else { - g_string_append_printf (fs, "(fstat failed: %s)", strerror (errno)); + g_string_append_printf (fs, "(fstat failed: %s)", g_strerror (errno)); } g_string_append_printf (str, "%*s fd %d: %s\n", indent, "", fds[n], fs->str); g_string_free (fs, TRUE); diff --git a/gio/gdbusnameowning.c b/gio/gdbusnameowning.c index d40f9346d..fcfc2f4fe 100644 --- a/gio/gdbusnameowning.c +++ b/gio/gdbusnameowning.c @@ -197,7 +197,7 @@ schedule_call_in_idle (Client *client, CallType call_type) call_in_idle_cb, data, (GDestroyNotify) call_handler_data_free); - g_source_set_name (idle_source, "[gio] call_in_idle_cb"); + g_source_set_name (idle_source, "[gio, gdbusnameowning.c] call_in_idle_cb"); g_source_attach (idle_source, client->main_context); g_source_unref (idle_source); } diff --git a/gio/gdbusnamewatching.c b/gio/gdbusnamewatching.c index 9fb6dd1ca..dad8e75ec 100644 --- a/gio/gdbusnamewatching.c +++ b/gio/gdbusnamewatching.c @@ -201,7 +201,7 @@ schedule_call_in_idle (Client *client, CallType call_type) call_in_idle_cb, data, (GDestroyNotify) call_handler_data_free); - g_source_set_name (idle_source, "[gio] call_in_idle_cb"); + g_source_set_name (idle_source, "[gio, gdbusnamewatching.c] call_in_idle_cb"); g_source_attach (idle_source, client->main_context); g_source_unref (idle_source); } diff --git a/gio/gdbusserver.c b/gio/gdbusserver.c index bb1b9e2b2..20df4e2ff 100644 --- a/gio/gdbusserver.c +++ b/gio/gdbusserver.c @@ -872,7 +872,7 @@ try_tcp (GDBusServer *server, g_io_error_from_errno (errno), _("Error writing nonce file at “%s”: %s"), server->nonce_file, - strerror (errno)); + g_strerror (errno)); goto out; } bytes_written += ret; diff --git a/gio/gdbusutils.c b/gio/gdbusutils.c index df0b3f545..ff036c765 100644 --- a/gio/gdbusutils.c +++ b/gio/gdbusutils.c @@ -358,7 +358,11 @@ g_dbus_is_guid (const gchar *string) * Converts a #GVariant to a #GValue. If @value is floating, it is consumed. * * The rules specified in the g_dbus_gvalue_to_gvariant() function are - * used - this function is essentially its reverse form. + * used - this function is essentially its reverse form. So, a #GVariant + * containing any basic or string array type will be converted to a #GValue + * containing a basic value or string array. Any other #GVariant (handle, + * variant, tuple, dict entry) will be converted to a #GValue containing that + * #GVariant. * * The conversion never fails - a valid #GValue is always returned in * @out_gvalue. diff --git a/gio/gfile.c b/gio/gfile.c index 212d3e0ef..dd518df54 100644 --- a/gio/gfile.c +++ b/gio/gfile.c @@ -3299,6 +3299,10 @@ file_copy_fallback (GFile *source, * will be copied as symlinks, otherwise the target of the * @source symlink will be copied. * + * If the flag #G_FILE_COPY_ALL_METADATA is specified then all the metadata + * that is possible to copy is copied, not just the default subset (which, + * for instance, does not include the owner, see #GFileInfo). + * * If @cancellable is not %NULL, then the operation can be cancelled by * triggering the cancellable object from another thread. If the operation * was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. diff --git a/gio/gio.rc b/gio/gio.rc index 4f8ec7ee3..675584017 100644 --- a/gio/gio.rc +++ b/gio/gio.rc @@ -1,8 +1,8 @@ #include <winver.h> VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,53,3,0 - PRODUCTVERSION 2,53,3,0 + FILEVERSION 2,53,4,0 + PRODUCTVERSION 2,53,4,0 FILEFLAGSMASK 0 FILEFLAGS 0 FILEOS VOS__WINDOWS32 @@ -15,12 +15,12 @@ VS_VERSION_INFO VERSIONINFO BEGIN VALUE "CompanyName", "The GLib developer community" VALUE "FileDescription", "Gio" - VALUE "FileVersion", "2.53.3.0" + VALUE "FileVersion", "2.53.4.0" VALUE "InternalName", "libgio-2.0-0" VALUE "LegalCopyright", "Copyright 2006-2011 Red Hat, Inc. and others." VALUE "OriginalFilename", "libgio-2.0-0.dll" VALUE "ProductName", "GLib" - VALUE "ProductVersion", "2.53.3" + VALUE "ProductVersion", "2.53.4" END END BLOCK "VarFileInfo" diff --git a/gio/gioenumtypes.c b/gio/gioenumtypes.c index f2cb9f8ae..0da317619 100644 --- a/gio/gioenumtypes.c +++ b/gio/gioenumtypes.c @@ -4,7 +4,6 @@ #include "config.h" #include "gioenumtypes.h" #include <gio.h> - /* enumerations from "gioenums.h" */ GType g_app_info_create_flags_get_type (void) @@ -27,7 +26,6 @@ g_app_info_create_flags_get_type (void) return g_define_type_id__volatile; } - GType g_converter_flags_get_type (void) { @@ -48,7 +46,6 @@ g_converter_flags_get_type (void) return g_define_type_id__volatile; } - GType g_converter_result_get_type (void) { @@ -70,7 +67,6 @@ g_converter_result_get_type (void) return g_define_type_id__volatile; } - GType g_data_stream_byte_order_get_type (void) { @@ -91,7 +87,6 @@ g_data_stream_byte_order_get_type (void) return g_define_type_id__volatile; } - GType g_data_stream_newline_type_get_type (void) { @@ -113,7 +108,6 @@ g_data_stream_newline_type_get_type (void) return g_define_type_id__volatile; } - GType g_file_attribute_type_get_type (void) { @@ -141,7 +135,6 @@ g_file_attribute_type_get_type (void) return g_define_type_id__volatile; } - GType g_file_attribute_info_flags_get_type (void) { @@ -162,7 +155,6 @@ g_file_attribute_info_flags_get_type (void) return g_define_type_id__volatile; } - GType g_file_attribute_status_get_type (void) { @@ -183,7 +175,6 @@ g_file_attribute_status_get_type (void) return g_define_type_id__volatile; } - GType g_file_query_info_flags_get_type (void) { @@ -203,7 +194,6 @@ g_file_query_info_flags_get_type (void) return g_define_type_id__volatile; } - GType g_file_create_flags_get_type (void) { @@ -224,7 +214,6 @@ g_file_create_flags_get_type (void) return g_define_type_id__volatile; } - GType g_file_measure_flags_get_type (void) { @@ -246,7 +235,6 @@ g_file_measure_flags_get_type (void) return g_define_type_id__volatile; } - GType g_mount_mount_flags_get_type (void) { @@ -265,7 +253,6 @@ g_mount_mount_flags_get_type (void) return g_define_type_id__volatile; } - GType g_mount_unmount_flags_get_type (void) { @@ -285,7 +272,6 @@ g_mount_unmount_flags_get_type (void) return g_define_type_id__volatile; } - GType g_drive_start_flags_get_type (void) { @@ -304,7 +290,6 @@ g_drive_start_flags_get_type (void) return g_define_type_id__volatile; } - GType g_drive_start_stop_type_get_type (void) { @@ -327,7 +312,6 @@ g_drive_start_stop_type_get_type (void) return g_define_type_id__volatile; } - GType g_file_copy_flags_get_type (void) { @@ -352,7 +336,6 @@ g_file_copy_flags_get_type (void) return g_define_type_id__volatile; } - GType g_file_monitor_flags_get_type (void) { @@ -375,7 +358,6 @@ g_file_monitor_flags_get_type (void) return g_define_type_id__volatile; } - GType g_file_type_get_type (void) { @@ -400,7 +382,6 @@ g_file_type_get_type (void) return g_define_type_id__volatile; } - GType g_filesystem_preview_type_get_type (void) { @@ -421,7 +402,6 @@ g_filesystem_preview_type_get_type (void) return g_define_type_id__volatile; } - GType g_file_monitor_event_get_type (void) { @@ -450,7 +430,6 @@ g_file_monitor_event_get_type (void) return g_define_type_id__volatile; } - GType g_io_error_enum_get_type (void) { @@ -516,7 +495,6 @@ g_io_error_enum_get_type (void) return g_define_type_id__volatile; } - GType g_ask_password_flags_get_type (void) { @@ -539,7 +517,6 @@ g_ask_password_flags_get_type (void) return g_define_type_id__volatile; } - GType g_password_save_get_type (void) { @@ -560,7 +537,6 @@ g_password_save_get_type (void) return g_define_type_id__volatile; } - GType g_mount_operation_result_get_type (void) { @@ -581,7 +557,6 @@ g_mount_operation_result_get_type (void) return g_define_type_id__volatile; } - GType g_output_stream_splice_flags_get_type (void) { @@ -602,7 +577,6 @@ g_output_stream_splice_flags_get_type (void) return g_define_type_id__volatile; } - GType g_io_stream_splice_flags_get_type (void) { @@ -624,7 +598,6 @@ g_io_stream_splice_flags_get_type (void) return g_define_type_id__volatile; } - GType g_emblem_origin_get_type (void) { @@ -646,7 +619,6 @@ g_emblem_origin_get_type (void) return g_define_type_id__volatile; } - GType g_resolver_error_get_type (void) { @@ -667,7 +639,6 @@ g_resolver_error_get_type (void) return g_define_type_id__volatile; } - GType g_resolver_record_type_get_type (void) { @@ -690,7 +661,6 @@ g_resolver_record_type_get_type (void) return g_define_type_id__volatile; } - GType g_resource_error_get_type (void) { @@ -710,7 +680,6 @@ g_resource_error_get_type (void) return g_define_type_id__volatile; } - GType g_resource_flags_get_type (void) { @@ -730,7 +699,6 @@ g_resource_flags_get_type (void) return g_define_type_id__volatile; } - GType g_resource_lookup_flags_get_type (void) { @@ -749,7 +717,6 @@ g_resource_lookup_flags_get_type (void) return g_define_type_id__volatile; } - GType g_socket_family_get_type (void) { @@ -771,7 +738,6 @@ g_socket_family_get_type (void) return g_define_type_id__volatile; } - GType g_socket_type_get_type (void) { @@ -793,7 +759,6 @@ g_socket_type_get_type (void) return g_define_type_id__volatile; } - GType g_socket_msg_flags_get_type (void) { @@ -815,7 +780,6 @@ g_socket_msg_flags_get_type (void) return g_define_type_id__volatile; } - GType g_socket_protocol_get_type (void) { @@ -838,7 +802,6 @@ g_socket_protocol_get_type (void) return g_define_type_id__volatile; } - GType g_zlib_compressor_format_get_type (void) { @@ -859,7 +822,6 @@ g_zlib_compressor_format_get_type (void) return g_define_type_id__volatile; } - GType g_unix_socket_address_type_get_type (void) { @@ -882,7 +844,6 @@ g_unix_socket_address_type_get_type (void) return g_define_type_id__volatile; } - GType g_bus_type_get_type (void) { @@ -904,7 +865,6 @@ g_bus_type_get_type (void) return g_define_type_id__volatile; } - GType g_bus_name_owner_flags_get_type (void) { @@ -925,7 +885,6 @@ g_bus_name_owner_flags_get_type (void) return g_define_type_id__volatile; } - GType g_bus_name_watcher_flags_get_type (void) { @@ -945,7 +904,6 @@ g_bus_name_watcher_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_proxy_flags_get_type (void) { @@ -969,7 +927,6 @@ g_dbus_proxy_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_error_get_type (void) { @@ -1032,7 +989,6 @@ g_dbus_error_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_connection_flags_get_type (void) { @@ -1056,7 +1012,6 @@ g_dbus_connection_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_capability_flags_get_type (void) { @@ -1076,7 +1031,6 @@ g_dbus_capability_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_call_flags_get_type (void) { @@ -1097,7 +1051,6 @@ g_dbus_call_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_message_type_get_type (void) { @@ -1120,7 +1073,6 @@ g_dbus_message_type_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_message_flags_get_type (void) { @@ -1142,7 +1094,6 @@ g_dbus_message_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_message_header_field_get_type (void) { @@ -1170,7 +1121,6 @@ g_dbus_message_header_field_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_property_info_flags_get_type (void) { @@ -1191,7 +1141,6 @@ g_dbus_property_info_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_subtree_flags_get_type (void) { @@ -1211,7 +1160,6 @@ g_dbus_subtree_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_server_flags_get_type (void) { @@ -1232,7 +1180,6 @@ g_dbus_server_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_signal_flags_get_type (void) { @@ -1254,7 +1201,6 @@ g_dbus_signal_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_send_message_flags_get_type (void) { @@ -1274,7 +1220,6 @@ g_dbus_send_message_flags_get_type (void) return g_define_type_id__volatile; } - GType g_credentials_type_get_type (void) { @@ -1298,7 +1243,6 @@ g_credentials_type_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_message_byte_order_get_type (void) { @@ -1318,7 +1262,6 @@ g_dbus_message_byte_order_get_type (void) return g_define_type_id__volatile; } - GType g_application_flags_get_type (void) { @@ -1344,7 +1287,6 @@ g_application_flags_get_type (void) return g_define_type_id__volatile; } - GType g_tls_error_get_type (void) { @@ -1369,7 +1311,6 @@ g_tls_error_get_type (void) return g_define_type_id__volatile; } - GType g_tls_certificate_flags_get_type (void) { @@ -1395,7 +1336,6 @@ g_tls_certificate_flags_get_type (void) return g_define_type_id__volatile; } - GType g_tls_authentication_mode_get_type (void) { @@ -1416,7 +1356,6 @@ g_tls_authentication_mode_get_type (void) return g_define_type_id__volatile; } - GType g_tls_rehandshake_mode_get_type (void) { @@ -1437,7 +1376,6 @@ g_tls_rehandshake_mode_get_type (void) return g_define_type_id__volatile; } - GType g_tls_password_flags_get_type (void) { @@ -1459,7 +1397,6 @@ g_tls_password_flags_get_type (void) return g_define_type_id__volatile; } - GType g_tls_interaction_result_get_type (void) { @@ -1480,7 +1417,6 @@ g_tls_interaction_result_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_interface_skeleton_flags_get_type (void) { @@ -1500,7 +1436,6 @@ g_dbus_interface_skeleton_flags_get_type (void) return g_define_type_id__volatile; } - GType g_dbus_object_manager_client_flags_get_type (void) { @@ -1520,7 +1455,6 @@ g_dbus_object_manager_client_flags_get_type (void) return g_define_type_id__volatile; } - GType g_tls_database_verify_flags_get_type (void) { @@ -1539,7 +1473,6 @@ g_tls_database_verify_flags_get_type (void) return g_define_type_id__volatile; } - GType g_tls_database_lookup_flags_get_type (void) { @@ -1559,7 +1492,6 @@ g_tls_database_lookup_flags_get_type (void) return g_define_type_id__volatile; } - GType g_tls_certificate_request_flags_get_type (void) { @@ -1578,7 +1510,6 @@ g_tls_certificate_request_flags_get_type (void) return g_define_type_id__volatile; } - GType g_io_module_scope_flags_get_type (void) { @@ -1598,7 +1529,6 @@ g_io_module_scope_flags_get_type (void) return g_define_type_id__volatile; } - GType g_socket_client_event_get_type (void) { @@ -1625,7 +1555,6 @@ g_socket_client_event_get_type (void) return g_define_type_id__volatile; } - GType g_socket_listener_event_get_type (void) { @@ -1647,7 +1576,6 @@ g_socket_listener_event_get_type (void) return g_define_type_id__volatile; } - GType g_test_dbus_flags_get_type (void) { @@ -1666,7 +1594,6 @@ g_test_dbus_flags_get_type (void) return g_define_type_id__volatile; } - GType g_subprocess_flags_get_type (void) { @@ -1693,7 +1620,6 @@ g_subprocess_flags_get_type (void) return g_define_type_id__volatile; } - GType g_notification_priority_get_type (void) { @@ -1715,7 +1641,6 @@ g_notification_priority_get_type (void) return g_define_type_id__volatile; } - GType g_network_connectivity_get_type (void) { @@ -1737,7 +1662,6 @@ g_network_connectivity_get_type (void) return g_define_type_id__volatile; } - /* enumerations from "gsettings.h" */ GType g_settings_bind_flags_get_type (void) @@ -1763,6 +1687,5 @@ g_settings_bind_flags_get_type (void) return g_define_type_id__volatile; } - /* Generated data ends here */ diff --git a/gio/gopenuriportal.c b/gio/gopenuriportal.c index 1a68cf97c..b06da84b0 100644 --- a/gio/gopenuriportal.c +++ b/gio/gopenuriportal.c @@ -21,6 +21,7 @@ #include <sys/stat.h> #include <fcntl.h> #include <errno.h> +#include <string.h> #include "gopenuriportal.h" #include "xdp-dbus.h" @@ -201,6 +202,7 @@ open_call_done (GObject *source, gboolean open_file; gboolean res; char *path; + const char *handle; guint signal_id; open_file = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (task), "open-file")); @@ -218,17 +220,24 @@ open_call_done (GObject *source, return; } - signal_id = g_dbus_connection_signal_subscribe (connection, - "org.freedesktop.portal.Desktop", - "org.freedesktop.portal.Request", - "Response", - path, - NULL, - G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE, - response_received, - task, - NULL); - g_object_set_data (G_OBJECT (task), "signal-id", GINT_TO_POINTER (signal_id)); + handle = (const char *)g_object_get_data (G_OBJECT (task), "handle"); + if (strcmp (handle, path) != 0) + { + signal_id = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (task), "signal-id")); + g_dbus_connection_signal_unsubscribe (connection, signal_id); + + signal_id = g_dbus_connection_signal_subscribe (connection, + "org.freedesktop.portal.Desktop", + "org.freedesktop.portal.Request", + "Response", + path, + NULL, + G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE, + response_received, + task, + NULL); + g_object_set_data (G_OBJECT (task), "signal-id", GINT_TO_POINTER (signal_id)); + } } void @@ -238,9 +247,15 @@ g_openuri_portal_open_uri_async (const char *uri, GAsyncReadyCallback callback, gpointer user_data) { + GDBusConnection *connection; GTask *task; GFile *file; GVariantBuilder opt_builder; + char *token; + char *sender; + char *handle; + int i; + guint signal_id; if (!init_openuri_portal ()) { @@ -250,12 +265,40 @@ g_openuri_portal_open_uri_async (const char *uri, return; } + connection = g_dbus_proxy_get_connection (G_DBUS_PROXY (openuri)); + if (callback) - task = g_task_new (NULL, cancellable, callback, user_data); + { + task = g_task_new (NULL, cancellable, callback, user_data); + + token = g_strdup_printf ("gio%d", g_random_int_range (0, G_MAXINT)); + sender = g_strdup (g_dbus_connection_get_unique_name (connection) + 1); + for (i = 0; sender[i]; i++) + if (sender[i] == '.') + sender[i] = '_'; + + handle = g_strdup_printf ("/org/fredesktop/portal/desktop/request/%s/%s", sender, token); + g_object_set_data_full (G_OBJECT (task), "handle", handle, g_free); + g_free (sender); + + signal_id = g_dbus_connection_signal_subscribe (connection, + "org.freedesktop.portal.Desktop", + "org.freedesktop.portal.Request", + "Response", + handle, + NULL, + G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE, + response_received, + task, + NULL); + g_object_set_data (G_OBJECT (task), "signal-id", GINT_TO_POINTER (signal_id)); + } else task = NULL; g_variant_builder_init (&opt_builder, G_VARIANT_TYPE_VARDICT); + g_variant_builder_add (&opt_builder, "{sv}", "handle_token", g_variant_new_string (token)); + g_free (token); file = g_file_new_for_uri (uri); if (g_file_is_native (file)) diff --git a/gio/gresource.c b/gio/gresource.c index 9e1d481b0..0d11d6884 100644 --- a/gio/gresource.c +++ b/gio/gresource.c @@ -1160,8 +1160,8 @@ g_resources_enumerate_children (const gchar *path, * @lookup_flags: A #GResourceLookupFlags * @size: (out) (optional): a location to place the length of the contents of the file, * or %NULL if the length is not needed - * @flags: (out) (optional): a location to place the flags about the file, - * or %NULL if the length is not needed + * @flags: (out) (optional): a location to place the #GResourceFlags about the file, + * or %NULL if the flags are not needed * @error: return location for a #GError, or %NULL * * Looks for a file at the specified @path in the set of diff --git a/gio/gsettings-tool.c b/gio/gsettings-tool.c index 63c5a4477..d74b6dd9e 100644 --- a/gio/gsettings-tool.c +++ b/gio/gsettings-tool.c @@ -275,6 +275,8 @@ gsettings_description (void) { const gchar *description; description = g_settings_schema_key_get_description (global_schema_key); + if (description == NULL) + description = g_settings_schema_key_get_summary (global_schema_key); g_print ("%s\n", description); } diff --git a/gio/gsettingsschema.c b/gio/gsettingsschema.c index dc5586428..bc7a4ac84 100644 --- a/gio/gsettingsschema.c +++ b/gio/gsettingsschema.c @@ -324,7 +324,7 @@ try_prepend_dir (const gchar *directory) static void try_prepend_data_dir (const gchar *directory) { - const gchar *dirname = g_build_filename (directory, "glib-2.0", "schemas", NULL); + gchar *dirname = g_build_filename (directory, "glib-2.0", "schemas", NULL); try_prepend_dir (dirname); g_free (dirname); } diff --git a/gio/gtestdbus.c b/gio/gtestdbus.c index 609605290..f10d33c5f 100644 --- a/gio/gtestdbus.c +++ b/gio/gtestdbus.c @@ -245,14 +245,14 @@ watcher_init (void) /* fork a child to clean up when we are killed */ if (pipe (pipe_fds) != 0) { - g_warning ("pipe() failed: %s", strerror (errno)); + g_warning ("pipe() failed: %s", g_strerror (errno)); g_assert_not_reached (); } switch (fork ()) { case -1: - g_warning ("fork() failed: %s", strerror (errno)); + g_warning ("fork() failed: %s", g_strerror (errno)); g_assert_not_reached (); break; diff --git a/gio/gunixconnection.c b/gio/gunixconnection.c index 1647d3601..5f969fd9b 100644 --- a/gio/gunixconnection.c +++ b/gio/gunixconnection.c @@ -501,7 +501,7 @@ g_unix_connection_receive_credentials (GUnixConnection *connection, G_IO_ERROR, g_io_error_from_errno (errno), _("Error checking if SO_PASSCRED is enabled for socket: %s"), - strerror (errno)); + g_strerror (errno)); goto out; } if (opt_val == 0) @@ -516,7 +516,7 @@ g_unix_connection_receive_credentials (GUnixConnection *connection, G_IO_ERROR, g_io_error_from_errno (errno), _("Error enabling SO_PASSCRED: %s"), - strerror (errno)); + g_strerror (errno)); goto out; } turn_off_so_passcreds = TRUE; @@ -609,7 +609,7 @@ g_unix_connection_receive_credentials (GUnixConnection *connection, G_IO_ERROR, g_io_error_from_errno (errno), _("Error while disabling SO_PASSCRED: %s"), - strerror (errno)); + g_strerror (errno)); goto out; } } diff --git a/gio/makefile.msc b/gio/makefile.msc deleted file mode 100644 index 41a1f8928..000000000 --- a/gio/makefile.msc +++ /dev/null @@ -1,260 +0,0 @@ -# autogenerated from automake.am with automake.py -TOP = ..\.. -PRJ_TOP = .. -PACKAGE = gio -PKG_VER = 2.0 -!INCLUDE $(TOP)\glib\build\win32\make.msc - -SUBDIRS = win32 - -sub-all: - for %d in ($(SUBDIRS)) do nmake -nologo -f makefile.msc sub-one THIS=%d - -sub-one: - cd $(THIS) - nmake -nologo -f makefile.msc - cd .. - -INCLUDES = \ - -FImsvc_recommended_pragmas.h \ - -I .. -I ..\glib -I ..\gmodule -I . \ - $(INTL_CFLAGS) - -DEFINES = \ - -DG_LOG_DOMAIN=\"GLib-GIO\" \ - -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \ - -DGIO_COMPILATION - -appinfo_sources = \ - gwin32appinfo.c gwin32appinfo.h - -gio_headers = \ - gappinfo.h \ - gasyncresult.h \ - gbufferedinputstream.h \ - gbufferedoutputstream.h \ - gcancellable.h \ - gcontenttype.h \ - gdatainputstream.h \ - gdataoutputstream.h \ - gdrive.h \ - gemblem.h \ - gemblemedicon.h \ - gfile.h \ - gfileattribute.h \ - gfileenumerator.h \ - gfileicon.h \ - gfileinfo.h \ - gfileinputstream.h \ - gfilemonitor.h \ - gfilenamecompleter.h \ - gfileoutputstream.h \ - gfilterinputstream.h \ - gfilteroutputstream.h \ - gicon.h \ - ginputstream.h \ - gio.h \ - giotypes.h \ - gioenums.h \ - gioerror.h \ - giomodule.h \ - gioscheduler.h \ - gloadableicon.h \ - gmount.h \ - gmemoryinputstream.h \ - gmemoryoutputstream.h \ - gmountoperation.h \ - gnativevolumemonitor.h \ - goutputstream.h \ - gseekable.h \ - gsimpleasyncresult.h \ - gthemedicon.h \ - gvfs.h \ - gvolume.h \ - gvolumemonitor.h \ - $(NULL) - -OBJECTS = \ - gappinfo.obj \ - gasynchelper.obj \ - gasyncinitable.obj \ - gasyncresult.obj \ - gbufferedinputstream.obj \ - gbufferedoutputstream.obj \ - gcancellable.obj \ - gcontenttype.obj \ - gdatagrambased.obj \ - gdatainputstream.obj \ - gdataoutputstream.obj \ -# gdesktopappinfo.obj \ - gdrive.obj \ - gdummyfile.obj \ - gemblem.obj \ - gemblemedicon.obj \ - gfile.obj \ - gfileattribute.obj \ - gfileenumerator.obj \ - gfileicon.obj \ - gfileinfo.obj \ - gfileinputstream.obj \ - gfileiostream.obj \ - gfilemonitor.obj \ - gfilenamecompleter.obj \ - gfileoutputstream.obj \ - gfilterinputstream.obj \ - gfilteroutputstream.obj \ - gicon.obj \ - ginetaddress.obj \ - ginetsocketaddress.obj \ - ginitable.obj \ - ginputstream.obj \ - gioenumtypes.obj \ - gioerror.obj \ - giomodule.obj \ - gioscheduler.obj \ - giostream.obj \ - gloadableicon.obj \ - glocalfileiostream.obj \ - gmemoryinputstream.obj \ - gmemoryoutputstream.obj \ - gmount.obj \ - gmountoperation.obj \ - gnativevolumemonitor.obj \ - gnetworkaddress.obj \ - gnetworkservice.obj \ - goutputstream.obj \ - gpollfilemonitor.obj \ - gresolver.obj \ - gseekable.obj \ - gsimpleasyncresult.obj \ - gsocket.obj \ - gsocketaddress.obj \ - gsocketaddressenumerator.obj \ - gsocketclient.obj \ - gsocketconnectable.obj \ - gsocketconnection.obj \ - gsocketcontrolmessage.obj \ - gsocketlistener.obj \ - gsocketservice.obj \ - gsocketinputstream.obj \ - gsocketoutputstream.obj \ - gsrvtarget.obj \ - gtcpconnection.obj \ - gthreadedresolver.obj \ - gthreadedsocketservice.obj \ - gthemedicon.obj \ - gunionvolumemonitor.obj \ - gvfs.obj \ - gvolume.obj \ - gvolumemonitor.obj \ - \ - glocalvfs.obj \ - glocalfile.obj \ - glocalfileenumerator.obj \ - glocalfileinfo.obj \ - glocalfileinputstream.obj \ - glocalfileoutputstream.obj \ - glocalfilemonitor.obj \ - glocaldirectorymonitor.obj \ - gwin32appinfo.obj \ - \ - gio-marshal.obj \ - gwin32mount.obj \ - gwin32volumemonitor.obj \ - gwin32resolver.obj - -libgio_2_0_la_LIBADD = \ - $(top_builddir)/glib/libglib-2.0.la \ - $(top_builddir)/gobject/libgobject-2.0.la \ - $(top_builddir)/gmodule/libgmodule-2.0.la \ - $(platform_libadd) \ - $(SELINUX_LIBS) \ - $(GLIB_LIBS) \ - $(XATTR_LIBS) \ - $(NULL) - -unix_sources = \ - gunixdrive.c \ - gunixdrive.h \ - gunixmounts.c \ - gunixmounts.h \ - gunixvolume.c \ - gunixvolume.h \ - gunixvolumemonitor.c \ - gunixvolumemonitor.h \ - $(NULL) - -marshal_sources = \ - gio-marshal.h gio-marshal.c $(NULL) - -GLIB_GEN_MARSHAL = ..\gobject\glib-genmarshal.exe - -gio-marshal.h: gio-marshal.list - $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --header >> xgen-gwmh \ - && copy /y xgen-gwmh gio-marshal.h \ - && del xgen-gwmh xgen-gwmh~ - -gio-marshal.c: gio-marshal.h - echo #include "gio-marshal.h" >> xgen-gwmc \ - && $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --body >> xgen-gwmc \ - && copy xgen-gwmc gio-marshal.c \ - && del xgen-gwmc xgen-gwmc~ - -local_sources = \ - glocaldirectorymonitor.c \ - glocaldirectorymonitor.h \ - glocalfile.c \ - glocalfile.h \ - glocalfileenumerator.c \ - glocalfileenumerator.h \ - glocalfileinfo.c \ - glocalfileinfo.h \ - glocalfileinputstream.c \ - glocalfileinputstream.h \ - glocalfilemonitor.c \ - glocalfilemonitor.h \ - glocalfileoutputstream.c \ - glocalfileoutputstream.h \ - glocalvfs.c \ - glocalvfs.h \ - $(NULL) - -all : \ - $(PRJ_TOP)\config.h \ - sub-all \ - gio-marshal.c \ - gioenumtypes.h \ - gioenumtypes.c \ - libgio-$(PKG_VER)-0.dll - - -$(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32 - copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h - -gioenumtypes.h: $(gio_headers) gioenumtypes.h.template - $(PERL) ..\gobject\glib-mkenums --template gioenumtypes.h.template $(gio_headers) > gioenumtypes.h - -gioenumtypes.c: $(gio_headers) gioenumtypes.c.template - $(PERL) ..\gobject\glib-mkenums --template gioenumtypes.c.template $(gio_headers) > gioenumtypes.c - -gio.def: gio.symbols - echo EXPORTS > gio.def - cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \ - -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \ - -DG_GNUC_PRINTF=;G_GNUC_PRINTF gio.symbols >> gio.def - -RESOURCE = $(PACKAGE).res - -$(PACKAGE).res : $(PACKAGE).rc - rc -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc - -libgio-$(PKG_VER)-0.dll : $(OBJECTS) win32\giowin32.lib $(PACKAGE).def $(RESOURCE) - $(CC) $(CFLAGS) -LD -Felibgio-$(PKG_VER)-0.dll $(OBJECTS) $(RESOURCE) \ - ..\glib\glib-2.0.lib ..\gobject\gobject-2.0.lib ..\gmodule\gmodule-2.0.lib \ - win32\giowin32.lib \ - $(INTL_LIBS) \ - kernel32.lib user32.lib advapi32.lib shell32.lib wsock32.lib ws2_32.lib dnsapi.lib mpr.lib $(LDFLAGS) \ - /implib:gio-2.0.lib /def:$(PACKAGE).def - -.c.obj : - $(CC) $(CFLAGS) -c $(PKG_CFLAGS) $< diff --git a/gio/tests/Makefile.am b/gio/tests/Makefile.am index 8ba7626f4..acc1da4f4 100644 --- a/gio/tests/Makefile.am +++ b/gio/tests/Makefile.am @@ -566,9 +566,9 @@ EXTRA_DIST += test.gresource.xml test1.txt test2.gresource.xml test2.txt test3.g CLEANFILES += test-generated.txt test_resources.c test_resources2.[ch] plugin_resources.c test.gresource endif # !CROSS_COMPILING -BUILT_SOURCES += giotypefuncs.c +BUILT_SOURCES += giotypefuncs.inc -giotypefuncs.c: Makefile +giotypefuncs.inc: Makefile $(AM_V_GEN) echo '#include <gio/gio.h>' > xgen-giosrc.c && \ echo "G_GNUC_BEGIN_IGNORE_DEPRECATIONS" > xgen-gio && \ ${CPP} $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-giosrc.c | \ @@ -578,7 +578,7 @@ giotypefuncs.c: Makefile $(SED) -e 's/^/*tp++ = /' -e 's/$$/ ();/' >> xgen-gio && \ cp xgen-gio $@ # && rm -f xgen-gio xgen-giosrc.c -CLEANFILES += xgen-giosrc.c xgen-gio giotypefuncs.c +CLEANFILES += xgen-giosrc.c xgen-gio giotypefuncs.inc if ENABLE_INSTALLED_TESTS if OS_UNIX diff --git a/gio/tests/Makefile.in b/gio/tests/Makefile.in index 2f0a55eb2..1732c7086 100644 --- a/gio/tests/Makefile.in +++ b/gio/tests/Makefile.in @@ -2135,11 +2135,11 @@ LOG_COMPILER = $(top_srcdir)/tap-test NULL = # initialize variables for unconditional += appending -BUILT_SOURCES = $(am__append_29) giotypefuncs.c +BUILT_SOURCES = $(am__append_29) giotypefuncs.inc BUILT_EXTRA_DIST = CLEANFILES = *.log *.trs $(am__append_13) $(am__append_22) \ $(am__append_31) $(am__append_40) xgen-giosrc.c xgen-gio \ - giotypefuncs.c + giotypefuncs.inc DISTCLEANFILES = MAINTAINERCLEANFILES = EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ @@ -4709,7 +4709,7 @@ uninstall-am: uninstall-installed_testLTLIBRARIES \ @CROSS_COMPILING_FALSE@test.gresource: test.gresource.xml Makefile $(shell $(glib_compile_resources) --sourcedir=. --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/test.gresource.xml) @CROSS_COMPILING_FALSE@ $(AM_V_GEN) $(glib_compile_resources) --target=$@ --sourcedir=. --sourcedir=$(srcdir) $< -giotypefuncs.c: Makefile +giotypefuncs.inc: Makefile $(AM_V_GEN) echo '#include <gio/gio.h>' > xgen-giosrc.c && \ echo "G_GNUC_BEGIN_IGNORE_DEPRECATIONS" > xgen-gio && \ ${CPP} $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-giosrc.c | \ diff --git a/gio/tests/appinfo.c b/gio/tests/appinfo.c index b1a60f0b8..190205398 100644 --- a/gio/tests/appinfo.c +++ b/gio/tests/appinfo.c @@ -2,6 +2,7 @@ #include <locale.h> #include <string.h> +#include <glib/gstdio.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> @@ -474,10 +475,18 @@ test_from_keyfile (void) int main (int argc, char *argv[]) { + const gchar *build_dir; + g_setenv ("XDG_CURRENT_DESKTOP", "GNOME", TRUE); g_test_init (&argc, &argv, NULL); + /* With Meson build we need to change into right directory, so that the + * appinfo-test binary can be found. */ + build_dir = g_getenv ("G_TEST_BUILDDIR"); + if (build_dir) + g_chdir (build_dir); + g_test_add_func ("/appinfo/basic", test_basic); g_test_add_func ("/appinfo/text", test_text); g_test_add_func ("/appinfo/launch", test_launch); diff --git a/gio/tests/defaultvalue.c b/gio/tests/defaultvalue.c index 3225dbba4..84a8635da 100644 --- a/gio/tests/defaultvalue.c +++ b/gio/tests/defaultvalue.c @@ -174,7 +174,7 @@ list_all_types (void) GType *tp; all_registered_types = g_new0 (GType, 1000); tp = all_registered_types; -#include "giotypefuncs.c" +#include "giotypefuncs.inc" *tp = 0; } diff --git a/gio/tests/desktop-app-info.c b/gio/tests/desktop-app-info.c index 5fcb5c2e6..3086da428 100644 --- a/gio/tests/desktop-app-info.c +++ b/gio/tests/desktop-app-info.c @@ -18,6 +18,7 @@ */ #include <glib/glib.h> +#include <glib/gstdio.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> #include <stdlib.h> @@ -759,8 +760,15 @@ int main (int argc, char *argv[]) { + const gchar *build_dir; gint result; + /* With Meson build we need to change into right directory, so that the + * appinfo-test binary can be found. */ + build_dir = g_getenv ("G_TEST_BUILDDIR"); + if (build_dir) + g_chdir (build_dir); + g_test_init (&argc, &argv, NULL); basedir = g_get_current_dir (); diff --git a/gio/tests/gdbus-peer.c b/gio/tests/gdbus-peer.c index 845eb3666..8737ee846 100644 --- a/gio/tests/gdbus-peer.c +++ b/gio/tests/gdbus-peer.c @@ -626,7 +626,7 @@ read_all_from_fd (gint fd, gsize *out_len, GError **error) "Failed reading %d bytes into offset %d: %s", (gint) sizeof (buf), (gint) str->len, - strerror (errno)); + g_strerror (errno)); goto error; } else if (num_read > 0) diff --git a/gio/tests/gschema-compile.c b/gio/tests/gschema-compile.c index a215a846a..79eab97a7 100644 --- a/gio/tests/gschema-compile.c +++ b/gio/tests/gschema-compile.c @@ -11,6 +11,11 @@ typedef struct { const gchar *err; } SchemaTest; +/* Meson build defines this, autotools build does not */ +#ifndef GLIB_COMPILE_SCHEMAS +#define GLIB_COMPILE_SCHEMAS "../glib-compile-schemas" +#endif + static void test_schema_do_compile (gpointer data) { @@ -18,7 +23,7 @@ test_schema_do_compile (gpointer data) gchar *filename = g_strconcat (test->name, ".gschema.xml", NULL); gchar *path = g_test_build_filename (G_TEST_DIST, "schema-tests", filename, NULL); gchar *argv[] = { - "../glib-compile-schemas", + GLIB_COMPILE_SCHEMAS, "--strict", "--dry-run", "--schema-file", path, diff --git a/gio/tests/gsettings.c b/gio/tests/gsettings.c index 18db38805..2be4122fe 100644 --- a/gio/tests/gsettings.c +++ b/gio/tests/gsettings.c @@ -8,6 +8,8 @@ #include "testenum.h" +static const gchar *locale_dir = "."; + static gboolean backend_set; /* These tests rely on the schemas in org.gtk.test.gschema.xml @@ -732,7 +734,7 @@ test_l10n (void) gchar *str; gchar *locale; - bindtextdomain ("test", "."); + bindtextdomain ("test", locale_dir); bind_textdomain_codeset ("test", "UTF-8"); locale = g_strdup (setlocale (LC_MESSAGES, NULL)); @@ -779,7 +781,7 @@ test_l10n_context (void) gchar *str; gchar *locale; - bindtextdomain ("test", "."); + bindtextdomain ("test", locale_dir); bind_textdomain_codeset ("test", "UTF-8"); locale = g_strdup (setlocale (LC_MESSAGES, NULL)); @@ -2604,6 +2606,14 @@ main (int argc, char *argv[]) gchar *enums; gint result; +/* Meson build sets this */ +#ifdef TEST_LOCALE_PATH + if (g_str_has_suffix (TEST_LOCALE_PATH, "LC_MESSAGES")) + { + locale_dir = TEST_LOCALE_PATH G_DIR_SEPARATOR_S ".." G_DIR_SEPARATOR_S ".."; + } +#endif + setlocale (LC_ALL, ""); g_test_init (&argc, &argv, NULL); @@ -2619,8 +2629,13 @@ main (int argc, char *argv[]) if (!backend_set) g_setenv ("GSETTINGS_BACKEND", "memory", TRUE); +/* Meson build defines this, autotools build does not */ +#ifndef GLIB_MKENUMS +#define GLIB_MKENUMS "../../gobject/glib-mkenums" +#endif + g_remove ("org.gtk.test.enums.xml"); - g_assert (g_spawn_command_line_sync ("../../gobject/glib-mkenums " + g_assert (g_spawn_command_line_sync (GLIB_MKENUMS " " "--template " SRCDIR "/enums.xml.template " SRCDIR "/testenum.h", &enums, NULL, &result, NULL)); @@ -2632,8 +2647,13 @@ main (int argc, char *argv[]) g_assert (g_file_set_contents ("org.gtk.test.gschema.xml", schema_text, -1, NULL)); g_free (schema_text); +/* Meson build defines this, autotools build does not */ +#ifndef GLIB_COMPILE_SCHEMAS +#define GLIB_COMPILE_SCHEMAS "../glib-compile-schemas" +#endif + g_remove ("gschemas.compiled"); - g_assert (g_spawn_command_line_sync ("../glib-compile-schemas --targetdir=. " + g_assert (g_spawn_command_line_sync (GLIB_COMPILE_SCHEMAS " --targetdir=. " "--schema-file=org.gtk.test.enums.xml " "--schema-file=org.gtk.test.gschema.xml", NULL, NULL, &result, NULL)); @@ -2641,7 +2661,7 @@ main (int argc, char *argv[]) g_remove ("schema-source/gschemas.compiled"); g_mkdir ("schema-source", 0777); - g_assert (g_spawn_command_line_sync ("../glib-compile-schemas --targetdir=schema-source " + g_assert (g_spawn_command_line_sync (GLIB_COMPILE_SCHEMAS " --targetdir=schema-source " "--schema-file=" SRCDIR "/org.gtk.schemasourcecheck.gschema.xml", NULL, NULL, &result, NULL)); g_assert (result == 0); diff --git a/gio/tests/gsubprocess-testprog.c b/gio/tests/gsubprocess-testprog.c index 745724672..ca2a6ba42 100644 --- a/gio/tests/gsubprocess-testprog.c +++ b/gio/tests/gsubprocess-testprog.c @@ -25,7 +25,7 @@ write_all (int fd, gssize bytes_written = write (fd, buf, len); if (bytes_written < 0) g_error ("Failed to write to fd %d: %s", - fd, strerror (errno)); + fd, g_strerror (errno)); buf += bytes_written; len -= bytes_written; } diff --git a/gio/tests/modules/Makefile.am b/gio/tests/modules/Makefile.am index d24357a8f..4ca45f4b2 100644 --- a/gio/tests/modules/Makefile.am +++ b/gio/tests/modules/Makefile.am @@ -32,10 +32,10 @@ else rpath_hack = -rpath / endif -libtestmodulea_la_SOURCES = test-module-a.c +libtestmodulea_la_SOURCES = test-module-a.c symbol-visibility.h libtestmodulea_la_LIBADD = $(LDADD) libtestmodulea_la_LDFLAGS = $(LDFLAGS) -no-undefined -avoid-version $(rpath_hack) -libtestmoduleb_la_SOURCES = test-module-b.c +libtestmoduleb_la_SOURCES = test-module-b.c symbol-visibility.h libtestmoduleb_la_LIBADD = $(LDADD) libtestmoduleb_la_LDFLAGS =$(LDFLAGS) -no-undefined -avoid-version $(rpath_hack) diff --git a/gio/tests/modules/Makefile.in b/gio/tests/modules/Makefile.in index 49b6a3c03..88b85bea6 100644 --- a/gio/tests/modules/Makefile.in +++ b/gio/tests/modules/Makefile.in @@ -503,10 +503,10 @@ modules = \ @ENABLE_INSTALLED_TESTS_TRUE@testmodule_LTLIBRARIES = $(modules) # See comment in Makefile.am one level up @ENABLE_INSTALLED_TESTS_FALSE@rpath_hack = -rpath / -libtestmodulea_la_SOURCES = test-module-a.c +libtestmodulea_la_SOURCES = test-module-a.c symbol-visibility.h libtestmodulea_la_LIBADD = $(LDADD) libtestmodulea_la_LDFLAGS = $(LDFLAGS) -no-undefined -avoid-version $(rpath_hack) -libtestmoduleb_la_SOURCES = test-module-b.c +libtestmoduleb_la_SOURCES = test-module-b.c symbol-visibility.h libtestmoduleb_la_LIBADD = $(LDADD) libtestmoduleb_la_LDFLAGS = $(LDFLAGS) -no-undefined -avoid-version $(rpath_hack) all: all-am diff --git a/gio/tests/modules/symbol-visibility.h b/gio/tests/modules/symbol-visibility.h new file mode 100644 index 000000000..f9f8826ce --- /dev/null +++ b/gio/tests/modules/symbol-visibility.h @@ -0,0 +1,16 @@ +#ifndef GLIB_TEST_SYMBOL_VISIBILITY +#define GLIB_TEST_SYMBOL_VISIBILITY + +/* This is the same check that's done in configure to create config.h */ +#ifdef _WIN32 +# ifdef _MSC_VER +# define GLIB_TEST_EXPORT_SYMBOL __declspec(dllexport) extern +# else +# define GLIB_TEST_EXPORT_SYMBOL __attribute__((visibility("default"))) __declspec(dllexport) extern +# endif +/* Matches GCC and Clang */ +#elif defined(__GNUC__) && (__GNUC__ >= 4) +# define GLIB_TEST_EXPORT_SYMBOL __attribute__((visibility("default"))) extern +#endif + +#endif /* GLIB_TEST_SYMBOL_VISIBILITY */ diff --git a/gio/tests/modules/test-module-a.c b/gio/tests/modules/test-module-a.c index ffe7ae31e..0644fdc3a 100644 --- a/gio/tests/modules/test-module-a.c +++ b/gio/tests/modules/test-module-a.c @@ -22,6 +22,8 @@ #include <gio/gio.h> +#include "symbol-visibility.h" + typedef struct _TestA { GObject parent; } TestA; @@ -42,7 +44,7 @@ test_a_init (TestA *self) { } -void +GLIB_TEST_EXPORT_SYMBOL void g_io_module_load (GIOModule *module) { g_io_extension_point_implement ("test-extension-point", @@ -51,7 +53,7 @@ g_io_module_load (GIOModule *module) 30); } -void +GLIB_TEST_EXPORT_SYMBOL void g_io_module_unload (GIOModule *module) { } diff --git a/gio/tests/modules/test-module-b.c b/gio/tests/modules/test-module-b.c index aaf15d696..5ec920887 100644 --- a/gio/tests/modules/test-module-b.c +++ b/gio/tests/modules/test-module-b.c @@ -22,6 +22,8 @@ #include <gio/gio.h> +#include "symbol-visibility.h" + typedef struct _TestB { GObject parent; } TestB; @@ -42,7 +44,7 @@ test_b_init (TestB *self) { } -void +GLIB_TEST_EXPORT_SYMBOL void g_io_module_load (GIOModule *module) { g_io_extension_point_implement ("test-extension-point", @@ -51,7 +53,7 @@ g_io_module_load (GIOModule *module) 40); } -void +GLIB_TEST_EXPORT_SYMBOL void g_io_module_unload (GIOModule *module) { } diff --git a/gio/xdp-dbus.c b/gio/xdp-dbus.c index 0cd7668e3..506c9cc4c 100644 --- a/gio/xdp-dbus.c +++ b/gio/xdp-dbus.c @@ -1,5 +1,5 @@ /* - * Generated by gdbus-codegen 2.53.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.53.4. DO NOT EDIT. * * The license of this code is the same as for the source it was derived from. */ diff --git a/gio/xdp-dbus.h b/gio/xdp-dbus.h index 3d8753f58..af905bd4b 100644 --- a/gio/xdp-dbus.h +++ b/gio/xdp-dbus.h @@ -1,5 +1,5 @@ /* - * Generated by gdbus-codegen 2.53.3. DO NOT EDIT. + * Generated by gdbus-codegen 2.53.4. DO NOT EDIT. * * The license of this code is the same as for the source it was derived from. */ diff --git a/glib/Makefile.am b/glib/Makefile.am index d7558533b..5478edbfa 100644 --- a/glib/Makefile.am +++ b/glib/Makefile.am @@ -55,7 +55,6 @@ MIRRORING_TAB_SOURCE = \ # The compilation of GRegex can be disabled, but the source files must # be distributed. EXTRA_DIST += \ - makefile.msc.in \ glib.rc.in \ gen-unicode-tables.pl \ glibconfig.h.win32.in \ @@ -71,7 +70,6 @@ CLEANFILES += libglib-gdb.py # These may be in the builddir too BUILT_EXTRA_DIST += \ - makefile.msc \ glibconfig.h.win32 \ glib.rc diff --git a/glib/Makefile.in b/glib/Makefile.in index 11ddb426f..6322033e4 100644 --- a/glib/Makefile.in +++ b/glib/Makefile.in @@ -195,7 +195,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(dist_gdb_DATA) \ $(glibsubinclude_HEADERS) $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = glibconfig.h.win32 makefile.msc glib.rc +CONFIG_CLEAN_FILES = glibconfig.h.win32 glib.rc CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -624,9 +624,8 @@ am__set_b = \ b='$*';; \ esac am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/glib.rc.in \ - $(srcdir)/glibconfig.h.win32.in $(srcdir)/makefile.msc.in \ - $(top_srcdir)/depcomp $(top_srcdir)/glib.mk \ - $(top_srcdir)/test-driver \ + $(srcdir)/glibconfig.h.win32.in $(top_srcdir)/depcomp \ + $(top_srcdir)/glib.mk $(top_srcdir)/test-driver \ $(top_srcdir)/win32/Makefile.msvcproj DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ @@ -910,7 +909,7 @@ NULL = BUILT_SOURCES = glibconfig-stamp $(am__append_19) # These may be in the builddir too -BUILT_EXTRA_DIST = makefile.msc glibconfig.h.win32 glib.rc +BUILT_EXTRA_DIST = glibconfig.h.win32 glib.rc CLEANFILES = *.log *.trs $(am__append_14) libglib-gdb.py \ glib-public-headers.txt $(am__append_20) $(am__append_22) @@ -927,10 +926,9 @@ MAINTAINERCLEANFILES = # The compilation of GRegex can be disabled, but the source files must # be distributed. -EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ - makefile.msc.in glib.rc.in gen-unicode-tables.pl \ - glibconfig.h.win32.in gregex.c gregex.h win_iconv.c \ - libglib-gdb.py.in docs.c gconstructor.h \ +EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) glib.rc.in \ + gen-unicode-tables.pl glibconfig.h.win32.in gregex.c gregex.h \ + win_iconv.c libglib-gdb.py.in docs.c gconstructor.h \ $(MIRRORING_TAB_SOURCE) glib.stp.in $(am__append_26) # We support a fairly large range of possible variables. It is expected that all types of files in a test suite @@ -1264,8 +1262,6 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): glibconfig.h.win32: $(top_builddir)/config.status $(srcdir)/glibconfig.h.win32.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -makefile.msc: $(top_builddir)/config.status $(srcdir)/makefile.msc.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ glib.rc: $(top_builddir)/config.status $(srcdir)/glib.rc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ diff --git a/glib/gdatetime.c b/glib/gdatetime.c index 7695adf09..745a32a9d 100644 --- a/glib/gdatetime.c +++ b/glib/gdatetime.c @@ -128,7 +128,7 @@ struct _GDateTime #define INSTANT_TO_UNIX(instant) \ ((instant)/USEC_PER_SECOND - UNIX_EPOCH_START * SEC_PER_DAY) #define UNIX_TO_INSTANT(unix) \ - (((unix) + UNIX_EPOCH_START * SEC_PER_DAY) * USEC_PER_SECOND) + (((gint64) (unix) + UNIX_EPOCH_START * SEC_PER_DAY) * USEC_PER_SECOND) #define UNIX_TO_INSTANT_IS_VALID(unix) \ ((gint64) (unix) <= INSTANT_TO_UNIX (G_MAXINT64)) diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c index 9831fbe6c..4ac7c087a 100644 --- a/glib/gkeyfile.c +++ b/glib/gkeyfile.c @@ -1489,7 +1489,7 @@ g_key_file_flush_parse_buffer (GKeyFile *key_file, * Note that this function never reports an error, * so it is safe to pass %NULL as @error. * - * Returns: a newly allocated string holding + * Returns: (array length=length): a newly allocated string holding * the contents of the #GKeyFile * * Since: 2.6 @@ -1559,7 +1559,7 @@ g_key_file_to_data (GKeyFile *key_file, * be found, %NULL is returned and @error is set to * #G_KEY_FILE_ERROR_GROUP_NOT_FOUND. * - * Returns: (array zero-terminated=1) (transfer full): a newly-allocated %NULL-terminated array of strings. + * Returns: (array zero-terminated=1 length=length) (transfer full): a newly-allocated %NULL-terminated array of strings. * Use g_strfreev() to free it. * * Since: 2.6 @@ -1654,7 +1654,7 @@ g_key_file_get_start_group (GKeyFile *key_file) * The array of returned groups will be %NULL-terminated, so * @length may optionally be %NULL. * - * Returns: (array zero-terminated=1) (transfer full): a newly-allocated %NULL-terminated array of strings. + * Returns: (array zero-terminated=1 length=length) (transfer full): a newly-allocated %NULL-terminated array of strings. * Use g_strfreev() to free it. * Since: 2.6 **/ diff --git a/glib/glib.rc b/glib/glib.rc index 0d4b18a51..ed48b8d72 100644 --- a/glib/glib.rc +++ b/glib/glib.rc @@ -1,8 +1,8 @@ #include <winver.h> VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,53,3,0 - PRODUCTVERSION 2,53,3,0 + FILEVERSION 2,53,4,0 + PRODUCTVERSION 2,53,4,0 FILEFLAGSMASK 0 FILEFLAGS 0 FILEOS VOS__WINDOWS32 @@ -15,12 +15,12 @@ VS_VERSION_INFO VERSIONINFO BEGIN VALUE "CompanyName", "The GLib developer community" VALUE "FileDescription", "GLib" - VALUE "FileVersion", "2.53.3.0" + VALUE "FileVersion", "2.53.4.0" VALUE "InternalName", "libglib-2.0-0" VALUE "LegalCopyright", "Copyright 1995-2011 Peter Mattis, Spencer Kimball, Josh MacDonald and others." VALUE "OriginalFilename", "libglib-2.0-0.dll" VALUE "ProductName", "GLib" - VALUE "ProductVersion", "2.53.3" + VALUE "ProductVersion", "2.53.4" END END BLOCK "VarFileInfo" diff --git a/glib/glibconfig.h.win32 b/glib/glibconfig.h.win32 index 578db427f..c335e2b43 100644 --- a/glib/glibconfig.h.win32 +++ b/glib/glibconfig.h.win32 @@ -162,7 +162,7 @@ typedef unsigned __int64 guintptr; #define GLIB_MAJOR_VERSION 2 #define GLIB_MINOR_VERSION 53 -#define GLIB_MICRO_VERSION 3 +#define GLIB_MICRO_VERSION 4 #define G_OS_WIN32 #define G_PLATFORM_WIN32 diff --git a/glib/gmain.c b/glib/gmain.c index 41dd0f6cc..65665711d 100644 --- a/glib/gmain.c +++ b/glib/gmain.c @@ -2714,7 +2714,7 @@ g_get_monotonic_time (void) if (QueryPerformanceCounter (&ticks)) return (gint64)(ticks.QuadPart * g_monotonic_usec_per_tick); - g_warning ("QueryPerformanceCounter Failed (%d)", GetLastError ()); + g_warning ("QueryPerformanceCounter Failed (%lu)", GetLastError ()); g_monotonic_usec_per_tick = 0; } diff --git a/glib/gnulib/Makefile.am b/glib/gnulib/Makefile.am index 3182af57d..4dc1becf4 100644 --- a/glib/gnulib/Makefile.am +++ b/glib/gnulib/Makefile.am @@ -24,6 +24,3 @@ libgnulib_la_SOURCES = \ verify.h \ xsize.h \ g-gnulib.h - - -EXTRA_DIST += makefile.msc diff --git a/glib/gnulib/Makefile.in b/glib/gnulib/Makefile.in index d3d21b8d8..a38cfe407 100644 --- a/glib/gnulib/Makefile.in +++ b/glib/gnulib/Makefile.in @@ -695,8 +695,7 @@ BUILT_EXTRA_DIST = CLEANFILES = *.log *.trs $(am__append_14) DISTCLEANFILES = MAINTAINERCLEANFILES = -EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ - makefile.msc +EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. diff --git a/glib/gnulib/makefile.msc b/glib/gnulib/makefile.msc deleted file mode 100644 index da2b4cfe1..000000000 --- a/glib/gnulib/makefile.msc +++ /dev/null @@ -1,18 +0,0 @@ -TOP = ..\..\.. -!INCLUDE ..\..\build\win32\make.msc - -INCLUDES = -I ..\.. -I .. -DEFINES = -DHAVE_CONFIG_H -DHAVE_LONG_LONG_FORMAT - -OBJECTS = \ - asnprintf.obj \ - printf.obj \ - printf-args.obj \ - printf-parse.obj \ - vasnprintf.obj - -all : gnulib.lib - -gnulib.lib : $(OBJECTS) - lib -out:gnulib.lib $(OBJECTS) - diff --git a/glib/gscripttable.h b/glib/gscripttable.h index 78a4a28a1..c30d3175c 100644 --- a/glib/gscripttable.h +++ b/glib/gscripttable.h @@ -529,7 +529,7 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, - G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_UNKNOWN, + G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, @@ -722,11 +722,11 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, + G_UNICODE_SCRIPT_MANDAIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_SYRIAC, + G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, + G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, + G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, + G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, @@ -860,7 +860,7 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, + G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_BENGALI, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_GURMUKHI, G_UNICODE_SCRIPT_GURMUKHI, G_UNICODE_SCRIPT_GURMUKHI, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_GURMUKHI, G_UNICODE_SCRIPT_GURMUKHI, G_UNICODE_SCRIPT_GURMUKHI, @@ -944,9 +944,9 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, + G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_GUJARATI, + G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_GUJARATI, + G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_GUJARATI, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_ORIYA, G_UNICODE_SCRIPT_ORIYA, @@ -1117,7 +1117,7 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_MALAYALAM, + G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, @@ -1137,7 +1137,7 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_MALAYALAM, + G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_MALAYALAM, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_MALAYALAM, @@ -2479,7 +2479,7 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_INHERITED, - G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_UNKNOWN, + G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_LATIN, @@ -2564,8 +2564,8 @@ static const guchar g_script_easy_table[8192] = { G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, - G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_UNKNOWN, - G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, + G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, + G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_LATIN, G_UNICODE_SCRIPT_LATIN, G_UNICODE_SCRIPT_LATIN, @@ -2755,7 +2755,7 @@ static const struct { { 0x207f, 1, G_UNICODE_SCRIPT_LATIN }, { 0x2080, 15, G_UNICODE_SCRIPT_COMMON }, { 0x2090, 13, G_UNICODE_SCRIPT_LATIN }, - { 0x20a0, 31, G_UNICODE_SCRIPT_COMMON }, + { 0x20a0, 32, G_UNICODE_SCRIPT_COMMON }, { 0x20d0, 33, G_UNICODE_SCRIPT_INHERITED }, { 0x2100, 38, G_UNICODE_SCRIPT_COMMON }, { 0x2126, 1, G_UNICODE_SCRIPT_GREEK }, @@ -2768,8 +2768,7 @@ static const struct { { 0x214f, 17, G_UNICODE_SCRIPT_COMMON }, { 0x2160, 41, G_UNICODE_SCRIPT_LATIN }, { 0x2189, 3, G_UNICODE_SCRIPT_COMMON }, - { 0x2190, 623, G_UNICODE_SCRIPT_COMMON }, - { 0x2400, 39, G_UNICODE_SCRIPT_COMMON }, + { 0x2190, 663, G_UNICODE_SCRIPT_COMMON }, { 0x2440, 11, G_UNICODE_SCRIPT_COMMON }, { 0x2460, 928, G_UNICODE_SCRIPT_COMMON }, { 0x2800, 256, G_UNICODE_SCRIPT_BRAILLE }, @@ -2777,7 +2776,7 @@ static const struct { { 0x2b76, 32, G_UNICODE_SCRIPT_COMMON }, { 0x2b98, 34, G_UNICODE_SCRIPT_COMMON }, { 0x2bbd, 12, G_UNICODE_SCRIPT_COMMON }, - { 0x2bca, 8, G_UNICODE_SCRIPT_COMMON }, + { 0x2bca, 9, G_UNICODE_SCRIPT_COMMON }, { 0x2bec, 4, G_UNICODE_SCRIPT_COMMON }, { 0x2c00, 47, G_UNICODE_SCRIPT_GLAGOLITIC }, { 0x2c30, 47, G_UNICODE_SCRIPT_GLAGOLITIC }, @@ -2800,7 +2799,7 @@ static const struct { { 0x2dd0, 7, G_UNICODE_SCRIPT_ETHIOPIC }, { 0x2dd8, 7, G_UNICODE_SCRIPT_ETHIOPIC }, { 0x2de0, 32, G_UNICODE_SCRIPT_CYRILLIC }, - { 0x2e00, 69, G_UNICODE_SCRIPT_COMMON }, + { 0x2e00, 74, G_UNICODE_SCRIPT_COMMON }, { 0x2e80, 26, G_UNICODE_SCRIPT_HAN }, { 0x2e9b, 89, G_UNICODE_SCRIPT_HAN }, { 0x2f00, 214, G_UNICODE_SCRIPT_HAN }, @@ -2824,7 +2823,7 @@ static const struct { { 0x30a1, 90, G_UNICODE_SCRIPT_KATAKANA }, { 0x30fb, 2, G_UNICODE_SCRIPT_COMMON }, { 0x30fd, 3, G_UNICODE_SCRIPT_KATAKANA }, - { 0x3105, 41, G_UNICODE_SCRIPT_BOPOMOFO }, + { 0x3105, 42, G_UNICODE_SCRIPT_BOPOMOFO }, { 0x3131, 94, G_UNICODE_SCRIPT_HANGUL }, { 0x3190, 16, G_UNICODE_SCRIPT_COMMON }, { 0x31a0, 27, G_UNICODE_SCRIPT_BOPOMOFO }, @@ -2839,7 +2838,7 @@ static const struct { { 0x3358, 168, G_UNICODE_SCRIPT_COMMON }, { 0x3400, 6582, G_UNICODE_SCRIPT_HAN }, { 0x4dc0, 64, G_UNICODE_SCRIPT_COMMON }, - { 0x4e00, 20950, G_UNICODE_SCRIPT_HAN }, + { 0x4e00, 20971, G_UNICODE_SCRIPT_HAN }, { 0xa000, 1165, G_UNICODE_SCRIPT_YI }, { 0xa490, 55, G_UNICODE_SCRIPT_YI }, { 0xa4d0, 48, G_UNICODE_SCRIPT_LISU }, @@ -2955,6 +2954,7 @@ static const struct { { 0x102e0, 1, G_UNICODE_SCRIPT_INHERITED }, { 0x102e1, 27, G_UNICODE_SCRIPT_COMMON }, { 0x10300, 36, G_UNICODE_SCRIPT_OLD_ITALIC }, + { 0x1032d, 3, G_UNICODE_SCRIPT_OLD_ITALIC }, { 0x10330, 27, G_UNICODE_SCRIPT_GOTHIC }, { 0x10350, 43, G_UNICODE_SCRIPT_OLD_PERMIC }, { 0x10380, 30, G_UNICODE_SCRIPT_UGARITIC }, @@ -3074,6 +3074,10 @@ static const struct { { 0x11730, 16, G_UNICODE_SCRIPT_AHOM }, { 0x118a0, 83, G_UNICODE_SCRIPT_WARANG_CITI }, { 0x118ff, 1, G_UNICODE_SCRIPT_WARANG_CITI }, + { 0x11a00, 72, G_UNICODE_SCRIPT_ZANABAZAR_SQUARE }, + { 0x11a50, 52, G_UNICODE_SCRIPT_SOYOMBO }, + { 0x11a86, 23, G_UNICODE_SCRIPT_SOYOMBO }, + { 0x11a9e, 5, G_UNICODE_SCRIPT_SOYOMBO }, { 0x11ac0, 57, G_UNICODE_SCRIPT_PAU_CIN_HAU }, { 0x11c00, 9, G_UNICODE_SCRIPT_BHAIKSUKI }, { 0x11c0a, 45, G_UNICODE_SCRIPT_BHAIKSUKI }, @@ -3082,6 +3086,13 @@ static const struct { { 0x11c70, 32, G_UNICODE_SCRIPT_MARCHEN }, { 0x11c92, 22, G_UNICODE_SCRIPT_MARCHEN }, { 0x11ca9, 14, G_UNICODE_SCRIPT_MARCHEN }, + { 0x11d00, 7, G_UNICODE_SCRIPT_MASARAM_GONDI }, + { 0x11d08, 2, G_UNICODE_SCRIPT_MASARAM_GONDI }, + { 0x11d0b, 44, G_UNICODE_SCRIPT_MASARAM_GONDI }, + { 0x11d3a, 1, G_UNICODE_SCRIPT_MASARAM_GONDI }, + { 0x11d3c, 2, G_UNICODE_SCRIPT_MASARAM_GONDI }, + { 0x11d3f, 9, G_UNICODE_SCRIPT_MASARAM_GONDI }, + { 0x11d50, 10, G_UNICODE_SCRIPT_MASARAM_GONDI }, { 0x12000, 922, G_UNICODE_SCRIPT_CUNEIFORM }, { 0x12400, 111, G_UNICODE_SCRIPT_CUNEIFORM }, { 0x12470, 5, G_UNICODE_SCRIPT_CUNEIFORM }, @@ -3103,10 +3114,12 @@ static const struct { { 0x16f50, 47, G_UNICODE_SCRIPT_MIAO }, { 0x16f8f, 17, G_UNICODE_SCRIPT_MIAO }, { 0x16fe0, 1, G_UNICODE_SCRIPT_TANGUT }, + { 0x16fe1, 1, G_UNICODE_SCRIPT_NUSHU }, { 0x17000, 6125, G_UNICODE_SCRIPT_TANGUT }, { 0x18800, 755, G_UNICODE_SCRIPT_TANGUT }, { 0x1b000, 1, G_UNICODE_SCRIPT_KATAKANA }, - { 0x1b001, 1, G_UNICODE_SCRIPT_HIRAGANA }, + { 0x1b001, 286, G_UNICODE_SCRIPT_HIRAGANA }, + { 0x1b170, 396, G_UNICODE_SCRIPT_NUSHU }, { 0x1bc00, 107, G_UNICODE_SCRIPT_DUPLOYAN }, { 0x1bc70, 13, G_UNICODE_SCRIPT_DUPLOYAN }, { 0x1bc80, 9, G_UNICODE_SCRIPT_DUPLOYAN }, @@ -3211,9 +3224,10 @@ static const struct { { 0x1f210, 44, G_UNICODE_SCRIPT_COMMON }, { 0x1f240, 9, G_UNICODE_SCRIPT_COMMON }, { 0x1f250, 2, G_UNICODE_SCRIPT_COMMON }, - { 0x1f300, 979, G_UNICODE_SCRIPT_COMMON }, + { 0x1f260, 6, G_UNICODE_SCRIPT_COMMON }, + { 0x1f300, 981, G_UNICODE_SCRIPT_COMMON }, { 0x1f6e0, 13, G_UNICODE_SCRIPT_COMMON }, - { 0x1f6f0, 7, G_UNICODE_SCRIPT_COMMON }, + { 0x1f6f0, 9, G_UNICODE_SCRIPT_COMMON }, { 0x1f700, 116, G_UNICODE_SCRIPT_COMMON }, { 0x1f780, 85, G_UNICODE_SCRIPT_COMMON }, { 0x1f800, 12, G_UNICODE_SCRIPT_COMMON }, @@ -3221,18 +3235,18 @@ static const struct { { 0x1f850, 10, G_UNICODE_SCRIPT_COMMON }, { 0x1f860, 40, G_UNICODE_SCRIPT_COMMON }, { 0x1f890, 30, G_UNICODE_SCRIPT_COMMON }, - { 0x1f910, 15, G_UNICODE_SCRIPT_COMMON }, - { 0x1f920, 8, G_UNICODE_SCRIPT_COMMON }, - { 0x1f930, 1, G_UNICODE_SCRIPT_COMMON }, - { 0x1f933, 12, G_UNICODE_SCRIPT_COMMON }, - { 0x1f940, 12, G_UNICODE_SCRIPT_COMMON }, - { 0x1f950, 15, G_UNICODE_SCRIPT_COMMON }, - { 0x1f980, 18, G_UNICODE_SCRIPT_COMMON }, + { 0x1f900, 12, G_UNICODE_SCRIPT_COMMON }, + { 0x1f910, 47, G_UNICODE_SCRIPT_COMMON }, + { 0x1f940, 13, G_UNICODE_SCRIPT_COMMON }, + { 0x1f950, 28, G_UNICODE_SCRIPT_COMMON }, + { 0x1f980, 24, G_UNICODE_SCRIPT_COMMON }, { 0x1f9c0, 1, G_UNICODE_SCRIPT_COMMON }, + { 0x1f9d0, 23, G_UNICODE_SCRIPT_COMMON }, { 0x20000, 42711, G_UNICODE_SCRIPT_HAN }, { 0x2a700, 4149, G_UNICODE_SCRIPT_HAN }, { 0x2b740, 222, G_UNICODE_SCRIPT_HAN }, { 0x2b820, 5762, G_UNICODE_SCRIPT_HAN }, + { 0x2ceb0, 7473, G_UNICODE_SCRIPT_HAN }, { 0x2f800, 542, G_UNICODE_SCRIPT_HAN }, { 0xe0001, 1, G_UNICODE_SCRIPT_COMMON }, { 0xe0020, 96, G_UNICODE_SCRIPT_COMMON }, diff --git a/glib/gspawn-win32.c b/glib/gspawn-win32.c index 2dfb4e889..8ed10d685 100644 --- a/glib/gspawn-win32.c +++ b/glib/gspawn-win32.c @@ -1238,8 +1238,6 @@ g_spawn_check_exit_status (gint exit_status, return ret; } -#endif /* !GSPAWN_HELPER */ - #ifdef G_OS_WIN32 /* Binary compatibility versions. Not for newly compiled code. */ @@ -1372,4 +1370,6 @@ g_spawn_command_line_async_utf8 (const gchar *command_line, return g_spawn_command_line_async (command_line, error); } -#endif +#endif /* G_OS_WIN32 */ + +#endif /* !GSPAWN_HELPER */ diff --git a/glib/gstrfuncs.c b/glib/gstrfuncs.c index fcf4927a4..cf89bf5d0 100644 --- a/glib/gstrfuncs.c +++ b/glib/gstrfuncs.c @@ -1277,10 +1277,10 @@ g_strerror (gint errnum) msg = buf; #elif defined(HAVE_STRERROR_R) /* Match the condition in strerror_r(3) for glibc */ -# if defined(__GLIBC__) && !((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && ! _GNU_SOURCE) +# if defined(STRERROR_R_CHAR_P) msg = strerror_r (errnum, buf, sizeof (buf)); # else - strerror_r (errnum, buf, sizeof (buf)); + (void) strerror_r (errnum, buf, sizeof (buf)); msg = buf; # endif /* HAVE_STRERROR_R */ #else diff --git a/glib/gunibreak.h b/glib/gunibreak.h index 3c5181d32..659e8cc24 100644 --- a/glib/gunibreak.h +++ b/glib/gunibreak.h @@ -7,7 +7,7 @@ #include <glib/gtypes.h> #include <glib/gunicode.h> -#define G_UNICODE_DATA_VERSION "9.0.0" +#define G_UNICODE_DATA_VERSION "10.0.0" #define G_UNICODE_LAST_CHAR 0x10FFFF @@ -976,12 +976,12 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -1183,8 +1183,9 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_POSTFIX, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN }, { /* page 10, index 9 */ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, @@ -1312,9 +1313,9 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK }, { /* page 11, index 10 */ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, @@ -1577,7 +1578,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, { /* page 13, index 12 */ - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -1606,8 +1607,8 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, @@ -3515,7 +3516,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -3645,8 +3646,8 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK @@ -4288,7 +4289,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, { /* page 36, index 33 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -5046,7 +5047,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -5361,8 +5362,8 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_AFTER, - G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, + G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -5390,7 +5391,6 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -5403,7 +5403,8 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -5448,13 +5449,12 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, { /* page 47, index 42 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -5761,7 +5761,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -13830,8 +13830,8 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -16266,11 +16266,85 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC }, { /* page 282, index 125 */ + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_BEFORE, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, + G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_BEFORE, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_BEFORE, G_UNICODE_BREAK_BEFORE, + G_UNICODE_BREAK_BEFORE, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -16285,83 +16359,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -16390,10 +16388,10 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, - G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN }, { /* page 284, index 126 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -16524,7 +16522,137 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 291, index 127 */ + { /* page 285, index 127 */ + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, + G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, + G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, + G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, + G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN + }, + { /* page 291, index 128 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -16654,7 +16782,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 292, index 128 */ + { /* page 292, index 129 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -16783,7 +16911,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 293, index 129 */ + { /* page 293, index 130 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -16913,7 +17041,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 306, index 130 */ + { /* page 306, index 131 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17043,7 +17171,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 307, index 131 */ + { /* page 307, index 132 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17173,7 +17301,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 308, index 132 */ + { /* page 308, index 133 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17303,7 +17431,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 325, index 133 */ + { /* page 325, index 134 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17433,7 +17561,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 326, index 134 */ + { /* page 326, index 135 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17563,7 +17691,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 362, index 135 */ + { /* page 362, index 136 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17692,7 +17820,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 363, index 136 */ + { /* page 363, index 137 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17822,7 +17950,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 367, index 137 */ + { /* page 367, index 138 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -17935,7 +18063,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -17952,7 +18080,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 391, index 138 */ + { /* page 391, index 139 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -18082,7 +18210,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 394, index 139 */ + { /* page 394, index 140 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -18212,8 +18340,23 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 432, index 140 */ + { /* page 433, index 141 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -18254,95 +18397,210 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, - G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC + }, + { /* page 434, index 142 */ + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 444, index 141 */ + { /* page 444, index 143 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -18472,7 +18730,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 464, index 142 */ + { /* page 464, index 144 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -18602,7 +18860,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 465, index 143 */ + { /* page 465, index 145 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -18732,7 +18990,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 466, index 144 */ + { /* page 466, index 146 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -18862,7 +19120,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 467, index 145 */ + { /* page 467, index 147 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -18992,7 +19250,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 468, index 146 */ + { /* page 468, index 148 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -19122,7 +19380,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 469, index 147 */ + { /* page 469, index 149 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -19252,7 +19510,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 470, index 148 */ + { /* page 470, index 150 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -19382,7 +19640,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC }, - { /* page 471, index 149 */ + { /* page 471, index 151 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -19512,7 +19770,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC }, - { /* page 474, index 150 */ + { /* page 474, index 152 */ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, @@ -19641,7 +19899,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 480, index 151 */ + { /* page 480, index 153 */ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, @@ -19771,7 +20029,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 488, index 152 */ + { /* page 488, index 154 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -19901,7 +20159,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 489, index 153 */ + { /* page 489, index 155 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -20031,7 +20289,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 494, index 154 */ + { /* page 494, index 156 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, @@ -20161,7 +20419,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 497, index 155 */ + { /* page 497, index 157 */ G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, @@ -20291,7 +20549,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_REGIONAL_INDICATOR, G_UNICODE_BREAK_REGIONAL_INDICATOR, G_UNICODE_BREAK_REGIONAL_INDICATOR, G_UNICODE_BREAK_REGIONAL_INDICATOR }, - { /* page 499, index 156 */ + { /* page 499, index 158 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -20389,12 +20647,12 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -20421,7 +20679,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_EMOJI_MODIFIER, G_UNICODE_BREAK_EMOJI_MODIFIER, G_UNICODE_BREAK_EMOJI_MODIFIER, G_UNICODE_BREAK_EMOJI_MODIFIER }, - { /* page 500, index 157 */ + { /* page 500, index 159 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -20551,7 +20809,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC }, - { /* page 501, index 158 */ + { /* page 501, index 160 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -20610,7 +20868,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -20681,7 +20939,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC }, - { /* page 502, index 159 */ + { /* page 502, index 161 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -20784,7 +21042,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -20811,7 +21069,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC }, - { /* page 503, index 160 */ + { /* page 503, index 162 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -20941,7 +21199,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC }, - { /* page 504, index 161 */ + { /* page 504, index 163 */ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, @@ -21071,13 +21329,13 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC }, - { /* page 505, index 162 */ - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + { /* page 505, index 164 */ + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21086,8 +21344,8 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, - G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21096,21 +21354,14 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, - G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, - G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21183,6 +21434,13 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, + G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21201,7 +21459,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC }, - { /* page 511, index 163 */ + { /* page 511, index 165 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21331,7 +21589,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 767, index 164 */ + { /* page 767, index 166 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21461,7 +21719,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 1023, index 165 */ + { /* page 1023, index 167 */ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, @@ -21591,7 +21849,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 3584, index 166 */ + { /* page 3584, index 168 */ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, @@ -21721,7 +21979,7 @@ static const gint8 break_property_data[][256] = { G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN }, - { /* page 3585, index 167 */ + { /* page 3585, index 169 */ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, @@ -22140,15 +22398,15 @@ static const gint16 break_property_table_part1[763] = { 125 /* page 282 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, 126 /* page 284 */, - G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, + 127 /* page 285 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, - 127 /* page 291 */, - 128 /* page 292 */, - 129 /* page 293 */, + 128 /* page 291 */, + 129 /* page 292 */, + 130 /* page 293 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22161,9 +22419,9 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, - 130 /* page 306 */, - 131 /* page 307 */, - 132 /* page 308 */, + 131 /* page 306 */, + 132 /* page 307 */, + 133 /* page 308 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22180,8 +22438,8 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, - 133 /* page 325 */, - 134 /* page 326 */, + 134 /* page 325 */, + 135 /* page 326 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22217,12 +22475,12 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, - 135 /* page 362 */, - 136 /* page 363 */, + 136 /* page 362 */, + 137 /* page 363 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 137 /* page 367 */, + 138 /* page 367 */, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, @@ -22246,11 +22504,10 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, - 138 /* page 391 */, + 139 /* page 391 */, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, - 139 /* page 394 */, - G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, + 140 /* page 394 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22287,9 +22544,10 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 140 /* page 432 */, - G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, + 141 /* page 433 */, + 142 /* page 434 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22299,7 +22557,7 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 141 /* page 444 */, + 143 /* page 444 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22319,23 +22577,23 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 142 /* page 464 */, - 143 /* page 465 */, - 144 /* page 466 */, - 145 /* page 467 */, - 146 /* page 468 */, - 147 /* page 469 */, - 148 /* page 470 */, - 149 /* page 471 */, + 144 /* page 464 */, + 145 /* page 465 */, + 146 /* page 466 */, + 147 /* page 467 */, + 148 /* page 468 */, + 149 /* page 469 */, + 150 /* page 470 */, + 151 /* page 471 */, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX, - 150 /* page 474 */, + 152 /* page 474 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 151 /* page 480 */, + 153 /* page 480 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, @@ -22343,30 +22601,30 @@ static const gint16 break_property_table_part1[763] = { G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 152 /* page 488 */, - 153 /* page 489 */, + 154 /* page 488 */, + 155 /* page 489 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, - 154 /* page 494 */, + 156 /* page 494 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, - 155 /* page 497 */, + 157 /* page 497 */, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, - 156 /* page 499 */, - 157 /* page 500 */, - 158 /* page 501 */, - 159 /* page 502 */, - 160 /* page 503 */, - 161 /* page 504 */, - 162 /* page 505 */, + 158 /* page 499 */, + 159 /* page 500 */, + 160 /* page 501 */, + 161 /* page 502 */, + 162 /* page 503 */, + 163 /* page 504 */, + 164 /* page 505 */, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, - 163 /* page 511 */, + 165 /* page 511 */, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX, @@ -22622,8 +22880,8 @@ static const gint16 break_property_table_part1[763] = { /* U+E0000 through U+10FFFF */ static const gint16 break_property_table_part2[768] = { - 166 /* page 3584 */, - 167 /* page 3585 */, + 168 /* page 3584 */, + 169 /* page 3585 */, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX, diff --git a/glib/gunichartables.h b/glib/gunichartables.h index 52d188cfb..c3332af60 100644 --- a/glib/gunichartables.h +++ b/glib/gunichartables.h @@ -4,7 +4,7 @@ #ifndef CHARTABLES_H #define CHARTABLES_H -#define G_UNICODE_DATA_VERSION "9.0.0" +#define G_UNICODE_DATA_VERSION "10.0.0" #define G_UNICODE_LAST_CHAR 0x10ffff @@ -1016,10 +1016,10 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_PUNCTUATION, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -1173,8 +1173,9 @@ static const char type_data[][256] = { G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED + G_UNICODE_OTHER_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, { /* page 10, index 10 */ G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, @@ -1267,9 +1268,10 @@ static const char type_data[][256] = { G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED + G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK }, { /* page 11, index 11 */ G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK, @@ -1460,13 +1462,14 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, { /* page 13, index 13 */ - G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK, - G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, - G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -1479,14 +1482,13 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, - G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_SPACING_MARK, - G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_OTHER_LETTER, G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, - G_UNICODE_UNASSIGNED, G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, - G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_SPACING_MARK, - G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED, + G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, @@ -2818,10 +2820,10 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER, - G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, - G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_LETTER, G_UNICODE_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, { /* page 29, index 27 */ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, @@ -2947,8 +2949,9 @@ static const char type_data[][256] = { G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK }, @@ -3294,7 +3297,7 @@ static const char type_data[][256] = { G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -3513,7 +3516,7 @@ static const char type_data[][256] = { G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL }, { /* page 36, index 33 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -4036,7 +4039,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -4317,8 +4320,9 @@ static const char type_data[][256] = { G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_DASH_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OPEN_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, - G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -4585,7 +4589,7 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, - G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -4905,6 +4909,13 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -4912,13 +4923,6 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, { /* page 160, index 48 */ @@ -6594,7 +6598,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -8376,8 +8380,72 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER }, { /* page 282, index 84 */ + G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_OTHER_LETTER, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -8387,60 +8455,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -8459,9 +8474,9 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, { /* page 284, index 85 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -8562,7 +8577,98 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 291, index 86 */ + { /* page 285, index 86 */ + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, + G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, + G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, + G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, + G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, + G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED + }, + { /* page 291, index 87 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -8650,7 +8756,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 292, index 87 */ + { /* page 292, index 88 */ G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, @@ -8757,7 +8863,7 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER }, - { /* page 293, index 88 */ + { /* page 293, index 89 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -8845,7 +8951,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 308, index 89 */ + { /* page 308, index 90 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -8933,7 +9039,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 326, index 90 */ + { /* page 326, index 91 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9021,7 +9127,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 362, index 91 */ + { /* page 362, index 92 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9111,7 +9217,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 363, index 92 */ + { /* page 363, index 93 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9203,7 +9309,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 367, index 93 */ + { /* page 367, index 94 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9281,7 +9387,8 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER, + G_UNICODE_MODIFIER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -9291,9 +9398,9 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED + G_UNICODE_UNASSIGNED }, - { /* page 391, index 94 */ + { /* page 391, index 95 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9381,7 +9488,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 394, index 95 */ + { /* page 394, index 96 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9469,65 +9576,18 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 432, index 96 */ - G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + { /* page 433, index 97 */ + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -9554,10 +9614,145 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER + }, + { /* page 434, index 98 */ + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 444, index 97 */ + { /* page 444, index 99 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -9645,7 +9840,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 464, index 98 */ + { /* page 464, index 100 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -9733,7 +9928,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 465, index 99 */ + { /* page 465, index 101 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -9825,7 +10020,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 466, index 100 */ + { /* page 466, index 102 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -9913,7 +10108,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 467, index 101 */ + { /* page 467, index 103 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -10001,7 +10196,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 468, index 102 */ + { /* page 468, index 104 */ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, @@ -10130,7 +10325,7 @@ static const char type_data[][256] = { G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER }, - { /* page 469, index 103 */ + { /* page 469, index 105 */ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, @@ -10259,7 +10454,7 @@ static const char type_data[][256] = { G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER }, - { /* page 470, index 104 */ + { /* page 470, index 106 */ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, @@ -10389,7 +10584,7 @@ static const char type_data[][256] = { G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER }, - { /* page 471, index 105 */ + { /* page 471, index 107 */ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, @@ -10519,7 +10714,7 @@ static const char type_data[][256] = { G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER }, - { /* page 474, index 106 */ + { /* page 474, index 108 */ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, @@ -10630,7 +10825,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 480, index 107 */ + { /* page 480, index 109 */ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, @@ -10724,7 +10919,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 488, index 108 */ + { /* page 488, index 110 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -10813,7 +11008,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 489, index 109 */ + { /* page 489, index 111 */ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, @@ -10915,7 +11110,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 494, index 110 */ + { /* page 494, index 112 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -11003,7 +11198,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 496, index 111 */ + { /* page 496, index 113 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -11091,7 +11286,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 497, index 112 */ + { /* page 497, index 114 */ G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, @@ -11179,7 +11374,7 @@ static const char type_data[][256] = { G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL }, - { /* page 498, index 113 */ + { /* page 498, index 115 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -11212,8 +11407,8 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -11267,7 +11462,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 499, index 114 */ + { /* page 499, index 116 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -11356,7 +11551,8 @@ static const char type_data[][256] = { G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL }, - { /* page 502, index 115 */ + { /* page 502, index 117 */ + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -11427,7 +11623,6 @@ static const char type_data[][256] = { G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -11439,12 +11634,12 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 503, index 116 */ + { /* page 503, index 118 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -11532,7 +11727,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 504, index 117 */ + { /* page 504, index 119 */ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -11620,24 +11815,24 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 505, index 118 */ - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + { /* page 505, index 120 */ + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, @@ -11646,17 +11841,17 @@ static const char type_data[][256] = { G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, - G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -11669,6 +11864,8 @@ static const char type_data[][256] = { G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -11683,21 +11880,19 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -11708,7 +11903,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 678, index 119 */ + { /* page 678, index 121 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -11796,7 +11991,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 695, index 120 */ + { /* page 695, index 122 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -11884,7 +12079,7 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER }, - { /* page 696, index 121 */ + { /* page 696, index 123 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -11972,7 +12167,7 @@ static const char type_data[][256] = { G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER }, - { /* page 718, index 122 */ + { /* page 718, index 124 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -12031,23 +12226,111 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, - G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, + G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER + }, + { /* page 747, index 125 */ + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -12060,7 +12343,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 762, index 123 */ + { /* page 762, index 126 */ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, @@ -12148,7 +12431,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 3584, index 124 */ + { /* page 3584, index 127 */ G_UNICODE_UNASSIGNED, G_UNICODE_FORMAT, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, @@ -12228,7 +12511,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 3585, index 125 */ + { /* page 3585, index 128 */ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, @@ -12356,7 +12639,7 @@ static const char type_data[][256] = { G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 4095, index 126 */ + { /* page 4095, index 129 */ G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, @@ -12444,7 +12727,7 @@ static const char type_data[][256] = { G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED }, - { /* page 4351, index 127 */ + { /* page 4351, index 130 */ G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, @@ -12821,15 +13104,15 @@ static const gint16 type_table_part1[763] = { 84 /* page 282 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, 85 /* page 284 */, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, + 86 /* page 285 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 86 /* page 291 */, - 87 /* page 292 */, - 88 /* page 293 */, + 87 /* page 291 */, + 88 /* page 292 */, + 89 /* page 293 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -12844,7 +13127,7 @@ static const gint16 type_table_part1[763] = { G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 89 /* page 308 */, + 90 /* page 308 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -12862,7 +13145,7 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 90 /* page 326 */, + 91 /* page 326 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -12898,12 +13181,12 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 91 /* page 362 */, - 92 /* page 363 */, + 92 /* page 362 */, + 93 /* page 363 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 93 /* page 367 */, + 94 /* page 367 */, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, @@ -12927,12 +13210,10 @@ static const gint16 type_table_part1[763] = { G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 94 /* page 391 */, + 95 /* page 391 */, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 95 /* page 394 */, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, + 96 /* page 394 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -12968,9 +13249,11 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 96 /* page 432 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + 97 /* page 433 */, + 98 /* page 434 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -12980,7 +13263,7 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 97 /* page 444 */, + 99 /* page 444 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -13000,23 +13283,23 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 98 /* page 464 */, - 99 /* page 465 */, - 100 /* page 466 */, - 101 /* page 467 */, - 102 /* page 468 */, - 103 /* page 469 */, - 104 /* page 470 */, - 105 /* page 471 */, + 100 /* page 464 */, + 101 /* page 465 */, + 102 /* page 466 */, + 103 /* page 467 */, + 104 /* page 468 */, + 105 /* page 469 */, + 106 /* page 470 */, + 107 /* page 471 */, G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX, - 106 /* page 474 */, + 108 /* page 474 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 107 /* page 480 */, + 109 /* page 480 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -13024,24 +13307,24 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 108 /* page 488 */, - 109 /* page 489 */, + 110 /* page 488 */, + 111 /* page 489 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 110 /* page 494 */, + 112 /* page 494 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - 111 /* page 496 */, - 112 /* page 497 */, - 113 /* page 498 */, - 114 /* page 499 */, + 113 /* page 496 */, + 114 /* page 497 */, + 115 /* page 498 */, + 116 /* page 499 */, G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX, - 115 /* page 502 */, - 116 /* page 503 */, - 117 /* page 504 */, - 118 /* page 505 */, + 117 /* page 502 */, + 118 /* page 503 */, + 119 /* page 504 */, + 120 /* page 505 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -13214,7 +13497,7 @@ static const gint16 type_table_part1[763] = { G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 119 /* page 678 */, + 121 /* page 678 */, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, @@ -13231,8 +13514,8 @@ static const gint16 type_table_part1[763] = { G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 120 /* page 695 */, - 121 /* page 696 */, + 122 /* page 695 */, + 123 /* page 696 */, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, @@ -13254,36 +13537,36 @@ static const gint16 type_table_part1[763] = { G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 122 /* page 718 */, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, - G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, + 124 /* page 718 */, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, + 125 /* page 747 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -13298,13 +13581,13 @@ static const gint16 type_table_part1[763] = { G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX, - 123 /* page 762 */ + 126 /* page 762 */ }; /* U+E0000 through U+10FFFF */ static const gint16 type_table_part2[768] = { - 124 /* page 3584 */, - 125 /* page 3585 */, + 127 /* page 3584 */, + 128 /* page 3585 */, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX, @@ -13814,7 +14097,7 @@ static const gint16 type_table_part2[768] = { G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, - 126 /* page 4095 */, + 129 /* page 4095 */, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, @@ -14070,7 +14353,7 @@ static const gint16 type_table_part2[768] = { G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX, - 127 /* page 4351 */ + 130 /* page 4351 */ }; static const gunichar attr_data[][256] = { @@ -15540,7 +15823,38 @@ static const gunichar attr_data[][256] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 }, - { /* page 362, index 47 */ + { /* page 285, index 47 */ + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 0x0009, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000 + }, + { /* page 362, index 48 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -15571,7 +15885,7 @@ static const gunichar attr_data[][256] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 }, - { /* page 363, index 48 */ + { /* page 363, index 49 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -15602,7 +15916,7 @@ static const gunichar attr_data[][256] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 }, - { /* page 471, index 49 */ + { /* page 471, index 50 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -15633,7 +15947,7 @@ static const gunichar attr_data[][256] = { 0x0007, 0x0008, 0x0009, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 0x0009 }, - { /* page 489, index 50 */ + { /* page 489, index 51 */ 0x1e922, 0x1e923, 0x1e924, 0x1e925, 0x1e926, 0x1e927, 0x1e928, 0x1e929, 0x1e92a, 0x1e92b, 0x1e92c, 0x1e92d, 0x1e92e, 0x1e92f, 0x1e930, 0x1e931, 0x1e932, 0x1e933, 0x1e934, 0x1e935, 0x1e936, 0x1e937, 0x1e938, 0x1e939, @@ -15954,6 +16268,7 @@ static const gint16 attr_table_part1[763] = { 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 46 /* page 284 */, + 47 /* page 285 */, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, @@ -16030,9 +16345,8 @@ static const gint16 attr_table_part1[763] = { 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, - 0x0000 + G_UNICODE_MAX_TABLE_INDEX, - 47 /* page 362 */, - 48 /* page 363 */, + 48 /* page 362 */, + 49 /* page 363 */, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, @@ -16140,7 +16454,7 @@ static const gint16 attr_table_part1[763] = { 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, - 49 /* page 471 */, + 50 /* page 471 */, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, @@ -16158,7 +16472,7 @@ static const gint16 attr_table_part1[763] = { 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, - 50 /* page 489 */, + 51 /* page 489 */, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, 0x0000 + G_UNICODE_MAX_TABLE_INDEX, @@ -17665,7 +17979,7 @@ static const struct Interval g_unicode_width_table_wide[] = { {0x3000, 0x303E}, {0x3041, 0x3096}, {0x3099, 0x30FF}, -{0x3105, 0x312D}, +{0x3105, 0x312E}, {0x3131, 0x318E}, {0x3190, 0x31BA}, {0x31C0, 0x31E3}, @@ -17684,10 +17998,11 @@ static const struct Interval g_unicode_width_table_wide[] = { {0xFE68, 0xFE6B}, {0xFF01, 0xFF60}, {0xFFE0, 0xFFE6}, -{0x16FE0, 0x16FE0}, +{0x16FE0, 0x16FE1}, {0x17000, 0x187EC}, {0x18800, 0x18AF2}, -{0x1B000, 0x1B001}, +{0x1B000, 0x1B11E}, +{0x1B170, 0x1B2FB}, {0x1F004, 0x1F004}, {0x1F0CF, 0x1F0CF}, {0x1F18E, 0x1F18E}, @@ -17696,6 +18011,7 @@ static const struct Interval g_unicode_width_table_wide[] = { {0x1F210, 0x1F23B}, {0x1F240, 0x1F248}, {0x1F250, 0x1F251}, +{0x1F260, 0x1F265}, {0x1F300, 0x1F320}, {0x1F32D, 0x1F335}, {0x1F337, 0x1F37C}, @@ -17718,15 +18034,13 @@ static const struct Interval g_unicode_width_table_wide[] = { {0x1F6CC, 0x1F6CC}, {0x1F6D0, 0x1F6D2}, {0x1F6EB, 0x1F6EC}, -{0x1F6F4, 0x1F6F6}, -{0x1F910, 0x1F91E}, -{0x1F920, 0x1F927}, -{0x1F930, 0x1F930}, -{0x1F933, 0x1F93E}, -{0x1F940, 0x1F94B}, -{0x1F950, 0x1F95E}, -{0x1F980, 0x1F991}, +{0x1F6F4, 0x1F6F8}, +{0x1F910, 0x1F93E}, +{0x1F940, 0x1F94C}, +{0x1F950, 0x1F96B}, +{0x1F980, 0x1F997}, {0x1F9C0, 0x1F9C0}, +{0x1F9D0, 0x1F9E6}, {0x20000, 0x2FFFD}, {0x30000, 0x3FFFD}, }; diff --git a/glib/gunicode.h b/glib/gunicode.h index ff4392ecc..e81767732 100644 --- a/glib/gunicode.h +++ b/glib/gunicode.h @@ -411,6 +411,10 @@ typedef enum * @G_UNICODE_SCRIPT_NEWA: Newa. Since: 2.50 * @G_UNICODE_SCRIPT_OSAGE: Osage. Since: 2.50 * @G_UNICODE_SCRIPT_TANGUT: Tangut. Since: 2.50 + * @G_UNICODE_SCRIPT_MASARAM_GONDI, Masaram Gondi. Since: 2.54 + * @G_UNICODE_SCRIPT_NUSHU, Nushu. Since: 2.54 + * @G_UNICODE_SCRIPT_SOYOMBO, Soyombo. Since: 2.54 + * @G_UNICODE_SCRIPT_ZANABAZAR_SQUARE Zanabazar Square. Since: 2.54 * * The #GUnicodeScript enumeration identifies different writing * systems. The values correspond to the names as defined in the @@ -581,7 +585,13 @@ typedef enum G_UNICODE_SCRIPT_MARCHEN, /* Marc */ G_UNICODE_SCRIPT_NEWA, /* Newa */ G_UNICODE_SCRIPT_OSAGE, /* Osge */ - G_UNICODE_SCRIPT_TANGUT /* Tang */ + G_UNICODE_SCRIPT_TANGUT, /* Tang */ + + /* Unicode 10.0 additions */ + G_UNICODE_SCRIPT_MASARAM_GONDI, /* Gonm */ + G_UNICODE_SCRIPT_NUSHU, /* Nshu */ + G_UNICODE_SCRIPT_SOYOMBO, /* Soyo */ + G_UNICODE_SCRIPT_ZANABAZAR_SQUARE /* Zanb */ } GUnicodeScript; GLIB_AVAILABLE_IN_ALL diff --git a/glib/gunidecomp.h b/glib/gunidecomp.h index a3b42239b..ab9f63d39 100644 --- a/glib/gunidecomp.h +++ b/glib/gunidecomp.h @@ -155,7 +155,7 @@ static const guchar cclass_data[][256] = { { /* page 13, index 10 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -310,8 +310,8 @@ static const guchar cclass_data[][256] = { 230, 230, 220, 230, 230, 230, 230, 230, 230, 230, 220, 230, 230, 234, 214, 220, 202, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 0, 0, 0, 0, - 0, 230, 233, 220, 230, 220 + 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 232, 228, + 228, 220, 0, 230, 233, 220, 230, 220 }, { /* page 32, index 22 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -617,7 +617,20 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 284, index 45 */ + { /* page 282, index 45 */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + { /* page 284, index 46 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, @@ -630,7 +643,20 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 362, index 46 */ + { /* page 285, index 47 */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 9, 9, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + { /* page 362, index 48 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -643,7 +669,7 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 363, index 47 */ + { /* page 363, index 49 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 230, 230, 230, 230, 230, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -656,7 +682,7 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 444, index 48 */ + { /* page 444, index 50 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -669,7 +695,7 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 465, index 49 */ + { /* page 465, index 51 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -683,7 +709,7 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 466, index 50 */ + { /* page 466, index 52 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 230, 230, 0, @@ -696,7 +722,7 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 480, index 51 */ + { /* page 480, index 53 */ 230, 230, 230, 230, 230, 230, 230, 0, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 0, 0, 230, 230, 230, 230, 230, 230, 230, 0, 230, 230, 0, 230, 230, 230, 230, 230, 0, 0, 0, 0, @@ -710,7 +736,7 @@ static const guchar cclass_data[][256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 488, index 52 */ + { /* page 488, index 54 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -723,7 +749,7 @@ static const guchar cclass_data[][256] = { 220, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { /* page 489, index 53 */ + { /* page 489, index 55 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 230, @@ -1021,10 +1047,10 @@ static const gint16 combining_class_table_part1[763] = { 44 /* page 279 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, + 45 /* page 282 */, 0 + G_UNICODE_MAX_TABLE_INDEX, - 0 + G_UNICODE_MAX_TABLE_INDEX, - 45 /* page 284 */, - 0 + G_UNICODE_MAX_TABLE_INDEX, + 46 /* page 284 */, + 47 /* page 285 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, @@ -1101,8 +1127,8 @@ static const gint16 combining_class_table_part1[763] = { 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, - 46 /* page 362 */, - 47 /* page 363 */, + 48 /* page 362 */, + 49 /* page 363 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, @@ -1183,7 +1209,7 @@ static const gint16 combining_class_table_part1[763] = { 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, - 48 /* page 444 */, + 50 /* page 444 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, @@ -1204,8 +1230,8 @@ static const gint16 combining_class_table_part1[763] = { 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, - 49 /* page 465 */, - 50 /* page 466 */, + 51 /* page 465 */, + 52 /* page 466 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, @@ -1219,7 +1245,7 @@ static const gint16 combining_class_table_part1[763] = { 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, - 51 /* page 480 */, + 53 /* page 480 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, @@ -1227,8 +1253,8 @@ static const gint16 combining_class_table_part1[763] = { 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, - 52 /* page 488 */, - 53 /* page 489 */, + 54 /* page 488 */, + 55 /* page 489 */, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, 0 + G_UNICODE_MAX_TABLE_INDEX, diff --git a/glib/guniprop.c b/glib/guniprop.c index 4ce947426..63e7ba531 100644 --- a/glib/guniprop.c +++ b/glib/guniprop.c @@ -1434,6 +1434,12 @@ static const guint32 iso15924_tags[] = PACK ('N','e','w','a'), /* G_UNICODE_SCRIPT_NEWA */ PACK ('O','s','g','e'), /* G_UNICODE_SCRIPT_OSAGE */ PACK ('T','a','n','g'), /* G_UNICODE_SCRIPT_TANGUT */ + + /* Unicode 10.0 additions */ + PACK ('G','o','n','m'), /* G_UNICODE_SCRIPT_MASARAM_GONDI */ + PACK ('N','s','h','u'), /* G_UNICODE_SCRIPT_NUSHU */ + PACK ('S','o','y','o'), /* G_UNICODE_SCRIPT_SOYOMBO */ + PACK ('Z','a','n','b'), /* G_UNICODE_SCRIPT_ZANABAZAR_SQUARE */ #undef PACK }; diff --git a/glib/gutf8.c b/glib/gutf8.c index e66e06160..e0d085001 100644 --- a/glib/gutf8.c +++ b/glib/gutf8.c @@ -162,7 +162,13 @@ g_utf8_find_prev_char (const char *str, * is made to see if the character found is actually valid other than * it starts with an appropriate byte. * - * Returns: a pointer to the found character or %NULL + * If @end is %NULL, the return value will never be %NULL: if the end of the + * string is reached, a pointer to the terminating nul byte is returned. If + * @end is non-%NULL, the return value will be %NULL if the end of the string + * is reached. + * + * Returns: (nullable): a pointer to the found character or %NULL if @end is + * set and is reached */ gchar * g_utf8_find_next_char (const gchar *p, @@ -654,6 +660,10 @@ g_utf8_get_char_extended (const gchar *p, * This function checks for incomplete characters, for invalid characters * such as characters that are out of the range of Unicode, and for * overlong encodings of valid characters. + * + * Note that g_utf8_get_char_validated() returns (gunichar)-2 if + * @max_len is positive and any of the bytes in the first UTF-8 character + * sequence are nul. * * Returns: the resulting character. If @p points to a partial * sequence at the end of a string that could begin a valid diff --git a/glib/gvariant.c b/glib/gvariant.c index e117d0740..6c4f81796 100644 --- a/glib/gvariant.c +++ b/glib/gvariant.c @@ -273,7 +273,7 @@ * * To put the entire example together, for our dictionary mapping * strings to variants (with two entries, as given above), we are - * using 91 bytes of memory for type information, 29 byes of memory + * using 91 bytes of memory for type information, 29 bytes of memory * for the serialised data, 16 bytes for buffer management and 24 * bytes for the #GVariant instance, or a total of 160 bytes, plus * malloc overhead. If we were to use g_variant_get_child_value() to diff --git a/glib/gwin32.c b/glib/gwin32.c index f54d65f2b..cc6da5f99 100644 --- a/glib/gwin32.c +++ b/glib/gwin32.c @@ -616,6 +616,49 @@ g_win32_get_windows_version (void) return windows_version; } +/* + * Doesn't use gettext (and gconv), preventing recursive calls when + * g_win32_locale_filename_from_utf8() is called during + * gettext initialization. + */ +static gchar * +special_wchar_to_locale_enoding (wchar_t *wstring) +{ + int sizeof_output; + int wctmb_result; + char *result; + BOOL not_representable = FALSE; + + sizeof_output = WideCharToMultiByte (CP_ACP, + WC_NO_BEST_FIT_CHARS, + wstring, -1, + NULL, 0, + NULL, + ¬_representable); + + if (not_representable || + sizeof_output == 0 || + sizeof_output > MAX_PATH) + return NULL; + + result = g_malloc0 (sizeof_output + 1); + + wctmb_result = WideCharToMultiByte (CP_ACP, + WC_NO_BEST_FIT_CHARS, + wstring, -1, + result, sizeof_output + 1, + NULL, + ¬_representable); + + if (wctmb_result == sizeof_output && + not_representable == FALSE) + return result; + + g_free (result); + + return NULL; +} + /** * g_win32_locale_filename_from_utf8: * @utf8filename: a UTF-8 encoded filename. @@ -648,26 +691,27 @@ g_win32_get_windows_version (void) gchar * g_win32_locale_filename_from_utf8 (const gchar *utf8filename) { - gchar *retval = g_locale_from_utf8 (utf8filename, -1, NULL, NULL, NULL); + gchar *retval; + wchar_t *wname; + + wname = g_utf8_to_utf16 (utf8filename, -1, NULL, NULL, NULL); + + if (wname == NULL) + return NULL; + + retval = special_wchar_to_locale_enoding (wname); if (retval == NULL) { - /* Conversion failed, so convert to wide chars, check if there - * is a 8.3 version, and use that. - */ - wchar_t *wname = g_utf8_to_utf16 (utf8filename, -1, NULL, NULL, NULL); - if (wname != NULL) - { - wchar_t wshortname[MAX_PATH + 1]; - if (GetShortPathNameW (wname, wshortname, G_N_ELEMENTS (wshortname))) - { - gchar *tem = g_utf16_to_utf8 (wshortname, -1, NULL, NULL, NULL); - retval = g_locale_from_utf8 (tem, -1, NULL, NULL, NULL); - g_free (tem); - } - g_free (wname); - } + /* Conversion failed, so check if there is a 8.3 version, and use that. */ + wchar_t wshortname[MAX_PATH + 1]; + + if (GetShortPathNameW (wname, wshortname, G_N_ELEMENTS (wshortname))) + retval = special_wchar_to_locale_enoding (wshortname); } + + g_free (wname); + return retval; } diff --git a/glib/gwin32.h b/glib/gwin32.h index 7dc8d9365..6696afa9a 100644 --- a/glib/gwin32.h +++ b/glib/gwin32.h @@ -84,7 +84,6 @@ gchar* g_win32_getlocale (void); GLIB_AVAILABLE_IN_ALL gchar* g_win32_error_message (gint error); -#ifndef _WIN64 GLIB_DEPRECATED gchar* g_win32_get_package_installation_directory (const gchar *package, const gchar *dll_name); @@ -93,7 +92,6 @@ GLIB_DEPRECATED gchar* g_win32_get_package_installation_subdirectory (const gchar *package, const gchar *dll_name, const gchar *subdir); -#endif GLIB_AVAILABLE_IN_ALL gchar* g_win32_get_package_installation_directory_of_module (gpointer hmodule); diff --git a/glib/makefile.msc b/glib/makefile.msc deleted file mode 100644 index 13a250d77..000000000 --- a/glib/makefile.msc +++ /dev/null @@ -1,143 +0,0 @@ -## Makefile for building the GLib dlls with Microsoft C -## Use: nmake -f makefile.msc - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. -DEFINES = \ - -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=\"GLib\" \ - -DG_ENABLE_DEBUG -DPCRE_STATIC -DG_DISABLE_DEPRECATED \ - -DDLL_EXPORT=1 - -DEPCFLAGS = -Zm400 $(INTL_CFLAGS) $(DIRENT_CFLAGS) - -all : \ - ..\config.h \ - ..\glibconfig.h \ - gnulib\gnulib.lib \ - pcre\pcre.lib \ - libglib-2.0-0.dll \ - glib-2.53s.lib \ - gspawn-win32-helper.exe \ - gspawn-win32-helper-console.exe \ - - -gnulib\gnulib.lib : - cd gnulib - nmake -f makefile.msc - cd .. - -pcre\pcre.lib : - cd pcre - nmake -f makefile.msc - cd .. - -glib_OBJECTS = \ - garray.obj \ - gasyncqueue.obj \ - gatomic.obj \ - gbacktrace.obj \ - gbase64.obj \ - gbookmarkfile.obj \ - gcache.obj \ - gchecksum.obj \ - gcompletion.obj \ - gconvert.obj \ - gdataset.obj \ - gdate.obj \ - gdir.obj \ - gerror.obj \ - gfileutils.obj \ - ghash.obj \ - ghostutils.obj \ - ghook.obj \ - giochannel.obj \ - giowin32.obj \ - gpoll.obj \ - gkeyfile.obj \ - glist.obj \ - gmain.obj \ - gmappedfile.obj \ - gmarkup.obj \ - gmem.obj \ - gmessages.obj \ - gnode.obj \ - goption.obj \ - gpattern.obj \ - gprimes.obj \ - gprintf.obj \ - gqsort.obj \ - gqueue.obj \ - grand.obj \ - gregex.obj \ - grel.obj \ - gscanner.obj \ - gsequence.obj \ - gshell.obj \ - gslice.obj \ - gslist.obj \ - gspawn-win32.obj \ - gstdio.obj \ - gstrfuncs.obj \ - gstring.obj \ - gtestutils.obj \ - gthread.obj \ - gthreadpool.obj \ - gtimer.obj \ - gtree.obj \ - gunibreak.obj \ - gunicollate.obj \ - gunidecomp.obj \ - guniprop.obj \ - gurifuncs.obj \ - gutf8.obj \ - gutils.obj \ - gwin32.obj \ - localcharset.obj - -..\glibconfig.h: ..\glibconfig.h.win32 - copy ..\glibconfig.h.win32 ..\glibconfig.h - -..\config.h: ..\config.h.win32 - copy ..\config.h.win32 ..\config.h - -localcharset.obj : libcharset\localcharset.c - $(CC) $(CFLAGS) -DLIBDIR=\".\" -c libcharset\localcharset.c - -glib.def: glib.symbols - echo EXPORTS > glib.def - cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \ - -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \ - -DG_GNUC_PRINTF=;G_GNUC_PRINTF -DG_GNUC_FORMAT=;G_GNUC_FORMAT glib.symbols >> glib.def - -glib.res : glib.rc - rc -DBUILDNUMBER=0 -r -fo glib.res glib.rc - -################ glib - -# create a static libary -# static library can well have the real version number in the name -glib-2.53s.lib : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib - lib /out:glib-2.53s.lib $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib - -libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res - $(CC) $(CFLAGS) -LD -Fe$@ $(glib_OBJECTS) glib.res $(INTL_LIBS) \ - gnulib\gnulib.lib pcre\pcre.lib $(DIRENT_LIBS) user32.lib advapi32.lib shell32.lib wsock32.lib ole32.lib ws2_32.lib winmm.lib \ - $(LDFLAGS) /implib:glib-2.0.lib /def:glib.def - -gspawn-win32-helper.exe : gspawn-win32-helper.c libglib-2.0-0.dll - $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:windows user32.lib - -gspawn-win32-helper-console.exe : gspawn-win32-helper.c libglib-2.0-0.dll - $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:console user32.lib - -################ other stuff - -clean:: - del ..\config.h - del ..\glibconfig.h - diff --git a/glib/makefile.msc.in b/glib/makefile.msc.in deleted file mode 100644 index e45b1e510..000000000 --- a/glib/makefile.msc.in +++ /dev/null @@ -1,143 +0,0 @@ -## Makefile for building the GLib dlls with Microsoft C -## Use: nmake -f makefile.msc - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. -DEFINES = \ - -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=\"GLib\" \ - -DG_ENABLE_DEBUG -DPCRE_STATIC -DG_DISABLE_DEPRECATED \ - -DDLL_EXPORT=1 - -DEPCFLAGS = -Zm400 $(INTL_CFLAGS) $(DIRENT_CFLAGS) - -all : \ - ..\config.h \ - ..\glibconfig.h \ - gnulib\gnulib.lib \ - pcre\pcre.lib \ - libglib-2.0-0.dll \ - glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib \ - gspawn-win32-helper.exe \ - gspawn-win32-helper-console.exe \ - - -gnulib\gnulib.lib : - cd gnulib - nmake -f makefile.msc - cd .. - -pcre\pcre.lib : - cd pcre - nmake -f makefile.msc - cd .. - -glib_OBJECTS = \ - garray.obj \ - gasyncqueue.obj \ - gatomic.obj \ - gbacktrace.obj \ - gbase64.obj \ - gbookmarkfile.obj \ - gcache.obj \ - gchecksum.obj \ - gcompletion.obj \ - gconvert.obj \ - gdataset.obj \ - gdate.obj \ - gdir.obj \ - gerror.obj \ - gfileutils.obj \ - ghash.obj \ - ghostutils.obj \ - ghook.obj \ - giochannel.obj \ - giowin32.obj \ - gpoll.obj \ - gkeyfile.obj \ - glist.obj \ - gmain.obj \ - gmappedfile.obj \ - gmarkup.obj \ - gmem.obj \ - gmessages.obj \ - gnode.obj \ - goption.obj \ - gpattern.obj \ - gprimes.obj \ - gprintf.obj \ - gqsort.obj \ - gqueue.obj \ - grand.obj \ - gregex.obj \ - grel.obj \ - gscanner.obj \ - gsequence.obj \ - gshell.obj \ - gslice.obj \ - gslist.obj \ - gspawn-win32.obj \ - gstdio.obj \ - gstrfuncs.obj \ - gstring.obj \ - gtestutils.obj \ - gthread.obj \ - gthreadpool.obj \ - gtimer.obj \ - gtree.obj \ - gunibreak.obj \ - gunicollate.obj \ - gunidecomp.obj \ - guniprop.obj \ - gurifuncs.obj \ - gutf8.obj \ - gutils.obj \ - gwin32.obj \ - localcharset.obj - -..\glibconfig.h: ..\glibconfig.h.win32 - copy ..\glibconfig.h.win32 ..\glibconfig.h - -..\config.h: ..\config.h.win32 - copy ..\config.h.win32 ..\config.h - -localcharset.obj : libcharset\localcharset.c - $(CC) $(CFLAGS) -DLIBDIR=\".\" -c libcharset\localcharset.c - -glib.def: glib.symbols - echo EXPORTS > glib.def - cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \ - -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \ - -DG_GNUC_PRINTF=;G_GNUC_PRINTF -DG_GNUC_FORMAT=;G_GNUC_FORMAT glib.symbols >> glib.def - -glib.res : glib.rc - rc -DBUILDNUMBER=0 -r -fo glib.res glib.rc - -################ glib - -# create a static libary -# static library can well have the real version number in the name -glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib - lib /out:glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib - -libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res - $(CC) $(CFLAGS) -LD -Fe$@ $(glib_OBJECTS) glib.res $(INTL_LIBS) \ - gnulib\gnulib.lib pcre\pcre.lib $(DIRENT_LIBS) user32.lib advapi32.lib shell32.lib wsock32.lib ole32.lib ws2_32.lib winmm.lib \ - $(LDFLAGS) /implib:glib-2.0.lib /def:glib.def - -gspawn-win32-helper.exe : gspawn-win32-helper.c libglib-2.0-@LT_CURRENT_MINUS_AGE@.dll - $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:windows user32.lib - -gspawn-win32-helper-console.exe : gspawn-win32-helper.c libglib-2.0-@LT_CURRENT_MINUS_AGE@.dll - $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:console user32.lib - -################ other stuff - -clean:: - del ..\config.h - del ..\glibconfig.h - diff --git a/glib/pcre/Makefile.am b/glib/pcre/Makefile.am index 5e1e98d6d..0787f9210 100644 --- a/glib/pcre/Makefile.am +++ b/glib/pcre/Makefile.am @@ -60,6 +60,4 @@ libpcre_la_SOURCES = \ libpcre_la_LIBADD = $(DEP_LIBS) -EXTRA_DIST += \ - COPYING \ - makefile.msc +EXTRA_DIST += COPYING diff --git a/glib/pcre/Makefile.in b/glib/pcre/Makefile.in index 5cafd6d86..4807416c9 100644 --- a/glib/pcre/Makefile.in +++ b/glib/pcre/Makefile.in @@ -702,8 +702,7 @@ BUILT_EXTRA_DIST = CLEANFILES = *.log *.trs $(am__append_14) DISTCLEANFILES = MAINTAINERCLEANFILES = -EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) COPYING \ - makefile.msc +EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) COPYING # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. diff --git a/glib/pcre/makefile.msc b/glib/pcre/makefile.msc deleted file mode 100644 index 1ec1d72c8..000000000 --- a/glib/pcre/makefile.msc +++ /dev/null @@ -1,30 +0,0 @@ -TOP = ..\..\.. -!INCLUDE ..\..\build\win32\make.msc - -INCLUDES = \ - -I ..\.. \ - -I .. - -DEFINES = \ - -DPCRE_STATIC \ - -DHAVE_CONFIG_H \ - -DHAVE_LONG_LONG_FORMAT \ - -DSUPPORT_UCP \ - -DSUPPORT_UTF8 \ - -DNEWLINE=-1 \ - -DMATCH_LIMIT=10000000 \ - -DMATCH_LIMIT_RECURSION=10000000 \ - -DMAX_NAME_SIZE=32 \ - -DMAX_NAME_COUNT=10000 \ - -DMAX_DUPLENGTH=30000 \ - -DLINK_SIZE=2 \ - -DEBCDIC=0 \ - -DPOSIX_MALLOC_THRESHOLD=10 - -OBJECTS = \ - - -all : pcre.lib - -pcre.lib : $(OBJECTS) - lib -out:pcre.lib $(OBJECTS) diff --git a/glib/tests/Makefile.am b/glib/tests/Makefile.am index 43b11f05d..1adc50d71 100644 --- a/glib/tests/Makefile.am +++ b/glib/tests/Makefile.am @@ -180,6 +180,7 @@ atomic_CFLAGS += -Wstrict-aliasing=2 endif overflow_fallback_SOURCES = overflow.c +# FIXME: FLAGS? overflow_fallback_FALGS = $(AM_CFLAGS) -D_GLIB_TEST_OVERFLOW_FALLBACK test_programs += 642026-ec diff --git a/glib/tests/Makefile.in b/glib/tests/Makefile.in index 8bc29244a..cc6028f8b 100644 --- a/glib/tests/Makefile.in +++ b/glib/tests/Makefile.in @@ -1270,6 +1270,7 @@ all_markup_data = \ atomic_CFLAGS = $(AM_CFLAGS) $(am__append_14) overflow_fallback_SOURCES = overflow.c +# FIXME: FLAGS? overflow_fallback_FALGS = $(AM_CFLAGS) -D_GLIB_TEST_OVERFLOW_FALLBACK 642026_ec_SOURCES = 642026.c 642026_ec_CFLAGS = -DG_ERRORCHECK_MUTEXES diff --git a/glib/tests/gdatetime.c b/glib/tests/gdatetime.c index db04870d2..6ddad3a83 100644 --- a/glib/tests/gdatetime.c +++ b/glib/tests/gdatetime.c @@ -370,19 +370,27 @@ test_GDateTime_new_from_timeval (void) g_date_time_unref (dt); } -static gint64 +static glong find_maximum_supported_tv_sec (void) { glong highest_success = 0, lowest_failure = G_MAXLONG; GTimeVal tv; + GDateTime *dt = NULL; tv.tv_usec = 0; - while (highest_success < lowest_failure - 1) + /* Corner case of all glong values being valid. */ + tv.tv_sec = G_MAXLONG; + dt = g_date_time_new_from_timeval_utc (&tv); + if (dt != NULL) { - GDateTime *dt; + highest_success = tv.tv_sec; + g_date_time_unref (dt); + } - tv.tv_sec = (highest_success + lowest_failure) / 2; + while (highest_success < lowest_failure - 1) + { + tv.tv_sec = highest_success + (lowest_failure - highest_success) / 2; dt = g_date_time_new_from_timeval_utc (&tv); if (dt != NULL) @@ -401,7 +409,10 @@ find_maximum_supported_tv_sec (void) /* Check that trying to create a #GDateTime too far in the future reliably * fails. With a #GTimeVal, this is subtle, as the tv_usec are added into the - * calculation part-way through. */ + * calculation part-way through. + * + * This varies a bit between 32- and 64-bit architectures, due to the + * differences in the size of glong (tv.tv_sec). */ static void test_GDateTime_new_from_timeval_overflow (void) { @@ -410,29 +421,26 @@ test_GDateTime_new_from_timeval_overflow (void) g_test_bug ("782089"); - tv.tv_sec = G_MAXLONG; - tv.tv_usec = 0; - - dt = g_date_time_new_from_timeval_utc (&tv); - g_assert_null (dt); - - dt = g_date_time_new_from_timeval_local (&tv); - g_assert_null (dt); - tv.tv_sec = find_maximum_supported_tv_sec (); tv.tv_usec = G_USEC_PER_SEC - 1; g_test_message ("Maximum supported GTimeVal.tv_sec = %lu", tv.tv_sec); + /* Sanity check: do we support the year 2000? */ + g_assert_cmpint (tv.tv_sec, >=, 946684800); + dt = g_date_time_new_from_timeval_utc (&tv); g_assert_nonnull (dt); g_date_time_unref (dt); - tv.tv_sec++; - tv.tv_usec = 0; + if (tv.tv_sec < G_MAXLONG) + { + tv.tv_sec++; + tv.tv_usec = 0; - dt = g_date_time_new_from_timeval_utc (&tv); - g_assert_null (dt); + dt = g_date_time_new_from_timeval_utc (&tv); + g_assert_null (dt); + } } static void diff --git a/glib/tests/unicode.c b/glib/tests/unicode.c index 36b732acc..c81c9b8e8 100644 --- a/glib/tests/unicode.c +++ b/glib/tests/unicode.c @@ -293,6 +293,10 @@ test_unichar_script (void) { G_UNICODE_SCRIPT_NEWA, 0x11400 }, { G_UNICODE_SCRIPT_OSAGE, 0x104B0 }, { G_UNICODE_SCRIPT_TANGUT, 0x16FE0 }, + { G_UNICODE_SCRIPT_MASARAM_GONDI, 0x11D00 }, + { G_UNICODE_SCRIPT_NUSHU, 0x1B170 }, + { G_UNICODE_SCRIPT_SOYOMBO, 0x11A50 }, + { G_UNICODE_SCRIPT_ZANABAZAR_SQUARE, 0x11A00 }, }; for (i = 0; i < G_N_ELEMENTS (examples); i++) g_assert_cmpint (g_unichar_get_script (examples[i].c), ==, examples[i].script); @@ -885,6 +889,12 @@ test_iso15924 (void) { G_UNICODE_SCRIPT_NEWA, "Newa" }, { G_UNICODE_SCRIPT_OSAGE, "Osge" }, { G_UNICODE_SCRIPT_TANGUT, "Tang" }, + + /* Unicode 10.0 additions */ + { G_UNICODE_SCRIPT_MASARAM_GONDI, "Gonm" }, + { G_UNICODE_SCRIPT_NUSHU, "Nshu" }, + { G_UNICODE_SCRIPT_SOYOMBO, "Soyo" }, + { G_UNICODE_SCRIPT_ZANABAZAR_SQUARE, "Zanb" }, }; guint i; diff --git a/glib/tests/utf8-pointer.c b/glib/tests/utf8-pointer.c index df1f442d0..c29ea3e95 100644 --- a/glib/tests/utf8-pointer.c +++ b/glib/tests/utf8-pointer.c @@ -128,6 +128,15 @@ test_find (void) q = g_utf8_find_next_char (str + strlen (str), NULL); g_assert (q == str + strlen (str) + 1); + + /* Check return values when reaching the end of the string, + * with @end set and unset. */ + q = g_utf8_find_next_char (str + 10, NULL); + g_assert_nonnull (q); + g_assert (*q == '\0'); + + q = g_utf8_find_next_char (str + 10, str + 11); + g_assert_null (q); } int main (int argc, char *argv[]) diff --git a/glib/tests/utf8-validate.c b/glib/tests/utf8-validate.c index 122aa761d..1609bde34 100644 --- a/glib/tests/utf8-validate.c +++ b/glib/tests/utf8-validate.c @@ -292,6 +292,57 @@ do_test (gconstpointer d) } } +/* Test the behaviour of g_utf8_get_char_validated() with various inputs and + * length restrictions. */ +static void +test_utf8_get_char_validated (void) +{ + const struct { + const gchar *buf; + gssize max_len; + gunichar expected_result; + } test_vectors[] = { + /* Bug #780095: */ + { "\xC0\x00_45678", 8, (gunichar) -2 }, + { "\xC0\x00_45678", -1, (gunichar) -2 }, + /* It seems odd that the return value differs with the length input, but + * that’s how it’s documented: */ + { "", 0, (gunichar) -2 }, + { "", -1, (gunichar) 0 }, + /* Normal inputs: */ + { "hello", 5, (gunichar) 'h' }, + { "hello", -1, (gunichar) 'h' }, + { "\xD8\x9F", 2, 0x061F }, + { "\xD8\x9F", -1, 0x061F }, + { "\xD8\x9Fmore", 6, 0x061F }, + { "\xD8\x9Fmore", -1, 0x061F }, + { "\xE2\x96\xB3", 3, 0x25B3 }, + { "\xE2\x96\xB3", -1, 0x25B3 }, + { "\xE2\x96\xB3more", 7, 0x25B3 }, + { "\xE2\x96\xB3more", -1, 0x25B3 }, + { "\xF0\x9F\x92\xA9", 4, 0x1F4A9 }, + { "\xF0\x9F\x92\xA9", -1, 0x1F4A9 }, + { "\xF0\x9F\x92\xA9more", 8, 0x1F4A9 }, + { "\xF0\x9F\x92\xA9more", -1, 0x1F4A9 }, + /* Partial unichars: */ + { "\xD8", -1, (gunichar) -2 }, + { "\xD8\x9F", 1, (gunichar) -2 }, + { "\xCE", -1, (gunichar) -2 }, + { "\xCE", 1, (gunichar) -2 }, + }; + gsize i; + + for (i = 0; i < G_N_ELEMENTS (test_vectors); i++) + { + gunichar actual_result; + + g_test_message ("Vector %" G_GSIZE_FORMAT, i); + actual_result = g_utf8_get_char_validated (test_vectors[i].buf, + test_vectors[i].max_len); + g_assert_cmpint (actual_result, ==, test_vectors[i].expected_result); + } +} + int main (int argc, char *argv[]) { @@ -307,5 +358,7 @@ main (int argc, char *argv[]) g_free (path); } + g_test_add_func ("/utf8/get-char-validated", test_utf8_get_char_validated); + return g_test_run (); } diff --git a/glib/update-pcre/update.sh b/glib/update-pcre/update.sh index 960b4d21d..a108d833b 100644 --- a/glib/update-pcre/update.sh +++ b/glib/update-pcre/update.sh @@ -82,44 +82,6 @@ for f in $included_files; do done cat $IN/Makefile.am-2 >> Makefile.am -# Generate makefile.msc -cat > makefile.msc << EOF -TOP = ..\..\.. -!INCLUDE ..\..\build\win32\make.msc - -INCLUDES = \\ - -I ..\.. \\ - -I .. - -DEFINES = \\ - -DPCRE_STATIC \\ - -DHAVE_CONFIG_H \\ - -DHAVE_LONG_LONG_FORMAT \\ - -DSUPPORT_UCP \\ - -DSUPPORT_UTF8 \\ - -DNEWLINE=-1 \\ - -DMATCH_LIMIT=10000000 \\ - -DMATCH_LIMIT_RECURSION=10000000 \\ - -DMAX_NAME_SIZE=32 \\ - -DMAX_NAME_COUNT=10000 \\ - -DMAX_DUPLENGTH=30000 \\ - -DLINK_SIZE=2 \\ - -DEBCDIC=0 \\ - -DPOSIX_MALLOC_THRESHOLD=10 - -OBJECTS = \\ -` -for f in $all_files; do - echo " $f.obj \\\\" -done -` - -all : pcre.lib - -pcre.lib : \$(OBJECTS) - lib -out:pcre.lib \$(OBJECTS) -EOF - echo "Patching PCRE" # Copy the license. diff --git a/gmodule/Makefile.am b/gmodule/Makefile.am index 95c7f0932..00e0e68d4 100644 --- a/gmodule/Makefile.am +++ b/gmodule/Makefile.am @@ -10,7 +10,6 @@ AM_CPPFLAGS = \ AM_CFLAGS = $(GLIB_WARN_CFLAGS) EXTRA_DIST += \ - makefile.msc.in \ gmoduleconf.h.in \ gmodule-dl.c \ gmodule-dyld.c \ @@ -20,7 +19,6 @@ EXTRA_DIST += \ gmodule.rc.in BUILT_EXTRA_DIST += \ - makefile.msc \ gmodule.rc BUILT_SOURCES += gmoduleconf.h diff --git a/gmodule/Makefile.in b/gmodule/Makefile.in index e5ac4673d..13083c3f6 100644 --- a/gmodule/Makefile.in +++ b/gmodule/Makefile.in @@ -148,7 +148,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(glibinclude_HEADERS) \ $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = gmoduleconf.h makefile.msc gmodule.rc +CONFIG_CLEAN_FILES = gmoduleconf.h gmodule.rc CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -439,9 +439,9 @@ am__set_b = \ b='$*';; \ esac am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/gmodule.rc.in \ - $(srcdir)/gmoduleconf.h.in $(srcdir)/makefile.msc.in \ - $(top_srcdir)/depcomp $(top_srcdir)/glib.mk \ - $(top_srcdir)/test-driver AUTHORS COPYING ChangeLog + $(srcdir)/gmoduleconf.h.in $(top_srcdir)/depcomp \ + $(top_srcdir)/glib.mk $(top_srcdir)/test-driver AUTHORS \ + COPYING ChangeLog DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ABS_TAPSET_DIR = @ABS_TAPSET_DIR@ ACLOCAL = @ACLOCAL@ @@ -697,13 +697,13 @@ NULL = # initialize variables for unconditional += appending BUILT_SOURCES = gmoduleconf.h -BUILT_EXTRA_DIST = makefile.msc gmodule.rc +BUILT_EXTRA_DIST = gmodule.rc CLEANFILES = *.log *.trs $(am__append_14) DISTCLEANFILES = MAINTAINERCLEANFILES = EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ - makefile.msc.in gmoduleconf.h.in gmodule-dl.c gmodule-dyld.c \ - gmodule-win32.c gmodule-ar.c gmoduleconf.h.win32 gmodule.rc.in + gmoduleconf.h.in gmodule-dl.c gmodule-dyld.c gmodule-win32.c \ + gmodule-ar.c gmoduleconf.h.win32 gmodule.rc.in # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. @@ -848,8 +848,6 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): gmoduleconf.h: $(top_builddir)/config.status $(srcdir)/gmoduleconf.h.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -makefile.msc: $(top_builddir)/config.status $(srcdir)/makefile.msc.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ gmodule.rc: $(top_builddir)/config.status $(srcdir)/gmodule.rc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ diff --git a/gmodule/gmodule.rc b/gmodule/gmodule.rc index 05df72d84..1c873767d 100644 --- a/gmodule/gmodule.rc +++ b/gmodule/gmodule.rc @@ -1,8 +1,8 @@ #include <winver.h> VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,53,3,0 - PRODUCTVERSION 2,53,3,0 + FILEVERSION 2,53,4,0 + PRODUCTVERSION 2,53,4,0 FILEFLAGSMASK 0 FILEFLAGS 0 FILEOS VOS__WINDOWS32 @@ -15,12 +15,12 @@ VS_VERSION_INFO VERSIONINFO BEGIN VALUE "CompanyName", "The GLib developer community" VALUE "FileDescription", "GModule" - VALUE "FileVersion", "2.53.3.0" + VALUE "FileVersion", "2.53.4.0" VALUE "InternalName", "libgmodule-2.0-0" VALUE "LegalCopyright", "Copyright 1998-2011 Tim Janik and others." VALUE "OriginalFilename", "libgmodule-2.0-0.dll" VALUE "ProductName", "GLib" - VALUE "ProductVersion", "2.53.3" + VALUE "ProductVersion", "2.53.4" END END BLOCK "VarFileInfo" diff --git a/gmodule/makefile.msc b/gmodule/makefile.msc deleted file mode 100644 index daa1846dc..000000000 --- a/gmodule/makefile.msc +++ /dev/null @@ -1,37 +0,0 @@ -## Makefile for building the gmodule dll with Microsoft C -## Use: nmake -f makefile.msc install - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib -DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GModule\" - -all : \ - gmoduleconf.h \ - libgmodule-2.0-0.dll - -gmodule_OBJECTS = \ - gmodule.obj -gmodule.def: gmodule.symbols
- echo EXPORTS > gmodule.def
- cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
- -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
- -DG_GNUC_PRINTF=;G_GNUC_PRINTF gmodule.symbols >> gmodule.def
-
- -gmoduleconf.h: gmoduleconf.h.win32 - copy gmoduleconf.h.win32 gmoduleconf.h - -gmodule.res : gmodule.rc - rc -DBUILDNUMBER=0 -r -fo gmodule.res gmodule.rc - -libgmodule-2.0-0.dll : $(gmodule_OBJECTS) gmodule.def gmodule.res - $(CC) $(CFLAGS) -LD -Fe$@ $(gmodule_OBJECTS) gmodule.res \ - ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gmodule-2.0.lib /def:gmodule.def - -clean:: - del gmoduleconf.h diff --git a/gmodule/makefile.msc.in b/gmodule/makefile.msc.in deleted file mode 100644 index 431dd50f0..000000000 --- a/gmodule/makefile.msc.in +++ /dev/null @@ -1,37 +0,0 @@ -## Makefile for building the gmodule dll with Microsoft C -## Use: nmake -f makefile.msc install - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib -DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GModule\" - -all : \ - gmoduleconf.h \ - libgmodule-2.0-@LT_CURRENT_MINUS_AGE@.dll - -gmodule_OBJECTS = \ - gmodule.obj -gmodule.def: gmodule.symbols
- echo EXPORTS > gmodule.def
- cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
- -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
- -DG_GNUC_PRINTF=;G_GNUC_PRINTF gmodule.symbols >> gmodule.def
-
- -gmoduleconf.h: gmoduleconf.h.win32 - copy gmoduleconf.h.win32 gmoduleconf.h - -gmodule.res : gmodule.rc - rc -DBUILDNUMBER=0 -r -fo gmodule.res gmodule.rc - -libgmodule-2.0-@LT_CURRENT_MINUS_AGE@.dll : $(gmodule_OBJECTS) gmodule.def gmodule.res - $(CC) $(CFLAGS) -LD -Fe$@ $(gmodule_OBJECTS) gmodule.res \ - ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gmodule-2.0.lib /def:gmodule.def - -clean:: - del gmoduleconf.h diff --git a/gobject/Makefile.am b/gobject/Makefile.am index a4fb370bd..73967627d 100644 --- a/gobject/Makefile.am +++ b/gobject/Makefile.am @@ -144,10 +144,7 @@ endif # non-header sources (headers should be specified in the above variables) # that don't serve as direct make target sources, i.e. they don't have # their own .lo rules and don't get publically installed -gobject_extra_sources = \ - gmarshal.list \ - gmarshal.strings - +gobject_extra_sources = # # setup GObject library sources and their dependancies @@ -157,8 +154,7 @@ gobject_target_sources = $(gobject_c_sources) EXTRA_HEADERS = EXTRA_DIST += \ $(gobject_private_h_sources) \ - $(gobject_extra_sources) \ - marshal-genstrings.pl + $(gobject_extra_sources) # This is read by gobject-introspection/misc/ and gtk-doc gobject-public-headers.txt: Makefile @@ -183,14 +179,6 @@ CLEANFILES += $(gen_sources) # ../configure will supress all autogeneration rules. -gmarshal.strings: @REBUILD@ $(srcdir)/gmarshal.list - $(AM_V_GEN) grep '^[A-Z]' $(srcdir)/gmarshal.list \ - | $(SED) -e 's/^/"g_cclosure_marshal_/' -e 's/:/__/' -e 's/,/_/g' -e 's/$$/",/' > xgen-gms \ - && cp xgen-gms gmarshal.strings \ - && rm -f xgen-gms xgen-gms~ - -glib-genmarshal.o: gmarshal.strings - # target platform: libgobjectinclude_HEADERS = $(gobject_target_headers) libgobject_2_0_la_SOURCES = $(gobject_target_sources) @@ -198,29 +186,26 @@ libgobject_2_0_la_SOURCES = $(gobject_target_sources) # # programs to compile and install # -bin_PROGRAMS = gobject-query glib-genmarshal -bin_SCRIPTS = glib-mkenums +bin_PROGRAMS = gobject-query +bin_SCRIPTS = glib-mkenums glib-genmarshal # source files gobject_query_SOURCES = gobject-query.c -glib_genmarshal_SOURCES = glib-genmarshal.c # link programs against libgobject progs_LDADD = ./libgobject-2.0.la $(libglib) -glib_genmarshal_LDADD = $(libglib) gobject_query_LDADD = $(progs_LDADD) # # auxillary files # EXTRA_DIST += \ - makefile.msc.in \ gobject.rc.in \ libgobject-gdb.py.in \ + glib-genmarshal.in \ glib-mkenums.in CLEANFILES += libgobject-gdb.py BUILT_EXTRA_DIST += \ - makefile.msc \ gobject.rc gobject-win32-res.o: gobject.rc diff --git a/gobject/Makefile.in b/gobject/Makefile.in index a680ca73b..8dcad6d0d 100644 --- a/gobject/Makefile.in +++ b/gobject/Makefile.in @@ -165,7 +165,7 @@ TESTS = $(am__EXEEXT_1) @ENABLE_DTRACE_TRUE@am__append_17 = gobject_probes.h @ENABLE_DTRACE_TRUE@am__append_18 = gobject_probes.lo @ENABLE_SYSTEMTAP_TRUE@am__append_19 = $(tapset_DATA) -bin_PROGRAMS = gobject-query$(EXEEXT) glib-genmarshal$(EXEEXT) +bin_PROGRAMS = gobject-query$(EXEEXT) subdir = gobject ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4macros/attributes.m4 \ @@ -187,7 +187,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(dist_gdb_DATA) \ $(libgobjectinclude_HEADERS) $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = glib-mkenums makefile.msc gobject.rc +CONFIG_CLEAN_FILES = glib-genmarshal glib-mkenums gobject.rc CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -254,9 +254,6 @@ am__EXEEXT_1 = @ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__EXEEXT_3 = $(am__EXEEXT_1) PROGRAMS = $(bin_PROGRAMS) $(installed_test_PROGRAMS) \ $(noinst_PROGRAMS) -am_glib_genmarshal_OBJECTS = glib-genmarshal.$(OBJEXT) -glib_genmarshal_OBJECTS = $(am_glib_genmarshal_OBJECTS) -glib_genmarshal_DEPENDENCIES = $(libglib) am_gobject_query_OBJECTS = gobject-query.$(OBJEXT) gobject_query_OBJECTS = $(am_gobject_query_OBJECTS) gobject_query_DEPENDENCIES = $(progs_LDADD) @@ -295,10 +292,8 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = -SOURCES = $(libgobject_2_0_la_SOURCES) $(glib_genmarshal_SOURCES) \ - $(gobject_query_SOURCES) -DIST_SOURCES = $(libgobject_2_0_la_SOURCES) $(glib_genmarshal_SOURCES) \ - $(gobject_query_SOURCES) +SOURCES = $(libgobject_2_0_la_SOURCES) $(gobject_query_SOURCES) +DIST_SOURCES = $(libgobject_2_0_la_SOURCES) $(gobject_query_SOURCES) RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ @@ -517,8 +512,8 @@ am__set_b = \ b='$*';; \ esac DIST_SUBDIRS = $(SUBDIRS) -am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/glib-mkenums.in \ - $(srcdir)/gobject.rc.in $(srcdir)/makefile.msc.in \ +am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/glib-genmarshal.in \ + $(srcdir)/glib-mkenums.in $(srcdir)/gobject.rc.in \ $(top_srcdir)/depcomp $(top_srcdir)/glib.mk \ $(top_srcdir)/test-driver \ $(top_srcdir)/win32/Makefile.msvcproj ChangeLog @@ -802,7 +797,7 @@ NULL = # initialize variables for unconditional += appending BUILT_SOURCES = $(am__append_16) -BUILT_EXTRA_DIST = makefile.msc gobject.rc +BUILT_EXTRA_DIST = gobject.rc CLEANFILES = *.log *.trs $(am__append_14) $(am__append_17) \ $(am__append_19) gobject-public-headers.txt $(gen_sources) \ libgobject-gdb.py @@ -814,8 +809,8 @@ MAINTAINERCLEANFILES = # EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ gobject.stp.in $(gobject_private_h_sources) \ - $(gobject_extra_sources) marshal-genstrings.pl makefile.msc.in \ - gobject.rc.in libgobject-gdb.py.in glib-mkenums.in + $(gobject_extra_sources) gobject.rc.in libgobject-gdb.py.in \ + glib-genmarshal.in glib-mkenums.in # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. @@ -987,10 +982,7 @@ tapsetdir = @ABS_TAPSET_DIR@ # non-header sources (headers should be specified in the above variables) # that don't serve as direct make target sources, i.e. they don't have # their own .lo rules and don't get publically installed -gobject_extra_sources = \ - gmarshal.list \ - gmarshal.strings - +gobject_extra_sources = # # setup GObject library sources and their dependancies @@ -1005,16 +997,21 @@ EXTRA_HEADERS = # setup autogeneration dependancies gen_sources = xgen-gmh xgen-gmc xgen-gms +# normal autogeneration rules +# all autogenerated files need to be generated in the srcdir, +# so old versions get remade and are not confused with newer +# versions in the build dir. thus a development setup requires +# srcdir to be writable, passing --disable-rebuilds to +# ../configure will supress all autogeneration rules. + # target platform: libgobjectinclude_HEADERS = $(gobject_target_headers) libgobject_2_0_la_SOURCES = $(gobject_target_sources) -bin_SCRIPTS = glib-mkenums +bin_SCRIPTS = glib-mkenums glib-genmarshal # source files gobject_query_SOURCES = gobject-query.c -glib_genmarshal_SOURCES = glib-genmarshal.c # link programs against libgobject progs_LDADD = ./libgobject-2.0.la $(libglib) -glib_genmarshal_LDADD = $(libglib) gobject_query_LDADD = $(progs_LDADD) # ------ MSVC Project File Generation ------ @@ -1078,9 +1075,9 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): -glib-mkenums: $(top_builddir)/config.status $(srcdir)/glib-mkenums.in +glib-genmarshal: $(top_builddir)/config.status $(srcdir)/glib-genmarshal.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -makefile.msc: $(top_builddir)/config.status $(srcdir)/makefile.msc.in +glib-mkenums: $(top_builddir)/config.status $(srcdir)/glib-mkenums.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ gobject.rc: $(top_builddir)/config.status $(srcdir)/gobject.rc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ @@ -1296,10 +1293,6 @@ clean-noinstPROGRAMS: echo " rm -f" $$list; \ rm -f $$list -glib-genmarshal$(EXEEXT): $(glib_genmarshal_OBJECTS) $(glib_genmarshal_DEPENDENCIES) $(EXTRA_glib_genmarshal_DEPENDENCIES) - @rm -f glib-genmarshal$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(glib_genmarshal_OBJECTS) $(glib_genmarshal_LDADD) $(LIBS) - gobject-query$(EXEEXT): $(gobject_query_OBJECTS) $(gobject_query_DEPENDENCIES) $(EXTRA_gobject_query_DEPENDENCIES) @rm -f gobject-query$(EXEEXT) $(AM_V_CCLD)$(LINK) $(gobject_query_OBJECTS) $(gobject_query_LDADD) $(LIBS) @@ -1380,7 +1373,6 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/glib-genmarshal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gobject-query.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgobject_2_0_la-gatomicarray.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgobject_2_0_la-gbinding.Plo@am__quote@ @@ -2218,21 +2210,6 @@ gobject-public-headers.txt: Makefile all-local: gobject-public-headers.txt -# normal autogeneration rules -# all autogenerated files need to be generated in the srcdir, -# so old versions get remade and are not confused with newer -# versions in the build dir. thus a development setup requires -# srcdir to be writable, passing --disable-rebuilds to -# ../configure will supress all autogeneration rules. - -gmarshal.strings: @REBUILD@ $(srcdir)/gmarshal.list - $(AM_V_GEN) grep '^[A-Z]' $(srcdir)/gmarshal.list \ - | $(SED) -e 's/^/"g_cclosure_marshal_/' -e 's/:/__/' -e 's/,/_/g' -e 's/$$/",/' > xgen-gms \ - && cp xgen-gms gmarshal.strings \ - && rm -f xgen-gms xgen-gms~ - -glib-genmarshal.o: gmarshal.strings - gobject-win32-res.o: gobject.rc $(AM_V_GEN) $(WINDRES) gobject.rc $@ diff --git a/gobject/glib-genmarshal.c b/gobject/glib-genmarshal.c deleted file mode 100644 index 3bc4a0f90..000000000 --- a/gobject/glib-genmarshal.c +++ /dev/null @@ -1,1136 +0,0 @@ -/* GLIB-GenMarshal - Marshaller generator for GObject library - * Copyright (C) 2000-2001 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, see <http://www.gnu.org/licenses/>. - */ - -#include "config.h" - -#include <stdlib.h> -#include <fcntl.h> -#include <string.h> -#include <errno.h> -#include <sys/types.h> -#include <sys/stat.h> - -#include <glib/gstdio.h> - -#undef G_LOG_DOMAIN -#define G_LOG_DOMAIN "GLib-Genmarshal" -#include <glib.h> -#include <glib/gprintf.h> - -#ifdef G_OS_UNIX -#include <unistd.h> -#endif -#ifdef G_OS_WIN32 -#include <io.h> -#endif - -/* --- defines --- */ -#define PRG_NAME "glib-genmarshal" -#define PKG_NAME "GLib" -#define PKG_HTTP_HOME "http://www.gtk.org" - - -/* --- typedefs & structures --- */ -typedef struct -{ - gchar *keyword; /* marhaller list keyword [MY_STRING] */ - const gchar *sig_name; /* signature name [STRING] */ - const gchar *ctype; /* C type name [gchar*] */ - const gchar *promoted_ctype; /* promoted C type name [gchar*] */ - const gchar *getter; /* value getter function [g_value_get_string] */ - const gchar *box; /* value box function [g_strdup] */ - const gchar *unbox; /* value unbox function [g_free] */ - gboolean box_ignores_static; /* Wether the box/unbox functions ignore the static_scope */ - gboolean box_takes_type; /* Wether the box/unbox functions take a type arg */ -} InArgument; -typedef struct -{ - gchar *keyword; /* marhaller list keyword [MY_STRING] */ - const gchar *sig_name; /* signature name [STRING] */ - const gchar *ctype; /* C type name [gchar*] */ - const gchar *setter; /* value setter function [g_value_set_string] */ -} OutArgument; -typedef struct -{ - gchar *ploc; - OutArgument *rarg; - GList *args; /* of type InArgument* */ -} Signature; - - -/* --- prototypes --- */ -static void parse_args (gint *argc_p, - gchar ***argv_p); -static void print_blurb (FILE *bout, - gboolean print_help); - - -/* --- variables --- */ -static const GScannerConfig scanner_config_template = -{ - ( - " \t\r" /* "\n" is statement delimiter */ - ) /* cset_skip_characters */, - ( - G_CSET_a_2_z - "_" - G_CSET_A_2_Z - ) /* cset_identifier_first */, - ( - G_CSET_a_2_z - "_0123456789" - G_CSET_A_2_Z - ) /* cset_identifier_nth */, - ( "#\n" ) /* cpair_comment_single */, - - FALSE /* case_sensitive */, - - TRUE /* skip_comment_multi */, - TRUE /* skip_comment_single */, - TRUE /* scan_comment_multi */, - TRUE /* scan_identifier */, - FALSE /* scan_identifier_1char */, - FALSE /* scan_identifier_NULL */, - TRUE /* scan_symbols */, - FALSE /* scan_binary */, - TRUE /* scan_octal */, - TRUE /* scan_float */, - TRUE /* scan_hex */, - FALSE /* scan_hex_dollar */, - TRUE /* scan_string_sq */, - TRUE /* scan_string_dq */, - TRUE /* numbers_2_int */, - FALSE /* int_2_float */, - FALSE /* identifier_2_string */, - TRUE /* char_2_token */, - FALSE /* symbol_2_token */, - FALSE /* scope_0_fallback */, -}; -static const char *std_marshaller_prefix = "g_cclosure_marshal"; -static const char *marshaller_prefix = "g_cclosure_user_marshal"; -static gchar *output_fn = NULL; -static gint output_fd = -1; -static gchar *output_tmpfn = NULL; -static GHashTable *marshallers = NULL; -static FILE *fout = NULL; -static gboolean gen_cheader = FALSE; -static gboolean gen_cbody = FALSE; -static gboolean gen_internal = FALSE; -static gboolean gen_valist = FALSE; -static gboolean skip_ploc = FALSE; -static gboolean std_includes = TRUE; -static gint exit_status = 0; - - -/* --- functions --- */ -static void -put_marshal_value_getters (void) -{ - fputs ("\n", fout); - fputs ("#ifdef G_ENABLE_DEBUG\n", fout); - fputs ("#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)\n", fout); - fputs ("#define g_marshal_value_peek_char(v) g_value_get_schar (v)\n", fout); - fputs ("#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)\n", fout); - fputs ("#define g_marshal_value_peek_int(v) g_value_get_int (v)\n", fout); - fputs ("#define g_marshal_value_peek_uint(v) g_value_get_uint (v)\n", fout); - fputs ("#define g_marshal_value_peek_long(v) g_value_get_long (v)\n", fout); - fputs ("#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)\n", fout); - fputs ("#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)\n", fout); - fputs ("#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)\n", fout); - fputs ("#define g_marshal_value_peek_enum(v) g_value_get_enum (v)\n", fout); - fputs ("#define g_marshal_value_peek_flags(v) g_value_get_flags (v)\n", fout); - fputs ("#define g_marshal_value_peek_float(v) g_value_get_float (v)\n", fout); - fputs ("#define g_marshal_value_peek_double(v) g_value_get_double (v)\n", fout); - fputs ("#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)\n", fout); - fputs ("#define g_marshal_value_peek_param(v) g_value_get_param (v)\n", fout); - fputs ("#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)\n", fout); - fputs ("#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)\n", fout); - fputs ("#define g_marshal_value_peek_object(v) g_value_get_object (v)\n", fout); - fputs ("#define g_marshal_value_peek_variant(v) g_value_get_variant (v)\n", fout); - fputs ("#else /* !G_ENABLE_DEBUG */\n", fout); - fputs ("/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.\n", fout); - fputs (" * Do not access GValues directly in your code. Instead, use the\n", fout); - fputs (" * g_value_get_*() functions\n", fout); - fputs (" */\n", fout); - fputs ("#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int\n", fout); - fputs ("#define g_marshal_value_peek_char(v) (v)->data[0].v_int\n", fout); - fputs ("#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint\n", fout); - fputs ("#define g_marshal_value_peek_int(v) (v)->data[0].v_int\n", fout); - fputs ("#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint\n", fout); - fputs ("#define g_marshal_value_peek_long(v) (v)->data[0].v_long\n", fout); - fputs ("#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong\n", fout); - fputs ("#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64\n", fout); - fputs ("#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64\n", fout); - fputs ("#define g_marshal_value_peek_enum(v) (v)->data[0].v_long\n", fout); - fputs ("#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong\n", fout); - fputs ("#define g_marshal_value_peek_float(v) (v)->data[0].v_float\n", fout); - fputs ("#define g_marshal_value_peek_double(v) (v)->data[0].v_double\n", fout); - fputs ("#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer\n", fout); - fputs ("#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer\n", fout); - fputs ("#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer\n", fout); - fputs ("#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer\n", fout); - fputs ("#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer\n", fout); - fputs ("#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer\n", fout); - fputs ("#endif /* !G_ENABLE_DEBUG */\n", fout); - fputs ("\n", fout); -} - -static gboolean -complete_in_arg (InArgument *iarg) -{ - static const InArgument args[] = { - /* keyword sig_name ctype promoted getter */ - { "VOID", "VOID", "void", "void", NULL, }, - { "BOOLEAN", "BOOLEAN", "gboolean", "gboolean", "g_marshal_value_peek_boolean", }, - { "CHAR", "CHAR", "gchar", "gint", "g_marshal_value_peek_char", }, - { "UCHAR", "UCHAR", "guchar", "guint", "g_marshal_value_peek_uchar", }, - { "INT", "INT", "gint", "gint", "g_marshal_value_peek_int", }, - { "UINT", "UINT", "guint", "guint", "g_marshal_value_peek_uint", }, - { "LONG", "LONG", "glong", "glong", "g_marshal_value_peek_long", }, - { "ULONG", "ULONG", "gulong", "gulong", "g_marshal_value_peek_ulong", }, - { "INT64", "INT64", "gint64", "gint64", "g_marshal_value_peek_int64", }, - { "UINT64", "UINT64", "guint64", "guint64", "g_marshal_value_peek_uint64", }, - { "ENUM", "ENUM", "gint", "gint", "g_marshal_value_peek_enum", }, - { "FLAGS", "FLAGS", "guint", "guint", "g_marshal_value_peek_flags", }, - { "FLOAT", "FLOAT", "gfloat", "gdouble", "g_marshal_value_peek_float", }, - { "DOUBLE", "DOUBLE", "gdouble", "gdouble", "g_marshal_value_peek_double", }, - { "STRING", "STRING", "gpointer", "gpointer", "g_marshal_value_peek_string", "g_strdup", "g_free"}, - { "PARAM", "PARAM", "gpointer", "gpointer", "g_marshal_value_peek_param", "g_param_spec_ref", "g_param_spec_unref"}, - { "BOXED", "BOXED", "gpointer", "gpointer", "g_marshal_value_peek_boxed", "g_boxed_copy", "g_boxed_free", FALSE, TRUE}, - { "POINTER", "POINTER", "gpointer", "gpointer", "g_marshal_value_peek_pointer", }, - { "OBJECT", "OBJECT", "gpointer", "gpointer", "g_marshal_value_peek_object", "g_object_ref", "g_object_unref", TRUE}, - { "VARIANT", "VARIANT", "gpointer", "gpointer", "g_marshal_value_peek_variant", "g_variant_ref_sink", "g_variant_unref"}, - /* deprecated: */ - { "NONE", "VOID", "void", "void", NULL, }, - { "BOOL", "BOOLEAN", "gboolean", "gboolean", "g_marshal_value_peek_boolean", }, - }; - guint i; - - g_return_val_if_fail (iarg != NULL, FALSE); - - for (i = 0; i < G_N_ELEMENTS (args); i++) - if (strcmp (args[i].keyword, iarg->keyword) == 0) - { - iarg->sig_name = args[i].sig_name; - iarg->ctype = args[i].ctype; - iarg->promoted_ctype = args[i].promoted_ctype; - iarg->getter = args[i].getter; - iarg->box = args[i].box; - iarg->unbox = args[i].unbox; - iarg->box_ignores_static = args[i].box_ignores_static; - iarg->box_takes_type = args[i].box_takes_type; - - return TRUE; - } - return FALSE; -} - -static gboolean -complete_out_arg (OutArgument *oarg) -{ - static const OutArgument args[] = { - /* keyword sig_name ctype setter */ - { "VOID", "VOID", "void", NULL, }, - { "BOOLEAN", "BOOLEAN", "gboolean", "g_value_set_boolean", }, - { "CHAR", "CHAR", "gchar", "g_value_set_char", }, - { "UCHAR", "UCHAR", "guchar", "g_value_set_uchar", }, - { "INT", "INT", "gint", "g_value_set_int", }, - { "UINT", "UINT", "guint", "g_value_set_uint", }, - { "LONG", "LONG", "glong", "g_value_set_long", }, - { "ULONG", "ULONG", "gulong", "g_value_set_ulong", }, - { "INT64", "INT64", "gint64", "g_value_set_int64", }, - { "UINT64", "UINT64", "guint64", "g_value_set_uint64", }, - { "ENUM", "ENUM", "gint", "g_value_set_enum", }, - { "FLAGS", "FLAGS", "guint", "g_value_set_flags", }, - { "FLOAT", "FLOAT", "gfloat", "g_value_set_float", }, - { "DOUBLE", "DOUBLE", "gdouble", "g_value_set_double", }, - { "STRING", "STRING", "gchar*", "g_value_take_string", }, - { "PARAM", "PARAM", "GParamSpec*", "g_value_take_param", }, - { "BOXED", "BOXED", "gpointer", "g_value_take_boxed", }, - { "POINTER", "POINTER", "gpointer", "g_value_set_pointer", }, - { "OBJECT", "OBJECT", "GObject*", "g_value_take_object", }, - { "VARIANT", "VARIANT", "GVariant*", "g_value_take_variant", }, - /* deprecated: */ - { "NONE", "VOID", "void", NULL, }, - { "BOOL", "BOOLEAN", "gboolean", "g_value_set_boolean", }, - }; - guint i; - - g_return_val_if_fail (oarg != NULL, FALSE); - - for (i = 0; i < G_N_ELEMENTS (args); i++) - if (strcmp (args[i].keyword, oarg->keyword) == 0) - { - oarg->sig_name = args[i].sig_name; - oarg->ctype = args[i].ctype; - oarg->setter = args[i].setter; - - return TRUE; - } - return FALSE; -} - -static const gchar* -pad (const gchar *string) -{ -#define PAD_LENGTH 12 - static gchar *buffer = NULL; - gint i; - - g_return_val_if_fail (string != NULL, NULL); - - if (!buffer) - buffer = g_new (gchar, PAD_LENGTH + 1); - - /* paranoid check */ - if (strlen (string) >= PAD_LENGTH) - { - g_free (buffer); - buffer = g_strdup_printf ("%s ", string); - g_warning ("overfull string (%u bytes) for padspace", - (guint) strlen (string)); - exit_status |= 2; - - return buffer; - } - - for (i = 0; i < PAD_LENGTH; i++) - { - gboolean done = *string == 0; - - buffer[i] = done ? ' ' : *string++; - } - buffer[i] = 0; - - return buffer; -} - -static const gchar* -indent (guint n_spaces) -{ - static gchar *buffer = NULL; - static guint blength = 0; - - if (blength <= n_spaces) - { - blength = n_spaces + 1; - g_free (buffer); - buffer = g_new (gchar, blength); - } - memset (buffer, ' ', n_spaces); - buffer[n_spaces] = 0; - - return buffer; -} - -static void -generate_marshal (const gchar *signame, - Signature *sig) -{ - guint ind, a; - GList *node; - gchar *tmp = g_strconcat (marshaller_prefix, "_", signame, NULL); - gboolean have_std_marshaller = FALSE; - - /* here we have to make sure a marshaller named <marshaller_prefix>_<signame> - * exists. we might have put it out already, can revert to a standard - * marshaller provided by glib, or need to generate one. - */ - - if (g_hash_table_lookup (marshallers, tmp)) - { - /* done, marshaller already generated */ - g_free (tmp); - return; - } - else - { - /* need to alias/generate marshaller, register name */ - g_hash_table_insert (marshallers, tmp, tmp); - } - - /* can we revert to a standard marshaller? */ - if (std_includes) - { - tmp = g_strconcat (std_marshaller_prefix, "_", signame, NULL); - have_std_marshaller = g_hash_table_lookup (marshallers, tmp) != NULL; - g_free (tmp); - } - - /* GValue marshaller */ - if (gen_cheader && have_std_marshaller) - { - g_fprintf (fout, "#define %s_%s\t%s_%s\n", marshaller_prefix, signame, std_marshaller_prefix, signame); - } - - /* We emit the prototype in both the header and the source, to pass - * without warnings when building with -Wmissing-prototypes - */ - if (!have_std_marshaller) - { - ind = g_fprintf (fout, gen_internal ? "G_GNUC_INTERNAL " : "extern "); - ind += g_fprintf (fout, "void "); - ind += g_fprintf (fout, "%s_%s (", marshaller_prefix, signame); - g_fprintf (fout, "GClosure *closure,\n"); - g_fprintf (fout, "%sGValue *return_value,\n", indent (ind)); - g_fprintf (fout, "%sguint n_param_values,\n", indent (ind)); - g_fprintf (fout, "%sconst GValue *param_values,\n", indent (ind)); - g_fprintf (fout, "%sgpointer invocation_hint,\n", indent (ind)); - g_fprintf (fout, "%sgpointer marshal_data);\n", - indent (ind)); - } - - if (gen_cbody && !have_std_marshaller) - { - /* cfile marshal header */ - g_fprintf (fout, "void\n"); - ind = g_fprintf (fout, "%s_%s (", marshaller_prefix, signame); - g_fprintf (fout, "GClosure *closure,\n"); - g_fprintf (fout, "%sGValue *return_value%s,\n", indent (ind), - sig->rarg->setter ? "" : " G_GNUC_UNUSED"); - g_fprintf (fout, "%sguint n_param_values,\n", indent (ind)); - g_fprintf (fout, "%sconst GValue *param_values,\n", indent (ind)); - g_fprintf (fout, "%sgpointer invocation_hint G_GNUC_UNUSED,\n", indent (ind)); - g_fprintf (fout, "%sgpointer marshal_data)\n", indent (ind)); - g_fprintf (fout, "{\n"); - - /* cfile GMarshalFunc typedef */ - ind = g_fprintf (fout, " typedef %s (*GMarshalFunc_%s) (", sig->rarg->ctype, signame); - g_fprintf (fout, "%s data1,\n", pad ("gpointer")); - for (a = 1, node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - g_fprintf (fout, "%s%s arg_%d,\n", indent (ind), pad (iarg->ctype), a++); - } - g_fprintf (fout, "%s%s data2);\n", indent (ind), pad ("gpointer")); - - /* cfile marshal variables */ - g_fprintf (fout, " GMarshalFunc_%s callback;\n", signame); - g_fprintf (fout, " GCClosure *cc = (GCClosure*) closure;\n"); - g_fprintf (fout, " gpointer data1, data2;\n"); - if (sig->rarg->setter) - g_fprintf (fout, " %s v_return;\n", sig->rarg->ctype); - - if (sig->args || sig->rarg->setter) - { - g_fprintf (fout, "\n"); - - if (sig->rarg->setter) - g_fprintf (fout, " g_return_if_fail (return_value != NULL);\n"); - if (sig->args) - { - for (a = 0, node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - a++; - } - g_fprintf (fout, " g_return_if_fail (n_param_values == %u);\n", 1 + a); - } - } - - /* cfile marshal data1, data2 and callback setup */ - g_fprintf (fout, "\n"); - g_fprintf (fout, " if (G_CCLOSURE_SWAP_DATA (closure))\n {\n"); - g_fprintf (fout, " data1 = closure->data;\n"); - g_fprintf (fout, " data2 = g_value_peek_pointer (param_values + 0);\n"); - g_fprintf (fout, " }\n else\n {\n"); - g_fprintf (fout, " data1 = g_value_peek_pointer (param_values + 0);\n"); - g_fprintf (fout, " data2 = closure->data;\n"); - g_fprintf (fout, " }\n"); - g_fprintf (fout, " callback = (GMarshalFunc_%s) (marshal_data ? marshal_data : cc->callback);\n", signame); - - /* cfile marshal callback action */ - g_fprintf (fout, "\n"); - ind = g_fprintf (fout, " %s callback (", sig->rarg->setter ? " v_return =" : ""); - g_fprintf (fout, "data1,\n"); - for (a = 1, node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - g_fprintf (fout, "%s%s (param_values + %d),\n", indent (ind), iarg->getter, a++); - } - g_fprintf (fout, "%sdata2);\n", indent (ind)); - - /* cfile marshal return value storage */ - if (sig->rarg->setter) - { - g_fprintf (fout, "\n"); - g_fprintf (fout, " %s (return_value, v_return);\n", sig->rarg->setter); - } - - /* cfile marshal footer */ - g_fprintf (fout, "}\n"); - } - - /* vararg marshaller */ - if (gen_cheader && gen_valist && have_std_marshaller) - { - g_fprintf (fout, "#define %s_%sv\t%s_%sv\n", marshaller_prefix, signame, std_marshaller_prefix, signame); - } - - /* Like above, we generate the prototype for both the header and source */ - if (gen_valist && !have_std_marshaller) - { - ind = g_fprintf (fout, gen_internal ? "G_GNUC_INTERNAL " : "extern "); - ind += g_fprintf (fout, "void "); - ind += g_fprintf (fout, "%s_%sv (", marshaller_prefix, signame); - g_fprintf (fout, "GClosure *closure,\n"); - g_fprintf (fout, "%sGValue *return_value,\n", indent (ind)); - g_fprintf (fout, "%sgpointer instance,\n", indent (ind)); - g_fprintf (fout, "%sva_list args,\n", indent (ind)); - g_fprintf (fout, "%sgpointer marshal_data,\n", indent (ind)); - g_fprintf (fout, "%sint n_params,\n", indent (ind)); - g_fprintf (fout, "%sGType *param_types);\n", indent (ind)); - } - - if (gen_cbody && gen_valist && !have_std_marshaller) - { - gint i; - gboolean has_arg; - - g_fprintf (fout, "void\n"); - ind = g_fprintf (fout, "%s_%sv (", marshaller_prefix, signame); - g_fprintf (fout, "GClosure *closure,\n"); - g_fprintf (fout, "%sGValue *return_value,\n", indent (ind)); - g_fprintf (fout, "%sgpointer instance,\n", indent (ind)); - g_fprintf (fout, "%sva_list args,\n", indent (ind)); - g_fprintf (fout, "%sgpointer marshal_data,\n", indent (ind)); - g_fprintf (fout, "%sint n_params,\n", indent (ind)); - g_fprintf (fout, "%sGType *param_types)\n", indent (ind)); - g_fprintf (fout, "{\n"); - - ind = g_fprintf (fout, " typedef %s (*GMarshalFunc_%s) (", sig->rarg->ctype, signame); - g_fprintf (fout, "%s instance", pad ("gpointer")); - for (a = 0, node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - g_fprintf (fout, ",\n%s%s arg_%d", indent (ind), pad (iarg->ctype), a++); - } - g_fprintf (fout, ",\n%s%s data);\n", indent (ind), pad ("gpointer")); - g_fprintf (fout, " GCClosure *cc = (GCClosure*) closure;\n"); - g_fprintf (fout, " gpointer data1, data2;\n"); - g_fprintf (fout, " GMarshalFunc_%s callback;\n", signame); - has_arg = FALSE; - - i = 0; - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - { - g_fprintf (fout, " %s arg%i;\n", iarg->ctype, i++); - has_arg = TRUE; - } - } - if (has_arg) - g_fprintf (fout, " va_list args_copy;\n"); - - if (sig->rarg->setter) - g_fprintf (fout, " %s v_return;\n", sig->rarg->ctype); - - if (sig->rarg->setter) - { - g_fprintf (fout, "\n"); - g_fprintf (fout, " g_return_if_fail (return_value != NULL);\n"); - } - - /* cfile marshal data1, data2 and callback setup */ - if (has_arg) - { - g_fprintf (fout, "\n"); - g_fprintf (fout, " G_VA_COPY (args_copy, args);\n"); - i = 0; - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - { - g_fprintf (fout, " arg%i = (%s) va_arg (args_copy, %s);\n", - i, iarg->ctype, iarg->promoted_ctype); - - if (iarg->box != NULL) - { - g_fprintf (fout, " if ("); - if (!iarg->box_ignores_static) - g_fprintf (fout, "(param_types[%i] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && ", i); - g_fprintf (fout, "arg%i != NULL)\n ", i); - if (iarg->box_takes_type) - g_fprintf (fout, - " arg%i = %s (param_types[%i] & ~G_SIGNAL_TYPE_STATIC_SCOPE, arg%i);\n", - i, iarg->box, i, i); - else - g_fprintf (fout, - " arg%i = %s (arg%i);\n", - i, iarg->box, i); - } - } - i++; - } - g_fprintf (fout, " va_end (args_copy);\n"); - } - - g_fprintf (fout, "\n"); - /* cfile marshal data1, data2 and callback setup */ - g_fprintf (fout, " if (G_CCLOSURE_SWAP_DATA (closure))\n {\n"); - g_fprintf (fout, " data1 = closure->data;\n"); - g_fprintf (fout, " data2 = instance;\n"); - g_fprintf (fout, " }\n else\n {\n"); - g_fprintf (fout, " data1 = instance;\n"); - g_fprintf (fout, " data2 = closure->data;\n"); - g_fprintf (fout, " }\n"); - g_fprintf (fout, " callback = (GMarshalFunc_%s) (marshal_data ? marshal_data : cc->callback);\n", signame); - - /* cfile marshal callback action */ - g_fprintf (fout, "\n"); - ind = g_fprintf (fout, " %s callback (", sig->rarg->setter ? " v_return =" : ""); - g_fprintf (fout, "data1"); - - i = 0; - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->getter) - g_fprintf (fout, ",\n%sarg%i", indent (ind), i++); - } - g_fprintf (fout, ",\n%sdata2);\n", indent (ind)); - - i = 0; - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (iarg->unbox) - { - g_fprintf (fout, " if ("); - if (!iarg->box_ignores_static) - g_fprintf (fout, "(param_types[%i] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && ", i); - g_fprintf (fout, "arg%i != NULL)\n ", i); - if (iarg->box_takes_type) - g_fprintf (fout, - " %s (param_types[%i] & ~G_SIGNAL_TYPE_STATIC_SCOPE, arg%i);\n", - iarg->unbox, i, i); - else - g_fprintf (fout, - " %s (arg%i);\n", - iarg->unbox, i); - } - i++; - } - - /* cfile marshal return value storage */ - if (sig->rarg->setter) - { - g_fprintf (fout, "\n"); - g_fprintf (fout, " %s (return_value, v_return);\n", sig->rarg->setter); - } - - g_fprintf (fout, "}\n\n"); - } -} - -static void -process_signature (Signature *sig) -{ - gchar *pname, *sname, *tmp; - GList *node; - - /* lookup and complete info on arguments */ - if (!complete_out_arg (sig->rarg)) - { - g_warning ("unknown type: %s", sig->rarg->keyword); - exit_status |= 1; - return; - } - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - if (!complete_in_arg (iarg)) - { - g_warning ("unknown type: %s", iarg->keyword); - exit_status |= 1; - return; - } - } - - /* construct requested marshaller name and technical marshaller name */ - pname = g_strconcat (sig->rarg->keyword, "_", NULL); - sname = g_strconcat (sig->rarg->sig_name, "_", NULL); - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - gchar *tmp; - - tmp = sname; - sname = g_strconcat (tmp, "_", iarg->sig_name, NULL); - g_free (tmp); - tmp = pname; - pname = g_strconcat (tmp, "_", iarg->keyword, NULL); - g_free (tmp); - } - - /* introductionary comment */ - g_fprintf (fout, "\n/* %s", sig->rarg->keyword); - for (node = sig->args; node; node = node->next) - { - InArgument *iarg = node->data; - - g_fprintf (fout, "%c%s", node->prev ? ',' : ':', iarg->keyword); - } - if (!skip_ploc) - g_fprintf (fout, " (%s)", sig->ploc); - g_fprintf (fout, " */\n"); - - /* ensure technical marshaller exists (<marshaller_prefix>_<sname>) */ - generate_marshal (sname, sig); - - /* put out marshaller alias for requested name if required (<marshaller_prefix>_<pname>) */ - tmp = g_strconcat (marshaller_prefix, "_", pname, NULL); - if (gen_cheader && !g_hash_table_lookup (marshallers, tmp)) - { - g_fprintf (fout, "#define %s_%s\t%s_%s\n", marshaller_prefix, pname, marshaller_prefix, sname); - - g_hash_table_insert (marshallers, tmp, tmp); - } - else - g_free (tmp); - - g_free (pname); - g_free (sname); -} - -static InArgument* -new_in_arg (const gchar *pname) -{ - InArgument *iarg = g_new0 (InArgument, 1); - - iarg->keyword = g_strdup (pname); - - return iarg; -} - -static OutArgument* -new_out_arg (const gchar *pname) -{ - OutArgument *oarg = g_new0 (OutArgument, 1); - - oarg->keyword = g_strdup (pname); - - return oarg; -} - -static guint -parse_line (GScanner *scanner, - Signature *sig) -{ - /* parse identifier for return value */ - if (g_scanner_get_next_token (scanner) != G_TOKEN_IDENTIFIER) - return G_TOKEN_IDENTIFIER; - sig->rarg = new_out_arg (scanner->value.v_identifier); - - /* keep a note on the location */ - sig->ploc = g_strdup_printf ("%s:%u", scanner->input_name, scanner->line); - - /* expect ':' */ - if (g_scanner_get_next_token (scanner) != ':') - return ':'; - - /* parse first argument */ - if (g_scanner_get_next_token (scanner) != G_TOKEN_IDENTIFIER) - return G_TOKEN_IDENTIFIER; - sig->args = g_list_append (sig->args, new_in_arg (scanner->value.v_identifier)); - - /* parse rest of argument list */ - while (g_scanner_peek_next_token (scanner) == ',') - { - /* eat comma */ - g_scanner_get_next_token (scanner); - - /* parse arg identifier */ - if (g_scanner_get_next_token (scanner) != G_TOKEN_IDENTIFIER) - return G_TOKEN_IDENTIFIER; - sig->args = g_list_append (sig->args, new_in_arg (scanner->value.v_identifier)); - } - - /* expect end of line, done */ - if (g_scanner_get_next_token (scanner) != '\n') - return '\n'; - - /* success */ - return G_TOKEN_NONE; -} - -static gboolean -string_key_destroy (gpointer key, - gpointer value, - gpointer user_data) -{ - g_free (key); - - return TRUE; -} - -int -main (int argc, - char *argv[]) -{ - const gchar *gobject_marshallers[] = { -#include "gmarshal.strings" - }; - GScanner *scanner; - GSList *slist, *files = NULL; - gint i; - - /* parse args and do fast exits */ - parse_args (&argc, &argv); - - /* list input files */ - for (i = 1; i < argc; i++) - files = g_slist_prepend (files, argv[i]); - if (files) - files = g_slist_reverse (files); - else - files = g_slist_prepend (files, "/dev/stdin"); - - /* setup auxiliary structs */ - scanner = g_scanner_new (&scanner_config_template); - marshallers = g_hash_table_new (g_str_hash, g_str_equal); - - if (output_fn) - { - output_tmpfn = g_strconcat (output_fn, ".XXXXXX", NULL); - if ((output_fd = g_mkstemp (output_tmpfn)) == -1) - { - g_printerr ("Failed to create temp file \"%s\": %s\n", output_tmpfn, g_strerror (errno)); - return EXIT_FAILURE; - } - - fout = fdopen (output_fd, "wb"); - g_assert (fout != NULL); - } - else - fout = stdout; - - /* add standard marshallers of the GObject library */ - if (std_includes) - for (i = 0; i < G_N_ELEMENTS (gobject_marshallers); i++) - { - gchar *tmp = g_strdup (gobject_marshallers[i]); - - g_hash_table_insert (marshallers, tmp, tmp); - } - - /* put out initial heading */ - g_fprintf (fout, "\n"); - - if (gen_cheader && std_includes) - { - g_fprintf (fout, "#ifndef __%s_MARSHAL_H__\n", marshaller_prefix); - g_fprintf (fout, "#define __%s_MARSHAL_H__\n\n", marshaller_prefix); - } - - if ((gen_cheader || gen_cbody) && std_includes) - g_fprintf (fout, "#include\t<glib-object.h>\n\n"); - - if (gen_cheader) - g_fprintf (fout, "G_BEGIN_DECLS\n"); - - /* generate necessary preprocessor directives */ - if (gen_cbody) - put_marshal_value_getters (); - - /* process input files */ - for (slist = files; slist; slist = slist->next) - { - gchar *file = slist->data; - gint fd; - - if (strcmp (file, "/dev/stdin") == 0) - /* Mostly for Win32. This is equivalent to opening /dev/stdin */ - fd = dup (0); - else - fd = g_open (file, O_RDONLY, 0); - - if (fd < 0) - { - g_warning ("failed to open \"%s\": %s", file, g_strerror (errno)); - exit_status |= 1; - continue; - } - - /* set file name for error reports */ - scanner->input_name = file; - - /* parse & process file */ - g_scanner_input_file (scanner, fd); - - /* scanning loop, we parse the input until its end is reached, - * or our sub routine came across invalid syntax - */ - do - { - guint expected_token = G_TOKEN_NONE; - - switch ((guint) g_scanner_peek_next_token (scanner)) - { - case '\n': - /* eat newline and restart */ - g_scanner_get_next_token (scanner); - continue; - case G_TOKEN_EOF: - /* done */ - break; - default: - /* parse and process signatures */ - { - Signature signature = { NULL, NULL, NULL }; - GList *node; - - expected_token = parse_line (scanner, &signature); - - /* once we got a valid signature, process it */ - if (expected_token == G_TOKEN_NONE) - process_signature (&signature); - - /* clean up signature contents */ - g_free (signature.ploc); - if (signature.rarg) - g_free (signature.rarg->keyword); - g_free (signature.rarg); - for (node = signature.args; node; node = node->next) - { - InArgument *iarg = node->data; - - g_free (iarg->keyword); - g_free (iarg); - } - g_list_free (signature.args); - } - break; - } - - /* bail out on errors */ - if (expected_token != G_TOKEN_NONE) - { - g_scanner_unexp_token (scanner, expected_token, "type name", NULL, NULL, NULL, TRUE); - exit_status |= 1; - break; - } - - g_scanner_peek_next_token (scanner); - } - while (scanner->next_token != G_TOKEN_EOF); - - close (fd); - } - - /* put out trailer */ - if (gen_cheader) - { - g_fprintf (fout, "\nG_END_DECLS\n"); - - if (std_includes) - g_fprintf (fout, "\n#endif /* __%s_MARSHAL_H__ */\n", marshaller_prefix); - } - g_fprintf (fout, "\n"); - - /* clean up */ - g_slist_free (files); - g_scanner_destroy (scanner); - g_hash_table_foreach_remove (marshallers, string_key_destroy, NULL); - g_hash_table_destroy (marshallers); - - if (output_fn) - { - fclose (fout); - if (g_rename (output_tmpfn, output_fn) != 0) - { - g_printerr ("Failed to rename \"%s\" to \"%s\": %s\n", output_tmpfn, output_fn, g_strerror (errno)); - g_unlink (output_tmpfn); - exit_status = EXIT_FAILURE; - } - - g_free (output_tmpfn); - } - - return exit_status; -} - -static void -parse_args (gint *argc_p, - gchar ***argv_p) -{ - guint argc = *argc_p; - gchar **argv = *argv_p; - guint i, e; - - for (i = 1; i < argc; i++) - { - if (strcmp ("--header", argv[i]) == 0) - { - gen_cheader = TRUE; - argv[i] = NULL; - } - else if (strcmp ("--body", argv[i]) == 0) - { - gen_cbody = TRUE; - argv[i] = NULL; - } - else if (strcmp ("--skip-source", argv[i]) == 0) - { - skip_ploc = TRUE; - argv[i] = NULL; - } - else if (strcmp ("--nostdinc", argv[i]) == 0) - { - std_includes = FALSE; - argv[i] = NULL; - } - else if (strcmp ("--stdinc", argv[i]) == 0) - { - std_includes = TRUE; - argv[i] = NULL; - } - else if (strcmp ("--internal", argv[i]) == 0) - { - gen_internal = TRUE; - argv[i] = NULL; - } - else if (strcmp ("--valist-marshallers", argv[i]) == 0) - { - gen_valist = TRUE; - argv[i] = NULL; - } - else if ((strcmp ("--prefix", argv[i]) == 0) || - (strncmp ("--prefix=", argv[i], 9) == 0)) - { - gchar *equal = argv[i] + strlen ("--prefix"); - - if (*equal == '=') - marshaller_prefix = equal + 1; - else if (i + 1 < argc) - { - marshaller_prefix = argv[i + 1]; - argv[i] = NULL; - i += 1; - } - argv[i] = NULL; - } - else if ((strcmp ("--output", argv[i]) == 0) || - (strncmp ("--output=", argv[i], 9) == 0)) - { - gchar *equal = argv[i] + strlen ("--output"); - - if (*equal == '=') - output_fn = equal + 1; - else if (i + 1 < argc) - { - output_fn = argv[i + 1]; - argv[i] = NULL; - i += 1; - } - argv[i] = NULL; - } - else if (strcmp ("-h", argv[i]) == 0 || - strcmp ("-?", argv[i]) == 0 || - strcmp ("--help", argv[i]) == 0) - { - print_blurb (stderr, TRUE); - argv[i] = NULL; - exit (0); - } - else if (strcmp ("-v", argv[i]) == 0 || - strcmp ("--version", argv[i]) == 0) - { - print_blurb (stderr, FALSE); - argv[i] = NULL; - exit (0); - } - else if (strcmp (argv[i], "--g-fatal-warnings") == 0) - { - GLogLevelFlags fatal_mask; - - fatal_mask = g_log_set_always_fatal (G_LOG_FATAL_MASK); - fatal_mask |= G_LOG_LEVEL_WARNING | G_LOG_LEVEL_CRITICAL; - g_log_set_always_fatal (fatal_mask); - - argv[i] = NULL; - } - } - - e = 0; - for (i = 1; i < argc; i++) - { - if (e) - { - if (argv[i]) - { - argv[e++] = argv[i]; - argv[i] = NULL; - } - } - else if (!argv[i]) - e = i; - } - if (e) - *argc_p = e; -} - -static void -print_blurb (FILE *bout, - gboolean print_help) -{ - if (!print_help) - { - g_fprintf (bout, "%s version ", PRG_NAME); - g_fprintf (bout, "%u.%u.%u", GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION, GLIB_MICRO_VERSION); - g_fprintf (bout, "\n"); - g_fprintf (bout, "%s comes with ABSOLUTELY NO WARRANTY.\n", PRG_NAME); - g_fprintf (bout, "You may redistribute copies of %s under the terms of\n", PRG_NAME); - g_fprintf (bout, "the GNU General Public License which can be found in the\n"); - g_fprintf (bout, "%s source package. Sources, examples and contact\n", PKG_NAME); - g_fprintf (bout, "information are available at %s\n", PKG_HTTP_HOME); - } - else - { - g_fprintf (bout, "Usage:\n"); - g_fprintf (bout, " %s [OPTION...] [FILES...]\n\n", PRG_NAME); - g_fprintf (bout, "Help Options:\n"); - g_fprintf (bout, " -h, --help Show this help message\n\n"); - g_fprintf (bout, "Utility Options:\n"); - g_fprintf (bout, " --header Generate C headers\n"); - g_fprintf (bout, " --body Generate C code\n"); - g_fprintf (bout, " --prefix=STRING Specify marshaller prefix\n"); - g_fprintf (bout, " --output=FILE Write output into the specified file\n"); - g_fprintf (bout, " --skip-source Skip source location comments\n"); - g_fprintf (bout, " --stdinc, --nostdinc Include/use standard marshallers\n"); - g_fprintf (bout, " --internal Mark generated functions as internal\n"); - g_fprintf (bout, " --valist-marshallers Generate va_list marshallers\n"); - g_fprintf (bout, " -v, --version Print version informations\n"); - g_fprintf (bout, " --g-fatal-warnings Make warnings fatal (abort)\n"); - } -} diff --git a/gobject/glib-genmarshal.in b/gobject/glib-genmarshal.in new file mode 100755 index 000000000..907957b4c --- /dev/null +++ b/gobject/glib-genmarshal.in @@ -0,0 +1,1049 @@ +#!/usr/bin/env @PYTHON@ + +# pylint: disable=too-many-lines, missing-docstring, invalid-name + +# This file is part of GLib +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, see <http://www.gnu.org/licenses/>. + +import argparse +import os +import re +import sys + +VERSION_STR = '''glib-genmarshal version @VERSION@ +glib-genmarshal comes with ABSOLUTELY NO WARRANTY. +You may redistribute copies of glib-genmarshal under the terms of +the GNU General Public License which can be found in the +GLib source package. Sources, examples and contact +information are available at http://www.gtk.org''' + +GETTERS_STR = '''#ifdef G_ENABLE_DEBUG +#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) +#define g_marshal_value_peek_char(v) g_value_get_schar (v) +#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) +#define g_marshal_value_peek_int(v) g_value_get_int (v) +#define g_marshal_value_peek_uint(v) g_value_get_uint (v) +#define g_marshal_value_peek_long(v) g_value_get_long (v) +#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) +#define g_marshal_value_peek_int64(v) g_value_get_int64 (v) +#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) +#define g_marshal_value_peek_enum(v) g_value_get_enum (v) +#define g_marshal_value_peek_flags(v) g_value_get_flags (v) +#define g_marshal_value_peek_float(v) g_value_get_float (v) +#define g_marshal_value_peek_double(v) g_value_get_double (v) +#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) +#define g_marshal_value_peek_param(v) g_value_get_param (v) +#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) +#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) +#define g_marshal_value_peek_object(v) g_value_get_object (v) +#define g_marshal_value_peek_variant(v) g_value_get_variant (v) +#else /* !G_ENABLE_DEBUG */ +/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. + * Do not access GValues directly in your code. Instead, use the + * g_value_get_*() functions + */ +#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int +#define g_marshal_value_peek_char(v) (v)->data[0].v_int +#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint +#define g_marshal_value_peek_int(v) (v)->data[0].v_int +#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint +#define g_marshal_value_peek_long(v) (v)->data[0].v_long +#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 +#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 +#define g_marshal_value_peek_enum(v) (v)->data[0].v_long +#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_float(v) (v)->data[0].v_float +#define g_marshal_value_peek_double(v) (v)->data[0].v_double +#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer +#endif /* !G_ENABLE_DEBUG */''' + +DEPRECATED_MSG_STR = 'The token "{}" is deprecated; use "{}" instead' + +VA_ARG_STR = \ + ' arg{:d} = ({:s}) va_arg (args_copy, {:s});' +STATIC_CHECK_STR = \ + '(param_types[{:d}] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && ' +BOX_TYPED_STR = \ + ' arg{idx:d} = {box_func} (param_types[{idx:d}] & ~G_SIGNAL_TYPE_STATIC_SCOPE, arg{idx:d});' +BOX_UNTYPED_STR = \ + ' arg{idx:d} = {box_func} (arg{idx:d});' +UNBOX_TYPED_STR = \ + ' {unbox_func} (param_types[{idx:d}] & ~G_SIGNAL_TYPE_STATIC_SCOPE, arg{idx:d});' +UNBOX_UNTYPED_STR = \ + ' {unbox_func} (arg{idx:d});' + +STD_PREFIX = 'g_cclosure_marshal' + +# These are part of our ABI; keep this in sync with gmarshal.h +GOBJECT_MARSHALLERS = { + 'g_cclosure_marshal_VOID__VOID', + 'g_cclosure_marshal_VOID__BOOLEAN', + 'g_cclosure_marshal_VOID__CHAR', + 'g_cclosure_marshal_VOID__UCHAR', + 'g_cclosure_marshal_VOID__INT', + 'g_cclosure_marshal_VOID__UINT', + 'g_cclosure_marshal_VOID__LONG', + 'g_cclosure_marshal_VOID__ULONG', + 'g_cclosure_marshal_VOID__ENUM', + 'g_cclosure_marshal_VOID__FLAGS', + 'g_cclosure_marshal_VOID__FLOAT', + 'g_cclosure_marshal_VOID__DOUBLE', + 'g_cclosure_marshal_VOID__STRING', + 'g_cclosure_marshal_VOID__PARAM', + 'g_cclosure_marshal_VOID__BOXED', + 'g_cclosure_marshal_VOID__POINTER', + 'g_cclosure_marshal_VOID__OBJECT', + 'g_cclosure_marshal_VOID__VARIANT', + 'g_cclosure_marshal_VOID__UINT_POINTER', + 'g_cclosure_marshal_BOOLEAN__FLAGS', + 'g_cclosure_marshal_STRING__OBJECT_POINTER', + 'g_cclosure_marshal_BOOLEAN__BOXED_BOXED', +} + + +# pylint: disable=too-few-public-methods +class Color: + '''ANSI Terminal colors''' + GREEN = '\033[1;32m' + BLUE = '\033[1;34m' + YELLOW = '\033[1;33m' + RED = '\033[1;31m' + END = '\033[0m' + + +def print_color(msg, color=Color.END, prefix='MESSAGE'): + '''Print a string with a color prefix''' + if os.isatty(sys.stderr.fileno()): + real_prefix = '{start}{prefix}{end}'.format(start=color, prefix=prefix, end=Color.END) + else: + real_prefix = prefix + sys.stderr.write('{prefix}: {msg}\n'.format(prefix=real_prefix, msg=msg)) + + +def print_error(msg): + '''Print an error, and terminate''' + print_color(msg, color=Color.RED, prefix='ERROR') + sys.exit(1) + + +def print_warning(msg, fatal=False): + '''Print a warning, and optionally terminate''' + if fatal: + color = Color.RED + prefix = 'ERROR' + else: + color = Color.YELLOW + prefix = 'WARNING' + print_color(msg, color, prefix) + if fatal: + sys.exit(1) + + +def print_info(msg): + '''Print a message''' + print_color(msg, color=Color.GREEN, prefix='INFO') + + +def generate_header_preamble(outfile, prefix='', std_includes=True, use_pragma=False): + '''Generate the preamble for the marshallers header file''' + outfile.write('/* This file is generated, all changes will be lost */\n') + if use_pragma: + outfile.write('#pragma once\n') + outfile.write('\n') + else: + outfile.write('#ifndef __{}_MARSHAL_H__\n'.format(prefix.upper())) + outfile.write('#define __{}_MARSHAL_H__\n'.format(prefix.upper())) + outfile.write('\n') + # Maintain compatibility with the old C-based tool + if std_includes: + outfile.write('#include <glib-object.h>\n') + outfile.write('\n') + + outfile.write('G_BEGIN_DECLS\n') + outfile.write('\n') + + +def generate_header_postamble(outfile, prefix='', use_pragma=False): + '''Generate the postamble for the marshallers header file''' + outfile.write('\n') + outfile.write('G_END_DECLS\n') + + if not use_pragma: + outfile.write('\n') + outfile.write('#endif /* __{}_MARSHAL_H__ */\n'.format(prefix.upper())) + + +def generate_body_preamble(outfile, std_includes=True, include_headers=None, cpp_defines=None, cpp_undefines=None): + '''Generate the preamble for the marshallers source file''' + for header in (include_headers or []): + outfile.write('#include "{}"\n'.format(header)) + if include_headers: + outfile.write('\n') + + for define in (cpp_defines or []): + s = define.split('=') + symbol = s[0] + value = s[1] if len(s) > 1 else '1' + outfile.write('#define {} {}\n'.format(symbol, value)) + if cpp_defines: + outfile.write('\n') + + for undefine in (cpp_undefines or []): + outfile.write('#undef {}\n'.format(undefine)) + if cpp_undefines: + outfile.write('\n') + + if std_includes: + outfile.write('#include <glib-object.h>\n') + outfile.write('\n') + + outfile.write(GETTERS_STR) + outfile.write('\n\n') + + +# Marshaller arguments, as a dictionary where the key is the token used in +# the source file, and the value is another dictionary with the following +# keys: +# +# - signal: the token used in the marshaller prototype (mandatory) +# - ctype: the C type for the marshaller argument (mandatory) +# - getter: the function used to retrieve the argument from the GValue +# array when invoking the callback (optional) +# - promoted: the C type used by va_arg() to retrieve the argument from +# the va_list when invoking the callback (optional, only used when +# generating va_list marshallers) +# - box: an array of two elements, containing the boxing and unboxing +# functions for the given type (optional, only used when generating +# va_list marshallers) +# - static-check: a boolean value, if the given type should perform +# a static type check before boxing or unboxing the argument (optional, +# only used when generating va_list marshallers) +# - takes-type: a boolean value, if the boxing and unboxing functions +# for the given type require the type (optional, only used when +# generating va_list marshallers) +# - deprecated: whether the token has been deprecated (optional) +# - replaced-by: the token used to replace a deprecated token (optional, +# only used if deprecated is True) +IN_ARGS = { + 'VOID': { + 'signal': 'VOID', + 'ctype': 'void', + }, + 'BOOLEAN': { + 'signal': 'BOOLEAN', + 'ctype': 'gboolean', + 'getter': 'g_marshal_value_peek_boolean', + }, + 'CHAR': { + 'signal': 'CHAR', + 'ctype': 'gchar', + 'promoted': 'gint', + 'getter': 'g_marshal_value_peek_char', + }, + 'UCHAR': { + 'signal': 'UCHAR', + 'ctype': 'guchar', + 'promoted': 'guint', + 'getter': 'g_marshal_value_peek_uchar', + }, + 'INT': { + 'signal': 'INT', + 'ctype': 'gint', + 'getter': 'g_marshal_value_peek_int', + }, + 'UINT': { + 'signal': 'UINT', + 'ctype': 'guint', + 'getter': 'g_marshal_value_peek_uint', + }, + 'LONG': { + 'signal': 'LONG', + 'ctype': 'glong', + 'getter': 'g_marshal_value_peek_long', + }, + 'ULONG': { + 'signal': 'ULONG', + 'ctype': 'gulong', + 'getter': 'g_marshal_value_peek_ulong', + }, + 'INT64': { + 'signal': 'INT64', + 'ctype': 'gint64', + 'getter': 'g_marshal_value_peek_int64', + }, + 'UINT64': { + 'signal': 'UINT64', + 'ctype': 'guint64', + 'getter': 'g_marshal_value_peek_uint64', + }, + 'ENUM': { + 'signal': 'ENUM', + 'ctype': 'gint', + 'getter': 'g_marshal_value_peek_enum', + }, + 'FLAGS': { + 'signal': 'FLAGS', + 'ctype': 'guint', + 'getter': 'g_marshal_value_peek_flags', + }, + 'FLOAT': { + 'signal': 'FLOAT', + 'ctype': 'gfloat', + 'promoted': 'gdouble', + 'getter': 'g_marshal_value_peek_float', + }, + 'DOUBLE': { + 'signal': 'DOUBLE', + 'ctype': 'gdouble', + 'getter': 'g_marshal_value_peek_double', + }, + 'STRING': { + 'signal': 'STRING', + 'ctype': 'gpointer', + 'getter': 'g_marshal_value_peek_string', + 'box': ['g_strdup', 'g_free'], + }, + 'PARAM': { + 'signal': 'PARAM', + 'ctype': 'gpointer', + 'getter': 'g_marshal_value_peek_param', + 'box': ['g_param_spec_ref', 'g_param_spec_unref'], + }, + 'BOXED': { + 'signal': 'BOXED', + 'ctype': 'gpointer', + 'getter': 'g_marshal_value_peek_boxed', + 'box': ['g_boxed_copy', 'g_boxed_free'], + 'static-check': True, + 'takes-type': True, + }, + 'POINTER': { + 'signal': 'POINTER', + 'ctype': 'gpointer', + 'getter': 'g_marshal_value_peek_pointer', + }, + 'OBJECT': { + 'signal': 'OBJECT', + 'ctype': 'gpointer', + 'getter': 'g_marshal_value_peek_object', + 'box': ['g_object_ref', 'g_object_unref'], + }, + 'VARIANT': { + 'signal': 'VARIANT', + 'ctype': 'gpointer', + 'getter': 'g_marshal_value_peek_variant', + 'box': ['g_variant_ref', 'g_variant_unref'], + 'static-check': True, + 'takes-type': False, + }, + + # Deprecated tokens + 'NONE': { + 'signal': 'VOID', + 'ctype': 'void', + 'deprecated': True, + 'replaced_by': 'VOID' + }, + 'BOOL': { + 'signal': 'BOOLEAN', + 'ctype': 'gboolean', + 'getter': 'g_marshal_value_peek_boolean', + 'deprecated': True, + 'replaced_by': 'BOOLEAN' + } +} + + +# Marshaller return values, as a dictionary where the key is the token used +# in the source file, and the value is another dictionary with the following +# keys: +# +# - signal: the token used in the marshaller prototype (mandatory) +# - ctype: the C type for the marshaller argument (mandatory) +# - setter: the function used to set the return value of the callback +# into a GValue (optional) +# - deprecated: whether the token has been deprecated (optional) +# - replaced-by: the token used to replace a deprecated token (optional, +# only used if deprecated is True) +OUT_ARGS = { + 'VOID': { + 'signal': 'VOID', + 'ctype': 'void', + }, + 'BOOLEAN': { + 'signal': 'BOOLEAN', + 'ctype': 'gboolean', + 'setter': 'g_value_set_boolean', + }, + 'CHAR': { + 'signal': 'CHAR', + 'ctype': 'gchar', + 'setter': 'g_value_set_char', + }, + 'UCHAR': { + 'signal': 'UCHAR', + 'ctype': 'guchar', + 'setter': 'g_value_set_uchar', + }, + 'INT': { + 'signal': 'INT', + 'ctype': 'gint', + 'setter': 'g_value_set_int', + }, + 'UINT': { + 'signal': 'UINT', + 'ctype': 'guint', + 'setter': 'g_value_set_uint', + }, + 'LONG': { + 'signal': 'LONG', + 'ctype': 'glong', + 'setter': 'g_value_set_long', + }, + 'ULONG': { + 'signal': 'ULONG', + 'ctype': 'gulong', + 'setter': 'g_value_set_ulong', + }, + 'INT64': { + 'signal': 'INT64', + 'ctype': 'gint64', + 'setter': 'g_value_set_int64', + }, + 'UINT64': { + 'signal': 'UINT64', + 'ctype': 'guint64', + 'setter': 'g_value_set_uint64', + }, + 'ENUM': { + 'signal': 'ENUM', + 'ctype': 'gint', + 'setter': 'g_value_set_enum', + }, + 'FLAGS': { + 'signal': 'FLAGS', + 'ctype': 'guint', + 'setter': 'g_value_set_flags', + }, + 'FLOAT': { + 'signal': 'FLOAT', + 'ctype': 'gfloat', + 'setter': 'g_value_set_float', + }, + 'DOUBLE': { + 'signal': 'DOUBLE', + 'ctype': 'gdouble', + 'setter': 'g_value_set_double', + }, + 'STRING': { + 'signal': 'STRING', + 'ctype': 'gchar*', + 'setter': 'g_value_take_string', + }, + 'PARAM': { + 'signal': 'PARAM', + 'ctype': 'GParamSpec*', + 'setter': 'g_value_take_param', + }, + 'BOXED': { + 'signal': 'BOXED', + 'ctype': 'gpointer', + 'setter': 'g_value_take_boxed', + }, + 'POINTER': { + 'signal': 'POINTER', + 'ctype': 'gpointer', + 'setter': 'g_value_set_pointer', + }, + 'OBJECT': { + 'signal': 'OBJECT', + 'ctype': 'GObject*', + 'setter': 'g_value_take_object', + }, + 'VARIANT': { + 'signal': 'VARIANT', + 'ctype': 'GVariant*', + 'setter': 'g_value_take_variant', + }, + + # Deprecated tokens + 'NONE': { + 'signal': 'VOID', + 'ctype': 'void', + 'setter': None, + 'deprecated': True, + 'replaced_by': 'VOID', + }, + 'BOOL': { + 'signal': 'BOOLEAN', + 'ctype': 'gboolean', + 'setter': 'g_value_set_boolean', + 'deprecated': True, + 'replaced_by': 'BOOLEAN', + }, +} + + +def check_args(retval, params, fatal_warnings=False): + '''Check the @retval and @params tokens for invalid and deprecated symbols.''' + if retval not in OUT_ARGS: + print_error('Unknown return value type "{}"'.format(retval)) + + if OUT_ARGS[retval].get('deprecated', False): + replaced_by = OUT_ARGS[retval]['replaced_by'] + print_warning(DEPRECATED_MSG_STR.format(retval, replaced_by), fatal_warnings) + + for param in params: + if param not in IN_ARGS: + print_error('Unknown parameter type "{}"'.format(param)) + else: + if IN_ARGS[param].get('deprecated', False): + replaced_by = IN_ARGS[param]['replaced_by'] + print_warning(DEPRECATED_MSG_STR.format(param, replaced_by), fatal_warnings) + + +def indent(text, level=0, fill=' '): + '''Indent @text by @level columns, using the @fill character''' + return ''.join([fill for x in range(level)]) + text + + +# pylint: disable=too-few-public-methods +class Visibility: + '''Symbol visibility options''' + NONE = 0 + INTERNAL = 1 + EXTERN = 2 + + +def generate_marshaller_name(prefix, retval, params, replace_deprecated=True): + '''Generate a marshaller name for the given @prefix, @retval, and @params. + If @replace_deprecated is True, the generated name will replace deprecated + tokens.''' + if replace_deprecated: + real_retval = OUT_ARGS[retval]['signal'] + real_params = [] + for param in params: + real_params.append(IN_ARGS[param]['signal']) + else: + real_retval = retval + real_params = params + return '{prefix}_{retval}__{args}'.format(prefix=prefix, + retval=real_retval, + args='_'.join(real_params)) + + +def generate_prototype(retval, params, + prefix='g_cclosure_user_marshal', + visibility=Visibility.NONE, + va_marshal=False): + '''Generate a marshaller declaration with the given @visibility. If @va_marshal + is True, the marshaller will use variadic arguments in place of a GValue array.''' + signature = [] + + if visibility == Visibility.INTERNAL: + signature += ['G_GNUC_INTERNAL'] + elif visibility == Visibility.EXTERN: + signature += ['extern'] + + function_name = generate_marshaller_name(prefix, retval, params) + + if not va_marshal: + signature += ['void ' + function_name + ' (GClosure *closure,'] + width = len('void ') + len(function_name) + 2 + + signature += [indent('GValue *return_value,', level=width, fill=' ')] + signature += [indent('guint n_param_values,', level=width, fill=' ')] + signature += [indent('const GValue *param_values,', level=width, fill=' ')] + signature += [indent('gpointer invocation_hint,', level=width, fill=' ')] + signature += [indent('gpointer marshal_data);', level=width, fill=' ')] + else: + signature += ['void ' + function_name + 'v (GClosure *closure,'] + width = len('void ') + len(function_name) + 3 + + signature += [indent('GValue *return_value,', level=width, fill=' ')] + signature += [indent('gpointer instance,', level=width, fill=' ')] + signature += [indent('va_list args,', level=width, fill=' ')] + signature += [indent('gpointer marshal_data,', level=width, fill=' ')] + signature += [indent('int n_params,', level=width, fill=' ')] + signature += [indent('GType *param_types);', level=width, fill=' ')] + + return signature + + +# pylint: disable=too-many-statements, too-many-locals, too-many-branches +def generate_body(retval, params, prefix, va_marshal=False): + '''Generate a marshaller definition. If @va_marshal is True, the marshaller + will use va_list and variadic arguments in place of a GValue array.''' + retval_setter = OUT_ARGS[retval].get('setter', None) + # If there's no return value then we can mark the retval argument as unused + # and get a minor optimisation, as well as avoid a compiler warning + if not retval_setter: + unused = ' G_GNUC_UNUSED' + else: + unused = '' + + body = ['void'] + + function_name = generate_marshaller_name(prefix, retval, params) + + if not va_marshal: + body += [function_name + ' (GClosure *closure,'] + width = len(function_name) + 2 + + body += [indent('GValue *return_value{},'.format(unused), level=width, fill=' ')] + body += [indent('guint n_param_values,', level=width, fill=' ')] + body += [indent('const GValue *param_values,', level=width, fill=' ')] + body += [indent('gpointer invocation_hint G_GNUC_UNUSED,', level=width, fill=' ')] + body += [indent('gpointer marshal_data)', level=width, fill=' ')] + else: + body += [function_name + 'v (GClosure *closure,'] + width = len(function_name) + 3 + + body += [indent('GValue *return_value{},'.format(unused), level=width, fill=' ')] + body += [indent('gpointer instance,', level=width, fill=' ')] + body += [indent('va_list args,', level=width, fill=' ')] + body += [indent('gpointer marshal_data,', level=width, fill=' ')] + body += [indent('int n_params,', level=width, fill=' ')] + body += [indent('GType *param_types)', level=width, fill=' ')] + + # Filter the arguments that have a getter + get_args = [x for x in params if IN_ARGS[x].get('getter', None) is not None] + + body += ['{'] + + # Generate the type of the marshaller function + typedef_marshal = generate_marshaller_name('GMarshalFunc', retval, params) + + typedef = ' typedef {ctype} (*{func_name}) ('.format(ctype=OUT_ARGS[retval]['ctype'], + func_name=typedef_marshal) + pad = len(typedef) + typedef += 'gpointer data1,' + body += [typedef] + + for idx, in_arg in enumerate(get_args): + body += [indent('{} arg{:d},'.format(IN_ARGS[in_arg]['ctype'], idx + 1), level=pad)] + + body += [indent('gpointer data2);', level=pad)] + + # Variable declarations + body += [' GCClosure *cc = (GCClosure *) closure;'] + body += [' gpointer data1, data2;'] + body += [' {} callback;'.format(typedef_marshal)] + + if retval_setter: + body += [' {} v_return;'.format(OUT_ARGS[retval]['ctype'])] + + if va_marshal: + for idx, arg in enumerate(get_args): + body += [' {} arg{:d};'.format(IN_ARGS[arg]['ctype'], idx)] + + if get_args: + body += [' va_list args_copy;'] + body += [''] + + body += [' G_VA_COPY (args_copy, args);'] + + for idx, arg in enumerate(get_args): + ctype = IN_ARGS[arg]['ctype'] + promoted_ctype = IN_ARGS[arg].get('promoted', ctype) + body += [VA_ARG_STR.format(idx, ctype, promoted_ctype)] + if IN_ARGS[arg].get('box', None): + box_func = IN_ARGS[arg]['box'][0] + if IN_ARGS[arg].get('static-check', False): + static_check = STATIC_CHECK_STR.format(idx) + else: + static_check = '' + arg_check = 'arg{:d} != NULL'.format(idx) + body += [' if ({}{})'.format(static_check, arg_check)] + if IN_ARGS[arg].get('takes-type', False): + body += [BOX_TYPED_STR.format(idx=idx, box_func=box_func)] + else: + body += [BOX_UNTYPED_STR.format(idx=idx, box_func=box_func)] + + body += [' va_end (args_copy);'] + + body += [''] + + # Preconditions check + if retval_setter: + body += [' g_return_if_fail (return_value != NULL);'] + + if not va_marshal: + body += [' g_return_if_fail (n_param_values == {:d});'.format(len(get_args) + 1)] + + body += [''] + + # Marshal instance, data, and callback set up + body += [' if (G_CCLOSURE_SWAP_DATA (closure))'] + body += [' {'] + body += [' data1 = closure->data;'] + if va_marshal: + body += [' data2 = instance;'] + else: + body += [' data2 = g_value_peek_pointer (param_values + 0);'] + body += [' }'] + body += [' else'] + body += [' {'] + if va_marshal: + body += [' data1 = instance;'] + else: + body += [' data1 = g_value_peek_pointer (param_values + 0);'] + body += [' data2 = closure->data;'] + body += [' }'] + # pylint: disable=line-too-long + body += [' callback = ({}) (marshal_data ? marshal_data : cc->callback);'.format(typedef_marshal)] + body += [''] + + # Marshal callback action + if retval_setter: + callback = ' {} callback ('.format(' v_return =') + else: + callback = ' callback (' + + pad = len(callback) + body += [callback + 'data1,'] + + if va_marshal: + for idx, arg in enumerate(get_args): + body += [indent('arg{:d},'.format(idx), level=pad)] + else: + for idx, arg in enumerate(get_args): + arg_getter = IN_ARGS[arg]['getter'] + body += [indent('{} (param_values + {:d}),'.format(arg_getter, idx + 1), level=pad)] + + body += [indent('data2);', level=pad)] + + if va_marshal: + boxed_args = [x for x in get_args if IN_ARGS[x].get('box', None) is not None] + if not boxed_args: + body += [''] + else: + for idx, arg in enumerate(get_args): + if not IN_ARGS[arg].get('box', None): + continue + unbox_func = IN_ARGS[arg]['box'][1] + if IN_ARGS[arg].get('static-check', False): + static_check = STATIC_CHECK_STR.format(idx) + else: + static_check = '' + arg_check = 'arg{:d} != NULL'.format(idx) + body += [' if ({}{})'.format(static_check, arg_check)] + if IN_ARGS[arg].get('takes-type', False): + body += [UNBOX_TYPED_STR.format(idx=idx, unbox_func=unbox_func)] + else: + body += [UNBOX_UNTYPED_STR.format(idx=idx, unbox_func=unbox_func)] + + if retval_setter: + body += [''] + body += [' {} (return_value, v_return);'.format(retval_setter)] + + body += ['}'] + + return body + + +def generate_marshaller_alias(outfile, marshaller, real_marshaller, + include_va=False, + source_location=None): + '''Generate an alias between @marshaller and @real_marshaller, including + an optional alias for va_list marshallers''' + if source_location: + outfile.write('/* {} */\n'.format(source_location)) + + outfile.write('#define {}\t{}\n'.format(marshaller, real_marshaller)) + + if include_va: + outfile.write('#define {}v\t{}v\n'.format(marshaller, real_marshaller)) + + outfile.write('\n') + + +def generate_marshallers_header(outfile, retval, params, + prefix='g_cclosure_user_marshal', + internal=False, + include_va=False, source_location=None): + '''Generate a declaration for a marshaller function, to be used in the header, + with the given @retval, @params, and @prefix. An optional va_list marshaller + for the same arguments is also generated. The generated buffer is written to + the @outfile stream object.''' + if source_location: + outfile.write('/* {} */\n'.format(source_location)) + + if internal: + visibility = Visibility.INTERNAL + else: + visibility = Visibility.EXTERN + + signature = generate_prototype(retval, params, prefix, visibility, False) + if include_va: + signature += generate_prototype(retval, params, prefix, visibility, True) + signature += [''] + + outfile.write('\n'.join(signature)) + outfile.write('\n') + + +def generate_marshallers_body(outfile, retval, params, + prefix='g_cclosure_user_marshal', + include_prototype=True, + internal=False, + include_va=False, source_location=None): + '''Generate a definition for a marshaller function, to be used in the source, + with the given @retval, @params, and @prefix. An optional va_list marshaller + for the same arguments is also generated. The generated buffer is written to + the @outfile stream object.''' + if source_location: + outfile.write('/* {} */\n'.format(source_location)) + + if include_prototype: + # Declaration visibility + if internal: + decl_visibility = Visibility.INTERNAL + else: + decl_visibility = Visibility.EXTERN + proto = ['/* Prototype for -Wmissing-prototypes */'] + proto += generate_prototype(retval, params, prefix, decl_visibility, False) + outfile.write('\n'.join(proto)) + outfile.write('\n') + + body = generate_body(retval, params, prefix, False) + outfile.write('\n'.join(body)) + outfile.write('\n\n') + + if include_va: + if include_prototype: + # Declaration visibility + if internal: + decl_visibility = Visibility.INTERNAL + else: + decl_visibility = Visibility.EXTERN + proto = ['/* Prototype for -Wmissing-prototypes */'] + proto += generate_prototype(retval, params, prefix, decl_visibility, True) + outfile.write('\n'.join(proto)) + outfile.write('\n') + + body = generate_body(retval, params, prefix, True) + outfile.write('\n'.join(body)) + outfile.write('\n\n') + + +if __name__ == '__main__': + arg_parser = argparse.ArgumentParser(description='Generate signal marshallers for GObject') + arg_parser.add_argument('--prefix', metavar='STRING', + default='g_cclosure_user_marshal', + help='Specify marshaller prefix') + arg_parser.add_argument('--output', metavar='FILE', + type=argparse.FileType('w'), + default=sys.stdout, + help='Write output into the specified file') + arg_parser.add_argument('--skip-source', + action='store_true', + help='Skip source location comments') + arg_parser.add_argument('--internal', + action='store_true', + help='Mark generated functions as internal') + arg_parser.add_argument('--valist-marshallers', + action='store_true', + help='Generate va_list marshallers') + arg_parser.add_argument('-v', '--version', + action='store_true', + dest='show_version', + help='Print version information, and exit') + arg_parser.add_argument('--g-fatal-warnings', + action='store_true', + dest='fatal_warnings', + help='Make warnings fatal') + arg_parser.add_argument('--include-header', metavar='HEADER', nargs='?', + action='append', + dest='include_headers', + help='Include the specified header in the body') + arg_parser.add_argument('--pragma-once', + action='store_true', + help='Use "pragma once" as the inclusion guard') + arg_parser.add_argument('-D', + action='append', + dest='cpp_defines', + default=[], + help='Pre-processor define') + arg_parser.add_argument('-U', + action='append', + dest='cpp_undefines', + default=[], + help='Pre-processor undefine') + arg_parser.add_argument('files', metavar='FILE', nargs='*', + type=argparse.FileType('r'), + help='Files with lists of marshallers to generate, ' + + 'or "-" for standard input') + arg_parser.add_argument('--prototypes', + action='store_true', + help='Generate the marshallers prototype in the C code') + arg_parser.add_argument('--header', + action='store_true', + help='Generate C headers') + arg_parser.add_argument('--body', + action='store_true', + help='Generate C code') + + group = arg_parser.add_mutually_exclusive_group() + group.add_argument('--stdinc', + action='store_true', + dest='stdinc', default=True, + help='Include standard marshallers') + group.add_argument('--nostdinc', + action='store_false', + dest='stdinc', default=True, + help='Use standard marshallers') + + group = arg_parser.add_mutually_exclusive_group() + group.add_argument('--quiet', + action='store_true', + help='Only print warnings and errors') + group.add_argument('--verbose', + action='store_true', + help='Be verbose, and include debugging information') + + args = arg_parser.parse_args() + + if args.show_version: + print(VERSION_STR) + sys.exit(0) + + # Backward compatibility hack; some projects use both arguments to + # generate the marshallers prototype in the C source, even though + # it's not really a supported use case. We keep this behaviour by + # forcing the --prototypes and --body arguments instead. We make this + # warning non-fatal even with --g-fatal-warnings, as it's a deprecation + compatibility_mode = False + if args.header and args.body: + print_warning('Using --header and --body at the same time time is deprecated; ' + + 'use --body --prototypes instead', False) + args.prototypes = True + args.header = False + compatibility_mode = True + + if args.header: + generate_header_preamble(args.output, + prefix=args.prefix, + std_includes=args.stdinc, + use_pragma=args.pragma_once) + elif args.body: + generate_body_preamble(args.output, + std_includes=args.stdinc, + include_headers=args.include_headers, + cpp_defines=args.cpp_defines, + cpp_undefines=args.cpp_undefines) + + seen_marshallers = set() + + for infile in args.files: + if not args.quiet: + print_info('Reading {}...'.format(infile.name)) + + line_count = 0 + for line in infile: + line_count += 1 + + if line == '\n' or line.startswith('#'): + continue + + matches = re.match(r'^([A-Z0-9]+)\s?:\s?([A-Z0-9,\s]+)$', line.strip()) + if not matches or len(matches.groups()) != 2: + print_warning('Invalid entry: "{}"'.format(line.strip()), args.fatal_warnings) + continue + + if not args.skip_source: + location = '{} ({}:{:d})'.format(line.strip(), infile.name, line_count) + else: + location = None + + retval = matches.group(1).strip() + params = [x.strip() for x in matches.group(2).split(',')] + check_args(retval, params, args.fatal_warnings) + + raw_marshaller = generate_marshaller_name(args.prefix, retval, params, False) + if raw_marshaller in seen_marshallers: + if args.verbose: + print_info('Skipping repeated marshaller {}'.format(line.strip())) + continue + + if args.header: + if args.verbose: + print_info('Generating declaration for {}'.format(line.strip())) + generate_std_alias = False + if args.stdinc: + std_marshaller = generate_marshaller_name(STD_PREFIX, retval, params) + if std_marshaller in GOBJECT_MARSHALLERS: + if args.verbose: + print_info('Skipping default marshaller {}'.format(line.strip())) + generate_std_alias = True + + marshaller = generate_marshaller_name(args.prefix, retval, params) + if generate_std_alias: + generate_marshaller_alias(args.output, marshaller, std_marshaller, + source_location=location, + include_va=args.valist_marshallers) + else: + generate_marshallers_header(args.output, retval, params, + prefix=args.prefix, + internal=args.internal, + include_va=args.valist_marshallers, + source_location=location) + # If the marshaller is defined using a deprecated token, we want to maintain + # compatibility and generate an alias for the old name pointing to the new + # one + if marshaller != raw_marshaller: + if args.verbose: + print_info('Generating alias for deprecated tokens') + generate_marshaller_alias(args.output, raw_marshaller, marshaller, + include_va=args.valist_marshallers) + elif args.body: + if args.verbose: + print_info('Generating definition for {}'.format(line.strip())) + if compatibility_mode: + generate_std_alias = False + if args.stdinc: + std_marshaller = generate_marshaller_name(STD_PREFIX, retval, params) + if std_marshaller in GOBJECT_MARSHALLERS: + if args.verbose: + print_info('Skipping default marshaller {}'.format(line.strip())) + generate_std_alias = True + marshaller = generate_marshaller_name(args.prefix, retval, params) + if compatibility_mode and generate_std_alias: + generate_marshaller_alias(args.output, marshaller, std_marshaller, + source_location=location, + include_va=args.valist_marshallers) + else: + generate_marshallers_body(args.output, retval, params, + prefix=args.prefix, + internal=args.internal, + include_prototype=args.prototypes, + include_va=args.valist_marshallers, + source_location=location) + if compatibility_mode and marshaller != raw_marshaller: + if args.verbose: + print_info('Generating alias for deprecated tokens') + generate_marshaller_alias(args.output, raw_marshaller, marshaller, + include_va=args.valist_marshallers) + + seen_marshallers.add(raw_marshaller) + + if args.header: + generate_header_postamble(args.output, prefix=args.prefix, use_pragma=args.pragma_once) diff --git a/gobject/glib-mkenums.in b/gobject/glib-mkenums.in index 9316e57f5..3b9a30c78 100755 --- a/gobject/glib-mkenums.in +++ b/gobject/glib-mkenums.in @@ -1,612 +1,689 @@ -#! @PERL_PATH@ - -use warnings; -use File::Basename; -use File::Copy "move"; -use File::Temp; -use Cwd; -use Safe; - -# glib-mkenums.pl +#!/usr/bin/env @PYTHON@ + +# If the code below looks horrible and unpythonic, do not panic. +# +# It is. +# +# This is a manual conversion from the original Perl script to +# Python. Improvements are welcome. +# +from __future__ import print_function, unicode_literals + +import argparse +import os +import re +import sys +import tempfile + +VERSION_STR = '''glib-mkenums version @VERSION@ +glib-genmarshal comes with ABSOLUTELY NO WARRANTY. +You may redistribute copies of glib-genmarshal under the terms of +the GNU General Public License which can be found in the +GLib source package. Sources, examples and contact +information are available at http://www.gtk.org''' + +output_stream = sys.stdout + +# pylint: disable=too-few-public-methods +class Color: + '''ANSI Terminal colors''' + GREEN = '\033[1;32m' + BLUE = '\033[1;34m' + YELLOW = '\033[1;33m' + RED = '\033[1;31m' + END = '\033[0m' + + +def print_color(msg, color=Color.END, prefix='MESSAGE'): + '''Print a string with a color prefix''' + if os.isatty(sys.stderr.fileno()): + real_prefix = '{start}{prefix}{end}'.format(start=color, prefix=prefix, end=Color.END) + else: + real_prefix = prefix + print('{prefix}: {msg}'.format(prefix=real_prefix, msg=msg), file=sys.stderr) + + +def print_error(msg): + '''Print an error, and terminate''' + print_color(msg, color=Color.RED, prefix='ERROR') + sys.exit(1) + + +def print_warning(msg, fatal=False): + '''Print a warning, and optionally terminate''' + if fatal: + color = Color.RED + prefix = 'ERROR' + else: + color = Color.YELLOW + prefix = 'WARNING' + print_color(msg, color, prefix) + if fatal: + sys.exit(1) + + +def print_info(msg): + '''Print a message''' + print_color(msg, color=Color.GREEN, prefix='INFO') + + +def write_output(output): + global output_stream + print(output, file=output_stream) + +# glib-mkenums.py # Information about the current enumeration -my $flags; # Is enumeration a bitmask? -my $option_underscore_name; # Overriden underscore variant of the enum name - # for example to fix the cases we don't get the - # mixed-case -> underscorized transform right. -my $option_lowercase_name; # DEPRECATED. A lower case name to use as part - # of the *_get_type() function, instead of the - # one that we guess. For instance, when an enum - # uses abnormal capitalization and we can not - # guess where to put the underscores. -my $seenbitshift; # Have we seen bitshift operators? -my $seenprivate; # Have we seen a private option? -my $enum_prefix; # Prefix for this enumeration -my $enumname; # Name for this enumeration -my $enumshort; # $enumname without prefix -my $enumname_prefix; # prefix of $enumname -my $enumindex = 0; # Global enum counter -my $firstenum = 1; # Is this the first enumeration per file? -my @entries; # [ $name, $val ] for each entry -my $sandbox = Safe->new; # sandbox for safe evaluation of expressions - -my $output; # Filename to write result into - -sub parse_trigraph { - my $opts = shift; - my @opts; - - for $opt (split /\s*,\s*/, $opts) { - $opt =~ s/^\s*//; - $opt =~ s/\s*$//; - my ($key,$val) = $opt =~ /(\w+)(?:=(.+))?/; - defined $val or $val = 1; - push @opts, $key, $val; - } - @opts; -} -sub parse_entries { - my $file = shift; - my $file_name = shift; - my $looking_for_name = 0; - - while (<$file>) { - # read lines until we have no open comments - while (m@/\*([^*]|\*(?!/))*$@) { - my $new; - defined ($new = <$file>) || die "Unmatched comment in $ARGV"; - $_ .= $new; - } - # strip comments w/o options - s@/\*(?!<) - ([^*]+|\*(?!/))* - \*/@@gx; - - # strip newlines - s@\n@ @; - - # skip empty lines - next if m@^\s*$@; - - if ($looking_for_name) { - if (/^\s*(\w+)/) { - $enumname = $1; - return 1; - } - } - - # Handle include files - if (/^\#include\s*<([^>]*)>/ ) { - my $file= "../$1"; - open NEWFILE, $file or die "Cannot open include file $file: $!\n"; - - if (parse_entries (\*NEWFILE, $NEWFILE)) { - return 1; - } else { - next; - } - } - - if (/^\s*\}\s*(\w+)/) { - $enumname = $1; - $enumindex++; - return 1; - } - - if (/^\s*\}/) { - $enumindex++; - $looking_for_name = 1; - next; - } - - if (m@^\s* +flags = False # Is enumeration a bitmask? +option_underscore_name = '' # Overriden underscore variant of the enum name + # for example to fix the cases we don't get the + # mixed-case -> underscorized transform right. +option_lowercase_name = '' # DEPRECATED. A lower case name to use as part + # of the *_get_type() function, instead of the + # one that we guess. For instance, when an enum + # uses abnormal capitalization and we can not + # guess where to put the underscores. +seenbitshift = 0 # Have we seen bitshift operators? +enum_prefix = None # Prefix for this enumeration +enumname = '' # Name for this enumeration +enumshort = '' # $enumname without prefix +enumname_prefix = '' # prefix of $enumname +enumindex = 0 # Global enum counter +firstenum = 1 # Is this the first enumeration per file? +entries = [] # [ name, val ] for each entry +sandbox = None # sandbox for safe evaluation of expressions + +output = '' # Filename to write result into + +def parse_trigraph(opts): + result = {} + + for opt in re.split(r'\s*,\s*', opts): + opt = re.sub(r'^\s*', '', opt) + opt = re.sub(r'\s*$', '', opt) + m = re.search(r'(\w+)(?:=(.+))?', opt) + assert m is not None + groups = m.groups() + key = groups[0] + if len(groups) > 1: + val = groups[1] + else: + val = 1 + result[key] = val + return result + +def parse_entries(file, file_name): + global entries, enumindex, enumname, seenbitshift, flags + looking_for_name = False + + while True: + line = file.readline() + if not line: + break + + line = line.strip() + + # read lines until we have no open comments + while re.search(r'/\*([^*]|\*(?!/))*$', line): + line += file.readline() + + # strip comments w/o options + line = re.sub(r'''/\*(?!<) + ([^*]+|\*(?!/))* + \*/''', '', line, flags=re.X) + + line = line.rstrip() + + # skip empty lines + if len(line.strip()) == 0: + continue + + if looking_for_name: + m = re.match(r'\s*(\w+)', line) + if m: + enumname = m.group(1) + return True + + # Handle include files + m = re.match(r'\#include\s*<([^>]*)>', line) + if m: + newfilename = os.path.join("..", m.group(1)) + newfile = open(newfilename) + + if not parse_entries(newfile, newfilename): + return False + else: + continue + + m = re.match(r'\s*\}\s*(\w+)', line) + if m: + enumname = m.group(1) + enumindex += 1 + return 1 + + m = re.match(r'\s*\}', line) + if m: + enumindex += 1 + looking_for_name = True + continue + + m = re.match(r'''\s* (\w+)\s* # name (?:=( # value - \s*\w+\s*\(.*\)\s* # macro with multiple args - | # OR + \s*\w+\s*\(.*\)\s* # macro with multiple args + | # OR (?:[^,/]|/(?!\*))* # anything but a comma or comment ))?,?\s* (?:/\*< # options (([^*]|\*(?!/))*) >\s*\*/)?,? - \s*$ - @x) { - my ($name, $value, $options) = ($1,$2,$3); - - if (!defined $flags && defined $value && $value =~ /<</) { - $seenbitshift = 1; - } - - next if $seenprivate; - - if (defined $options) { - my %options = parse_trigraph($options); - if (!defined $options{skip}) { - push @entries, [ $name, $value, $options{nick} ]; - } - } else { - push @entries, [ $name, $value ]; - } - } elsif (m@^\s*\#@) { - # ignore preprocessor directives - } elsif (m@^\s* - /\*< (([^*]|\*(?!/))*) >\s*\*/ - \s*$ - @x) { - my ($options) = ($1); - - if (defined $options) { - my %options = parse_trigraph($options); - if (defined $options{private}) { - $seenprivate = 1; - } - elsif (defined $options{public}) { - $seenprivate = 0; - } - } - } else { - print STDERR "$0: $file_name:$.: Failed to parse `$_'\n"; - } - } - - return 0; -} - -sub version { - print "glib-mkenums version glib-@GLIB_VERSION@\n"; - print "glib-mkenums comes with ABSOLUTELY NO WARRANTY.\n"; - print "You may redistribute copies of glib-mkenums under the terms of\n"; - print "the GNU General Public License which can be found in the\n"; - print "GLib source package. Sources, examples and contact\n"; - print "information are available at http://www.gtk.org\n"; - exit 0; -} -sub usage { - print "Usage:\n"; - print " glib-mkenums [OPTION...] [FILES...]\n\n"; - print "Help Options:\n"; - print " -h, --help Show this help message\n\n"; - print "Utility Options:\n"; - print " --identifier-prefix <text> Identifier prefix\n"; - print " --symbol-prefix <text> Symbol prefix\n"; - print " --fhead <text> Output file header\n"; - print " --fprod <text> Per input file production\n"; - print " --ftail <text> Output file trailer\n"; - print " --eprod <text> Per enum text (produced prior to value iterations)\n"; - print " --vhead <text> Value header, produced before iterating over enum values\n"; - print " --vprod <text> Value text, produced for each enum value\n"; - print " --vtail <text> Value tail, produced after iterating over enum values\n"; - print " --comments <text> Comment structure\n"; - print " --template file Template file\n"; - print " --output file Output file\n"; - print " -v, --version Print version informations\n\n"; - print "Production text substitutions:\n"; - print " \@EnumName\@ PrefixTheXEnum\n"; - print " \@enum_name\@ prefix_the_xenum\n"; - print " \@ENUMNAME\@ PREFIX_THE_XENUM\n"; - print " \@ENUMSHORT\@ THE_XENUM\n"; - print " \@ENUMPREFIX\@ PREFIX\n"; - print " \@VALUENAME\@ PREFIX_THE_XVALUE\n"; - print " \@valuenick\@ the-xvalue\n"; - print " \@valuenum\@ the integer value (limited support, Since: 2.26)\n"; - print " \@type\@ either enum or flags\n"; - print " \@Type\@ either Enum or Flags\n"; - print " \@TYPE\@ either ENUM or FLAGS\n"; - print " \@filename\@ name of current input file\n"; - print " \@basename\@ base name of the current input file (Since: 2.22)\n"; - exit 0; -} + \s*$''', line, flags=re.X) + if m: + groups = m.groups() + name = groups[0] + value = None + options = None + if len(groups) > 1: + value = groups[1] + if len(groups) > 2: + options = groups[2] + if not flags and value is not None and '<<' in value: + seenbitshift = 1 + + if options is not None: + options = parse_trigraph(options) + if 'skip' not in options: + entries.append((name, value, options['nick'])) + else: + entries.append((name, value)) + elif re.match(r's*\#', line): + pass + else: + print_warning('Failed to parse "{}" in {}'.format(line, file_name)) + return False + +help_epilog = '''Production text substitutions: + \u0040EnumName\u0040 PrefixTheXEnum + \u0040enum_name\u0040 prefix_the_xenum + \u0040ENUMNAME\u0040 PREFIX_THE_XENUM + \u0040ENUMSHORT\u0040 THE_XENUM + \u0040ENUMPREFIX\u0040 PREFIX + \u0040VALUENAME\u0040 PREFIX_THE_XVALUE + \u0040valuenick\u0040 the-xvalue + \u0040valuenum\u0040 the integer value (limited support, Since: 2.26) + \u0040type\u0040 either enum or flags + \u0040Type\u0040 either Enum or Flags + \u0040TYPE\u0040 either ENUM or FLAGS + \u0040filename\u0040 name of current input file + \u0040basename\u0040 base name of the current input file (Since: 2.22) +''' + # production variables: -my $idprefix = ""; # "G", "Gtk", etc -my $symprefix = ""; # "g", "gtk", etc, if not just lc($idprefix) -my $fhead = ""; # output file header -my $fprod = ""; # per input file production -my $ftail = ""; # output file trailer -my $eprod = ""; # per enum text (produced prior to value itarations) -my $vhead = ""; # value header, produced before iterating over enum values -my $vprod = ""; # value text, produced for each enum value -my $vtail = ""; # value tail, produced after iterating over enum values -my $comment_tmpl = ""; # comment template - -sub read_template_file { - my ($file) = @_; - my %tmpl = ('file-header', $fhead, - 'file-production', $fprod, - 'file-tail', $ftail, - 'enumeration-production', $eprod, - 'value-header', $vhead, - 'value-production', $vprod, - 'value-tail', $vtail, - 'comment', $comment_tmpl); - my $in = 'junk'; - open (FILE, $file) || die "Can't open $file: $!\n"; - while (<FILE>) { - if (/^\/\*\*\*\s+(BEGIN|END)\s+([\w-]+)\s+\*\*\*\//) { - if (($in eq 'junk') && ($1 eq 'BEGIN') && (exists($tmpl{$2}))) { - $in = $2; - next; - } - elsif (($in eq $2) && ($1 eq 'END') && (exists($tmpl{$2}))) { - $in = 'junk'; - next; - } else { - die "Malformed template file $file\n"; - } - } - if (!($in eq 'junk')) { - $tmpl{$in} .= $_; - } - } - close (FILE); - if (!($in eq 'junk')) { - die "Malformed template file $file\n"; - } - $fhead = $tmpl{'file-header'}; - $fprod = $tmpl{'file-production'}; - $ftail = $tmpl{'file-tail'}; - $eprod = $tmpl{'enumeration-production'}; - $vhead = $tmpl{'value-header'}; - $vprod = $tmpl{'value-production'}; - $vtail = $tmpl{'value-tail'}; - $comment_tmpl = $tmpl{'comment'}; - - # default to C-style comments - $comment_tmpl = "/* \@comment\@ */" if $comment_tmpl eq ""; -} - -if (!defined $ARGV[0]) { - usage; -} -while ($_=$ARGV[0],/^-/) { - shift; - last if /^--$/; - if (/^--template$/) { read_template_file (shift); } - elsif (/^--identifier-prefix$/) { $idprefix = shift } - elsif (/^--symbol-prefix$/) { $symprefix = shift } - elsif (/^--fhead$/) { $fhead = $fhead . shift } - elsif (/^--fprod$/) { $fprod = $fprod . shift } - elsif (/^--ftail$/) { $ftail = $ftail . shift } - elsif (/^--eprod$/) { $eprod = $eprod . shift } - elsif (/^--vhead$/) { $vhead = $vhead . shift } - elsif (/^--vprod$/) { $vprod = $vprod . shift } - elsif (/^--vtail$/) { $vtail = $vtail . shift } - elsif (/^--comments$/) { $comment_tmpl = shift } - elsif (/^--output$/) { $output = shift } - elsif (/^--help$/ || /^-h$/ || /^-\?$/) { usage; } - elsif (/^--version$/ || /^-v$/) { version; } - else { usage; } - last if not defined($ARGV[0]); -} - -if (defined ($output)) { - my($out_fn, $out_dir, $out_suffix) = fileparse($output, qr{\.\w+$}); - if ($out_dir eq '') { $out_dir = cwd(); } - - $out_suffix =~ s/^\./_/; # .foo -> _foo - - $OUTPUT = File::Temp->new("$out_fn$out_suffix\_XXXXXX", DIR => $out_dir, UNLINK => 0); - select $OUTPUT; # Make all print calls from here on go to OUTPUT -} +idprefix = "" # "G", "Gtk", etc +symprefix = "" # "g", "gtk", etc, if not just lc($idprefix) +fhead = "" # output file header +fprod = "" # per input file production +ftail = "" # output file trailer +eprod = "" # per enum text (produced prior to value itarations) +vhead = "" # value header, produced before iterating over enum values +vprod = "" # value text, produced for each enum value +vtail = "" # value tail, produced after iterating over enum values +comment_tmpl = "" # comment template + +def read_template_file(file): + global idprefix, symprefix, fhead, fprod, ftail, eprod, vhead, vprod, vtail, comment_tmpl + tmpl = {'file-header': fhead, + 'file-production': fprod, + 'file-tail': ftail, + 'enumeration-production': eprod, + 'value-header': vhead, + 'value-production': vprod, + 'value-tail': vtail, + 'comment': comment_tmpl, + } + in_ = 'junk' + + ifile = open(file) + for line in ifile: + m = re.match(r'\/\*\*\*\s+(BEGIN|END)\s+([\w-]+)\s+\*\*\*\/', line) + if m: + if in_ == 'junk' and m.group(1) == 'BEGIN' and m.group(2) in tmpl: + in_ = m.group(2) + continue + elif in_ == m.group(2) and m.group(1) == 'END' and m.group(2) in tmpl: + in_ = 'junk' + continue + else: + sys.exit("Malformed template file " + file) + + if in_ != 'junk': + tmpl[in_] += line + + if in_ != 'junk': + sys.exit("Malformed template file " + file) + + fhead = tmpl['file-header'] + fprod = tmpl['file-production'] + ftail = tmpl['file-tail'] + eprod = tmpl['enumeration-production'] + vhead = tmpl['value-header'] + vprod = tmpl['value-production'] + vtail = tmpl['value-tail'] + comment_tmpl = tmpl['comment'] + + # default to C-style comments + if comment_tmpl == "": + comment_tmpl = "/* \u0040comment\u0040 */" + +parser = argparse.ArgumentParser(epilog=help_epilog, + formatter_class=argparse.RawDescriptionHelpFormatter) + +parser.add_argument('--identifier-prefix', default='', dest='idprefix', + help='Identifier prefix') +parser.add_argument('--symbol-prefix', default='', dest='symprefix', + help='symbol-prefix') +parser.add_argument('--fhead', default=[], dest='fhead', action='append', + help='Output file header') +parser.add_argument('--ftail', default=[], dest='ftail', action='append', + help='Per input file production') +parser.add_argument('--fprod', default=[], dest='fprod', action='append', + help='Put out TEXT everytime a new input file is being processed.') +parser.add_argument('--eprod', default=[], dest='eprod', action='append', + help='Per enum text (produced prior to value iterations)') +parser.add_argument('--vhead', default=[], dest='vhead', action='append', + help='Value header, produced before iterating over enum values') +parser.add_argument('--vprod', default=[], dest='vprod', action='append', + help='Value text, produced for each enum value.') +parser.add_argument('--vtail', default=[], dest='vtail', action='append', + help='Value tail, produced after iterating over enum values') +parser.add_argument('--comments', default='', dest='comment_tmpl', + help='Comment structure') +parser.add_argument('--template', default='', dest='template', + help='Template file') +parser.add_argument('--output', default=None, dest='output') +parser.add_argument('--version', '-v', default=False, action='store_true', dest='version', + help='Print version informations') +parser.add_argument('args', nargs='*') + +options = parser.parse_args() + +if options.version: + print(VERSION_STR) + sys.exit(0) + +def unescape_cmdline_args(arg): + arg = arg.replace('\\n', '\n') + arg = arg.replace('\\r', '\r') + return arg.replace('\\t', '\t') + +if options.template != '': + read_template_file(options.template) + +idprefix += options.idprefix +symprefix += options.symprefix + +# This is a hack to maintain some semblance of backward compatibility with +# the old, Perl-based glib-mkenums. The old tool had an implicit ordering +# on the arguments and templates; each argument was parsed in order, and +# all the strings appended. This allowed developers to write: +# +# glib-mkenums \ +# --fhead ... \ +# --template a-template-file.c.in \ +# --ftail ... +# +# And have the fhead be prepended to the file-head stanza in the template, +# as well as the ftail be appended to the file-tail stanza in the template. +# Short of throwing away ArgumentParser and going over sys.argv[] element +# by element, we can simulate that behaviour by ensuring some ordering in +# how we build the template strings: +# +# - the head stanzas are always prepended to the template +# - the prod stanzas are always appended to the template +# - the tail stanzas are always appended to the template +# +# Within each instance of the command line argument, we append each value +# to the array in the order in which it appears on the command line. +fhead = ''.join([unescape_cmdline_args(x) for x in options.fhead]) + fhead +vhead = ''.join([unescape_cmdline_args(x) for x in options.vhead]) + vhead + +fprod += ''.join([unescape_cmdline_args(x) for x in options.fprod]) +eprod += ''.join([unescape_cmdline_args(x) for x in options.eprod]) +vprod += ''.join([unescape_cmdline_args(x) for x in options.vprod]) + +ftail = ftail + ''.join([unescape_cmdline_args(x) for x in options.ftail]) +vtail = vtail + ''.join([unescape_cmdline_args(x) for x in options.vtail]) + +if options.comment_tmpl != '': + comment_tmpl = unescape_cmdline_args(options.comment_tmpl) + +output = options.output + +if output is not None: + (out_dir, out_fn) = os.path.split(options.output) + out_suffix = '_' + os.path.splitext(out_fn)[1] + if out_dir == '': + out_dir = '.' + tmpfile = tempfile.NamedTemporaryFile(dir=out_dir, delete=False) + output_stream = tmpfile +else: + tmpfile = None # put auto-generation comment -{ - my $comment = $comment_tmpl; - $comment =~ s/\@comment\@/Generated data (by glib-mkenums)/; - print "\n" . $comment . "\n\n"; -} - -if (length($fhead)) { - my $prod = $fhead; - my $base = basename ($ARGV[0]); - - $prod =~ s/\@filename\@/$ARGV[0]/g; - $prod =~ s/\@basename\@/$base/g; - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - chomp ($prod); - - print "$prod\n"; -} - -@ARGV = sort @ARGV; - -while (<>) { - if (eof) { - close (ARGV); # reset line numbering - $firstenum = 1; # Flag to print filename at next enum - } - - # read lines until we have no open comments - while (m@/\*([^*]|\*(?!/))*$@) { - my $new; - defined ($new = <>) || die "Unmatched comment in $ARGV"; - $_ .= $new; - } - # strip comments w/o options - s@/\*(?!<) - ([^*]+|\*(?!/))* - \*/@@gx; - - # ignore forward declarations - next if /^\s*typedef\s+enum.*;/; - - if (m@^\s*typedef\s+enum\s* - ({)?\s* - (?:/\*< - (([^*]|\*(?!/))*) - >\s*\*/)? - \s*({)? - @x) { - if (defined $2) { - my %options = parse_trigraph ($2); - next if defined $options{skip}; - $enum_prefix = $options{prefix}; - $flags = $options{flags}; - $option_lowercase_name = $options{lowercase_name}; - $option_underscore_name = $options{underscore_name}; - } else { - $enum_prefix = undef; - $flags = undef; - $option_lowercase_name = undef; - $option_underscore_name = undef; - } - if (defined $option_lowercase_name) { - if (defined $option_underscore_name) { - print STDERR "$0: $ARGV:$.: lowercase_name overriden with underscore_name\n"; - $option_lowercase_name = undef; - } else { - print STDERR "$0: $ARGV:$.: lowercase_name is deprecated, use underscore_name\n"; - } - } - # Didn't have trailing '{' look on next lines - if (!defined $1 && !defined $4) { - while (<>) { - if (eof) { - die "Hit end of file while parsing enum in $ARGV"; - } - if (s/^\s*\{//) { - last; - } - } - } - - $seenbitshift = 0; - $seenprivate = 0; - @entries = (); - - # Now parse the entries - parse_entries (\*ARGV, $ARGV); - - # figure out if this was a flags or enums enumeration - if (!defined $flags) { - $flags = $seenbitshift; - } - - # Autogenerate a prefix - if (!defined $enum_prefix) { - for (@entries) { - my $nick = $_->[2]; - if (!defined $nick) { - my $name = $_->[0]; - if (defined $enum_prefix) { - my $tmp = ~ ($name ^ $enum_prefix); - ($tmp) = $tmp =~ /(^\xff*)/; - $enum_prefix = $enum_prefix & $tmp; - } else { - $enum_prefix = $name; - } - } - } - if (!defined $enum_prefix) { - $enum_prefix = ""; - } else { - # Trim so that it ends in an underscore - $enum_prefix =~ s/_[^_]*$/_/; - } - } else { - # canonicalize user defined prefixes - $enum_prefix = uc($enum_prefix); - $enum_prefix =~ s/-/_/g; - $enum_prefix =~ s/(.*)([^_])$/$1$2_/; - } - - for $entry (@entries) { - my ($name,$num,$nick) = @{$entry}; - if (!defined $nick) { - ($nick = $name) =~ s/^$enum_prefix//; - $nick =~ tr/_/-/; - $nick = lc($nick); - @{$entry} = ($name, $num, $nick); - } - } - - - # Spit out the output - if (defined $option_underscore_name) { - $enumlong = uc $option_underscore_name; - $enumsym = lc $option_underscore_name; - $enumshort = $enumlong; - $enumshort =~ s/^[A-Z][A-Z0-9]*_//; - - $enumname_prefix = $enumlong; - $enumname_prefix =~ s/_$enumshort$//; - } elsif (!$symprefix && !$idprefix) { - # enumname is e.g. GMatchType - $enspace = $enumname; - $enspace =~ s/^([A-Z][a-z]*).*$/$1/; - - $enumshort = $enumname; - $enumshort =~ s/^[A-Z][a-z]*//; - $enumshort =~ s/([^A-Z])([A-Z])/$1_$2/g; - $enumshort =~ s/([A-Z][A-Z])([A-Z][0-9a-z])/$1_$2/g; - $enumshort = uc($enumshort); - - $enumname_prefix = $enumname; - $enumname_prefix =~ s/^([A-Z][a-z]*).*$/$1/; - $enumname_prefix = uc($enumname_prefix); - - $enumlong = uc($enspace) . "_" . $enumshort; - $enumsym = lc($enspace) . "_" . lc($enumshort); - - if (defined($option_lowercase_name)) { - $enumsym = $option_lowercase_name; - } - } else { - $enumshort = $enumname; - if ($idprefix) { - $enumshort =~ s/^${idprefix}//; - } else { - $enumshort =~ s/^[A-Z][a-z]*//; - } - $enumshort =~ s/([^A-Z])([A-Z])/$1_$2/g; - $enumshort =~ s/([A-Z][A-Z])([A-Z][0-9a-z])/$1_$2/g; - $enumshort = uc($enumshort); - - $enumname_prefix = $symprefix && uc($symprefix) || uc($idprefix); - - $enumlong = $enumname_prefix . "_" . $enumshort; - $enumsym = lc($enumlong); - } - - if ($firstenum) { - $firstenum = 0; - - if (length($fprod)) { - my $prod = $fprod; - my $base = basename ($ARGV); - - $prod =~ s/\@filename\@/$ARGV/g; - $prod =~ s/\@basename\@/$base/g; - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - chomp ($prod); - - print "$prod\n"; - } - } - - if (length($eprod)) { - my $prod = $eprod; - - $prod =~ s/\@enum_name\@/$enumsym/g; - $prod =~ s/\@EnumName\@/$enumname/g; - $prod =~ s/\@ENUMSHORT\@/$enumshort/g; - $prod =~ s/\@ENUMNAME\@/$enumlong/g; - $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g; - if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; } - if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; } - if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; } - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - chomp ($prod); - - print "$prod\n"; - } - - if (length($vhead)) { - my $prod = $vhead; - - $prod =~ s/\@enum_name\@/$enumsym/g; - $prod =~ s/\@EnumName\@/$enumname/g; - $prod =~ s/\@ENUMSHORT\@/$enumshort/g; - $prod =~ s/\@ENUMNAME\@/$enumlong/g; - $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g; - if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; } - if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; } - if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; } - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - chomp ($prod); - - print "$prod\n"; - } - - if (length($vprod)) { - my $prod = $vprod; - my $next_num = 0; - - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - for (@entries) { - my ($name,$num,$nick) = @{$_}; - my $tmp_prod = $prod; - - if ($prod =~ /\@valuenum\@/) { - # only attempt to eval the value if it is requested - # this prevents us from throwing errors otherwise - if (defined $num) { - # use sandboxed perl evaluation as a reasonable - # approximation to C constant folding - $num = $sandbox->reval ($num); - - # make sure it parsed to an integer - if (!defined $num or $num !~ /^-?\d+$/) { - die "Unable to parse enum value '$num'"; - } - } else { - $num = $next_num; - } - - $tmp_prod =~ s/\@valuenum\@/$num/g; - $next_num = $num + 1; - } - - $tmp_prod =~ s/\@VALUENAME\@/$name/g; - $tmp_prod =~ s/\@valuenick\@/$nick/g; - if ($flags) { $tmp_prod =~ s/\@type\@/flags/g; } else { $tmp_prod =~ s/\@type\@/enum/g; } - if ($flags) { $tmp_prod =~ s/\@Type\@/Flags/g; } else { $tmp_prod =~ s/\@Type\@/Enum/g; } - if ($flags) { $tmp_prod =~ s/\@TYPE\@/FLAGS/g; } else { $tmp_prod =~ s/\@TYPE\@/ENUM/g; } - chomp ($tmp_prod); - - print "$tmp_prod\n"; - } - } - - if (length($vtail)) { - my $prod = $vtail; - - $prod =~ s/\@enum_name\@/$enumsym/g; - $prod =~ s/\@EnumName\@/$enumname/g; - $prod =~ s/\@ENUMSHORT\@/$enumshort/g; - $prod =~ s/\@ENUMNAME\@/$enumlong/g; - $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g; - if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; } - if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; } - if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; } - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - chomp ($prod); - - print "$prod\n"; - } - } -} - -if (length($ftail)) { - my $prod = $ftail; - my $base = basename ($ARGV); - - $prod =~ s/\@filename\@/$ARGV/g; - $prod =~ s/\@basename\@/$base/g; - $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g; - $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g; - chomp ($prod); - - print "$prod\n"; -} +comment = comment_tmpl.replace('\u0040comment\u0040', 'Generated data (by glib-mkenums)') +write_output("\n" + comment + '\n') + +def replace_specials(prod): + prod = prod.replace(r'\\a', r'\a') + prod = prod.replace(r'\\b', r'\b') + prod = prod.replace(r'\\t', r'\t') + prod = prod.replace(r'\\n', r'\n') + prod = prod.replace(r'\\f', r'\f') + prod = prod.replace(r'\\r', r'\r') + prod = prod.rstrip() + return prod + +if len(fhead) > 0: + prod = fhead + base = os.path.basename(options.args[0]) + + prod = prod.replace('\u0040filename\u0040', options.args[0]) + prod = prod.replace('\u0040basename\u0040', base) + prod = replace_specials(prod) + write_output(prod) + +def process_file(curfilename): + global entries, flags, seenbitshift, enum_prefix + firstenum = True + + try: + curfile = open(curfilename) + except FileNotFoundError: + print_warning('No file "{}" found.'.format(curfilename)) + return + + while True: + line = curfile.readline() + if not line: + break + + line = line.strip() + + # read lines until we have no open comments + while re.search(r'/\*([^*]|\*(?!/))*$', line): + line += curfile.readline() + + # strip comments w/o options + line = re.sub(r'''/\*(?!<) + ([^*]+|\*(?!/))* + \*/''', '', line) + + # ignore forward declarations + if re.match(r'\s*typedef\s+enum.*;', line): + continue + + m = re.match(r'''\s*typedef\s+enum\s* + ({)?\s* + (?:/\*< + (([^*]|\*(?!/))*) + >\s*\*/)? + \s*({)?''', line, flags=re.X) + if m: + groups = m.groups() + if len(groups) >= 2 and groups[1] is not None: + options = parse_trigraph(groups[1]) + if 'skip' in options: + continue + enum_prefix = options.get('prefix', None) + flags = 'flags' in options + option_lowercase_name = options.get('lowercase_name', None) + option_underscore_name = options.get('underscore_name', None) + else: + enum_prefix = None + flags = False + option_lowercase_name = None + option_underscore_name = None + + if option_lowercase_name is not None: + if option_underscore_name is not None: + print_warning("lowercase_name overriden with underscore_name") + option_lowercase_name = None + else: + print_warning("lowercase_name is deprecated, use underscore_name") + + # Didn't have trailing '{' look on next lines + if groups[0] is None and (len(groups) < 4 or groups[3] is None): + while True: + line = curfile.readline() + if re.match(r'\s*\{', line): + break + + seenbitshift = 0 + entries = [] + + # Now parse the entries + parse_entries(curfile, curfilename) + + # figure out if this was a flags or enums enumeration + if not flags: + flags = seenbitshift + + # Autogenerate a prefix + if enum_prefix is None: + for entry in entries: + if len(entry) < 3 or entry[2] is None: + name = entry[0] + if enum_prefix is not None: + enum_prefix = os.path.commonprefix([name, enum_prefix]) + else: + enum_prefix = name + if enum_prefix is None: + enum_prefix = "" + else: + # Trim so that it ends in an underscore + enum_prefix = re.sub(r'_[^_]*$', '_', enum_prefix) + else: + # canonicalize user defined prefixes + enum_prefix = enum_prefix.upper() + enum_prefix = enum_prefix.replace('-', '_') + enum_prefix = re.sub(r'(.*)([^_])$', r'\1\2_', enum_prefix) + + fixed_entries = [] + for e in entries: + name = e[0] + num = e[1] + if len(e) < 3 or e[2] is None: + nick = re.sub(r'^' + enum_prefix, '', name) + nick = nick.replace('_', '-').lower() + e = (name, num, nick) + fixed_entries.append(e) + entries = fixed_entries + + # Spit out the output + if option_underscore_name is not None: + enumlong = option_underscore_name.upper() + enumsym = option_underscore_name.lower() + enumshort = re.sub(r'^[A-Z][A-Z0-9]*_', '', enumlong) + + enumname_prefix = re.sub('_' + enumshort + '$', '', enumlong) + elif symprefix == '' and idprefix == '': + # enumname is e.g. GMatchType + enspace = re.sub(r'^([A-Z][a-z]*).*$', r'\1', enumname) + + enumshort = re.sub(r'^[A-Z][a-z]*', '', enumname) + enumshort = re.sub(r'([^A-Z])([A-Z])', r'\1_\2', enumshort) + enumshort = re.sub(r'([A-Z][A-Z])([A-Z][0-9a-z])', r'\1_\2', enumshort) + enumshort = enumshort.upper() + + enumname_prefix = re.sub(r'^([A-Z][a-z]*).*$', r'\1', enumname).upper() + + enumlong = enspace.upper() + "_" + enumshort + enumsym = enspace.lower() + "_" + enumshort.lower() + + if option_lowercase_name is not None: + enumsym = option_lowercase_name + else: + enumshort = enumname + if idprefix: + enumshort = re.sub(r'^' + idprefix, '', enumshort) + else: + enumshort = re.sub(r'/^[A-Z][a-z]*', '', enumshort) + + enumshort = re.sub(r'([^A-Z])([A-Z])', r'\1_\2', enumshort) + enumshort = re.sub(r'([A-Z][A-Z])([A-Z][0-9a-z])', r'\1_\2', enumshort) + enumshort = enumshort.upper() + + if symprefix: + enumname_prefix = symprefix.upper() + else: + enumname_prefix = idprefix.upper() + + enumlong = enumname_prefix + "_" + enumshort + enumsym = enumlong.lower() + + if firstenum: + firstenum = False + + if len(fprod) > 0: + prod = fprod + base = os.path.basename(curfilename) + + prod = prod.replace('\u0040filename\u0040', curfilename) + prod = prod.replace('\u0040basename\u0040', base) + prod = replace_specials(prod) + + write_output(prod) + + if len(eprod) > 0: + prod = eprod + + prod = prod.replace('\u0040enum_name\u0040', enumsym) + prod = prod.replace('\u0040EnumName\u0040', enumname) + prod = prod.replace('\u0040ENUMSHORT\u0040', enumshort) + prod = prod.replace('\u0040ENUMNAME\u0040', enumlong) + prod = prod.replace('\u0040ENUMPREFIX\u0040', enumname_prefix) + if flags: + prod = prod.replace('\u0040type\u0040', 'flags') + else: + prod = prod.replace('\u0040type\u0040', 'enum') + if flags: + prod = prod.replace('\u0040Type\u0040', 'Flags') + else: + prod = prod.replace('\u0040Type\u0040', 'Enum') + if flags: + prod = prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + prod = prod.replace('\u0040TYPE\u0040', 'ENUM') + prod = replace_specials(prod) + write_output(prod) + + if len(vhead) > 0: + prod = vhead + prod = prod.replace('\u0040enum_name\u0040', enumsym) + prod = prod.replace('\u0040EnumName\u0040', enumname) + prod = prod.replace('\u0040ENUMSHORT\u0040', enumshort) + prod = prod.replace('\u0040ENUMNAME\u0040', enumlong) + prod = prod.replace('\u0040ENUMPREFIX\u0040', enumname_prefix) + if flags: + prod = prod.replace('\u0040type\u0040', 'flags') + else: + prod = prod.replace('\u0040type\u0040', 'enum') + if flags: + prod = prod.replace('\u0040Type\u0040', 'Flags') + else: + prod = prod.replace('\u0040Type\u0040', 'Enum') + if flags: + prod = prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + prod = prod.replace('\u0040TYPE\u0040', 'ENUM') + prod = replace_specials(prod) + write_output(prod) + + if len(vprod) > 0: + prod = vprod + next_num = 0 + + prod = replace_specials(prod) + for name, num, nick in entries: + tmp_prod = prod + + if '\u0040valuenum\u0040' in prod: + # only attempt to eval the value if it is requested + # this prevents us from throwing errors otherwise + if num is not None: + # use sandboxed evaluation as a reasonable + # approximation to C constant folding + inum = eval(num, {}, {}) + + # make sure it parsed to an integer + if not isinstance(inum, int): + sys.exit("Unable to parse enum value '%s'" % num) + num = inum + else: + num = next_num + + tmp_prod = tmp_prod.replace('\u0040valuenum\u0040', str(num)) + next_num = int(num) + 1 + + tmp_prod = tmp_prod.replace('\u0040VALUENAME\u0040', name) + tmp_prod = tmp_prod.replace('\u0040valuenick\u0040', nick) + if flags: + tmp_prod = tmp_prod.replace('\u0040type\u0040', 'flags') + else: + tmp_prod = tmp_prod.replace('\u0040type\u0040', 'enum') + if flags: + tmp_prod = tmp_prod.replace('\u0040Type\u0040', 'Flags') + else: + tmp_prod = tmp_prod.replace('\u0040Type\u0040', 'Enum') + if flags: + tmp_prod = tmp_prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + tmp_prod = tmp_prod.replace('\u0040TYPE\u0040', 'ENUM') + tmp_prod = tmp_prod.rstrip() + + write_output(tmp_prod) + + if len(vtail) > 0: + prod = vtail + prod = prod.replace('\u0040enum_name\u0040', enumsym) + prod = prod.replace('\u0040EnumName\u0040', enumname) + prod = prod.replace('\u0040ENUMSHORT\u0040', enumshort) + prod = prod.replace('\u0040ENUMNAME\u0040', enumlong) + prod = prod.replace('\u0040ENUMPREFIX\u0040', enumname_prefix) + if flags: + prod = prod.replace('\u0040type\u0040', 'flags') + else: + prod = prod.replace('\u0040type\u0040', 'enum') + if flags: + prod = prod.replace('\u0040Type\u0040', 'Flags') + else: + prod = prod.replace('\u0040Type\u0040', 'Enum') + if flags: + prod = prod.replace('\u0040TYPE\u0040', 'FLAGS') + else: + prod = prod.replace('\u0040TYPE\u0040', 'ENUM') + prod = replace_specials(prod) + write_output(prod) + +for fname in options.args: + process_file(fname) + +if len(ftail) > 0: + prod = ftail + base = os.path.basename(options.args[-1]) # FIXME, wrong + + prod = prod.replace('\u0040filename\u0040', 'ARGV') # wrong too + prod = prod.replace('\u0040basename\u0040', base) + prod = replace_specials(prod) + write_output(prod) # put auto-generation comment -{ - my $comment = $comment_tmpl; - $comment =~ s/\@comment\@/Generated data ends here/; - print "\n" . $comment . "\n\n"; -} - -if (defined ($output)) { - select STDOUT; - my $tmpfilename = $OUTPUT->filename; - close ($OUTPUT) - || warn "Closing output file $tmpfilename failed: $!"; - move ($tmpfilename, $output) - || die "Could not rename $tmpfilename to $output: $!"; -} +comment = comment_tmpl +comment = comment.replace('\u0040comment\u0040', 'Generated data ends here') +write_output("\n" + comment + "\n") + +if tmpfile is not None: + tmpfilename = tmpfile.name + tmpfile.close() + os.unlink(options.output) + os.rename(tmpfilename, options.output) diff --git a/gobject/gmarshal.list b/gobject/gmarshal.list deleted file mode 100644 index 4a5ddf51a..000000000 --- a/gobject/gmarshal.list +++ /dev/null @@ -1,32 +0,0 @@ -# Note: This file used to generate gmarshal.[ch], but it doesn't any -# longer; it is kept mainly for backward compatibility purposes. If -# you find yourself in the need to add a marshaller in GObject, use -# g_cclosure_marshal_generic() instead. -# -# Warning: The generated symbols are part of the GObject ABI. - -# standard VOID return marshallers -VOID:VOID -VOID:BOOLEAN -VOID:CHAR -VOID:UCHAR -VOID:INT -VOID:UINT -VOID:LONG -VOID:ULONG -VOID:ENUM -VOID:FLAGS -VOID:FLOAT -VOID:DOUBLE -VOID:STRING -VOID:PARAM -VOID:BOXED -VOID:POINTER -VOID:OBJECT -VOID:VARIANT - -# GRuntime specific marshallers -VOID:UINT,POINTER -BOOL:FLAGS -STRING:OBJECT,POINTER -BOOL:BOXED,BOXED diff --git a/gobject/gmarshal.strings b/gobject/gmarshal.strings deleted file mode 100644 index 65ca49db0..000000000 --- a/gobject/gmarshal.strings +++ /dev/null @@ -1,22 +0,0 @@ -"g_cclosure_marshal_VOID__VOID", -"g_cclosure_marshal_VOID__BOOLEAN", -"g_cclosure_marshal_VOID__CHAR", -"g_cclosure_marshal_VOID__UCHAR", -"g_cclosure_marshal_VOID__INT", -"g_cclosure_marshal_VOID__UINT", -"g_cclosure_marshal_VOID__LONG", -"g_cclosure_marshal_VOID__ULONG", -"g_cclosure_marshal_VOID__ENUM", -"g_cclosure_marshal_VOID__FLAGS", -"g_cclosure_marshal_VOID__FLOAT", -"g_cclosure_marshal_VOID__DOUBLE", -"g_cclosure_marshal_VOID__STRING", -"g_cclosure_marshal_VOID__PARAM", -"g_cclosure_marshal_VOID__BOXED", -"g_cclosure_marshal_VOID__POINTER", -"g_cclosure_marshal_VOID__OBJECT", -"g_cclosure_marshal_VOID__VARIANT", -"g_cclosure_marshal_VOID__UINT_POINTER", -"g_cclosure_marshal_BOOL__FLAGS", -"g_cclosure_marshal_STRING__OBJECT_POINTER", -"g_cclosure_marshal_BOOL__BOXED_BOXED", diff --git a/gobject/gobject.rc b/gobject/gobject.rc index ec826e81d..ec7cf4ff1 100644 --- a/gobject/gobject.rc +++ b/gobject/gobject.rc @@ -1,8 +1,8 @@ #include <winver.h> VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,53,3,0 - PRODUCTVERSION 2,53,3,0 + FILEVERSION 2,53,4,0 + PRODUCTVERSION 2,53,4,0 FILEFLAGSMASK 0 FILEFLAGS 0 FILEOS VOS__WINDOWS32 @@ -15,12 +15,12 @@ VS_VERSION_INFO VERSIONINFO BEGIN VALUE "CompanyName", "The GLib developer community" VALUE "FileDescription", "GObject" - VALUE "FileVersion", "2.53.3.0" + VALUE "FileVersion", "2.53.4.0" VALUE "InternalName", "libgobject-2.0-0" VALUE "LegalCopyright", "Copyright 1998-2011 Tim Janik, Red Hat, Inc. and others" VALUE "OriginalFilename", "libgobject-2.0-0.dll" VALUE "ProductName", "GLib" - VALUE "ProductVersion", "2.53.3" + VALUE "ProductVersion", "2.53.4" END END BLOCK "VarFileInfo" diff --git a/gobject/makefile.msc b/gobject/makefile.msc deleted file mode 100644 index e2bbb548c..000000000 --- a/gobject/makefile.msc +++ /dev/null @@ -1,83 +0,0 @@ -## Makefile for building the gobject dll with Microsoft C -## Use: nmake -f makefile.msc install - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib -DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=\"GLib-GObject\" \ - -DG_ENABLE_DEBUG -# -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS -# -DG_DISABLE_CAST_CHECKS - -all : \ - glib-genmarshal.exe \ - gmarshal.h \ - gmarshal.c \ - gmarshal.strings \ - gobject-query.exe \ - libgobject-2.0-0.dll \ - gobject-2.53s.lib \ - testgobject.exe - -gobject_OBJECTS = \ - gboxed.obj \ - gclosure.obj \ - genums.obj \ - gobject.obj \ - gparam.obj \ - gparamspecs.obj \ - gsignal.obj \ - gsourceclosure.obj \ - gtype.obj \ - gtypemodule.obj \ - gtypeplugin.obj \ - gvalue.obj \ - gvaluearray.obj \ - gvaluetypes.obj \ - gvaluetransform.obj - -gobject.def: gobject.symbols - echo EXPORTS > gobject.def - cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES \ - -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \ - -DG_GNUC_PRINTF=;G_GNUC_PRINTF gobject.symbols >> gobject.def - -gobject.res : gobject.rc - rc -DBUILDNUMBER=0 -r -fo gobject.res gobject.rc - -gmarshal.h : gmarshal.list glib-genmarshal.exe - echo #ifndef __G_MARSHAL_H__ > xgen-gmh - echo #define __G_MARSHAL_H__ >> xgen-gmh - glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --header >> xgen-gmh - echo #endif /* __G_MARSHAL_H__ */ >> xgen-gmh - copy xgen-gmh gmarshal.h - -gmarshal.c: gmarshal.list gmarshal.h glib-genmarshal.exe - glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --body > gmarshal.c - -libgobject-2.0-0.dll : $(gobject_OBJECTS) gobject.def gobject.res - $(CC) $(CFLAGS) -Fm -LD -Fe$@ $(gobject_OBJECTS) gobject.res \ - ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gobject-2.0.lib /def:gobject.def || del $@ - -gobject-2.53s.lib : $(gobject_OBJECTS) - lib /out:$@ $(gobject_OBJECTS) - -# link glib's static version to avoid installing -glib-genmarshal.exe : glib-genmarshal.c gmarshal.strings - $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION glib-genmarshal.c \ - ..\glib\glib-2.53s.lib user32.lib advapi32.lib ole32.lib shell32.lib $(INTL_LIBS) - -gobject-query.exe : gobject-query.c libgobject-2.0-0.dll - $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION gobject-query.c \ - ..\glib\glib-2.0.lib gobject-2.0.lib user32.lib advapi32.lib $(INTL_LIBS) - -gmarshal.strings : gmarshal.list - perl marshal-genstrings.pl > gmarshal.strings - -.c.exe : - $(CC) $(CFLAGS) -c $< - $(CC) $(CFLAGS) -Fe$@ $< gobject-2.0.lib ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib $(LDFLAGS) user32.lib /subsystem:console diff --git a/gobject/makefile.msc.in b/gobject/makefile.msc.in deleted file mode 100644 index 3f5af9bff..000000000 --- a/gobject/makefile.msc.in +++ /dev/null @@ -1,83 +0,0 @@ -## Makefile for building the gobject dll with Microsoft C -## Use: nmake -f makefile.msc install - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib -DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=\"GLib-GObject\" \ - -DG_ENABLE_DEBUG -# -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS -# -DG_DISABLE_CAST_CHECKS - -all : \ - glib-genmarshal.exe \ - gmarshal.h \ - gmarshal.c \ - gmarshal.strings \ - gobject-query.exe \ - libgobject-2.0-@LT_CURRENT_MINUS_AGE@.dll \ - gobject-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib \ - testgobject.exe - -gobject_OBJECTS = \ - gboxed.obj \ - gclosure.obj \ - genums.obj \ - gobject.obj \ - gparam.obj \ - gparamspecs.obj \ - gsignal.obj \ - gsourceclosure.obj \ - gtype.obj \ - gtypemodule.obj \ - gtypeplugin.obj \ - gvalue.obj \ - gvaluearray.obj \ - gvaluetypes.obj \ - gvaluetransform.obj - -gobject.def: gobject.symbols - echo EXPORTS > gobject.def - cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES \ - -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \ - -DG_GNUC_PRINTF=;G_GNUC_PRINTF gobject.symbols >> gobject.def - -gobject.res : gobject.rc - rc -DBUILDNUMBER=0 -r -fo gobject.res gobject.rc - -gmarshal.h : gmarshal.list glib-genmarshal.exe - echo #ifndef __G_MARSHAL_H__ > xgen-gmh - echo #define __G_MARSHAL_H__ >> xgen-gmh - glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --header >> xgen-gmh - echo #endif /* __G_MARSHAL_H__ */ >> xgen-gmh - copy xgen-gmh gmarshal.h - -gmarshal.c: gmarshal.list gmarshal.h glib-genmarshal.exe - glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --body > gmarshal.c - -libgobject-2.0-@LT_CURRENT_MINUS_AGE@.dll : $(gobject_OBJECTS) gobject.def gobject.res - $(CC) $(CFLAGS) -Fm -LD -Fe$@ $(gobject_OBJECTS) gobject.res \ - ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gobject-2.0.lib /def:gobject.def || del $@ - -gobject-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib : $(gobject_OBJECTS) - lib /out:$@ $(gobject_OBJECTS) - -# link glib's static version to avoid installing -glib-genmarshal.exe : glib-genmarshal.c gmarshal.strings - $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION glib-genmarshal.c \ - ..\glib\glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib user32.lib advapi32.lib ole32.lib shell32.lib $(INTL_LIBS) - -gobject-query.exe : gobject-query.c libgobject-2.0-@LT_CURRENT_MINUS_AGE@.dll - $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION gobject-query.c \ - ..\glib\glib-2.0.lib gobject-2.0.lib user32.lib advapi32.lib $(INTL_LIBS) - -gmarshal.strings : gmarshal.list - perl marshal-genstrings.pl > gmarshal.strings - -.c.exe : - $(CC) $(CFLAGS) -c $< - $(CC) $(CFLAGS) -Fe$@ $< gobject-2.0.lib ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib $(LDFLAGS) user32.lib /subsystem:console diff --git a/gobject/marshal-genstrings.pl b/gobject/marshal-genstrings.pl deleted file mode 100644 index 93fceb46c..000000000 --- a/gobject/marshal-genstrings.pl +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/perl - -open (List, "gmarshal.list"); - -while (<List>) { - next unless /^[A-Z]/; - s/^/"g_cclosure_marshal_/; s/:/__/; s/,/_/g; s/$/",/; - print; -} diff --git a/gobject/tests/Makefile.am b/gobject/tests/Makefile.am index da36e19b8..1cad19c54 100644 --- a/gobject/tests/Makefile.am +++ b/gobject/tests/Makefile.am @@ -35,8 +35,7 @@ ifaceproperties_SOURCES = ifaceproperties.c testcommon.h # The marshalers test requires running a binary, so we cannot build it when # cross-compiling -if !CROSS_COMPILING -glib_genmarshal=$(top_builddir)/gobject/glib-genmarshal +glib_genmarshal = $(top_builddir)/gobject/glib-genmarshal test_programs += signals signals_SOURCES = signals.c @@ -45,10 +44,21 @@ signals.o: marshalers.h CLEANFILES += marshalers.h marshalers.c EXTRA_DIST += marshalers.list -marshalers.h: Makefile.am marshalers.list - $(AM_V_GEN) $(glib_genmarshal) --prefix=test $(srcdir)/marshalers.list --header --valist-marshallers > marshalers.h +marshalers.h: $(srcdir)/marshalers.list Makefile.am + $(AM_V_GEN) $(glib_genmarshal) \ + --prefix=test \ + --valist-marshallers \ + --output=$@ \ + --quiet \ + --header \ + $< -marshalers.c: Makefile.am marshalers.h marshalers.list - $(AM_V_GEN) (echo "#include \"marshalers.h\""; $(glib_genmarshal) --prefix=test $(srcdir)/marshalers.list --body --valist-marshallers) > $@.tmp && mv $@.tmp $@ - -endif # !CROSS_COMPILING +marshalers.c: $(srcdir)/marshalers.list marshalers.h Makefile.am + $(AM_V_GEN) $(glib_genmarshal) \ + --prefix=test \ + --valist-marshallers \ + --include-header=marshalers.h \ + --output=$@ \ + --quiet \ + --body \ + $< diff --git a/gobject/tests/Makefile.in b/gobject/tests/Makefile.in index a5bc5b716..78f2a75c8 100644 --- a/gobject/tests/Makefile.in +++ b/gobject/tests/Makefile.in @@ -93,10 +93,10 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -TESTS = $(am__EXEEXT_3) -installed_test_PROGRAMS = $(am__EXEEXT_6) -noinst_PROGRAMS = $(am__EXEEXT_7) -check_PROGRAMS = $(am__EXEEXT_5) +TESTS = $(am__EXEEXT_2) +installed_test_PROGRAMS = $(am__EXEEXT_5) +noinst_PROGRAMS = $(am__EXEEXT_6) +check_PROGRAMS = $(am__EXEEXT_4) @ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_1 = $(all_test_ltlibs) @ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_2 = $(all_test_programs) @ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_3 = $(all_test_scripts) @@ -122,9 +122,6 @@ check_PROGRAMS = $(am__EXEEXT_5) @ENABLE_INSTALLED_TESTS_TRUE@ $(dist_installed_test_data) @ENABLE_INSTALLED_TESTS_TRUE@am__append_12 = $(test_ltlibraries) $(installed_test_ltlibraries) @ENABLE_INSTALLED_TESTS_TRUE@am__append_13 = $(installed_test_meta_DATA) -@CROSS_COMPILING_FALSE@am__append_14 = signals -@CROSS_COMPILING_FALSE@am__append_15 = marshalers.h marshalers.c -@CROSS_COMPILING_FALSE@am__append_16 = marshalers.list subdir = gobject/tests ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4macros/attributes.m4 \ @@ -181,17 +178,16 @@ am__installdirs = "$(DESTDIR)$(installed_testdir)" \ "$(DESTDIR)$(installed_testdir)" LTLIBRARIES = $(installed_test_LTLIBRARIES) $(noinst_LTLIBRARIES) am__EXEEXT_1 = -@CROSS_COMPILING_FALSE@am__EXEEXT_2 = signals$(EXEEXT) -am__EXEEXT_3 = qdata$(EXEEXT) boxed$(EXEEXT) enums$(EXEEXT) \ +am__EXEEXT_2 = qdata$(EXEEXT) boxed$(EXEEXT) enums$(EXEEXT) \ param$(EXEEXT) threadtests$(EXEEXT) dynamictests$(EXEEXT) \ binding$(EXEEXT) properties$(EXEEXT) reference$(EXEEXT) \ value$(EXEEXT) type$(EXEEXT) private$(EXEEXT) closure$(EXEEXT) \ object$(EXEEXT) signal-handler$(EXEEXT) $(am__EXEEXT_1) \ - ifaceproperties$(EXEEXT) $(am__EXEEXT_2) -am__EXEEXT_4 = $(am__EXEEXT_3) -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__EXEEXT_5 = $(am__EXEEXT_4) -@ENABLE_INSTALLED_TESTS_TRUE@am__EXEEXT_6 = $(am__EXEEXT_3) -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__EXEEXT_7 = $(am__EXEEXT_4) + ifaceproperties$(EXEEXT) signals$(EXEEXT) +am__EXEEXT_3 = $(am__EXEEXT_2) +@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__EXEEXT_4 = $(am__EXEEXT_3) +@ENABLE_INSTALLED_TESTS_TRUE@am__EXEEXT_5 = $(am__EXEEXT_2) +@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__EXEEXT_6 = $(am__EXEEXT_3) PROGRAMS = $(installed_test_PROGRAMS) $(noinst_PROGRAMS) binding_SOURCES = binding.c binding_OBJECTS = binding.$(OBJEXT) @@ -262,9 +258,8 @@ signal_handler_OBJECTS = signal-handler.$(OBJEXT) signal_handler_LDADD = $(LDADD) signal_handler_DEPENDENCIES = ../libgobject-2.0.la \ $(top_builddir)/glib/libglib-2.0.la -am__signals_SOURCES_DIST = signals.c -@CROSS_COMPILING_FALSE@am_signals_OBJECTS = signals.$(OBJEXT) -@CROSS_COMPILING_FALSE@nodist_signals_OBJECTS = marshalers.$(OBJEXT) +am_signals_OBJECTS = signals.$(OBJEXT) +nodist_signals_OBJECTS = marshalers.$(OBJEXT) signals_OBJECTS = $(am_signals_OBJECTS) $(nodist_signals_OBJECTS) signals_LDADD = $(LDADD) signals_DEPENDENCIES = ../libgobject-2.0.la \ @@ -327,7 +322,7 @@ SOURCES = binding.c boxed.c closure.c dynamictests.c enums.c \ DIST_SOURCES = binding.c boxed.c closure.c dynamictests.c enums.c \ $(ifaceproperties_SOURCES) object.c param.c private.c \ properties.c qdata.c reference.c signal-handler.c \ - $(am__signals_SOURCES_DIST) threadtests.c type.c value.c + $(signals_SOURCES) threadtests.c type.c value.c am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -792,11 +787,11 @@ NULL = # initialize variables for unconditional += appending BUILT_SOURCES = BUILT_EXTRA_DIST = -CLEANFILES = *.log *.trs $(am__append_13) $(am__append_15) +CLEANFILES = *.log *.trs $(am__append_13) marshalers.h marshalers.c DISTCLEANFILES = MAINTAINERCLEANFILES = EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ - $(am__append_16) + marshalers.list installed_test_LTLIBRARIES = $(am__append_12) installed_test_SCRIPTS = $(am__append_10) nobase_installed_test_DATA = $(am__append_11) @@ -839,16 +834,16 @@ AM_CFLAGS = $(GLIB_WARN_CFLAGS) # ----------------------------------------------------------------------------- test_programs = qdata boxed enums param threadtests dynamictests \ binding properties reference value type private closure object \ - signal-handler $(NULL) ifaceproperties $(am__append_14) + signal-handler $(NULL) ifaceproperties signals ifaceproperties_SOURCES = ifaceproperties.c testcommon.h # ----------------------------------------------------------------------------- # The marshalers test requires running a binary, so we cannot build it when # cross-compiling -@CROSS_COMPILING_FALSE@glib_genmarshal = $(top_builddir)/gobject/glib-genmarshal -@CROSS_COMPILING_FALSE@signals_SOURCES = signals.c -@CROSS_COMPILING_FALSE@nodist_signals_SOURCES = marshalers.c marshalers.h +glib_genmarshal = $(top_builddir)/gobject/glib-genmarshal +signals_SOURCES = signals.c +nodist_signals_SOURCES = marshalers.c marshalers.h all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-am @@ -1730,13 +1725,26 @@ uninstall-am: uninstall-installed_testLTLIBRARIES \ @ENABLE_INSTALLED_TESTS_TRUE@ echo 'Exec=$(installed_testdir)/$(notdir $<) --tap' >> $@.tmp; \ @ENABLE_INSTALLED_TESTS_TRUE@ echo 'Output=TAP' >> $@.tmp; \ @ENABLE_INSTALLED_TESTS_TRUE@ mv $@.tmp $@) -@CROSS_COMPILING_FALSE@signals.o: marshalers.h - -@CROSS_COMPILING_FALSE@marshalers.h: Makefile.am marshalers.list -@CROSS_COMPILING_FALSE@ $(AM_V_GEN) $(glib_genmarshal) --prefix=test $(srcdir)/marshalers.list --header --valist-marshallers > marshalers.h - -@CROSS_COMPILING_FALSE@marshalers.c: Makefile.am marshalers.h marshalers.list -@CROSS_COMPILING_FALSE@ $(AM_V_GEN) (echo "#include \"marshalers.h\""; $(glib_genmarshal) --prefix=test $(srcdir)/marshalers.list --body --valist-marshallers) > $@.tmp && mv $@.tmp $@ +signals.o: marshalers.h + +marshalers.h: $(srcdir)/marshalers.list Makefile.am + $(AM_V_GEN) $(glib_genmarshal) \ + --prefix=test \ + --valist-marshallers \ + --output=$@ \ + --quiet \ + --header \ + $< + +marshalers.c: $(srcdir)/marshalers.list marshalers.h Makefile.am + $(AM_V_GEN) $(glib_genmarshal) \ + --prefix=test \ + --valist-marshallers \ + --include-header=marshalers.h \ + --output=$@ \ + --quiet \ + --body \ + $< # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/gthread/Makefile.am b/gthread/Makefile.am index 9760be44d..94f8e90d8 100644 --- a/gthread/Makefile.am +++ b/gthread/Makefile.am @@ -10,12 +10,10 @@ AM_CPPFLAGS = \ AM_CFLAGS = $(GLIB_WARN_CFLAGS) EXTRA_DIST += \ - makefile.msc.in \ gthread.def \ gthread.rc.in BUILT_EXTRA_DIST += \ - makefile.msc \ gthread.rc libglib = $(top_builddir)/glib/libglib-2.0.la diff --git a/gthread/Makefile.in b/gthread/Makefile.in index 80e6704bf..a8b2c1273 100644 --- a/gthread/Makefile.in +++ b/gthread/Makefile.in @@ -146,7 +146,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = makefile.msc gthread.rc +CONFIG_CLEAN_FILES = gthread.rc CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -436,8 +436,8 @@ am__set_b = \ b='$*';; \ esac am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/gthread.rc.in \ - $(srcdir)/makefile.msc.in $(top_srcdir)/depcomp \ - $(top_srcdir)/glib.mk $(top_srcdir)/test-driver ChangeLog + $(top_srcdir)/depcomp $(top_srcdir)/glib.mk \ + $(top_srcdir)/test-driver ChangeLog DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ABS_TAPSET_DIR = @ABS_TAPSET_DIR@ ACLOCAL = @ACLOCAL@ @@ -693,12 +693,12 @@ NULL = # initialize variables for unconditional += appending BUILT_SOURCES = -BUILT_EXTRA_DIST = makefile.msc gthread.rc +BUILT_EXTRA_DIST = gthread.rc CLEANFILES = *.log *.trs $(am__append_14) DISTCLEANFILES = MAINTAINERCLEANFILES = EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ - makefile.msc.in gthread.def gthread.rc.in + gthread.def gthread.rc.in # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. @@ -838,8 +838,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): -makefile.msc: $(top_builddir)/config.status $(srcdir)/makefile.msc.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ gthread.rc: $(top_builddir)/config.status $(srcdir)/gthread.rc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ diff --git a/gthread/gthread.rc b/gthread/gthread.rc index 501d33cd5..6200d67d0 100644 --- a/gthread/gthread.rc +++ b/gthread/gthread.rc @@ -1,8 +1,8 @@ #include <winver.h> VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,53,3,0 - PRODUCTVERSION 2,53,3,0 + FILEVERSION 2,53,4,0 + PRODUCTVERSION 2,53,4,0 FILEFLAGSMASK 0 FILEFLAGS 0 FILEOS VOS__WINDOWS32 @@ -15,12 +15,12 @@ VS_VERSION_INFO VERSIONINFO BEGIN VALUE "CompanyName", "The GLib developer community" VALUE "FileDescription", "GThread" - VALUE "FileVersion", "2.53.3.0" + VALUE "FileVersion", "2.53.4.0" VALUE "InternalName", "libgthread-2.0-0" VALUE "LegalCopyright", "Copyright 1995-2011 Peter Mattis, Spencer Kimball, Josh MacDonald, Sebastian Wilhelmi and others." VALUE "OriginalFilename", "libgthread-2.0-0.dll" VALUE "ProductName", "GLib" - VALUE "ProductVersion", "2.53.3" + VALUE "ProductVersion", "2.53.4" END END BLOCK "VarFileInfo" diff --git a/gthread/makefile.msc b/gthread/makefile.msc deleted file mode 100644 index edcc6c954..000000000 --- a/gthread/makefile.msc +++ /dev/null @@ -1,26 +0,0 @@ -## Makefile for building the gthread dll with Microsoft C -## Use: nmake -f makefile.msc install - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib -DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GThread\" -all : \ - libgthread-2.0-0.dll - -gthread_OBJECTS = \ - gthread-impl.obj - -gthread-impl.obj : gthread-impl.c gthread-win32.c - $(CC) -c $(CFLAGS) gthread-impl.c - -gthread.res : gthread.rc - rc -DBUILDNUMBER=0 -r -fo gthread.res gthread.rc - -libgthread-2.0-0.dll : $(gthread_OBJECTS) gthread.def gthread.res - $(CC) $(CFLAGS) -LD -Fe$@ $(gthread_OBJECTS) gthread.res \ - ..\glib\glib-2.0.lib $(DEPCLIBS) user32.lib $(LDFLAGS) /implib:gthread-2.0.lib /def:gthread.def diff --git a/gthread/makefile.msc.in b/gthread/makefile.msc.in deleted file mode 100644 index 226bf9cd8..000000000 --- a/gthread/makefile.msc.in +++ /dev/null @@ -1,26 +0,0 @@ -## Makefile for building the gthread dll with Microsoft C -## Use: nmake -f makefile.msc install - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib -DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GThread\" -all : \ - libgthread-2.0-@LT_CURRENT_MINUS_AGE@.dll - -gthread_OBJECTS = \ - gthread-impl.obj - -gthread-impl.obj : gthread-impl.c gthread-win32.c - $(CC) -c $(CFLAGS) gthread-impl.c - -gthread.res : gthread.rc - rc -DBUILDNUMBER=0 -r -fo gthread.res gthread.rc - -libgthread-2.0-@LT_CURRENT_MINUS_AGE@.dll : $(gthread_OBJECTS) gthread.def gthread.res - $(CC) $(CFLAGS) -LD -Fe$@ $(gthread_OBJECTS) gthread.res \ - ..\glib\glib-2.0.lib $(DEPCLIBS) user32.lib $(LDFLAGS) /implib:gthread-2.0.lib /def:gthread.def diff --git a/makefile.msc b/makefile.msc deleted file mode 100644 index 52e07f6dd..000000000 --- a/makefile.msc +++ /dev/null @@ -1,28 +0,0 @@ -## Makefile for building the GLib dlls with Microsoft C -## Use: nmake -f makefile.msc - -PARTS = glib gmodule gthread gobject gio tests - -all : \ - config.h \ - glibconfig.h \ - sub-all - -sub-all: - for %d in ($(PARTS)) do nmake -nologo -f makefile.msc sub-one THIS=%d TARGET=all - -clean : sub-clean - -sub-clean: - for %d in ($(PARTS)) do nmake -nologo -f makefile.msc sub-one THIS=%d TARGET=clean - -sub-one: - @cd $(THIS) - @nmake -nologo -f makefile.msc $(TARGET) - @cd .. - -config.h: config.h.win32 - copy config.h.win32 config.h - -glibconfig.h: glibconfig.h.win32 - copy glibconfig.h.win32 glibconfig.h diff --git a/po/glib20.pot b/po/glib20.pot index 1447c89b3..e7d3d615d 100644 --- a/po/glib20.pot +++ b/po/glib20.pot @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=glib&keywords=I18N+L10N&component=general\n" -"POT-Creation-Date: 2017-06-19 22:04-0400\n" +"POT-Creation-Date: 2017-07-17 14:54-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -37,7 +37,7 @@ msgstr "" #: ../gio/gapplication-tool.c:45 ../gio/gapplication-tool.c:46 #: ../gio/gio-tool.c:227 ../gio/gresource-tool.c:488 -#: ../gio/gsettings-tool.c:520 +#: ../gio/gsettings-tool.c:522 msgid "Print help" msgstr "" @@ -50,7 +50,7 @@ msgstr "" msgid "Print version" msgstr "" -#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:526 +#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:528 msgid "Print version information and exit" msgstr "" @@ -138,7 +138,7 @@ msgid "Optional parameter to the action invocation, in GVariant format" msgstr "" #: ../gio/gapplication-tool.c:96 ../gio/gresource-tool.c:526 -#: ../gio/gsettings-tool.c:612 +#: ../gio/gsettings-tool.c:614 #, c-format msgid "" "Unknown command %s\n" @@ -150,7 +150,7 @@ msgid "Usage:\n" msgstr "" #: ../gio/gapplication-tool.c:114 ../gio/gresource-tool.c:551 -#: ../gio/gsettings-tool.c:647 +#: ../gio/gsettings-tool.c:649 msgid "Arguments:\n" msgstr "" @@ -289,7 +289,7 @@ msgstr "" #: ../gio/gcharsetconverter.c:342 ../gio/gdatainputstream.c:848 #: ../gio/gdatainputstream.c:1257 ../glib/gconvert.c:438 ../glib/gconvert.c:845 #: ../glib/giochannel.c:1556 ../glib/giochannel.c:1598 -#: ../glib/giochannel.c:2442 ../glib/gutf8.c:856 ../glib/gutf8.c:1309 +#: ../glib/giochannel.c:2442 ../glib/gutf8.c:866 ../glib/gutf8.c:1319 msgid "Invalid byte sequence in conversion input" msgstr "" @@ -1263,11 +1263,11 @@ msgstr "" #: ../gio/gfile.c:969 ../gio/gfile.c:1207 ../gio/gfile.c:1345 #: ../gio/gfile.c:1583 ../gio/gfile.c:1638 ../gio/gfile.c:1696 #: ../gio/gfile.c:1780 ../gio/gfile.c:1837 ../gio/gfile.c:1901 -#: ../gio/gfile.c:1956 ../gio/gfile.c:3609 ../gio/gfile.c:3664 -#: ../gio/gfile.c:3900 ../gio/gfile.c:3942 ../gio/gfile.c:4410 -#: ../gio/gfile.c:4821 ../gio/gfile.c:4906 ../gio/gfile.c:4996 -#: ../gio/gfile.c:5093 ../gio/gfile.c:5180 ../gio/gfile.c:5281 -#: ../gio/gfile.c:7822 ../gio/gfile.c:7912 ../gio/gfile.c:7996 +#: ../gio/gfile.c:1956 ../gio/gfile.c:3613 ../gio/gfile.c:3668 +#: ../gio/gfile.c:3904 ../gio/gfile.c:3946 ../gio/gfile.c:4414 +#: ../gio/gfile.c:4825 ../gio/gfile.c:4910 ../gio/gfile.c:5000 +#: ../gio/gfile.c:5097 ../gio/gfile.c:5184 ../gio/gfile.c:5285 +#: ../gio/gfile.c:7826 ../gio/gfile.c:7916 ../gio/gfile.c:8000 #: ../gio/win32/gwinhttpfile.c:437 msgid "Operation not supported" msgstr "" @@ -1321,24 +1321,24 @@ msgstr "" msgid "Can’t copy special file" msgstr "" -#: ../gio/gfile.c:3890 +#: ../gio/gfile.c:3894 msgid "Invalid symlink value given" msgstr "" -#: ../gio/gfile.c:4051 +#: ../gio/gfile.c:4055 msgid "Trash not supported" msgstr "" -#: ../gio/gfile.c:4163 +#: ../gio/gfile.c:4167 #, c-format msgid "File names cannot contain “%c”" msgstr "" -#: ../gio/gfile.c:6609 ../gio/gvolume.c:363 +#: ../gio/gfile.c:6613 ../gio/gvolume.c:363 msgid "volume doesn’t implement mount" msgstr "" -#: ../gio/gfile.c:6718 +#: ../gio/gfile.c:6722 msgid "No application is registered as handling this file" msgstr "" @@ -3003,7 +3003,7 @@ msgstr "" msgid " SECTION An (optional) elf section name\n" msgstr "" -#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:654 +#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:656 msgid " COMMAND The (optional) command to explain\n" msgstr "" @@ -3034,7 +3034,7 @@ msgid " PATH A resource path\n" msgstr "" #: ../gio/gsettings-tool.c:51 ../gio/gsettings-tool.c:72 -#: ../gio/gsettings-tool.c:851 +#: ../gio/gsettings-tool.c:853 #, c-format msgid "No such schema “%s”\n" msgstr "" @@ -3069,97 +3069,97 @@ msgstr "" msgid "Path must not contain two adjacent slashes (//)\n" msgstr "" -#: ../gio/gsettings-tool.c:489 +#: ../gio/gsettings-tool.c:491 #, c-format msgid "The provided value is outside of the valid range\n" msgstr "" -#: ../gio/gsettings-tool.c:496 +#: ../gio/gsettings-tool.c:498 #, c-format msgid "The key is not writable\n" msgstr "" -#: ../gio/gsettings-tool.c:532 +#: ../gio/gsettings-tool.c:534 msgid "List the installed (non-relocatable) schemas" msgstr "" -#: ../gio/gsettings-tool.c:538 +#: ../gio/gsettings-tool.c:540 msgid "List the installed relocatable schemas" msgstr "" -#: ../gio/gsettings-tool.c:544 +#: ../gio/gsettings-tool.c:546 msgid "List the keys in SCHEMA" msgstr "" -#: ../gio/gsettings-tool.c:545 ../gio/gsettings-tool.c:551 -#: ../gio/gsettings-tool.c:594 +#: ../gio/gsettings-tool.c:547 ../gio/gsettings-tool.c:553 +#: ../gio/gsettings-tool.c:596 msgid "SCHEMA[:PATH]" msgstr "" -#: ../gio/gsettings-tool.c:550 +#: ../gio/gsettings-tool.c:552 msgid "List the children of SCHEMA" msgstr "" -#: ../gio/gsettings-tool.c:556 +#: ../gio/gsettings-tool.c:558 msgid "" "List keys and values, recursively\n" "If no SCHEMA is given, list all keys\n" msgstr "" -#: ../gio/gsettings-tool.c:558 +#: ../gio/gsettings-tool.c:560 msgid "[SCHEMA[:PATH]]" msgstr "" -#: ../gio/gsettings-tool.c:563 +#: ../gio/gsettings-tool.c:565 msgid "Get the value of KEY" msgstr "" -#: ../gio/gsettings-tool.c:564 ../gio/gsettings-tool.c:570 -#: ../gio/gsettings-tool.c:576 ../gio/gsettings-tool.c:588 -#: ../gio/gsettings-tool.c:600 +#: ../gio/gsettings-tool.c:566 ../gio/gsettings-tool.c:572 +#: ../gio/gsettings-tool.c:578 ../gio/gsettings-tool.c:590 +#: ../gio/gsettings-tool.c:602 msgid "SCHEMA[:PATH] KEY" msgstr "" -#: ../gio/gsettings-tool.c:569 +#: ../gio/gsettings-tool.c:571 msgid "Query the range of valid values for KEY" msgstr "" -#: ../gio/gsettings-tool.c:575 +#: ../gio/gsettings-tool.c:577 msgid "Query the description for KEY" msgstr "" -#: ../gio/gsettings-tool.c:581 +#: ../gio/gsettings-tool.c:583 msgid "Set the value of KEY to VALUE" msgstr "" -#: ../gio/gsettings-tool.c:582 +#: ../gio/gsettings-tool.c:584 msgid "SCHEMA[:PATH] KEY VALUE" msgstr "" -#: ../gio/gsettings-tool.c:587 +#: ../gio/gsettings-tool.c:589 msgid "Reset KEY to its default value" msgstr "" -#: ../gio/gsettings-tool.c:593 +#: ../gio/gsettings-tool.c:595 msgid "Reset all keys in SCHEMA to their defaults" msgstr "" -#: ../gio/gsettings-tool.c:599 +#: ../gio/gsettings-tool.c:601 msgid "Check if KEY is writable" msgstr "" -#: ../gio/gsettings-tool.c:605 +#: ../gio/gsettings-tool.c:607 msgid "" "Monitor KEY for changes.\n" "If no KEY is specified, monitor all keys in SCHEMA.\n" "Use ^C to stop monitoring.\n" msgstr "" -#: ../gio/gsettings-tool.c:608 +#: ../gio/gsettings-tool.c:610 msgid "SCHEMA[:PATH] [KEY]" msgstr "" -#: ../gio/gsettings-tool.c:620 +#: ../gio/gsettings-tool.c:622 msgid "" "Usage:\n" " gsettings --version\n" @@ -3185,7 +3185,7 @@ msgid "" "\n" msgstr "" -#: ../gio/gsettings-tool.c:644 +#: ../gio/gsettings-tool.c:646 #, c-format msgid "" "Usage:\n" @@ -3195,44 +3195,44 @@ msgid "" "\n" msgstr "" -#: ../gio/gsettings-tool.c:650 +#: ../gio/gsettings-tool.c:652 msgid " SCHEMADIR A directory to search for additional schemas\n" msgstr "" -#: ../gio/gsettings-tool.c:658 +#: ../gio/gsettings-tool.c:660 msgid "" " SCHEMA The name of the schema\n" " PATH The path, for relocatable schemas\n" msgstr "" -#: ../gio/gsettings-tool.c:663 +#: ../gio/gsettings-tool.c:665 msgid " KEY The (optional) key within the schema\n" msgstr "" -#: ../gio/gsettings-tool.c:667 +#: ../gio/gsettings-tool.c:669 msgid " KEY The key within the schema\n" msgstr "" -#: ../gio/gsettings-tool.c:671 +#: ../gio/gsettings-tool.c:673 msgid " VALUE The value to set\n" msgstr "" -#: ../gio/gsettings-tool.c:726 +#: ../gio/gsettings-tool.c:728 #, c-format msgid "Could not load schemas from %s: %s\n" msgstr "" -#: ../gio/gsettings-tool.c:738 +#: ../gio/gsettings-tool.c:740 #, c-format msgid "No schemas installed\n" msgstr "" -#: ../gio/gsettings-tool.c:809 +#: ../gio/gsettings-tool.c:811 #, c-format msgid "Empty schema name given\n" msgstr "" -#: ../gio/gsettings-tool.c:864 +#: ../gio/gsettings-tool.c:866 #, c-format msgid "No such key “%s”\n" msgstr "" @@ -3780,8 +3780,8 @@ msgstr "" msgid "Failed to expand exec line “%s” with URI “%s”" msgstr "" -#: ../glib/gconvert.c:477 ../glib/gutf8.c:852 ../glib/gutf8.c:1064 -#: ../glib/gutf8.c:1201 ../glib/gutf8.c:1305 +#: ../glib/gconvert.c:477 ../glib/gutf8.c:862 ../glib/gutf8.c:1074 +#: ../glib/gutf8.c:1211 ../glib/gutf8.c:1315 msgid "Partial character sequence at end of input" msgstr "" @@ -5023,20 +5023,20 @@ msgstr "" msgid "“%s” is not an unsigned number" msgstr "" -#: ../glib/gutf8.c:798 +#: ../glib/gutf8.c:808 msgid "Failed to allocate memory" msgstr "" -#: ../glib/gutf8.c:931 +#: ../glib/gutf8.c:941 msgid "Character out of range for UTF-8" msgstr "" -#: ../glib/gutf8.c:1032 ../glib/gutf8.c:1041 ../glib/gutf8.c:1171 -#: ../glib/gutf8.c:1180 ../glib/gutf8.c:1319 ../glib/gutf8.c:1416 +#: ../glib/gutf8.c:1042 ../glib/gutf8.c:1051 ../glib/gutf8.c:1181 +#: ../glib/gutf8.c:1190 ../glib/gutf8.c:1329 ../glib/gutf8.c:1426 msgid "Invalid sequence in conversion input" msgstr "" -#: ../glib/gutf8.c:1330 ../glib/gutf8.c:1427 +#: ../glib/gutf8.c:1340 ../glib/gutf8.c:1437 msgid "Character out of range for UTF-16" msgstr "" @@ -15,8 +15,8 @@ msgstr "" "Project-Id-Version: glib.HEAD.he\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=glib&keywords=I18N+L10N&component=general\n" -"POT-Creation-Date: 2017-03-30 17:55+0300\n" -"PO-Revision-Date: 2017-03-30 17:56+0300\n" +"POT-Creation-Date: 2017-07-09 20:45+0300\n" +"PO-Revision-Date: 2017-07-09 20:46+0300\n" "Last-Translator: Yosef Or Boczko <yoseforb@gmail.com>\n" "Language-Team: עברית <>\n" "Language: he\n" @@ -26,25 +26,25 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Gtranslator 2.91.6\n" -#: ../gio/gapplication.c:493 +#: ../gio/gapplication.c:490 msgid "GApplication options" msgstr "GApplication options" -#: ../gio/gapplication.c:493 +#: ../gio/gapplication.c:490 msgid "Show GApplication options" msgstr "Show GApplication options" -#: ../gio/gapplication.c:538 +#: ../gio/gapplication.c:535 msgid "Enter GApplication service mode (use from D-Bus service files)" msgstr "Enter GApplication service mode (use from D-Bus service files)" -#: ../gio/gapplication.c:550 +#: ../gio/gapplication.c:547 msgid "Override the application’s ID" msgstr "Override the application’s ID" #: ../gio/gapplication-tool.c:45 ../gio/gapplication-tool.c:46 -#: ../gio/gio-tool.c:209 ../gio/gresource-tool.c:488 -#: ../gio/gsettings-tool.c:520 +#: ../gio/gio-tool.c:227 ../gio/gresource-tool.c:488 +#: ../gio/gsettings-tool.c:522 msgid "Print help" msgstr "Print help" @@ -53,11 +53,11 @@ msgstr "Print help" msgid "[COMMAND]" msgstr "[COMMAND]" -#: ../gio/gapplication-tool.c:49 ../gio/gio-tool.c:210 +#: ../gio/gapplication-tool.c:49 ../gio/gio-tool.c:228 msgid "Print version" msgstr "Print version" -#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:526 +#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:528 msgid "Print version information and exit" msgstr "Print version information and exit" @@ -106,7 +106,7 @@ msgid "APPID" msgstr "APPID" #: ../gio/gapplication-tool.c:70 ../gio/gapplication-tool.c:133 -#: ../gio/gdbus-tool.c:90 ../gio/gio-tool.c:206 +#: ../gio/gdbus-tool.c:90 ../gio/gio-tool.c:224 msgid "COMMAND" msgstr "COMMAND" @@ -145,7 +145,7 @@ msgid "Optional parameter to the action invocation, in GVariant format" msgstr "Optional parameter to the action invocation, in GVariant format" #: ../gio/gapplication-tool.c:96 ../gio/gresource-tool.c:526 -#: ../gio/gsettings-tool.c:612 +#: ../gio/gsettings-tool.c:614 #, c-format msgid "" "Unknown command %s\n" @@ -159,7 +159,7 @@ msgid "Usage:\n" msgstr "Usage:\n" #: ../gio/gapplication-tool.c:114 ../gio/gresource-tool.c:551 -#: ../gio/gsettings-tool.c:647 +#: ../gio/gsettings-tool.c:649 msgid "Arguments:\n" msgstr "Arguments:\n" @@ -287,7 +287,7 @@ msgid "Truncate not supported on base stream" msgstr "Truncate not supported on base stream" #: ../gio/gcancellable.c:317 ../gio/gdbusconnection.c:1849 -#: ../gio/gdbusprivate.c:1379 ../gio/gsimpleasyncresult.c:870 +#: ../gio/gdbusprivate.c:1402 ../gio/gsimpleasyncresult.c:870 #: ../gio/gsimpleasyncresult.c:896 #, c-format msgid "Operation was cancelled" @@ -308,7 +308,7 @@ msgstr "Not enough space in destination" #: ../gio/gcharsetconverter.c:342 ../gio/gdatainputstream.c:848 #: ../gio/gdatainputstream.c:1257 ../glib/gconvert.c:438 ../glib/gconvert.c:845 #: ../glib/giochannel.c:1556 ../glib/giochannel.c:1598 -#: ../glib/giochannel.c:2442 ../glib/gutf8.c:856 ../glib/gutf8.c:1309 +#: ../glib/giochannel.c:2442 ../glib/gutf8.c:866 ../glib/gutf8.c:1319 msgid "Invalid byte sequence in conversion input" msgstr "Invalid byte sequence in conversion input" @@ -318,7 +318,7 @@ msgstr "Invalid byte sequence in conversion input" msgid "Error during conversion: %s" msgstr "Error during conversion: %s" -#: ../gio/gcharsetconverter.c:444 ../gio/gsocket.c:1085 +#: ../gio/gcharsetconverter.c:444 ../gio/gsocket.c:1095 msgid "Cancellable initialization not supported" msgstr "Cancellable initialization not supported" @@ -521,7 +521,7 @@ msgstr "" "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable " "— unknown value “%s”" -#: ../gio/gdbusaddress.c:1654 ../gio/gdbusconnection.c:7153 +#: ../gio/gdbusaddress.c:1654 ../gio/gdbusconnection.c:7155 msgid "" "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment " "variable is not set" @@ -629,7 +629,7 @@ msgstr "Error opening keyring “%s” for writing: " msgid "(Additionally, releasing the lock for “%s” also failed: %s) " msgstr "(Additionally, releasing the lock for “%s” also failed: %s) " -#: ../gio/gdbusconnection.c:612 ../gio/gdbusconnection.c:2377 +#: ../gio/gdbusconnection.c:612 ../gio/gdbusconnection.c:2378 msgid "The connection is closed" msgstr "The connection is closed" @@ -637,91 +637,91 @@ msgstr "The connection is closed" msgid "Timeout was reached" msgstr "Timeout was reached" -#: ../gio/gdbusconnection.c:2499 +#: ../gio/gdbusconnection.c:2500 msgid "" "Unsupported flags encountered when constructing a client-side connection" msgstr "" "Unsupported flags encountered when constructing a client-side connection" -#: ../gio/gdbusconnection.c:4120 ../gio/gdbusconnection.c:4467 +#: ../gio/gdbusconnection.c:4124 ../gio/gdbusconnection.c:4471 #, c-format msgid "" "No such interface 'org.freedesktop.DBus.Properties' on object at path %s" msgstr "" "No such interface 'org.freedesktop.DBus.Properties' on object at path %s" -#: ../gio/gdbusconnection.c:4262 +#: ../gio/gdbusconnection.c:4266 #, c-format msgid "No such property '%s'" msgstr "No such property '%s'" -#: ../gio/gdbusconnection.c:4274 +#: ../gio/gdbusconnection.c:4278 #, c-format msgid "Property '%s' is not readable" msgstr "Property '%s' is not readable" -#: ../gio/gdbusconnection.c:4285 +#: ../gio/gdbusconnection.c:4289 #, c-format msgid "Property '%s' is not writable" msgstr "Property '%s' is not writable" -#: ../gio/gdbusconnection.c:4305 +#: ../gio/gdbusconnection.c:4309 #, c-format msgid "Error setting property '%s': Expected type '%s' but got '%s'" msgstr "Error setting property '%s': Expected type '%s' but got '%s'" -#: ../gio/gdbusconnection.c:4410 ../gio/gdbusconnection.c:4618 -#: ../gio/gdbusconnection.c:6584 +#: ../gio/gdbusconnection.c:4414 ../gio/gdbusconnection.c:4622 +#: ../gio/gdbusconnection.c:6586 #, c-format msgid "No such interface '%s'" msgstr "No such interface '%s'" -#: ../gio/gdbusconnection.c:4836 ../gio/gdbusconnection.c:7093 +#: ../gio/gdbusconnection.c:4840 ../gio/gdbusconnection.c:7095 #, c-format msgid "No such interface '%s' on object at path %s" msgstr "No such interface '%s' on object at path %s" -#: ../gio/gdbusconnection.c:4934 +#: ../gio/gdbusconnection.c:4938 #, c-format msgid "No such method '%s'" msgstr "No such method '%s'" -#: ../gio/gdbusconnection.c:4965 +#: ../gio/gdbusconnection.c:4969 #, c-format msgid "Type of message, '%s', does not match expected type '%s'" msgstr "Type of message, '%s', does not match expected type '%s'" -#: ../gio/gdbusconnection.c:5163 +#: ../gio/gdbusconnection.c:5167 #, c-format msgid "An object is already exported for the interface %s at %s" msgstr "An object is already exported for the interface %s at %s" -#: ../gio/gdbusconnection.c:5389 +#: ../gio/gdbusconnection.c:5393 #, c-format msgid "Unable to retrieve property %s.%s" msgstr "Unable to retrieve property %s.%s" -#: ../gio/gdbusconnection.c:5445 +#: ../gio/gdbusconnection.c:5449 #, c-format msgid "Unable to set property %s.%s" msgstr "Unable to set property %s.%s" -#: ../gio/gdbusconnection.c:5621 +#: ../gio/gdbusconnection.c:5625 #, c-format msgid "Method '%s' returned type '%s', but expected '%s'" msgstr "Method '%s' returned type '%s', but expected '%s'" -#: ../gio/gdbusconnection.c:6695 +#: ../gio/gdbusconnection.c:6697 #, c-format msgid "Method '%s' on interface '%s' with signature '%s' does not exist" msgstr "Method '%s' on interface '%s' with signature '%s' does not exist" -#: ../gio/gdbusconnection.c:6816 +#: ../gio/gdbusconnection.c:6818 #, c-format msgid "A subtree is already exported for %s" msgstr "A subtree is already exported for %s" -#: ../gio/gdbusconnection.c:7144 +#: ../gio/gdbusconnection.c:7146 #, c-format msgid "" "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable " @@ -730,27 +730,27 @@ msgstr "" "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable " "- unknown value '%s'" -#: ../gio/gdbusmessage.c:1244 +#: ../gio/gdbusmessage.c:1246 msgid "type is INVALID" msgstr "type is INVALID" -#: ../gio/gdbusmessage.c:1255 +#: ../gio/gdbusmessage.c:1257 msgid "METHOD_CALL message: PATH or MEMBER header field is missing" msgstr "METHOD_CALL message: PATH or MEMBER header field is missing" -#: ../gio/gdbusmessage.c:1266 +#: ../gio/gdbusmessage.c:1268 msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing" msgstr "METHOD_RETURN message: REPLY_SERIAL header field is missing" -#: ../gio/gdbusmessage.c:1278 +#: ../gio/gdbusmessage.c:1280 msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing" msgstr "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing" -#: ../gio/gdbusmessage.c:1291 +#: ../gio/gdbusmessage.c:1293 msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing" msgstr "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing" -#: ../gio/gdbusmessage.c:1299 +#: ../gio/gdbusmessage.c:1301 msgid "" "SIGNAL message: The PATH header field is using the reserved value /org/" "freedesktop/DBus/Local" @@ -758,7 +758,7 @@ msgstr "" "SIGNAL message: The PATH header field is using the reserved value /org/" "freedesktop/DBus/Local" -#: ../gio/gdbusmessage.c:1307 +#: ../gio/gdbusmessage.c:1309 msgid "" "SIGNAL message: The INTERFACE header field is using the reserved value org." "freedesktop.DBus.Local" @@ -766,19 +766,19 @@ msgstr "" "SIGNAL message: The INTERFACE header field is using the reserved value org." "freedesktop.DBus.Local" -#: ../gio/gdbusmessage.c:1355 ../gio/gdbusmessage.c:1415 +#: ../gio/gdbusmessage.c:1357 ../gio/gdbusmessage.c:1417 #, c-format msgid "Wanted to read %lu byte but only got %lu" msgid_plural "Wanted to read %lu bytes but only got %lu" msgstr[0] "Wanted to read %lu byte but only got %lu" msgstr[1] "Wanted to read %lu bytes but only got %lu" -#: ../gio/gdbusmessage.c:1369 +#: ../gio/gdbusmessage.c:1371 #, c-format msgid "Expected NUL byte after the string “%s” but found byte %d" msgstr "Expected NUL byte after the string “%s” but found byte %d" -#: ../gio/gdbusmessage.c:1388 +#: ../gio/gdbusmessage.c:1390 #, c-format msgid "" "Expected valid UTF-8 string but found invalid bytes at byte offset %d " @@ -787,17 +787,17 @@ msgstr "" "Expected valid UTF-8 string but found invalid bytes at byte offset %d " "(length of string is %d). The valid UTF-8 string up until that point was “%s”" -#: ../gio/gdbusmessage.c:1587 +#: ../gio/gdbusmessage.c:1589 #, c-format msgid "Parsed value “%s” is not a valid D-Bus object path" msgstr "Parsed value “%s” is not a valid D-Bus object path" -#: ../gio/gdbusmessage.c:1609 +#: ../gio/gdbusmessage.c:1611 #, c-format msgid "Parsed value “%s” is not a valid D-Bus signature" msgstr "Parsed value “%s” is not a valid D-Bus signature" -#: ../gio/gdbusmessage.c:1656 +#: ../gio/gdbusmessage.c:1658 #, c-format msgid "" "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)." @@ -808,7 +808,7 @@ msgstr[0] "" msgstr[1] "" "Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)." -#: ../gio/gdbusmessage.c:1676 +#: ../gio/gdbusmessage.c:1678 #, c-format msgid "" "Encountered array of type “a%c”, expected to have a length a multiple of %u " @@ -817,19 +817,19 @@ msgstr "" "Encountered array of type “a%c”, expected to have a length a multiple of %u " "bytes, but found to be %u bytes in length" -#: ../gio/gdbusmessage.c:1843 +#: ../gio/gdbusmessage.c:1845 #, c-format msgid "Parsed value “%s” for variant is not a valid D-Bus signature" msgstr "Parsed value “%s” for variant is not a valid D-Bus signature" -#: ../gio/gdbusmessage.c:1867 +#: ../gio/gdbusmessage.c:1869 #, c-format msgid "" "Error deserializing GVariant with type string “%s” from the D-Bus wire format" msgstr "" "Error deserializing GVariant with type string “%s” from the D-Bus wire format" -#: ../gio/gdbusmessage.c:2051 +#: ../gio/gdbusmessage.c:2053 #, c-format msgid "" "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value " @@ -838,40 +838,40 @@ msgstr "" "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value " "0x%02x" -#: ../gio/gdbusmessage.c:2064 +#: ../gio/gdbusmessage.c:2066 #, c-format msgid "Invalid major protocol version. Expected 1 but found %d" msgstr "Invalid major protocol version. Expected 1 but found %d" -#: ../gio/gdbusmessage.c:2120 +#: ../gio/gdbusmessage.c:2122 #, c-format msgid "Signature header with signature “%s” found but message body is empty" msgstr "Signature header with signature “%s” found but message body is empty" -#: ../gio/gdbusmessage.c:2134 +#: ../gio/gdbusmessage.c:2136 #, c-format msgid "Parsed value “%s” is not a valid D-Bus signature (for body)" msgstr "Parsed value “%s” is not a valid D-Bus signature (for body)" -#: ../gio/gdbusmessage.c:2164 +#: ../gio/gdbusmessage.c:2166 #, c-format msgid "No signature header in message but the message body is %u byte" msgid_plural "No signature header in message but the message body is %u bytes" msgstr[0] "No signature header in message but the message body is %u byte" msgstr[1] "No signature header in message but the message body is %u bytes" -#: ../gio/gdbusmessage.c:2174 +#: ../gio/gdbusmessage.c:2176 msgid "Cannot deserialize message: " msgstr "Cannot deserialize message: " -#: ../gio/gdbusmessage.c:2515 +#: ../gio/gdbusmessage.c:2517 #, c-format msgid "" "Error serializing GVariant with type string “%s” to the D-Bus wire format" msgstr "" "Error serializing GVariant with type string “%s” to the D-Bus wire format" -#: ../gio/gdbusmessage.c:2652 +#: ../gio/gdbusmessage.c:2654 #, c-format msgid "" "Message has %d file descriptors but the header field indicates %d file " @@ -880,16 +880,16 @@ msgstr "" "Message has %d file descriptors but the header field indicates %d file " "descriptors" -#: ../gio/gdbusmessage.c:2660 +#: ../gio/gdbusmessage.c:2662 msgid "Cannot serialize message: " msgstr "Cannot serialize message: " -#: ../gio/gdbusmessage.c:2704 +#: ../gio/gdbusmessage.c:2706 #, c-format msgid "Message body has signature “%s” but there is no signature header" msgstr "Message body has signature “%s” but there is no signature header" -#: ../gio/gdbusmessage.c:2714 +#: ../gio/gdbusmessage.c:2716 #, c-format msgid "" "Message body has type signature “%s” but signature in the header field is " @@ -898,26 +898,26 @@ msgstr "" "Message body has type signature “%s” but signature in the header field is " "“%s”" -#: ../gio/gdbusmessage.c:2730 +#: ../gio/gdbusmessage.c:2732 #, c-format msgid "Message body is empty but signature in the header field is “(%s)”" msgstr "Message body is empty but signature in the header field is “(%s)”" -#: ../gio/gdbusmessage.c:3283 +#: ../gio/gdbusmessage.c:3285 #, c-format msgid "Error return with body of type “%s”" msgstr "Error return with body of type “%s”" -#: ../gio/gdbusmessage.c:3291 +#: ../gio/gdbusmessage.c:3293 msgid "Error return with empty body" msgstr "Error return with empty body" -#: ../gio/gdbusprivate.c:2043 +#: ../gio/gdbusprivate.c:2066 #, c-format msgid "Unable to get Hardware profile: %s" msgstr "Unable to get Hardware profile: %s" -#: ../gio/gdbusprivate.c:2088 +#: ../gio/gdbusprivate.c:2111 msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: " msgstr "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: " @@ -939,25 +939,25 @@ msgstr "" "Cannot invoke method; proxy is for a well-known name without an owner and " "proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag" -#: ../gio/gdbusserver.c:709 +#: ../gio/gdbusserver.c:708 msgid "Abstract name space not supported" msgstr "Abstract name space not supported" -#: ../gio/gdbusserver.c:796 +#: ../gio/gdbusserver.c:795 msgid "Cannot specify nonce file when creating a server" msgstr "Cannot specify nonce file when creating a server" -#: ../gio/gdbusserver.c:874 +#: ../gio/gdbusserver.c:873 #, c-format msgid "Error writing nonce file at “%s”: %s" msgstr "Error writing nonce file at “%s”: %s" -#: ../gio/gdbusserver.c:1045 +#: ../gio/gdbusserver.c:1044 #, c-format msgid "The string “%s” is not a valid D-Bus GUID" msgstr "The string “%s” is not a valid D-Bus GUID" -#: ../gio/gdbusserver.c:1085 +#: ../gio/gdbusserver.c:1084 #, c-format msgid "Cannot listen on unsupported transport “%s”" msgstr "Cannot listen on unsupported transport “%s”" @@ -987,7 +987,7 @@ msgstr "" #: ../gio/gdbus-tool.c:165 ../gio/gdbus-tool.c:227 ../gio/gdbus-tool.c:299 #: ../gio/gdbus-tool.c:323 ../gio/gdbus-tool.c:725 ../gio/gdbus-tool.c:1068 -#: ../gio/gdbus-tool.c:1510 ../gio/gio-tool-rename.c:84 +#: ../gio/gdbus-tool.c:1510 #, c-format msgid "Error: %s\n" msgstr "Error: %s\n" @@ -1215,6 +1215,10 @@ msgstr "" "Timeout to wait for before exiting with an error (seconds); 0 for no timeout " "(default)" +#: ../gio/gdbus-tool.c:2031 +msgid "[OPTION…] BUS-NAME" +msgstr "[OPTION…] BUS-NAME" + #: ../gio/gdbus-tool.c:2033 msgid "Wait for a bus name to appear." msgstr "Wait for a bus name to appear." @@ -1239,38 +1243,38 @@ msgstr "Error: Too many arguments.\n" msgid "Error: %s is not a valid well-known bus name.\n" msgstr "Error: %s is not a valid well-known bus name.\n" -#: ../gio/gdesktopappinfo.c:1997 ../gio/gdesktopappinfo.c:4504 +#: ../gio/gdesktopappinfo.c:2001 ../gio/gdesktopappinfo.c:4533 msgid "Unnamed" msgstr "Unnamed" -#: ../gio/gdesktopappinfo.c:2407 +#: ../gio/gdesktopappinfo.c:2411 msgid "Desktop file didn’t specify Exec field" msgstr "Desktop file didn’t specify Exec field" -#: ../gio/gdesktopappinfo.c:2692 +#: ../gio/gdesktopappinfo.c:2696 msgid "Unable to find terminal required for application" msgstr "Unable to find terminal required for application" -#: ../gio/gdesktopappinfo.c:3100 +#: ../gio/gdesktopappinfo.c:3129 #, c-format msgid "Can’t create user application configuration folder %s: %s" msgstr "Can’t create user application configuration folder %s: %s" -#: ../gio/gdesktopappinfo.c:3104 +#: ../gio/gdesktopappinfo.c:3133 #, c-format msgid "Can’t create user MIME configuration folder %s: %s" msgstr "Can’t create user MIME configuration folder %s: %s" -#: ../gio/gdesktopappinfo.c:3344 ../gio/gdesktopappinfo.c:3368 +#: ../gio/gdesktopappinfo.c:3373 ../gio/gdesktopappinfo.c:3397 msgid "Application information lacks an identifier" msgstr "Application information lacks an identifier" -#: ../gio/gdesktopappinfo.c:3602 +#: ../gio/gdesktopappinfo.c:3631 #, c-format msgid "Can’t create user desktop file %s" msgstr "Can’t create user desktop file %s" -#: ../gio/gdesktopappinfo.c:3736 +#: ../gio/gdesktopappinfo.c:3765 #, c-format msgid "Custom definition for %s" msgstr "Custom definition for %s" @@ -1334,11 +1338,11 @@ msgstr "Expected a GEmblem for GEmblemedIcon" #: ../gio/gfile.c:969 ../gio/gfile.c:1207 ../gio/gfile.c:1345 #: ../gio/gfile.c:1583 ../gio/gfile.c:1638 ../gio/gfile.c:1696 #: ../gio/gfile.c:1780 ../gio/gfile.c:1837 ../gio/gfile.c:1901 -#: ../gio/gfile.c:1956 ../gio/gfile.c:3609 ../gio/gfile.c:3664 -#: ../gio/gfile.c:3900 ../gio/gfile.c:3942 ../gio/gfile.c:4410 -#: ../gio/gfile.c:4821 ../gio/gfile.c:4906 ../gio/gfile.c:4996 -#: ../gio/gfile.c:5093 ../gio/gfile.c:5180 ../gio/gfile.c:5281 -#: ../gio/gfile.c:7822 ../gio/gfile.c:7912 ../gio/gfile.c:7996 +#: ../gio/gfile.c:1956 ../gio/gfile.c:3613 ../gio/gfile.c:3668 +#: ../gio/gfile.c:3904 ../gio/gfile.c:3946 ../gio/gfile.c:4414 +#: ../gio/gfile.c:4825 ../gio/gfile.c:4910 ../gio/gfile.c:5000 +#: ../gio/gfile.c:5097 ../gio/gfile.c:5184 ../gio/gfile.c:5285 +#: ../gio/gfile.c:7826 ../gio/gfile.c:7916 ../gio/gfile.c:8000 #: ../gio/win32/gwinhttpfile.c:437 msgid "Operation not supported" msgstr "Operation not supported" @@ -1392,24 +1396,24 @@ msgstr "Copy (reflink/clone) is not supported or didn’t work" msgid "Can’t copy special file" msgstr "Can’t copy special file" -#: ../gio/gfile.c:3890 +#: ../gio/gfile.c:3894 msgid "Invalid symlink value given" msgstr "Invalid symlink value given" -#: ../gio/gfile.c:4051 +#: ../gio/gfile.c:4055 msgid "Trash not supported" msgstr "Trash not supported" -#: ../gio/gfile.c:4163 +#: ../gio/gfile.c:4167 #, c-format msgid "File names cannot contain “%c”" msgstr "File names cannot contain “%c”" -#: ../gio/gfile.c:6609 ../gio/gvolume.c:363 +#: ../gio/gfile.c:6613 ../gio/gvolume.c:363 msgid "volume doesn’t implement mount" msgstr "volume doesn’t implement mount" -#: ../gio/gfile.c:6718 +#: ../gio/gfile.c:6722 msgid "No application is registered as handling this file" msgstr "No application is registered as handling this file" @@ -1455,7 +1459,7 @@ msgid "Truncate not supported on stream" msgstr "Truncate not supported on stream" #: ../gio/ghttpproxy.c:91 ../gio/gresolver.c:410 ../gio/gresolver.c:476 -#: ../glib/gconvert.c:1726 +#: ../glib/gconvert.c:1650 msgid "Invalid hostname" msgstr "Invalid hostname" @@ -1560,109 +1564,113 @@ msgstr "Input stream doesn’t implement read" msgid "Stream has outstanding operation" msgstr "Stream has outstanding operation" -#: ../gio/gio-tool.c:142 +#: ../gio/gio-tool.c:160 msgid "Copy with file" msgstr "Copy with file" -#: ../gio/gio-tool.c:146 +#: ../gio/gio-tool.c:164 msgid "Keep with file when moved" msgstr "Keep with file when moved" -#: ../gio/gio-tool.c:187 +#: ../gio/gio-tool.c:205 msgid "“version” takes no arguments" msgstr "“version” takes no arguments" -#: ../gio/gio-tool.c:189 ../gio/gio-tool.c:205 ../glib/goption.c:857 +#: ../gio/gio-tool.c:207 ../gio/gio-tool.c:223 ../glib/goption.c:857 msgid "Usage:" msgstr "Usage:" -#: ../gio/gio-tool.c:192 +#: ../gio/gio-tool.c:210 msgid "Print version information and exit." msgstr "Print version information and exit." -#: ../gio/gio-tool.c:206 +#: ../gio/gio-tool.c:224 msgid "[ARGS...]" msgstr "[ARGS...]" -#: ../gio/gio-tool.c:208 +#: ../gio/gio-tool.c:226 msgid "Commands:" msgstr "Commands:" -#: ../gio/gio-tool.c:211 +#: ../gio/gio-tool.c:229 msgid "Concatenate files to standard output" msgstr "Concatenate files to standard output" -#: ../gio/gio-tool.c:212 +#: ../gio/gio-tool.c:230 msgid "Copy one or more files" msgstr "Copy one or more files" -#: ../gio/gio-tool.c:213 +#: ../gio/gio-tool.c:231 msgid "Show information about locations" msgstr "Show information about locations" -#: ../gio/gio-tool.c:214 +#: ../gio/gio-tool.c:232 msgid "List the contents of locations" msgstr "List the contents of locations" -#: ../gio/gio-tool.c:215 +#: ../gio/gio-tool.c:233 msgid "Get or set the handler for a mimetype" msgstr "Get or set the handler for a mimetype" -#: ../gio/gio-tool.c:216 +#: ../gio/gio-tool.c:234 msgid "Create directories" msgstr "Create directories" -#: ../gio/gio-tool.c:217 +#: ../gio/gio-tool.c:235 msgid "Monitor files and directories for changes" msgstr "Monitor files and directories for changes" -#: ../gio/gio-tool.c:218 +#: ../gio/gio-tool.c:236 msgid "Mount or unmount the locations" msgstr "Mount or unmount the locations" -#: ../gio/gio-tool.c:219 +#: ../gio/gio-tool.c:237 msgid "Move one or more files" msgstr "Move one or more files" -#: ../gio/gio-tool.c:220 +#: ../gio/gio-tool.c:238 msgid "Open files with the default application" msgstr "Open files with the default application" -#: ../gio/gio-tool.c:221 +#: ../gio/gio-tool.c:239 msgid "Rename a file" msgstr "Rename a file" -#: ../gio/gio-tool.c:222 +#: ../gio/gio-tool.c:240 msgid "Delete one or more files" msgstr "Delete one or more files" -#: ../gio/gio-tool.c:223 +#: ../gio/gio-tool.c:241 msgid "Read from standard input and save" msgstr "Read from standard input and save" -#: ../gio/gio-tool.c:224 +#: ../gio/gio-tool.c:242 msgid "Set a file attribute" msgstr "Set a file attribute" -#: ../gio/gio-tool.c:225 +#: ../gio/gio-tool.c:243 msgid "Move files or directories to the trash" msgstr "Move files or directories to the trash" -#: ../gio/gio-tool.c:226 +#: ../gio/gio-tool.c:244 msgid "Lists the contents of locations in a tree" msgstr "Lists the contents of locations in a tree" -#: ../gio/gio-tool.c:228 +#: ../gio/gio-tool.c:246 #, c-format msgid "Use %s to get detailed help.\n" msgstr "Use %s to get detailed help.\n" +#: ../gio/gio-tool-cat.c:80 +msgid "Error writing to stdout" +msgstr "Error writing to stdout" + #. Translators: commandline placeholder -#: ../gio/gio-tool-cat.c:124 ../gio/gio-tool-info.c:278 +#: ../gio/gio-tool-cat.c:124 ../gio/gio-tool-info.c:282 #: ../gio/gio-tool-list.c:165 ../gio/gio-tool-mkdir.c:48 #: ../gio/gio-tool-monitor.c:37 ../gio/gio-tool-monitor.c:39 #: ../gio/gio-tool-monitor.c:41 ../gio/gio-tool-monitor.c:43 -#: ../gio/gio-tool-monitor.c:202 ../gio/gio-tool-mount.c:1132 +#: ../gio/gio-tool-monitor.c:203 ../gio/gio-tool-mount.c:1141 #: ../gio/gio-tool-open.c:45 ../gio/gio-tool-remove.c:48 #: ../gio/gio-tool-rename.c:45 ../gio/gio-tool-set.c:89 #: ../gio/gio-tool-trash.c:81 ../gio/gio-tool-tree.c:239 @@ -1683,9 +1691,11 @@ msgstr "" "locations instead of local files: for example, you can use something\n" "like smb://server/resource/file.txt as location." -#: ../gio/gio-tool-cat.c:151 -msgid "No files given" -msgstr "No files given" +#: ../gio/gio-tool-cat.c:153 ../gio/gio-tool-info.c:313 +#: ../gio/gio-tool-mkdir.c:76 ../gio/gio-tool-monitor.c:228 +#: ../gio/gio-tool-open.c:71 ../gio/gio-tool-remove.c:72 +msgid "No locations given" +msgstr "No locations given" #: ../gio/gio-tool-copy.c:42 ../gio/gio-tool-move.c:38 msgid "No target directory" @@ -1742,12 +1752,12 @@ msgstr "" "locations instead of local files: for example, you can use something\n" "like smb://server/resource/file.txt as location." -#: ../gio/gio-tool-copy.c:143 +#: ../gio/gio-tool-copy.c:147 #, c-format msgid "Destination %s is not a directory" msgstr "Destination %s is not a directory" -#: ../gio/gio-tool-copy.c:187 ../gio/gio-tool-move.c:181 +#: ../gio/gio-tool-copy.c:192 ../gio/gio-tool-move.c:185 #, c-format msgid "%s: overwrite “%s”? " msgstr "%s: overwrite “%s”? " @@ -1814,26 +1824,21 @@ msgstr "hidden\n" msgid "uri: %s\n" msgstr "uri: %s\n" -#: ../gio/gio-tool-info.c:221 -#, c-format -msgid "Error getting writable attributes: %s\n" -msgstr "Error getting writable attributes: %s\n" - -#: ../gio/gio-tool-info.c:226 +#: ../gio/gio-tool-info.c:228 #, c-format msgid "Settable attributes:\n" msgstr "Settable attributes:\n" -#: ../gio/gio-tool-info.c:249 +#: ../gio/gio-tool-info.c:252 #, c-format msgid "Writable attribute namespaces:\n" msgstr "Writable attribute namespaces:\n" -#: ../gio/gio-tool-info.c:283 +#: ../gio/gio-tool-info.c:287 msgid "Show information about locations." msgstr "Show information about locations." -#: ../gio/gio-tool-info.c:285 +#: ../gio/gio-tool-info.c:289 msgid "" "gio info is similar to the traditional ls utility, but using GIO\n" "locations instead of local files: for example, you can use something\n" @@ -1847,10 +1852,6 @@ msgstr "" "be specified with their GIO name, e.g. standard::icon, or just by\n" "namespace, e.g. unix, or by “*”, which matches all attributes" -#: ../gio/gio-tool-info.c:307 ../gio/gio-tool-mkdir.c:74 -msgid "No locations given" -msgstr "No locations given" - #: ../gio/gio-tool-list.c:36 ../gio/gio-tool-tree.c:32 msgid "Show hidden files" msgstr "Show hidden files" @@ -1902,46 +1903,46 @@ msgstr "" "for the mimetype. If a handler is given, it is set as the default\n" "handler for the mimetype." -#: ../gio/gio-tool-mime.c:98 +#: ../gio/gio-tool-mime.c:100 msgid "Must specify a single mimetype, and maybe a handler" msgstr "Must specify a single mimetype, and maybe a handler" -#: ../gio/gio-tool-mime.c:113 +#: ../gio/gio-tool-mime.c:116 #, c-format msgid "No default applications for “%s”\n" msgstr "No default applications for “%s”\n" -#: ../gio/gio-tool-mime.c:119 +#: ../gio/gio-tool-mime.c:122 #, c-format msgid "Default application for “%s”: %s\n" msgstr "Default application for “%s”: %s\n" -#: ../gio/gio-tool-mime.c:124 +#: ../gio/gio-tool-mime.c:127 #, c-format msgid "Registered applications:\n" msgstr "Registered applications:\n" -#: ../gio/gio-tool-mime.c:126 +#: ../gio/gio-tool-mime.c:129 #, c-format msgid "No registered applications\n" msgstr "No registered applications\n" -#: ../gio/gio-tool-mime.c:137 +#: ../gio/gio-tool-mime.c:140 #, c-format msgid "Recommended applications:\n" msgstr "Recommended applications:\n" -#: ../gio/gio-tool-mime.c:139 +#: ../gio/gio-tool-mime.c:142 #, c-format msgid "No recommended applications\n" msgstr "No recommended applications\n" -#: ../gio/gio-tool-mime.c:159 +#: ../gio/gio-tool-mime.c:162 #, c-format -msgid "Failed to load info for handler “%s”\n" -msgstr "Failed to load info for handler “%s”\n" +msgid "Failed to load info for handler “%s”" +msgstr "Failed to load info for handler “%s”" -#: ../gio/gio-tool-mime.c:165 +#: ../gio/gio-tool-mime.c:168 #, c-format msgid "Failed to set “%s” as the default handler for “%s”: %s\n" msgstr "Failed to set “%s” as the default handler for “%s”: %s\n" @@ -1988,7 +1989,7 @@ msgstr "Report moves and renames as simple deleted/created events" msgid "Watch for mount events" msgstr "Watch for mount events" -#: ../gio/gio-tool-monitor.c:207 +#: ../gio/gio-tool-monitor.c:208 msgid "Monitor files or directories for changes." msgstr "Monitor files or directories for changes." @@ -2042,46 +2043,19 @@ msgid "Show extra information" msgstr "Show extra information" #: ../gio/gio-tool-mount.c:246 ../gio/gio-tool-mount.c:276 -#, c-format -msgid "Error mounting location: Anonymous access denied\n" -msgstr "Error mounting location: Anonymous access denied\n" - -#: ../gio/gio-tool-mount.c:248 ../gio/gio-tool-mount.c:278 -#, c-format -msgid "Error mounting location: %s\n" -msgstr "Error mounting location: %s\n" - -#: ../gio/gio-tool-mount.c:341 -#, c-format -msgid "Error unmounting mount: %s\n" -msgstr "Error unmounting mount: %s\n" +msgid "Anonymous access denied" +msgstr "Anonymous access denied" -#: ../gio/gio-tool-mount.c:366 ../gio/gio-tool-mount.c:419 -#, c-format -msgid "Error finding enclosing mount: %s\n" -msgstr "Error finding enclosing mount: %s\n" - -#: ../gio/gio-tool-mount.c:394 -#, c-format -msgid "Error ejecting mount: %s\n" -msgstr "Error ejecting mount: %s\n" - -#: ../gio/gio-tool-mount.c:875 -#, c-format -msgid "Error mounting %s: %s\n" -msgstr "Error mounting %s: %s\n" - -#: ../gio/gio-tool-mount.c:891 +#: ../gio/gio-tool-mount.c:897 #, c-format msgid "Mounted %s at %s\n" msgstr "Mounted %s at %s\n" -#: ../gio/gio-tool-mount.c:941 -#, c-format -msgid "No volume for device file %s\n" -msgstr "No volume for device file %s\n" +#: ../gio/gio-tool-mount.c:950 +msgid "No volume for device file" +msgstr "No volume for device file" -#: ../gio/gio-tool-mount.c:1136 +#: ../gio/gio-tool-mount.c:1145 msgid "Mount or unmount the locations." msgstr "Mount or unmount the locations." @@ -2103,7 +2077,7 @@ msgstr "" "locations instead of local files: for example, you can use something\n" "like smb://server/resource/file.txt as location" -#: ../gio/gio-tool-move.c:139 +#: ../gio/gio-tool-move.c:142 #, c-format msgid "Target %s is not a directory" msgstr "Target %s is not a directory" @@ -2116,10 +2090,6 @@ msgstr "" "Open files with the default application that\n" "is registered to handle files of this type." -#: ../gio/gio-tool-open.c:69 -msgid "No files to open" -msgstr "No files to open" - #: ../gio/gio-tool-remove.c:31 ../gio/gio-tool-trash.c:31 msgid "Ignore nonexistent files, never prompt" msgstr "Ignore nonexistent files, never prompt" @@ -2128,10 +2098,6 @@ msgstr "Ignore nonexistent files, never prompt" msgid "Delete the given files." msgstr "Delete the given files." -#: ../gio/gio-tool-remove.c:70 -msgid "No files to delete" -msgstr "No files to delete" - #: ../gio/gio-tool-rename.c:45 msgid "NAME" msgstr "NAME" @@ -2140,16 +2106,16 @@ msgstr "NAME" msgid "Rename a file." msgstr "Rename a file." -#: ../gio/gio-tool-rename.c:68 +#: ../gio/gio-tool-rename.c:70 msgid "Missing argument" msgstr "Missing argument" -#: ../gio/gio-tool-rename.c:73 ../gio/gio-tool-save.c:192 -#: ../gio/gio-tool-set.c:134 +#: ../gio/gio-tool-rename.c:76 ../gio/gio-tool-save.c:195 +#: ../gio/gio-tool-set.c:137 msgid "Too many arguments" msgstr "Too many arguments" -#: ../gio/gio-tool-rename.c:91 +#: ../gio/gio-tool-rename.c:95 #, c-format msgid "Rename successful. New uri: %s\n" msgstr "Rename successful. New uri: %s\n" @@ -2184,6 +2150,10 @@ msgstr "The etag of the file being overwritten" msgid "ETAG" msgstr "ETAG" +#: ../gio/gio-tool-save.c:119 +msgid "Error reading from standard input" +msgstr "Error reading from standard input" + #. Translators: The "etag" is a token allowing to verify whether a file has been modified #: ../gio/gio-tool-save.c:145 #, c-format @@ -2194,7 +2164,7 @@ msgstr "Etag not available\n" msgid "Read from standard input and save to DEST." msgstr "Read from standard input and save to DEST." -#: ../gio/gio-tool-save.c:186 +#: ../gio/gio-tool-save.c:188 msgid "No destination given" msgstr "No destination given" @@ -2218,27 +2188,22 @@ msgstr "VALUE" msgid "Set a file attribute of LOCATION." msgstr "Set a file attribute of LOCATION." -#: ../gio/gio-tool-set.c:111 +#: ../gio/gio-tool-set.c:113 msgid "Location not specified" msgstr "Location not specified" -#: ../gio/gio-tool-set.c:119 +#: ../gio/gio-tool-set.c:120 msgid "Attribute not specified" msgstr "Attribute not specified" -#: ../gio/gio-tool-set.c:128 +#: ../gio/gio-tool-set.c:130 msgid "Value not specified" msgstr "Value not specified" -#: ../gio/gio-tool-set.c:176 -#, c-format -msgid "Invalid attribute type %s\n" -msgstr "Invalid attribute type %s\n" - -#: ../gio/gio-tool-set.c:189 +#: ../gio/gio-tool-set.c:180 #, c-format -msgid "Error setting attribute: %s\n" -msgstr "Error setting attribute: %s\n" +msgid "Invalid attribute type “%s”" +msgstr "Invalid attribute type “%s”" #: ../gio/gio-tool-trash.c:32 msgid "Empty the trash" @@ -2256,7 +2221,7 @@ msgstr "Follow symbolic links, mounts and shortcuts" msgid "List contents of directories in a tree-like format." msgstr "List contents of directories in a tree-like format." -#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1492 +#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1486 #, c-format msgid "Element <%s> not allowed inside <%s>" msgstr "Element <%s> not allowed inside <%s>" @@ -2301,12 +2266,12 @@ msgstr "Error reading file %s: %s" msgid "Error compressing file %s" msgstr "Error compressing file %s" -#: ../gio/glib-compile-resources.c:469 ../gio/glib-compile-schemas.c:1604 +#: ../gio/glib-compile-resources.c:469 ../gio/glib-compile-schemas.c:1598 #, c-format msgid "text may not appear inside <%s>" msgstr "text may not appear inside <%s>" -#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2053 +#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2047 msgid "Show program version and exit" msgstr "Show program version and exit" @@ -2322,8 +2287,8 @@ msgstr "" "The directories where files are to be read from (default to current " "directory)" -#: ../gio/glib-compile-resources.c:666 ../gio/glib-compile-schemas.c:2054 -#: ../gio/glib-compile-schemas.c:2082 +#: ../gio/glib-compile-resources.c:666 ../gio/glib-compile-schemas.c:2048 +#: ../gio/glib-compile-schemas.c:2076 msgid "DIRECTORY" msgstr "DIRECTORY" @@ -2520,68 +2485,68 @@ msgstr "a path, if given, must begin and end with a slash" msgid "the path of a list must end with ':/'" msgstr "the path of a list must end with ':/'" -#: ../gio/glib-compile-schemas.c:1248 +#: ../gio/glib-compile-schemas.c:1242 #, c-format msgid "<%s id='%s'> already specified" msgstr "<%s id='%s'> already specified" -#: ../gio/glib-compile-schemas.c:1398 ../gio/glib-compile-schemas.c:1414 +#: ../gio/glib-compile-schemas.c:1392 ../gio/glib-compile-schemas.c:1408 #, c-format msgid "Only one <%s> element allowed inside <%s>" msgstr "Only one <%s> element allowed inside <%s>" -#: ../gio/glib-compile-schemas.c:1496 +#: ../gio/glib-compile-schemas.c:1490 #, c-format msgid "Element <%s> not allowed at the top level" msgstr "Element <%s> not allowed at the top level" #. Translators: Do not translate "--strict". -#: ../gio/glib-compile-schemas.c:1806 ../gio/glib-compile-schemas.c:1880 -#: ../gio/glib-compile-schemas.c:1956 +#: ../gio/glib-compile-schemas.c:1800 ../gio/glib-compile-schemas.c:1874 +#: ../gio/glib-compile-schemas.c:1950 #, c-format msgid "--strict was specified; exiting.\n" msgstr "--strict was specified; exiting.\n" -#: ../gio/glib-compile-schemas.c:1816 +#: ../gio/glib-compile-schemas.c:1810 #, c-format msgid "This entire file has been ignored.\n" msgstr "This entire file has been ignored.\n" -#: ../gio/glib-compile-schemas.c:1876 +#: ../gio/glib-compile-schemas.c:1870 #, c-format msgid "Ignoring this file.\n" msgstr "Ignoring this file.\n" -#: ../gio/glib-compile-schemas.c:1916 +#: ../gio/glib-compile-schemas.c:1910 #, c-format msgid "No such key '%s' in schema '%s' as specified in override file '%s'" msgstr "No such key '%s' in schema '%s' as specified in override file '%s'" -#: ../gio/glib-compile-schemas.c:1922 ../gio/glib-compile-schemas.c:1980 -#: ../gio/glib-compile-schemas.c:2008 +#: ../gio/glib-compile-schemas.c:1916 ../gio/glib-compile-schemas.c:1974 +#: ../gio/glib-compile-schemas.c:2002 #, c-format msgid "; ignoring override for this key.\n" msgstr "; ignoring override for this key.\n" -#: ../gio/glib-compile-schemas.c:1926 ../gio/glib-compile-schemas.c:1984 -#: ../gio/glib-compile-schemas.c:2012 +#: ../gio/glib-compile-schemas.c:1920 ../gio/glib-compile-schemas.c:1978 +#: ../gio/glib-compile-schemas.c:2006 #, c-format msgid " and --strict was specified; exiting.\n" msgstr " and --strict was specified; exiting.\n" -#: ../gio/glib-compile-schemas.c:1942 +#: ../gio/glib-compile-schemas.c:1936 #, c-format msgid "" "error parsing key '%s' in schema '%s' as specified in override file '%s': %s." msgstr "" "error parsing key '%s' in schema '%s' as specified in override file '%s': %s." -#: ../gio/glib-compile-schemas.c:1952 +#: ../gio/glib-compile-schemas.c:1946 #, c-format msgid "Ignoring override for this key.\n" msgstr "Ignoring override for this key.\n" -#: ../gio/glib-compile-schemas.c:1970 +#: ../gio/glib-compile-schemas.c:1964 #, c-format msgid "" "override for key '%s' in schema '%s' in override file '%s' is outside the " @@ -2590,7 +2555,7 @@ msgstr "" "override for key '%s' in schema '%s' in override file '%s' is outside the " "range given in the schema" -#: ../gio/glib-compile-schemas.c:1998 +#: ../gio/glib-compile-schemas.c:1992 #, c-format msgid "" "override for key '%s' in schema '%s' in override file '%s' is not in the " @@ -2599,23 +2564,23 @@ msgstr "" "override for key '%s' in schema '%s' in override file '%s' is not in the " "list of valid choices" -#: ../gio/glib-compile-schemas.c:2054 +#: ../gio/glib-compile-schemas.c:2048 msgid "where to store the gschemas.compiled file" msgstr "where to store the gschemas.compiled file" -#: ../gio/glib-compile-schemas.c:2055 +#: ../gio/glib-compile-schemas.c:2049 msgid "Abort on any errors in schemas" msgstr "Abort on any errors in schemas" -#: ../gio/glib-compile-schemas.c:2056 +#: ../gio/glib-compile-schemas.c:2050 msgid "Do not write the gschema.compiled file" msgstr "Do not write the gschema.compiled file" -#: ../gio/glib-compile-schemas.c:2057 +#: ../gio/glib-compile-schemas.c:2051 msgid "Do not enforce key name restrictions" msgstr "Do not enforce key name restrictions" -#: ../gio/glib-compile-schemas.c:2085 +#: ../gio/glib-compile-schemas.c:2079 msgid "" "Compile all GSettings schema files into a schema cache.\n" "Schema files are required to have the extension .gschema.xml,\n" @@ -2625,22 +2590,22 @@ msgstr "" "Schema files are required to have the extension .gschema.xml,\n" "and the cache file is called gschemas.compiled." -#: ../gio/glib-compile-schemas.c:2106 +#: ../gio/glib-compile-schemas.c:2100 #, c-format msgid "You should give exactly one directory name\n" msgstr "You should give exactly one directory name\n" -#: ../gio/glib-compile-schemas.c:2148 +#: ../gio/glib-compile-schemas.c:2142 #, c-format msgid "No schema files found: " msgstr "No schema files found: " -#: ../gio/glib-compile-schemas.c:2151 +#: ../gio/glib-compile-schemas.c:2145 #, c-format msgid "doing nothing.\n" msgstr "doing nothing.\n" -#: ../gio/glib-compile-schemas.c:2154 +#: ../gio/glib-compile-schemas.c:2148 #, c-format msgid "removed existing output file.\n" msgstr "removed existing output file.\n" @@ -2747,7 +2712,7 @@ msgstr "Filesystem does not support symbolic links" msgid "Error making symbolic link %s: %s" msgstr "Error making symbolic link %s: %s" -#: ../gio/glocalfile.c:2292 ../glib/gfileutils.c:2071 +#: ../gio/glocalfile.c:2292 ../glib/gfileutils.c:2077 msgid "Symbolic links not supported" msgstr "Symbolic links not supported" @@ -2760,9 +2725,9 @@ msgstr "Error moving file %s: %s" msgid "Can’t move directory over directory" msgstr "Can’t move directory over directory" -#: ../gio/glocalfile.c:2396 ../gio/glocalfileoutputstream.c:925 -#: ../gio/glocalfileoutputstream.c:939 ../gio/glocalfileoutputstream.c:954 -#: ../gio/glocalfileoutputstream.c:971 ../gio/glocalfileoutputstream.c:985 +#: ../gio/glocalfile.c:2396 ../gio/glocalfileoutputstream.c:931 +#: ../gio/glocalfileoutputstream.c:945 ../gio/glocalfileoutputstream.c:960 +#: ../gio/glocalfileoutputstream.c:977 ../gio/glocalfileoutputstream.c:991 msgid "Backup file creation failed" msgstr "Backup file creation failed" @@ -2801,7 +2766,7 @@ msgstr "Error setting extended attribute “%s”: %s" msgid " (invalid encoding)" msgstr " (invalid encoding)" -#: ../gio/glocalfileinfo.c:1766 ../gio/glocalfileoutputstream.c:803 +#: ../gio/glocalfileinfo.c:1766 ../gio/glocalfileoutputstream.c:809 #, c-format msgid "Error when getting information for file “%s”: %s" msgstr "Error when getting information for file “%s”: %s" @@ -2882,7 +2847,7 @@ msgstr "Error reading from file: %s" #: ../gio/glocalfileinputstream.c:199 ../gio/glocalfileinputstream.c:211 #: ../gio/glocalfileinputstream.c:225 ../gio/glocalfileinputstream.c:333 -#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1003 +#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1009 #, c-format msgid "Error seeking in file: %s" msgstr "Error seeking in file: %s" @@ -2918,30 +2883,30 @@ msgstr "Error creating backup copy: %s" msgid "Error renaming temporary file: %s" msgstr "Error renaming temporary file: %s" -#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1054 +#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1060 #, c-format msgid "Error truncating file: %s" msgstr "Error truncating file: %s" -#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:785 -#: ../gio/glocalfileoutputstream.c:1035 ../gio/gsubprocess.c:360 +#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:791 +#: ../gio/glocalfileoutputstream.c:1041 ../gio/gsubprocess.c:360 #, c-format msgid "Error opening file “%s”: %s" msgstr "Error opening file “%s”: %s" -#: ../gio/glocalfileoutputstream.c:816 +#: ../gio/glocalfileoutputstream.c:822 msgid "Target file is a directory" msgstr "Target file is a directory" -#: ../gio/glocalfileoutputstream.c:821 +#: ../gio/glocalfileoutputstream.c:827 msgid "Target file is not a regular file" msgstr "Target file is not a regular file" -#: ../gio/glocalfileoutputstream.c:833 +#: ../gio/glocalfileoutputstream.c:839 msgid "The file was externally modified" msgstr "The file was externally modified" -#: ../gio/glocalfileoutputstream.c:1019 +#: ../gio/glocalfileoutputstream.c:1025 #, c-format msgid "Error removing old file: %s" msgstr "Error removing old file: %s" @@ -3058,7 +3023,7 @@ msgstr "Could not create network monitor: " msgid "Could not get network status: " msgstr "Could not get network status: " -#: ../gio/gnetworkmonitornm.c:326 +#: ../gio/gnetworkmonitornm.c:329 #, c-format msgid "NetworkManager version too old" msgstr "NetworkManager version too old" @@ -3077,15 +3042,15 @@ msgstr "Source stream is already closed" msgid "Error resolving “%s”: %s" msgstr "Error resolving “%s”: %s" -#: ../gio/gresource.c:595 ../gio/gresource.c:846 ../gio/gresource.c:863 -#: ../gio/gresource.c:987 ../gio/gresource.c:1059 ../gio/gresource.c:1132 -#: ../gio/gresource.c:1202 ../gio/gresourcefile.c:453 +#: ../gio/gresource.c:606 ../gio/gresource.c:857 ../gio/gresource.c:874 +#: ../gio/gresource.c:998 ../gio/gresource.c:1070 ../gio/gresource.c:1143 +#: ../gio/gresource.c:1213 ../gio/gresourcefile.c:453 #: ../gio/gresourcefile.c:576 ../gio/gresourcefile.c:713 #, c-format msgid "The resource at “%s” does not exist" msgstr "The resource at “%s” does not exist" -#: ../gio/gresource.c:760 +#: ../gio/gresource.c:771 #, c-format msgid "The resource at “%s” failed to decompress" msgstr "The resource at “%s” failed to decompress" @@ -3189,7 +3154,7 @@ msgstr "" msgid " SECTION An (optional) elf section name\n" msgstr " SECTION An (optional) elf section name\n" -#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:654 +#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:656 msgid " COMMAND The (optional) command to explain\n" msgstr " COMMAND The (optional) command to explain\n" @@ -3222,7 +3187,7 @@ msgid " PATH A resource path\n" msgstr " PATH A resource path\n" #: ../gio/gsettings-tool.c:51 ../gio/gsettings-tool.c:72 -#: ../gio/gsettings-tool.c:851 +#: ../gio/gsettings-tool.c:853 #, c-format msgid "No such schema “%s”\n" msgstr "No such schema “%s”\n" @@ -3257,38 +3222,38 @@ msgstr "Path must end with a slash (/)\n" msgid "Path must not contain two adjacent slashes (//)\n" msgstr "Path must not contain two adjacent slashes (//)\n" -#: ../gio/gsettings-tool.c:489 +#: ../gio/gsettings-tool.c:491 #, c-format msgid "The provided value is outside of the valid range\n" msgstr "The provided value is outside of the valid range\n" -#: ../gio/gsettings-tool.c:496 +#: ../gio/gsettings-tool.c:498 #, c-format msgid "The key is not writable\n" msgstr "The key is not writable\n" -#: ../gio/gsettings-tool.c:532 +#: ../gio/gsettings-tool.c:534 msgid "List the installed (non-relocatable) schemas" msgstr "List the installed (non-relocatable) schemas" -#: ../gio/gsettings-tool.c:538 +#: ../gio/gsettings-tool.c:540 msgid "List the installed relocatable schemas" msgstr "List the installed relocatable schemas" -#: ../gio/gsettings-tool.c:544 +#: ../gio/gsettings-tool.c:546 msgid "List the keys in SCHEMA" msgstr "List the keys in SCHEMA" -#: ../gio/gsettings-tool.c:545 ../gio/gsettings-tool.c:551 -#: ../gio/gsettings-tool.c:594 +#: ../gio/gsettings-tool.c:547 ../gio/gsettings-tool.c:553 +#: ../gio/gsettings-tool.c:596 msgid "SCHEMA[:PATH]" msgstr "SCHEMA[:PATH]" -#: ../gio/gsettings-tool.c:550 +#: ../gio/gsettings-tool.c:552 msgid "List the children of SCHEMA" msgstr "List the children of SCHEMA" -#: ../gio/gsettings-tool.c:556 +#: ../gio/gsettings-tool.c:558 msgid "" "List keys and values, recursively\n" "If no SCHEMA is given, list all keys\n" @@ -3296,49 +3261,49 @@ msgstr "" "List keys and values, recursively\n" "If no SCHEMA is given, list all keys\n" -#: ../gio/gsettings-tool.c:558 +#: ../gio/gsettings-tool.c:560 msgid "[SCHEMA[:PATH]]" msgstr "[SCHEMA[:PATH]]" -#: ../gio/gsettings-tool.c:563 +#: ../gio/gsettings-tool.c:565 msgid "Get the value of KEY" msgstr "Get the value of KEY" -#: ../gio/gsettings-tool.c:564 ../gio/gsettings-tool.c:570 -#: ../gio/gsettings-tool.c:576 ../gio/gsettings-tool.c:588 -#: ../gio/gsettings-tool.c:600 +#: ../gio/gsettings-tool.c:566 ../gio/gsettings-tool.c:572 +#: ../gio/gsettings-tool.c:578 ../gio/gsettings-tool.c:590 +#: ../gio/gsettings-tool.c:602 msgid "SCHEMA[:PATH] KEY" msgstr "SCHEMA[:PATH] KEY" -#: ../gio/gsettings-tool.c:569 +#: ../gio/gsettings-tool.c:571 msgid "Query the range of valid values for KEY" msgstr "Query the range of valid values for KEY" -#: ../gio/gsettings-tool.c:575 +#: ../gio/gsettings-tool.c:577 msgid "Query the description for KEY" msgstr "Query the description for KEY" -#: ../gio/gsettings-tool.c:581 +#: ../gio/gsettings-tool.c:583 msgid "Set the value of KEY to VALUE" msgstr "Set the value of KEY to VALUE" -#: ../gio/gsettings-tool.c:582 +#: ../gio/gsettings-tool.c:584 msgid "SCHEMA[:PATH] KEY VALUE" msgstr "SCHEMA[:PATH] KEY VALUE" -#: ../gio/gsettings-tool.c:587 +#: ../gio/gsettings-tool.c:589 msgid "Reset KEY to its default value" msgstr "Reset KEY to its default value" -#: ../gio/gsettings-tool.c:593 +#: ../gio/gsettings-tool.c:595 msgid "Reset all keys in SCHEMA to their defaults" msgstr "Reset all keys in SCHEMA to their defaults" -#: ../gio/gsettings-tool.c:599 +#: ../gio/gsettings-tool.c:601 msgid "Check if KEY is writable" msgstr "Check if KEY is writable" -#: ../gio/gsettings-tool.c:605 +#: ../gio/gsettings-tool.c:607 msgid "" "Monitor KEY for changes.\n" "If no KEY is specified, monitor all keys in SCHEMA.\n" @@ -3348,11 +3313,11 @@ msgstr "" "If no KEY is specified, monitor all keys in SCHEMA.\n" "Use ^C to stop monitoring.\n" -#: ../gio/gsettings-tool.c:608 +#: ../gio/gsettings-tool.c:610 msgid "SCHEMA[:PATH] [KEY]" msgstr "SCHEMA[:PATH] [KEY]" -#: ../gio/gsettings-tool.c:620 +#: ../gio/gsettings-tool.c:622 msgid "" "Usage:\n" " gsettings --version\n" @@ -3400,7 +3365,7 @@ msgstr "" "Use “gsettings help COMMAND” to get detailed help.\n" "\n" -#: ../gio/gsettings-tool.c:644 +#: ../gio/gsettings-tool.c:646 #, c-format msgid "" "Usage:\n" @@ -3415,11 +3380,11 @@ msgstr "" "%s\n" "\n" -#: ../gio/gsettings-tool.c:650 +#: ../gio/gsettings-tool.c:652 msgid " SCHEMADIR A directory to search for additional schemas\n" msgstr " SCHEMADIR A directory to search for additional schemas\n" -#: ../gio/gsettings-tool.c:658 +#: ../gio/gsettings-tool.c:660 msgid "" " SCHEMA The name of the schema\n" " PATH The path, for relocatable schemas\n" @@ -3427,176 +3392,176 @@ msgstr "" " SCHEMA The name of the schema\n" " PATH The path, for relocatable schemas\n" -#: ../gio/gsettings-tool.c:663 +#: ../gio/gsettings-tool.c:665 msgid " KEY The (optional) key within the schema\n" msgstr " KEY The (optional) key within the schema\n" -#: ../gio/gsettings-tool.c:667 +#: ../gio/gsettings-tool.c:669 msgid " KEY The key within the schema\n" msgstr " KEY The key within the schema\n" -#: ../gio/gsettings-tool.c:671 +#: ../gio/gsettings-tool.c:673 msgid " VALUE The value to set\n" msgstr " VALUE The value to set\n" -#: ../gio/gsettings-tool.c:726 +#: ../gio/gsettings-tool.c:728 #, c-format msgid "Could not load schemas from %s: %s\n" msgstr "Could not load schemas from %s: %s\n" -#: ../gio/gsettings-tool.c:738 +#: ../gio/gsettings-tool.c:740 #, c-format msgid "No schemas installed\n" msgstr "No schemas installed\n" -#: ../gio/gsettings-tool.c:809 +#: ../gio/gsettings-tool.c:811 #, c-format msgid "Empty schema name given\n" msgstr "Empty schema name given\n" -#: ../gio/gsettings-tool.c:864 +#: ../gio/gsettings-tool.c:866 #, c-format msgid "No such key “%s”\n" msgstr "No such key “%s”\n" -#: ../gio/gsocket.c:369 +#: ../gio/gsocket.c:379 msgid "Invalid socket, not initialized" msgstr "Invalid socket, not initialized" -#: ../gio/gsocket.c:376 +#: ../gio/gsocket.c:386 #, c-format msgid "Invalid socket, initialization failed due to: %s" msgstr "Invalid socket, initialization failed due to: %s" -#: ../gio/gsocket.c:384 +#: ../gio/gsocket.c:394 msgid "Socket is already closed" msgstr "Socket is already closed" -#: ../gio/gsocket.c:399 ../gio/gsocket.c:2754 ../gio/gsocket.c:3939 -#: ../gio/gsocket.c:3995 +#: ../gio/gsocket.c:409 ../gio/gsocket.c:2764 ../gio/gsocket.c:3949 +#: ../gio/gsocket.c:4005 msgid "Socket I/O timed out" msgstr "Socket I/O timed out" -#: ../gio/gsocket.c:531 +#: ../gio/gsocket.c:541 #, c-format msgid "creating GSocket from fd: %s" msgstr "creating GSocket from fd: %s" -#: ../gio/gsocket.c:559 ../gio/gsocket.c:613 ../gio/gsocket.c:620 +#: ../gio/gsocket.c:569 ../gio/gsocket.c:623 ../gio/gsocket.c:630 #, c-format msgid "Unable to create socket: %s" msgstr "Unable to create socket: %s" -#: ../gio/gsocket.c:613 +#: ../gio/gsocket.c:623 msgid "Unknown family was specified" msgstr "Unknown family was specified" -#: ../gio/gsocket.c:620 +#: ../gio/gsocket.c:630 msgid "Unknown protocol was specified" msgstr "Unknown protocol was specified" -#: ../gio/gsocket.c:1111 +#: ../gio/gsocket.c:1121 #, c-format msgid "Cannot use datagram operations on a non-datagram socket." msgstr "Cannot use datagram operations on a non-datagram socket." -#: ../gio/gsocket.c:1128 +#: ../gio/gsocket.c:1138 #, c-format msgid "Cannot use datagram operations on a socket with a timeout set." msgstr "Cannot use datagram operations on a socket with a timeout set." -#: ../gio/gsocket.c:1932 +#: ../gio/gsocket.c:1942 #, c-format msgid "could not get local address: %s" msgstr "could not get local address: %s" -#: ../gio/gsocket.c:1975 +#: ../gio/gsocket.c:1985 #, c-format msgid "could not get remote address: %s" msgstr "could not get remote address: %s" -#: ../gio/gsocket.c:2041 +#: ../gio/gsocket.c:2051 #, c-format msgid "could not listen: %s" msgstr "could not listen: %s" -#: ../gio/gsocket.c:2140 +#: ../gio/gsocket.c:2150 #, c-format msgid "Error binding to address: %s" msgstr "Error binding to address: %s" -#: ../gio/gsocket.c:2255 ../gio/gsocket.c:2292 +#: ../gio/gsocket.c:2265 ../gio/gsocket.c:2302 #, c-format msgid "Error joining multicast group: %s" msgstr "Error joining multicast group: %s" -#: ../gio/gsocket.c:2256 ../gio/gsocket.c:2293 +#: ../gio/gsocket.c:2266 ../gio/gsocket.c:2303 #, c-format msgid "Error leaving multicast group: %s" msgstr "Error leaving multicast group: %s" -#: ../gio/gsocket.c:2257 +#: ../gio/gsocket.c:2267 msgid "No support for source-specific multicast" msgstr "No support for source-specific multicast" -#: ../gio/gsocket.c:2477 +#: ../gio/gsocket.c:2487 #, c-format msgid "Error accepting connection: %s" msgstr "Error accepting connection: %s" -#: ../gio/gsocket.c:2598 +#: ../gio/gsocket.c:2608 msgid "Connection in progress" msgstr "Connection in progress" -#: ../gio/gsocket.c:2647 +#: ../gio/gsocket.c:2657 msgid "Unable to get pending error: " msgstr "Unable to get pending error: " -#: ../gio/gsocket.c:2817 +#: ../gio/gsocket.c:2827 #, c-format msgid "Error receiving data: %s" msgstr "Error receiving data: %s" -#: ../gio/gsocket.c:3012 +#: ../gio/gsocket.c:3022 #, c-format msgid "Error sending data: %s" msgstr "Error sending data: %s" -#: ../gio/gsocket.c:3199 +#: ../gio/gsocket.c:3209 #, c-format msgid "Unable to shutdown socket: %s" msgstr "Unable to shutdown socket: %s" -#: ../gio/gsocket.c:3280 +#: ../gio/gsocket.c:3290 #, c-format msgid "Error closing socket: %s" msgstr "Error closing socket: %s" -#: ../gio/gsocket.c:3932 +#: ../gio/gsocket.c:3942 #, c-format msgid "Waiting for socket condition: %s" msgstr "Waiting for socket condition: %s" -#: ../gio/gsocket.c:4404 ../gio/gsocket.c:4484 ../gio/gsocket.c:4662 +#: ../gio/gsocket.c:4414 ../gio/gsocket.c:4494 ../gio/gsocket.c:4672 #, c-format msgid "Error sending message: %s" msgstr "Error sending message: %s" -#: ../gio/gsocket.c:4428 +#: ../gio/gsocket.c:4438 msgid "GSocketControlMessage not supported on Windows" msgstr "GSocketControlMessage not supported on Windows" -#: ../gio/gsocket.c:4881 ../gio/gsocket.c:4954 ../gio/gsocket.c:5180 +#: ../gio/gsocket.c:4891 ../gio/gsocket.c:4964 ../gio/gsocket.c:5190 #, c-format msgid "Error receiving message: %s" msgstr "Error receiving message: %s" -#: ../gio/gsocket.c:5452 +#: ../gio/gsocket.c:5462 #, c-format msgid "Unable to read socket credentials: %s" msgstr "Unable to read socket credentials: %s" -#: ../gio/gsocket.c:5461 +#: ../gio/gsocket.c:5471 msgid "g_socket_get_credentials not implemented for this OS" msgstr "g_socket_get_credentials not implemented for this OS" @@ -3781,15 +3746,17 @@ msgstr "" "This is the last chance to enter the password correctly before your access " "is locked out." -#: ../gio/gtlspassword.c:113 +#. Translators: This is not the 'This is the last chance' string. It is +#. * displayed when more than one attempt is allowed. +#: ../gio/gtlspassword.c:115 msgid "" -"Several password entered have been incorrect, and your access will be locked " -"out after further failures." +"Several passwords entered have been incorrect, and your access will be " +"locked out after further failures." msgstr "" -"Several password entered have been incorrect, and your access will be locked " -"out after further failures." +"Several passwords entered have been incorrect, and your access will be " +"locked out after further failures." -#: ../gio/gtlspassword.c:115 +#: ../gio/gtlspassword.c:117 msgid "The password entered is incorrect." msgstr "The password entered is incorrect." @@ -3856,7 +3823,7 @@ msgstr "Error reading from file descriptor: %s" msgid "Error closing file descriptor: %s" msgstr "Error closing file descriptor: %s" -#: ../gio/gunixmounts.c:2429 ../gio/gunixmounts.c:2482 +#: ../gio/gunixmounts.c:2422 ../gio/gunixmounts.c:2475 msgid "Filesystem root" msgstr "Filesystem root" @@ -4007,8 +3974,8 @@ msgstr "No application with name “%s” registered a bookmark for “%s”" msgid "Failed to expand exec line “%s” with URI “%s”" msgstr "Failed to expand exec line “%s” with URI “%s”" -#: ../glib/gconvert.c:477 ../glib/gutf8.c:852 ../glib/gutf8.c:1064 -#: ../glib/gutf8.c:1201 ../glib/gutf8.c:1305 +#: ../glib/gconvert.c:477 ../glib/gutf8.c:862 ../glib/gutf8.c:1074 +#: ../glib/gutf8.c:1211 ../glib/gutf8.c:1315 msgid "Partial character sequence at end of input" msgstr "Partial character sequence at end of input" @@ -4017,340 +3984,340 @@ msgstr "Partial character sequence at end of input" msgid "Cannot convert fallback “%s” to codeset “%s”" msgstr "Cannot convert fallback “%s” to codeset “%s”" -#: ../glib/gconvert.c:1566 +#: ../glib/gconvert.c:1513 #, c-format msgid "The URI “%s” is not an absolute URI using the “file” scheme" msgstr "The URI “%s” is not an absolute URI using the “file” scheme" -#: ../glib/gconvert.c:1576 +#: ../glib/gconvert.c:1523 #, c-format msgid "The local file URI “%s” may not include a “#”" msgstr "The local file URI “%s” may not include a “#”" -#: ../glib/gconvert.c:1593 +#: ../glib/gconvert.c:1540 #, c-format msgid "The URI “%s” is invalid" msgstr "The URI “%s” is invalid" -#: ../glib/gconvert.c:1605 +#: ../glib/gconvert.c:1552 #, c-format msgid "The hostname of the URI “%s” is invalid" msgstr "The hostname of the URI “%s” is invalid" -#: ../glib/gconvert.c:1621 +#: ../glib/gconvert.c:1568 #, c-format msgid "The URI “%s” contains invalidly escaped characters" msgstr "The URI “%s” contains invalidly escaped characters" -#: ../glib/gconvert.c:1716 +#: ../glib/gconvert.c:1640 #, c-format msgid "The pathname “%s” is not an absolute path" msgstr "The pathname “%s” is not an absolute path" -#. Translators: 'before midday' indicator -#: ../glib/gdatetime.c:199 -msgctxt "GDateTime" -msgid "AM" -msgstr "AM" - -#. Translators: 'after midday' indicator -#: ../glib/gdatetime.c:201 -msgctxt "GDateTime" -msgid "PM" -msgstr "PM" - #. Translators: this is the preferred format for expressing the date and the time -#: ../glib/gdatetime.c:204 +#: ../glib/gdatetime.c:202 msgctxt "GDateTime" msgid "%a %b %e %H:%M:%S %Y" msgstr "%Z %H:%M:%S %Y %b %d %a" #. Translators: this is the preferred format for expressing the date -#: ../glib/gdatetime.c:207 +#: ../glib/gdatetime.c:205 msgctxt "GDateTime" msgid "%m/%d/%y" msgstr "%d/%m/%y" #. Translators: this is the preferred format for expressing the time -#: ../glib/gdatetime.c:210 +#: ../glib/gdatetime.c:208 msgctxt "GDateTime" msgid "%H:%M:%S" msgstr "%H:%M:%S" #. Translators: this is the preferred format for expressing 12 hour time -#: ../glib/gdatetime.c:213 +#: ../glib/gdatetime.c:211 msgctxt "GDateTime" msgid "%I:%M:%S %p" msgstr "%I:%M:%S %P" -#: ../glib/gdatetime.c:226 +#: ../glib/gdatetime.c:224 msgctxt "full month name" msgid "January" msgstr "ינואר" -#: ../glib/gdatetime.c:228 +#: ../glib/gdatetime.c:226 msgctxt "full month name" msgid "February" msgstr "פברואר" -#: ../glib/gdatetime.c:230 +#: ../glib/gdatetime.c:228 msgctxt "full month name" msgid "March" msgstr "מרץ" -#: ../glib/gdatetime.c:232 +#: ../glib/gdatetime.c:230 msgctxt "full month name" msgid "April" msgstr "אפריל" -#: ../glib/gdatetime.c:234 +#: ../glib/gdatetime.c:232 msgctxt "full month name" msgid "May" msgstr "מאי" -#: ../glib/gdatetime.c:236 +#: ../glib/gdatetime.c:234 msgctxt "full month name" msgid "June" msgstr "יוני" -#: ../glib/gdatetime.c:238 +#: ../glib/gdatetime.c:236 msgctxt "full month name" msgid "July" msgstr "יולי" -#: ../glib/gdatetime.c:240 +#: ../glib/gdatetime.c:238 msgctxt "full month name" msgid "August" msgstr "אוגוסט" -#: ../glib/gdatetime.c:242 +#: ../glib/gdatetime.c:240 msgctxt "full month name" msgid "September" msgstr "ספטמבר" -#: ../glib/gdatetime.c:244 +#: ../glib/gdatetime.c:242 msgctxt "full month name" msgid "October" msgstr "אוקטובר" -#: ../glib/gdatetime.c:246 +#: ../glib/gdatetime.c:244 msgctxt "full month name" msgid "November" msgstr "נובמבר" -#: ../glib/gdatetime.c:248 +#: ../glib/gdatetime.c:246 msgctxt "full month name" msgid "December" msgstr "דצמבר" -#: ../glib/gdatetime.c:263 +#: ../glib/gdatetime.c:261 msgctxt "abbreviated month name" msgid "Jan" msgstr "ינו" -#: ../glib/gdatetime.c:265 +#: ../glib/gdatetime.c:263 msgctxt "abbreviated month name" msgid "Feb" msgstr "פבר" -#: ../glib/gdatetime.c:267 +#: ../glib/gdatetime.c:265 msgctxt "abbreviated month name" msgid "Mar" msgstr "מרץ" -#: ../glib/gdatetime.c:269 +#: ../glib/gdatetime.c:267 msgctxt "abbreviated month name" msgid "Apr" msgstr "אפר" -#: ../glib/gdatetime.c:271 +#: ../glib/gdatetime.c:269 msgctxt "abbreviated month name" msgid "May" msgstr "מאי" -#: ../glib/gdatetime.c:273 +#: ../glib/gdatetime.c:271 msgctxt "abbreviated month name" msgid "Jun" msgstr "יונ" -#: ../glib/gdatetime.c:275 +#: ../glib/gdatetime.c:273 msgctxt "abbreviated month name" msgid "Jul" msgstr "יול" -#: ../glib/gdatetime.c:277 +#: ../glib/gdatetime.c:275 msgctxt "abbreviated month name" msgid "Aug" msgstr "אוג" -#: ../glib/gdatetime.c:279 +#: ../glib/gdatetime.c:277 msgctxt "abbreviated month name" msgid "Sep" msgstr "ספט" -#: ../glib/gdatetime.c:281 +#: ../glib/gdatetime.c:279 msgctxt "abbreviated month name" msgid "Oct" msgstr "אוק" -#: ../glib/gdatetime.c:283 +#: ../glib/gdatetime.c:281 msgctxt "abbreviated month name" msgid "Nov" msgstr "נוב" -#: ../glib/gdatetime.c:285 +#: ../glib/gdatetime.c:283 msgctxt "abbreviated month name" msgid "Dec" msgstr "דצמ" -#: ../glib/gdatetime.c:300 +#: ../glib/gdatetime.c:298 msgctxt "full weekday name" msgid "Monday" msgstr "יום שני" -#: ../glib/gdatetime.c:302 +#: ../glib/gdatetime.c:300 msgctxt "full weekday name" msgid "Tuesday" msgstr "יום שלישי" -#: ../glib/gdatetime.c:304 +#: ../glib/gdatetime.c:302 msgctxt "full weekday name" msgid "Wednesday" msgstr "יום רביעי" -#: ../glib/gdatetime.c:306 +#: ../glib/gdatetime.c:304 msgctxt "full weekday name" msgid "Thursday" msgstr "יום חמישי" -#: ../glib/gdatetime.c:308 +#: ../glib/gdatetime.c:306 msgctxt "full weekday name" msgid "Friday" msgstr "יום שישי" -#: ../glib/gdatetime.c:310 +#: ../glib/gdatetime.c:308 msgctxt "full weekday name" msgid "Saturday" msgstr "שבת" -#: ../glib/gdatetime.c:312 +#: ../glib/gdatetime.c:310 msgctxt "full weekday name" msgid "Sunday" msgstr "יום ראשון" -#: ../glib/gdatetime.c:327 +#: ../glib/gdatetime.c:325 msgctxt "abbreviated weekday name" msgid "Mon" msgstr "ב׳" -#: ../glib/gdatetime.c:329 +#: ../glib/gdatetime.c:327 msgctxt "abbreviated weekday name" msgid "Tue" msgstr "ג׳" -#: ../glib/gdatetime.c:331 +#: ../glib/gdatetime.c:329 msgctxt "abbreviated weekday name" msgid "Wed" msgstr "ד׳" -#: ../glib/gdatetime.c:333 +#: ../glib/gdatetime.c:331 msgctxt "abbreviated weekday name" msgid "Thu" msgstr "ה" -#: ../glib/gdatetime.c:335 +#: ../glib/gdatetime.c:333 msgctxt "abbreviated weekday name" msgid "Fri" msgstr "ו׳" -#: ../glib/gdatetime.c:337 +#: ../glib/gdatetime.c:335 msgctxt "abbreviated weekday name" msgid "Sat" msgstr "ש׳" -#: ../glib/gdatetime.c:339 +#: ../glib/gdatetime.c:337 msgctxt "abbreviated weekday name" msgid "Sun" msgstr "א׳" +#. Translators: 'before midday' indicator +#: ../glib/gdatetime.c:354 +msgctxt "GDateTime" +msgid "AM" +msgstr "AM" + +#. Translators: 'after midday' indicator +#: ../glib/gdatetime.c:357 +msgctxt "GDateTime" +msgid "PM" +msgstr "PM" + #: ../glib/gdir.c:155 #, c-format msgid "Error opening directory “%s”: %s" msgstr "Error opening directory “%s”: %s" -#: ../glib/gfileutils.c:700 ../glib/gfileutils.c:792 +#: ../glib/gfileutils.c:706 ../glib/gfileutils.c:798 #, c-format msgid "Could not allocate %lu byte to read file “%s”" msgid_plural "Could not allocate %lu bytes to read file “%s”" msgstr[0] "Could not allocate %lu bytes to read file “%s”" msgstr[1] "Could not allocate %lu bytes to read file \"%s\"" -#: ../glib/gfileutils.c:717 +#: ../glib/gfileutils.c:723 #, c-format msgid "Error reading file “%s”: %s" msgstr "Error reading file “%s”: %s" -#: ../glib/gfileutils.c:753 +#: ../glib/gfileutils.c:759 #, c-format msgid "File “%s” is too large" msgstr "File “%s” is too large" -#: ../glib/gfileutils.c:817 +#: ../glib/gfileutils.c:823 #, c-format msgid "Failed to read from file “%s”: %s" msgstr "Failed to read from file “%s”: %s" -#: ../glib/gfileutils.c:865 ../glib/gfileutils.c:937 +#: ../glib/gfileutils.c:871 ../glib/gfileutils.c:943 #, c-format msgid "Failed to open file “%s”: %s" msgstr "Failed to open file “%s”: %s" -#: ../glib/gfileutils.c:877 +#: ../glib/gfileutils.c:883 #, c-format msgid "Failed to get attributes of file “%s”: fstat() failed: %s" msgstr "Failed to get attributes of file “%s”: fstat() failed: %s" -#: ../glib/gfileutils.c:907 +#: ../glib/gfileutils.c:913 #, c-format msgid "Failed to open file “%s”: fdopen() failed: %s" msgstr "Failed to open file “%s”: fdopen() failed: %s" -#: ../glib/gfileutils.c:1006 +#: ../glib/gfileutils.c:1012 #, c-format msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s" msgstr "Failed to rename file “%s” to “%s”: g_rename() failed: %s" -#: ../glib/gfileutils.c:1041 ../glib/gfileutils.c:1548 +#: ../glib/gfileutils.c:1047 ../glib/gfileutils.c:1554 #, c-format msgid "Failed to create file “%s”: %s" msgstr "Failed to create file “%s”: %s" -#: ../glib/gfileutils.c:1068 +#: ../glib/gfileutils.c:1074 #, c-format msgid "Failed to write file “%s”: write() failed: %s" msgstr "Failed to write file “%s”: write() failed: %s" -#: ../glib/gfileutils.c:1111 +#: ../glib/gfileutils.c:1117 #, c-format msgid "Failed to write file “%s”: fsync() failed: %s" msgstr "Failed to write file “%s”: fsync() failed: %s" -#: ../glib/gfileutils.c:1235 +#: ../glib/gfileutils.c:1241 #, c-format msgid "Existing file “%s” could not be removed: g_unlink() failed: %s" msgstr "Existing file “%s” could not be removed: g_unlink() failed: %s" -#: ../glib/gfileutils.c:1514 +#: ../glib/gfileutils.c:1520 #, c-format msgid "Template “%s” invalid, should not contain a “%s”" msgstr "Template “%s” invalid, should not contain a “%s”" -#: ../glib/gfileutils.c:1527 +#: ../glib/gfileutils.c:1533 #, c-format msgid "Template “%s” doesn’t contain XXXXXX" msgstr "Template “%s” doesn’t contain XXXXXX" -#: ../glib/gfileutils.c:2052 +#: ../glib/gfileutils.c:2058 #, c-format msgid "Failed to read the symbolic link “%s”: %s" msgstr "Failed to read the symbolic link “%s”: %s" @@ -5146,77 +5113,77 @@ msgstr "Text ended before matching quote was found for %c. (The text was “%s msgid "Text was empty (or contained only whitespace)" msgstr "Text was empty (or contained only whitespace)" -#: ../glib/gspawn.c:207 +#: ../glib/gspawn.c:250 #, c-format msgid "Failed to read data from child process (%s)" msgstr "Failed to read data from child process (%s)" -#: ../glib/gspawn.c:351 +#: ../glib/gspawn.c:394 #, c-format msgid "Unexpected error in select() reading data from a child process (%s)" msgstr "Unexpected error in select() reading data from a child process (%s)" -#: ../glib/gspawn.c:436 +#: ../glib/gspawn.c:479 #, c-format msgid "Unexpected error in waitpid() (%s)" msgstr "Unexpected error in waitpid() (%s)" -#: ../glib/gspawn.c:842 ../glib/gspawn-win32.c:1231 +#: ../glib/gspawn.c:886 ../glib/gspawn-win32.c:1231 #, c-format msgid "Child process exited with code %ld" msgstr "Child process exited with code %ld" -#: ../glib/gspawn.c:850 +#: ../glib/gspawn.c:894 #, c-format msgid "Child process killed by signal %ld" msgstr "Child process killed by signal %ld" -#: ../glib/gspawn.c:857 +#: ../glib/gspawn.c:901 #, c-format msgid "Child process stopped by signal %ld" msgstr "Child process stopped by signal %ld" -#: ../glib/gspawn.c:864 +#: ../glib/gspawn.c:908 #, c-format msgid "Child process exited abnormally" msgstr "Child process exited abnormally" -#: ../glib/gspawn.c:1269 ../glib/gspawn-win32.c:337 ../glib/gspawn-win32.c:345 +#: ../glib/gspawn.c:1313 ../glib/gspawn-win32.c:337 ../glib/gspawn-win32.c:345 #, c-format msgid "Failed to read from child pipe (%s)" msgstr "Failed to read from child pipe (%s)" -#: ../glib/gspawn.c:1339 +#: ../glib/gspawn.c:1383 #, c-format msgid "Failed to fork (%s)" msgstr "Failed to fork (%s)" -#: ../glib/gspawn.c:1488 ../glib/gspawn-win32.c:368 +#: ../glib/gspawn.c:1532 ../glib/gspawn-win32.c:368 #, c-format msgid "Failed to change to directory “%s” (%s)" msgstr "Failed to change to directory “%s” (%s)" -#: ../glib/gspawn.c:1498 +#: ../glib/gspawn.c:1542 #, c-format msgid "Failed to execute child process “%s” (%s)" msgstr "Failed to execute child process “%s” (%s)" -#: ../glib/gspawn.c:1508 +#: ../glib/gspawn.c:1552 #, c-format msgid "Failed to redirect output or input of child process (%s)" msgstr "Failed to redirect output or input of child process (%s)" -#: ../glib/gspawn.c:1517 +#: ../glib/gspawn.c:1561 #, c-format msgid "Failed to fork child process (%s)" msgstr "Failed to fork child process (%s)" -#: ../glib/gspawn.c:1525 +#: ../glib/gspawn.c:1569 #, c-format msgid "Unknown error executing child process “%s”" msgstr "Unknown error executing child process “%s”" -#: ../glib/gspawn.c:1549 +#: ../glib/gspawn.c:1593 #, c-format msgid "Failed to read enough data from child pid pipe (%s)" msgstr "Failed to read enough data from child pid pipe (%s)" @@ -5241,18 +5208,16 @@ msgid "Invalid program name: %s" msgstr "Invalid program name: %s" #: ../glib/gspawn-win32.c:453 ../glib/gspawn-win32.c:720 -#: ../glib/gspawn-win32.c:1295 #, c-format msgid "Invalid string in argument vector at %d: %s" msgstr "Invalid string in argument vector at %d: %s" #: ../glib/gspawn-win32.c:464 ../glib/gspawn-win32.c:735 -#: ../glib/gspawn-win32.c:1328 #, c-format msgid "Invalid string in environment: %s" msgstr "Invalid string in environment: %s" -#: ../glib/gspawn-win32.c:716 ../glib/gspawn-win32.c:1276 +#: ../glib/gspawn-win32.c:716 #, c-format msgid "Invalid working directory: %s" msgstr "Invalid working directory: %s" @@ -5270,92 +5235,111 @@ msgstr "" "Unexpected error in g_io_channel_win32_poll() reading data from a child " "process" -#: ../glib/gutf8.c:798 +#: ../glib/gstrfuncs.c:3237 ../glib/gstrfuncs.c:3338 +msgid "Empty string is not a number" +msgstr "Empty string is not a number" + +#: ../glib/gstrfuncs.c:3261 +#, c-format +msgid "“%s” is not a signed number" +msgstr "“%s” is not a signed number" + +#: ../glib/gstrfuncs.c:3271 ../glib/gstrfuncs.c:3374 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Number “%s” is out of bounds [%s, %s]" + +#: ../glib/gstrfuncs.c:3364 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” is not an unsigned number" + +#: ../glib/gutf8.c:808 msgid "Failed to allocate memory" msgstr "Failed to allocate memory" -#: ../glib/gutf8.c:931 +#: ../glib/gutf8.c:941 msgid "Character out of range for UTF-8" msgstr "Character out of range for UTF-8" -#: ../glib/gutf8.c:1032 ../glib/gutf8.c:1041 ../glib/gutf8.c:1171 -#: ../glib/gutf8.c:1180 ../glib/gutf8.c:1319 ../glib/gutf8.c:1416 +#: ../glib/gutf8.c:1042 ../glib/gutf8.c:1051 ../glib/gutf8.c:1181 +#: ../glib/gutf8.c:1190 ../glib/gutf8.c:1329 ../glib/gutf8.c:1426 msgid "Invalid sequence in conversion input" msgstr "Invalid sequence in conversion input" -#: ../glib/gutf8.c:1330 ../glib/gutf8.c:1427 +#: ../glib/gutf8.c:1340 ../glib/gutf8.c:1437 msgid "Character out of range for UTF-16" msgstr "Character out of range for UTF-16" -#: ../glib/gutils.c:2139 ../glib/gutils.c:2166 ../glib/gutils.c:2272 +#: ../glib/gutils.c:2147 ../glib/gutils.c:2174 ../glib/gutils.c:2280 #, c-format msgid "%u byte" msgid_plural "%u bytes" msgstr[0] "בית אחד" msgstr[1] "%u בתים" -#: ../glib/gutils.c:2145 +#: ../glib/gutils.c:2153 #, c-format msgid "%.1f KiB" msgstr "%.1f KiB" -#: ../glib/gutils.c:2147 +#: ../glib/gutils.c:2155 #, c-format msgid "%.1f MiB" msgstr "%.1f MiB" -#: ../glib/gutils.c:2150 +#: ../glib/gutils.c:2158 #, c-format msgid "%.1f GiB" msgstr "%.1f GiB" -#: ../glib/gutils.c:2153 +#: ../glib/gutils.c:2161 #, c-format msgid "%.1f TiB" msgstr "%.1f TiB" -#: ../glib/gutils.c:2156 +#: ../glib/gutils.c:2164 #, c-format msgid "%.1f PiB" msgstr "%.1f PiB" -#: ../glib/gutils.c:2159 +#: ../glib/gutils.c:2167 #, c-format msgid "%.1f EiB" msgstr "%.1f EiB" -#: ../glib/gutils.c:2172 +#: ../glib/gutils.c:2180 #, c-format msgid "%.1f kB" msgstr "%.1f ק״ב" -#: ../glib/gutils.c:2175 ../glib/gutils.c:2290 +#: ../glib/gutils.c:2183 ../glib/gutils.c:2298 #, c-format msgid "%.1f MB" msgstr "%.1f מ״ב" -#: ../glib/gutils.c:2178 ../glib/gutils.c:2295 +#: ../glib/gutils.c:2186 ../glib/gutils.c:2303 #, c-format msgid "%.1f GB" msgstr "%.1f ג״ב" -#: ../glib/gutils.c:2180 ../glib/gutils.c:2300 +#: ../glib/gutils.c:2188 ../glib/gutils.c:2308 #, c-format msgid "%.1f TB" msgstr "%.1f ט״ב" -#: ../glib/gutils.c:2183 ../glib/gutils.c:2305 +#: ../glib/gutils.c:2191 ../glib/gutils.c:2313 #, c-format msgid "%.1f PB" msgstr "%.1f פ״ב" -#: ../glib/gutils.c:2186 ../glib/gutils.c:2310 +#: ../glib/gutils.c:2194 ../glib/gutils.c:2318 #, c-format msgid "%.1f EB" msgstr "%.1f א״ב" #. Translators: the %s in "%s bytes" will always be replaced by a number. -#: ../glib/gutils.c:2223 +#: ../glib/gutils.c:2231 #, c-format msgid "%s byte" msgid_plural "%s bytes" @@ -5367,11 +5351,41 @@ msgstr[1] "%s בתים" #. * compatibility. Users will not see this string unless a program is using this deprecated function. #. * Please translate as literally as possible. #. -#: ../glib/gutils.c:2285 +#: ../glib/gutils.c:2293 #, c-format msgid "%.1f KB" msgstr "%.1f ק״ב" +#~ msgid "No files given" +#~ msgstr "No files given" + +#~ msgid "Error getting writable attributes: %s\n" +#~ msgstr "Error getting writable attributes: %s\n" + +#~ msgid "Error mounting location: %s\n" +#~ msgstr "Error mounting location: %s\n" + +#~ msgid "Error unmounting mount: %s\n" +#~ msgstr "Error unmounting mount: %s\n" + +#~ msgid "Error finding enclosing mount: %s\n" +#~ msgstr "Error finding enclosing mount: %s\n" + +#~ msgid "Error ejecting mount: %s\n" +#~ msgstr "Error ejecting mount: %s\n" + +#~ msgid "Error mounting %s: %s\n" +#~ msgstr "Error mounting %s: %s\n" + +#~ msgid "No files to open" +#~ msgstr "No files to open" + +#~ msgid "No files to delete" +#~ msgstr "No files to delete" + +#~ msgid "Error setting attribute: %s\n" +#~ msgstr "Error setting attribute: %s\n" + #~ msgid "No such interface" #~ msgstr "No such interface" diff --git a/tests/Makefile.am b/tests/Makefile.am index 46231507d..de3ddb49e 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -146,16 +146,12 @@ endif EXTRA_DIST += \ $(test_scripts) \ - makefile.msc.in \ gen-casefold-txt.pl \ gen-casemap-txt.pl \ iochannel-test-infile \ timeloop-basic.c \ assert-msg-test.gdb -BUILT_EXTRA_DIST += \ - makefile.msc - DISTCLEANFILES += \ iochannel-test-outfile \ file-test-get-contents \ diff --git a/tests/Makefile.in b/tests/Makefile.in index 6964d69c2..472a1e62e 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -158,7 +158,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = makefile.msc +CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -709,9 +709,8 @@ TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ $(TEST_LOG_FLAGS) DIST_SUBDIRS = $(SUBDIRS) -am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/makefile.msc.in \ - $(top_srcdir)/depcomp $(top_srcdir)/glib.mk \ - $(top_srcdir)/test-driver +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp \ + $(top_srcdir)/glib.mk $(top_srcdir)/test-driver DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ @@ -992,15 +991,14 @@ NULL = # initialize variables for unconditional += appending BUILT_SOURCES = -BUILT_EXTRA_DIST = makefile.msc +BUILT_EXTRA_DIST = CLEANFILES = *.log *.trs $(am__append_14) DISTCLEANFILES = iochannel-test-outfile file-test-get-contents maptest \ mapchild collate.out MAINTAINERCLEANFILES = EXTRA_DIST = $(all_dist_test_scripts) $(all_dist_test_data) \ - $(test_scripts) makefile.msc.in gen-casefold-txt.pl \ - gen-casemap-txt.pl iochannel-test-infile timeloop-basic.c \ - assert-msg-test.gdb + $(test_scripts) gen-casefold-txt.pl gen-casemap-txt.pl \ + iochannel-test-infile timeloop-basic.c assert-msg-test.gdb # We support a fairly large range of possible variables. It is expected that all types of files in a test suite # will belong in exactly one of the following variables. @@ -1178,8 +1176,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): -makefile.msc: $(top_builddir)/config.status $(srcdir)/makefile.msc.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-checkLTLIBRARIES: -test -z "$(check_LTLIBRARIES)" || rm -f $(check_LTLIBRARIES) diff --git a/tests/casefold.txt b/tests/casefold.txt index 0deafa45e..f7b47abd2 100644 --- a/tests/casefold.txt +++ b/tests/casefold.txt @@ -1,4 +1,4 @@ -# Test cases generated from Unicode 9.0.0 data +# Test cases generated from Unicode 10.0.0 data # by gen-casefold-test.pl. Do not edit. # # Some special hand crafted tests diff --git a/tests/casemap.txt b/tests/casemap.txt index 9164757e4..5e983f70f 100644 --- a/tests/casemap.txt +++ b/tests/casemap.txt @@ -1,4 +1,4 @@ -# Test cases generated from Unicode 9.0.0 data +# Test cases generated from Unicode 10.0.0 data # by gen-case-tests.pl. Do not edit. # # Some special hand crafted tests diff --git a/tests/gobject/testmarshal.c b/tests/gobject/testmarshal.c index 2869dd591..01e00bf25 100644 --- a/tests/gobject/testmarshal.c +++ b/tests/gobject/testmarshal.c @@ -1,7 +1,5 @@ #include "testmarshal.h" - -#include <glib-object.h> - +#include <glib-object.h> #ifdef G_ENABLE_DEBUG #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) @@ -49,14 +47,7 @@ #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer #endif /* !G_ENABLE_DEBUG */ - /* BOOLEAN:INT (./testmarshal.list:2) */ -extern void test_marshal_BOOLEAN__INT (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); void test_marshal_BOOLEAN__INT (GClosure *closure, GValue *return_value, @@ -65,12 +56,12 @@ test_marshal_BOOLEAN__INT (GClosure *closure, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data) { - typedef gboolean (*GMarshalFunc_BOOLEAN__INT) (gpointer data1, - gint arg_1, - gpointer data2); - GMarshalFunc_BOOLEAN__INT callback; - GCClosure *cc = (GCClosure*) closure; + typedef gboolean (*GMarshalFunc_BOOLEAN__INT) (gpointer data1, + gint arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; gpointer data1, data2; + GMarshalFunc_BOOLEAN__INT callback; gboolean v_return; g_return_if_fail (return_value != NULL); @@ -96,12 +87,6 @@ test_marshal_BOOLEAN__INT (GClosure *closure, } /* STRING:INT (./testmarshal.list:3) */ -extern void test_marshal_STRING__INT (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); void test_marshal_STRING__INT (GClosure *closure, GValue *return_value, @@ -110,12 +95,12 @@ test_marshal_STRING__INT (GClosure *closure, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data) { - typedef gchar* (*GMarshalFunc_STRING__INT) (gpointer data1, - gint arg_1, - gpointer data2); - GMarshalFunc_STRING__INT callback; - GCClosure *cc = (GCClosure*) closure; + typedef gchar* (*GMarshalFunc_STRING__INT) (gpointer data1, + gint arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; gpointer data1, data2; + GMarshalFunc_STRING__INT callback; gchar* v_return; g_return_if_fail (return_value != NULL); @@ -141,12 +126,6 @@ test_marshal_STRING__INT (GClosure *closure, } /* VARIANT:POINTER (./testmarshal.list:4) */ -extern void test_marshal_VARIANT__POINTER (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); void test_marshal_VARIANT__POINTER (GClosure *closure, GValue *return_value, @@ -155,12 +134,12 @@ test_marshal_VARIANT__POINTER (GClosure *closure, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data) { - typedef GVariant* (*GMarshalFunc_VARIANT__POINTER) (gpointer data1, - gpointer arg_1, - gpointer data2); - GMarshalFunc_VARIANT__POINTER callback; - GCClosure *cc = (GCClosure*) closure; + typedef GVariant* (*GMarshalFunc_VARIANT__POINTER) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; gpointer data1, data2; + GMarshalFunc_VARIANT__POINTER callback; GVariant* v_return; g_return_if_fail (return_value != NULL); diff --git a/tests/gobject/testmarshal.h b/tests/gobject/testmarshal.h index 183e6d658..3ece36ffa 100644 --- a/tests/gobject/testmarshal.h +++ b/tests/gobject/testmarshal.h @@ -1,36 +1,39 @@ +/* This file is generated, all changes will be lost */ +#ifndef __TEST_MARSHAL_MARSHAL_H__ +#define __TEST_MARSHAL_MARSHAL_H__ -#ifndef __test_marshal_MARSHAL_H__ -#define __test_marshal_MARSHAL_H__ - -#include <glib-object.h> +#include <glib-object.h> G_BEGIN_DECLS /* BOOLEAN:INT (./testmarshal.list:2) */ -extern void test_marshal_BOOLEAN__INT (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); +extern +void test_marshal_BOOLEAN__INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); /* STRING:INT (./testmarshal.list:3) */ -extern void test_marshal_STRING__INT (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); +extern +void test_marshal_STRING__INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); /* VARIANT:POINTER (./testmarshal.list:4) */ -extern void test_marshal_VARIANT__POINTER (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); +extern +void test_marshal_VARIANT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -G_END_DECLS -#endif /* __test_marshal_MARSHAL_H__ */ +G_END_DECLS +#endif /* __TEST_MARSHAL_MARSHAL_H__ */ diff --git a/tests/makefile.msc b/tests/makefile.msc deleted file mode 100644 index f87c58f71..000000000 --- a/tests/makefile.msc +++ /dev/null @@ -1,105 +0,0 @@ -## Makefile for building the GLib test programs with Microsoft C -## Use: nmake -f makefile.msc check - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule -DEFINES = -DHAVE_CONFIG_H -DENABLE_REGEX - -NONAUTOMATIC_TESTS = \ - testglib.exe \ - testgdate.exe \ - testgdateparser.exe \ - unicode-normalize.exe \ - unicode-collate.exe - -TESTS = \ - atomic-test.exe \ - asyncqueue-test.exe \ - base64-test.exe \ - bit-test.exe \ - bookmarkfile-test.exe \ - child-test.exe \ - checksum-test.exe \ - completion-test.exe \ - convert-test.exe \ - date-test.exe \ - dirname-test.exe \ - env-test.exe \ - errorcheck-mutex-test.exe \ - file-test.exe \ - gio-test.exe \ - iochannel-test.exe \ - hash-test.exe \ - list-test.exe \ - mainloop-test.exe \ - mapping-test.exe \ -#c99 markup-collect.exe \ - markup-escape-test.exe \ - markup-test.exe \ -#main? memchunks.exe \ - module-test.exe \ - node-test.exe \ -#c99 onceinit.exe \ - patterntest.exe \ - queue-test.exe \ - qsort-test.exe \ - regex-test.exe \ - relation-test.exe \ - scannerapi.exe \ - sequence-test.exe \ - shell-test.exe \ - slice-color.exe \ -#unistd slice-concurrent.exe\ - slice-threadinit.exe \ - slice-test.exe \ - slist-test.exe \ - spawn-test.exe \ - testingbase64.exe \ - thread-test.exe \ - threadpool-test.exe \ -#unistd timeloop-basic.exe \ -#unistd timeloop-closure.exe \ -#unistd timeloop.exe \ - tree-test.exe \ - type-test.exe \ - unicode-caseconv.exe \ - unicode-encoding.exe \ - utf8-validate.exe \ - utf8-pointer.exe \ - uri-test.exe \ - \ - gio-ls.exe - -DLLS = \ - libmoduletestplugin_a.dll \ - libmoduletestplugin_b.dll - -all : $(TESTS) $(NONAUTOMATIC_TESTS) $(DLLS) - -.c.exe : - $(CC) $(CFLAGS) -c $< - $(CC) $(CFLAGS) -Fe$@ $< ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) user32.lib /subsystem:console - -gio-ls.exe : gio-ls.obj - $(CC) $(CFLAGS) -Fe$@ gio-ls.obj \ - ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib \ - ..\gobject\gobject-2.0.lib ..\gio\gio-2.0.lib \ - $(LDFLAGS) user32.lib /subsystem:console - -slice-test.exe : memchunks.obj slice-test.obj - $(CC) $(CFLAGS) -Fe$@ memchunks.obj slice-test.obj \ - ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) user32.lib /subsystem:console - -libmoduletestplugin_a.dll : libmoduletestplugin_a.obj - $(CC) $(CFLAGS) -LD libmoduletestplugin_a.obj ..\gmodule\gmodule-2.0.lib ..\glib\glib-2.0.lib $(LDFLAGS) - -libmoduletestplugin_b.dll : libmoduletestplugin_b.obj - $(CC) $(CFLAGS) -LD libmoduletestplugin_b.obj ..\gmodule\gmodule-2.0.lib ..\glib\glib-2.0.lib $(LDFLAGS) - -check: all - for %p in ($(TESTS)) do set PATH=..\glib;..\gmodule;..\gobject;..\gthread;%PATH% && %p diff --git a/tests/makefile.msc.in b/tests/makefile.msc.in deleted file mode 100644 index f87c58f71..000000000 --- a/tests/makefile.msc.in +++ /dev/null @@ -1,105 +0,0 @@ -## Makefile for building the GLib test programs with Microsoft C -## Use: nmake -f makefile.msc check - -TOP = ..\.. - -!INCLUDE ..\build\win32\make.msc - -################################################################ - -INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule -DEFINES = -DHAVE_CONFIG_H -DENABLE_REGEX - -NONAUTOMATIC_TESTS = \ - testglib.exe \ - testgdate.exe \ - testgdateparser.exe \ - unicode-normalize.exe \ - unicode-collate.exe - -TESTS = \ - atomic-test.exe \ - asyncqueue-test.exe \ - base64-test.exe \ - bit-test.exe \ - bookmarkfile-test.exe \ - child-test.exe \ - checksum-test.exe \ - completion-test.exe \ - convert-test.exe \ - date-test.exe \ - dirname-test.exe \ - env-test.exe \ - errorcheck-mutex-test.exe \ - file-test.exe \ - gio-test.exe \ - iochannel-test.exe \ - hash-test.exe \ - list-test.exe \ - mainloop-test.exe \ - mapping-test.exe \ -#c99 markup-collect.exe \ - markup-escape-test.exe \ - markup-test.exe \ -#main? memchunks.exe \ - module-test.exe \ - node-test.exe \ -#c99 onceinit.exe \ - patterntest.exe \ - queue-test.exe \ - qsort-test.exe \ - regex-test.exe \ - relation-test.exe \ - scannerapi.exe \ - sequence-test.exe \ - shell-test.exe \ - slice-color.exe \ -#unistd slice-concurrent.exe\ - slice-threadinit.exe \ - slice-test.exe \ - slist-test.exe \ - spawn-test.exe \ - testingbase64.exe \ - thread-test.exe \ - threadpool-test.exe \ -#unistd timeloop-basic.exe \ -#unistd timeloop-closure.exe \ -#unistd timeloop.exe \ - tree-test.exe \ - type-test.exe \ - unicode-caseconv.exe \ - unicode-encoding.exe \ - utf8-validate.exe \ - utf8-pointer.exe \ - uri-test.exe \ - \ - gio-ls.exe - -DLLS = \ - libmoduletestplugin_a.dll \ - libmoduletestplugin_b.dll - -all : $(TESTS) $(NONAUTOMATIC_TESTS) $(DLLS) - -.c.exe : - $(CC) $(CFLAGS) -c $< - $(CC) $(CFLAGS) -Fe$@ $< ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) user32.lib /subsystem:console - -gio-ls.exe : gio-ls.obj - $(CC) $(CFLAGS) -Fe$@ gio-ls.obj \ - ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib \ - ..\gobject\gobject-2.0.lib ..\gio\gio-2.0.lib \ - $(LDFLAGS) user32.lib /subsystem:console - -slice-test.exe : memchunks.obj slice-test.obj - $(CC) $(CFLAGS) -Fe$@ memchunks.obj slice-test.obj \ - ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) user32.lib /subsystem:console - -libmoduletestplugin_a.dll : libmoduletestplugin_a.obj - $(CC) $(CFLAGS) -LD libmoduletestplugin_a.obj ..\gmodule\gmodule-2.0.lib ..\glib\glib-2.0.lib $(LDFLAGS) - -libmoduletestplugin_b.dll : libmoduletestplugin_b.obj - $(CC) $(CFLAGS) -LD libmoduletestplugin_b.obj ..\gmodule\gmodule-2.0.lib ..\glib\glib-2.0.lib $(LDFLAGS) - -check: all - for %p in ($(TESTS)) do set PATH=..\glib;..\gmodule;..\gobject;..\gthread;%PATH% && %p diff --git a/win32/gen_util_scripts.py b/win32/gen_util_scripts.py index 50525056e..b595aa043 100644 --- a/win32/gen_util_scripts.py +++ b/win32/gen_util_scripts.py @@ -15,12 +15,17 @@ def main(argv): replace_items = {'@PYTHON@': 'python', '@PERL_PATH@': 'perl', - '@GLIB_VERSION@': args.version} + '@GLIB_VERSION@': args.version, + '@VERSION@': args.version} if args.type == 'glib-mkenums': replace_multi(srcroot + '/gobject/glib-mkenums.in', srcroot + '/gobject/glib-mkenums', replace_items) + elif args.type == 'glib-genmarshal': + replace_multi(srcroot + '/gobject/glib-genmarshal.in', + srcroot + '/gobject/glib-genmarshal', + replace_items) elif args.type == 'gdbus-codegen': replace_multi(srcroot + '/gio/gdbus-2.0/codegen/gdbus-codegen.in', srcroot + '/gio/gdbus-2.0/codegen/gdbus-codegen', diff --git a/win32/vs10/Makefile.am b/win32/vs10/Makefile.am index 85f03721a..cddbb444e 100644 --- a/win32/vs10/Makefile.am +++ b/win32/vs10/Makefile.am @@ -21,8 +21,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxprojin \ glib.vcxproj.filtersin \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs10/Makefile.in b/win32/vs10/Makefile.in index 46399c283..7c6d0bd6a 100644 --- a/win32/vs10/Makefile.in +++ b/win32/vs10/Makefile.in @@ -399,8 +399,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxprojin \ glib.vcxproj.filtersin \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs10/README.txt b/win32/vs10/README.txt index 001f86b2f..e73fcc931 100644 --- a/win32/vs10/README.txt +++ b/win32/vs10/README.txt @@ -24,6 +24,11 @@ builds, and correspondingly http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
builds.
+A Python 2.7.x or 3.x interpreter is also required, in order to generate
+the utility scripts, as well as the pkg-config files for the build. Please
+see the entry "PythonDir" in glib-version-paths.props to verify that
+it is correct.
+
One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS10 with the ASM routines
to avoid linking problems-see win32/Makefile.msc in ZLib for more details.
diff --git a/win32/vs10/glib-genmarshal.vcxproj b/win32/vs10/glib-genmarshal.vcxproj deleted file mode 100644 index 2ce4b2884..000000000 --- a/win32/vs10/glib-genmarshal.vcxproj +++ /dev/null @@ -1,173 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{BD12E835-5C52-4E5D-8234-1C579F33E27A}</ProjectGuid> - <RootNamespace>glibgenmarshal</RootNamespace> - <Keyword>Win32Proj</Keyword> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v100</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v100</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v100</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v100</PlatformToolset> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>EditAndContinue</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="glib.vcxproj"> - <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project> diff --git a/win32/vs10/glib-genmarshal.vcxproj.filters b/win32/vs10/glib-genmarshal.vcxproj.filters deleted file mode 100644 index bcb3d4a49..000000000 --- a/win32/vs10/glib-genmarshal.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> - <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> - </Filter> - <Filter Include="Header Files"> - <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> - <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> - </Filter> - <Filter Include="Resource Files"> - <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions> - </Filter> - </ItemGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> -</Project> diff --git a/win32/vs10/glib-install.props b/win32/vs10/glib-install.props index 5ecc7c50e..25497433a 100644 --- a/win32/vs10/glib-install.props +++ b/win32/vs10/glib-install.props @@ -18,8 +18,6 @@ copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.exe $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.pdb $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.exe $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.pdb $(CopyDir)\bin copy $(BinDir)\glib-compile-schemas.exe $(CopyDir)\bin @@ -36,8 +34,9 @@ copy $(BinDir)\gdbus.exe $(CopyDir)\bin copy $(BinDir)\gdbus.pdb $(CopyDir)\bin copy $(BinDir)\gio.exe $(CopyDir)\bin copy $(BinDir)\gio.pdb $(CopyDir)\bin -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion) copy ..\..\glib\glib.h $(CopyDir)\include\glib-$(ApiVersion) @@ -317,11 +316,12 @@ copy ..\..\gio\gschema.dtd $(CopyDir)\share\glib-$(ApiVersion)\schemas mkdir $(CopyDir)\share\glib-$(ApiVersion)\codegen copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codegen </GlibDoInstall> - <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> + <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gobject\glib-genmarshal;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> <GlibPCFiles>..\gio-windows-2.0.pc;..\gio-2.0.pc;..\gobject-2.0.pc;..\gmodule-no-export-2.0.pc;..\gmodule-export-2.0.pc;..\gmodule-2.0.pc;..\gthread-2.0.pc;..\glib-2.0.pc</GlibPCFiles> - <GenGLibMKEnums>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> - <GenGDBusCodegen>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> - <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> + <GenGLibMKEnums>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> + <GenGLibGenmarshal>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)</GenGLibGenmarshal> + <GenGDBusCodegen>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> + <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibinstallprops</_PropertySheetDisplayName> @@ -342,6 +342,9 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege <BuildMacro Include="GenGLibMKEnums"> <Value>$(GenGLibMKEnums)</Value> </BuildMacro> + <BuildMacro Include="GenGLibGenmarshal"> + <Value>$(GenGLibGenmarshal)</Value> + </BuildMacro> <BuildMacro Include="GenGDBusCodegen"> <Value>$(GenGDBusCodegen)</Value> </BuildMacro> diff --git a/win32/vs10/glib-install.propsin b/win32/vs10/glib-install.propsin index c5b43bb21..93762dfdb 100644 --- a/win32/vs10/glib-install.propsin +++ b/win32/vs10/glib-install.propsin @@ -18,8 +18,6 @@ copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.exe $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.pdb $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.exe $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.pdb $(CopyDir)\bin copy $(BinDir)\glib-compile-schemas.exe $(CopyDir)\bin @@ -37,8 +35,9 @@ copy $(BinDir)\gdbus.pdb $(CopyDir)\bin copy $(BinDir)\gio.exe $(CopyDir)\bin copy $(BinDir)\gio.pdb $(CopyDir)\bin -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion) @@ -83,11 +82,12 @@ copy ..\..\gio\gschema.dtd $(CopyDir)\share\glib-$(ApiVersion)\schemas mkdir $(CopyDir)\share\glib-$(ApiVersion)\codegen copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codegen </GlibDoInstall> - <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> + <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gobject\glib-genmarshal;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> <GlibPCFiles>..\gio-windows-2.0.pc;..\gio-2.0.pc;..\gobject-2.0.pc;..\gmodule-no-export-2.0.pc;..\gmodule-export-2.0.pc;..\gmodule-2.0.pc;..\gthread-2.0.pc;..\glib-2.0.pc</GlibPCFiles> - <GenGLibMKEnums>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> - <GenGDBusCodegen>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> - <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> + <GenGLibMKEnums>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> + <GenGLibGenmarshal>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)</GenGLibGenmarshal> + <GenGDBusCodegen>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> + <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibinstallprops</_PropertySheetDisplayName> @@ -108,6 +108,9 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege <BuildMacro Include="GenGLibMKEnums"> <Value>$(GenGLibMKEnums)</Value> </BuildMacro> + <BuildMacro Include="GenGLibGenmarshal"> + <Value>$(GenGLibGenmarshal)</Value> + </BuildMacro> <BuildMacro Include="GenGDBusCodegen"> <Value>$(GenGDBusCodegen)</Value> </BuildMacro> diff --git a/win32/vs10/glib-install.vcxproj b/win32/vs10/glib-install.vcxproj index 41009b749..3204bb0ba 100644 --- a/win32/vs10/glib-install.vcxproj +++ b/win32/vs10/glib-install.vcxproj @@ -97,6 +97,14 @@ <Command Condition="'$(Configuration)'=='Release'">$(GenGLibMKEnums)</Command> <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-mkenums;%(Outputs)</Outputs> </CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"> + <Message Condition="'$(Configuration)'=='Debug'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Debug'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Debug'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)'=='Release'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Release'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + </CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"> <Message Condition="'$(Configuration)'=='Debug'">Generating gdbus-codegen...</Message> <Command Condition="'$(Configuration)'=='Debug'">$(GenGDBusCodegen)</Command> @@ -121,10 +129,6 @@ <Project>{f3d1583c-5613-4809-bd98-7cc1c1276f92}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> </ProjectReference> - <ProjectReference Include="glib-genmarshal.vcxproj"> - <Project>{bd12e835-5c52-4e5d-8234-1c579f33e27a}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> <ProjectReference Include="glib.vcxproj"> <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> diff --git a/win32/vs10/glib-install.vcxproj.filters b/win32/vs10/glib-install.vcxproj.filters index 6748dcf8f..aae121554 100644 --- a/win32/vs10/glib-install.vcxproj.filters +++ b/win32/vs10/glib-install.vcxproj.filters @@ -8,6 +8,7 @@ </ItemGroup> <ItemGroup> <CustomBuild Include="..\..\gobject\glib-mkenums.in"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="glib_install_placeholder"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\glibpc.py"><Filter>Resource Files</Filter></CustomBuild> diff --git a/win32/vs10/glib-version-paths.props b/win32/vs10/glib-version-paths.props index 845efc6b5..7c85f4746 100644 --- a/win32/vs10/glib-version-paths.props +++ b/win32/vs10/glib-version-paths.props @@ -2,7 +2,7 @@ <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup Label="UserMacros"> <VSVer>10</VSVer> - <GlibVersion>2.53.3</GlibVersion> + <GlibVersion>2.53.4</GlibVersion> <ApiVersion>2.0</ApiVersion> <GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot> <CopyDir>$(GlibEtcInstallRoot)</CopyDir> @@ -12,7 +12,11 @@ <GlibSeparateVSDllSuffix>-2-vs$(VSVer)</GlibSeparateVSDllSuffix> <GlibDllPrefix>$(GlibSeparateVSDllPrefix)</GlibDllPrefix> <GlibDllSuffix>$(GlibSeparateVSDllSuffix)</GlibDllSuffix> - <PythonPath>c:\python27</PythonPath> + <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibversionpathsprops</_PropertySheetDisplayName> @@ -51,8 +55,8 @@ <BuildMacro Include="GlibDllSuffix"> <Value>$(GlibDllSuffix)</Value> </BuildMacro> - <BuildMacro Include="PythonPath"> - <Value>$(PythonPath)</Value> + <BuildMacro Include="PythonDir"> + <Value>$(PythonDir)</Value> </BuildMacro> </ItemGroup> </Project> diff --git a/win32/vs10/glib-version-paths.props.in b/win32/vs10/glib-version-paths.props.in index 468e558f5..e711df9e8 100644 --- a/win32/vs10/glib-version-paths.props.in +++ b/win32/vs10/glib-version-paths.props.in @@ -12,7 +12,11 @@ <GlibSeparateVSDllSuffix>-2-vs$(VSVer)</GlibSeparateVSDllSuffix> <GlibDllPrefix>$(GlibSeparateVSDllPrefix)</GlibDllPrefix> <GlibDllSuffix>$(GlibSeparateVSDllSuffix)</GlibDllSuffix> - <PythonPath>c:\python27</PythonPath> + <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibversionpathsprops</_PropertySheetDisplayName> @@ -51,8 +55,8 @@ <BuildMacro Include="GlibDllSuffix"> <Value>$(GlibDllSuffix)</Value> </BuildMacro> - <BuildMacro Include="PythonPath"> - <Value>$(PythonPath)</Value> + <BuildMacro Include="PythonDir"> + <Value>$(PythonDir)</Value> </BuildMacro> </ItemGroup> </Project> diff --git a/win32/vs10/glib.sln b/win32/vs10/glib.sln index 848c2cffe..71c671e4b 100644 --- a/win32/vs10/glib.sln +++ b/win32/vs10/glib.sln @@ -8,8 +8,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gobject", "gobject.vcxproj" EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gthread", "gthread.vcxproj", "{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-genmarshal", "glib-genmarshal.vcxproj", "{BD12E835-5C52-4E5D-8234-1C579F33E27A}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio", "gio.vcxproj", "{F3D1583C-5613-4809-BD98-7CC1C1276F92}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gspawn-win32-helper", "gspawn-win32-helper.vcxproj", "{289240E7-E167-47CE-A20C-58D852E520BA}"
@@ -28,10 +26,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-querymodules", "gio-que EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdbus", "gdbus.vcxproj", "{95A1571F-61BE-4C51-BE53-2F2DAB280687}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}" -EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -108,22 +106,6 @@ Global {C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.Build.0 = Release|x64
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.ActiveCfg = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.Build.0 = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|x64.ActiveCfg = Debug|x64
@@ -268,38 +250,38 @@ Global {B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64 + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win32/vs11/Makefile.am b/win32/vs11/Makefile.am index fbdb0adc3..b1fbcaec6 100644 --- a/win32/vs11/Makefile.am +++ b/win32/vs11/Makefile.am @@ -3,8 +3,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs11/Makefile.in b/win32/vs11/Makefile.in index 63e4057e1..e834db1b1 100644 --- a/win32/vs11/Makefile.in +++ b/win32/vs11/Makefile.in @@ -399,8 +399,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs11/README.txt b/win32/vs11/README.txt index ac9233da3..135456299 100644 --- a/win32/vs11/README.txt +++ b/win32/vs11/README.txt @@ -24,6 +24,11 @@ builds, and correspondingly http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
builds.
+A Python 2.7.x or 3.x interpreter is also required, in order to generate
+the utility scripts, as well as the pkg-config files for the build. Please
+see the entry "PythonDir" in glib-version-paths.props to verify that
+it is correct.
+
One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS11 with the ASM routines
to avoid linking problems-see win32/Makefile.msc in ZLib for more details.
diff --git a/win32/vs11/glib-genmarshal.vcxproj b/win32/vs11/glib-genmarshal.vcxproj deleted file mode 100644 index 4cca67c91..000000000 --- a/win32/vs11/glib-genmarshal.vcxproj +++ /dev/null @@ -1,173 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{BD12E835-5C52-4E5D-8234-1C579F33E27A}</ProjectGuid> - <RootNamespace>glibgenmarshal</RootNamespace> - <Keyword>Win32Proj</Keyword> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v110</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v110</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v110</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v110</PlatformToolset> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>EditAndContinue</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="glib.vcxproj"> - <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project> diff --git a/win32/vs11/glib-genmarshal.vcxproj.filters b/win32/vs11/glib-genmarshal.vcxproj.filters deleted file mode 100644 index bcb3d4a49..000000000 --- a/win32/vs11/glib-genmarshal.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> - <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> - </Filter> - <Filter Include="Header Files"> - <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> - <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> - </Filter> - <Filter Include="Resource Files"> - <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions> - </Filter> - </ItemGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> -</Project> diff --git a/win32/vs11/glib-install.props b/win32/vs11/glib-install.props index 5ecc7c50e..25497433a 100644 --- a/win32/vs11/glib-install.props +++ b/win32/vs11/glib-install.props @@ -18,8 +18,6 @@ copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.exe $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.pdb $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.exe $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.pdb $(CopyDir)\bin copy $(BinDir)\glib-compile-schemas.exe $(CopyDir)\bin @@ -36,8 +34,9 @@ copy $(BinDir)\gdbus.exe $(CopyDir)\bin copy $(BinDir)\gdbus.pdb $(CopyDir)\bin copy $(BinDir)\gio.exe $(CopyDir)\bin copy $(BinDir)\gio.pdb $(CopyDir)\bin -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion) copy ..\..\glib\glib.h $(CopyDir)\include\glib-$(ApiVersion) @@ -317,11 +316,12 @@ copy ..\..\gio\gschema.dtd $(CopyDir)\share\glib-$(ApiVersion)\schemas mkdir $(CopyDir)\share\glib-$(ApiVersion)\codegen copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codegen </GlibDoInstall> - <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> + <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gobject\glib-genmarshal;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> <GlibPCFiles>..\gio-windows-2.0.pc;..\gio-2.0.pc;..\gobject-2.0.pc;..\gmodule-no-export-2.0.pc;..\gmodule-export-2.0.pc;..\gmodule-2.0.pc;..\gthread-2.0.pc;..\glib-2.0.pc</GlibPCFiles> - <GenGLibMKEnums>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> - <GenGDBusCodegen>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> - <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> + <GenGLibMKEnums>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> + <GenGLibGenmarshal>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)</GenGLibGenmarshal> + <GenGDBusCodegen>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> + <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibinstallprops</_PropertySheetDisplayName> @@ -342,6 +342,9 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege <BuildMacro Include="GenGLibMKEnums"> <Value>$(GenGLibMKEnums)</Value> </BuildMacro> + <BuildMacro Include="GenGLibGenmarshal"> + <Value>$(GenGLibGenmarshal)</Value> + </BuildMacro> <BuildMacro Include="GenGDBusCodegen"> <Value>$(GenGDBusCodegen)</Value> </BuildMacro> diff --git a/win32/vs11/glib-install.vcxproj b/win32/vs11/glib-install.vcxproj index 5f42f4ac0..81089e421 100644 --- a/win32/vs11/glib-install.vcxproj +++ b/win32/vs11/glib-install.vcxproj @@ -97,6 +97,14 @@ <Command Condition="'$(Configuration)'=='Release'">$(GenGLibMKEnums)</Command> <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-mkenums;%(Outputs)</Outputs> </CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"> + <Message Condition="'$(Configuration)'=='Debug'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Debug'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Debug'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)'=='Release'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Release'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + </CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"> <Message Condition="'$(Configuration)'=='Debug'">Generating gdbus-codegen...</Message> <Command Condition="'$(Configuration)'=='Debug'">$(GenGDBusCodegen)</Command> @@ -121,10 +129,6 @@ <Project>{f3d1583c-5613-4809-bd98-7cc1c1276f92}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> </ProjectReference> - <ProjectReference Include="glib-genmarshal.vcxproj"> - <Project>{bd12e835-5c52-4e5d-8234-1c579f33e27a}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> <ProjectReference Include="glib.vcxproj"> <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> diff --git a/win32/vs11/glib-install.vcxproj.filters b/win32/vs11/glib-install.vcxproj.filters index 6748dcf8f..aae121554 100644 --- a/win32/vs11/glib-install.vcxproj.filters +++ b/win32/vs11/glib-install.vcxproj.filters @@ -8,6 +8,7 @@ </ItemGroup> <ItemGroup> <CustomBuild Include="..\..\gobject\glib-mkenums.in"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="glib_install_placeholder"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\glibpc.py"><Filter>Resource Files</Filter></CustomBuild> diff --git a/win32/vs11/glib-version-paths.props b/win32/vs11/glib-version-paths.props index c95365dfd..67354652d 100644 --- a/win32/vs11/glib-version-paths.props +++ b/win32/vs11/glib-version-paths.props @@ -2,7 +2,7 @@ <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup Label="UserMacros"> <VSVer>11</VSVer> - <GlibVersion>2.53.3</GlibVersion> + <GlibVersion>2.53.4</GlibVersion> <ApiVersion>2.0</ApiVersion> <GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot> <CopyDir>$(GlibEtcInstallRoot)</CopyDir> @@ -12,7 +12,11 @@ <GlibSeparateVSDllSuffix>-2-vs$(VSVer)</GlibSeparateVSDllSuffix> <GlibDllPrefix>$(GlibSeparateVSDllPrefix)</GlibDllPrefix> <GlibDllSuffix>$(GlibSeparateVSDllSuffix)</GlibDllSuffix> - <PythonPath>c:\python27</PythonPath> + <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibversionpathsprops</_PropertySheetDisplayName> @@ -51,8 +55,8 @@ <BuildMacro Include="GlibDllSuffix"> <Value>$(GlibDllSuffix)</Value> </BuildMacro> - <BuildMacro Include="PythonPath"> - <Value>$(PythonPath)</Value> + <BuildMacro Include="PythonDir"> + <Value>$(PythonDir)</Value> </BuildMacro> </ItemGroup> </Project> diff --git a/win32/vs11/glib.sln b/win32/vs11/glib.sln index 1e5f84b0e..d6a3b3266 100644 --- a/win32/vs11/glib.sln +++ b/win32/vs11/glib.sln @@ -8,8 +8,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gobject", "gobject.vcxproj" EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gthread", "gthread.vcxproj", "{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-genmarshal", "glib-genmarshal.vcxproj", "{BD12E835-5C52-4E5D-8234-1C579F33E27A}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio", "gio.vcxproj", "{F3D1583C-5613-4809-BD98-7CC1C1276F92}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gspawn-win32-helper", "gspawn-win32-helper.vcxproj", "{289240E7-E167-47CE-A20C-58D852E520BA}"
@@ -28,10 +26,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-querymodules", "gio-que EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdbus", "gdbus.vcxproj", "{95A1571F-61BE-4C51-BE53-2F2DAB280687}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}" -EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -108,22 +106,6 @@ Global {C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.Build.0 = Release|x64
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.ActiveCfg = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.Build.0 = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|x64.ActiveCfg = Debug|x64
@@ -268,38 +250,38 @@ Global {B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64 + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win32/vs12/Makefile.am b/win32/vs12/Makefile.am index 898bf8925..a57df617b 100644 --- a/win32/vs12/Makefile.am +++ b/win32/vs12/Makefile.am @@ -3,8 +3,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs12/Makefile.in b/win32/vs12/Makefile.in index 84309692c..cf23758a6 100644 --- a/win32/vs12/Makefile.in +++ b/win32/vs12/Makefile.in @@ -399,8 +399,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs12/README.txt b/win32/vs12/README.txt index 53f5a6215..fffb5c5f2 100644 --- a/win32/vs12/README.txt +++ b/win32/vs12/README.txt @@ -24,6 +24,11 @@ builds, and correspondingly http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
builds.
+A Python 2.7.x or 3.x interpreter is also required, in order to generate
+the utility scripts, as well as the pkg-config files for the build. Please
+see the entry "PythonDir" in glib-version-paths.props to verify that
+it is correct.
+
One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS12 with the ASM routines
to avoid linking problems-see win32/Makefile.msc in ZLib for more details.
diff --git a/win32/vs12/glib-genmarshal.vcxproj b/win32/vs12/glib-genmarshal.vcxproj deleted file mode 100644 index cbfa252e4..000000000 --- a/win32/vs12/glib-genmarshal.vcxproj +++ /dev/null @@ -1,173 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{BD12E835-5C52-4E5D-8234-1C579F33E27A}</ProjectGuid> - <RootNamespace>glibgenmarshal</RootNamespace> - <Keyword>Win32Proj</Keyword> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v120</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v120</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v120</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v120</PlatformToolset> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>EditAndContinue</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="glib.vcxproj"> - <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project> diff --git a/win32/vs12/glib-genmarshal.vcxproj.filters b/win32/vs12/glib-genmarshal.vcxproj.filters deleted file mode 100644 index bcb3d4a49..000000000 --- a/win32/vs12/glib-genmarshal.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> - <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> - </Filter> - <Filter Include="Header Files"> - <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> - <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> - </Filter> - <Filter Include="Resource Files"> - <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions> - </Filter> - </ItemGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> -</Project> diff --git a/win32/vs12/glib-install.props b/win32/vs12/glib-install.props index 5ecc7c50e..25497433a 100644 --- a/win32/vs12/glib-install.props +++ b/win32/vs12/glib-install.props @@ -18,8 +18,6 @@ copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.exe $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.pdb $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.exe $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.pdb $(CopyDir)\bin copy $(BinDir)\glib-compile-schemas.exe $(CopyDir)\bin @@ -36,8 +34,9 @@ copy $(BinDir)\gdbus.exe $(CopyDir)\bin copy $(BinDir)\gdbus.pdb $(CopyDir)\bin copy $(BinDir)\gio.exe $(CopyDir)\bin copy $(BinDir)\gio.pdb $(CopyDir)\bin -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion) copy ..\..\glib\glib.h $(CopyDir)\include\glib-$(ApiVersion) @@ -317,11 +316,12 @@ copy ..\..\gio\gschema.dtd $(CopyDir)\share\glib-$(ApiVersion)\schemas mkdir $(CopyDir)\share\glib-$(ApiVersion)\codegen copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codegen </GlibDoInstall> - <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> + <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gobject\glib-genmarshal;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> <GlibPCFiles>..\gio-windows-2.0.pc;..\gio-2.0.pc;..\gobject-2.0.pc;..\gmodule-no-export-2.0.pc;..\gmodule-export-2.0.pc;..\gmodule-2.0.pc;..\gthread-2.0.pc;..\glib-2.0.pc</GlibPCFiles> - <GenGLibMKEnums>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> - <GenGDBusCodegen>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> - <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> + <GenGLibMKEnums>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> + <GenGLibGenmarshal>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)</GenGLibGenmarshal> + <GenGDBusCodegen>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> + <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibinstallprops</_PropertySheetDisplayName> @@ -342,6 +342,9 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege <BuildMacro Include="GenGLibMKEnums"> <Value>$(GenGLibMKEnums)</Value> </BuildMacro> + <BuildMacro Include="GenGLibGenmarshal"> + <Value>$(GenGLibGenmarshal)</Value> + </BuildMacro> <BuildMacro Include="GenGDBusCodegen"> <Value>$(GenGDBusCodegen)</Value> </BuildMacro> diff --git a/win32/vs12/glib-install.vcxproj b/win32/vs12/glib-install.vcxproj index 1ba7fa459..4f12fddef 100644 --- a/win32/vs12/glib-install.vcxproj +++ b/win32/vs12/glib-install.vcxproj @@ -97,6 +97,14 @@ <Command Condition="'$(Configuration)'=='Release'">$(GenGLibMKEnums)</Command> <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-mkenums;%(Outputs)</Outputs> </CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"> + <Message Condition="'$(Configuration)'=='Debug'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Debug'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Debug'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)'=='Release'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Release'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + </CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"> <Message Condition="'$(Configuration)'=='Debug'">Generating gdbus-codegen...</Message> <Command Condition="'$(Configuration)'=='Debug'">$(GenGDBusCodegen)</Command> @@ -121,10 +129,6 @@ <Project>{f3d1583c-5613-4809-bd98-7cc1c1276f92}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> </ProjectReference> - <ProjectReference Include="glib-genmarshal.vcxproj"> - <Project>{bd12e835-5c52-4e5d-8234-1c579f33e27a}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> <ProjectReference Include="glib.vcxproj"> <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> diff --git a/win32/vs12/glib-install.vcxproj.filters b/win32/vs12/glib-install.vcxproj.filters index 6748dcf8f..aae121554 100644 --- a/win32/vs12/glib-install.vcxproj.filters +++ b/win32/vs12/glib-install.vcxproj.filters @@ -8,6 +8,7 @@ </ItemGroup> <ItemGroup> <CustomBuild Include="..\..\gobject\glib-mkenums.in"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="glib_install_placeholder"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\glibpc.py"><Filter>Resource Files</Filter></CustomBuild> diff --git a/win32/vs12/glib-version-paths.props b/win32/vs12/glib-version-paths.props index ca86d23d3..76b6b75b9 100644 --- a/win32/vs12/glib-version-paths.props +++ b/win32/vs12/glib-version-paths.props @@ -2,7 +2,7 @@ <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup Label="UserMacros"> <VSVer>12</VSVer> - <GlibVersion>2.53.3</GlibVersion> + <GlibVersion>2.53.4</GlibVersion> <ApiVersion>2.0</ApiVersion> <GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot> <CopyDir>$(GlibEtcInstallRoot)</CopyDir> @@ -12,7 +12,11 @@ <GlibSeparateVSDllSuffix>-2-vs$(VSVer)</GlibSeparateVSDllSuffix> <GlibDllPrefix>$(GlibSeparateVSDllPrefix)</GlibDllPrefix> <GlibDllSuffix>$(GlibSeparateVSDllSuffix)</GlibDllSuffix> - <PythonPath>c:\python27</PythonPath> + <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibversionpathsprops</_PropertySheetDisplayName> @@ -51,8 +55,8 @@ <BuildMacro Include="GlibDllSuffix"> <Value>$(GlibDllSuffix)</Value> </BuildMacro> - <BuildMacro Include="PythonPath"> - <Value>$(PythonPath)</Value> + <BuildMacro Include="PythonDir"> + <Value>$(PythonDir)</Value> </BuildMacro> </ItemGroup> </Project> diff --git a/win32/vs12/glib.sln b/win32/vs12/glib.sln index 5b3d4080f..338dd668f 100644 --- a/win32/vs12/glib.sln +++ b/win32/vs12/glib.sln @@ -8,8 +8,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gobject", "gobject.vcxproj" EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gthread", "gthread.vcxproj", "{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-genmarshal", "glib-genmarshal.vcxproj", "{BD12E835-5C52-4E5D-8234-1C579F33E27A}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio", "gio.vcxproj", "{F3D1583C-5613-4809-BD98-7CC1C1276F92}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gspawn-win32-helper", "gspawn-win32-helper.vcxproj", "{289240E7-E167-47CE-A20C-58D852E520BA}"
@@ -28,10 +26,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-querymodules", "gio-que EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdbus", "gdbus.vcxproj", "{95A1571F-61BE-4C51-BE53-2F2DAB280687}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}" -EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -108,22 +106,6 @@ Global {C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.Build.0 = Release|x64
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.ActiveCfg = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.Build.0 = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|x64.ActiveCfg = Debug|x64
@@ -268,38 +250,38 @@ Global {B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64 + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win32/vs14/Makefile.am b/win32/vs14/Makefile.am index 982ca95b1..c22d2ac73 100644 --- a/win32/vs14/Makefile.am +++ b/win32/vs14/Makefile.am @@ -3,8 +3,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs14/Makefile.in b/win32/vs14/Makefile.in index b8fe68ee6..28694f013 100644 --- a/win32/vs14/Makefile.in +++ b/win32/vs14/Makefile.in @@ -399,8 +399,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs14/README.txt b/win32/vs14/README.txt index 5830b4da9..cb1e20ef0 100644 --- a/win32/vs14/README.txt +++ b/win32/vs14/README.txt @@ -24,6 +24,11 @@ builds, and correspondingly http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
builds.
+A Python 2.7.x or 3.x interpreter is also required, in order to generate
+the utility scripts, as well as the pkg-config files for the build. Please
+see the entry "PythonDir" in glib-version-paths.props to verify that
+it is correct.
+
One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS14 with the ASM routines
to avoid linking problems-see win32/Makefile.msc in ZLib for more details.
diff --git a/win32/vs14/glib-genmarshal.vcxproj b/win32/vs14/glib-genmarshal.vcxproj deleted file mode 100644 index 5316fbd65..000000000 --- a/win32/vs14/glib-genmarshal.vcxproj +++ /dev/null @@ -1,173 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{BD12E835-5C52-4E5D-8234-1C579F33E27A}</ProjectGuid> - <RootNamespace>glibgenmarshal</RootNamespace> - <Keyword>Win32Proj</Keyword> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v140</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v140</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v140</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v140</PlatformToolset> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>EditAndContinue</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="glib.vcxproj"> - <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project> diff --git a/win32/vs14/glib-genmarshal.vcxproj.filters b/win32/vs14/glib-genmarshal.vcxproj.filters deleted file mode 100644 index bcb3d4a49..000000000 --- a/win32/vs14/glib-genmarshal.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> - <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> - </Filter> - <Filter Include="Header Files"> - <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> - <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> - </Filter> - <Filter Include="Resource Files"> - <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions> - </Filter> - </ItemGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> -</Project> diff --git a/win32/vs14/glib-install.props b/win32/vs14/glib-install.props index 5ecc7c50e..25497433a 100644 --- a/win32/vs14/glib-install.props +++ b/win32/vs14/glib-install.props @@ -18,8 +18,6 @@ copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.exe $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.pdb $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.exe $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.pdb $(CopyDir)\bin copy $(BinDir)\glib-compile-schemas.exe $(CopyDir)\bin @@ -36,8 +34,9 @@ copy $(BinDir)\gdbus.exe $(CopyDir)\bin copy $(BinDir)\gdbus.pdb $(CopyDir)\bin copy $(BinDir)\gio.exe $(CopyDir)\bin copy $(BinDir)\gio.pdb $(CopyDir)\bin -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion) copy ..\..\glib\glib.h $(CopyDir)\include\glib-$(ApiVersion) @@ -317,11 +316,12 @@ copy ..\..\gio\gschema.dtd $(CopyDir)\share\glib-$(ApiVersion)\schemas mkdir $(CopyDir)\share\glib-$(ApiVersion)\codegen copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codegen </GlibDoInstall> - <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> + <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gobject\glib-genmarshal;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> <GlibPCFiles>..\gio-windows-2.0.pc;..\gio-2.0.pc;..\gobject-2.0.pc;..\gmodule-no-export-2.0.pc;..\gmodule-export-2.0.pc;..\gmodule-2.0.pc;..\gthread-2.0.pc;..\glib-2.0.pc</GlibPCFiles> - <GenGLibMKEnums>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> - <GenGDBusCodegen>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> - <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> + <GenGLibMKEnums>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> + <GenGLibGenmarshal>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)</GenGLibGenmarshal> + <GenGDBusCodegen>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> + <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibinstallprops</_PropertySheetDisplayName> @@ -342,6 +342,9 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege <BuildMacro Include="GenGLibMKEnums"> <Value>$(GenGLibMKEnums)</Value> </BuildMacro> + <BuildMacro Include="GenGLibGenmarshal"> + <Value>$(GenGLibGenmarshal)</Value> + </BuildMacro> <BuildMacro Include="GenGDBusCodegen"> <Value>$(GenGDBusCodegen)</Value> </BuildMacro> diff --git a/win32/vs14/glib-install.vcxproj b/win32/vs14/glib-install.vcxproj index 4673412b4..4ffd1d9bc 100644 --- a/win32/vs14/glib-install.vcxproj +++ b/win32/vs14/glib-install.vcxproj @@ -97,6 +97,14 @@ <Command Condition="'$(Configuration)'=='Release'">$(GenGLibMKEnums)</Command> <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-mkenums;%(Outputs)</Outputs> </CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"> + <Message Condition="'$(Configuration)'=='Debug'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Debug'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Debug'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)'=='Release'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Release'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + </CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"> <Message Condition="'$(Configuration)'=='Debug'">Generating gdbus-codegen...</Message> <Command Condition="'$(Configuration)'=='Debug'">$(GenGDBusCodegen)</Command> @@ -121,10 +129,6 @@ <Project>{f3d1583c-5613-4809-bd98-7cc1c1276f92}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> </ProjectReference> - <ProjectReference Include="glib-genmarshal.vcxproj"> - <Project>{bd12e835-5c52-4e5d-8234-1c579f33e27a}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> <ProjectReference Include="glib.vcxproj"> <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> diff --git a/win32/vs14/glib-install.vcxproj.filters b/win32/vs14/glib-install.vcxproj.filters index 6748dcf8f..aae121554 100644 --- a/win32/vs14/glib-install.vcxproj.filters +++ b/win32/vs14/glib-install.vcxproj.filters @@ -8,6 +8,7 @@ </ItemGroup> <ItemGroup> <CustomBuild Include="..\..\gobject\glib-mkenums.in"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="glib_install_placeholder"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\glibpc.py"><Filter>Resource Files</Filter></CustomBuild> diff --git a/win32/vs14/glib-version-paths.props b/win32/vs14/glib-version-paths.props index 6eb1e6238..bc542583a 100644 --- a/win32/vs14/glib-version-paths.props +++ b/win32/vs14/glib-version-paths.props @@ -2,7 +2,7 @@ <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup Label="UserMacros"> <VSVer>14</VSVer> - <GlibVersion>2.53.3</GlibVersion> + <GlibVersion>2.53.4</GlibVersion> <ApiVersion>2.0</ApiVersion> <GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot> <CopyDir>$(GlibEtcInstallRoot)</CopyDir> @@ -12,7 +12,11 @@ <GlibSeparateVSDllSuffix>-2-vs$(VSVer)</GlibSeparateVSDllSuffix> <GlibDllPrefix>$(GlibSeparateVSDllPrefix)</GlibDllPrefix> <GlibDllSuffix>$(GlibSeparateVSDllSuffix)</GlibDllSuffix> - <PythonPath>c:\python27</PythonPath> + <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibversionpathsprops</_PropertySheetDisplayName> @@ -51,8 +55,8 @@ <BuildMacro Include="GlibDllSuffix"> <Value>$(GlibDllSuffix)</Value> </BuildMacro> - <BuildMacro Include="PythonPath"> - <Value>$(PythonPath)</Value> + <BuildMacro Include="PythonDir"> + <Value>$(PythonDir)</Value> </BuildMacro> </ItemGroup> </Project> diff --git a/win32/vs14/glib.sln b/win32/vs14/glib.sln index 874676edd..e1f90ecd7 100644 --- a/win32/vs14/glib.sln +++ b/win32/vs14/glib.sln @@ -8,8 +8,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gobject", "gobject.vcxproj" EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gthread", "gthread.vcxproj", "{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-genmarshal", "glib-genmarshal.vcxproj", "{BD12E835-5C52-4E5D-8234-1C579F33E27A}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio", "gio.vcxproj", "{F3D1583C-5613-4809-BD98-7CC1C1276F92}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gspawn-win32-helper", "gspawn-win32-helper.vcxproj", "{289240E7-E167-47CE-A20C-58D852E520BA}"
@@ -28,10 +26,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-querymodules", "gio-que EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdbus", "gdbus.vcxproj", "{95A1571F-61BE-4C51-BE53-2F2DAB280687}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}" -EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -108,22 +106,6 @@ Global {C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.Build.0 = Release|x64
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.ActiveCfg = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.Build.0 = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|x64.ActiveCfg = Debug|x64
@@ -268,38 +250,38 @@ Global {B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64 + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win32/vs15/Makefile.am b/win32/vs15/Makefile.am index 6adc96dfe..94408c698 100644 --- a/win32/vs15/Makefile.am +++ b/win32/vs15/Makefile.am @@ -3,8 +3,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs15/Makefile.in b/win32/vs15/Makefile.in index d397095af..f9c85a2a5 100644 --- a/win32/vs15/Makefile.in +++ b/win32/vs15/Makefile.in @@ -399,8 +399,6 @@ EXTRA_DIST = \ glib.sln \ glib.vcxproj \ glib.vcxproj.filters \ - glib-genmarshal.vcxproj \ - glib-genmarshal.vcxproj.filters \ gspawn-win32-helper-console.vcxproj \ gspawn-win32-helper-console.vcxproj.filters \ gspawn-win32-helper.vcxproj \ diff --git a/win32/vs15/README.txt b/win32/vs15/README.txt index 7807c0a76..e80a9ec9f 100644 --- a/win32/vs15/README.txt +++ b/win32/vs15/README.txt @@ -24,6 +24,11 @@ builds, and correspondingly http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
builds.
+A Python 2.7.x or 3.x interpreter is also required, in order to generate
+the utility scripts, as well as the pkg-config files for the build. Please
+see the entry "PythonDir" in glib-version-paths.props to verify that
+it is correct.
+
One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS15 with the ASM routines
to avoid linking problems-see win32/Makefile.msc in ZLib for more details.
diff --git a/win32/vs15/glib-genmarshal.vcxproj b/win32/vs15/glib-genmarshal.vcxproj deleted file mode 100644 index b3dcab062..000000000 --- a/win32/vs15/glib-genmarshal.vcxproj +++ /dev/null @@ -1,173 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{BD12E835-5C52-4E5D-8234-1C579F33E27A}</ProjectGuid> - <RootNamespace>glibgenmarshal</RootNamespace> - <Keyword>Win32Proj</Keyword> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v141</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v141</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - <PlatformToolset>v141</PlatformToolset> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <PlatformToolset>v141</PlatformToolset> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="glib-build-defines.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> - <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>EditAndContinue</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX86</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <Optimization>Disabled</Optimization> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <MinimalRebuild>true</MinimalRebuild> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <PrecompiledHeader> - </PrecompiledHeader> - <WarningLevel>Level3</WarningLevel> - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> - <CompileAs>CompileAsC</CompileAs> - </ClCompile> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <SubSystem>Console</SubSystem> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <RandomizedBaseAddress>false</RandomizedBaseAddress> - <DataExecutionPrevention> - </DataExecutionPrevention> - <TargetMachine>MachineX64</TargetMachine> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="glib.vcxproj"> - <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project> diff --git a/win32/vs15/glib-genmarshal.vcxproj.filters b/win32/vs15/glib-genmarshal.vcxproj.filters deleted file mode 100644 index bcb3d4a49..000000000 --- a/win32/vs15/glib-genmarshal.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> - <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> - </Filter> - <Filter Include="Header Files"> - <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> - <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> - </Filter> - <Filter Include="Resource Files"> - <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions> - </Filter> - </ItemGroup> - <ItemGroup> - <ClCompile Include="..\..\gobject\glib-genmarshal.c"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> -</Project> diff --git a/win32/vs15/glib-install.props b/win32/vs15/glib-install.props index 5ecc7c50e..25497433a 100644 --- a/win32/vs15/glib-install.props +++ b/win32/vs15/glib-install.props @@ -18,8 +18,6 @@ copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin copy $(BinDir)\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.exe $(CopyDir)\bin -copy $(BinDir)\glib-genmarshal.pdb $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.exe $(CopyDir)\bin copy $(BinDir)\gspawn-win*-helper*.pdb $(CopyDir)\bin copy $(BinDir)\glib-compile-schemas.exe $(CopyDir)\bin @@ -36,8 +34,9 @@ copy $(BinDir)\gdbus.exe $(CopyDir)\bin copy $(BinDir)\gdbus.pdb $(CopyDir)\bin copy $(BinDir)\gio.exe $(CopyDir)\bin copy $(BinDir)\gio.pdb $(CopyDir)\bin -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion) copy ..\..\glib\glib.h $(CopyDir)\include\glib-$(ApiVersion) @@ -317,11 +316,12 @@ copy ..\..\gio\gschema.dtd $(CopyDir)\share\glib-$(ApiVersion)\schemas mkdir $(CopyDir)\share\glib-$(ApiVersion)\codegen copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codegen </GlibDoInstall> - <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> + <GlibUtilScripts>..\..\gobject\glib-mkenums;..\..\gobject\glib-genmarshal;..\..\gio\gdbus-2.0\codegen\gdbus-codegen</GlibUtilScripts> <GlibPCFiles>..\gio-windows-2.0.pc;..\gio-2.0.pc;..\gobject-2.0.pc;..\gmodule-no-export-2.0.pc;..\gmodule-export-2.0.pc;..\gmodule-2.0.pc;..\gthread-2.0.pc;..\glib-2.0.pc</GlibPCFiles> - <GenGLibMKEnums>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> - <GenGDBusCodegen>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> - <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> + <GenGLibMKEnums>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)</GenGLibMKEnums> + <GenGLibGenmarshal>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)</GenGLibGenmarshal> + <GenGDBusCodegen>$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)</GenGDBusCodegen> + <GlibGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))</GlibGenPC> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibinstallprops</_PropertySheetDisplayName> @@ -342,6 +342,9 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege <BuildMacro Include="GenGLibMKEnums"> <Value>$(GenGLibMKEnums)</Value> </BuildMacro> + <BuildMacro Include="GenGLibGenmarshal"> + <Value>$(GenGLibGenmarshal)</Value> + </BuildMacro> <BuildMacro Include="GenGDBusCodegen"> <Value>$(GenGDBusCodegen)</Value> </BuildMacro> diff --git a/win32/vs15/glib-install.vcxproj b/win32/vs15/glib-install.vcxproj index b4f26a183..9abc98da6 100644 --- a/win32/vs15/glib-install.vcxproj +++ b/win32/vs15/glib-install.vcxproj @@ -97,6 +97,14 @@ <Command Condition="'$(Configuration)'=='Release'">$(GenGLibMKEnums)</Command> <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-mkenums;%(Outputs)</Outputs> </CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"> + <Message Condition="'$(Configuration)'=='Debug'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Debug'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Debug'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)'=='Release'">Generating glib-genmarshal...</Message> + <Command Condition="'$(Configuration)'=='Release'">$(GenGLibGenmarshal)</Command> + <Outputs Condition="'$(Configuration)'=='Release'">..\..\gobject\glib-genmarshal;%(Outputs)</Outputs> + </CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"> <Message Condition="'$(Configuration)'=='Debug'">Generating gdbus-codegen...</Message> <Command Condition="'$(Configuration)'=='Debug'">$(GenGDBusCodegen)</Command> @@ -121,10 +129,6 @@ <Project>{f3d1583c-5613-4809-bd98-7cc1c1276f92}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> </ProjectReference> - <ProjectReference Include="glib-genmarshal.vcxproj"> - <Project>{bd12e835-5c52-4e5d-8234-1c579f33e27a}</Project> - <ReferenceOutputAssembly>false</ReferenceOutputAssembly> - </ProjectReference> <ProjectReference Include="glib.vcxproj"> <Project>{12bca020-eabf-429e-876a-a476bc9c10c0}</Project> <ReferenceOutputAssembly>false</ReferenceOutputAssembly> diff --git a/win32/vs15/glib-install.vcxproj.filters b/win32/vs15/glib-install.vcxproj.filters index 6748dcf8f..aae121554 100644 --- a/win32/vs15/glib-install.vcxproj.filters +++ b/win32/vs15/glib-install.vcxproj.filters @@ -8,6 +8,7 @@ </ItemGroup> <ItemGroup> <CustomBuild Include="..\..\gobject\glib-mkenums.in"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\gobject\glib-genmarshal.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="glib_install_placeholder"><Filter>Resource Files</Filter></CustomBuild> <CustomBuild Include="..\glibpc.py"><Filter>Resource Files</Filter></CustomBuild> diff --git a/win32/vs15/glib-version-paths.props b/win32/vs15/glib-version-paths.props index f9b4d1b72..9dbb57c22 100644 --- a/win32/vs15/glib-version-paths.props +++ b/win32/vs15/glib-version-paths.props @@ -2,7 +2,7 @@ <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup Label="UserMacros"> <VSVer>15</VSVer> - <GlibVersion>2.53.3</GlibVersion> + <GlibVersion>2.53.4</GlibVersion> <ApiVersion>2.0</ApiVersion> <GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot> <CopyDir>$(GlibEtcInstallRoot)</CopyDir> @@ -12,7 +12,11 @@ <GlibSeparateVSDllSuffix>-2-vs$(VSVer)</GlibSeparateVSDllSuffix> <GlibDllPrefix>$(GlibSeparateVSDllPrefix)</GlibDllPrefix> <GlibDllSuffix>$(GlibSeparateVSDllSuffix)</GlibDllSuffix> - <PythonPath>c:\python27</PythonPath> + <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir> + <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir> </PropertyGroup> <PropertyGroup> <_PropertySheetDisplayName>glibversionpathsprops</_PropertySheetDisplayName> @@ -51,8 +55,8 @@ <BuildMacro Include="GlibDllSuffix"> <Value>$(GlibDllSuffix)</Value> </BuildMacro> - <BuildMacro Include="PythonPath"> - <Value>$(PythonPath)</Value> + <BuildMacro Include="PythonDir"> + <Value>$(PythonDir)</Value> </BuildMacro> </ItemGroup> </Project> diff --git a/win32/vs15/glib.sln b/win32/vs15/glib.sln index 60f7a34f5..87b6e8287 100644 --- a/win32/vs15/glib.sln +++ b/win32/vs15/glib.sln @@ -8,8 +8,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gobject", "gobject.vcxproj" EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gthread", "gthread.vcxproj", "{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-genmarshal", "glib-genmarshal.vcxproj", "{BD12E835-5C52-4E5D-8234-1C579F33E27A}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio", "gio.vcxproj", "{F3D1583C-5613-4809-BD98-7CC1C1276F92}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gspawn-win32-helper", "gspawn-win32-helper.vcxproj", "{289240E7-E167-47CE-A20C-58D852E520BA}"
@@ -28,10 +26,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-querymodules", "gio-que EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdbus", "gdbus.vcxproj", "{95A1571F-61BE-4C51-BE53-2F2DAB280687}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}" -EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcxproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -108,22 +106,6 @@ Global {C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.Build.0 = Release|x64
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.ActiveCfg = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|Win32.Build.0 = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug|x64.ActiveCfg = Debug|x64
@@ -268,38 +250,38 @@ Global {B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
{B0CDEC7F-DCE1-4F7E-B8A4-A3009C18FB2A}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64 + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {2093D218-190E-4194-9421-3BA7CBF33B10}.Release_BundledPCRE|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win32/vs9/Makefile.am b/win32/vs9/Makefile.am index e40d3509a..01fa052e6 100644 --- a/win32/vs9/Makefile.am +++ b/win32/vs9/Makefile.am @@ -14,7 +14,6 @@ EXTRA_DIST = \ README.txt \ glib.sln \ glib.vcprojin \ - glib-genmarshal.vcproj \ gspawn-win32-helper-console.vcproj \ gspawn-win32-helper.vcproj \ gmodule.vcproj \ diff --git a/win32/vs9/Makefile.in b/win32/vs9/Makefile.in index c44a78c2b..dc9926e56 100644 --- a/win32/vs9/Makefile.in +++ b/win32/vs9/Makefile.in @@ -392,7 +392,6 @@ EXTRA_DIST = \ README.txt \ glib.sln \ glib.vcprojin \ - glib-genmarshal.vcproj \ gspawn-win32-helper-console.vcproj \ gspawn-win32-helper.vcproj \ gmodule.vcproj \ diff --git a/win32/vs9/README.txt b/win32/vs9/README.txt index 1625b71eb..2dbd41bb1 100644 --- a/win32/vs9/README.txt +++ b/win32/vs9/README.txt @@ -22,7 +22,12 @@ proxy-libintl-dev and zlib-dev zipfiles from http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ for 32-bit
builds, and correspondingly
http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
-builds.
+builds.
+
+A Python 2.7.x or 3.x interpreter is also required, in order to generate
+the utility scripts, as well as the pkg-config files for the build. Please
+see the entry "PythonDir" in glib-version-paths.vsprops to verify that
+it is correct.
One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS9 with the ASM routines
diff --git a/win32/vs9/glib-genmarshal.vcproj b/win32/vs9/glib-genmarshal.vcproj deleted file mode 100644 index b50be252b..000000000 --- a/win32/vs9/glib-genmarshal.vcproj +++ /dev/null @@ -1,161 +0,0 @@ -<?xml version="1.0" encoding="windows-1251"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="9,00" - Name="glib-genmarshal" - ProjectGUID="{BD12E835-5C52-4E5D-8234-1C579F33E27A}" - RootNamespace="glibgenmarshal" - Keyword="Win32Proj" - TargetFrameworkVersion="131072" - > - <Platforms> - <Platform - Name="Win32" - /> - <Platform - Name="x64" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - InheritedPropertySheets=".\glib-build-defines.vsprops" - ConfigurationType="1" - CharacterSet="2" - > - <Tool - Name="VCCLCompilerTool" - Optimization="0" - PreprocessorDefinitions="_DEBUG" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - UsePrecompiledHeader="0" - WarningLevel="3" - DebugInformationFormat="4" - CompileAs="1" - /> - <Tool - Name="VCLinkerTool" - LinkIncremental="2" - GenerateDebugInformation="true" - SubSystem="1" - RandomizedBaseAddress="1" - DataExecutionPrevention="0" - TargetMachine="1" - /> - </Configuration> - <Configuration - Name="Release|Win32" - InheritedPropertySheets=".\glib-build-defines.vsprops" - ConfigurationType="1" - CharacterSet="2" - WholeProgramOptimization="1" - > - <Tool - Name="VCCLCompilerTool" - PreprocessorDefinitions="" - RuntimeLibrary="2" - UsePrecompiledHeader="0" - WarningLevel="3" - DebugInformationFormat="3" - CompileAs="1" - /> - <Tool - Name="VCLinkerTool" - LinkIncremental="1" - GenerateDebugInformation="true" - SubSystem="1" - OptimizeReferences="2" - EnableCOMDATFolding="2" - RandomizedBaseAddress="1" - DataExecutionPrevention="0" - TargetMachine="1" - /> - </Configuration> - <Configuration - Name="Debug|x64" - InheritedPropertySheets=".\glib-build-defines.vsprops" - ConfigurationType="1" - CharacterSet="2" - > - <Tool - Name="VCCLCompilerTool" - Optimization="0" - PreprocessorDefinitions="_DEBUG" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - UsePrecompiledHeader="0" - WarningLevel="3" - DebugInformationFormat="3" - CompileAs="1" - /> - <Tool - Name="VCLinkerTool" - LinkIncremental="2" - GenerateDebugInformation="true" - SubSystem="1" - RandomizedBaseAddress="1" - DataExecutionPrevention="0" - TargetMachine="17" - /> - </Configuration> - <Configuration - Name="Release|x64" - InheritedPropertySheets=".\glib-build-defines.vsprops" - ConfigurationType="1" - CharacterSet="2" - WholeProgramOptimization="1" - > - <Tool - Name="VCCLCompilerTool" - PreprocessorDefinitions="" - RuntimeLibrary="2" - UsePrecompiledHeader="0" - WarningLevel="3" - DebugInformationFormat="3" - CompileAs="1" - /> - <Tool - Name="VCLinkerTool" - LinkIncremental="1" - GenerateDebugInformation="true" - SubSystem="1" - OptimizeReferences="2" - EnableCOMDATFolding="2" - RandomizedBaseAddress="1" - DataExecutionPrevention="0" - TargetMachine="17" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath="..\..\gobject\glib-genmarshal.c" - > - </File> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - </Filter> - <Filter - Name="Resource Files" - Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" - UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" - > - </Filter> - </Files> -</VisualStudioProject> diff --git a/win32/vs9/glib-install.vcproj b/win32/vs9/glib-install.vcproj index a2e31a4b7..37a6a7c5f 100644 --- a/win32/vs9/glib-install.vcproj +++ b/win32/vs9/glib-install.vcproj @@ -148,6 +148,40 @@ /> </FileConfiguration> </File> + <File RelativePath="..\..\gobject\glib-genmarshal.in"> + <FileConfiguration Name="Debug|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Generating glib-genmarshal..." + CommandLine="$(GenGLibGenmarshal)" + Outputs="..\..\gobject\glib-genmarshal" + /> + </FileConfiguration> + <FileConfiguration Name="Release|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Generating glib-genmarshal..." + CommandLine="$(GenGLibGenmarshal)" + Outputs="..\..\gobject\glib-genmarshal" + /> + </FileConfiguration> + <FileConfiguration Name="Debug|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Generating glib-genmarshal..." + CommandLine="$(GenGLibGenmarshal)" + Outputs="..\..\gobject\glib-genmarshal" + /> + </FileConfiguration> + <FileConfiguration Name="Release|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Generating glib-genmarshal..." + CommandLine="$(GenGLibGenmarshal)" + Outputs="..\..\gobject\glib-genmarshal" + /> + </FileConfiguration> + </File> <File RelativePath="..\..\gio\gdbus-2.0\codegen\gdbus-codegen.in"> <FileConfiguration Name="Debug|Win32"> <Tool diff --git a/win32/vs9/glib-install.vsprops b/win32/vs9/glib-install.vsprops index 31625da32..66ba18c84 100644 --- a/win32/vs9/glib-install.vsprops +++ b/win32/vs9/glib-install.vsprops @@ -20,8 +20,6 @@ copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gobj copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin
 -copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-genmarshal.exe $(CopyDir)\bin
 -copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-genmarshal.pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gspawn-win*-helper*.exe $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gspawn-win*-helper*.pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-compile-schemas.exe $(CopyDir)\bin
 @@ -38,8 +36,9 @@ copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gdbus.exe $(CopyDir) copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gdbus.pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gio.exe $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gio.pdb $(CopyDir)\bin
 -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin
 -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin
 +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin
 +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin
 +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin
 mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated
 copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion)
 copy ..\..\glib\glib.h $(CopyDir)\include\glib-$(ApiVersion)
 @@ -322,14 +321,18 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege /> <UserMacro Name="GenGLibMKEnums" - Value="if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)" + Value="$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)" + /> + <UserMacro + Name="GenGLibGenmarshal" + Value="$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)" /> <UserMacro Name="GenGDBusCodegen" - Value="if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)" + Value="$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)" /> <UserMacro Name="GlibGenPC" - Value="(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))" + Value="(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))" /> </VisualStudioPropertySheet> diff --git a/win32/vs9/glib-install.vspropsin b/win32/vs9/glib-install.vspropsin index c7b024a9a..c1e36d2c4 100644 --- a/win32/vs9/glib-install.vspropsin +++ b/win32/vs9/glib-install.vspropsin @@ -20,8 +20,6 @@ copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gobj copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gobject$(GlibDllSuffix).pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gio$(GlibDllSuffix).dll $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\$(GlibDllPrefix)gio$(GlibDllSuffix).pdb $(CopyDir)\bin
 -copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-genmarshal.exe $(CopyDir)\bin
 -copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-genmarshal.pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gspawn-win*-helper*.exe $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gspawn-win*-helper*.pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-compile-schemas.exe $(CopyDir)\bin
 @@ -38,8 +36,9 @@ copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gdbus.exe $(CopyDir) copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gdbus.pdb $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gio.exe $(CopyDir)\bin
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\gio.pdb $(CopyDir)\bin
 -if exist ..\..\gio\gdbus-2.0\codegen\gdbus-codegen copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin
 -if exist ..\..\gobject\glib-mkenums copy ..\..\gobject\glib-mkenums $(CopyDir)\bin
 +copy ..\..\gobject\glib-mkenums $(CopyDir)\bin
 +copy ..\..\gobject\glib-genmarshal $(CopyDir)\bin
 +copy ..\..\gio\gdbus-2.0\codegen\gdbus-codegen $(CopyDir)\bin
 mkdir $(CopyDir)\include\glib-$(ApiVersion)\glib\deprecated
 copy ..\..\msvc_recommended_pragmas.h $(CopyDir)\include\glib-$(ApiVersion)
 @@ -87,14 +86,18 @@ copy ..\..\gio\gdbus-2.0\codegen\*.py $(CopyDir)\share\glib-$(ApiVersion)\codege /> <UserMacro Name="GenGLibMKEnums" - Value="if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)" + Value="$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-mkenums --version=$(GlibVersion)" + /> + <UserMacro + Name="GenGLibGenmarshal" + Value="$(PythonDir)\python.exe ..\gen_util_scripts.py --type=glib-genmarshal --version=$(GlibVersion)" /> <UserMacro Name="GenGDBusCodegen" - Value="if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)" + Value="$(PythonDir)\python.exe ..\gen_util_scripts.py --type=gdbus-codegen --version=$(GlibVersion)" /> <UserMacro Name="GlibGenPC" - Value="(if not exist $(CopyDir) mkdir $(CopyDir)) & (if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))" + Value="(if not exist $(CopyDir) mkdir $(CopyDir)) & ($(PythonDir)\python.exe ..\glibpc.py --prefix=$(CopyDir) --version=$(GlibVersion))" /> </VisualStudioPropertySheet> diff --git a/win32/vs9/glib-version-paths.vsprops b/win32/vs9/glib-version-paths.vsprops index 38224ac4c..2b6d1bf72 100644 --- a/win32/vs9/glib-version-paths.vsprops +++ b/win32/vs9/glib-version-paths.vsprops @@ -10,7 +10,7 @@ /> <UserMacro Name="GlibVersion" - Value="2.53.3" + Value="2.53.4" /> <UserMacro Name="ApiVersion" @@ -51,7 +51,7 @@ Value="$(GlibSeparateVSDllSuffix)" /> <UserMacro - Name="PythonPath" + Name="PythonDir" Value="c:\python27" /> </VisualStudioPropertySheet> diff --git a/win32/vs9/glib-version-paths.vsprops.in b/win32/vs9/glib-version-paths.vsprops.in index 1b55c5c3c..af7739fe3 100644 --- a/win32/vs9/glib-version-paths.vsprops.in +++ b/win32/vs9/glib-version-paths.vsprops.in @@ -51,7 +51,7 @@ Value="$(GlibSeparateVSDllSuffix)" /> <UserMacro - Name="PythonPath" + Name="PythonDir" Value="c:\python27" /> </VisualStudioPropertySheet> diff --git a/win32/vs9/glib.sln b/win32/vs9/glib.sln index 9b593cbaa..2add2077b 100644 --- a/win32/vs9/glib.sln +++ b/win32/vs9/glib.sln @@ -18,11 +18,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gthread", "gthread.vcproj", {12BCA020-EABF-429E-876A-A476BC9C10C0} = {12BCA020-EABF-429E-876A-A476BC9C10C0}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-genmarshal", "glib-genmarshal.vcproj", "{BD12E835-5C52-4E5D-8234-1C579F33E27A}"
- ProjectSection(ProjectDependencies) = postProject
- {12BCA020-EABF-429E-876A-A476BC9C10C0} = {12BCA020-EABF-429E-876A-A476BC9C10C0}
- EndProjectSection
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio", "gio.vcproj", "{F3D1583C-5613-4809-BD98-7CC1C1276F92}"
ProjectSection(ProjectDependencies) = postProject
{12BCA020-EABF-429E-876A-A476BC9C10C0} = {12BCA020-EABF-429E-876A-A476BC9C10C0}
@@ -83,17 +78,16 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdbus", "gdbus.vcproj", "{9 {F3D1583C-5613-4809-BD98-7CC1C1276F92} = {F3D1583C-5613-4809-BD98-7CC1C1276F92}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}" - ProjectSection(ProjectDependencies) = postProject - {F3D1583C-5613-4809-BD98-7CC1C1276F92} = {F3D1583C-5613-4809-BD98-7CC1C1276F92} - {F172EFFC-E30F-4593-809E-DB2024B1E753} = {F172EFFC-E30F-4593-809E-DB2024B1E753} - {12BCA020-EABF-429E-876A-A476BC9C10C0} = {12BCA020-EABF-429E-876A-A476BC9C10C0} - EndProjectSection -EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gio-tool", "gio-tool.vcproj", "{D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}"
+ ProjectSection(ProjectDependencies) = postProject
+ {F3D1583C-5613-4809-BD98-7CC1C1276F92} = {F3D1583C-5613-4809-BD98-7CC1C1276F92}
+ {F172EFFC-E30F-4593-809E-DB2024B1E753} = {F172EFFC-E30F-4593-809E-DB2024B1E753}
+ {12BCA020-EABF-429E-876A-A476BC9C10C0} = {12BCA020-EABF-429E-876A-A476BC9C10C0}
+ EndProjectSection
+EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-install.vcproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"
ProjectSection(ProjectDependencies) = postProject
{12BCA020-EABF-429E-876A-A476BC9C10C0} = {12BCA020-EABF-429E-876A-A476BC9C10C0}
- {BD12E835-5C52-4E5D-8234-1C579F33E27A} = {BD12E835-5C52-4E5D-8234-1C579F33E27A}
{F3D1583C-5613-4809-BD98-7CC1C1276F92} = {F3D1583C-5613-4809-BD98-7CC1C1276F92}
{4214047C-F5C1-40B3-8369-5DCED8C32770} = {4214047C-F5C1-40B3-8369-5DCED8C32770}
{E40E8A7E-7CAE-4659-9B8B-BC38898E3074} = {E40E8A7E-7CAE-4659-9B8B-BC38898E3074}
@@ -106,7 +100,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-install", "glib-instal {95A1571F-61BE-4C51-BE53-2F2DAB280685} = {95A1571F-61BE-4C51-BE53-2F2DAB280685}
{95A1571F-61BE-4C51-BE53-2F2DAB280686} = {95A1571F-61BE-4C51-BE53-2F2DAB280686}
{95A1571F-61BE-4C51-BE53-2F2DAB280687} = {95A1571F-61BE-4C51-BE53-2F2DAB280687}
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338} = {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338} + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338} = {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}
EndProjectSection
EndProject
Global
@@ -185,22 +179,6 @@ Global {C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release|Win32.Build.0 = Release|Win32
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release|x64.ActiveCfg = Release|x64
{C8AFB8C3-FFFD-460F-BC13-9AC25D7B117C}.Release|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release_BundledPCRE|x64.Build.0 = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.ActiveCfg = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|Win32.Build.0 = Debug|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.ActiveCfg = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Debug|x64.Build.0 = Debug|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.ActiveCfg = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|Win32.Build.0 = Release|Win32
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.ActiveCfg = Release|x64
- {BD12E835-5C52-4E5D-8234-1C579F33E27A}.Release|x64.Build.0 = Release|x64
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
{F3D1583C-5613-4809-BD98-7CC1C1276F92}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
@@ -345,22 +323,22 @@ Global {95A1571F-61BE-4C51-BE53-2F2DAB280687}.Release|Win32.Build.0 = Release|Win32
{95A1571F-61BE-4C51-BE53-2F2DAB280687}.Release|x64.ActiveCfg = Release|x64
{95A1571F-61BE-4C51-BE53-2F2DAB280687}.Release|x64.Build.0 = Release|x64
- {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64 - {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64 + {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug_BundledPCRE|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release_BundledPCRE|x64.Build.0 = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|Win32.Build.0 = Debug|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.ActiveCfg = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Debug|x64.Build.0 = Debug|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.ActiveCfg = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|Win32.Build.0 = Release|Win32
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.ActiveCfg = Release|x64
+ {D0403E9A-2B00-4FD3-B3DD-3C8F9CB9A338}.Release|x64.Build.0 = Release|x64
{2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.ActiveCfg = Debug|Win32
{2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|Win32.Build.0 = Debug|Win32
{2093D218-190E-4194-9421-3BA7CBF33B10}.Debug_BundledPCRE|x64.ActiveCfg = Debug|x64
|