Comment 1 for bug 654221

Revision history for this message
Alexander Sack (asac) wrote :

------------------------------------------------------------
revno: 207
fixes bug(s): https://launchpad.net/bugs/654221
committer: Alexander Sack <email address hidden>
branch nick: ntrack
timestamp: Sun 2010-10-03 20:45:55 +0200
message:
  add explicit ./configure flag for with/without-<binding> - see lp:654221
diff:
=== modified file 'Makefile.am'
--- Makefile.am 2010-01-10 21:35:49 +0000
+++ Makefile.am 2010-10-03 18:45:55 +0000
@@ -21,12 +21,20 @@

 ACLOCAL_AMFLAGS = -I m4

-SUBDIRS = common glib qt4
+SUBDIRS = common
+
+if HAVE_GLIB2
+SUBDIRS += glib
+endif

 if HAVE_GOBJECT
 SUBDIRS += gobject
 endif

+if HAVE_QT4
+SUBDIRS +=qt4
+endif
+
 dist_doc_DATA = AUTHORS NEWS README

 dump-bzr-changelog:

=== modified file 'configure.ac'
--- configure.ac 2010-07-27 22:47:22 +0000
+++ configure.ac 2010-10-03 18:45:55 +0000
@@ -36,33 +36,91 @@

 dnl Checks for libraries.

-PKG_CHECK_MODULES(GLIB, glib-2.0)
-AC_SUBST(GLIB_CFLAGS)
-AC_SUBST(GLIB_LIBS)
-
-PKG_CHECK_MODULES(GOBJECT, gobject-2.0, ac_have_gobject=1, ac_have_gobject=0)
-AC_SUBST(GOBJECT_CFLAGS)
-AC_SUBST(GOBJECT_LIBS)
+AC_ARG_WITH([glib2],
+ [AS_HELP_STRING([--with-glib2],
+ [support glib2 binding @<:@default=check@:>@])],
+ [],
+ [with_glib2=check])
+
+AC_ARG_WITH([gobject],
+ [AS_HELP_STRING([--with-gobject],
+ [support gobject binding @<:@default=check@:>@])],
+ [],
+ [with_gobject=check])
+
+AC_ARG_WITH([pygobject],
+ [AS_HELP_STRING([--with-pygobject],
+ [support gobject binding @<:@default=check@:>@])],
+ [],
+ [with_pygobject=check])
+
+AC_ARG_WITH([qt4],
+ [AS_HELP_STRING([--with-qt4],
+ [support qt4 binding @<:@default=check@:>@])],
+ [],
+ [with_qt4=check])
+
+##
+# parameter consistency check
+
+AS_IF([test "x$with_gobject" = xyes -a "x$with_glib2" = "xno"],
+ [AC_MSG_ERROR([--with-gobject is impossible --without-glib2])])
+
+AS_IF([test "x$with_pygobject" = xyes -a "x$with_glib2" = "xno"],
+ [AC_MSG_ERROR([--with-pygobject is impossible --without-glib2])])
+
+AS_IF([test "x$with_pygobject" = xyes -a "x$with_gobject" = "xno"],
+ [AC_MSG_ERROR([--with-pygobject is impossible --without-gobject])])
+
+##
+# gather c and ld flags
+
+ac_have_glib2=check
+AS_IF([test "x$with_glib2" != xno],
+ [PKG_CHECK_MODULES(GLIB, glib-2.0, ac_have_glib2=1, ac_have_glib2=0)
+ AC_SUBST(GLIB_CFLAGS)
+ AC_SUBST(GLIB_LIBS)])
+AM_CONDITIONAL(HAVE_GLIB2, test $ac_have_glib2 = 1)
+
+ac_have_gobject=check
+if test $ac_have_glib2 = 1; then
+ AS_IF([test "x$with_gobject" != xno],
+ [PKG_CHECK_MODULES(GOBJECT, gobject-2.0, ac_have_gobject=1, ac_have_gobject=0)
+ AC_SUBST(GOBJECT_CFLAGS)
+ AC_SUBST(GOBJECT_LIBS)])
+fi
 AM_CONDITIONAL(HAVE_GOBJECT, test $ac_have_gobject = 1)

-PKG_CHECK_MODULES(PYGOBJECT, pygobject-2.0, ac_have_pygobject=1, ac_have_pygobject=0)
-AC_SUBST(PYGOBJECT_CFLAGS)
-AC_SUBST(PYGOBJECT_LIBS)
+ac_have_pygobject=check
+if test $ac_have_gobject = 1; then
+ AS_IF([test "x$with_pygobject" != xno],
+ [PKG_CHECK_MODULES(PYGOBJECT, pygobject-2.0, ac_have_pygobject=1, ac_have_pygobject=0)
+ AC_SUBST(PYGOBJECT_CFLAGS)
+ AC_SUBST(PYGOBJECT_LIBS)])
+fi
 AM_CONDITIONAL(HAVE_PYGOBJECT, test $ac_have_pygobject = 1)

-PKG_CHECK_MODULES(QTCORE, QtCore)
-AC_SUBST(QTCORE_CFLAGS)
-AC_SUBST(QTCORE_LIBS)
+ac_have_qt4=check
+AS_IF([test "x$with_qt4" != xno],
+ [PKG_CHECK_MODULES(QTCORE, QtCore, ac_have_qt4=1, ac_have_qt4=0)
+ AC_SUBST(QTCORE_CFLAGS)
+ AC_SUBST(QTCORE_LIBS)])
+AM_CONDITIONAL(HAVE_QT4, test $ac_have_qt4 = 1)

 PKG_CHECK_MODULES(LIBNL, libnl-1, ac_have_libnl=1,ac_have_libnl=0)
 AC_SUBST(LIBNL_CFLAGS)
 AC_SUBST(LIBNL_LIBS)
 AM_CONDITIONAL(HAVE_LIBNL, test $ac_have_libnl = 1)

+# consistency checks
 if ! test "$ac_have_libnl" = "1"; then
  AC_ERROR([libnl is required])
 fi

+AS_IF([test x$with_glib2 = xyes -a $ac_have_glib2 != 1],
+ [AC_MSG_ERROR([with-glib2 set, but build dependencies not fulfilled, you need glib-2.0 .pc file in PKG_CONFIG_PATH])]
+)
+
 AC_OUTPUT(
  Makefile
  common/Makefile common/test/Makefile