summaryrefslogtreecommitdiff
blob: 8be91cc328aa0a74678c0a1b83301ad13dfe0b35 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
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`"