summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xRepository.mk1
-rw-r--r--cpputools/Executable_regcomp.mk44
-rw-r--r--cpputools/Module_cpputools.mk1
-rw-r--r--cpputools/Package_bin.mk1
-rw-r--r--cpputools/source/registercomponent/registercomponent.cxx841
-rw-r--r--odk/docs/tools.html68
-rw-r--r--odk/settings/std.mk1
-rw-r--r--odk/util/odk_rules.pmk4
-rwxr-xr-xscp2/source/ooo/ure.scp31
-rw-r--r--solenv/bin/guw.pl1
-rw-r--r--solenv/inc/settings.mk5
-rw-r--r--ure/source/README16
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&lt;registryfile&gt;] -r &lt;registryfile&gt; -c &lt;locationUrl&gt;[-l&lt;componentLoaderName&gt;]</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&lt;registryfile&gt;</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&lt;registryfile&gt;</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&lt;locationUrls&gt;</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&lt;componentLoaderName&gt;</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
------------------