[Vm-dev] UnicodePlugin and configure/Makefile.inc

stes@PANDORA.BE stes at telenet.be
Mon Sep 14 11:35:11 UTC 2020


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256


Hi,

When configuring on a Solaris 11.4 system I get in 'configure'

checking for PangoCairo libraries... no
******** disabling UnicodePlugin

However pango is installed on Solaris 11.4 :

library/desktop/pango                             1.40.4-11.4.0.0.1.14.0     i--

on Solaris 11.3 I have

library/desktop/pango                             1.40.4-0.175.3.29.0.3.0    i--

And on Solaris 11.3, the UnicodePlugin compiles and is not disabled.

I think this is related to an issue in the Makefile.inc and configure script.

The configure script is doing a small test with 

CPPFLAGS="-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/lib/i386-linux-gnu/glib-2.0/include"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <pango/pangocairo.h>

But the above includes are wrong for Solaris 11.4

For the UnicodePlugin, I've noticed that 

	platforms/unix/plugins/UnicodePlugin

has two files Makefile.inc and acinclude.m4 (which are possibly related,
by autoconf) that have 

XCPPFLAGS=	-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0  -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/lib/i386-linux-gnu/glib-2.0/include

Note that on Solaris 64bit I think the above is not correct.

On Solaris there is:

 # pkg-config --cflags glib-2.0
 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include  

and

 # PKG_CONFIG_PATH=/usr/lib/64/pkgconfig pkg-config --cflags glib-2.0
- -I/usr/include/glib-2.0 -I/usr/lib/amd64/glib-2.0/include  

It should somehow include /usr/lib/amd64/glib-2.0/include/ for the Makefile,
and also for the configure script, in the case of a 64 bit build.

So the arm-linux-gnueabihf and i386-linux-gnu stuff is wrong and not needed.

When changing the Makefile.inc to delete the -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/lib/i386-linux-gnu/glib-2.0/include stuff, and add the /usr/lib/amd64/glib-2.0/include  this is fixed.

I can also change the 'configure' script and fix the include.

The right fix probably is to regenerate it with 'autoconf' but this requires,
perhaps to have it use the pkg-config --cflags output ?

Also instead of changing Makefile.inc, maybe some trick is 
possible to have it use the pkg-config --cflags output ??

Note that for some reason on older versions of Solaris like Solaris 10
and Solaris 11.3,  the issue is not happening,
but the includes are still wrong.  They just don't break the build there.

Regards,
David Stes

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBCAAGBQJfX1S2AAoJEAwpOKXMq1Ma0BcH/03SRpvmbjXj5+KO8k7RBsqK
MlJ9nyRxmhy+vlesUR6huSLIQT1JcEf1AZSgZUjJXIuvyUst1wAIc8oE8o4ulfSo
LRoJbPUbrm1JZW5rCeWDPJqtVhYiMxTqVinONdq5tFpk724K2VUycgCTzpMXeAdw
uwP5JTgXplzbAZwXaBMpiKqb5hgI0GltPwO+FVo0L/xxb5jAeimkLlJqnDyfQy++
zPWFVRT+xMDSsEPUFC0Oqr1TgAsAnHUpJRu599GJ8fzmYHOGJR4AD8uOrM6cCm86
gOPd0P1ZwZ4LP/Anl2h+hfRS/UD/EOB5GcU+AgWFSfsVK5tMQRI1OWGngCndoT0=
=nK33
-----END PGP SIGNATURE-----



More information about the Vm-dev mailing list