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
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
Johan Dahlin [Fri, 29 Aug 2008 10:07:53 +0000 (10:07 +0000)]
Update
svn path=/trunk/; revision=520
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
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
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
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
Colin Walters [Thu, 28 Aug 2008 22:13:04 +0000 (22:13 +0000)]
ChangeLog
svn path=/trunk/; revision=515
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
Colin Walters [Thu, 28 Aug 2008 21:19:24 +0000 (21:19 +0000)]
Changelog
svn path=/trunk/; revision=513
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
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
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
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
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
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
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
Johan Dahlin [Wed, 27 Aug 2008 21:19:33 +0000 (21:19 +0000)]
Remove generated files
svn path=/trunk/; revision=505
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
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
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
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
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
Colin Walters [Tue, 26 Aug 2008 20:06:42 +0000 (20:06 +0000)]
Fix small memory leak
svn path=/trunk/; revision=499
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
Johan Dahlin [Tue, 26 Aug 2008 11:24:06 +0000 (11:24 +0000)]
Proper credit
svn path=/trunk/; revision=497
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
Johan Dahlin [Tue, 26 Aug 2008 11:21:02 +0000 (11:21 +0000)]
make the tests pass again
svn path=/trunk/; revision=495
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
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
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
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
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
Colin Walters [Mon, 25 Aug 2008 01:51:46 +0000 (01:51 +0000)]
Some statistics
svn path=/trunk/; revision=489
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
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
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
Colin Walters [Sun, 24 Aug 2008 22:36:06 +0000 (22:36 +0000)]
Minor debug tweak
svn path=/trunk/; revision=485
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
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
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
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
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
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
Colin Walters [Sat, 23 Aug 2008 21:30:12 +0000 (21:30 +0000)]
ChangeLog
svn path=/trunk/; revision=478
Colin Walters [Sat, 23 Aug 2008 21:30:09 +0000 (21:30 +0000)]
Check constructor returns
svn path=/trunk/; revision=477
Colin Walters [Sat, 23 Aug 2008 21:30:06 +0000 (21:30 +0000)]
Add debug bit, tweak to use GUINT as correct.
svn path=/trunk/; revision=476
Colin Walters [Sat, 23 Aug 2008 21:30:01 +0000 (21:30 +0000)]
Redo signature_offset to be cleaner and correct for vfuncs
svn path=/trunk/; revision=475
Colin Walters [Sat, 23 Aug 2008 21:29:58 +0000 (21:29 +0000)]
Remove duplicate start_boxed.
svn path=/trunk/; revision=474
Colin Walters [Sat, 23 Aug 2008 21:12:26 +0000 (21:12 +0000)]
Don't take functions returning basic types as ctors
svn path=/trunk/; revision=473
Colin Walters [Sat, 23 Aug 2008 21:12:23 +0000 (21:12 +0000)]
Dep on compiler
svn path=/trunk/; revision=472
Colin Walters [Sat, 23 Aug 2008 16:46:58 +0000 (16:46 +0000)]
Another debug print
svn path=/trunk/; revision=471
Colin Walters [Sat, 23 Aug 2008 16:36:15 +0000 (16:36 +0000)]
Add debug print, fix includes
svn path=/trunk/; revision=470
Colin Walters [Sat, 23 Aug 2008 16:36:12 +0000 (16:36 +0000)]
Add deps on Makefile
svn path=/trunk/; revision=469
Johan Dahlin [Sat, 23 Aug 2008 16:18:17 +0000 (16:18 +0000)]
Avoid in utility.gir, as it doesn't work
svn path=/trunk/; revision=468
Colin Walters [Sat, 23 Aug 2008 16:11:01 +0000 (16:11 +0000)]
Ignore <include>. Parse them. Generate them. Process <include>
2008-08-22 Colin Walters <walters@verbum.org>
* girepository/girparser.c: Ignore <include>.
* giscanner/girparser.py: Parse them.
* giscanner/girwriter.py: Generate them.
* giscanner/transformer.py: Process <include>
recursively. Don't require full path for
includes, look in {$XDG_DATA_DIRS}/gir.
* tools/g-ir-scanner: Pass through includes.
* Makefile.am: Remove extra --include
args for scanner.
* *-expected.gir: Add expected includes.
svn path=/trunk/; revision=467
Johan Dahlin [Sat, 23 Aug 2008 12:59:04 +0000 (12:59 +0000)]
Avoid duplication in the Makefile, regenerate with new namespaces (same as
2008-08-23 Johan Dahlin <johan@gnome.org>
* tests/scanner/Makefile.am:
* tests/scanner/annotation-expected.gir:
* tests/scanner/drawable-expected.gir:
Avoid duplication in the Makefile, regenerate with new
namespaces (same as the filename)
svn path=/trunk/; revision=466
Colin Walters [Fri, 22 Aug 2008 22:15:28 +0000 (22:15 +0000)]
Don't hardcode integers, use GITypeTag.
2008-08-22 Colin Walters <walters@verbum.org>
* girepository/girnode.c: Don't hardcode integers,
use GITypeTag.
svn path=/trunk/; revision=465
Johan Dahlin [Fri, 22 Aug 2008 21:48:23 +0000 (21:48 +0000)]
Check for ../gobject-introspection-1.0.pc.in to determine if we run
2008-08-22 Johan Dahlin <johan@gnome.org>
* giscanner/sourcescanner.py:
Check for ../gobject-introspection-1.0.pc.in to determine
if we run installed or uninstalled.
svn path=/trunk/; revision=464
Johan Dahlin [Fri, 22 Aug 2008 21:24:47 +0000 (21:24 +0000)]
Send in undefs/defines via writing it directly to stdin of cpp instead of
2008-08-22 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
* giscanner/sourcescanner.py:
Send in undefs/defines via writing it directly to stdin
of cpp instead of via arguments.
svn path=/trunk/; revision=463
Colin Walters [Fri, 22 Aug 2008 21:14:31 +0000 (21:14 +0000)]
Default to --raw. Update.
2008-08-22 Colin Walters <walters@verbum.org>
* tools/generate.c, tools/compiler.c: Default
to --raw.
* all Makefile.am: Update.
svn path=/trunk/; revision=462
Colin Walters [Fri, 22 Aug 2008 21:08:06 +0000 (21:08 +0000)]
Install config.py, better error handling if we forget --raw
svn path=/trunk/; revision=461
Johan Dahlin [Fri, 22 Aug 2008 20:51:22 +0000 (20:51 +0000)]
Remove G_GNUC_EXTENSION too
svn path=/trunk/; revision=460
Johan Dahlin [Fri, 22 Aug 2008 20:17:09 +0000 (20:17 +0000)]
Don't pase _LIBINTL_H
svn path=/trunk/; revision=459
Johan Dahlin [Fri, 22 Aug 2008 20:06:17 +0000 (20:06 +0000)]
undef instead of define xxx 0
svn path=/trunk/; revision=458
Colin Walters [Fri, 22 Aug 2008 20:05:23 +0000 (20:05 +0000)]
Pass through recursive types. Avoid overwriting errors. Always write the
2008-08-22 Colin Walters <walters@verbum.org>
* girepository/girparser.c: Pass through
recursive types. Avoid overwriting errors.
* giscanner/xmlwriter.py: Always write the
XML header.
* tests/*.gir: Adjust.
* tests/scanner/Makefile.am: Build typelibs,
and generate XML from those. Once we
have a good diff mechanism...
* tests/scanner/*-expected.gir: Add XML
header.
* tools/g-ir-scanner: Accept --typelib-xml
option.
* tools/generate.c: Better defaults for transfer.
svn path=/trunk/; revision=457
Johan Dahlin [Fri, 22 Aug 2008 19:46:03 +0000 (19:46 +0000)]
Use the generated glibconfig.h for all scanner invokations. Rename it to
2008-08-22 Johan Dahlin <johan@gnome.org>
* configure.ac:
* gir/Makefile.am:
* giscanner/Makefile.am:
* giscanner/config.py.in:
* giscanner/sourcescanner.py:
Use the generated glibconfig.h for all scanner invokations.
Rename it to glibconfig-scanner.h and install it.
Add a config.py which so far contains the include dir.
svn path=/trunk/; revision=456
Johan Dahlin [Fri, 22 Aug 2008 19:13:39 +0000 (19:13 +0000)]
Make it work again, clean up the mess I made
svn path=/trunk/; revision=455
Colin Walters [Fri, 22 Aug 2008 19:09:16 +0000 (19:09 +0000)]
Throw an error if we try to load None
svn path=/trunk/; revision=454
Colin Walters [Fri, 22 Aug 2008 19:09:11 +0000 (19:09 +0000)]
Don't put * in types, suppress transfer="none"
svn path=/trunk/; revision=453
Johan Dahlin [Fri, 22 Aug 2008 19:08:50 +0000 (19:08 +0000)]
Avoid using builddir
svn path=/trunk/; revision=452
Johan Dahlin [Fri, 22 Aug 2008 17:53:37 +0000 (17:53 +0000)]
1->0, not 1->1
svn path=/trunk/; revision=451
Johan Dahlin [Fri, 22 Aug 2008 17:42:24 +0000 (17:42 +0000)]
Replace glibconfig.h with our own, do some replacement for CPP/C features
2008-08-22 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
Replace glibconfig.h with our own, do some replacement
for CPP/C features we do not support
svn path=/trunk/; revision=450
Colin Walters [Fri, 22 Aug 2008 17:34:29 +0000 (17:34 +0000)]
Fix unref sequence.
2008-08-22 Colin Walters <walters@verbum.org>
* tools/generate.c (write_callable_info): Fix unref
sequence.
svn path=/trunk/; revision=449
Colin Walters [Fri, 22 Aug 2008 14:43:41 +0000 (14:43 +0000)]
Add g-ir-generate. Support $(DEBUG) Do immediate close tags if no
2008-08-22 Colin Walters <walters@verbum.org>
* gobject-introspection-1.0.pc.in: Add g-ir-generate.
* tests/Makefile.am: Support $(DEBUG)
* tools/generate.c: Do immediate close tags if no
sub-elements.
svn path=/trunk/; revision=448
Colin Walters [Fri, 22 Aug 2008 02:52:27 +0000 (02:52 +0000)]
tests/scanner/drawable-expected.gir, tests/scanner/drawable.c, Add a
2008-08-21 Colin Walters <walters@verbum.org>
* tests/scanner/drawable-expected.gir,
* tests/scanner/drawable.c,
* tests/scanner/drawable.h:
Add a method.
svn path=/trunk/; revision=447
Colin Walters [Thu, 21 Aug 2008 20:59:24 +0000 (20:59 +0000)]
Compute prefix by searching through the symbol for bits rather than going
2008-08-21 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Compute prefix
by searching through the symbol for bits
rather than going directly from ctype; this fixes
webkit_ namespace.
svn path=/trunk/; revision=446
Colin Walters [Thu, 21 Aug 2008 20:45:22 +0000 (20:45 +0000)]
Also try squashing underscores from namespace, fixes webkit_web_view_new.
2008-08-21 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Also try squashing
underscores from namespace, fixes webkit_web_view_new.
svn path=/trunk/; revision=445
Colin Walters [Thu, 21 Aug 2008 20:08:28 +0000 (20:08 +0000)]
More ctor work, avoid having gtk_window_group_new end up under GtkWindow.
2008-08-21 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: More ctor work,
avoid having gtk_window_group_new end up under
GtkWindow.
svn path=/trunk/; revision=444
Colin Walters [Thu, 21 Aug 2008 18:03:21 +0000 (18:03 +0000)]
Much simpler approach of mapping uscored names to classes. Remove
2008-08-21 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Much simpler approach
of mapping uscored names to classes.
* giscanner/utils.py: Remove unnecessary function.
svn path=/trunk/; revision=443
Colin Walters [Thu, 21 Aug 2008 17:47:00 +0000 (17:47 +0000)]
Look up all permutations of class names when scanning methods/ctors based
2008-08-21 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Look up all permutations
of class names when scanning methods/ctors based on
the prefix instead of using the return value. This
associates gtk_window_new with the right class.
svn path=/trunk/; revision=442
Johan Dahlin [Thu, 21 Aug 2008 16:38:03 +0000 (16:38 +0000)]
Plug memory leak and avoid using freed memory. Resolve the whole module
2008-08-21 Johan Dahlin <johan@gnome.org>
* girepository/girepository.c (g_irepository_require):
Plug memory leak and avoid using freed memory.
Resolve the whole module path, here as well.
svn path=/trunk/; revision=441
Colin Walters [Thu, 21 Aug 2008 16:25:42 +0000 (16:25 +0000)]
Revert change to increment header_size; we do that in write_string.
2008-08-21 Colin Walters <walters@verbum.org>
* girepository/girmodule.c (g_ir_module_build_typelib):
Revert change to increment header_size; we do that in
write_string.
svn path=/trunk/; revision=440
Colin Walters [Thu, 21 Aug 2008 16:15:55 +0000 (16:15 +0000)]
Tweak to use UINT instead of INT. Not likely to matter. Add to
2008-08-21 Colin Walters <walters@verbum.org>
* girepository/girnode.c (write_string): Tweak to
use UINT instead of INT. Not likely to matter.
* girepository/girmodule.c (g_ir_module_build_typelib):
Add to header_offset as well for header strings
to match what write_string does.
* girepository/gtypelib.c: Replace is_name with
validate_name, which more strongly validates and
handles errors in a better way. Update all callers.
* giscanner/glibtransformer.py: Handle constructors
better.
svn path=/trunk/; revision=439
Johan Dahlin [Thu, 21 Aug 2008 15:10:02 +0000 (15:10 +0000)]
Build and install the Gio.typelib too
2008-08-21 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am (typelibs_DATA): Build and
install the Gio.typelib too
svn path=/trunk/; revision=438
Johan Dahlin [Thu, 21 Aug 2008 14:21:00 +0000 (14:21 +0000)]
Use g_module_build_path to resolve the shlib name
2008-08-21 Johan Dahlin <johan@gnome.org>
* girepository/gtypelib.c (_g_typelib_init):
Use g_module_build_path to resolve the shlib name
svn path=/trunk/; revision=437
Colin Walters [Thu, 21 Aug 2008 13:55:06 +0000 (13:55 +0000)]
CLEANFILES typelibs too.
2008-08-21 Colin Walters <walters@verbum.org>
* gir/Makefile.am: CLEANFILES typelibs too.
svn path=/trunk/; revision=436
Johan Dahlin [Thu, 21 Aug 2008 13:33:08 +0000 (13:33 +0000)]
Do not send .la files through find_library.
2008-08-21 Johan Dahlin <johan@gnome.org>
* giscanner/glibtransformer.py:
Do not send .la files through find_library.
svn path=/trunk/; revision=435
Colin Walters [Thu, 21 Aug 2008 13:26:53 +0000 (13:26 +0000)]
Fix one small leak in error case.
2008-08-21 Colin Walters <walters@verbum.org>
* girepository/girparser.c (g_irepository_require):
Fix one small leak in error case.
svn path=/trunk/; revision=434
Johan Dahlin [Thu, 21 Aug 2008 13:23:29 +0000 (13:23 +0000)]
Parse glibconfig.h as well and install the compiled typelib
2008-08-21 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
Parse glibconfig.h as well and install the compiled
typelib
svn path=/trunk/; revision=433
Johan Dahlin [Thu, 21 Aug 2008 08:42:11 +0000 (08:42 +0000)]
Do not hard-core library names in the Makefile, reuse ctypes find_library
2008-08-21 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
* giscanner/glibtransformer.py:
* tools/g-ir-scanner:
Do not hard-core library names in the Makefile, reuse
ctypes find_library instead.
svn path=/trunk/; revision=432
Johan Dahlin [Thu, 21 Aug 2008 08:20:07 +0000 (08:20 +0000)]
Remove compilation warnings
2008-08-21 Johan Dahlin <johan@gnome.org>
* girepository/girparser.c (resolve_aliases):
Remove compilation warnings
svn path=/trunk/; revision=431
Johan Dahlin [Thu, 21 Aug 2008 06:47:49 +0000 (06:47 +0000)]
Rewrap and fix double free bug by leaking a bit.
2008-08-21 Johan Dahlin <johan@gnome.org>
* girepository/girepository.c (g_irepository_require):
Rewrap and fix double free bug by leaking a bit.
svn path=/trunk/; revision=430
Colin Walters [Thu, 21 Aug 2008 03:06:13 +0000 (03:06 +0000)]
Add new function g_irepository_get_typelib_path which tells us from where
2008-08-20 Colin Walters <walters@verbum.org>
* girepository/girepository.c: Add new function
g_irepository_get_typelib_path which tells
us from where we loaded a namespace.
svn path=/trunk/; revision=429
Colin Walters [Thu, 21 Aug 2008 00:45:14 +0000 (00:45 +0000)]
Adjust for added shared-library. Make pylint happy.
2008-08-20 Colin Walters <walters@verbum.org>
* tests/scanner/*-expected.gir: Adjust for
added shared-library.
* giscanner/giwriter.py: Make pylint happy.
svn path=/trunk/; revision=428
Colin Walters [Thu, 21 Aug 2008 00:42:23 +0000 (00:42 +0000)]
Calculate size correctly, avoid use-after-free.
2008-08-20 Colin Walters <walters@verbum.org>
* girepository/girmodule.c (g_ir_module_build_typelib):
Calculate size correctly, avoid use-after-free.
svn path=/trunk/; revision=427
Colin Walters [Wed, 20 Aug 2008 23:56:40 +0000 (23:56 +0000)]
Remove g_irepository_register_file in favor of g_irepository_require.
2008-08-20 Colin Walters <walters@verbum.org>
* girepository/girepository.c: Remove
g_irepository_register_file in favor of
g_irepository_require. There are two
possible deployment scenarios for typelibs:
First, separate in $DATADIR/gitypelibs/. Second,
they may be embedded in shlibs. However since
the first is now the normal case, the API is
optimized around it.
Refactor internals to look up typelibs for
namespaces just-in-time, but we expect
consumers to call g_irepository_require.
Also, add some docs. No one has died from that
before.
* gir/Makefile.am: Need --library for glib.
* giscanner/girwriter.py: Write out shared-library.
* tools/g-ir-writer: Take the first --library
argument as the target of shared-library. In
the future we should make this nicer with pkg-config
probably.
svn path=/trunk/; revision=426
Colin Walters [Wed, 20 Aug 2008 19:57:10 +0000 (19:57 +0000)]
And parse them.
2008-08-20 Colin Walters <walters@verbum.org>
* girepository/girparser.py: And parse them.
svn path=/trunk/; revision=425
Johan Dahlin [Wed, 20 Aug 2008 19:31:23 +0000 (19:31 +0000)]
Add gshort/gushort types
2008-08-20 Johan Dahlin <johan@gnome.org>
* giscanner/glibast.py: Add gshort/gushort types
svn path=/trunk/; revision=424
Johan Dahlin [Wed, 20 Aug 2008 19:26:20 +0000 (19:26 +0000)]
Install GObject.typelib
svn path=/trunk/; revision=423