diff -u openoffice.org-1.1.3/ooo-build/patches/OOO_1_1/vfs-uno-uri.diff openoffice.org-1.1.3/ooo-build/patches/OOO_1_1/vfs-uno-uri.diff
--- openoffice.org-1.1.3/ooo-build/patches/OOO_1_1/vfs-uno-uri.diff
+++ openoffice.org-1.1.3/ooo-build/patches/OOO_1_1/vfs-uno-uri.diff
@@ -5,11 +5,13 @@
 diff -u -p -r1.26.46.1 static.mk
 --- tools/bootstrp/static.mk	28 Jan 2004 10:54:08 -0000	1.26.46.1
 +++ tools/bootstrp/static.mk	26 Aug 2004 15:01:26 -0000
-@@ -141,6 +141,7 @@ STATIC_LIBS		+=	-lX11 -lXext 
+@@ -141,6 +141,9 @@ STATIC_LIBS		+=	-lX11 -lXext 
  .ELSE
  STATIC_LIBS		+=	-lsupc++ -lX11 -lXext 
  .ENDIF
++.IF "$(USE_GNOMEVFS)" == "TRUE"
 +STATIC_LIBS             += `pkg-config --libs gnome-vfs-2.0`
++.ENDIF
  .ENDIF
  
  # -----------------------------------------------------------
@@ -20,11 +22,14 @@
 diff -u -p -r1.7 makefile.mk
 --- tools/source/fsys/makefile.mk	30 Apr 2003 08:25:46 -0000	1.7
 +++ tools/source/fsys/makefile.mk	26 Aug 2004 15:01:59 -0000
-@@ -101,6 +101,8 @@ OBJFILES=   $(OBJ)$/wldcrd.obj   \
+@@ -101,3 +101,6 @@ OBJFILES=   $(OBJ)$/wldcrd.obj   \
              $(OBJ)$/tdir.obj	\
              $(OBJ)$/urlobj.obj
  
++.IF "$(USE_GNOMEVFS)" == "TRUE"
 +CFLAGS+=`pkg-config --cflags gnome-vfs-2.0`
++.ENDIF
+
 +
  # --- Targets ------------------------------------------------------
  
@@ -37,13 +42,15 @@
 diff -u -p -r1.11.12.1 makefile.mk
 --- tools/util/makefile.mk	15 Aug 2003 11:30:50 -0000	1.11.12.1
 +++ tools/util/makefile.mk	26 Aug 2004 15:02:41 -0000
-@@ -213,6 +213,10 @@ SHL1STDLIBS+=   shell32.lib     \
+@@ -213,6 +213,12 @@ SHL1STDLIBS+=   shell32.lib     \
                  uuid.lib        \
                  advapi32.lib
  .ENDIF
 +.IF "$(GUI)"=="UNX"
++.IF "$(USE_GNOMEVFS)" == "TRUE"
 +SHL1STDLIBS+=`pkg-config --libs gnome-vfs-2.0`
 +.ENDIF
++.ENDIF
 +
  
  DEF1NAME        =$(SHL1TARGET)
@@ -56,10 +63,11 @@
 diff -u -w -r1.40 urlobj.cxx
 --- tools/source/fsys/urlobj.cxx	22 May 2003 08:45:17 -0000	1.40
 +++ tools/source/fsys/urlobj.cxx	27 Aug 2004 10:00:06 -0000
-@@ -107,6 +107,16 @@
+@@ -107,6 +107,17 @@
  #define INCLUDED_LIMITS
  #endif
  
++#ifdef USE_GNOMEVFS
 +#ifndef _VOS_MUTEX_HXX
 +#include <vos/mutex.hxx>
 +#endif
@@ -69,41 +77,47 @@
 +
 +#include <libgnomevfs/gnome-vfs.h>
 +
-+
++#endif /* USE_GNOMEVFS */
  namespace unnamed_tools_urlobj {} using namespace unnamed_tools_urlobj;
  	// unnamed namespaces don't work well yet...
  
-@@ -393,6 +403,8 @@
+@@ -393,6 +403,10 @@
  };
  
  //============================================================================
++#ifdef USE_GNOMEVFS
 +static INetURLObject::SchemeInfo *vfs_schemeinfo_map = NULL;
++#endif /* USE_GNOMEVFS */
 +
  static INetURLObject::SchemeInfo const aSchemeInfoMap[INET_PROT_END]
  	= { { "", "", 0, false, false, false, false, false, false, false,
  		  false },
-@@ -459,6 +471,9 @@
+@@ -459,6 +471,11 @@
  inline INetURLObject::SchemeInfo const &
  INetURLObject::getSchemeInfo(INetProtocol eTheScheme)
  {
++#ifdef USE_GNOMEVFS
 +   if (eTheScheme >= INET_PROT_END)
 +     return vfs_schemeinfo_map [eTheScheme - INET_PROT_END];
 +   else
++#endif /* USE_GNOMEVFS */
  	return aSchemeInfoMap[eTheScheme];
  };
  
-@@ -720,6 +735,10 @@
+@@ -720,6 +735,12 @@
  	// Parse <scheme>:
  	sal_Unicode const * p = pPos;
  	PrefixInfo const * pPrefix = getPrefix(p, pEnd);
++#ifdef USE_GNOMEVFS
 +	::rtl::OString tmpStr (rTheAbsURIRef.GetBuffer (),
 +			       rTheAbsURIRef.Len (),
 +			       RTL_TEXTENCODING_UTF8);
 +       
++#endif /* USE_GNOMEVFS */
  	if (pPrefix)
  	{
  		pPos = p;
-@@ -1329,14 +1348,17 @@
+@@ -1329,14 +1348,21 @@
  				case INET_PROT_LDAP:
  					if (pHostPortBegin == pPort && pPort != pHostPortEnd)
  					{
@@ -114,27 +128,23 @@
  					break;
  
  				default:
--					if (pHostPortBegin == pPort)
++#ifdef USE_GNOMEVFS
 +				        if (m_eScheme < INET_PROT_END && /* else might have a port */
 +					    pHostPortBegin == pPort)
++#else
+ 					if (pHostPortBegin == pPort)
++#endif /* USE_GNOMEVFS */
  					{
 +//			  fprintf (stderr, "bogus port\n");
  						setInvalid();
  						return false;
  					}
-@@ -2082,13 +2104,92 @@
+@@ -2082,8 +2104,93 @@
  			{ "vnd.sun.star.wfs:", 0, INET_PROT_VND_SUN_STAR_WFS,
  			  PrefixInfo::OFFICIAL },
  			{ "wfs:", "vnd.sun.star.wfs:", INET_PROT_VND_SUN_STAR_WFS,
--			  PrefixInfo::ALIAS } };
--	PrefixInfo const * pFirst = aMap + 1;
--	PrefixInfo const * pLast = aMap + sizeof aMap / sizeof (PrefixInfo) - 1;
--	PrefixInfo const * pMatch = 0;
--	sal_Unicode const * pMatched = rBegin;
--	sal_Unicode const * p = rBegin;
--	xub_StrLen i = 0;
-+			  PrefixInfo::ALIAS }
-+		};
+ 			  PrefixInfo::ALIAS } };
++#ifdef USE_GNOMEVFS
 +
 +static GHashTable *fast_lookup = NULL;
 +	int i;
@@ -218,44 +228,53 @@
 +	return pi;
 +
 +
-+#ifdef OVER_COMPLICATED_CODE
- 	for (; pFirst < pLast; ++i)
- 	{
- 		if (pFirst->m_pPrefix[i] == '\0')
++#else  /* USE_GNOMEVFS */
+ 	PrefixInfo const * pFirst = aMap + 1;
+ 	PrefixInfo const * pLast = aMap + sizeof aMap / sizeof (PrefixInfo) - 1;
+ 	PrefixInfo const * pMatch = 0;
+ 	sal_Unicode const * pMatched = rBegin;
 @@ -2120,7 +2220,9 @@
  		}
  	}
  	rBegin = pMatched;
 +
  	return pMatch;
-+#endif
++#endif /* USE_GNOMEVFS */
  }
  
  //============================================================================
-@@ -2359,7 +2461,7 @@
+@@ -2359,7 +2461,11 @@
  			break;
  
  		default:
--			if (aSynHost.Len() == 0)
++#ifdef USE_GNOMEVFS
 +			if (aSynHost.Len() == 0 && m_eScheme < INET_PROT_END)
++#else
+ 			if (aSynHost.Len() == 0)
++#endif /* USE_GNOMEVFS */
  				return false;
  			break;
  	}
-@@ -2436,6 +2538,7 @@
+@@ -2436,6 +2538,9 @@
  				aTheSynPath = '/';
  			break;
  
++#ifdef USE_GNOMEVFS
 +		default: /* All INET_PROT_END+ drop through here */
++#endif /* USE_GNOMEVFS */
  		case INET_PROT_FILE:
  		case INET_PROT_VND_SUN_STAR_WFS:
  		{
-@@ -3618,7 +3721,8 @@
+@@ -3618,7 +3721,12 @@
  					break;
  
  				default:
--					if (aSynHost.Len() == 0)
++#ifdef USE_GNOMEVFS
 +					if (aSynHost.Len() == 0 &&
 +					    m_eScheme < INET_PROT_END) /* valid perhaps */
++#else
+ 					if (aSynHost.Len() == 0)
++#endif /* USE_GNOMEVFS */
  					{
  						setInvalid();
  						return false;
diff -u openoffice.org-1.1.3/debian/changelog openoffice.org-1.1.3/debian/changelog
--- openoffice.org-1.1.3/debian/changelog
+++ openoffice.org-1.1.3/debian/changelog
@@ -1,3 +1,9 @@
+openoffice.org (1.1.3-2.3ubuntu5) hoary; urgency=low
+
+  * Fix the normal openoffice.org-bin not to depend on gnome-vfs.
+
+ -- Tollef Fog Heen <tfheen@canonical.com>  Thu,  9 Dec 2004 18:21:44 +0100
+
 openoffice.org (1.1.3-2.3ubuntu4) hoary; urgency=low
 
   * Fix debian/control.lang.in depends line: openoffice.org (>> 1.1.1+1.1.2) |
diff -u openoffice.org-1.1.3/debian/rules openoffice.org-1.1.3/debian/rules
--- openoffice.org-1.1.3/debian/rules
+++ openoffice.org-1.1.3/debian/rules
@@ -1,4 +1,4 @@
-#!/usr/bin/make -f
+#! /usr/bin/make -f
 ###################################################################################
 # OpenOffice.org source package rules flie
 #
@@ -420,7 +420,7 @@
 	# Files created in debian directory
 	rm -f debian/*.postinst debian/*.postrm debian/*.preinst debian/*.prerm
 
-	rm -rf tools.nongvfs
+	rm -rf tools/$(ARCHBUILDDIR:.pro=.gnomevfs.pro)
 
 	$(MAKE) -f debian/rules control
 
@@ -690,29 +690,6 @@
 	. $(SOURCE_TREE)/$(ENVFILE); cd $(SOURCE_TREE)/instsetoo && \
 	    $(BUILDCMD) $(STARTFROM) $(BUILDFLAGS) -- instsetext= $(DMAKEFLAGS)
 	
-	## hack: we need to build tools without that patch for GnomeVFS again
-	# first, copy the gnomevfs version to .gvfs to "backup" it...
-	if [ ! -f solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib/libtk$(BUILDNUM)$(LIBSUFFIX).so.gvfs ] && ldd solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib/libtl$(BUILDNUM)$(LIBSUFFIX).so | grep -q gnomevfs; then \
-	    cp -v \
-	    solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib/libtl$(BUILDNUM)$(LIBSUFFIX).so \
-	    solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib/libtl$(BUILDNUM)$(LIBSUFFIX).so.gvfs; \
-	fi
-	
-	# ... then build the non-gnomevfs version in an second tools dir
-	# if the "normal" .so has vfs stuff in it.
-	if objdump -p solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib/libtl$(BUILDNUM)$(LIBSUFFIX).so | grep NEEDED | grep -q vfs; then \
-	    if [ -d $(SOURCE_TREE)/tools.nongvfs ]; then \
-		    rm -rf $(SOURCE_TREE)/tools.nongvfs; \
-	    fi; \
-	    cp -rv $(SOURCE_TREE)/tools $(SOURCE_TREE)/tools.nongvfs; \
-	    cd $(SOURCE_TREE)/tools.nongvfs && \
-	        patch -R -p1 < $(CURDIR)/$(SOURCE_TREE)/$(OOO_BUILD)/patches/OOO_1_1/vfs-uno-uri.diff; \
-	    . $(CURDIR)/$(SOURCE_TREE)/$(ENVFILE); rm -rf $(ARCHBUILDDIR) && \
-	      $(BUILDCMD) $(BUILDFLAGS) -- $(DMAKEFLAGS) && \
-	      cp $(ARCHBUILDDIR)/lib/libtl* \
-	       $(CURDIR)/$(SOURCE_TREE)/solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib;\
-	fi
-	
 	touch $@
 
 sdk: $(STAMP_DIR)/sdk
@@ -724,6 +701,15 @@
 
 	touch $@
 
+tools.gnomevfs: $(STAMP_DIR)/solver
+
+	# Then build tools again, this time with GnomeVFS enabled.
+	. $(SOURCE_TREE)/$(ENVFILE); cd $(SOURCE_TREE)/tools && \
+	OUTPATH="$$OUTPATH.gnomevfs" USE_GNOMEVFS=TRUE \
+	$(BUILDCMD) $(BUILDFLAGS) -- $(DMAKEFLAGS)
+
+	touch $@
+
 # Build full installation set for BUILDLANG language
 instsetoo: $(STAMP_DIR)/instsetoo
 $(STAMP_DIR)/instsetoo: $(STAMP_DIR)/solver
@@ -903,7 +889,7 @@
 	touch $@
 	
 # Install files generated by setup into arch-dependent package directories
-install-arch: $(STAMP_DIR)/install-arch
+install-arch: $(STAMP_DIR)/install-arch tools.gnomevfs
 $(STAMP_DIR)/install-arch: debian/openoffice.org$(VER)-bin.install
 $(STAMP_DIR)/install-arch: debian/openoffice.org$(VER)-java.install
 $(STAMP_DIR)/install-arch: debian/openoffice.org$(VER)-gtk-gnome.install
@@ -940,11 +926,11 @@
 	cd $(MAINPKGDIR)-dev/$(OPENOFFICEDIR)/sdk/linux/bin && \
 		for i in *; do mv $$i $$i.bin; done
 
-	# install gnomevfs version of libtl, we can't do it in dh_install
-	# because dh_install can't rename files...
+	# install gnomevfs version of libtl,  We do it here, not in .install
+	# because of the output path 
 	install -m644 \
-	solver/$(BUILDNUM)/$(ARCHBUILDDIR)/lib/libtl$(BUILDNUM)$(LIBSUFFIX).so.gvfs \
+	tools/$(ARCHBUILDDIR:.pro=.gnomevfs.pro)/lib/libtl$(BUILDNUM)$(LIBSUFFIX).so \
 	$(MAINPKGDIR)-gnomevfs/$(OPENOFFICEDIR)/program/libtl$(BUILDNUM)$(LIBSUFFIX).so
 
 # when we use external stlport we can just symlink to the "normal"
