summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add directory index sectionwip/cmph-rebase2Colin Walters2010-11-163-12/+164
| | | | | | | | | | Use the internal perfect hashing API to add an index to the directory. To support this, add the notion of additional "sections" to the typelib. A section index is inserted between the header and the directory. https://bugzilla.gnome.org/show_bug.cgi?id=554943
* .gitignore: UpdateColin Walters2010-11-161-8/+13
|
* Add internal hashing API designed for the typelibColin Walters2010-11-164-2/+307
| | | | | | | | | | | In multiple places in the typelib, but most importantly the directory, we need some fast indexing. Perfect hashing, as implemented by CMPH (previous commit), is an exact fit for the problem domain. Add an API built on top of CMPH which maps strings->guint16 (we just need a guint16 for the typelib index). https://bugzilla.gnome.org/show_bug.cgi?id=554943
* cmph-bdz-test: New testColin Walters2010-11-162-1/+149
| | | | Add a basic test of CMPH (without any layers on top).
* cmph: Add automake rulesColin Walters2010-11-162-0/+68
|
* cmph: Modify types to use GLib typesColin Walters2010-11-161-27/+10
| | | | | | | The 64 bit #ifdefs is just hackish and broken; e.g. it will fail on ppc64/linux and WIN64. Use the GLib typedefs, which I know are more correct.
* Import CMPH 1.0Colin Walters2010-11-1677-0/+12124
| | | | | This will be used for typelib indexing. See README-CMPH-IMPORT.txt for more information.
* Makefile.am: Add GTESTER_PROGSColin Walters2010-11-161-1/+3
| | | | This is a list of test programs to run under "gtester".
* girepository: Consistently prefix internal functions with _Colin Walters2010-11-1610-322/+322
| | | | | This should better avoid them being exported. Rename girepository-parser.la to girepository-internals.la for clarity.
* build: Flip around linking order of libraries for toolsColin Walters2010-11-161-4/+4
| | | | | | It seems in some cases (Debian libtool) we get an injected rpath first for the jhbuild root, which screws us over since we need the libraries from .libs.
* gitypelib: Extend warning for validationColin Walters2010-11-161-1/+1
|
* scanner: Fall back to default uscoring for method pairing if possibleColin Walters2010-11-161-6/+16
| | | | | | The commit to use the c_symbol_prefix works in every case, except for gdk_window_object_get_type(), which screws us. Fall back to the old heuristic in this case.
* Fix tests to look in correct directory for typelibsColin Walters2010-11-165-14/+4
| | | | With nonrecursive they're in $(top_builddir) now
* tests: Print an error messageColin Walters2010-11-161-2/+2
|
* Fix line too longColin Walters2010-11-161-1/+2
|
* scanner: use c-symbol-prefix for method pairing where possibleJonathan Matthew2010-11-162-32/+27
| | | | | | | | | If we have a C symbol prefix for the target type, then use that to identify methods that should be paired with it. The C symbol prefix is derived from the name of the _get_type() function, so it's likely that this is also the prefix given to methods for the type. https://bugzilla.gnome.org/show_bug.cgi?id=634153
* scanner: don't show 'warnings suppressed' if --warn-all in useJonathan Matthew2010-11-161-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=633227
* Add support for gunichar in typelibColin Walters2010-11-1212-11/+34
| | | | | | | Some API such as gtk_text_iter_get_char returns an individual "gunichar"; we should support this. https://bugzilla.gnome.org/show_bug.cgi?id=633197
* build: Explicitly link to libffi for g-ir-compilerColin Walters2010-11-121-2/+2
| | | | | On Debian, libtool won't pull in dependencies from internal libraries when linking.
* Add g_object_info_find_signalColin Walters2010-11-123-0/+42
| | | | | | | This matches g_object_info_find_method, and allows us to add indexing later. https://bugzilla.gnome.org/show_bug.cgi?id=633204
* Makefile-gir.am: Fix explicit dependency of DBusGLib on GObjectColin Walters2010-11-111-1/+1
| | | | | Because of Makefile.introspection, the .typelibs are still put in gir/.
* Explicitly link g-ir-compiler and g-ir-generate to GIOColin Walters2010-11-111-4/+6
| | | | girepository only explicitly deps on GObject, so this is correct.
* dumper: Differentiate between "external" and "internal" linkingColin Walters2010-11-113-12/+41
| | | | | | | | | | | The previous commit aea515709 broke scanning for libraries not in the current directory, such as scanning Gio from gobject-introspection. In this case, it's wrong to add -L., and to move the other -L behind the library. Instead, we should just do a "normal" link using pkg-config --libs with few games. https://bugzilla.gnome.org/show_bug.cgi?id=632701
* Makefile-gir.am: Add explicit g-ir-compiler dependencyColin Walters2010-11-111-1/+14
| | | | | We need the typelib compiler to be built before we try to build typelibs for the static gir files.
* nonrecursive build: Fix typelib installationAlban Browaeys2010-11-111-1/+1
|
* Fix previous commitColin Walters2010-11-111-2/+2
| | | | ..but we still should be looking for pre-written girs in gir/.
* build: Fix scanner/compiler to look in $(top_builddir) nowColin Walters2010-11-112-6/+6
| | | | | Since we're nonrecursive, the build artifacts live in $(top_builddir), so look there now for files like Gio-2.0.gir.
* girepository: Only export ^gi?_ symbolsColin Walters2010-11-091-1/+1
| | | | | Otherwise it's really easy to unintentionally export unwanted symbols, as would happen with the upcoming CMPH import.
* Export gi_type_tag_get_ffi_typeColin Walters2010-11-094-7/+14
| | | | | | This is needed by the offsets code, and is generally useful. We need to export it for a future patch which won't export symbols with a leading _.
* Switch to nonrecursive make for core (i.e. not tests/)Colin Walters2010-11-0921-279/+273
| | | | | This is cleaner and faster, and prepares us better for an incoming import of CMPH.
* Move pyflakes to check-pyflakesColin Walters2010-11-091-0/+2
| | | | | It has false positives difficult to work around now, and is really better run as a periodic check anyways.
* libtoolimporter: Don't assume we have a multi-component importColin Walters2010-11-091-2/+6
| | | | | os.path.join barfs if we're passing it 0 arguments, as would happen when doing "import foo".
* tools: Switch to checking UNINSTALLED_INTROSPECTION_SRCDIRColin Walters2010-11-092-10/+6
| | | | | | | | | Rather than introspecting the current directory, use the environment variable we know is present if and only if we're running uninstalled. This will be less prone to failure when we switch to nonrecursive make, since the generated script will be in the top builddir, not tools/ anymore.
* Handle enumerations with the full range of signed and unsigned valuesOwen W. Taylor2010-11-0115-31/+123
| | | | | | | | | | | | | The C compiler will pick an enumeration type that accomodates the specified values for the enumeration, so ignoring 64-bit enumerations, we can have enumeration values from MININT32 to MAXUINT32. To handle this properly: - Use gint64 for holding eumeration values when scanning - Add a 'unsigned_value' bit to ValueBlob so we can distinguish the int32 vs. uint32 cases in the typelib - Change the return value of g_value_info_get_value() to gint64. https://bugzilla.gnome.org/show_bug.cgi?id=629704
* Compute enumeration storage types more accuratelyOwen W. Taylor2010-11-011-25/+61
| | | | | | | | | | Previously we just were sloppy and didn't bother to accurately compute signed/unsigned for enumeration types. But since we expect bindings to decode a field value or function return value from an integer to an enumeration they have know whether an integer value is 0xffffffff or -1, so we need to do the full computation. https://bugzilla.gnome.org/show_bug.cgi?id=629704
* girepository: Use G_TYPE_TAG_IS_BASIC consistentlyColin Walters2010-10-262-6/+4
| | | | This is a preparatory patch for adding a new basic tag.
* scanner: Print out a message if warnings were offColin Walters2010-10-252-6/+10
| | | | | | Otherwise people may not know about --warn-all. https://bugzilla.gnome.org/show_bug.cgi?id=631644
* Fix previous commitColin Walters2010-10-221-1/+1
|
* Handle CC="ccache gcc" for linker command tooColin Walters2010-10-221-1/+2
| | | | | The compiler path explicitly split()s the variable, we should do so in the linker path too.
* Fix regression in g_irepository_get_infoColin Walters2010-10-212-3/+7
| | | | | | | Commit f97cc8687469f25752f79275 broke the lookup in g_irepository_get_info; the passed offset is 0-based, then we convert it to 1-based (and then back to 0 later...which needs to be fixed).
* scanner: Support GStrv as signal parametersColin Walters2010-10-213-0/+39
|
* scanner: Don't process pkg-config libs twiceColin Walters2010-10-192-13/+3
| | | | | | | | | | | | Before, we were adding the --libs-only-L from pkg-config files during initial scanning, as if --library-path was specified, *and* inside the dumper, we used --libs. Fix this by always doing -L. <introspected libraries> <pkg-config libs> This should ensure we don't duplicate the search path anyways. https://bugzilla.gnome.org/show_bug.cgi?id=631348
* Accept trailing whitespace at the start of a comment blockColin Walters2010-10-194-5/+24
| | | | | | Might as well be liberal here, as long as we have a test case. https://bugzilla.gnome.org/show_bug.cgi?id=631690
* girepository: Refactor lookup codeColin Walters2010-10-183-146/+150
| | | | | | | | | | | This is a cleanup patch in preparation for future indexing patches. The lookup code was a mess trying to mash in the 3 different cases of name, GType, and index into one mega-function. Split it up properly, and move the core typelib internal-scanning bits into gitypelib.c where it belongs.
* configure: Bump to 0.10 seriesColin Walters2010-10-111-2/+2
|
* typelib: Don't fail on minor versiong-i-0.9Colin Walters2010-10-111-1/+1
| | | | | | Previously we bombed out if the minor version didn't match what we expected; this was silly since the whole point of the minor version is to enumerate compatible changes.
* scanner: Don't leave temporary directory around if we failColin Walters2010-10-072-17/+30
| | | | | ...by default. However, the GI_SCANNER_DEBUG=save-temps option helps for debugging.
* configure: Post-release version bumpColin Walters2010-10-061-1/+1
|
* configure: Release 0.9.12GOBJECT_INTROSPECTION_0_9_12Colin Walters2010-10-061-1/+1
|
* docs: Don't conditionalize on ENABLE_GTK_DOCColin Walters2010-10-061-2/+0
| | | | | | | | | OS vendors which compile from the part-binary "tarballs" which include e.g. pregenerated gtk-doc, they typically don't pass --enable-gtk-doc. So conditionalizing "make install" for docs on ENABLE_GTK_DOC won't work. This is the same as GTK+ and other projects currently work.