ooo-build r12511 - in trunk: . patches/dev300
- From: thorstenb svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r12511 - in trunk: . patches/dev300
- Date: Fri, 9 May 2008 22:50:27 +0100 (BST)
Author: thorstenb
Date: Fri May 9 21:50:26 2008
New Revision: 12511
URL: http://svn.gnome.org/viewvc/ooo-build?rev=12511&view=rev
Log:
* patches/dev300/svg-import-standalone-conv.diff: standalone
converter binary - useful for unit testing & generally quicker for
turn-arounds.
Added:
trunk/patches/dev300/svg-import-standalone-conv.diff
Modified:
trunk/ChangeLog
Added: trunk/patches/dev300/svg-import-standalone-conv.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/svg-import-standalone-conv.diff Fri May 9 21:50:26 2008
@@ -0,0 +1,194 @@
+--- filter/source/svg/makefile.mk
++++ filter/source/svg/makefile.mk
+@@ -50,6 +50,7 @@ SLOFILES= \
+ $(SLO)$/svgfontexport.obj \
+ $(SLO)$/svgimport.obj \
+ $(SLO)$/svgreader.obj \
++ $(SLO)$/odfserializer.obj \
+ $(SLO)$/svguno.obj \
+ $(SLO)$/svgwriter.obj \
+ $(SLO)$/tokenmap.obj \
+@@ -87,6 +88,29 @@ SHL1DEF= $(MISC)$/$(SHL1TARGET).def
+
+ DEF1NAME=$(SHL1TARGET)
+
++# --- svg2odf binary ------------------------------------------------------
++
++TARGET2=svg2odf
++
++APP1TARGET=$(TARGET2)
++APP1LIBSALCPPRT=
++APP1OBJS=$(SLO)$/svg2odf.obj
++APP1OBJS+=$(SLOFILES)
++
++APP1STDLIBS=\
++ $(BASEGFXLIB) \
++ $(SVXLIB) \
++ $(XMLOFFLIB) \
++ $(BASEGFXLIB) \
++ $(VCLLIB) \
++ $(UNOTOOLSLIB) \
++ $(TOOLSLIB) \
++ $(COMPHELPERLIB) \
++ $(CPPUHELPERLIB) \
++ $(CPPULIB) \
++ $(SALLIB) \
++ $(LIBXML)
++
+ # --- Targets ----------------------------------
+
+ .INCLUDE : target.mk
+@@ -104,3 +128,26 @@ $(SLO)$/parserfragments.obj : $(INCCOM)$/tokens.cxx $(INCCOM)$/tokens.hxx
+
+ $(SLO)$/svgreader.obj : $(INCCOM)$/tokens.cxx $(INCCOM)$/tokens.hxx
+
++# svg2odf hacks
++
++.IF "$(GUI)" == "WNT"
++SAXPARSERLIB=$(SOLARBINDIR)$/sax.uno$(DLLPOST)
++UNOXMLLIB=$(SOLARBINDIR)$/$(DLLPRE)unoxml$(OFFICEUPD)$(DLLPOSTFIX)$(DLLPOST)
++.ELSE
++SAXPARSERLIB=$(SOLARLIBDIR)$/sax.uno$(DLLPOST)
++UNOXMLLIB=$(SOLARLIBDIR)$/$(DLLPRE)unoxml$(OFFICEUPD)$(DLLPOSTFIX)$(DLLPOST)
++.ENDIF
++
++$(BIN)$/unittestservices.rdb : makefile.mk $(SAXPARSERLIB) $(UNOXMLLIB)
++ rm -f $@
++ $(REGCOMP) -register -r $@ -c $(SAXPARSERLIB)
++ $(REGCOMP) -register -r $@ -c $(UNOXMLLIB)
++
++$(BIN)$/svgi_unittest_test.ini : makefile.mk
++ rm -f $@
++ @echo UNO_SERVICES=$(BIN)$/unittestservices.rdb > $@
++ @echo UNO_TYPES=$(UNOUCRRDB:s/\/\\/) >> $@
++
++ALLTAR : $(BIN)$/svgi_unittest_test.ini \
++ $(BIN)$/unittestservices.rdb \
++ $(foreach,i,$(TESTFILES:s/.svg/_svgi_unittest_succeeded/:f) $(MISC)$/$i)
+--- filter/source/svg/svg2odf.cxx 2007-09-21 21:12:45.000000000 +0200
++++ filter/source/svg/svg2odf.cxx 2008-05-08 12:30:41.000000000 +0200
+@@ -0,0 +1,124 @@
++/*************************************************************************
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * Author:
++ * Fridrich Strba <fridrich strba bluewin ch>
++ * Thorsten Behrens <tbehrens novell com>
++ *
++ * Copyright (C) 2008, Novell Inc.
++ * Parts copyright 2005 by Sun Microsystems, Inc.
++ *
++ * The Contents of this file are made available subject to
++ * the terms of GNU Lesser General Public License Version 2.1.
++ *
++ ************************************************************************/
++
++// MARKER(update_precomp.py): autogen include statement, do not remove
++#include "precompiled_filter.hxx"
++
++#include "svgreader.hxx"
++#include "odfserializer.hxx"
++
++#include <sal/main.h>
++#include <osl/file.hxx>
++#include <osl/process.h>
++#include <rtl/bootstrap.hxx>
++
++#include <cppuhelper/implbase1.hxx>
++#include <cppuhelper/bootstrap.hxx>
++#include <cppuhelper/servicefactory.hxx>
++#include <comphelper/processfactory.hxx>
++#include <comphelper/oslfile2streamwrap.hxx>
++
++using namespace ::com::sun::star;
++
++namespace
++{
++ class OutputWrap : public cppu::WeakImplHelper1<
++ io::XOutputStream>
++ {
++ osl::File maFile;
++
++ public:
++
++ explicit OutputWrap( const rtl::OUString& rURL ) : maFile(rURL)
++ {
++ maFile.open(osl_File_OpenFlag_Create|OpenFlag_Write);
++ }
++
++ virtual void SAL_CALL writeBytes( const com::sun::star::uno::Sequence< ::sal_Int8 >& aData ) throw (com::sun::star::io::NotConnectedException,com::sun::star::io::BufferSizeExceededException, com::sun::star::io::IOException, com::sun::star::uno::RuntimeException)
++
++ {
++ sal_uInt64 nBytesWritten(0);
++ maFile.write(aData.getConstArray(),aData.getLength(),nBytesWritten);
++ }
++
++ virtual void SAL_CALL flush() throw (com::sun::star::io::NotConnectedException, com::sun::star::io::BufferSizeExceededException, com::sun::star::io::IOException, com::sun::star::uno::RuntimeException)
++ {
++ }
++
++ virtual void SAL_CALL closeOutput() throw (com::sun::star::io::NotConnectedException, com::sun::star::io::BufferSizeExceededException, com::sun::star::io::IOException, com::sun::star::uno::RuntimeException)
++ {
++ maFile.close();
++ }
++ };
++}
++
++SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
++{
++ if( argc != 4 )
++ {
++ OSL_TRACE( "Invocation: svg2odf <base_url> <dst_url> <ini_file>. Exiting" );
++ return 1;
++ }
++
++ ::rtl::OUString aBaseURL, aTmpURL, aSrcURL, aDstURL, aIniUrl;
++
++ osl_getProcessWorkingDir(&aBaseURL.pData);
++ osl_getFileURLFromSystemPath( rtl::OUString::createFromAscii(argv[1]).pData,
++ &aTmpURL.pData );
++ osl_getAbsoluteFileURL(aBaseURL.pData,aTmpURL.pData,&aSrcURL.pData);
++
++ osl_getFileURLFromSystemPath( rtl::OUString::createFromAscii(argv[2]).pData,
++ &aTmpURL.pData );
++ osl_getAbsoluteFileURL(aBaseURL.pData,aTmpURL.pData,&aDstURL.pData);
++
++ osl_getFileURLFromSystemPath( rtl::OUString::createFromAscii(argv[3]).pData,
++ &aTmpURL.pData );
++ osl_getAbsoluteFileURL(aBaseURL.pData,aTmpURL.pData,&aIniUrl.pData);
++
++ // bootstrap UNO
++ uno::Reference< lang::XMultiServiceFactory > xFactory;
++ uno::Reference< uno::XComponentContext > xCtx;
++ try
++ {
++ xCtx = ::cppu::defaultBootstrap_InitialComponentContext(aIniUrl);
++ xFactory = uno::Reference< lang::XMultiServiceFactory >(xCtx->getServiceManager(),
++ uno::UNO_QUERY);
++ if( xFactory.is() )
++ ::comphelper::setProcessServiceFactory( xFactory );
++ }
++ catch( uno::Exception& )
++ {
++ }
++
++ if( !xFactory.is() )
++ {
++ OSL_TRACE( "Could not bootstrap UNO, installation must be in disorder. Exiting." );
++ return 1;
++ }
++
++ osl::File aInputFile(aSrcURL);
++ if( osl::FileBase::E_None!=aInputFile.open(OpenFlag_Read) )
++ {
++ OSL_TRACE( "Cannot open input file" );
++ return 1;
++ }
++
++ svgi::SVGReader aReader(xFactory,
++ uno::Reference<io::XInputStream>(
++ new comphelper::OSLInputStreamWrapper(aInputFile)),
++ svgi::createSerializer(new OutputWrap(aDstURL)));
++ return aReader.parseAndConvert() ? 0 : 1;
++}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]