diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-26 12:40:54 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-26 12:40:54 +0000 |
commit | 62c63d34028234e3296081e49493f0eba92fc74b (patch) | |
tree | 59d0c33c863444664ea0b19626d6b5e4dfc9f2fe | |
parent | 72ef55fe37b026d9f89cea441737d4c20fd35c73 (diff) |
MWS_SRX644: migrate branch mws_srx644 -> HEAD
29 files changed, 1977 insertions, 197 deletions
diff --git a/odk/examples/OLE/delphi/InsertTables/Project1.res b/odk/examples/OLE/delphi/InsertTables/Project1.res Binary files differindex 55f874204136..e69de29bb2d1 100644 --- a/odk/examples/OLE/delphi/InsertTables/Project1.res +++ b/odk/examples/OLE/delphi/InsertTables/Project1.res diff --git a/odk/examples/OLE/delphi/InsertTables/SampleUI.dfm b/odk/examples/OLE/delphi/InsertTables/SampleUI.dfm Binary files differindex 3a2da38750ec..082fce7b7ef8 100644 --- a/odk/examples/OLE/delphi/InsertTables/SampleUI.dfm +++ b/odk/examples/OLE/delphi/InsertTables/SampleUI.dfm diff --git a/odk/examples/basic/text/creating_an_index/indexlist.txt b/odk/examples/basic/text/creating_an_index/indexlist.txt index ba87f0d5866d..43c548a7e9d4 100644 --- a/odk/examples/basic/text/creating_an_index/indexlist.txt +++ b/odk/examples/basic/text/creating_an_index/indexlist.txt @@ -1,9 +1,9 @@ -Sun
-StarOffice
-Solaris
-Java
-Developer
-technology
-Administration
-countries
-
+Sun +StarOffice +Solaris +Java +Developer +technology +Administration +countries + diff --git a/odk/examples/cpp/DocumentLoader/Makefile b/odk/examples/cpp/DocumentLoader/Makefile index 0520205a0710..07845a6d44e3 100644 --- a/odk/examples/cpp/DocumentLoader/Makefile +++ b/odk/examples/cpp/DocumentLoader/Makefile @@ -84,8 +84,8 @@ $(COMPOENNT_ENV_FLAG) : CppDocumentLoaderExample : $(OUT_BIN)/DocumentLoader$(EXE_EXT) $(COMPOENNT_ENV_FLAG) @echo -------------------------------------------------------------------------------- - @echo The example loads the "$(QM)test.sxw$(QM)" document in the DocumentLoader example directory. - @echo I you want to load your own document, please use: DocumentLoader "$(QM)filename$(QM)" [connection_url] + @echo The example loads the test.sxw document in the DocumentLoader example directory. If you + @echo want to load your own document, please use: DocumentLoader filename [connection_url] @echo Use the following command to execute the example! @echo - @echo make DocumentLoader.run diff --git a/odk/examples/cpp/counter/Makefile b/odk/examples/cpp/counter/Makefile new file mode 100644 index 000000000000..f4e1c1bf346f --- /dev/null +++ b/odk/examples/cpp/counter/Makefile @@ -0,0 +1,120 @@ +# Builds the C++ counter example of the SDK. + +PRJ=../../.. +SETTINGS=$(PRJ)/settings + +include $(SETTINGS)/settings.mk +include $(SETTINGS)/std.mk +include $(SETTINGS)/dk.mk + +# Define non-platform/compiler specific settings +COMPONENT_NAME=counter +COMPONENT_IMPL_NAME=$(SHAREDLIB_PRE)$(COMPONENT_NAME).$(SHAREDLIB_EXT) +COMPONENT_IMPL=$(SHAREDLIB_OUT)/$(COMPONENT_IMPL_NAME) +COMPONENT_XML=$(COMPONENT_NAME).xml +COMPONENT_RDB_NAME = $(COMPONENT_NAME).rdb +COMPONENT_RDB = $(OUT_BIN)/$(COMPONENT_RDB_NAME) + +OUT_COMP_INC = $(OUT_INC)/$(COMPONENT_NAME) +OUT_COMP_GEN = $(OUT_MISC)/$(COMPONENT_NAME) +OUT_COMP_OBJ=$(OUT_OBJ)/$(COMPONENT_NAME) +OUT_COMP_SLO=$(OUT_SLO)/$(COMPONENT_NAME) + +COMPONENT_TYPEFLAG = $(OUT_MISC)/cpp_$(COMPONENT_NAME)_types.flag + +IDLFILES = XCountable.idl + +COMPCXXFILES = counter.cxx + +CXXFILES = countermain.cxx + +SLOFILES = $(patsubst %.cxx,$(OUT_COMP_SLO)/%.$(OBJ_EXT),$(COMPCXXFILES)) +OBJFILES = $(patsubst %.cxx,$(OUT_COMP_SLO)/%.$(OBJ_EXT),$(CXXFILES)) + +GENURDFILES = $(patsubst %.idl,$(OUT_COMP_GEN)/%.urd,$(IDLFILES)) + +TYPES = $(shell xml2cmp -types stdout $(COMPONENT_XML)) +TYPESLIST = $(foreach t,$(TYPES),-T$(t)) + +# Targets +.PHONY: ALL +ALL : \ + CppCounterExample + +include $(SETTINGS)/stdtarget.mk + +# create all component sepcific output directories +# and use OUT_COMP_GEN for dependencies +$(OUT_COMP_GEN) : $(OUT) + $(MKDIR) $(subst /,$(PS),$@) + $(MKDIR) $(subst /,$(PS),$(OUT_COMP_INC)) + $(MKDIR) $(subst /,$(PS),$(OUT_COMP_OBJ)) + $(MKDIR) $(subst /,$(PS),$(OUT_COMP_SLO)) + +$(OUT_COMP_GEN)/%.urd : %.idl $(OUT_COMP_GEN) + idlc -I. -I$(IDL_DIR) -O$(OUT_COMP_GEN) $< + +# This example type library will be extended by the office types +$(OUT_BIN)/%.rdb : $(GENURDFILES) $(OUT_COMP_GEN) + -$(DEL) $(subst /,$(PS),$@) + regmerge $@ /UCR $(GENURDFILES) + regmerge $@ / $(DKREGISTRYNAME) + +$(COMPONENT_TYPEFLAG) : $(COMPONENT_RDB) $(COMPONENT_XML) $(OUT_COMP_GEN) + -$(DEL) $(subst /,$(PS),$(COMPONENT_TYPEFLAG)) + cppumaker -Gc -BUCR -O$(OUT_COMP_INC) $(TYPESLIST) $(COMPONENT_RDB) + echo flagged > $@ + +$(OUT_COMP_OBJ)/%.$(OBJ_EXT) : %.cxx $(COMPONENT_TYPEFLAG) $(OUT_COMP_GEN) + $(CC) $(CC_FLAGS) $(CC_INCLUDES) -I$(OUT_COMP_INC) $(CC_DEFINES) $(CC_OUTPUT_SWITCH)$(subst /,$(PS),$@) $< + +$(OUT_COMP_SLO)/%.$(OBJ_EXT) : %.cxx $(COMPONENT_TYPEFLAG) $(OUT_COMP_GEN) + $(CC) $(CC_FLAGS) $(CC_INCLUDES) -I$(OUT_COMP_INC) $(CC_DEFINES) $(CC_OUTPUT_SWITCH)$(subst /,$(PS),$@) $< + +$(OUT_COMP_GEN)/%.def : exports.dxp +ifeq "$(OS)" "WIN" + @echo EXPORTS > $@ + $(CAT) exports.dxp >> $@ +endif + +ifeq "$(OS)" "WIN" +$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)%.$(SHAREDLIB_EXT) : $(SLOFILES) $(OUT_COMP_GEN)/$(COMPONENT_NAME).def $(OUT_COMP_GEN) + $(LINK) $(LIBRARY_LINK_FLAGS) /OUT:$@ /MAP:$(OUT_COMP_GEN)/$(COMPONENT_NAME).map \ + /DEF:$(OUT_COMP_GEN)/$(COMPONENT_NAME).def $(SLOFILES) \ + $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) $(STLPORTLIB) msvcrt.lib kernel32.lib +else +$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)%.$(SHAREDLIB_EXT) : $(SLOFILES) + $(LINK) $(LIBRARY_LINK_FLAGS) $(LINK_LIBS) -o $@ $^\ + $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) $(STLPORTLIB) $(STC++LIB) +endif + +$(OUT_BIN)/%$(EXE_EXT) : $(OUT_COMP_OBJ)/%.$(OBJ_EXT) $(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)counter.$(SHAREDLIB_EXT) $(OUT_COMP_GEN) +ifeq "$(OS)" "WIN" + $(LINK) $(EXE_LINK_FLAGS) /OUT:$@ /MAP:$(OUT_COMP_GEN)/$(basename $(@F)).map \ + $< $(CPPUHELPERLIB) $(CPPULIB) $(SALHELPERLIB) $(SALLIB) $(STLPORTLIB) +else + $(LINK) $(EXE_LINK_FLAGS) $(LINK_LIBS) -o $@ $< \ + $(CPPUHELPERLIB) $(CPPULIB) $(SALHELPERLIB) $(SALLIB) $(STLPORTLIB) $(STDC++LIB) +endif + + +CppCounterExample : $(OUT_BIN)/countermain$(EXE_EXT) $(COMPONENT_IMPL) + @echo -------------------------------------------------------------------------------- + @echo Please use the following command to execute the example! + @echo - + @echo make countermain.run + @echo -------------------------------------------------------------------------------- + +%.run: $(OUT_BIN)/countermain$(EXE_EXT) $(COMPONENT_IMPL) + cd $(OUT_BIN) && $(basename $@) + +.PHONY: clean +clean : + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_INC)) + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_GEN)) + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_OBJ)) + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_SLO)) + -$(DEL) $(subst /,$(PS),$(COMPONENT_TYPEFLAG)) + -$(DEL) $(subst /,$(PS),$(COMPONENT_RDB)) + -$(DEL) $(subst /,$(PS),$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)$(COMPONENT_NAME).*) + -$(DEL) $(subst /,$(PS),$(OUT_BIN)/countermain*) diff --git a/odk/examples/cpp/counter/XCountable.idl b/odk/examples/cpp/counter/XCountable.idl new file mode 100644 index 000000000000..074d3d0b79f9 --- /dev/null +++ b/odk/examples/cpp/counter/XCountable.idl @@ -0,0 +1,21 @@ +#include <com/sun/star/uno/XInterface.idl> + +module foo +{ + /** + * Interface to count things. + */ + interface XCountable : com::sun::star::uno::XInterface + { + long getCount(); + void setCount( [in] long nCount ); + long increment(); + long decrement(); + }; + + service Counter + { + // exported interfaces: + interface XCountable; + }; +}; diff --git a/odk/examples/cpp/counter/counter.cxx b/odk/examples/cpp/counter/counter.cxx new file mode 100644 index 000000000000..774e9c095459 --- /dev/null +++ b/odk/examples/cpp/counter/counter.cxx @@ -0,0 +1,223 @@ +/*************************************************************************************************** + *************************************************************************************************** + * + * service implementation: foo.Counter + * exported interfaces: foo.XCounter + * + * simple example component implementing a counter + * + *************************************************************************************************** + **************************************************************************************************/ + +#include <stdio.h> + +#ifndef _RTL_USTRING_HXX_ +#include <rtl/ustring.hxx> +#endif + +#ifndef _CPPUHELPER_QUERYINTERFACE_HXX_ +#include <cppuhelper/queryinterface.hxx> // helper for queryInterface() impl +#endif +#ifndef _CPPUHELPER_FACTORY_HXX_ +#include <cppuhelper/factory.hxx> // helper for component factory +#endif +// generated c++ interfaces + +#ifndef _COM_SUN_STAR_LANG_XSINGLESERVICEFACTORY_HPP_ +#include <com/sun/star/lang/XSingleServiceFactory.hpp> +#endif +#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_ +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include <com/sun/star/lang/XServiceInfo.hpp> +#endif +#ifndef _COM_SUN_STAR_REGISTRY_XREGISTRYKEY_HPP_ +#include <com/sun/star/registry/XRegistryKey.hpp> +#endif +#ifndef _FOO_XCOUNTABLE_HPP_ +#include <foo/XCountable.hpp> +#endif + +#define SERVICENAME "foo.Counter" +#define IMPLNAME "com.sun.star.comp.example.cpp.Counter" + +using namespace ::rtl; +using namespace ::osl; +using namespace ::cppu; +using namespace ::com::sun::star::uno; +using namespace ::com::sun::star::lang; +using namespace ::com::sun::star::registry; +using namespace ::foo; + + +//================================================================================================== +class MyCounterImpl + : public XCountable + , public XServiceInfo +{ + // to obtain other services if needed + Reference< XMultiServiceFactory > m_xServiceManager; + + sal_Int32 m_nRefCount; + sal_Int32 m_nCount; + +public: + MyCounterImpl( const Reference< XMultiServiceFactory > & xServiceManager ) + : m_xServiceManager( xServiceManager ), m_nRefCount( 0 ) + { printf( "< MyCounterImpl ctor called >\n" ); } + ~MyCounterImpl() + { printf( "< MyCounterImpl dtor called >\n" ); } + + // XInterface implementation + virtual void SAL_CALL acquire() throw () + { ++m_nRefCount; } + virtual void SAL_CALL release() throw () + { if (! --m_nRefCount) delete this; } + virtual Any SAL_CALL queryInterface( const Type & rType ) throw (RuntimeException) + { return cppu::queryInterface(rType, + static_cast< XInterface* >( static_cast< XServiceInfo* >( this ) ), + static_cast< XCountable* >( this ), + static_cast< XServiceInfo* >( this ) ); } + + // XServiceInfo implementation + virtual OUString SAL_CALL getImplementationName( ) throw(RuntimeException); + virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw(RuntimeException); + virtual Sequence< OUString > SAL_CALL getSupportedServiceNames( ) throw(RuntimeException); + static Sequence< OUString > SAL_CALL getSupportedServiceNames_Static( ); + + // XCountable implementation + virtual sal_Int32 SAL_CALL getCount() throw (RuntimeException) + { return m_nCount; } + virtual void SAL_CALL setCount( sal_Int32 nCount ) throw (RuntimeException) + { m_nCount = nCount; } + virtual sal_Int32 SAL_CALL increment() throw (RuntimeException) + { return (++m_nCount); } + virtual sal_Int32 SAL_CALL decrement() throw (RuntimeException) + { return (--m_nCount); } +}; + +//************************************************************************* +OUString SAL_CALL MyCounterImpl::getImplementationName( ) + throw(RuntimeException) +{ + return OUString( RTL_CONSTASCII_USTRINGPARAM(IMPLNAME) ); +} + +//************************************************************************* +sal_Bool SAL_CALL MyCounterImpl::supportsService( const OUString& ServiceName ) + throw(RuntimeException) +{ + Sequence< OUString > aSNL = getSupportedServiceNames(); + const OUString * pArray = aSNL.getArray(); + for( sal_Int32 i = 0; i < aSNL.getLength(); i++ ) + if( pArray[i] == ServiceName ) + return sal_True; + return sal_False; +} + +//************************************************************************* +Sequence<OUString> SAL_CALL MyCounterImpl::getSupportedServiceNames( ) + throw(RuntimeException) +{ + return getSupportedServiceNames_Static(); +} + +//************************************************************************* +Sequence<OUString> SAL_CALL MyCounterImpl::getSupportedServiceNames_Static( ) +{ + OUString aName( RTL_CONSTASCII_USTRINGPARAM(SERVICENAME) ); + return Sequence< OUString >( &aName, 1 ); +} + + + + +/** + * Function to create a new component instance; is needed by factory helper implementation. + * @param xMgr service manager to if the components needs other component instances + */ +Reference< XInterface > SAL_CALL MyCounterImpl_create( + const Reference< XMultiServiceFactory > & xMgr ) +{ + return Reference< XCountable >( new MyCounterImpl( xMgr ) ); +} + + +//################################################################################################## +//#### EXPORTED #################################################################################### +//################################################################################################## + + +/** + * Gives the environment this component belongs to. + */ +extern "C" void SAL_CALL component_getImplementationEnvironment(const sal_Char ** ppEnvTypeName, uno_Environment ** ppEnv) +{ + *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; +} + +/** + * This function creates an implementation section in the registry and another subkey + * + * for each supported service. + * @param pServiceManager the service manager + * @param pRegistryKey the registry key + */ +extern "C" sal_Bool SAL_CALL component_writeInfo(void * pServiceManager, void * pRegistryKey) +{ + sal_Bool result = sal_False; + + if (pRegistryKey) + { + try + { + Reference< XRegistryKey > xNewKey( + reinterpret_cast< XRegistryKey * >( pRegistryKey )->createKey( + OUString( RTL_CONSTASCII_USTRINGPARAM("/" IMPLNAME "/UNO/SERVICES") ) ) ); + + const Sequence< OUString > & rSNL = + MyCounterImpl::getSupportedServiceNames_Static(); + const OUString * pArray = rSNL.getConstArray(); + for ( sal_Int32 nPos = rSNL.getLength(); nPos--; ) + xNewKey->createKey( pArray[nPos] ); + + return sal_True; + } + catch (InvalidRegistryException &) + { + // we should not ignore exceptions + } + } + return result; +} + +/** + * This function is called to get service factories for an implementation. + * + * @param pImplName name of implementation + * @param pServiceManager a service manager, need for component creation + * @param pRegistryKey the registry key for this component, need for persistent data + * @return a component factory + */ +extern "C" void * SAL_CALL component_getFactory(const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey) +{ + void * pRet = 0; + + if (rtl_str_compare( pImplName, IMPLNAME ) == 0) + { + Reference< XSingleServiceFactory > xFactory( createSingleFactory( + reinterpret_cast< XMultiServiceFactory * >( pServiceManager ), + OUString( RTL_CONSTASCII_USTRINGPARAM(IMPLNAME) ), + MyCounterImpl_create, + MyCounterImpl::getSupportedServiceNames_Static() ) ); + + if (xFactory.is()) + { + xFactory->acquire(); + pRet = xFactory.get(); + } + } + + return pRet; +} diff --git a/odk/examples/cpp/counter/countermain.cxx b/odk/examples/cpp/counter/countermain.cxx new file mode 100644 index 000000000000..ea555dc9a81f --- /dev/null +++ b/odk/examples/cpp/counter/countermain.cxx @@ -0,0 +1,83 @@ +/*************************************************************************************************** + *************************************************************************************************** + * + * simple client application registering and using the counter component. + * + *************************************************************************************************** + **************************************************************************************************/ + +#include <stdio.h> + +#include <rtl/ustring.hxx> + +#include <osl/diagnose.h> + +#include <cppuhelper/bootstrap.hxx> +#include <cppuhelper/servicefactory.hxx> + +// generated c++ interfaces +#include <com/sun/star/lang/XComponent.hpp> +#include <com/sun/star/registry/XImplementationRegistration.hpp> +#include <foo/XCountable.hpp> + + +using namespace foo; +using namespace cppu; +using namespace com::sun::star::uno; +using namespace com::sun::star::lang; +using namespace com::sun::star::registry; + +using namespace ::rtl; + + +//================================================================================================== +int SAL_CALL main(int argc, char **argv) +{ + Reference< XSimpleRegistry > xReg = createSimpleRegistry(); + OSL_ENSURE( xReg.is(), "### cannot get service instance of \"com.sun.star.regiystry.SimpleRegistry\"!" ); + + xReg->open(OUString::createFromAscii("counter.rdb"), sal_False, sal_False); + OSL_ENSURE( xReg->isValid(), "### cannot open test registry \"counter.rdb\"!" ); + + Reference< XComponentContext > xContext = bootstrap_InitialComponentContext(xReg); + OSL_ENSURE( xContext.is(), "### cannot creage intial component context!" ); + + Reference< XMultiComponentFactory > xMgr = xContext->getServiceManager(); + OSL_ENSURE( xMgr.is(), "### cannot get initial service manager!" ); + + // register my counter component + Reference< XImplementationRegistration > xImplReg( + xMgr->createInstanceWithContext(OUString::createFromAscii("com.sun.star.registry.ImplementationRegistration"), xContext), UNO_QUERY); + OSL_ENSURE( xImplReg.is(), "### cannot get service instance of \"com.sun.star.registry.ImplementationRegistration\"!" ); + + if (xImplReg.is()) + { + xImplReg->registerImplementation( + OUString::createFromAscii("com.sun.star.loader.SharedLibrary"), // loader for component +#ifdef UNX + OUString::createFromAscii("libcounter.so"), // component location +#else + OUString::createFromAscii("counter.dll"), // component location +#endif + Reference< XSimpleRegistry >() // registry omitted, + // defaulting to service manager registry used + ); + + // get a counter instance + Reference< XInterface > xx ; + xx = xMgr->createInstanceWithContext(OUString::createFromAscii("foo.Counter"), xContext); + Reference< XCountable > xCount( xx, UNO_QUERY ); + OSL_ENSURE( xCount.is(), "### cannot get service instance of \"foo.Counter\"!" ); + + if (xCount.is()) + { + xCount->setCount( 42 ); + fprintf( stdout , "%d," , xCount->getCount() ); + fprintf( stdout , "%d," , xCount->increment() ); + fprintf( stdout , "%d\n" , xCount->decrement() ); + } + } + + Reference< XComponent >::query( xContext )->dispose(); + return 0; +} diff --git a/odk/examples/cpp/remoteclient/Makefile b/odk/examples/cpp/remoteclient/Makefile new file mode 100644 index 000000000000..e6c8910882f7 --- /dev/null +++ b/odk/examples/cpp/remoteclient/Makefile @@ -0,0 +1,130 @@ +# Builds the C++ remoteclient example of the SDK. + +PRJ=../../.. +SETTINGS=$(PRJ)/settings + +include $(SETTINGS)/settings.mk +include $(SETTINGS)/std.mk +include $(SETTINGS)/dk.mk + +# Define non-platform/compiler specific settings +COMPONENT_NAME=remoteclientsample +COMPONENT_IMPL_NAME=$(SHAREDLIB_PRE)$(COMPONENT_NAME).$(SHAREDLIB_EXT) +COMPONENT_IMPL=$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)$(COMPONENT_NAME).$(SHAREDLIB_EXT) +COMPONENT_RDB_NAME = $(COMPONENT_NAME).rdb +COMPONENT_RDB = $(OUT_BIN)/$(COMPONENT_RDB_NAME) +COMPONENT_XML=$(COMPONENT_NAME).xml + +OUT_COMP_INC=$(OUT_INC)/$(COMPONENT_NAME) +OUT_COMP_GEN=$(OUT_MISC)/$(COMPONENT_NAME) +OUT_COMP_SLO=$(OUT_SLO)/$(COMPONENT_NAME) + +COMPOENNT_ENV_FLAG = $(OUT_MISC)/cpp_$(COMPONENT_NAME)_prepare_env.flag +COMPONENT_TYPEFLAG = $(OUT_MISC)/cpp_$(COMPONENT_NAME)_types.flag + +CXXFILES = remoteclient.cxx + +SLOFILES = $(patsubst %.cxx,$(OUT_COMP_SLO)/%.$(OBJ_EXT),$(CXXFILES)) + +TYPES = $(shell xml2cmp -types stdout $(COMPONENT_XML)) +TYPESLIST = $(foreach t,$(TYPES),-T$(t)) + +# Targets +.PHONY: ALL +ALL : \ + CppOfficeClientExample + +include $(SETTINGS)/stdtarget.mk + +# create all component sepcific output directories +# and use OUT_COMP_GEN for dependencies +$(OUT_COMP_GEN) : $(OUT) + $(MKDIR) $(subst /,$(PS),$@) + $(MKDIR) $(subst /,$(PS),$(OUT_COMP_INC)) + $(MKDIR) $(subst /,$(PS),$(OUT_COMP_SLO)) + +# This example type library will be extended by the office types +$(OUT_BIN)/%.rdb : $(OUT_COMP_GEN) + -$(DEL) $(subst /,$(PS),$@) + regmerge $@ / $(DKREGISTRYNAME) + +$(COMPONENT_TYPEFLAG) : $(COMPONENT_RDB) $(COMPONENT_XML) $(OUT_COMP_GEN) + -$(DEL) $(subst /,$(PS),$(COMPONENT_TYPEFLAG)) + cppumaker -Gc -BUCR -O$(OUT_COMP_INC) $(TYPESLIST) $(COMPONENT_RDB) + echo flagged > $@ + +$(OUT_COMP_SLO)/%.$(OBJ_EXT) : %.cxx $(COMPONENT_TYPEFLAG) $(OUT_COMP_GEN) + $(CC) $(CC_FLAGS) $(CC_INCLUDES) -I$(OUT_COMP_INC) $(CC_DEFINES) $(CC_OUTPUT_SWITCH)$(subst /,$(PS),$@) $< + +$(OUT_COMP_GEN)/%.def : exports.dxp $(OUT_COMP_GEN) +ifeq "$(OS)" "WIN" + @echo EXPORTS > $@ + $(CAT) exports.dxp >> $@ +endif + +ifeq "$(OS)" "WIN" +$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)%.$(SHAREDLIB_EXT) : $(SLOFILES) $(OUT_COMP_GEN)/$(COMPONENT_NAME).def $(OUT_COMP_GEN) + $(LINK) $(LIBRARY_LINK_FLAGS) /OUT:$@ /MAP:$(OUT_COMP_GEN)/$(COMPONENT_NAME).map \ + /DEF:$(OUT_COMP_GEN)/$(COMPONENT_NAME).def $(SLOFILES) \ + $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) $(STLPORTLIB) msvcrt.lib kernel32.lib +else +$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)%.$(SHAREDLIB_EXT) : $(SLOFILES) + $(LINK) $(LIBRARY_LINK_FLAGS) $(LINK_LIBS) -o $@ $^\ + $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) $(STLPORTLIB) $(STC++LIB) +endif + +$(COMPOENNT_ENV_FLAG) : $(COMPONENT_RDB) $(OUT_BIN)/remoteserver.rdb + -$(DEL) $@ + @echo -------------------------------------------------------------------------------- + @echo Register necessary runtime components in remoteserver/remoteclientsample rdb + @echo -------------------------------------------------------------------------------- + regcomp -register -r $(OUT_BIN)/remoteserver.rdb -c $(SHAREDLIB_PRE)connectr.$(SHAREDLIB_EXT) + regcomp -register -r $(OUT_BIN)/remoteserver.rdb -c $(SHAREDLIB_PRE)remotebridge.$(SHAREDLIB_EXT) + regcomp -register -r $(OUT_BIN)/remoteserver.rdb -c $(SHAREDLIB_PRE)brdgfctr.$(SHAREDLIB_EXT) + regcomp -register -r $(OUT_BIN)/remoteserver.rdb -c $(SHAREDLIB_PRE)uuresolver.$(SHAREDLIB_EXT) + regcomp -register -r $(OUT_BIN)/remoteserver.rdb -c $(SHAREDLIB_PRE)stm.$(SHAREDLIB_EXT) + regcomp -register -r $(COMPONENT_RDB) -c $(SHAREDLIB_PRE)connectr.$(SHAREDLIB_EXT) + regcomp -register -r $(COMPONENT_RDB) -c $(SHAREDLIB_PRE)remotebridge.$(SHAREDLIB_EXT) + regcomp -register -r $(COMPONENT_RDB) -c $(SHAREDLIB_PRE)brdgfctr.$(SHAREDLIB_EXT) + regcomp -register -r $(COMPONENT_RDB) -c $(SHAREDLIB_PRE)uuresolver.$(SHAREDLIB_EXT) + @echo bla > $@ + +CppOfficeClientExample : $(COMPONENT_IMPL) $(COMPOENNT_ENV_FLAG) + @echo -------------------------------------------------------------------------------- + @echo The remoteclient C++ component can be used by using the uno binary. Use the + @echo the follwong command to start the example. The run target starts a remote + @echo server and connect with the client to this server. + @echo - + @echo make remoteclient.run + @echo -------------------------------------------------------------------------------- + +%.run: $(COMPONENT_IMPL) $(COMPOENNT_ENV_FLAG) + @echo Start the remote server process ... + @echo - +ifeq "$(OS)" "WIN" + start uno -rw $(OUT_BIN)/remoteserver.rdb -s com.sun.star.io.Pipe \ + -u "uno:socket,host=localhost,port=8100;urp;MyPipe" +else + uno -rw $(OUT_BIN)/remoteserver.rdb -s com.sun.star.io.Pipe \ + -u "uno:socket,host=localhost,port=8100;urp;MyPipe" & +endif + @echo - + @echo ... remote server process runs ... + @echo - + @echo Start remote client process ... + @echo - + uno -l $(COMPONENT_IMPL) -c com.sun.star.comp.product.example.RemoteClientSample \ + -rw $(COMPONENT_RDB) -- "uno:socket,host=localhost,port=8100;urp;MyPipe" + @echo - + @echo ... remote process returned succesful, please kill the server process. + @echo - Windows: activate the server shell and press ctrl-c, + @echo - Unix: use the kill command to kill the server process + +.PHONY: clean +clean : + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_INC)) + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_GEN)) + -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_SLO)) + -$(DEL) $(subst /,$(PS),$(COMPONENT_TYPEFLAG)) + -$(DEL) $(subst /,$(PS),$(SHAREDLIB_OUT)/$(SHAREDLIB_PRE)$(COMPONENT_NAME).*) + -$(DEL) $(subst /,$(PS),$(OUT_BIN)/remoteserver.rdb) diff --git a/odk/examples/cpp/remoteclient/remoteclient.cxx b/odk/examples/cpp/remoteclient/remoteclient.cxx new file mode 100644 index 000000000000..743ff6d9eb18 --- /dev/null +++ b/odk/examples/cpp/remoteclient/remoteclient.cxx @@ -0,0 +1,311 @@ +/************************************************************************* + * + * $RCSfile: remoteclient.cxx,v $ + * + * $Revision: 1.2 $ + * + * last change: $Author: hr $ $Date: 2003-03-26 13:39:04 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#include <stdio.h> +#include <osl/mutex.hxx> +#include <cppuhelper/factory.hxx> + +#include <cppuhelper/servicefactory.hxx> + +#include <com/sun/star/uno/XNamingService.hpp> + +#include <com/sun/star/registry/XImplementationRegistration.hpp> + +#include <com/sun/star/connection/XConnector.hpp> + +#include <com/sun/star/bridge/XUnoUrlResolver.hpp> + +#include <com/sun/star/lang/XMain.hpp> +#include <com/sun/star/lang/XComponent.hpp> + +#include <com/sun/star/io/XOutputStream.hpp> +#include <com/sun/star/io/XInputStream.hpp> + +#include <cppuhelper/implbase1.hxx> + +using namespace ::rtl; +using namespace ::cppu; +using namespace ::osl; +using namespace ::com::sun::star::uno; +using namespace ::com::sun::star::lang; +using namespace ::com::sun::star::registry; +using namespace ::com::sun::star::connection; +using namespace ::com::sun::star::bridge; +using namespace ::com::sun::star::io; + + +namespace remotebridges_officeclient { + +class PipeClientMain : public WeakImplHelper1< XMain > +{ +public: + PipeClientMain( const Reference< XMultiServiceFactory > &r ) : + m_xSMgr( r ) + {} +public: // Methods + + + virtual sal_Int32 SAL_CALL run( const Sequence< OUString >& aArguments ) + throw(RuntimeException); + + +private: // helper methods + void testPipe( const Reference < XInterface > & rComponent ); + Reference< XMultiServiceFactory > m_xSMgr; +}; + +void PipeClientMain::testPipe( const Reference< XInterface > & rxInterface ) +{ + // ask for the input stream + Reference< XInputStream > rInputStream( rxInterface, UNO_QUERY ); + + // ask for the output stream + Reference< XOutputStream > rOutputStream( rxInterface, UNO_QUERY ); + + if( rInputStream.is() && rOutputStream.is() ) + { + printf( "got inputstream and outputstream from remote process\n" ); + + sal_Int8 a[] = { 5,4,3,2,1,0 }; + Sequence< sal_Int8 > seq( a , 6 ); + rOutputStream->writeBytes( seq ); + rOutputStream->closeOutput(); + + Sequence< sal_Int8> seqRead; + if( rInputStream->readBytes( seqRead ,3 ) != 3 ) + { + printf( "error : Couldn't read the expected number of bytes\n" ); + return; + } + + if( seqRead.getConstArray()[0] != 5 || + seqRead.getConstArray()[1] != 4 || + seqRead.getConstArray()[2] != 3 ) + { + printf( "error : The array doesn't contain the expected values\n" ); + return; + } + + // try to read more bytes than written + if( rInputStream->readBytes( seqRead , 4 ) != 3 ) + { + printf( "error : Got an unexpected number of bytes\n" ); + return; + } + + if( seqRead.getConstArray()[0] != 2 || + seqRead.getConstArray()[1] != 1 || + seqRead.getConstArray()[2] != 0 ) + { + printf( "error : The array doesn't contain the expected values\n" ); + return; + } + + printf( "pipe test worked perfect\n" ); + } + else + { + printf( "Couldn't get inputstream and outputstream\n" ); + } +} + + +sal_Int32 PipeClientMain::run( const Sequence< OUString > & aArguments ) throw ( RuntimeException ) +{ + printf( "Connecting ....\n" ); + + if( aArguments.getLength() == 1 ) + { + try { + Reference < XInterface > r = + m_xSMgr->createInstance( OUString::createFromAscii( "com.sun.star.bridge.UnoUrlResolver" ) ); + Reference < XUnoUrlResolver > rResolver( r , UNO_QUERY ); + + // connect to the remote process and retrieve the initial object + r = rResolver->resolve( aArguments.getConstArray()[0] ); + + if( r.is() ) + { + printf( "got the remote initial object\n" ); + testPipe( r ); + } + else + { + printf( "error : didn't get the initial object\n" ); + } + } + catch( ConnectionSetupException &e ) + { + OString o = OUStringToOString( e.Message, RTL_TEXTENCODING_ASCII_US ); + printf( "%s\n", o.pData->buffer ); + printf( "couldn't access local resource ( possible security resons )\n" ); + } + catch( NoConnectException &e ) + { + OString o = OUStringToOString( e.Message, RTL_TEXTENCODING_ASCII_US ); + printf( "%s\n", o.pData->buffer ); + printf( "no server listening on the resource\n" ); + } + catch( IllegalArgumentException &e ) + { + OString o = OUStringToOString( e.Message, RTL_TEXTENCODING_ASCII_US ); + printf( "%s\n", o.pData->buffer ); + printf( "uno url invalid\n" ); + } + catch( RuntimeException & e ) + { + OString o = OUStringToOString( e.Message, RTL_TEXTENCODING_ASCII_US ); + printf( "%s\n", o.pData->buffer ); + printf( "a remote call was aborted\n" ); + } + } + else + { + printf( "usage: (uno remoteclient-component --) uno-url\n" + "e.g.: uno:socket,host=localhost,port=2002;urp;MyPipe\n" ); + return 1; + } + return 0; +} + +Reference< XInterface > SAL_CALL CreateInstance( const Reference< XMultiServiceFactory > &r) +{ + return Reference< XInterface > ( ( OWeakObject * ) new PipeClientMain(r) ); +} + +Sequence< OUString > getSupportedServiceNames() +{ + static Sequence < OUString > *pNames = 0; + if( ! pNames ) + { + MutexGuard guard( Mutex::getGlobalMutex() ); + if( !pNames ) + { + static Sequence< OUString > seqNames(1); + seqNames.getArray()[0] = OUString::createFromAscii( "com.sun.star.bridge.example.RemoteClientSample" ); + pNames = &seqNames; + } + } + return *pNames; +} + +} + +using namespace remotebridges_officeclient; +#define IMPLEMENTATION_NAME "com.sun.star.comp.product.example.RemoteClientSample" + + +extern "C" +{ +//================================================================================================== +void SAL_CALL component_getImplementationEnvironment( + const sal_Char ** ppEnvTypeName, uno_Environment ** ppEnv ) +{ + *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; +} +//================================================================================================== +sal_Bool SAL_CALL component_writeInfo( + void * pServiceManager, void * pRegistryKey ) +{ + if (pRegistryKey) + { + try + { + Reference< XRegistryKey > xNewKey( + reinterpret_cast< XRegistryKey * >( pRegistryKey )->createKey( + OUString::createFromAscii( "/" IMPLEMENTATION_NAME "/UNO/SERVICES" ) ) ); + + const Sequence< OUString > & rSNL = getSupportedServiceNames(); + const OUString * pArray = rSNL.getConstArray(); + for ( sal_Int32 nPos = rSNL.getLength(); nPos--; ) + xNewKey->createKey( pArray[nPos] ); + + return sal_True; + } + catch (InvalidRegistryException &) + { + OSL_ENSURE( sal_False, "### InvalidRegistryException!" ); + } + } + return sal_False; +} +//================================================================================================== +void * SAL_CALL component_getFactory( + const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey ) +{ + void * pRet = 0; + + if (pServiceManager && rtl_str_compare( pImplName, IMPLEMENTATION_NAME ) == 0) + { + Reference< XSingleServiceFactory > xFactory( createSingleFactory( + reinterpret_cast< XMultiServiceFactory * >( pServiceManager ), + OUString::createFromAscii( pImplName ), + CreateInstance, getSupportedServiceNames() ) ); + + if (xFactory.is()) + { + xFactory->acquire(); + pRet = xFactory.get(); + } + } + + return pRet; +} +} diff --git a/odk/examples/java/ConverterServlet/Makefile b/odk/examples/java/ConverterServlet/Makefile index c8ffa667d59c..0c0cf4cf4fc7 100644 --- a/odk/examples/java/ConverterServlet/Makefile +++ b/odk/examples/java/ConverterServlet/Makefile @@ -37,14 +37,14 @@ $(OUT_COMP_CLASS) : $(OUT) $(OFFICE_CLASSES_DIR)/cos.jar : @echo -------------------------------------------------------------------------------- - @echo You need the servlet support Java archive "$(QM)cos.jar$(QM)" for this example. + @echo You need the servlet support Java archive 'cos.jar' for this example. @echo You can download it from http://www.servlets.com/cos/index.html @echo and then please copy it into your $(OFFICE_CLASSES_DIR) directory. @echo -------------------------------------------------------------------------------- $(OFFICE_CLASSES_DIR)/servlet.jar : @echo -------------------------------------------------------------------------------- - @echo You need the servlet API "$(QM)servlet.jar$(QM)" for this example. + @echo You need the servlet API 'servlet.jar' for this example. @echo You can download it from http://java.sun.com/products/servlet/index.html @echo and then please copy it into your $(OFFICE_CLASSES_DIR) directory. @echo -------------------------------------------------------------------------------- diff --git a/odk/examples/java/MinimalComponent/MinimalComponent.java b/odk/examples/java/MinimalComponent/MinimalComponent.java index 4f6637b77196..45f0de9f8fd7 100644 --- a/odk/examples/java/MinimalComponent/MinimalComponent.java +++ b/odk/examples/java/MinimalComponent/MinimalComponent.java @@ -2,9 +2,9 @@ * * $RCSfile: MinimalComponent.java,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: jsc $ $Date: 2003-02-28 17:39:28 $ + * last change: $Author: hr $ $Date: 2003-03-26 13:39:12 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -74,7 +74,7 @@ import com.sun.star.uno.Type; * factory for creating the service (<CODE>__getServiceFactory</CODE>) and a * method, that writes the information into the given registry key * (<CODE>__writeRegistryServiceInfo</CODE>). - * @version $Date: 2003-02-28 17:39:28 $ + * @version $Date: 2003-03-26 13:39:12 $ * @author Bertram Nolte */ public class MinimalComponent { diff --git a/odk/examples/java/NotesAccess/Makefile b/odk/examples/java/NotesAccess/Makefile index 0eea41d1cc47..214427e08848 100644 --- a/odk/examples/java/NotesAccess/Makefile +++ b/odk/examples/java/NotesAccess/Makefile @@ -37,7 +37,7 @@ $(OUT_COMP_CLASS) : $(OUT) $(OFFICE_CLASSES_DIR)/Notes.jar : @echo -------------------------------------------------------------------------------- - @echo You need the "$(QM)'Notes.jar$(QM)" from Notes/Domino for this example. + @echo You need the 'Notes.jar' from Notes/Domino for this example. @echo You can download it from http://www.servlets.com/cos/index.html @echo and then please copy it into your $(OFFICE_CLASSES_DIR) directory. @echo -------------------------------------------------------------------------------- diff --git a/odk/examples/java/PropertySet/Makefile b/odk/examples/java/PropertySet/Makefile index 303d890af6cd..3918d44e4e25 100644 --- a/odk/examples/java/PropertySet/Makefile +++ b/odk/examples/java/PropertySet/Makefile @@ -71,8 +71,8 @@ endif JavaPropertySetExample : $(REGISTERFLAG) @echo -------------------------------------------------------------------------------- @echo The PropTest was installed if SDK_AUTO_DEPLOYMENT = YES. - @echo Load the "$(QM)PropertySet.sxw$(QM)" document to see how this component works. You - @echo can use this component inside your office installation, see the example description. + @echo Load the PropertySet.sxw document to see how this component works. You can use + @echo this component inside your office installation, see the example description. @echo -------------------------------------------------------------------------------- .PHONY: clean diff --git a/odk/examples/java/ToDo/Makefile b/odk/examples/java/ToDo/Makefile index a90a131b7e3a..1c17a896d136 100644 --- a/odk/examples/java/ToDo/Makefile +++ b/odk/examples/java/ToDo/Makefile @@ -98,7 +98,7 @@ endif JavaToDoExample : $(REGISTERFLAG) @echo -------------------------------------------------------------------------------- @echo The ToDo Java component was installed if SDK_AUTO_DEPLOYMENT = YES. - @echo Please load the "$(QM)ToDo.sxc$(QM)" document to see how this component works, see + @echo Please load the ToDo.sxc document to see how this component works, see @echo the example description. @echo -------------------------------------------------------------------------------- diff --git a/odk/index.html b/odk/index.html index aaa459d078f0..b6f6f28e04bf 100644 --- a/odk/index.html +++ b/odk/index.html @@ -170,7 +170,7 @@ </tr> <tr> <td width=30%> - <font size="3"><a href="docs/common/spec/xml_format/xml_specification_draft.pdf" title="link to the xml file format specification">XML File Format + <font size="3"><a href="docs/common/spec/xml_format/xml_specification.pdf" title="link to the xml file format specification">XML File Format Specification</a></font> </td> <td width=70%> diff --git a/odk/pack/copying/makefile.mk b/odk/pack/copying/makefile.mk index 505192349de8..b1164b8b6121 100644 --- a/odk/pack/copying/makefile.mk +++ b/odk/pack/copying/makefile.mk @@ -1,3 +1,65 @@ +#************************************************************************* +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.56 $ +# +# last change: $Author: hr $ $Date: 2003-03-26 13:39:48 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + PRJ=..$/.. PRJNAME=odk TARGET=copying @@ -14,20 +76,62 @@ DESTIDLLIST={$(subst,$(IDLOUT),$(DESTDIRIDL) $(IDLLIST))} IDLDIRLIST={$(subst,/,$/ $(shell $(FIND) $(IDLOUT) -type d -print))} +DESTINCLUDELIST={$(subst,$(SOLARINCDIR),$(DESTDIRINC) $(INCLUDELIST))} +DESTINCDIRLIST={$(subst,$(INCOUT),$(DESTDIRINC) $(INCLUDEDIRLIST))} + +COMPONENTLIST = \ + acceptor \ + brdgfctr \ + connectr \ + corefl \ + cpld \ + defreg \ + dynamicloader \ + impreg \ + insp \ + inv \ + invadp \ + jen \ + namingservice \ + proxyfac \ + rdbtdp \ + remotebridge \ + simreg \ + smgr \ + stm \ + tcv \ + tdmgr \ + uuresolver + +XMLLIST= \ + $(foreach,c,$(COMPONENTLIST) $(DESTDIRXML)$/$c.xml) \ + $(DESTDIRXML)$/module-description.dtd + DIRLIST = \ + $(DESTDIR) \ + $(DESTDIRBIN) \ + $(DESTDIRLIB) \ + $(DESTDIRINC) \ + $(DESTINCDIRLIST) \ + $(DESTDIRINC)$/com$/sun$/star$/uno \ + $(DESTDIRSETTINGS) \ + $(DESTDIRJAR) \ + $(DESTDIRXML) \ $(DESTDIRDOCU) \ + $(DESTDIRCOMMONDOCU) \ + $(DESTDIRCOMMONDOCU)$/spec$/xml_format \ $(DESTDIRDOCUIMAGES) \ - $(DESTDIRDOCU)$/DevStudioWizards \ $(DESTDIRDOCU)$/DevStudioWizards$/images \ $(DESTDIREXAMPLES) \ $(DESTDIRCLASSES) \ $(DESTDIRCPPEXAMPLES) \ + $(DESTDIRCPPEXAMPLES)$/counter \ + $(DESTDIRCPPEXAMPLES)$/remoteclient \ $(DESTDIRCPPEXAMPLES)$/officeclient \ $(DESTDIRCPPEXAMPLES)$/DocumentLoader \ $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter \ $(DESTDIRJAVAEXAMPLES) \ $(DESTDIRJAVAEXAMPLES)$/draw \ - $(DESTDIRJAVAEXAMPLES)$/calc \ $(DESTDIRJAVAEXAMPLES)$/calc$/ChartTypeChange \ $(DESTDIRJAVAEXAMPLES)$/writer \ $(DESTDIRJAVAEXAMPLES)$/Car \ @@ -54,15 +158,67 @@ DIRLIST = \ $(DESTDIRBASICEXAMPLES)$/text \ $(DESTDIRBASICEXAMPLES)$/text$/creating_an_index \ $(DESTDIRBASICEXAMPLES)$/text$/modifying_text_automatically \ - $(DESTDIRBASICEXAMPLES)$/register_component \ - $(DESTDIRBASICEXAMPLES)$/register_component$/regcomp \ $(DESTDIROLEEXAMPLES) \ $(DESTDIROLEEXAMPLES)$/vbscript \ - $(DESTDIROLEEXAMPLES)$/delphi \ $(DESTDIROLEEXAMPLES)$/delphi$/InsertTables \ $(DESTDIROLEEXAMPLES)$/activex \ {$(subst,$(IDLOUT),$(DESTDIRIDL) $(IDLDIRLIST))} + +EXELIST = \ + $(DESTDIRBIN)$/cppumaker$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/regcomp$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/regmerge$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/regview$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/rdbmaker$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/idlcpp$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/idlc$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/javamaker$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/xml2cmp$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/uno$(EXEPOSTFIX) \ + $(DESTDIRBIN)$/autodoc$(EXEPOSTFIX) + +SDKDLLLIST = \ + $(DESTDIRDLL)$/$(MY_DLLPREFIX)prot_uno_uno$(MY_DLLPOSTFIX) \ + $(DESTDIRDLL)$/$(MY_DLLPREFIX)juh$(MY_DLLPOSTFIX) + +.IF "$(GUI)"=="WNT" +LIBLIST = \ + $(DESTDIRLIB)$/istore.lib \ + $(DESTDIRLIB)$/ireg.lib \ + $(DESTDIRLIB)$/isal.lib \ + $(DESTDIRLIB)$/isalhelper.lib \ + $(DESTDIRLIB)$/icppu.lib \ + $(DESTDIRLIB)$/icppuhelper.lib \ + $(DESTDIRLIB)$/irmcxt.lib + +.IF "$(COMEX)"=="8" + LIBLIST += $(DESTDIRLIB)$/stlport_vc7.lib +.ELSE + LIBLIST += $(DESTDIRLIB)$/stlport_vc6.lib +.ENDIF +.ENDIF + +SETTINGSLIST= \ + $(DESTDIRSETTINGS)$/settings.mk \ + $(DESTDIRSETTINGS)$/std.mk \ + $(DESTDIRSETTINGS)$/stdtarget.mk \ + $(DESTDIRSETTINGS)$/dk.mk + +CPP_COUNTER= \ + $(DESTDIRCPPEXAMPLES)$/counter$/counter.cxx \ + $(DESTDIRCPPEXAMPLES)$/counter$/counter.xml \ + $(DESTDIRCPPEXAMPLES)$/counter$/countermain.cxx \ + $(DESTDIRCPPEXAMPLES)$/counter$/XCountable.idl \ + $(DESTDIRCPPEXAMPLES)$/counter$/Makefile \ + $(DESTDIRCPPEXAMPLES)$/counter$/exports.dxp + +CPP_REMOTECLIENT= \ + $(DESTDIRCPPEXAMPLES)$/remoteclient$/remoteclient.cxx \ + $(DESTDIRCPPEXAMPLES)$/remoteclient$/remoteclientsample.xml \ + $(DESTDIRCPPEXAMPLES)$/remoteclient$/Makefile \ + $(DESTDIRCPPEXAMPLES)$/remoteclient$/exports.dxp + CPP_OFFICECLIENT= \ $(DESTDIRCPPEXAMPLES)$/officeclient$/officeclient.cxx \ $(DESTDIRCPPEXAMPLES)$/officeclient$/officeclientsample.xml \ @@ -85,6 +241,7 @@ CPP_GENERICXMLFILTER= \ $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter$/genericxmlfilter.xml \ $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter$/README \ $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter$/TypeDetection.xml \ + $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter$/TypeDetection.xcu \ $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter$/Makefile \ $(DESTDIRCPPEXAMPLES)$/GenericXMLFilter$/exports.dxp @@ -123,7 +280,7 @@ JAVA_CALCADDINS= \ $(DESTDIRJAVAEXAMPLES)$/CalcAddins$/CalcAddins.java \ $(DESTDIRJAVAEXAMPLES)$/CalcAddins$/Makefile \ $(DESTDIRJAVAEXAMPLES)$/CalcAddins$/XCalcAddins.idl - + JAVA_DEMOCOMP= \ $(DESTDIRJAVAEXAMPLES)$/com$/sun$/star$/comp$/demo$/DemoComponent.java \ $(DESTDIRJAVAEXAMPLES)$/com$/sun$/star$/comp$/demo$/DemoComponent.sxw \ @@ -213,12 +370,7 @@ BASIC_EXAMPLES= \ $(DESTDIRBASICEXAMPLES)$/text$/modifying_text_automatically$/changing_appearance.sxw \ $(DESTDIRBASICEXAMPLES)$/text$/modifying_text_automatically$/inserting_bookmarks.sxw \ $(DESTDIRBASICEXAMPLES)$/text$/modifying_text_automatically$/replacing_text.sxw \ - $(DESTDIRBASICEXAMPLES)$/text$/modifying_text_automatically$/using_regular_expressions.sxw \ - $(DESTDIRBASICEXAMPLES)$/register_component$/readme.txt \ - $(DESTDIRBASICEXAMPLES)$/register_component$/regcomp$/dialog.xlb \ - $(DESTDIRBASICEXAMPLES)$/register_component$/regcomp$/script.xlb \ - $(DESTDIRBASICEXAMPLES)$/register_component$/regcomp$/regcomp.xba \ - $(DESTDIRBASICEXAMPLES)$/register_component$/regcomp$/regcompdlg.xdl + $(DESTDIRBASICEXAMPLES)$/text$/modifying_text_automatically$/using_regular_expressions.sxw OLE_EXAMPLES= \ $(DESTDIROLEEXAMPLES)$/vbscript$/readme.txt \ @@ -254,6 +406,8 @@ OLE_EXAMPLES_ACTIVEX= \ $(DESTDIROLEEXAMPLES)$/activex$/StdAfx2.h EXAMPLESLIST= \ + $(CPP_COUNTER) \ + $(CPP_REMOTECLIENT) \ $(CPP_OFFICECLIENT) \ $(CPP_DOCUMENTLOADER) \ $(CPP_GENERICXMLFILTER) \ @@ -351,18 +505,16 @@ DOCUHTMLFILES+= \ $(DESTDIRDOCU)$/DevelopersGuide_intro.html \ $(DESTDIRDOCU)$/install.html \ $(DESTDIRDOCU)$/sdk_styles.css \ - $(DESTDIREXAMPLES)$/examples.html \ - $(DESTDIREXAMPLES)$/DevelopersGuide$/examples.html + $(DESTDIREXAMPLES)$/examples.html + +# $(DESTDIREXAMPLES)$/DevelopersGuide$/examples.html DOCUFILES+= \ $(DOCUHTMLFILES) \ $(DOCUSTUDIO4INTEGRATIONGRAPHICSFILES) \ $(DESTDIRDOCUIMAGES)$/black_dot.gif \ $(DESTDIRDOCUIMAGES)$/logo.gif \ - $(DESTDIRDOCUIMAGES)$/sdk_logo.gif \ - $(DESTDIRDOCUIMAGES)$/shadow_r.gif \ - $(DESTDIRDOCUIMAGES)$/shadow_l.gif \ - $(DESTDIRDOCUIMAGES)$/elements.jpg + $(DESTDIRDOCUIMAGES)$/sdk_logo.gif .IF "$(GUI)"=="UNX" INSTALLSCRIPT= \ @@ -375,27 +527,32 @@ INSTALLSCRIPT= \ $(DESTDIR)$/setsdkenv_windows.bat .ENDIF - - #-------------------------------------------------- # TARGETS #-------------------------------------------------- -all : \ - remove_dk \ +all : \ $(DIRLIST) \ + $(EXELIST) \ + $(XMLLIST) \ + $(SDKDLLLIST) \ + $(LIBLIST) \ + $(SETTINGSLIST) \ $(EXAMPLESLIST) \ $(DOCUFILES) \ $(INSTALLSCRIPT) \ $(DESTIDLLIST) \ - $(DESTDIRDLL)$/$(MY_DLLPREFIX)officebean$(MY_DLLPOSTFIX) \ - $(DESTDIR)$/settings$/dk.mk \ - $(DESTDIRCLASSES)$/officebean.jar \ + $(DESTINCLUDELIST) \ $(DESTDIRCLASSES)$/oosupport.nbm \ - $(DESTDIRDOCU)$/DevelopersGuide$/DevelopersGuide.htm \ + $(DEVGUIDE_DOCU_FLAG) \ + $(DEVGUIDE_SAMPLES_FLAG) \ $(DESTDIRDOCU)$/DevelopersGuide$/DevelopersGuide.pdf \ - $(DESTDIREXAMPLES)$/DevelopersGuide$/examples.html \ + $(DESTDIRDOCU)$/common$/spec$/xml_format$/xml_specification.pdf \ $(CONVERTTAGFLAG) +# moved into the office installation for easier use +# $(DESTDIRDLL)$/$(MY_DLLPREFIX)officebean$(MY_DLLPOSTFIX) \ +# $(DESTDIRCLASSES)$/officebean.jar \ + $(DIRLIST) : -$(MKDIRHIER) $@ @@ -552,6 +709,10 @@ $(DESTDIREXAMPLES)$/%.xml : $(PRJ)$/examples$/%.xml $(DIRLIST) +-rm -f $@ >& $(NULLDEV) $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ +$(DESTDIREXAMPLES)$/%.xcu : $(PRJ)$/examples$/%.xcu $(DIRLIST) + +-rm -f $@ >& $(NULLDEV) + $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ + $(DESTDIREXAMPLES)$/%.html : $(PRJ)$/examples$/%.html $(DIRLIST) +-rm -f $@ >& $(NULLDEV) $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ @@ -607,9 +768,6 @@ $(DESTDIREXAMPLES)$/%.dfm : $(PRJ)$/examples$/%.dfm $(DIRLIST) $(DESTDIREXAMPLES)$/%.vbs : $(PRJ)$/examples$/%.vbs $(DIRLIST) +-rm -f $@ >& $(NULLDEV) $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ - -$(DESTDIRCLASSES)$/unoil.jar : $(BINOUT)$/unoil.jar - $(GNUCOPY) -p $? $@ $(DESTDIRCLASSES)$/officebean.jar : $(OUT)$/class$/officebean.jar $(GNUCOPY) -p $? $@ @@ -617,63 +775,74 @@ $(DESTDIRCLASSES)$/officebean.jar : $(OUT)$/class$/officebean.jar $(DESTDIRCLASSES)$/oosupport.nbm : $(OUT)$/class$/oosupport.nbm $(GNUCOPY) -p $? $@ -$(DESTDIRBIN)$/applicat.rdb : $(BINOUT)$/applicat.rdb - $(GNUCOPY) -p $(BINOUT)$/applicat.rdb $@ - $(DESTDIRDLL)$/$(MY_DLLPREFIX)officebean$(MY_DLLPOSTFIX) : $(MY_DLLOUT)$/$(MY_DLLPREFIX)officebean$(MY_DLLPOSTFIX) $(GNUCOPY) -p $? $@ -$(DESTDIR)$/settings$/dk.mk : $(PRJ)$/util$/dk.mk +$(DESTDIRSETTINGS)$/%.mk : $(PRJ)$/settings$/%.mk $(DIRLIST) + +-rm -f $@ >& $(NULLDEV) + $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ + +$(DESTDIRSETTINGS)$/dk.mk : +-rm -f $@ >& $(NULLDEV) -.IF "$(BUILD_SOSL)"=="" - echo #$(ODKNAME) dependent settings > $@ - echo DKNAME=${ODKNAME} >> $@ -.ELSE echo #$(PRODUCT_NAME) dependent settings > $@ echo DKNAME=${PRODUCT_NAME} >> $@ -.ENDIF .IF "$(GUI)"=="UNX" echo 'DKREGISTRYNAME=$$(subst \\,\,"$$(OFFICE_PROGRAM_PATH)$$(PS)applicat.rdb")' >> $@ .ELSE echo DKREGISTRYNAME=$$(subst \\,\,"$$(OFFICE_PROGRAM_PATH)$$(PS)applicat.rdb") >> $@ .ENDIF -.IF "$(BUILD_SOSL)"=="" -$(DESTDIR)$/odk_overview.html : $(PRJ)$/util$/odk_overview.html - +-rm -f $@ >& $(NULLDEV) - $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ -.ELSE -$(DESTDIR)$/odk_overview.html : $(PRJ)$/util$/odk_overview2.html - +-rm -f $@ >& $(NULLDEV) - $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ -.ENDIF - $(DESTDIRDOCU)$/DevelopersGuide$/DevelopersGuide.pdf : DevelopersGuide.pdf $(GNUCOPY) -p DevelopersGuide.pdf $(DESTDIRDOCU)$/DevelopersGuide -$(DESTDIRDOCU)$/DevelopersGuide$/DevelopersGuide.htm : DevelopersGuide.zip +$(DEVGUIDE_DOCU_FLAG) : DevelopersGuide.zip $(GNUCOPY) -p DevelopersGuide.zip $(DESTDIRDOCU) unzip -quod $(DESTDIRDOCU) $(DESTDIRDOCU)$/DevelopersGuide.zip - +-$(MY_DELETE_RECURSIVE) $(DESTDIRDOCU)$/DevelopersGuide.zip >& $(NULLDEV) + +-rm -f $(DESTDIRDOCU)$/DevelopersGuide.zip >& $(NULLDEV) + +@echo "devguide docu unzipped" > $@ -$(DESTDIREXAMPLES)$/DevelopersGuide$/examples.html : DevelopersGuideSamples.zip +$(DEVGUIDE_SAMPLES_FLAG) : DevelopersGuideSamples.zip $(GNUCOPY) -p DevelopersGuideSamples.zip $(DESTDIREXAMPLES) unzip -quod $(DESTDIREXAMPLES) $(DESTDIREXAMPLES)$/DevelopersGuideSamples.zip - +-$(MY_DELETE_RECURSIVE) $(DESTDIREXAMPLES)$/DevelopersGuideSamples.zip >& $(NULLDEV) + +-rm -f $(DESTDIREXAMPLES)$/DevelopersGuideSamples.zip >& $(NULLDEV) + +@echo "devguide samples unzipped" > $@ + +$(DESTDIRCOMMONDOCU)$/spec$/xml_format$/xml_specification.pdf : xml_specification.pdf + $(GNUCOPY) -p $? $@ + +$(DESTDIRXML)$/module-description.dtd : $(XMLOUT)$/module-description.dtd $(DIRLIST) + $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $(XMLOUT)$/module-description.dtd $(MY_TEXTCOPY_TARGETPRE) $@ -$(DESTDIRIDL)$/% : $(IDLOUT)$/% +$(DESTDIRBIN)$/%$(EXEPOSTFIX) : $(BINOUT)$/%$(EXEPOSTFIX) $(DIRLIST) + $(GNUCOPY) -p $(BINOUT)$/$(@:f) $@ + +$(DESTDIRDLL)$/%$(MY_DLLPOSTFIX) : $(DLLOUT)$/%$(MY_DLLPOSTFIX) $(DIRLIST) + $(GNUCOPY) -p $(DLLOUT)$/$(@:f) $@ + +$(DESTDIRIDL)$/% : $(IDLOUT)$/% $(DIRLIST) +-rm -f $@ $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ -remove_dk : - +-$(RM) $(DESTDIRBIN)$/udkapi.rdb >& $(NULLDEV) +$(DESTDIRINC)$/udkversion.mk : + +-rm -f $@ >& $(NULLDEV) + echo #UDK version number > $@ + echo #major >> $@ + echo UDK_MAJOR=$(UDK_MAJOR) >> $@ + echo #minor >> $@ + echo UDK_MINOR=$(UDK_MINOR) >> $@ + echo #micro >> $@ + echo UDK_MICRO=$(UDK_MICRO) >> $@ + +$(DESTDIRINC)$/% : $(INCOUT)$/% $(DIRLIST) + +-rm -f $@ + $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ -.IF "$(BUILD_SOSL)"!="" +$(DESTDIRLIB)$/%.lib : $(LIBOUT)$/%.lib $(DIRLIST) + $(GNUCOPY) -p $(LIBOUT)$/$(@:f) $@ + +$(DESTDIRXML)$/%.xml : $(XMLOUT)$/%.xml $(DIRLIST) + $(MY_TEXTCOPY) $(MY_TEXTCOPY_SOURCEPRE) $? $(MY_TEXTCOPY_TARGETPRE) $@ + $(CONVERTTAGFLAG) : $(MISC)$/deltree.txt $(DOCUHTMLFILES) - +$(PERL) $(CONVERTTAGSCRIPT) $(TITLE) $(OFFICEPRODUCTNAME) $(DOCUHTMLFILES) + +$(PERL) $(CONVERTTAGSCRIPT) $(CONVMODE) $(TITLE) $(OFFICEPRODUCTNAME) $(DOCUHTMLFILES) $(DESTDIREXAMPLES)$/DevelopersGuide$/examples.html +@echo "tags converted" > $@ -.ELSE -$(CONVERTTAGFLAG) : $(MISC)$/deltree.txt - @echo no conversion necessary - +@echo "no conversion necessary" > $@ -.ENDIF diff --git a/odk/pack/gendocu/java/package-list b/odk/pack/gendocu/java/package-list new file mode 100644 index 000000000000..fecd4d4ffb35 --- /dev/null +++ b/odk/pack/gendocu/java/package-list @@ -0,0 +1,135 @@ +java.applet +java.awt +java.awt.color +java.awt.datatransfer +java.awt.dnd +java.awt.event +java.awt.font +java.awt.geom +java.awt.im +java.awt.im.spi +java.awt.image +java.awt.image.renderable +java.awt.print +java.beans +java.beans.beancontext +java.io +java.lang +java.lang.ref +java.lang.reflect +java.math +java.net +java.nio +java.nio.channels +java.nio.channels.spi +java.nio.charset +java.nio.charset.spi +java.rmi +java.rmi.activation +java.rmi.dgc +java.rmi.registry +java.rmi.server +java.security +java.security.acl +java.security.cert +java.security.interfaces +java.security.spec +java.sql +java.text +java.util +java.util.jar +java.util.logging +java.util.prefs +java.util.regex +java.util.zip +javax.accessibility +javax.crypto +javax.crypto.interfaces +javax.crypto.spec +javax.imageio +javax.imageio.event +javax.imageio.metadata +javax.imageio.plugins.jpeg +javax.imageio.spi +javax.imageio.stream +javax.naming +javax.naming.directory +javax.naming.event +javax.naming.ldap +javax.naming.spi +javax.net +javax.net.ssl +javax.print +javax.print.attribute +javax.print.attribute.standard +javax.print.event +javax.rmi +javax.rmi.CORBA +javax.security.auth +javax.security.auth.callback +javax.security.auth.kerberos +javax.security.auth.login +javax.security.auth.spi +javax.security.auth.x500 +javax.security.cert +javax.sound.midi +javax.sound.midi.spi +javax.sound.sampled +javax.sound.sampled.spi +javax.sql +javax.swing +javax.swing.border +javax.swing.colorchooser +javax.swing.event +javax.swing.filechooser +javax.swing.plaf +javax.swing.plaf.basic +javax.swing.plaf.metal +javax.swing.plaf.multi +javax.swing.table +javax.swing.text +javax.swing.text.html +javax.swing.text.html.parser +javax.swing.text.rtf +javax.swing.tree +javax.swing.undo +javax.transaction +javax.transaction.xa +javax.xml.parsers +javax.xml.transform +javax.xml.transform.dom +javax.xml.transform.sax +javax.xml.transform.stream +org.ietf.jgss +org.omg.CORBA +org.omg.CORBA.DynAnyPackage +org.omg.CORBA.ORBPackage +org.omg.CORBA.TypeCodePackage +org.omg.CORBA.portable +org.omg.CORBA_2_3 +org.omg.CORBA_2_3.portable +org.omg.CosNaming +org.omg.CosNaming.NamingContextExtPackage +org.omg.CosNaming.NamingContextPackage +org.omg.Dynamic +org.omg.DynamicAny +org.omg.DynamicAny.DynAnyFactoryPackage +org.omg.DynamicAny.DynAnyPackage +org.omg.IOP +org.omg.IOP.CodecFactoryPackage +org.omg.IOP.CodecPackage +org.omg.Messaging +org.omg.PortableInterceptor +org.omg.PortableInterceptor.ORBInitInfoPackage +org.omg.PortableServer +org.omg.PortableServer.CurrentPackage +org.omg.PortableServer.POAManagerPackage +org.omg.PortableServer.POAPackage +org.omg.PortableServer.ServantLocatorPackage +org.omg.PortableServer.portable +org.omg.SendingContext +org.omg.stub.java.rmi +org.w3c.dom +org.xml.sax +org.xml.sax.ext +org.xml.sax.helpers diff --git a/odk/pack/gendocu/makefile.mk b/odk/pack/gendocu/makefile.mk index 2bcdc4f24b76..5c4f63e290f3 100644 --- a/odk/pack/gendocu/makefile.mk +++ b/odk/pack/gendocu/makefile.mk @@ -1,3 +1,65 @@ +#************************************************************************* +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.3 $ +# +# last change: $Author: hr $ $Date: 2003-03-26 13:40:08 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + PRJ=..$/.. PRJNAME=odk TARGET=gendocu @@ -7,25 +69,73 @@ TARGET=gendocu .INCLUDE: $(PRJ)$/util$/makefile.pmk #---------------------------------------------------------------- -DOCU_INDEX_FILE = $(DESTDIRGENDOCU)$/module-ix.html +CPPDOCREFNAME="UDK $(UDK_MAJOR).$(UDK_MINOR).$(UDK_MICRO) C/C++ API Reference" +JAVADOCREFNAME="UDK $(UDK_MAJOR).$(UDK_MINOR).$(UDK_MICRO) Java API Reference" + +IDL_DOCU_INDEX_FILE = $(DESTDIRGENIDLREF)$/module-ix.html +CPP_DOCU_INDEX_FILE = $(DESTDIRGENCPPREF)$/index.html +JAVA_DOCU_INDEX_FILE = $(DESTDIRGENJAVAREF)$/index.html + + +JAVA_SRC_DIR=$(MISC)$/java_src +JAVA_PACKAGES=\ + com.sun.star.comp.helper \ + com.sun.star.lib.uno.helper \ + com.sun.star.tools.uno \ + com.sun.star.uno + +JAVA_SRC_FILES=\ + $(JAVA_SRC_DIR)$/jurt_src.zip \ + $(JAVA_SRC_DIR)$/jut_src.zip \ + $(JAVA_SRC_DIR)$/juh_src.zip \ + $(JAVA_SRC_DIR)$/ridl_src.zip \ + $(JAVA_SRC_DIR)$/ridl2_src.zip \ + $(JAVA_SRC_DIR)$/sandbox_src.zip IDLFILES={$(subst,/,$/ $(shell $(FIND) $(IDLOUT) -type f -print))} +AUTODOCPARAMS= -lg c++ \ + -p sal $(INCOUT) -t sal -t osl -t rtl \ + -p store $(INCOUT) -t store \ + -p registry $(INCOUT) -t registry \ + -p cppu $(INCOUT) -t cppu -t com -t typelib -t uno \ + -p cppuhelper $(INCOUT) -t cppuhelper \ + -p bridges $(INCOUT) -t bridges + +JAVADOCPARAMS= -use -splitindex -windowtitle $(TITLE) -header $(JAVADOCREFNAME) -d $(DESTDIRGENJAVAREF) -sourcepath $(JAVA_SRC_DIR) -linkoffline ../../common/ref ./uno -linkoffline http://java.sun.com/j2se/1.4.1/docs/api ./java $(JAVA_PACKAGES) + +JAVADOCLOG = $(MISC)$/javadoc_log.txt + +MY_AUTODOC=$(WRAPCMD) $(SOLARBINDIR)$/autodoc + + DIRLIST = \ - $(DESTDIRCOMMONDOCU) \ - $(DESTDIRGENDOCU) \ + $(DESTDIRGENIDLREF) \ + $(DESTDIRCPPDOCU) \ + $(DESTDIRGENCPPREF) \ + $(DESTDIRJAVADOCU) \ + $(DESTDIRGENJAVAREF) \ + $(JAVA_SRC_DIR) +all: \ + $(IDL_DOCU_INDEX_FILE) \ + $(CPP_DOCU_INDEX_FILE) \ + $(JAVA_DOCU_INDEX_FILE) -all: $(DOCU_INDEX_FILE) +$(DIR_CREATE_FLAG) : + -$(MKDIRHIER) $(DIRLIST) + +@echo "docu directories created" > $@ -$(DIRLIST) : - -$(MKDIRHIER) $@ - -$(DOCU_INDEX_FILE) : idl_chapter_refs.txt $(IDLFILES) $(DIRLIST) -.IF "$(BUILD_SOSL)"=="" - +autodoc -html $(DESTDIRGENDOCU) -dvgroot ..$/..$/DevelopersGuide -name "StarOffice6.0 API" -lg \ - idl -dvgfile idl_chapter_refs.txt -t $(DESTDIRIDL) -.ELSE - +autodoc -html $(DESTDIRGENDOCU) -dvgroot ..$/..$/DevelopersGuide -name "OpenOffice.org 1.0.2 API" -lg \ - idl -dvgfile idl_chapter_refs.txt -t $(DESTDIRIDL) -.ENDIF +$(IDL_DOCU_INDEX_FILE) : $(IDL_CHAPTER_REFS) $(IDLFILES) $(DIR_CREATE_FLAG) + +$(MY_AUTODOC) -html $(DESTDIRGENIDLREF) -dvgroot ..$/..$/DevelopersGuide -name $(IDLDOCREFNAME) -lg \ + idl -dvgfile $(IDL_CHAPTER_REFS) -t $(DESTDIRIDL) + +$(CPP_DOCU_INDEX_FILE) : $(INCLUDELIST) $(DIR_CREATE_FLAG) + +$(MY_AUTODOC) -html $(DESTDIRGENCPPREF) -name $(CPPDOCREFNAME) $(AUTODOCPARAMS) + +$(JAVA_SRC_DIR)$/%.zip : $(SOLARCOMMONBINDIR)$/%.zip + +$(MY_COPY) $? $@ + +cd $(JAVA_SRC_DIR) && unzip -q -d . $(@:f) + +$(JAVA_DOCU_INDEX_FILE) : $(DIR_CREATE_FLAG) $(JAVA_SRC_FILES) + +javadoc -J-Xmx120m $(JAVADOCPARAMS) > $(JAVADOCLOG) diff --git a/odk/pack/gendocu/uno/package-list b/odk/pack/gendocu/uno/package-list new file mode 100644 index 000000000000..0e6766d932f2 --- /dev/null +++ b/odk/pack/gendocu/uno/package-list @@ -0,0 +1,53 @@ +com.sun.star.apitest +com.sun.star.awt +com.sun.star.beans +com.sun.star.bridge +com.sun.star.chart +com.sun.star.configuration +com.sun.star.connection +com.sun.star.container +com.sun.star.corba +com.sun.star.datatransfer +com.sun.star.document +com.sun.star.drawing +com.sun.star.form +com.sun.star.formula +com.sun.star.frame +com.sun.star.i18n +com.sun.star.installation +com.sun.star.io +com.sun.star.java +com.sun.star.lang +com.sun.star.linguistic2 +com.sun.star.loader +com.sun.star.mozilla +com.sun.star.plugin +com.sun.star.presentation +com.sun.star.qadev +com.sun.star.reflection +com.sun.star.registry +com.sun.star.resource +com.sun.star.scanner +com.sun.star.script +com.sun.star.sdb +com.sun.star.sdbc +com.sun.star.sdbcx +com.sun.star.security +com.sun.star.setup +com.sun.star.sheet +com.sun.star.stoc +com.sun.star.style +com.sun.star.svg +com.sun.star.sync +com.sun.star.sync2 +com.sun.star.system +com.sun.star.table +com.sun.star.task +com.sun.star.test +com.sun.star.text +com.sun.star.ucb +com.sun.star.ui +com.sun.star.uno +com.sun.star.util +com.sun.star.view +com.sun.star.xml diff --git a/odk/pack/unzip_udk/makefile.mk b/odk/pack/unzip_udk/makefile.mk index 8710b0d910bb..44982517d053 100644 --- a/odk/pack/unzip_udk/makefile.mk +++ b/odk/pack/unzip_udk/makefile.mk @@ -1,3 +1,65 @@ +#************************************************************************* +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.11 $ +# +# last change: $Author: hr $ $Date: 2003-03-26 13:40:11 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + PRJ=..$/.. PRJNAME=odk TARGET=unzip_udk @@ -7,58 +69,14 @@ TARGET=unzip_udk .INCLUDE: $(PRJ)$/util$/makefile.pmk #---------------------------------------------------------------- -.IF "$(GUI)"=="WNT" -UDKPATH=$(UDKZIPPATH)$/$(UDKZIPPREFIX).zip -ODKDOCPATH=$(UDKZIPPATH)$/$(ODKDOCNAME).zip -.ELSE -UDKPATH=$(UDKZIPPATH)$/$(UDKZIPPREFIX).tar.gz -ODKDOCPATH=$(UDKZIPPATH)$/$(ODKDOCNAME).tar.gz -.ENDIF - - all: ..$/misc$/deltree.txt -..$/misc$/deltree.txt .SETDIR=$(OUT)$/bin : $(UDKPATH) ..$/..$/pack$/unzip_udk$/deltree.txt -# first clean everything -.IF "$(BUILD_SOSL)"=="" - +-$(MY_DELETE_RECURSIVE) $(ODKNAME) >& $(NULLDEV) -.ELSE +..$/misc$/deltree.txt .SETDIR=$(OUT)$/bin : $(PRJ)$/pack$/unzip_udk$/deltree.txt +-$(MY_DELETE_RECURSIVE) $(PRODUCT_NAME) >& $(NULLDEV) -.ENDIF - +-$(MY_DELETE_RECURSIVE) $(UDKNAME) >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(UDKZIPPREFIX).zip >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(UDKZIPPREFIX).tar.gz >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(UDKZIPPREFIX).tar >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKDOCNAME).zip >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKDOCNAME).tar.gz >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKDOCNAME).tar >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKNAME).zip >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKNAME).tar.gz >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKNAME).tar >& $(NULLDEV) -.IF "$(GUI)"=="WNT" - $(GNUCOPY) -p $(UDKPATH) $(UDKZIPPREFIX).zip - $(GNUCOPY) -p $(ODKDOCPATH) $(ODKDOCNAME).zip - unzip -q -d . $(UDKZIPPREFIX) - +-$(RENAME) $(UDKNAME) $(ODKNAME) - unzip -q -d . $(ODKDOCNAME).zip -.ELSE - $(GNUCOPY) -p $(UDKPATH) . - $(GNUCOPY) -p $(ODKDOCPATH) . - gzip -df < $(UDKZIPPREFIX).tar.gz | tar -xvf - - +-$(RENAME) $(UDKNAME) $(ODKNAME) - gzip -df < $(ODKDOCNAME).tar.gz | tar -xvf - -.ENDIF - +-$(MY_DELETE_RECURSIVE) $(ODKNAME)$/settings$/dk.mk - +-$(MY_DELETE_RECURSIVE) $(ODKNAME)$/docs$/basic - +-$(MY_DELETE_RECURSIVE) $(ODKNAME)$/docs$/common$/man -.IF "$(BUILD_SOSL)"!="" -# for OpenOffice build rename to PRODUCT_NAME - +-$(RENAME) $(ODKNAME) $(PRODUCT_NAME) -.ENDIF - +-$(MY_DELETE_RECURSIVE) $(UDKZIPPREFIX).zip >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(UDKZIPPREFIX).tar.gz >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(UDKZIPPREFIX).tar >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKDOCNAME).zip >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKDOCNAME).tar.gz >& $(NULLDEV) - +-$(MY_DELETE_RECURSIVE) $(ODKDOCNAME).tar >& $(NULLDEV) + +-rm -f $(PRODUCT_NAME).zip >& $(NULLDEV) + +-rm -f $(PRODUCT_NAME).tar.gz >& $(NULLDEV) + +-rm -f $(PRODUCT_NAME).tar >& $(NULLDEV) + +-rm -f $(DIR_CREATE_FLAG) >& $(NULLDEV) + +-rm -f $(DEVGUIDE_DOCU_FLAG) >& $(NULLDEV) + +-rm -f $(DEVGUIDE_SAMPLES_FLAG) >& $(NULLDEV) +@echo "" > ..$/misc$/deltree.txt diff --git a/odk/prj/build.lst b/odk/prj/build.lst index da23771b20d8..7b03844f9558 100644 --- a/odk/prj/build.lst +++ b/odk/prj/build.lst @@ -1,13 +1,10 @@ -od odk :: unoil offapi product apiwww netbeans_integration NULL +od odk :: cppuhelper cpputools io jurt jut javaunohelper sandbox remotebridges stoc udkapi ridljar offapi unoil autodoc netbeans_integration NULL od odk usr1 - all od_mkout NULL od odk\source\bean\com\sun\star\beans nmake - all od_beanjava NULL -od odk\source\bean\native\win32 nmake - n od_beanwin32 NULL +od odk\source\bean\native\win32 nmake - n od_beanwin32 NULL od odk\source\bean\native\unix nmake - u od_beanunix NULL od odk\source\OOSupport nmake - all od_oosupportjava NULL od odk\pack\unzip_udk nmake - all od_unzip_udk NULL od odk\pack\copying nmake - all od_copying od_unzip_udk od_beanjava od_beanwin32.n od_beanunix.u od_oosupportjava NULL od odk\pack\gendocu nmake - all od_gendocu od_copying NULL -od odk\pack\checkinc nmake - all od_checkinc od_unzip_udk NULL -od odk\pack\checkinc2 nmake - all od_checkinc2 od_unzip_udk NULL -od odk\pack\checkbin nmake - all od_checkbin od_unzip_udk NULL -od odk\util nmake - all od_util od_copying od_gendocu od_checkinc od_checkinc2 od_checkbin NULL +od odk\util nmake - all od_util od_copying od_gendocu NULL diff --git a/odk/prj/d.lst b/odk/prj/d.lst index ddee5963c6ab..4e663e9578af 100644 --- a/odk/prj/d.lst +++ b/odk/prj/d.lst @@ -7,5 +7,9 @@ ..\%__SRC%\class\officebean.jar %_DEST%\bin%_EXT%\officebean.jar +..\%__SRC%\bin\officebean.dll %_DEST%\bin%_EXT%\officebean.dll +..\%__SRC%\lib\libofficebean.so %_DEST%\lib%_EXT%\libofficebean.so +..\%__SRC%\lib\*officebean.dylib %_DEST%\lib%_EXT%\*officebean.dylib + dos: sh -c "if test %OS% = MACOSX; then create-bundle %_DEST%\lib%_EXT%\*.dylib; fi" dos: sh -c "if test %OS% = MACOSX; then create-libstatic-link %_DEST%\lib%_EXT%; fi" diff --git a/odk/setsdkenv_windows.bat b/odk/setsdkenv_windows.bat index dc7ac7c51704..0dfdd2ec6d81 100755 --- a/odk/setsdkenv_windows.bat +++ b/odk/setsdkenv_windows.bat @@ -18,7 +18,7 @@ REM Directory of the make command. REM Example: set OO_SDK_MAKE=D:\NextGenerationMake\make set OO_SDK_MAKE= -REM Directory of the C++ tools. +REM Directory of the C++ compiler. REM Example:set OO_SDK_CPP_HOME=C:\Programme\Microsoft Visual Studio\VC98\bin set OO_SDK_CPP_HOME= @@ -26,8 +26,8 @@ REM STLPORT installation directory. REM Example: set OO_STLPORT_HOME=D:\stlport-4.5.3 set OO_STLPORT_HOME= -REM Java installation directory. -REM Example: set OO_SDK_JAVA_HOME=C:\Programme\Java\J2SDK_Forte\jdk1.4.0 +REM Java SDK installation directory. +REM Example: set OO_SDK_JAVA_HOME=C:\jdk1.4.0 set OO_SDK_JAVA_HOME= REM Environment variable to enable auto deployment of example components diff --git a/odk/settings/settings.mk b/odk/settings/settings.mk new file mode 100644 index 000000000000..823a8c4d9f81 --- /dev/null +++ b/odk/settings/settings.mk @@ -0,0 +1,274 @@ +# Global settings file for the minimal build environment of the SDK +# This file have to updated/extended for other platforms. + +# test for the platform +PLATFORM := $(shell uname -s) + +# special check for windows because normally we have no uname under windows +ifeq "$(PLATFORM)" "" +PLATFORM = windows +else +ifeq "$(PLATFORM)" "WINNT" +PLATFORM = windows +endif +ifeq "$(PLATFORM)" "WindowsNT" +PLATFORM = windows +endif +ifeq "$(PLATFORM)" "CYGWIN_NT-5.0" +PLATFORM = windows +endif +endif + +# debug option, default is no debug +DEBUG=no +ifeq "$(MAKECMDGOALS)" "debug" +DEBUG=yes +endif + + +########################################################################### +# +# Windows specific settings +# +########################################################################### +ifeq "$(PLATFORM)" "windows" +# Settings for Windows using Microsoft compiler/linker + +OS=WIN +PS=\\ +CC=cl +LINK=link +BUILDLIB=lib +ECHO=@echo +MKDIR=mkdir +MV=move +CAT=type +OBJ_EXT=obj +EXE_EXT=.exe +COPY=copy +SHAREDLIB_EXT=dll +SHAREDLIB_OUT=$(OUT_BIN) +PACKAGE_LIB_DIR=windows.plt + +OSEP=^< +CSEP=^> +QUOTE= + +DEL=del +DELRECURSIVE=rd /S /Q +URLPREFIX=file:/// + +SALLIB=isal.lib +CPPULIB=icppu.lib +CPPUHELPERLIB=icppuhelper.lib +SALHELPERLIB=isalhelper.lib +STLPORTLIB=stlport_vc6.lib + +BLANK= +EMPTYSTRING= +PATH_SEPARATOR=; + +# use this for release version +CC_FLAGS=-c -GX +ifeq "$(DEBUG)" "yes" +CC_FLAGS+=-Zi -MT +endif + +CC_INCLUDES=-I. -I$(OUT)/inc/examples -I$(PRJ)/include +STL_INCLUDES=-I$(OO_STLPORT_HOME)/stlport +SDK_JAVA_INCLUDES = -I$(OO_SDK_JAVA_HOME)/include -I$(OO_SDK_JAVA_HOME)/include/win32 + +# define for used compiler necessary for UNO +# -DCPPU_ENV=msci -- windows msvc 4.x - 7.x + +CC_DEFINES=-DWIN32 -DCPPU_ENV=msci +CC_OUTPUT_SWITCH=-Fo + +LIBRARY_LINK_FLAGS=/NODEFAULTLIB /DLL /DEBUG:notmapped,full /DEBUGTYPE:cv +EXE_LINK_FLAGS=/MAP /OPT:NOREF /SUBSYSTEM:CONSOLE /BASE:0x1100000 /DEBUG:notmapped,full /DEBUGTYPE:cv + +LINK_JAVA_LIBS=/LIBPATH:$(OO_SDK_JAVA_HOME)/lib + + +# use this for release version +#EXE_LINK_FLAGS=/MAP /OPT:NOREF /SUBSYSTEM:CONSOLE /BASE:0x1100000 +#LIBRARY_LINK_FLAGS=/NODEFAULTLIB /DLL +endif + + + +########################################################################### +# +# Solaris specific settings +# +########################################################################### +ifeq "$(PLATFORM)" "SunOS" +# Settings for Solaris using Sun Workshop compiler + +PROCTYPE := $(shell uname -p) + +ifeq "$(PROCTYPE)" "sparc" +PLATFORM=solsparc +PACKAGE_LIB_DIR=solaris_sparc.plt +JAVA_PROC_TYPE=sparc +else +PLATFORM=solintel +PACKAGE_LIB_DIR=solaris_intel.plt +JAVA_PROC_TYPE=i386 +endif + +OS=SOLARIS +PS=/ +CC=CC +LINK=CC +LIB=CC +ECHO=@echo +MKDIR=mkdir -p +CAT=cat +OBJ_EXT=o +SHAREDLIB_EXT=so +SHAREDLIB_PRE=lib +SHAREDLIB_OUT=$(OUT_LIB) + +OSEP=\< +CSEP=\> +QUOTE=$(subst S,\,S) + +DEL=rm -f +DELRECURSIVE=rm -rf +COPY=cp +URLPREFIX=file:// + +# Include UDK version numbers +include $(PRJ)/include/udkversion.mk + +SALLIB=-lsal +CPPULIB=-lcppu +CPPUHELPERLIB=-lcppuhelperC52 +SALHELPERLIB=-lsalhelperC52 +STLPORTLIB=-lstlport_sunpro + +EMPTYSTRING= +PATH_SEPARATOR=: + +CC_FLAGS=-c -KPIC +ifeq "$(DEBUG)" "yes" +CC_FLAGS+=-g +endif +CC_INCLUDES=-I. -I/usr/include -I$(OUT)/inc/examples -I$(PRJ)/include +STL_INCLUDES=-I$(OO_STLPORT_HOME)/stlport +SDK_JAVA_INCLUDES = -I$(OO_SDK_JAVA_HOME)/include -I$(OO_SDK_JAVA_HOME)/include/solaris + +# define for used compiler necessary for UNO +# -DCPPU_ENV=sunpro5 -- sunpro cc 5.x solaris sparc/intel + +CC_DEFINES=-DUNX -DSOLARIS -DSPARC -DCPPU_ENV=sunpro5 +CC_OUTPUT_SWITCH=-o + +LIBRARY_LINK_FLAGS=-w -PIC -temp=/tmp -R /usr/lib -G -lthread -instances=static +LINK_LIBS=-L$(OUT)/lib -L$(PRJ)/$(PLATFORM)/lib -L$(OFFICE_PROGRAM_PATH) +LINK_JAVA_LIBS=-L$(OO_SDK_JAVA_HOME)/jre/lib/$(JAVA_PROC_TYPE) + +endif + + + +########################################################################### +# +# Linux specific settings +# +########################################################################### +ifeq "$(PLATFORM)" "Linux" +# Settings for Linux using gcc compiler + +PROCTYPE := $(shell uname -m) + + +# Default is linux on a intel machine +PLATFORM=linux +PACKAGE_LIB_DIR=linux_x86.plt +JAVA_PROC_TYPE=i386 + +ifeq "$(PROCTYPE)" "ppc" +PACKAGE_LIB_DIR=linux_powerpc.plt +JAVA_PROC_TYPE=ppc +endif + +OS=LINUX +PS=/ +CC=gcc +LINK=gcc +LIB=gcc +ECHO=@echo +MKDIR=mkdir -p +CAT=cat +OBJ_EXT=o +SHAREDLIB_EXT=so +SHAREDLIB_PRE=lib +SHAREDLIB_OUT=$(OUT_LIB) + +GCC_VERSION=$(shell $(CC) -dumpversion) + +ifeq "$(shell echo $(GCC_VERSION) | cut -c 1)" "3" +COMID=gcc3 +CPPU_ENV=gcc3 +else +COMID=GCC +CPPU_ENV=gcc2 +endif + +OSEP=\< +CSEP=\> +QUOTE=$(subst S,\,S) + +DEL=rm -f +DELRECURSIVE=rm -rf +COPY=cp +URLPREFIX=file:// + +# Include UDK version numbers +include $(PRJ)/include/udkversion.mk + +SALLIB=-lsal +CPPULIB=-lcppu +CPPUHELPERLIB=-lcppuhelper$(COMID) +SALHELPERLIB=-lsalhelper$(COMID) +STLPORTLIB=-lstlport_gcc + +EMPTYSTRING= +PATH_SEPARATOR=: + +# -O is necessary for inlining (see gcc documentation) +ifeq "$(DEBUG)" "yes" +CC_FLAGS=-c -g -fpic +else +CC_FLAGS=-c -O -fpic +endif + +ifeq "$(PROCTYPE)" "ppc" +CC_FLAGS+=-fPIC +endif + +SDK_JAVA_INCLUDES = -I$(OO_SDK_JAVA_HOME)/include -I$(OO_SDK_JAVA_HOME)/include/linux +CC_INCLUDES=-I. -I/usr/include -I$(OUT)/inc/examples -I$(PRJ)/include +STL_INCLUDES=-I$(OO_STLPORT_HOME)/stlport +CC_DEFINES=-DUNX -DGCC -DLINUX -DCPPU_ENV=$(CPPU_ENV) + +# define for used compiler necessary for UNO +#-DCPPU_ENV=gcc2 -- gcc 2.91/2.95 +#-DCPPU_ENV=gcc3 -- gcc3 3.0 + +CC_OUTPUT_SWITCH=-o + +LIBRARY_LINK_FLAGS=-shared + +ifeq "$(PROCTYPE)" "ppc" +LIBRARY_LINK_FLAGS+=-fPIC +endif + +EXE_LINK_FLAGS=-Wl -export-dynamic +LINK_LIBS=-L$(OUT)/lib -L$(PRJ)/$(PLATFORM)/lib -L$(OFFICE_PROGRAM_PATH) +LINK_JAVA_LIBS=-L$(OO_SDK_JAVA_HOME)/jre/lib/$(JAVA_PROC_TYPE) + +endif + diff --git a/odk/settings/std.mk b/odk/settings/std.mk new file mode 100644 index 000000000000..4eb5df8a026d --- /dev/null +++ b/odk/settings/std.mk @@ -0,0 +1,16 @@ +OUT=$(PRJ)/$(OS)example.out +OUT_BIN=$(OUT)/bin +OUT_INC=$(OUT)/inc +OUT_SLO=$(OUT)/slo +OUT_LIB=$(OUT)/lib +OUT_SLB=$(OUT)/slb +OUT_MISC=$(OUT)/misc +OUT_OBJ=$(OUT)/obj +OUT_CLASS=$(OUT)/class +IDL_DIR=$(PRJ)/idl +BIN_DIR=$(PRJ)/$(PLATFORM)/bin +CLASSES_DIR=$(PRJ)/classes +OFFICE_CLASSES_DIR=$(subst \,/,$(OFFICE_PROGRAM_PATH))/classes +DEPLOYTOOL="$(OFFICE_PROGRAM_PATH)$(PS)pkgchk" +COMPONENT_PACKAGE_DIR=$(OO_SDK_HOME)$(PS)$(OS)example.out$(PS)bin +SDK_JAVA=$(OO_SDK_JAVA_HOME)/bin/java diff --git a/odk/settings/stdtarget.mk b/odk/settings/stdtarget.mk new file mode 100644 index 000000000000..a0017e106922 --- /dev/null +++ b/odk/settings/stdtarget.mk @@ -0,0 +1,17 @@ +.SECONDARY: + +$(OUT) : + @echo Building for $(OS) + $(MKDIR) $(subst /,$(PS),$(OUT)) + $(MKDIR) $(subst /,$(PS),$(OUT_BIN)) + $(MKDIR) $(subst /,$(PS),$(OUT_INC)) + $(MKDIR) $(subst /,$(PS),$(OUT_LIB)) + $(MKDIR) $(subst /,$(PS),$(OUT_SLO)) + $(MKDIR) $(subst /,$(PS),$(OUT_SLB)) + $(MKDIR) $(subst /,$(PS),$(OUT_MISC)) + $(MKDIR) $(subst /,$(PS),$(OUT_OBJ)) + $(MKDIR) $(subst /,$(PS),$(OUT_CLASS)) + +ifeq "$(DEBUG)" "yes" +debug : ALL +endif diff --git a/odk/util/makefile.mk b/odk/util/makefile.mk index c4ff7658fd0a..448d385f4801 100644 --- a/odk/util/makefile.mk +++ b/odk/util/makefile.mk @@ -7,17 +7,9 @@ TARGET=odk .INCLUDE: makefile.pmk # ------------------------------------------------------------------ -.IF "$(BUILD_SOSL)"=="" -# for SUN build -ZIPFILE=$(ODKZIPFILE) -TARGZFILE=$(ODKTARGZFILE) -ZIPDIR=$(ODKNAME) -.ELSE -# for OO build ZIPFILE=$(PRODUCTZIPFILE) TARGZFILE=$(PRODUCTTARGZFILE) ZIPDIR=$(PRODUCT_NAME) -.ENDIF .IF "$(OS)"=="WNT" all:\ diff --git a/odk/util/makefile.pmk b/odk/util/makefile.pmk index 335204c080ef..2c4200806603 100644 --- a/odk/util/makefile.pmk +++ b/odk/util/makefile.pmk @@ -1,31 +1,91 @@ -#ODKNAME=odk$(UDK_MAJOR).$(UDK_MINOR).$(UDK_MICRO) - -ODK_RELEASE=1.0.2 - -OFFICEPRODUCTNAME="OpenOffice.org $(ODK_RELEASE)" -TITLE="OpenOffice.org $(ODK_RELEASE) SDK" -PRODUCT_NAME=OpenOffice.org$(ODK_RELEASE)SDK +#************************************************************************* +# +# $RCSfile: makefile.pmk,v $ +# +# $Revision: 1.32 $ +# +# last change: $Author: hr $ $Date: 2003-03-26 13:40:54 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + +.IF "$(BUILD_SPECIAL)"=="" +PRODUCT_RELEASE=6.1 +PRODUCT_NAME=odk$(UPD) +OFFICEPRODUCTNAME="StarOffice $(PRODUCT_RELEASE)" +IDLDOCREFNAME="StarOffice6.1 API Beta" +TITLE="StarOffice6.1 Beta SDK" +IDL_CHAPTER_REFS=idl_chapter_refs.txt +CONVMODE=2 +.ELSE +PRODUCT_RELEASE=1.1 +PRODUCT_NAME=OpenOffice.org$(PRODUCT_RELEASE)_Beta_SDK +OFFICEPRODUCTNAME="OpenOffice.org $(PRODUCT_RELEASE)" +IDLDOCREFNAME="OpenOffice.org $(PRODUCT_RELEASE) API Beta" +TITLE="OpenOffice.org$(PRODUCT_RELEASE) Beta SDK" +IDL_CHAPTER_REFS=idl_chapter_refs_oo.txt +CONVMODE=1 +.ENDIF PRODUCTZIPFILE=$(PRODUCT_NAME).zip PRODUCTTARGZFILE=$(PRODUCT_NAME).tar.gz - -ODKNAME=odk$(UPD) -ODKDOCNAME=$(ODKNAME)_doc - -ODKZIPFILE=$(ODKNAME).zip -ODKTARGZFILE=$(ODKNAME).tar.gz - - -.IF "$(BUILD_SOSL)"=="" -# for Sun build use ODKNAME as directory name -DESTDIR=$(OUT)$/bin$/$(ODKNAME) -.ELSE -# for OpenOffice build use PRODUCT_NAME as directory name DESTDIR=$(OUT)$/bin$/$(PRODUCT_NAME) -.ENDIF - DESTDIRIDL=$(DESTDIR)$/idl +DESTDIRINC=$(DESTDIR)$/include +DESTDIRJAR=$(DESTDIR)$/classes +DESTDIRXML=$(DESTDIR)$/xml DESTDIRSETTINGS=$(DESTDIR)$/settings DESTDIREXAMPLES=$(DESTDIR)$/examples DESTDIRCPPEXAMPLES=$(DESTDIR)$/examples$/cpp @@ -36,22 +96,32 @@ DESTDIRINC=$(DESTDIR)$/include DESTDIRCLASSES=$(DESTDIR)$/classes DESTDIRDOCU=$(DESTDIR)$/docs DESTDIRCOMMONDOCU=$(DESTDIRDOCU)$/common -DESTDIRGENDOCU=$(DESTDIRCOMMONDOCU)$/ref +DESTDIRGENIDLREF=$(DESTDIRCOMMONDOCU)$/ref DESTDIRDOCUIMAGES=$(DESTDIRDOCU)$/images +DESTDIRCPPDOCU=$(DESTDIRDOCU)$/cpp +DESTDIRGENCPPREF=$(DESTDIRDOCU)$/cpp$/ref +DESTDIRJAVADOCU=$(DESTDIRDOCU)$/java +DESTDIRGENJAVAREF=$(DESTDIRDOCU)$/java$/ref -UDKZIPPATH=$(SOLARBINDIR) -UDKNAME=udk$(UDK_MAJOR).$(UDK_MINOR).$(UDK_MICRO) -UDKZIPPREFIX=$(UDKNAME)_odk CHECKSCRIPT=$(SOLARENV)$/bin$/checkit.pl BINOUT=$(SOLARBINDIR) +INCOUT=$(SOLARINCDIR) IDLOUT=$(SOLARIDLDIR) +XMLOUT=$(SOLARXMLDIR) +LIBOUT=$(SOLARLIBDIR) MY_COPY=$(GNUCOPY) -u MY_COPY_RECURSIVE=$(GNUCOPY) -urf CONVERTTAGSCRIPT=$(SOLARENV)$/bin$/converttags.pl -CONVERTSCRIPT=$(SOLARENV)$/bin$/convertlinks.pl + +# used in pack/gendocu and unzip_udk +DIR_CREATE_FLAG=$(MISC)$/docu_directories_created.txt + +# used in pack/copying and unzip_udk +DEVGUIDE_DOCU_FLAG=$(MISC)$/devguide_docu_unzipped.txt +DEVGUIDE_SAMPLES_FLAG=$(MISC)$/devguide_samples_unzipped.txt .IF "$(GUI)"=="WNT" #-------------------- @@ -64,6 +134,7 @@ MY_TEXTCOPY=cat MY_DLLPREFIX= MY_DLLPOSTFIX=.dll MY_DLLOUT=$(OUT)$/bin +EXEPOSTFIX=.exe DLLOUT=$(SOLARBINDIR) DESTDIRBIN=$(DESTDIR)$/windows$/bin @@ -77,7 +148,6 @@ DESTDIRDLL=$(DESTDIRBIN) MY_DELETE_RECURSIVE=rm -rf MY_DIRCMP=dircmp MY_TEXTCOPY= tr -d "\015" -#MY_COPY=cat MY_DLLPREFIX=lib MY_DLLPOSTFIX=.so @@ -96,8 +166,8 @@ DESTDIRDLL=$(DESTDIRLIB) ########## # SOLARIS INTEL ########## -DESTDIRBIN=$(DESTDIR)$/solia$/bin -DESTDIRLIB=$(DESTDIR)$/solia$/lib +DESTDIRBIN=$(DESTDIR)$/solintel$/bin +DESTDIRLIB=$(DESTDIR)$/solintel$/lib DESTDIRDLL=$(DESTDIRLIB) .ELIF "$(OS)"=="LINUX" @@ -137,3 +207,40 @@ DESTDIRDLL=$(DESTDIRLIB) MY_TEXTCOPY_SOURCEPRE=< MY_TEXTCOPY_TARGETPRE=> + + +INCLUDETOPDIRLIST= \ + $(INCOUT)$/sal \ + $(INCOUT)$/salhelper \ + $(INCOUT)$/rtl \ + $(INCOUT)$/osl \ + $(INCOUT)$/store \ + $(INCOUT)$/typelib \ + $(INCOUT)$/uno \ + $(INCOUT)$/cppu \ + $(INCOUT)$/cppuhelper \ + $(INCOUT)$/bridges + +.IF "$(GUI)"=="WNT" +INCLUDETOPDIRLIST += $(INCOUT)$/systools +.ENDIF + +INCLUDEDIRLIST={$(subst,/,$/ $(shell $(FIND) $(INCLUDETOPDIRLIST) -type d -print))} + +INCLUDEFILELIST=\ + $(INCOUT)$/udkversion.mk \ + $(INCOUT)$/com$/sun$/star$/uno$/Any.h \ + $(INCOUT)$/com$/sun$/star$/uno$/Any.hxx \ + $(INCOUT)$/com$/sun$/star$/uno$/genfunc.h \ + $(INCOUT)$/com$/sun$/star$/uno$/genfunc.hxx \ + $(INCOUT)$/com$/sun$/star$/uno$/Reference.h \ + $(INCOUT)$/com$/sun$/star$/uno$/Reference.hxx \ + $(INCOUT)$/com$/sun$/star$/uno$/Sequence.h \ + $(INCOUT)$/com$/sun$/star$/uno$/Sequence.hxx \ + $(INCOUT)$/com$/sun$/star$/uno$/Type.h \ + $(INCOUT)$/com$/sun$/star$/uno$/Type.hxx + +INCLUDELIST=\ + {$(subst,/,$/ $(shell $(FIND) $(INCLUDETOPDIRLIST) -type f -print))} \ + $(INCLUDEFILELIST) + |