platform/upstream/gobject-introspection.git
16 years agoChangeLog
Colin Walters [Sun, 7 Sep 2008 01:45:32 +0000 (01:45 +0000)]
ChangeLog

svn path=/trunk/; revision=579

16 years agoStrip namespace GnomeKeyring -> gnome_keyring_
Colin Walters [Sun, 7 Sep 2008 01:45:29 +0000 (01:45 +0000)]
Strip namespace GnomeKeyring -> gnome_keyring_

* giscanner/transformer.py: If a namespace contains
multiple caps, try stripping both gnomekeyring_ and
gnome_keyring_.

svn path=/trunk/; revision=578

16 years agoBug 551162 – giscanner does not recognize asm and __asm__ Patch by Jani
Johan Dahlin [Sat, 6 Sep 2008 22:12:14 +0000 (22:12 +0000)]
Bug 551162 – giscanner does not recognize asm and __asm__ Patch by Jani

2008-09-07  Johan Dahlin  <johan@gnome.org>

    Bug 551162 – giscanner does not recognize asm and __asm__
    * giscanner/scannerlexer.l:
    Patch by Jani Monoses.

svn path=/trunk/; revision=577

16 years agoChangeLog
Colin Walters [Sat, 6 Sep 2008 20:33:53 +0000 (20:33 +0000)]
ChangeLog

svn path=/trunk/; revision=576

16 years agoAllow both union and struct to be boxed or not
Colin Walters [Sat, 6 Sep 2008 20:33:51 +0000 (20:33 +0000)]
Allow both union and struct to be boxed or not

* girepository/girnode.c: Allow gtype_name
and gtype_init in struct and union.
* girepository/girparser.c: Parse glib:
boxed bits for both structure and union.
* girepository/gtypelib.c: Don't barf
if structure is boxed.
* giscanner/girparser.py: Parse new XML
format.
* giscanner/girwriter.py: Write out new
XML format.
* giscanner/glibast.py: Define new classes
which are both Boxed and Struct/Union, as
well as an "Other" for everything else.
* giscanner/glibtransformer.py: Handle
boxed types specially; we try to merge
them with a struct/union if one exists,
otherwise fall back to generic boxed.
* tests/*: Update.
* tools/generate.c: Write out new format.

svn path=/trunk/; revision=575

16 years agoInclude stdlib.h
Johan Dahlin [Sat, 6 Sep 2008 18:39:06 +0000 (18:39 +0000)]
Include stdlib.h

2008-09-06  Johan Dahlin  <johan@gnome.org>

    * giscanner/grealpath.h: Include stdlib.h

svn path=/trunk/; revision=574

16 years agoRemove leading %
Johan Dahlin [Sat, 6 Sep 2008 18:38:28 +0000 (18:38 +0000)]
Remove leading %

2008-09-06  Johan Dahlin  <johan@gnome.org>

    * docs/g-ir-generate.1: Remove leading %

svn path=/trunk/; revision=573

16 years agoChangeLog
Colin Walters [Mon, 1 Sep 2008 18:54:04 +0000 (18:54 +0000)]
ChangeLog

svn path=/trunk/; revision=572

16 years agoLook in c:type to determine pointer nature
Colin Walters [Mon, 1 Sep 2008 18:52:34 +0000 (18:52 +0000)]
Look in c:type to determine pointer nature

* girepository/girparser.c: Look at c:type to determine
whether or not an item is a pointer.

svn path=/trunk/; revision=571

16 years agoSet PYTHONPATH so the scanner can run even if you didn't install anything.
Johan Dahlin [Mon, 1 Sep 2008 13:45:56 +0000 (13:45 +0000)]
Set PYTHONPATH so the scanner can run even if you didn't install anything.

2008-09-01  Johan Dahlin  <johan@gnome.org>

    * tests/scanner/Makefile.am:
    Set PYTHONPATH so the scanner can run
    even if you didn't install anything.

svn path=/trunk/; revision=570

16 years agoPost-release version bump
Johan Dahlin [Mon, 1 Sep 2008 07:38:49 +0000 (07:38 +0000)]
Post-release version bump

2008-09-01  Johan Dahlin  <johan@gnome.org>

    * configure.ac:
    Post-release version bump

svn path=/trunk/; revision=569

16 years ago=== 0.5.0 === GOBJECT_INTROSPECTION_0_5_0
Johan Dahlin [Mon, 1 Sep 2008 07:34:33 +0000 (07:34 +0000)]
=== 0.5.0 ===
2008-09-01  Johan Dahlin  <johan@gnome.org>

    * NEWS: Update

svn path=/trunk/; revision=567

16 years agoChangeLog
Colin Walters [Mon, 1 Sep 2008 03:04:57 +0000 (03:04 +0000)]
ChangeLog

svn path=/trunk/; revision=566

16 years agoBlacklist marshaling functions
Colin Walters [Mon, 1 Sep 2008 03:04:55 +0000 (03:04 +0000)]
Blacklist marshaling functions

* giscanner/glibtransformer.py: Blacklist marshaling
functions

svn path=/trunk/; revision=565

16 years agoChangeLog trailing whitespace
Colin Walters [Sun, 31 Aug 2008 22:21:43 +0000 (22:21 +0000)]
ChangeLog trailing whitespace

svn path=/trunk/; revision=564

16 years agoChangeLog
Colin Walters [Sun, 31 Aug 2008 22:16:11 +0000 (22:16 +0000)]
ChangeLog

svn path=/trunk/; revision=563

16 years agoQuiet info prints for now.
Colin Walters [Sun, 31 Aug 2008 22:16:07 +0000 (22:16 +0000)]
Quiet info prints for now.

* giscanner/glibtransformer.py: Quiet info
prints for now.

svn path=/trunk/; revision=562

16 years agoRemove extra echo from the release-tag rule
Johan Dahlin [Sun, 31 Aug 2008 22:10:39 +0000 (22:10 +0000)]
Remove extra echo from the release-tag rule

svn path=/trunk/; revision=561

16 years agoAdd a release-tag rule
Johan Dahlin [Sun, 31 Aug 2008 22:09:53 +0000 (22:09 +0000)]
Add a release-tag rule

svn path=/trunk/; revision=560

16 years agotop_srcdir -> top_builddir
Johan Dahlin [Sun, 31 Aug 2008 22:04:36 +0000 (22:04 +0000)]
top_srcdir -> top_builddir

svn path=/trunk/; revision=559

16 years agoBump version to 0.5.0
Johan Dahlin [Sun, 31 Aug 2008 21:35:26 +0000 (21:35 +0000)]
Bump version to 0.5.0

2008-08-31  Johan Dahlin  <johan@gnome.org>

    * configure.ac:
    Bump version to 0.5.0

svn path=/trunk/; revision=558

16 years agoChangeLog
Colin Walters [Sun, 31 Aug 2008 16:39:06 +0000 (16:39 +0000)]
ChangeLog

svn path=/trunk/; revision=557

16 years agoFollow aliases when resolving constructor return types
Colin Walters [Sun, 31 Aug 2008 16:39:04 +0000 (16:39 +0000)]
Follow aliases when resolving constructor return types

* giscanner/glibtransformer.py: Follow aliases to ensure
we don't get a constructor returning a basic type.
* giscanner/transformer.py: Add function to follow aliases.
* tests/ Update.

svn path=/trunk/; revision=556

16 years agoFix up strip logic to not regress
Johan Dahlin [Sun, 31 Aug 2008 16:20:51 +0000 (16:20 +0000)]
Fix up strip logic to not regress

svn path=/trunk/; revision=555

16 years agoTweak error message
Colin Walters [Sun, 31 Aug 2008 16:16:42 +0000 (16:16 +0000)]
Tweak error message

svn path=/trunk/; revision=554

16 years agoParse GCC extensions in the parser instead of just undeffing them in the
Johan Dahlin [Sun, 31 Aug 2008 16:10:18 +0000 (16:10 +0000)]
Parse GCC extensions in the parser instead of just undeffing them in the

2008-08-31  Johan Dahlin  <johan@gnome.org>

    * giscanner/scannerlexer.l:
    * giscanner/scannerparser.y:
    * giscanner/sourcescanner.h:
    * giscanner/sourcescanner.py:
    Parse GCC extensions in the parser instead of just undeffing them
    in the pre-processor.

svn path=/trunk/; revision=553

16 years agoChangeLog
Colin Walters [Sun, 31 Aug 2008 16:01:06 +0000 (16:01 +0000)]
ChangeLog

svn path=/trunk/; revision=552

16 years agoDon't lose if we have no includedirs
Colin Walters [Sun, 31 Aug 2008 16:01:02 +0000 (16:01 +0000)]
Don't lose if we have no includedirs

* girepository/girparser.c: Don't lose if we
have no includedirs

svn path=/trunk/; revision=551

16 years agoClean up a huge if. Do not add methods or constructors to enums/flags.
Johan Dahlin [Sun, 31 Aug 2008 15:56:56 +0000 (15:56 +0000)]
Clean up a huge if. Do not add methods or constructors to enums/flags.

2008-08-31  Johan Dahlin  <johan@gnome.org>

    * giscanner/glibtransformer.py:
    Clean up a huge if. Do not add methods or constructors
    to enums/flags.
    * giscanner/utils.py:
    second might be longer than first, check that.

svn path=/trunk/; revision=550

16 years agoAdd a GModule.gir
Johan Dahlin [Sun, 31 Aug 2008 15:50:14 +0000 (15:50 +0000)]
Add a GModule.gir

2008-08-31  Johan Dahlin  <johan@gnome.org>

    * gir/Makefile.am:
    Add a GModule.gir

svn path=/trunk/; revision=549

16 years agoChangeLog
Colin Walters [Sun, 31 Aug 2008 15:25:51 +0000 (15:25 +0000)]
ChangeLog

svn path=/trunk/; revision=548

16 years agoLook for libtool library in current directory
Colin Walters [Sun, 31 Aug 2008 15:25:48 +0000 (15:25 +0000)]
Look for libtool library in current directory

* giscanner/glibtransformer.py: Look for libtool
library in current directory
* tests/scanner - Update.

svn path=/trunk/; revision=547

16 years agoChangeLog
Colin Walters [Sat, 30 Aug 2008 20:31:18 +0000 (20:31 +0000)]
ChangeLog

svn path=/trunk/; revision=546

16 years agoAdd back unresolved
Colin Walters [Sat, 30 Aug 2008 20:31:16 +0000 (20:31 +0000)]
Add back unresolved

svn path=/trunk/; revision=545

16 years agoFix conflict
Colin Walters [Sat, 30 Aug 2008 20:31:14 +0000 (20:31 +0000)]
Fix conflict

svn path=/trunk/; revision=544

16 years agoRemove g_irepository_unregister, add GIRepositoryLoadFlags
Colin Walters [Sat, 30 Aug 2008 20:31:12 +0000 (20:31 +0000)]
Remove g_irepository_unregister, add GIRepositoryLoadFlags

svn path=/trunk/; revision=543

16 years agoDon't lose on NULL shlib
Colin Walters [Sat, 30 Aug 2008 20:31:10 +0000 (20:31 +0000)]
Don't lose on NULL shlib

svn path=/trunk/; revision=542

16 years agoPut dependencies in typelibs, resolve them when loading
Colin Walters [Sat, 30 Aug 2008 20:31:07 +0000 (20:31 +0000)]
Put dependencies in typelibs, resolve them when loading

* gir/Makefile.am: Dep on Makefile
* girepository/ginfo.c: Print out a nicer error
message if we failed to load something.
* girepository/girepository.c: Clean up
default typelib handling; remove global
default_typelib variable.  Ensure we handle
NULL repository in more places.
Support dependency resolution.
* tests/Makefile.am: Kill off gobject.gir,
it conflicts with the real one.
* tests/Object.gir: Depend on GObject.
* tools/generate.c: Take --includedir
argument to say which directories to search
for typelibs.  Print out dependencies.

svn path=/trunk/; revision=541

16 years agoChangeLog
Colin Walters [Sat, 30 Aug 2008 20:12:48 +0000 (20:12 +0000)]
ChangeLog

svn path=/trunk/; revision=540

16 years agoReduce warning noise
Colin Walters [Sat, 30 Aug 2008 20:12:45 +0000 (20:12 +0000)]
Reduce warning noise

* giscanner/glibtransformer.py: Reduce warning noise

svn path=/trunk/; revision=539

16 years agoChangeLog
Colin Walters [Sat, 30 Aug 2008 02:31:56 +0000 (02:31 +0000)]
ChangeLog

svn path=/trunk/; revision=538

16 years agoAdd some assertions, blacklist a few more methods
Colin Walters [Sat, 30 Aug 2008 02:31:53 +0000 (02:31 +0000)]
Add some assertions, blacklist a few more methods

* girepository/ginfo.c: Add some assertions regarding
refcounts, just to be sure.
* giscanner/glibtransformer.py: Blacklist a few more
odd Gio methods.

svn path=/trunk/; revision=537

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 23:33:18 +0000 (23:33 +0000)]
ChangeLog

svn path=/trunk/; revision=536

16 years agoBlacklist a few functions that use GError oddly
Colin Walters [Fri, 29 Aug 2008 23:33:14 +0000 (23:33 +0000)]
Blacklist a few functions that use GError oddly

* giscanner/glibtransformer.py: Blacklist a few
functions that use GError oddly

svn path=/trunk/; revision=535

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 20:42:55 +0000 (20:42 +0000)]
ChangeLog

svn path=/trunk/; revision=534

16 years agoDon't crash if no shlib is embedded
Colin Walters [Fri, 29 Aug 2008 20:42:51 +0000 (20:42 +0000)]
Don't crash if no shlib is embedded

* girepository/gtypelib.c: Don't crash if no
shlib is embedded

svn path=/trunk/; revision=533

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 20:41:29 +0000 (20:41 +0000)]
ChangeLog

svn path=/trunk/; revision=532

16 years agoHandle alias chains correctly
Colin Walters [Fri, 29 Aug 2008 20:41:26 +0000 (20:41 +0000)]
Handle alias chains correctly

* girepository/girparser.c: Handle chains of aliases
across modules by ensuring we fully qualify aliases
from includes.

svn path=/trunk/; revision=531

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 20:06:13 +0000 (20:06 +0000)]
ChangeLog

svn path=/trunk/; revision=530

16 years agoAvoid searching aliases for basic types
Colin Walters [Fri, 29 Aug 2008 20:06:10 +0000 (20:06 +0000)]
Avoid searching aliases for basic types

* girepository/girparser.c: Don't search aliases
for basic types.

svn path=/trunk/; revision=529

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 19:33:30 +0000 (19:33 +0000)]
ChangeLog

svn path=/trunk/; revision=528

16 years agoFix type parsing for both GLib case and GLib.List
Colin Walters [Fri, 29 Aug 2008 19:33:09 +0000 (19:33 +0000)]
Fix type parsing for both GLib case and GLib.List

* girepository/girparser.c: Rewrite type parsing
to handle both GLib parsing case as well as correctly
handling GLib.List and friends.  Don't try to treat
e.g. ListStore as a List.

svn path=/trunk/; revision=527

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 18:49:25 +0000 (18:49 +0000)]
ChangeLog

svn path=/trunk/; revision=526

16 years agoMore context information in validate
Colin Walters [Fri, 29 Aug 2008 18:49:22 +0000 (18:49 +0000)]
More context information in validate

* girepository/gtypelib.c: Add more context
during validate.

svn path=/trunk/; revision=525

16 years agoChangeLog
Colin Walters [Fri, 29 Aug 2008 18:19:31 +0000 (18:19 +0000)]
ChangeLog

svn path=/trunk/; revision=524

16 years agoAvoid having functions/ctors duplicated in global scope
Colin Walters [Fri, 29 Aug 2008 18:19:29 +0000 (18:19 +0000)]
Avoid having functions/ctors duplicated in global scope

* giscanner/glibtransformer.py: Add some informative
logging messages in corner cases.  Be sure we use
the most recent node set instead of a cache
when generating result set.
* tests/: Remove duplicated bits in expected girs

svn path=/trunk/; revision=523

16 years agoCorrectly handle GLib.List, GLib.Error etc
Colin Walters [Fri, 29 Aug 2008 18:19:26 +0000 (18:19 +0000)]
Correctly handle GLib.List, GLib.Error etc

* girepository/girparser.c: Accept both List (for
compiling GLib) and GLib.List (what the scanner
generates).
* tests/ - Update.
* tools/generate.c: Generate canonical form.

svn path=/trunk/; revision=522

16 years agoUse datarootdir instead of datadir to avoid an autoconf warning.
Johan Dahlin [Fri, 29 Aug 2008 11:27:18 +0000 (11:27 +0000)]
Use datarootdir instead of datadir to avoid an autoconf warning.

2008-08-29  Johan Dahlin  <johan@gnome.org>

    * giscanner/config.py.in:
    Use datarootdir instead of datadir to avoid
    an autoconf warning.

svn path=/trunk/; revision=521

16 years agoUpdate
Johan Dahlin [Fri, 29 Aug 2008 10:07:53 +0000 (10:07 +0000)]
Update

svn path=/trunk/; revision=520

16 years agoUpdate and remove old cruft.
Johan Dahlin [Fri, 29 Aug 2008 09:51:39 +0000 (09:51 +0000)]
Update and remove old cruft.

2008-08-29  Johan Dahlin  <johan@gnome.org>

    * README:
    * TODO:
    * examples/gdk-pixbuf.gidl:
    * libffi.pc.in:
    Update and remove old cruft.

svn path=/trunk/; revision=519

16 years agoAdd man pages for the generator and compiler.
Johan Dahlin [Fri, 29 Aug 2008 09:25:29 +0000 (09:25 +0000)]
Add man pages for the generator and compiler.

2008-08-29  Johan Dahlin  <johan@gnome.org>

    * Makefile.am:
    * docs/g-ir-compiler.1:
    * docs/g-ir-generate.1:
    * docs/g-ir-scanner.1:
    Add man pages for the generator and compiler.

svn path=/trunk/; revision=518

16 years agoDocument
Johan Dahlin [Fri, 29 Aug 2008 08:38:29 +0000 (08:38 +0000)]
Document

2008-08-29  Johan Dahlin  <johan@gnome.org>

    * docs/g-ir-scanner.1: Document

svn path=/trunk/; revision=517

16 years agoRemove gidl support.
Johan Dahlin [Fri, 29 Aug 2008 08:24:50 +0000 (08:24 +0000)]
Remove gidl support.

2008-08-29  Johan Dahlin  <johan@gnome.org>

    * giscanner/Makefile.am:
    * giscanner/gidlparser.py:
    * giscanner/gidlwriter.py:
    * tools/g-ir-scanner:
    Remove gidl support.

svn path=/trunk/; revision=516

16 years agoChangeLog
Colin Walters [Thu, 28 Aug 2008 22:13:04 +0000 (22:13 +0000)]
ChangeLog

svn path=/trunk/; revision=515

16 years agoFix --includedir handling
Colin Walters [Thu, 28 Aug 2008 22:13:00 +0000 (22:13 +0000)]
Fix --includedir handling

* tests/scanner/Makefile.am: Pass the right
--includedir args.  Add a Makefile dep.
* tools/compiler.c: Pass includedirs down.
* girepository/girparser.c: Actually put
includedirs in context, pass down.  Fix
locate_gir.

svn path=/trunk/; revision=514

16 years agoChangelog
Colin Walters [Thu, 28 Aug 2008 21:19:24 +0000 (21:19 +0000)]
Changelog

svn path=/trunk/; revision=513

16 years agoExpand aliases when generating typelibs
Colin Walters [Thu, 28 Aug 2008 21:19:22 +0000 (21:19 +0000)]
Expand aliases when generating typelibs

* gir/Makefile.am: Use --includedir
* girepository/girparser.c: Recursively parse
includes to pull in aliases and expand them.
We need this to avoid putting unknown names in
the typelibs.
* tools/compiler.c: Add --includedir option.

svn path=/trunk/; revision=512

16 years agoSuppress size/ssize from being generated in GLib
Colin Walters [Thu, 28 Aug 2008 21:19:19 +0000 (21:19 +0000)]
Suppress size/ssize from being generated in GLib

svn path=/trunk/; revision=511

16 years agoMention that make check now runs successfully on Windows.
Tor Lillqvist [Thu, 28 Aug 2008 18:00:41 +0000 (18:00 +0000)]
Mention that make check now runs successfully on Windows.

svn path=/trunk/; revision=510

16 years agoUse binary mode for output file on Windows.
Tor Lillqvist [Thu, 28 Aug 2008 16:55:37 +0000 (16:55 +0000)]
Use binary mode for output file on Windows.

2008-08-28  Tor Lillqvist  <tml@novell.com>

* tools/compiler.c (write_out_typelib): Use binary mode for output
file on Windows.

* girepository/girnode.c: Don't print NULL strings.

* tests/invoke/Makefile.am
* tests/scanner/Makefile.am: Use -no-undefined on Windows to
convince libtool to build shared libraries.

* tests/invoke/invoke.c: Don't needlessly include <dlfcn.h>. Use
g_assert() instead of printing out expected errors.

svn path=/trunk/; revision=509

16 years agoChange type of bitfield fields from guint to the most suitable smaller
Tor Lillqvist [Thu, 28 Aug 2008 10:24:35 +0000 (10:24 +0000)]
Change type of bitfield fields from guint to the most suitable smaller

2008-08-28  Tor Lillqvist  <tml@novell.com>

* girepository/gtypelib.h: Change type of bitfield fields from
guint to the most suitable smaller type. This makes the struct
sizes match the ones on Linux that the sanity check expects when
using gcc -mms-bitfields on Windows.

svn path=/trunk/; revision=508

16 years agoMake distcheck pass.
Johan Dahlin [Thu, 28 Aug 2008 10:02:23 +0000 (10:02 +0000)]
Make distcheck pass.

2008-08-28  Johan Dahlin  <johan@gnome.org>

    * Makefile.am:
    * configure.ac:
    * gir/Makefile.am:
    * giscanner/Makefile.am:
    * tests/Makefile.am:
    * tests/scanner/Makefile.am:
    Make distcheck pass.

svn path=/trunk/; revision=507

16 years agoInclude g-ir-scanner in the tarball
Johan Dahlin [Thu, 28 Aug 2008 08:33:37 +0000 (08:33 +0000)]
Include g-ir-scanner in the tarball

svn path=/trunk/; revision=506

16 years agoRemove generated files
Johan Dahlin [Wed, 27 Aug 2008 21:19:33 +0000 (21:19 +0000)]
Remove generated files

svn path=/trunk/; revision=505

16 years agoOnly send in -no-undefined on Win32 as it breaks on MacOS X.
Johan Dahlin [Wed, 27 Aug 2008 14:12:42 +0000 (14:12 +0000)]
Only send in -no-undefined on Win32 as it breaks on MacOS X.

2008-08-27  Johan Dahlin  <johan@gnome.org>

    * giscanner/Makefile.am:
    Only send in -no-undefined on Win32 as it breaks on MacOS X.

svn path=/trunk/; revision=504

16 years agoMake g-ir-scanner work on Windows. Still problems with the typelib code.
Tor Lillqvist [Wed, 27 Aug 2008 13:33:21 +0000 (13:33 +0000)]
Make g-ir-scanner work on Windows. Still problems with the typelib code.

2008-08-27  Tor Lillqvist  <tml@novell.com>

Make g-ir-scanner work on Windows. Still problems with the typelib
code. Changes okayed by jdahlin.

* configure.ac: Check for Windows, set Automake conditional
OS_WIN32. Change backslashes to forward slashes in pyexecdir to
avoid shell quoting issues

* girepository/Makefile.am: Use -no-undefined so that libtool
agrees to build a shared library on Windows.

* girepository/girparser.c (backtrace_stderr): No backtrace() on
Windows. Empty implementation on Windows so far.

* girepository/gtypelib.c (g_typelib_check_sanity): Give more
informative error message for the assertion failures. Tell also
what the expected size of the struct is. Check all sizes first and
fail afterwards if at least one size was different from expected.

* tools/Makefile.am: Reorder libraries into proper logical
dependency order.

* tools/generate.c: Don't include <dlfcn.h>, not used.

* giscanner/Makefile.am: On Windows, link with the Python library,
and install the module DLL as _giscanner.pyd. Remove the
unnecessary import library and libtool library that libtool has
installed.

* giscanner/scannerlexer.l: Recognize the gcc __attribute__ syntax
and just skip it. Recognize also two "l" suffixes for long long
constants. Recognize also __inline__.

* giscanner/grealpath.h (g_realpath): Implement on Windows, using
GetFullPathName(). As such, GetFullPathName() does more than the
UNIX realpath(). It also changes relative paths into absolute
paths. But for our purposes that shouldn't matter.

* giscanner/giscannermodule.c (pygi_source_scanner_parse_file): On
Windows the file descriptor passed to us is from Python. Python
Python2.5 uses the msvcr71.dll C library, while mingw-built code
uses msvcrt.dll. On Windows, file descriptors are specific to
which C library is used. So we must find out what underlying OS
handle corresponds to the file descriptor Python passes us, and
then make that into a file descriptor valid for the C library this
code uses.

* giscanner/sourcescanner.py (_parse): Don't need to bypass
__attribute__ as the lexer now handles it. The definition as empty
was ineffective for mingw anyway, as mingw's _mingw.h undefines
__attribute__. Close the temp file before unlinking it.

* giscanner/cgobject.py: Use correct library name for the gobject
DLL on Windows.

* gir/Makefile.am: Must pass the full basename of the DLLs on
Windows to g-ir-scanner. It's a bit ugly that we have to "know"
that the names of the GLib DLLs are like libglib-2.0-0.dll, but in
reality they won't change, until there is a GLib 3, and then also
the Unix code here needs changing.

Must pass CPPFLAGS to g-ir-scanner when building GLib.gir so that
libintl.h is found.

svn path=/trunk/; revision=503

16 years agoSearch $DATADIR/girepository instead of $DATADIR/gitypelibs; this naming
Colin Walters [Tue, 26 Aug 2008 21:55:42 +0000 (21:55 +0000)]
Search $DATADIR/girepository instead of $DATADIR/gitypelibs; this naming

2008-08-26  Colin Walters  <walters@verbum.org>

* girepository/girepository.c: Search
$DATADIR/girepository instead of
$DATADIR/gitypelibs; this naming makes
it clearer that e.g. jgir can install
.jars there.
* gir/Makefile.am: Install there.

svn path=/trunk/; revision=502

16 years agoAlso use G_MODULE_SUFFIX instead of hardcoding .so.
Colin Walters [Tue, 26 Aug 2008 21:05:32 +0000 (21:05 +0000)]
Also use G_MODULE_SUFFIX instead of hardcoding .so.

2008-08-26  Colin Walters  <walters@verbum.org>

* girepository/gtypelib.c (_g_typelib_init): Also
use G_MODULE_SUFFIX instead of hardcoding .so.

svn path=/trunk/; revision=501

16 years agoFree string in the right place.
Colin Walters [Tue, 26 Aug 2008 21:01:36 +0000 (21:01 +0000)]
Free string in the right place.

2008-08-26  Colin Walters  <walters@verbum.org>

* girepository/gtypelib.c (_g_typelib_init): Free
string in the right place.

svn path=/trunk/; revision=500

16 years agoFix small memory leak
Colin Walters [Tue, 26 Aug 2008 20:06:42 +0000 (20:06 +0000)]
Fix small memory leak

svn path=/trunk/; revision=499

16 years agoHandle both .la and .so names; this works better in the uninstalled
Colin Walters [Tue, 26 Aug 2008 20:04:38 +0000 (20:04 +0000)]
Handle both .la and .so names; this works better in the uninstalled

2008-08-26  Colin Walters  <walters@verbum.org>

* girepository/gtypelib.c (_g_typelib_init): Handle
both .la and .so names; this works better in the
uninstalled library case.

svn path=/trunk/; revision=498

16 years agoProper credit
Johan Dahlin [Tue, 26 Aug 2008 11:24:06 +0000 (11:24 +0000)]
Proper credit

svn path=/trunk/; revision=497

16 years agoAvoid undeffing __GNUC__, instead define __attribute__ & friends. Remove
Johan Dahlin [Tue, 26 Aug 2008 11:21:51 +0000 (11:21 +0000)]
Avoid undeffing __GNUC__, instead define __attribute__ & friends. Remove

2008-08-26  Johan Dahlin  <johan@gnome.org>

    * gir/Makefile.am:
    * giscanner/Makefile.am:
    * giscanner/cgobject.py:
    * giscanner/config.py.in:
    * giscanner/sourcescanner.py:
    Avoid undeffing __GNUC__, instead define
    __attribute__ & friends. Remove glibconfig.h hack.

svn path=/trunk/; revision=496

16 years agomake the tests pass again
Johan Dahlin [Tue, 26 Aug 2008 11:21:02 +0000 (11:21 +0000)]
make the tests pass again

svn path=/trunk/; revision=495

16 years agoAlways print statistics.
Colin Walters [Mon, 25 Aug 2008 21:26:11 +0000 (21:26 +0000)]
Always print statistics.

2008-08-25  Colin Walters  <walters@verbum.org>

* giscanner/glibtransformer.py: Always print
statistics.

svn path=/trunk/; revision=494

16 years agoSkip over interfaces we don't know.
Colin Walters [Mon, 25 Aug 2008 17:43:25 +0000 (17:43 +0000)]
Skip over interfaces we don't know.

2008-08-25  Colin Walters  <walters@verbum.org>

* giscanner/glibtransformer.py: Skip over
interfaces we don't know.

svn path=/trunk/; revision=493

16 years agoParse new implements syntax, drop gapi one. Update. Generate new syntax.
Colin Walters [Mon, 25 Aug 2008 15:22:39 +0000 (15:22 +0000)]
Parse new implements syntax, drop gapi one. Update. Generate new syntax.

2008-08-25  Colin Walters  <walters@verbum.org>

* girepository/girparser.c: Parse new implements
syntax, drop gapi one.
* tests/object.gir: Update.
* tools/generate.c: Generate new syntax.

svn path=/trunk/; revision=492

16 years agoAdd interfaces property to class. Write out implemented interfaces.
Colin Walters [Mon, 25 Aug 2008 13:21:56 +0000 (13:21 +0000)]
Add interfaces property to class. Write out implemented interfaces.

2008-08-25  Colin Walters  <walters@verbum.org>

* giscanner/ast.py: Add interfaces property
to class.
* giscanner/girwriter.py: Write out implemented
interfaces.
* giscanner/glibtransformer.py: Introspect
implemented interfaces.
* tests/scanner/*: Make FooObject implement
FooInterface.

svn path=/trunk/; revision=491

16 years agoMore correctly pair methods; if we have a symbol that starts with e.g.
Colin Walters [Mon, 25 Aug 2008 13:21:53 +0000 (13:21 +0000)]
More correctly pair methods; if we have a symbol that starts with e.g.

2008-08-25  Colin Walters  <walters@verbum.org>

* giscanner/glibtransformer.py: More correctly pair
methods; if we have a symbol that starts with
e.g. hippo_canvas look for a matching HippoCanvas
class before accepting e.g. HippoCanvasImage.

svn path=/trunk/; revision=490

16 years agoSome statistics
Colin Walters [Mon, 25 Aug 2008 01:51:46 +0000 (01:51 +0000)]
Some statistics

svn path=/trunk/; revision=489

16 years agoFilter out unknown options from pkg-config files.
Colin Walters [Mon, 25 Aug 2008 00:32:30 +0000 (00:32 +0000)]
Filter out unknown options from pkg-config files.

2008-08-24  Colin Walters  <walters@verbum.org>

* tools/g-ir-scanner: Filter out unknown options from
pkg-config files.

svn path=/trunk/; revision=488

16 years agoFail with better error if we can't find library.
Colin Walters [Mon, 25 Aug 2008 00:32:27 +0000 (00:32 +0000)]
Fail with better error if we can't find library.

2008-08-24  Colin Walters  <walters@verbum.org>

* giscanner/glibtransformer.py: Fail with better
error if we can't find library.

svn path=/trunk/; revision=487

16 years agoUse subprocess instead of commands, works on Windows and avoids the evil
Colin Walters [Sun, 24 Aug 2008 22:36:08 +0000 (22:36 +0000)]
Use subprocess instead of commands, works on Windows and avoids the evil

2008-08-24  Colin Walters  <walters@verbum.org>

* tools/g-ir-scanner: Use subprocess instead of
commands, works on Windows and avoids the evil
shell on Unix.

svn path=/trunk/; revision=486

16 years agoMinor debug tweak
Colin Walters [Sun, 24 Aug 2008 22:36:06 +0000 (22:36 +0000)]
Minor debug tweak

svn path=/trunk/; revision=485

16 years agoSkip over g_object_get_type from GLib trunk.
Colin Walters [Sun, 24 Aug 2008 21:29:09 +0000 (21:29 +0000)]
Skip over g_object_get_type from GLib trunk.

2008-08-24  Colin Walters  <walters@verbum.org>

* giscanner/glibtransformer.py: Skip over
g_object_get_type from GLib trunk.

svn path=/trunk/; revision=484

16 years agoDon't open shared library here; we already do it in gtypelib.c.
Colin Walters [Sun, 24 Aug 2008 16:55:07 +0000 (16:55 +0000)]
Don't open shared library here; we already do it in gtypelib.c.

2008-08-24  Colin Walters  <walters@verbum.org>

* girepository/girepository.c (g_irepository_require):
Don't open shared library here; we already do it
in gtypelib.c.

svn path=/trunk/; revision=483

16 years agoAdd context stack so when we get an error we can print out nicely where it
Colin Walters [Sun, 24 Aug 2008 16:51:43 +0000 (16:51 +0000)]
Add context stack so when we get an error we can print out nicely where it

2008-08-24  Colin Walters  <walters@verbum.org>

* girepository/gtypelib.c: Add context stack so
when we get an error we can print out nicely
where it is.

svn path=/trunk/; revision=482

16 years agoRefactor a couple of parsing functions to be simpler to follow. Avoid huge
Johan Dahlin [Sun, 24 Aug 2008 11:01:44 +0000 (11:01 +0000)]
Refactor a couple of parsing functions to be simpler to follow. Avoid huge

2008-08-24  Johan Dahlin  <johan@gnome.org>

    * girepository/girparser.c (start_glib_boxed), (start_function),
    (start_field), (start_alias):
    Refactor a couple of parsing functions to be simpler to follow.
    Avoid huge ifs.

svn path=/trunk/; revision=481

16 years agoRemove left-over code, checking type of function.
Johan Dahlin [Sun, 24 Aug 2008 10:43:02 +0000 (10:43 +0000)]
Remove left-over code, checking type of function.

2008-08-24  Johan Dahlin  <johan@gnome.org>

    * girepository/girparser.c (start_function):
    Remove left-over code, checking type of function.

svn path=/trunk/; revision=480

16 years agoDefine DATADIR. Look in DATADIR.
Colin Walters [Sat, 23 Aug 2008 21:58:09 +0000 (21:58 +0000)]
Define DATADIR. Look in DATADIR.

2008-08-23  Colin Walters  <walters@verbum.org>

* giscanner/config.py: Define DATADIR.
* giscanner/transformer.py: Look in DATADIR.

svn path=/trunk/; revision=479