Commit Graph

465 Commits

Author SHA1 Message Date
Emmanuele Bassi
5faaaac92c Check for a recent enough libmount
We need mnt_unref_table() in order to use libmount, but we also need to
keep the fallback code for installations of libmount without a
pkg-config file.

https://bugzilla.gnome.org/show_bug.cgi?id=782628
2017-05-16 11:25:02 +01:00
Sebastian Dröge
cc5e9f2362 gmodule – Check for RTLD_LAZY and others in configure
They are no #defines on Android but enum values, and on 64 bit Android
they have different values than what we would otherwise fall-back to.

https://bugzilla.gnome.org/show_bug.cgi?id=776876
2017-05-09 15:58:15 +02:00
Jonh Wendell
fff6fc02b9 build: Bump version to 2.53.2
So that early adopters of new API have a version number to target.
2017-05-04 11:03:48 -03:00
Matthias Clasen
7651ce2ee4 2.53.1 2017-04-25 06:10:22 -04:00
Philip Withnall
8e8deb1336 build: Bump version to 2.53.0
Ready for the new unstable release series.
2017-03-24 11:01:24 +00:00
Matthias Clasen
bce36c2d46 2.52.0 2017-03-18 20:40:40 -04:00
Matthias Clasen
7a36df7b01 2.51.5 2017-03-13 11:23:00 -04:00
John Ralls
d1a03bc728 Enable building gcocoanotification only if OS X min version >= 10.9
This changes the configure checks to check for what is actually
required to build this code.

https://bugzilla.gnome.org/show_bug.cgi?id=747146
2017-03-08 22:26:00 -05:00
Matthias Clasen
376e12e5a4 2.51.4 2017-03-01 15:14:14 -05:00
Matthias Clasen
c61ea2c4a9 2.51.3 2017-02-27 11:46:20 -05:00
Chun-wei Fan
fa074cf3c7 Visual Studio builds: Fix previous commit
Pushed the wrong version of the patch, sorry!
2017-02-15 14:14:05 +08:00
Chun-wei Fan
0baaac786e Visual Studio builds: Add support for Visual Studio 2017
This adds support for Visual Studio 2017 by updating the autotools files for
copying and updating the Visual Studio 2010 project files.

Since the toolset version of Visual Studio 2017 is no longer in the form
of $(MSVC_VER_SHORT)0, we need to specify the full number, but this is a
rather simple change we have here.  Note that Visual Studio 2017's CRT
aims to be compatible with the 2015's CRT, so it should be possible to
use 2017-compiled code with the 2015-compiled ones.
2017-02-15 11:42:20 +08:00
Matthias Clasen
e6b6a33fa0 2.51.2 2017-02-13 08:16:57 -05:00
Matthias Clasen
c9f731be24 2.51.1 2017-01-16 13:16:27 -05:00
Chun-wei Fan
6dfc6fee7b Visual Studio builds: Move project files to win32/
It was suggested that the project files be moved here as we don't actually
need to go two directory layers from $(srcroot), and would help us to
standardize on things in the future across the board.
2017-01-09 14:00:46 +08:00
Ondrej Holy
d1d1aba3b4 Add missing check for termios.h
Check for termios.h is missing and passwords in the new gio tool
are echoed in the terminal consequently, which is really bad!

https://bugzilla.gnome.org/show_bug.cgi?id=775517
2016-12-02 13:25:12 +01:00
Simon McVittie
6ab68e9668 Bump version to 2.51.0
So that we don't get "deprecation" (availability) warnings for
new functionality of GLib 2.51/2.52.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Colin Walters <walters@verbum.org>
2016-10-13 21:53:27 +01:00
Matthias Clasen
e44ea516af 2.50.1 2016-10-10 13:06:25 -04:00
Matthias Clasen
eaca4f4116 2.50.0 2016-09-19 06:56:20 -07:00
Owen W. Taylor
496cd8aac6 Turn on libmount by default on linux
The libmount code produces somewhat different results than the older
Linux code that would parse /proc/mounts; for example, bind mounts
appear in the libmount output. To try and get as many GLib users
as possible to have the same behavior, on Linux, make GLib error out
on missing libmount unless --disable-libmount is passed.

https://bugzilla.gnome.org/show_bug.cgi?id=771438
2016-09-18 07:54:45 -04:00
Matthias Clasen
e887b4a7b0 2.49.7 2016-09-12 23:03:17 -04:00
Matthias Clasen
c0fe1703a0 2.49.6 2016-08-28 07:16:14 -04:00
Matthias Clasen
ec2a7cc710 2.49.5 2016-08-17 12:21:13 -04:00
Mario Sanchez Prada
fbf72a31b1 Don't enable libmount by default for now
This is causing trouble with flatpaks because the org.gnome.Platform
runtime does not bundle libmount, while the org.gnome.Sdk does it.

As this probably requires a change in the freedesktop.org Yocto base,
we disable this support by default for now as a temporary measure
until it can be properly reviewed by someone who knows those bits
better, probably Alex Larsson.

https://bugzilla.gnome.org/show_bug.cgi?id=769284
2016-07-28 12:24:14 -06:00
Mario Sanchez Prada
4f9cddaeb8 Added autotools support for libmount
Check whether libmount is available at configuration time and provide
an option to explicitly enable or disable it, similar to libelf.

https://bugzilla.gnome.org/show_bug.cgi?id=522053
2016-07-26 08:09:27 -06:00
Matthias Clasen
6a07885a98 Drop libsystemd dependency
Talk to the journal ourselves using sendmsg() instead of linking
against libsystemd for sd_journal_sendv(). At the same time, we
can also avoid excessive copying.

The motivation for dropping the dependency is that we can
then use structured logging e.g. in a flatpak sandbox where
libsystemd may not be present in the runtime.

The code here is inspired by similar code in libvirt.
2016-07-22 23:04:51 -04:00
Matthias Clasen
e4623800aa 2.49.4 2016-07-20 20:52:48 -04:00
Philip Withnall
052eaf24f7 gmessages: Add a structured logging API
In parallel with g_log(), add a new structured logging API, based around
g_log_structured() and various helper functions which are exposed
publicly to allow programs to build their own logging policies easily,
without having to rewrite a lot of gmessages.c because it’s all
internal.

See the expanded documentation at the top of gmessages.c for some
rationale. See the g_log_structured() documentation for some example
code.

https://bugzilla.gnome.org/show_bug.cgi?id=744456
2016-07-16 23:52:18 -04:00
Philip Withnall
7ea4949cda gmain: Add G_PID_FORMAT
This will be useful for printing out GPids in printf()-style functions.

https://bugzilla.gnome.org/show_bug.cgi?id=767765
2016-06-29 15:16:52 +01:00
Ondrej Holy
e57355b055 fileinfo: Add G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE attribute
Add filesystem attribute to detect remote filesystems in order to
replace hardcoded filesystem types in GtkFileSystem. Set this attribute
also for GLocalFile appropriately.

Bump version to 2.49.3, so that early adopters of new API have a version
number to target.
2016-06-28 10:28:51 +02:00
Matthias Clasen
b990acf7ae 2.49.2 2016-06-20 08:03:17 -04:00
Ondrej Holy
931483aa25 build: Bump version to 2.49.1
So that early adopters of new API have a version number to target.

https://bugzilla.gnome.org/show_bug.cgi?id=765900
2016-05-20 10:34:15 +02:00
Emmanuele Bassi
2f05d1454e Bump master to 2.49 2016-04-27 14:35:09 +01:00
Matthias Clasen
99bdfd1bcb Stop using ptrctl for thread names
We now prefer pthread_setname_np when available, and don't
need the linux specific API anymore. Also change the test
for this functionality to use pthread_getname_np.
2016-04-26 06:35:06 -04:00
Alan Coopersmith
28f0160031 gthread: add thread name support on Solaris
https://bugzilla.gnome.org/show_bug.cgi?id=747478
2016-04-26 06:18:34 -04:00
Bastien Nocera
e9cf9f2c59 build: Fix all statfs() tests failing
The current statfs() compilation tests all fail because statfs() expects
the first argument to be non-null. Pass a dummy path instead of NULL to
satisfy the compiler.

https://bugzilla.gnome.org/show_bug.cgi?id=764574
2016-04-04 15:07:17 +02:00
Allison Ryan Lortie
f384d20d80 GLib 2.48.0 2016-03-22 11:18:38 -04:00
Allison Ryan Lortie
8c9be18bd3 GLib 2.47.92 2016-03-15 22:26:31 -04:00
Chun-wei Fan
99b30f389e Visual Studio builds: Move @GLIB_VERSION@ usage
... from glib-gen-srcs.[vsprops|props].in to
glib-version-paths.[vsprops|props].in, and instead let autotools generate
glib-version-paths.[vsprops|props] rather than
glib-gen-srcs.[vsprops|props], as this will need to be referenced for
other items as well, namely generating the .pc files which will become
useful for introspection builds.
2016-02-25 18:37:01 +08:00
Allison Ryan Lortie
9d54f806e5 GLib 2.47.6 2016-02-16 06:35:12 -05:00
Philip Withnall
8c263008bb build: Calculate ABS_GLIB_RUNTIME_LIBDIR at build time
Rather than calculating it at configure time. This means it can expand
$libdir properly, and use the Make $(realpath) function rather than
invoking the non-portable `readlink -f`.

This fixes problems where `readlink` would be called on an invalid path
(due to a variable not being expanded) and would evaluate to "", which
would then cause things to be installed in the wrong place.

https://bugzilla.gnome.org/show_bug.cgi?id=744772
2016-01-24 14:44:44 +00:00
Allison Ryan Lortie
6e752d3f8b GLib 2.47.5 2016-01-18 15:29:17 -05:00
Simon McVittie
82c2461e3d Use system PCRE unless --with-pcre=internal is given
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=740573
Reviewed-by: Emmanuele Bassi <ebassi@gnome.org>
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2016-01-14 13:09:06 +00:00
Javier Jardón
4e78a0a9df Revert "Use upstream gettext instead the glib one"
This causes several problems:
- Compilation in FreeBSD with --enable-gtk-doc broke
- Modules that still use the AM_GLIB_GNU_GETTEXT macro
  doesnt compile anymore because /usr/share/glib-2.0/gettext
  is not filled with the correct files, as this was done in
  the glib custom po/Makefile.in.in

See https://bugzilla.gnome.org/show_bug.cgi?id=622991

This reverts commit e5c752371c.
2016-01-10 22:44:24 +00:00
Javier Jardón
e5c752371c Use upstream gettext instead the glib one
https://bugzilla.gnome.org/show_bug.cgi?id=622991
2016-01-09 18:49:22 +00:00
Matthias Clasen
5e73ca974d 2.47.4 2015-12-16 07:52:05 -05:00
Ryan Lortie
aa16359986 Stop supporting non-POSIX getpwuid_r, getgrgid_r
Bug 13403 introduced support for the non-POSIX variants of these APIs
found on a system called "DG/UX".  Meanwhile, the complicated checks
here are breaking cross-builds on systems that we actually care about.

Remove the complicated checks and replace them with AC_CHECK_FUNCS.
Remove the resulting dead code from a couple of .c files.

https://bugzilla.gnome.org/show_bug.cgi?id=756475
2015-12-16 07:47:53 -05:00
Andrey Gursky
e9c9ff607c Add missing checks for gnulib vasnprintf()
Commit 212e4232e7 introduced a big update
of gnulib. Necessary changes to configure.ac from old gnulib commit
e8e63d1b31bca6c82713cba490b21a861abb24b5 have been forgotten. Actually
available functions are not discovered by autotools.

https://bugzilla.gnome.org/show_bug.cgi?id=759134
2015-12-07 20:52:10 -05:00
Allison Ryan Lortie
be225b76a7 GLib 2.47.3 2015-11-25 09:41:49 -05:00
Allison Ryan Lortie
4f18c671ab GLib 2.47.2 2015-11-24 19:44:46 +00:00
Allison Ryan Lortie
398c048c66 docs: remove GDBusObjectManager example
This example has been causing on-and-off build breaks for quite some
time.  In this case, the code for copying the generated content into the
main docs of GIO is causing problems with srcdir != destdir builds (due
to the files also being copied from the read-only srcdir during
distchecks).

We could probably work around this problem yet again, but since there is
no real benefit to having this content included, so let's remove it.

https://bugzilla.gnome.org/show_bug.cgi?id=734469
2015-11-24 18:44:02 +00:00
Allison Ryan Lortie
db2367e878 GLib: clean up the "inline" mess once and for all
It's been a long time since we've been unconditionally saying "static
inline" in GLib headers without complaints so it's safe to assume that
all compilers that we care about support this.

One thing that is not yet totally supported is the unadorned use of the
word "inline".  Depending on the flags (-std=c89, for example), even GCC
will complain about this.  Detect missing C99 support and define
"inline" to "__inline" in that case.  Some research shows "__inline"
appears to be the most widely-supported keyword here, but we may need to
tweak this if we get some reports of breakage.

Clean up all of the configure checks around this and define G_CAN_INLINE
unconditionally.  Unfortunately, we must assume that some people are
still using G_IMPLEMENT_INLINES, we must continue to implement that
(including undefining G_CAN_INLINE and redefining G_INLINE_FUNC) if
requested.

It is not our intent to break existing users of the old-style
G_INLINE_FUNC approach and if that has happened, we may need to make
some further adjustments.

https://bugzilla.gnome.org/show_bug.cgi?id=757374
2015-11-16 13:14:19 -05:00
Mikhail Zabaluev
0dbc81c73a Move G_POLLFD_FORMAT to glibconfig.h
It's a platform-specific macro, so it belongs in glibconfig.h.
This ensures that g-ir-scanner will not pick the wrong definition
for introspection.

https://bugzilla.gnome.org/show_bug.cgi?id=757294
2015-11-02 20:03:38 +02:00
Matthias Clasen
f87fd39cf3 2.47.1 2015-10-26 13:52:47 -04:00
Matthias Clasen
2ac7c5a6fb Use -Wl,-znodelete for all our libraries
Now that we initialize the quark tables from a constructor,
reloading libglib is just as bad as reloading libgobject,
so add the linker option to the LDFLAGS for all our libraries.

https://bugzilla.gnome.org/show_bug.cgi?id=755609
2015-10-20 08:18:22 -04:00
Philip Withnall
f62cbfc022 gsocket: Add g_socket_receive_messages()
Add support for receiving multiple messages with a single system call,
using recvmmsg() if available. Otherwise, fall back to looping over
g_socket_receive_message().

This adds new API, g_socket_receive_messages(), and corresponding unit
tests.

https://bugzilla.gnome.org/show_bug.cgi?id=751924
2015-10-01 14:10:10 +01:00
Philip Withnall
37fcab17d3 build: Bump version to 2.47.0
So that early adopters of new API have a version number to target.
2015-10-01 13:49:15 +01:00
Matthias Clasen
d73cd49799 2.46.0 2015-09-21 08:38:33 -04:00
Dan Winship
19eb511ba4 More g_strerror() fixes
Add a check to configure.ac for strerror_r, since we don't currently
require POSIX.1-2001 conformance in general. Add back a
plain-strerror() case as a fallback, and rearrange the glibc-vs-POSIX
strerror_r() branches.

Update the docs to not claim that "not all platforms support the
strerror() function" (we require C90), but still mention the UTF-8 and
always-valid-string benefits. (And make test_strerror() check that
last part.)

https://bugzilla.gnome.org/show_bug.cgi?id=754788
2015-09-11 12:38:18 -04:00
Kalev Lember
b8a5e22b6b Bump version
So that early adopters of new api have a version to target.
2015-09-10 15:06:56 +02:00
Chun-wei Fan
4025b5a54f MSVC Builds: "Add" MSVC 2015 Projects
This "adds" the Visual Studio 2015 Project files by doing what we did
before: copying the Visual Studio 2010 projects and replacing items
in them, as the formats of the Visual Studio 201x projects are largely
the same.
2015-09-09 15:21:26 +08:00
Chun-wei Fan
9c7df09c3b MSVC Builds: Simplify Script to Generate glib-mkenums
Use a simple all-purpose utility script to generate the glib-mkenums
PERL script with the version info, and stop using the script that
tries to parse the autotools files.  Move the things that
were taken out from build/win32/setup.py back there.
2015-09-09 15:21:12 +08:00
Matthias Clasen
f14e2e5c53 2.45.7 2015-09-01 10:58:32 -04:00
Emmanuele Bassi
5ce70917df Drop binary checks when cross-compiling
We don't need to run binaries we just built in order to successfully
build GLib and friends any more.

Since commit b74e2a7, we don't need to run glib-genmarshal when building
GIO; since commit f9eb9eed, all our tests (including the ones that do
need to run binaries we just built) are only built when running "make
check", instead of unconditionally at every build.

This means that we don't need to check for existing, native binaries
when cross-compiling, and fail the configuration step if they are not
found — which also means that you don't need to natively build GLib for
your toolchain, in order to cross-compile GLib.

We can also use the cross-compilation conditional, and skip those tests
that require a binary we just built in order to build.

https://bugzilla.gnome.org/show_bug.cgi?id=753745
2015-09-01 10:40:24 -04:00
Ting-Wei Lan
8f662e7259 glocalfileinfo: Support file creation time on FreeBSD and NetBSD
FreeBSD and NetBSD have field st_birthtim and st_birthtime in struct stat,
respectively, which can be used to get file creation time on supported file
systems such as UFS2 and tmpfs.

https://bugzilla.gnome.org/show_bug.cgi?id=749492
2015-08-21 00:52:50 -04:00
Matthias Clasen
b8aad73af9 2.45.6 2015-08-19 16:24:22 -04:00
Matthias Clasen
fc38156cba 2.45.5 2015-08-19 15:46:49 -04:00
Matthias Clasen
ab3805ab04 2.45.4 2015-07-20 17:45:43 -04:00
Matthias Clasen
bb41a89c42 2.45.3 2015-06-23 06:56:26 -04:00
Alexander Larsson
f5d4543139 configure: test have_docbook_style != yes, not have_docbook_dtd 2015-06-17 17:32:17 +02:00
Patrick Griffis
89058e8a9b configure: Require OSX >= 10.9
https://bugzilla.gnome.org/show_bug.cgi?id=747146
2015-06-05 14:55:58 -04:00
Matthias Clasen
102ac0e776 2.45.2 2015-05-25 23:30:07 -04:00
Matthias Clasen
7ebf2618aa 2.45.1 2015-04-30 13:40:42 -04:00
Ryan Lortie
21ab660cf8 fen: remove Solaris file monitor support
This code is unmaintained and we have no way to port it to the new file
monitoring API.
2015-03-20 12:01:35 -04:00
Ryan Lortie
f1f39e7b2a bump version (to GLib 2.45.0) 2015-03-16 15:22:03 -04:00
Ryan Lortie
76f77fe8c9 GLib 2.43.92 2015-03-16 14:25:53 -04:00
Ryan Lortie
cd3f4bb32c GLib 2.43.91 2015-03-02 11:55:33 -05:00
Ryan Lortie
a2172ee247 GLib 2.43.90 2015-02-18 11:26:25 -05:00
Ilya Konstantinov
2a0c18041b gthread: add thread name support on Mac OS
https://bugzilla.gnome.org/show_bug.cgi?id=741807
2015-01-26 09:06:13 +00:00
Ryan Lortie
29307b4e41 bump version 2015-01-20 01:38:13 -05:00
Matthias Clasen
b1e5b0e733 Bump version
So that early adopters of new api have a version to target.
2015-01-13 16:54:59 -05:00
Ryan Lortie
84a1efeabd configure.ac: reject 'universal' builds
AC_C_BIGENDIAN can return 'universal' as the result in the case that we
are trying to do a universal build on Mac OS.  This has to be opted into
explicitly by using multiple -arch CFLAGS.

Previously, we detected this result and fell back to doing our own check
based on the endianness of the build machine, hardcoding that.  This
means that universal builds might successfully build, but the binaries
would never actually run correctly on the 'opposite' arch.

This check was added because of a bug in the intial implementation of
this detection in autoconf, which was inappropriately identifying
non-macos compilers as 'universal'.  That was hitting ppc64 systems.
See https://bugzilla.redhat.com/show_bug.cgi?id=449944 for more info.

Commit b0e687ef42e21b1eb7af18c4eaebcd41b0bd5632 in autoconf ("Limit
AC_C_BIGENDIAN univeral checks to Mac OS X") solved this issue in 2008,
so let's remove our workaround.  For good measure, if we detect
"universal" in the result, error out.

https://bugzilla.gnome.org/show_bug.cgi?id=742548
2015-01-10 18:00:02 -05:00
Matthias Clasen
924f269763 2.43.2 2014-12-15 13:17:15 -05:00
Tim-Philipp Müller
fff5c7cd63 gsocket: add g_socket_send_messages()
Allows sending of multiple messages (packets, datagrams)
in one go using sendmmsg(), thus drastically reducing the
number of syscalls when sending out a lot of data, or when
sending out the same data to multiple recipients.

https://bugzilla.gnome.org/show_bug.cgi?id=719646
2014-12-11 15:10:44 +00:00
Matthias Clasen
3f5a78a248 2.43.1 2014-11-24 14:31:56 -05:00
Benjamin Otte
6e994d0656 Bump version to 2.43.0
We have new API.
2014-10-12 01:29:27 +02:00
Ryan Lortie
26a240fd10 GLib 2.42.0 2014-09-22 13:15:17 -04:00
Matthias Clasen
0177cece40 2.41.5 2014-09-15 15:52:48 -04:00
Matthias Clasen
d73886675e 2.41.4 2014-09-02 11:36:32 -04:00
Ryan Lortie
e15ba53cda configure.ac: fix typo in last patch
20e709d8b9 fixed some issues in
configure.ac but also introduced a typo.  Fix that.
2014-07-27 10:08:47 +02:00
Alessandro Di Federico
20e709d8b9 configure: Remove unintentional nested functions
More of the same as 9362a1b2d9.

https://bugzilla.gnome.org/show_bug.cgi?id=733715
2014-07-26 10:02:32 +02:00
Simon McVittie
9060a85193 glib-init: statically assert that we have 8-bit bytes
configure.ac assumes this.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=730932
2014-07-23 09:18:43 +01:00
Matthias Clasen
79e63d4e5d Bump version 2014-07-14 10:48:09 -04:00
Matthias Clasen
bc56512dd7 Bump version 2014-06-23 23:14:56 -04:00
Matthias Clasen
1429ff12d8 2.41.1 2014-06-23 21:58:07 -04:00
Ryan Lortie
9362a1b2d9 configure.ac: fix check for futex and eventfd
We were using AC_LANG_PROGRAM to build a program to test for our ability
to call syscall (__NR_futex, ...);.  This macro adds "main () { ... }"
around the provided code segment automatically.  The provided code
segment provided its own main() function, however.

The result looked something like:

int main (void) {
  int main (void) {
    ...
  }
}

which worked on GCC, but not on clang.

Let's fix that.  Let's fix the same mistake copied over for eventfd()
detection while we're at it.
2014-06-20 16:00:48 -04:00
Erik van Pienbroek
9f69534030 Prevent an invalid @CARBON_LIBS@ from appearing in the .pc files
Fixes static linking when using the glib pkgconfig file.
Regression was introduced in commit 8d037c6 (bz #668152)

https://bugzilla.gnome.org/show_bug.cgi?id=731657
2014-06-14 14:21:37 -04:00
Chun-wei Fan
6eb55b9a33 Support Building Using Visual Studio 2013
Like the Visual Studio 2012 project files, the Visual Studio 2013 files are
largely the same as the Visual Studio 2010 project files, so support
Visual Studio 2013 by updating the autotools scripts that is used for
Visual Studio 2012.  This means that project files for Visual Studio 2012
and Visual Studio 2013 can be maintained by simply maintaining the Visual
Studio 2010 project files, adding minimal maintenance overhead.
2014-06-03 15:50:37 +08:00
Antoine Jacoutot
6c7972a05c build: also unset LIBS when LDFLAGS is unset
On OpenBSD, libintl is installed under /usr/local/lib. When configure
checks unset LDFLAGS, LIBS should also be unset otherwise we end up with
-lintl which cannot be found resulting to the compile check to fail.

https://bugzilla.gnome.org/show_bug.cgi?id=727939
2014-04-15 15:12:08 +02:00
Antoine Jacoutot
74ec947079 openbsd: remove -pthread
This is not needed any longer; libpthread is properly included in
shared libs on OpenBSD where -pthread -lpthread mean the same.
2014-04-12 07:56:09 +02:00