diff -ru mugshot-1.1.92.orig/configure.ac mugshot-1.1.92.xpcom/configure.ac --- mugshot-1.1.92.orig/configure.ac 2008-03-20 16:21:21.000000000 -0400 +++ mugshot-1.1.92.xpcom/configure.ac 2008-03-29 16:00:20.000000000 -0400 @@ -426,6 +426,8 @@ have_full_gecko=false sdk_includes_nspr=false need_separate_js=false +sdk_includes_xpcom_core=false +sdk_includes_xpcom=false if test "x$with_gecko_sdk" != x -a "x$with_gecko_sdk" != xyes -a "x$with_gecko_sdk" != xno ; then GECKO_IDLDIR="$with_gecko_sdk/idl" @@ -435,6 +437,13 @@ if test -f "$GECKO_INCLUDEDIR/nspr.h" ; then sdk_includes_nspr=true fi + + if test -f "$with_gecko_sdk/lib/libxpcom.so" ; then + sdk_includes_xpcom=true + if test -f "$with_gecko_sdk/lib/libxpcom_core.so" ; then + sdk_includes_xpcom_core=true + fi + fi fi if test "x$with_gecko_idl" != x -a "x$with_gecko_idl" != xyes -a "x$with_gecko_idl" != xno ; then @@ -584,7 +593,24 @@ fi fi -PKG_CHECK_MODULES(LIBHIPPOFIREFOX, gobject-2.0 dbus-1 >= $DBUS_REQUIRED dbus-glib-1 >= $DBUS_REQUIRED $NSPR_PACKAGES $JS_PACKAGES gtk+-2.0) +if $sdk_includes_xpcom ; then + if $sdk_includes_xpcom_core ; then + XPCOM_LIBS="-L $with_gecko_sdk/lib -xpcom_core" + else + XPCOM_LIBS="-L $with_gecko_sdk/lib -lxpcom" + fi +else + for pkg in firefox-xpcom xulrunner-xpcom ; do + if test "x$XPCOM_PACKAGES" = x ; then + PKG_CHECK_EXISTS($pkg, XPCOM_PACKAGES=$pkg) + fi + done + if test "x$XPCOM_PACKAGES" = x ; then + AC_MSG_ERROR([Can't find xpcom]) + fi +fi + +PKG_CHECK_MODULES(LIBHIPPOFIREFOX, gobject-2.0 dbus-1 >= $DBUS_REQUIRED dbus-glib-1 >= $DBUS_REQUIRED $NSPR_PACKAGES $JS_PACKAGES $XPCOM_PACKAGES gtk+-2.0) if test "x${have_xulrunner}"; then LIBHIPPOFIREFOX_CFLAGS="`pkg-config --cflags libxul-unstable` ${LIBHIPPOFIREFOX_CFLAGS}" @@ -592,7 +618,7 @@ # Should have -lxpcom here, but that upsets libtool for unknown reasons. Or # should we use -lxpcomglue instead? We don't actually link to anything private, though # we use some private interfaces -LIBHIPPOFIREFOX_LIBS="$LIBHIPPOFIREFOX_LIBS $NSPR_LIBS" +LIBHIPPOFIREFOX_LIBS="$LIBHIPPOFIREFOX_LIBS $NSPR_LIBS $XPCOM_LIBS" if test "x${have_xulrunner}" = "xtrue"; then # We need to match the mozilla version by compiling with short-wchar LIBHIPPOFIREFOX_LIBS="${LIBHIPPOFIREFOX_LIBS} `pkg-config --libs libxul-unstable`"