XML format
----------
- Document the format
-- Write a scanner to create XML from annotated headers
- Add attributes to connect signals to their default handlers
and wrappers to their vfuncs
- Add a way to specify default values
libraries/metadata files
- Fix extra indirection for out parameters in invoke
+Scanner
+-------
+- Annotations
+- More tests
+
General
-------
- More tests
PKG_CHECK_MODULES(GOBJECT, [gobject-2.0])
+PKG_CHECK_MODULES(SCANNER, [gobject-2.0 gthread-2.0])
+
LIBFFI_DEP=""
AC_SUBST(LIBFFI_DEP)
-PKG_CHECK_MODULES(GIREPO, [glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0 libffi],
+PKG_CHECK_MODULES(GIREPO, [glib-2.0 gobject-2.0 gmodule-2.0 libffi],
[have_libffi=true], [have_libffi=false])
if $have_libffi; then
else
dnl if libffi is not found, g_function_info_invoke is not available,
dnl but everything else still works
- PKG_CHECK_MODULES(GIREPO, [glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0])
+ PKG_CHECK_MODULES(GIREPO, [glib-2.0 gobject-2.0 gmodule-2.0])
fi
# Checks for header files.
## Process this file with automake to produce Makefile.in
INCLUDES = -DGIREPO_DEFAULT_SEARCH_PATH="\"$(libdir)\""
+BUILT_SOURCES = cparser.h
+AM_YFLAGS = -d
+noinst_LTLIBRARIES = libgirepository-parser.la
lib_LTLIBRARIES = libgirepository.la
-bin_PROGRAMS = g-idl-compiler g-idl-generate gen-introspect
-
+bin_PROGRAMS = g-idl-compiler g-idl-generate g-idl-scanner
libgirepository_la_SOURCES = \
girepository.c \
ginvoke.c
libgirepository_la_CFLAGS = $(GIREPO_CFLAGS)
-
-g_idl_compiler_SOURCES = \
- gidlparser.c \
+libgirepository_parser_la_SOURCES = \
gidlmodule.c \
gidlnode.c \
- gmetadata.c \
- compiler.c
-g_idl_compiler_CFLAGS = $(GIREPO_CFLAGS)
-g_idl_compiler_LDADD = $(GIREPO_LIBS)
+ gidlparser.c
+libgirepository_parser_la_CFLAGS = $(GIREPO_CFLAGS)
+g_idl_compiler_SOURCES = compiler.c
+g_idl_compiler_CFLAGS = $(GIREPO_CFLAGS)
+g_idl_compiler_LDADD = $(GIREPO_LIBS) libgirepository.la libgirepository-parser.la
g_idl_generate_SOURCES = generate.c
g_idl_generate_CFLAGS = $(GIREPO_CFLAGS)
g_idl_generate_LDADD = $(GIREPO_LIBS) libgirepository.la
-girepodir = $(includedir)/glib-2.0/gobject-introspection
-girepo_HEADERS = girepository.h
-
-BUILT_SOURCES = cparser.h
-AM_YFLAGS = -d
-
-gen_introspect_SOURCES = \
+g_idl_scanner_SOURCES = \
clexer.l \
cparser.y \
- gidlmodule.c \
- gidlnode.c \
- gidlparser.c \
gen-introspect.c \
gen-introspect.h
-gen_introspect_CFLAGS = $(GIREPO_CFLAGS)
-gen_introspect_LDADD = $(GIREPO_LIBS) libgirepository.la
+g_idl_scanner_CFLAGS = $(GIREPO_CFLAGS) $(SCANNER_CFLAGS)
+g_idl_scanner_LDADD = $(GIREPO_LIBS) $(SCANNER_LIBS) libgirepository.la libgirepository-parser.la
+girepodir = $(includedir)/glib-2.0/gobject-introspection
+girepo_HEADERS = girepository.h
BUILT_SOURCES = Foo.gidl
CLEANFILES = Foo.gidl
-Foo.gidl: libfoo.la foo-object.h $(top_builddir)/src/gen-introspect
- $(top_builddir)/src/gen-introspect --namespace=Foo \
+Foo.gidl: libfoo.la foo-object.h $(top_builddir)/src/g-idl-scanner
+ $(top_builddir)/src/g-idl-scanner --namespace=Foo \
--include-idl=$(top_srcdir)/gidl/GLib.gidl \
`pwd`/foo-object.h -I. -U__GNUC__ $(GOBJECT_CFLAGS) \
libfoo.la > $@