When creating a struct tm for "1990-01-01T00:00:00" to pass to
mktime(), we have to set tm_isdst to -1; leaving it set to 0 will
result in the wrong time being generated when run in a timezone where
January 1 would normally be tm_isdst==1 (ie, in southern hemisphere
DST-observing countries, like Australia).
https://bugzilla.gnome.org/show_bug.cgi?id=670254
This is needed because glib-mkenums doesn't handle #ifdef values in
enums, and so it needs to have all values always defined in the enum.
When not available, define the missing values to a negative value.
g_input_stream_read() does state that it returns 0 on end of file, but
not in the Returns: line, so it's easy to miss on a quick skim-read.
g_input_stream_read_async() documents that g_input_stream_read_finish()
returns 0 on end of file, but g_input_stream_read_finish() itself does
not.
https://bugzilla.gnome.org/show_bug.cgi?id=673174
It seems that there is quite a bit of variation out there, in
terms of libelf versions and API. Make the checks more thorough,
by not only checking for elf_begin, but also some of the shdr function
that we need. Also, explicitly check for libelf.h.
This should address bug 673132 and 673253.
On some systems gelf.h may not be stored under the top level include
directory in which case we need to add the correct include paths in
cflags by using pkg-config(1).
When inserting custom code to AC_CHECK_ALIGNOF, make sure to not replace
the default includes, but instead append to them.
This fixes ALIGNOF_GUINT32 and ALIGNOF_GUINT64 that were both 0 when cross
compiling. The third 'unsigned long' test wasn't affected because the
AC_CHECK_ALIGNOF call didn't specify the optional 2nd parameter.
Defining _POSIX_C_SOURCE to 0 will make time.h not create the clockid_t
typedef used by some functions in pthread.h.
The right approach here is to set it to 199309L, which creates the
typedef on FreeBSD and doesn't set __USE_UNIX98 or __USE_XOPEN2K on
glibc, which is what the test is actually testing.
https://bugzilla.gnome.org/show_bug.cgi?id=672406