summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2000-12-14 23:23:14 +0000
committerHavoc Pennington <hp@src.gnome.org>2000-12-14 23:23:14 +0000
commit016c4d7047fd3ac2f76667f4ffe3b3a22ad0b902 (patch)
tree740872633a5f6f1ffda8dbf8a01e5249e9ff85de /modules
parent1b3ed686bdc299ab5b79eeb8a485f6d84189f4e6 (diff)
downloadpango-016c4d7047fd3ac2f76667f4ffe3b3a22ad0b902.tar.gz
add assertion that shaper != NULL to catch engine problems faster
2000-12-14 Havoc Pennington <hp@redhat.com> * pango/fonts.c (pango_font_find_shaper): add assertion that shaper != NULL to catch engine problems faster * pango/Makefile.am (libpangox_la_SOURCES): modules.[hc] and module-defs.c have to go in libpangox for now since the modules use the X stuff, and static linkage won't let you play games here * examples/Makefile.am (pango_viewer_LDADD): fix order of link * modules/indic/pango-indic-script.h (pango_indic_get_char): make this a macro, so it doesn't collide between modules * modules/*/Makefile.am: Fix to work if the module isn't included * examples/Makefile.am: don't query modules if we didn't build any * modules/indic/gurmukhi.c (MODULE_ENTRY): fix prefix * modules/indic/bengali.c (MODULE_ENTRY): fix prefix * modules/indic/gujarati.c (MODULE_ENTRY): fix prefix * modules/indic/devanagari.c (MODULE_ENTRY): fix prefix * modules/indic/myanmar.c (MODULE_ENTRY): uniquely prefix the functions * modules/Makefile.am (MODULES): handle case where there are no modules to query * configure.in: Fix up include_modules stuff to work with Indic * pango/glyphstring.c (pango_glyph_string_set_size): Just g_error() if the glyph string exceeds maximum integer size, instead of mysteriously crashing later.
Diffstat (limited to 'modules')
-rw-r--r--modules/Makefile.am11
-rw-r--r--modules/arabic/Makefile.am3
-rw-r--r--modules/basic/Makefile.am4
-rw-r--r--modules/hangul/Makefile.am3
-rw-r--r--modules/indic/Makefile.am99
-rw-r--r--modules/indic/bengali-x.c4
-rw-r--r--modules/indic/bengali.c4
-rw-r--r--modules/indic/devanagari-x.c4
-rw-r--r--modules/indic/devanagari.c4
-rw-r--r--modules/indic/gujarati-x.c4
-rw-r--r--modules/indic/gujarati.c4
-rw-r--r--modules/indic/gurmukhi-x.c4
-rw-r--r--modules/indic/gurmukhi.c4
-rw-r--r--modules/indic/myanmar-x.c4
-rw-r--r--modules/indic/myanmar.c4
-rw-r--r--modules/indic/pango-indic-script.h10
-rw-r--r--modules/tamil/Makefile.am3
-rw-r--r--modules/thai/Makefile.am3
18 files changed, 109 insertions, 67 deletions
diff --git a/modules/Makefile.am b/modules/Makefile.am
index 3647c502..c0a44571 100644
--- a/modules/Makefile.am
+++ b/modules/Makefile.am
@@ -11,9 +11,14 @@ SUBDIRS = \
install-data-local:
- $(mkinstalldirs) $(DESTDIR)$(sysconfdir)/pango
- $(top_builddir)/pango/pango-querymodules $(DESTDIR)$(libdir)/pango/modules/*.so \
- > $(DESTDIR)$(sysconfdir)/pango/pango.modules
+ ($(mkinstalldirs) $(DESTDIR)$(sysconfdir)/pango; \
+ if ls $(DESTDIR)$(libdir)/pango/modules/*.so | grep -q 'so'; then \
+ echo "Wrote $(DESTDIR)$(sysconfdir)/pango/pango.modules."; \
+ $(top_builddir)/pango/pango-querymodules $(DESTDIR)$(libdir)/pango/modules/*.so \
+ > $(DESTDIR)$(sysconfdir)/pango/pango.modules; \
+ else \
+ echo "No dynamic modules were installed; all modules were linked statically."; \
+ fi)
EXTRA_DIST = \
module.def
diff --git a/modules/arabic/Makefile.am b/modules/arabic/Makefile.am
index daf50945..9f6e538b 100644
--- a/modules/arabic/Makefile.am
+++ b/modules/arabic/Makefile.am
@@ -17,11 +17,12 @@ moddefine = -DMODULE_PREFIX
else
moduledir = $(libdir)/pango/modules
module_LTLIBRARIES = pango-arabic.la
+moduleflags = -rpath $(libdir)
endif
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(moddefine)
-pango_arabic_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
+pango_arabic_la_LDFLAGS = $(moduleflags) -export-dynamic -avoid-version -module
pango_arabic_la_SOURCES = $(sources)
libpango_arabic_la_SOURCES = $(sources)
diff --git a/modules/basic/Makefile.am b/modules/basic/Makefile.am
index 1f6be554..b2cc5f33 100644
--- a/modules/basic/Makefile.am
+++ b/modules/basic/Makefile.am
@@ -5,14 +5,16 @@ sources = basic.c
if INCLUDE_BASIC
noinst_LTLIBRARIES = libpango-basic.la
moddefine = -DMODULE_PREFIX
+
else
moduledir = $(libdir)/pango/modules
module_LTLIBRARIES = pango-basic.la
+moduleflags=-rpath $(libdir)
endif
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(moddefine)
-pango_basic_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
+pango_basic_la_LDFLAGS = $(moduleflags) -export-dynamic -avoid-version -module
pango_basic_la_LIBADD =
pango_basic_la_SOURCES = $(sources)
diff --git a/modules/hangul/Makefile.am b/modules/hangul/Makefile.am
index 1a29330d..8b67f4ec 100644
--- a/modules/hangul/Makefile.am
+++ b/modules/hangul/Makefile.am
@@ -8,11 +8,12 @@ moddefine = -DMODULE_PREFIX
else
moduledir = $(libdir)/pango/modules
module_LTLIBRARIES = pango-hangul.la
+moduleflags= -rpath $(libdir)
endif
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(moddefine)
-pango_hangul_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
+pango_hangul_la_LDFLAGS = $(moduleflags) -export-dynamic -avoid-version -module
pango_hangul_la_SOURCES = $(sources)
libpango_hangul_la_SOURCES = $(sources)
diff --git a/modules/indic/Makefile.am b/modules/indic/Makefile.am
index 18d27153..5f5db4dc 100644
--- a/modules/indic/Makefile.am
+++ b/modules/indic/Makefile.am
@@ -8,52 +8,91 @@ sources = \
devanagari.c \
pango-indic-script.h
-if INCLUDE_INDIC
-noinst_LTLIBRARIES = libpango-myanmar.la libpango-gurmukhi.la \
- libpango-bengali.la \
- libpango-devanagari.la \
- libpango-gujarati.la
-moddefine = -DMODULE_PREFIX
+if INCLUDE_MYANMAR
+myanmar_noinst=libpango-myanmar.la
+myanmar_cflags=-DMYANMAR_MODULE_PREFIX
else
-moduledir = $(libdir)/pango/modules
-module_LTLIBRARIES = pango-myanmar.la pango-gurmukhi.la \
- pango-bengali.la \
- pango-devanagari.la \
- pango-gujarati.la
+myanmar_inst=pango-myanmar.la
+myanmar_moduleflags=-rpath $(libdir)
endif
-INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(moddefine)
-
+if INCLUDE_GURMUKHI
+gurmukhi_noinst=libpango-gurmukhi.la
+gurmukhi_cflags=-DGURMUKHI_MODULE_PREFIX
+else
+gurmukhi_inst=pango-gurmukhi.la
+gurmukhi_moduleflags=-rpath $(libdir)
+endif
-EXTRA_DIST = \
- pango-indic-script.h
+if INCLUDE_BENGALI
+bengali_noinst=libpango-bengali.la
+bengali_cflags=-DBENGALI_MODULE_PREFIX
+else
+bengali_inst=pango-bengali.la
+bengali_moduleflags=-rpath $(libdir)
+endif
-pango_devanagari_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
-pango_devanagari_la_SOURCES = devanagari.c
+if INCLUDE_DEVANAGARI
+devanagari_noinst=libpango-devanagari.la
+devanagari_cflags=-DDEVANAGARI_MODULE_PREFIX
+else
+devanagari_inst=pango-devanagari.la
+devanagari_moduleflags=-rpath $(libdir)
+endif
-libpango_devanagari_la_SOURCES = devanagari.c
+if INCLUDE_GUJARATI
+gujarati_noinst=libpango-gujarati.la
+gujarati_cflags=-DGUJARATI_MODULE_PREFIX
+else
+gujarati_inst=pango-gujarati.la
+gujarati_moduleflags=-rpath $(libdir)
+endif
+if INCLUDE_ANY_INDIC
+noinst_LTLIBRARIES = $(myanmar_noinst) $(gurmukhi_noinst) $(bengali_noinst) $(devanagari_noinst) $(gujarati_noinst)
+else
+moduledir = $(libdir)/pango/modules
+module_LTLIBRARIES = $(myanmar_inst) $(gurmukhi_inst) $(bengali_inst) $(devanagari_inst) $(gujarati_inst)
+endif
-pango_myanmar_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
-pango_myanmar_la_SOURCES = myanmar.c
+INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(myanmar_cflags) $(gurmukhi_cflags) $(bengali_cflags) $(devanagari_cflags) $(gujarati_cflags)
-libpango_myanmar_la_SOURCES = myanmar.c
+EXTRA_DIST = \
+ pango-indic-script.h
+pango_devanagari_la_LDFLAGS = $(devanagari_moduleflags) -export-dynamic -avoid-version -module
+if INCLUDE_DEVANAGARI
+libpango_devanagari_la_SOURCES = devanagari.c
+else
+pango_devanagari_la_SOURCES = devanagari.c
+endif
-pango_gurmukhi_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
-pango_gurmukhi_la_SOURCES = gurmukhi.c
+pango_myanmar_la_LDFLAGS = $(myanmar_moduleflags) -export-dynamic -avoid-version -module
+if INCLUDE_MYANMAR
+libpango_myanmar_la_SOURCES = myanmar.c
+else
+pango_myanmar_la_SOURCES = myanmar.c
+endif
+pango_gurmukhi_la_LDFLAGS = $(gurmukhi_moduleflags) -export-dynamic -avoid-version -module
+if INCLUDE_GURMUKHI
libpango_gurmukhi_la_SOURCES = gurmukhi.c
+else
+pango_gurmukhi_la_SOURCES = gurmukhi.c
+endif
-
-pango_bengali_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
-pango_bengali_la_SOURCES = bengali.c
-
+pango_bengali_la_LDFLAGS = $(bengali_moduleflags) -export-dynamic -avoid-version -module
+if INCLUDE_BENGALI
libpango_bengali_la_SOURCES = bengali.c
+else
+pango_bengali_la_SOURCES = bengali.c
+endif
-
-pango_gujarati_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
+pango_gujarati_la_LDFLAGS = $(gujarati_moduleflags) -export-dynamic -avoid-version -module
+if INCLUDE_GUJARATI
+libpango_gujarati_la_SOURCES = gujarati.c
+else
pango_gujarati_la_SOURCES = gujarati.c
+endif
-libpango_gujarati_la_SOURCES = gujarati.c
diff --git a/modules/indic/bengali-x.c b/modules/indic/bengali-x.c
index 1336d4a1..0b9a93f6 100644
--- a/modules/indic/bengali-x.c
+++ b/modules/indic/bengali-x.c
@@ -285,8 +285,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_##func
+#ifdef BENGALI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_bengali_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/bengali.c b/modules/indic/bengali.c
index 1336d4a1..0b9a93f6 100644
--- a/modules/indic/bengali.c
+++ b/modules/indic/bengali.c
@@ -285,8 +285,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_##func
+#ifdef BENGALI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_bengali_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/devanagari-x.c b/modules/indic/devanagari-x.c
index 6ff9bcc9..8bddb184 100644
--- a/modules/indic/devanagari-x.c
+++ b/modules/indic/devanagari-x.c
@@ -338,8 +338,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_indic_##func
+#ifdef DEVANAGARI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_devanagari_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/devanagari.c b/modules/indic/devanagari.c
index 6ff9bcc9..8bddb184 100644
--- a/modules/indic/devanagari.c
+++ b/modules/indic/devanagari.c
@@ -338,8 +338,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_indic_##func
+#ifdef DEVANAGARI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_devanagari_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/gujarati-x.c b/modules/indic/gujarati-x.c
index 639f5e61..082640da 100644
--- a/modules/indic/gujarati-x.c
+++ b/modules/indic/gujarati-x.c
@@ -314,8 +314,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_indic_##func
+#ifdef GUJARATI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_gujarati_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/gujarati.c b/modules/indic/gujarati.c
index 639f5e61..082640da 100644
--- a/modules/indic/gujarati.c
+++ b/modules/indic/gujarati.c
@@ -314,8 +314,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_indic_##func
+#ifdef GUJARATI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_gujarati_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/gurmukhi-x.c b/modules/indic/gurmukhi-x.c
index 108053b0..e20c9e0a 100644
--- a/modules/indic/gurmukhi-x.c
+++ b/modules/indic/gurmukhi-x.c
@@ -228,8 +228,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_##func
+#ifdef GURMUKHI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_gurmukhi_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/gurmukhi.c b/modules/indic/gurmukhi.c
index 108053b0..e20c9e0a 100644
--- a/modules/indic/gurmukhi.c
+++ b/modules/indic/gurmukhi.c
@@ -228,8 +228,8 @@ pango_indic_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_##func
+#ifdef GURMUKHI_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_gurmukhi_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/myanmar-x.c b/modules/indic/myanmar-x.c
index 9bcd8b2a..4e6bf4f3 100644
--- a/modules/indic/myanmar-x.c
+++ b/modules/indic/myanmar-x.c
@@ -208,8 +208,8 @@ pango_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_##func
+#ifdef MYANMAR_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_myanmar_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/myanmar.c b/modules/indic/myanmar.c
index 9bcd8b2a..4e6bf4f3 100644
--- a/modules/indic/myanmar.c
+++ b/modules/indic/myanmar.c
@@ -208,8 +208,8 @@ pango_engine_x_new ()
return (PangoEngine *) result;
}
-#ifdef MODULE_PREFIX
-#define MODULE_ENTRY(func) _pango_pango_##func
+#ifdef MYANMAR_MODULE_PREFIX
+#define MODULE_ENTRY(func) _pango_myanmar_##func
#else
#define MODULE_ENTRY(func) func
#endif
diff --git a/modules/indic/pango-indic-script.h b/modules/indic/pango-indic-script.h
index bade7fd6..8a4c40a3 100644
--- a/modules/indic/pango-indic-script.h
+++ b/modules/indic/pango-indic-script.h
@@ -22,14 +22,6 @@
}; \
static gint n_script_engines = G_N_ELEMENTS (script_engines);
-inline gunichar
-pango_indic_get_char (gunichar * chars,
- gunichar * end)
-{
- if (chars >= end)
- return 0;
- return *chars;
-}
-
+#define pango_indic_get_char ( (chars) >= (end) ? 0 : *(chars) )
#endif
diff --git a/modules/tamil/Makefile.am b/modules/tamil/Makefile.am
index 6d9ebab0..29430e5d 100644
--- a/modules/tamil/Makefile.am
+++ b/modules/tamil/Makefile.am
@@ -8,11 +8,12 @@ moddefine = -DMODULE_PREFIX=_pango_tamil_
else
moduledir = $(libdir)/pango/modules
module_LTLIBRARIES = pango-tamil.la
+moduleflags=-rpath $(libdir)
endif
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(moddefine)
-pango_tamil_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
+pango_tamil_la_LDFLAGS = $(moduleflags) -export-dynamic -avoid-version -module
pango_tamil_la_SOURCES = $(sources)
libpango_tamil_la_SOURCES = $(sources)
diff --git a/modules/thai/Makefile.am b/modules/thai/Makefile.am
index 85890b38..c77249b9 100644
--- a/modules/thai/Makefile.am
+++ b/modules/thai/Makefile.am
@@ -8,11 +8,12 @@ moddefine = -DMODULE_PREFIX
else
moduledir = $(libdir)/pango/modules
module_LTLIBRARIES = pango-thai.la
+moduleflags=-rpath $(libdir)
endif
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/pango/ $(moddefine)
-pango_thai_la_LDFLAGS = -rpath $(libdir) -export-dynamic -avoid-version -module
+pango_thai_la_LDFLAGS = $(moduleflags) -export-dynamic -avoid-version -module
pango_thai_la_LIBADD =
pango_thai_la_SOURCES = $(sources)