summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Update glib annotations to 2.39.2Rico Tzschichholz2013-12-172-15/+29
|
* scannerlexer: Fix bad unrefJasper St. Pierre2013-12-171-1/+2
| | | | It's possible for scanner->current_file to be NULL, so add a check...
* Update glib annotations from git masterMartin Pitt2013-12-112-6/+11
|
* dumper: use 'cc' as the default C compilerRyan Lortie2013-12-081-1/+1
| | | | | | | | If $(CC) is unset, use 'cc' instead of 'gcc' as the default compiler. This matches the behaviour used in the source scanner. https://bugzilla.gnome.org/show_bug.cgi?id=720066
* scanner: make sure we pass CFLAGS to cppRyan Lortie2013-12-081-0/+1
| | | | | | | | When doing the source scanning in giscanner, make sure we pass the user's CFLAGS environment variable to the compiler, as we do for the dumper. https://bugzilla.gnome.org/show_bug.cgi?id=720063
* Update glib annotations from git masterRico Tzschichholz2013-12-083-27/+78
|
* Post-release version bump to match glibRico Tzschichholz2013-12-081-1/+1
|
* scanner: Support boolean constantsFlorian Müllner2013-11-2910-6/+49
| | | | | | | | Aliasing TRUE or FALSE is not very common, but done occasionally for extra clarity. Namely G_SOURCE_REMOVE / G_SOURCE_CONTINUE are self-explanatory, unlike the "raw" booleans. https://bugzilla.gnome.org/show_bug.cgi?id=719566
* Update glib annotations from git masterRico Tzschichholz2013-11-264-66/+195
|
* scanner: Use PATH_MAX, not hardcoded 1024 for realpath()1.39.0Colin Walters2013-11-161-1/+15
| | | | | | Otherwise we can overflow the stack on longer pathnames. Tested-By: Mantas Mikulėnas <grawity@gmail.com>
* giscanner: Handle the case when there's a space between -I cpp flag and the pathCarlos Garcia Campos2013-11-161-0/+3
| | | | | | | | | | In this case we were considering -I and the path as two different command line options. This was not a problem in the past (or for other cpp flags) because they are passed directly to gcc that accepts it. Now that we are ensuring that the include paths are always real paths, we need to handle this case to identify include paths in the command line. https://bugzilla.gnome.org/show_bug.cgi?id=712211
* giscanner: Make sure we use real paths in more placesCarlos Garcia Campos2013-11-154-7/+20
| | | | | | | | Ensure we are using the real path also for cflags comming from pkg_config files and command line options. This fixes the generation of the gir files when include paths contain symlinks. https://bugzilla.gnome.org/show_bug.cgi?id=712211
* giscanner: Make sure that the current path set from linemarks is also a real ↵Carlos Garcia Campos2013-11-151-1/+55
| | | | | | | | | path This fixes the case when the include path doesn't contain any symlink, but the path built by the preprocessor does. https://bugzilla.gnome.org/show_bug.cgi?id=712211
* Update glib annotations from git masterJasper St. Pierre2013-11-071-3/+19
|
* Update glib annotations from git masterRico Tzschichholz2013-11-072-6/+68
|
* girnode: Fix a NULL pointer deference if a namespace can’t be foundPhilip Withnall2013-11-061-0/+5
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=711541
* scanner: Don't barf on anonymous unionsColin Walters2013-10-309-0/+183
| | | | | | | | I'd like to be able to use this inside GTK+. See: https://bugzilla.gnome.org/show_bug.cgi?id=711153 https://bugzilla.gnome.org/show_bug.cgi?id=711157
* Update glib annotations from git masterRico Tzschichholz2013-10-292-98/+527
|
* giscanner: Test fixups for field annotations and documentationStef Walter2013-10-284-7/+63
| | | | Related to: https://bugzilla.gnome.org/show_bug.cgi?id=710561
* giscanner: Include field documentationStef Walter2013-10-282-1/+4
| | | | | | Structure field documentation was not being included in the gir file. https://bugzilla.gnome.org/show_bug.cgi?id=710562
* giscanner: Correctly consume field annotations on structsStef Walter2013-10-286-18/+106
| | | | | | | | A hidden exception was being thrown (which we now log), due to fields being treated as function parameters. Fixed to make field array annotations be transformed and written out to the gir correctly. https://bugzilla.gnome.org/show_bug.cgi?id=710561
* GIVFuncInfo: allow retrieving the address of an interface vfuncGiovanni Campagna2013-10-221-5/+31
| | | | | | | | Don't assume that the parent of a GIVFuncInfo is a GIObjectInfo, it could be a GIInterfaceInfo, if the vfunc is part of interface instead of a class. https://bugzilla.gnome.org/show_bug.cgi?id=688375
* Update glib annotations from git masterJasper St. Pierre2013-10-212-20/+1269
|
* sourcescanner: Removed unused struct_or_union_or_enum_table fieldStef Walter2013-10-212-13/+0
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=710560
* giscanner: Respect __GI_SCANNER__ when scanning for macrosStef Walter2013-10-216-3/+213
| | | | | | | | | When scanning for macros respect ifdefs of __GI_SCANNER__ in the various header files. Only #ifdef and #ifndef are supported. If __GI_SCANNER__ appears in plain #if statements, a warning is printed. https://bugzilla.gnome.org/show_bug.cgi?id=698367
* giscanner: remove g_realpathDieter Verfaillie2013-10-176-84/+11
| | | | | | | | | | | giscannermodule expects file names to be canonicalized and symlinks to be resolved (most likely to support users of symlinked /usr/local). Instead of computing absolute and real paths all over the place, we can do this once on entry in SourceScanner().parse_files() and SourceScanner().parse_macros() and clean the rest a bit... https://bugzilla.gnome.org/show_bug.cgi?id=710320
* giscanner: speed up SourceScanner().parse_files()Dieter Verfaillie2013-10-175-102/+96
| | | | | | | | | | | | | | | | | | | Was looking around a bit and noticed about 2/3 of g-ir-scanner time is spent in SourceScanner().parse_files(). Some profiling quickly shows most of that 2/3 is used by gi_source_scanner_add_symbol() where it creates a whole bunch of GFile instances just to compare paths and throw them away again. With this a scanner instance now maintains a hash table of GFile instances instead of a list of file names, so comparing those paths can be reduced to a fast g_hash_table_contains() call. This makes "g-ir-scanner <whole_bunch_of_options> --output Gtk-3.0.gir" complete in about 10 seconds on my box instead of about 30 seconds (both best of 3 runs). https://bugzilla.gnome.org/show_bug.cgi?id=710320
* giscanner: restore linemark filename unescapingDieter Verfaillie2013-10-171-15/+14
| | | | | | | | This was broken in 0d6db7114a176c2d24a19a2d6a570aab406608ac where the unescaped filename was still computed but no longer used... https://bugzilla.gnome.org/show_bug.cgi?id=710320
* Revert "sourcescanner: Avoid scanning files when doing a macro scan"Dieter Verfaillie2013-10-171-16/+11
| | | | | | | This reverts commit 77fcc8fa47d63f58b2c3f6216a0493e42f6d44b3. Will be not needed in about 2 patches... https://bugzilla.gnome.org/show_bug.cgi?id=710320
* Revert "sourcescanner: Do some fast path checks on the filename"Dieter Verfaillie2013-10-171-5/+0
| | | | | | | | | This reverts commit 8c0ca4717d834a6c578579656683c55ea22a06f4. The "fast" path doesn't seem to work at all. Testing shows creating Gtk-3.0.gir still takes about 30 seconds with this (even on a Linux box)... https://bugzilla.gnome.org/show_bug.cgi?id=710320
* scannerlexer: don't reject __volatile__ tokensGiovanni Campagna2013-10-161-2/+2
| | | | | They should be treated the same as regular volatile specifiers, not like __attribute__() or __asm__().
* sourcescanner: Do some fast path checks on the filenameJasper St. Pierre2013-10-151-0/+5
| | | | | | Going through the VFS layer is substantially slower, so check against the base filenames first. This speeds things up on case-sensitive filesystems.
* sourcescanner: Avoid scanning files when doing a macro scanJasper St. Pierre2013-10-151-11/+16
| | | | We already know the condition will be TRUE.
* tests: Fix memory leaks in transfer full/container inout testsSimon Feltman2013-10-101-0/+12
| | | | | | | Make sure to call the various free functions for container tests where inout arguments are marked transfer full or container. https://bugzilla.gnome.org/show_bug.cgi?id=709796
* docs: fix up reference docs a bitDieter Verfaillie2013-10-1059-938/+1864
| | | | | | | | | | | | | - require GTK-Doc 1.19 - remove sgml mode - automatically generate gi.types (needs GTK-Doc 1.19) - fix https://bugzilla.gnome.org/show_bug.cgi?id=700025 [WIP] - rearange sections a bit [WIP] - add gi-building, gi-programming sections [WIP] - mark missing docs with TODO, which is only marginaly better than nothing but at least can be grepped :) https://bugzilla.gnome.org/show_bug.cgi?id=571648
* trivial: Post-release version bumpColin Walters2013-10-091-1/+1
|
* girepository: remove glib-compatDieter Verfaillie2013-10-095-29/+0
| | | | | We depend on glib-2.0 >= 2.36.0, so no need to keep a 2.22.X compatibility symbol around...
* tests: interesting annotationparser test caseDieter Verfaillie2013-10-091-0/+167
| | | | | | | | | GTK-Doc has trouble parsing multiline parameter description fields if the first word of a continuation line is "returns". We're already doing the right thing but make sure we continue to do so in the future https://bugzilla.gnome.org/show_bug.cgi?id=708445
* build: prevent warnings during dist/distcheckDieter Verfaillie2013-10-091-13/+13
| | | | | | Make transforms tr '/' '\\' into tr '/' '\', leading to tr: warning: an unescaped backslash at end of string is not portable so double escape to make the warnings go away...
* build: use AC_LINK_IFELSE instead of AC_TRY_LINKDieter Verfaillie2013-10-091-5/+5
| | | | AC_TRY_LINK is obsolete...
* tests: prevent warnings with some make implementationsDieter Verfaillie2013-10-091-8/+4
| | | | | | some make implementations don't like empty $(AM_V_GEN) rule commands, see http://lists.gnu.org/archive/html/bug-coreutils/2009-04/msg00251.html for more info.
* build: remove m4/as-compiler-flag.m4Dieter Verfaillie2013-10-094-36/+1
| | | | no longer used since b2fd4f54883cd701a0c280655c93e20b04897ed2
* giscanner: remove Python xml attribute formatterDieter Verfaillie2013-10-091-44/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no sense in keeping it around as it is never used. And even though measuring the time it takes to build Gtk-3.0.gir using a) the C version and b) the Python version reveals there is no measurable difference to speak of (when *not* running under Python's cProfile module): With C collect_attributes: ========================== real 0m30.614s real 0m32.255s real 0m31.034s With Python collect_attributes: =============================== real 0m31.530s real 0m31.549s real 0m31.673s The C version ends up using g_markup_escape_text() which will escape \004 as &#x4;. Even though this is invalid xml 1.0 (but valid xml 1.1), the Python version leaves the \004 as is, which is even less desirable...
* giscanner: remove unneeded isinstance checkDieter Verfaillie2013-10-091-3/+2
| | | | | | _write_class() is only ever called with ast.Class and ast.Interface nodes so the check served no purpose other than contribute to global warming...
* giscanner: write '<varargs/>' instead of '<varargs></varargs>'Dieter Verfaillie2013-10-083-10/+5
|
* giscanner: fix c0e748e1cdf8cf0803266f94c3c5ad154df504a8Dieter Verfaillie2013-10-083-51/+52
| | | | | | | | | | | When encountering /**/ in the source, parse_gtk_doc_comment() would be executed (due to the /** part starting a GTK-Doc comment block) and would happily consume the / and everything up until the next comment block was closed or EOF, thus consuming a whole block of C code... Encoutered in the wild here: https://git.gnome.org/browse/clutter-gst/tree/clutter-gst/clutter-gst-player.c?id=03f0d8f48bd7f60e582e6185cb73a07038e8d55d#n1926
* giscanner: complain about text before the ' * 'Dieter Verfaillie2013-10-083-11/+23
| | | | | | Makes our GTK-Doc comment block rewriting tool halt on such issues, requireing user intervention instead of writing back even more bogus data.
* giscanner: write virtual method instance parameter docs to .gir fileDieter Verfaillie2013-10-0810-4/+139
|
* Add giscanner package documentationDieter Verfaillie2013-10-089-0/+689
| | | | | | | | | | Using Sphinx [1] markup for now. We eventually might want to add GTK-Doc support for python and dogfood g-ir-doctool on this package. [1] De facto standard Python documentaton tool: http://sphinx-doc.org https://bugzilla.gnome.org/show_bug.cgi?id=688897
* docs: document some annotationparser.py hacking hintsDieter Verfaillie2013-10-082-14/+49
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=688897