GNOME Bugzilla – Bug 301041
e-d-s doesn't build with new pkg-config
Last modified: 2005-04-19 07:34:22 UTC
New version of pkg-config (0.17 onwards I believe) will cache the results of PKG_CHECK_MODULES to speed up configure runs. However, this is breaking e-d-s as all PKG_CHECK_MODULES calls are done through a function which calls PKG_CHECK_MODULES(EVOLUTION, ...). Thus the results of the first call are used for all future calls, breaking the compile due to missing -I lines.
Created attachment 45387 [details] [review] Patch to fix compiles This patch changes EVO_SET_COMPILE_FLAGS to use the target symbol in the pkg-config call to avoid incorrect caching.
I'm getting similar results from a fresh JHBUILD that I started on Fri (2005-04-15). I tried this patch and it did not work, there are side-effects. "E_DATA_SERVER_CFLAGS" is passed to compiler verbatim and gcc says: gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"e-data-server\" -I../libdb/dist -DE_DATA_SERVER_EXTENSIONDIR=\"/opt/lap/g2bin/2.10/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/opt/lap/g2bin/2.10/share/pixmaps/evolution-data-server-1.2\" E_DATA_SERVER_CFLAGS -g -O2 -Wall -Wmissing-prototypes -Wno-sign-compare -c e-data-server-marshal.c -MT e-data-server-marshal.lo -MD -MP -MF .deps/e-data-server-marshal.TPlo -fPIC -DPIC -o .libs/e-data-server-marshal.o gcc: E_DATA_SERVER_CFLAGS: No such file or directory In file included from e-data-server-marshal.c:1: e-data-server-marshal.h:5:25: glib-object.h: No such file or directory In file included from e-data-server-marshal.c:1: e-data-server-marshal.h:21: error: syntax error before "G_END_DECLS" make[2]: *** [e-data-server-marshal.lo] Error 1
The patch provided in the bugziall#300435 does the trick. it cleans up the e-d-s compile error very nicely.
I bow to James's superior knowledge of autoconf and m4... *** This bug has been marked as a duplicate of 300435 ***