@@ -0,0 +1,75 @@
|
|||||||
|
Submitted By: Bruce dubbs <bdubbs@linuxfromscratch.org>
|
||||||
|
Date: 2017-10-15
|
||||||
|
Initial Package Version: 2.54.0
|
||||||
|
Upstream Status: Not submitted
|
||||||
|
Origin: Self
|
||||||
|
Description: Adds a capabiility to skip printing warning messages using
|
||||||
|
an environment variable: GLIB_LOG_LEVEL. The value
|
||||||
|
of the variable is a digit that correponds to:
|
||||||
|
1 Alert
|
||||||
|
2 Critical
|
||||||
|
3 Error
|
||||||
|
4 Warning
|
||||||
|
5 Notice
|
||||||
|
|
||||||
|
For instance GLIB_LOG_LEVEL=4 will skip output of Waring and
|
||||||
|
Notice messages (and Info/Debug messages if they are turned on).
|
||||||
|
|
||||||
|
--- glib-2.54.0/glib/gmessages.c 2017-08-19 08:39:20.000000000 -0500
|
||||||
|
+++ glib-2.54.0-new/glib/gmessages.c 2017-10-15 14:45:52.004885278 -0500
|
||||||
|
@@ -523,6 +523,35 @@
|
||||||
|
|
||||||
|
/* --- functions --- */
|
||||||
|
|
||||||
|
+/* skip_message
|
||||||
|
+ *
|
||||||
|
+ * This internal function queries an optional environment variable,
|
||||||
|
+ * GLIB_LOG_LEVEL and converts it to a value consistent
|
||||||
|
+ * with the type GLogLevelFlags. If the value is equal to
|
||||||
|
+ * or greater than the integer equivalent of the log_level.
|
||||||
|
+ * then the function returns a boolean that indicates that
|
||||||
|
+ * loging the output should be skipped.
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+static gboolean skip_message( GLogLevelFlags log_level);
|
||||||
|
+
|
||||||
|
+static gboolean skip_message( GLogLevelFlags log_level)
|
||||||
|
+{
|
||||||
|
+ char* user_log_level;
|
||||||
|
+ int user_log_int;
|
||||||
|
+ gboolean skip = FALSE;
|
||||||
|
+
|
||||||
|
+ user_log_level = getenv( "GLIB_LOG_LEVEL" );
|
||||||
|
+
|
||||||
|
+ user_log_int = ( user_log_level != NULL ) ? atoi( user_log_level ) : 0;
|
||||||
|
+ user_log_int = ( user_log_int != 0 ) ? 1 << user_log_int : 0;
|
||||||
|
+
|
||||||
|
+ if ( user_log_int >= log_level ) skip = TRUE;
|
||||||
|
+
|
||||||
|
+ return skip;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+
|
||||||
|
static void _g_log_abort (gboolean breakpoint);
|
||||||
|
|
||||||
|
static void
|
||||||
|
@@ -2496,6 +2525,9 @@
|
||||||
|
g_return_val_if_fail (fields != NULL, G_LOG_WRITER_UNHANDLED);
|
||||||
|
g_return_val_if_fail (n_fields > 0, G_LOG_WRITER_UNHANDLED);
|
||||||
|
|
||||||
|
+ /* If the user does not want this message level, just return */
|
||||||
|
+ if ( skip_message( log_level) ) return G_LOG_WRITER_HANDLED;
|
||||||
|
+
|
||||||
|
stream = log_level_to_file (log_level);
|
||||||
|
if (!stream || fileno (stream) < 0)
|
||||||
|
return G_LOG_WRITER_UNHANDLED;
|
||||||
|
@@ -2640,6 +2672,9 @@
|
||||||
|
FILE *stream;
|
||||||
|
gsize i;
|
||||||
|
|
||||||
|
+ /* If the user does not want this message level, just return */
|
||||||
|
+ if ( skip_message( log_level) ) return G_LOG_WRITER_HANDLED;
|
||||||
|
+
|
||||||
|
/* we cannot call _any_ GLib functions in this fallback handler,
|
||||||
|
* which is why we skip UTF-8 conversion, etc.
|
||||||
|
* since we either recursed or ran out of memory, we're in a pretty
|
||||||
@@ -12,19 +12,15 @@
|
|||||||
<IsA>library</IsA>
|
<IsA>library</IsA>
|
||||||
<Summary>A library of handy utility functions</Summary>
|
<Summary>A library of handy utility functions</Summary>
|
||||||
<Description>glib2 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, dynamic loading, and an object system.</Description>
|
<Description>glib2 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, dynamic loading, and an object system.</Description>
|
||||||
<Archive sha1sum="948a768931ca321a35e16556a1c8adcae04babf2" type="tarxz">mirrors://gnome/glib/2.50/glib-2.50.2.tar.xz</Archive>
|
<Archive sha1sum="12d7466550156ac8a765f603b0df7604cdf34cfd" type="tarxz">mirrors://gnome/glib/2.54/glib-2.54.3.tar.xz</Archive>
|
||||||
<BuildDependencies>
|
<BuildDependencies>
|
||||||
<Dependency versionFrom="8.36">libpcre-devel</Dependency>
|
<Dependency versionFrom="8.36">libpcre-devel</Dependency>
|
||||||
<Dependency>zlib-devel</Dependency>
|
<Dependency>zlib-devel</Dependency>
|
||||||
<Dependency>libffi-devel</Dependency>
|
<Dependency>libffi-devel</Dependency>
|
||||||
<!--<Dependency>libxslt</Dependency>-->
|
|
||||||
<!--<Dependency versionFrom="0.161">elfutils</Dependency>-->
|
|
||||||
<!--<Dependency>docbook-xml</Dependency>-->
|
|
||||||
</BuildDependencies>
|
</BuildDependencies>
|
||||||
<Patches>
|
<Patches>
|
||||||
<Patch level="1">revert-warn-glib-compile-schemas.patch</Patch>
|
<Patch level="1">revert-warn-glib-compile-schemas.patch</Patch>
|
||||||
<Patch level="1">0001-glib-compile-resources-Add-generate-phony-targets-fl.patch</Patch>
|
<Patch>glib-2.54.3-skip_warnings-1.patch</Patch>
|
||||||
<Patch>0001-glib-compile-resources-Escape-file-names-in-dependen.patch</Patch>
|
|
||||||
</Patches>
|
</Patches>
|
||||||
</Source>
|
</Source>
|
||||||
|
|
||||||
@@ -130,6 +126,13 @@
|
|||||||
</Package>
|
</Package>
|
||||||
|
|
||||||
<History>
|
<History>
|
||||||
|
<Update release="6">
|
||||||
|
<Date>2018-07-20</Date>
|
||||||
|
<Version>2.54.3</Version>
|
||||||
|
<Comment>Version bump.</Comment>
|
||||||
|
<Name>Ertuğrul Erata</Name>
|
||||||
|
<Email>ertugrulerata@gmail.com</Email>
|
||||||
|
</Update>
|
||||||
<Update release="5">
|
<Update release="5">
|
||||||
<Date>2018-07-15</Date>
|
<Date>2018-07-15</Date>
|
||||||
<Version>2.50.2</Version>
|
<Version>2.50.2</Version>
|
||||||
|
|||||||
Reference in New Issue
Block a user