diff options
-rwxr-xr-x | Repository.mk | 1 | ||||
-rw-r--r-- | cpputools/Executable_regcomp.mk | 44 | ||||
-rw-r--r-- | cpputools/Module_cpputools.mk | 1 | ||||
-rw-r--r-- | cpputools/Package_bin.mk | 1 | ||||
-rw-r--r-- | cpputools/source/registercomponent/registercomponent.cxx | 841 | ||||
-rw-r--r-- | odk/docs/tools.html | 68 | ||||
-rw-r--r-- | odk/settings/std.mk | 1 | ||||
-rw-r--r-- | odk/util/odk_rules.pmk | 4 | ||||
-rwxr-xr-x | scp2/source/ooo/ure.scp | 31 | ||||
-rw-r--r-- | solenv/bin/guw.pl | 1 | ||||
-rw-r--r-- | solenv/inc/settings.mk | 5 | ||||
-rw-r--r-- | ure/source/README | 16 |
12 files changed, 4 insertions, 1010 deletions
diff --git a/Repository.mk b/Repository.mk index 6f62ae25824a..5479d3674b66 100755 --- a/Repository.mk +++ b/Repository.mk @@ -176,7 +176,6 @@ endif ifneq ($(OS),IOS) $(eval $(call gb_Helper_register_executables,UREBIN,\ - regcomp \ regmerge \ regview \ uno \ diff --git a/cpputools/Executable_regcomp.mk b/cpputools/Executable_regcomp.mk deleted file mode 100644 index 844fd94d683a..000000000000 --- a/cpputools/Executable_regcomp.mk +++ /dev/null @@ -1,44 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# Version: MPL 1.1 / GPLv3+ / LGPLv3+ -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License or as specified alternatively below. You may obtain a copy of -# the License at http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# Major Contributor(s): -# Copyright (C) 2012 David Ostrovsky <d.ostrovsky@gmx.de> (initial developer) -# -# All Rights Reserved. -# -# For minor contributions see the git repository. -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 3 or later (the "GPLv3+"), or -# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), -# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable -# instead of those above. - -$(eval $(call gb_Executable_Executable,regcomp)) - -$(eval $(call gb_Executable_use_internal_comprehensive_api,regcomp,\ - udkapi \ -)) - -$(eval $(call gb_Executable_use_libraries,regcomp,\ - cppu \ - cppuhelper \ - sal \ - $(gb_UWINAPI) \ -)) - -$(eval $(call gb_Executable_add_exception_objects,regcomp,\ - cpputools/source/registercomponent/registercomponent \ -)) - -# vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/cpputools/Module_cpputools.mk b/cpputools/Module_cpputools.mk index 9f5e93235c92..504d281c9d24 100644 --- a/cpputools/Module_cpputools.mk +++ b/cpputools/Module_cpputools.mk @@ -33,7 +33,6 @@ $(eval $(call gb_Module_add_targets,cpputools,\ )) $(eval $(call gb_Module_add_targets,cpputools,\ - Executable_regcomp \ Executable_regsingleton \ Executable_uno \ )) diff --git a/cpputools/Package_bin.mk b/cpputools/Package_bin.mk index 9a0b8d4f94e1..1a22247ac549 100644 --- a/cpputools/Package_bin.mk +++ b/cpputools/Package_bin.mk @@ -28,7 +28,6 @@ # because the installation system is so incredibly inflexible... $(eval $(call gb_Package_Package,cpputools_bin,$(gb_Executable_BINDIR))) -$(eval $(call gb_Package_add_file,cpputools_bin,bin/regcomp.bin,regcomp)) $(eval $(call gb_Package_add_file,cpputools_bin,bin/uno.bin,uno)) # vim: set shiftwidth=4 tabstop=4 noexpandtab: diff --git a/cpputools/source/registercomponent/registercomponent.cxx b/cpputools/source/registercomponent/registercomponent.cxx deleted file mode 100644 index 950952b5d880..000000000000 --- a/cpputools/source/registercomponent/registercomponent.cxx +++ /dev/null @@ -1,841 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 . - */ -#include <stdlib.h> -#include <stdio.h> -#include <string.h> - -#include <vector> - -#include "sal/main.h" -#include <rtl/strbuf.hxx> -#include <rtl/ustrbuf.hxx> - -#include <cppuhelper/servicefactory.hxx> -#include <cppuhelper/shlib.hxx> - -#include <com/sun/star/container/XSet.hpp> -#include <com/sun/star/container/XContentEnumerationAccess.hpp> -#include <com/sun/star/registry/XImplementationRegistration2.hpp> -#include <com/sun/star/registry/XSimpleRegistry.hpp> -#include <com/sun/star/lang/XComponent.hpp> - -#include <algorithm> -#include <osl/process.h> -#include <osl/diagnose.h> -#include <osl/thread.h> -#include <osl/file.hxx> - -#ifdef SAL_UNX -#define SEPARATOR '/' -#else -#define SEPARATOR '\\' -#endif - -using namespace ::rtl; -using namespace ::osl; -using namespace ::cppu; -using namespace ::std; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::lang; -using namespace ::com::sun::star::registry; -using com::sun::star::container::XSet; -using com::sun::star::container::XContentEnumerationAccess; -using com::sun::star::container::XEnumeration; - -namespace { - -OUString replacePrefix(OUString const & url, OUString const & prefix) { - sal_Int32 i = url.lastIndexOf('/'); - // Backward compatibility with stoc/source/implementationregistration/ - // implreg.cxx:1.27 l. 1892: - if (i == -1) { - i = url.lastIndexOf('\\'); - } - return prefix + url.copy(i + 1); -} - -} - -sal_Bool isFileUrl(const OUString& fileName) -{ - if (fileName.indexOf("file://") == 0 ) - return sal_True; - return sal_False; -} - -OUString convertToFileUrl(const OUString& fileName) -{ - if ( isFileUrl(fileName) ) - { - return fileName; - } - - OUString uUrlFileName; - if ( fileName.indexOf('.') == 0 || fileName.indexOf(SEPARATOR) < 0 ) - { - OUString uWorkingDir; - if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None) { - OSL_ASSERT(false); - } - if (FileBase::getAbsoluteFileURL(uWorkingDir, fileName, uUrlFileName) - != FileBase::E_None) - { - OSL_ASSERT(false); - } - } else - { - if (FileBase::getFileURLFromSystemPath(fileName, uUrlFileName) - != FileBase::E_None) - { - OSL_ASSERT(false); - } - } - - return uUrlFileName; -} -static void usingRegisterImpl() -{ - fprintf(stderr, "usage: regcomp -register|revoke -r registryfile -c locationUrl [-br registryfile] [-l componentLoaderUrl] [-s] [-classpath path]\n"); - fprintf(stderr, " Parameters:\n"); - fprintf(stderr, " -register\n" - " register a new component.\n"); - fprintf(stderr, " -revoke\n" - " revoke a component.\n"); - fprintf(stderr, " -br registryfile\n" - " the name of the registry used for bootstrapping\n" - " regcomp. The option can be given twice, each\n" - " one followed by exactly one registry file.\n" - " The registries are used to access both types and\n" - " registered components.\n"); - fprintf(stderr, " -r registryfile\n" - " the name of the target registry (will be created\n" - " if it does not exists). The file name may match\n" - " with one of the filenames given with the -br option.\n"); - fprintf(stderr, " -c locationUrls\n" - " the location of a component (a url to a shared\n" - " library or a absolute url to a .jar file) or a\n" - " list of urls seperated by ';' or ' '. Note if a\n" - " list of urls is specified, the components must\n" - " all need the same loader (quoting is possible with\n" - " \\ or \"\").\n"); - fprintf(stderr, " -l componentLoaderUrl\n" - " the name of the needed loader. If no loader is\n" - " specified and the components have a .jar suffix,\n" - " the default is com.sun.star.loader.Java2.\n" - " Otherwise, the default is\n" - " com.sun.star.loader.SharedLibrary\n" - " -s\n" - " silent, regcomp prints messages only on error.\n" - " -wop\n" - " register the component name only without path\n" - " -wop=prefix\n" - " register the component name with path replaced\n" - " by given prefix\n" - " -classpath path\n" - " sets the java classpath to path (overwriting the\n" - " current classpath environment variable). Note that\n" - " in case you start regcomp e.g. within an office\n" - " environment, the classpath entries in the\n" - " configuration still have precedence over this\n" - " option.\n"); -} - -class IllegalArgument -{ -public: - IllegalArgument(const OString& rMessage) - : m_message(rMessage) - {} - - OString m_message; -}; - -struct Options -{ - Options() - : bRegister(sal_False) - , bRevoke(sal_False) - , bSilent( sal_False ) - , bPrefix( sal_False ) - {} - - sal_Bool bRegister; - sal_Bool bRevoke; - sal_Bool bSilent; - sal_Bool bPrefix; - OUString sPrefix; - OUString sProgramName; - OUString sBootRegName; - OUString sBootRegName2; - OUString sRegName; - OUString sComponentUrls; - OUString sLoaderName; -}; - -sal_Bool parseOptions(int ac, char* av[], Options& rOptions, sal_Bool bCmdFile) - throw( IllegalArgument ) -{ - sal_Bool ret = sal_True; - sal_uInt16 i=0; - sal_Bool bLoaderExplicitlyGiven = sal_False; - - rOptions.sProgramName = OUString::createFromAscii(av[i++]); - - if (!bCmdFile) - { - bCmdFile = sal_True; - - if (ac < 2) - { - usingRegisterImpl(); - ret = sal_False; - } - } - - for (; i < ac; i++) - { - if (av[i][0] == '-') - { - switch (av[i][1]) - { - case 'r': - if (strcmp(av[i], "-register") == 0) - { - rOptions.bRegister = sal_True; - } else - if (strcmp(av[i], "-revoke") == 0) - { - rOptions.bRevoke = sal_True; - } else - if (av[i][2] == '\0') - { - if (i < ac - 1 && av[i+1][0] != '-') - { - i++; - rOptions.sRegName = OStringToOUString(av[i], osl_getThreadTextEncoding()); - } else - { - OString tmp("'-r', please check"); - if (i <= ac - 1) - { - tmp += " your input '" + OString(av[i+1]) + "'"; - } - throw IllegalArgument(tmp); - } - } else - { - rOptions.sRegName = OStringToOUString(av[i]+2, osl_getThreadTextEncoding()); - } - break; - case 'b': - if (av[i][2] != 'r') - { - OString tmp("'-b', invalid option!"); - throw IllegalArgument(tmp); - } - if (av[i][3] == '\0') - { - if (i < ac - 1 && av[i+1][0] != '-') - { - i++; - OUString regName = OStringToOUString(av[i], osl_getThreadTextEncoding()); - if( rOptions.sBootRegName.isEmpty() ) - { - rOptions.sBootRegName = regName; - } - else - { - rOptions.sBootRegName2 = regName; - } - } else - { - OString tmp("'-br', please check"); - if (i <= ac - 1) - { - tmp += " your input '" + OString(av[i+1]) + "'"; - } - throw IllegalArgument(tmp); - } - } else - { - rOptions.sBootRegName = OStringToOUString(av[i]+3, osl_getThreadTextEncoding()); - } - break; - case 'c': - { - OUString sUrls; - if (av[i][2] == '\0') - { - if (i < ac - 1 && av[i+1][0] != '-') - { - i++; - sUrls = OStringToOUString(av[i], osl_getThreadTextEncoding()); - } else - { - OString tmp("'-c', please check"); - if (i <= ac - 1) - { - tmp += " your input '" + OString(av[i+1]) + "'"; - } - throw IllegalArgument(tmp); - } - } - else if( 0 == strncmp( av[i] , "-classpath" ,10 ) ) - { - i++; - if( i < ac ) - { - rtl::OUString envVar(RTL_CONSTASCII_USTRINGPARAM("CLASSPATH")); - rtl::OUString envValue(av[i], strlen(av[i]), osl_getThreadTextEncoding()); - osl_setEnvironment(envVar.pData, envValue.pData); - } - break; - } - else - { - sUrls = OStringToOUString(av[i]+2, osl_getThreadTextEncoding()); - } - - if (!rOptions.sComponentUrls.isEmpty()) - { - OUString tmp(rOptions.sComponentUrls + OUString(";", 1, osl_getThreadTextEncoding()) + sUrls); - rOptions.sComponentUrls = tmp; - } else - { - rOptions.sComponentUrls = sUrls; - } - break; - } - case 'l': - { - if (av[i][2] == '\0') - { - if (i < ac - 1 && av[i+1][0] != '-') - { - i++; - rOptions.sLoaderName = OUString::createFromAscii(av[i]); - bLoaderExplicitlyGiven = sal_True; - } else - { - OString tmp("'-l', please check"); - if (i <= ac - 1) - { - tmp += " your input '" + OString(av[i+1]) + "'"; - } - throw IllegalArgument(tmp); - } - } else - { - bLoaderExplicitlyGiven = sal_True; - rOptions.sLoaderName = OUString::createFromAscii(av[i]+2); - } - break; - } - case 's': - { - if( av[i][2] == 0 ) - { - rOptions.bSilent = sal_True; - } - else - { - rtl::OStringBuffer buf; - buf.append( "Unknown error " ); - buf.append( av[i] ); - throw IllegalArgument( av[i] ); - } - break; - } - case 'e': - { - if( av[i][2] == 'n' && av[i][3] == 'v' && av[i][4] == ':' ) - { - // bootstrap variable, ignore it - break; - } - } - case 'w': - { - if (strcmp(av[i], "-wop") == 0) - { - rOptions.bPrefix = sal_True; - rOptions.sPrefix = OUString(); - // in case there are multiple -wops - break; - } - else if ( - strncmp(av[i], "-wop=", RTL_CONSTASCII_LENGTH("-wop=")) - == 0) - { - rOptions.bPrefix = sal_True; - rOptions.sPrefix = OStringToOUString( - av[i] + RTL_CONSTASCII_LENGTH("-wop="), - osl_getThreadTextEncoding()); - break; - } - } - default: - { - OString tmp( "unknown option " ); - tmp += av[i]; - throw IllegalArgument( tmp ); - } - } - } else - { - if (av[i][0] == '@') - { - FILE* cmdFile = fopen(av[i]+1, "r"); - if( cmdFile == NULL ) - { - usingRegisterImpl(); - ret = sal_False; - } else - { - fseek( cmdFile , 0 , SEEK_END ); - sal_Int32 nLen = ftell( cmdFile); - fseek( cmdFile, 0, SEEK_SET ); - - // 2 chars per string is a upper limit for the number of - // substrings ( at least one separator char needed for fscanf). - char ** rargv = (char **)rtl_allocateMemory( nLen * sizeof( char* ) /2); - if( ! rargv ) - { - OStringBuffer buf; - buf.append( "Not enough memory for reading command file " ); - buf.append( av[i] +1 ); - buf.append( " with length " ); - buf.append( nLen ); - buf.append( "." ); - throw IllegalArgument( buf.makeStringAndClear() ); - } - char *buffer = ( char * )rtl_allocateMemory( nLen +1 ); - if( ! buffer ) - { - OStringBuffer buf; - buf.append( "Not enough memory for reading command file " ); - buf.append( av[i] +1 ); - buf.append( " with length " ); - buf.append( nLen ); - buf.append( "." ); - throw IllegalArgument( buf.makeStringAndClear() ); - } - - // we start at one to omit argv[0] - sal_Int32 rargc = 1; - rargv[0] = av[0]; - while ( fscanf(cmdFile, "%s", buffer) != EOF ) - { - rargv[rargc]= (char * )rtl_allocateMemory( strlen( buffer ) +1 ); - if( ! rargv[rargc] ) - { - OStringBuffer buf; - buf.append( "Not enough memory for reading command file " ); - buf.append( av[i] +1 ); - buf.append( " with length " ); - buf.append( nLen ); - buf.append( "." ); - throw IllegalArgument( buf.makeStringAndClear() ); - } - strcpy( rargv[rargc] , buffer ); // #100211# - checked - rargc++; - } - fclose(cmdFile); - - parseOptions(rargc, rargv, rOptions, bCmdFile); - - for (long j=1; j < rargc; j++) - { - rtl_freeMemory(rargv[j]); - } - rtl_freeMemory( buffer ); - rtl_freeMemory( rargv ); - } - } else - { - usingRegisterImpl(); - ret = sal_False; - } - } - } - - if( ! bLoaderExplicitlyGiven ) - { - if ( rOptions.sComponentUrls.getLength() > 4 && - rOptions.sComponentUrls.matchAsciiL( - ".jar" , 4 , rOptions.sComponentUrls.getLength() - 4 ) ) - { - if( ! rOptions.bSilent ) - { - printf( "using loader com.sun.star.loader.Java2\n" ); - } - rOptions.sLoaderName = OUString( - RTL_CONSTASCII_USTRINGPARAM("com.sun.star.loader.Java2")); - } - else - { - rOptions.sLoaderName = OUString( - RTL_CONSTASCII_USTRINGPARAM("com.sun.star.loader.SharedLibrary") ); - } - } - - return ret; -} - - -struct DoIt -{ - sal_Bool _bRegister; - sal_Bool _bRevoke; - sal_Bool _bSilent; - sal_Bool _bPrefix; - OUString _sPrefix; - OString _sRegName; - OUString _sLoaderName; - Reference<XImplementationRegistration2> _xImplRegistration; - Reference<XSimpleRegistry> _xReg; - sal_uInt32 * _exitCode; - - DoIt(sal_Bool bRegister, - sal_Bool bRevoke, - sal_Bool bSilent, - sal_Bool bPrefix, - const OUString & sPrefix, - const Reference<XSimpleRegistry> & xReg, - const OString & sRegName, - const Reference<XImplementationRegistration2> & xImplRegistration, - const OUString & sLoaderName, - sal_uInt32 * exitCode) - throw(); - - void operator()(const OUString & url) throw(); -}; - -DoIt::DoIt(sal_Bool bRegister, - sal_Bool bRevoke, - sal_Bool bSilent, - sal_Bool bPrefix, - const OUString & sPrefix, - const Reference<XSimpleRegistry> & xReg, - const OString & sRegName, - const Reference<XImplementationRegistration2> & xImplRegistration, - const OUString & sLoaderName, - sal_uInt32 * exitCode) throw() - : _bRegister(bRegister), - _bRevoke(bRevoke), - _bSilent( bSilent ), - _bPrefix( bPrefix ), - _sPrefix( sPrefix ), - _sRegName(sRegName), - _sLoaderName(sLoaderName), - _xImplRegistration(xImplRegistration), - _xReg(xReg), - _exitCode(exitCode) -{} - -void DoIt::operator() (const OUString & url) throw() -{ - OString sUrl = OUStringToOString(url, osl_getThreadTextEncoding()); - - if (_bRegister) - { - try - { - Reference<XImplementationRegistration2> _xImplRegistration2(_xImplRegistration, UNO_QUERY); - if ( _bPrefix ) { - _xImplRegistration->registerImplementationWithLocation( - _sLoaderName, url, replacePrefix(url, _sPrefix), _xReg); - } else { - _xImplRegistration->registerImplementation(_sLoaderName, url, _xReg); - } - - if ( ! _bSilent ) - { - fprintf(stderr, "register component '%s' in registry '%s' successful!\n", sUrl.getStr(), _sRegName.getStr()); - } - - } - catch(CannotRegisterImplementationException & cannotRegisterImplementationException) { - OString aMessage(OUStringToOString(cannotRegisterImplementationException.Message, RTL_TEXTENCODING_ASCII_US)); - fprintf(stderr, "register component '%s' in registry '%s' failed!\n", sUrl.getStr(), _sRegName.getStr()); - fprintf(stderr, "error (CannotRegisterImplementationException): %s\n", aMessage.getStr()); - - ++ (*_exitCode); - } - catch( RuntimeException & e ) - { - OString aMessage(OUStringToOString(e.Message, RTL_TEXTENCODING_ASCII_US)); - fprintf(stderr, "register component '%s' in registry '%s' failed!\n", sUrl.getStr(), _sRegName.getStr()); - fprintf(stderr, "error (RuntimeException): %s\n", aMessage.getStr()); - - ++ (*_exitCode); - } - } - else if(_bRevoke) - { - try - { - sal_Bool bRet = _xImplRegistration->revokeImplementation(url, _xReg); - - if (bRet) - { - if ( ! _bSilent ) - fprintf(stderr, "revoke component '%s' from registry '%s' successful!\n", sUrl.getStr(), _sRegName.getStr()); - } - else - { - fprintf(stderr, "revoke component '%s' from registry '%s' failed!\n", sUrl.getStr(), _sRegName.getStr()); - ++ (*_exitCode); - } - } - catch( RuntimeException & e ) - { - OString aMessage(OUStringToOString(e.Message, RTL_TEXTENCODING_ASCII_US)); - fprintf( stderr, - "revoke component '%s' from registry '%s' failed!\n", - sUrl.getStr(), - _sRegName.getStr() ); - fprintf( stderr, "RuntimeException: %s\n" , aMessage.getStr()); - ++ (*_exitCode); - } - } -} - -static bool hasService( - const Reference< XMultiServiceFactory > &xSMgr, - const sal_Char * service ) -{ - bool ret = false; - - Reference< XContentEnumerationAccess > access( xSMgr, UNO_QUERY ); - if( access.is( )) - { - Reference< XEnumeration > enumeration = access->createContentEnumeration( - OUString::createFromAscii( service ) ); - - if( enumeration.is() && enumeration->hasMoreElements() ) - { - ret = true; - } - } - return ret; -} - -static void bootstrap( - Options & opt , - Reference< XMultiServiceFactory > &xSMgr, - Reference< XSimpleRegistry > & reg ) throw ( Exception ) -{ - if( opt.sRegName.equals( opt.sBootRegName2 ) ) - { - OUString tmp2 = opt.sBootRegName; - opt.sBootRegName = opt.sBootRegName2; - opt.sBootRegName2 = tmp2; - } - - if ( opt.sRegName.equals(opt.sBootRegName) ) - { - if( !opt.sBootRegName2.isEmpty() ) - { - xSMgr = createRegistryServiceFactory( - convertToFileUrl(opt.sRegName), - convertToFileUrl(opt.sBootRegName2), - sal_False ); - } - else - { - xSMgr = createRegistryServiceFactory( - convertToFileUrl(opt.sRegName) , sal_False ); - } - } - else - { - if( !opt.sBootRegName2.isEmpty() ) - { - xSMgr = createRegistryServiceFactory( - convertToFileUrl( opt.sBootRegName2 ), - convertToFileUrl( opt.sBootRegName ), - sal_True ); - } - else if ( !opt.sBootRegName.isEmpty() ) - { - xSMgr = createRegistryServiceFactory( - convertToFileUrl( opt.sBootRegName ), - sal_True ); - } - else - { - xSMgr = createServiceFactory(); - } - reg = Reference< XSimpleRegistry >( - xSMgr->createInstance( - rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.registry.SimpleRegistry"))), UNO_QUERY); - - if (reg.is()) - { - try - { - reg->open( convertToFileUrl(opt.sRegName), sal_False, sal_True); - if (!reg->isValid()) - { - fprintf(stderr, "ERROR: open|create registry '%s' failed!\n", - OUStringToOString(opt.sRegName, osl_getThreadTextEncoding() ).getStr()); - exit(1); - } - } - catch( InvalidRegistryException & e) - { - OString o = OUStringToOString( e.Message , RTL_TEXTENCODING_ASCII_US ); - fprintf(stderr, - "ERROR: create registry '%s' failed!\n" - "InvalidRegistryException: %s\n", - OUStringToOString( opt.sRegName, osl_getThreadTextEncoding()).getStr(), - o.getStr() ); - exit(1); - } - } - } - - if( ! opt.sLoaderName.compareToAscii( "com.sun.star.loader.Java2" ) && - ! hasService( xSMgr, "com.sun.star.loader.Java2" ) ) - { - // we know our java loader, so we check, whether a java-loader is - // registered - Reference< XInterface > r = loadSharedLibComponentFactory( - OUString(RTL_CONSTASCII_USTRINGPARAM("javavm.uno" SAL_DLLEXTENSION)), - OUString(), - OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.stoc.JavaVirtualMachine")), - xSMgr, - Reference< XRegistryKey > (), - "javavm" ); - Reference< XInterface > r2 = loadSharedLibComponentFactory( - OUString(RTL_CONSTASCII_USTRINGPARAM("javaloader.uno" SAL_DLLEXTENSION)), - OUString(), - OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.stoc.JavaComponentLoader")), - xSMgr, - Reference< XRegistryKey > (), - "javaloader" ); - Reference <XSet> xSet( xSMgr, UNO_QUERY ); - if( r.is() && r2.is() && xSet.is() ) - { - xSet->insert( makeAny( r ) ); - xSet->insert( makeAny( r2 ) ); - } - } -} - -SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv) -{ - sal_Bool bRet = sal_False; - sal_uInt32 exitCode = 0; - Options aOptions; - - try - { - if ( !parseOptions(argc, argv, aOptions, sal_False) ) - { - exit(1); - } - } - catch ( IllegalArgument& e) - { - fprintf(stderr, "ERROR: %s\n", e.m_message.getStr()); - exit(1); - } - - if( aOptions.sRegName.isEmpty() ) - { - fprintf( stderr, "ERROR: target registry missing (-r option)\n" ); - exit( 1 ); - } - if ( aOptions.sComponentUrls.isEmpty() ) - { - fprintf(stderr, "ERROR: no component url is specified!\n"); - exit(1); - } - - Reference< XMultiServiceFactory > xSMgr; - Reference< XSimpleRegistry > xReg; - try - { - bootstrap( aOptions, xSMgr ,xReg ); - } - catch( Exception& e ) - { - fprintf(stderr, "ERROR: create ServiceManager failed!\n"); - if ( !e.Message.isEmpty() ) - { - fprintf(stderr, "ERROR description: %s\n", - OUStringToOString(e.Message, osl_getThreadTextEncoding()).getStr()); - } - exit(1); - } - - Reference<XImplementationRegistration2> xImplRegistration( - xSMgr->createInstance( - OUString(RTL_CONSTASCII_USTRINGPARAM( - "com.sun.star.registry.ImplementationRegistration"))), - UNO_QUERY); - - if (xImplRegistration.is()) - { - sal_Int32 index = 0; - vector<OUString> urls; - - OUString urlListWithSemikolon = aOptions.sComponentUrls; - do { - OUString aToken = urlListWithSemikolon.getToken( 0, ';', index); - fprintf(stderr, "%s\n", OUStringToOString(aToken, osl_getThreadTextEncoding()).getStr()); - urls.push_back(aToken); - } while ( index >= 0 ); - - - OString sRegName = OUStringToOString( aOptions.sRegName, osl_getThreadTextEncoding() ); - if(aOptions.bRegister || aOptions.bRevoke) - { - for_each(urls.begin(), urls.end(), - DoIt(aOptions.bRegister, aOptions.bRevoke, aOptions.bSilent, - aOptions.bPrefix, aOptions.sPrefix, - xReg, sRegName, xImplRegistration, - aOptions.sLoaderName, &exitCode)); - } - else - { - ++ exitCode; - usingRegisterImpl(); - } - } - else - { - fprintf(stderr, "Component registration service could not be loaded!\n"); - exitCode++; - } - - if (!bRet && xReg.is() && xReg->isValid()) - xReg->close(); - - Reference< XComponent > xComponent( xSMgr, UNO_QUERY ); - if ( xComponent.is() ) - xComponent->dispose(); - - return exitCode; -} - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/odk/docs/tools.html b/odk/docs/tools.html index ba5051abb6af..173b116cc15b 100644 --- a/odk/docs/tools.html +++ b/odk/docs/tools.html @@ -117,11 +117,6 @@ </tr> <tr valign="top"> <td class="content3"><img src="images/arrow-1.gif"></td> - <td><a href="#regcomp" title="link to the regcomp tool description">regcomp</a></td> - <td class="content87">A simple UNO component registration tool.</td> - </tr> - <tr valign="top"> - <td class="content3"><img src="images/arrow-1.gif"></td> <td><a href="#regmerge" title="link to the regmerge tool description">regmerge</a></td> <td class="content87">Tool to merge several registry (e.g. type libraries) files into one file.</td> @@ -829,69 +824,6 @@ types the specified types depend on.</p> <td> <table class="table2"> <tr> - <td colspan="2" class="head1"><a name="regcomp"/>regcomp</td> - <td align="right"> - <a href="#tools" title="link to the tools overview"><img class="navigate" src="images/nav_up.png"></a> - <a href="../index.html" title="link to the SDK start page"><img class="navigate" src="images/nav_home.png"></a> - </td> - </tr> - <tr> - <td colspan="3"> - <p>'regcomp' is a tool to register|revoke external UNO components - into|from a registry which is used in a UNO environment.</p> - <p class="head2">Usage:</p> - <blockquote> - <b><code>regcomp -revoke [-br<registryfile>] -r <registryfile> -c <locationUrl>[-l<componentLoaderName>]</code></b> - </blockquote> - <p class="head2">Options:</p> - <p> - <table class="table4"> - <tr> - <td class="cell15"><code>-register|revoke</code></td> - <td class="cell85">register means that the components will be - installed and revoke means that they will be removed.</td> - </tr> - <tr> - <td class="cell15"><code>-br<registryfile></code></td> - <td class="cell85">the name of the registry used for bootstrapping - the program. If the bootstrap registry is specified and has the same - name as the registration registry, '-r' is optional.</td> - </tr> - <tr> - <td class="cell15"><code>-r<registryfile></code></td> - <td class="cell85">the name of the registry (will be created if - it does not exist) where the component should be registered.</td> - </tr> - <tr> - <td class="cell15"><code>-c<locationUrls></code></td> - <td class="cell85">the location of a component (DLL, Class name, - or an url of a jar file) or a list of urls separated by ';'s. Note - that, if a list of urls is specified, the components must all need - the same loader.</td> - </tr> - <tr> - <td class="cell15"><code>-l<componentLoaderName></code></td> - <td class="cell85">the name of the needed loader, if no loader is - specified the 'com.sun.star.loader.SharedLibrary' is used. Supported - loaders: 'com.sun.star.loader.SharedLibrary' | - 'com.sun.star.loader.Java'.</td> - </tr> - </table> - </p> - </td> - </tr> - </table> - </td> - <td class="content1"><img class="nothing8" src="images/nada.gif"></td> - </tr> - <tr> - <td colspan="3"><img class="line" src="images/sdk_line-1.gif"></td> - </tr> - <tr> - <td class="content1"><img class="nothing8" src="images/nada.gif"></td> - <td> - <table class="table2"> - <tr> <td colspan="2" class="head1"><a name="regmerge"/>regmerge</td> <td align="right"> <a href="#tools" title="link to the tools overview"><img class="navigate" src="images/nav_up.png"></a> diff --git a/odk/settings/std.mk b/odk/settings/std.mk index 31c952178296..1b260b39df6a 100644 --- a/odk/settings/std.mk +++ b/odk/settings/std.mk @@ -67,7 +67,6 @@ IDLC="$(OO_SDK_HOME)/bin/idlc" CPPUMAKER="$(OO_SDK_HOME)/bin/cppumaker" JAVAMAKER="$(OO_SDK_HOME)/bin/javamaker" REGMERGE="$(OO_SDK_URE_HOME)/bin/regmerge" -REGCOMP="$(OO_SDK_URE_HOME)/bin/regcomp" SDK_JAVA_UNO_BOOTSTRAP_FILES=\ -C $(CLASSES_DIR) $(SQM)com/sun/star/lib/loader/Loader.class$(SQM) \ diff --git a/odk/util/odk_rules.pmk b/odk/util/odk_rules.pmk index 9b84e16195f6..bd819425e66b 100644 --- a/odk/util/odk_rules.pmk +++ b/odk/util/odk_rules.pmk @@ -89,10 +89,6 @@ $(DESTDIRBIN)/%.bin : $(BINOUT)/%.bin @@-rm -f $@ $(GNUCOPY) $(BINOUT)/$(@:f) $@ -$(DESTDIRBIN)/regcomp : $(BINOUT)/regcomp - @@-rm -f $@ - $(MY_TEXTCOPY) $< $@ - $(DESTDIRBIN)/unoapploader$(EXEPOSTFIX) : $(BIN)/unoapploader$(EXEPOSTFIX) @@-rm -f $@ $(GNUCOPY) $(BIN)/$(@:f) $@ diff --git a/scp2/source/ooo/ure.scp b/scp2/source/ooo/ure.scp index 50c42b2a720c..ea409f373e79 100755 --- a/scp2/source/ooo/ure.scp +++ b/scp2/source/ooo/ure.scp @@ -91,25 +91,6 @@ Shortcut gid_Shortcut_Exe_Uno End #endif -#if defined WNT -File gid_File_Exe_Regcomp - BIN_FILE_BODY; - Dir = gid_Dir_Ure_Bin; - Name = EXENAME(regcomp); - Styles = (PACKED, VERSION_INDEPENDENT_COMP_ID); - // CompID = "D51FA672-7C24-4E24-A282-872C4BF690A1"; -End -#endif - -#ifndef WNT -Shortcut gid_Shortcut_Exe_Regcomp - FileID = gid_File_Exe_StartupSh; - Dir = gid_Dir_Ure_Bin; - Name = EXENAME(regcomp); - Styles = (RELATIVE); -End -#endif - File gid_File_Exe_Regmerge BIN_FILE_BODY; Dir = gid_Dir_Ure_Bin; @@ -158,16 +139,6 @@ File gid_File_Exe_UnoBin End #endif -#if !defined WNT -File gid_File_Exe_RegcompBin - BIN_FILE_BODY; - Dir = gid_Dir_Ure_Bin; - Name = "regcomp.bin"; - Styles = (PACKED, VERSION_INDEPENDENT_COMP_ID); - // CompID = "70FBE546-A228-455F-BCBB-716BF03AD5C6"; -End -#endif - // Public Dynamic Libraries: File gid_File_Dl_Cppu @@ -989,13 +960,11 @@ Module gid_Module_Root_Ure_Hidden gid_File_Readme_Ure, gid_File_License_Ure, gid_File_Exe_Uno, - gid_File_Exe_Regcomp, gid_File_Exe_Regmerge, gid_File_Exe_Regview, gid_File_Exe_Javaldx, gid_File_Exe_StartupSh, gid_File_Exe_UnoBin, - gid_File_Exe_RegcompBin, gid_File_Dl_Cli_Uno, gid_File_Dl_Cli_Ure_Assembly, gid_File_Dl_Policy_Cli_Ure_Assembly, diff --git a/solenv/bin/guw.pl b/solenv/bin/guw.pl index b42310657c06..99bd4a17391f 100644 --- a/solenv/bin/guw.pl +++ b/solenv/bin/guw.pl @@ -41,7 +41,6 @@ use Text::ParseWords; 'MAP', 'NODEFAULTLIB', 'OPT', 'PDB', 'RELEASE', 'SUBSYSTEM', 'STACK', 'out:', 'map:', 'ENTRY:', 'implib:', 'delayload:', 'def', 'COMMENT:' ], - 'regcomp', [ '-env:', 'vnd.sun.star.expand:' , 'vnd.openoffice.pymodule' ], 'regmerge', [ '/UCR' ], 'rc', [ '-D' ], 'rsc', [ '-DOOO_' ] ); diff --git a/solenv/inc/settings.mk b/solenv/inc/settings.mk index dbb513d2e06a..c9bd34499624 100644 --- a/solenv/inc/settings.mk +++ b/solenv/inc/settings.mk @@ -974,11 +974,6 @@ IDLC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/idlc REGMERGE*=$(AUGMENT_LIBRARY_PATH) $(VALGRINDTOOL) $(SOLARBINDIR)/regmerge REGCOMPARE*=$(AUGMENT_LIBRARY_PATH) $(VALGRINDTOOL) $(SOLARBINDIR)/regcompare -.IF "$(DEBUGREGCOMP)" != "" || "$(debugregcomp)" != "" -GDBREGCOMPTRACE=$(GDBTRACE) -.ENDIF - -REGCOMP*=$(AUGMENT_LIBRARY_PATH_LOCAL) $(GDBREGCOMPTRACE) $(SOLARBINDIR)/regcomp CPPUMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cppumaker JAVAMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/javamaker RDBMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/rdbmaker diff --git a/ure/source/README b/ure/source/README index 7d7654d3cd22..04368d7c3b1a 100644 --- a/ure/source/README +++ b/ure/source/README @@ -25,7 +25,6 @@ Linux x86, Solaris x86, and Solaris SPARC: /opt/openoffice.org/ure/THIRDPARTYLICENSEREADME.html /opt/openoffice.org/ure/README /opt/openoffice.org/ure/bin/uno -/opt/openoffice.org/ure/bin/regcomp /opt/openoffice.org/ure/bin/regmerge /opt/openoffice.org/ure/bin/regview /opt/openoffice.org/ure/bin/javaldx @@ -48,7 +47,6 @@ Linux x86, Solaris x86, and Solaris SPARC: /opt/openoffice.org/ure/lib/libstdc++.so.6 [external; Linux x86 only] /opt/openoffice.org/ure/bin/startup.sh [private] /opt/openoffice.org/ure/bin/uno.bin [private] -/opt/openoffice.org/ure/bin/regcomp.bin [private] /opt/openoffice.org/ure/lib/unorc [private] /opt/openoffice.org/ure/lib/libreg.so.3 [private] /opt/openoffice.org/ure/lib/libstore.so.3 [private] @@ -95,7 +93,6 @@ Program Files\URE\LICENSE Program Files\URE\THIRDPARTYLICENSEREADME.html Program Files\URE\README Program Files\URE\bin\uno.exe -Program Files\URE\bin\regcomp.exe Program Files\URE\bin\regmerge.exe Program Files\URE\bin\regview.exe Program Files\URE\bin\cppu3.dll @@ -183,13 +180,13 @@ A URE installation contains the following public files: - uno is the executable file that runs UNO components. For more details, see the SDK Developer's Guide. -- regcomp, regmerge, and regview are tools that work with binary registries that -contain UNO type or UNO service information. For more details, see the SDK -Developer's Guide. +- regmerge and regview are tools that work with binary registries that contain +UNO type or UNO service information. For more details, see the SDK Developer's +Guide. - javaldx is a helper program on Linux x86, Solaris x86, and Solaris SPARC that enables Java executables to use a Java VM, such as the Sun JDK/JRE. Executables -such as uno and regcomp run this helper automatically. +such as uno run this helper automatically. - cppu, cppuhelper, purpenvhelper, sal, and salhelper are the public C++ UNO runtime dynamic libraries that client code can call. For details on the @@ -264,11 +261,6 @@ For details on how to override the UNO deployment variables, see the SDK Developer's Guide or go to http://udk.openoffice.org/common/man/concept/ micro_deployment.html. -If you want to deploy additional UNO types and services, use regcomp. - -CAUTION: Do not deploy these types and services to the types.rdb and -services.rdb in the URE installation. - URE Java Framework ------------------ |