diff -Naur eggdbus-0.6/configure eggdbus-0.6.patch/configure
--- eggdbus-0.6/configure	2009-07-05 01:07:00.000000000 +0200
+++ eggdbus-0.6.patch/configure	2009-11-14 22:17:59.828231573 +0100
@@ -805,6 +805,8 @@
 MAN_PAGES_ENABLED_FALSE
 MAN_PAGES_ENABLED_TRUE
 XSLTPROC
+EGGDBUS_GLIB_GENMARSHAL
+EGGDBUS_BINDING_TOOL
 OTOOL64
 OTOOL
 LIPO
@@ -927,6 +929,8 @@
 enable_ansi
 enable_verbose_mode
 enable_man_pages
+with_eggdbus_binding_tool
+with_eggdbus_glib_genmarshal
 with_html_dir
 enable_gtk_doc
 '
@@ -1597,6 +1601,10 @@
   --with-pic              try to use only PIC/non-PIC objects [default=use
                           both]
   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
+  --with-eggdbus-binding-tool=filename
+                          Use external eggdbus-binding-tool program
+  --with-eggdbus-glib-genmarshal=filename
+                          Use external eggdbus-glib-genmarshal program
   --with-html-dir=PATH    path to installed docs
 
 Some influential environment variables:
@@ -6563,13 +6571,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:6566: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:6574: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:6569: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:6577: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:6572: output\"" >&5)
+  (eval echo "\"\$as_me:6580: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -7774,7 +7782,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 7777 "configure"' > conftest.$ac_ext
+  echo '#line 7785 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -9212,11 +9220,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9215: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9223: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:9219: \$? = $ac_status" >&5
+   echo "$as_me:9227: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -9551,11 +9559,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9554: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9562: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:9558: \$? = $ac_status" >&5
+   echo "$as_me:9566: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -9656,11 +9664,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9659: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9667: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:9663: \$? = $ac_status" >&5
+   echo "$as_me:9671: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -9711,11 +9719,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:9714: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:9722: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:9718: \$? = $ac_status" >&5
+   echo "$as_me:9726: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -12514,7 +12522,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12517 "configure"
+#line 12525 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12610,7 +12618,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12613 "configure"
+#line 12621 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -13391,6 +13399,26 @@
 fi
 
 
+
+# Check whether --with-eggdbus-binding-tool was given.
+if test "${with_eggdbus_binding_tool+set}" = set; then
+  withval=$with_eggdbus_binding_tool; EGGDBUS_BINDING_TOOL=$withval
+else
+  EGGDBUS_BINDING_TOOL=\$\(top_builddir\)/src/eggdbus/eggdbus-binding-tool
+fi
+
+
+
+
+# Check whether --with-eggdbus-glib-genmarshal was given.
+if test "${with_eggdbus_glib_genmarshal+set}" = set; then
+  withval=$with_eggdbus_glib_genmarshal; EGGDBUS_GLIB_GENMARSHAL=$withval
+else
+  EGGDBUS_GLIB_GENMARSHAL=\$\(top_builddir\)/src/eggdbus/eggdbus-glib-genmarshal
+fi
+
+
+
 if test "${enable_man_page}" != no; then
 # Extract the first word of "xsltproc", so it can be a program name with args.
 set dummy xsltproc; ac_word=$2
diff -Naur eggdbus-0.6/configure.ac eggdbus-0.6.patch/configure.ac
--- eggdbus-0.6/configure.ac	2009-06-19 23:39:32.000000000 +0200
+++ eggdbus-0.6.patch/configure.ac	2009-11-14 22:17:37.796265674 +0100
@@ -21,6 +21,16 @@
 AC_ARG_ENABLE(verbose-mode,     [  --enable-verbose-mode   support verbose debug mode],enable_verbose_mode=$enableval,enable_verbose_mode=$USE_MAINTAINER_MODE)
 AC_ARG_ENABLE(man-pages,        [  --enable-man-pages      build manual pages],enable_man_pages=$enableval,enable_man_pages=yes)
 
+AC_ARG_WITH(eggdbus-binding-tool,
+  AS_HELP_STRING([--with-eggdbus-binding-tool=[filename]],[Use external eggdbus-binding-tool program]),
+  [EGGDBUS_BINDING_TOOL=$withval],[EGGDBUS_BINDING_TOOL=\$\(top_builddir\)/src/eggdbus/eggdbus-binding-tool])
+AC_SUBST(EGGDBUS_BINDING_TOOL)
+
+AC_ARG_WITH(eggdbus-glib-genmarshal,
+  AS_HELP_STRING([--with-eggdbus-glib-genmarshal=[filename]],[Use external eggdbus-glib-genmarshal program]),
+  [EGGDBUS_GLIB_GENMARSHAL=$withval],[EGGDBUS_GLIB_GENMARSHAL=\$\(top_builddir\)/src/eggdbus/eggdbus-glib-genmarshal])
+AC_SUBST(EGGDBUS_GLIB_GENMARSHAL)
+
 if test "${enable_man_page}" != no; then
 dnl
 dnl Check for xsltproc
diff -Naur eggdbus-0.6/docs/eggdbus/Makefile.in eggdbus-0.6.patch/docs/eggdbus/Makefile.in
--- eggdbus-0.6/docs/eggdbus/Makefile.in	2009-09-16 17:46:57.000000000 +0200
+++ eggdbus-0.6.patch/docs/eggdbus/Makefile.in	2009-11-14 22:18:01.847355855 +0100
@@ -117,6 +117,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
diff -Naur eggdbus-0.6/docs/Makefile.in eggdbus-0.6.patch/docs/Makefile.in
--- eggdbus-0.6/docs/Makefile.in	2009-07-05 01:06:58.000000000 +0200
+++ eggdbus-0.6.patch/docs/Makefile.in	2009-11-14 22:18:01.759355998 +0100
@@ -111,6 +111,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
diff -Naur eggdbus-0.6/docs/man/Makefile.in eggdbus-0.6.patch/docs/man/Makefile.in
--- eggdbus-0.6/docs/man/Makefile.in	2009-07-05 01:06:58.000000000 +0200
+++ eggdbus-0.6.patch/docs/man/Makefile.in	2009-11-14 22:18:01.930355603 +0100
@@ -95,6 +95,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
diff -Naur eggdbus-0.6/docs/tests/Makefile.in eggdbus-0.6.patch/docs/tests/Makefile.in
--- eggdbus-0.6/docs/tests/Makefile.in	2009-09-16 17:46:53.000000000 +0200
+++ eggdbus-0.6.patch/docs/tests/Makefile.in	2009-11-14 22:18:02.032356129 +0100
@@ -117,6 +117,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
diff -Naur eggdbus-0.6/Makefile.in eggdbus-0.6.patch/Makefile.in
--- eggdbus-0.6/Makefile.in	2009-07-05 01:06:59.000000000 +0200
+++ eggdbus-0.6.patch/Makefile.in	2009-11-14 22:18:02.772356388 +0100
@@ -150,6 +150,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
diff -Naur eggdbus-0.6/src/eggdbus/Makefile.am eggdbus-0.6.patch/src/eggdbus/Makefile.am
--- eggdbus-0.6/src/eggdbus/Makefile.am	2009-02-06 21:46:49.000000000 +0100
+++ eggdbus-0.6.patch/src/eggdbus/Makefile.am	2009-11-14 22:17:37.797358224 +0100
@@ -130,7 +130,7 @@
 	$(NULL)
 
 eggdbus-built-sources.stamp : eggdbus-binding-tool Makefile.am org.freedesktop.DBus.xml org.freedesktop.DBus.Peer.xml org.freedesktop.DBus.Properties.xml org.freedesktop.DBus.Introspectable.xml eggdbus-glib-genmarshal
-	EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool							\
+	EGG_DBUS_GENMARSHAL=$(EGGDBUS_GLIB_GENMARSHAL) $(EGGDBUS_BINDING_TOOL)				\
 		--namespace EggDBus									\
 		--dbus-namespace org.freedesktop.DBus							\
 		--interfaces-only									\
diff -Naur eggdbus-0.6/src/eggdbus/Makefile.in eggdbus-0.6.patch/src/eggdbus/Makefile.in
--- eggdbus-0.6/src/eggdbus/Makefile.in	2009-07-05 01:06:59.000000000 +0200
+++ eggdbus-0.6.patch/src/eggdbus/Makefile.in	2009-11-14 22:18:02.469356300 +0100
@@ -206,6 +206,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
@@ -1370,7 +1372,7 @@
 
 
 eggdbus-built-sources.stamp : eggdbus-binding-tool Makefile.am org.freedesktop.DBus.xml org.freedesktop.DBus.Peer.xml org.freedesktop.DBus.Properties.xml org.freedesktop.DBus.Introspectable.xml eggdbus-glib-genmarshal
-	EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool							\
+	EGG_DBUS_GENMARSHAL=$(EGGDBUS_GLIB_GENMARSHAL) $(EGGDBUS_BINDING_TOOL)				\
 		--namespace EggDBus									\
 		--dbus-namespace org.freedesktop.DBus							\
 		--interfaces-only									\
diff -Naur eggdbus-0.6/src/Makefile.in eggdbus-0.6.patch/src/Makefile.in
--- eggdbus-0.6/src/Makefile.in	2009-07-05 01:06:58.000000000 +0200
+++ eggdbus-0.6.patch/src/Makefile.in	2009-11-14 22:18:02.094355991 +0100
@@ -110,6 +110,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
diff -Naur eggdbus-0.6/src/tests/Makefile.am eggdbus-0.6.patch/src/tests/Makefile.am
--- eggdbus-0.6/src/tests/Makefile.am	2009-02-03 22:09:01.000000000 +0100
+++ eggdbus-0.6.patch/src/tests/Makefile.am	2009-11-14 22:17:37.798364518 +0100
@@ -25,7 +25,7 @@
 	$(NULL)
 
 test-built-sources.stamp : Makefile.am $(top_builddir)/src/eggdbus/eggdbus-binding-tool com.example.Frob.xml com.example.Tweak.xml com.example.Twiddle.xml
-	EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool									\
+	EGG_DBUS_GENMARSHAL=$(EGGDBUS_GLIB_GENMARSHAL) $(EGGDBUS_BINDING_TOOL)					\
 	  --namespace       "Test"										\
 	  --dbus-namespace  "com.example"									\
 	  --include-header  testtypes.h										\
diff -Naur eggdbus-0.6/src/tests/Makefile.in eggdbus-0.6.patch/src/tests/Makefile.in
--- eggdbus-0.6/src/tests/Makefile.in	2009-07-05 01:06:59.000000000 +0200
+++ eggdbus-0.6.patch/src/tests/Makefile.in	2009-11-14 22:18:02.694356123 +0100
@@ -140,6 +140,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGGDBUS_BINDING_TOOL = @EGGDBUS_BINDING_TOOL@
+EGGDBUS_GLIB_GENMARSHAL = @EGGDBUS_GLIB_GENMARSHAL@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
@@ -839,7 +841,7 @@
 
 
 test-built-sources.stamp : Makefile.am $(top_builddir)/src/eggdbus/eggdbus-binding-tool com.example.Frob.xml com.example.Tweak.xml com.example.Twiddle.xml
-	EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool									\
+	EGG_DBUS_GENMARSHAL=$(EGGDBUS_GLIB_GENMARSHAL) $(EGGDBUS_BINDING_TOOL)					\
 	  --namespace       "Test"										\
 	  --dbus-namespace  "com.example"									\
 	  --include-header  testtypes.h										\
