diff --git a/configure.ac b/configure.ac index 87575d59..2aeb8df7 100644 --- a/configure.ac +++ b/configure.ac @@ -164,6 +164,17 @@ AC_SUBST(GMIME_LIBS) gmime_version="`$PKG_CONFIG --modversion gmime-3.0`" +# gmime, version 3.0 or higher +PKG_CHECK_MODULES(JSON_GLIB,json-glib-1.0 >= 1.4,[have_json_glib=yes],[have_json_glib=no]) +AS_IF([test "x$have_json_glib" = "xyes"],[ + AC_SUBST(JSON_GLIB_CFLAGS) + AC_SUBST(JSON_GLIB_LIBS) + json_glib_version="$($PKG_CONFIG --modversion json-glib-1.0)" + AC_DEFINE(HAVE_JSON_GLIB,[1], [Do we support json-glib?]) +]) +AM_CONDITIONAL(HAVE_JSON_GLIB,[test "x$have_json_glib" = "xyes"]) + + # xapian checking - we need 1.2.x at least AC_CHECK_PROG(XAPIAN_CONFIG,xapian-config,xapian-config,no) AM_CONDITIONAL(HAVE_XAPIAN,test "x$XAPIAN_CONFIG" != "xno") @@ -318,6 +329,10 @@ echo "Xapian version : $xapian_version" echo "GLib version : $glib_version" echo "GMime version : $gmime_version" +AM_COND_IF([HAVE_JSON_GLIB],[ +echo "Json-Glib version : $json_glib_version" +]) + AM_COND_IF([BUILD_GUI],[ echo "GTK+ version : $gtk_version" echo "Webkit version : $webkit_version" diff --git a/lib/Makefile.am b/lib/Makefile.am index be8d6db5..4a2040fd 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -20,12 +20,21 @@ include $(top_srcdir)/gtest.mk # before decending into tests/ SUBDIRS= parser . tests +if HAVE_JSON_GLIB +json_srcs= \ + mu-msg-json.c \ + mu-msg-json.h +json_flag="-DHAVE_JSON_GLIB" +endif + AM_CFLAGS= \ $(WARN_CFLAGS) \ $(GMIME_CFLAGS) \ $(GLIB_CFLAGS) \ $(GUILE_CFLAGS) \ + $(JSON_GLIB_CFLAGS) \ $(ASAN_CFLAGS) \ + $(json_flag) \ -Wno-format-nonliteral \ -Wno-switch-enum \ -Wno-suggest-attribute=format \ @@ -36,6 +45,7 @@ AM_CXXFLAGS= \ $(WARN_CXXFLAGS) \ $(GMIME_CFLAGS) \ $(GLIB_CFLAGS) \ + $(JSON_GLIB_CFLAGS) \ $(XAPIAN_CXXFLAGS) \ $(GUILE_CFLAGS) \ $(ASAN_CXXFLAGS) @@ -76,6 +86,7 @@ libmu_la_SOURCES= \ mu-msg-file.h \ mu-msg-iter.cc \ mu-msg-iter.h \ + $(json_srcs) \ mu-msg-part.c \ mu-msg-part.h \ mu-msg-prio.c \ @@ -108,6 +119,7 @@ libmu_la_LIBADD= \ $(GMIME_LIBS) \ $(GLIB_LIBS) \ $(GUILE_LIBS) \ + $(JSON_GLIB_LIBS) \ ${builddir}/parser/libmuxparser.la libmu_la_LDFLAGS= \ diff --git a/lib/tests/Makefile.am b/lib/tests/Makefile.am index 6170d25e..98aaabc9 100644 --- a/lib/tests/Makefile.am +++ b/lib/tests/Makefile.am @@ -32,6 +32,7 @@ AM_CPPFLAGS=$(XAPIAN_CXXFLAGS) \ # use -Wno-unused-parameters, because some callbacks may not # really need all the params they get AM_CFLAGS= \ + $(JSON_GLIB_CFLAGS) \ $(WARN_CFLAGS) \ $(ASAN_CFLAGS) AM_CXXFLAGS= \ diff --git a/mu/Makefile.am b/mu/Makefile.am index a35e7ec1..97f6c991 100644 --- a/mu/Makefile.am +++ b/mu/Makefile.am @@ -26,6 +26,7 @@ AM_CPPFLAGS=-I${top_srcdir}/lib $(GLIB_CFLAGS) # use -Wno-unused-parameters, because some callbacks may not # really need all the params they get AM_CFLAGS= \ + $(JSON_GLIB_CFLAGS) \ $(ASAN_CFLAGS) \ $(WARN_CFLAGS) \ -Wno-switch-enum \