+commit 47e10489c5601feac370465767ce03c4a6dd5942
+Author: Matthias Clasen <mclasen@redhat.com>
+Date: Mon Aug 7 11:13:16 2017 -0400
+
+ 2.53.5
+
+ NEWS | 26 ++++++++++++++++++++++++++
+ configure.ac | 2 +-
+ meson.build | 2 +-
+ 3 files changed, 28 insertions(+), 2 deletions(-)
+
+commit 7c97e3d784f7243d6a426f1c5659cbccc6acb139
+Author: Simon McVittie <smcv@collabora.com>
+Date: Mon Jun 19 12:47:50 2017 +0100
+
+ gdbus: Check signature of NameAcquired, NameLost
+
+ Calling g_variant_get (parameters, "(&s)") when parameters has a
+ signature other than (s) is considered to be a programming error.
+ In practice the message bus (dbus-daemon or a reimplementation) should
+ always send the expected type, but be defensive.
+
+ (Modified by Philip Withnall to improve type check.)
+
+ Signed-off-by: Simon McVittie <smcv@collabora.com>
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784392
+
+ gio/gdbusnameowning.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+commit c53b44edb28b7aec62349a11a8263c488b35b70e
+Author: Simon McVittie <smcv@collabora.com>
+Date: Mon Jun 19 12:41:53 2017 +0100
+
+ GBusNameOwnerFlags: Add DO_NOT_QUEUE flag
+
+ PulseAudio and LibreOffice are among the services that use this flag.
+ Refusing to queue for a name lets you do this transaction,
+ but atomically, avoiding the transient state where you briefly join
+ the queue and then are given the name when its primary owner drops it:
+
+ result = RequestName(name)
+
+ if result == IN_QUEUE:
+ ReleaseName(name)
+ result = EXISTS
+
+ return result
+
+ (Modified by Philip Withnall to add documentation.)
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784392
+
+ gio/gioenums.h | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit 92f1ba200d48bceec10a9be8f0262c57f7375d02
+Author: Simon McVittie <smcv@collabora.com>
+Date: Mon Jun 19 12:36:11 2017 +0100
+
+ GBusNameOwnerFlags: Note equivalence with D-Bus Specification
+
+ The implementation passes flags through directly to the RequestName()
+ call, so if any new values break that equivalence, the implementation
+ will have to be changed.
+
+ Signed-off-by: Simon McVittie <smcv@collabora.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784392
+
+ gio/gioenums.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 05abc6cfce75c28a354fa69212d8e6f38ce4a8b9
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Fri Aug 4 13:46:46 2017 +0100
+
+ gio: Fix crash in open URI portal when no callback is provided
+
+ If no callback is provided, token is never set, but it’s then
+ passed to
+ g_variant_new_string(), which requires a non-NULL input.
+
+ Fix that by moving all the option handling inside the (callback
+ != NULL)
+ case.
+
+ Spotted by Coverity (CID #1378714).
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785817
+
+ gio/gopenuriportal.c | 24 ++++++++++++++----------
+ 1 file changed, 14 insertions(+), 10 deletions(-)
+
+commit 31ae2c559810675aae483269f234a349cd933528
+Author: Mihai Moldovan <ionic@ionic.de>
+Date: Sat Jul 29 09:09:39 2017 +0200
+
+ glib-genmarshal: wrap prototypes in G_{BEGIN,END}_DECLS.
+
+ Since --header --body has been deprecated and replaced with --body
+ --prototypes, the generated body is not wrapped with
+ G_{BEGIN,END}_DECLS
+ any longer. Projects using C++ break due to that. Automatically wrap
+ prototypes individually in G_{BEGIN,END}_DECLS instead.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785554
+
+ gobject/glib-genmarshal.in | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit c4dc30e2a36de57fbf963319b21de935492e5782
+Author: Matej Urbančič <mateju@svn.gnome.org>
+Date: Mon Aug 7 08:44:11 2017 +0200
+
+ Updated Slovenian translation
+
+ po/sl.po | 3739
+ +++++++++++++++++++++++++++++++++++++++++---------------------
+ 1 file changed, 2511 insertions(+), 1228 deletions(-)
+
+commit ce46e13fbc7854cf04a3d5b4516c4f3a0339b774
+Author: Daniel Mustieles <daniel.mustieles@gmail.com>
+Date: Sat Aug 5 11:56:28 2017 +0200
+
+ Updated Spanish translation
+
+ po/es.po | 867
+ +++++++++++++++++++++++++++++++++++++++------------------------
+ 1 file changed, 535 insertions(+), 332 deletions(-)
+
+commit 1782219fb859bab1c5715b3bd1308f15d369d5cf
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Fri Aug 4 13:30:10 2017 +0100
+
+ docs: Fix typo in GDBusInterfaceSkeleton documentation
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ gio/gdbusinterfaceskeleton.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit a1fdae8afcb9abe9327a367ffae8deee9c99400f
+Author: Tim-Philipp Müller <tim@centricular.com>
+Date: Thu Aug 3 19:23:25 2017 +0100
+
+ meson: don't error out if xmllint is not found
+
+ Only needed for glib/tests and entirely optional.
+
+ glib/tests/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit ad9d5a11f2496d931036c0a507b5e789c5432e5f
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Thu Aug 3 16:32:42 2017 +0100
+
+ tests: Fix gschema-compile test for translatable string changes
+
+ Little did I know when making commit
+ c257757cf6774974cf15370ccf09fad7ee855668 that a lot of the output of
+ glib-compile-schemas is string matched in some of the unit tests. Fix
+ them to match the updated strings.
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=695573
+
+ gio/tests/gschema-compile.c | 46
+ ++++++++++++++++++++++-----------------------
+ 1 file changed, 23 insertions(+), 23 deletions(-)
+
+commit 25c01e1c557e03914f1ae88398f705b1437eea3b
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Thu Aug 3 16:31:37 2017 +0100
+
+ glib-compile-schemas: Use double quotes rather than single quotes
+
+ It’s what GLib is standardising on. See bug #772221.
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=695573
+
+ gio/glib-compile-schemas.c | 46
+ +++++++++++++++++++++++-----------------------
+ 1 file changed, 23 insertions(+), 23 deletions(-)
+
+commit e02e3540abbe166abd2ae892c92d82f3fda016f2
+Author: Daniel Boles <dboles@src.gnome.org>
+Date: Thu Aug 3 14:40:29 2017 +0100
+
+ gspawn: Don’t mention removed gdk_spawn functions
+
+ Mention alternatives that actually still exist instead.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785520
+
+ glib/gspawn.c | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+commit f591366eee341f2c40516821e8a5a0bc7a9bd288
+Author: Daniel Macks <dmacks@netspace.org>
+Date: Thu Aug 3 12:43:00 2017 +0100
+
+ gtest: Handle -s as explicit SKIP instead of inhibiting altogether
+
+ Improves diagnostics and makes test transcripts easier to compare
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=769135
+
+ glib/gtestutils.c | 47 +++++++++++++++++++++++++----------------------
+ 1 file changed, 25 insertions(+), 22 deletions(-)
+
+commit f7a14fece4891ea31522ca282807c71ca7f89938
+Author: Daniel Macks <dmacks@netspace.org>
+Date: Mon Jun 16 01:02:49 2014 -0400
+
+ Use "-module" when compiling loadable modules
+
+ Some platforms use different extensions for compile-time linkable
+ libraries vs runtime-loadable modules. Need to use special libtool
+ flag in the latter case for consistency with what gmodule expects.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=731703
+
+ gio/tests/modules/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 22700faf88bdf7be0bbd8dad658f0d08816a7c51
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Thu Aug 3 11:55:23 2017 +0100
+
+ build: Loosen --enable-compile-warnings check
+
+ Instead of requiring --enable-compile-warnings or
+ --enable-compile-warnings=yes, allow any value which is not
+ ‘no’. This
+ enables compile warnings for --enable-compile-warnings=maximum or
+ --enable-compile-warnings=error, which are common values for other
+ GNOME
+ projects. While we don’t change our behaviour for [yes, maximum,
+ error],
+ at least it means the warnings are enabled now, rather than disabled.
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 96528396064e8fef757b095957fd6c527d9ac78c
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Thu Aug 3 11:54:58 2017 +0100
+
+ gslice: Fix inline delarations in GSlice
+
+ Accidentally introduced in commit
+ 5cddde1fb2b8466d8104595008eafabd0728de5d.
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ glib/gslice.c | 13 +++++++++----
+ 1 file changed, 9 insertions(+), 4 deletions(-)
+
+commit c257757cf6774974cf15370ccf09fad7ee855668
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Thu Aug 3 11:34:08 2017 +0100
+
+ glib-compile-schemas: Improve some translatable strings
+
+ • Fix capitalisation to be consistent
+ • Use Unicode quotation marks where appropriate
+ • Move trailing \n characters out of the translable strings
+ and append
+ them unconditionally
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=695573
+
+ gio/glib-compile-schemas.c | 90
+ ++++++++++++++++++++++++++--------------------
+ 1 file changed, 52 insertions(+), 38 deletions(-)
+
+commit 94816e10d21ac545f9d0120a07b8c6d5dee0456d
+Author: Daniel Boles <dboles@src.gnome.org>
+Date: Thu Aug 3 11:30:20 2017 +0100
+
+ glib-compile-schemas: Fix typo in newly translatable string
+
+ gio/glib-compile-schemas.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit a7aa8acc4896fd359fb947bf7f8645c4caa2b0b8
+Author: Jiro Matsuzawa <jmatsuzawa@gnome.org>
+Date: Wed Aug 2 17:19:30 2017 +0200
+
+ glib-compile-schemas: Mark missing strings for translation
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=695573
+
+ gio/glib-compile-schemas.c | 86
+ +++++++++++++++++++++++-----------------------
+ 1 file changed, 43 insertions(+), 43 deletions(-)
+
+commit f2b6c116295e87d1b74ecae86eda0d1a040b936c
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Mon Jul 31 12:16:44 2017 +0100
+
+ gstrfuncs: Expand documentation for errno functions
+
+ Mention that it really is a good idea to save errno before doing
+ literally anything else after calling a function which could set it.
+
+ Signed-off-by: Philip Withnall <withnall@endlessm.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785577
+
+ gio/gioerror.c | 12 ++++++++++++
+ glib/gstrfuncs.c | 12 +++++++++++-
+ 2 files changed, 23 insertions(+), 1 deletion(-)
+
+commit 5cddde1fb2b8466d8104595008eafabd0728de5d
+Author: Philip Withnall <withnall@endlessm.com>
+Date: Mon Jul 31 11:30:55 2017 +0100
+
+ Consistently save errno immediately after the operation setting it
+
+ Prevent the situation where errno is set by function A, then
+ function B
+ is called (which is typically _(), but could be anything else) and it
+ overwrites errno, then errno is checked by the caller.
+
+ errno is a horrific API, and we need to be careful to save its
+ value as
+ soon as a function call (which might set it) returns. i.e. Follow the
+ pattern:
+ int errsv, ret;
+ ret = some_call_which_might_set_errno ();
+ errsv = errno;
+
+ if (ret < 0)
+ puts (strerror (errsv));
+
+ This patch implements that pattern throughout GLib. There might be
+ a few
+ places in the test code which still use errno directly. They should be
+ ported as necessary. It doesn’t modify all the call sites like this:
+ if (some_call_which_might_set_errno () && errno == ESOMETHING)
+ since the refactoring involved is probably more harmful than
+ beneficial
+ there. It does, however, refactor other call sites regardless
+ of whether
+ they were originally buggy.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785577
+
+ gio/gcharsetconverter.c | 4 ++-
+ gio/gdbusaddress.c | 7 ++++--
+ gio/gdbusauthmechanismsha1.c | 33 +++++++++++++++----------
+ gio/gdbusmessage.c | 3 ++-
+ gio/gdbusserver.c | 9 ++++---
+ gio/gdocumentportal.c | 5 ++--
+ gio/gfile.c | 7 +++---
+ gio/gio-querymodules.c | 5 +++-
+ gio/gio-tool-cat.c | 5 +++-
+ gio/glocalfile.c | 26 ++++++++++++++------
+ gio/glocalfileinfo.c | 23 +++++++++++++-----
+ gio/glocalfileoutputstream.c | 16 ++++++------
+ gio/gnetworkmonitornetlink.c | 6 ++---
+ gio/gopenuriportal.c | 10 +++++---
+ gio/gsocket.c | 9 ++++---
+ gio/gsubprocess.c | 46
+ +++++++++++++++++++++++++----------
+ gio/gtestdbus.c | 7 ++++--
+ gio/gunixconnection.c | 15 +++++++-----
+ gio/gunixfdmessage.c | 11 ++++++---
+ gio/gunixinputstream.c | 11 ++++++---
+ gio/gunixoutputstream.c | 14 ++++++-----
+ gio/inotify/inotify-kernel.c | 12 ++++++---
+ gio/tests/dbus-launch.c | 5 ++--
+ gio/tests/gdbus-peer-object-manager.c | 5 ++--
+ gio/tests/gdbus-peer.c | 9 ++++---
+ gio/tests/gdbus-unix-addresses.c | 15 +++++++++---
+ gio/tests/gsubprocess-testprog.c | 3 ++-
+ glib/gerror.c | 4 ++-
+ glib/giowin32.c | 42
+ ++++++++++++++++++++------------
+ glib/gkeyfile.c | 24 ++++++++++++------
+ glib/gmain.c | 10 +++++---
+ glib/gslice.c | 4 ++-
+ glib/gtester.c | 4 ++-
+ glib/gtestutils.c | 19 ++++++++++++---
+ glib/gutils.c | 4 ++-
+ glib/tests/fileutils.c | 5 +++-
+ glib/tests/protocol.c | 6 +++--
+ tests/gobject/timeloop-closure.c | 8 +++---
+ tests/mainloop-test.c | 3 ++-
+ tests/spawn-test-win32-gui.c | 9 ++++---
+ tests/spawn-test.c | 15 ++++++++----
+ tests/testglib.c | 7 ++++--
+ tests/timeloop-basic.c | 8 +++---
+ tests/timeloop.c | 8 +++---
+ 44 files changed, 336 insertions(+), 165 deletions(-)
+
+commit 41a4a70b433fc5a1e7b0c536fdd3d32a9c214219
+Author: Ondrej Holy <oholy@redhat.com>
+Date: Thu Aug 3 09:50:41 2017 +0200
+
+ gunixmounts: Add missing const qualifier for mtab path
+
+ get_mtab_read_file and get_mtab_monitor_file returns const path,
+ but const qualifier is missing. Let's add it.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=779607
+
+ gio/gunixmounts.c | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+commit 2db36d0d5cef9fb97861f79b1e97fa1c33f1ed59
+Author: Ondrej Holy <oholy@redhat.com>
+Date: Mon Jul 17 15:53:24 2017 +0200
+
+ gunixmounts: Prevent "mounts-changed" race if /etc/mtab is used
+
+ The /etc/mtab file is still used by some distributions
+ (e.g. Slackware),
+ so it has to be monitored instead of /proc/self/mountinfo in order to
+ avoid races between g_unix_mounts_get and "mounts-changed" signal. The
+ util-linux is built with --enable-libmount-support-mtab in that
+ case and
+ mnt_has_regular_mtab is used for checks. Let's use
+ mnt_has_regular_mtab
+ also to determine which file to monitor.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=779607
+
+ gio/gunixmounts.c | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+commit b267f648d936902e5cad679f2da575bad8bcd1ed
+Author: Руслан Ижбулатов <lrn1986@gmail.com>
+Date: Sat Jul 29 08:12:40 2017 +0000
+
+ glib/gpoll W32: trust WFMOE() return value
+
+ WaitForMultipleObjectsEx() returns the index of the *first* handle
+ that triggered the wakeup, and promises that all handles with lower
+ index are still inactive. Therefore, don't check them, only check
+ the handles with higher index. This removes the need of rearranging
+ the handles (and, now, handle_to_fd) array, it's enough to take a
+ pointer to the next item and use it as a new, shorter array.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785468
+
+ glib/gpoll.c | 19 ++++++++++---------
+ 1 file changed, 10 insertions(+), 9 deletions(-)
+
+commit 226ea946853cf4fa340988a8adb8774162acd231
+Author: Руслан Ижбулатов <lrn1986@gmail.com>
+Date: Sat Jul 29 08:09:05 2017 +0000
+
+ glib/gpoll W32: faster GPollFD lookup
+
+ Put all ptrs for GPollFDs that contribute handles into an array, the
+ layout of which mirrors the handles array. This way finding GPollFD
+ for a handle is a simple matter of knowing this handle's index in
+ the handles array (which is something we always know). Removes the
+ need to loop through all fds looking for the right one. And, with
+ the message FD also passed along, it's now completely unnecessary
+ to even pass fds to poll_rest() at all.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785468
+
+ glib/gpoll.c | 43 +++++++++++++++++++++----------------------
+ 1 file changed, 21 insertions(+), 22 deletions(-)
+
+commit 201977983e237e35b9e640866e71613387fe1ab9
+Author: Руслан Ижбулатов <lrn1986@gmail.com>
+Date: Sat Jul 29 08:06:18 2017 +0000
+
+ glib/gpoll W32: pass along GPollFD ptr for msg
+
+ Instead of just indicating that messages should be polled for,
+ save the pointer to GPollFD that contains G_WIN32_MSG_HANDLE, and
+ pass it along. This way it won't be necessary to loop through all
+ fds later on, searching for G_WIN32_MSG_HANDLE.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785468
+
+ glib/gpoll.c | 30 ++++++++++++++----------------
+ 1 file changed, 14 insertions(+), 16 deletions(-)
+
+commit 1f3da929f5718c24eed67a8e7007f6c39adb441a
+Author: Руслан Ижбулатов <lrn1986@gmail.com>
+Date: Sat Jul 29 08:04:10 2017 +0000
+
+ glib/gpoll W32: fold f->revents = 0 into for() loop
+
+ GCC most likely optimizes that already, but no harm in trying.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785468
+
+ glib/gpoll.c | 46 +++++++++++++++++++++++-----------------------
+ 1 file changed, 23 insertions(+), 23 deletions(-)
+
+commit cb2316aaa1adc1f80498141d51467a850cde5fac
+Author: Руслан Ижбулатов <lrn1986@gmail.com>
+Date: Sat Jul 29 07:56:19 2017 +0000
+
+ glib/gpoll W32: use WFSOE() instead of SleepEx()
+
+ WaitForSingleObjectEx() is supposed to be a more efficient sleep
+ method.
+ It waits on the handle of the current process. That handle will be
+ signaled once the process terminates, and since we're *inside* the
+ process, it'll never happen (and if it does, we won't care anymore).
+ The use of an alertable wait ensures that we wake up when a completion
+ routine wants to run.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785468
+
+ glib/gpoll.c | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+commit d67b58a9a6799850dd51f38c122682fc8fe5cd5b
+Author: Alistair Francis <alistair.francis@xilinx.com>
+Date: Thu Jun 29 14:42:40 2017 -0700
+
+ glib/gpoll: Remove if conditional
+
+ The original ready < nhandles - 1 can be re-written as ready +
+ 1 < nhandles
+ which is the same confition that we are checking on the first
+ itteration of the for loop. This means we can remove the if statement
+ and let the for loop check the code.
+
+ This also has the side effect of removing an invalid check as
+ WAIT_OBJECT_0 was not subtracted from ready in the if statement.
+
+ Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
+
+ glib/gpoll.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+commit 425a9f5864f69f804f11279b558ff925d421b546
+Author: Руслан Ижбулатов <lrn1986@gmail.com>
+Date: Sat Jul 29 07:40:35 2017 +0000
+
+ gio: add a simple gpoll performance test for W32
+
+ It just creates a number of socket pairs, then triggers read-ready
+ status on these pairs in different patterns (none, one, half, all)
+ and checks how much time it takes to g_poll() those. Also sometimes
+ posts a Windows message and polls for its arrival.
+ The g_main_context_new() is necessary to initialize g_poll() debugging
+ on W32.
+
+ Measures minimal and maximal time it takes to g_poll(), as well as
+ the average, over 1000 runs.
+ Collects the time values into 25 non-linear buckets between 0ns and
+ 1000ns, and displays them at the conclusion of each subtest.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785468
+
+ glib/tests/Makefile.am | 4 +
+ glib/tests/gpoll.c | 624
+ +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 628 insertions(+)
+
+commit 8cc99502022944917f5dd78ce1d1427582081396
+Author: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Tue Aug 1 12:18:42 2017 +0300
+
+ glib-mkenums: fix parsing of flags annotation
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=779332
+
+ gobject/glib-mkenums.in | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+commit ca69df0f16fd0bda99baf609a8ce9f38e1039f65
+Author: Emmanuele Bassi <ebassi@gnome.org>
+Date: Tue Aug 1 10:11:09 2017 +0100
+
+ Revert "glib-mkenums: fix parsing of /*< flags >*/ annotation"
+
+ This reverts commit 1672678bc48c1c060d1ee6bb3df124b3e4f9ca33.
+
+ A more comprehensive fix will follow.
+
+ gobject/glib-mkenums.in | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+commit 867b5e6f902e945e8a02a3d2d35d698e19f8f892
+Author: Christoph Reiter <creiter@src.gnome.org>
+Date: Wed Jul 26 11:26:00 2017 +0200
+
+ glib-mkenums: Python2: use locale encoding when redirecting stdout
+
+ In case of Python 2 and stdout being redirected to a file,
+ sys.stdout.encoding
+ is None and it defaults ASCII for encoding text.
+
+ To match the behaviour of Python 3, which uses the locale encoding
+ also when
+ redirecting to a file, wrap sys.stdout with a StreamWriter using the
+ locale encoding.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785113
+
+ gobject/glib-mkenums.in | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+commit a7926117dde57d6408f292b54d9950b3a1f4cb79
+Author: Debarshi Ray <debarshir@gnome.org>
+Date: Wed Jul 26 11:34:02 2017 +0200
+
+ gdatetime: Silence -Wmaybe-uninitialized
+
+ GCC 6.3.1 thinks that tmp is being used uninitialized:
+ gdatetime.c: In function ‘format_ampm’:
+ gdatetime.c:2248:7: warning: ‘tmp’ may be used uninitialized
+ in this
+ function [-Wmaybe-uninitialized]
+ g_free (tmp);
+ ^~~~~~~~~~~~
+
+ It is not an actual problem because the code in question is guarded by
+ "if (!locale_is_utf8)" and "#if defined (HAVE_LANGINFO_TIME)", and it
+ does get initialized under those circumstances. Still, it is a small
+ price to pay for a cleaner build and having actual problems stand out
+ more prominently.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785438
+
+ glib/gdatetime.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 528a1b9288e410f961b012c75d4887da3ad15b2e
+Author: Piotr Drąg <piotrdrag@gmail.com>
+Date: Sat Jul 15 03:42:15 2017 +0200
+
+ Use the glib preset for i18n in Meson
+
+ Preset handles xgettext options for us,
+ and we can rely on Meson to parse LINGUAS.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784965
+
+ po/meson.build | 126
+ +--------------------------------------------------------
+ 1 file changed, 1 insertion(+), 125 deletions(-)
+
+commit b51a0e7c63313ecfc0c6bbb9f2a8d99f193e51ea
+Author: Debarshi Ray <debarshir@gnome.org>
+Date: Fri Jul 21 14:37:35 2017 +0200
+
+ GApplication: Use a WARNING if dbus_unregister is called by destructor
+
+ Unlike g_application_register, there is no public API to unregister
+ the
+ GApplication from D-Bus. Therefore, if the GApplication is set up
+ manually without using g_application_run, then neither can the
+ GApplicationImpl be destroyed nor can dbus_unregister be called before
+ destruction.
+
+ This is fine as long as no sub-class has implemented dbus_unregister.
+ If they have, their method method will be called after destruction,
+ and
+ they should be prepared to deal with the consequences.
+
+ As long as there is no public API for unregistering, let's demote the
+ assertion to a WARNING. Bravehearts who don't use g_application_run
+ can continue to implement dbus_unregister, but they would have been
+ adequately notified.
+
+ This reverts commit c1ae1170fa47483b9bcb30de8cd346cbc4fe10e3.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=725950
+
+ gio/gapplication.c | 22 +++++++++++++++++-----
+ 1 file changed, 17 insertions(+), 5 deletions(-)
+
+commit df06dc65501100606ca027d4e85aa5a240305be2
+Author: Debarshi Ray <debarshir@gnome.org>
+Date: Thu Jun 8 20:15:46 2017 +0200
+
+ GApplication: Don't call dbus_unregister multiple times
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=725950
+
+ gio/gapplicationimpl-dbus.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+commit b92e15c75df7ed517bc4b256c710cad5cfa43816
+Author: Christoph Reiter <creiter@src.gnome.org>
+Date: Sat Jul 22 20:47:43 2017 +0200
+
+ glib-mkenums: fix encoding error when writing files
+
+ Instead of using NamedTemporaryFile, which doesn't take an encoding
+ in Python 2
+ use mkstemp() to create a file and open it with io.open(), with
+ a proper
+ encoding set.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785113
+
+ gobject/glib-mkenums.in | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 039c40e6ec96020e568fb6c1e45dc48f3c4fa6de
+Author: Emmanuele Bassi <ebassi@gnome.org>
+Date: Fri Jul 21 15:33:37 2017 +0100
+
+ Revert "GKeyFile – Add array length annotations to to_data(),
+ get_keys() and get_groups()"
+
+ This reverts commit fd329f4853f180eb92746f39fc96fd5d91394009.
+
+ The commit changed the Introspection ABI, and it requires a change in
+ any application using an introspection-based language binding.
+
+ glib/gkeyfile.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit bfd307855bd21108c98d72bf4d85a6c632396cde
+Author: Emmanuele Bassi <ebassi@gnome.org>
+Date: Fri Jul 21 14:03:05 2017 +0100
+
+ meson: Allow toggling internal/system PCRE dependency
+
+ We don't always want to build GLib with a dependency on the system's
+ PCRE. The Autotools build allows this, and so should the Meson build.
+
+ glib/meson.build | 2 +-
+ meson.build | 12 +++++++++---
+ meson_options.txt | 1 +
+ 3 files changed, 11 insertions(+), 4 deletions(-)
+
+commit 8962736ba9deb8f6a6b143fce1b6fd692ffaaa21
+Author: Debarshi Ray <debarshir@gnome.org>
+Date: Thu Jul 20 18:57:01 2017 +0200
+
+ docs: Encourage applications to define G_LOG_DOMAIN
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785130
+
+ glib/gmessages.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+commit fd541c35184f1aba027ac176074fa52c374073cb
+Author: Emmanuele Bassi <ebassi@gnome.org>
+Date: Thu Jul 20 15:11:50 2017 +0100
+
+ Require Python 2.7
+
+ Python 2.7 is the last stable release of the 2.x series, as per PEP
+ 404: http://legacy.python.org/dev/peps/pep-0404/
+
+ Python 2.7 is also 7 years old, and maintained until 2020.
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit c1ae1170fa47483b9bcb30de8cd346cbc4fe10e3
+Author: Debarshi Ray <debarshir@gnome.org>
+Date: Mon Jun 19 16:16:08 2017 +0200
+
+ GApplication: Assert that dbus_unregister was called before
+ destruction
+
+ Invoking the dbus_unregister virtual method during destruction is
+ problematic. It would happen after a sub-class has dropped its
+ references to its instance objects, and it is surprising to be
+ asked to
+ unexport exported D-Bus objects after that.
+
+ This problem was masked as a side-effect of commit 21b1c390a3ce1f7e.
+ Let's ensure that it doesn't regress by asserting that dbus_unregister
+ has happened before destruction.
+
+ Based on a patch by Giovanni Campagna.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=725950
+
+ gio/gapplication.c | 17 ++++++++++++++---
+ 1 file changed, 14 insertions(+), 3 deletions(-)
+
+commit be7c3ae611af6b8705319250ca9942e5144be795
+Author: Christoph Reiter <creiter@src.gnome.org>
+Date: Mon Jul 17 21:39:31 2017 +0200
+
+ meson: set glib_extension in glibconfig.h to match the autotools
+ output
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784995
+
+ meson.build | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+commit cb0c224e94b366872292eada2d2f295e562d8f92
+Author: Christoph Reiter <creiter@src.gnome.org>
+Date: Mon Jul 17 21:31:39 2017 +0200
+
+ meson: use set_quoted() instead of quoting manually
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784995
+
+ meson.build | 134
+ ++++++++++++++++++++++++++++++------------------------------
+ 1 file changed, 67 insertions(+), 67 deletions(-)
+
+commit ab6e425574ce2f6aeaeddeee82cbbe7d1bbdd8d4
+Author: Christoph Reiter <reiter.christoph@gmail.com>
+Date: Mon Jul 17 18:33:42 2017 +0200
+
+ meson: define G_PID_FORMAT
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784995
+
+ glib/glibconfig.h.in | 1 +
+ meson.build | 4 ++--
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+commit d88d1ba7e844b5493a53dfcdba77d4df3ea1684d
+Author: Christoph Reiter <creiter@src.gnome.org>
+Date: Wed Jul 19 11:49:04 2017 +0200
+
+ glib-mkenums: Don't use FileNotFoundError, it's Python 3 only.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785113
+
+ gobject/glib-mkenums.in | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+commit c2dace6b8b982ca821edc29501c7635d008a8357
+Author: Christoph Reiter <creiter@src.gnome.org>
+Date: Wed Jul 19 11:43:47 2017 +0200
+
+ glib-mkenums: Use utf-8 for reading files
+
+ On Windows open() defaults to ANSI and on Python 2 it doesn't take
+ an encoding. Use io.open() instead which provides the same interface
+ on both Python versions.
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=785113
+
+ gobject/glib-mkenums.in | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+commit 2ac8079b9414be67a99f736e15383e85da56f7dd
+Author: Tim-Philipp Müller <tim@centricular.com>
+Date: Wed Jul 19 10:34:45 2017 +0100
+
+ meson: fix unit tests and "Invalid byte sequence in conversion input"
+
+ Check if strerror_r returns a char * and define STRERROR_R_CHAR_P
+ if so, which is needed by g_strerror() since c8e268b
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784000
+
+ config.h.meson | 3 +++
+ meson.build | 17 +++++++++++++++++
+ 2 files changed, 20 insertions(+)
+
+commit f8a88a768d976a3bb642c5088634006e1b5e3611
+Author: Adrian Perez de Castro <aperez@igalia.com>
+Date: Tue Jul 11 22:28:50 2017 +0300
+
+ Map G_NOTIFICATION_PRIORITY_HIGH to NOTIFY_URGENCY_NORMAL
+
+ When using the Freedesktop backend for GNotification, it seems like a
+ better idea to map G_NOTIFICATION_PRIORITY_HIGH to
+ NOTIFY_URGENCY_NORMAL
+ (instead of NOTIFY_URGENCY_CRITICAL) provided that the difference
+ between GNotification's NORMAL and HIGH priorities is minor.
+
+ Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
+
+ https://bugzilla.gnome.org/show_bug.cgi?id=784815
+
+ gio/gfdonotificationbackend.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 9a31103ebbf3af09fb5fc783491a6fb5dd25b4be
+Author: Emmanuele Bassi <ebassi@gnome.org>
+Date: Tue Jul 18 11:56:16 2017 +0100
+
+ Add Meson build files to the Autotools dist
+
+ We should allow building GLib with Meson from an Autotools dist
+ tarball.
+
+ Makefile.am | 39 +++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 39 insertions(+)
+
+commit 9424facde289185c7bde4159be6961dba4cb5983
+Author: Matthias Clasen <mclasen@redhat.com>
+Date: Mon Jul 17 16:20:52 2017 -0400
+
+ 2.53.4
+
+ gio/tests/modules/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
commit 2219cfb92daf9b9413de35a1089efa3a1dff7602
Author: Emmanuele Bassi <ebassi@gnome.org>
Date: Mon Jul 17 16:29:40 2017 +0100
Simple install procedure
========================
- % tar xf glib-2.53.4.tar.gz # unpack the sources
- % cd glib-2.53.4 # change to the toplevel directory
+ % tar xf glib-2.53.5.tar.gz # unpack the sources
+ % cd glib-2.53.5 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GLIB
gtk-doc.make \
$(NULL)
+meson_build_files = \
+ config.h.meson \
+ meson_options.txt \
+ meson.build \
+ docs/reference/gio/meson.build \
+ docs/reference/gio/xml/gtkdocentities.ent.in \
+ docs/reference/gio/xml/meson.build \
+ docs/reference/glib/meson.build \
+ docs/reference/glib/xml/gtkdocentities.ent.in \
+ docs/reference/glib/xml/meson.build \
+ docs/reference/gobject/meson.build \
+ docs/reference/gobject/xml/gtkdocentities.ent.in \
+ docs/reference/gobject/xml/meson.build \
+ gio/data-to-c.py \
+ gio/gdbus-2.0/codegen/meson.build \
+ gio/inotify/meson.build \
+ gio/kqueue/meson.build \
+ gio/meson.build \
+ gio/tests/meson.build \
+ gio/tests/modules/meson.build \
+ gio/tests/gdbus-object-manager-example/meson.build \
+ gio/tests/de/LC_MESSAGES/meson.build \
+ gio/win32/meson.build \
+ gio/xdgmime/meson.build \
+ glib/libcharset/meson.build \
+ glib/meson.build \
+ glib/pcre/meson.build \
+ glib/tests/meson.build \
+ gmodule/meson.build \
+ gobject/meson.build \
+ gobject/tests/meson.build \
+ gthread/meson.build \
+ po/meson.build
+ tests/refcount/meson.build \
+ tests/meson.build \
+ tests/gobject/meson.build \
+ $()
+
+EXTRA_DIST += $(meson_build_files)
# These may be in the builddir too
BUILT_EXTRA_DIST += \
$(srcdir)/gmodule-no-export-2.0.pc.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 py-compile test-driver
+ README compile config.guess config.sub depcomp install-sh \
+ ltmain.sh missing py-compile test-driver
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
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)
+ gio-windows-2.0.pc.in check-abis.sh gtk-doc.make $(NULL) \
+ $(meson_build_files)
# 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.
-DG_DISABLE_DEPRECATED \
-DGLIB_COMPILATION
+meson_build_files = \
+ config.h.meson \
+ meson_options.txt \
+ meson.build \
+ docs/reference/gio/meson.build \
+ docs/reference/gio/xml/gtkdocentities.ent.in \
+ docs/reference/gio/xml/meson.build \
+ docs/reference/glib/meson.build \
+ docs/reference/glib/xml/gtkdocentities.ent.in \
+ docs/reference/glib/xml/meson.build \
+ docs/reference/gobject/meson.build \
+ docs/reference/gobject/xml/gtkdocentities.ent.in \
+ docs/reference/gobject/xml/meson.build \
+ gio/data-to-c.py \
+ gio/gdbus-2.0/codegen/meson.build \
+ gio/inotify/meson.build \
+ gio/kqueue/meson.build \
+ gio/meson.build \
+ gio/tests/meson.build \
+ gio/tests/modules/meson.build \
+ gio/tests/gdbus-object-manager-example/meson.build \
+ gio/tests/de/LC_MESSAGES/meson.build \
+ gio/win32/meson.build \
+ gio/xdgmime/meson.build \
+ glib/libcharset/meson.build \
+ glib/meson.build \
+ glib/pcre/meson.build \
+ glib/tests/meson.build \
+ gmodule/meson.build \
+ gobject/meson.build \
+ gobject/tests/meson.build \
+ gthread/meson.build \
+ po/meson.build
+
CONFIGURE_DEPENDENCIES = acglib.m4
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = glib-2.0.pc gobject-2.0.pc gmodule-2.0.pc \
# http://people.gnome.org/~walters/docs/build-api.txt
.buildapi-allow-builddir:
+ tests/refcount/meson.build \
+ tests/meson.build \
+ tests/gobject/meson.build \
+ $()
ChangeLog:
$(AM_V_GEN) if test -d "$(srcdir)/.git"; then \
+Overview of changes in GLib 2.53.5
+==================================
+
+* Bugs fixed:
+ 695573 Untranslatable strings in glib-compile-schemas
+ 725950 GApplication: call dbus_unregister only once, and before destruction
+ 731703 giomodule test misbuilds its test modules as libraries
+ 769135 External control for g_test_add/g_test_run
+ 779332 Rewrite mkenums in Python
+ 779607 Race between mounts-changed signal and g_unix_mounts_get() function
+ 784000 Improve strerror_r() detection
+ 784815 Map G_NOTIFICATION_PRIORITY_HIGH to NOTIFY_URGENCY_NORMAL
+ 784965 Use the glib preset for i18n in Meson
+ 784995 meson: some Windows improvements
+ 785113 glib-mkenums Python port fixes
+ 785130 G_LOG_DOMAIN shouldn't be left undefined for applications
+ 785438 Spurious -Wmaybe-uninitialized in gdatetime.c
+ 785468 glib/gpoll: Unnecessary if conditional included in the poll_rest() function
+ 785520 Replace advice to use removed gdk_spawn functions
+ 785577 clobbers errno while setting GError
+
+* Translation updates:
+ Slovenian
+ Spanish
+
+
Overview of changes in GLib 2.53.4
==================================
General Information
===================
-This is GLib version 2.53.4. GLib is the low-level core
+This is GLib version 2.53.5. 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,
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2016 Free Software Foundation, Inc.
+# Copyright 1992-2017 Free Software Foundation, Inc.
-timestamp='2016-10-02'
+timestamp='2017-03-05'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2016 Free Software Foundation, Inc.
+Copyright 1992-2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
UNAME_PROCESSOR=`/usr/bin/uname -p`
case ${UNAME_PROCESSOR} in
amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ UNAME_PROCESSOR=x86_64 ;;
+ i386)
+ UNAME_PROCESSOR=i586 ;;
esac
+ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit ;;
+ NSX-?:NONSTOP_KERNEL:*:*)
+ echo nsx-tandem-nsk${UNAME_RELEASE}
+ exit ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
exit ;;
--- /dev/null
+/* config.h.in. Generated from configure.ac by autoheader. */
+
+/* Define if building universal (internal helper macro) */
+#mesondefine AC_APPLE_UNIVERSAL_BUILD
+
+/* The normal alignment of `guint32', in bytes. */
+#mesondefine ALIGNOF_GUINT32
+
+/* The normal alignment of `guint64', in bytes. */
+#mesondefine ALIGNOF_GUINT64
+
+/* The normal alignment of `unsigned long', in bytes. */
+#mesondefine ALIGNOF_UNSIGNED_LONG
+
+/* poll doesn't work on devices */
+#mesondefine BROKEN_POLL
+
+/* Whether we're building a DLL and hence need symbols exported for a DLL */
+#mesondefine DLL_EXPORT
+
+/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
+ systems. This function is required for `alloca.c' support on those systems.
+ */
+#mesondefine CRAY_STACKSEG_END
+
+/* Define to 1 if using `alloca.c'. */
+#mesondefine C_ALLOCA
+
+/* Whether to disable memory pools */
+#mesondefine DISABLE_MEM_POOLS
+
+/* Whether to enable GC friendliness by default */
+#mesondefine ENABLE_GC_FRIENDLY_DEFAULT
+
+/* always defined to indicate that i18n is enabled */
+#mesondefine ENABLE_NLS
+
+/* Define the gettext package to be used */
+#mesondefine GETTEXT_PACKAGE
+
+/* Define to the GLIB binary age */
+#mesondefine GLIB_BINARY_AGE
+
+/* Define to the GLIB interface age */
+#mesondefine GLIB_INTERFACE_AGE
+
+/* Define the location where the catalogs will be installed */
+#mesondefine GLIB_LOCALE_DIR
+
+/* Define to the GLIB major version */
+#mesondefine GLIB_MAJOR_VERSION
+
+/* Define to the GLIB micro version */
+#mesondefine GLIB_MICRO_VERSION
+
+/* Define to the GLIB minor version */
+#mesondefine GLIB_MINOR_VERSION
+
+/* A 'va_copy' style function */
+#mesondefine G_VA_COPY
+
+/* 'va_lists' cannot be copies as values */
+#mesondefine G_VA_COPY_AS_ARRAY
+
+/* Define to 1 if you have `alloca', as a function or macro. */
+#mesondefine HAVE_ALLOCA
+
+/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
+ */
+#mesondefine HAVE_ALLOCA_H
+
+/* Define to 1 if you have the <attr/xattr.h> header file. */
+#mesondefine HAVE_ATTR_XATTR_H
+
+/* Define to 1 if you have the `bind_textdomain_codeset' function. */
+#mesondefine HAVE_BIND_TEXTDOMAIN_CODESET
+
+/* Define if you have a version of the snprintf function with semantics as
+ specified by the ISO C99 standard. */
+#mesondefine HAVE_C99_SNPRINTF
+
+/* Define if you have a version of the vsnprintf function with semantics as
+ specified by the ISO C99 standard. */
+#mesondefine HAVE_C99_VSNPRINTF
+
+/* define to 1 if Carbon is available */
+#mesondefine HAVE_CARBON
+
+/* Define to 1 if you have the `clock_gettime' function. */
+#mesondefine HAVE_CLOCK_GETTIME
+
+/* define to 1 if Cocoa is available */
+#mesondefine HAVE_COCOA
+
+/* Have nl_langinfo (CODESET) */
+#mesondefine HAVE_CODESET
+
+/* Define to 1 if you have the <crt_externs.h> header file. */
+#mesondefine HAVE_CRT_EXTERNS_H
+
+/* Define if dbus-1 is available */
+#mesondefine HAVE_DBUS1
+
+/* Define to 1 if you have the `dcgettext' function. */
+#mesondefine HAVE_DCGETTEXT
+
+/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
+ */
+#mesondefine HAVE_DIRENT_H
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#mesondefine HAVE_DLFCN_H
+
+/* Define to 1 if using dtrace probes. */
+#mesondefine HAVE_DTRACE
+
+/* Define to 1 if you have the `endmntent' function. */
+#mesondefine HAVE_ENDMNTENT
+
+/* Define to 1 if you have the `endservent' function. */
+#mesondefine HAVE_ENDSERVENT
+
+/* we have the eventfd(2) system call */
+#mesondefine HAVE_EVENTFD
+
+/* Define to 1 if you have the `fallocate' function. */
+#mesondefine HAVE_FALLOCATE
+
+/* Define if we have FAM */
+#mesondefine HAVE_FAM
+
+/* Define to 1 if you have the <fam.h> header file. */
+#mesondefine HAVE_FAM_H
+
+/* Define if we have FAMNoExists in fam */
+#mesondefine HAVE_FAM_NO_EXISTS
+
+/* Define to 1 if you have the `fchmod' function. */
+#mesondefine HAVE_FCHMOD
+
+/* Define to 1 if you have the `fchown' function. */
+#mesondefine HAVE_FCHOWN
+
+/* Define to 1 if you have the `fdwalk' function. */
+#mesondefine HAVE_FDWALK
+
+/* Define to 1 if you have the <fstab.h> header file. */
+#mesondefine HAVE_FSTAB_H
+
+/* Define to 1 if you have the `fsync' function. */
+#mesondefine HAVE_FSYNC
+
+/* we have the futex(2) system call */
+#mesondefine HAVE_FUTEX
+
+/* Define to 1 if you have the `getc_unlocked' function. */
+#mesondefine HAVE_GETC_UNLOCKED
+
+/* Define to 1 if you have the `getfsstat' function. */
+#mesondefine HAVE_GETFSSTAT
+
+/* Define to 1 if you have the `getgrgid_r' function. */
+#mesondefine HAVE_GETGRGID_R
+
+/* Define to 1 if you have the `getmntent_r' function. */
+#mesondefine HAVE_GETMNTENT_R
+
+/* Define to 1 if you have the `getprotobyname_r' function. */
+#mesondefine HAVE_GETPROTOBYNAME_R
+
+/* Define to 1 if you have the `getpwuid_r' function. */
+#mesondefine HAVE_GETPWUID_R
+
+/* Define to 1 if you have the `getresuid' function. */
+#mesondefine HAVE_GETRESUID
+
+/* Define if the GNU gettext() function is already present or preinstalled. */
+#mesondefine HAVE_GETTEXT
+
+/* Define to 1 if you have the `getvfsstat' function. */
+#mesondefine HAVE_GETVFSSTAT
+
+/* Define to 1 if you have the `gmtime_r' function. */
+#mesondefine HAVE_GMTIME_R
+
+/* define to use system printf */
+#mesondefine HAVE_GOOD_PRINTF
+
+/* Define to 1 if you have the `hasmntopt' function. */
+#mesondefine HAVE_HASMNTOPT
+
+/* Define to 1 if you have the `if_indextoname' function. */
+#mesondefine HAVE_IF_INDEXTONAME
+
+/* Define to 1 if you have the `if_nametoindex' function. */
+#mesondefine HAVE_IF_NAMETOINDEX
+
+/* Define to 1 if you have the `inotify_init1' function. */
+#mesondefine HAVE_INOTIFY_INIT1
+
+/* define to support printing 64-bit integers with format I64 */
+#mesondefine HAVE_INT64_AND_I64
+
+/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
+#mesondefine HAVE_INTMAX_T
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#mesondefine HAVE_INTTYPES_H
+
+/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
+ declares uintmax_t. */
+#mesondefine HAVE_INTTYPES_H_WITH_UINTMAX
+
+/* Define if we have struct ip_mreqn */
+#mesondefine HAVE_IP_MREQN
+
+/* Define to 1 if you have the `issetugid' function. */
+#mesondefine HAVE_ISSETUGID
+
+/* Define to 1 if you have the `kevent' function. */
+#mesondefine HAVE_KEVENT
+
+/* Define to 1 if you have the `kqueue' function. */
+#mesondefine HAVE_KQUEUE
+
+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
+#mesondefine HAVE_LANGINFO_CODESET
+
+/* Have nl_langinfo (_NL_CTYPE_OUTDIGITn_MB) */
+#mesondefine HAVE_LANGINFO_OUTDIGIT
+
+/* Have nl_langinfo (PM_STR) */
+#mesondefine HAVE_LANGINFO_TIME
+
+/* Define to 1 if you have the `lchmod' function. */
+#mesondefine HAVE_LCHMOD
+
+/* Define to 1 if you have the `lchown' function. */
+#mesondefine HAVE_LCHOWN
+
+/* Define if your <locale.h> file defines LC_MESSAGES. */
+#mesondefine HAVE_LC_MESSAGES
+
+/* Define if you have the __libc_enable_secure variable (GNU libc, eglibc) */
+#mesondefine HAVE_LIBC_ENABLE_SECURE
+
+/* Define if libelf is available */
+#mesondefine HAVE_LIBELF
+
+/* Define to 1 if you have the <linux/magic.h> header file. */
+#mesondefine HAVE_LINUX_MAGIC_H
+
+/* Define to 1 if you have the <locale.h> header file. */
+#mesondefine HAVE_LOCALE_H
+
+/* Define to 1 if you have the `localtime_r' function. */
+#mesondefine HAVE_LOCALTIME_R
+
+/* Define if you have the 'long double' type. */
+#mesondefine HAVE_LONG_DOUBLE
+
+/* Define if you have the 'long long' type. */
+#mesondefine HAVE_LONG_LONG
+
+/* define if system printf can print long long */
+#mesondefine HAVE_LONG_LONG_FORMAT
+
+/* Define to 1 if you have the `lstat' function. */
+#mesondefine HAVE_LSTAT
+
+/* Define to 1 if you have the <mach/mach_time.h> header file. */
+#mesondefine HAVE_MACH_MACH_TIME_H
+
+/* Define to 1 if you have the <malloc.h> header file. */
+#mesondefine HAVE_MALLOC_H
+
+/* Define to 1 if you have the `mbrtowc' function. */
+#mesondefine HAVE_MBRTOWC
+
+/* Define to 1 if you have the `memalign' function. */
+#mesondefine HAVE_MEMALIGN
+
+/* Define to 1 if you have the `memmem' function. */
+#mesondefine HAVE_MEMMEM
+
+/* Define to 1 if you have the <memory.h> header file. */
+#mesondefine HAVE_MEMORY_H
+
+/* Define to 1 if you have the `mmap' function. */
+#mesondefine HAVE_MMAP
+
+/* Define to 1 if you have the <mntent.h> header file. */
+#mesondefine HAVE_MNTENT_H
+
+/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
+#mesondefine HAVE_NDIR_H
+
+/* We have AF_NETLINK sockets */
+#mesondefine HAVE_NETLINK
+
+/* Define to 1 if you have the `newlocale' function. */
+#mesondefine HAVE_NEWLOCALE
+
+/* open option O_DIRECTORY */
+#mesondefine HAVE_OPEN_O_DIRECTORY
+
+/* Define to 1 if you have the `pipe2' function. */
+#mesondefine HAVE_PIPE2
+
+/* Define to 1 if you have the `poll' function. */
+#mesondefine HAVE_POLL
+
+/* Define to 1 if you have the `posix_memalign' function. */
+#mesondefine HAVE_POSIX_MEMALIGN
+
+/* Define to 1 if you have the `prlimit' function. */
+#mesondefine HAVE_PRLIMIT
+
+/* Have function pthread_attr_setstacksize */
+#mesondefine HAVE_PTHREAD_ATTR_SETSTACKSIZE
+
+/* Have function pthread_cond_timedwait_relative_np */
+#mesondefine HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE_NP
+
+/* Have function pthread_condattr_setclock */
+#mesondefine HAVE_PTHREAD_CONDATTR_SETCLOCK
+
+/* Have function pthread_setname_np without TID as argument */
+#mesondefine HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID
+
+/* Have function pthread_setname_np with TID as argument */
+#mesondefine HAVE_PTHREAD_SETNAME_NP_WITH_TID
+
+/* Define to 1 if the system has the type `ptrdiff_t'. */
+#mesondefine HAVE_PTRDIFF_T
+
+/* Define to 1 if you have the `readlink' function. */
+#mesondefine HAVE_READLINK
+
+/* Define to 1 if you have the `recvmmsg' function. */
+#mesondefine HAVE_RECVMMSG
+
+/* Define to 1 if you have the 'res_init' function. */
+#mesondefine HAVE_RES_INIT
+
+/* Define to 1 if you have the <sched.h> header file. */
+#mesondefine HAVE_SCHED_H
+
+/* Define to 1 if libselinux is available */
+#mesondefine HAVE_SELINUX
+
+/* Define to 1 if you have the <selinux/selinux.h> header file. */
+#mesondefine HAVE_SELINUX_SELINUX_H
+
+/* Define to 1 if you have the `sendmmsg' function. */
+#mesondefine HAVE_SENDMMSG
+
+/* Define to 1 if you have the `setenv' function. */
+#mesondefine HAVE_SETENV
+
+/* Define to 1 if you have the `setmntent' function. */
+#mesondefine HAVE_SETMNTENT
+
+/* Define if you have the 'sig_atomic_t' type. */
+#mesondefine HAVE_SIG_ATOMIC_T
+
+/* Define to 1 if you have the `snprintf' function. */
+#mesondefine HAVE_SNPRINTF
+
+/* Define to 1 if you have the `splice' function. */
+#mesondefine HAVE_SPLICE
+
+/* Define to 1 if you have the `statfs' function. */
+#mesondefine HAVE_STATFS
+
+/* Define to 1 if you have the `statvfs' function. */
+#mesondefine HAVE_STATVFS
+
+/* Define to 1 if you have the <stddef.h> header file. */
+#mesondefine HAVE_STDDEF_H
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#mesondefine HAVE_STDINT_H
+
+/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
+ uintmax_t. */
+#mesondefine HAVE_STDINT_H_WITH_UINTMAX
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#mesondefine HAVE_STDLIB_H
+
+/* Define to 1 if you have the `stpcpy' function. */
+#mesondefine HAVE_STPCPY
+
+/* Define to 1 if you have the `strcasecmp' function. */
+#mesondefine HAVE_STRCASECMP
+
+/* Define to 1 if you have the `strerror_r' function. */
+#mesondefine HAVE_STRERROR_R
+
+/* Define if strerror_r returns char * */
+#mesondefine STRERROR_R_CHAR_P
+
+/* Define to 1 if you have the <strings.h> header file. */
+#mesondefine HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#mesondefine HAVE_STRING_H
+
+/* Have functions strlcpy and strlcat */
+#mesondefine HAVE_STRLCPY
+
+/* Define to 1 if you have the `strncasecmp' function. */
+#mesondefine HAVE_STRNCASECMP
+
+/* Define to 1 if you have the `strnlen' function. */
+#mesondefine HAVE_STRNLEN
+
+/* Define to 1 if you have the `strsignal' function. */
+#mesondefine HAVE_STRSIGNAL
+
+/* Define to 1 if you have the `strtod_l' function. */
+#mesondefine HAVE_STRTOD_L
+
+/* Define to 1 if you have the `strtoll_l' function. */
+#mesondefine HAVE_STRTOLL_L
+
+/* Define to 1 if you have the `strtoull_l' function. */
+#mesondefine HAVE_STRTOULL_L
+
+/* Define to 1 if `d_type' is a member of `struct dirent'. */
+#mesondefine HAVE_STRUCT_DIRENT_D_TYPE
+
+/* Define to 1 if `f_bavail' is a member of `struct statfs'. */
+#mesondefine HAVE_STRUCT_STATFS_F_BAVAIL
+
+/* Define to 1 if `f_fstypename' is a member of `struct statfs'. */
+#mesondefine HAVE_STRUCT_STATFS_F_FSTYPENAME
+
+/* Define to 1 if `f_basetype' is a member of `struct statvfs'. */
+#mesondefine HAVE_STRUCT_STATVFS_F_BASETYPE
+
+/* Define to 1 if `f_fstypename' is a member of `struct statvfs'. */
+#mesondefine HAVE_STRUCT_STATVFS_F_FSTYPENAME
+
+/* Define to 1 if `st_atimensec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_ATIMENSEC
+
+/* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC
+
+/* Define to 1 if `st_birthtim' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_BIRTHTIM
+
+/* Define to 1 if `st_birthtime' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_BIRTHTIME
+
+/* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC
+
+/* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC
+
+/* Define to 1 if `st_blksize' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_BLKSIZE
+
+/* Define to 1 if `st_blocks' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_BLOCKS
+
+/* Define to 1 if `st_ctimensec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_CTIMENSEC
+
+/* Define to 1 if `st_ctim.tv_nsec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_CTIM_TV_NSEC
+
+/* Define to 1 if `st_mtimensec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_MTIMENSEC
+
+/* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */
+#mesondefine HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC
+
+/* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */
+#mesondefine HAVE_STRUCT_TM_TM_GMTOFF
+
+/* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */
+#mesondefine HAVE_STRUCT_TM___TM_GMTOFF
+
+/* Define to 1 if you have the `symlink' function. */
+#mesondefine HAVE_SYMLINK
+
+/* Define to 1 if you have the `sysctlbyname' function. */
+#mesondefine HAVE_SYSCTLBYNAME
+
+/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
+ */
+#mesondefine HAVE_SYS_DIR_H
+
+/* Define to 1 if you have the <sys/event.h> header file. */
+#mesondefine HAVE_SYS_EVENT_H
+
+/* Define to 1 if you have the <sys/filio.h> header file. */
+#mesondefine HAVE_SYS_FILIO_H
+
+/* Define to 1 if you have the <sys/inotify.h> header file. */
+#mesondefine HAVE_SYS_INOTIFY_H
+
+/* Define to 1 if you have the <sys/mkdev.h> header file. */
+#mesondefine HAVE_SYS_MKDEV_H
+
+/* Define to 1 if you have the <sys/mntctl.h> header file. */
+#mesondefine HAVE_SYS_MNTCTL_H
+
+/* Define to 1 if you have the <sys/mnttab.h> header file. */
+#mesondefine HAVE_SYS_MNTTAB_H
+
+/* Define to 1 if you have the <sys/mount.h> header file. */
+#mesondefine HAVE_SYS_MOUNT_H
+
+/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
+ */
+#mesondefine HAVE_SYS_NDIR_H
+
+/* Define to 1 if you have the <sys/param.h> header file. */
+#mesondefine HAVE_SYS_PARAM_H
+
+/* Define to 1 if you have the <sys/poll.h> header file. */
+#mesondefine HAVE_SYS_POLL_H
+
+/* Define to 1 if you have the <sys/resource.h> header file. */
+#mesondefine HAVE_SYS_RESOURCE_H
+
+/* found fd_set in sys/select.h */
+#mesondefine HAVE_SYS_SELECT_H
+
+/* Define to 1 if you have the <sys/statfs.h> header file. */
+#mesondefine HAVE_SYS_STATFS_H
+
+/* Define to 1 if you have the <sys/statvfs.h> header file. */
+#mesondefine HAVE_SYS_STATVFS_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#mesondefine HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/sysctl.h> header file. */
+#mesondefine HAVE_SYS_SYSCTL_H
+
+/* Define to 1 if you have the <sys/times.h> header file. */
+#mesondefine HAVE_SYS_TIMES_H
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+#mesondefine HAVE_SYS_TIME_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#mesondefine HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <sys/uio.h> header file. */
+#mesondefine HAVE_SYS_UIO_H
+
+/* Define to 1 if you have the <sys/vfstab.h> header file. */
+#mesondefine HAVE_SYS_VFSTAB_H
+
+/* Define to 1 if you have the <sys/vfs.h> header file. */
+#mesondefine HAVE_SYS_VFS_H
+
+/* Define to 1 if you have the <sys/vmount.h> header file. */
+#mesondefine HAVE_SYS_VMOUNT_H
+
+/* Define to 1 if you have the <sys/wait.h> header file. */
+#mesondefine HAVE_SYS_WAIT_H
+
+/* Define to 1 if you have the <sys/xattr.h> header file. */
+#mesondefine HAVE_SYS_XATTR_H
+
+/* Define to 1 if you have the `timegm' function. */
+#mesondefine HAVE_TIMEGM
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#mesondefine HAVE_UNISTD_H
+
+/* Define if your printf function family supports positional parameters as
+ specified by Unix98. */
+#mesondefine HAVE_UNIX98_PRINTF
+
+/* Define to 1 if you have the `unsetenv' function. */
+#mesondefine HAVE_UNSETENV
+
+/* Define to 1 if you have the `uselocale' function. */
+#mesondefine HAVE_USELOCALE
+
+/* Define to 1 if you have the `utimes' function. */
+#mesondefine HAVE_UTIMES
+
+/* Define to 1 if you have the `valloc' function. */
+#mesondefine HAVE_VALLOC
+
+/* Define to 1 if you have the <values.h> header file. */
+#mesondefine HAVE_VALUES_H
+
+/* Define to 1 if you have the `vasprintf' function. */
+#mesondefine HAVE_VASPRINTF
+
+/* Define to 1 if you have the `vsnprintf' function. */
+#mesondefine HAVE_VSNPRINTF
+
+/* Define if you have the 'wchar_t' type. */
+#mesondefine HAVE_WCHAR_T
+
+/* Define to 1 if you have the `wcslen' function. */
+#mesondefine HAVE_WCSLEN
+
+/* Define if you have the 'wint_t' type. */
+#mesondefine HAVE_WINT_T
+
+/* Have a working bcopy */
+#mesondefine HAVE_WORKING_BCOPY
+
+/* Define to 1 if xattr is available */
+#mesondefine HAVE_XATTR
+
+/* Define to 1 if xattr API uses XATTR_NOFOLLOW */
+#mesondefine HAVE_XATTR_NOFOLLOW
+
+/* Define to 1 if you have the <xlocale.h> header file. */
+#mesondefine HAVE_XLOCALE_H
+
+/* Define to 1 if you have the `_NSGetEnviron' function. */
+#mesondefine HAVE__NSGETENVIRON
+
+/* Define to the sub-directory where libtool stores uninstalled libraries. */
+#define LT_OBJDIR ""
+
+/* Do we cache iconv descriptors */
+#mesondefine NEED_ICONV_CACHE
+
+/* didn't find fd_set */
+#mesondefine NO_FD_SET
+
+/* Define to the address where bug reports for this package should be sent. */
+#mesondefine PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#mesondefine PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#mesondefine PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#mesondefine PACKAGE_TARNAME
+
+/* Define to the home page for this package. */
+#mesondefine PACKAGE_URL
+
+/* Define to the version of this package. */
+#mesondefine PACKAGE_VERSION
+
+/* define if posix_memalign() can allocate any size */
+#mesondefine POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS
+
+/* The size of `char', as computed by sizeof. */
+#mesondefine SIZEOF_CHAR
+
+/* The size of `int', as computed by sizeof. */
+#mesondefine SIZEOF_INT
+
+/* The size of `long', as computed by sizeof. */
+#mesondefine SIZEOF_LONG
+
+/* The size of `long long', as computed by sizeof. */
+#mesondefine SIZEOF_LONG_LONG
+
+/* The size of `short', as computed by sizeof. */
+#mesondefine SIZEOF_SHORT
+
+/* The size of `size_t', as computed by sizeof. */
+#mesondefine SIZEOF_SIZE_T
+
+/* The size of `ssize_t', as computed by sizeof. */
+#mesondefine SIZEOF_SSIZE_T
+
+/* The size of `void *', as computed by sizeof. */
+#mesondefine SIZEOF_VOID_P
+
+/* The size of `__int64', as computed by sizeof. */
+#mesondefine SIZEOF___INT64
+
+/* If using the C implementation of alloca, define if you know the
+ direction of stack growth for your system; otherwise it will be
+ automatically deduced at runtime.
+ STACK_DIRECTION > 0 => grows toward higher addresses
+ STACK_DIRECTION < 0 => grows toward lower addresses
+ STACK_DIRECTION = 0 => direction of growth unknown */
+#mesondefine STACK_DIRECTION
+
+/* Number of arguments to statfs() */
+#mesondefine STATFS_ARGS
+
+/* Define to 1 if you have the ANSI C header files. */
+#mesondefine STDC_HEADERS
+
+/* Use no threads */
+/* #undef THREADS_NONE */
+
+/* Use pthreads */
+#mesondefine THREADS_POSIX
+
+/* Use w32 threads */
+#mesondefine THREADS_WIN32
+
+/* Using GNU libiconv */
+#mesondefine USE_LIBICONV_GNU
+
+/* Using a native implementation of iconv in a separate library */
+#mesondefine USE_LIBICONV_NATIVE
+
+/* Define to use statfs() */
+#mesondefine USE_STATFS
+
+/* Define to use statvfs() */
+#mesondefine USE_STATVFS
+
+/* Enable extensions on AIX 3, Interix. */
+#ifndef _ALL_SOURCE
+#mesondefine _ALL_SOURCE
+#endif
+/* Enable GNU extensions on systems that have them. */
+#ifndef _GNU_SOURCE
+#mesondefine _GNU_SOURCE
+#endif
+/* Enable threading extensions on Solaris. */
+#ifndef _POSIX_PTHREAD_SEMANTICS
+#mesondefine _POSIX_PTHREAD_SEMANTICS
+#endif
+/* Enable extensions on HP NonStop. */
+#ifndef _TANDEM_SOURCE
+#mesondefine _TANDEM_SOURCE
+#endif
+/* Enable general extensions on Solaris. */
+#ifndef __EXTENSIONS__
+#mesondefine __EXTENSIONS__
+#endif
+
+/* using the system-supplied PCRE library */
+#mesondefine USE_SYSTEM_PCRE
+
+/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
+ significant byte first (like Motorola and SPARC, unlike Intel). */
+#if defined AC_APPLE_UNIVERSAL_BUILD
+# if defined __BIG_ENDIAN__
+# define WORDS_BIGENDIAN 1
+# endif
+#else
+# ifndef WORDS_BIGENDIAN
+# undef WORDS_BIGENDIAN
+# endif
+#endif
+
+/* Enable large inode numbers on Mac OS X 10.5. */
+#ifndef _DARWIN_USE_64_BIT_INODE
+# define _DARWIN_USE_64_BIT_INODE 1
+#endif
+
+/* Number of bits in a file offset, on hosts where this is settable. */
+#mesondefine _FILE_OFFSET_BITS
+
+/* defines how to decorate public symbols while building */
+#mesondefine _GLIB_EXTERN
+
+/* Define for large files, on AIX-style hosts. */
+#mesondefine _LARGE_FILES
+
+/* Target the Windows XP API */
+#mesondefine _WIN32_WINNT
+
+/* Needed to get declarations for msg_control and msg_controllen on Solaris */
+#mesondefine _XOPEN_SOURCE
+
+/* Needed to get declarations for msg_control and msg_controllen on Solaris */
+#mesondefine _XOPEN_SOURCE_EXTENDED
+
+/* Needed to get declarations for msg_control and msg_controllen on Solaris */
+#mesondefine __EXTENSIONS__
+
+/* compiler supports atomic operations */
+#mesondefine __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
+
+/* Define to empty if `const' does not conform to ANSI C. */
+#mesondefine const
+
+/* Define to long or long long if <inttypes.h> and <stdint.h> don't define. */
+#mesondefine intmax_t
+
+/* Define to empty if the C compiler doesn't support this keyword. */
+#mesondefine signed
+
+/* Define to `unsigned int' if <sys/types.h> does not define. */
+#mesondefine size_t
+
+#mesondefine EXEEXT
+
+#mesondefine MAJOR_IN_MKDEV
+#mesondefine MAJOR_IN_SYSMACROS
+#mesondefine HAVE_RTLD_LAZY
+#mesondefine HAVE_RTLD_NOW
+#mesondefine HAVE_RTLD_GLOBAL
#define GETTEXT_PACKAGE "glib20"
/* Define to the GLIB binary age */
-#define GLIB_BINARY_AGE 5304
+#define GLIB_BINARY_AGE 5305
/* Define to the GLIB interface age */
#define GLIB_INTERFACE_AGE 0
#define GLIB_MAJOR_VERSION 2
/* Define to the GLIB micro version */
-#define GLIB_MICRO_VERSION 4
+#define GLIB_MICRO_VERSION 5
/* Define to the GLIB minor version */
#define GLIB_MINOR_VERSION 53
#define PACKAGE_NAME "glib"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "glib 2.53.4"
+#define PACKAGE_STRING "glib 2.53.5"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "glib"
#define PACKAGE_URL ""
/* Define to the version of this package. */
-#define PACKAGE_VERSION "2.53.4"
+#define PACKAGE_VERSION "2.53.5"
/* define if posix_memalign() can allocate any size */
/* #undef POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS */
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2016 Free Software Foundation, Inc.
+# Copyright 1992-2017 Free Software Foundation, Inc.
-timestamp='2016-09-05'
+timestamp='2017-03-21'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2016 Free Software Foundation, Inc.
+Copyright 1992-2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
| open8 | or1k | or1knd | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle \
+ | pru \
| pyramid \
| riscv32 | riscv64 \
| rl78 | rx \
| ubicom32 \
| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
| visium \
+ | wasm32 \
| we32k \
| x86 | xc16x | xstormy16 | xtensa \
| z8k | z80)
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
+ | pru-* \
| pyramid-* \
| riscv32-* | riscv64-* \
| rl78-* | romp-* | rs6000-* | rx-* \
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
| vax-* \
| visium-* \
+ | wasm32-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \
nsr-tandem)
basic_machine=nsr-tandem
;;
+ nsx-tandem)
+ basic_machine=nsx-tandem
+ ;;
op50n-* | op60c-*)
basic_machine=hppa1.1-oki
os=-proelf
basic_machine=a29k-wrs
os=-vxworks
;;
+ wasm32)
+ basic_machine=wasm32-unknown
+ ;;
w65*)
basic_machine=w65-wdc
os=-none
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* \
+ | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
| -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
| -linux-newlib* | -linux-musl* | -linux-uclibc* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
- | -onefs* | -tirtos* | -phoenix*)
+ | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
sparc-* | *-sun)
os=-sunos4.1.1
;;
+ pru-*)
+ os=-elf
+ ;;
*-be)
os=-beos
;;
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for glib 2.53.4.
+# Generated by GNU Autoconf 2.69 for glib 2.53.5.
#
# Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=glib>.
#
# Identity of this package.
PACKAGE_NAME='glib'
PACKAGE_TARNAME='glib'
-PACKAGE_VERSION='2.53.4'
-PACKAGE_STRING='glib 2.53.4'
+PACKAGE_VERSION='2.53.5'
+PACKAGE_STRING='glib 2.53.5'
PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=glib'
PACKAGE_URL=''
# 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.4 to adapt to many kinds of systems.
+\`configure' configures glib 2.53.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of glib 2.53.4:";;
+ short | recursive ) echo "Configuration of glib 2.53.5:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-glib configure 2.53.4
+glib configure 2.53.5
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
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.4, which was
+It was created by glib $as_me 2.53.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
# Define the identity of the package.
PACKAGE='glib'
- VERSION='2.53.4'
+ VERSION='2.53.5'
# Some tools Automake needs.
GLIB_MAJOR_VERSION=2
GLIB_MINOR_VERSION=53
-GLIB_MICRO_VERSION=4
+GLIB_MICRO_VERSION=5
GLIB_INTERFACE_AGE=0
-GLIB_BINARY_AGE=5304
-GLIB_VERSION=2.53.4
+GLIB_BINARY_AGE=5305
+GLIB_VERSION=2.53.5
$as_echo "#define GLIB_MINOR_VERSION 53" >>confdefs.h
-$as_echo "#define GLIB_MICRO_VERSION 4" >>confdefs.h
+$as_echo "#define GLIB_MICRO_VERSION 5" >>confdefs.h
$as_echo "#define GLIB_INTERFACE_AGE 0" >>confdefs.h
-$as_echo "#define GLIB_BINARY_AGE 5304" >>confdefs.h
+$as_echo "#define GLIB_BINARY_AGE 5305" >>confdefs.h
# libtool versioning
LT_RELEASE=2.53
-LT_CURRENT=5304
+LT_CURRENT=5305
LT_REVISION=0
-LT_AGE=5304
+LT_AGE=5305
LT_CURRENT_MINUS_AGE=0
if test -n "$PYTHON"; then
# If the user set $PYTHON, use it and don't search something else.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.5" >&5
-$as_echo_n "checking whether $PYTHON version is >= 2.5... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.7" >&5
+$as_echo_n "checking whether $PYTHON version is >= 2.7... " >&6; }
prog="import sys
# split strings by '.' and convert to numeric. Append some zeros
# because we need at least 4 digits for the hex conversion.
# map returns an iterator in Python 3.0 and a list in 2.x
-minver = list(map(int, '2.5'.split('.'))) + [0, 0, 0]
+minver = list(map(int, '2.7'.split('.'))) + [0, 0, 0]
minverhex = 0
# xrange is not present in Python 3.0 and range returns an iterator
for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i]
else
# Otherwise, try each interpreter until we find one that satisfies
# VERSION.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.5" >&5
-$as_echo_n "checking for a Python interpreter with version >= 2.5... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.7" >&5
+$as_echo_n "checking for a Python interpreter with version >= 2.7... " >&6; }
if ${am_cv_pathless_PYTHON+:} false; then :
$as_echo_n "(cached) " >&6
else
# split strings by '.' and convert to numeric. Append some zeros
# because we need at least 4 digits for the hex conversion.
# map returns an iterator in Python 3.0 and a list in 2.x
-minver = list(map(int, '2.5'.split('.'))) + [0, 0, 0]
+minver = list(map(int, '2.7'.split('.'))) + [0, 0, 0]
minverhex = 0
# xrange is not present in Python 3.0 and range returns an iterator
for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i]
if test "$PYTHON" = :; then
- PYTHON="/usr/bin/env python2.5"
+ PYTHON="python2.7"
else
Report bugs to <bug-libtool@gnu.org>."
lt_cl_version="\
-glib config.lt 2.53.4
+glib config.lt 2.53.5
configured by $0, generated by GNU Autoconf 2.69.
Copyright (C) 2011 Free Software Foundation, Inc.
enable_compile_warnings=yes
fi
-if test "x$enable_compile_warnings" = xyes; then :
+if test "x$enable_compile_warnings" != xno; then :
for flag in \
# 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.4, which was
+This file was extended by glib $as_me 2.53.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
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.4
+glib config.status 2.53.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
m4_define([glib_major_version], [2])
m4_define([glib_minor_version], [53])
-m4_define([glib_micro_version], [4])
+m4_define([glib_micro_version], [5])
m4_define([glib_interface_age], [0])
m4_define([glib_binary_age],
[m4_eval(100 * glib_minor_version + glib_micro_version)])
if test x"$PYTHON" = xyes; then
AC_MSG_ERROR([--with-python option requires a path or program argument])
fi
-AM_PATH_PYTHON(2.5,,PYTHON="/usr/bin/env python2.5")
+AM_PATH_PYTHON(2.7,,PYTHON="python2.7")
dnl ***********************
[AS_HELP_STRING([--disable-compile-warnings],
[Don't use builtin compiler warnings])],,
enable_compile_warnings=yes)
-AS_IF([test "x$enable_compile_warnings" = xyes], [
+AS_IF([test "x$enable_compile_warnings" != xno], [
CC_CHECK_FLAGS_APPEND([GLIB_WARN_CFLAGS], [CFLAGS], [\
-Wall -Wstrict-prototypes -Werror=declaration-after-statement \
-Werror=missing-prototypes -Werror=implicit-function-declaration \
.\" Title: gapplication
.\" Author: Ryan Lortie
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: gdbus-codegen
.\" Author: David Zeuthen <zeuthen@gmail.com>
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: gdbus
.\" Author: David Zeuthen <zeuthen@gmail.com>
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: gio-querymodules
.\" Author: Alexander Larsson
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: gio
.\" Author: Matthias Clasen <mclasen@redhat.com>
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: glib-compile-resources
.\" Author: Alexander Larsson
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: glib-compile-schemas
.\" Author: Ryan Lortie
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: gresource
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
.\" Title: gsettings
.\" Author: Ryan Lortie
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GIO
.\" Language: English
emitted immediately.</p>
<p>For example, an exported D-Bus interface may queue up property
changes and emit the
-`org.freedesktop.DBus.Properties::Propert``
+<code class="literal">org.freedesktop.DBus.Properties::PropertiesChanged</code>
signal later (e.g. in an idle handler). This technique is useful
for collapsing multiple property changes into one.</p>
<div class="refsect3">
value <a class="link" href="gio-GIOError.html#G-IO-ERROR-FAILED:CAPS"><code class="literal">G_IO_ERROR_FAILED</code></a> is returned for error codes not currently
handled (but note that future GLib releases may return a more
specific value instead).</p>
+<p>As <code class="literal">errno</code> is global and may be modified by intermediate function
+calls, you should save its value as soon as the call which sets it</p>
<div class="refsect3">
<a name="g-io-error-from-errno.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
</td>
<td class="enum_member_annotations"> </td>
</tr>
+<tr>
+<td class="enum_member_name"><p><a name="G-BUS-NAME-OWNER-FLAGS-DO-NOT-QUEUE:CAPS"></a>G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE</p></td>
+<td class="enum_member_description">
+<p>If another message bus connection owns the name, immediately
+return an error from <a class="link" href="gio-Owning-Bus-Names.html#g-bus-own-name" title="g_bus_own_name ()"><code class="function">g_bus_own_name()</code></a> rather than entering the waiting queue for that name. (Since 2.54)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
</tbody>
</table></div>
</div>
<keyword type="constant" name="G_BUS_NAME_OWNER_FLAGS_NONE" link="gio-Owning-Bus-Names.html#G-BUS-NAME-OWNER-FLAGS-NONE:CAPS"/>
<keyword type="constant" name="G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT" link="gio-Owning-Bus-Names.html#G-BUS-NAME-OWNER-FLAGS-ALLOW-REPLACEMENT:CAPS"/>
<keyword type="constant" name="G_BUS_NAME_OWNER_FLAGS_REPLACE" link="gio-Owning-Bus-Names.html#G-BUS-NAME-OWNER-FLAGS-REPLACE:CAPS"/>
+ <keyword type="constant" name="G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE" link="gio-Owning-Bus-Names.html#G-BUS-NAME-OWNER-FLAGS-DO-NOT-QUEUE:CAPS"/>
<keyword type="constant" name="G_BUS_NAME_WATCHER_FLAGS_NONE" link="gio-Watching-Bus-Names.html#G-BUS-NAME-WATCHER-FLAGS-NONE:CAPS"/>
<keyword type="constant" name="G_BUS_NAME_WATCHER_FLAGS_AUTO_START" link="gio-Watching-Bus-Names.html#G-BUS-NAME-WATCHER-FLAGS-AUTO-START:CAPS"/>
<keyword type="constant" name="G_DBUS_INTERFACE_SKELETON_FLAGS_NONE" link="GDBusInterfaceSkeleton.html#G-DBUS-INTERFACE-SKELETON-FLAGS-NONE:CAPS"/>
<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.4
+ for GIO 2.53.5
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>.
--- /dev/null
+if get_option('with-docs') != 'no'
+ subdir('xml')
+
+ ignore_headers = [
+ 'fam',
+ 'fen',
+ 'gdbus-2.0',
+ 'gvdb',
+ 'inotify',
+ 'kqueue',
+ 'libasyncns',
+ 'tests',
+ 'win32',
+ 'xdgmime',
+ 'gappinfoprivate.h',
+ 'gapplicationimpl.h',
+ 'gasynchelper.h',
+ 'gcontenttypeprivate.h',
+ 'gcontextspecificgroup.h',
+ 'gcredentialsprivate.h',
+ 'gdbus-daemon-generated.h',
+ 'gdbusactiongroup-private.h',
+ 'gdbusauth.h',
+ 'gdbusauthmechanismanon.h',
+ 'gdbusauthmechanismexternal.h',
+ 'gdbusauthmechanism.h',
+ 'gdbusauthmechanismsha1.h',
+ 'gdbusdaemon.h',
+ 'gdbusprivate.h',
+ 'gdelayedsettingsbackend.h',
+ 'gdummyfile.h',
+ 'gdummyproxyresolver.h',
+ 'gdummytlsbackend.h',
+ 'gfileattribute-priv.h',
+ 'gfileinfo-priv.h',
+ 'ghttpproxy.h',
+ 'giomodule-priv.h',
+ 'gioprivate.h',
+ 'giowin32-priv.h',
+ 'glocaldirectorymonitor.h',
+ 'glocalfileenumerator.h',
+ 'glocalfile.h',
+ 'glocalfileinfo.h',
+ 'glocalfileinputstream.h',
+ 'glocalfileiostream.h',
+ 'glocalfilemonitor.h',
+ 'glocalfileoutputstream.h',
+ 'glocalvfs.h',
+ 'gmountprivate.h',
+ 'gnativevolumemonitor.h',
+ 'gnetworkingprivate.h',
+ 'gnetworkmonitorbase.h',
+ 'gnetworkmonitornetlink.h',
+ 'gnetworkmonitornm.h',
+ 'gnotificationbackend.h',
+ 'gnotification-private.h',
+ 'gpollfilemonitor.h',
+ 'gregistrysettingsbackend.h',
+ 'gresourcefile.h',
+ 'gsettingsbackendinternal.h',
+ 'gsettings-mapping.h',
+ 'gsettingsschema-internal.h',
+ 'gsocketinputstream.h',
+ 'gsocketoutputstream.h',
+ 'gsocks4aproxy.h',
+ 'gsocks4proxy.h',
+ 'gsocks5proxy.h',
+ 'gsubprocesslauncher-private.h',
+ 'gthreadedresolver.h',
+ 'gunionvolumemonitor.h',
+ 'gunixmount.h',
+ 'gunixresolver.h',
+ 'gunixvolume.h',
+ 'gunixvolumemonitor.h',
+ 'gwin32appinfo.h',
+ 'gwin32inputstream.h',
+ 'gwin32mount.h',
+ 'gwin32outputstream.h',
+ 'gwin32registrykey.h',
+ 'gwin32resolver.h',
+ 'gwin32volumemonitor.h',
+ 'thumbnail-verify.h',
+ 'xdp-dbus.h',
+ ]
+ # FIXME: More win32 headers were added to fix building gio-scan
+
+ # FIXME: ExampleAnimal docs aren't built
+
+ docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
+ version_conf = configuration_data()
+ version_conf.set('VERSION', meson.project_version())
+ configure_file(
+ input: 'version.xml.in',
+ output: 'version.xml',
+ configuration: version_conf
+ )
+
+ gnome.gtkdoc('gio',
+ main_xml : 'gio-docs.xml',
+ namespace : 'g',
+ gobject_typesfile : 'gio.types',
+ mode : 'none',
+ dependencies : [libgio_dep, libgobject_dep, libglib_dep],
+ src_dir : 'gio',
+ scan_args : [
+ '--rebuild-types',
+ '--deprecated-guards=G_DISABLE_DEPRECATED',
+ '--ignore-decorators=G_GNUC_WARN_UNUSED_RESULT',
+ '--ignore-headers=' + ' '.join(ignore_headers),
+ ],
+ content_files : [
+ 'overview.xml',
+ 'migrating-posix.xml',
+ 'migrating-gnome-vfs.xml',
+ 'migrating-gconf.xml',
+ 'migrating-gdbus.xml',
+ 'gio-querymodules.xml',
+ 'glib-compile-schemas.xml',
+ 'glib-compile-resources.xml',
+ 'gapplication.xml',
+ 'gsettings.xml',
+ 'gresource.xml',
+ 'gdbus.xml',
+ 'gdbus-codegen.xml',
+ ],
+ expand_content_files : [
+ 'overview.xml',
+ 'migrating-posix.xml',
+ 'migrating-gnome-vfs.xml',
+ 'migrating-gconf.xml',
+ 'migrating-gdbus.xml',
+ 'gdbus-codegen.xml',
+ ],
+ html_assets : [
+ 'gvfs-overview.png',
+ 'menu-example.png',
+ 'menu-model.png',
+ ],
+ fixxref_args: [
+ '--html-dir=' + docpath,
+ '--extra-dir=' + join_paths(meson.current_build_dir(), '../glib/html'),
+ '--extra-dir=' + join_paths(meson.current_build_dir(), '../gobject/html'),
+ ],
+ install: true
+ )
+endif
+
+
+if get_option('with-man') != 'no' and xsltproc.found()
+ manpages = ['gapplication', 'gio-querymodules', 'glib-compile-schemas',
+ 'glib-compile-resources', 'gsettings', 'gresource', 'gdbus',
+ 'gio', 'gdbus-codegen']
+ foreach page : manpages
+ custom_target(page + '-man',
+ input: page + '.xml',
+ output: page + '.1',
+ command: xsltproc_command,
+ install: true,
+ install_dir: man1_dir)
+ endforeach
+endif
--- /dev/null
+<!ENTITY package "@PACKAGE@">
+<!ENTITY package_bugreport "@PACKAGE_BUGREPORT@">
+<!ENTITY package_name "@PACKAGE_NAME@">
+<!ENTITY package_string "@PACKAGE_STRING@">
+<!ENTITY package_tarname "@PACKAGE_TARNAME@">
+<!ENTITY package_url "@PACKAGE_URL@">
+<!ENTITY package_version "@PACKAGE_VERSION@">
+<!ENTITY package_api_version "@PACKAGE_API_VERSION@">
--- /dev/null
+ent_conf = configuration_data()
+ent_conf.set('PACKAGE', 'glib')
+ent_conf.set('PACKAGE_BUGREPORT', 'https://bugzilla.gnome.org/enter_bug.cgi?product=glib')
+ent_conf.set('PACKAGE_NAME', 'glib')
+ent_conf.set('PACKAGE_STRING', 'glib')
+ent_conf.set('PACKAGE_TARNAME', 'glib')
+ent_conf.set('PACKAGE_URL', 'FIXME')
+ent_conf.set('PACKAGE_VERSION', glib_version)
+ent_conf.set('PACKAGE_API_VERSION', glib_api_version)
+configure_file(
+ input: 'gtkdocentities.ent.in',
+ output: 'gtkdocentities.ent',
+ configuration: ent_conf
+)
.\" Title: glib-gettextize
.\" Author: Owen Taylor
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GLib
.\" Language: English
.\" Title: gtester-report
.\" Author: Tim Janik
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GLib
.\" Language: English
.\" Title: gtester
.\" Author: Tim Janik
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GLib
.\" Language: English
of the codepage.</p>
<p>A solution to this is to use <a class="link" href="glib-Windows-Compatibility-Functions.html#g-win32-get-command-line" title="g_win32_get_command_line ()"><code class="function">g_win32_get_command_line()</code></a> and
<a class="link" href="glib-Commandline-option-parser.html#g-option-context-parse-strv" title="g_option_context_parse_strv ()"><code class="function">g_option_context_parse_strv()</code></a> which will properly handle full Unicode
-filenames. If you are using <a href="../gio/GApplication.html#GApplication-struct"><span class="type">GApplication</span></a>, this is done
+filenames. If you are using <a href="../GApplication.html#GApplication-struct"><span class="type">GApplication</span></a>, this is done
automatically for you.</p>
<p>The following example shows how you can use <a class="link" href="glib-Commandline-option-parser.html#GOptionContext" title="GOptionContext"><span class="type">GOptionContext</span></a> directly
in order to correctly deal with Unicode filenames on Windows:</p>
to <code class="function">main()</code>.
See <a class="link" href="glib-Windows-Compatibility-Functions.html#g-win32-get-command-line" title="g_win32_get_command_line ()"><code class="function">g_win32_get_command_line()</code></a> for a solution.</p>
<p>This function is useful if you are trying to use <a class="link" href="glib-Commandline-option-parser.html#GOptionContext" title="GOptionContext"><span class="type">GOptionContext</span></a> with
-<a href="../gio/GApplication.html#GApplication-struct"><span class="type">GApplication</span></a>.</p>
+<a href="../GApplication.html#GApplication-struct"><span class="type">GApplication</span></a>.</p>
<div class="refsect3">
<a name="g-option-context-parse-strv.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
16
17
18
-19</pre></td>
+19
+20
+21</pre></td>
<td class="listing_code"><pre class="programlisting">gint
<span class="function">foo_open_file</span> <span class="gtkdoc opt">(</span>GError <span class="gtkdoc opt">**</span>error<span class="gtkdoc opt">)</span>
<span class="gtkdoc opt">{</span>
gint fd<span class="gtkdoc opt">;</span>
+ <span class="gtkdoc kwb">int</span> saved_errno<span class="gtkdoc opt">;</span>
fd <span class="gtkdoc opt">=</span> <span class="function">open</span> <span class="gtkdoc opt">(</span><span class="string">"file.txt"</span><span class="gtkdoc opt">,</span> O_RDONLY<span class="gtkdoc opt">);</span>
+ saved_errno <span class="gtkdoc opt">=</span> errno<span class="gtkdoc opt">;</span>
<span class="keyword">if</span> <span class="gtkdoc opt">(</span>fd <span class="gtkdoc opt"><</span> <span class="number">0</span><span class="gtkdoc opt">)</span>
<span class="gtkdoc opt">{</span>
FOO_ERROR<span class="gtkdoc opt">,</span> <span class="gtkdoc slc">// error domain</span>
FOO_ERROR_BLAH<span class="gtkdoc opt">,</span> <span class="gtkdoc slc">// error code</span>
<span class="string">"Failed to open file: %s"</span><span class="gtkdoc opt">,</span> <span class="gtkdoc slc">// error message format string</span>
- <span class="function"><a href="glib-String-Utility-Functions.html#g-strerror">g_strerror</a></span> <span class="gtkdoc opt">(</span>errno<span class="gtkdoc opt">));</span>
+ <span class="function"><a href="glib-String-Utility-Functions.html#g-strerror">g_strerror</a></span> <span class="gtkdoc opt">(</span>saved_errno<span class="gtkdoc opt">));</span>
<span class="keyword">return</span> <span class="gtkdoc opt">-</span><span class="number">1</span><span class="gtkdoc opt">;</span>
<span class="gtkdoc opt">}</span>
<span class="keyword">else</span>
<p><a class="link" href="glib-Error-Reporting.html#GError" title="struct GError"><span class="type">GError</span></a> has disadvantages though: it requires a memory allocation, and
formatting the error message string has a performance overhead. This makes it
unsuitable for use in retry loops where errors are a common case, rather than
-being unusual. For example, using <a href="../gio/gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> means hitting these
+being unusual. For example, using <a href="../gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> means hitting these
overheads in the normal control flow. String formatting overhead can be
eliminated by using <a class="link" href="glib-Error-Reporting.html#g-set-error-literal" title="g_set_error_literal ()"><code class="function">g_set_error_literal()</code></a> in some cases.</p>
<p>These performance issues can be compounded if a function wraps the <a href="glib-Error-Reporting.html#GError"><span class="type">GErrors</span></a>
<p><a class="link" href="glib-GVariant.html#GVariant" title="GVariant"><span class="type">GVariant</span></a> is largely compatible with D-Bus. Almost all types of
<a class="link" href="glib-GVariant.html#GVariant" title="GVariant"><span class="type">GVariant</span></a> instances can be sent over D-Bus. See <a class="link" href="glib-GVariantType.html#GVariantType" title="GVariantType"><span class="type">GVariantType</span></a> for
exceptions. (However, <a class="link" href="glib-GVariant.html#GVariant" title="GVariant"><span class="type">GVariant</span></a>'s serialisation format is not the same
-as the serialisation format of a D-Bus message body: use <a href="../gio/GDBusMessage.html#GDBusMessage-struct"><span class="type">GDBusMessage</span></a>,
+as the serialisation format of a D-Bus message body: use <a href="../GDBusMessage.html#GDBusMessage-struct"><span class="type">GDBusMessage</span></a>,
in the gio library, for those.)</p>
<p>For space-efficiency, the <a class="link" href="glib-GVariant.html#GVariant" title="GVariant"><span class="type">GVariant</span></a> serialisation format does not
automatically include the variant's length, type or endianness,
check fails then a <a class="link" href="glib-Message-Logging.html#g-critical" title="g_critical()"><code class="function">g_critical()</code></a> is printed and <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> is returned.</p>
<p>This function is meant to be used by functions that wish to provide
varargs accessors to <a class="link" href="glib-GVariant.html#GVariant" title="GVariant"><span class="type">GVariant</span></a> values of uncertain values (eg:
-<a class="link" href="glib-GVariant.html#g-variant-lookup" title="g_variant_lookup ()"><code class="function">g_variant_lookup()</code></a> or <a href="../gio/GMenuModel.html#g-menu-model-get-item-attribute"><code class="function">g_menu_model_get_item_attribute()</code></a>).</p>
+<a class="link" href="glib-GVariant.html#g-variant-lookup" title="g_variant_lookup ()"><code class="function">g_variant_lookup()</code></a> or <a href="../GMenuModel.html#g-menu-model-get-item-attribute"><code class="function">g_menu_model_get_item_attribute()</code></a>).</p>
<div class="refsect3">
<a name="g-variant-check-format-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<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>
-<p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></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>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<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 length=length][<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][<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>
<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 length=length][<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][<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>
the string.</p>
<p>The <a class="link" href="glib-Quarks.html#GQuark" title="GQuark"><span class="type">GQuark</span></a> methods are quicker, since the strings have to be
converted to <a href="glib-Quarks.html#GQuark"><span class="type">GQuarks</span></a> anyway.</p>
-<p>Data lists are used for associating arbitrary data with <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObjects</span></a>,
-using <a href="../gobject/gobject-The-Base-Object-Type.html#g-object-set-data"><code class="function">g_object_set_data()</code></a> and related functions.</p>
+<p>Data lists are used for associating arbitrary data with <a href="../gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObjects</span></a>,
+using <a href="../gobject-The-Base-Object-Type.html#g-object-set-data"><code class="function">g_object_set_data()</code></a> and related functions.</p>
<p>To create a datalist, use <a class="link" href="glib-Keyed-Data-Lists.html#g-datalist-init" title="g_datalist_init ()"><code class="function">g_datalist_init()</code></a>.</p>
<p>To add data elements to a datalist use <a class="link" href="glib-Keyed-Data-Lists.html#g-datalist-id-set-data" title="g_datalist_id_set_data()"><code class="function">g_datalist_id_set_data()</code></a>,
<a class="link" href="glib-Keyed-Data-Lists.html#g-datalist-id-set-data-full" title="g_datalist_id_set_data_full ()"><code class="function">g_datalist_id_set_data_full()</code></a>, <a class="link" href="glib-Keyed-Data-Lists.html#g-datalist-set-data" title="g_datalist_set_data()"><code class="function">g_datalist_set_data()</code></a> and
to keep a small number of boolean flags in an object with
a data list without using any additional space. It is
not generally useful except in circumstances where space
-is very tight. (It is used in the base <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> type, for
+is very tight. (It is used in the base <a href="../gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> type, for
example.)</p>
<div class="refsect3">
<a name="g-datalist-set-flags.parameters"></a><h4>Parameters</h4>
<td class="listing_code"><pre class="programlisting">GObject <span class="gtkdoc opt">*</span>
<span class="function">create_object</span> <span class="gtkdoc opt">(</span><span class="gtkdoc kwb">void</span><span class="gtkdoc opt">)</span>
<span class="gtkdoc opt">{</span>
- <span class="function"><a href="glib-Miscellaneous-Macros.html#g-autoptr">g_autoptr</a></span><span class="gtkdoc opt">(</span>GObject<span class="gtkdoc opt">)</span> obj <span class="gtkdoc opt">=</span> <span class="function"><a href="../gobject/gobject-The-Base-Object-Type.html#g-object-new">g_object_new</a></span> <span class="gtkdoc opt">(</span>G_TYPE_OBJECT<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="glib-Miscellaneous-Macros.html#g-autoptr">g_autoptr</a></span><span class="gtkdoc opt">(</span>GObject<span class="gtkdoc opt">)</span> obj <span class="gtkdoc opt">=</span> <span class="function"><a href="../gobject-The-Base-Object-Type.html#g-object-new">g_object_new</a></span> <span class="gtkdoc opt">(</span>G_TYPE_OBJECT<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
<span class="keyword">if</span> <span class="gtkdoc opt">(</span>early_error_case<span class="gtkdoc opt">)</span>
<span class="keyword">return</span> NULL<span class="gtkdoc opt">;</span>
<td class="listing_code"><pre class="programlisting">gboolean
<span class="function">get_object</span> <span class="gtkdoc opt">(</span>GObject <span class="gtkdoc opt">**</span>obj_out<span class="gtkdoc opt">)</span>
<span class="gtkdoc opt">{</span>
- <span class="function"><a href="glib-Miscellaneous-Macros.html#g-autoptr">g_autoptr</a></span><span class="gtkdoc opt">(</span>GObject<span class="gtkdoc opt">)</span> obj <span class="gtkdoc opt">=</span> <span class="function"><a href="../gobject/gobject-The-Base-Object-Type.html#g-object-new">g_object_new</a></span> <span class="gtkdoc opt">(</span>G_TYPE_OBJECT<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="glib-Miscellaneous-Macros.html#g-autoptr">g_autoptr</a></span><span class="gtkdoc opt">(</span>GObject<span class="gtkdoc opt">)</span> obj <span class="gtkdoc opt">=</span> <span class="function"><a href="../gobject-The-Base-Object-Type.html#g-object-new">g_object_new</a></span> <span class="gtkdoc opt">(</span>G_TYPE_OBJECT<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
<span class="keyword">if</span> <span class="gtkdoc opt">(</span>early_error_case<span class="gtkdoc opt">)</span>
<span class="keyword">return</span> FALSE<span class="gtkdoc opt">;</span>
<pre class="programlisting">#define G_LOG_DOMAIN ((gchar*) 0)
</pre>
<p>Defines the log domain.</p>
-<p>For applications, this is typically left as the default <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
-(or "") domain. Libraries should define this so that any messages
+<p>Libraries should define this so that any messages
which they log can be differentiated from messages from other
libraries and application code. But be careful not to define
it in any public header files.</p>
</div>
<p></p>
+<p>Applications can choose to leave it as the default <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> (or "")
+domain. However, defining the domain offers the same advantages as
+above.</p>
</div>
<hr>
<div class="refsect2">
g_get_prgname (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Gets the name of the program. This name should not be localized,
in contrast to <a class="link" href="glib-Miscellaneous-Utility-Functions.html#g-get-application-name" title="g_get_application_name ()"><code class="function">g_get_application_name()</code></a>.</p>
-<p>If you are using <a href="../gio/GApplication.html#GApplication-struct"><span class="type">GApplication</span></a> the program name is set in
-<a href="../gio/GApplication.html#g-application-run"><code class="function">g_application_run()</code></a>. In case of GDK or GTK+ it is set in
+<p>If you are using <a href="../GApplication.html#GApplication-struct"><span class="type">GApplication</span></a> the program name is set in
+<a href="../GApplication.html#g-application-run"><code class="function">g_application_run()</code></a>. In case of GDK or GTK+ it is set in
<code class="function">gdk_init()</code>, which is called by <a href="../gtk4/gtk4-General.html#gtk-init"><code class="function">gtk_init()</code></a> and the
<span class="type">“startup”</span> handler. The program name is found by
taking the last component of <em class="parameter"><code>argv</code></em>
g_set_prgname (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *prgname</code></em>);</pre>
<p>Sets the name of the program. This name should not be localized,
in contrast to <a class="link" href="glib-Miscellaneous-Utility-Functions.html#g-set-application-name" title="g_set_application_name ()"><code class="function">g_set_application_name()</code></a>.</p>
-<p>If you are using <a href="../gio/GApplication.html#GApplication-struct"><span class="type">GApplication</span></a> the program name is set in
-<a href="../gio/GApplication.html#g-application-run"><code class="function">g_application_run()</code></a>. In case of GDK or GTK+ it is set in
+<p>If you are using <a href="../GApplication.html#GApplication-struct"><span class="type">GApplication</span></a> the program name is set in
+<a href="../GApplication.html#g-application-run"><code class="function">g_application_run()</code></a>. In case of GDK or GTK+ it is set in
<code class="function">gdk_init()</code>, which is called by <a href="../gtk4/gtk4-General.html#gtk-init"><code class="function">gtk_init()</code></a> and the
<span class="type">“startup”</span> handler. The program name is found by
taking the last component of <em class="parameter"><code>argv</code></em>
and asynchronous variants (<a class="link" href="glib-Spawning-Processes.html#g-spawn-async" title="g_spawn_async ()"><code class="function">g_spawn_async()</code></a>, <a class="link" href="glib-Spawning-Processes.html#g-spawn-async-with-pipes" title="g_spawn_async_with_pipes ()"><code class="function">g_spawn_async_with_pipes()</code></a>),
as well as convenience variants that take a complete shell-like
commandline (<a class="link" href="glib-Spawning-Processes.html#g-spawn-command-line-sync" title="g_spawn_command_line_sync ()"><code class="function">g_spawn_command_line_sync()</code></a>, <a class="link" href="glib-Spawning-Processes.html#g-spawn-command-line-async" title="g_spawn_command_line_async ()"><code class="function">g_spawn_command_line_async()</code></a>).</p>
-<p>See <a href="../gio/GSubprocess.html#GSubprocess-struct"><span class="type">GSubprocess</span></a> in GIO for a higher-level API that provides
+<p>See <a href="../GSubprocess.html#GSubprocess-struct"><span class="type">GSubprocess</span></a> in GIO for a higher-level API that provides
stream interfaces for communication with child processes.</p>
<p>An example of using <a class="link" href="glib-Spawning-Processes.html#g-spawn-async-with-pipes" title="g_spawn_async_with_pipes ()"><code class="function">g_spawn_async_with_pipes()</code></a>:</p>
<div class="informalexample">
<p>If <em class="parameter"><code>child_pid</code></em>
is not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> and an error does not occur then the returned
process reference must be closed using <a class="link" href="glib-Spawning-Processes.html#g-spawn-close-pid" title="g_spawn_close_pid ()"><code class="function">g_spawn_close_pid()</code></a>.</p>
-<p>If you are writing a GTK+ application, and the program you
-are spawning is a graphical application, too, then you may
-want to use <code class="function">gdk_spawn_on_screen_with_pipes()</code> instead to ensure that
-the spawned program opens its windows on the right screen.</p>
+<p>If you are writing a GTK+ application, and the program you are spawning is a
+graphical application too, then to ensure that the spawned program opens its
+windows on the right screen, you may want to use <a href="../gdk4/gdk4-Application-launching.html#GdkAppLaunchContext-struct"><span class="type">GdkAppLaunchContext</span></a>,
+<span class="type">GAppLaunchcontext</span>, or set the <code class="literal">DISPLAY</code> environment variable.</p>
<div class="refsect3">
<a name="g-spawn-async-with-pipes.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
simply calls the <a class="link" href="glib-Spawning-Processes.html#g-spawn-async-with-pipes" title="g_spawn_async_with_pipes ()"><code class="function">g_spawn_async_with_pipes()</code></a> without any pipes.</p>
<p>You should call <a class="link" href="glib-Spawning-Processes.html#g-spawn-close-pid" title="g_spawn_close_pid ()"><code class="function">g_spawn_close_pid()</code></a> on the returned child process
reference when you don't need it any more.</p>
-<p>If you are writing a GTK+ application, and the program you are
-spawning is a graphical application, too, then you may want to
-use <code class="function">gdk_spawn_on_screen()</code> instead to ensure that the spawned program
-opens its windows on the right screen.</p>
+<p>If you are writing a GTK+ application, and the program you are spawning is a
+graphical application too, then to ensure that the spawned program opens its
+windows on the right screen, you may want to use <a href="../gdk4/gdk4-Application-launching.html#GdkAppLaunchContext-struct"><span class="type">GdkAppLaunchContext</span></a>,
+<span class="type">GAppLaunchcontext</span>, or set the <code class="literal">DISPLAY</code> environment variable.</p>
<p>Note that the returned <em class="parameter"><code>child_pid</code></em>
on Windows is a handle to the child
process and not its identifier. Process handles and process identifiers
UTF-8 encoding, and the pointer is guaranteed to remain valid for
the lifetime of the process.</p>
<p>Note that the string may be translated according to the current locale.</p>
-<p>The value of <code class="literal">errno</code> will not be changed by this function.</p>
+<p>The value of <code class="literal">errno</code> will not be changed by this function. However, it may
+be changed by intermediate function calls, so you should save its value
+as soon as the call returns:</p>
+<div class="informalexample">
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
+ <tbody>
+ <tr>
+ <td class="listing_lines" align="right"><pre>1
+2
+3
+4
+5
+6</pre></td>
+ <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">int</span> saved_errno<span class="gtkdoc opt">;</span>
+
+ret <span class="gtkdoc opt">=</span> <span class="function">read</span> <span class="gtkdoc opt">(</span>blah<span class="gtkdoc opt">);</span>
+saved_errno <span class="gtkdoc opt">=</span> errno<span class="gtkdoc opt">;</span>
+
+<span class="function"><a href="glib-String-Utility-Functions.html#g-strerror">g_strerror</a></span> <span class="gtkdoc opt">(</span>saved_errno<span class="gtkdoc opt">);</span></pre></td>
+ </tr>
+ </tbody>
+ </table>
+</div>
+
+<p></p>
<div class="refsect3">
<a name="g-strerror.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<span class="function">my_object_fixture_tear_down</span> <span class="gtkdoc opt">(</span>MyObjectFixture <span class="gtkdoc opt">*</span>fixture<span class="gtkdoc opt">,</span>
gconstpointer user_data<span class="gtkdoc opt">)</span>
<span class="gtkdoc opt">{</span>
- <span class="function"><a href="../gobject/gobject-The-Base-Object-Type.html#g-clear-object">g_clear_object</a></span> <span class="gtkdoc opt">(&</span>fixture<span class="gtkdoc opt">-></span>helper<span class="gtkdoc opt">);</span>
- <span class="function"><a href="../gobject/gobject-The-Base-Object-Type.html#g-clear-object">g_clear_object</a></span> <span class="gtkdoc opt">(&</span>fixture<span class="gtkdoc opt">-></span>obj<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="../gobject-The-Base-Object-Type.html#g-clear-object">g_clear_object</a></span> <span class="gtkdoc opt">(&</span>fixture<span class="gtkdoc opt">-></span>helper<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="../gobject-The-Base-Object-Type.html#g-clear-object">g_clear_object</a></span> <span class="gtkdoc opt">(&</span>fixture<span class="gtkdoc opt">-></span>obj<span class="gtkdoc opt">);</span>
<span class="gtkdoc opt">}</span>
<span class="gtkdoc kwb">static void</span>
<div class="refsect2">
<a name="g-test-queue-unref"></a><h3>g_test_queue_unref()</h3>
<pre class="programlisting">#define g_test_queue_unref(gobject)</pre>
-<p>Enqueue an object to be released with <a href="../gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a> during
+<p>Enqueue an object to be released with <a href="../gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a> during
the next teardown phase. This is equivalent to calling
-<a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()"><code class="function">g_test_queue_destroy()</code></a> with a destroy callback of <a href="../gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
+<a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()"><code class="function">g_test_queue_destroy()</code></a> with a destroy callback of <a href="../gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
<div class="refsect3">
<a name="g-test-queue-unref.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
started while the non-default context is active.</p>
<p>Beware that libraries that predate this function may not correctly
handle being used from a thread with a thread-default context. Eg,
-see <a href="../gio/GFile.html#g-file-supports-thread-contexts"><code class="function">g_file_supports_thread_contexts()</code></a>.</p>
+see <a href="../GFile.html#g-file-supports-thread-contexts"><code class="function">g_file_supports_thread_contexts()</code></a>.</p>
<div class="refsect3">
<a name="g-main-context-push-thread-default.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<a name="GSourceDummyMarshal"></a><h3>GSourceDummyMarshal ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GSourceDummyMarshal<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>This is just a placeholder for <a href="../gobject/gobject-Closures.html#GClosureMarshal"><span class="type">GClosureMarshal</span></a>,
+<p>This is just a placeholder for <a href="../gobject-Closures.html#GClosureMarshal"><span class="type">GClosureMarshal</span></a>,
which cannot be used here for dependency reasons.</p>
</div>
<hr>
<span class="keyword">if</span> <span class="gtkdoc opt">(</span>self<span class="gtkdoc opt">-></span>idle_id<span class="gtkdoc opt">)</span>
<span class="function"><a href="glib-The-Main-Event-Loop.html#g-source-remove">g_source_remove</a></span> <span class="gtkdoc opt">(</span>self<span class="gtkdoc opt">-></span>idle_id<span class="gtkdoc opt">);</span>
- <span class="function"><a href="../gobject/gobject-The-Base-Object-Type.html#G-OBJECT-CLASS:CAPS">G_OBJECT_CLASS</a></span> <span class="gtkdoc opt">(</span>parent_class<span class="gtkdoc opt">)-></span><span class="function">finalize</span> <span class="gtkdoc opt">(</span>object<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="../gobject-The-Base-Object-Type.html#G-OBJECT-CLASS:CAPS">G_OBJECT_CLASS</a></span> <span class="gtkdoc opt">(</span>parent_class<span class="gtkdoc opt">)-></span><span class="function">finalize</span> <span class="gtkdoc opt">(</span>object<span class="gtkdoc opt">);</span>
<span class="gtkdoc opt">}</span></pre></td>
</tr>
</tbody>
its own prepare/check functions indicate that it is ready.)</p>
<p>If you don't need <em class="parameter"><code>child_source</code></em>
to do anything on its own when it
-triggers, you can call <a href="../gobject/gobject-Closures.html#g-source-set-dummy-callback"><code class="function">g_source_set_dummy_callback()</code></a> on it to set a
+triggers, you can call <a href="../gobject-Closures.html#g-source-set-dummy-callback"><code class="function">g_source_set_dummy_callback()</code></a> on it to set a
callback that does nothing (except return <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if appropriate).</p>
<p><em class="parameter"><code>source</code></em>
will hold a reference on <em class="parameter"><code>child_source</code></em>
threads. The two notable exceptions from this rule are <a class="link" href="glib-The-Main-Event-Loop.html#GMainLoop" title="GMainLoop"><span class="type">GMainLoop</span></a>
and <a class="link" href="glib-Asynchronous-Queues.html#GAsyncQueue" title="GAsyncQueue"><span class="type">GAsyncQueue</span></a>, which are thread-safe and need no further
application-level locking to be accessed from multiple threads.
-Most refcounting functions such as <a href="../gobject/gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> are also thread-safe.</p>
+Most refcounting functions such as <a href="../gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> are also thread-safe.</p>
<p>A common use for <a href="glib-Threads.html#GThread"><span class="type">GThreads</span></a> is to move a long-running blocking operation out
of the main thread and into a worker thread. For GLib functions, such as
single GIO operations, this is not necessary, and complicates the code.
Instead, the <code class="literal">…<code class="function">_async()</code></code> version of the function should be used from the main
thread, eliminating the need for locking and synchronisation between multiple
threads. If an operation does need to be moved to a worker thread, consider
-using <a href="../gio/GTask.html#g-task-run-in-thread"><code class="function">g_task_run_in_thread()</code></a>, or a <a class="link" href="glib-Thread-Pools.html#GThreadPool" title="struct GThreadPool"><span class="type">GThreadPool</span></a>. <a class="link" href="glib-Thread-Pools.html#GThreadPool" title="struct GThreadPool"><span class="type">GThreadPool</span></a> is often a
+using <a href="../GTask.html#g-task-run-in-thread"><code class="function">g_task_run_in_thread()</code></a>, or a <a class="link" href="glib-Thread-Pools.html#GThreadPool" title="struct GThreadPool"><span class="type">GThreadPool</span></a>. <a class="link" href="glib-Thread-Pools.html#GThreadPool" title="struct GThreadPool"><span class="type">GThreadPool</span></a> is often a
better choice than <a class="link" href="glib-Threads.html#GThread" title="GThread"><span class="type">GThread</span></a>, as it handles thread reuse and task queueing;
-<a href="../gio/GTask.html#GTask-struct"><span class="type">GTask</span></a> uses this internally.</p>
+<a href="../GTask.html#GTask-struct"><span class="type">GTask</span></a> uses this internally.</p>
<p>However, if multiple blocking operations need to be performed in sequence,
-and it is not possible to use <a href="../gio/GTask.html#GTask-struct"><span class="type">GTask</span></a> for them, moving them to a worker thread
+and it is not possible to use <a href="../GTask.html#GTask-struct"><span class="type">GTask</span></a> for them, moving them to a worker thread
can clarify the code.</p>
</div>
<div class="refsect1">
error message is always generated via <a class="link" href="glib-String-Utility-Functions.html#g-strerror" title="g_strerror ()"><code class="function">g_strerror()</code></a>.</p>
<p>It is expected that most code will not look at <code class="literal">errno</code> from these APIs.
Important cases where one would want to differentiate between errors are
-already covered by existing cross-platform GLib API, such as e.g. <a href="../gio/GFile.html#GFile-struct"><span class="type">GFile</span></a>
+already covered by existing cross-platform GLib API, such as e.g. <a href="../GFile.html#GFile-struct"><span class="type">GFile</span></a>
wrapping <code class="literal">ENOENT</code>. However, it is provided for completeness, at least.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GLIB-MICRO-VERSION:CAPS"></a><h3>GLIB_MICRO_VERSION</h3>
-<pre class="programlisting">#define GLIB_MICRO_VERSION 4
+<pre class="programlisting">#define GLIB_MICRO_VERSION 5
</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
<code class="function">GetCommandLineW()</code> and convert it to the GLib filename encoding (which
is UTF-8 on Windows).</p>
<p>The strings returned by this function are suitable for use with
-functions such as <a class="link" href="glib-File-Utilities.html#g-open" title="g_open ()"><code class="function">g_open()</code></a> and <a href="../gio/GFile.html#g-file-new-for-commandline-arg"><code class="function">g_file_new_for_commandline_arg()</code></a> but
+functions such as <a class="link" href="glib-File-Utilities.html#g-open" title="g_open ()"><code class="function">g_open()</code></a> and <a href="../GFile.html#g-file-new-for-commandline-arg"><code class="function">g_file_new_for_commandline_arg()</code></a> but
are not suitable for use with <a class="link" href="glib-Commandline-option-parser.html#g-option-context-parse" title="g_option_context_parse ()"><code class="function">g_option_context_parse()</code></a>, which assumes
that its input will be in the system codepage. The return value is
suitable for use with <a class="link" href="glib-Commandline-option-parser.html#g-option-context-parse-strv" title="g_option_context_parse_strv ()"><code class="function">g_option_context_parse_strv()</code></a>, however, which
<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.4
+ for GLib 2.53.5
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>.
--- /dev/null
+if get_option('with-docs') != 'no'
+ subdir('xml')
+
+ ignore_headers = [
+ 'gallocator.h',
+ 'gdatasetprivate.h',
+ 'glibintl.h',
+ 'gbsearcharray.h',
+ 'glib-private.h',
+ 'gmoduleconf.h',
+ 'gthreadprivate.h',
+ 'gunibreak.h',
+ 'gunicomp.h',
+ 'gunidecomp.h',
+ 'gunichartables.h',
+ 'glib_probes.h',
+ 'glib_trace.h',
+ 'libcharset.h',
+ 'gdebug.h',
+ 'gprintfint.h',
+ 'gmirroringtable.h',
+ 'gscripttable.h',
+ 'glib-mirroring-tab',
+ 'gnulib',
+ 'pcre',
+ 'update-pcre',
+ 'gbytesprivate.h',
+ 'gvariant-internal.h',
+ 'gvariant-serialiser.h',
+ 'gvariant-core.h',
+ 'gvarianttypeinfo.h',
+ 'gwakeup.h',
+ 'gtranslit-data.h',
+ 'glib-init.h',
+ 'gconstructor.h',
+ 'valgrind.h',
+ ]
+
+ docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
+ version_conf = configuration_data()
+ version_conf.set('GLIB_VERSION', meson.project_version())
+ configure_file(
+ input: 'version.xml.in',
+ output: 'version.xml',
+ configuration: version_conf
+ )
+
+ gnome.gtkdoc('glib',
+ main_xml : 'glib-docs.xml',
+ namespace : 'g',
+ mode : 'none',
+ src_dir : [ 'glib', 'gmodule' ],
+ dependencies : libglib_dep,
+ scan_args : [
+ '--rebuild-types',
+ '--deprecated-guards=G_DISABLE_DEPRECATED',
+ '--ignore-decorators=GLIB_VAR|G_GNUC_WARN_UNUSED_RESULT',
+ '--ignore-headers=' + ' '.join(ignore_headers),
+ ],
+ content_files : [
+ 'cross.xml',
+ 'running.xml',
+ 'building.xml',
+ 'changes.xml',
+ 'compiling.xml',
+ 'programming.xml',
+ 'resources.xml',
+ 'regex-syntax.xml',
+ 'glib-gettextize.xml',
+ 'gtester.xml',
+ 'gtester-report.xml',
+ 'gvariant-varargs.xml',
+ 'gvariant-text.xml',
+ ],
+ expand_content_files : [
+ 'compiling.xml',
+ ],
+ html_assets : [
+ 'file-name-encodings.png',
+ 'mainloop-states.gif',
+ 'Sorted_binary_tree_breadth-first_traversal.svg',
+ 'Sorted_binary_tree_inorder.svg',
+ 'Sorted_binary_tree_postorder.svg',
+ 'Sorted_binary_tree_preorder.svg',
+ ],
+ fixxref_args: [
+ '--html-dir=' + docpath,
+ # TODO: gobject/gio extra dirs
+ ],
+ install: true)
+endif
+
+if get_option('with-man') != 'no' and xsltproc.found()
+ manpages = ['glib-gettextize', 'gtester', 'gtester-report']
+ foreach page : manpages
+ custom_target(page + '-man',
+ input: page + '.xml',
+ output: page + '.1',
+ command: xsltproc_command,
+ install: true,
+ install_dir: man1_dir)
+ endforeach
+endif
--- /dev/null
+<!ENTITY package "@PACKAGE@">
+<!ENTITY package_bugreport "@PACKAGE_BUGREPORT@">
+<!ENTITY package_name "@PACKAGE_NAME@">
+<!ENTITY package_string "@PACKAGE_STRING@">
+<!ENTITY package_tarname "@PACKAGE_TARNAME@">
+<!ENTITY package_url "@PACKAGE_URL@">
+<!ENTITY package_version "@PACKAGE_VERSION@">
+<!ENTITY package_api_version "@PACKAGE_API_VERSION@">
--- /dev/null
+ent_conf = configuration_data()
+ent_conf.set('PACKAGE', 'glib')
+ent_conf.set('PACKAGE_BUGREPORT', 'https://bugzilla.gnome.org/enter_bug.cgi?product=glib')
+ent_conf.set('PACKAGE_NAME', 'glib')
+ent_conf.set('PACKAGE_STRING', 'glib')
+ent_conf.set('PACKAGE_TARNAME', 'glib')
+ent_conf.set('PACKAGE_URL', 'FIXME')
+ent_conf.set('PACKAGE_VERSION', glib_version)
+ent_conf.set('PACKAGE_API_VERSION', glib_api_version)
+configure_file(
+ input: 'gtkdocentities.ent.in',
+ output: 'gtkdocentities.ent',
+ configuration: ent_conf
+)
.\" Title: glib-genmarshal
.\" Author: Emmanuele Bassi
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GObject
.\" Language: English
.\" Title: glib-mkenums
.\" Author: Owen Taylor
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GObject
.\" Language: English
.\" Title: gobject-query
.\" Author: Tim Janik
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 07/17/2017
+.\" Date: 08/07/2017
.\" Manual: User Commands
.\" Source: GObject
.\" Language: English
<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.4
+ for GObject 2.53.5
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>.
--- /dev/null
+if get_option('with-docs') != 'no'
+ subdir('xml')
+
+ ignore_headers = [
+ 'tests',
+ 'gatomicarray.h',
+ 'gobject_trace.h',
+ 'gtype-private.h'
+ ]
+
+ docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
+ version_conf = configuration_data()
+ version_conf.set('GLIB_VERSION', meson.project_version())
+ configure_file(
+ input: 'version.xml.in',
+ output: 'version.xml',
+ configuration: version_conf
+ )
+
+ gnome.gtkdoc('gobject',
+ main_xml : 'gobject-docs.xml',
+ namespace : 'g',
+ gobject_typesfile : join_paths(meson.current_source_dir(), 'gobject.types'),
+ mode : 'none',
+ dependencies : [libgobject_dep, libglib_dep],
+ src_dir : 'gobject',
+ scan_args : [
+ '--deprecated-guards=G_DISABLE_DEPRECATED',
+ '--ignore-decorators=G_GNUC_INTERNAL|G_GNUC_WARN_UNUSED_RESULT',
+ '--ignore-headers=' + ' '.join(ignore_headers),
+ ],
+ content_files : [
+ 'glib-mkenums.xml',
+ 'glib-genmarshal.xml',
+ 'gobject-query.xml',
+ 'tut_gobject.xml',
+ 'tut_gsignal.xml',
+ 'tut_gtype.xml',
+ 'tut_howto.xml',
+ 'tut_intro.xml',
+ 'tut_tools.xml'
+ ],
+ html_assets : [
+ 'images/glue.png'
+ ],
+ fixxref_args: [
+ '--html-dir=' + docpath,
+ '--extra-dir=' + join_paths(meson.current_build_dir(), '../glib/html'),
+ ],
+ install: true
+ )
+endif
+
+if get_option('with-man') != 'no' and xsltproc.found()
+ manpages = ['glib-mkenums', 'glib-genmarshal', 'gobject-query']
+ foreach page : manpages
+ custom_target(page + '-man',
+ input: page + '.xml',
+ output: page + '.1',
+ command: xsltproc_command,
+ install: true,
+ install_dir: man1_dir)
+ endforeach
+endif
--- /dev/null
+<!ENTITY package "@PACKAGE@">
+<!ENTITY package_bugreport "@PACKAGE_BUGREPORT@">
+<!ENTITY package_name "@PACKAGE_NAME@">
+<!ENTITY package_string "@PACKAGE_STRING@">
+<!ENTITY package_tarname "@PACKAGE_TARNAME@">
+<!ENTITY package_url "@PACKAGE_URL@">
+<!ENTITY package_version "@PACKAGE_VERSION@">
+<!ENTITY package_api_version "@PACKAGE_API_VERSION@">
--- /dev/null
+ent_conf = configuration_data()
+ent_conf.set('PACKAGE', 'glib')
+ent_conf.set('PACKAGE_BUGREPORT', 'https://bugzilla.gnome.org/enter_bug.cgi?product=glib')
+ent_conf.set('PACKAGE_NAME', 'glib')
+ent_conf.set('PACKAGE_STRING', 'glib')
+ent_conf.set('PACKAGE_TARNAME', 'glib')
+ent_conf.set('PACKAGE_URL', 'FIXME')
+ent_conf.set('PACKAGE_VERSION', glib_version)
+ent_conf.set('PACKAGE_API_VERSION', glib_api_version)
+configure_file(
+ input: 'gtkdocentities.ent.in',
+ output: 'gtkdocentities.ent',
+ configuration: ent_conf
+)
--- /dev/null
+#!/usr/bin/env python3
+
+import sys
+
+if len(sys.argv) < 4:
+ print('Usage: {0} <filename> <variable> <output>')
+
+with open(sys.argv[1], 'rb') as f:
+ in_data = f.read().decode('utf-8', 'backslashreplace')
+b = [r'\x{:02x}'.format(ord(c)) for c in in_data]
+
+out_data = "const char {0}[] = \"".format(sys.argv[2])
+out_data += "".join(b) + "\";"
+
+with open(sys.argv[3], 'w') as f:
+ f.write(out_data)
}
static void
+g_application_dispose (GObject *object)
+{
+ GApplication *application = G_APPLICATION (object);
+
+ if (application->priv->impl != NULL &&
+ G_APPLICATION_GET_CLASS (application)->dbus_unregister != g_application_real_dbus_unregister)
+ {
+ static gboolean warned;
+
+ if (!warned)
+ {
+ g_warning ("Your application did not unregister from D-Bus before destruction. "
+ "Consider using g_application_run().");
+ }
+
+ warned = TRUE;
+ }
+
+ G_OBJECT_CLASS (g_application_parent_class)->dispose (object);
+}
+
+static void
g_application_finalize (GObject *object)
{
GApplication *application = G_APPLICATION (object);
GObjectClass *object_class = G_OBJECT_CLASS (class);
object_class->constructed = g_application_constructed;
+ object_class->dispose = g_application_dispose;
object_class->finalize = g_application_finalize;
object_class->get_property = g_application_get_property;
object_class->set_property = g_application_set_property;
gboolean properties_live;
gboolean primary;
gboolean busy;
+ gboolean registered;
GApplication *app;
};
if (impl->actions_id == 0)
return FALSE;
+ impl->registered = TRUE;
if (!app_class->dbus_register (impl->app,
impl->session_bus,
impl->object_path,
{
GApplicationClass *app_class = G_APPLICATION_GET_CLASS (impl->app);
- app_class->dbus_unregister (impl->app,
- impl->session_bus,
- impl->object_path);
+ if (impl->registered)
+ {
+ app_class->dbus_unregister (impl->app,
+ impl->session_bus,
+ impl->object_path);
+ impl->registered = FALSE;
+ }
if (impl->object_id)
{
GError **error)
{
GCharsetConverter *conv;
+ int errsv;
g_return_val_if_fail (G_IS_CHARSET_CONVERTER (initable), FALSE);
}
conv->iconv = g_iconv_open (conv->to, conv->from);
+ errsv = errno;
if (conv->iconv == (GIConv)-1)
{
- if (errno == EINVAL)
+ if (errsv == EINVAL)
g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
_("Conversion from character set “%s” to “%s” is not supported"),
conv->from, conv->to);
#
# Author: David Zeuthen <davidz@redhat.com>
-VERSION = "2.53.4"
+VERSION = "2.53.5"
--- /dev/null
+gdbus_codegen_files = [
+ '__init__.py',
+ 'codegen.py',
+ 'codegen_main.py',
+ 'codegen_docbook.py',
+ 'dbustypes.py',
+ 'parser.py',
+ 'utils.py',
+]
+
+gdbus_codegen_conf = configuration_data()
+gdbus_codegen_conf.set('VERSION', glib_version)
+gdbus_codegen_conf.set('PYTHON', python.path())
+
+# Install gdbus-codegen executable
+# FIXME: Set permissions
+gdbus_codegen = configure_file(input : 'gdbus-codegen.in',
+ output : 'gdbus-codegen',
+ install : true,
+ install_dir : get_option('bindir'),
+ configuration : gdbus_codegen_conf
+)
+
+codegen_dir = join_paths(get_option('datadir'), 'glib-2.0/codegen')
+
+configure_file(input : 'config.py.in',
+ output : 'config.py',
+ install : true,
+ install_dir : codegen_dir,
+ configuration : gdbus_codegen_conf
+)
+
+blank_conf = configuration_data()
+foreach f : gdbus_codegen_files
+ # Copy these into the builddir so that gdbus-codegen can be used uninstalled
+ # and then install it too so that it can be used after installation
+ configure_file(input : f, output : f,
+ install : true,
+ install_dir : codegen_dir,
+ configuration : blank_conf)
+endforeach
/*
- * Generated by gdbus-codegen 2.53.4. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.53.5. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
/*
- * Generated by gdbus-codegen 2.53.4. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.53.5. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
gchar nonce_contents[16 + 1];
size_t num_bytes_read;
FILE *f;
+ int errsv;
/* be careful to read only 16 bytes - we also check that the file is only 16 bytes long */
f = fopen (nonce_file, "rb");
+ errsv = errno;
if (f == NULL)
{
g_set_error (error,
G_IO_ERROR_INVALID_ARGUMENT,
_("Error opening nonce file “%s”: %s"),
nonce_file,
- g_strerror (errno));
+ g_strerror (errsv));
g_object_unref (ret);
ret = NULL;
goto out;
sizeof (gchar),
16 + 1,
f);
+ errsv = errno;
if (num_bytes_read != 16)
{
if (num_bytes_read == 0)
G_IO_ERROR_INVALID_ARGUMENT,
_("Error reading from nonce file “%s”: %s"),
nonce_file,
- g_strerror (errno));
+ g_strerror (errsv));
}
else
{
struct stat statbuf;
if (stat (path, &statbuf) != 0)
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error when getting information for directory “%s”: %s"),
path,
- g_strerror (errno));
+ g_strerror (errsv));
g_free (path);
path = NULL;
goto out;
if (g_mkdir (path, 0700) != 0)
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error creating directory “%s”: %s"),
path,
- g_strerror (errno));
+ g_strerror (errsv));
g_free (path);
path = NULL;
goto out;
gint ret;
guint num_tries;
guint num_create_tries;
+ int errsv;
g_return_val_if_fail (path != NULL, FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
*/
if (g_unlink (lock) != 0)
{
+ errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error deleting stale lock file “%s”: %s"),
lock,
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
_log ("Deleted stale lock file '%s'", lock);
0,
#endif
0700);
+ errsv = errno;
if (ret == -1)
{
#ifdef EEXISTS
/* EEXIST: pathname already exists and O_CREAT and O_EXCL were used. */
- if (errno == EEXISTS)
+ if (errsv == EEXISTS)
{
num_create_tries++;
if (num_create_tries < 5)
num_create_tries = num_create_tries; /* To avoid -Wunused-but-set-variable */
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error creating lock file “%s”: %s"),
lock,
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
lock = g_strdup_printf ("%s.lock", path);
if (close (lock_fd) != 0)
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error closing (unlinked) lock file “%s”: %s"),
lock,
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
if (g_unlink (lock) != 0)
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error unlinking lock file “%s”: %s"),
lock,
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
*
* For example, an exported D-Bus interface may queue up property
* changes and emit the
- * `org.freedesktop.DBus.Properties::Propert``
+ * `org.freedesktop.DBus.Properties::PropertiesChanged`
* signal later (e.g. in an idle handler). This technique is useful
* for collapsing multiple property changes into one.
*
}
else
{
- g_string_append_printf (fs, "(fstat failed: %s)", g_strerror (errno));
+ int errsv = errno;
+ g_string_append_printf (fs, "(fstat failed: %s)", g_strerror (errsv));
}
g_string_append_printf (str, "%*s fd %d: %s\n", indent, "", fds[n], fs->str);
g_string_free (fs, TRUE);
g_strcmp0 (sender_name, "org.freedesktop.DBus") != 0)
goto out;
+ if (!g_variant_is_of_type (parameters, G_VARIANT_TYPE ("(s)")))
+ {
+ g_warning ("%s signal had unexpected signature %s", signal_name,
+ g_variant_get_type_string (parameters));
+ goto out;
+ }
+
if (g_strcmp0 (signal_name, "NameLost") == 0)
{
g_variant_get (parameters, "(&s)", &name);
while (bytes_remaining > 0)
{
gssize ret;
+ int errsv;
+
ret = write (fd, server->nonce + bytes_written, bytes_remaining);
+ errsv = errno;
if (ret == -1)
{
- if (errno == EINTR)
+ if (errsv == EINTR)
goto again;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error writing nonce file at “%s”: %s"),
server->nonce_file,
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
bytes_written += ret;
char *doc_uri = NULL;
char *path = NULL;
GUnixFDList *fd_list = NULL;
- int fd, fd_in;
+ int fd, fd_in, errsv;
gboolean ret;
if (!init_document_portal ())
path = g_file_get_path (file);
fd = g_open (path, O_PATH | O_CLOEXEC);
+ errsv = errno;
if (fd == -1)
{
- g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errno),
+ g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv),
"Failed to open %s", path);
goto out;
}
default:
case G_NOTIFICATION_PRIORITY_NORMAL:
+ case G_NOTIFICATION_PRIORITY_HIGH:
return 1;
- case G_NOTIFICATION_PRIORITY_HIGH:
case G_NOTIFICATION_PRIORITY_URGENT:
return 2;
}
{
goffset source_size;
int fd_in, fd_out;
- int ret;
+ int ret, errsv;
fd_in = g_file_descriptor_based_get_fd (G_FILE_DESCRIPTOR_BASED (in));
fd_out = g_file_descriptor_based_get_fd (G_FILE_DESCRIPTOR_BASED (out));
*
* By the time we get here, *in and *out are both regular files */
ret = ioctl (fd_out, BTRFS_IOC_CLONE, fd_in);
+ errsv = errno;
if (ret < 0)
{
- if (errno == EXDEV)
+ if (errsv == EXDEV)
g_set_error_literal (error, G_IO_ERROR,
G_IO_ERROR_NOT_SUPPORTED,
_("Copy (reflink/clone) between mounts is not supported"));
- else if (errno == EINVAL)
+ else if (errsv == EINVAL)
g_set_error_literal (error, G_IO_ERROR,
G_IO_ERROR_NOT_SUPPORTED,
_("Copy (reflink/clone) is not supported or invalid"));
else
{
if (g_unlink (cachename) != 0 && errno != ENOENT)
- g_printerr ("Unable to unlink %s: %s\n", cachename, g_strerror (errno));
+ {
+ int errsv = errno;
+ g_printerr ("Unable to unlink %s: %s\n", cachename, g_strerror (errsv));
+ }
}
g_free (cachename);
p = buffer;
while (res > 0)
{
+ int errsv;
+
written = write (STDOUT_FILENO, p, res);
+ errsv = errno;
- if (written == -1 && errno != EINTR)
+ if (written == -1 && errsv != EINTR)
{
print_file_error (file, _("Error writing to stdout"));
success = FALSE;
#include <winver.h>
VS_VERSION_INFO VERSIONINFO
- FILEVERSION 2,53,4,0
- PRODUCTVERSION 2,53,4,0
+ FILEVERSION 2,53,5,0
+ PRODUCTVERSION 2,53,5,0
FILEFLAGSMASK 0
FILEFLAGS 0
FILEOS VOS__WINDOWS32
BEGIN
VALUE "CompanyName", "The GLib developer community"
VALUE "FileDescription", "Gio"
- VALUE "FileVersion", "2.53.4.0"
+ VALUE "FileVersion", "2.53.5.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.4"
+ VALUE "ProductVersion", "2.53.5"
END
END
BLOCK "VarFileInfo"
* @G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT: Allow another message bus connection to claim the name.
* @G_BUS_NAME_OWNER_FLAGS_REPLACE: If another message bus connection owns the name and have
* specified #G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT, then take the name from the other connection.
+ * @G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE: If another message bus connection owns the name, immediately
+ * return an error from g_bus_own_name() rather than entering the waiting queue for that name. (Since 2.54)
*
* Flags used in g_bus_own_name().
*
{
G_BUS_NAME_OWNER_FLAGS_NONE = 0, /*< nick=none >*/
G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT = (1<<0), /*< nick=allow-replacement >*/
- G_BUS_NAME_OWNER_FLAGS_REPLACE = (1<<1) /*< nick=replace >*/
+ G_BUS_NAME_OWNER_FLAGS_REPLACE = (1<<1), /*< nick=replace >*/
+ G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE = (1<<2) /*< nick=do-not-queue >*/
} GBusNameOwnerFlags;
+/* When adding new flags, their numeric values must currently match those
+ * used in the D-Bus Specification. */
/**
* GBusNameWatcherFlags:
{ G_BUS_NAME_OWNER_FLAGS_NONE, "G_BUS_NAME_OWNER_FLAGS_NONE", "none" },
{ G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT, "G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT", "allow-replacement" },
{ G_BUS_NAME_OWNER_FLAGS_REPLACE, "G_BUS_NAME_OWNER_FLAGS_REPLACE", "replace" },
+ { G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE, "G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE", "do-not-queue" },
{ 0, NULL, NULL }
};
GType g_define_type_id =
* handled (but note that future GLib releases may return a more
* specific value instead).
*
+ * As %errno is global and may be modified by intermediate function
+ * calls, you should save its value as soon as the call which sets it
+ * returns:
+ * |[
+ * int saved_errno;
+ *
+ * ret = read (blah);
+ * saved_errno = errno;
+ *
+ * g_io_error_from_errno (saved_errno);
+ * ]|
+ *
* Returns: #GIOErrorEnum value for the given errno.h error number.
**/
GIOErrorEnum
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "nick must be a minimum of 2 characters");
+ _("nick must be a minimum of 2 characters"));
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "invalid numeric value");
+ _("Invalid numeric value"));
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<value nick='%s'/> already specified", nick);
+ _("<value nick='%s'/> already specified"), nick);
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "value='%s' already specified", valuestr);
+ _("value='%s' already specified"), valuestr);
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "flags values must have at most 1 bit set");
+ _("flags values must have at most 1 bit set"));
return;
}
if (state->strinfo->len == 0)
g_set_error (error,
G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- "<%s> must contain at least one <value>",
+ _("<%s> must contain at least one <value>"),
state->is_flags ? "flags" : "enum");
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<%s> is not contained in "
- "the specified range", tag);
+ _("<%s> is not contained in "
+ "the specified range"), tag);
}
}
if (state->is_enum)
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<%s> is not a valid member of "
- "the specified enumerated type", tag);
+ _("<%s> is not a valid member of "
+ "the specified enumerated type"), tag);
else if (state->is_flags)
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<%s> contains string not in the "
- "specified flags type", tag);
+ _("<%s> contains string not in the "
+ "specified flags type"), tag);
else
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<%s> contains string not in "
- "<choices>", tag);
+ _("<%s> contains a string not in "
+ "<choices>"), tag);
}
}
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<range/> already specified for this key");
+ _("<range/> already specified for this key"));
return;
}
gchar *type = g_variant_type_dup_string (state->type);
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<range> not allowed for keys of type '%s'", type);
+ _("<range> not allowed for keys of type “%s”"), type);
g_free (type);
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<range> specified minimum is greater than maxmimum");
+ _("<range> specified minimum is greater than maximum"));
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "unsupported l10n category: %s", l10n);
+ _("unsupported l10n category: %s"), l10n);
return NULL;
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "l10n requested, but no "
- "gettext domain given");
+ _("l10n requested, but no "
+ "gettext domain given"));
return NULL;
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "translation context given for "
- " value without l10n enabled");
+ _("translation context given for "
+ "value without l10n enabled"));
return NULL;
}
if (!state->default_value)
{
gchar *type = g_variant_type_dup_string (state->type);
- g_prefix_error (error, "failed to parse <default> value of type '%s': ", type);
+ g_prefix_error (error, _("Failed to parse <default> value of type “%s”: "), type);
g_free (type);
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<choices> cannot be specified for keys "
- "tagged as having an enumerated type");
+ _("<choices> cannot be specified for keys "
+ "tagged as having an enumerated type"));
return;
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<choices> already specified for this key");
+ _("<choices> already specified for this key"));
return;
}
gchar *type_string = g_variant_type_dup_string (state->type);
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<choices> not allowed for keys of type '%s'",
+ _("<choices> not allowed for keys of type “%s”"),
type_string);
g_free (type_string);
return;
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<choice value='%s'/> already given", choice);
+ _("<choice value='%s'/> already given"), choice);
return;
}
if (!state->has_choices)
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- "<choices> must contain at least one <choice>");
+ _("<choices> must contain at least one <choice>"));
return;
}
if (state->has_aliases)
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<aliases> already specified for this key");
+ _("<aliases> already specified for this key"));
else if (!state->is_flags && !state->is_enum && !state->has_choices)
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<aliases> can only be specified for keys with "
- "enumerated or flags types or after <choices>");
+ _("<aliases> can only be specified for keys with "
+ "enumerated or flags types or after <choices>"));
}
static void
if (state->is_enum)
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<alias value='%s'/> given when '%s' is already "
- "a member of the enumerated type", alias, alias);
+ _("<alias value='%s'/> given when “%s” is already "
+ "a member of the enumerated type"), alias, alias);
else
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<alias value='%s'/> given when "
- "<choice value='%s'/> was already given",
+ _("<alias value='%s'/> given when "
+ "<choice value='%s'/> was already given"),
alias, alias);
}
else
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "<alias value='%s'/> already specified", alias);
+ _("<alias value='%s'/> already specified"), alias);
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- "alias target '%s' is not in %s", target,
- state->is_enum ? "enumerated type" : "<choices>");
+ state->is_enum ?
+ _("alias target “%s” is not in enumerated type") :
+ _("alias target “%s” is not in <choices>"),
+ target);
return;
}
if (!state->has_aliases)
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- "<aliases> must contain at least one <alias>");
+ _("<aliases> must contain at least one <alias>"));
return;
}
}
if (key[0] == '\0')
{
g_set_error_literal (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("empty names are not permitted"));
+ _("Empty names are not permitted"));
return FALSE;
}
if (!g_ascii_islower (key[0]))
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("invalid name '%s': names must begin "
+ _("Invalid name “%s”: names must begin "
"with a lowercase letter"), key);
return FALSE;
}
!g_ascii_isdigit (key[i]))
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("invalid name '%s': invalid character '%c'; "
- "only lowercase letters, numbers and hyphen ('-') "
- "are permitted."), key, key[i]);
+ _("Invalid name “%s”: invalid character “%c”; "
+ "only lowercase letters, numbers and hyphen (“-”) "
+ "are permitted"), key, key[i]);
return FALSE;
}
if (key[i] == '-' && key[i + 1] == '-')
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("invalid name '%s': two successive hyphens ('--') "
- "are not permitted."), key);
+ _("Invalid name “%s”: two successive hyphens (“--”) "
+ "are not permitted"), key);
return FALSE;
}
}
if (key[i - 1] == '-')
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("invalid name '%s': the last character may not be a "
- "hyphen ('-')."), key);
+ _("Invalid name “%s”: the last character may not be a "
+ "hyphen (“-”)"), key);
return FALSE;
}
if (i > 1024)
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("invalid name '%s': maximum length is 1024"), key);
+ _("Invalid name “%s”: maximum length is 1024"), key);
return FALSE;
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- _("cannot add keys to a 'list-of' schema"));
+ _("Cannot add keys to a “list-of” schema"));
return NULL;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_MISSING_ATTRIBUTE,
- _("exactly one of 'type', 'enum' or 'flags' must "
+ _("Exactly one of “type”, “enum” or “flags” must "
"be specified as an attribute to <key>"));
return NULL;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- _("invalid GVariant type string '%s'"), type_string);
+ _("Invalid GVariant type string “%s”"), type_string);
return NULL;
}
{
g_set_error_literal (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- _("<override> given but schema isn't "
+ _("<override> given but schema isn’t "
"extending anything"));
return;
}
{
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
- _("no <key name='%s'> to override"), key);
+ _("No <key name='%s'> to override"), key);
return;
}
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
_("<schema id='%s'> extends not yet existing "
- "schema '%s'"), id, extends_name);
+ "schema “%s”"), id, extends_name);
return;
}
}
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
_("<schema id='%s'> is list of not yet existing "
- "schema '%s'"), id, list_of);
+ "schema “%s”"), id, list_of);
return;
}
if (tmp->path)
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("Can not be a list of a schema with a path"));
+ _("Cannot be a list of a schema with a path"));
return;
}
}
if (extends->path)
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("Can not extend a schema with a path"));
+ _("Cannot extend a schema with a path"));
return;
}
g_set_error (error, G_MARKUP_ERROR,
G_MARKUP_ERROR_INVALID_CONTENT,
_("<schema id='%s' list-of='%s'> extends <schema "
- "id='%s' list-of='%s'> but '%s' does not "
- "extend '%s'"), id, list_of, extends_name,
+ "id='%s' list-of='%s'> but “%s” does not "
+ "extend “%s”"), id, list_of, extends_name,
extends->list_of, list_of, extends->list_of);
return;
}
if (path && !(g_str_has_prefix (path, "/") && g_str_has_suffix (path, "/")))
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("a path, if given, must begin and end with a slash"));
+ _("A path, if given, must begin and end with a slash"));
return;
}
if (path && list_of && !g_str_has_suffix (path, ":/"))
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("the path of a list must end with ':/'"));
+ _("The path of a list must end with “:/”"));
return;
}
if (path && (g_str_has_prefix (path, "/apps/") ||
g_str_has_prefix (path, "/desktop/") ||
g_str_has_prefix (path, "/system/")))
- g_printerr ("warning: Schema '%s' has path '%s'. Paths starting with "
- "'/apps/', '/desktop/' or '/system/' are deprecated.\n", id, path);
+ {
+ gchar *message = NULL;
+ message = g_strdup_printf (_("Warning: Schema “%s” has path “%s”. "
+ "Paths starting with "
+ "“/apps/”, “/desktop/” or “/system/” are deprecated."),
+ id, path);
+ g_printerr ("%s\n", message);
+ g_free (message);
+ }
state->schema_state = schema_state_new (path, gettext_domain,
extends, extends_name, list_of);
{
g_set_error_literal (error,
G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- "element <default> is required in <key>");
+ _("Element <default> is required in <key>"));
return;
}
}
if (!g_ascii_isspace (text[i]))
{
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT,
- _("text may not appear inside <%s>"),
+ _("Text may not appear inside <%s>"),
g_markup_parse_context_get_element (context));
break;
}
if (state->child_schema &&
!g_hash_table_lookup (data->schema_table, state->child_schema))
- g_printerr ("warning: undefined reference to <schema id='%s'/>\n",
- state->child_schema);
+ {
+ gchar *message = NULL;
+ message = g_strdup_printf (_("Warning: undefined reference to <schema id='%s'/>"),
+ state->child_schema);
+ g_printerr ("%s\n", message);
+ g_free (message);
+ }
}
static void
char *dirname, *globaldir;
GVfsClass *class;
GVfs *vfs;
+ int errsv;
if (g_lstat (local->filename, &file_stat) != 0)
{
- int errsv = errno;
+ errsv = errno;
g_set_io_error (error,
_("Error trashing file %s: %s"),
if (g_mkdir_with_parents (trashdir, 0700) < 0)
{
char *display_name;
- int errsv = errno;
+ errsv = errno;
display_name = g_filename_display_name (trashdir);
g_set_error (error, G_IO_ERROR,
g_free (infoname);
fd = g_open (infofile, O_CREAT | O_EXCL, 0666);
- } while (fd == -1 && errno == EEXIST);
+ errsv = errno;
+ } while (fd == -1 && errsv == EEXIST);
g_free (basename);
g_free (infodir);
if (fd == -1)
{
- int errsv = errno;
+ errsv = errno;
g_free (filesdir);
g_free (topdir);
if (g_rename (local->filename, trashfile) == -1)
{
- int errsv = errno;
+ errsv = errno;
g_unlink (infofile);
#if defined (AT_FDCWD)
if (fstatat (parent_fd, name->data, &buf, AT_SYMLINK_NOFOLLOW) != 0)
- return g_local_file_measure_size_error (state->flags, errno, name, error);
+ {
+ int errsv = errno;
+ return g_local_file_measure_size_error (state->flags, errsv, name, error);
+ }
#elif defined (HAVE_LSTAT) || !defined (G_OS_WIN32)
if (g_lstat (name->data, &buf) != 0)
- return g_local_file_measure_size_error (state->flags, errno, name, error);
+ {
+ int errsv = errno;
+ return g_local_file_measure_size_error (state->flags, errsv, name, error);
+ }
#else
{
const char *filename = (const gchar *) name->data;
if (S_ISDIR (buf.st_mode))
{
int dir_fd = -1;
+ int errsv;
if (g_cancellable_set_error_if_cancelled (state->cancellable, error))
return FALSE;
#else
dir_fd = openat (parent_fd, name->data, O_RDONLY);
#endif
+ errsv = errno;
if (dir_fd < 0)
- return g_local_file_measure_size_error (state->flags, errno, name, error);
+ return g_local_file_measure_size_error (state->flags, errsv, name, error);
#endif
if (!g_local_file_measure_size_of_contents (dir_fd, name, state, error))
char value[64];
char *value_p;
ssize_t len;
+ int errsv;
len = g_getxattr (path, xattr, value, sizeof (value)-1, follow_symlinks);
+ errsv = errno;
value_p = NULL;
if (len >= 0)
value_p = value;
- else if (len == -1 && errno == ERANGE)
+ else if (len == -1 && errsv == ERANGE)
{
len = g_getxattr (path, xattr, NULL, 0, follow_symlinks);
if (all)
{
+ int errsv;
+
list_res_size = g_listxattr (path, NULL, 0, follow_symlinks);
if (list_res_size == -1 ||
retry:
list_res_size = g_listxattr (path, list, list_size, follow_symlinks);
+ errsv = errno;
- if (list_res_size == -1 && errno == ERANGE)
+ if (list_res_size == -1 && errsv == ERANGE)
{
list_size = list_size * 2;
list = g_realloc (list, list_size);
char value[64];
char *value_p;
ssize_t len;
+ int errsv;
len = g_fgetxattr (fd, xattr, value, sizeof (value) - 1);
+ errsv = errno;
value_p = NULL;
if (len >= 0)
value_p = value;
- else if (len == -1 && errno == ERANGE)
+ else if (len == -1 && errsv == ERANGE)
{
len = g_fgetxattr (fd, xattr, NULL, 0);
if (all)
{
+ int errsv;
+
list_res_size = g_flistxattr (fd, NULL, 0);
if (list_res_size == -1 ||
retry:
list_res_size = g_flistxattr (fd, list, list_size);
+ errsv = errno;
- if (list_res_size == -1 && errno == ERANGE)
+ if (list_res_size == -1 && errsv == ERANGE)
{
list_size = list_size * 2;
list = g_realloc (list, list_size);
{
guchar sniff_buffer[4096];
gsize sniff_length;
- int fd;
+ int fd, errsv;
sniff_length = _g_unix_content_type_get_sniff_len ();
if (sniff_length > 4096)
#ifdef O_NOATIME
fd = g_open (path, O_RDONLY | O_NOATIME, 0);
- if (fd < 0 && errno == EPERM)
+ errsv = errno;
+ if (fd < 0 && errsv == EPERM)
#endif
fd = g_open (path, O_RDONLY, 0);
int open_flags;
int res;
int mode;
+ int errsv;
mode = mode_from_flags_or_info (flags, reference_info);
#ifdef O_NOFOLLOW
is_symlink = FALSE;
fd = g_open (filename, open_flags | O_NOFOLLOW, mode);
+ errsv = errno;
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
- if (fd == -1 && errno == EMLINK)
+ if (fd == -1 && errsv == EMLINK)
#elif defined(__NetBSD__)
- if (fd == -1 && errno == EFTYPE)
+ if (fd == -1 && errsv == EFTYPE)
#else
- if (fd == -1 && errno == ELOOP)
+ if (fd == -1 && errsv == ELOOP)
#endif
{
/* Could be a symlink, or it could be a regular ELOOP error,
}
#else
fd = g_open (filename, open_flags, mode);
+ errsv = errno;
/* This is racy, but we do it as soon as possible to minimize the race */
is_symlink = g_file_test (filename, G_FILE_TEST_IS_SYMLINK);
#endif
-
+
if (fd == -1)
{
- int errsv = errno;
char *display_name = g_filename_display_name (filename);
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
#else
res = fstat (fd, &original_stat);
#endif
+ errsv = errno;
- if (res != 0)
+ if (res != 0)
{
- int errsv = errno;
char *display_name = g_filename_display_name (filename);
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
int errsv = errno;
g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv),
_("Could not create network monitor: %s"),
- g_strerror (errno));
+ g_strerror (errsv));
return FALSE;
}
int errsv = errno;
g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv),
_("Could not create network monitor: %s"),
- g_strerror (errno));
+ g_strerror (errsv));
(void) g_close (sockfd, NULL);
return FALSE;
}
int errsv = errno;
g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv),
_("Could not create network monitor: %s"),
- g_strerror (errno));
+ g_strerror (errsv));
return FALSE;
}
{
char *path = NULL;
GUnixFDList *fd_list = NULL;
- int fd, fd_id;
+ int fd, fd_id, errsv;
path = g_file_get_path (file);
fd = g_open (path, O_PATH | O_CLOEXEC);
+ errsv = errno;
if (fd == -1)
{
- g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errno),
+ g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv),
"Failed to open '%s'", path);
return FALSE;
}
GDBusConnection *connection;
GTask *task;
GFile *file;
- GVariantBuilder opt_builder;
- char *token;
- char *sender;
- char *handle;
+ GVariant *opts = NULL;
int i;
guint signal_id;
if (callback)
{
+ GVariantBuilder opt_builder;
+ char *token;
+ char *sender;
+ char *handle;
+
task = g_task_new (NULL, cancellable, callback, user_data);
token = g_strdup_printf ("gio%d", g_random_int_range (0, G_MAXINT));
task,
NULL);
g_object_set_data (G_OBJECT (task), "signal-id", GINT_TO_POINTER (signal_id));
+
+ 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);
+
+ opts = g_variant_builder_end (&opt_builder);
}
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))
{
char *path = NULL;
GUnixFDList *fd_list = NULL;
- int fd, fd_id;
+ int fd, fd_id, errsv;
if (task)
g_object_set_data (G_OBJECT (task), "open-file", GINT_TO_POINTER (TRUE));
path = g_file_get_path (file);
fd = g_open (path, O_PATH | O_CLOEXEC);
+ errsv = errno;
if (fd == -1)
{
g_task_report_new_error (NULL, callback, user_data, NULL,
- G_IO_ERROR, g_io_error_from_errno (errno),
+ G_IO_ERROR, g_io_error_from_errno (errsv),
"OpenURI portal is not available");
return;
}
gxdp_open_uri_call_open_file (openuri,
parent_window ? parent_window : "",
g_variant_new ("h", fd_id),
- g_variant_builder_end (&opt_builder),
+ opts,
fd_list,
cancellable,
task ? open_call_done : NULL,
gxdp_open_uri_call_open_uri (openuri,
parent_window ? parent_window : "",
uri,
- g_variant_builder_end (&opt_builder),
+ opts,
cancellable,
task ? open_call_done : NULL,
task);
gint protocol,
GError **error)
{
- int fd;
+ int fd, errsv;
#ifdef SOCK_CLOEXEC
fd = socket (domain, type | SOCK_CLOEXEC, protocol);
+ errsv = errno;
if (fd != -1)
return fd;
/* It's possible that libc has SOCK_CLOEXEC but the kernel does not */
- if (fd < 0 && (errno == EINVAL || errno == EPROTOTYPE))
+ if (fd < 0 && (errsv == EINVAL || errsv == EPROTOTYPE))
#endif
fd = socket (domain, type, protocol);
while (TRUE)
{
+ int errsv;
result = g_poll (poll_fd, num, timeout);
- if (result != -1 || errno != EINTR)
+ errsv = errno;
+ if (result != -1 || errsv != EINTR)
break;
if (timeout != -1)
if (flags != -1)
{
+ int errsv;
flags &= (~FD_CLOEXEC);
do
- result = fcntl (fd, F_SETFD, flags);
- while (result == -1 && errno == EINTR);
+ {
+ result = fcntl (fd, F_SETFD, flags);
+ errsv = errno;
+ }
+ while (result == -1 && errsv == EINTR);
}
}
static int
dupfd_cloexec (int parent_fd)
{
- int fd;
+ int fd, errsv;
#ifdef F_DUPFD_CLOEXEC
do
- fd = fcntl (parent_fd, F_DUPFD_CLOEXEC, 3);
- while (fd == -1 && errno == EINTR);
+ {
+ fd = fcntl (parent_fd, F_DUPFD_CLOEXEC, 3);
+ errsv = errno;
+ }
+ while (fd == -1 && errsv == EINTR);
#else
/* OS X Snow Lion and earlier don't have F_DUPFD_CLOEXEC:
* https://bugzilla.gnome.org/show_bug.cgi?id=710962
*/
int result, flags;
do
- fd = fcntl (parent_fd, F_DUPFD, 3);
- while (fd == -1 && errno == EINTR);
+ {
+ fd = fcntl (parent_fd, F_DUPFD, 3);
+ errsv = errno;
+ }
+ while (fd == -1 && errsv == EINTR);
flags = fcntl (fd, F_GETFD, 0);
if (flags != -1)
{
flags |= FD_CLOEXEC;
do
- result = fcntl (fd, F_SETFD, flags);
- while (result == -1 && errno == EINTR);
+ {
+ result = fcntl (fd, F_SETFD, flags);
+ errsv = errno;
+ }
+ while (result == -1 && errsv == EINTR);
}
#endif
return fd;
ChildData *child_data = user_data;
gint i;
gint result;
+ int errsv;
/* We're on the child side now. "Rename" the file descriptors in
* child_data.fds[] to stdin/stdout/stderr.
if (child_data->fds[i] != -1 && child_data->fds[i] != i)
{
do
- result = dup2 (child_data->fds[i], i);
- while (result == -1 && errno == EINTR);
+ {
+ result = dup2 (child_data->fds[i], i);
+ errsv = errno;
+ }
+ while (result == -1 && errsv == EINTR);
}
/* Basic fd assignments we can just unset FD_CLOEXEC */
else
{
do
- result = dup2 (parent_fd, child_fd);
- while (result == -1 && errno == EINTR);
+ {
+ result = dup2 (parent_fd, child_fd);
+ errsv = errno;
+ }
+ while (result == -1 && errsv == EINTR);
(void) close (parent_fd);
}
}
{
static gsize started = 0;
static GIOChannel *channel = NULL;
+ int errsv;
if (g_once_init_enter (&started))
{
/* fork a child to clean up when we are killed */
if (pipe (pipe_fds) != 0)
{
- g_warning ("pipe() failed: %s", g_strerror (errno));
+ errsv = errno;
+ g_warning ("pipe() failed: %s", g_strerror (errsv));
g_assert_not_reached ();
}
switch (fork ())
{
case -1:
- g_warning ("fork() failed: %s", g_strerror (errno));
+ errsv = errno;
+ g_warning ("fork() failed: %s", g_strerror (errsv));
g_assert_not_reached ();
break;
&opt_val,
NULL))
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error checking if SO_PASSCRED is enabled for socket: %s"),
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
if (opt_val == 0)
TRUE,
NULL))
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error enabling SO_PASSCRED: %s"),
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
turn_off_so_passcreds = TRUE;
FALSE,
NULL))
{
+ int errsv = errno;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
_("Error while disabling SO_PASSCRED: %s"),
- g_strerror (errno));
+ g_strerror (errsv));
goto out;
}
}
*/
for (i = 0; i < n; i++)
{
+ int errsv;
+
do
- s = fcntl (fds[i], F_SETFD, FD_CLOEXEC);
- while (s < 0 && errno == EINTR);
+ {
+ s = fcntl (fds[i], F_SETFD, FD_CLOEXEC);
+ errsv = errno;
+ }
+ while (s < 0 && errsv == EINTR);
if (s < 0)
{
g_warning ("Error setting close-on-exec flag on incoming fd: %s",
- g_strerror (errno));
+ g_strerror (errsv));
return NULL;
}
}
while (1)
{
+ int errsv;
+
poll_fds[0].revents = poll_fds[1].revents = 0;
do
- poll_ret = g_poll (poll_fds, nfds, -1);
- while (poll_ret == -1 && errno == EINTR);
+ {
+ poll_ret = g_poll (poll_fds, nfds, -1);
+ errsv = errno;
+ }
+ while (poll_ret == -1 && errsv == EINTR);
if (poll_ret == -1)
{
- int errsv = errno;
-
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
_("Error reading from file descriptor: %s"),
#else
-static char *
+static const char *
get_mtab_read_file (void)
{
#ifdef _PATH_MOUNTED
#endif
struct mntent *mntent;
FILE *file;
- char *read_file;
+ const char *read_file;
GUnixMountEntry *mount_entry;
GHashTable *mounts_hash;
GList *return_list;
#endif /* HAVE_LIBMOUNT */
-static char *
+static const char *
get_mtab_monitor_file (void)
{
- static char *mountinfo_path = NULL;
+ static const char *mountinfo_path = NULL;
#ifdef HAVE_LIBMOUNT
struct stat buf;
#endif
return mountinfo_path;
#ifdef HAVE_LIBMOUNT
- /* If using libmount we'll have the logic in place to read mountinfo */
+ /* The mtab file is still used by some distros, so it has to be monitored in
+ * order to avoid races between g_unix_mounts_get and "mounts-changed" signal:
+ * https://bugzilla.gnome.org/show_bug.cgi?id=782814
+ */
+ if (mnt_has_regular_mtab (&mountinfo_path, NULL))
+ {
+ return mountinfo_path;
+ }
+
if (stat (PROC_MOUNTINFO_PATH, &buf) == 0)
{
mountinfo_path = PROC_MOUNTINFO_PATH;
G_LOCK_DEFINE_STATIC(getmntent);
-static char *
+static const char *
get_mtab_read_file (void)
{
#ifdef _PATH_MOUNTED
#endif
}
-static char *
+static const char *
get_mtab_monitor_file (void)
{
return get_mtab_read_file ();
{
struct mnttab mntent;
FILE *file;
- char *read_file;
+ const char *read_file;
GUnixMountEntry *mount_entry;
GList *return_list;
/* mntctl.h (AIX) {{{2 */
#elif defined(HAVE_SYS_MNTCTL_H) && defined(HAVE_SYS_VMOUNT_H) && defined(HAVE_SYS_VFS_H)
-static char *
+static const char *
get_mtab_monitor_file (void)
{
return NULL;
/* sys/mount.h {{{2 */
#elif (defined(HAVE_GETVFSSTAT) || defined(HAVE_GETFSSTAT)) && defined(HAVE_FSTAB_H) && defined(HAVE_SYS_MOUNT_H)
-static char *
+static const char *
get_mtab_monitor_file (void)
{
return NULL;
/* Interix {{{2 */
#elif defined(__INTERIX)
-static char *
+static const char *
get_mtab_monitor_file (void)
{
return NULL;
while (1)
{
+ int errsv;
+
poll_fds[0].revents = poll_fds[1].revents = 0;
do
- poll_ret = g_poll (poll_fds, nfds, -1);
- while (poll_ret == -1 && errno == EINTR);
+ {
+ poll_ret = g_poll (poll_fds, nfds, -1);
+ errsv = errno;
+ }
+ while (poll_ret == -1 && errsv == EINTR);
if (poll_ret == -1)
{
- int errsv = errno;
-
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
_("Error writing to file descriptor: %s"),
continue;
res = write (unix_stream->priv->fd, buffer, count);
+ errsv = errno;
if (res == -1)
{
- int errsv = errno;
-
if (errsv == EINTR || errsv == EAGAIN)
continue;
gsize buffer_len)
{
gssize result;
+ int errsv;
again:
result = read (iks->fd, buffer, buffer_len);
+ errsv = errno;
if (result < 0)
{
- if (errno == EINTR)
+ if (errsv == EINTR)
goto again;
- if (errno == EAGAIN)
+ if (errsv == EAGAIN)
return 0;
- g_error ("inotify read(): %s", g_strerror (errno));
+ g_error ("inotify read(): %s", g_strerror (errsv));
}
else if (result == 0)
g_error ("inotify unexpectedly hit eof");
gchar *new_buffer;
guint n_readable;
gint result;
+ int errsv;
/* figure out how many more bytes there are to read */
result = ioctl (iks->fd, FIONREAD, &n_readable);
+ errsv = errno;
if (result != 0)
- g_error ("inotify ioctl(FIONREAD): %s", g_strerror (errno));
+ g_error ("inotify ioctl(FIONREAD): %s", g_strerror (errsv));
if (n_readable != 0)
{
--- /dev/null
+inotify_sources = [
+ 'inotify-kernel.c',
+ 'inotify-sub.c',
+ 'inotify-path.c',
+ 'inotify-missing.c',
+ 'inotify-helper.c',
+ 'ginotifyfilemonitor.c',
+]
+
+inotify_lib = static_library('inotify',
+ sources : inotify_sources,
+ include_directories : [configinc, glibinc, gmoduleinc],
+ dependencies : [gioenumtypes_dep],
+ pic : true,
+ c_args : [ '-DHAVE_CONFIG_H', '-DG_DISABLE_DEPRECATED' ] + gio_c_args)
--- /dev/null
+kqueue_sources = [
+ 'gkqueuefilemonitor.c',
+ 'kqueue-helper.c',
+ 'kqueue-thread.c',
+ 'kqueue-sub.c',
+ 'kqueue-missing.c',
+ 'kqueue-utils.c',
+ 'kqueue-exclusions.c',
+ 'dep-list.c',
+ # gkqueuefilemonitor.h includes gio.h which includes this
+ gioenumtypes_h,
+]
+
+kqueue_lib = static_library('kqueue',
+ sources : kqueue_sources,
+ include_directories : [configinc, glibinc, gmoduleinc],
+ pic : true,
+ c_args : [ '-DHAVE_CONFIG_H', '-DG_DISABLE_DEPRECATED' ] + gio_c_args)
--- /dev/null
+gio_c_args = [
+ '-DG_LOG_DOMAIN="GLib-GIO"',
+ '-DGIO_COMPILATION',
+ '-DGIO_MODULE_DIR="@0@"'.format(glib_giomodulesdir),
+]
+
+gio_c_args += glib_hidden_visibility_args
+
+# FIXME: Install empty glib_giomodulesdir
+
+gnetworking_h_conf = configuration_data()
+
+gnetworking_h_wspiapi_include = ''
+gnetworking_h_nameser_compat_include = ''
+
+if host_system == 'windows'
+ # <wspiapi.h> in the Windows SDK and in mingw-w64 has wrappers for
+ # inline workarounds for getaddrinfo, getnameinfo and freeaddrinfo if
+ # they aren't present at run-time (on Windows 2000).
+ gnetworking_h_wspiapi_include = '#include <wspiapi.h>'
+endif
+
+if host_system.contains('android')
+ # Android does not have C_IN in public headers, we define it wherever necessary
+ if not cc.compiles('''#include <sys/types.h>
+ #include <arpa/nameser.h>
+ int qclass = C_IN;''',
+ name : 'C_IN in public headers (no arpa/nameser_compat.h needed)')
+ if cc.compiles('''#include <sys/types.h>
+ #include <arpa/nameser.h>
+ #include <arpa/nameser_compat.h>
+ int qclass = C_IN;''',
+ name : 'arpa/nameser_compat.h needed for C_IN')
+ gnetworking_h_nameser_compat_include = '#include <arpa/nameser_compat.h>'
+ else
+ error('Could not find required includes for ARPA C_IN')
+ endif
+ endif
+endif
+
+network_libs = [ ]
+network_args = [ ]
+if host_system != 'windows'
+ # res_query()
+ res_query_test = '''#include <resolv.h>
+ int main (int argc, char ** argv) {
+ return res_query("test", 0, 0, (void *)0, 0);
+ }'''
+ res_query_test_full = '''#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/nameser.h>
+ ''' + res_query_test
+ if not cc.links(res_query_test_full, name : 'res_query()')
+ if cc.links(res_query_test_full, args : '-lresolv', name : 'res_query() in -lresolv')
+ network_libs += [ cc.find_library('resolv') ]
+ network_args += [ '-lresolv' ]
+ elif cc.links(res_query_test, args : '-lbind', name : 'res_query() in -lbind')
+ network_libs += [ cc.find_library('bind') ]
+ network_args += [ '-lbind' ]
+ else
+ error('Could not find res_query()')
+ endif
+ endif
+
+ # socket()
+ socket_test = '''#include <sys/types.h>
+ #include <sys/socket.h>
+ int main (int argc, char ** argv) {
+ return socket(1, 2, 3);
+ }'''
+ if not cc.links(socket_test, name : 'socket()')
+ if cc.links(socket_test, args : '-lsocket', name : 'socket() in -lsocket')
+ network_libs += [ cc.find_library('socket') ]
+ network_args += [ '-lsocket' ]
+ else
+ error('Could not find socket()')
+ endif
+ endif
+
+ # res_init()
+ if cc.links('''#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/nameser.h>
+ #include <resolv.h>
+ int main (int argc, char ** argv) {
+ return res_init();
+ }''', args : network_args, name : 'res_init()')
+ glib_conf.set('HAVE_RES_INIT', 1)
+ endif
+
+ if cc.compiles('''#include <netinet/in.h>
+ struct ip_mreqn foo;''',
+ name : 'struct ip_mreqn')
+ glib_conf.set('HAVE_IP_MREQN', '/**/')
+ endif
+endif
+
+network_args_string = ''
+foreach arg : network_args
+ network_args_string += arg + ' '
+endforeach
+glib_conf.set('NETWORK_LIBS', network_args_string)
+
+gnetworking_h_conf.set('WSPIAPI_INCLUDE', gnetworking_h_wspiapi_include)
+gnetworking_h_conf.set('NAMESER_COMPAT_INCLUDE', gnetworking_h_nameser_compat_include)
+
+gnetworking_h = configure_file(input : 'gnetworking.h.in',
+ output : 'gnetworking.h',
+ install_dir : join_paths(get_option('includedir'), 'glib-2.0/gio'),
+ configuration : gnetworking_h_conf)
+
+gdbus_headers = files([
+ 'gdbusauthobserver.h',
+ 'gcredentials.h',
+ 'gdbusutils.h',
+ 'gdbuserror.h',
+ 'gdbusaddress.h',
+ 'gdbusconnection.h',
+ 'gdbusmessage.h',
+ 'gdbusnameowning.h',
+ 'gdbusnamewatching.h',
+ 'gdbusproxy.h',
+ 'gdbusintrospection.h',
+ 'gdbusmethodinvocation.h',
+ 'gdbusserver.h',
+ 'gdbusinterface.h',
+ 'gdbusinterfaceskeleton.h',
+ 'gdbusobject.h',
+ 'gdbusobjectskeleton.h',
+ 'gdbusobjectproxy.h',
+ 'gdbusobjectmanager.h',
+ 'gdbusobjectmanagerclient.h',
+ 'gdbusobjectmanagerserver.h',
+ 'gtestdbus.h',
+])
+
+gdbus_sources = [
+ 'gdbusutils.c',
+ 'gdbusaddress.c',
+ 'gdbusauthobserver.c',
+ 'gdbusauth.c',
+ 'gdbusauthmechanism.c',
+ 'gdbusauthmechanismanon.c',
+ 'gdbusauthmechanismexternal.c',
+ 'gdbusauthmechanismsha1.c',
+ 'gdbuserror.c',
+ 'gdbusconnection.c',
+ 'gdbusmessage.c',
+ 'gdbusnameowning.c',
+ 'gdbusnamewatching.c',
+ 'gdbusproxy.c',
+ 'gdbusprivate.c',
+ 'gdbusintrospection.c',
+ 'gdbusmethodinvocation.c',
+ 'gdbusserver.c',
+ 'gdbusinterface.c',
+ 'gdbusinterfaceskeleton.c',
+ 'gdbusobject.c',
+ 'gdbusobjectskeleton.c',
+ 'gdbusobjectproxy.c',
+ 'gdbusobjectmanager.c',
+ 'gdbusobjectmanagerclient.c',
+ 'gdbusobjectmanagerserver.c',
+ 'gtestdbus.c',
+]
+
+# Generate gdbus-codegen
+subdir('gdbus-2.0/codegen')
+
+# Generate xdp-dbus.{c,h}
+xdp_dbus_generated = custom_target('xdp-dbus',
+ input : ['org.freedesktop.portal.Documents.xml',
+ 'org.freedesktop.portal.OpenURI.xml',
+ 'org.freedesktop.portal.NetworkMonitor.xml',
+ 'org.freedesktop.portal.ProxyResolver.xml'],
+ output : ['xdp-dbus.h', 'xdp-dbus.c'],
+ command : [python, gdbus_codegen,
+ '--interface-prefix', 'org.freedesktop.portal.',
+ '--output-directory', '@OUTDIR@',
+ '--generate-c-code', 'xdp-dbus',
+ '--c-namespace', 'GXdp',
+ '--annotate', 'org.freedesktop.portal.Documents.Add()',
+ 'org.gtk.GDBus.C.UnixFD', 'true',
+ '--annotate', 'org.freedesktop.portal.Documents.AddNamed()',
+ 'org.gtk.GDBus.C.UnixFD', 'true',
+ '--annotate', 'org.freedesktop.portal.Documents.AddFull()',
+ 'org.gtk.GDBus.C.UnixFD', 'true',
+ '--annotate', 'org.freedesktop.portal.OpenURI.OpenFile()',
+ 'org.gtk.GDBus.C.UnixFD', 'true',
+ '@INPUT@'])
+
+# Generate gdbus-generated.{c,h}
+gdbus_daemon_generated = custom_target('gdbus-daemon-generated',
+ input : ['dbus-daemon.xml'],
+ output : ['gdbus-daemon-generated.h', 'gdbus-daemon-generated.c'],
+ command : [python, gdbus_codegen,
+ '--interface-prefix', 'org.',
+ '--output-directory', '@OUTDIR@',
+ '--generate-c-code', 'gdbus-daemon-generated',
+ '--c-namespace', '_G', '@INPUT@'])
+
+settings_headers = files([
+ 'gsettingsbackend.h',
+ 'gsettingsschema.h',
+ 'gsettings.h',
+])
+
+settings_sources = [
+ 'gvdb/gvdb-reader.c',
+ 'gdelayedsettingsbackend.c',
+ 'gkeyfilesettingsbackend.c',
+ 'gmemorysettingsbackend.c',
+ 'gnullsettingsbackend.c',
+ 'gsettingsbackend.c',
+ 'gsettingsschema.c',
+ 'gsettings-mapping.c',
+ 'gsettings.c',
+]
+
+if host_system == 'windows'
+ settings_sources += [ 'gregistrysettingsbackend.c' ]
+endif
+
+# FIXME:
+#if OS_COCOA
+#settings_sources += [ 'gnextstepsettingsbackend.c' ]
+#endif
+
+application_headers = files([
+ 'gapplication.h',
+ 'gapplicationcommandline.h',
+
+ 'gactiongroup.h',
+ 'gactionmap.h',
+ 'gsimpleactiongroup.h',
+ 'gremoteactiongroup.h',
+ 'gactiongroupexporter.h',
+ 'gdbusactiongroup.h',
+ 'gaction.h',
+ 'gpropertyaction.h',
+ 'gsimpleaction.h',
+
+ 'gmenumodel.h',
+ 'gmenu.h',
+ 'gmenuexporter.h',
+ 'gdbusmenumodel.h',
+ 'gnotification.h',
+])
+
+application_sources = [
+ 'gapplication.c',
+ 'gapplicationcommandline.c',
+ 'gapplicationimpl-dbus.c',
+
+ 'gactiongroup.c',
+ 'gactionmap.c',
+ 'gsimpleactiongroup.c',
+ 'gremoteactiongroup.c',
+ 'gactiongroupexporter.c',
+ 'gdbusactiongroup.c',
+ 'gaction.c',
+ 'gpropertyaction.c',
+ 'gsimpleaction.c',
+
+ 'gmenumodel.c',
+ 'gmenu.c',
+ 'gmenuexporter.c',
+ 'gdbusmenumodel.c',
+ 'gnotification.c',
+ 'gnotificationbackend.c',
+]
+
+local_sources = [
+ 'ghttpproxy.c',
+ 'glocalfile.c',
+ 'glocalfileenumerator.c',
+ 'glocalfileinfo.c',
+ 'glocalfileinputstream.c',
+ 'glocalfilemonitor.c',
+ 'glocalfileoutputstream.c',
+ 'glocalfileiostream.c',
+ 'glocalvfs.c',
+ 'gsocks4proxy.c',
+ 'gsocks4aproxy.c',
+ 'gsocks5proxy.c',
+ 'thumbnail-verify.c',
+]
+
+platform_deps = []
+internal_deps = []
+appinfo_sources = []
+contenttype_sources = []
+portal_sources = []
+unix_sources = []
+
+if host_system != 'windows'
+ unix_sources = [
+ 'gfiledescriptorbased.c',
+ 'gunixconnection.c',
+ 'gunixcredentialsmessage.c',
+ 'gunixfdlist.c',
+ 'gunixfdmessage.c',
+ 'gunixmount.c',
+ 'gunixmounts.c',
+ 'gunixsocketaddress.c',
+ 'gunixvolume.c',
+ 'gunixvolumemonitor.c',
+ 'gunixinputstream.c',
+ 'gunixoutputstream.c',
+ 'gfdonotificationbackend.c',
+ 'ggtknotificationbackend.c',
+ ]
+
+ portal_sources = [
+ 'gdocumentportal.c',
+ 'gopenuriportal.c',
+ 'gnetworkmonitorportal.c',
+ 'gproxyresolverportal.c',
+ 'gportalsupport.c',
+ 'gportalnotificationbackend.c',
+ xdp_dbus_generated
+ ]
+
+ gio_unix_include_headers = [
+ 'gfiledescriptorbased.h',
+ 'gunixconnection.h',
+ 'gunixcredentialsmessage.h',
+ 'gunixmounts.h',
+ 'gunixfdlist.h',
+ 'gunixfdmessage.h',
+ 'gunixinputstream.h',
+ 'gunixoutputstream.h',
+ 'gunixsocketaddress.h',
+ ]
+
+ if glib_have_cocoa
+ contenttype_sources += ['gosxcontenttype.c']
+ appinfo_sources += ['gosxappinfo.c']
+ if glib_have_os_x_9_or_later
+ unix_sources += ['gcocoanotificationbackend.c']
+ endif
+ else
+ contenttype_sources += ['gcontenttype.c']
+ appinfo_sources += ['gdesktopappinfo.c']
+ gio_unix_include_headers += ['gdesktopappinfo.h']
+ subdir('xdgmime')
+ internal_deps += [xdgmime_lib]
+ endif
+
+ install_headers(gio_unix_include_headers, subdir : 'gio-unix-2.0/gio')
+
+ if glib_conf.has('HAVE_NETLINK')
+ unix_sources += [
+ 'gnetworkmonitornetlink.c',
+ 'gnetworkmonitornm.c',
+ ]
+ endif
+endif
+
+# This is also used by tests/gdbus-daemon, so use files() to include the path
+gdbus_daemon_sources = [
+ files('gdbusdaemon.c'),
+ gdbus_daemon_generated,
+]
+
+win32_sources = gdbus_daemon_sources
+if host_system == 'windows'
+ appinfo_sources += ['gwin32appinfo.c']
+ contenttype_sources += ['gcontenttype-win32.c']
+ platform_deps += [cc.find_library('shlwapi'),
+ cc.find_library('dnsapi'),
+ cc.find_library('iphlpapi'),
+ winsock2]
+ win32_sources += [
+ 'gwin32registrykey.c',
+ 'gwin32mount.c',
+ 'gwin32volumemonitor.c',
+ 'gwin32inputstream.c',
+ 'gwin32outputstream.c',
+ ]
+
+ gio_win32_include_headers = [
+ 'gwin32inputstream.h',
+ 'gwin32outputstream.h',
+ ]
+ install_headers(gio_win32_include_headers, subdir : 'gio-win32-2.0/gio')
+endif
+
+gio_sources = [
+ 'gappinfo.c',
+ 'gasynchelper.c',
+ 'gasyncinitable.c',
+ 'gasyncresult.c',
+ 'gbufferedinputstream.c',
+ 'gbufferedoutputstream.c',
+ 'gbytesicon.c',
+ 'gcancellable.c',
+ 'gcharsetconverter.c',
+ 'gcontextspecificgroup.c',
+ 'gconverter.c',
+ 'gconverterinputstream.c',
+ 'gconverteroutputstream.c',
+ 'gcredentials.c',
+ 'gdatagrambased.c',
+ 'gdatainputstream.c',
+ 'gdataoutputstream.c',
+ 'gdrive.c',
+ 'gdummyfile.c',
+ 'gdummyproxyresolver.c',
+ 'gdummytlsbackend.c',
+ 'gemblem.c',
+ 'gemblemedicon.c',
+ 'gfile.c',
+ 'gfileattribute.c',
+ 'gfileenumerator.c',
+ 'gfileicon.c',
+ 'gfileinfo.c',
+ 'gfileinputstream.c',
+ 'gfilemonitor.c',
+ 'gfilenamecompleter.c',
+ 'gfileoutputstream.c',
+ 'gfileiostream.c',
+ 'gfilterinputstream.c',
+ 'gfilteroutputstream.c',
+ 'gicon.c',
+ 'ginetaddress.c',
+ 'ginetaddressmask.c',
+ 'ginetsocketaddress.c',
+ 'ginitable.c',
+ 'ginputstream.c',
+ 'gioerror.c',
+ 'giomodule.c',
+ 'gioscheduler.c',
+ 'giostream.c',
+ 'gloadableicon.c',
+ 'gmount.c',
+ 'gmemoryinputstream.c',
+ 'gmemoryoutputstream.c',
+ 'gmountoperation.c',
+ 'gnativevolumemonitor.c',
+ 'gnativesocketaddress.c',
+ 'gnetworkaddress.c',
+ 'gnetworking.c',
+ 'gnetworkmonitor.c',
+ 'gnetworkmonitorbase.c',
+ 'gnetworkservice.c',
+ 'goutputstream.c',
+ 'gpermission.c',
+ 'gpollableinputstream.c',
+ 'gpollableoutputstream.c',
+ 'gpollableutils.c',
+ 'gpollfilemonitor.c',
+ 'gproxy.c',
+ 'gproxyaddress.c',
+ 'gproxyaddressenumerator.c',
+ 'gproxyresolver.c',
+ 'gresolver.c',
+ 'gresource.c',
+ 'gresourcefile.c',
+ 'gseekable.c',
+ 'gsimpleasyncresult.c',
+ 'gsimpleiostream.c',
+ 'gsimplepermission.c',
+ 'gsocket.c',
+ 'gsocketaddress.c',
+ 'gsocketaddressenumerator.c',
+ 'gsocketclient.c',
+ 'gsocketconnectable.c',
+ 'gsocketconnection.c',
+ 'gsocketcontrolmessage.c',
+ 'gsocketinputstream.c',
+ 'gsocketlistener.c',
+ 'gsocketoutputstream.c',
+ 'gsubprocesslauncher.c',
+ 'gsubprocess.c',
+ 'gsocketservice.c',
+ 'gsrvtarget.c',
+ 'gsimpleproxyresolver.c',
+ 'gtask.c',
+ 'gtcpconnection.c',
+ 'gtcpwrapperconnection.c',
+ 'gthreadedsocketservice.c',
+ 'gthemedicon.c',
+ 'gthreadedresolver.c',
+ 'gthreadedresolver.h',
+ 'gtlsbackend.c',
+ 'gtlscertificate.c',
+ 'gtlsclientconnection.c',
+ 'gtlsconnection.c',
+ 'gtlsdatabase.c',
+ 'gtlsfiledatabase.c',
+ 'gtlsinteraction.c',
+ 'gtlspassword.c',
+ 'gtlsserverconnection.c',
+ 'gdtlsconnection.c',
+ 'gdtlsclientconnection.c',
+ 'gdtlsserverconnection.c',
+ 'gunionvolumemonitor.c',
+ 'gvfs.c',
+ 'gvolume.c',
+ 'gvolumemonitor.c',
+ 'gzlibcompressor.c',
+ 'gzlibdecompressor.c',
+ 'glistmodel.c',
+ 'gliststore.c',
+]
+
+gio_sources += appinfo_sources
+gio_sources += contenttype_sources
+gio_sources += unix_sources
+gio_sources += win32_sources
+gio_sources += application_sources
+gio_sources += settings_sources
+gio_sources += gdbus_sources
+gio_sources += portal_sources
+gio_sources += local_sources
+
+MISSING_STUFF = '''
+if OS_WIN32_AND_DLL_COMPILATION
+gio_win32_res = gio-win32-res.o
+gio_win32_res_ldflag = -Wl,$(gio_win32_res)
+endif
+
+gio-win32-res.o: gio.rc
+ '$(WINDRES) gio.rc $@
+
+# This is read by gobject-introspection/misc/ and gtk-doc
+gio-public-headers.txt: Makefile
+ '$(AM_V_GEN) echo $(gioinclude_HEADERS) $(giowin32include_HEADERS) $(giounixinclude_HEADERS) > $@.tmp && mv $@.tmp $@
+
+gio.def: libgio-2.0.la
+ '$(AM_V_GEN) dumpbin.exe -exports .libs/libgio-2.0-0.dll | awk 'BEGIN { print "EXPORTS" } / +[[:digit:]]+ +[[:xdigit:]]+ +[[:xdigit:]]+/{ print $$4 }' > gio.def.tmp && mv gio.def.tmp gio.def
+
+gio-2.0.lib: libgio-2.0.la gio.def
+ '$(AM_V_GEN) lib.exe -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgio-2.0-$(LT_CURRENT_MINUS_AGE).dll -def:$(builddir)/gio.def -out:$@
+'''
+
+gio_headers = files([
+ 'gappinfo.h',
+ 'gasyncinitable.h',
+ 'gasyncresult.h',
+ 'gbufferedinputstream.h',
+ 'gbufferedoutputstream.h',
+ 'gbytesicon.h',
+ 'gcancellable.h',
+ 'gcontenttype.h',
+ 'gcharsetconverter.h',
+ 'gconverter.h',
+ 'gconverterinputstream.h',
+ 'gconverteroutputstream.h',
+ 'gdatagrambased.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',
+ 'gfileiostream.h',
+ 'gfilterinputstream.h',
+ 'gfilteroutputstream.h',
+ 'gicon.h',
+ 'ginetaddress.h',
+ 'ginetaddressmask.h',
+ 'ginetsocketaddress.h',
+ 'ginputstream.h',
+ 'ginitable.h',
+ 'gio.h',
+ 'gio-autocleanups.h',
+ 'giotypes.h',
+ 'gioenums.h',
+ 'gioerror.h',
+ 'giomodule.h',
+ 'gioscheduler.h',
+ 'giostream.h',
+ 'gloadableicon.h',
+ 'gmount.h',
+ 'gmemoryinputstream.h',
+ 'gmemoryoutputstream.h',
+ 'gmountoperation.h',
+ 'gnativevolumemonitor.h',
+ 'gnetworkaddress.h',
+ 'gnetworkmonitor.h',
+ 'gnetworkservice.h',
+ 'goutputstream.h',
+ 'gpermission.h',
+ 'gpollableinputstream.h',
+ 'gpollableoutputstream.h',
+ 'gpollableutils.h',
+ 'gproxyaddress.h',
+ 'gproxy.h',
+ 'gproxyaddressenumerator.h',
+ 'gproxyresolver.h',
+ 'gresolver.h',
+ 'gresource.h',
+ 'gseekable.h',
+ 'gsimpleasyncresult.h',
+ 'gsimpleiostream.h',
+ 'gsimplepermission.h',
+ 'gsocket.h',
+ 'gsocketaddress.h',
+ 'gsocketaddressenumerator.h',
+ 'gsocketclient.h',
+ 'gsocketconnectable.h',
+ 'gsocketconnection.h',
+ 'gsocketcontrolmessage.h',
+ 'gsocketlistener.h',
+ 'gsocketservice.h',
+ 'gsrvtarget.h',
+ 'gsimpleproxyresolver.h',
+ 'gtask.h',
+ 'gsubprocess.h',
+ 'gsubprocesslauncher.h',
+ 'gtcpconnection.h',
+ 'gtcpwrapperconnection.h',
+ 'gthreadedsocketservice.h',
+ 'gthemedicon.h',
+ 'gtlsbackend.h',
+ 'gtlscertificate.h',
+ 'gtlsclientconnection.h',
+ 'gtlsconnection.h',
+ 'gtlsdatabase.h',
+ 'gtlsfiledatabase.h',
+ 'gtlsinteraction.h',
+ 'gtlspassword.h',
+ 'gtlsserverconnection.h',
+ 'gdtlsconnection.h',
+ 'gdtlsclientconnection.h',
+ 'gdtlsserverconnection.h',
+ 'gvfs.h',
+ 'gvolume.h',
+ 'gvolumemonitor.h',
+ 'gzlibcompressor.h',
+ 'gzlibdecompressor.h',
+ 'glistmodel.h',
+ 'gliststore.h',
+])
+
+gio_headers += application_headers
+gio_headers += settings_headers
+gio_headers += gdbus_headers
+install_headers(gio_headers, subdir : 'glib-2.0/gio/')
+
+# We can't use gnome.mkenums() because the GNOME module looks for glib-mkenums
+# in PATH, which means you can't bootstrap glib with its own glib-mkenums.
+gioenumtypes_h = custom_target('gioenumtypes_h',
+ output : 'gioenumtypes.h',
+ capture : true,
+ input : gio_headers,
+ install : true,
+ install_dir : join_paths(get_option('includedir'), 'glib-2.0/gio'),
+ command : [python, glib_mkenums,
+ '--template', files('gioenumtypes.h.template'),
+ '@INPUT@', gnetworking_h])
+
+gioenumtypes_c = custom_target('gioenumtypes_c',
+ output : 'gioenumtypes.c',
+ capture : true,
+ input : gio_headers,
+ depends : [gioenumtypes_h],
+ command : [python, glib_mkenums,
+ '--template', files('gioenumtypes.c.template'),
+ '@INPUT@', gnetworking_h])
+
+gioenumtypes_dep = declare_dependency(sources : [gioenumtypes_h])
+
+# inotify
+if glib_conf.has('HAVE_SYS_INOTIFY_H') and have_func_inotify_init1
+ subdir('inotify')
+ internal_deps += [ inotify_lib ]
+endif
+
+# kevent
+if have_func_kqueue and have_func_kevent
+ subdir('kqueue')
+ internal_deps += [ kqueue_lib ]
+endif
+
+if host_system == 'windows'
+ subdir('win32')
+ internal_deps += [ giowin32_lib ]
+endif
+
+# FIXME: FAM support
+#if HAVE_FAM
+# subdir('fam')
+#endif
+
+install_data([
+ 'completion/gapplication',
+ 'completion/gdbus',
+ 'completion/gsettings',
+ 'completion/gresource'
+],
+install_dir: join_paths(get_option('datadir'), 'bash-completion/completions'))
+
+if enable_dtrace
+ gio_dtrace_obj = dtrace_obj_gen.process('gio_probes.d')
+ gio_dtrace_hdr = dtrace_hdr_gen.process('gio_probes.d')
+else
+ gio_dtrace_obj = []
+ gio_dtrace_hdr = []
+endif
+
+libgio = shared_library('gio-2.0',
+ gioenumtypes_h, gioenumtypes_c, gnetworking_h, gio_sources,
+ gio_dtrace_hdr, gio_dtrace_obj,
+ version : library_version,
+ soversion : soversion,
+ install : true,
+ include_directories : [configinc, gioinc],
+ link_with : internal_deps,
+ #libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS)',
+ # '$(gio_win32_res_ldflag)',
+ #$(SELINUX_LIBS)
+ #$(XATTR_LIBS)
+ dependencies : [libintl, libz_dep, libdl_dep, libmount_dep, libglib_dep,
+ libgobject_dep, libgmodule_dep] + platform_deps + network_libs,
+ c_args : gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+)
+
+libgio_dep = declare_dependency(link_with : libgio,
+ dependencies : [gioenumtypes_dep],
+ # We sadly need to export configinc here because everyone includes <gio/*.h>
+ include_directories : [configinc, gioinc])
+
+# Dependencies used by executables below
+libelf = dependency('libelf', version : '>= 0.8.12', required : false)
+if libelf.found()
+ glib_conf.set('HAVE_LIBELF', 1)
+endif
+
+gconstructor_as_data_h = custom_target('gconstructor_as_data.h',
+ input : ['data-to-c.py', files('../glib/gconstructor.h')],
+ output : ['gconstructor_as_data.h'],
+ command : [python, '@INPUT0@', '@INPUT1@', 'gconstructor_code', '@OUTPUT@'])
+
+# Several installed executables
+gio_tool_sources = [
+ 'gio-tool.c',
+ 'gio-tool.h',
+ 'gio-tool-cat.c',
+ 'gio-tool-copy.c',
+ 'gio-tool-info.c',
+ 'gio-tool-list.c',
+ 'gio-tool-mime.c',
+ 'gio-tool-mkdir.c',
+ 'gio-tool-monitor.c',
+ 'gio-tool-mount.c',
+ 'gio-tool-move.c',
+ 'gio-tool-open.c',
+ 'gio-tool-rename.c',
+ 'gio-tool-remove.c',
+ 'gio-tool-save.c',
+ 'gio-tool-set.c',
+ 'gio-tool-trash.c',
+ 'gio-tool-tree.c',
+]
+
+# FIXME: are all these HAVE_CONFIG_H needed/used here?
+executable('gio', gio_tool_sources,
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+
+executable('gresource', 'gresource-tool.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'],
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libelf, libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+
+executable('gio-querymodules', 'gio-querymodules.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+
+glib_compile_schemas = executable('glib-compile-schemas',
+ [gconstructor_as_data_h, 'gvdb/gvdb-builder.c', 'glib-compile-schemas.c'],
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'],
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+
+glib_compile_resources = executable('glib-compile-resources',
+ [gconstructor_as_data_h, 'gvdb/gvdb-builder.c', 'glib-compile-resources.c'],
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+
+executable('gsettings', 'gsettings-tool.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+install_data('gschema.dtd',
+ install_dir : join_paths(get_option('datadir'), 'glib-2.0/schemas'))
+
+install_data(['gschema.loc', 'gschema.its'],
+ install_dir : join_paths(get_option('datadir'), 'gettext/its'))
+
+executable('gdbus', 'gdbus-tool.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+
+if host_system != 'windows'
+ executable('gapplication', 'gapplication-tool.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ dependencies : [libintl, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
+endif
+
+if enable_systemtap
+ gio_stp = configure_file(input : 'gio.stp.in',
+ output : '@0@.stp'.format(libgio.full_path().split('/').get(-1)),
+ configuration : stp_cdata,
+ install_dir : tapset_install_dir,
+ install : true)
+endif
+
+if host_system != 'windows'
+ subdir('tests')
+endif
while (len > 0)
{
ssize_t done = write (STDOUT_FILENO, p, len);
+ int errsv = errno;
if (done == 0)
{
}
else if (done < 0)
{
- if (errno == EINTR)
+ if (errsv == EINTR)
continue;
- g_error ("%s: write: %s", ME, g_strerror (errno));
+ g_error ("%s: write: %s", ME, g_strerror (errsv));
}
else
{
--- /dev/null
+# Doing this in a subdir, so we get it in the right build de/LC_MESSAGES subdir
+# at least in cases where the build directory layout is mirrored.
+test_mo = custom_target('test.mo',
+ input : ['../../de.po'],
+ output : ['test.mo'],
+ command : [msgfmt, '-o', '@OUTPUT@', '@INPUT@'])
+
+test_mo_dir = meson.current_build_dir()
--- /dev/null
+# FIXME: set UNINSTALLED_GLIB_{SRC|BUILD}DIR=top_{src|build}dir ?
+gdbus_example_objectmanager_generated = custom_target('gdbus-example-objectmanager-generated',
+ input : ['gdbus-example-objectmanager.xml'],
+ output : ['gdbus-example-objectmanager-generated.h',
+ 'gdbus-example-objectmanager-generated.c',
+ 'gdbus-example-objectmanager-generated-org.gtk.GDBus.Example.ObjectManager.Animal.xml',
+ 'gdbus-example-objectmanager-generated-org.gtk.GDBus.Example.ObjectManager.Cat.xml'],
+ command : [python, gdbus_codegen,
+ '--interface-prefix', 'org.gtk.GDBus.Example.ObjectManager.',
+ '--c-namespace', 'Example',
+ '--c-generate-object-manager',
+ '--output-directory', '@OUTDIR@',
+ '--generate-c-code', 'gdbus-example-objectmanager-generated',
+ '--generate-docbook', 'gdbus-example-objectmanager-generated',
+ '@INPUT@'])
+
+libgdbus_example_objectmanager = shared_library('libgdbus-example-objectmanager',
+ gdbus_example_objectmanager_generated,
+ c_args : ['-DHAVE_CONFIG_H=1'] + gio_c_args,
+ dependencies : [libglib_dep, libgmodule_dep, libgobject_dep, libgio_dep],
+ install : false)
+
+libgdbus_example_objectmanager_dep = declare_dependency(sources : gdbus_example_objectmanager_generated,
+ link_with : libgdbus_example_objectmanager)
if (socketpair (AF_UNIX, SOCK_STREAM, 0, pair) < 0)
{
- g_set_error (&error, G_IO_ERROR, g_io_error_from_errno (errno),
- "%s", g_strerror (errno));
+ int errsv = errno;
+ g_set_error (&error, G_IO_ERROR, g_io_error_from_errno (errsv),
+ "%s", g_strerror (errsv));
g_assert_no_error (error);
}
do
{
+ int errsv;
+
num_read = read (fd, buf, sizeof (buf));
+ errsv = errno;
if (num_read == -1)
{
- if (errno == EAGAIN || errno == EWOULDBLOCK)
+ if (errsv == EAGAIN || errsv == EWOULDBLOCK)
continue;
g_set_error (error,
G_IO_ERROR,
- g_io_error_from_errno (errno),
+ g_io_error_from_errno (errsv),
"Failed reading %d bytes into offset %d: %s",
(gint) sizeof (buf),
(gint) str->len,
- g_strerror (errno));
+ g_strerror (errsv));
goto error;
}
else if (num_read > 0)
/* alters tmpdir in-place */
if (g_mkdtemp_full (tmpdir, 0700) == NULL)
- g_error ("g_mkdtemp_full: %s", g_strerror (errno));
+ {
+ int errsv = errno;
+ g_error ("g_mkdtemp_full: %s", g_strerror (errsv));
+ }
mock_bus_path = g_strconcat (tmpdir, "/bus", NULL);
addr = g_unix_socket_address_new (mock_bus_path);
g_assert_no_error (error);
if (g_unlink (mock_bus_path) < 0)
- g_error ("g_unlink(\"%s\"): %s", mock_bus_path, g_strerror (errno));
+ {
+ int errsv = errno;
+ g_error ("g_unlink(\"%s\"): %s", mock_bus_path, g_strerror (errsv));
+ }
if (g_rmdir (tmpdir) < 0)
- g_error ("g_rmdir(\"%s\"): %s", tmpdir, g_strerror (errno));
+ {
+ int errsv = errno;
+ g_error ("g_rmdir(\"%s\"): %s", tmpdir, g_strerror (errsv));
+ }
g_clear_object (&mock_bus);
g_clear_pointer (&mock_bus_path, g_free);
{ "missing-quotes", NULL, "*unknown keyword*" },
{ "incomplete-list", NULL, "*to follow array element*" },
{ "wrong-category", NULL, "*unsupported l10n category*" },
- { "bad-type", NULL, "*invalid GVariant type string*" },
+ { "bad-type", NULL, "*Invalid GVariant type string*" },
{ "overflow", NULL, "*out of range*" },
{ "range-wrong-type", NULL, "*<range> not allowed for keys of type*" },
{ "range-missing-min", NULL, NULL },
{ "default-out-of-range", NULL, "*<default> is not contained in the specified range*" },
{ "choices-wrong-type", NULL, "*<choices> not allowed for keys of type*" },
{ "choice-missing-value", NULL, "*element 'choice' requires attribute 'value'*" },
- { "default-not-in-choices", NULL, "*<default> contains string not in <choices>*" },
- { "array-default-not-in-choices", NULL, "*<default> contains string not in <choices>*" },
- { "bad-key", NULL, "*invalid name*" },
+ { "default-not-in-choices", NULL, "*<default> contains a string not in <choices>*" },
+ { "array-default-not-in-choices", NULL, "*<default> contains a string not in <choices>*" },
+ { "bad-key", NULL, "*Invalid name*" },
{ "invalid-path", NULL, "*must begin and end with a slash*" },
{ "bad-key", "--allow-any-name", NULL },
- { "bad-key2", NULL, "*invalid name*" },
+ { "bad-key2", NULL, "*Invalid name*" },
{ "bad-key2", "--allow-any-name", NULL },
- { "bad-key3", NULL, "*invalid name*" },
+ { "bad-key3", NULL, "*Invalid name*" },
{ "bad-key3", "--allow-any-name", NULL },
- { "bad-key4", NULL, "*invalid name*" },
+ { "bad-key4", NULL, "*Invalid name*" },
{ "bad-key4", "--allow-any-name", NULL },
- { "empty-key", NULL, "*empty names*" },
- { "empty-key", "--allow-any-name", "*empty names*" },
+ { "empty-key", NULL, "*Empty names*" },
+ { "empty-key", "--allow-any-name", "*Empty names*" },
{ "enum", NULL, NULL },
{ "enum-with-aliases", NULL, NULL },
- { "enum-with-invalid-alias", NULL, "*'banger' is not in enumerated type*" },
+ { "enum-with-invalid-alias", NULL, "*“banger” is not in enumerated type*" },
{ "enum-with-repeated-alias", NULL, "*<alias value='sausages'/> already specified*" },
{ "enum-with-repeated-nick", NULL, "*<value nick='spam'/> already specified*" },
{ "enum-with-repeated-value", NULL, "*value='1' already specified*" },
- { "enum-with-chained-alias", NULL, "*'sausages' is not in enumerated type*" },
- { "enum-with-shadow-alias", NULL, "*'mash' is already a member of the enum*" },
+ { "enum-with-chained-alias", NULL, "*“sausages” is not in enumerated type*" },
+ { "enum-with-shadow-alias", NULL, "*“mash” is already a member of the enum*" },
{ "enum-with-choice", NULL, "*<choices> cannot be specified*" },
{ "enum-with-bad-default", NULL, "*<default> is not a valid member*" },
{ "choice", NULL, NULL },
{ "choice-upside-down", NULL, NULL },
- { "bad-choice", NULL, "*<default> contains string not in <choices>*" },
- { "choice-bad", NULL, "*<default> contains string not in <choices>*" },
- { "choice-badtype", NULL, "*<choices> not allowed for keys of type 'i'*" },
+ { "bad-choice", NULL, "*<default> contains a string not in <choices>*" },
+ { "choice-bad", NULL, "*<default> contains a string not in <choices>*" },
+ { "choice-badtype", NULL, "*<choices> not allowed for keys of type “i”*" },
{ "bare-alias", NULL, "*enumerated or flags types or after <choices>*" },
{ "choice-alias", NULL, NULL },
- { "default-in-aliases", NULL, "*<default> contains string not in <choices>*" },
- { "choice-invalid-alias", NULL, "*'befor' is not in <choices>*" },
+ { "default-in-aliases", NULL, "*<default> contains a string not in <choices>*" },
+ { "choice-invalid-alias", NULL, "*“befor” is not in <choices>*" },
{ "choice-shadowed-alias", NULL, "*given when <choice value='before'/> was already*" },
{ "range", NULL, NULL },
- { "range-badtype", NULL, "*<range> not allowed for keys of type 's'*" },
+ { "range-badtype", NULL, "*<range> not allowed for keys of type “s”*" },
{ "range-low-default", NULL, "*<default> is not contained in the specified range*" },
{ "range-high-default", NULL, "*<default> is not contained in the specified range*" },
{ "range-default-low", NULL, "*<default> is not contained in the specified range*" },
{ "extend-missing", NULL, "*extends not yet existing schema*" },
{ "extend-nonlist", NULL, "*which is not a list*" },
{ "extend-self", NULL, "*not yet existing*" },
- { "extend-wrong-list-indirect", NULL, "*'y' does not extend 'x'*" },
- { "extend-wrong-list", NULL, "*'y' does not extend 'x'*" },
- { "key-in-list-indirect", NULL, "*cannot add keys to a 'list*" },
- { "key-in-list", NULL, "*cannot add keys to a 'list*" },
+ { "extend-wrong-list-indirect", NULL, "*“y” does not extend “x”*" },
+ { "extend-wrong-list", NULL, "*“y” does not extend “x”*" },
+ { "key-in-list-indirect", NULL, "*Cannot add keys to a “list*" },
+ { "key-in-list", NULL, "*Cannot add keys to a “list*" },
{ "list-of-missing", NULL, "*is list of not yet existing schema*" },
{ "extend-and-shadow", NULL, "*shadows*use <override>*" },
{ "extend-and-shadow-indirect", NULL, "*shadows*use <override>*" },
{ "override", NULL, NULL },
- { "override-missing", NULL, "*no <key name='bar'> to override*" },
+ { "override-missing", NULL, "*No <key name='bar'> to override*" },
{ "override-range-error", NULL, "*<override> is not contained in the specified range*"},
{ "override-then-key", NULL, "*shadows <key name='foo'> in <schema id='base'>*" },
{ "override-twice", NULL, "*<override name='foo'> already specified*" },
while (len > 0)
{
gssize bytes_written = write (fd, buf, len);
+ int errsv = errno;
if (bytes_written < 0)
g_error ("Failed to write to fd %d: %s",
- fd, g_strerror (errno));
+ fd, g_strerror (errsv));
buf += bytes_written;
len -= bytes_written;
}
--- /dev/null
+common_gio_tests_deps = [libglib_dep, libgmodule_dep, libgobject_dep, libgio_dep]
+
+subdir('gdbus-object-manager-example')
+
+gengiotypefuncs_prog = find_program('gengiotypefuncs.py')
+giotypefuncs_inc = custom_target(
+ 'giotypefuncs.inc',
+ output : 'giotypefuncs.inc',
+ input : gio_headers + [gioenumtypes_h] + gobject_install_headers,
+ command: [gengiotypefuncs_prog, '@OUTPUT@', '@INPUT@'])
+
+# Test programs buildable on all platforms
+gio_tests = [
+ 'appmonitor',
+ 'async-close-output-stream',
+ 'async-splice-output-stream',
+ 'buffered-input-stream',
+ 'buffered-output-stream',
+ 'cancellable',
+ 'contexts',
+ 'contenttype',
+ 'converter-stream',
+ 'credentials',
+ 'data-input-stream',
+ 'data-output-stream',
+ 'defaultvalue',
+ 'fileattributematcher',
+ 'filter-streams',
+ 'giomodule',
+ 'gsubprocess',
+ 'g-file',
+ 'g-file-info',
+ 'g-icon',
+ 'gdbus-addresses',
+ 'gdbus-message',
+ 'inet-address',
+ 'io-stream',
+ 'memory-input-stream',
+ 'memory-output-stream',
+ 'monitor',
+ 'network-address',
+ 'network-monitor',
+ 'permission',
+ 'pollable',
+ 'proxy-test',
+ 'readwrite',
+ 'simple-async-result',
+ 'simple-proxy',
+ 'sleepy-stream',
+ 'socket',
+ 'socket-listener',
+ 'socket-service',
+ 'srvtarget',
+ 'task',
+ 'vfs',
+ 'volumemonitor',
+ 'glistmodel',
+ 'testfilemonitor',
+ 'thumbnail-verification',
+]
+
+test_extra_programs = [
+ ['gdbus-connection-flush-helper'],
+ ['gdbus-testserver'],
+]
+
+test_env = [
+ 'G_TEST_SRCDIR=' + meson.current_source_dir(),
+ 'G_TEST_BUILDDIR=' + meson.current_build_dir(),
+]
+
+test_c_args = [
+ '-DHAVE_CONFIG_H=1',
+ '-DG_LOG_DOMAIN="GLib-GIO"',
+ '-DTEST_SERVICES="@0@/gio/tests/services"'.format(meson.build_root()),
+ '-DGLIB_MKENUMS="@0@"'.format(glib_mkenums),
+ '-DGLIB_COMPILE_SCHEMAS="@0@"'.format(glib_compile_schemas.full_path()),
+]
+
+# Check for libdbus1 - Optional - is only used in the GDBus test cases
+# 1.2.14 required for dbus_message_set_serial
+dbus1_dep = dependency('dbus-1', required : false, version : '>= 1.2.14')
+if dbus1_dep.found()
+ glib_conf.set('HAVE_DBUS1', 1)
+
+ exe = executable('gdbus-serialization',
+ 'gdbus-serialization.c', 'gdbus-tests.c',
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps + [dbus1_dep])
+ test('gdbus-serialization', exe, env : test_env)
+endif
+
+# Test programs buildable on UNIX only
+if host_machine.system() != 'windows'
+ gio_tests += [
+ 'file',
+ 'gdbus-peer',
+ 'gdbus-peer-object-manager',
+ 'live-g-file',
+ 'socket-address',
+ 'stream-rw_all',
+ 'unix-fd',
+ 'unix-streams',
+ 'gschema-compile',
+ ]
+
+ # Uninstalled because of the check-for-executable logic in DesktopAppInfo
+ # unable to find the installed executable
+ if not glib_have_cocoa
+ gio_tests += [
+ 'appinfo',
+ 'desktop-app-info',
+ ]
+ endif
+
+ test_extra_programs += [
+ ['basic-application'],
+ ['dbus-launch'],
+ ['appinfo-test'],
+ ]
+
+ if not glib_have_cocoa
+ test_extra_programs += [['apps']]
+ gio_tests += ['mimeapps']
+ endif
+
+ # Test programs that need to bring up a session bus (requires dbus-daemon)
+ have_dbus_daemon = find_program('dbus-daemon', required : false).found()
+ if have_dbus_daemon
+ # Generate gdbus-test-codegen-generated.{c,h}
+ gdbus_test_codegen_generated = custom_target('gdbus-test-codegen-generated',
+ input : ['test-codegen.xml'],
+ output : ['gdbus-test-codegen-generated.h',
+ 'gdbus-test-codegen-generated.c'],
+ command : [python, gdbus_codegen,
+ '--interface-prefix', 'org.project.',
+ '--output-directory', '@OUTDIR@',
+ '--generate-c-code', 'gdbus-test-codegen-generated',
+ '--c-generate-object-manager',
+ '--c-namespace', 'Foo_iGen',
+ '--generate-docbook', 'gdbus-test-codegen-generated-doc',
+ '--annotate', 'org.project.Bar', 'Key1', 'Value1',
+ '--annotate', 'org.project.Bar', 'org.gtk.GDBus.Internal', 'Value2',
+ '--annotate', 'org.project.Bar.HelloWorld()', 'Key3', 'Value3',
+ '--annotate', 'org.project.Bar::TestSignal', 'Key4', 'Value4',
+ '--annotate', 'org.project.Bar:ay', 'Key5', 'Value5',
+ '--annotate', 'org.project.Bar.TestPrimitiveTypes()[val_int32]', 'Key6', 'Value6',
+ '--annotate', 'org.project.Bar.TestPrimitiveTypes()[ret_uint32]', 'Key7', 'Value7',
+ '--annotate', 'org.project.Bar::TestSignal[array_of_strings]', 'Key8', 'Value8',
+ '@INPUT@'])
+
+ gio_dbus_tests = [
+ ['actions', [], []],
+ ['gdbus-auth', [], []],
+ ['gdbus-bz627724', [], []],
+ ['gdbus-close-pending', [], []],
+ ['gdbus-connection', [], []],
+ ['gdbus-connection-loss', [], []],
+ ['gdbus-connection-slow', [], []],
+ ['gdbus-error', [], []],
+ ['gdbus-exit-on-close', [], []],
+ ['gdbus-export', [], []],
+ ['gdbus-introspection', [], []],
+ ['gdbus-names', [], []],
+ ['gdbus-proxy', [], []],
+ ['gdbus-proxy-threads', [], [dbus1_dep]],
+ ['gdbus-proxy-well-known-name', [], []],
+ ['gdbus-test-codegen', [gdbus_test_codegen_generated], []],
+ ['gdbus-threading', [], []],
+ ['gmenumodel', [], []],
+ ['gnotification', ['gnotification-server.c'], []],
+ ]
+
+ if not glib_have_cocoa
+ gio_dbus_tests = [['dbus-appinfo', [], []]]
+ endif
+
+ # separate loop because extra source files for each test
+ foreach dbus_test : gio_dbus_tests
+ test_name = dbus_test[0]
+ extra_src = dbus_test[1]
+ extra_deps = dbus_test[2]
+ exe = executable(test_name, '@0@.c'.format(test_name),
+ 'gdbus-sessionbus.c', 'gdbus-tests.c', extra_src,
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps + extra_deps)
+ test(test_name, exe, env : test_env)
+ endforeach
+
+ exe = executable('gdbus-test-codegen-old', 'gdbus-test-codegen.c',
+ 'gdbus-sessionbus.c', 'gdbus-tests.c', gdbus_test_codegen_generated,
+ install : false,
+ c_args : test_c_args + ['-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_36', '-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_36'],
+ dependencies : common_gio_tests_deps)
+ test('gdbus-test-codegen-old', exe, env : test_env)
+
+ # There is already a gapplication exe target in gio so need to use a
+ # different name for the unit test executable, since we can't have two
+ # targets of the same name even if in different directories
+ # (FIXME: just rename source file to gapplication-test.c)
+ if not glib_have_cocoa
+ exe = executable('gapplication-test', 'gapplication.c',
+ 'gdbus-sessionbus.c', 'gdbus-tests.c',
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps)
+ endif
+ test('gapplication', exe, env : test_env)
+
+ gio_tests += ['gdbus-unix-addresses']
+ endif # have_dbus_daemon
+
+ # This test is currently unreliable
+ executable('gdbus-overflow', 'gdbus-overflow.c',
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps)
+
+ exe = executable('gdbus-connection-flush', 'gdbus-connection-flush.c',
+ 'test-io-stream.c', 'test-pipe-unix.c',
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps)
+ test('gdbus-connection-flush', exe, env : test_env)
+
+ exe = executable('gdbus-non-socket', 'gdbus-non-socket.c',
+ 'gdbus-tests.c', 'test-io-stream.c', 'test-pipe-unix.c',
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps)
+ test('gdbus-non-socket', exe, env : test_env)
+
+ # Generate test.mo from de.po using msgfmt
+ msgfmt = find_program('msgfmt', required : false)
+ if msgfmt.found()
+ subdir('de/LC_MESSAGES')
+ # gsettings target exe already exists in gio directory
+ exe = executable('gsettings-test', 'gsettings.c', test_mo,
+ install : false,
+ c_args : test_c_args + [
+ '-DSRCDIR="@0@"'.format(meson.current_source_dir()),
+ '-DTEST_LOCALE_PATH="@0@"'.format(test_mo_dir),
+ ],
+ dependencies : common_gio_tests_deps)
+ test('gsettings', exe, env : test_env)
+ endif
+endif # unix
+
+# Test programs buildable on Windows only
+if host_machine.system() == 'windows'
+ gio_tests += ['win32-streams']
+endif
+
+if cc.get_id() != 'msvc'
+ gio_tests += [ 'autoptr' ]
+endif
+
+foreach test_name : gio_tests
+ extra_deps = []
+ srcs = ['@0@.c'.format(test_name)]
+ # conflicts with glib/tests/autoptr, can't have two targets with same name
+ if test_name == 'autoptr'
+ test_name = 'autoptr-gio'
+ elif test_name == 'defaultvalue'
+ srcs += [giotypefuncs_inc]
+ elif test_name == 'gdbus-peer'
+ # This is peer to peer so it doesn't need a session bus, so we can run
+ # it automatically as a test by default
+ extra_deps = [libgdbus_example_objectmanager_dep]
+ endif
+ exe = executable(test_name, srcs,
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps + extra_deps)
+ if test_name == 'testfilemonitor'
+ test(test_name, exe, env : test_env, timeout : 45)
+ else
+ test(test_name, exe, env : test_env)
+ endif
+endforeach
+
+uninstalled_test_extra_programs = [
+ ['gio-du'],
+ ['echo-server'],
+ ['filter-cat'],
+ ['gapplication-example-actions'],
+ ['gapplication-example-cmdline'],
+ ['gapplication-example-cmdline2'],
+ ['gapplication-example-cmdline3'],
+ ['gapplication-example-dbushooks'],
+ ['gapplication-example-open'],
+ ['gdbus-daemon', gdbus_daemon_sources],
+ ['gdbus-example-export'],
+ ['gdbus-example-own-name'],
+ ['gdbus-example-peer'],
+ ['gdbus-example-proxy-subclass'],
+ ['gdbus-example-server'],
+ ['gdbus-example-subtree'],
+ ['gdbus-example-watch-name'],
+ ['gdbus-example-watch-proxy'],
+ ['gsubprocess-testprog'],
+ ['httpd'],
+ ['proxy'],
+ ['resolver'],
+ ['send-data'],
+ ['socket-server'],
+ ['socket-client', ['gtlsconsoleinteraction.c']],
+ ['tls-certificate', ['gtesttlsbackend.c']],
+ ['tls-interaction', ['gtesttlsbackend.c']],
+ # These three are manual-run tests because they need a session bus but don't bring one up themselves
+ # FIXME: these build but don't seem to work!
+ ['gdbus-example-objectmanager-client', [], [libgdbus_example_objectmanager_dep]],
+ ['gdbus-example-objectmanager-server', [], [libgdbus_example_objectmanager_dep]],
+ ['gdbus-test-fixture', [], [libgdbus_example_objectmanager_dep]],
+]
+
+if host_machine.system() != 'windows'
+ uninstalled_test_extra_programs += [['gdbus-example-unix-fd-client']]
+endif
+
+foreach extra_program : uninstalled_test_extra_programs + test_extra_programs
+ srcs = ['@0@.c'.format(extra_program[0])]
+ if extra_program.length() > 1
+ srcs += extra_program[1]
+ endif
+ extra_deps = []
+ if extra_program.length() > 2
+ extra_deps = extra_program[2]
+ endif
+ executable(extra_program[0], srcs,
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps + extra_deps)
+endforeach
+
+if not meson.is_cross_build() or meson.has_exe_wrapper()
+
+ plugin_resources_c = custom_target('plugin-resources.c',
+ input : 'test4.gresource.xml',
+ output : 'plugin-resources.c',
+ command : [glib_compile_resources,
+ '--target=@OUTPUT@',
+ '--sourcedir=' + meson.current_source_dir(),
+ '--generate-source',
+ '--c-name', '_g_plugin',
+ '@INPUT@'])
+
+ if host_system == 'windows'
+ resource_plugin_platform_link_args = ['-no-undefined']
+ else
+ resource_plugin_platform_link_args = []
+ endif
+ shared_module ('resourceplugin', 'resourceplugin.c', plugin_resources_c,
+ link_args : ['-export-dynamic'] + resource_plugin_platform_link_args,
+ dependencies : common_gio_tests_deps)
+
+ test_gresource = custom_target('test.gresource',
+ input : 'test.gresource.xml',
+ output : 'test.gresource',
+ command : [glib_compile_resources,
+ '--target=@OUTPUT@',
+ '--sourcedir=' + meson.current_source_dir(),
+ '--sourcedir=' + meson.current_build_dir(),
+ '@INPUT@'])
+
+ test_resources2_c = custom_target('test_resources2.c',
+ input : 'test3.gresource.xml',
+ output : 'test_resources2.c',
+ command : [glib_compile_resources,
+ '--target=@OUTPUT@',
+ '--sourcedir=' + meson.current_source_dir(),
+ '--generate',
+ '--c-name', '_g_test2',
+ '--manual-register',
+ '@INPUT@'])
+
+ test_resources2_h = custom_target('test_resources2.h',
+ input : 'test3.gresource.xml',
+ output : 'test_resources2.h',
+ command : [glib_compile_resources,
+ '--target=@OUTPUT@',
+ '--sourcedir=' + meson.current_source_dir(),
+ '--generate',
+ '--c-name', '_g_test2',
+ '--manual-register',
+ '@INPUT@'])
+
+ test_resources_c = custom_target('test_resources.c',
+ input : 'test2.gresource.xml',
+ output : 'test_resources.c',
+ command : [glib_compile_resources,
+ '--target=@OUTPUT@',
+ '--sourcedir=' + meson.current_source_dir(),
+ '--generate-source',
+ '--c-name', '_g_test1',
+ '@INPUT@'])
+
+ # referenced by test.gresource.xml
+ test_generated_txt = configure_file(input : 'test1.txt',
+ output : 'test-generated.txt',
+ configuration : configuration_data(),
+ install : false)
+
+ exe = executable('resources', 'resources.c', test_gresource,
+ test_resources_c, test_resources2_c, test_resources2_h,
+ install : false,
+ c_args : test_c_args,
+ dependencies : common_gio_tests_deps)
+ test('resources', exe, env : test_env)
+endif
+
+# FIXME: subdir('services')
+subdir('modules')
libtestmodulea_la_SOURCES = test-module-a.c symbol-visibility.h
libtestmodulea_la_LIBADD = $(LDADD)
-libtestmodulea_la_LDFLAGS = $(LDFLAGS) -no-undefined -avoid-version $(rpath_hack)
+libtestmodulea_la_LDFLAGS = $(LDFLAGS) -module -no-undefined -avoid-version $(rpath_hack)
libtestmoduleb_la_SOURCES = test-module-b.c symbol-visibility.h
libtestmoduleb_la_LIBADD = $(LDADD)
-libtestmoduleb_la_LDFLAGS =$(LDFLAGS) -no-undefined -avoid-version $(rpath_hack)
+libtestmoduleb_la_LDFLAGS =$(LDFLAGS) -module -no-undefined -avoid-version $(rpath_hack)
@ENABLE_INSTALLED_TESTS_FALSE@rpath_hack = -rpath /
libtestmodulea_la_SOURCES = test-module-a.c symbol-visibility.h
libtestmodulea_la_LIBADD = $(LDADD)
-libtestmodulea_la_LDFLAGS = $(LDFLAGS) -no-undefined -avoid-version $(rpath_hack)
+libtestmodulea_la_LDFLAGS = $(LDFLAGS) -module -no-undefined -avoid-version $(rpath_hack)
libtestmoduleb_la_SOURCES = test-module-b.c symbol-visibility.h
libtestmoduleb_la_LIBADD = $(LDADD)
-libtestmoduleb_la_LDFLAGS = $(LDFLAGS) -no-undefined -avoid-version $(rpath_hack)
+libtestmoduleb_la_LDFLAGS = $(LDFLAGS) -module -no-undefined -avoid-version $(rpath_hack)
all: all-am
.SUFFIXES:
--- /dev/null
+libtestmodulea = shared_library('testmodulea', 'test-module-a.c',
+ install : false,
+ dependencies : [libglib_dep, libgobject_dep, libgmodule_dep, libgio_dep],
+ c_args : [ ]
+)
+
+libtestmoduleb = shared_library('testmoduleb', 'test-module-b.c',
+ install : false,
+ dependencies : [libglib_dep, libgobject_dep, libgmodule_dep, libgio_dep],
+ c_args : [ ]
+)
--- /dev/null
+giowin32_sources = [
+ 'gwin32fsmonitorutils.c',
+ 'gwin32filemonitor.c',
+ 'gwinhttpvfs.c',
+ 'gwinhttpfile.c',
+ 'gwinhttpfileinputstream.c',
+ 'gwinhttpfileoutputstream.c',
+]
+
+giowin32_lib = static_library('giowin32',
+ sources : [giowin32_sources, gioenumtypes_h],
+ include_directories : [configinc, glibinc, gioinc, gmoduleinc],
+ dependencies : [libintl],
+ pic : true,
+ c_args : [ '-DHAVE_CONFIG_H', '-DG_DISABLE_DEPRECATED' ] + gio_c_args)
--- /dev/null
+xdgmime_sources = [
+ 'xdgmime.c',
+ 'xdgmimealias.c',
+ 'xdgmimecache.c',
+ 'xdgmimeglob.c',
+ 'xdgmimeicon.c',
+ 'xdgmimeint.c',
+ 'xdgmimemagic.c',
+ 'xdgmimeparent.c',
+]
+
+xdgmime_lib = static_library('xdgmime',
+ sources : xdgmime_sources,
+ include_directories : [configinc],
+ pic : true,
+ c_args : [ '-DHAVE_CONFIG_H', '-DXDG_PREFIX=_gio_xdg' ] + glib_hidden_visibility_args)
/*
- * Generated by gdbus-codegen 2.53.4. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.53.5. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
/*
- * Generated by gdbus-codegen 2.53.4. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.53.5. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
gboolean uppercase)
{
const gchar *ampm;
- gchar *tmp, *ampm_dup;
+ gchar *tmp = NULL, *ampm_dup;
gsize len;
ampm = GET_AMPM (datetime);
* foo_open_file (GError **error)
* {
* gint fd;
+ * int saved_errno;
*
* fd = open ("file.txt", O_RDONLY);
+ * saved_errno = errno;
*
* if (fd < 0)
* {
* FOO_ERROR, // error domain
* FOO_ERROR_BLAH, // error code
* "Failed to open file: %s", // error message format string
- * g_strerror (errno));
+ * g_strerror (saved_errno));
* return -1;
* }
* else
unsigned (__stdcall *thread) (void *parameter))
{
HANDLE thread_handle;
+ int errsv;
thread_handle = (HANDLE) _beginthreadex (NULL, 0, thread, channel, 0,
&channel->thread_id);
+ errsv = errno;
if (thread_handle == 0)
g_warning ("Error creating thread: %s.",
- g_strerror (errno));
+ g_strerror (errsv));
else if (!CloseHandle (thread_handle))
{
gchar *emsg = g_win32_error_message (GetLastError ());
{
GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
gint result;
+ int errsv;
if (win32_channel->debug)
g_print ("g_io_win32_fd_read: fd=%d count=%" G_GSIZE_FORMAT "\n",
}
result = read (win32_channel->fd, buf, count);
+ errsv = errno;
if (win32_channel->debug)
g_print ("g_io_win32_fd_read: read() => %d\n", result);
{
*bytes_read = 0;
- switch (errno)
+ switch (errsv)
{
#ifdef EAGAIN
case EAGAIN:
#endif
default:
g_set_error_literal (err, G_IO_CHANNEL_ERROR,
- g_io_channel_error_from_errno (errno),
- g_strerror (errno));
+ g_io_channel_error_from_errno (errsv),
+ g_strerror (errsv));
return G_IO_STATUS_ERROR;
}
}
{
GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
gint result;
+ int errsv;
if (win32_channel->thread_id)
{
}
result = write (win32_channel->fd, buf, count);
+ errsv = errno;
+
if (win32_channel->debug)
g_print ("g_io_win32_fd_write: fd=%d count=%" G_GSIZE_FORMAT " => %d\n",
win32_channel->fd, count, result);
{
*bytes_written = 0;
- switch (errno)
+ switch (errsv)
{
#ifdef EAGAIN
case EAGAIN:
#endif
default:
g_set_error_literal (err, G_IO_CHANNEL_ERROR,
- g_io_channel_error_from_errno (errno),
- g_strerror (errno));
+ g_io_channel_error_from_errno (errsv),
+ g_strerror (errsv));
return G_IO_STATUS_ERROR;
}
}
GError **err)
{
GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
- int whence;
+ int whence, errsv;
off_t tmp_offset;
off_t result;
g_strerror (EINVAL));
return G_IO_STATUS_ERROR;
}
-
+
result = lseek (win32_channel->fd, tmp_offset, whence);
+ errsv = errno;
if (result < 0)
{
g_set_error_literal (err, G_IO_CHANNEL_ERROR,
- g_io_channel_error_from_errno (errno),
- g_strerror (errno));
+ g_io_channel_error_from_errno (errsv),
+ g_strerror (errsv));
return G_IO_STATUS_ERROR;
}
if (close (win32_channel->fd) < 0)
{
+ int errsv = errno;
g_set_error_literal (err, G_IO_CHANNEL_ERROR,
- g_io_channel_error_from_errno (errno),
- g_strerror (errno));
+ g_io_channel_error_from_errno (errsv),
+ g_strerror (errsv));
return G_IO_STATUS_ERROR;
}
MODE_A = 1 << 2,
MODE_PLUS = 1 << 3,
};
- int mode_num;
+ int mode_num, errsv;
g_return_val_if_fail (filename != NULL, NULL);
g_return_val_if_fail (mode != NULL, NULL);
/* always open 'untranslated' */
fid = g_open (filename, flags | _O_BINARY, pmode);
+ errsv = errno;
if (g_io_win32_get_debug_flag ())
{
if (fid < 0)
{
g_set_error_literal (error, G_FILE_ERROR,
- g_file_error_from_errno (errno),
- g_strerror (errno));
+ g_file_error_from_errno (errsv),
+ g_strerror (errsv));
return (GIOChannel *)NULL;
}
if (fstat (fd, &stat_buf) < 0)
{
+ int errsv = errno;
g_set_error_literal (error, G_FILE_ERROR,
- g_file_error_from_errno (errno),
- g_strerror (errno));
+ g_file_error_from_errno (errsv),
+ g_strerror (errsv));
return FALSE;
}
do
{
+ int errsv;
+
bytes_read = read (fd, read_buf, 4096);
+ errsv = errno;
if (bytes_read == 0) /* End of File */
break;
if (bytes_read < 0)
{
- if (errno == EINTR || errno == EAGAIN)
+ if (errsv == EINTR || errsv == EAGAIN)
continue;
g_set_error_literal (error, G_FILE_ERROR,
- g_file_error_from_errno (errno),
- g_strerror (errno));
+ g_file_error_from_errno (errsv),
+ g_strerror (errsv));
return FALSE;
}
{
GError *key_file_error = NULL;
gint fd;
+ int errsv;
g_return_val_if_fail (key_file != NULL, FALSE);
g_return_val_if_fail (file != NULL, FALSE);
fd = g_open (file, O_RDONLY, 0);
+ errsv = errno;
if (fd == -1)
{
g_set_error_literal (error, G_FILE_ERROR,
- g_file_error_from_errno (errno),
- g_strerror (errno));
+ g_file_error_from_errno (errsv),
+ g_strerror (errsv));
return FALSE;
}
* Note that this function never reports an error,
* so it is safe to pass %NULL as @error.
*
- * Returns: (array length=length): a newly allocated string holding
+ * Returns: a newly allocated string holding
* the contents of the #GKeyFile
*
* Since: 2.6
* be found, %NULL is returned and @error is set to
* #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
*
- * Returns: (array zero-terminated=1 length=length) (transfer full): a newly-allocated %NULL-terminated array of strings.
+ * Returns: (array zero-terminated=1) (transfer full): a newly-allocated %NULL-terminated array of strings.
* Use g_strfreev() to free it.
*
* Since: 2.6
* The array of returned groups will be %NULL-terminated, so
* @length may optionally be %NULL.
*
- * Returns: (array zero-terminated=1 length=length) (transfer full): a newly-allocated %NULL-terminated array of strings.
+ * Returns: (array zero-terminated=1) (transfer full): a newly-allocated %NULL-terminated array of strings.
* Use g_strfreev() to free it.
* Since: 2.6
**/
gchar *eof_int;
glong long_value;
gint int_value;
+ int errsv;
errno = 0;
long_value = strtol (value, &eof_int, 10);
+ errsv = errno;
if (*value == '\0' || (*eof_int != '\0' && !g_ascii_isspace(*eof_int)))
{
}
int_value = long_value;
- if (int_value != long_value || errno == ERANGE)
+ if (int_value != long_value || errsv == ERANGE)
{
gchar *value_utf8 = g_utf8_make_valid (value, -1);
g_set_error (error,
#include <winver.h>
VS_VERSION_INFO VERSIONINFO
- FILEVERSION 2,53,4,0
- PRODUCTVERSION 2,53,4,0
+ FILEVERSION 2,53,5,0
+ PRODUCTVERSION 2,53,5,0
FILEFLAGSMASK 0
FILEFLAGS 0
FILEOS VOS__WINDOWS32
BEGIN
VALUE "CompanyName", "The GLib developer community"
VALUE "FileDescription", "GLib"
- VALUE "FileVersion", "2.53.4.0"
+ VALUE "FileVersion", "2.53.5.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.4"
+ VALUE "ProductVersion", "2.53.5"
END
END
BLOCK "VarFileInfo"
#define GLIB_MAJOR_VERSION 2
#define GLIB_MINOR_VERSION 53
-#define GLIB_MICRO_VERSION 4
+#define GLIB_MICRO_VERSION 5
#define G_OS_WIN32
#define G_PLATFORM_WIN32
if (n_fds || timeout != 0)
{
+ int ret, errsv;
+
#ifdef G_MAIN_POLL_DEBUG
poll_timer = NULL;
if (_g_main_poll_debug)
LOCK_CONTEXT (context);
poll_func = context->poll_func;
-
+
UNLOCK_CONTEXT (context);
- if ((*poll_func) (fds, n_fds, timeout) < 0 && errno != EINTR)
+ ret = (*poll_func) (fds, n_fds, timeout);
+ errsv = errno;
+ if (ret < 0 && errsv != EINTR)
{
#ifndef G_OS_WIN32
g_warning ("poll(2) failed due to: %s.",
- g_strerror (errno));
+ g_strerror (errsv));
#else
/* If g_poll () returns -1, it has already called g_warning() */
#endif
*
* Defines the log domain.
*
- * For applications, this is typically left as the default %NULL
- * (or "") domain. Libraries should define this so that any messages
+ * Libraries should define this so that any messages
* which they log can be differentiated from messages from other
* libraries and application code. But be careful not to define
* it in any public header files.
* |[
* AM_CPPFLAGS = -DG_LOG_DOMAIN=\"Gtk\"
* ]|
+ *
+ * Applications can choose to leave it as the default %NULL (or "")
+ * domain. However, defining the domain offers the same advantages as
+ * above.
+ *
+
*/
/**
#ifdef G_OS_WIN32
static int
-poll_rest (gboolean poll_msgs,
- HANDLE *handles,
- gint nhandles,
- GPollFD *fds,
- guint nfds,
- gint timeout)
+poll_rest (GPollFD *msg_fd,
+ HANDLE *handles,
+ GPollFD *handle_to_fd[],
+ gint nhandles,
+ gint timeout)
{
DWORD ready;
GPollFD *f;
int recursed_result;
- if (poll_msgs)
+ if (msg_fd != NULL)
{
/* Wait for either messages or handles
* -> Use MsgWaitForMultipleObjectsEx
if (timeout == INFINITE)
ready = WAIT_FAILED;
else
- {
- SleepEx (timeout, TRUE);
- ready = WAIT_TIMEOUT;
- }
+ {
+ /* Wait for the current process to die, more efficient than SleepEx(). */
+ WaitForSingleObjectEx (GetCurrentProcess (), timeout, TRUE);
+ ready = WAIT_TIMEOUT;
+ }
}
else
{
ready,
(ready == WAIT_FAILED ? " (WAIT_FAILED)" :
(ready == WAIT_TIMEOUT ? " (WAIT_TIMEOUT)" :
- (poll_msgs && ready == WAIT_OBJECT_0 + nhandles ? " (msg)" : ""))));
+ (msg_fd != NULL && ready == WAIT_OBJECT_0 + nhandles ? " (msg)" : ""))));
if (ready == WAIT_FAILED)
return -1;
else if (ready == WAIT_TIMEOUT ||
ready == WAIT_IO_COMPLETION)
return 0;
- else if (poll_msgs && ready == WAIT_OBJECT_0 + nhandles)
+ else if (msg_fd != NULL && ready == WAIT_OBJECT_0 + nhandles)
{
- for (f = fds; f < &fds[nfds]; ++f)
- if (f->fd == G_WIN32_MSG_HANDLE && f->events & G_IO_IN)
- f->revents |= G_IO_IN;
+ msg_fd->revents |= G_IO_IN;
/* If we have a timeout, or no handles to poll, be satisfied
* with just noticing we have messages waiting.
/* If no timeout and handles to poll, recurse to poll them,
* too.
*/
- recursed_result = poll_rest (FALSE, handles, nhandles, fds, nfds, 0);
+ recursed_result = poll_rest (NULL, handles, handle_to_fd, nhandles, 0);
return (recursed_result == -1) ? -1 : 1 + recursed_result;
}
else if (ready >= WAIT_OBJECT_0 && ready < WAIT_OBJECT_0 + nhandles)
{
- for (f = fds; f < &fds[nfds]; ++f)
- {
- if ((HANDLE) f->fd == handles[ready - WAIT_OBJECT_0])
- {
- f->revents = f->events;
- if (_g_main_poll_debug)
- g_print (" got event %p\n", (HANDLE) f->fd);
- }
- }
+ f = handle_to_fd[ready - WAIT_OBJECT_0];
+ f->revents = f->events;
+ if (_g_main_poll_debug)
+ g_print (" got event %p\n", (HANDLE) f->fd);
/* If no timeout and polling several handles, recurse to poll
* the rest of them.
*/
if (timeout == 0 && nhandles > 1)
{
- /* Remove the handle that fired */
- int i;
- if (ready < nhandles - 1)
- for (i = ready - WAIT_OBJECT_0 + 1; i < nhandles; i++)
- handles[i-1] = handles[i];
- nhandles--;
- recursed_result = poll_rest (FALSE, handles, nhandles, fds, nfds, 0);
+ /* Poll the handles with index > ready */
+ HANDLE *shorter_handles;
+ GPollFD **shorter_handle_to_fd;
+ gint shorter_nhandles;
+
+ shorter_handles = &handles[ready - WAIT_OBJECT_0 + 1];
+ shorter_handle_to_fd = &handle_to_fd[ready - WAIT_OBJECT_0 + 1];
+ shorter_nhandles = nhandles - (ready - WAIT_OBJECT_0 + 1);
+
+ recursed_result = poll_rest (NULL, shorter_handles, shorter_handle_to_fd, shorter_nhandles, 0);
return (recursed_result == -1) ? -1 : 1 + recursed_result;
}
return 1;
gint timeout)
{
HANDLE handles[MAXIMUM_WAIT_OBJECTS];
- gboolean poll_msgs = FALSE;
+ GPollFD *handle_to_fd[MAXIMUM_WAIT_OBJECTS];
+ GPollFD *msg_fd = NULL;
GPollFD *f;
gint nhandles = 0;
int retval;
g_print ("g_poll: waiting for");
for (f = fds; f < &fds[nfds]; ++f)
- if (f->fd == G_WIN32_MSG_HANDLE && (f->events & G_IO_IN))
- {
- if (_g_main_poll_debug && !poll_msgs)
- g_print (" MSG");
- poll_msgs = TRUE;
- }
- else if (f->fd > 0)
- {
- if (nhandles == MAXIMUM_WAIT_OBJECTS)
- {
- g_warning ("Too many handles to wait for!\n");
- break;
- }
- else
- {
- if (_g_main_poll_debug)
- g_print (" %p", (HANDLE) f->fd);
- handles[nhandles++] = (HANDLE) f->fd;
- }
- }
+ {
+ if (f->fd == G_WIN32_MSG_HANDLE && (f->events & G_IO_IN))
+ {
+ if (_g_main_poll_debug && msg_fd == NULL)
+ g_print (" MSG");
+ msg_fd = f;
+ }
+ else if (f->fd > 0)
+ {
+ if (nhandles == MAXIMUM_WAIT_OBJECTS)
+ {
+ g_warning ("Too many handles to wait for!\n");
+ break;
+ }
+ else
+ {
+ if (_g_main_poll_debug)
+ g_print (" %p", (HANDLE) f->fd);
+ handle_to_fd[nhandles] = f;
+ handles[nhandles++] = (HANDLE) f->fd;
+ }
+ }
+ f->revents = 0;
+ }
if (_g_main_poll_debug)
g_print ("\n");
- for (f = fds; f < &fds[nfds]; ++f)
- f->revents = 0;
-
if (timeout == -1)
timeout = INFINITE;
/* Polling for several things? */
- if (nhandles > 1 || (nhandles > 0 && poll_msgs))
+ if (nhandles > 1 || (nhandles > 0 && msg_fd != NULL))
{
/* First check if one or several of them are immediately
* available
*/
- retval = poll_rest (poll_msgs, handles, nhandles, fds, nfds, 0);
+ retval = poll_rest (msg_fd, handles, handle_to_fd, nhandles, 0);
/* If not, and we have a significant timeout, poll again with
* timeout then. Note that this will return indication for only
* one event, or only for messages.
*/
if (retval == 0 && (timeout == INFINITE || timeout > 0))
- retval = poll_rest (poll_msgs, handles, nhandles, fds, nfds, timeout);
+ retval = poll_rest (msg_fd, handles, handle_to_fd, nhandles, timeout);
}
else
{
/* Just polling for one thing, so no need to check first if
* available immediately
*/
- retval = poll_rest (poll_msgs, handles, nhandles, fds, nfds, timeout);
+ retval = poll_rest (msg_fd, handles, handle_to_fd, nhandles, timeout);
}
if (retval == -1)
ChunkLink *chunk;
SlabInfo *sinfo;
gsize addr, padding, n_chunks, color = 0;
- gsize page_size = allocator_aligned_page_size (allocator, SLAB_BPAGE_SIZE (allocator, chunk_size));
- /* allocate 1 page for the chunks and the slab */
- gpointer aligned_memory = allocator_memalign (page_size, page_size - NATIVE_MALLOC_PADDING);
- guint8 *mem = aligned_memory;
+ gsize page_size;
+ int errsv;
+ gpointer aligned_memory;
+ guint8 *mem;
guint i;
+
+ page_size = allocator_aligned_page_size (allocator, SLAB_BPAGE_SIZE (allocator, chunk_size));
+ /* allocate 1 page for the chunks and the slab */
+ aligned_memory = allocator_memalign (page_size, page_size - NATIVE_MALLOC_PADDING);
+ errsv = errno;
+ mem = aligned_memory;
+
if (!mem)
{
- const gchar *syserr = strerror (errno);
+ const gchar *syserr = strerror (errsv);
mem_error ("failed to allocate %u bytes (alignment: %u): %s\n",
(guint) (page_size - NATIVE_MALLOC_PADDING), (guint) page_size, syserr);
}
* You should call g_spawn_close_pid() on the returned child process
* reference when you don't need it any more.
*
- * If you are writing a GTK+ application, and the program you are
- * spawning is a graphical application, too, then you may want to
- * use gdk_spawn_on_screen() instead to ensure that the spawned program
- * opens its windows on the right screen.
+ * If you are writing a GTK+ application, and the program you are spawning is a
+ * graphical application too, then to ensure that the spawned program opens its
+ * windows on the right screen, you may want to use #GdkAppLaunchContext,
+ * #GAppLaunchcontext, or set the %DISPLAY environment variable.
*
* Note that the returned @child_pid on Windows is a handle to the child
* process and not its identifier. Process handles and process identifiers
* If @child_pid is not %NULL and an error does not occur then the returned
* process reference must be closed using g_spawn_close_pid().
*
- * If you are writing a GTK+ application, and the program you
- * are spawning is a graphical application, too, then you may
- * want to use gdk_spawn_on_screen_with_pipes() instead to ensure that
- * the spawned program opens its windows on the right screen.
+ * If you are writing a GTK+ application, and the program you are spawning is a
+ * graphical application too, then to ensure that the spawned program opens its
+ * windows on the right screen, you may want to use #GdkAppLaunchContext,
+ * #GAppLaunchcontext, or set the %DISPLAY environment variable.
*
* Returns: %TRUE on success, %FALSE if an error was set
*/
*
* Note that the string may be translated according to the current locale.
*
- * The value of %errno will not be changed by this function.
+ * The value of %errno will not be changed by this function. However, it may
+ * be changed by intermediate function calls, so you should save its value
+ * as soon as the call returns:
+ * |[
+ * int saved_errno;
+ *
+ * ret = read (blah);
+ * saved_errno = errno;
+ *
+ * g_strerror (saved_errno);
+ * ]|
*
* Returns: a UTF-8 string describing the error code. If the error code
* is unknown, it returns a string like "unknown error (<code>)".
if (output_filename)
{
+ int errsv;
log_fd = g_open (output_filename, O_WRONLY | O_CREAT | O_TRUNC, 0666);
+ errsv = errno;
if (log_fd < 0)
- g_error ("Failed to open log file '%s': %s", output_filename, g_strerror (errno));
+ g_error ("Failed to open log file '%s': %s", output_filename, g_strerror (errsv));
}
test_log_printfe ("<?xml version=\"1.0\"?>\n");
/* sanity check */
if (test_tap_log)
{
- if (test_paths || test_paths_skipped || test_startup_skip_count)
+ if (test_paths || test_startup_skip_count)
{
- g_printerr ("%s: options that skip some tests are incompatible with --tap\n",
+ /* Not invoking every test (even if SKIPped) breaks the "1..XX" plan */
+ g_printerr ("%s: -p and --GTestSkipCount options are incompatible with --tap\n",
(*argv)[0]);
exit (1);
}
g_return_if_fail (g_path_is_absolute (testpath));
g_return_if_fail (fixture_test_func != NULL);
- if (g_slist_find_custom (test_paths_skipped, testpath, (GCompareFunc)g_strcmp0))
- return;
-
suite = g_test_get_root();
segments = g_strsplit (testpath, "/", -1);
for (ui = 0; segments[ui] != NULL; ui++)
test_run_success = G_TEST_RUN_SUCCESS;
g_clear_pointer (&test_run_msg, g_free);
g_test_log_set_fatal_handler (NULL, NULL);
- g_timer_start (test_run_timer);
- fixture = tc->fixture_size ? g_malloc0 (tc->fixture_size) : tc->test_data;
- test_run_seed (test_run_seedstr);
- if (tc->fixture_setup)
- tc->fixture_setup (fixture, tc->test_data);
- tc->fixture_test (fixture, tc->test_data);
- test_trap_clear();
- while (test_destroy_queue)
+ if (test_paths_skipped && g_slist_find_custom (test_paths_skipped, test_run_name, (GCompareFunc)g_strcmp0))
+ g_test_skip ("by request (-s option)");
+ else
{
- DestroyEntry *dentry = test_destroy_queue;
- test_destroy_queue = dentry->next;
- dentry->destroy_func (dentry->destroy_data);
- g_slice_free (DestroyEntry, dentry);
+ g_timer_start (test_run_timer);
+ fixture = tc->fixture_size ? g_malloc0 (tc->fixture_size) : tc->test_data;
+ test_run_seed (test_run_seedstr);
+ if (tc->fixture_setup)
+ tc->fixture_setup (fixture, tc->test_data);
+ tc->fixture_test (fixture, tc->test_data);
+ test_trap_clear();
+ while (test_destroy_queue)
+ {
+ DestroyEntry *dentry = test_destroy_queue;
+ test_destroy_queue = dentry->next;
+ dentry->destroy_func (dentry->destroy_data);
+ g_slice_free (DestroyEntry, dentry);
+ }
+ if (tc->fixture_teardown)
+ tc->fixture_teardown (fixture, tc->test_data);
+ if (tc->fixture_size)
+ g_free (fixture);
+ g_timer_stop (test_run_timer);
}
- if (tc->fixture_teardown)
- tc->fixture_teardown (fixture, tc->test_data);
- if (tc->fixture_size)
- g_free (fixture);
- g_timer_stop (test_run_timer);
success = test_run_success;
test_run_success = G_TEST_RUN_FAILURE;
largs[0] = success; /* OK */
{
for (total = 0; total < nread; total += nwrote)
{
+ int errsv;
+
nwrote = fwrite (buf + total, 1, nread - total, echo_file);
+ errsv = errno;
if (nwrote == 0)
- g_error ("write failed: %s", g_strerror (errno));
+ g_error ("write failed: %s", g_strerror (errsv));
}
}
#ifdef G_OS_UNIX
int stdout_pipe[2] = { -1, -1 };
int stderr_pipe[2] = { -1, -1 };
+ int errsv;
test_trap_clear();
if (pipe (stdout_pipe) < 0 || pipe (stderr_pipe) < 0)
- g_error ("failed to create pipes to fork test program: %s", g_strerror (errno));
+ {
+ errsv = errno;
+ g_error ("failed to create pipes to fork test program: %s", g_strerror (errsv));
+ }
test_trap_last_pid = fork ();
+ errsv = errno;
if (test_trap_last_pid < 0)
- g_error ("failed to fork test program: %s", g_strerror (errno));
+ g_error ("failed to fork test program: %s", g_strerror (errsv));
if (test_trap_last_pid == 0) /* child */
{
int fd0 = -1;
g_error ("failed to open /dev/null for stdin redirection");
}
if (sane_dup2 (stdout_pipe[1], 1) < 0 || sane_dup2 (stderr_pipe[1], 2) < 0 || (fd0 >= 0 && sane_dup2 (fd0, 0) < 0))
- g_error ("failed to dup2() in forked test program: %s", g_strerror (errno));
+ {
+ errsv = errno;
+ g_error ("failed to dup2() in forked test program: %s", g_strerror (errsv));
+ }
if (fd0 >= 3)
close (fd0);
if (stdout_pipe[1] >= 3)
g_atexit (GVoidFunc func)
{
gint result;
+ int errsv;
result = atexit ((void (*)(void)) func);
+ errsv = errno;
if (result)
{
g_error ("Could not register atexit() function: %s",
- g_strerror (errno));
+ g_strerror (errsv));
}
}
--- /dev/null
+charset_lib = static_library('charset', 'localcharset.c',
+ include_directories : configinc,
+ pic : true,
+ c_args : [ '-DLIBDIR="@0@"'.format(get_option('libdir')) ] + glib_hidden_visibility_args)
--- /dev/null
+configure_file(input : 'glibconfig.h.in', output : 'glibconfig.h',
+ install : true,
+ install_dir : join_paths(get_option('libdir'), 'glib-2.0/include'),
+ configuration : glibconfig_conf)
+
+subdir('libcharset')
+if not use_system_pcre
+ subdir('pcre')
+endif
+
+glib_headers = [
+ 'glib.h',
+ 'glib-unix.h',
+ 'glib-object.h',
+]
+install_headers(glib_headers, subdir : 'glib-2.0')
+
+glib_deprecated_headers = [
+ 'deprecated/gallocator.h',
+ 'deprecated/gcache.h',
+ 'deprecated/gcompletion.h',
+ 'deprecated/gmain.h',
+ 'deprecated/grel.h',
+ 'deprecated/gthread.h',
+]
+install_headers(glib_deprecated_headers, subdir : 'glib-2.0/glib/deprecated')
+
+glib_sub_headers = [
+ 'glib-autocleanups.h',
+ 'galloca.h',
+ 'garray.h',
+ 'gasyncqueue.h',
+ 'gatomic.h',
+ 'gbacktrace.h',
+ 'gbase64.h',
+ 'gbitlock.h',
+ 'gbookmarkfile.h',
+ 'gbytes.h',
+ 'gcharset.h',
+ 'gchecksum.h',
+ 'gconvert.h',
+ 'gdataset.h',
+ 'gdate.h',
+ 'gdatetime.h',
+ 'gdir.h',
+ 'genviron.h',
+ 'gerror.h',
+ 'gfileutils.h',
+ 'ggettext.h',
+ 'ghash.h',
+ 'ghmac.h',
+ 'ghook.h',
+ 'ghostutils.h',
+ 'gi18n.h',
+ 'gi18n-lib.h',
+ 'giochannel.h',
+ 'gkeyfile.h',
+ 'glist.h',
+ 'gmacros.h',
+ 'gmain.h',
+ 'gmappedfile.h',
+ 'gmarkup.h',
+ 'gmem.h',
+ 'gmessages.h',
+ 'gnode.h',
+ 'goption.h',
+ 'gpattern.h',
+ 'gpoll.h',
+ 'gprimes.h',
+ 'gqsort.h',
+ 'gquark.h',
+ 'gqueue.h',
+ 'grand.h',
+ 'gregex.h',
+ 'gscanner.h',
+ 'gsequence.h',
+ 'gshell.h',
+ 'gslice.h',
+ 'gslist.h',
+ 'gspawn.h',
+ 'gstdio.h',
+ 'gstrfuncs.h',
+ 'gtestutils.h',
+ 'gstring.h',
+ 'gstringchunk.h',
+ 'gthread.h',
+ 'gthreadpool.h',
+ 'gtimer.h',
+ 'gtimezone.h',
+ 'gtrashstack.h',
+ 'gtree.h',
+ 'gtypes.h',
+ 'guuid.h',
+ 'gunicode.h',
+ 'gurifuncs.h',
+ 'gutils.h',
+ 'gvarianttype.h',
+ 'gvariant.h',
+ 'gversion.h',
+ 'gversionmacros.h',
+ 'gwin32.h',
+ 'gprintf.h',
+]
+install_headers(glib_sub_headers, subdir : 'glib-2.0/glib')
+
+deprecated_sources = [
+ 'deprecated/gallocator.c',
+ 'deprecated/gcache.c',
+ 'deprecated/gcompletion.c',
+ 'deprecated/grel.c',
+ 'deprecated/gthread-deprecated.c'
+]
+
+glib_sources = [
+ 'garray.c',
+ 'gasyncqueue.c',
+ 'gatomic.c',
+ 'gbacktrace.c',
+ 'gbase64.c',
+ 'gbitlock.c',
+ 'gbookmarkfile.c',
+ 'gbytes.c',
+ 'gcharset.c',
+ 'gchecksum.c',
+ 'gconvert.c',
+ 'gdataset.c',
+ 'gdate.c',
+ 'gdatetime.c',
+ 'gdir.c',
+ 'genviron.c',
+ 'gerror.c',
+ 'gfileutils.c',
+ 'ggettext.c',
+ 'ghash.c',
+ 'ghmac.c',
+ 'ghook.c',
+ 'ghostutils.c',
+ 'giochannel.c',
+ 'gkeyfile.c',
+ 'glib-init.c',
+ 'glib-private.c',
+ 'glist.c',
+ 'gmain.c',
+ 'gmappedfile.c',
+ 'gmarkup.c',
+ 'gmem.c',
+ 'gmessages.c',
+ 'gnode.c',
+ 'goption.c',
+ 'gpattern.c',
+ 'gpoll.c',
+ 'gprimes.c',
+ 'gqsort.c',
+ 'gquark.c',
+ 'gqueue.c',
+ 'grand.c',
+ 'gregex.c',
+ 'gscanner.c',
+ 'gsequence.c',
+ 'gshell.c',
+ 'gslice.c',
+ 'gslist.c',
+ 'gstdio.c',
+ 'gstrfuncs.c',
+ 'gstring.c',
+ 'gstringchunk.c',
+ 'gtestutils.c',
+ 'gthread.c',
+ 'gthreadpool.c',
+ 'gtimer.c',
+ 'gtimezone.c',
+ 'gtranslit.c',
+ 'gtrashstack.c',
+ 'gtree.c',
+ 'guniprop.c',
+ 'gutf8.c',
+ 'gunibreak.c',
+ 'gunicollate.c',
+ 'gunidecomp.c',
+ 'gurifuncs.c',
+ 'gutils.c',
+ 'gvariant.c',
+ 'gvariant-core.c',
+ 'gvariant-parser.c',
+ 'gvariant-serialiser.c',
+ 'gvarianttypeinfo.c',
+ 'gvarianttype.c',
+ 'gversion.c',
+ 'gwakeup.c',
+ 'gprintf.c',
+]
+
+if host_system == 'windows'
+ thread_src = ['gthread-win32.c']
+ plat_src = ['gwin32.c', 'gspawn-win32.c', 'giowin32.c']
+ platform_deps = [winsock2, cc.find_library('winmm')]
+else
+ thread_src = ['gthread-posix.c']
+ plat_src = ['glib-unix.c', 'gspawn.c', 'giounix.c']
+ platform_deps = []
+endif
+
+if enable_dtrace
+ glib_dtrace_obj = dtrace_obj_gen.process('glib_probes.d')
+ glib_dtrace_hdr = dtrace_hdr_gen.process('glib_probes.d')
+else
+ glib_dtrace_obj = []
+ glib_dtrace_hdr = []
+endif
+
+libglib = shared_library('glib-2.0',
+ glib_dtrace_obj, glib_dtrace_hdr,
+ sources : [deprecated_sources, glib_sources, thread_src, plat_src],
+ version : library_version,
+ soversion : soversion,
+ install : true,
+ # intl.lib is not compatible with SAFESEH
+ link_args : noseh_link_args,
+ include_directories : configinc,
+ link_with : charset_lib,
+ dependencies : [pcre, thread_dep, libintl, librt] + libiconv + platform_deps,
+ c_args : ['-DG_LOG_DOMAIN="GLib"', '-DGLIB_COMPILATION', '-DPCRE_STATIC'] + glib_hidden_visibility_args
+)
+
+libglib_dep = declare_dependency(link_with : libglib,
+ # We sadly need to export configinc here because everyone includes <glib/*.h>
+ include_directories : [configinc, glibinc])
+
+# On Windows, glib needs a spawn helper for g_spawn* API
+if host_system == 'windows'
+ if host_machine.cpu_family() == 'x86'
+ executable('gspawn-win32-helper', 'gspawn-win32-helper.c',
+ install : true,
+ gui_app : true,
+ c_args : ['-DHAVE_CONFIG_H=1'],
+ include_directories : configinc,
+ dependencies : [libintl, libglib_dep])
+ executable('gspawn-win32-helper-console', 'gspawn-win32-helper.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1', '-DHELPER_CONSOLE'],
+ include_directories : configinc,
+ dependencies : [libintl, libglib_dep])
+ else
+ executable('gspawn-win64-helper', 'gspawn-win32-helper.c',
+ install : true,
+ gui_app : true,
+ c_args : ['-DHAVE_CONFIG_H=1'],
+ include_directories : configinc,
+ dependencies : [libintl, libglib_dep])
+ executable('gspawn-win64-helper-console', 'gspawn-win32-helper.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1', '-DHELPER_CONSOLE'],
+ include_directories : configinc,
+ dependencies : [libintl, libglib_dep])
+ endif
+else
+ gtester = executable('gtester', 'gtester.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'],
+ include_directories : configinc,
+ dependencies : [libglib_dep])
+endif
+
+install_data('gtester-report', install_dir : get_option('bindir'))
+install_data('glib_gdb.py', install_dir : join_paths(glib_pkgdatadir, 'gdb'))
+
+gdb_conf = configuration_data()
+gdb_conf.set('datadir', glib_datadir)
+configure_file(
+ input: 'libglib-gdb.py.in',
+ output: 'libglib-2.0.so.@0@-gdb.py'.format(library_version),
+ configuration: gdb_conf,
+ install: true,
+ install_dir: join_paths(get_option('datadir'), 'gdb/auto-load' + glib_libdir)
+)
+
+if enable_systemtap
+ glib_stp = configure_file(input : 'glib.stp.in',
+ output : '@0@.stp'.format(libglib.full_path().split('/').get(-1)),
+ configuration : stp_cdata,
+ install_dir : tapset_install_dir,
+ install : true)
+endif
+
+# gtester doesn't work on native windows
+if cc.get_id() != 'msvc'
+ subdir('tests')
+endif
--- /dev/null
+pcre_sources = [
+ 'pcre_byte_order.c',
+ 'pcre_chartables.c',
+ 'pcre_compile.c',
+ 'pcre_config.c',
+ 'pcre_dfa_exec.c',
+ 'pcre_exec.c',
+ 'pcre_fullinfo.c',
+ 'pcre_get.c',
+ 'pcre_globals.c',
+ 'pcre_jit_compile.c',
+ 'pcre_newline.c',
+ 'pcre_ord2utf8.c',
+ 'pcre_string_utils.c',
+ 'pcre_study.c',
+ 'pcre_tables.c',
+ 'pcre_valid_utf8.c',
+ 'pcre_version.c',
+ 'pcre_xclass.c',
+ 'pcre.h',
+ 'pcre_internal.h',
+ 'ucp.h',
+]
+
+libpcre = static_library('pcre',
+ sources : [pcre_sources],
+ include_directories : [configinc, glibinc],
+ pic : true,
+ c_args : [
+ '-DG_LOG_DOMAIN="GLib-GRegex"',
+ '-DHAVE_MEMMOVE',
+ '-DSUPPORT_UCP',
+ '-DSUPPORT_UTF',
+ '-DSUPPORT_UTF8',
+ '-DNEWLINE=-1',
+ '-DMATCH_LIMIT=10000000',
+ '-DMATCH_LIMIT_RECURSION=8192',
+ '-DMAX_NAME_SIZE=32',
+ '-DMAX_NAME_COUNT=10000',
+ '-DMAX_DUPLENGTH=30000',
+ '-DLINK_SIZE=2',
+ '-DPOSIX_MALLOC_THRESHOLD=10',
+ '-DPCRE_STATIC',
+ '-UBSR_ANYCRLF',
+ '-UEBCDIC',
+ '-DGLIB_COMPILATION'
+ ] + glib_hidden_visibility_args
+)
+
+pcre = declare_dependency(link_with : libpcre)
$(NULL)
endif
+if OS_WIN32
+test_programs += gpoll
+endif
+
# -----------------------------------------------------------------------------
if HAVE_EVENTFD
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-TESTS = $(am__EXEEXT_4) $(am__EXEEXT_6)
-installed_test_PROGRAMS = $(am__EXEEXT_10)
-noinst_PROGRAMS = $(am__EXEEXT_11)
-check_PROGRAMS = $(am__EXEEXT_9)
+TESTS = $(am__EXEEXT_5) $(am__EXEEXT_7)
+installed_test_PROGRAMS = $(am__EXEEXT_11)
+noinst_PROGRAMS = $(am__EXEEXT_12)
+check_PROGRAMS = $(am__EXEEXT_10)
@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)
@HAVE_GCC_TRUE@ autoptr \
@HAVE_GCC_TRUE@ $(NULL)
+@OS_WIN32_TRUE@am__append_18 = gpoll
# -----------------------------------------------------------------------------
-@HAVE_EVENTFD_TRUE@am__append_18 = gwakeup-fallback
+@HAVE_EVENTFD_TRUE@am__append_19 = gwakeup-fallback
subdir = glib/tests
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4macros/attributes.m4 \
@OS_UNIX_TRUE@am__EXEEXT_2 = unix$(EXEEXT) include$(EXEEXT) \
@OS_UNIX_TRUE@ $(am__EXEEXT_1)
@HAVE_GCC_TRUE@am__EXEEXT_3 = autoptr$(EXEEXT) $(am__EXEEXT_1)
-am__EXEEXT_4 = array-test$(EXEEXT) asyncqueue$(EXEEXT) base64$(EXEEXT) \
+@OS_WIN32_TRUE@am__EXEEXT_4 = gpoll$(EXEEXT)
+am__EXEEXT_5 = array-test$(EXEEXT) asyncqueue$(EXEEXT) base64$(EXEEXT) \
bitlock$(EXEEXT) bookmarkfile$(EXEEXT) bytes$(EXEEXT) \
cache$(EXEEXT) checksum$(EXEEXT) collate$(EXEEXT) \
cond$(EXEEXT) convert$(EXEEXT) dataset$(EXEEXT) date$(EXEEXT) \
utf8-validate$(EXEEXT) utf8-misc$(EXEEXT) utils$(EXEEXT) \
unicode$(EXEEXT) uri$(EXEEXT) 1bit-mutex$(EXEEXT) \
642026$(EXEEXT) $(am__EXEEXT_1) atomic$(EXEEXT) \
- 642026-ec$(EXEEXT) $(am__EXEEXT_2) $(am__EXEEXT_3)
-@HAVE_EVENTFD_TRUE@am__EXEEXT_5 = gwakeup-fallback$(EXEEXT)
-am__EXEEXT_6 = $(am__EXEEXT_1) 1bit-emufutex$(EXEEXT) gwakeup$(EXEEXT) \
- $(am__EXEEXT_5)
-am__EXEEXT_7 = test-spawn-echo$(EXEEXT) $(am__EXEEXT_1)
-am__EXEEXT_8 = $(am__EXEEXT_4) $(am__EXEEXT_6) $(am__EXEEXT_7)
-@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__EXEEXT_9 = $(am__EXEEXT_8)
-@ENABLE_INSTALLED_TESTS_TRUE@am__EXEEXT_10 = $(am__EXEEXT_4) \
-@ENABLE_INSTALLED_TESTS_TRUE@ $(am__EXEEXT_7)
-@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__EXEEXT_11 = $(am__EXEEXT_8)
+ 642026-ec$(EXEEXT) $(am__EXEEXT_2) $(am__EXEEXT_3) \
+ $(am__EXEEXT_4)
+@HAVE_EVENTFD_TRUE@am__EXEEXT_6 = gwakeup-fallback$(EXEEXT)
+am__EXEEXT_7 = $(am__EXEEXT_1) 1bit-emufutex$(EXEEXT) gwakeup$(EXEEXT) \
+ $(am__EXEEXT_6)
+am__EXEEXT_8 = test-spawn-echo$(EXEEXT) $(am__EXEEXT_1)
+am__EXEEXT_9 = $(am__EXEEXT_5) $(am__EXEEXT_7) $(am__EXEEXT_8)
+@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__EXEEXT_10 = $(am__EXEEXT_9)
+@ENABLE_INSTALLED_TESTS_TRUE@am__EXEEXT_11 = $(am__EXEEXT_5) \
+@ENABLE_INSTALLED_TESTS_TRUE@ $(am__EXEEXT_8)
+@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__EXEEXT_12 = $(am__EXEEXT_9)
PROGRAMS = $(installed_test_PROGRAMS) $(noinst_PROGRAMS)
am_1bit_emufutex_OBJECTS = 1bit_emufutex-1bit-mutex.$(OBJEXT)
1bit_emufutex_OBJECTS = $(am_1bit_emufutex_OBJECTS)
gdatetime_OBJECTS = gdatetime.$(OBJEXT)
gdatetime_LDADD = $(LDADD)
gdatetime_DEPENDENCIES = $(top_builddir)/glib/libglib-2.0.la
+gpoll_SOURCES = gpoll.c
+gpoll_OBJECTS = gpoll.$(OBJEXT)
+gpoll_LDADD = $(LDADD)
+gpoll_DEPENDENCIES = $(top_builddir)/glib/libglib-2.0.la
guuid_SOURCES = guuid.c
guuid_OBJECTS = guuid.$(OBJEXT)
guuid_LDADD = $(LDADD)
$(642026_ec_SOURCES) array-test.c asyncqueue.c atomic.c \
autoptr.c base64.c bitlock.c bookmarkfile.c bytes.c cache.c \
checksum.c collate.c cond.c convert.c dataset.c date.c dir.c \
- environment.c error.c fileutils.c gdatetime.c guuid.c \
+ environment.c error.c fileutils.c gdatetime.c gpoll.c guuid.c \
gvariant.c $(gwakeup_SOURCES) $(gwakeup_fallback_SOURCES) \
hash.c hmac.c hook.c hostutils.c include.c keyfile.c list.c \
logging.c mainloop.c mappedfile.c markup.c markup-collect.c \
$(642026_ec_SOURCES) array-test.c asyncqueue.c atomic.c \
autoptr.c base64.c bitlock.c bookmarkfile.c bytes.c cache.c \
checksum.c collate.c cond.c convert.c dataset.c date.c dir.c \
- environment.c error.c fileutils.c gdatetime.c guuid.c \
+ environment.c error.c fileutils.c gdatetime.c gpoll.c guuid.c \
gvariant.c $(gwakeup_SOURCES) \
$(am__gwakeup_fallback_SOURCES_DIST) hash.c hmac.c hook.c \
hostutils.c include.c keyfile.c list.c logging.c mainloop.c \
strfuncs string testing test-printf thread timeout timer tree \
utf8-performance utf8-pointer utf8-validate utf8-misc utils \
unicode uri 1bit-mutex 642026 $(NULL) atomic 642026-ec \
- $(am__append_15) $(am__append_17)
+ $(am__append_15) $(am__append_17) $(am__append_18)
uninstalled_test_programs = $(NULL) 1bit-emufutex gwakeup \
- $(am__append_18)
+ $(am__append_19)
markup_tests = \
fail-1 fail-2 fail-3 fail-4 fail-5 \
fail-6 fail-7 fail-8 fail-9 fail-10 \
@rm -f gdatetime$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(gdatetime_OBJECTS) $(gdatetime_LDADD) $(LIBS)
+gpoll$(EXEEXT): $(gpoll_OBJECTS) $(gpoll_DEPENDENCIES) $(EXTRA_gpoll_DEPENDENCIES)
+ @rm -f gpoll$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(gpoll_OBJECTS) $(gpoll_LDADD) $(LIBS)
+
guuid$(EXEEXT): $(guuid_OBJECTS) $(guuid_DEPENDENCIES) $(EXTRA_guuid_DEPENDENCIES)
@rm -f guuid$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(guuid_OBJECTS) $(guuid_LDADD) $(LIBS)
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fileutils.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gdatetime.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gpoll.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/guuid.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gvariant.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gwakeup.Po@am__quote@
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+gpoll.log: gpoll$(EXEEXT)
+ @p='gpoll$(EXEEXT)'; \
+ b='gpoll'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
1bit-emufutex.log: 1bit-emufutex$(EXEEXT)
@p='1bit-emufutex$(EXEEXT)'; \
b='1bit-emufutex'; \
g_error ("failed, %s exists, cannot test g_mkdir_with_parents\n", p2);
if (g_mkdir_with_parents (p2, 0777) == -1)
- g_error ("failed, g_mkdir_with_parents(%s) failed: %s\n", p2, g_strerror (errno));
+ {
+ int errsv = errno;
+ g_error ("failed, g_mkdir_with_parents(%s) failed: %s\n", p2, g_strerror (errsv));
+ }
if (!g_file_test (p2, G_FILE_TEST_IS_DIR))
g_error ("failed, g_mkdir_with_parents(%s) succeeded, but %s is not a directory\n", p2, p2);
--- /dev/null
+/* Unit test for W32 version of g_poll()
+ *
+ * Copyright © 2017 Руслан Ижбулатов <lrn1986@gmail.com>
+ *
+ * This 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 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 <glib.h>
+#include <Winsock2.h>
+
+#define NUM_POLLEES 63
+#define NUM_POLLFDS 64
+
+#define ASYNC_CONNECT_OK(r) (r == 0 || (r < 0 && GetLastError () == WSAEWOULDBLOCK))
+
+#define REPEAT 1000
+
+static void
+init_networking (void)
+{
+ WSADATA wsadata;
+
+ if (WSAStartup (MAKEWORD (2, 0), &wsadata) != 0)
+ g_error ("Windows Sockets could not be initialized");
+}
+
+static void
+prepare_fds (SOCKET sockets[],
+ GPollFD fds[],
+ int num_pollees)
+{
+ gint i;
+
+ for (i = 0; i < num_pollees; i++)
+ {
+ fds[i].fd = (gintptr) WSACreateEvent ();
+ g_assert (WSAEventSelect (sockets[i], (HANDLE) fds[i].fd, FD_READ | FD_CLOSE) == 0);
+ }
+}
+
+static void
+reset_fds (GPollFD fds[],
+ int num_pollees)
+{
+ gint i;
+
+ for (i = 0; i < num_pollees; i++)
+ {
+ WSAResetEvent ((HANDLE) fds[i].fd);
+ fds[i].events = G_IO_IN | G_IO_OUT | G_IO_ERR;
+ fds[i].revents = 0;
+ }
+}
+
+static void
+reset_fds_msg (GPollFD fds[],
+ int num_pollfds)
+{
+ fds[num_pollfds - 1].fd = G_WIN32_MSG_HANDLE;
+ fds[num_pollfds - 1].events = G_IO_IN;
+ fds[num_pollfds - 1].revents = 0;
+}
+
+static void
+check_fds (SOCKET sockets[],
+ GPollFD fds[],
+ int num_pollees)
+{
+ gint i;
+
+ for (i = 0; i < num_pollees; i++)
+ {
+ if (fds[i].revents != 0)
+ {
+ WSANETWORKEVENTS events;
+ g_assert (WSAEnumNetworkEvents (sockets[i], 0, &events) == 0);
+
+ fds[i].revents = 0;
+ if (events.lNetworkEvents & (FD_READ | FD_ACCEPT))
+ fds[i].revents |= G_IO_IN;
+
+ if (events.lNetworkEvents & FD_WRITE)
+ fds[i].revents |= G_IO_OUT;
+ else
+ {
+ /* We have called WSAEnumNetworkEvents() above but it didn't
+ * set FD_WRITE.
+ */
+ if (events.lNetworkEvents & FD_CONNECT)
+ {
+ if (events.iErrorCode[FD_CONNECT_BIT] == 0)
+ fds[i].revents |= G_IO_OUT;
+ else
+ fds[i].revents |= (G_IO_HUP | G_IO_ERR);
+ }
+ if (fds[i].revents == 0 && (events.lNetworkEvents & (FD_CLOSE)))
+ fds[i].revents |= G_IO_HUP;
+ }
+ }
+ }
+}
+
+static void
+prepare_sockets (SOCKET sockets[],
+ SOCKET opp_sockets[],
+ GPollFD fds[],
+ int num_pollees)
+{
+ gint i;
+ SOCKET server;
+ struct sockaddr_in sa;
+ unsigned long ul = 1;
+ int sa_size;
+ int r;
+
+ server = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
+ g_assert (server != INVALID_SOCKET);
+
+ memset(&sa, 0, sizeof sa);
+
+ sa.sin_family = AF_INET;
+ sa.sin_port = 0;
+ sa.sin_addr.s_addr = htonl (INADDR_LOOPBACK);
+ sa_size = sizeof (sa);
+
+ g_assert (bind (server, (const struct sockaddr *) &sa, sa_size) == 0);
+ g_assert (getsockname (server, (struct sockaddr *) &sa, &sa_size) == 0);
+ g_assert (listen (server, 1) == 0);
+
+ for (i = 0; i < num_pollees; i++)
+ {
+ opp_sockets[i] = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
+ g_assert (opp_sockets[i] != INVALID_SOCKET);
+ g_assert (ioctlsocket (opp_sockets[i], FIONBIO, &ul) == 0);
+
+ r = connect (opp_sockets[i], (const struct sockaddr *) &sa, sizeof (sa));
+ g_assert (ASYNC_CONNECT_OK (r));
+
+ sockets[i] = accept (server, NULL, NULL);
+ g_assert (sockets[i] != INVALID_SOCKET);
+ g_assert (ioctlsocket (sockets[i], FIONBIO, &ul) == 0);
+ }
+
+ closesocket (server);
+}
+
+static void
+cleanup_sockets (SOCKET sockets[],
+ SOCKET opp_sockets[],
+ int num_pollees)
+{
+ gint i;
+
+ for (i = 0; i < num_pollees; i++)
+ {
+ closesocket (sockets[i]);
+ closesocket (opp_sockets[i]);
+ }
+}
+
+static void
+bucketize (gint64 val,
+ gint buckets[],
+ gint64 bucket_limits[],
+ gint count)
+{
+ gint i;
+
+ if (val > bucket_limits[count - 1])
+ {
+ buckets[count - 1] += 1;
+ return;
+ }
+
+ for (i = count - 1; i > 0; i--)
+ if (val < bucket_limits[i] && val >= bucket_limits[i - 1])
+ {
+ buckets[i] += 1;
+ return;
+ }
+
+ buckets[0] += 1;
+}
+
+static void
+print_buckets (gint buckets[],
+ gint64 bucket_limits[],
+ gint count)
+{
+ gint i;
+
+ for (i = 0; i < count; i++)
+ if (i < count - 1)
+ g_print ("%-4lld-%4lld|", i == 0 ? 0 : bucket_limits[i - 1], bucket_limits[i] - 1);
+ else
+ g_print (" >= %-4lld|", bucket_limits[i - 1]);
+
+ g_print ("\n");
+
+ for (i = 0; i < count; i++)
+ {
+ gint len;
+ gint padding;
+ gint j;
+ if (buckets[i] < 10)
+ len = 1;
+ else if (buckets[i] < 100)
+ len = 2;
+ else if (buckets[i] < 1000)
+ len = 3;
+ else
+ len = 4;
+ padding = 9 - len;
+ for (j = 0; j < padding / 2; j++)
+ g_print (" ");
+ if (buckets[i] != 0)
+ g_print ("%*d", len, buckets[i]);
+ else
+ g_print (" ");
+ for (j = padding / 2; j < padding; j++)
+ g_print (" ");
+ g_print (" ");
+ }
+
+ g_print ("\n\n");
+}
+
+static void
+test_gpoll (void)
+{
+ SOCKET sockets[NUM_POLLEES];
+ GPollFD fds[NUM_POLLFDS];
+ SOCKET opp_sockets[NUM_POLLEES];
+ gint i;
+ gint activatable;
+ gint64 times[REPEAT][2];
+#define BUCKET_COUNT 25
+ gint64 bucket_limits[BUCKET_COUNT] = {3, 5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 70, 80, 90, 100, 120, 150, 180, 220, 280, 350, 450, 600, 800, 1000};
+ gint buckets[BUCKET_COUNT];
+ gint64 times_avg = 0, times_min = G_MAXINT64, times_max = 0;
+
+ prepare_sockets (sockets, opp_sockets, fds, NUM_POLLEES);
+ prepare_fds (sockets, fds, NUM_POLLEES);
+
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r;
+ gint64 diff;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ times[i][1] = g_get_monotonic_time ();
+ g_assert (r == 0);
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("\nempty poll time:\n%4lldns - %4lldns, average %4lldns\n", times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ activatable = 0;
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r, s, v, t;
+ gint64 diff;
+ MSG msg;
+ gboolean found_app;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ s = send (opp_sockets[activatable], (const char *) &t, 1, 0);
+ g_assert (PostMessage (NULL, WM_APP, 1, 2));
+ /* This is to ensure that all sockets catch up, otherwise some might not poll active */
+ g_usleep (G_USEC_PER_SEC / 1000);
+
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 1000);
+ times[i][1] = g_get_monotonic_time ();
+
+ check_fds (sockets, fds, NUM_POLLEES);
+ v = recv (sockets[activatable], (char *) &t, 1, 0);
+ found_app = FALSE;
+ while (!found_app && PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))
+ if (msg.message == WM_APP && msg.wParam == 1 && msg.lParam == 2)
+ found_app = TRUE;
+ g_assert (s == 1);
+ g_assert (r == 2);
+ g_assert (v == 1);
+ g_assert (found_app);
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ check_fds (sockets, fds, NUM_POLLEES);
+ g_assert (r == 0);
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ activatable = (activatable + 1) % NUM_POLLEES;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("1-socket + msg poll time:\n%4lldns - %4lldns, average %4lldns\n", times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ activatable = 0;
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r, s, v, t;
+ gint64 diff;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ s = send (opp_sockets[activatable], (const char *) &t, 1, 0);
+
+ g_usleep (G_USEC_PER_SEC / 1000);
+
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 1000);
+ times[i][1] = g_get_monotonic_time ();
+
+ check_fds (sockets, fds, NUM_POLLEES);
+ v = recv (sockets[activatable], (char *) &t, 1, 0);
+ g_assert (s == 1);
+ g_assert (r == 1);
+ g_assert (v == 1);
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ check_fds (sockets, fds, NUM_POLLEES);
+ g_assert (r == 0);
+
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ activatable = (activatable + 1) % NUM_POLLEES;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("1-socket poll time:\n%4lldns - %4lldns, average %4lldns\n", times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r, s, v, t;
+ gint64 diff;
+ gint j;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ s = v = 0;
+
+ for (j = 0; j < NUM_POLLEES / 2; j++)
+ s += send (opp_sockets[j], (const char *) &t, 1, 0) == 1 ? 1 : 0;
+
+ g_usleep (G_USEC_PER_SEC / 1000);
+
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 1000);
+ times[i][1] = g_get_monotonic_time ();
+ check_fds (sockets, fds, NUM_POLLEES);
+ for (j = 0; j < NUM_POLLEES / 2; j++)
+ v += recv (sockets[j], (char *) &t, 1, 0) == 1 ? 1 : 0;
+ g_assert (s == NUM_POLLEES / 2);
+ g_assert (r == NUM_POLLEES / 2);
+ g_assert (v == NUM_POLLEES / 2);
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ check_fds (sockets, fds, NUM_POLLEES);
+ g_assert (r == 0);
+
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("half-socket poll time:\n%4lldns - %4lldns, average %4lldns\n", times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r, s, v, t;
+ gint64 diff;
+ gint j;
+ MSG msg;
+ gboolean found_app;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ s = v = 0;
+
+ for (j = 0; j < NUM_POLLEES / 2; j++)
+ s += send (opp_sockets[j], (const char *) &t, 1, 0) == 1 ? 1 : 0;
+ g_assert (PostMessage (NULL, WM_APP, 1, 2));
+
+ /* This is to ensure that all sockets catch up, otherwise some might not poll active */
+ g_usleep (G_USEC_PER_SEC / 1000);
+
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 1000);
+ times[i][1] = g_get_monotonic_time ();
+ check_fds (sockets, fds, NUM_POLLEES);
+ for (j = 0; j < NUM_POLLEES / 2; j++)
+ v += recv (sockets[j], (char *) &t, 1, 0) == 1 ? 1 : 0;
+ found_app = FALSE;
+ while (!found_app && PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))
+ if (msg.message == WM_APP && msg.wParam == 1 && msg.lParam == 2)
+ found_app = TRUE;
+ g_assert (s == NUM_POLLEES / 2);
+ g_assert (r == NUM_POLLEES / 2 + 1);
+ g_assert (v == NUM_POLLEES / 2);
+ g_assert (found_app);
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ check_fds (sockets, fds, NUM_POLLEES);
+ g_assert (r == 0);
+
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("half-socket + msg poll time:\n%4lldns - %4lldns, average %4lldns\n", times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r, s, v, t;
+ gint64 diff;
+ gint j;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ s = v = 0;
+
+ for (j = 0; j < NUM_POLLEES; j++)
+ s += send (opp_sockets[j], (const char *) &t, 1, 0) == 1 ? 1 : 0;
+
+ g_usleep (G_USEC_PER_SEC / 1000);
+
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 1000);
+ times[i][1] = g_get_monotonic_time ();
+ check_fds (sockets, fds, NUM_POLLEES);
+ for (j = 0; j < NUM_POLLEES; j++)
+ v += recv (sockets[j], (char *) &t, 1, 0) == 1 ? 1 : 0;
+ g_assert (s == NUM_POLLEES);
+ g_assert (r == NUM_POLLEES);
+ g_assert (v == NUM_POLLEES);
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ check_fds (sockets, fds, NUM_POLLEES);
+ g_assert (r == 0);
+
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("%d-socket poll time: \n%4lldns - %4lldns, average %4lldns\n", NUM_POLLEES, times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ activatable = 0;
+ times_avg = 0;
+ times_min = G_MAXINT64;
+ times_max = 0;
+ memset (buckets, 0, sizeof (gint) * BUCKET_COUNT);
+
+ for (i = 0; i < REPEAT; i++)
+ {
+ gint r, s, v, t;
+ gint64 diff;
+ gint j;
+ MSG msg;
+ gboolean found_app;
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ s = v = 0;
+
+ for (j = 0; j < activatable; j++)
+ s += send (opp_sockets[j], (const char *) &t, 1, 0) == 1 ? 1 : 0;
+ g_assert (PostMessage (NULL, WM_APP, 1, 2));
+
+ g_usleep (G_USEC_PER_SEC / 1000);
+
+ times[i][0] = g_get_monotonic_time ();
+ r = g_poll (fds, NUM_POLLFDS, 1000);
+ times[i][1] = g_get_monotonic_time ();
+ check_fds (sockets, fds, NUM_POLLEES);
+ for (j = 0; j < activatable; j++)
+ v += recv (sockets[j], (char *) &t, 1, 0) == 1 ? 1 : 0;
+ found_app = FALSE;
+ while (!found_app && PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))
+ if (msg.message == WM_APP && msg.wParam == 1 && msg.lParam == 2)
+ found_app = TRUE;
+ g_assert (s == activatable);
+ g_assert (r == activatable + 1);
+ g_assert (v == activatable);
+ g_assert (found_app);
+
+ reset_fds (fds, NUM_POLLEES);
+ reset_fds_msg (fds, NUM_POLLFDS);
+ r = g_poll (fds, NUM_POLLFDS, 0);
+ check_fds (sockets, fds, NUM_POLLEES);
+ g_assert (r == 0);
+
+ diff = times[i][1] - times[i][0];
+ if (times_min > diff)
+ times_min = diff;
+ if (times_max < diff)
+ times_max = diff;
+ times_avg += diff;
+ bucketize (diff, buckets, bucket_limits, BUCKET_COUNT);
+ activatable = (activatable + 1) % NUM_POLLEES;
+ }
+
+ times_avg /= NUM_POLLEES;
+ g_print ("variable socket number + msg poll time: \n%4lldns - %4lldns, average %4lldns\n", times_min, times_max, times_avg);
+ print_buckets (buckets, bucket_limits, BUCKET_COUNT);
+
+ cleanup_sockets (sockets, opp_sockets, NUM_POLLEES);
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ int result;
+ GMainContext *ctx;
+
+ g_test_init (&argc, &argv, NULL);
+ init_networking ();
+ ctx = g_main_context_new ();
+
+ g_test_add_func ("/gpoll/gpoll", test_gpoll);
+
+ result = g_test_run ();
+
+ g_main_context_unref (ctx);
+
+ return result;
+}
--- /dev/null
+glib_tests = [
+ 'array-test',
+ 'asyncqueue',
+ 'base64',
+ 'bitlock',
+ 'bookmarkfile',
+ 'bytes',
+ 'cache',
+ 'checksum',
+ 'collate',
+ 'cond',
+ 'convert',
+ 'dataset',
+ 'date',
+ 'dir',
+ 'environment',
+ 'error',
+ 'fileutils',
+ 'gdatetime',
+ 'gvariant',
+ 'hash',
+ 'hmac',
+ 'hook',
+ 'hostutils',
+ 'keyfile',
+ 'list',
+ 'logging',
+ 'mainloop',
+ 'mappedfile',
+ 'markup',
+ 'markup-parse',
+ 'markup-collect',
+ 'markup-escape',
+ 'markup-subparser',
+ 'mem-overflow',
+ 'mutex',
+ 'node',
+ 'once',
+ 'option-context',
+ 'option-argv0',
+ 'overflow',
+ # overflow-fallback handled separately below
+ 'pattern',
+ 'private',
+ 'protocol',
+ 'queue',
+ 'rand',
+ 'rec-mutex',
+ 'regex',
+ 'rwlock',
+ 'scannerapi',
+ 'search-utils',
+ 'sequence',
+ 'shell',
+ 'slice',
+ 'slist',
+ 'sort',
+ 'spawn-multithreaded',
+ 'spawn-singlethread',
+ 'strfuncs',
+ 'string',
+ 'testing',
+ 'test-printf',
+ 'thread',
+ 'timeout',
+ 'timer',
+ 'tree',
+ 'utf8-performance',
+ 'utf8-pointer',
+ 'utf8-validate',
+ 'utf8-misc',
+ 'utils',
+ 'unicode',
+ 'uri',
+ '1bit-mutex',
+ '642026',
+]
+
+if host_machine.system() != 'windows'
+ glib_tests += [ 'unix', 'include' ]
+endif
+
+if cc.get_id() != 'msvc'
+ glib_tests += [ 'autoptr' ]
+endif
+
+# FIXME: use new environment() object
+# Not entirely random of course, but at least it changes over time
+random_number = minor_version + meson.version().split('.').get(1).to_int()
+
+test_env = [
+ 'G_TEST_SRCDIR=' + meson.current_source_dir(),
+ 'G_TEST_BUILDDIR=' + meson.current_build_dir(),
+ 'G_DEBUG=gc-friendly',
+ 'MALLOC_CHECK_=2',
+ 'MALLOC_PERTURB_=@0@'.format(random_number % 256),
+]
+
+test_cargs = ['-DHAVE_CONFIG_H=1', '-DG_LOG_DOMAIN="GLib"']
+
+foreach test_name : glib_tests
+ deps = [libm, thread_dep, libglib_dep]
+ if test_name == 'regex'
+ deps += [pcre]
+ endif
+ exe = executable(test_name, '@0@.c'.format(test_name),
+ c_args : ['-DPCRE_STATIC'] + test_cargs,
+ dependencies : deps,
+ install : false,
+ )
+ test(test_name, exe, env : test_env)
+endforeach
+
+c_args_atomic = []
+if cc.get_id() == 'gcc'
+ c_args_atomic += ['-Wstrict-aliasing=2']
+endif
+
+deps = [libm, thread_dep, libglib_dep]
+
+exe = executable('atomic', 'atomic.c',
+ c_args : test_cargs + c_args_atomic,
+ dependencies : deps,
+)
+test('atomic', exe, env : test_env)
+
+# FIXME: consolidate all of these into the array
+exe = executable('overflow-fallback', 'overflow.c',
+ c_args : test_cargs + ['-D_GLIB_TEST_OVERFLOW_FALLBACK'],
+ dependencies : deps,
+ install : false,
+)
+test('overflow-fallback', exe, env : test_env)
+
+exe = executable('642026-ec', '642026.c',
+ c_args : test_cargs + ['-DG_ERRORCHECK_MUTEXES'],
+ dependencies : deps,
+ install : false,
+)
+test('642026-ec', exe, env : test_env)
+
+exe = executable('1bit-emufutex', '1bit-mutex.c',
+ c_args : test_cargs + ['-DTEST_EMULATED_FUTEX'],
+ dependencies : deps,
+ install : false,
+)
+test('1bit-emufutex', exe, env : test_env)
+
+exe = executable('gwakeup', 'gwakeuptest.c', '../gwakeup.c',
+ c_args : test_cargs,
+ dependencies : deps,
+ install : false)
+test('gwakeup', exe, env : test_env)
+
+if glib_conf.has('HAVE_EVENTFD')
+ exe = executable('gwakeup-fallback', 'gwakeuptest.c', '../gwakeup.c',
+ c_args : test_cargs + ['-DTEST_EVENTFD_FALLBACK'],
+ dependencies : deps,
+ install : false,
+ )
+ test('gwakeup-fallback', exe, env : test_env)
+endif
+
+# test-spawn-echo helper binary required by the spawn tests above
+executable('test-spawn-echo', 'test-spawn-echo.c',
+ c_args : test_cargs,
+ dependencies : deps,
+ install : false,
+)
+
+# some testing of gtester functionality
+if not meson.is_cross_build() and host_system != 'windows'
+ xmllint = find_program('xmllint', required: false)
+ if xmllint.found()
+ tmpsample_xml = custom_target('tmpsample.xml',
+ output : 'tmpsample.xml',
+ build_by_default : true, # hack around meson bug, see PR #1335
+ command : [ gtester, '-k', '--quiet', '-o', '@OUTPUT@',
+ '--test-arg=--gtester-selftest', gtester])
+
+ test('gtester-xmllint-check', xmllint,
+ args : ['--noout', tmpsample_xml],
+ env : test_env)
+ endif
+endif
if (0 > pipe (pipes))
{
- g_error ("error creating pipe: %s", g_strerror (errno));
+ int errsv = errno;
+ g_error ("error creating pipe: %s", g_strerror (errsv));
}
argv[1] = g_strdup_printf ("--GTestLogFD=%u", pipes[1]);
if (0 > pipe (pipes))
{
- g_error ("error creating pipe: %s", g_strerror (errno));
+ int errsv = errno;
+ g_error ("error creating pipe: %s", g_strerror (errsv));
}
argv[1] = g_strdup_printf ("--GTestLogFD=%u", pipes[1]);
#include <winver.h>
VS_VERSION_INFO VERSIONINFO
- FILEVERSION 2,53,4,0
- PRODUCTVERSION 2,53,4,0
+ FILEVERSION 2,53,5,0
+ PRODUCTVERSION 2,53,5,0
FILEFLAGSMASK 0
FILEFLAGS 0
FILEOS VOS__WINDOWS32
BEGIN
VALUE "CompanyName", "The GLib developer community"
VALUE "FileDescription", "GModule"
- VALUE "FileVersion", "2.53.4.0"
+ VALUE "FileVersion", "2.53.5.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.4"
+ VALUE "ProductVersion", "2.53.5"
END
END
BLOCK "VarFileInfo"
--- /dev/null
+gmoduleconf_conf = configuration_data()
+
+g_module_need_uscore = 0
+g_module_broken_rtld_global = 0
+g_module_have_dlerror = 0
+
+libdl_dep = [ ]
+g_module_lib_args = [ ]
+g_module_impl = ''
+
+dlopen_dlsym_test_code = '''
+#include <dlfcn.h>
+int glib_underscore_test (void) { return 42; }
+int main (int argc, char ** argv) {
+ void *f1 = (void*)0, *f2 = (void*)0, *handle;
+ handle = dlopen ((void*)0, 0);
+ if (handle) {
+ f1 = dlsym (handle, "glib_underscore_test");
+ f2 = dlsym (handle, "_glib_underscore_test");
+ }
+ return (!f2 || f1);
+}'''
+
+# On Windows force native WIN32 shared lib loader
+if host_system == 'windows'
+ g_module_impl = 'G_MODULE_IMPL_WIN32'
+# Force native AIX library loader
+# dlopen() filepath must be of the form /path/libname.a(libname.so)
+elif host_system == 'aix'
+ g_module_impl = 'G_MODULE_IMPL_AR'
+elif cc.links(dlopen_dlsym_test_code, name : 'dlopen() and dlsym() in system libraries')
+ g_module_impl = 'G_MODULE_IMPL_DL'
+# NSLinkModule (dyld) in system libraries (Darwin)
+elif cc.has_function('NSLinkModule')
+ g_module_impl = 'G_MODULE_IMPL_DYLD'
+ g_module_need_uscore = 1
+elif cc.links(dlopen_dlsym_test_code, args : '-ldl', name : 'dlopen() and dlsym() in libdl')
+ g_module_impl = 'G_MODULE_IMPL_DL'
+ libdl_dep = cc.find_library('dl')
+ g_module_lib_args = '-ldl'
+endif
+
+# additional checks for G_MODULE_IMPL_DL
+if g_module_impl == 'G_MODULE_IMPL_DL'
+ # FIXME: check for OSF1/5.0 RTLD_GLOBAL brokenness (is this still relevant?)
+
+ # Check whether we need preceding underscores
+ if cc.get_id() == 'msvc'
+ message('Building for MSVC: assuming that symbols are prefixed with underscore')
+ g_module_need_uscore = 1
+ elif meson.has_exe_wrapper()
+ # FIXME: communicate result via stdout instead of return value, so non-0 return is not printed in bold red
+ rres = cc.run(dlopen_dlsym_test_code,
+ args : g_module_lib_args,
+ name : 'dlsym() preceding underscores')
+ if host_system == 'windows' or rres.returncode() == 0
+ g_module_need_uscore = 1
+ endif
+ else
+ message('Cross-compiling: assuming that symbols aren\'t prefixed with underscore')
+ g_module_need_uscore = 0
+ endif
+
+ if cc.has_function('dlerror', args : g_module_lib_args)
+ g_module_have_dlerror = 1
+ endif
+endif
+
+# Done, have we got an implementation?
+if g_module_impl == ''
+ g_module_impl = '0'
+ message('WARNING: No suitable GModule implementation found!')
+endif
+
+gmoduleconf_conf.set('G_MODULE_IMPL', g_module_impl)
+gmoduleconf_conf.set('G_MODULE_SUPPORTED', g_module_impl != '0')
+gmoduleconf_conf.set('G_MODULE_HAVE_DLERROR', g_module_have_dlerror)
+gmoduleconf_conf.set('G_MODULE_NEED_USCORE', g_module_need_uscore)
+gmoduleconf_conf.set('G_MODULE_BROKEN_RTLD_GLOBAL', g_module_broken_rtld_global)
+
+gmoduleconf_h = configure_file(input : 'gmoduleconf.h.in',
+ output : 'gmoduleconf.h',
+ configuration : gmoduleconf_conf)
+
+install_headers(['gmodule.h'], subdir : 'glib-2.0')
+
+libgmodule = shared_library('gmodule-2.0',
+ sources : ['gmodule.c'],
+ version : library_version,
+ soversion : soversion,
+ install : true,
+ include_directories : [configinc, gmoduleinc],
+ dependencies : [libdl_dep, libglib_dep],
+ c_args : ['-DG_LOG_DOMAIN="GModule"', '-DG_DISABLE_DEPRECATED'] + glib_hidden_visibility_args)
+
+libgmodule_dep = declare_dependency(link_with : libgmodule,
+ include_directories : gmoduleinc)
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 = []
+ signature = ['G_BEGIN_DECLS']
if visibility == Visibility.INTERNAL:
signature += ['G_GNUC_INTERNAL']
signature += [indent('int n_params,', level=width, fill=' ')]
signature += [indent('GType *param_types);', level=width, fill=' ')]
+ signature += ['G_END_DECLS']
+
return signature
import re
import sys
import tempfile
+import io
+import errno
+import codecs
+import locale
VERSION_STR = '''glib-mkenums version @VERSION@
glib-genmarshal comes with ABSOLUTELY NO WARRANTY.
GLib source package. Sources, examples and contact
information are available at http://www.gtk.org'''
-output_stream = sys.stdout
+# Python 2 defaults to ASCII in case stdout is redirected.
+# This should make it match Python 3, which uses the locale encoding.
+if sys.stdout.encoding is None:
+ output_stream = codecs.getwriter(
+ locale.getpreferredencoding())(sys.stdout)
+else:
+ output_stream = sys.stdout
# pylint: disable=too-few-public-methods
class Color:
# glib-mkenums.py
# Information about the current enumeration
-flags = False # Is enumeration a bitmask?
+flags = None # 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.
m = re.match(r'\#include\s*<([^>]*)>', line)
if m:
newfilename = os.path.join("..", m.group(1))
- newfile = open(newfilename)
+ newfile = io.open(newfilename, encoding="utf-8")
if not parse_entries(newfile, newfilename):
return False
value = groups[1]
if len(groups) > 2:
options = groups[2]
- if not flags and value is not None and '<<' in value:
+ if flags is None and value is not None and '<<' in value:
seenbitshift = 1
if options is not None:
}
in_ = 'junk'
- ifile = open(file)
+ ifile = io.open(file, encoding="utf-8")
for line in ifile:
m = re.match(r'\/\*\*\*\s+(BEGIN|END)\s+([\w-]+)\s+\*\*\*\/', line)
if m:
out_suffix = '_' + os.path.splitext(out_fn)[1]
if out_dir == '':
out_dir = '.'
- tmpfile = tempfile.NamedTemporaryFile(dir=out_dir, delete=False)
+ fd, filename = tempfile.mkstemp(dir=out_dir)
+ os.close(fd)
+ tmpfile = io.open(filename, "w", encoding="utf-8")
output_stream = tmpfile
else:
tmpfile = None
firstenum = True
try:
- curfile = open(curfilename)
- except FileNotFoundError:
- print_warning('No file "{}" found.'.format(curfilename))
- return
+ curfile = io.open(curfilename, encoding="utf-8")
+ except IOError as e:
+ if e.errno == errno.ENOENT:
+ print_warning('No file "{}" found.'.format(curfilename))
+ return
+ raise
while True:
line = curfile.readline()
if 'skip' in options:
continue
enum_prefix = options.get('prefix', None)
- flags = 'flags' in options
+ flags = options.get('flags', None)
+ if 'flags' in options:
+ if flags is None:
+ flags = 1
+ else:
+ flags = int(flags)
option_lowercase_name = options.get('lowercase_name', None)
option_underscore_name = options.get('underscore_name', None)
else:
enum_prefix = None
- flags = False
+ flags = None
option_lowercase_name = None
option_underscore_name = None
parse_entries(curfile, curfilename)
# figure out if this was a flags or enums enumeration
- if not flags:
+ if flags is None:
flags = seenbitshift
# Autogenerate a prefix
#include <winver.h>
VS_VERSION_INFO VERSIONINFO
- FILEVERSION 2,53,4,0
- PRODUCTVERSION 2,53,4,0
+ FILEVERSION 2,53,5,0
+ PRODUCTVERSION 2,53,5,0
FILEFLAGSMASK 0
FILEFLAGS 0
FILEOS VOS__WINDOWS32
BEGIN
VALUE "CompanyName", "The GLib developer community"
VALUE "FileDescription", "GObject"
- VALUE "FileVersion", "2.53.4.0"
+ VALUE "FileVersion", "2.53.5.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.4"
+ VALUE "ProductVersion", "2.53.5"
END
END
BLOCK "VarFileInfo"
--- /dev/null
+gobject_install_headers = files([
+ 'gobject-autocleanups.h',
+ 'glib-types.h',
+ 'gbinding.h',
+ 'gboxed.h',
+ 'gclosure.h',
+ 'genums.h',
+ 'gmarshal.h',
+ 'gobject.h',
+ 'gparam.h',
+ 'gparamspecs.h',
+ 'gsignal.h',
+ 'gsourceclosure.h',
+ 'gtype.h',
+ 'gtypemodule.h',
+ 'gtypeplugin.h',
+ 'gvalue.h',
+ 'gvaluearray.h',
+ 'gvaluecollector.h',
+ 'gvaluetypes.h',
+ 'gobjectnotifyqueue.c', # sic
+])
+install_headers(gobject_install_headers, subdir : 'glib-2.0/gobject')
+
+gobject_c_sources = [
+# 'gobject_probes.d',
+ 'gatomicarray.c',
+ 'gbinding.c',
+ 'gboxed.c',
+ 'gclosure.c',
+ 'genums.c',
+ 'gmarshal.c',
+ 'gobject.c',
+ 'gobject_trace.h',
+ 'gparam.c',
+ 'gparamspecs.c',
+ 'gsignal.c',
+ 'gsourceclosure.c',
+ 'gtype.c',
+ 'gtypemodule.c',
+ 'gtypeplugin.c',
+ 'gvalue.c',
+ 'gvaluearray.c',
+ 'gvaluetransform.c',
+ 'gvaluetypes.c',
+]
+
+if enable_dtrace
+ gobject_dtrace_obj = dtrace_obj_gen.process('gobject_probes.d')
+ gobject_dtrace_hdr = dtrace_hdr_gen.process('gobject_probes.d')
+else
+ gobject_dtrace_obj = []
+ gobject_dtrace_hdr = []
+endif
+
+libgobject = shared_library('gobject-2.0',
+ gobject_dtrace_obj, gobject_dtrace_hdr,
+ sources : [gobject_c_sources],
+ version : library_version,
+ soversion : soversion,
+ install : true,
+ include_directories : [configinc],
+ dependencies : [libintl, libffi_dep, libglib_dep],
+ c_args : ['-DG_LOG_DOMAIN="GLib-GObject"', '-DGOBJECT_COMPILATION'] + glib_hidden_visibility_args)
+
+libgobject_dep = declare_dependency(link_with : libgobject,
+ include_directories : gobjectinc)
+
+python_tools = [
+ 'glib-genmarshal',
+ 'glib-mkenums',
+]
+
+python_tools_conf = configuration_data()
+python_tools_conf.set('VERSION', glib_version)
+python_tools_conf.set('PYTHON', python.path())
+
+foreach tool: python_tools
+ # FIXME: Ensure we set the appropriate permissions
+ tool_bin = configure_file(
+ input : tool + '.in',
+ output : tool,
+ configuration : python_tools_conf,
+ install : true,
+ install_dir : glib_bindir,
+ )
+
+ # Set variables for later use
+ set_variable(tool.underscorify(), tool_bin)
+endforeach
+
+executable('gobject-query', 'gobject-query.c',
+ install : true,
+ c_args : ['-DHAVE_CONFIG_H=1'],
+ dependencies : [libglib_dep, libgobject_dep])
+
+install_data('gobject_gdb.py', install_dir : join_paths(glib_pkgdatadir, 'gdb'))
+gdb_conf = configuration_data()
+gdb_conf.set('datadir', glib_datadir)
+configure_file(
+ input: 'libgobject-gdb.py.in',
+ output: 'libgobject-2.0.so.@0@-gdb.py'.format(library_version),
+ configuration: gdb_conf,
+ install: true,
+ install_dir: join_paths(get_option('datadir'), 'gdb/auto-load/' + glib_libdir)
+)
+
+if enable_systemtap
+ gobject_stp = configure_file(input : 'gobject.stp.in',
+ output : '@0@.stp'.format(libgobject.full_path().split('/').get(-1)),
+ configuration : stp_cdata,
+ install_dir : tapset_install_dir,
+ install : true)
+endif
+
+subdir('tests')
--- /dev/null
+gobject_tests = [
+ 'qdata',
+ 'boxed',
+ 'enums',
+ 'param',
+ 'threadtests',
+ 'dynamictests',
+ 'binding',
+ 'properties',
+ 'reference',
+ 'value',
+ 'type',
+ 'private',
+ 'closure',
+ 'object',
+ 'signal-handler',
+ 'ifaceproperties',
+]
+
+# FIXME: use new environment() object
+# FIXME: put common bits of test environment() in one location
+# Not entirely random of course, but at least it changes over time
+random_number = minor_version + meson.version().split('.').get(1).to_int()
+
+test_env = [
+ 'G_TEST_SRCDIR=' + meson.current_source_dir(),
+ 'G_TEST_BUILDDIR=' + meson.current_build_dir(),
+ 'G_DEBUG=gc-friendly',
+ 'MALLOC_CHECK_=2',
+ 'MALLOC_PERTURB_=@0@'.format(random_number % 256),
+]
+
+foreach test_name : gobject_tests
+ deps = [libm, thread_dep, libglib_dep, libgobject_dep]
+ test_src = '@0@.c'.format(test_name)
+ # private is an existing or reserved target it seems
+ if test_name == 'private'
+ test_name = 'gobject-private'
+ endif
+ exe = executable(test_name, test_src,
+ c_args : ['-DHAVE_CONFIG_H=1', '-DG_LOG_DOMAIN="GLib-GObject"'],
+ dependencies : deps,
+ )
+ test(test_name, exe, env : test_env)
+endforeach
+
+marshalers_h = custom_target('marshalers_h',
+ output : 'marshalers.h',
+ input : 'marshalers.list',
+ command : [
+ python, glib_genmarshal,
+ '--prefix=test',
+ '--valist-marshallers',
+ '--output=@OUTPUT@',
+ '--quiet',
+ '--header',
+ '@INPUT@',
+ ],
+)
+marshalers_c = custom_target('marshalers_c',
+ output : 'marshalers.c',
+ input : 'marshalers.list',
+ command : [
+ python, glib_genmarshal,
+ '--prefix=test',
+ '--valist-marshallers',
+ '--include-header=marshalers.h',
+ '--output=@OUTPUT@',
+ '--quiet',
+ '--body',
+ '@INPUT@',
+ ],
+)
+
+exe = executable('signals',
+ 'signals.c', marshalers_h, marshalers_c,
+ c_args : ['-DHAVE_CONFIG_H=1', '-DG_LOG_DOMAIN="GLib-GObject"'],
+ dependencies : deps,
+)
+test('signals', exe, env : test_env)
#include <winver.h>
VS_VERSION_INFO VERSIONINFO
- FILEVERSION 2,53,4,0
- PRODUCTVERSION 2,53,4,0
+ FILEVERSION 2,53,5,0
+ PRODUCTVERSION 2,53,5,0
FILEFLAGSMASK 0
FILEFLAGS 0
FILEOS VOS__WINDOWS32
BEGIN
VALUE "CompanyName", "The GLib developer community"
VALUE "FileDescription", "GThread"
- VALUE "FileVersion", "2.53.4.0"
+ VALUE "FileVersion", "2.53.5.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.4"
+ VALUE "ProductVersion", "2.53.5"
END
END
BLOCK "VarFileInfo"
--- /dev/null
+# Just a skeleton lib for backwards compatibility since all the functionaliy
+# has been moved into glib now
+libgthread = shared_library('gthread-2.0',
+ sources : [ 'gthread-impl.c' ],
+ version : library_version,
+ soversion : soversion,
+ install : true,
+ dependencies : [libglib_dep],
+ c_args : ['-DG_LOG_DOMAIN="GThread"' ] + glib_hidden_visibility_args)
--- /dev/null
+project('glib', 'c', 'cpp',
+ version : '2.53.5',
+ meson_version : '>= 0.38.1',
+ default_options : [
+ 'warning_level=1',
+ 'c_std=gnu89'
+ ]
+)
+
+cc = meson.get_compiler('c')
+cxx = meson.get_compiler('cpp')
+
+if cc.get_id() == 'msvc'
+ # Ignore several spurious warnings for things glib does very commonly
+ # If a warning is completely useless and spammy, use '/wdXXXX' to suppress it
+ # If a warning is harmless but hard to fix, use '/woXXXX' so it's shown once
+ # NOTE: Only add warnings here if you are sure they're spurious
+ add_project_arguments('/wd4035', '/wd4715', '/wd4116',
+ '/wd4046', '/wd4068', '/wo4090', '/FImsvc_recommended_pragmas.h',language : 'c')
+ # Disable SAFESEH with MSVC for plugins and libs that use external deps that
+ # are built with MinGW
+ noseh_link_args = ['/SAFESEH:NO']
+else
+ noseh_link_args = []
+ # -mms-bitfields vs -fnative-struct ?
+endif
+
+host_system = host_machine.system()
+
+glib_version = meson.project_version()
+glib_api_version = '2.0'
+version_arr = glib_version.split('.')
+major_version = version_arr[0].to_int()
+minor_version = version_arr[1].to_int()
+micro_version = version_arr[2].to_int()
+
+interface_age = minor_version.is_odd() ? 0 : micro_version
+binary_age = 100 * minor_version + micro_version
+
+soversion = 0
+# Maintain compatibility with previous libtool versioning
+# current = minor * 100 + micro
+library_version = '@0@.@1@.@2@'.format(soversion, binary_age - interface_age, interface_age)
+
+configinc = include_directories('.')
+glibinc = include_directories('glib')
+gobjectinc = include_directories('gobject')
+gmoduleinc = include_directories('gmodule')
+gioinc = include_directories('gio')
+
+glib_prefix = get_option('prefix')
+glib_bindir = join_paths(glib_prefix, get_option('bindir'))
+glib_libdir = join_paths(glib_prefix, get_option('libdir'))
+glib_datadir = join_paths(glib_prefix, get_option('datadir'))
+glib_pkgdatadir = join_paths(glib_datadir, 'glib-2.0')
+glib_includedir = join_paths(glib_prefix, get_option('includedir'))
+glib_giomodulesdir = join_paths(glib_libdir, 'gio', 'modules')
+
+glib_pkgconfigreldir = join_paths(glib_libdir, 'pkgconfig')
+
+########################
+# Configuration begins #
+########################
+glib_conf = configuration_data()
+glibconfig_conf = configuration_data()
+
+# accumulated list of defines as we check for them, so we can easily
+# use them later in test programs (autoconf does this automatically)
+glib_conf_prefix = ''
+
+glib_conf.set('GLIB_VERSION', glib_version)
+glib_conf.set('GLIB_MAJOR_VERSION', major_version)
+glib_conf.set('GLIB_MINOR_VERSION', minor_version)
+glib_conf.set('GLIB_MICRO_VERSION', micro_version)
+glib_conf.set('GLIB_INTERFACE_AGE', interface_age)
+glib_conf.set('GLIB_BINARY_AGE', binary_age)
+glib_conf.set_quoted('GETTEXT_PACKAGE', 'glib20')
+glib_conf.set_quoted('PACKAGE_BUGREPORT', 'http://bugzilla.gnome.org/enter_bug.cgi?product=glib')
+glib_conf.set_quoted('PACKAGE_NAME', 'glib')
+glib_conf.set_quoted('PACKAGE_STRING', 'glib @0@'.format(meson.project_version()))
+glib_conf.set_quoted('PACKAGE_TARNAME', 'glib')
+glib_conf.set_quoted('PACKAGE_URL', '')
+glib_conf.set_quoted('PACKAGE_VERSION', meson.project_version())
+glib_conf.set('ENABLE_NLS', 1)
+glib_conf.set('HAVE_GOOD_PRINTF', 1) # FIXME
+
+# Variables used in glib-gettextize and pkg-config files
+# These should not contain " quotes around the values
+glib_conf.set('PACKAGE', 'glib')
+glib_conf.set('VERSION', meson.project_version())
+glib_conf.set('prefix', glib_prefix)
+glib_conf.set('exec_prefix', glib_prefix)
+glib_conf.set('libdir', glib_libdir)
+glib_conf.set('includedir', glib_includedir)
+glib_conf.set('datadir', glib_datadir)
+glib_conf.set('datarootdir', glib_datadir)
+
+glib_conf.set('_GNU_SOURCE', 1)
+
+if host_system == 'windows'
+ # Poll doesn't work on devices on Windows
+ glib_conf.set('BROKEN_POLL', true)
+endif
+
+# Detect and set symbol visibility
+glib_hidden_visibility_args = []
+if get_option('default_library') != 'static'
+ if host_system == 'windows'
+ glib_conf.set('DLL_EXPORT', true)
+ if cc.get_id() == 'msvc'
+ glib_conf.set('_GLIB_EXTERN', '__declspec(dllexport) extern')
+ elif cc.has_argument('-fvisibility=hidden')
+ glib_conf.set('_GLIB_EXTERN', '__attribute__((visibility("default"))) __declspec(dllexport) extern')
+ glib_hidden_visibility_args = ['-fvisibility=hidden']
+ endif
+ elif cc.has_argument('-fvisibility=hidden')
+ glib_conf.set('_GLIB_EXTERN', '__attribute__((visibility("default"))) extern')
+ glib_hidden_visibility_args = ['-fvisibility=hidden']
+ endif
+endif
+
+# FIXME: what about Cygwin (G_WITH_CYGWIN)
+if host_system == 'windows'
+ glib_os = '''#define G_OS_WIN32
+#define G_PLATFORM_WIN32'''
+else
+ glib_os = '#define G_OS_UNIX'
+endif
+glibconfig_conf.set('glib_os', glib_os)
+
+# check for header files
+
+headers = [
+ 'stdlib.h',
+ 'string.h',
+ 'strings.h',
+ 'memory.h',
+ 'alloca.h',
+ 'locale.h',
+ 'xlocale.h',
+ 'float.h',
+ 'limits.h',
+ 'pwd.h',
+ 'grp.h',
+ 'poll.h',
+ 'termios.h',
+ 'sys/param.h',
+ 'sys/resource.h',
+ 'mach/mach_time.h',
+ 'sys/select.h',
+ 'stdint.h',
+ 'inttypes.h',
+ 'sched.h',
+ 'malloc.h',
+ 'sys/vfs.h',
+ 'sys/vmount.h',
+ 'sys/statfs.h',
+ 'sys/statvfs.h',
+ 'sys/filio.h',
+ 'mntent.h',
+ 'sys/mnttab.h',
+ 'sys/vfstab.h',
+ 'sys/mntctl.h',
+ 'fstab.h',
+ 'linux/magic.h',
+ 'termios.h',
+ 'dirent.h', # MSC does not come with this by default
+ 'sys/time.h', # MSC does not come with this by default
+ 'sys/times.h',
+ 'sys/wait.h',
+ 'unistd.h',
+ 'values.h',
+ 'sys/types.h',
+ 'sys/uio.h',
+ 'sys/mkdev.h',
+ 'sys/mount.h',
+ 'sys/sysctl.h',
+ 'crt_externs.h',
+ 'sys/inotify.h',
+ 'sys/event.h',
+ 'sys/stat.h',
+]
+
+foreach h : headers
+ if cc.has_header(h)
+ define = 'HAVE_' + h.underscorify().to_upper()
+ glib_conf.set(define, 1)
+ glib_conf_prefix = glib_conf_prefix + '#define @0@ 1\n'.format(define)
+ endif
+endforeach
+
+if cc.has_header('linux/netlink.h')
+ glib_conf.set('HAVE_NETLINK', 1)
+endif
+
+if glib_conf.has('HAVE_LOCALE_H')
+ if cc.has_header_symbol('locale.h', 'LC_MESSAGES')
+ glib_conf.set('HAVE_LC_MESSAGES', 1)
+ endif
+endif
+
+struct_stat_blkprefix = '''
+#include <sys/types.h>
+#include <sys/stat.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_STATFS_H
+#include <sys/statfs.h>
+#endif
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+#ifdef HAVE_SYS_MOUNT_H
+#include <sys/mount.h>
+#endif
+'''
+
+struct_members = [
+ [ 'stat', 'st_mtimensec' ],
+ [ 'stat', 'st_mtim.tv_nsec' ],
+ [ 'stat', 'st_atimensec' ],
+ [ 'stat', 'st_atim.tv_nsec' ],
+ [ 'stat', 'st_ctimensec' ],
+ [ 'stat', 'st_ctim.tv_nsec' ],
+ [ 'stat', 'st_birthtime' ],
+ [ 'stat', 'st_birthtimensec' ],
+ [ 'stat', 'st_birthtim' ],
+ [ 'stat', 'st_birthtim.tv_nsec' ],
+ [ 'stat', 'st_blksize', struct_stat_blkprefix ],
+ [ 'stat', 'st_blocks', struct_stat_blkprefix ],
+ [ 'statfs', 'f_fstypename', struct_stat_blkprefix ],
+ [ 'statfs', 'f_bavail', struct_stat_blkprefix ],
+ [ 'dirent', 'd_type', '''#include <sys/types.h>
+ #include <dirent.h>''' ],
+]
+
+foreach m : struct_members
+ header_check_prefix = glib_conf_prefix
+ if m.length() == 3
+ header_check_prefix = header_check_prefix + m[2]
+ else
+ header_check_prefix = header_check_prefix + '#include <sys/stat.h>'
+ endif
+ if cc.has_member('struct ' + m[0], m[1], prefix : header_check_prefix)
+ define = 'HAVE_STRUCT_@0@_@1@'.format(m[0].to_upper(), m[1].underscorify().to_upper())
+ glib_conf.set(define, 1)
+ glib_conf_prefix = glib_conf_prefix + '#define @0@ 1\n'.format(define)
+ else
+ endif
+endforeach
+
+functions = [
+ 'alloca',
+ 'mmap',
+ 'posix_memalign',
+ 'memalign',
+ 'valloc',
+ 'fsync',
+ 'pipe2',
+ 'issetugid',
+ 'timegm',
+ 'gmtime_r',
+ 'strerror_r',
+ 'lstat',
+ 'strsignal',
+ 'vsnprintf',
+ 'stpcpy',
+ 'poll',
+ 'vasprintf',
+ 'setenv',
+ 'unsetenv',
+ 'getc_unlocked',
+ 'readlink',
+ 'symlink',
+ 'fdwalk',
+ 'lchmod',
+ 'lchown',
+ 'fchmod',
+ 'fchown',
+ 'utimes',
+ 'getresuid',
+ 'getmntent_r',
+ 'setmntent',
+ 'endmntent',
+ 'hasmntopt',
+ 'getfsstat',
+ 'getvfsstat',
+ 'fallocate',
+ 'localtime_r',
+ 'gmtime_r',
+ 'getpwuid_r',
+ 'getgrgid_r',
+ 'prlimit',
+ 'strnlen',
+ 'wcslen',
+ 'wcsnlen',
+ 'mbrtowc',
+ 'wcrtomb',
+ 'newlocale',
+ 'uselocale',
+ 'strtod_l',
+ 'strtoll_l',
+ 'strtoull_l',
+ 'inotify_init1',
+ 'kqueue',
+ 'kevent',
+ 'endservent',
+ 'if_indextoname',
+ 'if_nametoindex',
+ 'sendmmsg',
+ 'recvmmsg',
+]
+
+if glib_conf.has('HAVE_SYS_STATVFS_H')
+ functions += ['statvfs']
+else
+ have_func_statvfs = false
+endif
+if glib_conf.has('HAVE_SYS_STATFS_H') or glib_conf.has('HAVE_SYS_MOUNT_H')
+ functions += ['statfs']
+else
+ have_func_statfs = false
+endif
+
+# AIX splice is something else
+if host_system != 'aix'
+ functions += ['splice']
+endif
+
+foreach f : functions
+ if cc.has_function(f)
+ define = 'HAVE_' + f.underscorify().to_upper()
+ glib_conf.set(define, 1)
+ glib_conf_prefix = glib_conf_prefix + '#define @0@ 1\n'.format(define)
+ set_variable('have_func_' + f, true)
+ else
+ set_variable('have_func_' + f, false)
+ endif
+endforeach
+
+# Check whether strerror_r returns char *
+if have_func_strerror_r
+ if cc.compiles('''#define _GNU_SOURCE
+ #include <string.h>
+ int func (void) {
+ char error_string[256];
+ char *ptr = strerror_r (-2, error_string, 256);
+ char c = *strerror_r (-2, error_string, 256);
+ return c != 0 && ptr != (void*) 0L;
+ }
+ ''',
+ name : 'strerror_r() returns char *')
+ glib_conf.set('STRERROR_R_CHAR_P', 1,
+ description: 'Defined if strerror_r returns char *')
+ endif
+endif
+
+# Special-case these functions that have alternative names on Windows/MSVC
+if cc.has_function('snprintf') or cc.has_header_symbol('stdio.h', 'snprintf')
+ glib_conf.set('HAVE_SNPRINTF', 1)
+ glib_conf_prefix = glib_conf_prefix + '#define HAVE_SNPRINTF 1\n'
+elif cc.has_function('_snprintf') or cc.has_header_symbol('stdio.h', '_snprintf')
+ hack_define = '1\n#define snprintf _snprintf'
+ glib_conf.set('HAVE_SNPRINTF', hack_define)
+ glib_conf_prefix = glib_conf_prefix + '#define HAVE_SNPRINTF ' + hack_define
+endif
+
+if cc.has_function('strcasecmp')
+ glib_conf.set('HAVE_STRCASECMP', 1)
+ glib_conf_prefix = glib_conf_prefix + '#define HAVE_STRCASECMP 1\n'
+elif cc.has_function('_stricmp')
+ hack_define = '1\n#define strcasecmp _stricmp'
+ glib_conf.set('HAVE_STRCASECMP', hack_define)
+ glib_conf_prefix = glib_conf_prefix + '#define HAVE_STRCASECMP ' + hack_define
+endif
+
+if cc.has_function('strncasecmp')
+ glib_conf.set('HAVE_STRNCASECMP', 1)
+ glib_conf_prefix = glib_conf_prefix + '#define HAVE_STRNCASECMP 1\n'
+elif cc.has_function('_strnicmp')
+ hack_define = '1\n#define strncasecmp _strnicmp'
+ glib_conf.set('HAVE_STRNCASECMP', hack_define)
+ glib_conf_prefix = glib_conf_prefix + '#define HAVE_STRNCASECMP ' + hack_define
+endif
+
+if cc.has_header_symbol('sys/sysmacros.h', 'major')
+ glib_conf.set('MAJOR_IN_SYSMACROS', 1)
+elif cc.has_header_symbol('sys/mkdev.h', 'major')
+ glib_conf.set('MAJOR_IN_MKDEV', 1)
+endif
+
+if cc.has_header_symbol('dlfcn.h', 'RTLD_LAZY')
+ glib_conf.set('HAVE_RTLD_LAZY', 1)
+endif
+
+if cc.has_header_symbol('dlfcn.h', 'RTLD_NOW')
+ glib_conf.set('HAVE_RTLD_NOW', 1)
+endif
+
+if cc.has_header_symbol('dlfcn.h', 'RTLD_GLOBAL')
+ glib_conf.set('HAVE_RTLD_GLOBAL', 1)
+endif
+
+# Check whether to use statfs or statvfs
+# Some systems have both statfs and statvfs, pick the most "native" for these
+if have_func_statfs and have_func_statvfs
+ # on solaris and irix, statfs doesn't even have the f_bavail field
+ if not glib_conf.has('HAVE_STRUCT_STATFS_F_BAVAIL')
+ have_func_statfs = false
+ else
+ # at least on linux, statfs is the actual syscall
+ have_func_statvfs = false
+ endif
+endif
+if have_func_statfs
+ glib_conf.set('USE_STATFS', 1)
+ stat_func_to_use = 'statfs'
+elif have_func_statvfs
+ glib_conf.set('USE_STATVFS', 1)
+ stat_func_to_use = 'statvfs'
+else
+ stat_func_to_use = 'neither'
+endif
+message('Checking whether to use statfs or statvfs .. ' + stat_func_to_use)
+
+# Mac OS X Carbon support
+glib_have_carbon = cc.compiles('''#include <Carbon/Carbon.h>
+ #include <CoreServices/CoreServices.h>''',
+ name : 'Mac OS X Carbon support')
+
+glib_have_os_x_9_or_later = false
+
+if glib_have_carbon
+ glib_conf.set('HAVE_CARBON', true)
+ CARBON_LIBS='-Wl,-framework,Carbon' # FIXME: propagate to .pc files as well
+ glib_have_os_x_9_or_later = cc.compiles('''#include <AvailabilityMacros.h>
+ #if MAC_OS_X_VERSION_MIN_REQUIRED < 1090
+ #error Compiling for minimum OS X version before 10.9
+ #endif''', name : 'OS X 9 or later')
+else
+ CARBON_LIBS=''
+endif
+
+# Mac OS X Cocoa support
+glib_have_cocoa = cc.compiles('''#include <Cocoa/Cocoa.h>
+ #ifdef GNUSTEP_BASE_VERSION
+ #error "Detected GNUstep, not Cocoa"
+ #endif''',
+ name : 'Mac OS X Cocoa support')
+
+if glib_have_cocoa
+ glib_conf.set('HAVE_COCOA', true)
+ COCOA_LIBS='-Wl,-framework,Foundation' # FIXME: propagate to .pc files as well
+else
+ COCOA_LIBS=''
+endif
+
+# Check for futex(2)
+if cc.links('''#include <linux/futex.h>
+ #include <sys/syscall.h>
+ #include <unistd.h>
+ int main (int argc, char ** argv) {
+ syscall (__NR_futex, NULL, FUTEX_WAKE, FUTEX_WAIT);
+ return 0;
+ }''', name : 'futex(2) system call')
+ glib_conf.set('HAVE_FUTEX', 1)
+endif
+
+# Check for eventfd(2)
+if cc.links('''#include <sys/eventfd.h>
+ #include <unistd.h>
+ int main (int argc, char ** argv) {
+ eventfd (0, EFD_CLOEXEC);
+ return 0;
+ }''', name : 'eventfd(2) system call')
+ glib_conf.set('HAVE_EVENTFD', 1)
+endif
+
+clock_gettime_test_code = '''
+ #include <time.h>
+ struct timespec t;
+ int main (int argc, char ** argv) {
+ return clock_gettime(CLOCK_REALTIME, &t);
+ }'''
+librt = []
+if cc.links(clock_gettime_test_code, name : 'clock_gettime')
+ glib_conf.set('HAVE_CLOCK_GETTIME', 1)
+elif cc.links(clock_gettime_test_code, args : '-lrt', name : 'clock_gettime in librt')
+ glib_conf.set('HAVE_CLOCK_GETTIME', 1)
+ librt = cc.find_library('rt')
+endif
+
+# if statfs() takes 2 arguments (Posix) or 4 (Solaris)
+if have_func_statfs
+ if cc.compiles(glib_conf_prefix + '''
+ #include <unistd.h>
+ #ifdef HAVE_SYS_PARAM_H
+ #include <sys/param.h>
+ #endif
+ #ifdef HAVE_SYS_VFS_H
+ #include <sys/vfs.h>
+ #endif
+ #ifdef HAVE_SYS_MOUNT_H
+ #include <sys/mount.h>
+ #endif
+ #ifdef HAVE_SYS_STATFS_H
+ #include <sys/statfs.h>
+ #endif
+ void some_func (void) {
+ struct statfs st;
+ statfs("/", &st);
+ }''', name : 'number of arguments to statfs() (n=2)')
+ glib_conf.set('STATFS_ARGS', 2)
+ elif cc.compiles(glib_conf_prefix + '''
+ #include <unistd.h>
+ #ifdef HAVE_SYS_PARAM_H
+ #include <sys/param.h>
+ #endif
+ #ifdef HAVE_SYS_VFS_H
+ #include <sys/vfs.h>
+ #endif
+ #ifdef HAVE_SYS_MOUNT_H
+ #include <sys/mount.h>
+ #endif
+ #ifdef HAVE_SYS_STATFS_H
+ #include <sys/statfs.h>
+ #endif
+ void some_func (void) {
+ struct statfs st;
+ statfs("/", &st, sizeof (st), 0);
+ }''', name : 'number of arguments to statfs() (n=4)')
+ glib_conf.set('STATFS_ARGS', 4)
+ else
+ error('Unable to determine number of arguments to statfs()')
+ endif
+endif
+
+# open takes O_DIRECTORY as an option
+#AC_MSG_CHECKING([])
+if cc.compiles('''#include <fcntl.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>],
+ void some_func (void) {
+ open(0, O_DIRECTORY, 0);
+ }''', name : 'open() option O_DIRECTORY')
+ glib_conf.set('HAVE_OPEN_O_DIRECTORY', 1)
+endif
+
+# Check whether there is a vsnprintf() function with C99 semantics installed.
+# AC_FUNC_VSNPRINTF_C99
+# Check whether there is a snprintf() function with C99 semantics installed.
+# AC_FUNC_SNPRINTF_C99
+if host_system == 'windows' and cc.get_id() == 'gcc'
+ # Unfortunately the mingw implementations of C99-style snprintf and vsnprintf
+ # don't seem to be quite good enough, at least not in mingw-runtime-3.14.
+ # (Sorry, I don't know exactly what is the problem, but it is related to
+ # floating point formatting and decimal point vs. comma.)
+ # The simple tests in AC_FUNC_VSNPRINTF_C99 and AC_FUNC_SNPRINTF_C99 aren't
+ # rigorous enough to notice, though.
+ glib_conf.set('HAVE_C99_SNPRINTF', false)
+ glib_conf.set('HAVE_C99_VSNPRINTF', false)
+else
+ vsnprintf_c99_test_code = '''
+#include <stdio.h>
+#include <stdarg.h>
+
+int
+doit(char * s, ...)
+{
+ char buffer[32];
+ va_list args;
+ int r;
+
+ va_start(args, s);
+ r = vsnprintf(buffer, 5, s, args);
+ va_end(args);
+
+ if (r != 7)
+ exit(1);
+
+ /* AIX 5.1 and Solaris seems to have a half-baked vsnprintf()
+ implementation. The above will return 7 but if you replace
+ the size of the buffer with 0, it borks! */
+ va_start(args, s);
+ r = vsnprintf(buffer, 0, s, args);
+ va_end(args);
+
+ if (r != 7)
+ exit(1);
+
+ exit(0);
+}
+
+int
+main(void)
+{
+ doit("1234567");
+ exit(1);
+}'''
+
+ rres = cc.run(vsnprintf_c99_test_code, name : 'C99 vsnprintf')
+ if rres.compiled() and rres.returncode() == 0
+ glib_conf.set('HAVE_C99_VSNPRINTF', 1)
+ endif
+
+ snprintf_c99_test_code = '''
+#include <stdio.h>
+#include <stdarg.h>
+
+int
+doit()
+{
+ char buffer[32];
+ va_list args;
+ int r;
+
+ r = snprintf(buffer, 5, "1234567");
+
+ if (r != 7)
+ exit(1);
+
+ r = snprintf(buffer, 0, "1234567");
+
+ if (r != 7)
+ exit(1);
+
+ r = snprintf(NULL, 0, "1234567");
+
+ if (r != 7)
+ exit(1);
+
+ exit(0);
+}
+
+int
+main(void)
+{
+ doit();
+ exit(1);
+}'''
+
+ rres = cc.run(snprintf_c99_test_code, name : 'C99 snprintf')
+ if rres.compiled() and rres.returncode() == 0
+ glib_conf.set('HAVE_C99_SNPRINTF', 1)
+ endif
+endif
+
+if host_system == 'windows'
+ glib_conf.set_quoted('EXEEXT', '.exe')
+else
+ glib_conf.set('EXEEXT', '')
+endif
+
+# Check whether the printf() family supports Unix98 %n$ positional parameters
+# AC_FUNC_PRINTF_UNIX98
+# Nothing uses HAVE_UNIX98_PRINTF
+
+# Check for nl_langinfo and CODESET
+# FIXME: Check for HAVE_BIND_TEXTDOMAIN_CODESET
+if cc.links('''#include <langinfo.h>
+ int main (int argc, char ** argv) {
+ char *codeset = nl_langinfo (CODESET);
+ return 0;
+ }''', name : 'nl_langinfo and CODESET')
+ glib_conf.set('HAVE_LANGINFO_CODESET', 1)
+ glib_conf.set('HAVE_CODESET', 1)
+endif
+
+# Check for nl_langinfo and LC_TIME parts that are needed in gdatetime.c
+if cc.links('''#include <langinfo.h>
+ int main (int argc, char ** argv) {
+ char *str;
+ str = nl_langinfo (PM_STR);
+ str = nl_langinfo (D_T_FMT);
+ str = nl_langinfo (D_FMT);
+ str = nl_langinfo (T_FMT);
+ str = nl_langinfo (T_FMT_AMPM);
+ str = nl_langinfo (MON_1);
+ str = nl_langinfo (ABMON_12);
+ str = nl_langinfo (DAY_1);
+ str = nl_langinfo (ABDAY_7);
+ return 0;
+ }''', name : 'nl_langinfo (PM_STR)')
+ glib_conf.set('HAVE_LANGINFO_TIME', 1)
+endif
+if cc.links('''#include <langinfo.h>
+ int main (int argc, char ** argv) {
+ char *str;
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT0_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT1_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT2_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT3_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT4_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT5_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT6_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT7_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT8_MB);
+ str = nl_langinfo (_NL_CTYPE_OUTDIGIT9_MB);
+ return 0;
+ }''', name : 'nl_langinfo (_NL_CTYPE_OUTDIGITn_MB)')
+ glib_conf.set('HAVE_LANGINFO_OUTDIGIT', 1)
+endif
+
+# Check if C compiler supports the 'signed' keyword
+if not cc.compiles('''signed char x;''', name : 'signed')
+ glib_conf.set('signed', '/* NOOP */')
+endif
+
+# Check if the ptrdiff_t type exists
+if cc.has_header_symbol('stddef.h', 'ptrdiff_t')
+ glib_conf.set('HAVE_PTRDIFF_T', 1)
+endif
+
+# Check for sig_atomic_t type
+if cc.links('''#include <signal.h>
+ #include <sys/types.h>
+ sig_atomic_t val = 42;
+ int main (int argc, char ** argv) {
+ return val == 42 ? 0 : 1;
+ }''', name : 'sig_atomic_t')
+ glib_conf.set('HAVE_SIG_ATOMIC_T', 1)
+endif
+
+# Check if 'long long' works and what format can be used to print it
+# jm_AC_TYPE_LONG_LONG
+# Nothing uses HAVE_LONG_LONG_FORMAT and HAVE_INT64_AND_I64
+if cc.compiles('''long long ll = 1LL;
+ int i = 63;
+ int some_func (void) {
+ long long llmax = (long long) -1;
+ return ll << i | ll >> i | llmax / ll | llmax % ll;
+ }''', name : 'long long')
+ glib_conf.set('HAVE_LONG_LONG', 1)
+ have_long_long = true
+else
+ have_long_long = false
+endif
+
+# Test whether the compiler supports the 'long double' type.
+if cc.compiles('''/* The Stardent Vistra knows sizeof(long double), but does not support it. */
+ long double foo = 0.0;
+ /* On Ultrix 4.3 cc, long double is 4 and double is 8. */
+ int array [2*(sizeof(long double) >= sizeof(double)) - 1];''',
+ name : 'long double')
+ glib_conf.set('HAVE_LONG_DOUBLE', 1)
+endif
+
+#dnl Test whether <stddef.h> has the 'wchar_t' type.
+if cc.has_header_symbol('stddef.h', 'wchar_t')
+ glib_conf.set('HAVE_WCHAR_T', 1)
+endif
+
+# Test whether <wchar.h> has the 'wint_t' type.
+if cc.has_header_symbol('wchar.h', 'wint_t')
+ glib_conf.set('HAVE_WINT_T', 1)
+endif
+
+found_uintmax_t = false
+
+# Define HAVE_INTTYPES_H_WITH_UINTMAX if <inttypes.h> exists,
+# doesn't clash with <sys/types.h>, and declares uintmax_t.
+# jm_AC_HEADER_INTTYPES_H
+if cc.compiles('''#include <sys/types.h>
+ #include <inttypes.h>
+ void some_func (void) {
+ uintmax_t i = (uintmax_t) -1;
+ }''', name : 'uintmax_t in inttypes.h')
+ glib_conf.set('HAVE_INTTYPES_H_WITH_UINTMAX', 1)
+ found_uintmax_t = true
+endif
+
+# Define HAVE_STDINT_H_WITH_UINTMAX if <stdint.h> exists,
+# doesn't clash with <sys/types.h>, and declares uintmax_t.
+# jm_AC_HEADER_STDINT_H
+if cc.compiles('''#include <sys/types.h>
+ #include <stdint.h>
+ void some_func (void) {
+ uintmax_t i = (uintmax_t) -1;
+ }''', name : 'uintmax_t in stdint.h')
+ glib_conf.set('HAVE_STDINT_H_WITH_UINTMAX', 1)
+ found_uintmax_t = true
+endif
+
+# Define intmax_t to 'long' or 'long long'
+# if it is not already defined in <stdint.h> or <inttypes.h>.
+# For simplicity, we assume that a header file defines 'intmax_t' if and
+# only if it defines 'uintmax_t'.
+if found_uintmax_t
+ glib_conf.set('HAVE_INTMAX_T', 1)
+elif have_long_long
+ glib_conf.set('intmax_t', 'long long')
+else
+ glib_conf.set('intmax_t', 'long')
+endif
+
+char_size = cc.sizeof('char')
+short_size = cc.sizeof('short')
+int_size = cc.sizeof('int')
+voidp_size = cc.sizeof('void*')
+long_size = cc.sizeof('long')
+if have_long_long
+ long_long_size = cc.sizeof('long long')
+else
+ long_long_size = 0
+endif
+sizet_size = cc.sizeof('size_t')
+if cc.get_id() == 'msvc'
+ ssizet_size = cc.sizeof('SSIZE_T', prefix : '#include <BaseTsd.h>')
+else
+ ssizet_size = cc.sizeof('ssize_t')
+endif
+
+# On Windows, MSVC supports both ll and I64 as format specifiers for 64-bit
+# integers, but some versions (at least 4.7.x) of MinGW only support I64.
+if host_system == 'windows'
+ int64_m = 'I64'
+else
+ int64_m = 'll'
+endif
+
+char_align = cc.alignment('char')
+short_align = cc.alignment('short')
+int_align = cc.alignment('int')
+voidp_align = cc.alignment('void*')
+long_align = cc.alignment('long')
+long_long_align = cc.alignment('long long')
+# NOTE: We don't check for size of __int64 because long long is guaranteed to
+# be 64-bit in C99, and it is available on all supported compilers
+sizet_align = cc.alignment('size_t')
+
+glib_conf.set('ALIGNOF_UNSIGNED_LONG', long_align)
+
+glib_conf.set('SIZEOF_CHAR', char_size)
+glib_conf.set('SIZEOF_INT', int_size)
+glib_conf.set('SIZEOF_SHORT', short_size)
+glib_conf.set('SIZEOF_LONG', long_size)
+glib_conf.set('SIZEOF_LONG_LONG', long_long_size)
+glib_conf.set('SIZEOF_SIZE_T', sizet_size)
+glib_conf.set('SIZEOF_SSIZE_T', ssizet_size)
+glib_conf.set('SIZEOF_VOID_P', voidp_size)
+
+if short_size == 2
+ gint16 = 'short'
+ gint16_modifier='h'
+ gint16_format='hi'
+ guint16_format='hu'
+elif int_size == 2
+ gint16 = 'int'
+ gint16_modifier=''
+ gint16_format='i'
+ guint16_format='u'
+else
+ error('Compiler provides no native 16-bit integer type')
+endif
+glibconfig_conf.set('gint16', gint16)
+glibconfig_conf.set_quoted('gint16_modifier', gint16_modifier)
+glibconfig_conf.set_quoted('gint16_format', gint16_format)
+glibconfig_conf.set_quoted('guint16_format', guint16_format)
+
+if short_size == 4
+ gint32 = 'short'
+ gint32_modifier='h'
+ gint32_format='hi'
+ guint32_format='hu'
+ guint32_align = short_align
+elif int_size == 4
+ gint32 = 'int'
+ gint32_modifier=''
+ gint32_format='i'
+ guint32_format='u'
+ guint32_align = int_align
+elif long_size == 4
+ gint32 = 'long'
+ gint32_modifier='l'
+ gint32_format='li'
+ guint32_format='lu'
+ guint32_align = long_align
+else
+ error('Compiler provides no native 32-bit integer type')
+endif
+glibconfig_conf.set('gint32', gint32)
+glibconfig_conf.set_quoted('gint32_modifier', gint32_modifier)
+glibconfig_conf.set_quoted('gint32_format', gint32_format)
+glibconfig_conf.set_quoted('guint32_format', guint32_format)
+glib_conf.set('ALIGNOF_GUINT32', guint32_align)
+
+if int_size == 8
+ gint64 = 'int'
+ gint64_modifier=''
+ gint64_format='i'
+ guint64_format='u'
+ glib_extension=''
+ gint64_constant='(val)'
+ guint64_constant='(val)'
+ guint64_align = int_align
+elif long_size == 8
+ gint64 = 'long'
+ glib_extension=''
+ gint64_modifier='l'
+ gint64_format='li'
+ guint64_format='lu'
+ gint64_constant='(val##L)'
+ guint64_constant='(val##UL)'
+ guint64_align = long_align
+elif long_long_size == 8
+ gint64 = 'long long'
+ glib_extension='G_GNUC_EXTENSION '
+ gint64_modifier=int64_m
+ gint64_format=int64_m + 'i'
+ guint64_format=int64_m + 'u'
+ gint64_constant='(G_GNUC_EXTENSION (val##LL))'
+ guint64_constant='(G_GNUC_EXTENSION (val##ULL))'
+ guint64_align = long_long_align
+else
+ error('Compiler provides no native 64-bit integer type')
+endif
+glibconfig_conf.set('glib_extension', glib_extension)
+glibconfig_conf.set('gint64', gint64)
+glibconfig_conf.set_quoted('gint64_modifier', gint64_modifier)
+glibconfig_conf.set_quoted('gint64_format', gint64_format)
+glibconfig_conf.set_quoted('guint64_format', guint64_format)
+glibconfig_conf.set('gint64_constant', gint64_constant)
+glibconfig_conf.set('guint64_constant', guint64_constant)
+glib_conf.set('ALIGNOF_GUINT64', guint64_align)
+
+if host_system == 'windows'
+ glibconfig_conf.set('g_pid_type', 'void*')
+ glibconfig_conf.set_quoted('g_pid_format', 'p')
+ if host_machine.cpu_family() == 'x86_64'
+ glibconfig_conf.set_quoted('g_pollfd_format', '%#I64x')
+ else
+ glibconfig_conf.set_quoted('g_pollfd_format', '%#x')
+ endif
+else
+ glibconfig_conf.set('g_pid_type', 'int')
+ glibconfig_conf.set_quoted('g_pid_format', 'i')
+ glibconfig_conf.set_quoted('g_pollfd_format', '%d')
+endif
+
+if sizet_size == short_size
+ glibconfig_conf.set('glib_size_type_define', 'short')
+ glibconfig_conf.set_quoted('gsize_modifier', 'h')
+ glibconfig_conf.set_quoted('gssize_modifier', 'h')
+ glibconfig_conf.set_quoted('gsize_format', 'hu')
+ glibconfig_conf.set_quoted('gssize_format', 'hi')
+ glibconfig_conf.set('glib_msize_type', 'SHRT')
+elif sizet_size == int_size
+ glibconfig_conf.set('glib_size_type_define', 'int')
+ glibconfig_conf.set_quoted('gsize_modifier', '')
+ glibconfig_conf.set_quoted('gssize_modifier', '')
+ glibconfig_conf.set_quoted('gsize_format', 'u')
+ glibconfig_conf.set_quoted('gssize_format', 'i')
+ glibconfig_conf.set('glib_msize_type', 'INT')
+elif sizet_size == long_size
+ glibconfig_conf.set('glib_size_type_define', 'long')
+ glibconfig_conf.set_quoted('gsize_modifier', 'l')
+ glibconfig_conf.set_quoted('gssize_modifier', 'l')
+ glibconfig_conf.set_quoted('gsize_format', 'lu')
+ glibconfig_conf.set_quoted('gssize_format', 'li')
+ glibconfig_conf.set('glib_msize_type', 'LONG')
+elif sizet_size == long_long_size
+ glibconfig_conf.set('glib_size_type_define', 'long long')
+ glibconfig_conf.set_quoted('gsize_modifier', int64_m)
+ glibconfig_conf.set_quoted('gssize_modifier', int64_m)
+ glibconfig_conf.set_quoted('gsize_format', int64_m + 'u')
+ glibconfig_conf.set_quoted('gssize_format', int64_m + 'i')
+ glibconfig_conf.set('glib_msize_type', 'INT64')
+else
+ error('Could not determine size of size_t.')
+endif
+
+if voidp_size == int_size
+ glibconfig_conf.set('glib_intptr_type_define', 'int')
+ glibconfig_conf.set_quoted('gintptr_modifier', '')
+ glibconfig_conf.set_quoted('gintptr_format', 'i')
+ glibconfig_conf.set_quoted('guintptr_format', 'u')
+ glibconfig_conf.set('glib_gpi_cast', '(gint)')
+ glibconfig_conf.set('glib_gpui_cast', '(guint)')
+elif voidp_size == long_size
+ glibconfig_conf.set('glib_intptr_type_define', 'long')
+ glibconfig_conf.set_quoted('gintptr_modifier', 'l')
+ glibconfig_conf.set_quoted('gintptr_format', 'li')
+ glibconfig_conf.set_quoted('guintptr_format', 'lu')
+ glibconfig_conf.set('glib_gpi_cast', '(glong)')
+ glibconfig_conf.set('glib_gpui_cast', '(gulong)')
+elif voidp_size == long_long_size
+ glibconfig_conf.set('glib_intptr_type_define', 'long long')
+ glibconfig_conf.set_quoted('gintptr_modifier', int64_m)
+ glibconfig_conf.set_quoted('gintptr_format', int64_m + 'i')
+ glibconfig_conf.set_quoted('guintptr_format', int64_m + 'u')
+ glibconfig_conf.set('glib_gpi_cast', '(gint64)')
+ glibconfig_conf.set('glib_gpui_cast', '(guint64)')
+else
+ error('Could not determine size of void *')
+endif
+
+if long_size != 8 and long_long_size != 8 and int_size != 8
+ error('GLib requires a 64-bit type. You might want to consider using the GNU C compiler.')
+endif
+
+glibconfig_conf.set('gintbits', int_size * 8)
+glibconfig_conf.set('glongbits', long_size * 8)
+glibconfig_conf.set('gsizebits', sizet_size * 8)
+glibconfig_conf.set('gssizebits', ssizet_size * 8)
+
+# FIXME: maybe meson should tell us the libsuffix?
+if host_system == 'windows'
+ g_module_suffix = 'dll'
+elif host_system == 'darwin'
+ g_module_suffix = 'dylib'
+else
+ g_module_suffix = 'so'
+endif
+glibconfig_conf.set('g_module_suffix', g_module_suffix)
+
+glibconfig_conf.set('GLIB_MAJOR_VERSION', major_version)
+glibconfig_conf.set('GLIB_MINOR_VERSION', minor_version)
+glibconfig_conf.set('GLIB_MICRO_VERSION', micro_version)
+
+glibconfig_conf.set('glib_void_p', voidp_size)
+glibconfig_conf.set('glib_long', long_size)
+glibconfig_conf.set('glib_size_t', sizet_size)
+glibconfig_conf.set('glib_ssize_t', ssizet_size)
+if host_machine.endian() == 'big'
+ glibconfig_conf.set('g_byte_order', 'G_BIG_ENDIAN')
+ glibconfig_conf.set('g_bs_native', 'BE')
+ glibconfig_conf.set('g_bs_alien', 'LE')
+else
+ glibconfig_conf.set('g_byte_order', 'G_LITTLE_ENDIAN')
+ glibconfig_conf.set('g_bs_native', 'LE')
+ glibconfig_conf.set('g_bs_alien', 'BE')
+endif
+
+# === va_copy checks ===
+# we currently check for all three va_copy possibilities, so we get
+# all results in config.log for bug reports.
+
+va_copy_func = ''
+foreach try_func : [ '__va_copy', 'va_copy' ]
+ if cc.compiles('''#include <stdarg.h>
+ #include <stdlib.h>
+ #ifdef _MSC_VER
+ # include "msvc_recommended_pragmas.h"
+ #endif
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+ @0@ (args2, args1);
+ if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
+ exit (1);
+ va_end (args1); va_end (args2);
+ }
+ int main() {
+ f (0, 42);
+ return 0;
+ }'''.format(try_func),
+ name : try_func + ' check')
+ va_copy_func = try_func
+ endif
+endforeach
+if va_copy_func != ''
+ glib_conf.set('G_VA_COPY', va_copy_func)
+ glib_vacopy = '#define G_VA_COPY ' + va_copy_func
+else
+ glib_vacopy = '/* #undef G_VA_COPY */'
+endif
+
+va_list_val_copy_prog = '''
+ #include <stdarg.h>
+ #include <stdlib.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+ args2 = args1;
+ if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
+ exit (1);
+ va_end (args1); va_end (args2);
+ }
+ int main() {
+ f (0, 42);
+ return 0;
+ }'''
+
+# We do this in two steps so if compilation fails already it looks less alarming
+glib_va_val_copy = false
+if cc.compiles(va_list_val_copy_prog, name : 'va_lists can be copied as values')
+ # FIXME: what to do when cross-compiling?
+ if cc.run(va_list_val_copy_prog, name : 'va_lists can be copied as values').returncode() == 0
+ glib_va_val_copy = true
+ endif
+endif
+if not glib_va_val_copy
+ glib_va_val_copy = false
+ glib_vacopy = glib_vacopy + '\n#define G_VA_COPY_AS_ARRAY 1'
+ glib_conf.set('G_VA_COPY_AS_ARRAY', 1)
+endif
+glibconfig_conf.set('glib_vacopy', glib_vacopy)
+
+# check for flavours of varargs macros
+g_have_iso_c_varargs = cc.compiles('''
+ void some_func (void) {
+ int a(int p1, int p2, int p3);
+ #define call_a(...) a(1,__VA_ARGS__)
+ call_a(2,3);
+ }''', name : 'ISO C99 varargs macros in C')
+
+if g_have_iso_c_varargs
+ glibconfig_conf.set('g_have_iso_c_varargs', '''
+#ifndef __cplusplus
+# define G_HAVE_ISO_VARARGS 1
+#endif''')
+endif
+
+g_have_iso_cxx_varargs = cxx.compiles('''
+ void some_func (void) {
+ int a(int p1, int p2, int p3);
+ #define call_a(...) a(1,__VA_ARGS__)
+ call_a(2,3);
+ }''', name : 'ISO C99 varargs macros in C++')
+
+if g_have_iso_cxx_varargs
+ glibconfig_conf.set('g_have_iso_cxx_varargs', '''
+#ifdef __cplusplus
+# define G_HAVE_ISO_VARARGS 1
+#endif''')
+endif
+
+g_have_gnuc_varargs = cc.compiles('''
+ void some_func (void) {
+ int a(int p1, int p2, int p3);
+ #define call_a(params...) a(1,params)
+ call_a(2,3);
+ }''', name : 'GNUC varargs macros')
+
+if cc.has_header('alloca.h')
+ glibconfig_conf.set('GLIB_HAVE_ALLOCA_H', true)
+endif
+has_syspoll = cc.has_header('sys/poll.h')
+has_systypes = cc.has_header('sys/types.h')
+if has_syspoll
+ glibconfig_conf.set('GLIB_HAVE_SYS_POLL_H', true)
+endif
+has_winsock2 = cc.has_header('winsock2.h')
+
+if has_syspoll and has_systypes
+ templ = '''#include<sys/poll.h>
+#include<sys/types.h>
+#include<stdio.h>
+int main(int argc, char **argv) {
+ printf("%d\n", (int)@0@);
+ return 0;
+}'''
+elif has_winsock2
+ templ = '''#define _WIN32_WINNT 0x0600
+#include <stdio.h>
+#include <winsock2.h>
+int main(int argc, char **argv) {
+ printf("%d\n", (int)@0@);
+ return 0;
+}'''
+else
+ # FIXME?
+ error('FIX POLL* defines')
+endif
+
+value_POLLIN = cc.run(templ.format('POLLIN'), name : 'POLLIN value').stdout().strip()
+value_POLLOUT = cc.run(templ.format('POLLOUT'), name : 'POLLOUT value').stdout().strip()
+value_POLLPRI = cc.run(templ.format('POLLPRI'), name : 'POLLPRI value').stdout().strip()
+value_POLLERR = cc.run(templ.format('POLLERR'), name : 'POLLERR value').stdout().strip()
+value_POLLHUP = cc.run(templ.format('POLLHUP'), name : 'POLLHUP value').stdout().strip()
+value_POLLNVAL = cc.run(templ.format('POLLNVAL'), name : 'POLLNVAL value').stdout().strip()
+
+glibconfig_conf.set('g_pollin', value_POLLIN)
+glibconfig_conf.set('g_pollout', value_POLLOUT)
+glibconfig_conf.set('g_pollpri', value_POLLPRI)
+glibconfig_conf.set('g_pollerr', value_POLLERR)
+glibconfig_conf.set('g_pollhup', value_POLLHUP)
+glibconfig_conf.set('g_pollnval', value_POLLNVAL)
+
+# Internet address families
+# FIXME: what about Cygwin (G_WITH_CYGWIN)
+if host_system == 'windows'
+ glib_inet_includes= '''
+#include <winsock2.h>
+'''
+else
+ glib_inet_includes='''
+#include <sys/types.h>
+#include <sys/socket.h>
+'''
+endif
+
+net_defines = [
+ [ 'AF_UNIX', 'g_af_unix' ],
+ [ 'AF_INET', 'g_af_inet' ],
+ [ 'AF_INET6', 'g_af_inet6' ],
+ [ 'MSG_OOB', 'g_msg_oob' ],
+ [ 'MSG_PEEK', 'g_msg_peek' ],
+ [ 'MSG_DONTROUTE', 'g_msg_dontroute' ],
+]
+foreach d : net_defines
+ templ = '''@0@
+#include <stdio.h>
+int main(int argc, char **argv) {
+ printf("%d\n", (int)@1@);
+ return 0;
+}'''
+ # FIXME: fix for cross-compilation
+ if not meson.has_exe_wrapper()
+ error('Fix sys define detection for cross build')
+ endif
+ val = cc.run(templ.format(glib_inet_includes, d[0]), name : d[0] + ' value').stdout().strip()
+ glibconfig_conf.set(d[1], val)
+endforeach
+
+glibconfig_conf.set('GLIB_USING_SYSTEM_PRINTF', true) # FIXME!
+
+# We need a more robust approach here...
+host_cpu_family = host_machine.cpu_family()
+if host_cpu_family == 'x86' or host_cpu_family == 'x86_64' or host_cpu_family == 's390' or host_cpu_family == 's390x' or host_cpu_family.startswith('arm') or host_cpu_family.startswith('crisv32') or host_cpu_family.startswith('etrax')
+ glib_memory_barrier_needed = false
+elif host_cpu_family.startswith('sparc') or host_cpu_family.startswith('alpha') or host_cpu_family.startswith('powerpc') or host_cpu_family == 'ia64'
+ glib_memory_barrier_needed = true
+else
+ error('Unknown host cpu: ' + host_cpu_family)
+ glib_memory_barrier_needed = true
+endif
+glibconfig_conf.set('G_ATOMIC_OP_MEMORY_BARRIER_NEEDED', glib_memory_barrier_needed)
+
+# Note that the atomic ops are only available with GCC on x86 when
+# using -march=i486 or higher. If we detect that the atomic ops are
+# not available but would be available given the right flags, we want
+# to abort and advise the user to fix their CFLAGS. It's better to do
+# that then to silently fall back on emulated atomic ops just because
+# the user had the wrong build environment.
+atomictest = '''void func() {
+ volatile int atomic = 2;
+ __sync_bool_compare_and_swap (&atomic, 2, 3);
+}
+'''
+if cc.compiles(atomictest)
+ glibconfig_conf.set('G_ATOMIC_LOCK_FREE', true)
+else
+ if host_machine.cpu_family() == 'x86' and cc.compiles(atomictest, args : '-march=i486')
+ error('GLib must be built with -march=i486 or later.')
+ endif
+ glibconfig_conf.set('G_ATOMIC_LOCK_FREE', false)
+endif
+
+# === Threads ===
+
+# Let meson figure out all this business and whether -pthread or whatnot is needed
+# FIXME: probably needs more tweaking in meson for things like -D_REENTRANT etc.
+thread_dep = dependency('threads')
+
+# Determination of thread implementation
+if host_system == 'windows'
+ glibconfig_conf.set('g_threads_impl_def', 'WIN32')
+ glib_conf.set('THREADS_WIN32', 1)
+else
+ glibconfig_conf.set('g_threads_impl_def', 'POSIX')
+ glib_conf.set('THREADS_POSIX', 1)
+ if cc.has_header_symbol('pthread.h', 'pthread_attr_setstacksize')
+ glib_conf.set('HAVE_PTHREAD_ATTR_SETSTACKSIZE', 1)
+ endif
+ if cc.has_header_symbol('pthread.h', 'pthread_condattr_setclock')
+ glib_conf.set('HAVE_PTHREAD_CONDATTR_SETCLOCK', 1)
+ endif
+ if cc.has_header_symbol('pthread.h', 'pthread_cond_timedwait_relative_np')
+ glib_conf.set('HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE_NP', 1)
+ endif
+ if cc.links('''#include <pthread.h>
+ int main() {
+ pthread_setname_np("example");
+ }''', name : 'pthread_setname_np(const char*)')
+ glib_conf.set('HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID', 1)
+ elif cc.links('''#include <pthread.h>
+ int main() {
+ pthread_setname_np(pthread_self(), "example");
+ }''', name : 'pthread_setname_np(pthread_t, const char*)')
+ glib_conf.set('HAVE_PTHREAD_SETNAME_NP_WITH_TID', 1)
+ endif
+endif
+
+# FIXME: how to do this when cross-compiling?
+# FIXME: we should make it print the result and always return 0, so that
+# the output in meson shows up as green
+stack_grows_check_prog = '''
+ volatile int *a = 0, *b = 0;
+ void f (int i) {
+ volatile int x = 5;
+ if (i == 0)
+ b = &x;
+ else
+ f (i - 1);
+ }
+ int main () {
+ volatile int y = 7;
+ a = &y;
+ f (100);
+ return b > a ? 0 : 1;
+ }'''
+stack_grows_run_result = cc.run(stack_grows_check_prog, name : 'stack grows check')
+if stack_grows_run_result.compiled() and stack_grows_run_result.returncode() == 0
+ glibconfig_conf.set('G_HAVE_GROWING_STACK', 1)
+else
+ glibconfig_conf.set('G_HAVE_GROWING_STACK', 0)
+endif
+
+# Tests for iconv
+#
+# First, we check if the C library provides iconv, then GNU libiconv, then
+# a native implementation
+# FIXME: add option as well
+#
+# USE_LIBICONV_GNU: Using GNU libiconv
+# USE_LIBICONV_NATIVE: Using a native impl of iconv in a separate library
+#
+# We should never use the MinGW C library's iconv. On Windows we use the
+# GNU implementation that ships with MinGW.
+
+# On Windows, just always use the built-in implementation
+if host_system == 'windows'
+ libiconv = []
+ glib_conf.set('USE_LIBICONV_NATIVE', true)
+# Check C library; never check MinGW C library
+elif cc.has_function('iconv_open')
+ libiconv = []
+# Check for libiconv
+elif cc.has_header_symbol('iconv.h', 'libiconv_open')
+ glib_conf.set('USE_LIBICONV_GNU', true)
+ libiconv = [cc.find_library('iconv')]
+# Check for a custom iconv implementation
+elif cc.has_header_symbol('iconv.h', 'iconv_open')
+ glib_conf.set('USE_LIBICONV_NATIVE', true)
+ libiconv = [cc.find_library('iconv')]
+else
+ error('No iconv() implementation found in C library or libiconv')
+endif
+
+if get_option('with-pcre') == 'internal'
+ pcre = []
+ use_system_pcre = false
+else
+ pcre = dependency('libpcre', required : false) # Should check for Unicode support, too. FIXME
+ use_system_pcre = pcre.found()
+endif
+glib_conf.set('USE_SYSTEM_PCRE', use_system_pcre)
+
+libm = cc.find_library('m', required : false)
+libffi_dep = dependency('libffi', version : '>= 3.0.0', fallback : ['libffi', 'ffi_dep'])
+libz_dep = dependency('zlib', fallback : ['zlib', 'zlib_dep'])
+
+# Only used on non-glibc targets
+libintl = cc.find_library('intl', required : false)
+if host_system == 'windows' and not libintl.found()
+ # Used only when the gettext library is not available (MSVC, not MinGW)
+ libintl = subproject('proxy-libintl').get_variable('intl_dep')
+ glib_conf.set('HAVE_DCGETTEXT', 1)
+else
+ glib_conf.set('HAVE_DCGETTEXT', cc.has_header_symbol('libintl.h', 'dcgettext'))
+endif
+# We require gettext to always be present
+glib_conf.set('HAVE_GETTEXT', 1)
+glib_conf.set_quoted('GLIB_LOCALE_DIR', join_paths(glib_datadir, 'locale'))
+# xgettext is optional (on Windows for instance)
+xgettext = find_program('xgettext', required : false)
+
+# libmount is only used by gio, but we need to fetch the libs to generate the
+# pkg-config file below
+libmount_dep = []
+libmount_opt = get_option('enable-libmount')
+if host_system == 'linux' and libmount_opt != 'no'
+ libmount_dep = [dependency('mount', version : '>=2.28', required : false)]
+ if not libmount_dep[0].found()
+ libmount_dep = [cc.find_library('mount')]
+ libmount_h = cc.has_header('libmount/libmount.h')
+ libmount_needed = libmount_opt == 'yes' and host_system == 'linux'
+ if libmount_needed and (not libmount_dep[0].found() or not libmount_h)
+ error('Need libmount but couldn\'t find it')
+ endif
+ endif
+endif
+
+if host_system == 'windows'
+ winsock2 = cc.find_library('ws2_32')
+endif
+
+python = import('python3').find_python()
+
+# FIXME: defines in config.h that are not actually used anywhere
+# (we add them for now to minimise the diff)
+glib_conf.set('HAVE_DLFCN_H', 1)
+glib_conf.set('__EXTENSIONS__', 1)
+glib_conf.set('STDC_HEADERS', 1)
+# THREADS_NONE
+glib_conf.set('SIZEOF___INT64', 8)
+
+# Various substs needed for our pkg-config files
+# FIXME: Derive these from the dependency() objects (Meson support needed)
+glib_conf.set('ZLIB_LIBS', '-lz')
+glib_conf.set('LIBFFI_LIBS', '-lffi')
+if libintl.found()
+ glib_conf.set('INTLLIBS', '-lintl')
+endif
+if libiconv.length() != 0
+ glib_conf.set('ICONV_LIBS', '-liconv')
+endif
+if use_system_pcre
+ glib_conf.set('PCRE_LIBS', '-lpcre')
+endif
+if libmount_dep.length() == 1 and libmount_dep[0].found()
+ glib_conf.set('LIBMOUNT_LIBS', '-lmount')
+endif
+glib_conf.set('GIO_MODULE_DIR', '${libdir}/gio/modules')
+# FIXME: Missing:
+# @G_MODULE_LIBS@ @SELINUX_LIBS@ @COCOA_LIBS@ @CARBON_LIBS@ @G_LIBS_EXTRA@
+# @PCRE_REQUIRES@ @GLIB_EXTRA_CFLAGS@ @G_THREAD_CFLAGS@
+
+# Tracing: dtrace
+want_dtrace = get_option('enable-dtrace')
+enable_dtrace = false
+
+# Since dtrace support is opt-in we just error out if it was requested but
+# is not available. We don't bother with autodetection yet.
+if want_dtrace
+ if glib_have_carbon
+ error('GLib dtrace support not yet compatible with macOS dtrace')
+ endif
+ dtrace = find_program('dtrace', required : true) # error out if not found
+ if not cc.has_header('sys/sdt.h')
+ error('dtrace support needs sys/sdt.h header')
+ endif
+ # FIXME: autotools build also passes -fPIC -DPIC but is it needed in this case?
+ dtrace_obj_gen = generator(dtrace,
+ output : '@BASENAME@.o',
+ arguments : ['-G', '-s', '@INPUT@', '-o', '@OUTPUT@'])
+ # FIXME: $(SED) -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES,"
+ # -e "s,define _SDT_HAS_SEMAPHORES 1,undef _SDT_HAS_SEMAPHORES,"
+ dtrace_hdr_gen = generator(dtrace,
+ output : '@BASENAME@.h',
+ arguments : ['-h', '-s', '@INPUT@', '-o', '@OUTPUT@'])
+ glib_conf.set('HAVE_DTRACE', 1)
+ enable_dtrace = true
+endif
+
+# systemtap
+want_systemtap = get_option('enable-systemtap')
+enable_systemtap = false
+
+if want_systemtap and enable_dtrace
+ tapset_install_dir = get_option('tapset-install-dir')
+ if tapset_install_dir == ''
+ tapset_install_dir = join_paths(get_option('datadir'), 'systemtap/tapset')
+ endif
+ stp_cdata = configuration_data()
+ stp_cdata.set('ABS_GLIB_RUNTIME_LIBDIR', glib_libdir)
+ stp_cdata.set('LT_CURRENT', minor_version.to_int() * 100)
+ stp_cdata.set('LT_REVISION', micro_version.to_int())
+ enable_systemtap = true
+endif
+
+
+subdir('glib')
+subdir('gobject')
+subdir('gthread')
+subdir('gmodule')
+subdir('gio')
+if xgettext.found()
+ subdir('po')
+endif
+subdir('tests')
+
+# Configure and install pkg-config files
+pc_files = [
+ 'gobject-2.0.pc',
+ 'glib-2.0.pc',
+ 'gthread-2.0.pc',
+ 'gmodule-2.0.pc',
+ 'gmodule-export-2.0.pc',
+ 'gmodule-no-export-2.0.pc',
+ 'gio-2.0.pc',
+]
+if host_system == 'windows'
+ pc_files += ['gio-windows-2.0.pc']
+else
+ pc_files += ['gio-unix-2.0.pc']
+endif
+
+foreach pc : pc_files
+ configure_file(input : pc + '.in',
+ install : true,
+ install_dir : glib_pkgconfigreldir,
+ output : pc,
+ configuration : glib_conf)
+endforeach
+
+# NOTE: We skip glib-zip.in because the filenames it assumes don't match ours
+
+# Install glib-gettextize executable
+configure_file(input : 'glib-gettextize.in',
+ install : true,
+ install_dir : 'bin',
+ output : 'glib-gettextize',
+ configuration : glib_conf)
+
+# Install m4 macros that other projects use
+install_data('m4macros/glib-2.0.m4', 'm4macros/glib-gettext.m4', 'm4macros/gsettings.m4',
+ install_dir : join_paths(get_option('datadir'), 'aclocal'))
+# Install Valgrind suppression file
+install_data('glib.supp',
+ install_dir : join_paths(get_option('datadir'), 'glib-2.0', 'valgrind'))
+
+configure_file(input : 'config.h.meson',
+ output : 'config.h',
+ configuration : glib_conf)
+
+if get_option('with-man') != 'no'
+ xsltproc = find_program('xsltproc', required : false)
+ if not xsltproc.found() and get_option('with-man') == 'yes'
+ error('man pages enabled and xsltproc not found')
+ endif
+ xsltproc_command = [
+ xsltproc,
+ '--nonet',
+ '--stringparam', 'man.output.quietly', '1',
+ '--stringparam', 'funcsynopsis.style', 'ansi',
+ '--stringparam', 'man.th.extra1.suppress', '1',
+ '--stringparam', 'man.authors.section.enabled', '0',
+ '--stringparam', 'man.copyright.section.enabled', '0',
+ '-o', '@OUTPUT@',
+ 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl',
+ '@INPUT@',
+ ]
+ man1_dir = get_option('mandir') + '/man1'
+endif
+
+gnome = import('gnome')
+subdir('docs/reference/glib')
+subdir('docs/reference/gobject')
+subdir('docs/reference/gio')
--- /dev/null
+option('with-docs', type : 'combo', choices : ['auto', 'yes', 'no'], value : 'auto')
+option('with-man', type : 'combo', choices : ['auto', 'yes', 'no'], value : 'auto')
+option('with-pcre', type : 'combo', choices : ['system', 'internal'], value : 'system')
+option('enable-libmount', type : 'combo', choices : ['auto', 'yes', 'no'], value : 'yes')
+option('enable-dtrace', type : 'boolean', value : false,
+ description : 'include tracing support for dtrace')
+option('enable-systemtap', type : 'boolean', value : false,
+ description : 'include tracing support for systemtap')
+option('tapset-install-dir', type : 'string', value : '',
+ description : 'path where systemtap tapsets are installed')
"Project-Id-Version: glib.master\n"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=glib&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2017-06-02 16:12+0000\n"
-"PO-Revision-Date: 2017-06-05 16:09+0200\n"
+"POT-Creation-Date: 2017-08-03 15:40+0000\n"
+"PO-Revision-Date: 2017-08-04 15:42+0200\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"Language-Team: es <gnome-es-list@gnome.org>\n"
"Language: es\n"
#: ../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 "Imprimir ayuda"
msgid "Print version"
msgstr "Imprimir versión"
-#: ../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 "Mostrar información de la versión y salir"
"Parámetro opcionales para la invocación de la acción, en formato GVariant"
#: ../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"
msgstr "Uso:\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 "Argumentos:\n"
#: ../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 "Hay una secuencia de bytes no válida en la entrada de conversión"
msgid "Error during conversion: %s"
msgstr "Falló durante la conversión: %s"
-#: ../gio/gcharsetconverter.c:444 ../gio/gsocket.c:1085
+#: ../gio/gcharsetconverter.c:445 ../gio/gsocket.c:1096
msgid "Cancellable initialization not supported"
msgstr "La inicialización cancelable no eestá soportada"
-#: ../gio/gcharsetconverter.c:454 ../glib/gconvert.c:321
+#: ../gio/gcharsetconverter.c:456 ../glib/gconvert.c:321
#: ../glib/giochannel.c:1384
#, c-format
msgid "Conversion from character set “%s” to “%s” is not supported"
msgstr ""
"La conversión desde el conjunto de caracteres «%s» a «%s» no está soportada"
-#: ../gio/gcharsetconverter.c:458 ../glib/gconvert.c:325
+#: ../gio/gcharsetconverter.c:460 ../glib/gconvert.c:325
#, c-format
msgid "Could not open converter from “%s” to “%s”"
msgstr "No se pudo abrir el conversor de «%s» a «%s»"
msgid "Unknown or unsupported transport “%s” for address “%s”"
msgstr "Transporte «%s» desconocido o no soportado para la dirección «%s»"
-#: ../gio/gdbusaddress.c:702
+#: ../gio/gdbusaddress.c:704
#, c-format
msgid "Error opening nonce file “%s”: %s"
msgstr "Error al abrir el archivo de número usado una sola vez «%s»: %s"
-#: ../gio/gdbusaddress.c:720
+#: ../gio/gdbusaddress.c:723
#, c-format
msgid "Error reading from nonce file “%s”: %s"
msgstr "Error al leer el archivo de número usado una sola vez «%s»: %s"
-#: ../gio/gdbusaddress.c:729
+#: ../gio/gdbusaddress.c:732
#, c-format
msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
msgstr ""
"Error al leer el archivo de número usado una sola vez «%s», se esperaban 16 "
"bytes, se obtuvieron %d"
-#: ../gio/gdbusaddress.c:747
+#: ../gio/gdbusaddress.c:750
#, c-format
msgid "Error writing contents of nonce file “%s” to stream:"
msgstr ""
"Error al escribir el contenido del archivo de número usado una sola vez «%s» "
"al flujo:"
-#: ../gio/gdbusaddress.c:956
+#: ../gio/gdbusaddress.c:959
msgid "The given address is empty"
msgstr "La dirección proporcionada está vacía"
-#: ../gio/gdbusaddress.c:1069
+#: ../gio/gdbusaddress.c:1072
#, c-format
msgid "Cannot spawn a message bus when setuid"
msgstr "No se puede lanzar («spawn») un mensaje al bus con setuid"
-#: ../gio/gdbusaddress.c:1076
+#: ../gio/gdbusaddress.c:1079
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "No se puede lanzar («spawn») un mensaje al bus sin un ID de máquina: "
-#: ../gio/gdbusaddress.c:1083
+#: ../gio/gdbusaddress.c:1086
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "No se puede lanzar D-Bus automáticamente sin X11 $DISPLAY"
-#: ../gio/gdbusaddress.c:1125
+#: ../gio/gdbusaddress.c:1128
#, c-format
msgid "Error spawning command line “%s”: "
msgstr "Error al lanzar («spawn») el comando «%s»: "
-#: ../gio/gdbusaddress.c:1342
+#: ../gio/gdbusaddress.c:1345
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Escriba un carácter cualquiera para cerrar esta ventana)\n"
-#: ../gio/gdbusaddress.c:1496
+#: ../gio/gdbusaddress.c:1499
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
"La sesión de dbus no está en ejecución, y falló el lanzamiento automático"
-#: ../gio/gdbusaddress.c:1507
+#: ../gio/gdbusaddress.c:1510
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"No se puede determinar la dirección del bus de sesión (no implementado para "
"este SO)"
-#: ../gio/gdbusaddress.c:1645
+#: ../gio/gdbusaddress.c:1648
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"No se puede determinar la dirección del bus desde la variable de entorno "
"DBUS_STARTER_BUS_TYPE; variable «%s» desconocida"
-#: ../gio/gdbusaddress.c:1654 ../gio/gdbusconnection.c:7155
+#: ../gio/gdbusaddress.c:1657 ../gio/gdbusconnection.c:7155
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
"No se puede determinar la dirección del bus porque la variable de entorno "
"DBUS_STARTER_BUS_TYPE no está establecida"
-#: ../gio/gdbusaddress.c:1664
+#: ../gio/gdbusaddress.c:1667
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipo de bus %d desconocido"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelado a través de GDBusAuthObserver::authorize-authenticated-peer"
-#: ../gio/gdbusauthmechanismsha1.c:261
+#: ../gio/gdbusauthmechanismsha1.c:262
#, c-format
msgid "Error when getting information for directory “%s”: %s"
msgstr "Error al obtener la información de la carpeta «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:273
+#: ../gio/gdbusauthmechanismsha1.c:274
#, c-format
msgid ""
"Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
"Los permisos de la carpeta «%s» están mal formados. Se esperaba el modo "
"0700, se obtuvo 0%o"
-#: ../gio/gdbusauthmechanismsha1.c:294
+#: ../gio/gdbusauthmechanismsha1.c:296
#, c-format
msgid "Error creating directory “%s”: %s"
msgstr "Error al crear la carpeta %s: %s"
-#: ../gio/gdbusauthmechanismsha1.c:377
+#: ../gio/gdbusauthmechanismsha1.c:379
#, c-format
msgid "Error opening keyring “%s” for reading: "
msgstr "Error al abrir el depósito de claves «%s» para su lectura: "
-#: ../gio/gdbusauthmechanismsha1.c:401 ../gio/gdbusauthmechanismsha1.c:714
+#: ../gio/gdbusauthmechanismsha1.c:403 ../gio/gdbusauthmechanismsha1.c:721
#, c-format
msgid "Line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
"La línea %d del depósito de claves en «%s» con contenido «%s» está mal "
"formada"
-#: ../gio/gdbusauthmechanismsha1.c:415 ../gio/gdbusauthmechanismsha1.c:728
+#: ../gio/gdbusauthmechanismsha1.c:417 ../gio/gdbusauthmechanismsha1.c:735
#, c-format
msgid ""
"First token of line %d of the keyring at “%s” with content “%s” is malformed"
"El primer token de la línea %d del depósito de claves en «%s» con contenido "
"«%s» está mal formado"
-#: ../gio/gdbusauthmechanismsha1.c:430 ../gio/gdbusauthmechanismsha1.c:742
+#: ../gio/gdbusauthmechanismsha1.c:432 ../gio/gdbusauthmechanismsha1.c:749
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s” with content “%s” is malformed"
"El segundo token de la línea %d del depósito de claves en «%s» con contenido "
"«%s» está mal formado"
-#: ../gio/gdbusauthmechanismsha1.c:454
+#: ../gio/gdbusauthmechanismsha1.c:456
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%s”"
msgstr "No se encontró la «cookie» con ID %d en el depósito de claves en «%s»"
-#: ../gio/gdbusauthmechanismsha1.c:532
+#: ../gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error deleting stale lock file “%s”: %s"
msgstr "Error al eliminar el archivo de bloqueo antiguo «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:564
+#: ../gio/gdbusauthmechanismsha1.c:569
#, c-format
msgid "Error creating lock file “%s”: %s"
msgstr "Error al crear el archivo de bloqueo «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:594
+#: ../gio/gdbusauthmechanismsha1.c:600
#, c-format
msgid "Error closing (unlinked) lock file “%s”: %s"
msgstr "Error al cerrar (desenlazar) el archivo de bloqueo «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:604
+#: ../gio/gdbusauthmechanismsha1.c:611
#, c-format
msgid "Error unlinking lock file “%s”: %s"
msgstr "Error al desenlazar el archivo de bloqueo «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:681
+#: ../gio/gdbusauthmechanismsha1.c:688
#, c-format
msgid "Error opening keyring “%s” for writing: "
msgstr "Error al abrir el depósito de claves «%s» para su escritura:"
-#: ../gio/gdbusauthmechanismsha1.c:878
+#: ../gio/gdbusauthmechanismsha1.c:885
#, c-format
msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
msgstr ""
"No se puede especificar el archivo de número usado una sola vez al crear un "
"servidor"
-#: ../gio/gdbusserver.c:873
+#: ../gio/gdbusserver.c:876
#, c-format
msgid "Error writing nonce file at “%s”: %s"
msgstr "Error al escribir el archivo de número usado una sola vez en «%s»: %s"
-#: ../gio/gdbusserver.c:1044
+#: ../gio/gdbusserver.c:1047
#, c-format
msgid "The string “%s” is not a valid D-Bus GUID"
msgstr "La cadena «%s» no es un GUID válido de D-Bus"
-#: ../gio/gdbusserver.c:1084
+#: ../gio/gdbusserver.c:1087
#, c-format
msgid "Cannot listen on unsupported transport “%s”"
msgstr "No se puede escuchar en un transporte no soportado «%s»"
#: ../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:3614 ../gio/gfile.c:3669
+#: ../gio/gfile.c:3905 ../gio/gfile.c:3947 ../gio/gfile.c:4415
+#: ../gio/gfile.c:4826 ../gio/gfile.c:4911 ../gio/gfile.c:5001
+#: ../gio/gfile.c:5098 ../gio/gfile.c:5185 ../gio/gfile.c:5286
+#: ../gio/gfile.c:7827 ../gio/gfile.c:7917 ../gio/gfile.c:8001
#: ../gio/win32/gwinhttpfile.c:437
msgid "Operation not supported"
msgstr "Operación no soportada"
msgid "Containing mount does not exist"
msgstr "El punto de montaje contenido no existe"
-#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2375
+#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2377
msgid "Can’t copy over directory"
msgstr "No se puede copiar sobre la carpeta"
msgid "Error splicing file: %s"
msgstr "Error al unir el archivo: %s"
-#: ../gio/gfile.c:3024
+#: ../gio/gfile.c:3025
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copiar (reflink/clone) entre puntos de montaje no está soportado"
-#: ../gio/gfile.c:3028
+#: ../gio/gfile.c:3029
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copiar (reflink/clone) no está soportado o no es válido"
-#: ../gio/gfile.c:3033
+#: ../gio/gfile.c:3034
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copiar (reflink/clone) no está soportado o no ha funcionado"
-#: ../gio/gfile.c:3096
+#: ../gio/gfile.c:3097
msgid "Can’t copy special file"
msgstr "No se puede copiar el archivo especial"
-#: ../gio/gfile.c:3890
+#: ../gio/gfile.c:3895
msgid "Invalid symlink value given"
msgstr "El valor del enlace simbólico dado no es válido"
-#: ../gio/gfile.c:4051
+#: ../gio/gfile.c:4056
msgid "Trash not supported"
msgstr "No se soporta mover a la papelera"
-#: ../gio/gfile.c:4163
+#: ../gio/gfile.c:4168
#, c-format
msgid "File names cannot contain “%c”"
msgstr "Los nombres de archivo no pueden contener «%c»"
-#: ../gio/gfile.c:6609 ../gio/gvolume.c:363
+#: ../gio/gfile.c:6614 ../gio/gvolume.c:363
msgid "volume doesn’t implement mount"
msgstr "el volumen no implementa el montaje"
-#: ../gio/gfile.c:6718
+#: ../gio/gfile.c:6723
msgid "No application is registered as handling this file"
msgstr "No hay ninguna aplicación registrada para manejar este archivo"
"Use %s para obtener ayuda detallada.\n"
"\n"
-#: ../gio/gio-tool-cat.c:80
+#: ../gio/gio-tool-cat.c:83
msgid "Error writing to stdout"
msgstr "Error al escribir en la salida estándar"
#. Translators: commandline placeholder
-#: ../gio/gio-tool-cat.c:124 ../gio/gio-tool-info.c:282
+#: ../gio/gio-tool-cat.c:127 ../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
msgid "LOCATION"
msgstr "UBICACIÓN"
-#: ../gio/gio-tool-cat.c:129
+#: ../gio/gio-tool-cat.c:132
msgid "Concatenate files and print to standard output."
msgstr "Concatenar archivos e imprimir por la salida estándar."
-#: ../gio/gio-tool-cat.c:131
+#: ../gio/gio-tool-cat.c:134
msgid ""
"gio cat works just like the traditional cat utility, but using GIO\n"
"locations instead of local files: for example, you can use something\n"
"ubicaciones GIO en lugar de archivos locales: por ejemplo, puede\n"
"usar algo como smb://servidor/recurso/archivo.txt como ubicación."
-#: ../gio/gio-tool-cat.c:153 ../gio/gio-tool-info.c:313
+#: ../gio/gio-tool-cat.c:156 ../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"
msgid "List contents of directories in a tree-like format."
msgstr "Listar el contenido de las carpetas en forma de árbol."
-#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1492
+#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1501
#, c-format
msgid "Element <%s> not allowed inside <%s>"
msgstr "No se permite el elemento <%s> dentro de <%s>"
msgid "Error compressing file %s"
msgstr "Error al comprimir el archivo %s"
-#: ../gio/glib-compile-resources.c:469 ../gio/glib-compile-schemas.c:1604
+#: ../gio/glib-compile-resources.c:469
#, c-format
msgid "text may not appear inside <%s>"
msgstr "El texto no debe aparecer dentro de <%s>"
-#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2053
+#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2067
msgid "Show program version and exit"
msgstr "Mostrar la versión del programa y salir"
"La carpeta de la que se tienen que leer los archivos (la predeterminada es "
"la carpeta actual)"
-#: ../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:2068
+#: ../gio/glib-compile-schemas.c:2096
msgid "DIRECTORY"
msgstr "CARPETA"
msgid "You should give exactly one file name\n"
msgstr "Deberá proporcionar exactamente un nombre de archivo\n"
-#: ../gio/glib-compile-schemas.c:784
-msgid "empty names are not permitted"
-msgstr "no se permiten nombres vacíos"
+#: ../gio/glib-compile-schemas.c:95
+#, c-format
+msgid "nick must be a minimum of 2 characters"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:106
+#, c-format
+#| msgid "Invalid symlink value given"
+msgid "Invalid numeric value"
+msgstr "Valor numérico no válido"
+
+#: ../gio/glib-compile-schemas.c:114
+#, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "<value nick='%s'/> already specified"
+msgstr "<value nick='%s'/> ya especificado"
+
+#: ../gio/glib-compile-schemas.c:122
+#, c-format
+#| msgid "<key name='%s'> already specified"
+msgid "value='%s' already specified"
+msgstr "value='%s' ya especificado"
+
+#: ../gio/glib-compile-schemas.c:136
+#, c-format
+msgid "flags values must have at most 1 bit set"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:161
+#, c-format
+msgid "<%s> must contain at least one <value>"
+msgstr "<%s> debe contener al menos un <value>"
+
+#: ../gio/glib-compile-schemas.c:315
+#, fuzzy, c-format
+#| msgid "No connection endpoint specified"
+msgid "<%s> is not contained in the specified range"
+msgstr "No se especificó ningún punto de conexión extremo"
+
+#: ../gio/glib-compile-schemas.c:327
+#, c-format
+msgid "<%s> is not a valid member of the specified enumerated type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:333
+#, c-format
+msgid "<%s> contains string not in the specified flags type"
+msgstr ""
+"<%s> contiene una cadena que no está especificada en los tipos de opciones"
+
+#: ../gio/glib-compile-schemas.c:339
+#, c-format
+msgid "<%s> contains a string not in <choices>"
+msgstr "<%s> contiene una cadena que no está en <choices>"
-#: ../gio/glib-compile-schemas.c:794
+#: ../gio/glib-compile-schemas.c:373
+#| msgid "<key name='%s'> already specified"
+msgid "<range/> already specified for this key"
+msgstr "<range/> ya especificada para esta clave"
+
+#: ../gio/glib-compile-schemas.c:391
+#, c-format
+msgid "<range> not allowed for keys of type “%s”"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:408
+#, c-format
+msgid "<range> specified minimum is greater than maximum"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:433
#, c-format
-msgid "invalid name '%s': names must begin with a lowercase letter"
+msgid "unsupported l10n category: %s"
+msgstr "categoría l10n no soportada: %s"
+
+#: ../gio/glib-compile-schemas.c:441
+msgid "l10n requested, but no gettext domain given"
msgstr ""
-"nombre «%s» no válido: los nombres deben comenzar por una letra minúscula"
-#: ../gio/glib-compile-schemas.c:806
+#: ../gio/glib-compile-schemas.c:453
+msgid "translation context given for value without l10n enabled"
+msgstr "contexto de traducción especificado sin tener l10n activado"
+
+#: ../gio/glib-compile-schemas.c:475
#, c-format
+#| msgid "Failed to create file “%s”: %s"
+msgid "Failed to parse <default> value of type “%s”: "
+msgstr "Falló al analizar el valor <default> del tipo «%s»: "
+
+#: ../gio/glib-compile-schemas.c:492
msgid ""
-"invalid name '%s': invalid character '%c'; only lowercase letters, numbers "
-"and hyphen ('-') are permitted."
+"<choices> cannot be specified for keys tagged as having an enumerated type"
msgstr ""
-"nombre «%s» no válido: el carácter «%c» no es válido; sólo se permiten "
-"nombres en minúscula, números y guión («-»)."
-#: ../gio/glib-compile-schemas.c:815
+#: ../gio/glib-compile-schemas.c:501
+#| msgid "<child name='%s'> already specified"
+msgid "<choices> already specified for this key"
+msgstr "<choices> ya especificado para esta clave"
+
+#: ../gio/glib-compile-schemas.c:513
#, c-format
-msgid "invalid name '%s': two successive hyphens ('--') are not permitted."
-msgstr "nombre «%s» no válido: no se permiten dos guiones seguidos («--»)."
+msgid "<choices> not allowed for keys of type “%s”"
+msgstr ""
-#: ../gio/glib-compile-schemas.c:824
+#: ../gio/glib-compile-schemas.c:529
#, c-format
-msgid "invalid name '%s': the last character may not be a hyphen ('-')."
-msgstr "nombre «%s» no válido: el último carácter no puede ser un guión («-»)."
+#| msgid "<child name='%s'> already specified"
+msgid "<choice value='%s'/> already given"
+msgstr "<choice value='%s'/> ya especificado"
-#: ../gio/glib-compile-schemas.c:832
+#: ../gio/glib-compile-schemas.c:544
#, c-format
-msgid "invalid name '%s': maximum length is 1024"
-msgstr "nombre «%s» no válido: la longitud máxima es 1024"
+msgid "<choices> must contain at least one <choice>"
+msgstr "<choices> debe contener al menos un <choice>"
+
+#: ../gio/glib-compile-schemas.c:558
+#| msgid "<child name='%s'> already specified"
+msgid "<aliases> already specified for this key"
+msgstr "<aliases> ya especificado por esta clave"
+
+#: ../gio/glib-compile-schemas.c:562
+msgid ""
+"<aliases> can only be specified for keys with enumerated or flags types or "
+"after <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:581
+#, c-format
+msgid ""
+"<alias value='%s'/> given when “%s” is already a member of the enumerated "
+"type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:587
+#, c-format
+msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
+msgstr ""
-#: ../gio/glib-compile-schemas.c:902
+#: ../gio/glib-compile-schemas.c:595
+#, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "<alias value='%s'/> already specified"
+msgstr "<alias value='%s'/> ya especificado"
+
+#: ../gio/glib-compile-schemas.c:605
+#, fuzzy, c-format
+#| msgid "“%s” is not a signed number"
+msgid "alias target “%s” is not in enumerated type"
+msgstr "«%s» no es un número con signo"
+
+#: ../gio/glib-compile-schemas.c:606
+#, c-format
+msgid "alias target “%s” is not in <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:621
+#, c-format
+msgid "<aliases> must contain at least one <alias>"
+msgstr "<aliases> debe contener al menos un <alias>"
+
+#: ../gio/glib-compile-schemas.c:786
+#| msgid "empty names are not permitted"
+msgid "Empty names are not permitted"
+msgstr "No se permiten nombres vacíos"
+
+#: ../gio/glib-compile-schemas.c:796
+#, c-format
+#| msgid "invalid name '%s': names must begin with a lowercase letter"
+msgid "Invalid name “%s”: names must begin with a lowercase letter"
+msgstr ""
+"Nombre «%s» no válido: los nombres deben comenzar por una letra minúscula"
+
+#: ../gio/glib-compile-schemas.c:808
+#, c-format
+#| msgid ""
+#| "invalid name '%s': invalid character '%c'; only lowercase letters, "
+#| "numbers and hyphen ('-') are permitted."
+msgid ""
+"Invalid name “%s”: invalid character “%c”; only lowercase letters, numbers "
+"and hyphen (“-”) are permitted"
+msgstr ""
+"Nombre «%s» no válido: el carácter «%c» no es válido; sólo se permiten "
+"nombres en minúscula, números y guión («-»)"
+
+#: ../gio/glib-compile-schemas.c:817
+#, c-format
+#| msgid "invalid name '%s': two successive hyphens ('--') are not permitted."
+msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
+msgstr "Nombre «%s» no válido: no se permiten dos guiones seguidos («--»)"
+
+#: ../gio/glib-compile-schemas.c:826
+#, c-format
+#| msgid "invalid name '%s': the last character may not be a hyphen ('-')."
+msgid "Invalid name “%s”: the last character may not be a hyphen (“-”)"
+msgstr "Nombre «%s» no válido: el último carácter no puede ser un guión («-»)"
+
+#: ../gio/glib-compile-schemas.c:834
+#, c-format
+#| msgid "invalid name '%s': maximum length is 1024"
+msgid "Invalid name “%s”: maximum length is 1024"
+msgstr "Nombre «%s» no válido: la longitud máxima es 1024"
+
+#: ../gio/glib-compile-schemas.c:904
#, c-format
msgid "<child name='%s'> already specified"
msgstr "<child name='%s'> ya especificado"
-#: ../gio/glib-compile-schemas.c:928
-msgid "cannot add keys to a 'list-of' schema"
-msgstr "no se pueden añadir claves a un esquema de «lista-de»"
+#: ../gio/glib-compile-schemas.c:930
+#| msgid "cannot add keys to a 'list-of' schema"
+msgid "Cannot add keys to a “list-of” schema"
+msgstr "no se pueden añadir claves a un esquema «list-of»"
-#: ../gio/glib-compile-schemas.c:939
+#: ../gio/glib-compile-schemas.c:941
#, c-format
msgid "<key name='%s'> already specified"
msgstr "<key name='%s'> ya especificada"
-#: ../gio/glib-compile-schemas.c:957
+#: ../gio/glib-compile-schemas.c:959
#, c-format
msgid ""
"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
"<key name='%s'> eclipsa a <key name='%s'> en <schema id='%s'>; use "
"<override> para modificar el valor"
-#: ../gio/glib-compile-schemas.c:968
+#: ../gio/glib-compile-schemas.c:970
#, c-format
+#| msgid ""
+#| "exactly one of 'type', 'enum' or 'flags' must be specified as an "
+#| "attribute to <key>"
msgid ""
-"exactly one of 'type', 'enum' or 'flags' must be specified as an attribute "
+"Exactly one of “type”, “enum” or “flags” must be specified as an attribute "
"to <key>"
msgstr ""
-"se debe especificar exactamente uno de «type», «enum» o «flags» como "
+"Se debe especificar exactamente uno de «type», «enum» o «flags» como "
"atributo para <key>"
-#: ../gio/glib-compile-schemas.c:987
+#: ../gio/glib-compile-schemas.c:989
#, c-format
msgid "<%s id='%s'> not (yet) defined."
msgstr "<%s id='%s'> aún no especificado."
-#: ../gio/glib-compile-schemas.c:1002
+#: ../gio/glib-compile-schemas.c:1004
#, c-format
-msgid "invalid GVariant type string '%s'"
-msgstr "tipo de cadena GVariant «%s» no válida"
+#| msgid "invalid GVariant type string '%s'"
+msgid "Invalid GVariant type string “%s”"
+msgstr "Tipo de cadena GVariant «%s» no válida"
-#: ../gio/glib-compile-schemas.c:1032
-msgid "<override> given but schema isn't extending anything"
-msgstr "Se proporcionó <override> pero el esquema no está extendiendo nada"
+#: ../gio/glib-compile-schemas.c:1034
+#| msgid "<override> given but schema isn't extending anything"
+msgid "<override> given but schema isn’t extending anything"
+msgstr "Se proporcionó <override> pero el esquema no extiende nada"
-#: ../gio/glib-compile-schemas.c:1045
+#: ../gio/glib-compile-schemas.c:1047
#, c-format
-msgid "no <key name='%s'> to override"
-msgstr "no existe <key name='%s'> para sobrescribir"
+#| msgid "no <key name='%s'> to override"
+msgid "No <key name='%s'> to override"
+msgstr "No existe <key name='%s'> para sobrescribir"
-#: ../gio/glib-compile-schemas.c:1053
+#: ../gio/glib-compile-schemas.c:1055
#, c-format
msgid "<override name='%s'> already specified"
msgstr "<override name='%s'> ya especificada"
-#: ../gio/glib-compile-schemas.c:1126
+#: ../gio/glib-compile-schemas.c:1128
#, c-format
msgid "<schema id='%s'> already specified"
msgstr "<schema id='%s'> ya especificado"
-#: ../gio/glib-compile-schemas.c:1138
+#: ../gio/glib-compile-schemas.c:1140
#, c-format
-msgid "<schema id='%s'> extends not yet existing schema '%s'"
+#| msgid "<schema id='%s'> extends not yet existing schema '%s'"
+msgid "<schema id='%s'> extends not yet existing schema “%s”"
msgstr "<schema id='%s'> extiende el esquema «%s» que aún no existe"
-#: ../gio/glib-compile-schemas.c:1154
+#: ../gio/glib-compile-schemas.c:1156
#, c-format
-msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+#| msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+msgid "<schema id='%s'> is list of not yet existing schema “%s”"
msgstr "<schema id='%s'> es una lista del esquema «%s» que aún no existe"
-#: ../gio/glib-compile-schemas.c:1162
+#: ../gio/glib-compile-schemas.c:1164
#, c-format
-msgid "Can not be a list of a schema with a path"
+#| msgid "Can not be a list of a schema with a path"
+msgid "Cannot be a list of a schema with a path"
msgstr "No puede ser una lista de un esquema con una ruta"
-#: ../gio/glib-compile-schemas.c:1172
+#: ../gio/glib-compile-schemas.c:1174
#, c-format
-msgid "Can not extend a schema with a path"
+#| msgid "Can not extend a schema with a path"
+msgid "Cannot extend a schema with a path"
msgstr "No se puede extender un esquema con una ruta"
-#: ../gio/glib-compile-schemas.c:1182
+#: ../gio/glib-compile-schemas.c:1184
#, c-format
msgid ""
"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
"<schema id='%s'> es una lista, extendiendo <schema id='%s'> que no es una "
"lista"
-#: ../gio/glib-compile-schemas.c:1192
+#: ../gio/glib-compile-schemas.c:1194
#, c-format
+#| msgid ""
+#| "<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but "
+#| "'%s' does not extend '%s'"
msgid ""
-"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but '%s' "
-"does not extend '%s'"
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s” "
+"does not extend “%s”"
msgstr ""
"<schema id='%s' list-of='%s'> extiende <schema id='%s' list-of='%s'> pero "
"«%s» no extiende «%s»"
-#: ../gio/glib-compile-schemas.c:1209
+#: ../gio/glib-compile-schemas.c:1211
#, c-format
-msgid "a path, if given, must begin and end with a slash"
-msgstr "si se especifica una ruta, debe comenzar y terminar con una barra"
+#| msgid "a path, if given, must begin and end with a slash"
+msgid "A path, if given, must begin and end with a slash"
+msgstr "Si se especifica una ruta, debe comenzar y terminar con una barra"
-#: ../gio/glib-compile-schemas.c:1216
+#: ../gio/glib-compile-schemas.c:1218
#, c-format
-msgid "the path of a list must end with ':/'"
-msgstr "la ruta de la lista debe terminar con «:/»"
+#| msgid "the path of a list must end with ':/'"
+msgid "The path of a list must end with “:/”"
+msgstr "La ruta de la lista debe terminar con «:/»"
-#: ../gio/glib-compile-schemas.c:1248
+#: ../gio/glib-compile-schemas.c:1227
+#, c-format
+msgid ""
+"Warning: Schema “%s” has path “%s”. Paths starting with “/apps/”, “/"
+"desktop/” or “/system/” are deprecated."
+msgstr ""
+"Advertencia: el esquema «%s» tiene la ruta «%s». Las rutas que empiezan por "
+"«/apps/», «/desktop/» o «/system/» están obsoletas."
+
+#: ../gio/glib-compile-schemas.c:1257
#, c-format
msgid "<%s id='%s'> already specified"
msgstr "<%s id='%s'> ya especificado"
-#: ../gio/glib-compile-schemas.c:1398 ../gio/glib-compile-schemas.c:1414
+#: ../gio/glib-compile-schemas.c:1407 ../gio/glib-compile-schemas.c:1423
#, c-format
msgid "Only one <%s> element allowed inside <%s>"
msgstr "Sólo se permite un elemento <%s> dentro de <%s>"
-#: ../gio/glib-compile-schemas.c:1496
+#: ../gio/glib-compile-schemas.c:1505
#, c-format
msgid "Element <%s> not allowed at the top level"
msgstr "No se permite el elemento <%s> en el nivel superior"
+#: ../gio/glib-compile-schemas.c:1523
+msgid "Element <default> is required in <key>"
+msgstr "Se requiere el elemento <default> en <key>"
+
+#: ../gio/glib-compile-schemas.c:1613
+#, c-format
+#| msgid "text may not appear inside <%s>"
+msgid "Text may not appear inside <%s>"
+msgstr "El texto no debe aparecer dentro de <%s>"
+
+#: ../gio/glib-compile-schemas.c:1681
+#, c-format
+msgid "Warning: undefined reference to <schema id='%s'/>"
+msgstr "Advertencia: referencia a <schema id='%s'/> no definida"
+
#. 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:1820 ../gio/glib-compile-schemas.c:1894
+#: ../gio/glib-compile-schemas.c:1970
#, c-format
msgid "--strict was specified; exiting.\n"
msgstr "se especificó --strict; saliendo.\n"
-#: ../gio/glib-compile-schemas.c:1816
+#: ../gio/glib-compile-schemas.c:1830
#, c-format
msgid "This entire file has been ignored.\n"
msgstr "Se ha ignorado este archivo completamente.\n"
-#: ../gio/glib-compile-schemas.c:1876
+#: ../gio/glib-compile-schemas.c:1890
#, c-format
msgid "Ignoring this file.\n"
msgstr "Ignorando este archivo.\n"
-#: ../gio/glib-compile-schemas.c:1916
+#: ../gio/glib-compile-schemas.c:1930
#, c-format
msgid "No such key '%s' in schema '%s' as specified in override file '%s'"
msgstr ""
"No existe la clave «%s» en el esquema «%s» como se especificó en el archivo "
"de sobrescritura «%s»"
-#: ../gio/glib-compile-schemas.c:1922 ../gio/glib-compile-schemas.c:1980
-#: ../gio/glib-compile-schemas.c:2008
+#: ../gio/glib-compile-schemas.c:1936 ../gio/glib-compile-schemas.c:1994
+#: ../gio/glib-compile-schemas.c:2022
#, c-format
msgid "; ignoring override for this key.\n"
msgstr "; ignorando la sobrescritura para esta clave.\n"
-#: ../gio/glib-compile-schemas.c:1926 ../gio/glib-compile-schemas.c:1984
-#: ../gio/glib-compile-schemas.c:2012
+#: ../gio/glib-compile-schemas.c:1940 ../gio/glib-compile-schemas.c:1998
+#: ../gio/glib-compile-schemas.c:2026
#, c-format
msgid " and --strict was specified; exiting.\n"
msgstr "y se especificó --strict; saliendo.\n"
-#: ../gio/glib-compile-schemas.c:1942
+#: ../gio/glib-compile-schemas.c:1956
#, c-format
msgid ""
"error parsing key '%s' in schema '%s' as specified in override file '%s': %s."
"error al analizar la clave «%s» en el esquema «%s» como se especificó en el "
"archivo de sobrescritura «%s»: %s."
-#: ../gio/glib-compile-schemas.c:1952
+#: ../gio/glib-compile-schemas.c:1966
#, c-format
msgid "Ignoring override for this key.\n"
msgstr "Ignorando la sobrescritura para esta clave.\n"
-#: ../gio/glib-compile-schemas.c:1970
+#: ../gio/glib-compile-schemas.c:1984
#, c-format
msgid ""
"override for key '%s' in schema '%s' in override file '%s' is outside the "
"la clave de sobrescritura «%s» en el esquema «%s» en el archivo de "
"sobrescritura «%s» está fuera del rango proporcionado en el esquema"
-#: ../gio/glib-compile-schemas.c:1998
+#: ../gio/glib-compile-schemas.c:2012
#, c-format
msgid ""
"override for key '%s' in schema '%s' in override file '%s' is not in the "
"la clave de sobrescritura «%s» en el esquema «%s» en el archivo de "
"sobrescritura «%s» no está en la lista de opciones válidas"
-#: ../gio/glib-compile-schemas.c:2054
+#: ../gio/glib-compile-schemas.c:2068
msgid "where to store the gschemas.compiled file"
msgstr "dónde almacenar el archivo gschemas.compiled"
-#: ../gio/glib-compile-schemas.c:2055
+#: ../gio/glib-compile-schemas.c:2069
msgid "Abort on any errors in schemas"
msgstr "Abortar ante cualquier error en los esquemas"
-#: ../gio/glib-compile-schemas.c:2056
+#: ../gio/glib-compile-schemas.c:2070
msgid "Do not write the gschema.compiled file"
msgstr "No escribir el archivo gschemas.compiled"
-#: ../gio/glib-compile-schemas.c:2057
+#: ../gio/glib-compile-schemas.c:2071
msgid "Do not enforce key name restrictions"
msgstr "No forzar las restricciones de nombre de las claves"
-#: ../gio/glib-compile-schemas.c:2085
+#: ../gio/glib-compile-schemas.c:2099
msgid ""
"Compile all GSettings schema files into a schema cache.\n"
"Schema files are required to have the extension .gschema.xml,\n"
"Los archivos de esquema deben tener la extensión .gschema.xml,\n"
"y el archivo de caché se llama gschemas.compiled."
-#: ../gio/glib-compile-schemas.c:2106
+#: ../gio/glib-compile-schemas.c:2120
#, c-format
msgid "You should give exactly one directory name\n"
msgstr "Deberá proporcionar exactamente un nombre de carpeta\n"
-#: ../gio/glib-compile-schemas.c:2148
+#: ../gio/glib-compile-schemas.c:2162
#, c-format
msgid "No schema files found: "
msgstr "No se encontró ningún archivo de esquemas: "
-#: ../gio/glib-compile-schemas.c:2151
+#: ../gio/glib-compile-schemas.c:2165
#, c-format
msgid "doing nothing.\n"
msgstr "sin hacer nada.\n"
-#: ../gio/glib-compile-schemas.c:2154
+#: ../gio/glib-compile-schemas.c:2168
#, c-format
msgid "removed existing output file.\n"
msgstr "se quitó el archivo de salida existente.\n"
msgid "Can’t rename file, filename already exists"
msgstr "No se puede renombrar el archivo, el nombre de archivo ya existe"
-#: ../gio/glocalfile.c:1237 ../gio/glocalfile.c:2251 ../gio/glocalfile.c:2279
-#: ../gio/glocalfile.c:2436 ../gio/glocalfileoutputstream.c:549
+#: ../gio/glocalfile.c:1237 ../gio/glocalfile.c:2253 ../gio/glocalfile.c:2281
+#: ../gio/glocalfile.c:2438 ../gio/glocalfileoutputstream.c:549
msgid "Invalid filename"
msgstr "Nombre de archivo no válido"
msgid "Error removing file %s: %s"
msgstr "Error al eliminar el archivo %s: %s"
-#: ../gio/glocalfile.c:1927
+#: ../gio/glocalfile.c:1928
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Error al mover a la papelera el archivo %s: %s"
-#: ../gio/glocalfile.c:1950
+#: ../gio/glocalfile.c:1951
#, c-format
msgid "Unable to create trash dir %s: %s"
msgstr "No se pudo crear la carpeta de papelera %s: %s"
-#: ../gio/glocalfile.c:1970
+#: ../gio/glocalfile.c:1971
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "No se pudo encontrar la carpeta de nivel superior para la papelera %s"
-#: ../gio/glocalfile.c:2049 ../gio/glocalfile.c:2069
+#: ../gio/glocalfile.c:2050 ../gio/glocalfile.c:2070
#, c-format
msgid "Unable to find or create trash directory for %s"
msgstr "No se pudo encontrar o crear la carpeta de la papelera para %s"
-#: ../gio/glocalfile.c:2103
+#: ../gio/glocalfile.c:2105
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "No se pudo crear la información de papelera para el archivo %s: %s"
-#: ../gio/glocalfile.c:2162
+#: ../gio/glocalfile.c:2164
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr ""
"No se pudo enviar a la papelera el archivo %s entre sistemas de archivos"
-#: ../gio/glocalfile.c:2166 ../gio/glocalfile.c:2222
+#: ../gio/glocalfile.c:2168 ../gio/glocalfile.c:2224
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "No se pudo enviar a la papelera el archivo %s: %s"
-#: ../gio/glocalfile.c:2228
+#: ../gio/glocalfile.c:2230
#, c-format
msgid "Unable to trash file %s"
msgstr "No se pudo enviar a la papelera el archivo %s"
-#: ../gio/glocalfile.c:2254
+#: ../gio/glocalfile.c:2256
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Error al crear la carpeta %s: %s"
-#: ../gio/glocalfile.c:2283
+#: ../gio/glocalfile.c:2285
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "El sistema de archivos no soporta enlaces simbólicos"
-#: ../gio/glocalfile.c:2286
+#: ../gio/glocalfile.c:2288
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Error al crear el enlace simbólico %s: %s"
-#: ../gio/glocalfile.c:2292 ../glib/gfileutils.c:2077
+#: ../gio/glocalfile.c:2294 ../glib/gfileutils.c:2077
msgid "Symbolic links not supported"
msgstr "Enlaces simbólicos no soportados"
-#: ../gio/glocalfile.c:2347 ../gio/glocalfile.c:2382 ../gio/glocalfile.c:2439
+#: ../gio/glocalfile.c:2349 ../gio/glocalfile.c:2384 ../gio/glocalfile.c:2441
#, c-format
msgid "Error moving file %s: %s"
msgstr "Error al mover el archivo %s: %s"
-#: ../gio/glocalfile.c:2370
+#: ../gio/glocalfile.c:2372
msgid "Can’t move directory over directory"
msgstr "No se puede mover una carpeta sobre una carpeta"
-#: ../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:2398 ../gio/glocalfileoutputstream.c:933
+#: ../gio/glocalfileoutputstream.c:947 ../gio/glocalfileoutputstream.c:962
+#: ../gio/glocalfileoutputstream.c:979 ../gio/glocalfileoutputstream.c:993
msgid "Backup file creation failed"
msgstr "Falló la creación del archivo de respaldo"
-#: ../gio/glocalfile.c:2415
+#: ../gio/glocalfile.c:2417
#, c-format
msgid "Error removing target file: %s"
msgstr "Error al eliminar el archivo destino: %s"
-#: ../gio/glocalfile.c:2429
+#: ../gio/glocalfile.c:2431
msgid "Move between mounts not supported"
msgstr "No se soporta mover archivos entre puntos de montaje"
-#: ../gio/glocalfile.c:2620
+#: ../gio/glocalfile.c:2622
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "No se pudo determinar el uso de disco de %s: %s"
-#: ../gio/glocalfileinfo.c:721
+#: ../gio/glocalfileinfo.c:731
msgid "Attribute value must be non-NULL"
msgstr "El valor del atributo de ser no nulo"
-#: ../gio/glocalfileinfo.c:728
+#: ../gio/glocalfileinfo.c:738
msgid "Invalid attribute type (string expected)"
msgstr "Tipo de atributo no válido (se esperaba una cadena)"
-#: ../gio/glocalfileinfo.c:735
+#: ../gio/glocalfileinfo.c:745
msgid "Invalid extended attribute name"
msgstr "Nombre extendido del atributo no válido"
-#: ../gio/glocalfileinfo.c:775
+#: ../gio/glocalfileinfo.c:785
#, c-format
msgid "Error setting extended attribute “%s”: %s"
msgstr "Error al establecer el atributo extendido «%s»: %s"
-#: ../gio/glocalfileinfo.c:1575
+#: ../gio/glocalfileinfo.c:1586
msgid " (invalid encoding)"
msgstr " (codificación no válida)"
-#: ../gio/glocalfileinfo.c:1766 ../gio/glocalfileoutputstream.c:803
+#: ../gio/glocalfileinfo.c:1777 ../gio/glocalfileoutputstream.c:811
#, c-format
msgid "Error when getting information for file “%s”: %s"
msgstr "Error al obtener la información del archivo «%s»: %s"
-#: ../gio/glocalfileinfo.c:2017
+#: ../gio/glocalfileinfo.c:2028
#, c-format
msgid "Error when getting information for file descriptor: %s"
msgstr "Error al obtener la información del descriptor del archivo: %s"
-#: ../gio/glocalfileinfo.c:2062
+#: ../gio/glocalfileinfo.c:2073
msgid "Invalid attribute type (uint32 expected)"
msgstr "Tipo de atributo no válido (se esperaba uint32)"
-#: ../gio/glocalfileinfo.c:2080
+#: ../gio/glocalfileinfo.c:2091
msgid "Invalid attribute type (uint64 expected)"
msgstr "Tipo de atributo no válido (se esperaba uint64)"
-#: ../gio/glocalfileinfo.c:2099 ../gio/glocalfileinfo.c:2118
+#: ../gio/glocalfileinfo.c:2110 ../gio/glocalfileinfo.c:2129
msgid "Invalid attribute type (byte string expected)"
msgstr "Tipo de atributo no válido (se esperaba una cadena byte)"
-#: ../gio/glocalfileinfo.c:2153
+#: ../gio/glocalfileinfo.c:2164
msgid "Cannot set permissions on symlinks"
msgstr "No se pueden establecer permisos en enlaces simbólicos"
-#: ../gio/glocalfileinfo.c:2169
+#: ../gio/glocalfileinfo.c:2180
#, c-format
msgid "Error setting permissions: %s"
msgstr "Error al establecer permisos: %s"
-#: ../gio/glocalfileinfo.c:2220
+#: ../gio/glocalfileinfo.c:2231
#, c-format
msgid "Error setting owner: %s"
msgstr "Error al establecer el propietario: %s"
-#: ../gio/glocalfileinfo.c:2243
+#: ../gio/glocalfileinfo.c:2254
msgid "symlink must be non-NULL"
msgstr "el enlace simbólico debe ser no nulo"
-#: ../gio/glocalfileinfo.c:2253 ../gio/glocalfileinfo.c:2272
-#: ../gio/glocalfileinfo.c:2283
+#: ../gio/glocalfileinfo.c:2264 ../gio/glocalfileinfo.c:2283
+#: ../gio/glocalfileinfo.c:2294
#, c-format
msgid "Error setting symlink: %s"
msgstr "Error al establecer el enlace simbólico: %s"
-#: ../gio/glocalfileinfo.c:2262
+#: ../gio/glocalfileinfo.c:2273
msgid "Error setting symlink: file is not a symlink"
msgstr ""
"Error al establecer el enlace simbólico: el archivo no es un enlace simbólico"
-#: ../gio/glocalfileinfo.c:2388
+#: ../gio/glocalfileinfo.c:2399
#, c-format
msgid "Error setting modification or access time: %s"
msgstr "Error al establecer o modificar el tiempo de acceso: %s"
-#: ../gio/glocalfileinfo.c:2411
+#: ../gio/glocalfileinfo.c:2422
msgid "SELinux context must be non-NULL"
msgstr "El contexto SELinux debe ser no nulo"
-#: ../gio/glocalfileinfo.c:2426
+#: ../gio/glocalfileinfo.c:2437
#, c-format
msgid "Error setting SELinux context: %s"
msgstr "Error al establecer el contexto SELinux: %s"
-#: ../gio/glocalfileinfo.c:2433
+#: ../gio/glocalfileinfo.c:2444
msgid "SELinux is not enabled on this system"
msgstr "SELinux no está activado en este sistema"
-#: ../gio/glocalfileinfo.c:2525
+#: ../gio/glocalfileinfo.c:2536
#, c-format
msgid "Setting attribute %s not supported"
msgstr "Establecer el atributo %s no está soportado"
#: ../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:1011
#, c-format
msgid "Error seeking in file: %s"
msgstr "Error al buscar en el archivo: %s"
msgid "Error renaming temporary file: %s"
msgstr "Error al renombrar el archivo temporal: %s"
-#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1054
+#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1062
#, c-format
msgid "Error truncating file: %s"
msgstr "Error al truncar el archivo: %s"
-#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:785
-#: ../gio/glocalfileoutputstream.c:1035 ../gio/gsubprocess.c:360
+#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:793
+#: ../gio/glocalfileoutputstream.c:1043 ../gio/gsubprocess.c:380
#, c-format
msgid "Error opening file “%s”: %s"
msgstr "Error al abrir el archivo %s: %s"
-#: ../gio/glocalfileoutputstream.c:816
+#: ../gio/glocalfileoutputstream.c:824
msgid "Target file is a directory"
msgstr "El archivo destino es una carpeta"
-#: ../gio/glocalfileoutputstream.c:821
+#: ../gio/glocalfileoutputstream.c:829
msgid "Target file is not a regular file"
msgstr "El archivo destino no es un archivo regular"
-#: ../gio/glocalfileoutputstream.c:833
+#: ../gio/glocalfileoutputstream.c:841
msgid "The file was externally modified"
msgstr "El archivo se modificó externamente"
-#: ../gio/glocalfileoutputstream.c:1019
+#: ../gio/glocalfileoutputstream.c:1027
#, c-format
msgid "Error removing old file: %s"
msgstr "Error al eliminar el archivo antiguo: %s"
msgid " SECTION An (optional) elf section name\n"
msgstr " SECCIÓN El nombre de sección (opcional) de un elf\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 " COMANDO El comando (opcional) que explicar\n"
msgstr " RUTA La ruta de un recurso\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 existe el esquema «%s»\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "La ruta no debe contener dos barras adyacentes (//)\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 "El valor proporcionado está fuera del rango válido\n"
-#: ../gio/gsettings-tool.c:496
+#: ../gio/gsettings-tool.c:498
#, c-format
msgid "The key is not writable\n"
msgstr "No se puede escribir la clave\n"
-#: ../gio/gsettings-tool.c:532
+#: ../gio/gsettings-tool.c:534
msgid "List the installed (non-relocatable) schemas"
msgstr "Listar los esquemas instalados (no reubicables)"
-#: ../gio/gsettings-tool.c:538
+#: ../gio/gsettings-tool.c:540
msgid "List the installed relocatable schemas"
msgstr "Listar los esquemas reubicables instalados"
-#: ../gio/gsettings-tool.c:544
+#: ../gio/gsettings-tool.c:546
msgid "List the keys in SCHEMA"
msgstr "Listar las claves en el ESQUEMA"
-#: ../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 "ESQUEMA[:RUTA]"
-#: ../gio/gsettings-tool.c:550
+#: ../gio/gsettings-tool.c:552
msgid "List the children of SCHEMA"
msgstr "Listar los hijos del ESQUEMA"
-#: ../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"
"Listar las claves y valores recursivamente\n"
"Si no se proporciona un ESQUEMA, listar todas las claves\n"
-#: ../gio/gsettings-tool.c:558
+#: ../gio/gsettings-tool.c:560
msgid "[SCHEMA[:PATH]]"
msgstr "[ESQUEMA[:RUTA]]"
-#: ../gio/gsettings-tool.c:563
+#: ../gio/gsettings-tool.c:565
msgid "Get the value of KEY"
msgstr "Obtener el valor de la CLAVE"
-#: ../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 "ESQUEMA[:RUTA] CLAVE"
-#: ../gio/gsettings-tool.c:569
+#: ../gio/gsettings-tool.c:571
msgid "Query the range of valid values for KEY"
msgstr "Consultar el rango de valores válidos para la CLAVE"
-#: ../gio/gsettings-tool.c:575
+#: ../gio/gsettings-tool.c:577
msgid "Query the description for KEY"
msgstr "Consultar la descripción para la CLAVE"
-#: ../gio/gsettings-tool.c:581
+#: ../gio/gsettings-tool.c:583
msgid "Set the value of KEY to VALUE"
msgstr "Establecer el valor de la CLAVE a VALOR"
-#: ../gio/gsettings-tool.c:582
+#: ../gio/gsettings-tool.c:584
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ESQUEMA[:RUTA] CLAVE VALOR"
-#: ../gio/gsettings-tool.c:587
+#: ../gio/gsettings-tool.c:589
msgid "Reset KEY to its default value"
msgstr "Restablecer la CLAVE a su valor predeterminado"
-#: ../gio/gsettings-tool.c:593
+#: ../gio/gsettings-tool.c:595
msgid "Reset all keys in SCHEMA to their defaults"
msgstr ""
"Restablecer todas las claves en un ESQUEMA a sus valores predeterminados"
-#: ../gio/gsettings-tool.c:599
+#: ../gio/gsettings-tool.c:601
msgid "Check if KEY is writable"
msgstr "Comprobar si la CLAVE se puede escribir"
-#: ../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"
"Si no se especifica una CLAVE, monitorizar todas las claves en el ESQUEMA.\n"
"Use ^C para detener la monitorización.\n"
-#: ../gio/gsettings-tool.c:608
+#: ../gio/gsettings-tool.c:610
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ESQUEMA[:RUTA] [CLAVE]"
-#: ../gio/gsettings-tool.c:620
+#: ../gio/gsettings-tool.c:622
msgid ""
"Usage:\n"
" gsettings --version\n"
"Use «gsettings help COMANDO» para obtener una ayuda detallada.\n"
"\n"
-#: ../gio/gsettings-tool.c:644
+#: ../gio/gsettings-tool.c:646
#, c-format
msgid ""
"Usage:\n"
"%s\n"
"\n"
-#: ../gio/gsettings-tool.c:650
+#: ../gio/gsettings-tool.c:652
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " CARPETA_ESQUEMA: una carpeta para buscar esquemas adicionales\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"
" SCHEMA El nombre del esquema\n"
" RUTA La ruta, para esquemas reubicables\n"
-#: ../gio/gsettings-tool.c:663
+#: ../gio/gsettings-tool.c:665
msgid " KEY The (optional) key within the schema\n"
msgstr " CLAVE La clave (opcional) para el esquema\n"
-#: ../gio/gsettings-tool.c:667
+#: ../gio/gsettings-tool.c:669
msgid " KEY The key within the schema\n"
msgstr " CLAVE La clave para el esquema\n"
-#: ../gio/gsettings-tool.c:671
+#: ../gio/gsettings-tool.c:673
msgid " VALUE The value to set\n"
msgstr " VALOR El valor para establecer\n"
-#: ../gio/gsettings-tool.c:726
+#: ../gio/gsettings-tool.c:728
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "No se pudieron cargar los esquemas de %s: %s\n"
-#: ../gio/gsettings-tool.c:738
+#: ../gio/gsettings-tool.c:740
#, c-format
msgid "No schemas installed\n"
msgstr "No hay esquemas instalados\n"
-#: ../gio/gsettings-tool.c:809
+#: ../gio/gsettings-tool.c:811
#, c-format
msgid "Empty schema name given\n"
msgstr "Se proporcionó un nombre de esquema vacío\n"
-#: ../gio/gsettings-tool.c:864
+#: ../gio/gsettings-tool.c:866
#, c-format
msgid "No such key “%s”\n"
msgstr "No existe la clave «%s»\n"
-#: ../gio/gsocket.c:369
+#: ../gio/gsocket.c:379
msgid "Invalid socket, not initialized"
msgstr "Socket no válido, no inicializado"
-#: ../gio/gsocket.c:376
+#: ../gio/gsocket.c:386
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Socket no válido, falló la instalación debido a: %s"
-#: ../gio/gsocket.c:384
+#: ../gio/gsocket.c:394
msgid "Socket is already closed"
msgstr "El socket ya está cerrado"
-#: ../gio/gsocket.c:399 ../gio/gsocket.c:2754 ../gio/gsocket.c:3939
-#: ../gio/gsocket.c:3995
+#: ../gio/gsocket.c:409 ../gio/gsocket.c:2765 ../gio/gsocket.c:3950
+#: ../gio/gsocket.c:4008
msgid "Socket I/O timed out"
msgstr "Expiró la E/S del socket"
-#: ../gio/gsocket.c:531
+#: ../gio/gsocket.c:541
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "creando el GSocket desde fd: %s"
-#: ../gio/gsocket.c:559 ../gio/gsocket.c:613 ../gio/gsocket.c:620
+#: ../gio/gsocket.c:570 ../gio/gsocket.c:624 ../gio/gsocket.c:631
#, c-format
msgid "Unable to create socket: %s"
msgstr "No se pudo crear el socket: %s"
-#: ../gio/gsocket.c:613
+#: ../gio/gsocket.c:624
msgid "Unknown family was specified"
msgstr "Se especificó una familia desconocida"
-#: ../gio/gsocket.c:620
+#: ../gio/gsocket.c:631
msgid "Unknown protocol was specified"
msgstr "Se especificó un protocolo desconocido"
-#: ../gio/gsocket.c:1111
+#: ../gio/gsocket.c:1122
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"No se pueden usar operaciones de datagrama en un zócalo que no es de "
"datagrama."
-#: ../gio/gsocket.c:1128
+#: ../gio/gsocket.c:1139
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"No se pueden usar operaciones de datagrama en un zócalo sin un tiempo de "
"expiración establecido."
-#: ../gio/gsocket.c:1932
+#: ../gio/gsocket.c:1943
#, c-format
msgid "could not get local address: %s"
msgstr "no se pudo obtener la dirección local: %s"
-#: ../gio/gsocket.c:1975
+#: ../gio/gsocket.c:1986
#, c-format
msgid "could not get remote address: %s"
msgstr "no se pudo obtener la dirección remota: %s"
-#: ../gio/gsocket.c:2041
+#: ../gio/gsocket.c:2052
#, c-format
msgid "could not listen: %s"
msgstr "no se pudo escuchar: %s"
-#: ../gio/gsocket.c:2140
+#: ../gio/gsocket.c:2151
#, c-format
msgid "Error binding to address: %s"
msgstr "Error al vincular con la dirección: %s"
-#: ../gio/gsocket.c:2255 ../gio/gsocket.c:2292
+#: ../gio/gsocket.c:2266 ../gio/gsocket.c:2303
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Error al unirse al grupo de multicast: %s"
-#: ../gio/gsocket.c:2256 ../gio/gsocket.c:2293
+#: ../gio/gsocket.c:2267 ../gio/gsocket.c:2304
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Error al abandonar al grupo de multicast: %s"
-#: ../gio/gsocket.c:2257
+#: ../gio/gsocket.c:2268
msgid "No support for source-specific multicast"
msgstr "No se soporta el multicast específico de la fuente"
-#: ../gio/gsocket.c:2477
+#: ../gio/gsocket.c:2488
#, c-format
msgid "Error accepting connection: %s"
msgstr "Error al aceptar la conexión: %s"
-#: ../gio/gsocket.c:2598
+#: ../gio/gsocket.c:2609
msgid "Connection in progress"
msgstr "Conexión en progreso"
-#: ../gio/gsocket.c:2647
+#: ../gio/gsocket.c:2658
msgid "Unable to get pending error: "
msgstr "No se pudo obtener el error pendiente: "
-#: ../gio/gsocket.c:2817
+#: ../gio/gsocket.c:2828
#, c-format
msgid "Error receiving data: %s"
msgstr "Error al recibir los datos: %s"
-#: ../gio/gsocket.c:3012
+#: ../gio/gsocket.c:3023
#, c-format
msgid "Error sending data: %s"
msgstr "Error al enviar los datos: %s"
-#: ../gio/gsocket.c:3199
+#: ../gio/gsocket.c:3210
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "No se pudo desconectar el socket: %s"
-#: ../gio/gsocket.c:3280
+#: ../gio/gsocket.c:3291
#, c-format
msgid "Error closing socket: %s"
msgstr "Error al cerrar el socket: %s"
-#: ../gio/gsocket.c:3932
+#: ../gio/gsocket.c:3943
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Esperando la condición del socket: %s"
-#: ../gio/gsocket.c:4404 ../gio/gsocket.c:4484 ../gio/gsocket.c:4662
+#: ../gio/gsocket.c:4417 ../gio/gsocket.c:4497 ../gio/gsocket.c:4675
#, c-format
msgid "Error sending message: %s"
msgstr "Error al enviar el mensaje: %s"
-#: ../gio/gsocket.c:4428
+#: ../gio/gsocket.c:4441
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage no está soportado en Windows"
-#: ../gio/gsocket.c:4881 ../gio/gsocket.c:4954 ../gio/gsocket.c:5180
+#: ../gio/gsocket.c:4894 ../gio/gsocket.c:4967 ../gio/gsocket.c:5193
#, c-format
msgid "Error receiving message: %s"
msgstr "Error al recibir el mensaje: %s"
-#: ../gio/gsocket.c:5452
+#: ../gio/gsocket.c:5465
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "No se pudieron leer las credenciales del socket: %s"
-#: ../gio/gsocket.c:5461
+#: ../gio/gsocket.c:5474
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials no está implementado en este SO"
#. 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."
msgid ""
"Several passwords entered have been incorrect, and your access will be "
"locked out after further failures."
msgid "The password entered is incorrect."
msgstr "La contraseña introducida no es correcta."
-#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:561
+#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:563
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Se esperaba un mensaje de control, se obtuvo %d"
msgstr[1] "Se esperaba un mensaje de control, se obtuvieron %d"
-#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:573
+#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:575
msgid "Unexpected type of ancillary data"
msgstr "Tipos de datos complementarios inesperados"
msgid "Error sending credentials: "
msgstr "Error al enviar las credenciales: "
-#: ../gio/gunixconnection.c:503
+#: ../gio/gunixconnection.c:504
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Error al comprobar si SO_PASSCRED está activada para el socket: %s"
-#: ../gio/gunixconnection.c:518
+#: ../gio/gunixconnection.c:520
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Error al activar SO_PASSCRED: %s"
-#: ../gio/gunixconnection.c:547
+#: ../gio/gunixconnection.c:549
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Se esperaba leer un solo byte para recibir las credenciales pero se leyeron "
"cero bytes"
-#: ../gio/gunixconnection.c:587
+#: ../gio/gunixconnection.c:589
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "No se esperaba un mensaje de control, pero se obtuvo %d"
-#: ../gio/gunixconnection.c:611
+#: ../gio/gunixconnection.c:614
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Error al desactivar SO_PASSCRED: %s"
-#: ../gio/gunixinputstream.c:369 ../gio/gunixinputstream.c:390
+#: ../gio/gunixinputstream.c:372 ../gio/gunixinputstream.c:393
#, c-format
msgid "Error reading from file descriptor: %s"
msgstr "Error al leer del descriptor del archivo: %s"
-#: ../gio/gunixinputstream.c:423 ../gio/gunixoutputstream.c:409
+#: ../gio/gunixinputstream.c:426 ../gio/gunixoutputstream.c:411
#: ../gio/gwin32inputstream.c:217 ../gio/gwin32outputstream.c:204
#, c-format
msgid "Error closing file descriptor: %s"
msgstr "Error al cerrar el descriptor del archivo: %s"
-#: ../gio/gunixmounts.c:2422 ../gio/gunixmounts.c:2475
+#: ../gio/gunixmounts.c:2430 ../gio/gunixmounts.c:2483
msgid "Filesystem root"
msgstr "Sistema de archivos raíz"
-#: ../gio/gunixoutputstream.c:355 ../gio/gunixoutputstream.c:376
+#: ../gio/gunixoutputstream.c:358 ../gio/gunixoutputstream.c:378
#, c-format
msgid "Error writing to file descriptor: %s"
msgstr "Error al escribir en el descriptor del archivo: %s"
msgid "Failed to expand exec line “%s” with URI “%s”"
msgstr "Falló la expansión de lalinea ejecutable «%s» con el 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 "Hay una secuencia parcial de caracteres en el final de la entrada"
msgstr ""
"No se pudo encontrar la clave de archivo válida en las carpetas de búsqueda"
-#: ../glib/gkeyfile.c:772
+#: ../glib/gkeyfile.c:773
msgid "Not a regular file"
msgstr "No es un archivo regular"
-#: ../glib/gkeyfile.c:1212
+#: ../glib/gkeyfile.c:1218
#, c-format
msgid ""
"Key file contains line “%s” which is not a key-value pair, group, or comment"
"El archivo de claves contiene la línea «%s» que no es un par valor-clave, "
"grupo o comentario"
-#: ../glib/gkeyfile.c:1269
+#: ../glib/gkeyfile.c:1275
#, c-format
msgid "Invalid group name: %s"
msgstr "Nombre de grupo no válido: %s"
-#: ../glib/gkeyfile.c:1291
+#: ../glib/gkeyfile.c:1297
msgid "Key file does not start with a group"
msgstr "El archivo de claves no empieza por un grupo"
-#: ../glib/gkeyfile.c:1317
+#: ../glib/gkeyfile.c:1323
#, c-format
msgid "Invalid key name: %s"
msgstr "Nombre de clave no válida: %s"
-#: ../glib/gkeyfile.c:1344
+#: ../glib/gkeyfile.c:1350
#, c-format
msgid "Key file contains unsupported encoding “%s”"
msgstr "El archivo de claves contiene una codificación «%s» no soportada"
-#: ../glib/gkeyfile.c:1587 ../glib/gkeyfile.c:1760 ../glib/gkeyfile.c:3140
-#: ../glib/gkeyfile.c:3203 ../glib/gkeyfile.c:3333 ../glib/gkeyfile.c:3463
-#: ../glib/gkeyfile.c:3607 ../glib/gkeyfile.c:3836 ../glib/gkeyfile.c:3903
+#: ../glib/gkeyfile.c:1593 ../glib/gkeyfile.c:1766 ../glib/gkeyfile.c:3146
+#: ../glib/gkeyfile.c:3209 ../glib/gkeyfile.c:3339 ../glib/gkeyfile.c:3469
+#: ../glib/gkeyfile.c:3613 ../glib/gkeyfile.c:3842 ../glib/gkeyfile.c:3909
#, c-format
msgid "Key file does not have group “%s”"
msgstr "El archivo de claves no tiene el grupo «%s»"
-#: ../glib/gkeyfile.c:1715
+#: ../glib/gkeyfile.c:1721
#, c-format
msgid "Key file does not have key “%s” in group “%s”"
msgstr "El archivo de claves no tiene la clave «%s» en el grupo «%s»"
-#: ../glib/gkeyfile.c:1877 ../glib/gkeyfile.c:1993
+#: ../glib/gkeyfile.c:1883 ../glib/gkeyfile.c:1999
#, c-format
msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
msgstr ""
"El archivo de claves contiene la clave «%s» con el valor «%s» el cual no es "
"UTF-8"
-#: ../glib/gkeyfile.c:1897 ../glib/gkeyfile.c:2013 ../glib/gkeyfile.c:2382
+#: ../glib/gkeyfile.c:1903 ../glib/gkeyfile.c:2019 ../glib/gkeyfile.c:2388
#, c-format
msgid ""
"Key file contains key “%s” which has a value that cannot be interpreted."
"El archivo de claves contiene la clave «%s» que tiene un valor que no se "
"puede interpretar."
-#: ../glib/gkeyfile.c:2600 ../glib/gkeyfile.c:2969
+#: ../glib/gkeyfile.c:2606 ../glib/gkeyfile.c:2975
#, c-format
msgid ""
"Key file contains key “%s” in group “%s” which has a value that cannot be "
"El archivo de claves contiene la clave «%s» en el grupo «%s» que tiene un "
"valor que no puede interpretarse."
-#: ../glib/gkeyfile.c:2678 ../glib/gkeyfile.c:2755
+#: ../glib/gkeyfile.c:2684 ../glib/gkeyfile.c:2761
#, c-format
msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
msgstr ""
"La clave «%s» en el grupo «%s» tiene el valor «%s», pero se esperaba %s"
-#: ../glib/gkeyfile.c:4143
+#: ../glib/gkeyfile.c:4149
msgid "Key file contains escape character at end of line"
msgstr ""
"El archivo de claves contiene un carácter de escape al final de la línea"
-#: ../glib/gkeyfile.c:4165
+#: ../glib/gkeyfile.c:4171
#, c-format
msgid "Key file contains invalid escape sequence “%s”"
msgstr "El archivo de claves contiene la secuencia de escape no válida «%s»"
-#: ../glib/gkeyfile.c:4307
+#: ../glib/gkeyfile.c:4315
#, c-format
msgid "Value “%s” cannot be interpreted as a number."
msgstr "El valor «%s» no puede interpretarse como un número."
-#: ../glib/gkeyfile.c:4321
+#: ../glib/gkeyfile.c:4329
#, c-format
msgid "Integer value “%s” out of range"
msgstr "El valor entero «%s» está fuera de rango"
-#: ../glib/gkeyfile.c:4354
+#: ../glib/gkeyfile.c:4362
#, c-format
msgid "Value “%s” cannot be interpreted as a float number."
msgstr "El valor «%s» no puede interpretarse como un número de coma flotante."
-#: ../glib/gkeyfile.c:4393
+#: ../glib/gkeyfile.c:4401
#, c-format
msgid "Value “%s” cannot be interpreted as a boolean."
msgstr "El valor «%s» no puede interpretarse como un booleano."
"Falló inesperado en g_io_channel_win32_poll() al leer datos desde un proceso "
"hijo"
-#: ../glib/gstrfuncs.c:3237 ../glib/gstrfuncs.c:3338
+#: ../glib/gstrfuncs.c:3247 ../glib/gstrfuncs.c:3348
msgid "Empty string is not a number"
msgstr "Una cadena vacía no es un número"
-#: ../glib/gstrfuncs.c:3261
+#: ../glib/gstrfuncs.c:3271
#, c-format
-#| msgid "'%s' is not a valid name"
msgid "“%s” is not a signed number"
msgstr "«%s» no es un número con signo"
-#: ../glib/gstrfuncs.c:3271 ../glib/gstrfuncs.c:3374
+#: ../glib/gstrfuncs.c:3281 ../glib/gstrfuncs.c:3384
#, c-format
msgid "Number “%s” is out of bounds [%s, %s]"
msgstr "El número «%s» está fuera de los límites [%s, %s]"
-#: ../glib/gstrfuncs.c:3364
+#: ../glib/gstrfuncs.c:3374
#, c-format
-#| msgid "'%s' is not a valid name"
msgid "“%s” is not an unsigned number"
msgstr "«%s» no es un número sin signo"
-#: ../glib/gutf8.c:798
+#: ../glib/gutf8.c:808
msgid "Failed to allocate memory"
msgstr "Falló al obtener memoria"
-#: ../glib/gutf8.c:931
+#: ../glib/gutf8.c:941
msgid "Character out of range for UTF-8"
msgstr "El carácter se sale del rango para 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 "Secuencia no válida en la entrada de conversión"
-#: ../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 "El carácter se sale del rango para UTF-16"
-#: ../glib/gutils.c:2139 ../glib/gutils.c:2166 ../glib/gutils.c:2272
+#: ../glib/gutils.c:2149 ../glib/gutils.c:2176 ../glib/gutils.c:2282
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: ../glib/gutils.c:2145
+#: ../glib/gutils.c:2155
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
-#: ../glib/gutils.c:2147
+#: ../glib/gutils.c:2157
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
-#: ../glib/gutils.c:2150
+#: ../glib/gutils.c:2160
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
-#: ../glib/gutils.c:2153
+#: ../glib/gutils.c:2163
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
-#: ../glib/gutils.c:2156
+#: ../glib/gutils.c:2166
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
-#: ../glib/gutils.c:2159
+#: ../glib/gutils.c:2169
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
-#: ../glib/gutils.c:2172
+#: ../glib/gutils.c:2182
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
-#: ../glib/gutils.c:2175 ../glib/gutils.c:2290
+#: ../glib/gutils.c:2185 ../glib/gutils.c:2300
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: ../glib/gutils.c:2178 ../glib/gutils.c:2295
+#: ../glib/gutils.c:2188 ../glib/gutils.c:2305
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: ../glib/gutils.c:2180 ../glib/gutils.c:2300
+#: ../glib/gutils.c:2190 ../glib/gutils.c:2310
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: ../glib/gutils.c:2183 ../glib/gutils.c:2305
+#: ../glib/gutils.c:2193 ../glib/gutils.c:2315
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: ../glib/gutils.c:2186 ../glib/gutils.c:2310
+#: ../glib/gutils.c:2196 ../glib/gutils.c:2320
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: ../glib/gutils.c:2223
+#: ../glib/gutils.c:2233
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
#. * 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:2295
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
"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-07-17 14:54-0400\n"
+"POT-Creation-Date: 2017-08-07 11:39-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"
msgid "Error during conversion: %s"
msgstr ""
-#: ../gio/gcharsetconverter.c:444 ../gio/gsocket.c:1095
+#: ../gio/gcharsetconverter.c:445 ../gio/gsocket.c:1096
msgid "Cancellable initialization not supported"
msgstr ""
-#: ../gio/gcharsetconverter.c:454 ../glib/gconvert.c:321
+#: ../gio/gcharsetconverter.c:456 ../glib/gconvert.c:321
#: ../glib/giochannel.c:1384
#, c-format
msgid "Conversion from character set “%s” to “%s” is not supported"
msgstr ""
-#: ../gio/gcharsetconverter.c:458 ../glib/gconvert.c:325
+#: ../gio/gcharsetconverter.c:460 ../glib/gconvert.c:325
#, c-format
msgid "Could not open converter from “%s” to “%s”"
msgstr ""
msgid "Unknown or unsupported transport “%s” for address “%s”"
msgstr ""
-#: ../gio/gdbusaddress.c:702
+#: ../gio/gdbusaddress.c:704
#, c-format
msgid "Error opening nonce file “%s”: %s"
msgstr ""
-#: ../gio/gdbusaddress.c:720
+#: ../gio/gdbusaddress.c:723
#, c-format
msgid "Error reading from nonce file “%s”: %s"
msgstr ""
-#: ../gio/gdbusaddress.c:729
+#: ../gio/gdbusaddress.c:732
#, c-format
msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
msgstr ""
-#: ../gio/gdbusaddress.c:747
+#: ../gio/gdbusaddress.c:750
#, c-format
msgid "Error writing contents of nonce file “%s” to stream:"
msgstr ""
-#: ../gio/gdbusaddress.c:956
+#: ../gio/gdbusaddress.c:959
msgid "The given address is empty"
msgstr ""
-#: ../gio/gdbusaddress.c:1069
+#: ../gio/gdbusaddress.c:1072
#, c-format
msgid "Cannot spawn a message bus when setuid"
msgstr ""
-#: ../gio/gdbusaddress.c:1076
+#: ../gio/gdbusaddress.c:1079
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
-#: ../gio/gdbusaddress.c:1083
+#: ../gio/gdbusaddress.c:1086
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr ""
-#: ../gio/gdbusaddress.c:1125
+#: ../gio/gdbusaddress.c:1128
#, c-format
msgid "Error spawning command line “%s”: "
msgstr ""
-#: ../gio/gdbusaddress.c:1342
+#: ../gio/gdbusaddress.c:1345
#, c-format
msgid "(Type any character to close this window)\n"
msgstr ""
-#: ../gio/gdbusaddress.c:1496
+#: ../gio/gdbusaddress.c:1499
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
-#: ../gio/gdbusaddress.c:1507
+#: ../gio/gdbusaddress.c:1510
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
-#: ../gio/gdbusaddress.c:1645
+#: ../gio/gdbusaddress.c:1648
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"— unknown value “%s”"
msgstr ""
-#: ../gio/gdbusaddress.c:1654 ../gio/gdbusconnection.c:7155
+#: ../gio/gdbusaddress.c:1657 ../gio/gdbusconnection.c:7155
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
msgstr ""
-#: ../gio/gdbusaddress.c:1664
+#: ../gio/gdbusaddress.c:1667
#, c-format
msgid "Unknown bus type %d"
msgstr ""
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:261
+#: ../gio/gdbusauthmechanismsha1.c:262
#, c-format
msgid "Error when getting information for directory “%s”: %s"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:273
+#: ../gio/gdbusauthmechanismsha1.c:274
#, c-format
msgid ""
"Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:294
+#: ../gio/gdbusauthmechanismsha1.c:296
#, c-format
msgid "Error creating directory “%s”: %s"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:377
+#: ../gio/gdbusauthmechanismsha1.c:379
#, c-format
msgid "Error opening keyring “%s” for reading: "
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:401 ../gio/gdbusauthmechanismsha1.c:714
+#: ../gio/gdbusauthmechanismsha1.c:403 ../gio/gdbusauthmechanismsha1.c:721
#, c-format
msgid "Line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:415 ../gio/gdbusauthmechanismsha1.c:728
+#: ../gio/gdbusauthmechanismsha1.c:417 ../gio/gdbusauthmechanismsha1.c:735
#, c-format
msgid ""
"First token of line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:430 ../gio/gdbusauthmechanismsha1.c:742
+#: ../gio/gdbusauthmechanismsha1.c:432 ../gio/gdbusauthmechanismsha1.c:749
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:454
+#: ../gio/gdbusauthmechanismsha1.c:456
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%s”"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:532
+#: ../gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error deleting stale lock file “%s”: %s"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:564
+#: ../gio/gdbusauthmechanismsha1.c:569
#, c-format
msgid "Error creating lock file “%s”: %s"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:594
+#: ../gio/gdbusauthmechanismsha1.c:600
#, c-format
msgid "Error closing (unlinked) lock file “%s”: %s"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:604
+#: ../gio/gdbusauthmechanismsha1.c:611
#, c-format
msgid "Error unlinking lock file “%s”: %s"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:681
+#: ../gio/gdbusauthmechanismsha1.c:688
#, c-format
msgid "Error opening keyring “%s” for writing: "
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:878
+#: ../gio/gdbusauthmechanismsha1.c:885
#, c-format
msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
msgstr ""
msgid "Cannot specify nonce file when creating a server"
msgstr ""
-#: ../gio/gdbusserver.c:873
+#: ../gio/gdbusserver.c:876
#, c-format
msgid "Error writing nonce file at “%s”: %s"
msgstr ""
-#: ../gio/gdbusserver.c:1044
+#: ../gio/gdbusserver.c:1047
#, c-format
msgid "The string “%s” is not a valid D-Bus GUID"
msgstr ""
-#: ../gio/gdbusserver.c:1084
+#: ../gio/gdbusserver.c:1087
#, c-format
msgid "Cannot listen on unsupported transport “%s”"
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: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/gfile.c:1956 ../gio/gfile.c:3614 ../gio/gfile.c:3669
+#: ../gio/gfile.c:3905 ../gio/gfile.c:3947 ../gio/gfile.c:4415
+#: ../gio/gfile.c:4826 ../gio/gfile.c:4911 ../gio/gfile.c:5001
+#: ../gio/gfile.c:5098 ../gio/gfile.c:5185 ../gio/gfile.c:5286
+#: ../gio/gfile.c:7827 ../gio/gfile.c:7917 ../gio/gfile.c:8001
#: ../gio/win32/gwinhttpfile.c:437
msgid "Operation not supported"
msgstr ""
msgid "Containing mount does not exist"
msgstr ""
-#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2375
+#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2377
msgid "Can’t copy over directory"
msgstr ""
msgid "Error splicing file: %s"
msgstr ""
-#: ../gio/gfile.c:3024
+#: ../gio/gfile.c:3025
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
-#: ../gio/gfile.c:3028
+#: ../gio/gfile.c:3029
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr ""
-#: ../gio/gfile.c:3033
+#: ../gio/gfile.c:3034
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
-#: ../gio/gfile.c:3096
+#: ../gio/gfile.c:3097
msgid "Can’t copy special file"
msgstr ""
-#: ../gio/gfile.c:3894
+#: ../gio/gfile.c:3895
msgid "Invalid symlink value given"
msgstr ""
-#: ../gio/gfile.c:4055
+#: ../gio/gfile.c:4056
msgid "Trash not supported"
msgstr ""
-#: ../gio/gfile.c:4167
+#: ../gio/gfile.c:4168
#, c-format
msgid "File names cannot contain “%c”"
msgstr ""
-#: ../gio/gfile.c:6613 ../gio/gvolume.c:363
+#: ../gio/gfile.c:6614 ../gio/gvolume.c:363
msgid "volume doesn’t implement mount"
msgstr ""
-#: ../gio/gfile.c:6722
+#: ../gio/gfile.c:6723
msgid "No application is registered as handling this file"
msgstr ""
msgid "Use %s to get detailed help.\n"
msgstr ""
-#: ../gio/gio-tool-cat.c:80
+#: ../gio/gio-tool-cat.c:83
msgid "Error writing to stdout"
msgstr ""
#. Translators: commandline placeholder
-#: ../gio/gio-tool-cat.c:124 ../gio/gio-tool-info.c:282
+#: ../gio/gio-tool-cat.c:127 ../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
msgid "LOCATION"
msgstr ""
-#: ../gio/gio-tool-cat.c:129
+#: ../gio/gio-tool-cat.c:132
msgid "Concatenate files and print to standard output."
msgstr ""
-#: ../gio/gio-tool-cat.c:131
+#: ../gio/gio-tool-cat.c:134
msgid ""
"gio cat works just like the traditional cat utility, but using GIO\n"
"locations instead of local files: for example, you can use something\n"
"like smb://server/resource/file.txt as location."
msgstr ""
-#: ../gio/gio-tool-cat.c:153 ../gio/gio-tool-info.c:313
+#: ../gio/gio-tool-cat.c:156 ../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"
msgid "List contents of directories in a tree-like format."
msgstr ""
-#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1492
+#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1501
#, c-format
msgid "Element <%s> not allowed inside <%s>"
msgstr ""
msgid "Error compressing file %s"
msgstr ""
-#: ../gio/glib-compile-resources.c:469 ../gio/glib-compile-schemas.c:1604
+#: ../gio/glib-compile-resources.c:469
#, c-format
msgid "text may not appear inside <%s>"
msgstr ""
-#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2053
+#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2067
msgid "Show program version and exit"
msgstr ""
"directory)"
msgstr ""
-#: ../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:2068
+#: ../gio/glib-compile-schemas.c:2096
msgid "DIRECTORY"
msgstr ""
msgid "You should give exactly one file name\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:784
-msgid "empty names are not permitted"
+#: ../gio/glib-compile-schemas.c:95
+#, c-format
+msgid "nick must be a minimum of 2 characters"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:106
+#, c-format
+msgid "Invalid numeric value"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:114
+#, c-format
+msgid "<value nick='%s'/> already specified"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:122
+#, c-format
+msgid "value='%s' already specified"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:136
+#, c-format
+msgid "flags values must have at most 1 bit set"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:161
+#, c-format
+msgid "<%s> must contain at least one <value>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:315
+#, c-format
+msgid "<%s> is not contained in the specified range"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:327
+#, c-format
+msgid "<%s> is not a valid member of the specified enumerated type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:333
+#, c-format
+msgid "<%s> contains string not in the specified flags type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:339
+#, c-format
+msgid "<%s> contains a string not in <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:373
+msgid "<range/> already specified for this key"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:391
+#, c-format
+msgid "<range> not allowed for keys of type “%s”"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:408
+#, c-format
+msgid "<range> specified minimum is greater than maximum"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:433
+#, c-format
+msgid "unsupported l10n category: %s"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:441
+msgid "l10n requested, but no gettext domain given"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:453
+msgid "translation context given for value without l10n enabled"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:475
+#, c-format
+msgid "Failed to parse <default> value of type “%s”: "
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:492
+msgid ""
+"<choices> cannot be specified for keys tagged as having an enumerated type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:501
+msgid "<choices> already specified for this key"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:513
+#, c-format
+msgid "<choices> not allowed for keys of type “%s”"
msgstr ""
-#: ../gio/glib-compile-schemas.c:794
+#: ../gio/glib-compile-schemas.c:529
#, c-format
-msgid "invalid name '%s': names must begin with a lowercase letter"
+msgid "<choice value='%s'/> already given"
msgstr ""
-#: ../gio/glib-compile-schemas.c:806
+#: ../gio/glib-compile-schemas.c:544
+#, c-format
+msgid "<choices> must contain at least one <choice>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:558
+msgid "<aliases> already specified for this key"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:562
+msgid ""
+"<aliases> can only be specified for keys with enumerated or flags types or "
+"after <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:581
+#, c-format
+msgid ""
+"<alias value='%s'/> given when “%s” is already a member of the enumerated "
+"type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:587
+#, c-format
+msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:595
+#, c-format
+msgid "<alias value='%s'/> already specified"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:605
+#, c-format
+msgid "alias target “%s” is not in enumerated type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:606
+#, c-format
+msgid "alias target “%s” is not in <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:621
+#, c-format
+msgid "<aliases> must contain at least one <alias>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:786
+msgid "Empty names are not permitted"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:796
+#, c-format
+msgid "Invalid name “%s”: names must begin with a lowercase letter"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:808
#, c-format
msgid ""
-"invalid name '%s': invalid character '%c'; only lowercase letters, numbers "
-"and hyphen ('-') are permitted."
+"Invalid name “%s”: invalid character “%c”; only lowercase letters, numbers "
+"and hyphen (“-”) are permitted"
msgstr ""
-#: ../gio/glib-compile-schemas.c:815
+#: ../gio/glib-compile-schemas.c:817
#, c-format
-msgid "invalid name '%s': two successive hyphens ('--') are not permitted."
+msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
msgstr ""
-#: ../gio/glib-compile-schemas.c:824
+#: ../gio/glib-compile-schemas.c:826
#, c-format
-msgid "invalid name '%s': the last character may not be a hyphen ('-')."
+msgid "Invalid name “%s”: the last character may not be a hyphen (“-”)"
msgstr ""
-#: ../gio/glib-compile-schemas.c:832
+#: ../gio/glib-compile-schemas.c:834
#, c-format
-msgid "invalid name '%s': maximum length is 1024"
+msgid "Invalid name “%s”: maximum length is 1024"
msgstr ""
-#: ../gio/glib-compile-schemas.c:902
+#: ../gio/glib-compile-schemas.c:904
#, c-format
msgid "<child name='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:928
-msgid "cannot add keys to a 'list-of' schema"
+#: ../gio/glib-compile-schemas.c:930
+msgid "Cannot add keys to a “list-of” schema"
msgstr ""
-#: ../gio/glib-compile-schemas.c:939
+#: ../gio/glib-compile-schemas.c:941
#, c-format
msgid "<key name='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:957
+#: ../gio/glib-compile-schemas.c:959
#, c-format
msgid ""
"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
"to modify value"
msgstr ""
-#: ../gio/glib-compile-schemas.c:968
+#: ../gio/glib-compile-schemas.c:970
#, c-format
msgid ""
-"exactly one of 'type', 'enum' or 'flags' must be specified as an attribute "
+"Exactly one of “type”, “enum” or “flags” must be specified as an attribute "
"to <key>"
msgstr ""
-#: ../gio/glib-compile-schemas.c:987
+#: ../gio/glib-compile-schemas.c:989
#, c-format
msgid "<%s id='%s'> not (yet) defined."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1002
+#: ../gio/glib-compile-schemas.c:1004
#, c-format
-msgid "invalid GVariant type string '%s'"
+msgid "Invalid GVariant type string “%s”"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1032
-msgid "<override> given but schema isn't extending anything"
+#: ../gio/glib-compile-schemas.c:1034
+msgid "<override> given but schema isn’t extending anything"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1045
+#: ../gio/glib-compile-schemas.c:1047
#, c-format
-msgid "no <key name='%s'> to override"
+msgid "No <key name='%s'> to override"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1053
+#: ../gio/glib-compile-schemas.c:1055
#, c-format
msgid "<override name='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1126
+#: ../gio/glib-compile-schemas.c:1128
#, c-format
msgid "<schema id='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1138
+#: ../gio/glib-compile-schemas.c:1140
#, c-format
-msgid "<schema id='%s'> extends not yet existing schema '%s'"
+msgid "<schema id='%s'> extends not yet existing schema “%s”"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1154
+#: ../gio/glib-compile-schemas.c:1156
#, c-format
-msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+msgid "<schema id='%s'> is list of not yet existing schema “%s”"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1162
+#: ../gio/glib-compile-schemas.c:1164
#, c-format
-msgid "Can not be a list of a schema with a path"
+msgid "Cannot be a list of a schema with a path"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1172
+#: ../gio/glib-compile-schemas.c:1174
#, c-format
-msgid "Can not extend a schema with a path"
+msgid "Cannot extend a schema with a path"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1182
+#: ../gio/glib-compile-schemas.c:1184
#, c-format
msgid ""
"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1192
+#: ../gio/glib-compile-schemas.c:1194
#, c-format
msgid ""
-"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but '%s' "
-"does not extend '%s'"
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s” "
+"does not extend “%s”"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:1211
+#, c-format
+msgid "A path, if given, must begin and end with a slash"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1209
+#: ../gio/glib-compile-schemas.c:1218
#, c-format
-msgid "a path, if given, must begin and end with a slash"
+msgid "The path of a list must end with “:/”"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1216
+#: ../gio/glib-compile-schemas.c:1227
#, c-format
-msgid "the path of a list must end with ':/'"
+msgid ""
+"Warning: Schema “%s” has path “%s”. Paths starting with “/apps/”, “/"
+"desktop/” or “/system/” are deprecated."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1248
+#: ../gio/glib-compile-schemas.c:1257
#, c-format
msgid "<%s id='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1398 ../gio/glib-compile-schemas.c:1414
+#: ../gio/glib-compile-schemas.c:1407 ../gio/glib-compile-schemas.c:1423
#, c-format
msgid "Only one <%s> element allowed inside <%s>"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1496
+#: ../gio/glib-compile-schemas.c:1505
#, c-format
msgid "Element <%s> not allowed at the top level"
msgstr ""
+#: ../gio/glib-compile-schemas.c:1523
+msgid "Element <default> is required in <key>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:1613
+#, c-format
+msgid "Text may not appear inside <%s>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:1681
+#, c-format
+msgid "Warning: undefined reference to <schema id='%s'/>"
+msgstr ""
+
#. 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:1820 ../gio/glib-compile-schemas.c:1894
+#: ../gio/glib-compile-schemas.c:1970
#, c-format
msgid "--strict was specified; exiting.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1816
+#: ../gio/glib-compile-schemas.c:1830
#, c-format
msgid "This entire file has been ignored.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1876
+#: ../gio/glib-compile-schemas.c:1890
#, c-format
msgid "Ignoring this file.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1916
+#: ../gio/glib-compile-schemas.c:1930
#, c-format
msgid "No such key '%s' in schema '%s' as specified in override file '%s'"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1922 ../gio/glib-compile-schemas.c:1980
-#: ../gio/glib-compile-schemas.c:2008
+#: ../gio/glib-compile-schemas.c:1936 ../gio/glib-compile-schemas.c:1994
+#: ../gio/glib-compile-schemas.c:2022
#, c-format
msgid "; ignoring override for this key.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1926 ../gio/glib-compile-schemas.c:1984
-#: ../gio/glib-compile-schemas.c:2012
+#: ../gio/glib-compile-schemas.c:1940 ../gio/glib-compile-schemas.c:1998
+#: ../gio/glib-compile-schemas.c:2026
#, c-format
msgid " and --strict was specified; exiting.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1942
+#: ../gio/glib-compile-schemas.c:1956
#, c-format
msgid ""
"error parsing key '%s' in schema '%s' as specified in override file '%s': %s."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1952
+#: ../gio/glib-compile-schemas.c:1966
#, c-format
msgid "Ignoring override for this key.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1970
+#: ../gio/glib-compile-schemas.c:1984
#, c-format
msgid ""
"override for key '%s' in schema '%s' in override file '%s' is outside the "
"range given in the schema"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1998
+#: ../gio/glib-compile-schemas.c:2012
#, c-format
msgid ""
"override for key '%s' in schema '%s' in override file '%s' is not in the "
"list of valid choices"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2054
+#: ../gio/glib-compile-schemas.c:2068
msgid "where to store the gschemas.compiled file"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2055
+#: ../gio/glib-compile-schemas.c:2069
msgid "Abort on any errors in schemas"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2056
+#: ../gio/glib-compile-schemas.c:2070
msgid "Do not write the gschema.compiled file"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2057
+#: ../gio/glib-compile-schemas.c:2071
msgid "Do not enforce key name restrictions"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2085
+#: ../gio/glib-compile-schemas.c:2099
msgid ""
"Compile all GSettings schema files into a schema cache.\n"
"Schema files are required to have the extension .gschema.xml,\n"
"and the cache file is called gschemas.compiled."
msgstr ""
-#: ../gio/glib-compile-schemas.c:2106
+#: ../gio/glib-compile-schemas.c:2120
#, c-format
msgid "You should give exactly one directory name\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2148
+#: ../gio/glib-compile-schemas.c:2162
#, c-format
msgid "No schema files found: "
msgstr ""
-#: ../gio/glib-compile-schemas.c:2151
+#: ../gio/glib-compile-schemas.c:2165
#, c-format
msgid "doing nothing.\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2154
+#: ../gio/glib-compile-schemas.c:2168
#, c-format
msgid "removed existing output file.\n"
msgstr ""
msgid "Can’t rename file, filename already exists"
msgstr ""
-#: ../gio/glocalfile.c:1237 ../gio/glocalfile.c:2251 ../gio/glocalfile.c:2279
-#: ../gio/glocalfile.c:2436 ../gio/glocalfileoutputstream.c:549
+#: ../gio/glocalfile.c:1237 ../gio/glocalfile.c:2253 ../gio/glocalfile.c:2281
+#: ../gio/glocalfile.c:2438 ../gio/glocalfileoutputstream.c:549
msgid "Invalid filename"
msgstr ""
msgid "Error removing file %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:1927
+#: ../gio/glocalfile.c:1928
#, c-format
msgid "Error trashing file %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:1950
+#: ../gio/glocalfile.c:1951
#, c-format
msgid "Unable to create trash dir %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:1970
+#: ../gio/glocalfile.c:1971
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr ""
-#: ../gio/glocalfile.c:2049 ../gio/glocalfile.c:2069
+#: ../gio/glocalfile.c:2050 ../gio/glocalfile.c:2070
#, c-format
msgid "Unable to find or create trash directory for %s"
msgstr ""
-#: ../gio/glocalfile.c:2103
+#: ../gio/glocalfile.c:2105
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:2162
+#: ../gio/glocalfile.c:2164
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr ""
-#: ../gio/glocalfile.c:2166 ../gio/glocalfile.c:2222
+#: ../gio/glocalfile.c:2168 ../gio/glocalfile.c:2224
#, c-format
msgid "Unable to trash file %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:2228
+#: ../gio/glocalfile.c:2230
#, c-format
msgid "Unable to trash file %s"
msgstr ""
-#: ../gio/glocalfile.c:2254
+#: ../gio/glocalfile.c:2256
#, c-format
msgid "Error creating directory %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:2283
+#: ../gio/glocalfile.c:2285
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr ""
-#: ../gio/glocalfile.c:2286
+#: ../gio/glocalfile.c:2288
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:2292 ../glib/gfileutils.c:2077
+#: ../gio/glocalfile.c:2294 ../glib/gfileutils.c:2077
msgid "Symbolic links not supported"
msgstr ""
-#: ../gio/glocalfile.c:2347 ../gio/glocalfile.c:2382 ../gio/glocalfile.c:2439
+#: ../gio/glocalfile.c:2349 ../gio/glocalfile.c:2384 ../gio/glocalfile.c:2441
#, c-format
msgid "Error moving file %s: %s"
msgstr ""
-#: ../gio/glocalfile.c:2370
+#: ../gio/glocalfile.c:2372
msgid "Can’t move directory over directory"
msgstr ""
-#: ../gio/glocalfile.c:2396 ../gio/glocalfileoutputstream.c:931
-#: ../gio/glocalfileoutputstream.c:945 ../gio/glocalfileoutputstream.c:960
-#: ../gio/glocalfileoutputstream.c:977 ../gio/glocalfileoutputstream.c:991
+#: ../gio/glocalfile.c:2398 ../gio/glocalfileoutputstream.c:933
+#: ../gio/glocalfileoutputstream.c:947 ../gio/glocalfileoutputstream.c:962
+#: ../gio/glocalfileoutputstream.c:979 ../gio/glocalfileoutputstream.c:993
msgid "Backup file creation failed"
msgstr ""
-#: ../gio/glocalfile.c:2415
+#: ../gio/glocalfile.c:2417
#, c-format
msgid "Error removing target file: %s"
msgstr ""
-#: ../gio/glocalfile.c:2429
+#: ../gio/glocalfile.c:2431
msgid "Move between mounts not supported"
msgstr ""
-#: ../gio/glocalfile.c:2620
+#: ../gio/glocalfile.c:2622
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:721
+#: ../gio/glocalfileinfo.c:731
msgid "Attribute value must be non-NULL"
msgstr ""
-#: ../gio/glocalfileinfo.c:728
+#: ../gio/glocalfileinfo.c:738
msgid "Invalid attribute type (string expected)"
msgstr ""
-#: ../gio/glocalfileinfo.c:735
+#: ../gio/glocalfileinfo.c:745
msgid "Invalid extended attribute name"
msgstr ""
-#: ../gio/glocalfileinfo.c:775
+#: ../gio/glocalfileinfo.c:785
#, c-format
msgid "Error setting extended attribute “%s”: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:1575
+#: ../gio/glocalfileinfo.c:1586
msgid " (invalid encoding)"
msgstr ""
-#: ../gio/glocalfileinfo.c:1766 ../gio/glocalfileoutputstream.c:809
+#: ../gio/glocalfileinfo.c:1777 ../gio/glocalfileoutputstream.c:811
#, c-format
msgid "Error when getting information for file “%s”: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2017
+#: ../gio/glocalfileinfo.c:2028
#, c-format
msgid "Error when getting information for file descriptor: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2062
+#: ../gio/glocalfileinfo.c:2073
msgid "Invalid attribute type (uint32 expected)"
msgstr ""
-#: ../gio/glocalfileinfo.c:2080
+#: ../gio/glocalfileinfo.c:2091
msgid "Invalid attribute type (uint64 expected)"
msgstr ""
-#: ../gio/glocalfileinfo.c:2099 ../gio/glocalfileinfo.c:2118
+#: ../gio/glocalfileinfo.c:2110 ../gio/glocalfileinfo.c:2129
msgid "Invalid attribute type (byte string expected)"
msgstr ""
-#: ../gio/glocalfileinfo.c:2153
+#: ../gio/glocalfileinfo.c:2164
msgid "Cannot set permissions on symlinks"
msgstr ""
-#: ../gio/glocalfileinfo.c:2169
+#: ../gio/glocalfileinfo.c:2180
#, c-format
msgid "Error setting permissions: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2220
+#: ../gio/glocalfileinfo.c:2231
#, c-format
msgid "Error setting owner: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2243
+#: ../gio/glocalfileinfo.c:2254
msgid "symlink must be non-NULL"
msgstr ""
-#: ../gio/glocalfileinfo.c:2253 ../gio/glocalfileinfo.c:2272
-#: ../gio/glocalfileinfo.c:2283
+#: ../gio/glocalfileinfo.c:2264 ../gio/glocalfileinfo.c:2283
+#: ../gio/glocalfileinfo.c:2294
#, c-format
msgid "Error setting symlink: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2262
+#: ../gio/glocalfileinfo.c:2273
msgid "Error setting symlink: file is not a symlink"
msgstr ""
-#: ../gio/glocalfileinfo.c:2388
+#: ../gio/glocalfileinfo.c:2399
#, c-format
msgid "Error setting modification or access time: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2411
+#: ../gio/glocalfileinfo.c:2422
msgid "SELinux context must be non-NULL"
msgstr ""
-#: ../gio/glocalfileinfo.c:2426
+#: ../gio/glocalfileinfo.c:2437
#, c-format
msgid "Error setting SELinux context: %s"
msgstr ""
-#: ../gio/glocalfileinfo.c:2433
+#: ../gio/glocalfileinfo.c:2444
msgid "SELinux is not enabled on this system"
msgstr ""
-#: ../gio/glocalfileinfo.c:2525
+#: ../gio/glocalfileinfo.c:2536
#, c-format
msgid "Setting attribute %s not supported"
msgstr ""
#: ../gio/glocalfileinputstream.c:199 ../gio/glocalfileinputstream.c:211
#: ../gio/glocalfileinputstream.c:225 ../gio/glocalfileinputstream.c:333
-#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1009
+#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1011
#, c-format
msgid "Error seeking in file: %s"
msgstr ""
msgid "Error renaming temporary file: %s"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1060
+#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1062
#, c-format
msgid "Error truncating file: %s"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:791
-#: ../gio/glocalfileoutputstream.c:1041 ../gio/gsubprocess.c:360
+#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:793
+#: ../gio/glocalfileoutputstream.c:1043 ../gio/gsubprocess.c:380
#, c-format
msgid "Error opening file “%s”: %s"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:822
+#: ../gio/glocalfileoutputstream.c:824
msgid "Target file is a directory"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:827
+#: ../gio/glocalfileoutputstream.c:829
msgid "Target file is not a regular file"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:839
+#: ../gio/glocalfileoutputstream.c:841
msgid "The file was externally modified"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:1025
+#: ../gio/glocalfileoutputstream.c:1027
#, c-format
msgid "Error removing old file: %s"
msgstr ""
msgid "Socket is already closed"
msgstr ""
-#: ../gio/gsocket.c:409 ../gio/gsocket.c:2764 ../gio/gsocket.c:3949
-#: ../gio/gsocket.c:4005
+#: ../gio/gsocket.c:409 ../gio/gsocket.c:2765 ../gio/gsocket.c:3950
+#: ../gio/gsocket.c:4008
msgid "Socket I/O timed out"
msgstr ""
msgid "creating GSocket from fd: %s"
msgstr ""
-#: ../gio/gsocket.c:569 ../gio/gsocket.c:623 ../gio/gsocket.c:630
+#: ../gio/gsocket.c:570 ../gio/gsocket.c:624 ../gio/gsocket.c:631
#, c-format
msgid "Unable to create socket: %s"
msgstr ""
-#: ../gio/gsocket.c:623
+#: ../gio/gsocket.c:624
msgid "Unknown family was specified"
msgstr ""
-#: ../gio/gsocket.c:630
+#: ../gio/gsocket.c:631
msgid "Unknown protocol was specified"
msgstr ""
-#: ../gio/gsocket.c:1121
+#: ../gio/gsocket.c:1122
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
-#: ../gio/gsocket.c:1138
+#: ../gio/gsocket.c:1139
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
-#: ../gio/gsocket.c:1942
+#: ../gio/gsocket.c:1943
#, c-format
msgid "could not get local address: %s"
msgstr ""
-#: ../gio/gsocket.c:1985
+#: ../gio/gsocket.c:1986
#, c-format
msgid "could not get remote address: %s"
msgstr ""
-#: ../gio/gsocket.c:2051
+#: ../gio/gsocket.c:2052
#, c-format
msgid "could not listen: %s"
msgstr ""
-#: ../gio/gsocket.c:2150
+#: ../gio/gsocket.c:2151
#, c-format
msgid "Error binding to address: %s"
msgstr ""
-#: ../gio/gsocket.c:2265 ../gio/gsocket.c:2302
+#: ../gio/gsocket.c:2266 ../gio/gsocket.c:2303
#, c-format
msgid "Error joining multicast group: %s"
msgstr ""
-#: ../gio/gsocket.c:2266 ../gio/gsocket.c:2303
+#: ../gio/gsocket.c:2267 ../gio/gsocket.c:2304
#, c-format
msgid "Error leaving multicast group: %s"
msgstr ""
-#: ../gio/gsocket.c:2267
+#: ../gio/gsocket.c:2268
msgid "No support for source-specific multicast"
msgstr ""
-#: ../gio/gsocket.c:2487
+#: ../gio/gsocket.c:2488
#, c-format
msgid "Error accepting connection: %s"
msgstr ""
-#: ../gio/gsocket.c:2608
+#: ../gio/gsocket.c:2609
msgid "Connection in progress"
msgstr ""
-#: ../gio/gsocket.c:2657
+#: ../gio/gsocket.c:2658
msgid "Unable to get pending error: "
msgstr ""
-#: ../gio/gsocket.c:2827
+#: ../gio/gsocket.c:2828
#, c-format
msgid "Error receiving data: %s"
msgstr ""
-#: ../gio/gsocket.c:3022
+#: ../gio/gsocket.c:3023
#, c-format
msgid "Error sending data: %s"
msgstr ""
-#: ../gio/gsocket.c:3209
+#: ../gio/gsocket.c:3210
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr ""
-#: ../gio/gsocket.c:3290
+#: ../gio/gsocket.c:3291
#, c-format
msgid "Error closing socket: %s"
msgstr ""
-#: ../gio/gsocket.c:3942
+#: ../gio/gsocket.c:3943
#, c-format
msgid "Waiting for socket condition: %s"
msgstr ""
-#: ../gio/gsocket.c:4414 ../gio/gsocket.c:4494 ../gio/gsocket.c:4672
+#: ../gio/gsocket.c:4417 ../gio/gsocket.c:4497 ../gio/gsocket.c:4675
#, c-format
msgid "Error sending message: %s"
msgstr ""
-#: ../gio/gsocket.c:4438
+#: ../gio/gsocket.c:4441
msgid "GSocketControlMessage not supported on Windows"
msgstr ""
-#: ../gio/gsocket.c:4891 ../gio/gsocket.c:4964 ../gio/gsocket.c:5190
+#: ../gio/gsocket.c:4894 ../gio/gsocket.c:4967 ../gio/gsocket.c:5193
#, c-format
msgid "Error receiving message: %s"
msgstr ""
-#: ../gio/gsocket.c:5462
+#: ../gio/gsocket.c:5465
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr ""
-#: ../gio/gsocket.c:5471
+#: ../gio/gsocket.c:5474
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
msgid "The password entered is incorrect."
msgstr ""
-#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:561
+#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:563
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] ""
msgstr[1] ""
-#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:573
+#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:575
msgid "Unexpected type of ancillary data"
msgstr ""
msgid "Error sending credentials: "
msgstr ""
-#: ../gio/gunixconnection.c:503
+#: ../gio/gunixconnection.c:504
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
-#: ../gio/gunixconnection.c:518
+#: ../gio/gunixconnection.c:520
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr ""
-#: ../gio/gunixconnection.c:547
+#: ../gio/gunixconnection.c:549
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
-#: ../gio/gunixconnection.c:587
+#: ../gio/gunixconnection.c:589
#, c-format
msgid "Not expecting control message, but got %d"
msgstr ""
-#: ../gio/gunixconnection.c:611
+#: ../gio/gunixconnection.c:614
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr ""
-#: ../gio/gunixinputstream.c:369 ../gio/gunixinputstream.c:390
+#: ../gio/gunixinputstream.c:372 ../gio/gunixinputstream.c:393
#, c-format
msgid "Error reading from file descriptor: %s"
msgstr ""
-#: ../gio/gunixinputstream.c:423 ../gio/gunixoutputstream.c:409
+#: ../gio/gunixinputstream.c:426 ../gio/gunixoutputstream.c:411
#: ../gio/gwin32inputstream.c:217 ../gio/gwin32outputstream.c:204
#, c-format
msgid "Error closing file descriptor: %s"
msgstr ""
-#: ../gio/gunixmounts.c:2422 ../gio/gunixmounts.c:2475
+#: ../gio/gunixmounts.c:2430 ../gio/gunixmounts.c:2483
msgid "Filesystem root"
msgstr ""
-#: ../gio/gunixoutputstream.c:355 ../gio/gunixoutputstream.c:376
+#: ../gio/gunixoutputstream.c:358 ../gio/gunixoutputstream.c:378
#, c-format
msgid "Error writing to file descriptor: %s"
msgstr ""
msgid "Valid key file could not be found in search dirs"
msgstr ""
-#: ../glib/gkeyfile.c:772
+#: ../glib/gkeyfile.c:773
msgid "Not a regular file"
msgstr ""
-#: ../glib/gkeyfile.c:1212
+#: ../glib/gkeyfile.c:1218
#, c-format
msgid ""
"Key file contains line “%s” which is not a key-value pair, group, or comment"
msgstr ""
-#: ../glib/gkeyfile.c:1269
+#: ../glib/gkeyfile.c:1275
#, c-format
msgid "Invalid group name: %s"
msgstr ""
-#: ../glib/gkeyfile.c:1291
+#: ../glib/gkeyfile.c:1297
msgid "Key file does not start with a group"
msgstr ""
-#: ../glib/gkeyfile.c:1317
+#: ../glib/gkeyfile.c:1323
#, c-format
msgid "Invalid key name: %s"
msgstr ""
-#: ../glib/gkeyfile.c:1344
+#: ../glib/gkeyfile.c:1350
#, c-format
msgid "Key file contains unsupported encoding “%s”"
msgstr ""
-#: ../glib/gkeyfile.c:1587 ../glib/gkeyfile.c:1760 ../glib/gkeyfile.c:3140
-#: ../glib/gkeyfile.c:3203 ../glib/gkeyfile.c:3333 ../glib/gkeyfile.c:3463
-#: ../glib/gkeyfile.c:3607 ../glib/gkeyfile.c:3836 ../glib/gkeyfile.c:3903
+#: ../glib/gkeyfile.c:1593 ../glib/gkeyfile.c:1766 ../glib/gkeyfile.c:3146
+#: ../glib/gkeyfile.c:3209 ../glib/gkeyfile.c:3339 ../glib/gkeyfile.c:3469
+#: ../glib/gkeyfile.c:3613 ../glib/gkeyfile.c:3842 ../glib/gkeyfile.c:3909
#, c-format
msgid "Key file does not have group “%s”"
msgstr ""
-#: ../glib/gkeyfile.c:1715
+#: ../glib/gkeyfile.c:1721
#, c-format
msgid "Key file does not have key “%s” in group “%s”"
msgstr ""
-#: ../glib/gkeyfile.c:1877 ../glib/gkeyfile.c:1993
+#: ../glib/gkeyfile.c:1883 ../glib/gkeyfile.c:1999
#, c-format
msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
msgstr ""
-#: ../glib/gkeyfile.c:1897 ../glib/gkeyfile.c:2013 ../glib/gkeyfile.c:2382
+#: ../glib/gkeyfile.c:1903 ../glib/gkeyfile.c:2019 ../glib/gkeyfile.c:2388
#, c-format
msgid ""
"Key file contains key “%s” which has a value that cannot be interpreted."
msgstr ""
-#: ../glib/gkeyfile.c:2600 ../glib/gkeyfile.c:2969
+#: ../glib/gkeyfile.c:2606 ../glib/gkeyfile.c:2975
#, c-format
msgid ""
"Key file contains key “%s” in group “%s” which has a value that cannot be "
"interpreted."
msgstr ""
-#: ../glib/gkeyfile.c:2678 ../glib/gkeyfile.c:2755
+#: ../glib/gkeyfile.c:2684 ../glib/gkeyfile.c:2761
#, c-format
msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
msgstr ""
-#: ../glib/gkeyfile.c:4143
+#: ../glib/gkeyfile.c:4149
msgid "Key file contains escape character at end of line"
msgstr ""
-#: ../glib/gkeyfile.c:4165
+#: ../glib/gkeyfile.c:4171
#, c-format
msgid "Key file contains invalid escape sequence “%s”"
msgstr ""
-#: ../glib/gkeyfile.c:4307
+#: ../glib/gkeyfile.c:4315
#, c-format
msgid "Value “%s” cannot be interpreted as a number."
msgstr ""
-#: ../glib/gkeyfile.c:4321
+#: ../glib/gkeyfile.c:4329
#, c-format
msgid "Integer value “%s” out of range"
msgstr ""
-#: ../glib/gkeyfile.c:4354
+#: ../glib/gkeyfile.c:4362
#, c-format
msgid "Value “%s” cannot be interpreted as a float number."
msgstr ""
-#: ../glib/gkeyfile.c:4393
+#: ../glib/gkeyfile.c:4401
#, c-format
msgid "Value “%s” cannot be interpreted as a boolean."
msgstr ""
"process"
msgstr ""
-#: ../glib/gstrfuncs.c:3237 ../glib/gstrfuncs.c:3338
+#: ../glib/gstrfuncs.c:3247 ../glib/gstrfuncs.c:3348
msgid "Empty string is not a number"
msgstr ""
-#: ../glib/gstrfuncs.c:3261
+#: ../glib/gstrfuncs.c:3271
#, c-format
msgid "“%s” is not a signed number"
msgstr ""
-#: ../glib/gstrfuncs.c:3271 ../glib/gstrfuncs.c:3374
+#: ../glib/gstrfuncs.c:3281 ../glib/gstrfuncs.c:3384
#, c-format
msgid "Number “%s” is out of bounds [%s, %s]"
msgstr ""
-#: ../glib/gstrfuncs.c:3364
+#: ../glib/gstrfuncs.c:3374
#, c-format
msgid "“%s” is not an unsigned number"
msgstr ""
msgid "Character out of range for UTF-16"
msgstr ""
-#: ../glib/gutils.c:2147 ../glib/gutils.c:2174 ../glib/gutils.c:2280
+#: ../glib/gutils.c:2149 ../glib/gutils.c:2176 ../glib/gutils.c:2282
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] ""
msgstr[1] ""
-#: ../glib/gutils.c:2153
+#: ../glib/gutils.c:2155
#, c-format
msgid "%.1f KiB"
msgstr ""
-#: ../glib/gutils.c:2155
+#: ../glib/gutils.c:2157
#, c-format
msgid "%.1f MiB"
msgstr ""
-#: ../glib/gutils.c:2158
+#: ../glib/gutils.c:2160
#, c-format
msgid "%.1f GiB"
msgstr ""
-#: ../glib/gutils.c:2161
+#: ../glib/gutils.c:2163
#, c-format
msgid "%.1f TiB"
msgstr ""
-#: ../glib/gutils.c:2164
+#: ../glib/gutils.c:2166
#, c-format
msgid "%.1f PiB"
msgstr ""
-#: ../glib/gutils.c:2167
+#: ../glib/gutils.c:2169
#, c-format
msgid "%.1f EiB"
msgstr ""
-#: ../glib/gutils.c:2180
+#: ../glib/gutils.c:2182
#, c-format
msgid "%.1f kB"
msgstr ""
-#: ../glib/gutils.c:2183 ../glib/gutils.c:2298
+#: ../glib/gutils.c:2185 ../glib/gutils.c:2300
#, c-format
msgid "%.1f MB"
msgstr ""
-#: ../glib/gutils.c:2186 ../glib/gutils.c:2303
+#: ../glib/gutils.c:2188 ../glib/gutils.c:2305
#, c-format
msgid "%.1f GB"
msgstr ""
-#: ../glib/gutils.c:2188 ../glib/gutils.c:2308
+#: ../glib/gutils.c:2190 ../glib/gutils.c:2310
#, c-format
msgid "%.1f TB"
msgstr ""
-#: ../glib/gutils.c:2191 ../glib/gutils.c:2313
+#: ../glib/gutils.c:2193 ../glib/gutils.c:2315
#, c-format
msgid "%.1f PB"
msgstr ""
-#: ../glib/gutils.c:2194 ../glib/gutils.c:2318
+#: ../glib/gutils.c:2196 ../glib/gutils.c:2320
#, c-format
msgid "%.1f EB"
msgstr ""
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: ../glib/gutils.c:2231
+#: ../glib/gutils.c:2233
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: ../glib/gutils.c:2293
+#: ../glib/gutils.c:2295
#, c-format
msgid "%.1f KB"
msgstr ""
--- /dev/null
+i18n = import('i18n')
+
+i18n.gettext('glib20', preset: 'glib')
+
+install_data('Makefile.in.in', install_dir : glib_pkgdatadir + '/gettext/po')
# This file is distributed under the same license as the glib package.
#
# Andraž Tori <andraz.tori1@guest.arnes.si> 2000.
-# Matej Urbančič <mateju@svn.gnome.org>, 2007-2016.
+# Matej Urbančič <mateju@svn.gnome.org>, 2007–2017.
#
msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=glib&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2016-03-05 21:12+0100\n"
-"PO-Revision-Date: 2016-03-05 21:12+0100\n"
+"POT-Creation-Date: 2017-08-06 19:26+0200\n"
+"PO-Revision-Date: 2017-08-06 20:01+0200\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
-"Language: sl\n"
+"Language: sl_SI\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n"
"%100==4 ? 3 : 0);\n"
"X-Poedit-SourceCharset: utf-8\n"
-"X-Generator: Poedit 1.8.4\n"
+"X-Generator: Poedit 2.0.1\n"
-#: ../gio/gapplication.c:493
+#: ../gio/gapplication.c:490
msgid "GApplication options"
msgstr "Možnosti programa"
-#: ../gio/gapplication.c:493
+#: ../gio/gapplication.c:490
msgid "Show GApplication options"
msgstr "Prikaže možnosti programa"
-#: ../gio/gapplication.c:538
+#: ../gio/gapplication.c:535
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr "Vstopi v način storitev (uporabi iz storitvenih datotek D-Bus)"
-#: ../gio/gapplication.c:550
-msgid "Override the application's ID"
+#: ../gio/gapplication.c:547
+#, fuzzy
+#| msgid "Override the application's ID"
+msgid "Override the application’s ID"
msgstr "Prepiši ID programa"
#: ../gio/gapplication-tool.c:45 ../gio/gapplication-tool.c:46
-#: ../gio/gresource-tool.c:488 ../gio/gsettings-tool.c:512
+#: ../gio/gio-tool.c:227 ../gio/gresource-tool.c:488
+#: ../gio/gsettings-tool.c:522
msgid "Print help"
msgstr "Izpiši pomoč"
msgid "[COMMAND]"
msgstr "[UKAZ]"
-#: ../gio/gapplication-tool.c:49
+#: ../gio/gapplication-tool.c:49 ../gio/gio-tool.c:228
msgid "Print version"
msgstr "Izpiši različico"
-#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:518
+#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:528
msgid "Print version information and exit"
msgstr "Izpiši podatke o različici in končaj"
msgstr "Zagon programa (z možnostjo določitve datoteke za odpiranje)"
#: ../gio/gapplication-tool.c:57
-msgid "APPID [FILE...]"
+#, fuzzy
+#| msgid "APPID [FILE...]"
+msgid "APPID [FILE…]"
msgstr "APPID [DATOTEKA ...]"
#: ../gio/gapplication-tool.c:59
msgstr "APPID"
#: ../gio/gapplication-tool.c:70 ../gio/gapplication-tool.c:133
-#: ../gio/gdbus-tool.c:90
+#: ../gio/gdbus-tool.c:90 ../gio/gio-tool.c:224
msgid "COMMAND"
msgstr "UKAZ"
msgstr ""
"Določila programa v zapisu vodila D-Bus (na primer: org.example.viewer)"
-#: ../gio/gapplication-tool.c:72 ../gio/glib-compile-resources.c:589
-#: ../gio/glib-compile-resources.c:620 ../gio/gresource-tool.c:495
-#: ../gio/gresource-tool.c:561
+#: ../gio/gapplication-tool.c:72 ../gio/glib-compile-resources.c:665
+#: ../gio/glib-compile-resources.c:671 ../gio/glib-compile-resources.c:698
+#: ../gio/gresource-tool.c:495 ../gio/gresource-tool.c:561
msgid "FILE"
msgstr "DATOTEKA"
msgstr "Neobvezen parameter za priklic dejanja, v zapisu GVariant"
#: ../gio/gapplication-tool.c:96 ../gio/gresource-tool.c:526
-#: ../gio/gsettings-tool.c:598
+#: ../gio/gsettings-tool.c:614
#, c-format
msgid ""
"Unknown command %s\n"
msgstr "Uporaba:\n"
#: ../gio/gapplication-tool.c:114 ../gio/gresource-tool.c:551
-#: ../gio/gsettings-tool.c:632
+#: ../gio/gsettings-tool.c:649
msgid "Arguments:\n"
msgstr "Argumenti:\n"
#: ../gio/gapplication-tool.c:133
-msgid "[ARGS...]"
+#, fuzzy
+#| msgid "[ARGS...]"
+msgid "[ARGS…]"
msgstr "[ARGUMENTI ...]"
#: ../gio/gapplication-tool.c:134
#. Translators: do not translate 'help', but please translate 'COMMAND'.
#: ../gio/gapplication-tool.c:146
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "Use '%s help COMMAND' to get detailed help.\n"
+#| "\n"
msgid ""
-"Use '%s help COMMAND' to get detailed help.\n"
+"Use “%s help COMMAND” to get detailed help.\n"
"\n"
msgstr ""
"Z ukazom '%s help UKAZ' se izpiše podrobna pomoč.\n"
"\n"
#: ../gio/gapplication-tool.c:171
-#, c-format
-msgid "invalid application id: '%s'\n"
+#, fuzzy, c-format
+#| msgid "invalid application id: '%s'\n"
+msgid "invalid application id: “%s”\n"
msgstr "Neveljaven ID programa: '%s'\n"
#. Translators: %s is replaced with a command name like 'list-actions'
#: ../gio/gapplication-tool.c:182
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "'%s' takes no arguments\n"
+#| "\n"
msgid ""
-"'%s' takes no arguments\n"
+"“%s” takes no arguments\n"
"\n"
msgstr ""
"'%s' ne prevzema argumentov\n"
msgstr "ime dejanja mora biti podano po določilu id programa\n"
#: ../gio/gapplication-tool.c:325
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "invalid action name: '%s'\n"
+#| "action names must consist of only alphanumerics, '-' and '.'\n"
msgid ""
-"invalid action name: '%s'\n"
-"action names must consist of only alphanumerics, '-' and '.'\n"
+"invalid action name: “%s”\n"
+"action names must consist of only alphanumerics, “-” and “.”\n"
msgstr ""
"neveljavno ime dejanja: '%s'\n"
"imena dejanj lahko tvorijo le alfanumerični znaki, vezaj in pika\n"
#: ../gio/gbufferedinputstream.c:420 ../gio/gbufferedinputstream.c:498
#: ../gio/ginputstream.c:179 ../gio/ginputstream.c:379
-#: ../gio/ginputstream.c:617 ../gio/ginputstream.c:1016
+#: ../gio/ginputstream.c:617 ../gio/ginputstream.c:1019
#: ../gio/goutputstream.c:203 ../gio/goutputstream.c:834
#: ../gio/gpollableinputstream.c:205 ../gio/gpollableoutputstream.c:206
#, c-format
msgid "Cannot truncate GBufferedInputStream"
msgstr "Ni mogoče razčleniti GBufferedInputStream"
-#: ../gio/gbufferedinputstream.c:982 ../gio/ginputstream.c:1205
-#: ../gio/giostream.c:300 ../gio/goutputstream.c:1658
+#: ../gio/gbufferedinputstream.c:982 ../gio/ginputstream.c:1208
+#: ../gio/giostream.c:300 ../gio/goutputstream.c:1660
msgid "Stream is already closed"
msgstr "Pretok je že zaprt"
msgid "Truncate not supported on base stream"
msgstr "Razčlenitev na osnovnem pretoku ni dovoljena"
-#: ../gio/gcancellable.c:317 ../gio/gdbusconnection.c:1847
-#: ../gio/gdbusprivate.c:1375 ../gio/glocalfile.c:2220
-#: ../gio/gsimpleasyncresult.c:870 ../gio/gsimpleasyncresult.c:896
+#: ../gio/gcancellable.c:317 ../gio/gdbusconnection.c:1849
+#: ../gio/gdbusprivate.c:1402 ../gio/gsimpleasyncresult.c:870
+#: ../gio/gsimpleasyncresult.c:896
#, c-format
msgid "Operation was cancelled"
msgstr "Opravilo je bilo preklicano."
msgstr "Ni dovolj prostora za cilju"
#: ../gio/gcharsetconverter.c:342 ../gio/gdatainputstream.c:848
-#: ../gio/gdatainputstream.c:1256 ../glib/gconvert.c:438
-#: ../glib/gconvert.c:845 ../glib/giochannel.c:1556 ../glib/giochannel.c:1598
-#: ../glib/giochannel.c:2442 ../glib/gutf8.c:853 ../glib/gutf8.c:1306
+#: ../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:866 ../glib/gutf8.c:1319
msgid "Invalid byte sequence in conversion input"
msgstr "Neveljavno zaporedje bajtov na vhodu pretvorbe"
-#: ../gio/gcharsetconverter.c:347 ../glib/gconvert.c:446
-#: ../glib/gconvert.c:770 ../glib/giochannel.c:1563 ../glib/giochannel.c:2454
+#: ../gio/gcharsetconverter.c:347 ../glib/gconvert.c:446 ../glib/gconvert.c:770
+#: ../glib/giochannel.c:1563 ../glib/giochannel.c:2454
#, c-format
msgid "Error during conversion: %s"
msgstr "Napaka med pretvorbo: %s"
-#: ../gio/gcharsetconverter.c:444 ../gio/gsocket.c:1078
+#: ../gio/gcharsetconverter.c:445 ../gio/gsocket.c:1096
msgid "Cancellable initialization not supported"
msgstr "Dejanje prekinitve zagona ni podprto"
-#: ../gio/gcharsetconverter.c:454 ../glib/gconvert.c:321
+#: ../gio/gcharsetconverter.c:456 ../glib/gconvert.c:321
#: ../glib/giochannel.c:1384
-#, c-format
-msgid "Conversion from character set '%s' to '%s' is not supported"
+#, fuzzy, c-format
+#| msgid "Conversion from character set '%s' to '%s' is not supported"
+msgid "Conversion from character set “%s” to “%s” is not supported"
msgstr "Pretvorba iz nabora znakov '%s' v '%s' ni podprta"
-#: ../gio/gcharsetconverter.c:458 ../glib/gconvert.c:325
-#, c-format
-msgid "Could not open converter from '%s' to '%s'"
+#: ../gio/gcharsetconverter.c:460 ../glib/gconvert.c:325
+#, fuzzy, c-format
+#| msgid "Could not open converter from '%s' to '%s'"
+msgid "Could not open converter from “%s” to “%s”"
msgstr "Ni mogoče odpreti pretvornika iz '%s' v '%s'"
-#: ../gio/gcontenttype.c:335
+#: ../gio/gcontenttype.c:358
#, c-format
msgid "%s type"
msgstr "%s vrsta"
-#: ../gio/gcontenttype-win32.c:160
+#: ../gio/gcontenttype-win32.c:177
msgid "Unknown type"
msgstr "Neznana vrsta"
-#: ../gio/gcontenttype-win32.c:162
+#: ../gio/gcontenttype-win32.c:179
#, c-format
msgid "%s filetype"
msgstr "%s vrsta datoteke"
msgid "Unexpected early end-of-stream"
msgstr "Nepričakovan prezgodnji konec pretoka"
-#: ../gio/gdbusaddress.c:153 ../gio/gdbusaddress.c:241
-#: ../gio/gdbusaddress.c:322
-#, c-format
-msgid "Unsupported key '%s' in address entry '%s'"
+#: ../gio/gdbusaddress.c:155 ../gio/gdbusaddress.c:243
+#: ../gio/gdbusaddress.c:324
+#, fuzzy, c-format
+#| msgid "Unsupported key '%s' in address entry '%s'"
+msgid "Unsupported key “%s” in address entry “%s”"
msgstr "Nepodprt ključ '%s' v vnosu naslova '%s'"
-#: ../gio/gdbusaddress.c:180
-#, c-format
+#: ../gio/gdbusaddress.c:182
+#, fuzzy, c-format
+#| msgid ""
+#| "Address '%s' is invalid (need exactly one of path, tmpdir or abstract "
+#| "keys)"
msgid ""
-"Address '%s' is invalid (need exactly one of path, tmpdir or abstract keys)"
+"Address “%s” is invalid (need exactly one of path, tmpdir or abstract keys)"
msgstr ""
"Naslov '%s' je nepravilen (zahtevana je pot, začasna mapa ali abstraktni "
"ključ)"
-#: ../gio/gdbusaddress.c:193
-#, c-format
-msgid "Meaningless key/value pair combination in address entry '%s'"
+#: ../gio/gdbusaddress.c:195
+#, fuzzy, c-format
+#| msgid "Meaningless key/value pair combination in address entry '%s'"
+msgid "Meaningless key/value pair combination in address entry “%s”"
msgstr "Nesmiselna kombinacija za par ključ/vrednost v vnosu naslova '%s'"
-#: ../gio/gdbusaddress.c:256 ../gio/gdbusaddress.c:337
-#, c-format
-msgid "Error in address '%s' - the port attribute is malformed"
+#: ../gio/gdbusaddress.c:258 ../gio/gdbusaddress.c:339
+#, fuzzy, c-format
+#| msgid "Error in address '%s' - the port attribute is malformed"
+msgid "Error in address “%s” — the port attribute is malformed"
msgstr "Napaka v naslovu '%s' - atribut vrat je nepravilno oblikovan"
-#: ../gio/gdbusaddress.c:267 ../gio/gdbusaddress.c:348
-#, c-format
-msgid "Error in address '%s' - the family attribute is malformed"
+#: ../gio/gdbusaddress.c:269 ../gio/gdbusaddress.c:350
+#, fuzzy, c-format
+#| msgid "Error in address '%s' - the family attribute is malformed"
+msgid "Error in address “%s” — the family attribute is malformed"
msgstr "Napaka v naslovu '%s' - atribut družine je nepravilno oblikovan"
-#: ../gio/gdbusaddress.c:457
-#, c-format
-msgid "Address element '%s' does not contain a colon (:)"
+#: ../gio/gdbusaddress.c:460
+#, fuzzy, c-format
+#| msgid "Address element '%s' does not contain a colon (:)"
+msgid "Address element “%s” does not contain a colon (:)"
msgstr "Predmet naslova '%s' ne vsebuje dvopičja (:)"
-#: ../gio/gdbusaddress.c:478
-#, c-format
+#: ../gio/gdbusaddress.c:481
+#, fuzzy, c-format
+#| msgid ""
+#| "Key/Value pair %d, '%s', in address element '%s' does not contain an "
+#| "equal sign"
msgid ""
-"Key/Value pair %d, '%s', in address element '%s' does not contain an equal "
+"Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
"sign"
msgstr ""
"Par ključ/vrednost %d, '%s', v predmetu naslova '%s', ne vsebuje enačaja"
-#: ../gio/gdbusaddress.c:492
-#, c-format
+#: ../gio/gdbusaddress.c:495
+#, fuzzy, c-format
+#| msgid ""
+#| "Error unescaping key or value in Key/Value pair %d, '%s', in address "
+#| "element '%s'"
msgid ""
-"Error unescaping key or value in Key/Value pair %d, '%s', in address element "
-"'%s'"
+"Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
+"“%s”"
msgstr ""
"Napaka, neubežni ključ ali vrednost v paru ključ/vrednost %d, '%s', v "
"predmetu naslova '%s'"
-#: ../gio/gdbusaddress.c:570
-#, c-format
+#: ../gio/gdbusaddress.c:573
+#, fuzzy, c-format
+#| msgid ""
+#| "Error in address '%s' - the unix transport requires exactly one of the "
+#| "keys 'path' or 'abstract' to be set"
msgid ""
-"Error in address '%s' - the unix transport requires exactly one of the keys "
-"'path' or 'abstract' to be set"
+"Error in address “%s” — the unix transport requires exactly one of the keys "
+"“path” or “abstract” to be set"
msgstr ""
"Napaka v naslovu '%s' - unix prenos zahteva enega izmed ključev 'path' ali "
"'abstract' nastavljen"
-#: ../gio/gdbusaddress.c:606
-#, c-format
-msgid "Error in address '%s' - the host attribute is missing or malformed"
+#: ../gio/gdbusaddress.c:609
+#, fuzzy, c-format
+#| msgid "Error in address '%s' - the host attribute is missing or malformed"
+msgid "Error in address “%s” — the host attribute is missing or malformed"
msgstr ""
"Napaka v naslovu '%s' - atribut host manjka ali pa je nepravilno oblikovan"
-#: ../gio/gdbusaddress.c:620
-#, c-format
-msgid "Error in address '%s' - the port attribute is missing or malformed"
+#: ../gio/gdbusaddress.c:623
+#, fuzzy, c-format
+#| msgid "Error in address '%s' - the port attribute is missing or malformed"
+msgid "Error in address “%s” — the port attribute is missing or malformed"
msgstr ""
"Napaka v naslovu '%s' - manjka atribut vrat ali pa ali je nepravilno "
"oblikovan"
-#: ../gio/gdbusaddress.c:634
-#, c-format
-msgid "Error in address '%s' - the noncefile attribute is missing or malformed"
+#: ../gio/gdbusaddress.c:637
+#, fuzzy, c-format
+#| msgid ""
+#| "Error in address '%s' - the noncefile attribute is missing or malformed"
+msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
msgstr ""
"Napaka v naslovu '%s' - atribut noncefile manjka ali pa je nepravilno "
"oblikovan"
-#: ../gio/gdbusaddress.c:655
+#: ../gio/gdbusaddress.c:658
msgid "Error auto-launching: "
msgstr "Napaka samodejnega zaganjanja:"
-#: ../gio/gdbusaddress.c:663
-#, c-format
-msgid "Unknown or unsupported transport '%s' for address '%s'"
+#: ../gio/gdbusaddress.c:666
+#, fuzzy, c-format
+#| msgid "Unknown or unsupported transport '%s' for address '%s'"
+msgid "Unknown or unsupported transport “%s” for address “%s”"
msgstr "Neznan ali nepodprt prenos '%s' za naslov '%s' "
-#: ../gio/gdbusaddress.c:699
-#, c-format
-msgid "Error opening nonce file '%s': %s"
+#: ../gio/gdbusaddress.c:704
+#, fuzzy, c-format
+#| msgid "Error opening nonce file '%s': %s"
+msgid "Error opening nonce file “%s”: %s"
msgstr "Napaka med odpiranjem enkratne datoteke '%s': %s"
-#: ../gio/gdbusaddress.c:717
-#, c-format
-msgid "Error reading from nonce file '%s': %s"
+#: ../gio/gdbusaddress.c:723
+#, fuzzy, c-format
+#| msgid "Error reading from nonce file '%s': %s"
+msgid "Error reading from nonce file “%s”: %s"
msgstr "Napaka med branjem iz enkratne datoteke '%s': %s"
-#: ../gio/gdbusaddress.c:726
-#, c-format
-msgid "Error reading from nonce file '%s', expected 16 bytes, got %d"
+#: ../gio/gdbusaddress.c:732
+#, fuzzy, c-format
+#| msgid "Error reading from nonce file '%s', expected 16 bytes, got %d"
+msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
msgstr ""
"Napaka med branjem iz datoteke nonce '%s'; pričakovanih 16 bajtov, dobljenih "
"pa %d"
-#: ../gio/gdbusaddress.c:744
-#, c-format
-msgid "Error writing contents of nonce file '%s' to stream:"
+#: ../gio/gdbusaddress.c:750
+#, fuzzy, c-format
+#| msgid "Error writing contents of nonce file '%s' to stream:"
+msgid "Error writing contents of nonce file “%s” to stream:"
msgstr "Napaka med pisanjem vsebine datoteke nonce '%s' v pretok:"
-#: ../gio/gdbusaddress.c:950
+#: ../gio/gdbusaddress.c:959
msgid "The given address is empty"
msgstr "Podan naslov je prazen."
-#: ../gio/gdbusaddress.c:1063
+#: ../gio/gdbusaddress.c:1072
#, c-format
msgid "Cannot spawn a message bus when setuid"
msgstr "Ni mogoče oživiti vodila sporočila med izvajanjem ukaza setuid"
-#: ../gio/gdbusaddress.c:1070
+#: ../gio/gdbusaddress.c:1079
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Ni mogoče oživiti vodila sporočila brez predmeta machine-id:"
-#: ../gio/gdbusaddress.c:1112
+#: ../gio/gdbusaddress.c:1086
#, c-format
-msgid "Error spawning command line '%s': "
+msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
+msgstr "Ni mogoče samodejno zagnati vodila D-Bus brez nastaviteve X11 $DISPLAY"
+
+#: ../gio/gdbusaddress.c:1128
+#, fuzzy, c-format
+#| msgid "Error spawning command line '%s': "
+msgid "Error spawning command line “%s”: "
msgstr "Napaka med oživljanjem ukazne vrstice '%s': "
-#: ../gio/gdbusaddress.c:1329
+#: ../gio/gdbusaddress.c:1345
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(S pritiskom na katerikoli znak, se okno zapre)\n"
-#: ../gio/gdbusaddress.c:1481
+#: ../gio/gdbusaddress.c:1499
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Vodilo seje DBus ni zagnano, zato je samodejni zagon spodletel"
-#: ../gio/gdbusaddress.c:1492
+#: ../gio/gdbusaddress.c:1510
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Ni mogoče določiti naslova vodila seje (ni podprto v tem OS)"
-#: ../gio/gdbusaddress.c:1627 ../gio/gdbusconnection.c:7128
-#, c-format
+#: ../gio/gdbusaddress.c:1648
+#, fuzzy, c-format
+#| msgid ""
+#| "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment "
+#| "variable - unknown value '%s'"
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
-"- unknown value '%s'"
+"— unknown value “%s”"
msgstr ""
"Ni mogoče določiti naslova vodila iz okoljske spremenljivke "
"DBUS_STARTER_BUS_TYPE - neznana vrednost '%s'"
-#: ../gio/gdbusaddress.c:1636 ../gio/gdbusconnection.c:7137
+#: ../gio/gdbusaddress.c:1657 ../gio/gdbusconnection.c:7155
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
"Ni mogoče določiti naslova vodila, kajti okoljska spremenljivka "
"DBUS_STARTER_BUS_TYPE ni nastavljena"
-#: ../gio/gdbusaddress.c:1646
+#: ../gio/gdbusaddress.c:1667
#, c-format
msgid "Unknown bus type %d"
msgstr "Neznana vrsta vodila %d"
"Izčrpani so vsi razpoložljivi overitveni mehanizmi (poskusi: %s) "
"(razpoložljivih: %s)"
-#: ../gio/gdbusauth.c:1170
+#: ../gio/gdbusauth.c:1174
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Prekinjeno s strani GDBusAuthObserver::authorize-authenticated-peer"
-#: ../gio/gdbusauthmechanismsha1.c:261
-#, c-format
-msgid "Error when getting information for directory '%s': %s"
+#: ../gio/gdbusauthmechanismsha1.c:262
+#, fuzzy, c-format
+#| msgid "Error when getting information for directory '%s': %s"
+msgid "Error when getting information for directory “%s”: %s"
msgstr "Napaka med pridobivanjem mape '%s': %s"
-#: ../gio/gdbusauthmechanismsha1.c:273
-#, c-format
+#: ../gio/gdbusauthmechanismsha1.c:274
+#, fuzzy, c-format
+#| msgid ""
+#| "Permissions on directory '%s' are malformed. Expected mode 0700, got 0%o"
msgid ""
-"Permissions on directory '%s' are malformed. Expected mode 0700, got 0%o"
+"Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
msgstr ""
"Dovoljenja na mapi '%s' so nepravilna. Pričakovana 0700, dobljena pa 0%o"
-#: ../gio/gdbusauthmechanismsha1.c:294
-#, c-format
-msgid "Error creating directory '%s': %s"
-msgstr "Napaka med ustvarjanjem mape '%s': %s"
+#: ../gio/gdbusauthmechanismsha1.c:296
+#, fuzzy, c-format
+#| msgid "Error creating directory %s: %s"
+msgid "Error creating directory “%s”: %s"
+msgstr "Napaka med ustvarjanjem mape %s: %s"
-#: ../gio/gdbusauthmechanismsha1.c:377
-#, c-format
-msgid "Error opening keyring '%s' for reading: "
+#: ../gio/gdbusauthmechanismsha1.c:379
+#, fuzzy, c-format
+#| msgid "Error opening keyring '%s' for reading: "
+msgid "Error opening keyring “%s” for reading: "
msgstr "Napaka med odpiranjem zbirke ključev '%s' za branje:"
-#: ../gio/gdbusauthmechanismsha1.c:401 ../gio/gdbusauthmechanismsha1.c:714
-#, c-format
-msgid "Line %d of the keyring at '%s' with content '%s' is malformed"
+#: ../gio/gdbusauthmechanismsha1.c:403 ../gio/gdbusauthmechanismsha1.c:721
+#, fuzzy, c-format
+#| msgid "Line %d of the keyring at '%s' with content '%s' is malformed"
+msgid "Line %d of the keyring at “%s” with content “%s” is malformed"
msgstr "Vrstica %d zbirke ključev '%s' z vsebino '%s' je neustrezno oblikovana"
-#: ../gio/gdbusauthmechanismsha1.c:415 ../gio/gdbusauthmechanismsha1.c:728
-#, c-format
+#: ../gio/gdbusauthmechanismsha1.c:417 ../gio/gdbusauthmechanismsha1.c:735
+#, fuzzy, c-format
+#| msgid ""
+#| "First token of line %d of the keyring at '%s' with content '%s' is "
+#| "malformed"
msgid ""
-"First token of line %d of the keyring at '%s' with content '%s' is malformed"
+"First token of line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
"Prvi žeton vrstice %d zbirke ključev pri '%s' z vsebino '%s' je neustrezno "
"oblikovan"
-#: ../gio/gdbusauthmechanismsha1.c:430 ../gio/gdbusauthmechanismsha1.c:742
-#, c-format
+#: ../gio/gdbusauthmechanismsha1.c:432 ../gio/gdbusauthmechanismsha1.c:749
+#, fuzzy, c-format
+#| msgid ""
+#| "Second token of line %d of the keyring at '%s' with content '%s' is "
+#| "malformed"
msgid ""
-"Second token of line %d of the keyring at '%s' with content '%s' is malformed"
+"Second token of line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
"Drugi žeton vrstice %d zbirke ključev pri '%s' z vsebino '%s' je neustrezno "
"oblikovana"
-#: ../gio/gdbusauthmechanismsha1.c:454
-#, c-format
-msgid "Didn't find cookie with id %d in the keyring at '%s'"
+#: ../gio/gdbusauthmechanismsha1.c:456
+#, fuzzy, c-format
+#| msgid "Didn't find cookie with id %d in the keyring at '%s'"
+msgid "Didn’t find cookie with id %d in the keyring at “%s”"
msgstr "Piškota z id %d v zbirki ključev '%s' ni mogoče najti"
-#: ../gio/gdbusauthmechanismsha1.c:532
-#, c-format
-msgid "Error deleting stale lock file '%s': %s"
+#: ../gio/gdbusauthmechanismsha1.c:536
+#, fuzzy, c-format
+#| msgid "Error deleting stale lock file '%s': %s"
+msgid "Error deleting stale lock file “%s”: %s"
msgstr "Napaka brisanja stare datoteke zaklepa '%s': %s"
-#: ../gio/gdbusauthmechanismsha1.c:564
-#, c-format
-msgid "Error creating lock file '%s': %s"
+#: ../gio/gdbusauthmechanismsha1.c:569
+#, fuzzy, c-format
+#| msgid "Error creating lock file '%s': %s"
+msgid "Error creating lock file “%s”: %s"
msgstr "Napaka med ustvarjanjem datoteke '%s': %s"
-#: ../gio/gdbusauthmechanismsha1.c:594
-#, c-format
-msgid "Error closing (unlinked) lock file '%s': %s"
+#: ../gio/gdbusauthmechanismsha1.c:600
+#, fuzzy, c-format
+#| msgid "Error closing (unlinked) lock file '%s': %s"
+msgid "Error closing (unlinked) lock file “%s”: %s"
msgstr "Napaka med zapiranjem (nepovezane) zaklepne datoteke '%s': %s"
-#: ../gio/gdbusauthmechanismsha1.c:604
-#, c-format
-msgid "Error unlinking lock file '%s': %s"
+#: ../gio/gdbusauthmechanismsha1.c:611
+#, fuzzy, c-format
+#| msgid "Error unlinking lock file '%s': %s"
+msgid "Error unlinking lock file “%s”: %s"
msgstr "Napaka med razvezovanjem datoteke zaklepa '%s': %s"
-#: ../gio/gdbusauthmechanismsha1.c:681
-#, c-format
-msgid "Error opening keyring '%s' for writing: "
+#: ../gio/gdbusauthmechanismsha1.c:688
+#, fuzzy, c-format
+#| msgid "Error opening keyring '%s' for writing: "
+msgid "Error opening keyring “%s” for writing: "
msgstr "Napaka med odpiranjem zbirke ključev '%s' za branje: "
-#: ../gio/gdbusauthmechanismsha1.c:878
-#, c-format
-msgid "(Additionally, releasing the lock for '%s' also failed: %s) "
+#: ../gio/gdbusauthmechanismsha1.c:885
+#, fuzzy, c-format
+#| msgid "(Additionally, releasing the lock for '%s' also failed: %s) "
+msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
msgstr "(V nadaljevanju je spodletelo tudi sproščanje zaklepa '%s': %s)"
-#: ../gio/gdbusconnection.c:612 ../gio/gdbusconnection.c:2373
+#: ../gio/gdbusconnection.c:612 ../gio/gdbusconnection.c:2378
msgid "The connection is closed"
msgstr "Povezava je zaprta"
-#: ../gio/gdbusconnection.c:1877
+#: ../gio/gdbusconnection.c:1879
msgid "Timeout was reached"
msgstr "Čas zakasnitve je potekel"
-#: ../gio/gdbusconnection.c:2495
+#: ../gio/gdbusconnection.c:2500
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Med izgrajevanjem povezave s strani odjemalca so bile odkrite nepodprte "
"zastavice"
-#: ../gio/gdbusconnection.c:4105 ../gio/gdbusconnection.c:4452
+#: ../gio/gdbusconnection.c:4124 ../gio/gdbusconnection.c:4471
#, c-format
msgid ""
"No such interface 'org.freedesktop.DBus.Properties' on object at path %s"
msgstr ""
"Vmesnik 'org.freedesktop.DBus.Properties' na predmetu na poti %s ne obstaja"
-#: ../gio/gdbusconnection.c:4247
+#: ../gio/gdbusconnection.c:4266
#, c-format
msgid "No such property '%s'"
msgstr "Lastnost '%s' ne obstaja"
-#: ../gio/gdbusconnection.c:4259
+#: ../gio/gdbusconnection.c:4278
#, c-format
msgid "Property '%s' is not readable"
msgstr "Lastnosti '%s' ni berljiva"
-#: ../gio/gdbusconnection.c:4270
+#: ../gio/gdbusconnection.c:4289
#, c-format
msgid "Property '%s' is not writable"
msgstr "Lastnost '%s' ni zapisljiva"
-#: ../gio/gdbusconnection.c:4290
+#: ../gio/gdbusconnection.c:4309
#, c-format
msgid "Error setting property '%s': Expected type '%s' but got '%s'"
msgstr ""
"Napaka med nastavljanjem lastnosti '%s': pričakovana je vrsta '%s', dobljena "
"pa '%s'"
-#: ../gio/gdbusconnection.c:4395 ../gio/gdbusconnection.c:6568
+#: ../gio/gdbusconnection.c:4414 ../gio/gdbusconnection.c:4622
+#: ../gio/gdbusconnection.c:6586
#, c-format
msgid "No such interface '%s'"
msgstr "Vmesnik '%s' ne obstaja"
-#: ../gio/gdbusconnection.c:4603
-msgid "No such interface"
-msgstr "Vmesnik ne obstaja"
-
-#: ../gio/gdbusconnection.c:4821 ../gio/gdbusconnection.c:7077
+#: ../gio/gdbusconnection.c:4840 ../gio/gdbusconnection.c:7095
#, c-format
msgid "No such interface '%s' on object at path %s"
msgstr "Vmesnik '%s' na predmetu na poti %s ne obstaja"
-#: ../gio/gdbusconnection.c:4919
+#: ../gio/gdbusconnection.c:4938
#, c-format
msgid "No such method '%s'"
msgstr "Način '%s' ne obstaja"
-#: ../gio/gdbusconnection.c:4950
+#: ../gio/gdbusconnection.c:4969
#, c-format
msgid "Type of message, '%s', does not match expected type '%s'"
msgstr "Vrsta sporočila '%s' se ne sklada s pričakovano vrsto '%s'"
-#: ../gio/gdbusconnection.c:5148
+#: ../gio/gdbusconnection.c:5167
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Za vmesnik %s pri %s je predmet že izvožen"
-#: ../gio/gdbusconnection.c:5374
+#: ../gio/gdbusconnection.c:5393
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Ni mogoče pridobiti lastnosti %s.%s"
-#: ../gio/gdbusconnection.c:5430
+#: ../gio/gdbusconnection.c:5449
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Ni mogoče določiti lastnosti %s.%s"
-#: ../gio/gdbusconnection.c:5606
+#: ../gio/gdbusconnection.c:5625
#, c-format
msgid "Method '%s' returned type '%s', but expected '%s'"
msgstr "Način '%s' je vrnil vrsto '%s', pričakovana pa je vrsta '%s'"
-#: ../gio/gdbusconnection.c:6679
+#: ../gio/gdbusconnection.c:6697
#, c-format
msgid "Method '%s' on interface '%s' with signature '%s' does not exist"
msgstr "Način '%s' na vmesniku '%s' s podpisom '%s' ne obstaja"
-#: ../gio/gdbusconnection.c:6800
+#: ../gio/gdbusconnection.c:6818
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Podrejeno drevo je že izvoženo za %s"
-#: ../gio/gdbusmessage.c:1244
+#: ../gio/gdbusconnection.c:7146
+#, c-format
+msgid ""
+"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
+"- unknown value '%s'"
+msgstr ""
+"Ni mogoče določiti naslova vodila iz okoljske spremenljivke "
+"DBUS_STARTER_BUS_TYPE - neznana vrednost '%s'"
+
+#: ../gio/gdbusmessage.c:1246
msgid "type is INVALID"
msgstr "vrsta je neveljavna"
-#: ../gio/gdbusmessage.c:1255
+#: ../gio/gdbusmessage.c:1257
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Sporočilo METHOD_CALL: manjka polje glave PATH ali MEMBER"
-#: ../gio/gdbusmessage.c:1266
+#: ../gio/gdbusmessage.c:1268
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Sporočilo METHOD_RETURN: manjka polje glave REPLY_SERIAL"
-#: ../gio/gdbusmessage.c:1278
+#: ../gio/gdbusmessage.c:1280
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Sporočilo ERROR: manjka polje glave REPLY_SERIAL ali ERROR_NAME"
-#: ../gio/gdbusmessage.c:1291
+#: ../gio/gdbusmessage.c:1293
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Sporočilo SIGNAL: mankja polje glave PATH, INTERFACE ali MEMBER"
-#: ../gio/gdbusmessage.c:1299
+#: ../gio/gdbusmessage.c:1301
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
"Sporočilo SIGNAL: polje glave PATH uporablja rezervirano vrednost /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"
"freedesktop.DBus.Local"
# Double multiple plural?
-#: ../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[2] "Med poskusom branja %lu bajtov sta bila prejeta le %lu."
msgstr[3] "Med poskusom branja %lu bajtov so bili prejeti le %lu."
-#: ../gio/gdbusmessage.c:1369
-#, c-format
-msgid "Expected NUL byte after the string '%s' but found byte %d"
+#: ../gio/gdbusmessage.c:1371
+#, fuzzy, c-format
+#| msgid "Expected NUL byte after the string '%s' but found byte %d"
+msgid "Expected NUL byte after the string “%s” but found byte %d"
msgstr "Po nizu '%s' je pričakovan bajt NUL, vendar je bil zaznan %d"
-#: ../gio/gdbusmessage.c:1388
-#, c-format
+#: ../gio/gdbusmessage.c:1390
+#, fuzzy, c-format
+#| msgid ""
+#| "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'"
msgid ""
"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'"
+"(length of string is %d). The valid UTF-8 string up until that point was “%s”"
msgstr ""
"Pričakovan veljaven UTF-8 niz, vendar je najdenih nepravilno število bajtov "
"na bajtnem odmiku %d (dolžina niza %d). Do takrat veljaven UTF-8 niz je '%s'"
-#: ../gio/gdbusmessage.c:1587
-#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus object path"
+#: ../gio/gdbusmessage.c:1589
+#, fuzzy, c-format
+#| msgid "Parsed value '%s' is not a valid D-Bus object path"
+msgid "Parsed value “%s” is not a valid D-Bus object path"
msgstr "Razčlenjena vrednost '%s' ni veljavna pot predmeta vodila D-Bus"
-#: ../gio/gdbusmessage.c:1609
-#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus signature"
+#: ../gio/gdbusmessage.c:1611
+#, fuzzy, c-format
+#| msgid "Parsed value '%s' is not a valid D-Bus signature"
+msgid "Parsed value “%s” is not a valid D-Bus signature"
msgstr "Razčlenjena vrednost '%s' ni veljaven podpis vodila D-Bus"
-#: ../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)."
"Najdeno je polje dolžine %u bajtov, največja dovoljena pa je 2<<26 bajtov "
"(64 MiB)."
-#: ../gio/gdbusmessage.c:1676
-#, c-format
+#: ../gio/gdbusmessage.c:1678
+#, fuzzy, c-format
+#| msgid ""
+#| "Encountered array of type 'a%c', expected to have a length a multiple of "
+#| "%u bytes, but found to be %u bytes in length"
msgid ""
-"Encountered array of type 'a%c', expected to have a length a multiple of %u "
+"Encountered array of type “a%c”, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
msgstr ""
"Zaznano je polje vrste 'a%c', pričakovana pa je vrednost večkratnika %u "
"bajtov, zaznanih pa je %u bajtov dolžine"
-#: ../gio/gdbusmessage.c:1843
-#, c-format
-msgid "Parsed value '%s' for variant is not a valid D-Bus signature"
+#: ../gio/gdbusmessage.c:1845
+#, fuzzy, c-format
+#| msgid "Parsed value '%s' for variant is not a valid D-Bus signature"
+msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
msgstr "Razčlenjena vrednost '%s' ni veljaven podpis vodila D-Bus"
-#: ../gio/gdbusmessage.c:1867
-#, c-format
+#: ../gio/gdbusmessage.c:1869
+#, fuzzy, c-format
+#| msgid ""
+#| "Error deserializing GVariant with type string '%s' from the D-Bus wire "
+#| "format"
msgid ""
-"Error deserializing GVariant with type string '%s' from the D-Bus wire format"
+"Error deserializing GVariant with type string “%s” from the D-Bus wire format"
msgstr ""
"Napaka med ločevanjem GVariant iz zaporedja z vrsto niza '%s' iz D-Bus žične "
"oblike "
-#: ../gio/gdbusmessage.c:2051
-#, c-format
+#: ../gio/gdbusmessage.c:2053
+#, fuzzy, c-format
+#| msgid ""
+#| "Invalid endianness value. Expected 0x6c ('l') or 0x42 ('B') but found "
+#| "value 0x%02x"
msgid ""
-"Invalid endianness value. Expected 0x6c ('l') or 0x42 ('B') but found value "
+"Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
"0x%02x"
msgstr ""
"Neveljavna vrednost vrstnega reda zlogov. Pričakovana je vrednost 0x6c ('l') "
"ali 0x42 ('B'), najdena pa je vrednost 0x%02x"
-#: ../gio/gdbusmessage.c:2064
+#: ../gio/gdbusmessage.c:2066
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Neveljavna večja različica protokola. Pričakovana je 1, najdenih pa jih je "
"več (%d)"
-#: ../gio/gdbusmessage.c:2120
-#, c-format
-msgid "Signature header with signature '%s' found but message body is empty"
+#: ../gio/gdbusmessage.c:2122
+#, fuzzy, c-format
+#| msgid "Signature header with signature '%s' found but message body is empty"
+msgid "Signature header with signature “%s” found but message body is empty"
msgstr ""
"Glava podpisa s podpisom '%s' je najdena, vendar je telo sporočila prazno"
-#: ../gio/gdbusmessage.c:2134
-#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus signature (for body)"
+#: ../gio/gdbusmessage.c:2136
+#, fuzzy, c-format
+#| msgid "Parsed value '%s' is not a valid D-Bus signature (for body)"
+msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
msgstr "Razčlenjena vrednost '%s' ni veljaven podpis vodila D-Bus (za telo)"
-#: ../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[3] ""
"V sporočilu ni glave podpisa, vendar je telo sporočila dolgo %u bajte"
-#: ../gio/gdbusmessage.c:2174
+#: ../gio/gdbusmessage.c:2176
msgid "Cannot deserialize message: "
msgstr "Sporočila ni mogoče ločiti iz zaporedja:"
-#: ../gio/gdbusmessage.c:2515
-#, c-format
+#: ../gio/gdbusmessage.c:2517
+#, fuzzy, c-format
+#| msgid ""
+#| "Error serializing GVariant with type string '%s' to the D-Bus wire format"
msgid ""
-"Error serializing GVariant with type string '%s' to the D-Bus wire format"
+"Error serializing GVariant with type string “%s” to the D-Bus wire format"
msgstr ""
"Napaka pri združevanju GVariant v zaporedje z vrsto niza '%s' v D-Bus žično "
"obliko"
-#: ../gio/gdbusmessage.c:2652
+#: ../gio/gdbusmessage.c:2654
#, c-format
msgid ""
"Message has %d file descriptors but the header field indicates %d file "
"descriptors"
msgstr "Sporočilo ima %d opisnikov datoteke, polje glave pa jih določa %d"
-#: ../gio/gdbusmessage.c:2660
+#: ../gio/gdbusmessage.c:2662
msgid "Cannot serialize message: "
msgstr "Sporočila ni bilo mogoče združiti v zaporedje:"
-#: ../gio/gdbusmessage.c:2704
-#, c-format
-msgid "Message body has signature '%s' but there is no signature header"
+#: ../gio/gdbusmessage.c:2706
+#, fuzzy, c-format
+#| msgid "Message body has signature '%s' but there is no signature header"
+msgid "Message body has signature “%s” but there is no signature header"
msgstr "Telo sporočila ima podpis '%s', vendar v glavi ni podpisa"
-#: ../gio/gdbusmessage.c:2714
-#, c-format
+#: ../gio/gdbusmessage.c:2716
+#, fuzzy, c-format
+#| msgid ""
+#| "Message body has type signature '%s' but signature in the header field is "
+#| "'%s'"
msgid ""
-"Message body has type signature '%s' but signature in the header field is "
-"'%s'"
+"Message body has type signature “%s” but signature in the header field is "
+"“%s”"
msgstr ""
"Telo sporočila ima podpis vrste '%s', vendar je podpis v polju glave '%s' "
-#: ../gio/gdbusmessage.c:2730
-#, c-format
-msgid "Message body is empty but signature in the header field is '(%s)'"
+#: ../gio/gdbusmessage.c:2732
+#, fuzzy, c-format
+#| msgid "Message body is empty but signature in the header field is '(%s)'"
+msgid "Message body is empty but signature in the header field is “(%s)”"
msgstr "Telo sporočila je prazno, vendar je v polju glave podpis '(%s)'"
-#: ../gio/gdbusmessage.c:3283
-#, c-format
-msgid "Error return with body of type '%s'"
+#: ../gio/gdbusmessage.c:3285
+#, fuzzy, c-format
+#| msgid "Error return with body of type '%s'"
+msgid "Error return with body of type “%s”"
msgstr "Napaka vrnjena s telesom vrste '%s'"
-#: ../gio/gdbusmessage.c:3291
+#: ../gio/gdbusmessage.c:3293
msgid "Error return with empty body"
msgstr "Napaka vrnjena s praznim telesom"
-#: ../gio/gdbusprivate.c:2036
+#: ../gio/gdbusprivate.c:2066
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Ni mogoče pridobiti strojnega profila: %s"
-#: ../gio/gdbusprivate.c:2081
+#: ../gio/gdbusprivate.c:2111
msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
msgstr "Ni mogoče naložiti /var/lib/dbus/machine-id oziroma /etc/machine-id: "
-#: ../gio/gdbusproxy.c:1610
+#: ../gio/gdbusproxy.c:1611
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Napaka med klicanjem predmeta StartServiceByName za %s: "
-#: ../gio/gdbusproxy.c:1633
+#: ../gio/gdbusproxy.c:1634
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Nepričakovan odgovor %d iz načina StartServiceByName(\"%s\")"
-#: ../gio/gdbusproxy.c:2709 ../gio/gdbusproxy.c:2843
+#: ../gio/gdbusproxy.c:2719 ../gio/gdbusproxy.c:2853
msgid ""
"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"
msgid "Cannot specify nonce file when creating a server"
msgstr "Med ustvarjanjem strežnika ni mogoče določiti enkratne datoteke"
-#: ../gio/gdbusserver.c:873
-#, c-format
-msgid "Error writing nonce file at '%s': %s"
+#: ../gio/gdbusserver.c:876
+#, fuzzy, c-format
+#| msgid "Error writing nonce file at '%s': %s"
+msgid "Error writing nonce file at “%s”: %s"
msgstr "Napaka med zapisovanjem enkratne datoteke na '%s': %s"
-#: ../gio/gdbusserver.c:1044
-#, c-format
-msgid "The string '%s' is not a valid D-Bus GUID"
+#: ../gio/gdbusserver.c:1047
+#, fuzzy, c-format
+#| msgid "The string '%s' is not a valid D-Bus GUID"
+msgid "The string “%s” is not a valid D-Bus GUID"
msgstr "Niz '%s' ni veljaven D-Bus GUID"
-#: ../gio/gdbusserver.c:1084
-#, c-format
-msgid "Cannot listen on unsupported transport '%s'"
+#: ../gio/gdbusserver.c:1087
+#, fuzzy, c-format
+#| msgid "Cannot listen on unsupported transport '%s'"
+msgid "Cannot listen on unsupported transport “%s”"
msgstr "Na nepodprtem načinu prenosa '%s' ni mogoče poslušati"
#: ../gio/gdbus-tool.c:95
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "Commands:\n"
+#| " help Shows this information\n"
+#| " introspect Introspect a remote object\n"
+#| " monitor Monitor a remote object\n"
+#| " call Invoke a method on a remote object\n"
+#| " emit Emit a signal\n"
+#| "\n"
+#| "Use \"%s COMMAND --help\" to get help on each command.\n"
msgid ""
"Commands:\n"
" help Shows this information\n"
" monitor Monitor a remote object\n"
" call Invoke a method on a remote object\n"
" emit Emit a signal\n"
+" wait Wait for a bus name to appear\n"
"\n"
-"Use \"%s COMMAND --help\" to get help on each command.\n"
+"Use “%s COMMAND --help” to get help on each command.\n"
msgstr ""
"Ukazi:\n"
" help Prikaže te podrobnosti\n"
"\n"
"Uporabite \"%s COMMAND --help\" za pomoč o posameznem ukazu.\n"
-#: ../gio/gdbus-tool.c:164 ../gio/gdbus-tool.c:226 ../gio/gdbus-tool.c:298
-#: ../gio/gdbus-tool.c:322 ../gio/gdbus-tool.c:711 ../gio/gdbus-tool.c:1043
-#: ../gio/gdbus-tool.c:1477
+#: ../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
#, c-format
msgid "Error: %s\n"
msgstr "Napaka: %s\n"
-#: ../gio/gdbus-tool.c:175 ../gio/gdbus-tool.c:239 ../gio/gdbus-tool.c:1493
+#: ../gio/gdbus-tool.c:176 ../gio/gdbus-tool.c:240 ../gio/gdbus-tool.c:1526
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Napaka med samopreverjanjem XML: %s\n"
-#: ../gio/gdbus-tool.c:208
+#: ../gio/gdbus-tool.c:209
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Napaka: %s ni veljavno ime\n"
-#: ../gio/gdbus-tool.c:356
+#: ../gio/gdbus-tool.c:357
msgid "Connect to the system bus"
msgstr "Poveži s sistemskim vodilom"
-#: ../gio/gdbus-tool.c:357
+#: ../gio/gdbus-tool.c:358
msgid "Connect to the session bus"
msgstr "Poveži z vodilom seje"
-#: ../gio/gdbus-tool.c:358
+#: ../gio/gdbus-tool.c:359
msgid "Connect to given D-Bus address"
msgstr "Poveži s podanim naslovom vodila D-Bus"
-#: ../gio/gdbus-tool.c:368
+#: ../gio/gdbus-tool.c:369
msgid "Connection Endpoint Options:"
msgstr "Možnosti končnih točk povezave:"
-#: ../gio/gdbus-tool.c:369
+#: ../gio/gdbus-tool.c:370
msgid "Options specifying the connection endpoint"
msgstr "Možnosti, ki določajo končne točke povezave"
-#: ../gio/gdbus-tool.c:391
+#: ../gio/gdbus-tool.c:392
#, c-format
msgid "No connection endpoint specified"
msgstr "Ni določene končne točke povezave"
-#: ../gio/gdbus-tool.c:401
+#: ../gio/gdbus-tool.c:402
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Določenih je več povezav končne točke"
-#: ../gio/gdbus-tool.c:471
-#, c-format
+#: ../gio/gdbus-tool.c:472
+#, fuzzy, c-format
+#| msgid ""
+#| "Warning: According to introspection data, interface '%s' does not exist\n"
msgid ""
-"Warning: According to introspection data, interface '%s' does not exist\n"
+"Warning: According to introspection data, interface “%s” does not exist\n"
msgstr "Opozorilo: na osnovi podatkov samopregleda, vmesnik '%s' ne obstaja\n"
-#: ../gio/gdbus-tool.c:480
-#, c-format
+#: ../gio/gdbus-tool.c:481
+#, fuzzy, c-format
+#| msgid ""
+#| "Warning: According to introspection data, method '%s' does not exist on "
+#| "interface '%s'\n"
msgid ""
-"Warning: According to introspection data, method '%s' does not exist on "
-"interface '%s'\n"
+"Warning: According to introspection data, method “%s” does not exist on "
+"interface “%s”\n"
msgstr ""
"Opozorilo: na osnovi podatkov samopregleda, način '%s' ne obstaja na "
"vmesniku '%s'\n"
-#: ../gio/gdbus-tool.c:542
+#: ../gio/gdbus-tool.c:543
msgid "Optional destination for signal (unique name)"
msgstr "Izbirni cilj za signal (enoznačno ime)"
-#: ../gio/gdbus-tool.c:543
+#: ../gio/gdbus-tool.c:544
msgid "Object path to emit signal on"
msgstr "Pot predmeta za oddajanje signala"
-#: ../gio/gdbus-tool.c:544
+#: ../gio/gdbus-tool.c:545
msgid "Signal and interface name"
msgstr "Ime signala in vmesnika"
-#: ../gio/gdbus-tool.c:576
+#: ../gio/gdbus-tool.c:579
msgid "Emit a signal."
msgstr "Oddaj signal."
-#: ../gio/gdbus-tool.c:610 ../gio/gdbus-tool.c:842 ../gio/gdbus-tool.c:1583
-#: ../gio/gdbus-tool.c:1818
+#: ../gio/gdbus-tool.c:613 ../gio/gdbus-tool.c:858 ../gio/gdbus-tool.c:1616
+#: ../gio/gdbus-tool.c:1851 ../gio/gdbus-tool.c:2067
#, c-format
msgid "Error connecting: %s\n"
msgstr "Napaka med povezovanjem: %s\n"
-#: ../gio/gdbus-tool.c:622
+#: ../gio/gdbus-tool.c:625
#, c-format
msgid "Error: object path not specified.\n"
msgstr "Napaka: pot predmeta ni določena.\n"
-#: ../gio/gdbus-tool.c:627 ../gio/gdbus-tool.c:909 ../gio/gdbus-tool.c:1648
-#: ../gio/gdbus-tool.c:1884
+#: ../gio/gdbus-tool.c:630 ../gio/gdbus-tool.c:925 ../gio/gdbus-tool.c:1681
+#: ../gio/gdbus-tool.c:1917
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Napaka: %s ni veljavna pot predmeta\n"
-#: ../gio/gdbus-tool.c:633
+#: ../gio/gdbus-tool.c:636
#, c-format
msgid "Error: signal not specified.\n"
msgstr "Napaka: signal ni določen\n"
-#: ../gio/gdbus-tool.c:640
+#: ../gio/gdbus-tool.c:643
#, c-format
msgid "Error: signal must be the fully-qualified name.\n"
msgstr "Napaka: signal mora imeti polno kvalificirano ime.\n"
-#: ../gio/gdbus-tool.c:648
+#: ../gio/gdbus-tool.c:651
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Napaka: %s ni veljavno ime vmesnika.\n"
-#: ../gio/gdbus-tool.c:654
+#: ../gio/gdbus-tool.c:657
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Napaka: %s ni veljavno ime predmeta.\n"
-#: ../gio/gdbus-tool.c:660
+#: ../gio/gdbus-tool.c:663
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Napaka: %s ni veljavno enoznačno ime vodila.\n"
#. Use the original non-"parse-me-harder" error
-#: ../gio/gdbus-tool.c:687 ../gio/gdbus-tool.c:1011
+#: ../gio/gdbus-tool.c:700 ../gio/gdbus-tool.c:1037
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Napaka med razčlenjevanjem parametra %d: %s\n"
-#: ../gio/gdbus-tool.c:718
+#: ../gio/gdbus-tool.c:732
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Napaka med počiščenjem povezave: %s\n"
-#: ../gio/gdbus-tool.c:745
+#: ../gio/gdbus-tool.c:759
msgid "Destination name to invoke method on"
msgstr "Ime cilja za sklicanje načina"
-#: ../gio/gdbus-tool.c:746
+#: ../gio/gdbus-tool.c:760
msgid "Object path to invoke method on"
msgstr "Pot do predmeta za sklicanje načina"
-#: ../gio/gdbus-tool.c:747
+#: ../gio/gdbus-tool.c:761
msgid "Method and interface name"
msgstr "Ime načina in vmesnika"
-#: ../gio/gdbus-tool.c:748
+#: ../gio/gdbus-tool.c:762
msgid "Timeout in seconds"
msgstr "Časovni zamik v sekundah"
-#: ../gio/gdbus-tool.c:787
+#: ../gio/gdbus-tool.c:803
msgid "Invoke a method on a remote object."
msgstr "Skliči način na oddaljenem predmetu."
-#: ../gio/gdbus-tool.c:862 ../gio/gdbus-tool.c:1602 ../gio/gdbus-tool.c:1837
+#: ../gio/gdbus-tool.c:878 ../gio/gdbus-tool.c:1635 ../gio/gdbus-tool.c:1870
#, c-format
msgid "Error: Destination is not specified\n"
msgstr "Napaka: cilj ni določen\n"
-#: ../gio/gdbus-tool.c:874 ../gio/gdbus-tool.c:1619 ../gio/gdbus-tool.c:1849
+#: ../gio/gdbus-tool.c:890 ../gio/gdbus-tool.c:1652 ../gio/gdbus-tool.c:1882
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Napaka: %s ni veljavno ime vodila\n"
-#: ../gio/gdbus-tool.c:889 ../gio/gdbus-tool.c:1628
+#: ../gio/gdbus-tool.c:905 ../gio/gdbus-tool.c:1661
#, c-format
msgid "Error: Object path is not specified\n"
msgstr "Napaka: pot predmeta ni določena\n"
-#: ../gio/gdbus-tool.c:924
+#: ../gio/gdbus-tool.c:940
#, c-format
msgid "Error: Method name is not specified\n"
msgstr "Napaka: ime načina ni določeno\n"
-#: ../gio/gdbus-tool.c:935
-#, c-format
-msgid "Error: Method name '%s' is invalid\n"
+#: ../gio/gdbus-tool.c:951
+#, fuzzy, c-format
+#| msgid "Error: Method name '%s' is invalid\n"
+msgid "Error: Method name “%s” is invalid\n"
msgstr "Napaka: ime načina '%s' ni veljavno\n"
-#: ../gio/gdbus-tool.c:1003
-#, c-format
-msgid "Error parsing parameter %d of type '%s': %s\n"
+#: ../gio/gdbus-tool.c:1029
+#, fuzzy, c-format
+#| msgid "Error parsing parameter %d of type '%s': %s\n"
+msgid "Error parsing parameter %d of type “%s”: %s\n"
msgstr "Napaka med razčlenjevanjem parametra %d vrste '%s': %s\n"
-#: ../gio/gdbus-tool.c:1440
+#: ../gio/gdbus-tool.c:1473
msgid "Destination name to introspect"
msgstr "Samopreverjanje ciljnega imena"
-#: ../gio/gdbus-tool.c:1441
+#: ../gio/gdbus-tool.c:1474
msgid "Object path to introspect"
msgstr "Samopreverjanje poti predmeta"
-#: ../gio/gdbus-tool.c:1442
+#: ../gio/gdbus-tool.c:1475
msgid "Print XML"
msgstr "Natisni XML"
-#: ../gio/gdbus-tool.c:1443
+#: ../gio/gdbus-tool.c:1476
msgid "Introspect children"
msgstr "Samopreverjanje podrejenih predmetov"
-#: ../gio/gdbus-tool.c:1444
+#: ../gio/gdbus-tool.c:1477
msgid "Only print properties"
msgstr "Natisni le lastnosti"
-#: ../gio/gdbus-tool.c:1535
+#: ../gio/gdbus-tool.c:1568
msgid "Introspect a remote object."
msgstr "Samopreverjanje oddaljenega predmeta."
-#: ../gio/gdbus-tool.c:1740
+#: ../gio/gdbus-tool.c:1773
msgid "Destination name to monitor"
msgstr "Nadzor ciljnega imena"
-#: ../gio/gdbus-tool.c:1741
+#: ../gio/gdbus-tool.c:1774
msgid "Object path to monitor"
msgstr "Nadzor poti predmeta"
-#: ../gio/gdbus-tool.c:1770
+#: ../gio/gdbus-tool.c:1803
msgid "Monitor a remote object."
msgstr "Nadzoruj oddaljeni predmet."
-#: ../gio/gdesktopappinfo.c:1993 ../gio/gdesktopappinfo.c:4502
+#: ../gio/gdbus-tool.c:1980
+msgid "Service to activate before waiting for the other one (well-known name)"
+msgstr ""
+
+#: ../gio/gdbus-tool.c:1983
+msgid ""
+"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
+"(default)"
+msgstr ""
+
+#: ../gio/gdbus-tool.c:2031
+msgid "[OPTION…] BUS-NAME"
+msgstr "[MOŽNOST …] IME-VODILA"
+
+#: ../gio/gdbus-tool.c:2033
+msgid "Wait for a bus name to appear."
+msgstr ""
+
+#: ../gio/gdbus-tool.c:2109
+#, fuzzy, c-format
+#| msgid "Error: object path not specified.\n"
+msgid "Error: A service to activate for must be specified.\n"
+msgstr "Napaka: pot predmeta ni določena.\n"
+
+#: ../gio/gdbus-tool.c:2114
+#, fuzzy, c-format
+#| msgid "Error: object path not specified.\n"
+msgid "Error: A service to wait for must be specified.\n"
+msgstr "Napaka: pot predmeta ni določena.\n"
+
+#: ../gio/gdbus-tool.c:2119
+#, fuzzy, c-format
+#| msgid "Too many arguments"
+msgid "Error: Too many arguments.\n"
+msgstr "Navedenih je preveč argumentov"
+
+#: ../gio/gdbus-tool.c:2127 ../gio/gdbus-tool.c:2134
+#, fuzzy, c-format
+#| msgid "Error: %s is not a valid bus name\n"
+msgid "Error: %s is not a valid well-known bus name.\n"
+msgstr "Napaka: %s ni veljavno ime vodila\n"
+
+#: ../gio/gdesktopappinfo.c:2001 ../gio/gdesktopappinfo.c:4533
msgid "Unnamed"
msgstr "Neimenovano"
-#: ../gio/gdesktopappinfo.c:2402
-msgid "Desktop file didn't specify Exec field"
+#: ../gio/gdesktopappinfo.c:2411
+#, fuzzy
+#| msgid "Desktop file didn't specify Exec field"
+msgid "Desktop file didn’t specify Exec field"
msgstr "Namizna datoteka ne vsebuje določenega polja Exec"
-#: ../gio/gdesktopappinfo.c:2687
+#: ../gio/gdesktopappinfo.c:2696
msgid "Unable to find terminal required for application"
msgstr "Ni mogoče najti terminala, ki ga zahteva program"
-#: ../gio/gdesktopappinfo.c:3099
-#, c-format
-msgid "Can't create user application configuration folder %s: %s"
+#: ../gio/gdesktopappinfo.c:3129
+#, fuzzy, c-format
+#| msgid "Can't create user application configuration folder %s: %s"
+msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ni mogoče ustvariti nastavitvene mape uporabnikovega programa %s: %s"
-#: ../gio/gdesktopappinfo.c:3103
-#, c-format
-msgid "Can't create user MIME configuration folder %s: %s"
+#: ../gio/gdesktopappinfo.c:3133
+#, fuzzy, c-format
+#| msgid "Can't create user MIME configuration folder %s: %s"
+msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ni mogoče ustvariti uporabnikove nastavitvene MIME mape %s: %s"
-#: ../gio/gdesktopappinfo.c:3343 ../gio/gdesktopappinfo.c:3367
+#: ../gio/gdesktopappinfo.c:3373 ../gio/gdesktopappinfo.c:3397
msgid "Application information lacks an identifier"
msgstr "Podatki programa so brez določila"
-#: ../gio/gdesktopappinfo.c:3600
-#, c-format
-msgid "Can't create user desktop file %s"
+#: ../gio/gdesktopappinfo.c:3631
+#, fuzzy, c-format
+#| msgid "Can't create user desktop file %s"
+msgid "Can’t create user desktop file %s"
msgstr "Ni mogoče ustvariti uporabnikove datoteke namizja %s"
-#: ../gio/gdesktopappinfo.c:3734
+#: ../gio/gdesktopappinfo.c:3765
#, c-format
msgid "Custom definition for %s"
msgstr "Določilo po meri za %s"
-#: ../gio/gdrive.c:392
-msgid "drive doesn't implement eject"
+#: ../gio/gdrive.c:417
+#, fuzzy
+#| msgid "drive doesn't implement eject"
+msgid "drive doesn’t implement eject"
msgstr "pogona ni mogoče izvreči"
#. Translators: This is an error
#. * message for drive objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gdrive.c:470
-msgid "drive doesn't implement eject or eject_with_operation"
+#: ../gio/gdrive.c:495
+#, fuzzy
+#| msgid "drive doesn't implement eject or eject_with_operation"
+msgid "drive doesn’t implement eject or eject_with_operation"
msgstr "pogon ne vključuje ukaza izvrzi ali izvrzi_z_dejanjem"
-#: ../gio/gdrive.c:546
-msgid "drive doesn't implement polling for media"
+#: ../gio/gdrive.c:571
+#, fuzzy
+#| msgid "drive doesn't implement polling for media"
+msgid "drive doesn’t implement polling for media"
msgstr "pogon ne podpira preverjanja enote"
-#: ../gio/gdrive.c:751
-msgid "drive doesn't implement start"
+#: ../gio/gdrive.c:776
+#, fuzzy
+#| msgid "drive doesn't implement start"
+msgid "drive doesn’t implement start"
msgstr "pogon ne vključuje možnosti zagona"
-#: ../gio/gdrive.c:853
-msgid "drive doesn't implement stop"
+#: ../gio/gdrive.c:878
+#, fuzzy
+#| msgid "drive doesn't implement stop"
+msgid "drive doesn’t implement stop"
msgstr "pogon ne vključuje možnosti zaustavitve"
#: ../gio/gdummytlsbackend.c:195 ../gio/gdummytlsbackend.c:317
msgstr "Podpora za DTLS ni na voljo"
#: ../gio/gemblem.c:323
-#, c-format
-msgid "Can't handle version %d of GEmblem encoding"
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GEmblem encoding"
+msgid "Can’t handle version %d of GEmblem encoding"
msgstr "Ni mogoče upravljati z različico %d kodiranja GEmblem"
#: ../gio/gemblem.c:333
msgstr "Nepravilno oblikovana znakov (%d) v kodiranju GEmblem"
#: ../gio/gemblemedicon.c:362
-#, c-format
-msgid "Can't handle version %d of GEmblemedIcon encoding"
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GEmblemedIcon encoding"
+msgid "Can’t handle version %d of GEmblemedIcon encoding"
msgstr "Ni mogoče upravljati z različico %d kodiranja GEmblemedIcon"
#: ../gio/gemblemedicon.c:372
#: ../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:3604 ../gio/gfile.c:3659
-#: ../gio/gfile.c:3894 ../gio/gfile.c:3936 ../gio/gfile.c:4404
-#: ../gio/gfile.c:4815 ../gio/gfile.c:4900 ../gio/gfile.c:4990
-#: ../gio/gfile.c:5087 ../gio/gfile.c:5174 ../gio/gfile.c:5275
-#: ../gio/gfile.c:7796 ../gio/gfile.c:7886 ../gio/gfile.c:7970
+#: ../gio/gfile.c:1956 ../gio/gfile.c:3614 ../gio/gfile.c:3669
+#: ../gio/gfile.c:3905 ../gio/gfile.c:3947 ../gio/gfile.c:4415
+#: ../gio/gfile.c:4826 ../gio/gfile.c:4911 ../gio/gfile.c:5001
+#: ../gio/gfile.c:5098 ../gio/gfile.c:5185 ../gio/gfile.c:5286
+#: ../gio/gfile.c:7827 ../gio/gfile.c:7917 ../gio/gfile.c:8001
#: ../gio/win32/gwinhttpfile.c:437
msgid "Operation not supported"
msgstr "Opravilo ni podprto"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#. Translators: This is an error message when trying to
-#. * find the enclosing (user visible) mount of a file, but
-#. * none exists.
-#. Translators: This is an error message when trying to find
-#. * the enclosing (user visible) mount of a file, but none
-#. * exists.
-#: ../gio/gfile.c:1468 ../gio/glocalfile.c:1134 ../gio/glocalfile.c:1145
-#: ../gio/glocalfile.c:1158
+#: ../gio/gfile.c:1468
msgid "Containing mount does not exist"
msgstr "Obstoječa enota ne obstaja"
-#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2376
-msgid "Can't copy over directory"
+#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2377
+#, fuzzy
+#| msgid "Can't copy over directory"
+msgid "Can’t copy over directory"
msgstr "Ni mogoče kopirati preko mape"
#: ../gio/gfile.c:2575
-msgid "Can't copy directory over directory"
+#, fuzzy
+#| msgid "Can't copy directory over directory"
+msgid "Can’t copy directory over directory"
msgstr "Ni mogoče kopirati mape preko mape"
-#: ../gio/gfile.c:2583 ../gio/glocalfile.c:2385
+#: ../gio/gfile.c:2583
msgid "Target file exists"
msgstr "Ciljna datoteka obstaja"
#: ../gio/gfile.c:2602
-msgid "Can't recursively copy directory"
+#, fuzzy
+#| msgid "Can't recursively copy directory"
+msgid "Can’t recursively copy directory"
msgstr "Ni mogoče kopirati drevesne zgradbe map"
-#: ../gio/gfile.c:2884
+#: ../gio/gfile.c:2889
msgid "Splice not supported"
msgstr "Splice ni podprt"
-#: ../gio/gfile.c:2888
+#: ../gio/gfile.c:2893
#, c-format
msgid "Error splicing file: %s"
msgstr "Napaka med prepletanjem datoteke: %s"
-#: ../gio/gfile.c:3019
+#: ../gio/gfile.c:3025
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"Kopiranje (sklic povezave/kloniranje) med različnimi priklopi ni podprto"
-#: ../gio/gfile.c:3023
+#: ../gio/gfile.c:3029
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopiranje (sklic povezave/kloniranje) ni podprto ali pa ni veljavno"
-#: ../gio/gfile.c:3028
-msgid "Copy (reflink/clone) is not supported or didn't work"
+#: ../gio/gfile.c:3034
+#, fuzzy
+#| msgid "Copy (reflink/clone) is not supported or didn't work"
+msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiranje (sklic povezave/kloniranje) ni podprto ali pa ni delovalo"
-#: ../gio/gfile.c:3091
-msgid "Can't copy special file"
+#: ../gio/gfile.c:3097
+#, fuzzy
+#| msgid "Can't copy special file"
+msgid "Can’t copy special file"
msgstr "Ni mogoče kopirati posebne datoteke"
-#: ../gio/gfile.c:3884
+#: ../gio/gfile.c:3895
msgid "Invalid symlink value given"
msgstr "Neveljavna vrednost simbolne povezave"
-#: ../gio/gfile.c:4045
+#: ../gio/gfile.c:4056
msgid "Trash not supported"
msgstr "Smeti niso podprte"
-#: ../gio/gfile.c:4157
-#, c-format
-msgid "File names cannot contain '%c'"
+#: ../gio/gfile.c:4168
+#, fuzzy, c-format
+#| msgid "File names cannot contain '%c'"
+msgid "File names cannot contain “%c”"
msgstr "Ni mogoče uporabiti '%c' v imenu datoteke"
-#: ../gio/gfile.c:6586 ../gio/gvolume.c:363
-msgid "volume doesn't implement mount"
+#: ../gio/gfile.c:6614 ../gio/gvolume.c:363
+#, fuzzy
+#| msgid "volume doesn't implement mount"
+msgid "volume doesn’t implement mount"
msgstr "enota ne podpira priklopa"
-#: ../gio/gfile.c:6695
+#: ../gio/gfile.c:6723
msgid "No application is registered as handling this file"
msgstr "Na voljo ni programa z a upravljanje s to datoteko"
msgstr "Številčnik datotek je že zaprt"
#: ../gio/gfileicon.c:236
-#, c-format
-msgid "Can't handle version %d of GFileIcon encoding"
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GFileIcon encoding"
+msgid "Can’t handle version %d of GFileIcon encoding"
msgstr "Ni mogoče upravljati z različico %d kodiranja GFileIcon "
#: ../gio/gfileicon.c:246
#: ../gio/gfileinputstream.c:149 ../gio/gfileinputstream.c:394
#: ../gio/gfileiostream.c:167 ../gio/gfileoutputstream.c:164
#: ../gio/gfileoutputstream.c:497
-msgid "Stream doesn't support query_info"
+#, fuzzy
+#| msgid "Stream doesn't support query_info"
+msgid "Stream doesn’t support query_info"
msgstr "Pretok ne podpira query_info"
#: ../gio/gfileinputstream.c:325 ../gio/gfileiostream.c:379
msgid "Truncate not supported on stream"
msgstr "Razčlenitev ni podprta na pretoku"
-#: ../gio/ghttpproxy.c:136
+#: ../gio/ghttpproxy.c:91 ../gio/gresolver.c:410 ../gio/gresolver.c:476
+#: ../glib/gconvert.c:1650
+msgid "Invalid hostname"
+msgstr "Neveljavno ime gostitelja"
+
+#: ../gio/ghttpproxy.c:143
msgid "Bad HTTP proxy reply"
msgstr "Neustrezen odziv posredniškega strežnika HTTP"
-#: ../gio/ghttpproxy.c:152
+#: ../gio/ghttpproxy.c:159
msgid "HTTP proxy connection not allowed"
msgstr "Overitev s posredniškim strežnikom HTTP ni dovoljena"
-#: ../gio/ghttpproxy.c:157
+#: ../gio/ghttpproxy.c:164
msgid "HTTP proxy authentication failed"
msgstr "Overitev s posredniškim strežnikom HTTP je spodletala"
-#: ../gio/ghttpproxy.c:160
+#: ../gio/ghttpproxy.c:167
msgid "HTTP proxy authentication required"
msgstr "Zahtevana je overitev s posredniškim strežnikom HTTP"
-#: ../gio/ghttpproxy.c:164
+#: ../gio/ghttpproxy.c:171
#, c-format
msgid "HTTP proxy connection failed: %i"
msgstr "Povezava s posredniškim strežnikom HTTP je spodletela: %i"
-#: ../gio/ghttpproxy.c:260
+#: ../gio/ghttpproxy.c:269
msgid "HTTP proxy server closed connection unexpectedly."
msgstr "Povezava s posredniškim strežnikom HTTP je nepričakovano končana."
msgstr "Vrsta %s ne vstavlja from_tokens() vmesnika GIcon"
#: ../gio/gicon.c:461
-msgid "Can't handle the supplied version of the icon encoding"
+#, fuzzy
+#| msgid "Can't handle the supplied version of the icon encoding"
+msgid "Can’t handle the supplied version of the icon encoding"
msgstr "Ni mogoče ravnati z navedeno različico kodiranja ikone"
#: ../gio/ginetaddressmask.c:182
msgstr "Naslov ima določene bite prek dolžine predpone"
#: ../gio/ginetaddressmask.c:300
-#, c-format
-msgid "Could not parse '%s' as IP address mask"
+#, fuzzy, c-format
+#| msgid "Could not parse '%s' as IP address mask"
+msgid "Could not parse “%s” as IP address mask"
msgstr "Ni mogoče razčleniti '%s' kot maske naslova IP"
#: ../gio/ginetsocketaddress.c:203 ../gio/ginetsocketaddress.c:220
-#: ../gio/gnativesocketaddress.c:106 ../gio/gunixsocketaddress.c:216
+#: ../gio/gnativesocketaddress.c:106 ../gio/gunixsocketaddress.c:218
msgid "Not enough space for socket address"
msgstr "Ni dovolj prostora za naslov vtiča"
msgstr "Nepodprti naslov vtiča"
#: ../gio/ginputstream.c:188
-msgid "Input stream doesn't implement read"
+#, fuzzy
+#| msgid "Input stream doesn't implement read"
+msgid "Input stream doesn’t implement read"
msgstr "Vhodni pretok ne podpira branja"
#. Translators: This is an error you get if there is already an
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: ../gio/ginputstream.c:1215 ../gio/giostream.c:310
-#: ../gio/goutputstream.c:1668
+#: ../gio/ginputstream.c:1218 ../gio/giostream.c:310
+#: ../gio/goutputstream.c:1670
msgid "Stream has outstanding operation"
msgstr "Pretok izvaja izredno dejanje"
-#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1491
+#: ../gio/gio-tool.c:160
+msgid "Copy with file"
+msgstr "Kopiraj z datoteko"
+
+#: ../gio/gio-tool.c:164
+msgid "Keep with file when moved"
+msgstr "Ohrani z datoteko ob premikanju"
+
+#: ../gio/gio-tool.c:205
+#, fuzzy
+#| msgid "'version' takes no arguments"
+msgid "“version” takes no arguments"
+msgstr "»različica« ne prevzema argumentov"
+
+#: ../gio/gio-tool.c:207 ../gio/gio-tool.c:223 ../glib/goption.c:857
+msgid "Usage:"
+msgstr "Uporaba:"
+
+#: ../gio/gio-tool.c:210
+msgid "Print version information and exit."
+msgstr "Izpiši podatke o različici in končaj."
+
+#: ../gio/gio-tool.c:224
+msgid "[ARGS...]"
+msgstr "[ARGUMENTI ...]"
+
+#: ../gio/gio-tool.c:226
+msgid "Commands:"
+msgstr "Ukazi:"
+
+#: ../gio/gio-tool.c:229
+msgid "Concatenate files to standard output"
+msgstr "Spoji datoteke in jih izpiši na standardni izhod"
+
+#: ../gio/gio-tool.c:230
+msgid "Copy one or more files"
+msgstr "Kopiraj eno ali več datotek"
+
+#: ../gio/gio-tool.c:231
+msgid "Show information about locations"
+msgstr "Pokaži podatke o mestih"
+
+#: ../gio/gio-tool.c:232
+msgid "List the contents of locations"
+msgstr "Izpiši seznam vsebine mest"
+
+#: ../gio/gio-tool.c:233
+msgid "Get or set the handler for a mimetype"
+msgstr "Pridobi ali določi ročnik za vrsto MIME"
+
+#: ../gio/gio-tool.c:234
+msgid "Create directories"
+msgstr "Ustvarite mape"
+
+#: ../gio/gio-tool.c:235
+msgid "Monitor files and directories for changes"
+msgstr "Spremljaj spremembe datotek in map"
+
+#: ../gio/gio-tool.c:236
+msgid "Mount or unmount the locations"
+msgstr "Priklop oziroma odklop mest"
+
+#: ../gio/gio-tool.c:237
+msgid "Move one or more files"
+msgstr "Premakni eno ali več datotek"
+
+#: ../gio/gio-tool.c:238
+msgid "Open files with the default application"
+msgstr "Odpri datoteke s privzetim programom"
+
+#: ../gio/gio-tool.c:239
+msgid "Rename a file"
+msgstr "Preimenuj datoteko"
+
+#: ../gio/gio-tool.c:240
+msgid "Delete one or more files"
+msgstr "Izbriši eno ali več datotek"
+
+#: ../gio/gio-tool.c:241
+msgid "Read from standard input and save"
+msgstr "Preberi prek standardnega vhoda in shrani"
+
+#: ../gio/gio-tool.c:242
+msgid "Set a file attribute"
+msgstr "Določi atribut datoteke"
+
+#: ../gio/gio-tool.c:243
+msgid "Move files or directories to the trash"
+msgstr "Premakni datoteke in mape v smeti"
+
+#: ../gio/gio-tool.c:244
+msgid "Lists the contents of locations in a tree"
+msgstr "Izpiši vsebino v drevesni obliki"
+
+#: ../gio/gio-tool.c:246
+#, c-format
+msgid "Use %s to get detailed help.\n"
+msgstr "Z ukazom %s se izpiše podrobna pomoč.\n"
+
+#: ../gio/gio-tool-cat.c:83
+#, fuzzy
+#| msgid "Error writing to file: %s"
+msgid "Error writing to stdout"
+msgstr "Napaka med pisanjem v datoteko: %s"
+
+#. Translators: commandline placeholder
+#: ../gio/gio-tool-cat.c:127 ../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: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
+msgid "LOCATION"
+msgstr "MESTO"
+
+#: ../gio/gio-tool-cat.c:132
+msgid "Concatenate files and print to standard output."
+msgstr "Spoji datoteke in jih izpiši na standardni izhod."
+
+#: ../gio/gio-tool-cat.c:134
+msgid ""
+"gio cat works just like the traditional cat utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+"Program gio cat deluje enako kot ukaz cat z razliko, da uporablja\n"
+"oddaljen GIO namesto krajevnih poti do datotek. Primer: kot pot je\n"
+"mogoče uporabiti smb://strežnik/vir/datoteka.txt."
+
+#: ../gio/gio-tool-cat.c:156 ../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 "Ni podanih mest"
+
+#: ../gio/gio-tool-copy.c:42 ../gio/gio-tool-move.c:38
+msgid "No target directory"
+msgstr "Ni ciljne mape"
+
+#: ../gio/gio-tool-copy.c:43 ../gio/gio-tool-move.c:39
+msgid "Show progress"
+msgstr "Pokaži napredek"
+
+#: ../gio/gio-tool-copy.c:44 ../gio/gio-tool-move.c:40
+msgid "Prompt before overwrite"
+msgstr "Opozori pred prepisovanjem"
+
+#: ../gio/gio-tool-copy.c:45
+msgid "Preserve all attributes"
+msgstr "Ohrani vse atribute"
+
+#: ../gio/gio-tool-copy.c:46 ../gio/gio-tool-move.c:41
+#: ../gio/gio-tool-save.c:49
+msgid "Backup existing destination files"
+msgstr "Varnostno kopiraj obstoječe ciljne datoteke"
+
+#: ../gio/gio-tool-copy.c:47
+msgid "Never follow symbolic links"
+msgstr "Nikoli ne sledi simbolnim povezavam"
+
+#: ../gio/gio-tool-copy.c:72 ../gio/gio-tool-move.c:67
+#, c-format
+msgid "Transferred %s out of %s (%s/s)"
+msgstr "Preneseno %s od %s (%s/s)"
+
+#. Translators: commandline placeholder
+#: ../gio/gio-tool-copy.c:98 ../gio/gio-tool-move.c:94
+msgid "SOURCE"
+msgstr "VIR"
+
+#. Translators: commandline placeholder
+#: ../gio/gio-tool-copy.c:98 ../gio/gio-tool-move.c:94
+#: ../gio/gio-tool-save.c:165
+msgid "DESTINATION"
+msgstr "CILJ"
+
+#: ../gio/gio-tool-copy.c:103
+msgid "Copy one or more files from SOURCE to DESTINATION."
+msgstr "Kopiraj eno ali več datotek iz VIRA na CILJ."
+
+#: ../gio/gio-tool-copy.c:105
+msgid ""
+"gio copy is similar to the traditional cp utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+"Program gio copy deluje enako kot ukaz cp z razliko, da uporablja\n"
+"oddaljen GIO namesto krajevnih poti do datotek. Primer: kot pot je\n"
+"mogoče uporabiti smb://strežnik/vir/datoteka.txt."
+
+#: ../gio/gio-tool-copy.c:147
+#, c-format
+msgid "Destination %s is not a directory"
+msgstr "CIljni predmet %s ni mapa"
+
+#: ../gio/gio-tool-copy.c:192 ../gio/gio-tool-move.c:185
+#, fuzzy, c-format
+#| msgid "%s: overwrite '%s'? "
+msgid "%s: overwrite “%s”? "
+msgstr "%s: Ali želite prepisati ‘%s’? "
+
+#: ../gio/gio-tool-info.c:34
+msgid "List writable attributes"
+msgstr "Izpiši zapisljive atribute"
+
+#: ../gio/gio-tool-info.c:35
+msgid "Get file system info"
+msgstr "Pridobi podrobnosti datotečnega sistema"
+
+#: ../gio/gio-tool-info.c:36 ../gio/gio-tool-list.c:35
+msgid "The attributes to get"
+msgstr "Zahtevani atributi"
+
+#: ../gio/gio-tool-info.c:36 ../gio/gio-tool-list.c:35
+msgid "ATTRIBUTES"
+msgstr "ATRIBUTI"
+
+#: ../gio/gio-tool-info.c:37 ../gio/gio-tool-list.c:38 ../gio/gio-tool-set.c:34
+#, fuzzy
+#| msgid "Don't follow symbolic links"
+msgid "Don’t follow symbolic links"
+msgstr "Ne sledi simbolnim povezavam"
+
+#: ../gio/gio-tool-info.c:75
+#, c-format
+msgid "attributes:\n"
+msgstr "atributi:\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: ../gio/gio-tool-info.c:127
+#, c-format
+msgid "display name: %s\n"
+msgstr "prikaži ime: %s\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: ../gio/gio-tool-info.c:132
+#, c-format
+msgid "edit name: %s\n"
+msgstr "uredi ime: %s\n"
+
+#: ../gio/gio-tool-info.c:138
+#, c-format
+msgid "name: %s\n"
+msgstr "ime: %s\n"
+
+#: ../gio/gio-tool-info.c:145
+#, c-format
+msgid "type: %s\n"
+msgstr "vrsta: %s\n"
+
+#: ../gio/gio-tool-info.c:151
+#, c-format
+msgid "size: "
+msgstr "velikost:"
+
+#: ../gio/gio-tool-info.c:156
+#, c-format
+msgid "hidden\n"
+msgstr "skrito\n"
+
+#: ../gio/gio-tool-info.c:159
+#, c-format
+msgid "uri: %s\n"
+msgstr "naslov URI: %s\n"
+
+#: ../gio/gio-tool-info.c:228
+#, c-format
+msgid "Settable attributes:\n"
+msgstr "Nastavljivi atributi:\n"
+
+#: ../gio/gio-tool-info.c:252
+#, c-format
+msgid "Writable attribute namespaces:\n"
+msgstr "Imenski prostor zapisljivih atributov:\n"
+
+#: ../gio/gio-tool-info.c:287
+msgid "Show information about locations."
+msgstr "Pokaže podatke o mestih."
+
+#: ../gio/gio-tool-info.c:289
+#, fuzzy
+#| 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"
+#| "like smb://server/resource/file.txt as location. File attributes can\n"
+#| "be specified with their GIO name, e.g. standard::icon, or just by\n"
+#| "namespace, e.g. unix, or by '*', which matches all attributes"
+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"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon, or just by\n"
+"namespace, e.g. unix, or by “*”, which matches all attributes"
+msgstr ""
+"Program gio info deluje enako kot ukaz ls z razliko, da uporablja\n"
+"oddaljen GIO namesto krajevnih poti do datotek. Primer: kot pot je\n"
+"mogoče uporabiti smb://strežnik/vir/datoteka.txt. Atributi datoteke\n"
+"so lahko navedeni z imeni GIO, na primer standard::ikona, ali pa le z\n"
+"imenskim prostorom, na primer: unix ali z »*«, ki ustreza vsem."
+
+#: ../gio/gio-tool-list.c:36 ../gio/gio-tool-tree.c:32
+msgid "Show hidden files"
+msgstr "Pokaži skrite datoteke"
+
+#: ../gio/gio-tool-list.c:37
+msgid "Use a long listing format"
+msgstr "Uporabi zapis v dolgi obliki"
+
+#: ../gio/gio-tool-list.c:39
+msgid "Print full URIs"
+msgstr "Izpiši celotne naslove URI"
+
+#: ../gio/gio-tool-list.c:170
+msgid "List the contents of the locations."
+msgstr "Izpiši vsebino mest."
+
+#: ../gio/gio-tool-list.c:172
+msgid ""
+"gio list is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon"
+msgstr ""
+"Program gio list deluje enako kot ukaz ls z razliko, da uporablja\n"
+"oddaljen GIO namesto krajevnih poti do datotek. Primer: kot pot je\n"
+"mogoče uporabiti smb://strežnik/vir/datoteka.txt. Atributi datoteke\n"
+"so lahko navedeni z imeni GIO, na primer standard::ikona."
+
+#. Translators: commandline placeholder
+#: ../gio/gio-tool-mime.c:71
+msgid "MIMETYPE"
+msgstr "VRSTA-MIME"
+
+#: ../gio/gio-tool-mime.c:71
+msgid "HANDLER"
+msgstr "ROČNIK"
+
+#: ../gio/gio-tool-mime.c:76
+msgid "Get or set the handler for a mimetype."
+msgstr "Pridobi ali določi ročnik za vrsto MIME."
+
+#: ../gio/gio-tool-mime.c:78
+msgid ""
+"If no handler is given, lists registered and recommended applications\n"
+"for the mimetype. If a handler is given, it is set as the default\n"
+"handler for the mimetype."
+msgstr ""
+"Če ročnik ni podan, se izpiše seznam priporočene programske\n"
+"opreme za vrsto MIME, če pa je podan, je določen kot privzet\n"
+"ročnik za to vrsto MIME."
+
+#: ../gio/gio-tool-mime.c:100
+msgid "Must specify a single mimetype, and maybe a handler"
+msgstr "Določiti je treba eno vrsto MIME in pogojno ročnik"
+
+#: ../gio/gio-tool-mime.c:116
+#, fuzzy, c-format
+#| msgid "No default applications for '%s'\n"
+msgid "No default applications for “%s”\n"
+msgstr "Ni privzetega programa za »%s«\n"
+
+#: ../gio/gio-tool-mime.c:122
+#, fuzzy, c-format
+#| msgid "Default application for '%s': %s\n"
+msgid "Default application for “%s”: %s\n"
+msgstr "Privzet program za »%s«: %s\n"
+
+#: ../gio/gio-tool-mime.c:127
+#, c-format
+msgid "Registered applications:\n"
+msgstr "Vpisani programi:\n"
+
+#: ../gio/gio-tool-mime.c:129
+#, c-format
+msgid "No registered applications\n"
+msgstr "Ni vpisanih programov.\n"
+
+#: ../gio/gio-tool-mime.c:140
+#, c-format
+msgid "Recommended applications:\n"
+msgstr "Priporočeni programi:\n"
+
+#: ../gio/gio-tool-mime.c:142
+#, c-format
+msgid "No recommended applications\n"
+msgstr "Ni priporočenih programov.\n"
+
+#: ../gio/gio-tool-mime.c:162
+#, fuzzy, c-format
+#| msgid "Failed to load info for handler '%s'\n"
+msgid "Failed to load info for handler “%s”"
+msgstr "Nalaganje podrobnosti ročnika »%s« je spodletelo.\n"
+
+#: ../gio/gio-tool-mime.c:168
+#, fuzzy, c-format
+#| msgid "Failed to set '%s' as the default handler for '%s': %s\n"
+msgid "Failed to set “%s” as the default handler for “%s”: %s\n"
+msgstr "Določanje »%s« kot privzet ročnik za »%s« je spodletelo: %s\n"
+
+#: ../gio/gio-tool-mkdir.c:31
+msgid "Create parent directories"
+msgstr "Ustvari nadrejene mape"
+
+#: ../gio/gio-tool-mkdir.c:52
+msgid "Create directories."
+msgstr "Ustvarjanje map"
+
+#: ../gio/gio-tool-mkdir.c:54
+msgid ""
+"gio mkdir is similar to the traditional mkdir utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/mydir as location."
+msgstr ""
+"Program gio mkdir deluje enako kot ukaz mkdir z razliko, da uporablja\n"
+"oddaljen GIO namesto krajevnih poti do datotek. Primer: kot pot je\n"
+"mogoče uporabiti smb://strežnik/vir/mapa."
+
+#: ../gio/gio-tool-monitor.c:37
+msgid "Monitor a directory (default: depends on type)"
+msgstr "Nadzor mape (privzeto: odvisno od vrste)"
+
+#: ../gio/gio-tool-monitor.c:39
+msgid "Monitor a file (default: depends on type)"
+msgstr "Nadzor datoteke (privzeto: odvisno od vrste)"
+
+#: ../gio/gio-tool-monitor.c:41
+msgid "Monitor a file directly (notices changes made via hardlinks)"
+msgstr "Nadzira spremembe datotek (prek trdih povezav)"
+
+#: ../gio/gio-tool-monitor.c:43
+#, fuzzy
+#| msgid "Monitors a file directly, but doesn't report changes"
+msgid "Monitors a file directly, but doesn’t report changes"
+msgstr "Nadzira datoteko, vendar ne shranjuje poročil sprememb"
+
+#: ../gio/gio-tool-monitor.c:45
+msgid "Report moves and renames as simple deleted/created events"
+msgstr ""
+"Zabeleži premikanja in preimenovanja kot enostavne dogodke izbrisano/"
+"ustvarjeno"
+
+#: ../gio/gio-tool-monitor.c:47
+msgid "Watch for mount events"
+msgstr "Spremljaj dogodke priklopne točke"
+
+#: ../gio/gio-tool-monitor.c:208
+msgid "Monitor files or directories for changes."
+msgstr "Spremljaj spremembe map in datotek."
+
+#: ../gio/gio-tool-mount.c:58
+msgid "Mount as mountable"
+msgstr "priklopi kot priklopno"
+
+#: ../gio/gio-tool-mount.c:59
+msgid "Mount volume with device file"
+msgstr "Priklopi nosilec z datoteko naprave"
+
+#: ../gio/gio-tool-mount.c:59
+msgid "DEVICE"
+msgstr "NAPRAVA"
+
+#: ../gio/gio-tool-mount.c:60
+msgid "Unmount"
+msgstr "Odklopi"
+
+#: ../gio/gio-tool-mount.c:61
+msgid "Eject"
+msgstr "Izvrzi"
+
+#: ../gio/gio-tool-mount.c:62
+msgid "Unmount all mounts with the given scheme"
+msgstr "Odklopi vse priklope s podano shemo"
+
+#: ../gio/gio-tool-mount.c:62
+msgid "SCHEME"
+msgstr "SHEMA"
+
+#: ../gio/gio-tool-mount.c:63
+msgid "Ignore outstanding file operations when unmounting or ejecting"
+msgstr ""
+"Prezri opravila datotek med odklapljanjem oziroma izmetavanjem priklopa"
+
+#: ../gio/gio-tool-mount.c:64
+msgid "Use an anonymous user when authenticating"
+msgstr "Uporabni brezimne podatke za overjanje"
+
+#. Translator: List here is a verb as in 'List all mounts'
+#: ../gio/gio-tool-mount.c:66
+msgid "List"
+msgstr "Seznam"
+
+#: ../gio/gio-tool-mount.c:67
+msgid "Monitor events"
+msgstr "Nadzor dogodkov"
+
+#: ../gio/gio-tool-mount.c:68
+msgid "Show extra information"
+msgstr "Pokaži dodatne podrobnosti"
+
+#: ../gio/gio-tool-mount.c:246 ../gio/gio-tool-mount.c:276
+#, fuzzy
+#| msgid "Error mounting location: Anonymous access denied\n"
+msgid "Anonymous access denied"
+msgstr "Napaka med priklapljanjem: brezimni dostop ni dovoljen.\n"
+
+#: ../gio/gio-tool-mount.c:897
+#, c-format
+msgid "Mounted %s at %s\n"
+msgstr "Priklopljen %s na %s\n"
+
+#: ../gio/gio-tool-mount.c:950
+#, fuzzy
+#| msgid "No volume for device file %s\n"
+msgid "No volume for device file"
+msgstr "Ni pogona za datoteko naprave %s\n"
+
+#: ../gio/gio-tool-mount.c:1145
+msgid "Mount or unmount the locations."
+msgstr "Priklop oziroma odklop različnih nosilcev"
+
+#: ../gio/gio-tool-move.c:42
+#, fuzzy
+#| msgid "Don't use copy and delete fallback"
+msgid "Don’t use copy and delete fallback"
+msgstr "Ne ustvari kopije in izbriši povrnitvene datoteke"
+
+#: ../gio/gio-tool-move.c:99
+msgid "Move one or more files from SOURCE to DEST."
+msgstr "Premakni datoteke iz VIRA na CILJ."
+
+#: ../gio/gio-tool-move.c:101
+msgid ""
+"gio move is similar to the traditional mv utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location"
+msgstr ""
+"Program gio move deluje enako kot ukaz mv z razliko, da uporablja\n"
+"oddaljen GIO namesto krajevnih poti do datotek. Primer: kot pot je\n"
+"mogoče uporabiti smb://strežnik/vir/datoteka.txt."
+
+#: ../gio/gio-tool-move.c:142
+#, c-format
+msgid "Target %s is not a directory"
+msgstr "Cilj %s ni mapa"
+
+#: ../gio/gio-tool-open.c:50
+msgid ""
+"Open files with the default application that\n"
+"is registered to handle files of this type."
+msgstr ""
+"Odpre datoteke s privzetim programom, ki\n"
+"je nastavljen za odpiranje te vrste datotek."
+
+#: ../gio/gio-tool-remove.c:31 ../gio/gio-tool-trash.c:31
+msgid "Ignore nonexistent files, never prompt"
+msgstr "Prezri neobstoječe datoteke in ne opozarjaj"
+
+#: ../gio/gio-tool-remove.c:52
+msgid "Delete the given files."
+msgstr "Izbriši podane datoteke."
+
+#: ../gio/gio-tool-rename.c:45
+msgid "NAME"
+msgstr "IME"
+
+#: ../gio/gio-tool-rename.c:50
+msgid "Rename a file."
+msgstr "Preimenovanje datoteke"
+
+#: ../gio/gio-tool-rename.c:70
+msgid "Missing argument"
+msgstr "Manjka argument"
+
+#: ../gio/gio-tool-rename.c:76 ../gio/gio-tool-save.c:195
+#: ../gio/gio-tool-set.c:137
+msgid "Too many arguments"
+msgstr "Navedenih je preveč argumentov"
+
+#: ../gio/gio-tool-rename.c:95
+#, c-format
+msgid "Rename successful. New uri: %s\n"
+msgstr "Preimenovanje je bilo uspešno. Nov naslov URI: %s\n"
+
+#: ../gio/gio-tool-save.c:50
+msgid "Only create if not existing"
+msgstr "Ustvari le, če ne obstaja"
+
+#: ../gio/gio-tool-save.c:51
+msgid "Append to end of file"
+msgstr "Pripni na konec datoteke"
+
+#: ../gio/gio-tool-save.c:52
+msgid "When creating, restrict access to the current user"
+msgstr "Med ustvarjanjem omeji dostop trenutnemu uporabniku"
+
+#: ../gio/gio-tool-save.c:53
+msgid "When replacing, replace as if the destination did not exist"
+msgstr "Med zamenjavo zamenjaj ciljno mesto, kot da to še ne obstaja."
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: ../gio/gio-tool-save.c:55
+msgid "Print new etag at end"
+msgstr "Natisni novo oznako etag na koncu"
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: ../gio/gio-tool-save.c:57
+msgid "The etag of the file being overwritten"
+msgstr "Oznaka Etag datoteke, ki bo prepisana"
+
+#: ../gio/gio-tool-save.c:57
+msgid "ETAG"
+msgstr "ETAG"
+
+#: ../gio/gio-tool-save.c:119
+#, fuzzy
+#| msgid "Error reading from handle: %s"
+msgid "Error reading from standard input"
+msgstr "Napaka branja iz ročnika: %s"
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: ../gio/gio-tool-save.c:145
+#, c-format
+msgid "Etag not available\n"
+msgstr "Oznaka Etag ni na voljo\n"
+
+#: ../gio/gio-tool-save.c:168
+msgid "Read from standard input and save to DEST."
+msgstr "Preberi preko standardnega vhoda in shrani na CILJ."
+
+#: ../gio/gio-tool-save.c:188
+msgid "No destination given"
+msgstr "Ni podanega cilja"
+
+#: ../gio/gio-tool-set.c:33
+msgid "Type of the attribute"
+msgstr "Vrsta atributa"
+
+#: ../gio/gio-tool-set.c:33
+msgid "TYPE"
+msgstr "VRSTA"
+
+#: ../gio/gio-tool-set.c:89
+msgid "ATTRIBUTE"
+msgstr "ATRIBUT"
+
+#: ../gio/gio-tool-set.c:89
+msgid "VALUE"
+msgstr "VREDNOST"
+
+#: ../gio/gio-tool-set.c:93
+msgid "Set a file attribute of LOCATION."
+msgstr "Določitev atributa MESTA za datoteko"
+
+#: ../gio/gio-tool-set.c:113
+msgid "Location not specified"
+msgstr "Mesto ni določeno"
+
+#: ../gio/gio-tool-set.c:120
+msgid "Attribute not specified"
+msgstr "Atribut ni določen"
+
+#: ../gio/gio-tool-set.c:130
+msgid "Value not specified"
+msgstr "Vrednost ni določena"
+
+#: ../gio/gio-tool-set.c:180
+#, fuzzy, c-format
+#| msgid "Invalid attribute type %s\n"
+msgid "Invalid attribute type “%s”"
+msgstr "Neveljavna vrsta atributa %s\n"
+
+#: ../gio/gio-tool-trash.c:32
+msgid "Empty the trash"
+msgstr "Izprazni smeti"
+
+#: ../gio/gio-tool-trash.c:86
+msgid "Move files or directories to the trash."
+msgstr "Premakni datoteke in mape v smeti"
+
+#: ../gio/gio-tool-tree.c:33
+msgid "Follow symbolic links, mounts and shortcuts"
+msgstr "Sledi simbolnim povezavam, priklopom in bližnjicam map"
+
+#: ../gio/gio-tool-tree.c:244
+msgid "List contents of directories in a tree-like format."
+msgstr "Izpiši seznam vsebine map v drevesni obliki."
+
+#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1501
#, c-format
msgid "Element <%s> not allowed inside <%s>"
msgstr "Predmet <%s> ni dovoljen znotraj predmeta <%s>"
msgid "Element <%s> not allowed at toplevel"
msgstr "Predmet <%s> ni dovoljen na vrhnji ravni"
-#: ../gio/glib-compile-resources.c:236
+#: ../gio/glib-compile-resources.c:237
#, c-format
msgid "File %s appears multiple times in the resource"
msgstr "Datoteka %s se v viru pojavi večkrat"
-#: ../gio/glib-compile-resources.c:249
-#, c-format
-msgid "Failed to locate '%s' in any source directory"
+#: ../gio/glib-compile-resources.c:248
+#, fuzzy, c-format
+#| msgid "Failed to locate '%s' in any source directory"
+msgid "Failed to locate “%s” in any source directory"
msgstr "'%s' ni mogoče najti v nobeni mapi virov"
-#: ../gio/glib-compile-resources.c:260
-#, c-format
-msgid "Failed to locate '%s' in current directory"
+#: ../gio/glib-compile-resources.c:259
+#, fuzzy, c-format
+#| msgid "Failed to locate '%s' in current directory"
+msgid "Failed to locate “%s” in current directory"
msgstr "'%s' ni mogoče najti v trenutni mapi"
-#: ../gio/glib-compile-resources.c:288
-#, c-format
-msgid "Unknown processing option \"%s\""
+#: ../gio/glib-compile-resources.c:290
+#, fuzzy, c-format
+#| msgid "Unknown processing option \"%s\""
+msgid "Unknown processing option “%s”"
msgstr "Neznana možnost obdelovanja \"%s\""
-#: ../gio/glib-compile-resources.c:306 ../gio/glib-compile-resources.c:352
+#: ../gio/glib-compile-resources.c:308 ../gio/glib-compile-resources.c:354
#, c-format
msgid "Failed to create temp file: %s"
msgstr "Ustvarjanje začasne datoteke je spodletelo: %s"
-#: ../gio/glib-compile-resources.c:380
+#: ../gio/glib-compile-resources.c:382
#, c-format
msgid "Error reading file %s: %s"
msgstr "Napaka med branjem datoteke %s: %s"
-#: ../gio/glib-compile-resources.c:400
+#: ../gio/glib-compile-resources.c:402
+#, c-format
+msgid "Error compressing file %s"
+msgstr "Napaka med stiskanjem datoteke %s"
+
+#: ../gio/glib-compile-resources.c:469
+#, c-format
+msgid "text may not appear inside <%s>"
+msgstr "besedilo se ne sme pojaviti znotraj <%s>"
+
+#: ../gio/glib-compile-resources.c:664 ../gio/glib-compile-schemas.c:2067
+msgid "Show program version and exit"
+msgstr "Izpiši podrobnosti različice in končaj"
+
+#: ../gio/glib-compile-resources.c:665
+msgid "name of the output file"
+msgstr "ime izhodne datoteke"
+
+#: ../gio/glib-compile-resources.c:666
+msgid ""
+"The directories where files are to be read from (default to current "
+"directory)"
+msgstr ""
+"Mape, iz katerih naj bodo brane datoteke (privzeto je to trenutna mapa)"
+
+#: ../gio/glib-compile-resources.c:666 ../gio/glib-compile-schemas.c:2068
+#: ../gio/glib-compile-schemas.c:2096
+msgid "DIRECTORY"
+msgstr "MAPA"
+
+#: ../gio/glib-compile-resources.c:667
+msgid ""
+"Generate output in the format selected for by the target filename extension"
+msgstr "Ustvari odvod v obliki, izbrani s pripono imena ciljne datoteke"
+
+#: ../gio/glib-compile-resources.c:668
+msgid "Generate source header"
+msgstr "Ustvari glavo vira"
+
+#: ../gio/glib-compile-resources.c:669
+msgid "Generate sourcecode used to link in the resource file into your code"
+msgstr "Ustvari izvorno kodo za povezavo datoteke virov z vašo kodo"
+
+#: ../gio/glib-compile-resources.c:670
+msgid "Generate dependency list"
+msgstr "Ustvari seznam odvisnosti."
+
+#: ../gio/glib-compile-resources.c:671
+msgid "name of the dependency file to generate"
+msgstr "ime datoteke odvisnosti za ustvarjanje"
+
+#: ../gio/glib-compile-resources.c:672
+msgid "Include phony targets in the generated dependency file"
+msgstr ""
+
+#: ../gio/glib-compile-resources.c:673
+#, fuzzy
+#| msgid "Don't automatically create and register resource"
+msgid "Don’t automatically create and register resource"
+msgstr "Vira ne ustvari in ne vpiši samodejno"
+
+#: ../gio/glib-compile-resources.c:674
+#, fuzzy
+#| msgid "Don't export functions; declare them G_GNUC_INTERNAL"
+msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
+msgstr "Ne izvozi funkcij; te je treba deklarirati v G_GNUC_INTERNAL"
+
+#: ../gio/glib-compile-resources.c:675
+msgid "C identifier name used for the generated source code"
+msgstr "Določilo imena jezika C za ustvarjanje izvorne kode"
+
+#: ../gio/glib-compile-resources.c:701
+msgid ""
+"Compile a resource specification into a resource file.\n"
+"Resource specification files have the extension .gresource.xml,\n"
+"and the resource file have the extension called .gresource."
+msgstr ""
+"Kodno prevedi določilo vira v datoteko vira.\n"
+"Datoteke določil vira imajo pripone .gresource.xml,\n"
+"datoteke vira pa pripono .gresource."
+
+#: ../gio/glib-compile-resources.c:723
+#, c-format
+msgid "You should give exactly one file name\n"
+msgstr "Podati je treba natanko eno ime datoteke\n"
+
+#: ../gio/glib-compile-schemas.c:95
+#, c-format
+msgid "nick must be a minimum of 2 characters"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:106
+#, fuzzy, c-format
+#| msgid "Invalid symlink value given"
+msgid "Invalid numeric value"
+msgstr "Neveljavna vrednost simbolne povezave"
+
+#: ../gio/glib-compile-schemas.c:114
+#, fuzzy, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "<value nick='%s'/> already specified"
+msgstr "<%s id='%s'> je že določeno"
+
+#: ../gio/glib-compile-schemas.c:122
+#, fuzzy, c-format
+#| msgid "<key name='%s'> already specified"
+msgid "value='%s' already specified"
+msgstr "<key name='%s'> je že določeno"
+
+#: ../gio/glib-compile-schemas.c:136
+#, c-format
+msgid "flags values must have at most 1 bit set"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:161
+#, c-format
+msgid "<%s> must contain at least one <value>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:315
+#, fuzzy, c-format
+#| msgid "No connection endpoint specified"
+msgid "<%s> is not contained in the specified range"
+msgstr "Ni določene končne točke povezave"
+
+#: ../gio/glib-compile-schemas.c:327
+#, c-format
+msgid "<%s> is not a valid member of the specified enumerated type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:333
+#, c-format
+msgid "<%s> contains string not in the specified flags type"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:339
+#, c-format
+msgid "<%s> contains a string not in <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:373
+#, fuzzy
+#| msgid "<key name='%s'> already specified"
+msgid "<range/> already specified for this key"
+msgstr "<key name='%s'> je že določeno"
+
+#: ../gio/glib-compile-schemas.c:391
+#, c-format
+msgid "<range> not allowed for keys of type “%s”"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:408
#, c-format
-msgid "Error compressing file %s"
-msgstr "Napaka med stiskanjem datoteke %s"
+msgid "<range> specified minimum is greater than maximum"
+msgstr ""
-#: ../gio/glib-compile-resources.c:464 ../gio/glib-compile-schemas.c:1603
+#: ../gio/glib-compile-schemas.c:433
#, c-format
-msgid "text may not appear inside <%s>"
-msgstr "besedilo se ne sme pojaviti znotraj <%s>"
+msgid "unsupported l10n category: %s"
+msgstr ""
-#: ../gio/glib-compile-resources.c:589
-msgid "name of the output file"
-msgstr "ime izhodne datoteke"
+#: ../gio/glib-compile-schemas.c:441
+msgid "l10n requested, but no gettext domain given"
+msgstr ""
-#: ../gio/glib-compile-resources.c:590
-msgid ""
-"The directories where files are to be read from (default to current "
-"directory)"
+#: ../gio/glib-compile-schemas.c:453
+msgid "translation context given for value without l10n enabled"
msgstr ""
-"Mape, iz katerih naj bodo brane datoteke (privzeto je to trenutna mapa)"
-#: ../gio/glib-compile-resources.c:590 ../gio/glib-compile-schemas.c:2036
-#: ../gio/glib-compile-schemas.c:2065
-msgid "DIRECTORY"
-msgstr "MAPA"
+#: ../gio/glib-compile-schemas.c:475
+#, fuzzy, c-format
+#| msgid "Failed to set '%s' as the default handler for '%s': %s\n"
+msgid "Failed to parse <default> value of type “%s”: "
+msgstr "Določanje »%s« kot privzet ročnik za »%s« je spodletelo: %s\n"
-#: ../gio/glib-compile-resources.c:591
+#: ../gio/glib-compile-schemas.c:492
msgid ""
-"Generate output in the format selected for by the target filename extension"
-msgstr "Ustvari odvod v obliki, izbrani s pripono imena ciljne datoteke"
+"<choices> cannot be specified for keys tagged as having an enumerated type"
+msgstr ""
-#: ../gio/glib-compile-resources.c:592
-msgid "Generate source header"
-msgstr "Ustvari glavo vira"
+#: ../gio/glib-compile-schemas.c:501
+#, fuzzy
+#| msgid "<child name='%s'> already specified"
+msgid "<choices> already specified for this key"
+msgstr "<child name='%s'> je že določeno"
-#: ../gio/glib-compile-resources.c:593
-msgid "Generate sourcecode used to link in the resource file into your code"
-msgstr "Ustvari izvorno kodo za povezavo datoteke virov z vašo kodo"
+#: ../gio/glib-compile-schemas.c:513
+#, c-format
+msgid "<choices> not allowed for keys of type “%s”"
+msgstr ""
-#: ../gio/glib-compile-resources.c:594
-msgid "Generate dependency list"
-msgstr "Ustvari seznam odvisnosti."
+#: ../gio/glib-compile-schemas.c:529
+#, fuzzy, c-format
+#| msgid "<child name='%s'> already specified"
+msgid "<choice value='%s'/> already given"
+msgstr "<child name='%s'> je že določeno"
-#: ../gio/glib-compile-resources.c:595
-msgid "Don't automatically create and register resource"
-msgstr "Vira ne ustvari in ne vpiši samodejno"
+#: ../gio/glib-compile-schemas.c:544
+#, c-format
+msgid "<choices> must contain at least one <choice>"
+msgstr ""
-#: ../gio/glib-compile-resources.c:596
-msgid "Don't export functions; declare them G_GNUC_INTERNAL"
-msgstr "Ne izvozi funkcij; te je treba deklarirati v G_GNUC_INTERNAL"
+#: ../gio/glib-compile-schemas.c:558
+#, fuzzy
+#| msgid "<child name='%s'> already specified"
+msgid "<aliases> already specified for this key"
+msgstr "<child name='%s'> je že določeno"
-#: ../gio/glib-compile-resources.c:597
-msgid "C identifier name used for the generated source code"
-msgstr "Določilo imena jezika C za ustvarjanje izvorne kode"
+#: ../gio/glib-compile-schemas.c:562
+msgid ""
+"<aliases> can only be specified for keys with enumerated or flags types or "
+"after <choices>"
+msgstr ""
-#: ../gio/glib-compile-resources.c:623
+#: ../gio/glib-compile-schemas.c:581
+#, c-format
msgid ""
-"Compile a resource specification into a resource file.\n"
-"Resource specification files have the extension .gresource.xml,\n"
-"and the resource file have the extension called .gresource."
+"<alias value='%s'/> given when “%s” is already a member of the enumerated "
+"type"
msgstr ""
-"Kodno prevedi določilo vira v datoteko vira.\n"
-"Datoteke določil vira imajo pripone .gresource.xml,\n"
-"datoteke vira pa pripono .gresource."
-#: ../gio/glib-compile-resources.c:639
+#: ../gio/glib-compile-schemas.c:587
#, c-format
-msgid "You should give exactly one file name\n"
-msgstr "Podati je treba natanko eno ime datoteke\n"
+msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
+msgstr ""
-#: ../gio/glib-compile-schemas.c:784
-msgid "empty names are not permitted"
-msgstr "prazna imena niso dovoljena"
+#: ../gio/glib-compile-schemas.c:595
+#, fuzzy, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "<alias value='%s'/> already specified"
+msgstr "<%s id='%s'> je že določeno"
-#: ../gio/glib-compile-schemas.c:794
+#: ../gio/glib-compile-schemas.c:605
#, c-format
-msgid "invalid name '%s': names must begin with a lowercase letter"
-msgstr "neveljavno ime '%s': imena se morajo začeti z malo črko"
+msgid "alias target “%s” is not in enumerated type"
+msgstr ""
-#: ../gio/glib-compile-schemas.c:806
+#: ../gio/glib-compile-schemas.c:606
#, c-format
+msgid "alias target “%s” is not in <choices>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:621
+#, c-format
+msgid "<aliases> must contain at least one <alias>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:786
+#, fuzzy
+#| msgid "empty names are not permitted"
+msgid "Empty names are not permitted"
+msgstr "prazna imena niso dovoljena"
+
+#: ../gio/glib-compile-schemas.c:796
+#, fuzzy, c-format
+#| msgid "invalid name '%s': names must begin with a lowercase letter"
+msgid "Invalid name “%s”: names must begin with a lowercase letter"
+msgstr "neveljavno ime '%s': imena se morajo začeti z malo črko"
+
+#: ../gio/glib-compile-schemas.c:808
+#, fuzzy, c-format
+#| msgid ""
+#| "invalid name '%s': invalid character '%c'; only lowercase letters, "
+#| "numbers and hyphen ('-') are permitted."
msgid ""
-"invalid name '%s': invalid character '%c'; only lowercase letters, numbers "
-"and hyphen ('-') are permitted."
+"Invalid name “%s”: invalid character “%c”; only lowercase letters, numbers "
+"and hyphen (“-”) are permitted"
msgstr ""
"Neveljavno ime '%s': neveljaven znak '%c'; dovoljene so samo male črke, "
"številke in vezaj ('-')."
-#: ../gio/glib-compile-schemas.c:815
-#, c-format
-msgid "invalid name '%s': two successive hyphens ('--') are not permitted."
+#: ../gio/glib-compile-schemas.c:817
+#, fuzzy, c-format
+#| msgid "invalid name '%s': two successive hyphens ('--') are not permitted."
+msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
msgstr "Neveljavno ime '%s': zaporedna vezaja ('--') nista dovoljena."
-#: ../gio/glib-compile-schemas.c:824
-#, c-format
-msgid "invalid name '%s': the last character may not be a hyphen ('-')."
+#: ../gio/glib-compile-schemas.c:826
+#, fuzzy, c-format
+#| msgid "invalid name '%s': the last character may not be a hyphen ('-')."
+msgid "Invalid name “%s”: the last character may not be a hyphen (“-”)"
msgstr "Neveljavno ime '%s': zadnji znak ne sme biti vezaj ('-')."
-#: ../gio/glib-compile-schemas.c:832
-#, c-format
-msgid "invalid name '%s': maximum length is 1024"
+#: ../gio/glib-compile-schemas.c:834
+#, fuzzy, c-format
+#| msgid "invalid name '%s': maximum length is 1024"
+msgid "Invalid name “%s”: maximum length is 1024"
msgstr "neveljavno ime '%s': največja dolžina je 1024"
-#: ../gio/glib-compile-schemas.c:901
+#: ../gio/glib-compile-schemas.c:904
#, c-format
msgid "<child name='%s'> already specified"
msgstr "<child name='%s'> je že določeno"
-#: ../gio/glib-compile-schemas.c:927
-msgid "cannot add keys to a 'list-of' schema"
+#: ../gio/glib-compile-schemas.c:930
+#, fuzzy
+#| msgid "cannot add keys to a 'list-of' schema"
+msgid "Cannot add keys to a “list-of” schema"
msgstr "ključev ni mogoče dodati shemi 'list-of'"
-#: ../gio/glib-compile-schemas.c:938
+#: ../gio/glib-compile-schemas.c:941
#, c-format
msgid "<key name='%s'> already specified"
msgstr "<key name='%s'> je že določeno"
-#: ../gio/glib-compile-schemas.c:956
+#: ../gio/glib-compile-schemas.c:959
#, c-format
msgid ""
"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
"<key name='%s'> sence <key name='%s'> v <schema id='%s'>; za spreminjanje "
"vrednosti uporabite <override>"
-#: ../gio/glib-compile-schemas.c:967
-#, c-format
+#: ../gio/glib-compile-schemas.c:970
+#, fuzzy, c-format
+#| msgid ""
+#| "exactly one of 'type', 'enum' or 'flags' must be specified as an "
+#| "attribute to <key>"
msgid ""
-"exactly one of 'type', 'enum' or 'flags' must be specified as an attribute "
+"Exactly one of “type”, “enum” or “flags” must be specified as an attribute "
"to <key>"
msgstr ""
"natančno eden izmed 'type', 'enum' ali 'flags' mora biti določen kot "
"lastnost <key>"
-#: ../gio/glib-compile-schemas.c:986
+#: ../gio/glib-compile-schemas.c:989
#, c-format
msgid "<%s id='%s'> not (yet) defined."
msgstr "<%s id='%s'> (še) ni določen."
-#: ../gio/glib-compile-schemas.c:1001
-#, c-format
-msgid "invalid GVariant type string '%s'"
+#: ../gio/glib-compile-schemas.c:1004
+#, fuzzy, c-format
+#| msgid "invalid GVariant type string '%s'"
+msgid "Invalid GVariant type string “%s”"
msgstr "Neveljavena vrsta niza GVariant '%s'"
-#: ../gio/glib-compile-schemas.c:1031
-msgid "<override> given but schema isn't extending anything"
+#: ../gio/glib-compile-schemas.c:1034
+#, fuzzy
+#| msgid "<override> given but schema isn't extending anything"
+msgid "<override> given but schema isn’t extending anything"
msgstr "<override> je podan, vendar shema ne razširja ničesar"
-#: ../gio/glib-compile-schemas.c:1044
+#: ../gio/glib-compile-schemas.c:1047
#, c-format
-msgid "no <key name='%s'> to override"
+msgid "No <key name='%s'> to override"
msgstr "<key name='%s'> za prepis ni na voljo"
-#: ../gio/glib-compile-schemas.c:1052
+#: ../gio/glib-compile-schemas.c:1055
#, c-format
msgid "<override name='%s'> already specified"
msgstr "<override name='%s'> je že določeno"
-#: ../gio/glib-compile-schemas.c:1125
+#: ../gio/glib-compile-schemas.c:1128
#, c-format
msgid "<schema id='%s'> already specified"
msgstr "<schema id='%s'> je že določeno"
-#: ../gio/glib-compile-schemas.c:1137
-#, c-format
-msgid "<schema id='%s'> extends not yet existing schema '%s'"
+#: ../gio/glib-compile-schemas.c:1140
+#, fuzzy, c-format
+#| msgid "<schema id='%s'> extends not yet existing schema '%s'"
+msgid "<schema id='%s'> extends not yet existing schema “%s”"
msgstr "<schema id='%s'> razširja še neobstoječo shemo '%s'"
-#: ../gio/glib-compile-schemas.c:1153
-#, c-format
-msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+#: ../gio/glib-compile-schemas.c:1156
+#, fuzzy, c-format
+#| msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+msgid "<schema id='%s'> is list of not yet existing schema “%s”"
msgstr "<schema id='%s'> je seznam še neobstoječe sheme '%s'"
-#: ../gio/glib-compile-schemas.c:1161
-#, c-format
-msgid "Can not be a list of a schema with a path"
+#: ../gio/glib-compile-schemas.c:1164
+#, fuzzy, c-format
+#| msgid "Can not be a list of a schema with a path"
+msgid "Cannot be a list of a schema with a path"
msgstr "Seznam sheme s potjo ni mogoč"
-#: ../gio/glib-compile-schemas.c:1171
-#, c-format
-msgid "Can not extend a schema with a path"
+#: ../gio/glib-compile-schemas.c:1174
+#, fuzzy, c-format
+#| msgid "Can not extend a schema with a path"
+msgid "Cannot extend a schema with a path"
msgstr "Sheme ni mogoče razširiti s potjo"
-#: ../gio/glib-compile-schemas.c:1181
+#: ../gio/glib-compile-schemas.c:1184
#, c-format
msgid ""
"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
msgstr "<schema id='%s'> je seznam, ki razširja <schema id='%s'>, ki ni seznam"
-#: ../gio/glib-compile-schemas.c:1191
-#, c-format
+#: ../gio/glib-compile-schemas.c:1194
+#, fuzzy, c-format
+#| msgid ""
+#| "<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but "
+#| "'%s' does not extend '%s'"
msgid ""
-"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but '%s' "
-"does not extend '%s'"
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s” "
+"does not extend “%s”"
msgstr ""
"<schema id='%s' list-of='%s'> razširja <schema id='%s' list-of='%s'> vendar "
"'%s' ne razširja '%s'"
-#: ../gio/glib-compile-schemas.c:1208
-#, c-format
-msgid "a path, if given, must begin and end with a slash"
+#: ../gio/glib-compile-schemas.c:1211
+#, fuzzy, c-format
+#| msgid "a path, if given, must begin and end with a slash"
+msgid "A path, if given, must begin and end with a slash"
msgstr "pot, če je podana, se mora začeti in končati s poševnico"
-#: ../gio/glib-compile-schemas.c:1215
-#, c-format
-msgid "the path of a list must end with ':/'"
+#: ../gio/glib-compile-schemas.c:1218
+#, fuzzy, c-format
+#| msgid "the path of a list must end with ':/'"
+msgid "The path of a list must end with “:/”"
msgstr "pot seznama se mora končati z ':/'"
-#: ../gio/glib-compile-schemas.c:1247
+#: ../gio/glib-compile-schemas.c:1227
+#, c-format
+msgid ""
+"Warning: Schema “%s” has path “%s”. Paths starting with “/apps/”, “/"
+"desktop/” or “/system/” are deprecated."
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:1257
#, c-format
msgid "<%s id='%s'> already specified"
msgstr "<%s id='%s'> je že določeno"
-#: ../gio/glib-compile-schemas.c:1397 ../gio/glib-compile-schemas.c:1413
+#: ../gio/glib-compile-schemas.c:1407 ../gio/glib-compile-schemas.c:1423
#, c-format
msgid "Only one <%s> element allowed inside <%s>"
msgstr "Le en predmet <%s> je lahko znotraj predmeta <%s>"
-#: ../gio/glib-compile-schemas.c:1495
+#: ../gio/glib-compile-schemas.c:1505
#, c-format
msgid "Element <%s> not allowed at the top level"
msgstr "Predmet <%s> na vrhnji ravni ni dovoljen"
+#: ../gio/glib-compile-schemas.c:1523
+msgid "Element <default> is required in <key>"
+msgstr ""
+
+#: ../gio/glib-compile-schemas.c:1613
+#, c-format
+msgid "Text may not appear inside <%s>"
+msgstr "Besedilo se ne sme pojaviti znotraj <%s>"
+
+#: ../gio/glib-compile-schemas.c:1681
+#, c-format
+msgid "Warning: undefined reference to <schema id='%s'/>"
+msgstr ""
+
#. Translators: Do not translate "--strict".
-#: ../gio/glib-compile-schemas.c:1794 ../gio/glib-compile-schemas.c:1865
-#: ../gio/glib-compile-schemas.c:1941
+#: ../gio/glib-compile-schemas.c:1820 ../gio/glib-compile-schemas.c:1894
+#: ../gio/glib-compile-schemas.c:1970
#, c-format
msgid "--strict was specified; exiting.\n"
msgstr "--strict je določen, končanje.\n"
-#: ../gio/glib-compile-schemas.c:1802
+#: ../gio/glib-compile-schemas.c:1830
#, c-format
msgid "This entire file has been ignored.\n"
msgstr "Celotna datoteka je prezrta.\n"
-#: ../gio/glib-compile-schemas.c:1861
+#: ../gio/glib-compile-schemas.c:1890
#, c-format
msgid "Ignoring this file.\n"
msgstr "Datoteka je prezrta.\n"
-#: ../gio/glib-compile-schemas.c:1901
+#: ../gio/glib-compile-schemas.c:1930
#, c-format
msgid "No such key '%s' in schema '%s' as specified in override file '%s'"
msgstr ""
"Ključ '%s' v shemi '%s' kot je določen v datoteki prepisa '%s' ne obstaja"
-#: ../gio/glib-compile-schemas.c:1907 ../gio/glib-compile-schemas.c:1965
-#: ../gio/glib-compile-schemas.c:1993
+#: ../gio/glib-compile-schemas.c:1936 ../gio/glib-compile-schemas.c:1994
+#: ../gio/glib-compile-schemas.c:2022
#, c-format
msgid "; ignoring override for this key.\n"
msgstr "; prepis za ta ključ je prezrt.\n"
-#: ../gio/glib-compile-schemas.c:1911 ../gio/glib-compile-schemas.c:1969
-#: ../gio/glib-compile-schemas.c:1997
+#: ../gio/glib-compile-schemas.c:1940 ../gio/glib-compile-schemas.c:1998
+#: ../gio/glib-compile-schemas.c:2026
#, c-format
msgid " and --strict was specified; exiting.\n"
msgstr " in --strict sta določena, končanje.\n"
-#: ../gio/glib-compile-schemas.c:1927
+#: ../gio/glib-compile-schemas.c:1956
#, c-format
msgid ""
"error parsing key '%s' in schema '%s' as specified in override file '%s': %s."
"napaka razčlenjevanja ključa '%s' v shemi '%s' kot je določen v datoteki "
"prepisa '%s': %s. "
-#: ../gio/glib-compile-schemas.c:1937
+#: ../gio/glib-compile-schemas.c:1966
#, c-format
msgid "Ignoring override for this key.\n"
msgstr "Prepis za ta ključ je prezrt.\n"
-#: ../gio/glib-compile-schemas.c:1955
+#: ../gio/glib-compile-schemas.c:1984
#, c-format
msgid ""
"override for key '%s' in schema '%s' in override file '%s' is outside the "
"prepis za ključ '%s' v shemi '%s' v datoteki prepisa '%s' ni v obsegu, "
"podanem v shemi"
-#: ../gio/glib-compile-schemas.c:1983
+#: ../gio/glib-compile-schemas.c:2012
#, c-format
msgid ""
"override for key '%s' in schema '%s' in override file '%s' is not in the "
"prepis za ključ '%s' v shemi '%s' v datoteki prepisa '%s' ni v seznamu "
"veljavnih možnosti"
-#: ../gio/glib-compile-schemas.c:2036
+#: ../gio/glib-compile-schemas.c:2068
msgid "where to store the gschemas.compiled file"
msgstr "kje naj se shrani datoteka gschemas.compiled"
-#: ../gio/glib-compile-schemas.c:2037
+#: ../gio/glib-compile-schemas.c:2069
msgid "Abort on any errors in schemas"
msgstr "Prekini ob vsakršnji napaki v shemi"
-#: ../gio/glib-compile-schemas.c:2038
+#: ../gio/glib-compile-schemas.c:2070
msgid "Do not write the gschema.compiled file"
msgstr "Ne zapiši datoteke gschema.compiled"
-#: ../gio/glib-compile-schemas.c:2039
+#: ../gio/glib-compile-schemas.c:2071
msgid "Do not enforce key name restrictions"
msgstr "Ne vsili omejitev imena ključa"
-#: ../gio/glib-compile-schemas.c:2068
+#: ../gio/glib-compile-schemas.c:2099
msgid ""
"Compile all GSettings schema files into a schema cache.\n"
"Schema files are required to have the extension .gschema.xml,\n"
"sheme. Datoteke shem morajo imeti pripono .gschema.xml,\n"
"datoteka predpomnilnika pa se imenuje gschemas.compiled."
-#: ../gio/glib-compile-schemas.c:2084
+#: ../gio/glib-compile-schemas.c:2120
#, c-format
msgid "You should give exactly one directory name\n"
msgstr "Podati je treba natanko eno ime mape\n"
-#: ../gio/glib-compile-schemas.c:2123
+#: ../gio/glib-compile-schemas.c:2162
#, c-format
msgid "No schema files found: "
msgstr "Datotek sheme ni mogoče najti:"
-#: ../gio/glib-compile-schemas.c:2126
+#: ../gio/glib-compile-schemas.c:2165
#, c-format
msgid "doing nothing.\n"
msgstr "je brez dela.\n"
-#: ../gio/glib-compile-schemas.c:2129
+#: ../gio/glib-compile-schemas.c:2168
#, c-format
msgid "removed existing output file.\n"
msgstr "odstranjena obstoječa odvodna datoteka.\n"
-#: ../gio/glocalfile.c:635 ../gio/win32/gwinhttpfile.c:420
+#: ../gio/glocalfile.c:643 ../gio/win32/gwinhttpfile.c:420
#, c-format
msgid "Invalid filename %s"
msgstr "Neveljavno ime datoteke %s"
-#: ../gio/glocalfile.c:1012
+#: ../gio/glocalfile.c:1037
+#, c-format
+msgid "Error getting filesystem info for %s: %s"
+msgstr "Napaka med pridobivanjem podrobnosti datotečnega sistema za %s: %s"
+
+#. Translators: This is an error message when trying to find
+#. * the enclosing (user visible) mount of a file, but none
+#. * exists.
+#.
+#: ../gio/glocalfile.c:1176
#, c-format
-msgid "Error getting filesystem info: %s"
-msgstr "Napaka med branjem podrobnosti datotečnega sistema: %s"
+msgid "Containing mount for file %s not found"
+msgstr "Priklopne točke datoteke %s ni mogoče najti"
-#: ../gio/glocalfile.c:1180
-msgid "Can't rename root directory"
-msgstr "Ni mogoče preimenovati skrbniške mape"
+#: ../gio/glocalfile.c:1199
+msgid "Can’t rename root directory"
+msgstr "Ni mogoče preimenovati korenske mape"
-#: ../gio/glocalfile.c:1200 ../gio/glocalfile.c:1226
+#: ../gio/glocalfile.c:1217 ../gio/glocalfile.c:1240
#, c-format
-msgid "Error renaming file: %s"
-msgstr "Napaka med preimenovanjem datoteke: %s"
+msgid "Error renaming file %s: %s"
+msgstr "Napaka med preimenovanjem datoteke %s: %s"
-#: ../gio/glocalfile.c:1209
-msgid "Can't rename file, filename already exists"
+#: ../gio/glocalfile.c:1224
+msgid "Can’t rename file, filename already exists"
msgstr "Ni mogoče preimenovati datoteke, izbrano ime že obstaja"
-#: ../gio/glocalfile.c:1222 ../gio/glocalfile.c:2249 ../gio/glocalfile.c:2278
+#: ../gio/glocalfile.c:1237 ../gio/glocalfile.c:2253 ../gio/glocalfile.c:2281
#: ../gio/glocalfile.c:2438 ../gio/glocalfileoutputstream.c:549
msgid "Invalid filename"
msgstr "Neveljavno ime datoteke"
-#: ../gio/glocalfile.c:1389 ../gio/glocalfile.c:1413
-msgid "Can't open directory"
-msgstr "Ni mogoče odpreti mape"
-
-#: ../gio/glocalfile.c:1397
+#: ../gio/glocalfile.c:1404 ../gio/glocalfile.c:1419
#, c-format
-msgid "Error opening file: %s"
-msgstr "Napaka med odpiranjem datoteke: %s"
+msgid "Error opening file %s: %s"
+msgstr "Napaka med odpiranjem datoteke %s: %s"
-#: ../gio/glocalfile.c:1538
+#: ../gio/glocalfile.c:1544
#, c-format
-msgid "Error removing file: %s"
-msgstr "Napaka med odstranjevanjem datoteke: %s"
+msgid "Error removing file %s: %s"
+msgstr "Napaka med odstranjevanjem datoteke %s: %s"
-#: ../gio/glocalfile.c:1922
+#: ../gio/glocalfile.c:1928
#, c-format
-msgid "Error trashing file: %s"
-msgstr "Napaka ob premikanjem datoteke v smeti: %s"
+msgid "Error trashing file %s: %s"
+msgstr "Napaka med premikanjem datoteke %s v smeti: %s"
-#: ../gio/glocalfile.c:1945
+#: ../gio/glocalfile.c:1951
#, c-format
msgid "Unable to create trash dir %s: %s"
msgstr "Ni mogoče ustvariti mape smeti %s: %s"
-#: ../gio/glocalfile.c:1966
-msgid "Unable to find toplevel directory for trash"
-msgstr "Ni mogoče najti vrhnje ravni smeti"
+#: ../gio/glocalfile.c:1971
+#, c-format
+msgid "Unable to find toplevel directory to trash %s"
+msgstr "Ni mogoče najti vrhnje ravni smeti %s"
+
+#: ../gio/glocalfile.c:2050 ../gio/glocalfile.c:2070
+#, c-format
+msgid "Unable to find or create trash directory for %s"
+msgstr "Ni mogoče najti oziroma ustvariti mape smeti za %s"
-#: ../gio/glocalfile.c:2045 ../gio/glocalfile.c:2065
-msgid "Unable to find or create trash directory"
-msgstr "Ni mogoče najti ali ustvariti mape smeti"
+#: ../gio/glocalfile.c:2105
+#, c-format
+msgid "Unable to create trashing info file for %s: %s"
+msgstr "Ni mogoče ustvariti datoteke podrobnosti smeti za %s: %s"
-#: ../gio/glocalfile.c:2099
+#: ../gio/glocalfile.c:2164
#, c-format
-msgid "Unable to create trashing info file: %s"
-msgstr "Ni mogoče ustvariti datoteke podrobnosti: %s"
+msgid "Unable to trash file %s across filesystem boundaries"
+msgstr ""
+"Datoteke %s ni mogoče premakniti v smeti prek različnih datotečnih sistemov"
-#: ../gio/glocalfile.c:2157 ../gio/glocalfile.c:2162 ../gio/glocalfile.c:2219
-#: ../gio/glocalfile.c:2226
+#: ../gio/glocalfile.c:2168 ../gio/glocalfile.c:2224
#, c-format
-msgid "Unable to trash file: %s"
-msgstr "Ni mogoče premakniti datoteke v smeti: %s"
+msgid "Unable to trash file %s: %s"
+msgstr "Datoteke %s ni mogoče premakniti v smeti: %s"
-#: ../gio/glocalfile.c:2227 ../glib/gregex.c:281
-msgid "internal error"
-msgstr "notranja napaka"
+#: ../gio/glocalfile.c:2230
+#, c-format
+msgid "Unable to trash file %s"
+msgstr "Datoteke %s ni mogoče premakniti v smeti"
-#: ../gio/glocalfile.c:2253
+#: ../gio/glocalfile.c:2256
#, c-format
-msgid "Error creating directory: %s"
-msgstr "Napaka med ustvarjanjem mape: %s"
+msgid "Error creating directory %s: %s"
+msgstr "Napaka med ustvarjanjem mape %s: %s"
-#: ../gio/glocalfile.c:2282
+#: ../gio/glocalfile.c:2285
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Datotečni sistem ne podpira simbolnih povezav"
-#: ../gio/glocalfile.c:2286
+#: ../gio/glocalfile.c:2288
#, c-format
-msgid "Error making symbolic link: %s"
-msgstr "Napaka med ustvarjanjem simbolne povezave: %s"
+msgid "Error making symbolic link %s: %s"
+msgstr "Napaka med ustvarjanjem simbolne povezave %s: %s"
+
+#: ../gio/glocalfile.c:2294 ../glib/gfileutils.c:2077
+msgid "Symbolic links not supported"
+msgstr "Simbolne povezave niso podprte"
-#: ../gio/glocalfile.c:2348 ../gio/glocalfile.c:2442
+#: ../gio/glocalfile.c:2349 ../gio/glocalfile.c:2384 ../gio/glocalfile.c:2441
#, c-format
-msgid "Error moving file: %s"
-msgstr "Napaka med premikanjem datoteke: %s"
+msgid "Error moving file %s: %s"
+msgstr "Napaka med premikanjem datoteke %s: %s"
-#: ../gio/glocalfile.c:2371
-msgid "Can't move directory over directory"
+#: ../gio/glocalfile.c:2372
+msgid "Can’t move directory over directory"
msgstr "Ni mogoče premakniti mape čez mapo"
-#: ../gio/glocalfile.c:2398 ../gio/glocalfileoutputstream.c:925
-#: ../gio/glocalfileoutputstream.c:939 ../gio/glocalfileoutputstream.c:954
-#: ../gio/glocalfileoutputstream.c:970 ../gio/glocalfileoutputstream.c:984
+#: ../gio/glocalfile.c:2398 ../gio/glocalfileoutputstream.c:933
+#: ../gio/glocalfileoutputstream.c:947 ../gio/glocalfileoutputstream.c:962
+#: ../gio/glocalfileoutputstream.c:979 ../gio/glocalfileoutputstream.c:993
msgid "Backup file creation failed"
msgstr "Ustvarjanje varnostne kopije je spodletelo."
msgid "Move between mounts not supported"
msgstr "Premikanje med priklopi ni podprto"
-#: ../gio/glocalfile.c:2623
+#: ../gio/glocalfile.c:2622
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Ni mogoče določiti porabe diska %s: %s."
-#: ../gio/glocalfileinfo.c:721
+#: ../gio/glocalfileinfo.c:731
msgid "Attribute value must be non-NULL"
msgstr "Vrednost atributa ni mogoče določiti kot NULL"
-#: ../gio/glocalfileinfo.c:728
+#: ../gio/glocalfileinfo.c:738
msgid "Invalid attribute type (string expected)"
msgstr "Neveljavna vrsta atributa (pričakovan niz)"
-#: ../gio/glocalfileinfo.c:735
+#: ../gio/glocalfileinfo.c:745
msgid "Invalid extended attribute name"
msgstr "Neveljavno razširjeno ime atributa"
-#: ../gio/glocalfileinfo.c:775
-#, c-format
-msgid "Error setting extended attribute '%s': %s"
+#: ../gio/glocalfileinfo.c:785
+#, fuzzy, c-format
+#| msgid "Error setting extended attribute '%s': %s"
+msgid "Error setting extended attribute “%s”: %s"
msgstr "Napaka med določanjem razširjenega atributa '%s': %s"
-#: ../gio/glocalfileinfo.c:1575
+#: ../gio/glocalfileinfo.c:1586
msgid " (invalid encoding)"
msgstr " (neveljavni nabor znakov)"
-#: ../gio/glocalfileinfo.c:1766 ../gio/glocalfileoutputstream.c:803
+#: ../gio/glocalfileinfo.c:1777 ../gio/glocalfileoutputstream.c:811
#, c-format
-msgid "Error when getting information for file '%s': %s"
-msgstr "Napaka med pridobivanjem podatkov za datoteko '%s': %s"
+msgid "Error when getting information for file “%s”: %s"
+msgstr "Napaka med pridobivanjem podatkov za datoteko »%s«: %s"
-#: ../gio/glocalfileinfo.c:2017
+#: ../gio/glocalfileinfo.c:2028
#, c-format
msgid "Error when getting information for file descriptor: %s"
msgstr "Napaka med potrjevanjem opisovalnika datoteke: %s"
-#: ../gio/glocalfileinfo.c:2062
+#: ../gio/glocalfileinfo.c:2073
msgid "Invalid attribute type (uint32 expected)"
msgstr "Neveljavna vrsta atributa (pričakovan uint32)"
-#: ../gio/glocalfileinfo.c:2080
+#: ../gio/glocalfileinfo.c:2091
msgid "Invalid attribute type (uint64 expected)"
msgstr "Neveljavna vrsta atributa (pričakovan uint64)"
-#: ../gio/glocalfileinfo.c:2099 ../gio/glocalfileinfo.c:2118
+#: ../gio/glocalfileinfo.c:2110 ../gio/glocalfileinfo.c:2129
msgid "Invalid attribute type (byte string expected)"
msgstr "Neveljavna vrsta atributa (pričakovan bitni niz)"
-#: ../gio/glocalfileinfo.c:2153
+#: ../gio/glocalfileinfo.c:2164
msgid "Cannot set permissions on symlinks"
msgstr "Ni mogoče določiti dovoljenj simbolnih povezav"
-#: ../gio/glocalfileinfo.c:2169
+#: ../gio/glocalfileinfo.c:2180
#, c-format
msgid "Error setting permissions: %s"
msgstr "Napaka med določanjem dovoljenj: %s"
-#: ../gio/glocalfileinfo.c:2220
+#: ../gio/glocalfileinfo.c:2231
#, c-format
msgid "Error setting owner: %s"
msgstr "Napaka med določanjem lastnika: %s"
-#: ../gio/glocalfileinfo.c:2243
+#: ../gio/glocalfileinfo.c:2254
msgid "symlink must be non-NULL"
msgstr "Simbolna povezava ne sme biti določena kot NULL"
-#: ../gio/glocalfileinfo.c:2253 ../gio/glocalfileinfo.c:2272
-#: ../gio/glocalfileinfo.c:2283
+#: ../gio/glocalfileinfo.c:2264 ../gio/glocalfileinfo.c:2283
+#: ../gio/glocalfileinfo.c:2294
#, c-format
msgid "Error setting symlink: %s"
msgstr "Napaka med določanjem simbolne povezave: %s"
-#: ../gio/glocalfileinfo.c:2262
+#: ../gio/glocalfileinfo.c:2273
msgid "Error setting symlink: file is not a symlink"
msgstr ""
"Napaka med določevanjem simbolne povezave; datoteka ni simbolna povezava"
-#: ../gio/glocalfileinfo.c:2388
+#: ../gio/glocalfileinfo.c:2399
#, c-format
msgid "Error setting modification or access time: %s"
msgstr "Napaka med določanjem sprememb ali časa dostopa: %s"
-#: ../gio/glocalfileinfo.c:2411
+#: ../gio/glocalfileinfo.c:2422
msgid "SELinux context must be non-NULL"
msgstr "SELinux atributa ni mogoče določiti kot NULL"
-#: ../gio/glocalfileinfo.c:2426
+#: ../gio/glocalfileinfo.c:2437
#, c-format
msgid "Error setting SELinux context: %s"
msgstr "Napaka nastavitve vsebine SELinux: %s"
-#: ../gio/glocalfileinfo.c:2433
+#: ../gio/glocalfileinfo.c:2444
msgid "SELinux is not enabled on this system"
msgstr "Na tem sistemu SELinux ni omogočen"
-#: ../gio/glocalfileinfo.c:2525
+#: ../gio/glocalfileinfo.c:2536
#, c-format
msgid "Setting attribute %s not supported"
msgstr "Določanje atributa %s ni podprto"
#: ../gio/glocalfileinputstream.c:199 ../gio/glocalfileinputstream.c:211
#: ../gio/glocalfileinputstream.c:225 ../gio/glocalfileinputstream.c:333
-#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1002
+#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1011
#, c-format
msgid "Error seeking in file: %s"
msgstr "Napaka med iskanjem v datoteki: %s"
msgid "Error renaming temporary file: %s"
msgstr "Napaka med preimenovanjem začasne datoteke: %s"
-#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1053
+#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1062
#, c-format
msgid "Error truncating file: %s"
msgstr "Napaka med obrezovanjem datoteke: %s"
-#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:785
-#: ../gio/glocalfileoutputstream.c:1034 ../gio/gsubprocess.c:360
+#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:793
+#: ../gio/glocalfileoutputstream.c:1043 ../gio/gsubprocess.c:380
#, c-format
-msgid "Error opening file '%s': %s"
-msgstr "Napaka med odpiranjem datoteke '%s': %s"
+msgid "Error opening file “%s”: %s"
+msgstr "Napaka med odpiranjem datoteke »%s«: %s"
-#: ../gio/glocalfileoutputstream.c:816
+#: ../gio/glocalfileoutputstream.c:824
msgid "Target file is a directory"
msgstr "Ciljna datoteka je mapa"
-#: ../gio/glocalfileoutputstream.c:821
+#: ../gio/glocalfileoutputstream.c:829
msgid "Target file is not a regular file"
msgstr "Ciljna datoteka ni običajna datoteka"
-#: ../gio/glocalfileoutputstream.c:833
+#: ../gio/glocalfileoutputstream.c:841
msgid "The file was externally modified"
msgstr "Datoteka je bila zunanje spremenjena"
-#: ../gio/glocalfileoutputstream.c:1018
+#: ../gio/glocalfileoutputstream.c:1027
#, c-format
msgid "Error removing old file: %s"
msgstr "Napaka med odstranjevanjem datoteke: %s"
-#: ../gio/gmemoryinputstream.c:471 ../gio/gmemoryoutputstream.c:771
+#: ../gio/gmemoryinputstream.c:474 ../gio/gmemoryoutputstream.c:772
msgid "Invalid GSeekType supplied"
msgstr "Privzet neveljaven GSeekType"
-#: ../gio/gmemoryinputstream.c:481
+#: ../gio/gmemoryinputstream.c:484
msgid "Invalid seek request"
msgstr "Neveljavna zahteva iskanja"
-#: ../gio/gmemoryinputstream.c:505
+#: ../gio/gmemoryinputstream.c:508
msgid "Cannot truncate GMemoryInputStream"
msgstr "Ni mogoče razčleniti GMemoryInputStream"
"Količina pomnilnika zahtevana za pisanje je večja kot je razpoložljivi "
"prostor naslova"
-#: ../gio/gmemoryoutputstream.c:781
+#: ../gio/gmemoryoutputstream.c:782
msgid "Requested seek before the beginning of the stream"
msgstr "Zahtevano iskanje pred začetkom pretoka"
-#: ../gio/gmemoryoutputstream.c:796
+#: ../gio/gmemoryoutputstream.c:797
msgid "Requested seek beyond the end of the stream"
msgstr "Zahtevano iskanje za koncem pretoka"
#. * message for mount objects that
#. * don't implement unmount.
#: ../gio/gmount.c:393
-msgid "mount doesn't implement \"unmount\""
+#, fuzzy
+#| msgid "mount doesn't implement \"unmount\""
+msgid "mount doesn’t implement “unmount”"
msgstr "enota ne podpira možnosti \"odklopi\""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement eject.
#: ../gio/gmount.c:469
-msgid "mount doesn't implement \"eject\""
+#, fuzzy
+#| msgid "mount doesn't implement \"eject\""
+msgid "mount doesn’t implement “eject”"
msgstr "enota ne podpira možnosti \"izvrzi\""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of unmount or unmount_with_operation.
#: ../gio/gmount.c:547
-msgid "mount doesn't implement \"unmount\" or \"unmount_with_operation\""
+#, fuzzy
+#| msgid "mount doesn't implement \"unmount\" or \"unmount_with_operation\""
+msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
msgstr "enota ne podpira možnosti \"odklopi\" ali \"odklopi_z_dejanjem\""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of eject or eject_with_operation.
#: ../gio/gmount.c:632
-msgid "mount doesn't implement \"eject\" or \"eject_with_operation\""
+#, fuzzy
+#| msgid "mount doesn't implement \"eject\" or \"eject_with_operation\""
+msgid "mount doesn’t implement “eject” or “eject_with_operation”"
msgstr "enota ne podpira možnosti \"izvrzi\" ali \"izvrzi_z_dejanjem\""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement remount.
#: ../gio/gmount.c:720
-msgid "mount doesn't implement \"remount\""
+#, fuzzy
+#| msgid "mount doesn't implement \"remount\""
+msgid "mount doesn’t implement “remount”"
msgstr "enota ne podpira možnosti \"ponovnega priklopa\""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
#: ../gio/gmount.c:802
-msgid "mount doesn't implement content type guessing"
+#, fuzzy
+#| msgid "mount doesn't implement content type guessing"
+msgid "mount doesn’t implement content type guessing"
msgstr "priklop ne podpira ugibanja vsebine vrste"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
#: ../gio/gmount.c:889
-msgid "mount doesn't implement synchronous content type guessing"
+#, fuzzy
+#| msgid "mount doesn't implement synchronous content type guessing"
+msgid "mount doesn’t implement synchronous content type guessing"
msgstr "priklop ne podpira usklajevanja ugibanja vsebine vrste"
#: ../gio/gnetworkaddress.c:378
-#, c-format
-msgid "Hostname '%s' contains '[' but not ']'"
+#, fuzzy, c-format
+#| msgid "Hostname '%s' contains '[' but not ']'"
+msgid "Hostname “%s” contains “[” but not “]”"
msgstr "Ime gostitelja '%s' vsebuje '[' vendar ne tudi ']'"
-#: ../gio/gnetworkmonitorbase.c:206 ../gio/gnetworkmonitorbase.c:309
+#: ../gio/gnetworkmonitorbase.c:206 ../gio/gnetworkmonitorbase.c:310
msgid "Network unreachable"
msgstr "Omrežje ni dosegljivo"
msgid "Could not get network status: "
msgstr "Ni mogoče pridobiti stanja omrežja:"
-#: ../gio/gnetworkmonitornm.c:326
+#: ../gio/gnetworkmonitornm.c:329
#, c-format
msgid "NetworkManager version too old"
msgstr "Različica programa NetworkManager je prestara"
#: ../gio/goutputstream.c:212 ../gio/goutputstream.c:560
-msgid "Output stream doesn't implement write"
+msgid "Output stream doesn’t implement write"
msgstr "Odvodni pretok ne podpira pisanja"
-#: ../gio/goutputstream.c:521 ../gio/goutputstream.c:1222
+#: ../gio/goutputstream.c:521 ../gio/goutputstream.c:1224
msgid "Source stream is already closed"
msgstr "Izvorni pretok je že zaprt"
-#: ../gio/gresolver.c:330 ../gio/gthreadedresolver.c:116
+#: ../gio/gresolver.c:342 ../gio/gthreadedresolver.c:116
#: ../gio/gthreadedresolver.c:126
#, c-format
-msgid "Error resolving '%s': %s"
-msgstr "Napaka med razreševanjem '%s': %s"
+msgid "Error resolving “%s”: %s"
+msgstr "Napaka med razreševanjem »%s«: %s"
-#: ../gio/gresource.c:304 ../gio/gresource.c:555 ../gio/gresource.c:572
-#: ../gio/gresource.c:693 ../gio/gresource.c:762 ../gio/gresource.c:823
-#: ../gio/gresource.c:903 ../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 "Vir '%s' ne obstaja"
+msgid "The resource at “%s” does not exist"
+msgstr "Vir »%s« ne obstaja."
-#: ../gio/gresource.c:469
+#: ../gio/gresource.c:771
#, c-format
-msgid "The resource at '%s' failed to decompress"
-msgstr "Vira '%s' ni mogoče razširiti"
+msgid "The resource at “%s” failed to decompress"
+msgstr "Vira »%s« ni mogoče razširiti"
#: ../gio/gresourcefile.c:709
#, c-format
-msgid "The resource at '%s' is not a directory"
-msgstr "VIr '%s' ni mapa"
+msgid "The resource at “%s” is not a directory"
+msgstr "VIr »%s« ni mapa."
#: ../gio/gresourcefile.c:917
-msgid "Input stream doesn't implement seek"
+#, fuzzy
+#| msgid "Input stream doesn't implement seek"
+msgid "Input stream doesn’t implement seek"
msgstr "Vhodni pretok ne podpira iskanja"
#: ../gio/gresource-tool.c:494
msgstr "DATOTEKA POT"
#: ../gio/gresource-tool.c:534
+#, fuzzy
+#| msgid ""
+#| "Usage:\n"
+#| " gresource [--section SECTION] COMMAND [ARGS...]\n"
+#| "\n"
+#| "Commands:\n"
+#| " help Show this information\n"
+#| " sections List resource sections\n"
+#| " list List resources\n"
+#| " details List resources with details\n"
+#| " extract Extract a resource\n"
+#| "\n"
+#| "Use 'gresource help COMMAND' to get detailed help.\n"
+#| "\n"
msgid ""
"Usage:\n"
-" gresource [--section SECTION] COMMAND [ARGS...]\n"
+" gresource [--section SECTION] COMMAND [ARGS…]\n"
"\n"
"Commands:\n"
" help Show this information\n"
" details List resources with details\n"
" extract Extract a resource\n"
"\n"
-"Use 'gresource help COMMAND' to get detailed help.\n"
+"Use “gresource help COMMAND” to get detailed help.\n"
"\n"
msgstr ""
"Uporaba:\n"
msgid " SECTION An (optional) elf section name\n"
msgstr " ODSEK Ime (izbirno) izbora elf\n"
-#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:639
+#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:656
msgid " COMMAND The (optional) command to explain\n"
msgstr " UKAZ Ukaz (izbirno) za razlago\n"
msgstr " POT Pot vira\n"
#: ../gio/gsettings-tool.c:51 ../gio/gsettings-tool.c:72
-#: ../gio/gsettings-tool.c:830
+#: ../gio/gsettings-tool.c:853
#, c-format
-msgid "No such schema '%s'\n"
-msgstr "Shema '%s' ne obstaja.\n"
+msgid "No such schema “%s”\n"
+msgstr "Shema »%s« ne obstaja.\n"
#: ../gio/gsettings-tool.c:57
#, c-format
-msgid "Schema '%s' is not relocatable (path must not be specified)\n"
-msgstr "Shema '%s' ni dodeljiva (pot ne sme biti določena)\n"
+msgid "Schema “%s” is not relocatable (path must not be specified)\n"
+msgstr "Shema »%s« ni dodeljiva (pot ne sme biti določena)\n"
#: ../gio/gsettings-tool.c:78
#, c-format
-msgid "Schema '%s' is relocatable (path must be specified)\n"
-msgstr "Shema '%s' je dodeljiva (pot mora biti določena)\n"
+msgid "Schema “%s” is relocatable (path must be specified)\n"
+msgstr "Shema »%s« je dodeljiva (pot mora biti določena)\n"
#: ../gio/gsettings-tool.c:92
#, c-format
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Pot ne sme vsebovati dveh zaporednih poševnic (//)\n"
-#: ../gio/gsettings-tool.c:481
+#: ../gio/gsettings-tool.c:491
#, c-format
msgid "The provided value is outside of the valid range\n"
msgstr "Ponujena vrednost je izven veljavnega območja\n"
-#: ../gio/gsettings-tool.c:488
+#: ../gio/gsettings-tool.c:498
#, c-format
msgid "The key is not writable\n"
msgstr "Ključ ni zapisljiv\n"
-#: ../gio/gsettings-tool.c:524
+#: ../gio/gsettings-tool.c:534
msgid "List the installed (non-relocatable) schemas"
msgstr "Izpiši nameščene (nedodeljive) sheme"
-#: ../gio/gsettings-tool.c:530
+#: ../gio/gsettings-tool.c:540
msgid "List the installed relocatable schemas"
msgstr "Seznam naloženih dodeljivih SHEM"
-#: ../gio/gsettings-tool.c:536
+#: ../gio/gsettings-tool.c:546
msgid "List the keys in SCHEMA"
msgstr "Izpiši seznam ključev SHEME"
-#: ../gio/gsettings-tool.c:537 ../gio/gsettings-tool.c:543
-#: ../gio/gsettings-tool.c:580
+#: ../gio/gsettings-tool.c:547 ../gio/gsettings-tool.c:553
+#: ../gio/gsettings-tool.c:596
msgid "SCHEMA[:PATH]"
msgstr "SHEMA[:POT]"
-#: ../gio/gsettings-tool.c:542
+#: ../gio/gsettings-tool.c:552
msgid "List the children of SCHEMA"
msgstr "Izpiši seznam podrejenih predmetov SHEME"
-#: ../gio/gsettings-tool.c:548
+#: ../gio/gsettings-tool.c:558
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
"Rekurzivno izpiši ključe in vrednosti,\n"
"če ni podanana SHEMA, pa izpiši vse ključe\n"
-#: ../gio/gsettings-tool.c:550
+#: ../gio/gsettings-tool.c:560
msgid "[SCHEMA[:PATH]]"
msgstr "[SHEMA[:POT]]"
-#: ../gio/gsettings-tool.c:555
+#: ../gio/gsettings-tool.c:565
msgid "Get the value of KEY"
msgstr "Pridobi vrednost KLJUČA"
-#: ../gio/gsettings-tool.c:556 ../gio/gsettings-tool.c:562
-#: ../gio/gsettings-tool.c:574 ../gio/gsettings-tool.c:586
+#: ../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 "SHEMA[:POT] KLJUČ"
-#: ../gio/gsettings-tool.c:561
+#: ../gio/gsettings-tool.c:571
msgid "Query the range of valid values for KEY"
msgstr "Poizvej območje veljavnih vrednosti KLJUČA"
-#: ../gio/gsettings-tool.c:567
+#: ../gio/gsettings-tool.c:577
+msgid "Query the description for KEY"
+msgstr "Preveri opis za KLJUČ"
+
+#: ../gio/gsettings-tool.c:583
msgid "Set the value of KEY to VALUE"
msgstr "Nastavi vrednosti KLJUČA na VREDNOST"
-#: ../gio/gsettings-tool.c:568
+#: ../gio/gsettings-tool.c:584
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SHEMA[:POT] KLJUČ VREDNOST"
-#: ../gio/gsettings-tool.c:573
+#: ../gio/gsettings-tool.c:589
msgid "Reset KEY to its default value"
msgstr "Ponastavi KLJUČ na privzeto vrednost"
-#: ../gio/gsettings-tool.c:579
+#: ../gio/gsettings-tool.c:595
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Ponastavi vse ključe SHEME na privzete vrednosti"
-#: ../gio/gsettings-tool.c:585
+#: ../gio/gsettings-tool.c:601
msgid "Check if KEY is writable"
msgstr "Preveri ali je KLJUČ zapisljiv"
-#: ../gio/gsettings-tool.c:591
+#: ../gio/gsettings-tool.c:607
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"V kolikor KLJUČ ni določen, nadzoruj vse ključe SHEME.\n"
"Pritisni ^C za zaustavitev nadzora.\n"
-#: ../gio/gsettings-tool.c:594
+#: ../gio/gsettings-tool.c:610
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SHEMA[:POT] [KLJUČ]"
-#: ../gio/gsettings-tool.c:606
+#: ../gio/gsettings-tool.c:622
+#, fuzzy
+#| msgid ""
+#| "Usage:\n"
+#| " gsettings --version\n"
+#| " gsettings [--schemadir SCHEMADIR] COMMAND [ARGS...]\n"
+#| "\n"
+#| "Commands:\n"
+#| " help Show this information\n"
+#| " list-schemas List installed schemas\n"
+#| " list-relocatable-schemas List relocatable schemas\n"
+#| " list-keys List keys in a schema\n"
+#| " list-children List children of a schema\n"
+#| " list-recursively List keys and values, recursively\n"
+#| " range Queries the range of a key\n"
+#| " describe Queries the description of a key\n"
+#| " get Get the value of a key\n"
+#| " set Set the value of a key\n"
+#| " reset Reset the value of a key\n"
+#| " reset-recursively Reset all values in a given schema\n"
+#| " writable Check if a key is writable\n"
+#| " monitor Watch for changes\n"
+#| "\n"
+#| "Use 'gsettings help COMMAND' to get detailed help.\n"
+#| "\n"
msgid ""
"Usage:\n"
" gsettings --version\n"
-" gsettings [--schemadir SCHEMADIR] COMMAND [ARGS...]\n"
+" gsettings [--schemadir SCHEMADIR] COMMAND [ARGS…]\n"
"\n"
"Commands:\n"
" help Show this information\n"
" list-children List children of a schema\n"
" list-recursively List keys and values, recursively\n"
" range Queries the range of a key\n"
+" describe Queries the description of a key\n"
" get Get the value of a key\n"
" set Set the value of a key\n"
" reset Reset the value of a key\n"
" writable Check if a key is writable\n"
" monitor Watch for changes\n"
"\n"
-"Use 'gsettings help COMMAND' to get detailed help.\n"
+"Use “gsettings help COMMAND” to get detailed help.\n"
"\n"
msgstr ""
"Uporaba:\n"
+" gsettings --version\n"
" gsettings [--schemadir MAPASHEM] UKAZ [ARGUMENTI ...]\n"
"\n"
"Ukazi:\n"
" list-children Izpiši seznam podrejenih shem\n"
" list-recursively Rekurzivno izpiši seznam ključev in vrednosti\n"
" range Izvede poizvedbo območja ključa\n"
+" describe Izvede poizvedbo opisa ključa\n"
" get Pridobi vrednost ključa\n"
" set Določi vrednost ključa\n"
" reset Počisti vrednost ključa\n"
"Z ukazom 'gsettings help UKAZ' se izpiše podrobna pomoč.\n"
"\n"
-#: ../gio/gsettings-tool.c:629
+#: ../gio/gsettings-tool.c:646
#, c-format
msgid ""
"Usage:\n"
"%s\n"
"\n"
-#: ../gio/gsettings-tool.c:635
+#: ../gio/gsettings-tool.c:652
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " MAPASHEM Mapa za iskanje dodatnih shem\n"
-#: ../gio/gsettings-tool.c:643
+#: ../gio/gsettings-tool.c:660
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
" SHEMA Ime sheme\n"
" POT Pot do dodeljive sheme\n"
-#: ../gio/gsettings-tool.c:648
+#: ../gio/gsettings-tool.c:665
msgid " KEY The (optional) key within the schema\n"
msgstr " KLJUČ Ključ (izbirno) znotraj sheme\n"
-#: ../gio/gsettings-tool.c:652
+#: ../gio/gsettings-tool.c:669
msgid " KEY The key within the schema\n"
msgstr " KLJUČ Ključ znotraj sheme\n"
-#: ../gio/gsettings-tool.c:656
+#: ../gio/gsettings-tool.c:673
msgid " VALUE The value to set\n"
msgstr " VREDNOST Vrednost za nastavitev\n"
-#: ../gio/gsettings-tool.c:711
+#: ../gio/gsettings-tool.c:728
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Ni mogoče odpreti shem iz %s: %s\n"
-#: ../gio/gsettings-tool.c:723
+#: ../gio/gsettings-tool.c:740
#, c-format
msgid "No schemas installed\n"
msgstr "Ni nameščenih shem\n"
-#: ../gio/gsettings-tool.c:788
+#: ../gio/gsettings-tool.c:811
#, c-format
msgid "Empty schema name given\n"
msgstr "Ni podanega imena sheme.\n"
-#: ../gio/gsettings-tool.c:843
+#: ../gio/gsettings-tool.c:866
#, c-format
-msgid "No such key '%s'\n"
-msgstr "Ključ '%s' ne obstaja.\n"
+msgid "No such key “%s”\n"
+msgstr "Ključ »%s« ne obstaja.\n"
-#: ../gio/gsocket.c:364
+#: ../gio/gsocket.c:379
msgid "Invalid socket, not initialized"
msgstr "Neveljaven vtič, ni zagnano"
-#: ../gio/gsocket.c:371
+#: ../gio/gsocket.c:386
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Neveljaven vtič, zaganjanje je spodletelo: %s"
-#: ../gio/gsocket.c:379
+#: ../gio/gsocket.c:394
msgid "Socket is already closed"
msgstr "Vtič je že zaprt"
-#: ../gio/gsocket.c:394 ../gio/gsocket.c:2751 ../gio/gsocket.c:3896
-#: ../gio/gsocket.c:3951
+#: ../gio/gsocket.c:409 ../gio/gsocket.c:2765 ../gio/gsocket.c:3950
+#: ../gio/gsocket.c:4008
msgid "Socket I/O timed out"
msgstr "Vtič V/I naprave je časovno potekel"
-#: ../gio/gsocket.c:526
+#: ../gio/gsocket.c:541
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "ustvarjanje GSocet preko fd: %s"
-#: ../gio/gsocket.c:554 ../gio/gsocket.c:608 ../gio/gsocket.c:615
+#: ../gio/gsocket.c:570 ../gio/gsocket.c:624 ../gio/gsocket.c:631
#, c-format
msgid "Unable to create socket: %s"
msgstr "Ni mogoče ustvariti vtiča: %s"
-#: ../gio/gsocket.c:608
+#: ../gio/gsocket.c:624
msgid "Unknown family was specified"
msgstr "Določena je neznana družina"
-#: ../gio/gsocket.c:615
+#: ../gio/gsocket.c:631
msgid "Unknown protocol was specified"
msgstr "Določen je neznan protokol"
-#: ../gio/gsocket.c:1104
+#: ../gio/gsocket.c:1122
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Ni mogoče uporabiti opravil datagrama na vtiču, ki jih ne podpira."
-#: ../gio/gsocket.c:1121
+#: ../gio/gsocket.c:1139
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Ni mogoče uporabiti opravil datagrama na vtiču z nastavljenim časovnim "
"pretekom"
-#: ../gio/gsocket.c:1925
+#: ../gio/gsocket.c:1943
#, c-format
msgid "could not get local address: %s"
msgstr "ni mogoče pridobiti krajevnega naslova: %s"
-#: ../gio/gsocket.c:1968
+#: ../gio/gsocket.c:1986
#, c-format
msgid "could not get remote address: %s"
msgstr "ni mogoče pridobiti oddaljenega naslova: %s"
-#: ../gio/gsocket.c:2034
+#: ../gio/gsocket.c:2052
#, c-format
msgid "could not listen: %s"
msgstr "ni mogoče slediti: %s"
-#: ../gio/gsocket.c:2133
+#: ../gio/gsocket.c:2151
#, c-format
msgid "Error binding to address: %s"
msgstr "Napaka vezanjem na naslov: %s"
-#: ../gio/gsocket.c:2248 ../gio/gsocket.c:2285
+#: ../gio/gsocket.c:2266 ../gio/gsocket.c:2303
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Napaka povezovanja v skupino za večsmerno oddajanje: %s"
-#: ../gio/gsocket.c:2249 ../gio/gsocket.c:2286
+#: ../gio/gsocket.c:2267 ../gio/gsocket.c:2304
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Napaka zapuščanja skupine za večsmerno oddajanje: %s"
-#: ../gio/gsocket.c:2250
+#: ../gio/gsocket.c:2268
msgid "No support for source-specific multicast"
msgstr "Ni podpore za večsmerno oddajanje lastno viru"
-#: ../gio/gsocket.c:2470
+#: ../gio/gsocket.c:2488
#, c-format
msgid "Error accepting connection: %s"
msgstr "Napaka med sprejemanjem povezave: %s"
-#: ../gio/gsocket.c:2593
+#: ../gio/gsocket.c:2609
msgid "Connection in progress"
msgstr "Povezava v teku"
-#: ../gio/gsocket.c:2644
+#: ../gio/gsocket.c:2658
msgid "Unable to get pending error: "
msgstr "Ni mogoče pridobiti uvrščene napake:"
-#: ../gio/gsocket.c:2816
+#: ../gio/gsocket.c:2828
#, c-format
msgid "Error receiving data: %s"
msgstr "Napaka med prejemanjem podatkov: %s"
-#: ../gio/gsocket.c:3013
+#: ../gio/gsocket.c:3023
#, c-format
msgid "Error sending data: %s"
msgstr "Napaka med pošiljanjem podatkov: %s"
-#: ../gio/gsocket.c:3200
+#: ../gio/gsocket.c:3210
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Ni mogoče izklopiti vtiča: %s"
-#: ../gio/gsocket.c:3281
+#: ../gio/gsocket.c:3291
#, c-format
msgid "Error closing socket: %s"
msgstr "Napaka med zapiranjem vtiča: %s"
-#: ../gio/gsocket.c:3889
+#: ../gio/gsocket.c:3943
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Čakanje na stanje vtiča: %s"
-#: ../gio/gsocket.c:4361 ../gio/gsocket.c:4441 ../gio/gsocket.c:4619
+#: ../gio/gsocket.c:4417 ../gio/gsocket.c:4497 ../gio/gsocket.c:4675
#, c-format
msgid "Error sending message: %s"
msgstr "Napaka med pošiljanjem sporočila: %s"
-#: ../gio/gsocket.c:4385
+#: ../gio/gsocket.c:4441
msgid "GSocketControlMessage not supported on Windows"
msgstr "Predmet GSocketControlMessage na sistemih Windows ni podprt"
-#: ../gio/gsocket.c:4840 ../gio/gsocket.c:4913 ../gio/gsocket.c:5140
+#: ../gio/gsocket.c:4894 ../gio/gsocket.c:4967 ../gio/gsocket.c:5193
#, c-format
msgid "Error receiving message: %s"
msgstr "Napaka med prejemanjem sporočila: %s"
-#: ../gio/gsocket.c:5412
+#: ../gio/gsocket.c:5465
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Ni mogoče prebrati poveril vtiča: %s."
-#: ../gio/gsocket.c:5421
+#: ../gio/gsocket.c:5474
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "Operacijski sistem ne podpira možnosti g_socket_get_credentials"
#: ../gio/gsocketclient.c:1110 ../gio/gsocketclient.c:1561
#, c-format
-msgid "Proxy protocol '%s' is not supported."
-msgstr "Protokol posredniški strežnika '%s' ni podprt."
+msgid "Proxy protocol “%s” is not supported."
+msgstr "Protokol posredniškega strežnika »%s« ni podprt."
#: ../gio/gsocketlistener.c:218
msgid "Listener is already closed"
msgstr "Dodan vtič je zaprt"
#: ../gio/gsocks4aproxy.c:118
-#, c-format
-msgid "SOCKSv4 does not support IPv6 address '%s'"
+#, fuzzy, c-format
+#| msgid "SOCKSv4 does not support IPv6 address '%s'"
+msgid "SOCKSv4 does not support IPv6 address “%s”"
msgstr "SOCKSv4 nima podpore za naslove IPv6 '%s'"
#: ../gio/gsocks4aproxy.c:136
#: ../gio/gsocks4aproxy.c:153
#, c-format
-msgid "Hostname '%s' is too long for SOCKSv4 protocol"
-msgstr "Ime gostitelja '%s' je predolgo za protokol SOCKSv4"
+msgid "Hostname “%s” is too long for SOCKSv4 protocol"
+msgstr "Ime gostitelja »%s« je predolgo za protokol SOCKSv4"
#: ../gio/gsocks4aproxy.c:179
msgid "The server is not a SOCKSv4 proxy server."
#: ../gio/gsocks5proxy.c:286
#, c-format
-msgid "Hostname '%s' is too long for SOCKSv5 protocol"
-msgstr "Ime gostitelja '%s' je predolgo za protokol SOCKSv5"
+msgid "Hostname “%s” is too long for SOCKSv5 protocol"
+msgstr "Ime gostitelja »%s« je predolgo za protokol SOCKSv5"
#: ../gio/gsocks5proxy.c:348
msgid "The SOCKSv5 proxy server uses unknown address type."
msgstr "Povezava skozi posredniški strežnik SOCKSv5 je zavrnjena."
#: ../gio/gsocks5proxy.c:386
-msgid "SOCKSv5 proxy does not support 'connect' command."
+#, fuzzy
+#| msgid "SOCKSv5 proxy does not support 'connect' command."
+msgid "SOCKSv5 proxy does not support “connect” command."
msgstr "SOCKSv5 posredniški strežnik ne podpira ukaza 'connect'."
#: ../gio/gsocks5proxy.c:392
msgstr "Neznana napaka posredniškega strežnika SOCKSv5."
#: ../gio/gthemedicon.c:518
-#, c-format
-msgid "Can't handle version %d of GThemedIcon encoding"
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GThemedIcon encoding"
+msgid "Can’t handle version %d of GThemedIcon encoding"
msgstr "Ni mogoče upravljati z različico %d kodiranja GThemedIcon"
#: ../gio/gthreadedresolver.c:118
msgid "No valid addresses were found"
msgstr "Ni mogoče najti veljavnega naslova"
-#: ../gio/gthreadedresolver.c:211
+#: ../gio/gthreadedresolver.c:213
#, c-format
-msgid "Error reverse-resolving '%s': %s"
-msgstr "Napaka med obratnim razreševanjem '%s': %s"
+msgid "Error reverse-resolving “%s”: %s"
+msgstr "Napaka med obratnim razreševanjem »%s«: %s"
-#: ../gio/gthreadedresolver.c:546 ../gio/gthreadedresolver.c:626
-#: ../gio/gthreadedresolver.c:724 ../gio/gthreadedresolver.c:774
-#, c-format
-msgid "No DNS record of the requested type for '%s'"
+#: ../gio/gthreadedresolver.c:550 ../gio/gthreadedresolver.c:630
+#: ../gio/gthreadedresolver.c:728 ../gio/gthreadedresolver.c:778
+#, fuzzy, c-format
+#| msgid "No DNS record of the requested type for '%s'"
+msgid "No DNS record of the requested type for “%s”"
msgstr "Ni zapisa DNS za zahtevano vrsto '%s'"
-#: ../gio/gthreadedresolver.c:551 ../gio/gthreadedresolver.c:729
+#: ../gio/gthreadedresolver.c:555 ../gio/gthreadedresolver.c:733
#, c-format
-msgid "Temporarily unable to resolve '%s'"
-msgstr "začasno ni mogoče razrešiti '%s'"
+msgid "Temporarily unable to resolve “%s”"
+msgstr "Trenutno ni mogoče razrešiti »%s«"
-#: ../gio/gthreadedresolver.c:556 ../gio/gthreadedresolver.c:734
+#: ../gio/gthreadedresolver.c:560 ../gio/gthreadedresolver.c:738
#, c-format
-msgid "Error resolving '%s'"
-msgstr "Napaka med razreševanjem '%s'"
+msgid "Error resolving “%s”"
+msgstr "Napaka med razreševanjem »%s«"
#: ../gio/gtlscertificate.c:250
msgid "Cannot decrypt PEM-encoded private key"
msgstr ""
"To je zadnja priložnost za pravilen vnos gesla preden se dostop zaklene."
-#: ../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
+#, fuzzy
+#| msgid ""
+#| "Several password entered have been incorrect, and your access will be "
+#| "locked out after further failures."
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 ""
"Več poskusov vnosa gesla je bilo neuspešnih, zato bo dostop ob nadaljnjih "
"napakah zaklenjen."
-#: ../gio/gtlspassword.c:115
+#: ../gio/gtlspassword.c:117
msgid "The password entered is incorrect."
msgstr "Vneseno geslo je nepravilno."
-#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:561
+#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:563
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[2] "Pričakovano eno nadzorno sporočilo, prejeti pa sta %d sporočili"
msgstr[3] "Pričakovano eno nadzorno sporočilo, prejeta pa so %d sporočila"
-#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:573
+#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:575
msgid "Unexpected type of ancillary data"
msgstr "Nepričakovana vrsta dodatnih podatkov"
msgid "Error sending credentials: "
msgstr "Napaka med pošiljanjem poveril:"
-#: ../gio/gunixconnection.c:503
+#: ../gio/gunixconnection.c:504
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Napaka med preverjanjem ali je predmet O_PASSCRED omogočen za vtič: %s"
-#: ../gio/gunixconnection.c:518
+#: ../gio/gunixconnection.c:520
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Napaka omogočanja predmeta SO_PASSCRED: %s"
-#: ../gio/gunixconnection.c:547
+#: ../gio/gunixconnection.c:549
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Pri prejemanju poveril je pričakovano branje enega bajta, vendar se je "
"prebralo nič bajtov"
-#: ../gio/gunixconnection.c:587
+#: ../gio/gunixconnection.c:589
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Nadzorno sporočilo ni pričakovano, vendar pa je prejeto %d"
-#: ../gio/gunixconnection.c:611
+#: ../gio/gunixconnection.c:614
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Napaka med onemogočanjem SO_PASSCRED: %s"
-#: ../gio/gunixinputstream.c:369 ../gio/gunixinputstream.c:390
+#: ../gio/gunixinputstream.c:372 ../gio/gunixinputstream.c:393
#, c-format
msgid "Error reading from file descriptor: %s"
msgstr "Napaka med branjem iz opisovalnika datoteke: %s"
-#: ../gio/gunixinputstream.c:423 ../gio/gunixoutputstream.c:409
+#: ../gio/gunixinputstream.c:426 ../gio/gunixoutputstream.c:411
#: ../gio/gwin32inputstream.c:217 ../gio/gwin32outputstream.c:204
#, c-format
msgid "Error closing file descriptor: %s"
msgstr "Napaka med zapiranjem opisovalnika datoteke: %s"
-#: ../gio/gunixmounts.c:2099 ../gio/gunixmounts.c:2152
+#: ../gio/gunixmounts.c:2430 ../gio/gunixmounts.c:2483
msgid "Filesystem root"
msgstr "Koren datotečnega sistema"
-#: ../gio/gunixoutputstream.c:355 ../gio/gunixoutputstream.c:376
+#: ../gio/gunixoutputstream.c:358 ../gio/gunixoutputstream.c:378
#, c-format
msgid "Error writing to file descriptor: %s"
msgstr "Napaka med pisanjem v opisovalnik datoteke: %s"
-#: ../gio/gunixsocketaddress.c:239
+#: ../gio/gunixsocketaddress.c:241
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstraktni naslovi vtiča domene UNIX na tem sistemu niso podprti"
#: ../gio/gvolume.c:437
-msgid "volume doesn't implement eject"
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "volume doesn’t implement eject"
msgstr "nosilca ni mogoče izvreči"
#. Translators: This is an error
#. * message for volume objects that
#. * don't implement any of eject or eject_with_operation.
#: ../gio/gvolume.c:514
-msgid "volume doesn't implement eject or eject_with_operation"
+#, fuzzy
+#| msgid "volume doesn't implement eject or eject_with_operation"
+msgid "volume doesn’t implement eject or eject_with_operation"
msgstr "nosilec ne prepozna ukaza izvrzi ali izvrzi_z_dejanjem"
#: ../gio/gwin32inputstream.c:185
msgid "Wrong args\n"
msgstr "Napačni argumenti\n"
-#: ../glib/gbookmarkfile.c:755
-#, c-format
-msgid "Unexpected attribute '%s' for element '%s'"
+#: ../glib/gbookmarkfile.c:754
+#, fuzzy, c-format
+#| msgid "Unexpected attribute '%s' for element '%s'"
+msgid "Unexpected attribute “%s” for element “%s”"
msgstr "Nepričakovan atribut '%s' za predmet '%s'"
-#: ../glib/gbookmarkfile.c:766 ../glib/gbookmarkfile.c:837
-#: ../glib/gbookmarkfile.c:847 ../glib/gbookmarkfile.c:954
-#, c-format
-msgid "Attribute '%s' of element '%s' not found"
+#: ../glib/gbookmarkfile.c:765 ../glib/gbookmarkfile.c:836
+#: ../glib/gbookmarkfile.c:846 ../glib/gbookmarkfile.c:953
+#, fuzzy, c-format
+#| msgid "Attribute '%s' of element '%s' not found"
+msgid "Attribute “%s” of element “%s” not found"
msgstr "Atributa '%s' predmeta '%s' ni mogoče najti"
-#: ../glib/gbookmarkfile.c:1124 ../glib/gbookmarkfile.c:1189
-#: ../glib/gbookmarkfile.c:1253 ../glib/gbookmarkfile.c:1263
-#, c-format
-msgid "Unexpected tag '%s', tag '%s' expected"
+#: ../glib/gbookmarkfile.c:1123 ../glib/gbookmarkfile.c:1188
+#: ../glib/gbookmarkfile.c:1252 ../glib/gbookmarkfile.c:1262
+#, fuzzy, c-format
+#| msgid "Unexpected tag '%s', tag '%s' expected"
+msgid "Unexpected tag “%s”, tag “%s” expected"
msgstr "Nepričakovana oznaka '%s'. Pričakovana je '%s'"
-#: ../glib/gbookmarkfile.c:1149 ../glib/gbookmarkfile.c:1163
-#: ../glib/gbookmarkfile.c:1231
-#, c-format
-msgid "Unexpected tag '%s' inside '%s'"
+#: ../glib/gbookmarkfile.c:1148 ../glib/gbookmarkfile.c:1162
+#: ../glib/gbookmarkfile.c:1230
+#, fuzzy, c-format
+#| msgid "Unexpected tag '%s' inside '%s'"
+msgid "Unexpected tag “%s” inside “%s”"
msgstr "Nepričakovana oznaka '%s' znotraj '%s'"
#: ../glib/gbookmarkfile.c:1756
msgstr "Ni veljavne datoteke zaznamkov v podatkovnih mapah"
#: ../glib/gbookmarkfile.c:1957
-#, c-format
-msgid "A bookmark for URI '%s' already exists"
+#, fuzzy, c-format
+#| msgid "A bookmark for URI '%s' already exists"
+msgid "A bookmark for URI “%s” already exists"
msgstr "Zaznamek za URI '%s' že obstaja"
#: ../glib/gbookmarkfile.c:2003 ../glib/gbookmarkfile.c:2161
#: ../glib/gbookmarkfile.c:3176 ../glib/gbookmarkfile.c:3344
#: ../glib/gbookmarkfile.c:3433 ../glib/gbookmarkfile.c:3522
#: ../glib/gbookmarkfile.c:3638
-#, c-format
-msgid "No bookmark found for URI '%s'"
+#, fuzzy, c-format
+#| msgid "No bookmark found for URI '%s'"
+msgid "No bookmark found for URI “%s”"
msgstr "Ni veljavnega zaznamka za URI '%s'"
#: ../glib/gbookmarkfile.c:2335
-#, c-format
-msgid "No MIME type defined in the bookmark for URI '%s'"
+#, fuzzy, c-format
+#| msgid "No MIME type defined in the bookmark for URI '%s'"
+msgid "No MIME type defined in the bookmark for URI “%s”"
msgstr "V zaznamku za URI '%s' ni določene vrsta MIME"
#: ../glib/gbookmarkfile.c:2420
-#, c-format
-msgid "No private flag has been defined in bookmark for URI '%s'"
+#, fuzzy, c-format
+#| msgid "No private flag has been defined in bookmark for URI '%s'"
+msgid "No private flag has been defined in bookmark for URI “%s”"
msgstr "V zaznamku za URI '%s' ni določene zasebne zastavice"
#: ../glib/gbookmarkfile.c:2799
-#, c-format
-msgid "No groups set in bookmark for URI '%s'"
+#, fuzzy, c-format
+#| msgid "No groups set in bookmark for URI '%s'"
+msgid "No groups set in bookmark for URI “%s”"
msgstr "V zaznamku za URI '%s' ni nastavljenih skupin"
#: ../glib/gbookmarkfile.c:3197 ../glib/gbookmarkfile.c:3354
-#, c-format
-msgid "No application with name '%s' registered a bookmark for '%s'"
+#, fuzzy, c-format
+#| msgid "No application with name '%s' registered a bookmark for '%s'"
+msgid "No application with name “%s” registered a bookmark for “%s”"
msgstr "Program z imenom '%s' ni ustvaril zaznamka za '%s'"
#: ../glib/gbookmarkfile.c:3377
-#, c-format
-msgid "Failed to expand exec line '%s' with URI '%s'"
+#, fuzzy, c-format
+#| msgid "Failed to expand exec line '%s' with URI '%s'"
+msgid "Failed to expand exec line “%s” with URI “%s”"
msgstr "Razširjanje ukazne vrstice '%s' z URI '%s' je spodletelo."
-#: ../glib/gconvert.c:477 ../glib/gutf8.c:849 ../glib/gutf8.c:1061
-#: ../glib/gutf8.c:1198 ../glib/gutf8.c:1302
+#: ../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 "Nedokončano zaporedje znakov na koncu vhoda"
#: ../glib/gconvert.c:742
-#, c-format
-msgid "Cannot convert fallback '%s' to codeset '%s'"
+#, fuzzy, c-format
+#| msgid "Cannot convert fallback '%s' to codeset '%s'"
+msgid "Cannot convert fallback “%s” to codeset “%s”"
msgstr "Ni mogoče pretvoriti '%s' v nabor znakov '%s'"
-#: ../glib/gconvert.c:1567
+#: ../glib/gconvert.c:1513
#, c-format
-msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
-msgstr "Naslov URI '%s' pri uporabi \"datotečne\" sheme ni absoluten"
+msgid "The URI “%s” is not an absolute URI using the “file” scheme"
+msgstr "Naslov URI »%s« pri uporabi »datotečne« sheme ni absoluten"
-#: ../glib/gconvert.c:1577
+#: ../glib/gconvert.c:1523
#, c-format
-msgid "The local file URI '%s' may not include a '#'"
-msgstr "V naslovu URI krajevne datoteke '%s' ni mogoče uporabiti '#'"
+msgid "The local file URI “%s” may not include a “#”"
+msgstr "V naslovu URI krajevne datoteke »%s« ni mogoče uporabiti '#'"
-#: ../glib/gconvert.c:1594
+#: ../glib/gconvert.c:1540
#, c-format
-msgid "The URI '%s' is invalid"
-msgstr "Naslov URI '%s' je neveljaven"
+msgid "The URI “%s” is invalid"
+msgstr "Naslov URI »%s« je neveljaven"
-#: ../glib/gconvert.c:1606
+#: ../glib/gconvert.c:1552
#, c-format
-msgid "The hostname of the URI '%s' is invalid"
-msgstr "Ime gostitelja naslova URI '%s' ni veljavno"
+msgid "The hostname of the URI “%s” is invalid"
+msgstr "Ime gostitelja naslova URI »%s« ni veljavno"
-#: ../glib/gconvert.c:1622
+#: ../glib/gconvert.c:1568
#, c-format
-msgid "The URI '%s' contains invalidly escaped characters"
-msgstr "Naslov URI '%s' vsebuje neveljavne ubežne znake"
+msgid "The URI “%s” contains invalidly escaped characters"
+msgstr "Naslov URI »%s« vsebuje neveljavne ubežne znake"
-#: ../glib/gconvert.c:1717
+#: ../glib/gconvert.c:1640
#, c-format
-msgid "The pathname '%s' is not an absolute path"
-msgstr "Pot '%s' ni absolutna pot"
-
-#: ../glib/gconvert.c:1727
-msgid "Invalid hostname"
-msgstr "Neveljavno ime gostitelja"
-
-#. Translators: 'before midday' indicator
-#: ../glib/gdatetime.c:201
-msgctxt "GDateTime"
-msgid "AM"
-msgstr "dop"
-
-#. Translators: 'after midday' indicator
-#: ../glib/gdatetime.c:203
-msgctxt "GDateTime"
-msgid "PM"
-msgstr "pop"
+msgid "The pathname “%s” is not an absolute path"
+msgstr "Pot »%s« ni absolutna pot"
#. Translators: this is the preferred format for expressing the date and the time
-#: ../glib/gdatetime.c:206
+#: ../glib/gdatetime.c:202
msgctxt "GDateTime"
msgid "%a %b %e %H:%M:%S %Y"
msgstr "%a, %e. %b %Y %H:%M:%S"
#. Translators: this is the preferred format for expressing the date
-#: ../glib/gdatetime.c:209
+#: ../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:212
+#: ../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:215
+#: ../glib/gdatetime.c:211
msgctxt "GDateTime"
msgid "%I:%M:%S %p"
msgstr "%I:%M:%S %p"
-#: ../glib/gdatetime.c:228
+#: ../glib/gdatetime.c:224
msgctxt "full month name"
msgid "January"
msgstr "januar"
-#: ../glib/gdatetime.c:230
+#: ../glib/gdatetime.c:226
msgctxt "full month name"
msgid "February"
msgstr "februar"
-#: ../glib/gdatetime.c:232
+#: ../glib/gdatetime.c:228
msgctxt "full month name"
msgid "March"
msgstr "marec"
-#: ../glib/gdatetime.c:234
+#: ../glib/gdatetime.c:230
msgctxt "full month name"
msgid "April"
msgstr "april"
-#: ../glib/gdatetime.c:236
+#: ../glib/gdatetime.c:232
msgctxt "full month name"
msgid "May"
msgstr "maj"
-#: ../glib/gdatetime.c:238
+#: ../glib/gdatetime.c:234
msgctxt "full month name"
msgid "June"
msgstr "junij"
-#: ../glib/gdatetime.c:240
+#: ../glib/gdatetime.c:236
msgctxt "full month name"
msgid "July"
msgstr "julij"
-#: ../glib/gdatetime.c:242
+#: ../glib/gdatetime.c:238
msgctxt "full month name"
msgid "August"
msgstr "avgust"
-#: ../glib/gdatetime.c:244
+#: ../glib/gdatetime.c:240
msgctxt "full month name"
msgid "September"
msgstr "september"
-#: ../glib/gdatetime.c:246
+#: ../glib/gdatetime.c:242
msgctxt "full month name"
msgid "October"
msgstr "oktober"
-#: ../glib/gdatetime.c:248
+#: ../glib/gdatetime.c:244
msgctxt "full month name"
msgid "November"
msgstr "november"
-#: ../glib/gdatetime.c:250
+#: ../glib/gdatetime.c:246
msgctxt "full month name"
msgid "December"
msgstr "december"
-#: ../glib/gdatetime.c:265
+#: ../glib/gdatetime.c:261
msgctxt "abbreviated month name"
msgid "Jan"
msgstr "jan"
-#: ../glib/gdatetime.c:267
+#: ../glib/gdatetime.c:263
msgctxt "abbreviated month name"
msgid "Feb"
msgstr "feb"
-#: ../glib/gdatetime.c:269
+#: ../glib/gdatetime.c:265
msgctxt "abbreviated month name"
msgid "Mar"
msgstr "mar"
-#: ../glib/gdatetime.c:271
+#: ../glib/gdatetime.c:267
msgctxt "abbreviated month name"
msgid "Apr"
msgstr "apr"
-#: ../glib/gdatetime.c:273
+#: ../glib/gdatetime.c:269
msgctxt "abbreviated month name"
msgid "May"
msgstr "maj"
-#: ../glib/gdatetime.c:275
+#: ../glib/gdatetime.c:271
msgctxt "abbreviated month name"
msgid "Jun"
msgstr "jun"
-#: ../glib/gdatetime.c:277
+#: ../glib/gdatetime.c:273
msgctxt "abbreviated month name"
msgid "Jul"
msgstr "jul"
-#: ../glib/gdatetime.c:279
+#: ../glib/gdatetime.c:275
msgctxt "abbreviated month name"
msgid "Aug"
msgstr "avg"
-#: ../glib/gdatetime.c:281
+#: ../glib/gdatetime.c:277
msgctxt "abbreviated month name"
msgid "Sep"
msgstr "sep"
-#: ../glib/gdatetime.c:283
+#: ../glib/gdatetime.c:279
msgctxt "abbreviated month name"
msgid "Oct"
msgstr "okt"
-#: ../glib/gdatetime.c:285
+#: ../glib/gdatetime.c:281
msgctxt "abbreviated month name"
msgid "Nov"
msgstr "nov"
-#: ../glib/gdatetime.c:287
+#: ../glib/gdatetime.c:283
msgctxt "abbreviated month name"
msgid "Dec"
msgstr "dec"
-#: ../glib/gdatetime.c:302
+#: ../glib/gdatetime.c:298
msgctxt "full weekday name"
msgid "Monday"
msgstr "ponedeljek"
-#: ../glib/gdatetime.c:304
+#: ../glib/gdatetime.c:300
msgctxt "full weekday name"
msgid "Tuesday"
msgstr "torek"
-#: ../glib/gdatetime.c:306
+#: ../glib/gdatetime.c:302
msgctxt "full weekday name"
msgid "Wednesday"
msgstr "sreda"
-#: ../glib/gdatetime.c:308
+#: ../glib/gdatetime.c:304
msgctxt "full weekday name"
msgid "Thursday"
msgstr "četrtek"
-#: ../glib/gdatetime.c:310
+#: ../glib/gdatetime.c:306
msgctxt "full weekday name"
msgid "Friday"
msgstr "petek"
-#: ../glib/gdatetime.c:312
+#: ../glib/gdatetime.c:308
msgctxt "full weekday name"
msgid "Saturday"
msgstr "sobota"
-#: ../glib/gdatetime.c:314
+#: ../glib/gdatetime.c:310
msgctxt "full weekday name"
msgid "Sunday"
msgstr "nedeljo"
-#: ../glib/gdatetime.c:329
+#: ../glib/gdatetime.c:325
msgctxt "abbreviated weekday name"
msgid "Mon"
msgstr "pon"
-#: ../glib/gdatetime.c:331
+#: ../glib/gdatetime.c:327
msgctxt "abbreviated weekday name"
msgid "Tue"
msgstr "tor"
-#: ../glib/gdatetime.c:333
+#: ../glib/gdatetime.c:329
msgctxt "abbreviated weekday name"
msgid "Wed"
msgstr "sre"
-#: ../glib/gdatetime.c:335
+#: ../glib/gdatetime.c:331
msgctxt "abbreviated weekday name"
msgid "Thu"
msgstr "čet"
-#: ../glib/gdatetime.c:337
+#: ../glib/gdatetime.c:333
msgctxt "abbreviated weekday name"
msgid "Fri"
msgstr "pet"
-#: ../glib/gdatetime.c:339
+#: ../glib/gdatetime.c:335
msgctxt "abbreviated weekday name"
msgid "Sat"
msgstr "sob"
-#: ../glib/gdatetime.c:341
+#: ../glib/gdatetime.c:337
msgctxt "abbreviated weekday name"
msgid "Sun"
msgstr "ned"
+#. Translators: 'before midday' indicator
+#: ../glib/gdatetime.c:354
+msgctxt "GDateTime"
+msgid "AM"
+msgstr "dop"
+
+#. Translators: 'after midday' indicator
+#: ../glib/gdatetime.c:357
+msgctxt "GDateTime"
+msgid "PM"
+msgstr "pop"
+
#: ../glib/gdir.c:155
#, c-format
-msgid "Error opening directory '%s': %s"
-msgstr "Napaka med odpiranjem imenika '%s': %s"
+msgid "Error opening directory “%s”: %s"
+msgstr "Napaka med odpiranjem imenika »%s«: %s"
-#: ../glib/gfileutils.c:700 ../glib/gfileutils.c:792
-#, c-format
-msgid "Could not allocate %lu byte to read file \"%s\""
-msgid_plural "Could not allocate %lu bytes to read file \"%s\""
+#: ../glib/gfileutils.c:706 ../glib/gfileutils.c:798
+#, fuzzy, c-format
+#| msgid "Could not allocate %lu byte to read file \"%s\""
+#| msgid_plural "Could not allocate %lu bytes to read file \"%s\""
+msgid "Could not allocate %lu byte to read file “%s”"
+msgid_plural "Could not allocate %lu bytes to read file “%s”"
msgstr[0] "Ni mogoče dodeliti %lu bajtov za branje datoteke \"%s\""
msgstr[1] "Ni mogoče dodeliti %lu bajta za branje datoteke \"%s\""
msgstr[2] "Ni mogoče dodeliti %lu bajtov za branje datoteke \"%s\""
msgstr[3] "Ni mogoče dodeliti %lu bajtov za branje datoteke \"%s\""
-#: ../glib/gfileutils.c:717
+#: ../glib/gfileutils.c:723
#, c-format
-msgid "Error reading file '%s': %s"
-msgstr "Napaka med branjem datoteke '%s': %s"
+msgid "Error reading file “%s”: %s"
+msgstr "Napaka med branjem datoteke »%s«: %s"
-#: ../glib/gfileutils.c:753
+#: ../glib/gfileutils.c:759
#, c-format
-msgid "File \"%s\" is too large"
-msgstr "Datoteka \"%s\" je prevelika."
+msgid "File “%s” is too large"
+msgstr "Datoteka »%s« je prevelika."
-#: ../glib/gfileutils.c:817
+#: ../glib/gfileutils.c:823
#, c-format
-msgid "Failed to read from file '%s': %s"
-msgstr "Branje datoteke '%s' je spodletelo: %s"
+msgid "Failed to read from file “%s”: %s"
+msgstr "Branje datoteke »%s« je spodletelo: %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 "Odpiranje datoteke '%s' je spodletelo: %s"
+msgid "Failed to open file “%s”: %s"
+msgstr "Odpiranje datoteke »%s« je spodletelo: %s"
-#: ../glib/gfileutils.c:877
+#: ../glib/gfileutils.c:883
#, c-format
-msgid "Failed to get attributes of file '%s': fstat() failed: %s"
+msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
msgstr ""
-"Pridobivanje atributov datoteke '%s' je spodletelo: ukaz fstat() ni uspešno "
+"Pridobivanje atributov datoteke »%s« je spodletelo: ukaz fstat() ni uspešno "
"izveden: %s"
-#: ../glib/gfileutils.c:907
+#: ../glib/gfileutils.c:913
#, c-format
-msgid "Failed to open file '%s': fdopen() failed: %s"
-msgstr "Ni mogoče odpreti datoteke '%s': fdopen() ni uspešno izveden: %s"
+msgid "Failed to open file “%s”: fdopen() failed: %s"
+msgstr "Ni mogoče odpreti datoteke »%s«: ukaz fdopen() ni uspešno izveden: %s"
-#: ../glib/gfileutils.c:1006
+#: ../glib/gfileutils.c:1012
#, c-format
-msgid "Failed to rename file '%s' to '%s': g_rename() failed: %s"
+msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
msgstr ""
-"Ni mogoče preimenovati datoteke '%s' v '%s': g_rename() ni uspešno izveden: "
-"%s"
+"Ni mogoče preimenovati datoteke »%s« v »%s«: ukaz g_rename() ni uspešno "
+"izveden: %s"
-#: ../glib/gfileutils.c:1041 ../glib/gfileutils.c:1540
+#: ../glib/gfileutils.c:1047 ../glib/gfileutils.c:1554
#, c-format
-msgid "Failed to create file '%s': %s"
-msgstr "Ni mogoče ustvariti datoteke '%s': %s"
+msgid "Failed to create file “%s”: %s"
+msgstr "Ni mogoče ustvariti datoteke »%s«: %s"
-#: ../glib/gfileutils.c:1068
+#: ../glib/gfileutils.c:1074
#, c-format
-msgid "Failed to write file '%s': write() failed: %s"
-msgstr "Ni mogoče zapisati datoteke '%s': ukaz write() je spodletel: %s"
+msgid "Failed to write file “%s”: write() failed: %s"
+msgstr "Ni mogoče zapisati datoteke »%s«: ukaz write() je spodletel: %s"
-#: ../glib/gfileutils.c:1111
+#: ../glib/gfileutils.c:1117
#, c-format
-msgid "Failed to write file '%s': fsync() failed: %s"
-msgstr "Ni mogoče zapisati datoteke '%s': fsync() ni uspešno izveden: %s"
+msgid "Failed to write file “%s”: fsync() failed: %s"
+msgstr "Ni mogoče zapisati datoteke »%s«: ukaz fsync() ni uspešno izveden: %s"
-#: ../glib/gfileutils.c:1235
+#: ../glib/gfileutils.c:1241
#, c-format
-msgid "Existing file '%s' could not be removed: g_unlink() failed: %s"
+msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
msgstr ""
-"Obstoječe datoteke '%s' ni mogoče odstraniti: g_unlink() ni uspešno izveden: "
-"%s"
+"Obstoječe datoteke »%s« ni mogoče odstraniti: ukaz g_unlink() ni uspešno "
+"izveden: %s"
-#: ../glib/gfileutils.c:1506
+#: ../glib/gfileutils.c:1520
#, c-format
-msgid "Template '%s' invalid, should not contain a '%s'"
-msgstr "Predloga '%s' je neveljavna, saj ne sme vsebovati '%s'"
+msgid "Template “%s” invalid, should not contain a “%s”"
+msgstr "Predloga »%s« je neveljavna, saj ne sme vsebovati »%s«"
-#: ../glib/gfileutils.c:1519
+#: ../glib/gfileutils.c:1533
#, c-format
-msgid "Template '%s' doesn't contain XXXXXX"
-msgstr "Predloga '%s' ne vsebuje XXXXXX"
+msgid "Template “%s” doesn’t contain XXXXXX"
+msgstr "Predloga »%s« ne vsebuje XXXXXX"
-#: ../glib/gfileutils.c:2038
+#: ../glib/gfileutils.c:2058
#, c-format
-msgid "Failed to read the symbolic link '%s': %s"
-msgstr "Ni mogoče prebrati simbolne povezave '%s': %s"
-
-#: ../glib/gfileutils.c:2057
-msgid "Symbolic links not supported"
-msgstr "Simbolne povezave niso podprte"
+msgid "Failed to read the symbolic link “%s”: %s"
+msgstr "Branje simbolne povezave »%s« je spodletelo: %s"
#: ../glib/giochannel.c:1388
#, c-format
-msgid "Could not open converter from '%s' to '%s': %s"
-msgstr "Ni mogoče odpreti pretvornika iz '%s' v '%s': %s"
+msgid "Could not open converter from “%s” to “%s”: %s"
+msgstr "Ni mogoče odpreti pretvornika iz »%s« v »%s«: %s"
#: ../glib/giochannel.c:1733
-msgid "Can't do a raw read in g_io_channel_read_line_string"
+msgid "Can’t do a raw read in g_io_channel_read_line_string"
msgstr "Ni mogoče prebrati g_io_channel_read_line_string"
#: ../glib/giochannel.c:1780 ../glib/giochannel.c:2038
msgstr "Kanal je prekinjen v delnem znaku"
#: ../glib/giochannel.c:1924
-msgid "Can't do a raw read in g_io_channel_read_to_end"
+msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Ni mogoče prebrati v g_io_channel_read_to_end"
-#: ../glib/gkeyfile.c:737
+#: ../glib/gkeyfile.c:736
msgid "Valid key file could not be found in search dirs"
msgstr "Veljavnega ključa v iskanih mapah ni mogoče najti"
msgid "Not a regular file"
msgstr "Ni običajna datoteka"
-#: ../glib/gkeyfile.c:1173
+#: ../glib/gkeyfile.c:1218
#, c-format
msgid ""
-"Key file contains line '%s' which is not a key-value pair, group, or comment"
+"Key file contains line “%s” which is not a key-value pair, group, or comment"
msgstr ""
-"Datoteka s ključem vsebuje vrstico '%s', ki ni ključ-vrednost par, skupina "
-"ali opomba"
+"Datoteka ključa vsebuje vrstico »%s«, ki ni par ključ-vrednost, skupina ali "
+"opomba"
-#: ../glib/gkeyfile.c:1230
+#: ../glib/gkeyfile.c:1275
#, c-format
msgid "Invalid group name: %s"
msgstr "Neveljavno ime skupine: %s"
-#: ../glib/gkeyfile.c:1252
+#: ../glib/gkeyfile.c:1297
msgid "Key file does not start with a group"
msgstr "Datoteka s ključem se ne začne s skupino"
-#: ../glib/gkeyfile.c:1278
+#: ../glib/gkeyfile.c:1323
#, c-format
msgid "Invalid key name: %s"
msgstr "Neveljavno ime ključa: %s"
-#: ../glib/gkeyfile.c:1305
+#: ../glib/gkeyfile.c:1350
#, c-format
-msgid "Key file contains unsupported encoding '%s'"
-msgstr "Datoteka s ključem vsebuje nepodprto kodiranje '%s'"
+msgid "Key file contains unsupported encoding “%s”"
+msgstr "Datoteka ključa vsebuje nepodprto kodiranje »%s«"
-#: ../glib/gkeyfile.c:1548 ../glib/gkeyfile.c:1721 ../glib/gkeyfile.c:3099
-#: ../glib/gkeyfile.c:3162 ../glib/gkeyfile.c:3292 ../glib/gkeyfile.c:3422
-#: ../glib/gkeyfile.c:3566 ../glib/gkeyfile.c:3795 ../glib/gkeyfile.c:3862
+#: ../glib/gkeyfile.c:1593 ../glib/gkeyfile.c:1766 ../glib/gkeyfile.c:3146
+#: ../glib/gkeyfile.c:3209 ../glib/gkeyfile.c:3339 ../glib/gkeyfile.c:3469
+#: ../glib/gkeyfile.c:3613 ../glib/gkeyfile.c:3842 ../glib/gkeyfile.c:3909
#, c-format
-msgid "Key file does not have group '%s'"
-msgstr "Datoteka s ključem ni del skupine '%s'"
+msgid "Key file does not have group “%s”"
+msgstr "Datoteka s ključem ni del skupine »%s«"
-#: ../glib/gkeyfile.c:1676
+#: ../glib/gkeyfile.c:1721
#, c-format
-msgid "Key file does not have key '%s' in group '%s'"
-msgstr "Datoteka s ključem nima ključa '%s' v skupini '%s'"
+msgid "Key file does not have key “%s” in group “%s”"
+msgstr "Datoteka s ključem nima ključa »%s« v skupini »%s«"
-#: ../glib/gkeyfile.c:1838 ../glib/gkeyfile.c:1954
+#: ../glib/gkeyfile.c:1883 ../glib/gkeyfile.c:1999
#, c-format
-msgid "Key file contains key '%s' with value '%s' which is not UTF-8"
+msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
msgstr ""
-"Datoteka s ključem vsebuje ključ '%s' z vrednostjo '%s', ki ni zapisan v "
-"UTF-8 naboru"
+"Datoteka ključa vsebuje ključ »%s« z vrednostjo »%s«, ki ni zapisan v naboru "
+"UTF-8"
-#: ../glib/gkeyfile.c:1858 ../glib/gkeyfile.c:1974 ../glib/gkeyfile.c:2343
+#: ../glib/gkeyfile.c:1903 ../glib/gkeyfile.c:2019 ../glib/gkeyfile.c:2388
#, c-format
msgid ""
-"Key file contains key '%s' which has a value that cannot be interpreted."
+"Key file contains key “%s” which has a value that cannot be interpreted."
msgstr ""
-"Datoteka s ključem vsebuje ključ '%s' z vrednostjo, ki je ni mogoče "
-"obravnavati."
+"Datoteka ključa vsebuje ključ »%s« z vrednostjo, ki je ni mogoče tolmačiti."
-#: ../glib/gkeyfile.c:2560 ../glib/gkeyfile.c:2928
+#: ../glib/gkeyfile.c:2606 ../glib/gkeyfile.c:2975
#, c-format
msgid ""
-"Key file contains key '%s' in group '%s' which has a value that cannot be "
+"Key file contains key “%s” in group “%s” which has a value that cannot be "
"interpreted."
msgstr ""
-"Datoteka s ključem vsebuje ključ '%s' v skupini '%s' z vrednostjo, ki je ni "
-"mogoče obravnavati."
+"Datoteka ključa vsebuje ključ »%s« v skupini »%s« z vrednostjo, ki je ni "
+"mogoče tolmačiti."
-#: ../glib/gkeyfile.c:2638 ../glib/gkeyfile.c:2715
+#: ../glib/gkeyfile.c:2684 ../glib/gkeyfile.c:2761
#, c-format
-msgid "Key '%s' in group '%s' has value '%s' where %s was expected"
+msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
msgstr ""
-"Ključ '%s' v skupini '%s' ima vrednost '%s', pričakovana pa je vrednost %s."
+"Ključ »%s« v skupini »%s« ima vrednost »%s«, pričakovana pa je vrednost %s."
-#: ../glib/gkeyfile.c:4102
+#: ../glib/gkeyfile.c:4149
msgid "Key file contains escape character at end of line"
msgstr "Datoteka s ključem vsebuje ubežni znak na koncu vrstice"
-#: ../glib/gkeyfile.c:4124
+#: ../glib/gkeyfile.c:4171
#, c-format
-msgid "Key file contains invalid escape sequence '%s'"
-msgstr "Datoteka ključa vsebuje neveljavno ubežno zaporedje '%s'"
+msgid "Key file contains invalid escape sequence “%s”"
+msgstr "Datoteka ključa vsebuje neveljavno ubežno zaporedje »%s«"
-#: ../glib/gkeyfile.c:4266
+#: ../glib/gkeyfile.c:4315
#, c-format
-msgid "Value '%s' cannot be interpreted as a number."
-msgstr "Vrednosti '%s' ni mogoče obravnavati kot število."
+msgid "Value “%s” cannot be interpreted as a number."
+msgstr "Vrednosti »%s« ni mogoče obravnavati kot število."
-#: ../glib/gkeyfile.c:4280
+#: ../glib/gkeyfile.c:4329
#, c-format
-msgid "Integer value '%s' out of range"
-msgstr "Celoštevilska vrednost '%s' izven obsega"
+msgid "Integer value “%s” out of range"
+msgstr "Celoštevilska vrednost »%s« je izven obsega"
-#: ../glib/gkeyfile.c:4313
+#: ../glib/gkeyfile.c:4362
#, c-format
-msgid "Value '%s' cannot be interpreted as a float number."
-msgstr "Vrednosti '%s' ni mogoče obravnavati kot število s plavajočo vejico."
+msgid "Value “%s” cannot be interpreted as a float number."
+msgstr "Vrednosti »%s« ni mogoče obravnavati kot število s plavajočo vejico."
-#: ../glib/gkeyfile.c:4350
+#: ../glib/gkeyfile.c:4401
#, c-format
-msgid "Value '%s' cannot be interpreted as a boolean."
-msgstr "Vrednosti '%s' ni mogoče obravnavati kot logično Boolovo vrednost."
+msgid "Value “%s” cannot be interpreted as a boolean."
+msgstr "Vrednosti »%s« ni mogoče obravnavati kot logično Boolovo vrednost."
#: ../glib/gmappedfile.c:129
#, c-format
-msgid "Failed to get attributes of file '%s%s%s%s': fstat() failed: %s"
+msgid "Failed to get attributes of file “%s%s%s%s”: fstat() failed: %s"
msgstr ""
-"Ni mogoče pridobiti atributov datoteke '%s%s%s%s': ukaz fstat() je "
+"Ni mogoče pridobiti atributov datoteke »%s%s%s%s«: ukaz fstat() je "
"spodletel: %s"
#: ../glib/gmappedfile.c:195
msgid "Failed to map %s%s%s%s: mmap() failed: %s"
msgstr "Ni mogoče preslikati %s%s%s%s: ukaz mmap() nje spodletel: %s"
-#: ../glib/gmappedfile.c:261
+#: ../glib/gmappedfile.c:262
#, c-format
-msgid "Failed to open file '%s': open() failed: %s"
-msgstr "Ni mogoče odpreti datoteke '%s': open() ni uspešno izveden: %s"
+msgid "Failed to open file “%s”: open() failed: %s"
+msgstr ""
+"Odpiranje datoteke »%s« je spodletelo: ukaz open() ni uspešno izveden: %s"
-#: ../glib/gmarkup.c:398 ../glib/gmarkup.c:440
+#: ../glib/gmarkup.c:397 ../glib/gmarkup.c:439
#, c-format
msgid "Error on line %d char %d: "
msgstr "Napaka v vrstici %d, znak %d:"
-#: ../glib/gmarkup.c:462 ../glib/gmarkup.c:545
+#: ../glib/gmarkup.c:461 ../glib/gmarkup.c:544
#, c-format
msgid "Invalid UTF-8 encoded text in name - not valid '%s'"
msgstr "Neveljavno UTF-8 kodirano besedilo imena - neveljaven '%s'"
-#: ../glib/gmarkup.c:473
+#: ../glib/gmarkup.c:472
#, c-format
msgid "'%s' is not a valid name"
msgstr "'%s' ni veljavno ime"
-#: ../glib/gmarkup.c:489
+#: ../glib/gmarkup.c:488
#, c-format
msgid "'%s' is not a valid name: '%c'"
msgstr "'%s' ni veljavno ime: '%c'"
-#: ../glib/gmarkup.c:599
+#: ../glib/gmarkup.c:598
#, c-format
msgid "Error on line %d: %s"
msgstr "Napaka v vrstici %d: %s"
-#: ../glib/gmarkup.c:676
+#: ../glib/gmarkup.c:675
#, c-format
msgid ""
"Failed to parse '%-.*s', which should have been a digit inside a character "
"Ni mogoče razčleniti '%-.*s', ki bi morala določati številko znotraj sklica "
"znaka (na primer ê) - morda je številka prevelika"
-#: ../glib/gmarkup.c:688
+#: ../glib/gmarkup.c:687
msgid ""
"Character reference did not end with a semicolon; most likely you used an "
"ampersand character without intending to start an entity - escape ampersand "
"Sklic znaka se ni končal s podpičjem; najverjetneje je uporabljen znak '&' "
"brez povezave z entiteto - znak '&' mora biti zapisan kot '&'"
-#: ../glib/gmarkup.c:714
+#: ../glib/gmarkup.c:713
#, c-format
msgid "Character reference '%-.*s' does not encode a permitted character"
msgstr "Sklic znaka '%-.*s' ne kodira dovoljenega znaka"
-#: ../glib/gmarkup.c:752
+#: ../glib/gmarkup.c:751
msgid ""
"Empty entity '&;' seen; valid entities are: & " < > '"
msgstr ""
"Zaznana prazna entiteta '&;'; veljavne entitete so: & " < > "
"'"
-#: ../glib/gmarkup.c:760
+#: ../glib/gmarkup.c:759
#, c-format
msgid "Entity name '%-.*s' is not known"
msgstr "Neznano ime entitete '%-.*s'"
-#: ../glib/gmarkup.c:765
+#: ../glib/gmarkup.c:764
msgid ""
"Entity did not end with a semicolon; most likely you used an ampersand "
"character without intending to start an entity - escape ampersand as &"
"Entiteta se ne zaključi s podpičjem; najverjetneje je uporabljen znak '&' "
"brez povezave z entiteto - znak '&' mora biti zapisan kot '&'"
-#: ../glib/gmarkup.c:1171
+#: ../glib/gmarkup.c:1170
msgid "Document must begin with an element (e.g. <book>)"
msgstr "Dokument se mora začeti z predmetom (na primer <book>)"
-#: ../glib/gmarkup.c:1211
+#: ../glib/gmarkup.c:1210
#, c-format
msgid ""
"'%s' is not a valid character following a '<' character; it may not begin an "
"'%s' ni veljaven znak, kadar sledi znaku '<'; morda se ne začne z imenom "
"predmeta"
-#: ../glib/gmarkup.c:1253
+#: ../glib/gmarkup.c:1252
#, c-format
msgid ""
"Odd character '%s', expected a '>' character to end the empty-element tag "
"Nenavaden znak '%s'. Pričakovan znak je '>', da se zaključi oznako predmeta "
"'%s'"
-#: ../glib/gmarkup.c:1334
+#: ../glib/gmarkup.c:1333
#, c-format
msgid ""
"Odd character '%s', expected a '=' after attribute name '%s' of element '%s'"
"Nenavaden znak '%s'. Za imenom atributa '%s' (predmeta '%s') je pričakovan "
"znak '='."
-#: ../glib/gmarkup.c:1375
+#: ../glib/gmarkup.c:1374
#, c-format
msgid ""
"Odd character '%s', expected a '>' or '/' character to end the start tag of "
"predmeta '%s' ali atribut; morda je uporabljen neveljaven znak v imenu "
"atributa"
-#: ../glib/gmarkup.c:1419
+#: ../glib/gmarkup.c:1418
#, c-format
msgid ""
"Odd character '%s', expected an open quote mark after the equals sign when "
"Nenavaden znak '%s'. Za enačajem je pričakovan narekovaj, znotraj katerega "
"je podana vrednost atributa '%s' predmeta '%s'."
-#: ../glib/gmarkup.c:1552
+#: ../glib/gmarkup.c:1551
#, c-format
msgid ""
"'%s' is not a valid character following the characters '</'; '%s' may not "
msgstr ""
"'%s' ni veljaven znak za znakoma '</'; imena predmeta ni mogoče začeti z '%s'"
-#: ../glib/gmarkup.c:1588
+#: ../glib/gmarkup.c:1587
#, c-format
msgid ""
"'%s' is not a valid character following the close element name '%s'; the "
"Znak '%s' ni veljaven, kadar sledi zaprtju imena predmeta '%s'; dovoljen "
"znak je '>'"
-#: ../glib/gmarkup.c:1599
+#: ../glib/gmarkup.c:1598
#, c-format
msgid "Element '%s' was closed, no element is currently open"
msgstr "Predmet '%s' je zaprt, trenutno ni odprtega predmeta"
-#: ../glib/gmarkup.c:1608
+#: ../glib/gmarkup.c:1607
#, c-format
msgid "Element '%s' was closed, but the currently open element is '%s'"
msgstr "Predmet '%s' je zaprt, še vedno pa je odprt predmet '%s'"
-#: ../glib/gmarkup.c:1761
+#: ../glib/gmarkup.c:1760
msgid "Document was empty or contained only whitespace"
msgstr "Dokument je prazen ali pa vsebuje le presledne znake"
-#: ../glib/gmarkup.c:1775
+#: ../glib/gmarkup.c:1774
msgid "Document ended unexpectedly just after an open angle bracket '<'"
msgstr "Dokument nepričakovano zaključen takoj za odprtjem predmeta '<'"
-#: ../glib/gmarkup.c:1783 ../glib/gmarkup.c:1828
+#: ../glib/gmarkup.c:1782 ../glib/gmarkup.c:1827
#, c-format
msgid ""
"Document ended unexpectedly with elements still open - '%s' was the last "
"Dokument nepričakovano zaključen s še odprtimi predmeti - '%s' je zadnji "
"odprt predmet"
-#: ../glib/gmarkup.c:1791
+#: ../glib/gmarkup.c:1790
#, c-format
msgid ""
"Document ended unexpectedly, expected to see a close angle bracket ending "
"Dokument nepričakovano zaključen, pričakovan je zaključni zaklepaj oznake <"
"%s/>"
-#: ../glib/gmarkup.c:1797
+#: ../glib/gmarkup.c:1796
msgid "Document ended unexpectedly inside an element name"
msgstr "Dokument nepričakovano zaključen sredi imena predmeta"
-#: ../glib/gmarkup.c:1803
+#: ../glib/gmarkup.c:1802
msgid "Document ended unexpectedly inside an attribute name"
msgstr "Dokument nepričakovano zaključen sredi imena atributa"
-#: ../glib/gmarkup.c:1808
+#: ../glib/gmarkup.c:1807
msgid "Document ended unexpectedly inside an element-opening tag."
msgstr "Dokument nepričakovano zaključen sredi oznake za odprtje predmeta."
-#: ../glib/gmarkup.c:1814
+#: ../glib/gmarkup.c:1813
msgid ""
"Document ended unexpectedly after the equals sign following an attribute "
"name; no attribute value"
"Dokument nepričakovano zaključen za enačajem, ki sledil imenu atributa; ni "
"določena vrednosti atributa"
-#: ../glib/gmarkup.c:1821
+#: ../glib/gmarkup.c:1820
msgid "Document ended unexpectedly while inside an attribute value"
msgstr "Dokument nepričakovano zaključen sredi vrednosti atributa"
-#: ../glib/gmarkup.c:1837
+#: ../glib/gmarkup.c:1836
#, c-format
msgid "Document ended unexpectedly inside the close tag for element '%s'"
msgstr "Dokument nepričakovano zaključen sredi oznake zaprtja predmeta '%s'"
-#: ../glib/gmarkup.c:1843
+#: ../glib/gmarkup.c:1842
msgid "Document ended unexpectedly inside a comment or processing instruction"
msgstr "Dokument nepričakovano zaključen sredi opombe ali ukaza"
-#: ../glib/goption.c:857
-msgid "Usage:"
-msgstr "Uporaba:"
-
#: ../glib/goption.c:861
-msgid "[OPTION...]"
+msgid "[OPTION…]"
msgstr "[MOŽNOST ...]"
#: ../glib/goption.c:977
#: ../glib/goption.c:1113 ../glib/goption.c:1183
#, c-format
-msgid "Cannot parse integer value '%s' for %s"
-msgstr "Ni mogoče razčleniti celoštevilske vrednosti '%s' za %s"
+msgid "Cannot parse integer value “%s” for %s"
+msgstr "Ni mogoče razčleniti celoštevilske vrednosti »%s« za %s"
#: ../glib/goption.c:1123 ../glib/goption.c:1191
#, c-format
-msgid "Integer value '%s' for %s out of range"
-msgstr "Celoštevilska vrednost '%s' za %s izven obsega"
+msgid "Integer value “%s” for %s out of range"
+msgstr "Celoštevilska vrednost »%s« za %s je izven obsega"
#: ../glib/goption.c:1148
#, c-format
-msgid "Cannot parse double value '%s' for %s"
-msgstr "Ni mogoče razčleniti dvojne vrednosti '%s' za %s"
+msgid "Cannot parse double value “%s” for %s"
+msgstr "Ni mogoče razčleniti dvojne vrednosti »%s« za %s"
#: ../glib/goption.c:1156
#, c-format
-msgid "Double value '%s' for %s out of range"
-msgstr "Vrednost dvojne velikosti '%s' za %s izven obsega"
+msgid "Double value “%s” for %s out of range"
+msgstr "Dvojna vrednost »%s« za %s je izven obsega"
-#: ../glib/goption.c:1442 ../glib/goption.c:1521
+#: ../glib/goption.c:1448 ../glib/goption.c:1527
#, c-format
msgid "Error parsing option %s"
msgstr "Napaka med razčlenjevanjem %s"
-#: ../glib/goption.c:1552 ../glib/goption.c:1665
+#: ../glib/goption.c:1558 ../glib/goption.c:1671
#, c-format
msgid "Missing argument for %s"
msgstr "Manjka argument za %s"
-#: ../glib/goption.c:2126
+#: ../glib/goption.c:2132
#, c-format
msgid "Unknown option %s"
msgstr "Neznana možnost %s"
-#: ../glib/gregex.c:258
+#: ../glib/gregex.c:257
msgid "corrupted object"
msgstr "pokvarjen predmet"
-#: ../glib/gregex.c:260
+#: ../glib/gregex.c:259
msgid "internal error or corrupted object"
msgstr "notranja napaka ali pokvarjen predmet"
-#: ../glib/gregex.c:262
+#: ../glib/gregex.c:261
msgid "out of memory"
msgstr "primanjkuje pomnilnika"
-#: ../glib/gregex.c:267
+#: ../glib/gregex.c:266
msgid "backtracking limit reached"
msgstr "dosežena omejitev sledenja nazaj"
-#: ../glib/gregex.c:279 ../glib/gregex.c:287
+#: ../glib/gregex.c:278 ../glib/gregex.c:286
msgid "the pattern contains items not supported for partial matching"
msgstr "vzorec vsebuje predmete, ki niso podprti za delno iskanje zadetkov"
-#: ../glib/gregex.c:289
+#: ../glib/gregex.c:280
+msgid "internal error"
+msgstr "notranja napaka"
+
+#: ../glib/gregex.c:288
msgid "back references as conditions are not supported for partial matching"
msgstr "predhodne povezave, kot pogoji, niso podprti za delno primerjavo"
-#: ../glib/gregex.c:298
+#: ../glib/gregex.c:297
msgid "recursion limit reached"
msgstr "dosežena omejitev globine drevesne ravni"
-#: ../glib/gregex.c:300
+#: ../glib/gregex.c:299
msgid "invalid combination of newline flags"
msgstr "nepravilna sestava zastavic nove vrstice"
-#: ../glib/gregex.c:302
+#: ../glib/gregex.c:301
msgid "bad offset"
msgstr "slab odmik"
-#: ../glib/gregex.c:304
+#: ../glib/gregex.c:303
msgid "short utf8"
msgstr "kratki utf8"
-#: ../glib/gregex.c:306
+#: ../glib/gregex.c:305
msgid "recursion loop"
msgstr "rekurzivna zanka"
-#: ../glib/gregex.c:310
+#: ../glib/gregex.c:309
msgid "unknown error"
msgstr "neznana napaka"
-#: ../glib/gregex.c:330
+#: ../glib/gregex.c:329
msgid "\\ at end of pattern"
msgstr "\\ na koncu vzorca"
-#: ../glib/gregex.c:333
+#: ../glib/gregex.c:332
msgid "\\c at end of pattern"
msgstr "\\c na koncu vzorca"
-#: ../glib/gregex.c:336
+#: ../glib/gregex.c:335
msgid "unrecognized character following \\"
msgstr "neprepoznan znak sledi \\"
-#: ../glib/gregex.c:339
+#: ../glib/gregex.c:338
msgid "numbers out of order in {} quantifier"
msgstr "številke niso zapisane pravilno v {} količilniku"
-#: ../glib/gregex.c:342
+#: ../glib/gregex.c:341
msgid "number too big in {} quantifier"
msgstr "številke so prevelike v {} količilniku"
-#: ../glib/gregex.c:345
+#: ../glib/gregex.c:344
msgid "missing terminating ] for character class"
msgstr "manjkajoč zaključni znak ] za znakovni razred"
-#: ../glib/gregex.c:348
+#: ../glib/gregex.c:347
msgid "invalid escape sequence in character class"
msgstr "neveljavno ubežno zaporedje v znakovnem razredu"
-#: ../glib/gregex.c:351
+#: ../glib/gregex.c:350
msgid "range out of order in character class"
msgstr "nepravilen obseg v znakovnem razredu"
-#: ../glib/gregex.c:354
+#: ../glib/gregex.c:353
msgid "nothing to repeat"
msgstr "ni mogoče ponoviti"
-#: ../glib/gregex.c:358
+#: ../glib/gregex.c:357
msgid "unexpected repeat"
msgstr "nepričakovana ponovitev"
-#: ../glib/gregex.c:361
+#: ../glib/gregex.c:360
msgid "unrecognized character after (? or (?-"
msgstr "neprepoznan znak za (? ali (?-"
-#: ../glib/gregex.c:364
+#: ../glib/gregex.c:363
msgid "POSIX named classes are supported only within a class"
msgstr "POSIX razredi so podprti le znotraj razreda"
-#: ../glib/gregex.c:367
+#: ../glib/gregex.c:366
msgid "missing terminating )"
msgstr "manjka zaključujoči )"
-#: ../glib/gregex.c:370
+#: ../glib/gregex.c:369
msgid "reference to non-existent subpattern"
msgstr "povezava na neobstoječ podrejen vzorec"
-#: ../glib/gregex.c:373
+#: ../glib/gregex.c:372
msgid "missing ) after comment"
msgstr "manjka ) po opombi"
-#: ../glib/gregex.c:376
+#: ../glib/gregex.c:375
msgid "regular expression is too large"
msgstr "logični izraz je preobsežen"
-#: ../glib/gregex.c:379
+#: ../glib/gregex.c:378
msgid "failed to get memory"
msgstr "napaka med pridobivanjem pomnilnika"
-#: ../glib/gregex.c:383
+#: ../glib/gregex.c:382
msgid ") without opening ("
msgstr ") brez odpirajočega ("
-#: ../glib/gregex.c:387
+#: ../glib/gregex.c:386
msgid "code overflow"
msgstr "prekoračitev kode"
-#: ../glib/gregex.c:391
+#: ../glib/gregex.c:390
msgid "unrecognized character after (?<"
msgstr "neprepoznan znak za (?<"
-#: ../glib/gregex.c:394
+#: ../glib/gregex.c:393
msgid "lookbehind assertion is not fixed length"
msgstr "povratna trditev ni določene dolžine"
-#: ../glib/gregex.c:397
+#: ../glib/gregex.c:396
msgid "malformed number or name after (?("
msgstr "nepravilno oblikovano ime ali številka za (?("
-#: ../glib/gregex.c:400
+#: ../glib/gregex.c:399
msgid "conditional group contains more than two branches"
msgstr "pogojna skupina vsebuje več kot dve veji"
-#: ../glib/gregex.c:403
+#: ../glib/gregex.c:402
msgid "assertion expected after (?("
msgstr "trditev pričakovana za (?("
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
#.
-#: ../glib/gregex.c:410
+#: ../glib/gregex.c:409
msgid "(?R or (?[+-]digits must be followed by )"
msgstr "(?R ali (?[+-] številom mora slediti )"
-#: ../glib/gregex.c:413
+#: ../glib/gregex.c:412
msgid "unknown POSIX class name"
msgstr "neznano POSIX ime razreda"
-#: ../glib/gregex.c:416
+#: ../glib/gregex.c:415
msgid "POSIX collating elements are not supported"
msgstr "POSIX zbirni predmeti niso podprti"
-#: ../glib/gregex.c:419
+#: ../glib/gregex.c:418
msgid "character value in \\x{...} sequence is too large"
msgstr "znakovna vrednost v zaporedju \\x{...} je predolga"
-#: ../glib/gregex.c:422
+#: ../glib/gregex.c:421
msgid "invalid condition (?(0)"
msgstr "neveljaven pogoj (?(0)"
-#: ../glib/gregex.c:425
+#: ../glib/gregex.c:424
msgid "\\C not allowed in lookbehind assertion"
msgstr "\\C ni dovoljen v povratnih trditvah"
-#: ../glib/gregex.c:432
+#: ../glib/gregex.c:431
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
msgstr "ubežna zaporedja \\L, \\l, \\N{name}, \\U in \\u niso podprta"
-#: ../glib/gregex.c:435
+#: ../glib/gregex.c:434
msgid "recursive call could loop indefinitely"
msgstr "drevesni klic opravila se lahko izvaja v neskončnost"
-#: ../glib/gregex.c:439
+#: ../glib/gregex.c:438
msgid "unrecognized character after (?P"
msgstr "neprepoznan znak za (?P"
-#: ../glib/gregex.c:442
+#: ../glib/gregex.c:441
msgid "missing terminator in subpattern name"
msgstr "manjkajoč zaključni znak v imenu podrejenega vzorca"
-#: ../glib/gregex.c:445
+#: ../glib/gregex.c:444
msgid "two named subpatterns have the same name"
msgstr "dva imenovana podrejena vzorca imata enako ime"
-#: ../glib/gregex.c:448
+#: ../glib/gregex.c:447
msgid "malformed \\P or \\p sequence"
msgstr "nepravilno oblikovano \\P ali \\p zaporedje"
-#: ../glib/gregex.c:451
+#: ../glib/gregex.c:450
msgid "unknown property name after \\P or \\p"
msgstr "neznano ime lastnosti za \\P ali \\p"
-#: ../glib/gregex.c:454
+#: ../glib/gregex.c:453
msgid "subpattern name is too long (maximum 32 characters)"
msgstr "ime podrejenega vzorca je predolgo (največ 32 znakov)"
-#: ../glib/gregex.c:457
+#: ../glib/gregex.c:456
msgid "too many named subpatterns (maximum 10,000)"
msgstr "preveč imenovanih podrejenih vzorcev (največ 10,000)"
-#: ../glib/gregex.c:460
+#: ../glib/gregex.c:459
msgid "octal value is greater than \\377"
msgstr "osmiška vrednost je večja kot \\377"
-#: ../glib/gregex.c:464
+#: ../glib/gregex.c:463
msgid "overran compiling workspace"
msgstr "pretečena delovna površina prevajanja kode"
-#: ../glib/gregex.c:468
+#: ../glib/gregex.c:467
msgid "previously-checked referenced subpattern not found"
msgstr "predhodno preverjene povezave podrejenega vzorca ni mogoče najti"
-#: ../glib/gregex.c:471
+#: ../glib/gregex.c:470
msgid "DEFINE group contains more than one branch"
msgstr "DEFINE skupina vsebuje več kot eno vejo"
-#: ../glib/gregex.c:474
+#: ../glib/gregex.c:473
msgid "inconsistent NEWLINE options"
msgstr "nepopolna NEWLINE možnost"
-#: ../glib/gregex.c:477
+#: ../glib/gregex.c:476
msgid ""
"\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
"or by a plain number"
"\\g ne sledi ime oz. število v oklepajih, oglatih oklepajih ali narekovajih, "
"niti navadno število"
-#: ../glib/gregex.c:481
+#: ../glib/gregex.c:480
msgid "a numbered reference must not be zero"
msgstr "oštevilčen sklic ne sme biti ničeln"
-#: ../glib/gregex.c:484
+#: ../glib/gregex.c:483
msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr "argument ni dovoljen za (*ACCEPT), (*FAIL) ali (*COMMIT)"
-#: ../glib/gregex.c:487
+#: ../glib/gregex.c:486
msgid "(*VERB) not recognized"
msgstr "(*VERB) ni prepoznan"
-#: ../glib/gregex.c:490
+#: ../glib/gregex.c:489
msgid "number is too big"
msgstr "številka je prevelika"
-#: ../glib/gregex.c:493
+#: ../glib/gregex.c:492
msgid "missing subpattern name after (?&"
msgstr "manjkajoče ime podrejenega vzorca po (?&"
-#: ../glib/gregex.c:496
+#: ../glib/gregex.c:495
msgid "digit expected after (?+"
msgstr "pričakovana števka po "
-#: ../glib/gregex.c:499
+#: ../glib/gregex.c:498
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr "] je neveljaven podatkovni znak v združljivostnem načinu JavaScript"
-#: ../glib/gregex.c:502
+#: ../glib/gregex.c:501
msgid "different names for subpatterns of the same number are not allowed"
msgstr "različna imena podrejenih vzorcev z isto številko niso dovoljena"
-#: ../glib/gregex.c:505
+#: ../glib/gregex.c:504
msgid "(*MARK) must have an argument"
msgstr "(*MARK) mora obvezno imeti argument"
-#: ../glib/gregex.c:508
+#: ../glib/gregex.c:507
msgid "\\c must be followed by an ASCII character"
msgstr "\\c mora slediti znak ASCII"
-#: ../glib/gregex.c:511
+#: ../glib/gregex.c:510
msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
msgstr "\\k ne sledi ime v oklepajih, oglatih oklepajih ali narekovajih"
-#: ../glib/gregex.c:514
+#: ../glib/gregex.c:513
msgid "\\N is not supported in a class"
msgstr "\\N ni podprto v razredu"
-#: ../glib/gregex.c:517
+#: ../glib/gregex.c:516
msgid "too many forward references"
msgstr "preveč sklicev s preskokom"
-#: ../glib/gregex.c:520
+#: ../glib/gregex.c:519
msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
msgstr "ime je predolgo v (*MARK), (*PRUNE), (*SKIP) ali (*THEN)"
-#: ../glib/gregex.c:523
+#: ../glib/gregex.c:522
msgid "character value in \\u.... sequence is too large"
msgstr "znakovna vrednost v zaporedju \\u.... je predolga"
-#: ../glib/gregex.c:746 ../glib/gregex.c:1973
+#: ../glib/gregex.c:745 ../glib/gregex.c:1977
#, c-format
msgid "Error while matching regular expression %s: %s"
msgstr "Napaka med primerjanjem logičnega izraza %s: %s"
-#: ../glib/gregex.c:1317
+#: ../glib/gregex.c:1316
msgid "PCRE library is compiled without UTF8 support"
msgstr "Knjižnica PCRE je pretvorjena brez UTF-8 podpore"
-#: ../glib/gregex.c:1321
+#: ../glib/gregex.c:1320
msgid "PCRE library is compiled without UTF8 properties support"
msgstr "Knjižnica PCRE je pretvorjena brez lastnosti UTF-8 podpore"
-#: ../glib/gregex.c:1329
+#: ../glib/gregex.c:1328
msgid "PCRE library is compiled with incompatible options"
msgstr "Knjižnica PCRE je prevedena brez možnosti nezdružljivosti"
-#: ../glib/gregex.c:1358
+#: ../glib/gregex.c:1357
#, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "Napaka med prilagajanjem logičnega izraza %s: %s"
-#: ../glib/gregex.c:1438
+#: ../glib/gregex.c:1437
#, c-format
msgid "Error while compiling regular expression %s at char %d: %s"
msgstr "Napaka med pretvarjanjem logičnega izraza %s pri znaku %d: %s"
-#: ../glib/gregex.c:2409
-msgid "hexadecimal digit or '}' expected"
-msgstr "šestnajstiško število ali pa pričakovan '}'"
+#: ../glib/gregex.c:2413
+msgid "hexadecimal digit or “}” expected"
+msgstr "šestnajstiško število ali pa manjka » } «"
-#: ../glib/gregex.c:2425
+#: ../glib/gregex.c:2429
msgid "hexadecimal digit expected"
msgstr "pričakovano šestnajstiško število"
-#: ../glib/gregex.c:2465
-msgid "missing '<' in symbolic reference"
-msgstr "manjkajoč znak '<' v simbolni povezavi"
+#: ../glib/gregex.c:2469
+msgid "missing “<” in symbolic reference"
+msgstr "manjkaja znak » < « v simbolni povezavi"
-#: ../glib/gregex.c:2474
+#: ../glib/gregex.c:2478
msgid "unfinished symbolic reference"
msgstr "nedokončana simbolna povezava"
-#: ../glib/gregex.c:2481
+#: ../glib/gregex.c:2485
msgid "zero-length symbolic reference"
msgstr "simbolna povezava nične dolžine"
-#: ../glib/gregex.c:2492
+#: ../glib/gregex.c:2496
msgid "digit expected"
msgstr "pričakovano število"
-#: ../glib/gregex.c:2510
+#: ../glib/gregex.c:2514
msgid "illegal symbolic reference"
msgstr "neveljavna simbolna povezava"
-#: ../glib/gregex.c:2572
-msgid "stray final '\\'"
-msgstr "obidi končna '\\'"
-
#: ../glib/gregex.c:2576
+msgid "stray final “\\”"
+msgstr "obidi končna » \\ «"
+
+#: ../glib/gregex.c:2580
msgid "unknown escape sequence"
msgstr "neznano ubežno zaporedje"
-#: ../glib/gregex.c:2586
+#: ../glib/gregex.c:2590
#, c-format
-msgid "Error while parsing replacement text \"%s\" at char %lu: %s"
-msgstr "Napaka med razčlenjevanjem besedila zamenjave \"%s\" pri znaku %lu: %s"
+msgid "Error while parsing replacement text “%s” at char %lu: %s"
+msgstr "Napaka med razčlenjevanjem besedila zamenjave »%s« pri znaku %lu: %s"
-#: ../glib/gshell.c:96
-msgid "Quoted text doesn't begin with a quotation mark"
+#: ../glib/gshell.c:94
+msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "Navedeno besedilo se ne začne z narekovajem"
-#: ../glib/gshell.c:186
+#: ../glib/gshell.c:184
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "V ukazni vrstici ali v navedenem besedilu manjka končni narekovaj"
-#: ../glib/gshell.c:582
+#: ../glib/gshell.c:580
#, c-format
-msgid "Text ended just after a '\\' character. (The text was '%s')"
-msgstr "Besedilo končano takoj po znaku '\\'. (Besedilo je '%s')"
+msgid "Text ended just after a “\\” character. (The text was “%s”)"
+msgstr "Besedilo je končano takoj za znakom » \\ « (besedilo je »%s«)."
-#: ../glib/gshell.c:589
+#: ../glib/gshell.c:587
#, c-format
-msgid "Text ended before matching quote was found for %c. (The text was '%s')"
+msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
msgstr ""
-"Besedilo končano preden je bil najden zaključni narekovaj za %c. (besedilo "
-"je '%s')"
+"Besedilo je končano pred zaključnim narekovajem za %c (besedilo je »%s«)."
-#: ../glib/gshell.c:601
+#: ../glib/gshell.c:599
msgid "Text was empty (or contained only whitespace)"
msgstr "Besedilo je bilo prazno (ali pa vsebuje le presledne znake)"
-#: ../glib/gspawn.c:209
+#: ../glib/gspawn.c:250
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Ni mogoče prebrati podatkov podrejenega procesa (%s)"
-#: ../glib/gspawn.c:353
+#: ../glib/gspawn.c:394
#, c-format
msgid "Unexpected error in select() reading data from a child process (%s)"
msgstr ""
"Nepričakovana napaka branja podatkov v opravilu select() podrejenega "
"opravila (%s)"
-#: ../glib/gspawn.c:438
+#: ../glib/gspawn.c:479
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Nepričakovana napaka v waitpid() (%s)"
-#: ../glib/gspawn.c:844 ../glib/gspawn-win32.c:1233
+#: ../glib/gspawn.c:886 ../glib/gspawn-win32.c:1231
#, c-format
msgid "Child process exited with code %ld"
msgstr "Podrejeni proces se je zaključil s kodo %ld"
-#: ../glib/gspawn.c:852
+#: ../glib/gspawn.c:894
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Podrejeni proces je uničen s signalom %ld"
-#: ../glib/gspawn.c:859
+#: ../glib/gspawn.c:901
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Podrejeni proces se je ustavil s signalom %ld"
-#: ../glib/gspawn.c:866
+#: ../glib/gspawn.c:908
#, c-format
msgid "Child process exited abnormally"
msgstr "Podrejeni proces se je zaključil nenaravno"
-#: ../glib/gspawn.c:1271 ../glib/gspawn-win32.c:339 ../glib/gspawn-win32.c:347
+#: ../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 "Ni mogoče prebrati iz cevi podrejenega procesa (%s)"
-#: ../glib/gspawn.c:1341
+#: ../glib/gspawn.c:1383
#, c-format
msgid "Failed to fork (%s)"
msgstr "Ni mogoča razvejitev (%s)"
-#: ../glib/gspawn.c:1490 ../glib/gspawn-win32.c:370
+#: ../glib/gspawn.c:1532 ../glib/gspawn-win32.c:368
#, c-format
-msgid "Failed to change to directory '%s' (%s)"
-msgstr "Ni mogoče spremeniti v mapo '%s' (%s)"
+msgid "Failed to change to directory “%s” (%s)"
+msgstr "Ni mogoče spremeniti v mapo »%s« (%s)"
-#: ../glib/gspawn.c:1500
+#: ../glib/gspawn.c:1542
#, c-format
-msgid "Failed to execute child process \"%s\" (%s)"
-msgstr "Ni mogoče izvesti podrejenega procesa \"%s\" (%s)"
+msgid "Failed to execute child process “%s” (%s)"
+msgstr "Ni mogoče izvesti podrejenega opravila »%s« (%s)"
-#: ../glib/gspawn.c:1510
+#: ../glib/gspawn.c:1552
#, c-format
msgid "Failed to redirect output or input of child process (%s)"
msgstr "Ni mogoče preusmeriti vhoda ali izhoda podrejenega procesa (%s)"
-#: ../glib/gspawn.c:1519
+#: ../glib/gspawn.c:1561
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Ni mogoče razvejiti podrejenega procesa (%s)"
-#: ../glib/gspawn.c:1527
+#: ../glib/gspawn.c:1569
#, c-format
-msgid "Unknown error executing child process \"%s\""
-msgstr "Neznana napaka med izvajanjem podrejenega procesa \"%s\""
+msgid "Unknown error executing child process “%s”"
+msgstr "Neznana napaka med izvajanjem podrejenega opravila »%s«"
-#: ../glib/gspawn.c:1551
+#: ../glib/gspawn.c:1593
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Ni mogoče prebrati dovolj podatkov iz cevi podrejenega procesa (%s)"
-#: ../glib/gspawn-win32.c:283
+#: ../glib/gspawn-win32.c:281
msgid "Failed to read data from child process"
msgstr "Ni mogoče prebrati podatkov iz opravila podrejenega predmeta"
-#: ../glib/gspawn-win32.c:300
+#: ../glib/gspawn-win32.c:298
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Ni mogoče ustvariti cevi za stik z opravilom podrejenega predmeta (%s)"
-#: ../glib/gspawn-win32.c:376 ../glib/gspawn-win32.c:495
+#: ../glib/gspawn-win32.c:374 ../glib/gspawn-win32.c:493
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Ni mogoče izvesti podrejenega opravila (%s)"
-#: ../glib/gspawn-win32.c:445
+#: ../glib/gspawn-win32.c:443
#, c-format
msgid "Invalid program name: %s"
msgstr "Neveljavno ime programa: %s"
-#: ../glib/gspawn-win32.c:455 ../glib/gspawn-win32.c:722
-#: ../glib/gspawn-win32.c:1297
+#: ../glib/gspawn-win32.c:453 ../glib/gspawn-win32.c:720
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Neveljaven niz v vektorju argumenta pri %d: %s"
-#: ../glib/gspawn-win32.c:466 ../glib/gspawn-win32.c:737
-#: ../glib/gspawn-win32.c:1330
+#: ../glib/gspawn-win32.c:464 ../glib/gspawn-win32.c:735
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Neveljaven niz okolja: %s"
-#: ../glib/gspawn-win32.c:718 ../glib/gspawn-win32.c:1278
+#: ../glib/gspawn-win32.c:716
#, c-format
msgid "Invalid working directory: %s"
msgstr "Neveljavna delovna mapa: %s"
-#: ../glib/gspawn-win32.c:783
+#: ../glib/gspawn-win32.c:781
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Napaka med izvajanjem pomožnega programa (%s)"
-#: ../glib/gspawn-win32.c:997
+#: ../glib/gspawn-win32.c:995
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
"Nepričakovana napaka v g_io_channel_win32_poll() med branjem podatkov "
"procesa podrejenega predmeta"
-#: ../glib/gutf8.c:795
+#: ../glib/gstrfuncs.c:3247 ../glib/gstrfuncs.c:3348
+msgid "Empty string is not a number"
+msgstr ""
+
+#: ../glib/gstrfuncs.c:3271
+#, c-format
+msgid "“%s” is not a signed number"
+msgstr "»%s« ni podpisano število"
+
+#: ../glib/gstrfuncs.c:3281 ../glib/gstrfuncs.c:3384
+#, c-format
+msgid "Number “%s” is out of bounds [%s, %s]"
+msgstr ""
+
+#: ../glib/gstrfuncs.c:3374
+#, c-format
+msgid "“%s” is not an unsigned number"
+msgstr "»%s« ni nepodpisano število"
+
+#: ../glib/gutf8.c:808
msgid "Failed to allocate memory"
msgstr "Ni mogoče dodeliti pomnilnika"
-#: ../glib/gutf8.c:928
+#: ../glib/gutf8.c:941
msgid "Character out of range for UTF-8"
msgstr "Znak izven območja za UTF-8"
-#: ../glib/gutf8.c:1029 ../glib/gutf8.c:1038 ../glib/gutf8.c:1168
-#: ../glib/gutf8.c:1177 ../glib/gutf8.c:1316 ../glib/gutf8.c:1413
+#: ../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 "Neveljavno zaporedje na vhodu pretvorbe"
-#: ../glib/gutf8.c:1327 ../glib/gutf8.c:1424
+#: ../glib/gutf8.c:1340 ../glib/gutf8.c:1437
msgid "Character out of range for UTF-16"
msgstr "Znak izven območja za UTF-16"
-#: ../glib/gutils.c:2117 ../glib/gutils.c:2144 ../glib/gutils.c:2250
+#: ../glib/gutils.c:2149 ../glib/gutils.c:2176 ../glib/gutils.c:2282
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[2] "%u bajta"
msgstr[3] "%u bajti"
-#: ../glib/gutils.c:2123
+#: ../glib/gutils.c:2155
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
-#: ../glib/gutils.c:2125
+#: ../glib/gutils.c:2157
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
-#: ../glib/gutils.c:2128
+#: ../glib/gutils.c:2160
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
-#: ../glib/gutils.c:2131
+#: ../glib/gutils.c:2163
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
-#: ../glib/gutils.c:2134
+#: ../glib/gutils.c:2166
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
-#: ../glib/gutils.c:2137
+#: ../glib/gutils.c:2169
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
-#: ../glib/gutils.c:2150
+#: ../glib/gutils.c:2182
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
-#: ../glib/gutils.c:2153 ../glib/gutils.c:2268
+#: ../glib/gutils.c:2185 ../glib/gutils.c:2300
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: ../glib/gutils.c:2156 ../glib/gutils.c:2273
+#: ../glib/gutils.c:2188 ../glib/gutils.c:2305
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: ../glib/gutils.c:2158 ../glib/gutils.c:2278
+#: ../glib/gutils.c:2190 ../glib/gutils.c:2310
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: ../glib/gutils.c:2161 ../glib/gutils.c:2283
+#: ../glib/gutils.c:2193 ../glib/gutils.c:2315
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: ../glib/gutils.c:2164 ../glib/gutils.c:2288
+#: ../glib/gutils.c:2196 ../glib/gutils.c:2320
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: ../glib/gutils.c:2201
+#: ../glib/gutils.c:2233
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: ../glib/gutils.c:2263
+#: ../glib/gutils.c:2295
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
+#~ msgid "Error creating directory '%s': %s"
+#~ msgstr "Napaka med ustvarjanjem mape '%s': %s"
+
+#~ msgid "No such interface"
+#~ msgstr "Vmesnik ne obstaja"
+
+#~ msgid "No files given"
+#~ msgstr "Ni nobene podane datoteke"
+
+#~ msgid "Error getting writable attributes: %s\n"
+#~ msgstr "Napaka med pridobivanjem zapisljivih atributov: %s\n"
+
+#~ msgid "Error mounting location: %s\n"
+#~ msgstr "Napaka med priklapljanjem mesta: %s\n"
+
+#~ msgid "Error unmounting mount: %s\n"
+#~ msgstr "Napaka med odklapljanjem mesta: %s\n"
+
+#~ msgid "Error finding enclosing mount: %s\n"
+#~ msgstr "Napaka med prilaganjem mesta: %s\n"
+
+#~ msgid "Error ejecting mount: %s\n"
+#~ msgstr "Napaka med izmetavanjem nosilca: %s\n"
+
+#~ msgid "Error mounting %s: %s\n"
+#~ msgstr "Napaka med priklapljanjem %s: %s\n"
+
+#~ msgid "No files to open"
+#~ msgstr "Ni datotek, označenih za odpiranje"
+
+#~ msgid "No files to delete"
+#~ msgstr "Ni datotek, označenih za brisanje"
+
+#~ msgid "Error setting attribute: %s\n"
+#~ msgstr "Napaka med določevanjem atributa: %s\n"
+
+#~ msgid "Error opening file '%s': %s"
+#~ msgstr "Napaka med odpiranjem datoteke '%s': %s"
+
+#~ msgid "Error reading file '%s': %s"
+#~ msgstr "Napaka med branjem datoteke '%s': %s"
+
+#~ msgid "Error renaming file: %s"
+#~ msgstr "Napaka med preimenovanjem datoteke: %s"
+
+#~ msgid "Error opening file: %s"
+#~ msgstr "Napaka med odpiranjem datoteke: %s"
+
+#~ msgid "Error creating directory: %s"
+#~ msgstr "Napaka med ustvarjanjem mape: %s"
+
#~ msgid "Optional relative or relative filenames, or URIs to open"
#~ msgstr ""
#~ "Neobvezna relativna ali relativna imena datotek ali URI-ji za odpiranje"
#~ msgid "Unable to find default local directory monitor type"
#~ msgstr "Ni mogoče najti privzete vrste nadzora mape"
-#~ msgid "Can't find application"
-#~ msgstr "Ni mogoče najti programa"
-
-#~ msgid "Error launching application: %s"
-#~ msgstr "Napaka med zaganjanjem programa: %s"
-
#~ msgid "association changes not supported on win32"
#~ msgstr "Spreminjanje asociativnih povezav ni podprto na win32 sistemih"
G_BEGIN_DECLS
/* BOOLEAN:INT (./testmarshal.list:2) */
+G_BEGIN_DECLS
extern
void test_marshal_BOOLEAN__INT (GClosure *closure,
GValue *return_value,
const GValue *param_values,
gpointer invocation_hint,
gpointer marshal_data);
+G_END_DECLS
/* STRING:INT (./testmarshal.list:3) */
+G_BEGIN_DECLS
extern
void test_marshal_STRING__INT (GClosure *closure,
GValue *return_value,
const GValue *param_values,
gpointer invocation_hint,
gpointer marshal_data);
+G_END_DECLS
/* VARIANT:POINTER (./testmarshal.list:4) */
+G_BEGIN_DECLS
extern
void test_marshal_VARIANT__POINTER (GClosure *closure,
GValue *return_value,
const GValue *param_values,
gpointer invocation_hint,
gpointer marshal_data);
+G_END_DECLS
G_END_DECLS
if (pipe(fds) < 0)
{
- fprintf (stderr, "Cannot create pipe %s\n", g_strerror (errno));
+ int errsv = errno;
+ fprintf (stderr, "Cannot create pipe %s\n", g_strerror (errsv));
exit (1);
}
static void
create_child (void)
{
- int pid;
+ int pid, errsv;
GIOChannel *in_channels[2];
GIOChannel *out_channels[2];
GSource *source;
io_pipe (out_channels);
pid = fork ();
+ errsv = errno;
if (pid > 0) /* Parent */
{
}
else /* Error */
{
- fprintf (stderr, "Cannot fork: %s\n", g_strerror (errno));
+ fprintf (stderr, "Cannot fork: %s\n", g_strerror (errsv));
exit (1);
}
}
if (pipe(fds) < 0)
{
- g_warning ("Cannot create pipe %s\n", g_strerror (errno));
+ int errsv = errno;
+ g_warning ("Cannot create pipe %s\n", g_strerror (errsv));
exit (1);
}
if (write (outfd, &n, sizeof (n)) == -1 ||
write (outfd, "Hello there", n) == -1)
{
- sprintf (buf, "spawn-test-win32-gui: Write: %s", strerror (errno));
+ int errsv = errno;
+ sprintf (buf, "spawn-test-win32-gui: Write: %s", strerror (errsv));
MessageBox (NULL, buf, lpszCmdLine, MB_ICONERROR|MB_SYSTEMMODAL);
exit (1);
}
if ((k = read (infd, buf, n)) != n)
{
+ int errsv = errno;
if (k == -1)
- sprintf (buf, "spawn-test-win32-gui: Read: %s", strerror (errno));
+ sprintf (buf, "spawn-test-win32-gui: Read: %s", strerror (errsv));
else
sprintf (buf, "spawn-test-win32-gui: Got only %d bytes", k);
MessageBox (NULL, buf, lpszCmdLine, MB_ICONERROR|MB_SYSTEMMODAL);
if (write (outfd, &n, sizeof (n)) == -1 ||
write (outfd, "See ya", n) == -1)
{
- sprintf (buf, "spawn-test-win32-gui: Write: %s", strerror (errno));
+ int errsv = errno;
+ sprintf (buf, "spawn-test-win32-gui: Write: %s", strerror (errsv));
MessageBox (NULL, buf, lpszCmdLine, MB_ICONERROR|MB_SYSTEMMODAL);
exit (1);
}
if ((k = read (pipeup[0], &n, sizeof (n))) != sizeof (n))
{
+ int errsv = errno;
if (k == -1)
- fprintf (stderr, "Read error: %s\n", g_strerror (errno));
+ fprintf (stderr, "Read error: %s\n", g_strerror (errsv));
else
fprintf (stderr, "Wanted to read %d bytes, got %d\n",
sizeof (n), k);
if ((k = read (pipeup[0], buf, n)) != n)
{
+ int errsv = errno;
if (k == -1)
- fprintf (stderr, "Read error: %s\n", g_strerror (errno));
+ fprintf (stderr, "Read error: %s\n", g_strerror (errsv));
else
fprintf (stderr, "Wanted to read %d bytes, got %d\n",
n, k);
if (write (pipedown[1], &n, sizeof (n)) == -1 ||
write (pipedown[1], "Bye then", n) == -1)
{
- fprintf (stderr, "Write error: %s\n", g_strerror (errno));
+ int errsv = errno;
+ fprintf (stderr, "Write error: %s\n", g_strerror (errsv));
exit (1);
}
if ((k = read (pipeup[0], &n, sizeof (n))) != sizeof (n))
{
+ int errsv = errno;
if (k == -1)
- fprintf (stderr, "Read error: %s\n", g_strerror (errno));
+ fprintf (stderr, "Read error: %s\n", g_strerror (errsv));
else
fprintf (stderr, "Wanted to read %d bytes, got %d\n",
sizeof (n), k);
if ((k = read (pipeup[0], buf, n)) != n)
{
+ int errsv = errno;
if (k == -1)
- fprintf (stderr, "Read error: %s\n", g_strerror (errno));
+ fprintf (stderr, "Read error: %s\n", g_strerror (errsv));
else
fprintf (stderr, "Wanted to read %d bytes, got %d\n",
n, k);
char template[32];
char *name_used, chars[62];
gint fd, n;
+ int errsv;
strcpy (template, "foobar");
fd = g_mkstemp (template);
if (fd == -1)
g_error ("g_mkstemp didn't work for template %s\n", template);
n = write (fd, hello, hellolen);
+ errsv = errno;
if (n == -1)
- g_error ("write() failed: %s\n", g_strerror (errno));
+ g_error ("write() failed: %s\n", g_strerror (errsv));
else if (n != hellolen)
g_error ("write() should have written %d bytes, wrote %d\n", hellolen, n);
lseek (fd, 0, 0);
n = read (fd, chars, sizeof (chars));
+ errsv = errno;
if (n == -1)
- g_error ("read() failed: %s\n", g_strerror (errno));
+ g_error ("read() failed: %s\n", g_strerror (errsv));
else if (n != hellolen)
g_error ("read() should have read %d bytes, got %d\n", hellolen, n);
{
if (pipe(fds) < 0)
{
- fprintf (stderr, "Cannot create pipe %s\n", strerror (errno));
+ int errsv = errno;
+ fprintf (stderr, "Cannot create pipe %s\n", strerror (errsv));
exit (1);
}
}
void
create_child (int pos)
{
- int pid;
+ int pid, errsv;
int in_fds[2];
int out_fds[2];
my_pipe (out_fds);
pid = fork ();
+ errsv = errno;
if (pid > 0) /* Parent */
{
}
else /* Error */
{
- fprintf (stderr,"Cannot fork: %s\n", strerror (errno));
+ fprintf (stderr,"Cannot fork: %s\n", strerror (errsv));
exit (1);
}
}
if (pipe(fds) < 0)
{
- fprintf (stderr, "Cannot create pipe %s\n", g_strerror (errno));
+ int errsv = errno;
+ fprintf (stderr, "Cannot create pipe %s\n", g_strerror (errsv));
exit (1);
}
static void
create_child (void)
{
- int pid;
+ int pid, errsv;
GIOChannel *in_channels[2];
GIOChannel *out_channels[2];
io_pipe (out_channels);
pid = fork ();
+ errsv = errno;
if (pid > 0) /* Parent */
{
}
else /* Error */
{
- fprintf (stderr, "Cannot fork: %s\n", g_strerror (errno));
+ fprintf (stderr, "Cannot fork: %s\n", g_strerror (errsv));
exit (1);
}
}
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="UserMacros">
<VSVer>10</VSVer>
- <GlibVersion>2.53.4</GlibVersion>
+ <GlibVersion>2.53.5</GlibVersion>
<ApiVersion>2.0</ApiVersion>
<GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
<CopyDir>$(GlibEtcInstallRoot)</CopyDir>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="UserMacros">
<VSVer>11</VSVer>
- <GlibVersion>2.53.4</GlibVersion>
+ <GlibVersion>2.53.5</GlibVersion>
<ApiVersion>2.0</ApiVersion>
<GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
<CopyDir>$(GlibEtcInstallRoot)</CopyDir>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="UserMacros">
<VSVer>12</VSVer>
- <GlibVersion>2.53.4</GlibVersion>
+ <GlibVersion>2.53.5</GlibVersion>
<ApiVersion>2.0</ApiVersion>
<GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
<CopyDir>$(GlibEtcInstallRoot)</CopyDir>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="UserMacros">
<VSVer>14</VSVer>
- <GlibVersion>2.53.4</GlibVersion>
+ <GlibVersion>2.53.5</GlibVersion>
<ApiVersion>2.0</ApiVersion>
<GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
<CopyDir>$(GlibEtcInstallRoot)</CopyDir>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="UserMacros">
<VSVer>15</VSVer>
- <GlibVersion>2.53.4</GlibVersion>
+ <GlibVersion>2.53.5</GlibVersion>
<ApiVersion>2.0</ApiVersion>
<GlibEtcInstallRoot>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
<CopyDir>$(GlibEtcInstallRoot)</CopyDir>
/>
<UserMacro
Name="GlibVersion"
- Value="2.53.4"
+ Value="2.53.5"
/>
<UserMacro
Name="ApiVersion"