Commit Graph

25 Commits

Author SHA1 Message Date
Martin Storsjö
77346d903d Don't fall back to raise(SIGTRAP) on Windows
When targeting mingw on architectures other than x86, the earlier cases
don't apply, and the final fallback, raise(SIGTRAP) isn't usable there.

GCC and Clang both support __builtin_trap(), so in case we have no
other alternatives, and are on windows (where raise() isn't available),
we can resort to this.
2020-05-28 09:21:35 +01:00
Philip Withnall
a0456f9c96 gmessages: Clarify documentation about aborting on fatal log levels
Clarify that we actually raise SIGTRAP rather than calling abort(). We
haven’t called abort() since about 2011, when commit
a04efe6afb changed the logic to use
SIGTRAP to make it possible to skip past fatal log messages in the
debugger if they weren’t relevant to the problem being debugged.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

https://gitlab.gnome.org/GNOME/glib/issues/1448
2018-08-22 10:37:15 +01:00
Patrick Welche
b5733ecc76 Solaris build fix
On Solaris sigset_t is only defined in /usr/include/sys/signal.h
(included from /usr/include/signal.h) if _XPG4_2 is defined. If
it's not defined, you need to include /usr/include/sys/select.h.

http://bugzilla.gnome.org/show_bug.cgi?id=562334
2017-11-16 10:36:13 +00:00
Sébastien Wilmet
f9faac7661 glib/: LGPLv2+ -> LGPLv2.1+
All glib/*.{c,h} files have been processed, as well as gtester-report.

12 of those files are not licensed under LGPL:

	gbsearcharray.h
	gconstructor.h
	glibintl.h
	gmirroringtable.h
	gscripttable.h
	gtranslit-data.h
	gunibreak.h
	gunichartables.h
	gunicomp.h
	gunidecomp.h
	valgrind.h
	win_iconv.c

Some of them are generated files, some are licensed under a BSD-style
license and win_iconv.c is in the public domain.

Sub-directories inside glib/:

	deprecated/: processed in a previous commit
	glib-mirroring-tab/: already LGPLv2.1+
	gnulib/: not modified, the code is copied from gnulib
	libcharset/: a copy
	pcre/: a copy
	tests/: processed in a previous commit

https://bugzilla.gnome.org/show_bug.cgi?id=776504
2017-05-24 11:58:19 +02:00
Ilya Konstantinov
27fae83909 gbacktrace: fix G_BREAKPOINT on Darwin (OSX, iOS)
Using __builtin_trap() according to Apple's own documentation:
https://developer.apple.com/library/mac/technotes/tn2124/_index.html#//apple_ref/doc/uid/DTS10003391-CH1-SECCONTROLLEDCRASH

https://bugzilla.gnome.org/show_bug.cgi?id=750807
2015-07-09 10:39:42 -04:00
Matthias Clasen
49cc207e35 docs: Ditch more markup
Some markup was hiding in docs in headers. Drop it there, too.
2014-03-02 18:23:43 -05:00
Daniel Mustieles
078dbda148 Updated FSF's address 2014-01-31 14:31:55 +01:00
Ryan Lortie
0156092a42 various: add GLIB_AVAILABLE_IN_ALL everywhere else
Add the GLIB_AVAILABLE_IN_ALL annotation to all old functions (that
haven't already been annotated with the GLIB_AVAILABLE_IN_* macros or a
deprecation macro).

If we discover in the future that we cannot use only one macro on
Windows, it will be an easy sed patch to fix that.

https://bugzilla.gnome.org/show_bug.cgi?id=688681
2013-01-13 13:11:57 -05:00
Matthias Clasen
e1b99b2ddc Move single-include guards inside include guards
gcc has optimizations for include guards that only work
if they are outermost in the the header.
https://bugzilla.gnome.org/show_bug.cgi?id=689810
2012-12-27 23:43:14 -05:00
Stef Walter
7e92997539 documentation fixes
Fixes for gtk-doc warnings.

http://bugzilla.gnome.org/show_bug.cgi?id=66469

https://bugzilla.gnome.org/show_bug.cgi?id=664699
2011-12-13 23:01:51 -05:00
Matthias Clasen
7455dd370e Make single includes mandatory
This has been the official line since 2.17, which seems plenty
long enough for a transition phase.
2011-10-12 00:25:38 -04:00
Matthias Clasen
4c64e75ec5 Drop the warnings.sgml template 2011-07-19 20:40:28 -04:00
Matthias Clasen
9b3fb41a5e Remove redundant header inclusions
and clean up some whitespace
2010-09-03 19:41:49 -04:00
Matthias Clasen
b60040d9ed Bug 553857 – gbacktrace.h requires signal.h
2008-09-26  Matthias Clasen  <mclasen@redhat.com>

        Bug 553857 – gbacktrace.h requires signal.h

        * glib/gbacktrace.h: Include signal.h for raise().
        Pointed out by Sebastien Bacher



svn path=/trunk/; revision=7548
2008-09-26 14:33:48 +00:00
Tor Lillqvist
d4ad716a05 Define G_BREAKPOINT() also for 64-bit MSVC, using the __debugbreak()
2008-09-16  Tor Lillqvist  <tml@novell.com>

	* glib/gbacktrace.h: Define G_BREAKPOINT() also for 64-bit MSVC,
	using the __debugbreak() intrinsic.


svn path=/trunk/; revision=7495
2008-09-15 22:19:38 +00:00
Michael Natterer
e0aa9d8a61 #define __GLIB_H_INSIDE__ around including everything.
2008-05-05  Michael Natterer  <mitch@imendio.com>

	* glib/glib.h: #define __GLIB_H_INSIDE__ around including
	everything.

	* glib/*.h: check for that define instead of __G_LIB_H__ if
	G_DISABLE_SINGLE_INCLUDES is defined.

	* glib/gdatasetprivate.h: #include <glib.h> instead of
	<glib/gdataset.h>


svn path=/trunk/; revision=6875
2008-05-05 15:02:15 +00:00
Michael Natterer
f4bb21aa1d make it possible to disable single-file includes by defining
2008-03-14  Michael Natterer  <mitch@imendio.com>

	* glib/*.h: make it possible to disable single-file includes by
	defining G_DISABLE_SINGLE_INCLUDES when building against GLib.
	Approved by Tim Janik.

	* glib/glib.h: include <glib/gslice.h>.

	* glib/gi18n.h
	* glib/gi18n-lib.h
	* glib/gprintf.h: include <glib.h> so the above works when these
	files are included without including <glib.h> first.


svn path=/trunk/; revision=6713
2008-03-14 19:30:38 +00:00
Tor Lillqvist
98a5ddc4c8 config.h.win32.in glib/galloca.h glib/gbacktrace.h glib/gwin32.c
2007-01-17  Tor Lillqvist  <tml@novell.com>

	* config.h.win32.in
	* glib/galloca.h
	* glib/gbacktrace.h
	* glib/gwin32.c
	* glibconfig.h.win32.in
	* README.win32: More minor tweaks for Digital Mars
	compiler. (#346808, Serhat Sevki Dincer)


svn path=/trunk/; revision=5294
2007-01-18 19:05:21 +00:00
Manish Singh
d8ba1394da ia32's G_BREAKPOINT() implementation works on amd64 too. Enable it.
Fri Mar 12 15:30:58 2004  Manish Singh  <yosh@gimp.org>

        * glib/gbacktrace.h: ia32's G_BREAKPOINT() implementation works on
        amd64 too. Enable it.
2004-03-12 23:31:23 +00:00
Owen Taylor
0522bb588b Exclude OSF from alpha definition of G_BREAKPOINT(), since the assembler
Mon May  6 16:00:41 2002  Owen Taylor  <otaylor@redhat.com>

        * glib/gbacktrace.h: Exclude OSF from alpha definition
        of G_BREAKPOINT(), since the assembler apparently
        doesn't support bpt. (#77852, Gareth Pierce) [from stable]
2002-05-06 20:08:54 +00:00
Tim Janik
748d5c0449 remove public signal.h include.
Fri Nov  2 19:54:16 2001  Tim Janik  <timj@gtk.org>

        * glib/gbacktrace.h (G_BREAKPOINT): remove public signal.h include.
2001-11-02 18:56:51 +00:00
Daniel Egger
062ecaf1ed Fix non-Intel/-Alpha version of the G_BREAKPOINT macro to include
2001-10-29  Daniel Egger  <degger@fhm.edu>

	* glib/gbacktrace.h: Fix non-Intel/-Alpha version of the
	G_BREAKPOINT macro to include <signal.h> and use SIGTRAP.

	* glib/gmessages.c: Conditionalise definition of args2
	depending on the definition of HAVE_VSNPRINTF to avoid
	compiler warning.

	* gobject/testgruntime.c
	* tests/patterntest.c: Include <string.h> to avoid warnings.
2001-10-29 18:49:28 +00:00
Owen Taylor
2fd6b001fb Move glib library into a subdirectory, make all GLib include files include
Tue Jun 26 11:43:46 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
	Move glib library into a subdirectory, make all GLib include
	files include as <glib/glist.h>

	* tests/testglib.c tests/testgdate.c tests/testgdateparser.c
	  tests/timeloop.c tests/timeloop-basic.c: Move all tests into
	the tests/ subdirectory.
2001-06-26 16:01:21 +00:00
Tor Lillqvist
fb4de1c50d Some more debugging output. (g_io_channel_win32_poll): Remove unused vars.
2000-10-16  Tor Lillqvist  <tml@iki.fi>

	* giowin32.c (reader_thread): Some more debugging output.
	(g_io_channel_win32_poll): Remove unused vars.

	* gfileutils.c: Changes for Win32, with no unistd.h and no
	S_ISLNK().

	* gspawn-win32.c: Implementation of the g_spwan_* functions for
	Win32. Due to the general non-Unixness of Win32, much of the
	functionality that is relatively clean to implement on Unix, is
	hard to do on Win32. We must use a separate helper program to
	change directory, close extra file descriptors, redirect the std
	ones, as needed, and only then start the child process. No child
	process pid can be returned, unfortunately. Or if we used
	CreateProcess directly, it probably could. (Now we use the spawnv*
	functions from msvcrt.)

	* glib.def: Add new entry points.

	* glib.def
	* giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
	g_io_channel_win32_poll() subsumes it.

	* gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).

	* gwin32.c (g_win32_getlocale): Use "sp" for
	LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.

	* makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
	Add gspawn-win32-helper.exe rule.

	* tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
	spawn-test.

	* tests/spawn-test.c: (run_tests): On Win32, don't try to run
	/bin/sh, but ipconfig (no special significance in choosing that,
	just a program that outputs something to stdout).
2000-10-16 18:54:29 +00:00
Sebastian Wilhelmi
b1d1558747 Split glib.h into many header files mostly according to the resp.
2000-10-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
	gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
	ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
	gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
	grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
	gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
	into many header files mostly according to the resp. *.c-files.

	* gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
	of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
	__END_DECLS.

	* configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
	gunicode.h, : Changed guard-macro names to something more
	consistent.

	* configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
2000-10-12 11:52:07 +00:00