gnome.gobject-introspection
14 years agoSubstitute deprecated Glib symbol: g_mapped_file_free GOBJECT_INTROSPECTION_0_6_7
Javier Jardón [Thu, 3 Dec 2009 20:35:23 +0000 (21:35 +0100)]
Substitute deprecated Glib symbol: g_mapped_file_free

glib-compat.h file created to use g_mapped_file_unref only if
glib >= 2.22 is available

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

14 years agofix invoke tests
Saleem Abdulrasool [Sun, 13 Dec 2009 19:56:45 +0000 (11:56 -0800)]
fix invoke tests

retval should be a valid pointer

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

14 years agoprotect on null retval
Saleem Abdulrasool [Sun, 13 Dec 2009 19:53:04 +0000 (11:53 -0800)]
protect on null retval

ffi_call does not protect against retval being NULL, resulting in a segfault.

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

14 years agoRevert "GI_TYPE_TAG_VOID != ffi_type_void"
Johan Dahlin [Tue, 15 Dec 2009 13:00:52 +0000 (11:00 -0200)]
Revert "GI_TYPE_TAG_VOID != ffi_type_void"

This reverts commit 28cccba737ec2214da66b0d74059278162cf5fd0.

14 years agoDo not require the precense of INTROSPECTION_GIRS
Johan Dahlin [Mon, 14 Dec 2009 23:44:26 +0000 (21:44 -0200)]
Do not require the precense of INTROSPECTION_GIRS

It's useful to be able to include the makefile without
having introspection enabled.

14 years agoUpdate .gitignore
Johan Dahlin [Mon, 14 Dec 2009 23:43:55 +0000 (21:43 -0200)]
Update .gitignore

14 years agoInstall Makefile.introspection in the right dir
Johan Dahlin [Mon, 14 Dec 2009 23:42:54 +0000 (21:42 -0200)]
Install Makefile.introspection in the right dir

Also, make sure that it is included in the dist

14 years agoMove the functions out of the define
Johan Dahlin [Mon, 14 Dec 2009 23:42:21 +0000 (21:42 -0200)]
Move the functions out of the define

As it breaks when including the makefile when using
an absolute path.

14 years agoAdd a Makefile.introspection
Johan Dahlin [Mon, 14 Dec 2009 19:21:54 +0000 (17:21 -0200)]
Add a Makefile.introspection

This will make it easier for third-party projects to use
introspection by having easy make rules.

14 years agoPost release version bump
Johan Dahlin [Thu, 10 Dec 2009 19:21:40 +0000 (17:21 -0200)]
Post release version bump

14 years agoannotate g_completion_complete_utf8 GOBJECT_INTROSPECTION_0_6_6
Dan Winship [Wed, 9 Dec 2009 21:39:43 +0000 (16:39 -0500)]
annotate g_completion_complete_utf8

acts as a regression test on the recognizing-GLib.List-inside-glib
part of the previous patch.

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

14 years ago[scanner] Fix various hardcoded type name checks
Dan Winship [Wed, 9 Dec 2009 21:38:57 +0000 (16:38 -0500)]
[scanner] Fix various hardcoded type name checks

Various places that check hardcoded type names were not always handling
the case of the type being used from within its own library (in which
case it won't have a type prefix). Make them more consistent.

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

14 years ago[scanner] "GError *" is not the same as "GError **"
Dan Winship [Wed, 9 Dec 2009 21:37:18 +0000 (16:37 -0500)]
[scanner] "GError *" is not the same as "GError **"

Only set "throws" in the latter case

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

14 years agoImprove the error message
Johan Dahlin [Wed, 9 Dec 2009 18:39:31 +0000 (16:39 -0200)]
Improve the error message

14 years agoFix an annotationparser bug for empty tags
Johan Dahlin [Wed, 9 Dec 2009 18:38:43 +0000 (16:38 -0200)]
Fix an annotationparser bug for empty tags

Makes sure we can parse empty tags such as '@foo:' without
adding a : in the end which the typelib compiler will complain
about

14 years ago[Gio] g_repalce_contents_finish has an out arg
Johan Dahlin [Wed, 9 Dec 2009 12:24:16 +0000 (10:24 -0200)]
[Gio] g_repalce_contents_finish has an out arg

14 years agoMake error more verbose in parser
Bastien Nocera [Wed, 9 Dec 2009 11:21:30 +0000 (11:21 +0000)]
Make error more verbose in parser

By printing the function when arguments are missing

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

14 years agoWrap line in 80 characters
Johan Dahlin [Tue, 8 Dec 2009 19:43:30 +0000 (17:43 -0200)]
Wrap line in 80 characters

14 years ago[everything] Add a function which has multiple (out) double arguments
Colin Walters [Mon, 7 Dec 2009 16:49:33 +0000 (11:49 -0500)]
[everything] Add a function which has multiple (out) double arguments

This is similar to a Clutter function.

14 years ago[transformer] Look up callback types in the full name set, not just typedefs
Colin Walters [Thu, 3 Dec 2009 23:40:36 +0000 (18:40 -0500)]
[transformer] Look up callback types in the full name set, not just typedefs

When looking up GINames, we should look in _names.names.

14 years agoFix foo-1.0-expected.{gir,tgir} for callback patch
Colin Walters [Mon, 7 Dec 2009 23:34:35 +0000 (18:34 -0500)]
Fix foo-1.0-expected.{gir,tgir} for callback patch

14 years agoscanner: more verbose parser error messages
Stefan Kost [Sat, 5 Dec 2009 21:00:32 +0000 (23:00 +0200)]
scanner: more verbose parser error messages

Keep track of the current line (the first 2000 chars of it) and include that in
syntax error messages. Also print that failed token in the error message.

14 years agoscanner: fix wrong linenumbers in parser errors
Stefan Kost [Sat, 5 Dec 2009 20:54:43 +0000 (22:54 +0200)]
scanner: fix wrong linenumbers in parser errors

Increment linenumber in parse_comment which reads over multiline comments.

14 years agoannotationparser: include symbol name in warning
Stefan Kost [Fri, 4 Dec 2009 16:42:48 +0000 (18:42 +0200)]
annotationparser: include symbol name in warning

Telling file and line would be better, but alreday this way one atleast has a
chance to fix it actually.

14 years agoscanner: don't warn about unexpected characters when the char is \0
Stefan Kost [Fri, 4 Dec 2009 16:33:22 +0000 (18:33 +0200)]
scanner: don't warn about unexpected characters when the char is \0

14 years agoAdd ffi cflags/libs/requires to exported .pc
Johan Dahlin [Fri, 4 Dec 2009 15:13:55 +0000 (13:13 -0200)]
Add ffi cflags/libs/requires to exported .pc

This is required as external projects such as gjs
are now using girffi and thus need the ffi cflags
to be able to link.

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

14 years agoRevert "Require libffi.pc"
Johan Dahlin [Fri, 4 Dec 2009 14:19:08 +0000 (12:19 -0200)]
Revert "Require libffi.pc"

This reverts commit 92abbe78dd7ffe0ff6d61db5f2bff0745a69115a and
494c1c92520917999407832453c11c2247b4e7bb.

14 years agoAllow NULL to be sent in for various callbacks
Johan Dahlin [Thu, 3 Dec 2009 21:15:45 +0000 (19:15 -0200)]
Allow NULL to be sent in for various callbacks

14 years ago[everything] Allow passing NULL to the callback
Johan Dahlin [Thu, 3 Dec 2009 21:14:31 +0000 (19:14 -0200)]
[everything] Allow passing NULL to the callback

14 years agoRemove scope notified annotations
Johan Dahlin [Thu, 3 Dec 2009 10:07:56 +0000 (08:07 -0200)]
Remove scope notified annotations

It's no longer necessary as the scanner figures out these
by itself

14 years agoCheck for AsyncReadyCallback / DestroyNotify
Johan Dahlin [Thu, 3 Dec 2009 10:06:22 +0000 (08:06 -0200)]
Check for AsyncReadyCallback / DestroyNotify

This should have been included with f74823. Fixes
the async/notified scope annotation for glib/gio.

14 years ago[configure.ac] Followup to 494c1c92520 - restore $GCOV_LIBS
Colin Walters [Wed, 2 Dec 2009 23:17:03 +0000 (18:17 -0500)]
[configure.ac] Followup to 494c1c92520 - restore $GCOV_LIBS

14 years agoRequire libffi.pc
Colin Walters [Wed, 2 Dec 2009 22:56:05 +0000 (17:56 -0500)]
Require libffi.pc

We use it for girffi.h.  Remove the code to detect libffi without the .pc
file.  If you don't have it, get it.

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

14 years ago[dumper] Fix threads initialization
Colin Walters [Wed, 2 Dec 2009 17:56:52 +0000 (12:56 -0500)]
[dumper] Fix threads initialization

Correctly guard with g_thread_supported, call g_thread_init before
g_type_init.

14 years agoAdd async callback tests to everything
Maxim Ermilov [Wed, 2 Dec 2009 13:01:17 +0000 (11:01 -0200)]
Add async callback tests to everything

14 years agoIgnore errors caused by permissions in $HOME
Josselin Mouette [Wed, 2 Dec 2009 12:50:29 +0000 (10:50 -0200)]
Ignore errors caused by permissions in $HOME

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

14 years agoRemove some unportable integral type size assumptions
Iain Nicol [Mon, 23 Nov 2009 18:52:40 +0000 (18:52 +0000)]
Remove some unportable integral type size assumptions

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

14 years agoUse ${datadir} in lieu of hardcoding ${prefix}/share
Christian Persch [Mon, 16 Nov 2009 12:09:18 +0000 (13:09 +0100)]
Use ${datadir} in lieu of hardcoding ${prefix}/share

Bug #602087.

14 years agoFix build on OpenBSD
Jasper Lievisse Adriaanse [Wed, 2 Dec 2009 12:38:58 +0000 (10:38 -0200)]
Fix build on OpenBSD

Due to a missing header, gobject-introspection fails to compile on OpenBSD.
And only due to headers-including-headers practice this doesn't blow up on
many other platforms.

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

14 years agoGI_TYPE_TAG_VOID != ffi_type_void
Maxim Ermilov [Fri, 27 Nov 2009 15:49:51 +0000 (18:49 +0300)]
GI_TYPE_TAG_VOID != ffi_type_void

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

14 years agoBetter scope in GAsyncReadyCallback/GDestroyNotify
Johan Dahlin [Wed, 25 Nov 2009 00:18:27 +0000 (22:18 -0200)]
Better scope in GAsyncReadyCallback/GDestroyNotify

GAsyncReadyCallback should have use the async scope per
default and GDestroyNotify should be notified if the
previous parameters are a callback and user data.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=602862

14 years agoPlug a leak in g_callable_info_get_ffi_return_type
Maxim Ermilov [Wed, 2 Dec 2009 12:18:24 +0000 (10:18 -0200)]
Plug a leak in g_callable_info_get_ffi_return_type

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

14 years agoInitiallyUnownedClass should contain all the fields as ObjectClass if we want offset...
Tomeu Vizoso [Thu, 26 Nov 2009 11:43:42 +0000 (11:43 +0000)]
InitiallyUnownedClass should contain all the fields as ObjectClass if we want offset counting to be correct in its sublasses

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

14 years agoMake (skip) annotation work everywhere
Dan Winship [Sun, 22 Nov 2009 17:49:37 +0000 (12:49 -0500)]
Make (skip) annotation work everywhere

Previously it only worked for toplevel nodes. Now it works for any
node except <field>, since skipping a field would cause the
description of the struct layout to be wrong.

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

14 years agoFix enum prefix stripping to work only up to word boundaries
Dan Winship [Mon, 23 Nov 2009 15:52:09 +0000 (10:52 -0500)]
Fix enum prefix stripping to work only up to word boundaries

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

14 years agoCorrect g_file_enumerator_next_files_finish annotation.
Maxim Ermilov [Wed, 18 Nov 2009 21:14:14 +0000 (00:14 +0300)]
Correct g_file_enumerator_next_files_finish annotation.

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

14 years agoAdd a method to compare infos
Simon van der Linden [Fri, 20 Nov 2009 09:38:36 +0000 (10:38 +0100)]
Add a method to compare infos

Add g_base_info_equal.

14 years agoAdd g_ir_ffi_convert_arguments
Tomeu Vizoso [Tue, 20 Oct 2009 19:33:33 +0000 (20:33 +0100)]
Add g_ir_ffi_convert_arguments

14 years agoDon't put the callback element inside the field if it's not a glib struct
Tomeu Vizoso [Tue, 10 Nov 2009 18:37:28 +0000 (19:37 +0100)]
Don't put the callback element inside the field if it's not a glib struct

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

14 years agoImplement callbacks as part of struct fields. Fixes #557383
Tomeu Vizoso [Mon, 9 Nov 2009 18:17:23 +0000 (19:17 +0100)]
Implement callbacks as part of struct fields. Fixes #557383

gir: embed <callback> inside <field>
typelib: if a field contains a callback, store it just after the FieldBlob
girepository API: no additions

14 years ago[gtypelib.h] Document SimpleTypeBlob more
Colin Walters [Wed, 4 Nov 2009 16:43:13 +0000 (11:43 -0500)]
[gtypelib.h] Document SimpleTypeBlob more

14 years ago[Gio] Annotate g_file_make_directory_with_parents
Colin Walters [Sun, 25 Oct 2009 15:33:45 +0000 (11:33 -0400)]
[Gio] Annotate g_file_make_directory_with_parents

14 years agoWhen doing type resolution on a string, treat it as its own ctype
Colin Walters [Fri, 23 Oct 2009 03:53:37 +0000 (23:53 -0400)]
When doing type resolution on a string, treat it as its own ctype

Calling _resolve_param_type on a string instead of Node is fairly unusual,
and (as far as I could see) basically only happened in the Array processing
code.  We were passing None as the ctype in this case, but we might as well
try using the name as a ctype too.

This fixes using GCallback (and in general any item in an array that comes
from an included gir).

14 years agoFix make check after f152f5e97df7
Tomeu Vizoso [Thu, 22 Oct 2009 11:43:36 +0000 (12:43 +0100)]
Fix make check after f152f5e97df7

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

14 years agoFix make check after 0d9cfb004d528
Tomeu Vizoso [Thu, 22 Oct 2009 11:43:15 +0000 (12:43 +0100)]
Fix make check after 0d9cfb004d528

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

14 years agoUse best known derived parent
Colin Walters [Mon, 19 Oct 2009 22:18:14 +0000 (18:18 -0400)]
Use best known derived parent

In the case where a known class derives from a hidden one, we want
to use the most-derived parent class, rather than simply falling back
to GObject.

Example:
ShellEmbedWidget in gnome-shell derives from ClutterGLXTexturePixmap from clutter,
which is a hidden class.  ClutterGLXTexturePixmap's parent itself is
ClutterX11TexturePixmap, which is also hidden.  But its parent is
ClutterTexture, which we do know.  Use that.

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

14 years agoExplicitly sort object interfaces, properties, and signals
Colin Walters [Wed, 7 Oct 2009 19:54:05 +0000 (15:54 -0400)]
Explicitly sort object interfaces, properties, and signals

Previously we were taking this in order from the dumper, which ends up
being some undefined order from GObject.  Just use Node's cmp to sort
them by name explicitly.

This probably doesn't cover all possible instances of this problem,
but these fixes are right.

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

14 years agoConsistently resolve symbolic links
Adam Sampson [Mon, 28 Sep 2009 17:45:23 +0000 (13:45 -0400)]
Consistently resolve symbolic links

When building the list of valid filenames for the scanner, resolve symlinks in
the filenames; the lexer does this when including files, so otherwise we'll get
filename mismatches if the path to the files being scanned includes a symlink.

Signed-off-by: Colin Walters <walters@verbum.org>
14 years agoRemove a remnant of shave
Johan Bilien [Fri, 18 Sep 2009 15:37:02 +0000 (11:37 -0400)]
Remove a remnant of shave

14 years agoMake g-ir-scanner 64-bit enable. Closes #593639
Halton Huo [Tue, 1 Sep 2009 06:27:42 +0000 (14:27 +0800)]
Make g-ir-scanner 64-bit enable. Closes #593639

14 years agoPost release version bump
Owen W. Taylor [Sat, 5 Sep 2009 00:29:32 +0000 (20:29 -0400)]
Post release version bump

14 years agoBump version to 0.6.5 GOBJECT_INTROSPECTION_0_6_5
Owen W. Taylor [Sat, 5 Sep 2009 00:27:27 +0000 (20:27 -0400)]
Bump version to 0.6.5

14 years agoCorrectly ref repository in GIUnresolvedInfo
Colin Walters [Fri, 4 Sep 2009 21:02:14 +0000 (17:02 -0400)]
Correctly ref repository in GIUnresolvedInfo

Followup to previous patch.

14 years agoAdd CLFAGS and LIBS variables
Simon van der Linden [Wed, 26 Aug 2009 08:05:23 +0000 (10:05 +0200)]
Add CLFAGS and LIBS variables

14 years agoBug 593322 - Fix unref of GIUnresolvedInfo instances
Colin Walters [Fri, 4 Sep 2009 20:52:35 +0000 (16:52 -0400)]
Bug 593322 - Fix unref of GIUnresolvedInfo instances

We are treating GIUnresolvedInfo as a GIBaseInfo, but the structures
had drifted out of sync.  Add a repository pointer and bring them
back into sync.

Based on a report and patch from Jan Hudec <bulb@ucw.cz>

14 years agoBug 593162 - Use built scanner from tarball builds
Colin Walters [Fri, 4 Sep 2009 18:10:16 +0000 (14:10 -0400)]
Bug 593162 - Use built scanner from tarball builds

Looking for .git/.svn breaks in tarball scenarios; instead just see
if our source directory is named 'tools'.

14 years agoAdd GVolumeMonitor interfaces
Adel Gadllah [Mon, 31 Aug 2009 21:52:24 +0000 (23:52 +0200)]
Add GVolumeMonitor interfaces

Add GVolumeMonitor interfaces, used by gnome-shell's overlay (places)

Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
Signed-off-by: Colin Walters <walters@verbum.org>
14 years agoUse CC rather than LD to fix build issue for gir. Closes #593599.
Halton Huo [Mon, 31 Aug 2009 02:38:08 +0000 (10:38 +0800)]
Use CC rather than LD to fix build issue for gir. Closes #593599.

14 years agoReplace LIBTOOL_LIBTOOL to LIBTOOL. Closes #592968.
Halton Huo [Tue, 25 Aug 2009 03:22:41 +0000 (11:22 +0800)]
Replace LIBTOOL_LIBTOOL to LIBTOOL. Closes #592968.

14 years agoBug 574351 - Add --pkg-export option GOBJECT_INTROSPECTION_0_6_4
Colin Walters [Mon, 24 Aug 2009 19:48:01 +0000 (15:48 -0400)]
Bug 574351 - Add --pkg-export option

We need to differentiate between --pkg options we use to parse
ourself, and --pkg-export which are needed for library consumers.

When introspecting a library we won't necessarily have the
pkg-config file built, so add a --pkg-export line so library
authors can explicitly make the .gir -> pkg-config association.

14 years agoBug 556628 – (skip) annotation
Dan Winship [Sat, 28 Mar 2009 14:07:37 +0000 (10:07 -0400)]
Bug 556628 – (skip) annotation

Adds a (skip) option that can be added to the header of any doc comment
to cause that symbol to be skipped in the .gir output

14 years agoBug 578200 - Substitute $(PYTHON) in g-ir-scanner.in
Colin Walters [Mon, 24 Aug 2009 18:38:27 +0000 (14:38 -0400)]
Bug 578200 - Substitute $(PYTHON) in g-ir-scanner.in

This lets us pick up non-default /usr/bin/python2.6 correctly.

14 years agoBug 587279 - Add COPYING.GPL and COPYING.LGPL
Colin Walters [Mon, 24 Aug 2009 18:30:14 +0000 (14:30 -0400)]
Bug 587279 - Add COPYING.GPL and COPYING.LGPL

It's better to keep lawyers happy if we ship the actual license
files rather than just mentioning them in COPYING.

14 years agoBug 590883 - Use 'cc' instead of 'gcc' for preprocessing
Colin Walters [Mon, 24 Aug 2009 18:23:21 +0000 (14:23 -0400)]
Bug 590883 - Use 'cc' instead of 'gcc' for preprocessing

Don't hardcode gcc, any cc which handles those options is good
enough; in particular this is reported to fix Sun Studio.

14 years agoLD_LIBRARY_PATH exorcism
Colin Walters [Thu, 20 Aug 2009 22:21:41 +0000 (18:21 -0400)]
LD_LIBRARY_PATH exorcism

Thanks to commit 6d510b8db, we now no longer need LD_LIBRARY_PATH
to be set for invoking the compiler.

Next, before we were taking the LD_LIBRARY_PATH variable and
turning it into a compile path, presumably to attempt to handle
the cases where we weren't getting the right -L flags.  Also
interacting with this was a while ago we weren't really doing
uninstalled libtool libraries correctly, which is probably
how hacks involving LD_LIBRARY_PATH crept into the scanner.

Just require that we're passed the right -L flags, and we
should be doing libtool libraries better now.

14 years agoMerge branch 'typelib-dlopen'
Colin Walters [Thu, 20 Aug 2009 21:10:51 +0000 (17:10 -0400)]
Merge branch 'typelib-dlopen'

14 years agoRemove some $(builddir) that crept back in
Owen W. Taylor [Mon, 17 Aug 2009 17:17:01 +0000 (13:17 -0400)]
Remove some $(builddir) that crept back in

With recent merges, a few instances of $(builddir) got reintroduced.
Remove them.

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

14 years ago[typelib] Clean up dlopen handling
Colin Walters [Tue, 18 Aug 2009 14:23:09 +0000 (10:23 -0400)]
[typelib] Clean up dlopen handling

It's was busted that g_typelib_new_* does the dlopen() since that caused
g-ir-compiler to load the modules even though it wasn't going to do
anything with them.

Instead, change things so that g_module_symbol does the dlopen on-demand.
Remove the extra dlopen(NULL) inside girepository.c, we had another
already in gtypelib.c.

Thanks to Owen Taylor for suggesting this approach.

14 years agoMake Everything-1.0.gir depend on GObject-2.0.gir
Colin Walters [Mon, 17 Aug 2009 22:37:59 +0000 (18:37 -0400)]
Make Everything-1.0.gir depend on GObject-2.0.gir

For parallel building.

14 years agoAdd FT_Library and cairo_font_face_t to hand-written .girs
Colin Walters [Mon, 17 Aug 2009 20:51:30 +0000 (16:51 -0400)]
Add FT_Library and cairo_font_face_t to hand-written .girs

These are dependencies of Pango.

14 years agoBug 592055 - Build/test fixes
Colin Walters [Mon, 17 Aug 2009 11:46:22 +0000 (07:46 -0400)]
Bug 592055 - Build/test fixes

The last few commits regressed 'check'; fix those up.

14 years agoAlso remove LD_LIBRARY_PATH bit from before AM_V_GEN for BarApp
Colin Walters [Mon, 17 Aug 2009 04:24:11 +0000 (00:24 -0400)]
Also remove LD_LIBRARY_PATH bit from before AM_V_GEN for BarApp

14 years agoSupport passing --library=lib<foo>.la
Owen W. Taylor [Fri, 14 Aug 2009 03:06:51 +0000 (23:06 -0400)]
Support passing --library=lib<foo>.la

In addition to the current --library=<foo>, support --library=lib<foo>.la.
This makes it unambiguous that we are referencing an uninstalled
library and allows accurate extraction of the shared library name
for the uninstalled library.

* tests/scanner/Makefile.am tests/offsets/Makefile.am: Use the
  new form of --library=. Also some LD_LIBRARY_PATH frobbing as needed.

*-expected.gir *-expected.tgir: We now pick out the shared library
  accurately, so fix shared-library="" in our reference girs. (The
  comparison may need some pre-sanitization now to work on non-ELF)

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

14 years agoResolve library names to shared libraries ourselves
Owen W. Taylor [Thu, 13 Aug 2009 20:09:27 +0000 (16:09 -0400)]
Resolve library names to shared libraries ourselves

Using ctypes.util.find_library() to resolve library names to
sonames causes problems with dealing with uninstalled libtool
operation properly. We're unlikely to find any way of combining
the two that will be robust against future changes in both
facilities.

Switch to a different approach - run 'ldd' on the compiled
introspection binary and extract sonames from there This is
less portable but should be quite robust where it works.

utils.py dumper.py: Move libtool-command-line finding into utils.py
girwriter.py: Remove library name resolution from here, expect libraries
  to be passed in preresolved.
shlibs.py scannermain.py: New file including resolve_shlibs() to resolve
  library names using the introspection binary.
tests/scanner/Makefile.am: Add .libs to LD_LIBRARY_PATH

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

14 years agoautoconf-2.64 compat: Don't use $(builddir)
Owen W. Taylor [Mon, 17 Aug 2009 04:07:35 +0000 (00:07 -0400)]
autoconf-2.64 compat: Don't use $(builddir)

$(builddir) is not a standard automake variable. With autoconf < 2.64
it ends up getting set in every Makefile.in to '.' (because autoconf
defines it), but that is no longer the case for 2.64.

Since $(builddir) was always '.', just use that instead.

14 years agoMove LPATH and $(CHECK_DEBUG) bits into $(SCANNER)
Colin Walters [Mon, 17 Aug 2009 03:43:37 +0000 (23:43 -0400)]
Move LPATH and $(CHECK_DEBUG) bits into $(SCANNER)

This allows us to consistently use $(SCANNER) as the first item
which needs to work for $(AM_V_GEN).

14 years agoProtect against source_filename being None when analyzing constants
Colin Walters [Mon, 17 Aug 2009 03:21:20 +0000 (23:21 -0400)]
Protect against source_filename being None when analyzing constants

It's allowed for source_filename to be None if we can't match it
up with a file, so just skip the constant in that case.

14 years agoUse current working directory for temporary executables
Colin Walters [Mon, 17 Aug 2009 03:20:14 +0000 (23:20 -0400)]
Use current working directory for temporary executables

This avoids /tmp noexec madness.

14 years agoExcise shave in favor of automake 1.11 silent rules
Colin Walters [Mon, 17 Aug 2009 02:59:31 +0000 (22:59 -0400)]
Excise shave in favor of automake 1.11 silent rules

Shave is just way too invasive in the build system.

14 years ago-DGLIB_COMPILATION when scanning GLib
Colin Walters [Sun, 16 Aug 2009 00:15:43 +0000 (20:15 -0400)]
-DGLIB_COMPILATION when scanning GLib

Some of the GLib headers are now growing checks for single-include;
override that.

14 years agoPrepend to $LD_LIBRARY_PATH not append
Owen W. Taylor [Thu, 13 Aug 2009 20:03:29 +0000 (16:03 -0400)]
Prepend to $LD_LIBRARY_PATH not append

We want to extend $LD_LIBRARY_PATH from the front so that uninstalled
libraries take precedence over installed libraries.

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

14 years agoDon't open shared libraries twice
Owen W. Taylor [Thu, 13 Aug 2009 19:14:49 +0000 (15:14 -0400)]
Don't open shared libraries twice

If loading a referenced shared library succeeds, don't try loading it again.

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

14 years agoUpdate after commit ffc15cd51639679c914868006a1e3462958bfd77
Simon van der Linden [Thu, 13 Aug 2009 19:45:02 +0000 (21:45 +0200)]
Update after commit ffc15cd51639679c914868006a1e3462958bfd77

14 years agoAnnotate g_shell_parse_argv()
Dan Winship [Mon, 10 Aug 2009 19:43:22 +0000 (15:43 -0400)]
Annotate g_shell_parse_argv()

14 years agoBack out the previous change. Now go back to hardcoding compiler to gcc.
Brian Cameron [Wed, 5 Aug 2009 19:25:30 +0000 (14:25 -0500)]
Back out the previous change.  Now go back to hardcoding compiler to gcc.
Using CC fails when building gobject-introspection because CC is defined to
be $(SHELL) scripts/shave cc '$(SHAVE_SAVED_CC)'.  A more sophisticated fix
will be needed later.

14 years agoOnly accept bison as yacc tool
Colin Walters [Wed, 5 Aug 2009 18:40:06 +0000 (14:40 -0400)]
Only accept bison as yacc tool

Others like byacc barf on some of the directives like %error-verbose.

14 years agoCheck the CC environment variable instead of assuming to use the gcc compiler.
Brian Cameron [Wed, 5 Aug 2009 17:40:28 +0000 (12:40 -0500)]
Check the CC environment variable instead of assuming to use the gcc compiler.

14 years agoUse all libraries specified on the command line
Colin Walters [Wed, 5 Aug 2009 17:24:23 +0000 (13:24 -0400)]
Use all libraries specified on the command line

Earlier we were only using the first library specified when
compiling an introspection binary.  This breaks builds on Solaris
which doesn't have implicit linking and we need to be able
to specify multiple libraries.

The tension here is primarily related to OS X' distinction between
modules and shared libraries; if we build the custom libraries
in gir-repository as shared libraries, then we can't dlopen them.
If we build them as modules, then the introspection binary compiler
can't link to them.

If we want to fix the OS X build, probably the way to go would be
a special --use-first-library-only option that gets conditionalized
on OS X + gir-repository.

But even better is to finish killing gir-repository entirely.

14 years agoAdd allow-none for etag for g_file_replace
Colin Walters [Mon, 3 Aug 2009 23:54:20 +0000 (19:54 -0400)]
Add allow-none for etag for g_file_replace

14 years agoFix a typo in test_flags_get_type
Simon van der Linden [Sun, 2 Aug 2009 11:30:04 +0000 (13:30 +0200)]
Fix a typo in test_flags_get_type