summaryrefslogtreecommitdiff
path: root/pango
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@gnome.org>2006-10-13 17:20:41 +0000
committerBehdad Esfahbod <behdad@src.gnome.org>2006-10-13 17:20:41 +0000
commit6bed9d56b66a461f1cdc4b672ce10bc39a88baca (patch)
tree5361b51f74d96efb7749d356e4d1c47fffcc4f40 /pango
parentb77f3f9ba3fc98c086d01440eef7771c58f9058d (diff)
downloadpango-6bed9d56b66a461f1cdc4b672ce10bc39a88baca.tar.gz
Bug 361938 – Can't include *-lang modules (./configure
2006-10-13 Behdad Esfahbod <behdad@gnome.org> Bug 361938 – Can't include *-lang modules (./configure --with-included-modules fails) * configure.in: * modules/Makefile.am: * pango/.cvsignore: * pango/Makefile.am: * pango/modules.c (init_modules): * pango/modules.h: Make included language engines work.
Diffstat (limited to 'pango')
-rw-r--r--pango/.cvsignore5
-rw-r--r--pango/Makefile.am40
-rw-r--r--pango/modules.c4
-rw-r--r--pango/modules.h1
4 files changed, 27 insertions, 23 deletions
diff --git a/pango/.cvsignore b/pango/.cvsignore
index 9363569d..db2705df 100644
--- a/pango/.cvsignore
+++ b/pango/.cvsignore
@@ -8,10 +8,7 @@ pango-enum-types.[ch]
s-enum-types-[ch]
pango-querymodules
module-defs.h
-module-defs-atsui.c
-module-defs-x.c
-module-defs-fc.c
-module-defs-win32.c
+module-defs-*.c
*.lo
*.la
.deps
diff --git a/pango/Makefile.am b/pango/Makefile.am
index 7728215c..473b6124 100644
--- a/pango/Makefile.am
+++ b/pango/Makefile.am
@@ -42,8 +42,12 @@ endif
lib_LTLIBRARIES = libpango-1.0.la
libpango_1_0_la_LDFLAGS = $(LIBRARY_LIBTOOL_OPTIONS)
-libpango_1_0_la_LIBADD = $(GLIB_LIBS) $(libm)
-libpango_1_0_la_DEPENDENCIES =
+libpango_1_0_la_LIBADD = \
+ $(GLIB_LIBS) \
+ $(libm) \
+ $(INCLUDED_LANG_MODULES)
+libpango_1_0_la_DEPENDENCIES = \
+ $(INCLUDED_LANG_MODULES)
libpango_1_0_la_LIBADD += mini-fribidi/libmini-fribidi.la
libpango_1_0_la_DEPENDENCIES += mini-fribidi/libmini-fribidi.la
@@ -87,7 +91,8 @@ libpango_1_0_la_SOURCES = \
pango-matrix.c \
reorder-items.c \
shape.c \
- pango-enum-types.c
+ pango-enum-types.c \
+ module-defs-lang.c
pango_headers = \
pango.h \
@@ -430,28 +435,29 @@ EXTRA_DIST = \
pangoft2.rc \
pangoft2.rc.in \
pangowin32.rc \
- pangowin32.rc.in
+ pangowin32.rc.in \
+ check.defs
if HAVE_INCLUDED_MODULES
included-modules:
@cd $(top_builddir)/modules && $(MAKE) $(AM_MAKEFLAGS) included-modules
-$(INCLUDED_X_MODULES) $(INCLUDED_FC_MODULES) $(INCLUDED_WIN32_MODULES): included-modules
+$(INCLUDED_LANG_MODULES) $(INCLUDED_X_MODULES) $(INCLUDED_FC_MODULES) $(INCLUDED_WIN32_MODULES) $(INCLUDED_ATSUI_MODULES): included-modules
@true
.PHONY: included-modules
endif
-module-defs.h: $(top_builddir)/config.status
- cd $(top_builddir) && $(SHELL) ./config.status pango/$@
-module-defs-x.c: $(top_builddir)/config.status
- cd $(top_builddir) && $(SHELL) ./config.status pango/$@
-module-defs-fc.c: $(top_builddir)/config.status
- cd $(top_builddir) && $(SHELL) ./config.status pango/$@
-module-defs-win32.c: $(top_builddir)/config.status
- cd $(top_builddir) && $(SHELL) ./config.status pango/$@
-module-defs-atsui.c: $(top_builddir)/config.status
+MODULE_DEF_FILES = \
+ module-defs.h \
+ module-defs-lang.c \
+ module-defs-x.c \
+ module-defs-fc.c \
+ module-defs-win32.c \
+ module-defs-atsui.c
+
+$(MODULE_DEF_FILES): $(top_builddir)/config.status
cd $(top_builddir) && $(SHELL) ./config.status pango/$@
CLEANFILES = \
@@ -461,11 +467,7 @@ CLEANFILES = \
s-enum-types-c
DISTCLEANFILES = \
- module-defs.h \
- module-defs-x.c \
- module-defs-fc.c \
- module-defs-win32.c \
- module-defs-atsui.c
+ $(MODULE_DEF_FILES)
install-data-local: install-ms-lib install-def-files
diff --git a/pango/modules.c b/pango/modules.c
index 2c2b7321..301c098d 100644
--- a/pango/modules.c
+++ b/pango/modules.c
@@ -31,6 +31,7 @@
#include "pango-enum-types.h"
#include "pango-modules.h"
#include "pango-impl-utils.h"
+#include "modules.h"
typedef struct _PangoModule PangoModule;
typedef struct _PangoModuleClass PangoModuleClass;
@@ -536,6 +537,7 @@ static void
init_modules (void)
{
static gboolean init = FALSE;
+ int i;
if (init)
return;
@@ -545,6 +547,8 @@ init_modules (void)
/* Make sure that the type system is initialized */
g_type_init ();
+ for (i = 0; _pango_included_lang_modules[i].list; i++)
+ pango_module_register (&_pango_included_lang_modules[i]);
read_modules ();
}
diff --git a/pango/modules.h b/pango/modules.h
index eb04d5b4..ca22701b 100644
--- a/pango/modules.h
+++ b/pango/modules.h
@@ -25,6 +25,7 @@
#ifndef __MODULES_H__
#define __MODULES_H__
+extern PangoIncludedModule _pango_included_lang_modules[];
extern PangoIncludedModule _pango_included_x_modules[];
extern PangoIncludedModule _pango_included_fc_modules[];
extern PangoIncludedModule _pango_included_win32_modules[];