Commit Graph

152 Commits

Author SHA1 Message Date
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
Philip Withnall
a24f57b071 glib: Add installed Valgrind suppressions file for GLib and GIO
While we cannot get Valgrind to automatically load this suppression file
for applications which link to GLib
(https://bugs.kde.org/show_bug.cgi?id=160905), we can at least install
it on systems in a shared directory, so that developers can use a
standardised (and up-to-date) suppressions file for GLib, rather than
rolling their own.

The file will typically be installed to:
   /usr/share/glib-2.0/valgrind/glib.supp

Distributors: it is recommended that this suppression file be installed
as part of the development package for GLib in your distribution.

https://bugzilla.gnome.org/show_bug.cgi?id=666114
2016-11-23 10:45:56 +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
Philip Withnall
63737df0e8 docs: Add a README.rationale documenting major design decisions
It will be useful to document the major decisions which affect the whole
of GLib in one centralised, easily-greppable file, otherwise they will
get lost forever in Bugzilla.

This file should contain a brief explanation of the decision and its
rationale, plus a link to further discussion (e.g. on a mailing list or
bug report).

This contains an initial discussion about use of compiler attributes in
GLib.

https://bugzilla.gnome.org/show_bug.cgi?id=113075
2014-05-04 18:22:09 +01:00
Dan Winship
be231c6be0 glib-tap.mk: fix to actually use the TAP driver
The Makefile rules in glib-tap.mk were copied from an example that
assumed that all the test programs had names ending in ".test", so
they didn't actually have any effect for us and resulted in us still
using the standard automake test driver. Fix this so we actually do
use TAP now.

https://bugzilla.gnome.org/show_bug.cgi?id=711796
2013-11-23 00:43:54 -05:00
Matthias Clasen
820406931b Dist tap-test script
Otherwise it won't be around when make distcheck is looking
for it.
2013-08-19 22:32:21 -04:00
Matthias Clasen
49cf439ce7 Fix make check
The glib/tests contained some tests for gtester. Now that
we're not including glib.mk anymore, we have to define
GTESTER ourselves.
2013-08-19 20:57:44 -04:00
Ryan Lortie
15477ebd42 Makefile.am: move gtk-doc.make back to EXTRA_DIST
0192c59937 moved this file from EXTRA_DIST TO
BUILT_EXTRA_DIST for an unknown reason.

Having it here causes the timestamp to be updated during 'make dist' to
something newer than docs/reference/*/Makefile.in.  This is a problem
because those Makefile.in are generated by including gtk-doc.make, so
automake becomes convinced that they need to be regenerated.  This is a
problem for people who don't have automake installed, or have the wrong
version.

The timestamp problem has been around for quite a while, but it only
became a problem recently after automake changed policy about this in
commit a22717dffe37f30ef2ad2c355b68c9b3b5e4b8c7.

Specifically:

https://bugzilla.gnome.org/show_bug.cgi?id=700350
2013-06-22 09:28:55 -04:00
Ryan Lortie
f9eb9eed10 Rework the build system for a new tests approach
Perform a substantial cleanup of the build system with respect to
building and installing testcases.

First, Makefile.decl has been renamed glib.mk and substantially
expanded.  We intend to add more stuff here in the future, like canned
rules for mkenums, marshallers, resources, etc.

By default, tests are no longer compiled as part of 'make'.  They will
be built when 'make check' is run.  The old behaviour can be obtained
with --enable-always-build-tests.

--disable-modular-tests is gone (because tests are no longer built by
default).  There is no longer any way to cause 'make check' to be a
no-op, but that's not very useful anyway.

A new glibtests.m4 file is introduced.  Along with glib.mk, this
provides for consistent handling of --enable-installed-tests and
--enable-always-build-tests (mentioned above).

Port our various test-installing Makefiles to the new framework.

This patch substantially improves the situation in the toplevel tests/
directory.  Things are now somewhat under control there.  There were
some tests being built that weren't even being run and we run those now.
The long-running GObject performance tests in this directory have been
removed from 'make check' because they take too long.

As an experiment, 'make check' now runs the testcases on win32 builds,
by default.  We can't run them under gtester (since it uses a pipe to
communicate with the subprocess) so just toss them in TESTS.  Most of
them are passing on win32.

Things are not quite done here, but this patch is already a substantial
improvement.  More to come.
2013-05-31 23:12:15 -04:00
Ryan Lortie
614f6c5e70 Add new API checking utility
Add a test script to make sure that (with a few exceptions) only symbols
that start with 'g_' are being exported from our public libraries.

https://bugzilla.gnome.org/show_bug.cgi?id=692029
2013-01-18 13:57:07 -05:00
Colin Walters
cff536c99e mkinstalldirs: Delete from version control
This is installed by automake.  By maintaining it in git, we create
merge conflicts as people build with different versions of automake.

Just use 'mkdir -p' instead in gettext.  Should be portable enough.

https://bugzilla.gnome.org/show_bug.cgi?id=686839
2012-10-29 09:39:36 -04:00
Colin Walters
f084b60377 build: Add --disable-modular-tests build option
This patch solves two problems:

First, it allows builders to optionally cut the circular dependency
between dbus and glib by disabling the modular tests (just like how
the tests can be disabled in dbus).

Second, the tests are entirely pointless to build if cross-compiling.

It also moves us slightly closer to the long term future we want where
the tests are a separate ./configure invocation and run against the
INSTALLED glib, not the one in the source tree. This would allow us to
run the tests constantly, not just when glib is built.

https://bugzilla.gnome.org/show_bug.cgi?id=667806
2012-04-15 11:15:54 -04:00
Ryan Lortie
306aa62ea5 drop -uninstalled.pc files
These were meant to provide the ability to use GLib directly out of its
build tree but have a couple of rather serious limitations that prevent
their serious use:

 - these files only worked with programs built using libtool

 - for non-trivial uses, other environment variables will need to be
   setup to allow GLib to function properly

 - the system doesn't stack well when attempting to use multiple
   libraries all uninstalled

The jhbuild --prefix= style system works much better in every way, so we
remove this old hack.
2011-10-16 19:14:18 -04:00
Matthias Clasen
a21ee644c8 Don't distribute MAINTAINERS
...it does not exist anymore.
2011-08-29 19:02:33 -04:00
Colin Walters
5f7be6c67d build: Use --disable-maintainer-mode for distcheck
Otherwise due to weird things like gtk-doc.make copying files back
into the source directory, we may run into the maintainer mode
bits mistakenly attempting to rerun.
2011-07-05 10:20:48 -04:00
Colin Walters
9053ad07ba Fix a srcdir!=builddir issue, and export that we support it
Future jhbuild versions will consume the BUILD API and automatically
use a builddir, so mark us as supporting it.
2011-06-21 10:30:07 -04:00
Javier Jardón
de56aca0b5 Clean autotools config a bit
New requirements:
autoconf >= 2.62
automake >= 1.10
libtool >= 2.2
2010-07-13 19:36:37 +02:00
Ryan Lortie
83d67bf2e7 move glibconfig.h to glib/ 2010-07-12 15:33:05 -04:00
Matthias Clasen
d9dc570c59 Add ACLOCAL_AMFLAGS to Makefile.am
Patch by Vincent Untz, bug 570036
2010-07-10 20:02:48 -04:00
Matthias Clasen
cca48bd5b9 Add support for coverage reports with lcov
Patch by Patrick Hulin, bug #501057.
2010-06-20 22:46:47 -04:00
Ryan Lortie
fcbddd746b Add 'if' that was absorbed by $(AM_V_GEN)
From commit 1b8ee5196e
2010-06-17 09:38:39 -04:00
Christian Persch
1b8ee5196e Sprinkle some $(AM_V_GEN) around to make the build more silent. 2010-06-15 22:01:02 -04:00
Tor Lillqvist
9af8b83211 Add GWin32InputStream and GWin32OutputStream classes
Correspond to GUnixInputStream and GUnixOutputStream. No true async
support though. But that is how the Win32 API is, for files not
explicitly opened for so-called overlapped IO.

The API to create these streams takes Win32 HANDLEs. Not file
descriptors, because file descriptors are specific to the C library
used. The user code and GLib might be using different C libraries.

Also add a test program for the new classes, and a gio-windows-2.0.pc
file.
2010-04-19 11:54:56 +03:00
Tor Lillqvist
8202728f06 Install gio-unix-2.0.pc only on Unix
The gio-unix-2.0 headers are installed only on Unix anyway.
2009-12-22 00:48:34 +02:00
Matthias Clasen
20774c5663 Add a rule to generate ChangeLog
We use the same rule pango uses to create a ChangeLog file with
the help of git-log. The format is somewhat different from traditional
ChangeLog, but it contains the relevant information.
2009-04-02 23:42:29 -04:00
Matthias Clasen
785bed2e18 Update README files to refer to git
Update various README files to refer to git instead of svn.
Add a README.commits that is pretty much a copy of the same file
in GTK+. Also discontinue ChangeLog files.
2009-03-31 19:39:16 -04:00
Matthias Clasen
ec48fa8fc2 2.19.1
svn path=/trunk/; revision=7717
2008-12-01 14:44:26 +00:00
12:58:54 Tim Janik
a9287f0cdf fixed build order to build gobject after gmodule gthread so gobject tests
2008-02-07 12:58:54  Tim Janik  <timj@imendio.com>

        * Makefile.am: fixed build order to build gobject after gmodule gthread
        so gobject tests can be threaded.



svn path=/trunk/; revision=6480
2008-02-07 12:00:34 +00:00
Matthias Clasen
48ba9ea756 2.15.0
svn path=/trunk/; revision=6180
2007-12-21 00:37:41 +00:00
Behdad Esfahbod
942f84e6c9 Don't descend into build/. (#500875)
2007-12-01  Behdad Esfahbod  <behdad@gnome.org>

        * Makefile.am: Don't descend into build/. (#500875)


svn path=/trunk/; revision=6012
2007-12-01 23:46:17 +00:00
Alexander Larsson
3781343738 gio/ docs/reference/gio Merged gio-standalone into glib.
2007-11-26  Alexander Larsson  <alexl@redhat.com>

        * Makefile.am:
        * configure.in:
        * gio-2.0-uninstalled.pc.in:
        * gio-2.0.pc.in: 
        * gio-unix-2.0-uninstalled.pc.in:
        * gio-unix-2.0.pc.in:
	* gio/
	* docs/reference/gio
	Merged gio-standalone into glib.
	
        * glib/glibintl.h:
        * glib/gutils.c:
	Export glib_gettext so that gio can use it
	Add P_ (using same domain for now)
	Add I_ as g_intern_static_string


svn path=/trunk/; revision=5941
2007-11-26 16:13:05 +00:00
Matthias Clasen
0c01c6f1ad Replace INCLUDES by AM_CPPFLAGS, other cleanups.
2007-11-24  Matthias Clasen  <mclasen@redhat.com>

        * */Makefile.am: Replace INCLUDES by AM_CPPFLAGS, other
        cleanups.



svn path=/trunk/; revision=5932
2007-11-25 04:22:45 +00:00
21:06:47 Tim Janik
1e55738f31 initialize automake variables EXTRA_DIST and TEST_PROGS for unconditional
2007-11-21 21:06:47  Tim Janik  <timj@imendio.com>

	* Makefile.decl: initialize automake variables EXTRA_DIST and
	TEST_PROGS for unconditional appending via += in other makefiles.
	define recursive test targets: test, test-report, perf-report,
	full-report, as described here:
      http://mail.gnome.org/archives/gtk-devel-list/2007-November/msg00000.html

	* Makefile.am:
	* build/win32/vs8/Makefile.am, build/win32/dirent/Makefile.am:
	* build/win32/Makefile.am, build/Makefile.am:
	* docs/Makefile.am, docs/reference/Makefile.am:
	* docs/reference/glib/Makefile.am, docs/reference/gobject/Makefile.am:
	* gmodule/Makefile.am, tests/Makefile.am:
	* tests/refcount/Makefile.am, tests/gobject/Makefile.am:
	* glib/update-pcre/Makefile.am, glib/libcharset/Makefile.am:
	* glib/tests/Makefile.am, glib/pcre/Makefile.am:
	* glib/gnulib/Makefile.am, gobject/Makefile.am, m4macros/Makefile.am:
	* gthread/Makefile.am, glib/Makefile.am:
	include $(top_srcdir)/Makefile.decl, adapted EXTRA_DIST assignments.

	* glib/tests/Makefile.am: removed example testing rules.

	* glib/tests/testing.c: conditionalized performance and slow tests.

	* glib/gtestutils.h:
	* glib/gtestutils.c: work around g_test_config_vars not changing its
	exported value after value assignments, aparently due to symbol aliases.

	* glib/gtester.c: fixed off-by-one error which produced junk in logs.

	* configure.in: check for python >= 2.4 and provide $PYTHON for scripts.


svn path=/trunk/; revision=5914
2007-11-21 20:09:46 +00:00
Matthias Clasen
284c7e559b Add AM_PROG_CC_C_O.
2007-11-09  Matthias Clasen <mclasen@redhat.com>

        * configure.in: Add AM_PROG_CC_C_O.

        * Makefile.am: Remove the install-exec-local hook and use
        configexecincludedir_DATA instead, in an attempt to avoid
        automake 1.9 <> 1.10 incompatibilities.

        * glib/Makefile.am: Rename MIRRORING_TAB_SOURCES, since
        automake 1.10 complains.


svn path=/trunk/; revision=5848
2007-11-09 23:40:41 +00:00
Matthias Clasen
11c7634af3 Use MKDIRS_P instead of mkinstalldirs.
2007-11-08  Matthias Clasen <mclasen@redhat.com>

        * Makefile.am: Use MKDIRS_P instead of mkinstalldirs.



svn path=/trunk/; revision=5829
2007-11-09 01:33:40 +00:00
Matthias Clasen
0b434a3cbd 2.14.0
svn path=/trunk/; revision=5674
2007-08-04 03:03:02 +00:00
Tor Lillqvist
420262f515 Makefile.am Add the references to build back.
2007-04-15  Tor Lillqvist  <tml@novell.com>

	* Makefile.am
	* configure: Add the references to build back.


svn path=/trunk/; revision=5451
2007-04-15 11:44:41 +00:00
Matthias Clasen
912027f0df Some file list updates (#398069, Owen Taylor)
2007-01-19  Matthias Clasen  <mclasen@redhat.com>

        Some file list updates (#398069, Owen Taylor)

        * docs/Changes-2.0.txt
        * docs/reference/README.cvs-commits
        * glib.spec.in: Remove obsolete files

        * tests/Makefile.am:
        * glib/libcharset/Makefile.am:
        * gobject/Makefile.am:
        * Makefile.am: Add some missing files to EXTRA_DIST

        * tests/timeloop-basic.c: Make it build
        * HACKING: Small updates


svn path=/trunk/; revision=5302
2007-01-19 15:50:30 +00:00
Michael Natterer
99b531f425 configure.in remove references to build/ until a proper decision has been
2007-01-02  Michael Natterer  <mitch@imendio.com>

	* configure.in
	* Makefile.am: remove references to build/ until a proper decision
	has been made what to do with it.


svn path=/trunk/; revision=5189
2007-01-02 10:40:27 +00:00
Matthias Clasen
0b8901daee dist all changelogs 2006-03-09 05:31:52 +00:00
Brian Cameron
e9cc05b828 Added gmodule-no-export-2.0-uninstalled.pc.in to allow building of other
2005-05-06  Brian Cameron  <brian.cameron@sun.com>

        * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
          Makefile.am:  Added gmodule-no-export-2.0-uninstalled.pc.in
          to allow building of other libraries like pango when
          glib is uninstalled.
2005-05-06 21:54:52 +00:00
Owen Taylor
5a18db1986 Add missing ChangeLog.pre*
2005-01-10  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
2005-01-10 16:08:48 +00:00
Matthias Clasen
117ae23f5d Generate and distribute gmodule-export-2.0.pc, which is currently just a
2005-01-07  Matthias Clasen  <mclasen@redhat.com>

	* configure.in:
	* Makefile.am: Generate and distribute gmodule-export-2.0.pc,
	which is currently just a copy of gmodule-2.0.pc, but makes
	it explicit that it adds --export-dynamic.

	* gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
2005-01-07 15:20:15 +00:00
Matthias Clasen
846e5140c3 Add gmodule-no-export-2.0.pc.in
2004-11-16  Matthias Clasen  <mclasen@redhat.com>

	* Makefile.am (EXTRA_DIST):
	* configure.in (AC_CONFIG_FILES): Add gmodule-no-export-2.0.pc.in

	* gmodule-no-export-2.0.pc.in: Add a variants of gmodule-2.0.pc.in
	which doesn't add -Wl,--export-dynamic, since Pango or GTK+ don't
	need it.  (#125627, Owen Taylor)
2004-11-17 03:33:05 +00:00
Matthias Clasen
6179b0620b Fix #132858, Sven Neumann, patch by James Henstridge:
2004-07-21  Matthias Clasen  <mclasen@redhat.com>

	Fix #132858, Sven Neumann, patch by James Henstridge:

	* glib-gettextize.in: modify so that mkinstalldirs will
	get installed into auxdir.

	* Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
2004-07-21 18:14:54 +00:00
Soeren Sandmann
0192c59937 === Released 2.5.0 ===
Sun Jul 18 19:40:30 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* === Released 2.5.0 ===

	* Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
2004-07-18 17:44:23 +00:00
Tor Lillqvist
fd64571b80 Update.
2004-03-06  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Update.

	* configure.in
	* Makefile.am
	* */Makefile.am: Drop the hand-written makefile.mingw(.in)
	files. They haven't been maintained in a long time. As several
	people have managed to build GLib for Win32 using the
	autoconfiscation mechanism, there is no real reason to even try to
	maintain the hand-written mingw makefiles.
2004-03-06 07:37:46 +00:00
James Henstridge
c4391cbf37 require automake 1.7. Add calls to libtoolize and gtkdocize. Clean up some
2003-03-01  James Henstridge  <james@daa.com.au>

    * autogen.sh: require automake 1.7.  Add calls to libtoolize and
    gtkdocize.  Clean up some of the error messages.

    * configure.in: move version declaration to the top of the file
    (before AC_INIT), using M4 macros.
    GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
    of M4 macro expansion in help messages instead.
    Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
    format help strings.  Use quadrigraphs to get square brackets to
    show correctly.
    Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
    Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
    glibconfig.h, so that "./config.status glibconfig.h" works.
    Add an extra AC_CONFIG_FILES call listing other files we want
    generated by config.status protected by an "if false" block.  This
    way automake generates the rules needed to rebuild the files for
    us.
    Add quotes in various places.

    * docs/reference/*/Makefile.am: convert to use the common
    gtk-doc.make file.  This localises the complexity to a single
    makefile fragment maintained with gtk-doc itself.

    * */Makefile.am: remove unneeded rules to build win32 files with
    config.status.  Automake now does this for us.
    Replace instances of @FOO@ with $(FOO) where appropriate -- this
    allows automake to do a better job checking the makefile.
    Add some files to DISTCLEANFILES where appropriate

    * Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
    ensure that --enable-gtk-doc is passed to configure during a
    distcheck.  Remove the custom distcheck, since the standard one
    will now do.

    * gobject/Makefile.am: switch to BUILT_SOURCES, since that now
    works.
2003-03-04 10:10:48 +00:00
Tor Lillqvist
ff78c76b46 Include ChangeLog.pre-2-2.
2003-02-11  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am (EXTRA_DIST): Include ChangeLog.pre-2-2.
2003-02-11 18:02:53 +00:00