summaryrefslogtreecommitdiff
path: root/pango/meson.build
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2020-06-10 16:59:41 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2020-06-10 17:17:51 +0100
commit94f44a08d3c177c12de8ce84c647a08b0a12a411 (patch)
treebc0de4d9cc743ce093c99b0a1c52155e914af304 /pango/meson.build
parent4b5e25a22cc0bb10c60cd43bef394e16f4a11846 (diff)
downloadpango-94f44a08d3c177c12de8ce84c647a08b0a12a411.tar.gz
Use the appropriate namespace for Pango sub-libraries
The Pango sub-libraries have symbols in the pango_<something> namespace, but the identifiers are in the Pango one, which makes consumers of the introspection data either get something like: PangoCairo.show_layout() with a bunch of warnings caused by the type macros not following the appropriate pattern, or: PangoCairo.cairo_show_layout() which breaks introspection ABI. We can use the __GI_SCANNER__ pre-processor symbol to trick the scanner into generating the appropriate representation of the API, while keeping the C consumers happy with the existing—albeit wildly inconsistent with best practices for GObject-based libraries—symbols.
Diffstat (limited to 'pango/meson.build')
-rw-r--r--pango/meson.build10
1 files changed, 5 insertions, 5 deletions
diff --git a/pango/meson.build b/pango/meson.build
index 015175c3..41158141 100644
--- a/pango/meson.build
+++ b/pango/meson.build
@@ -239,7 +239,7 @@ if build_pangoft2
namespace: 'PangoFc',
nsversion: pango_api_version,
identifier_prefix: 'PangoFc',
- symbol_prefix: 'pango',
+ symbol_prefix: 'pango_fc',
export_packages: 'pangofc',
includes: [ pango_gir[0], 'fontconfig-2.0', ],
header: 'pango/pangofc-fontmap.h',
@@ -257,7 +257,7 @@ if build_pangoft2
namespace: 'PangoOT',
nsversion: pango_api_version,
identifier_prefix: 'PangoOT',
- symbol_prefix: 'pango',
+ symbol_prefix: 'pango_ot',
export_packages: 'pangoot',
includes: [ pangofc_gir[0], 'freetype2-2.0', ],
header: 'pango/pango-ot.h',
@@ -274,7 +274,7 @@ if build_pangoft2
namespace: 'PangoFT2',
nsversion: pango_api_version,
identifier_prefix: 'PangoFT2',
- symbol_prefix: 'pango',
+ symbol_prefix: 'pango_ft2',
export_packages: 'pangoft2',
includes: [ pangofc_gir[0], 'freetype2-2.0', ],
header: 'pango/pangoft2.h',
@@ -364,7 +364,7 @@ if xft_dep.found() and fontconfig_dep.found()
namespace: 'PangoXft',
nsversion: pango_api_version,
identifier_prefix: 'PangoXft',
- symbol_prefix: 'pango',
+ symbol_prefix: 'pango_xft',
export_packages: 'pangoxft',
includes: [ pango_gir[0], pangoot_gir[0], pangoft2_gir[0], 'GObject-2.0', 'xft-2.0', 'xlib-2.0' ],
header: 'pango/pangoxft.h',
@@ -529,7 +529,7 @@ if cairo_dep.found()
namespace: 'PangoCairo',
nsversion: pango_api_version,
identifier_prefix: 'PangoCairo',
- symbol_prefix: 'pango',
+ symbol_prefix: 'pango_cairo',
export_packages: 'pangocairo',
includes: [ pango_gir[0], 'GObject-2.0', 'cairo-1.0' ],
header: 'pango/pangocairo.h',