Commit graph

1068 commits

Author SHA1 Message Date
Tor Lillqvist
d72a0b5c61 Check for __GNUC__ instead of GCC in sources
We still have checks for $(COM) being GCC or MSC in makefiles, of
course. But there is no reason to pass -D$(COM) to compilations.
Checking the built-in compiler-specific macros __GNUC__, _MSC_VER
(etc) is the right thing to do.

Change-Id: Ia961a29ba74e2c4977e5300a92318f38104c6592
2012-12-27 13:38:15 +02:00
Tor Lillqvist
c29098917a Get rid of (most uses of) GUI
GUI only takes values UNX or WNT, so it is fairly pointless. One can check
whether OS is WNT or not instead.

Change-Id: I78ae32c03536a496a563e5deeb0fca78aebf9c34
Reviewed-on: https://gerrit.libreoffice.org/1304
Reviewed-by: Peter Foley <pefoley2@verizon.net>
Tested-by: Peter Foley <pefoley2@verizon.net>
2012-12-25 17:53:25 +00:00
Stephan Bergmann
0373964108 Remove support for XML .rdbs froom SimpleRegistry service again
...this was a transitional hack to get XML-format service.rdbs in.  Now that
registry-based bootstrap_InitialComponentContext is gone, XML-format .rdbs need
only be handled in cppuhelper/source/defaultbootstrap.cxx (so the
textualservices stuff once duplicated to there now effectively moved there).

Change-Id: Ifb93558768095c1b462fe4057ebf8724968cca77
2012-12-21 15:56:45 +01:00
Stephan Bergmann
f3051abde5 API CHANGE: Remove deprecated cppuhelper/servicefactory.hxx and Java equiv.
... com.sun.star.comp.helper.RegistryServiceFactory (juh.jar).  Superseded by
default bootstrap mechanisms.

An aborting stub for non-inline cppu::createRegistryServiceFactory is left in
cppuhelper/srouce/compat.cxx to avoid having to incompatibly change
cppuhelper/soruce/gcc3.map.

Change-Id: I590e50b8f57e86d4bb3e00d157c9e5907c02f267
2012-12-21 15:56:44 +01:00
Stephan Bergmann
b1a4afa3b4 Always have UNO_SERVICES/TYPES set in in-build uno ini file
...so that 16f856a5ca "Adapt climaker to
cppu::bootstrap_InitialComponentContext removal" does not fail.  Starting uno
processes from within the build should thus use URE_MORE_SERVICES/TYPES now,
too.

Change-Id: I0a7cfacc804814a2688e54275ebc3e39540d307c
2012-12-20 14:58:13 +01:00
Stephan Bergmann
e3982fc537 API CHANGE: Remove deprecated cppuhelper/bootstrap.hxx functionality
cppu::createSimpleRegistry, cppu::createNestedRegistry, and
cppu::bootstrap_InitialComponentContext for registry-based type/service
information, superseded by cppu::defaultBootstrap_InitialComponentContext.

Aborting stubs for the three functions are left in cppuhelper/source/compat.cxx
to avoid having to incompatibly change cppuhelper/source/gcc3.map.

Change-Id: I8e714c021c246b15a6e6fb7f25d754dceff17c8a
2012-12-20 10:02:38 +01:00
Michael Meeks
c8a733079f cppuhelper: add compatible symbol for obsolete method. 2012-12-06 09:48:49 +00:00
Michael Meeks
9d7c1dcbbb re-base on ALv2 code. Includes:
Patches contributed by Ocke Janssen
   converted reportdesign.
   http://svn.apache.org/viewvc?view=revision&revision=1396797
   http://svn.apache.org/viewvc?view=revision&revision=1394326

   Patch contributed by Oliver Rainer-Wittmann
   sw34bf06: #i117783# - Writer's implementation of XPagePrintable -
   apply print settings to new printing routines
   http://svn.apache.org/viewvc?view=revision&revision=1172115
2012-12-06 09:12:57 +00:00
Michael Meeks
c95f6b679a remove obsolete stdidlclass. 2012-12-06 09:12:57 +00:00
Luboš Luňák
ce90f99a2d fixes for where fast string operator+ is not perfectly source compatible
Change-Id: I80af0399037e4f68113338139e7f2ad2400e65ab
2012-12-03 18:04:24 +01:00
Thorsten Behrens
66a175834c c++ API: use css alias in generated headers, adds global css decl
This changes all generated API headers (.hpp and .hdl) to use a
namespace alias 'css' instead of the pointlessly long com::sun::star

Makes the change in cppumaker & associated tools, adds a global
namespace alias definition in sal/types.h, and removes a kiloton
of local, now pointless-to-harmful versions of that alias from all
over the code.

Change-Id: Ice5a644a6b971a981f01dc0589d48f5add31cc0f
2012-11-30 14:36:36 +01:00
Lionel Elie Mamane
a28b4c1e3e Do not override the message of an underlying PropertyVetoException
Change-Id: I9c1026ad87f3031f1c56066ab24d23d3a6d8782b
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2012-11-30 11:24:43 +01:00
Lionel Elie Mamane
8a5fddc656 Enhance error message when setting a CONSTRAINED property to Vetoed value
Change-Id: I8391c874723bddaabe2fde12f22d9f50a444d3df
2012-11-29 21:41:21 +01:00
Stephan Bergmann
44ea5d1414 Adding SAL_DEPRECATED_INTERNAL to an implementation function is pointless
...as there are typically no direct calls to it anyway.  What is apparently
needed is to decorate the cppumaker-generated headers instead:

* cppumaker obtains deprecation-information from the documentation strings in
  .rdb files.  As these are normally generated by idlc without documentation
  included (no -C), idlc got changed to nevertheless contain documentation
  consisting of just "@deprecated" in this case, to allow to easily tunnel this
  information to cppumaker always.

* The mechanism of parsing for "@deprecated" in documentation strings is
  somewhat crude, of course.

* For now, cppumaker only decorates C++ functions that correspond to UNOIDL
  interface attributes and methods.  More should be possible (but, e.g., being
  able to decorate a complete C++ class corresponding to a deprecated UNOIDL
  interface type depends on whether all platforms would accept
  SAL_DEPRECATED_INTERNAL at the same position in a C++ class declaration.

* This could also be extended to other languages than C++/cppumaker.

* Always using SAL_DEPRECATED_INERNAL instead of SAL_DEPRECATED for decoration
  is to keep things simple and our codebase working.  Improvements are possible
  here, too, of course.

Change-Id: Ia2917892f780d477652e4cd9f286588a6898c3f5
2012-11-23 14:04:51 +01:00
Michael Meeks
c90f5c6651 create SAL_DEPRECATED_INTERNAL for annotating API
It flags methods that we don't want used externally, but havn't
finished removing internally.

Change-Id: I818ee0ea2bf5294be816256a0e7f1868f26806b8
2012-11-22 12:13:21 +00:00
Michael Stahl
079485a648 sal, cppuhelper, udkapi, offapi: s/@since 3.7/@since 4.0/
Change-Id: Iefbe31af8d6ec421c6006423b6ee3a6375e3d453
2012-11-20 21:44:16 +01:00
Tor Lillqvist
faef84abca Do stay backward-compatible also in 4.0 and later for now
Change-Id: Ie8f2de8f11f8fec3a9f014bbcc46a506dfb3058d
2012-11-12 16:37:21 +02:00
Michael Stahl
823bd50429 cppuhelper: remove obsolete comment 2012-10-13 22:27:58 +02:00
Tor Lillqvist
d1006596f2 Update library names for DISABLE_DYNLOADING
Change-Id: I2b5e4abdceea25180c9caafabc49c22077016a05
2012-10-11 10:07:08 +03:00
Tor Lillqvist
97f27e2cda Include android-bootstrap.h for Android
Change-Id: I022f7d450f66e1ff0fb4e4aedfebc16b83ad32b9
2012-10-11 10:07:04 +03:00
David Tardon
76987f83c8 replace findsofficepath.obj by static lib
Change-Id: I652ac46aec72a92667995353efa637f0a2310672
2012-10-10 17:26:54 +02:00
Tor Lillqvist
3c4c117008 I want to see what unknown library is required always
Change-Id: I7e0eb7ba3be8ac2b70e6a56d84c1a890be0ba396
2012-10-09 11:41:31 +03:00
Peter Foley
8ae194caf7 fix mergedlib on windows
Change-Id: I30ee99fe2a2e92c69ebfcef9af5ff1bb27ec114b
2012-10-07 10:42:23 +02:00
Tor Lillqvist
97593ae24a Handle lack of module loading/unloading API when DISABLE_DYNLOADING
There are basicically two classes of cases:

1) Where the code is for obscure historical reasons or what I see as
misguided "optimization" split into a more libraries than necessary,
and these then are loaded at run-time. Instead, just use direct
linking.

2) Where dynamic loading is part of the functionality offered to some
upper (scripting etc) layer, or where some system-specific non-LO
library is loaded dynamically, as it is not necessarily present on
end-user machines. Can't have such in the DISABLE_DYNLOADING case.

Change-Id: I9eceac5fb635245def2f4f3320821447bb7cd8c0
2012-10-07 07:59:15 +03:00
Stephan Bergmann
eff6d4e01b Version name/dependency cleanup towards 3.7
Change-Id: Ib5da7703bf48713093bc6a3380facafd0013e039
2012-10-04 11:33:43 +02:00
Tor Lillqvist
0c1553a86e Disable-dynloading updates to component list
Change-Id: Idf092958e46a2ad9d56541c90c5a2beb44baff48
2012-10-04 07:23:25 +03:00
Michael Stahl
5032dc0fc3 gbuild: invert handling of standard system libraries:
Always link in gb_STDLIBS, except when the library explicitly opts out
with gb_LinkTarget_disable_standard_system_libs.

Change-Id: I489a99114fbfa46d0421a27cf6c7b899dc268a4a
2012-09-28 16:49:08 +02:00
Michael Stahl
b85c349783 gbuild: replace direct gb_STDLIBS use with ...
... new gb_LinkTarget_add_standard_system_libs

Change-Id: Ib2bc843098db3d8c6822b45a3d21724e67f57d69
2012-09-28 16:49:06 +02:00
Michael Stahl
2e677c3981 gbuild: split uwinapi out of gb_STDLIBS
Change-Id: I53316e0b9369d806197bccb42cf22d3497af43e7
2012-09-28 16:49:05 +02:00
David Tardon
c29ed576e2 dependency on makefile needs full path
Change-Id: I0733abb5c736ab393259fd6a005a89b887304f10
2012-09-22 08:15:35 +02:00
Stephan Bergmann
d2092dc56b Keep null service manager throw a DeploymentException
...rather than a general RuntimeException, for consistency with existing service
ctor code.

Change-Id: Ia9ac14a1b5bcecb24394e7b9cade369f3f9303f0
2012-09-17 19:12:34 +02:00
Stephan Bergmann
543158edba Require XComponentContext.getServiceManager to throw instead of returning null
This is such a fatal error that there is probably no point in trying to handle
it, so allow to simplify client code by removing the requirement to check for a
null return value.

Simplified some client code accordingly (modules configmgr and ure, and the code
generated by cppumaker and javamaker).

Change-Id: I51c0b270ec73409374f7439a47ee061407a46e31
2012-09-17 16:59:53 +02:00
Norbert Thiebaud
195f17ee40 migrate some of the biggest consumer of osl_*InterlockedCount to osl_atomic
Change-Id: I0e6992afbeffaf3b993e6630fb396d93012890e0
Reviewed-on: https://gerrit.libreoffice.org/632
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
2012-09-17 14:26:12 +00:00
Stephan Bergmann
2171077c0c Introduce cppu::supportsService helper, adapt some call-sites
...more to follow (easy hack?)

Change-Id: Icb02626495701a3905c124c7368b98c3258e91b2
2012-09-14 19:32:30 +02:00
Stephan Bergmann
35d474ff8c Fix removeRdbFiles (caused extension update to fail)
removeRdbFiles suffered from a confusion that ImplementationInfo.uri denotes the
corresponding component (.so, .jar, etc.), but not the .rdb file.  So removing
an .rdb file silently failed to remove the corresponding implementations, so re-
installing a similar enough .rdb (as typically happens during extension update)
would fail due to duplicate implementation names.

Change-Id: I25d4ff72656c99a3af509eef09e89c18cfd0aabe
2012-08-24 17:18:28 +02:00
Stephan Bergmann
8caf1164ee Missing mutex lock
Change-Id: Ifddd6131c2e62057561d4b17eeda88568f6ccf7c
2012-08-10 14:35:04 +02:00
Stephan Bergmann
142d3ec875 Related fdo#52639: Do not destroy Implementations with mutex locked
Erasing from data_ member maps can destroy contained Implementations, which in
turn releases the UNO objects referenced from there, which in turn can cause
XComponents to dispose, which in turn can call arbitrary code, so must not be
done with rMutex locked.  Witness the backtrace at
<https://bugs.freedesktop.org/attachment.cgi?id=65142> linked from fdo#52639
(where this fix appears otherwise unrelated to that issue's main topic).

Change-Id: If55a3841b761ec1d9a0ef61fe54784426c4ee442
2012-08-09 17:44:14 +02:00
Stephan Bergmann
9fc870fc33 ServiceManager::createInstanceWithContext needs to honor given Context
...in loadImplementation (instead of using the context the ServiceManager itself
was created with).  Otherwise, the handcrafted context containing a fake
theJavaVirtualMachine singleton in install_vm_singleton
(javaunohelper/source/vm.cxx) would not be honored, so that if a Java process
bootstraps native (binary) UNO and from there tries to obtain that singleton, it
would erroneously try to instantiate another JVM instead of using the existing
one.  This was a regression introduced with the new ServiceManager and could be
witnessed by test-javanative in ure/source/uretest/Makefile failing.

Change-Id: I58cfbc8cdaea7ee4ab80fac728ea3e85676d69e1
2012-08-08 18:36:40 +02:00
Thomas Arnhold
adc49a81e9 remove empty ascii boxes and stuff
Change-Id: Ied91b5b298f0cfad0d3408c3cbb87c7bd1b83247
2012-08-07 18:08:29 +02:00
Tor Lillqvist
60cfa64345 Bin no longer used iOS cppunit stuff that even breaks the build
Change-Id: I459f7fd097a81ef5977974f52b0cc2c2f155a810
2012-08-02 19:16:53 +03:00
Stephan Bergmann
1715093a08 More: echo -e is not POSIX (and unknown to Mac OS X)
Change-Id: I8fdfbebd9fd4bf19b57ec83689116c6fc77227e6
2012-07-16 20:46:14 +02:00
Luboš Luňák
437dc53849 forgot to rename cppu -> cppuhelper from the template
Change-Id: I6a2ba2213d59ba73f7f170f40c7607f6ad23a0f4
2012-07-16 18:01:11 +02:00
Luboš Luňák
6080259862 allow using rtl::OUString etc. simply as OUString, without rtl::
http://lists.freedesktop.org/archives/libreoffice/2012-April/029940.html

The RTL_USING #define (set by gbuild for anything that's not public
API) allows to use such classes simply by their name, without having
to use the namespace or do explicit using rtl::OUString (which half
of the sources do anyway).

Change-Id: I7edaf12cd278489cdc1d5ff782f0a86361c13c0a
2012-07-16 16:03:03 +02:00
Christophe JAILLET
df645a2bd8 There is not need to allocate memory just for getting the 'indexOf'
a literal within a OUString.

Change-Id: I01ca30c68228f81b3d313dfca5b975448f3c4fc7
2012-07-16 11:33:05 +01:00
Michael Meeks
098be920e0 remove obsolete hooks for proprietary Sun single-sign-on config page
Change-Id: Ia6c0fbd33a4293ba863b4179f03f78ded413040a
2012-07-16 10:21:36 +01:00
Thomas Arnhold
1340890ccd simplify include guards
Change-Id: Id4210229b20a1d54b680ff1a2ccbcdd3684ecf5f
2012-07-14 05:44:15 +02:00
Christophe JAILLET
0cba5e5d25 This look like the same as rLibName.endsWithIgnoreAsciiCase so kill it. Add missing { }
Untested as I don't have a working build environment yet.

Change-Id: I1988da8c07729eb99d3f53f71b8f950df29a7361
2012-07-13 16:36:04 +02:00
Stephan Bergmann
2e7702fb70 fdo#51143 Do not wrap CannotActivateFactoryException as DeploymentException
...as some client code catches just the former and thus fails now.  (This was a
regression introduced with the recent cppuhelper/source/defaultbootstrap.cxx.)

Change-Id: I8306797f8331d894ab4e7695478e3824e9f79197
2012-07-13 12:12:41 +02:00
Michael Meeks
2005a34318 re-base on ALv2 code. 2012-06-29 15:51:49 +01:00
Michael Meeks
328e2263fb targetted re-work of cppunit pieces. 2012-06-27 19:13:11 +01:00