diff options
author | Havoc Pennington <hp@redhat.com> | 2000-12-14 23:23:14 +0000 |
---|---|---|
committer | Havoc Pennington <hp@src.gnome.org> | 2000-12-14 23:23:14 +0000 |
commit | 016c4d7047fd3ac2f76667f4ffe3b3a22ad0b902 (patch) | |
tree | 740872633a5f6f1ffda8dbf8a01e5249e9ff85de /modules | |
parent | 1b3ed686bdc299ab5b79eeb8a485f6d84189f4e6 (diff) | |
download | pango-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.am | 11 | ||||
-rw-r--r-- | modules/arabic/Makefile.am | 3 | ||||
-rw-r--r-- | modules/basic/Makefile.am | 4 | ||||
-rw-r--r-- | modules/hangul/Makefile.am | 3 | ||||
-rw-r--r-- | modules/indic/Makefile.am | 99 | ||||
-rw-r--r-- | modules/indic/bengali-x.c | 4 | ||||
-rw-r--r-- | modules/indic/bengali.c | 4 | ||||
-rw-r--r-- | modules/indic/devanagari-x.c | 4 | ||||
-rw-r--r-- | modules/indic/devanagari.c | 4 | ||||
-rw-r--r-- | modules/indic/gujarati-x.c | 4 | ||||
-rw-r--r-- | modules/indic/gujarati.c | 4 | ||||
-rw-r--r-- | modules/indic/gurmukhi-x.c | 4 | ||||
-rw-r--r-- | modules/indic/gurmukhi.c | 4 | ||||
-rw-r--r-- | modules/indic/myanmar-x.c | 4 | ||||
-rw-r--r-- | modules/indic/myanmar.c | 4 | ||||
-rw-r--r-- | modules/indic/pango-indic-script.h | 10 | ||||
-rw-r--r-- | modules/tamil/Makefile.am | 3 | ||||
-rw-r--r-- | modules/thai/Makefile.am | 3 |
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) |