Commit Graph

36 Commits

Author SHA1 Message Date
f4ea3fd5c1 use #if to avoid gotchas, move header to include, make UI conditional. 2013-06-27 19:34:38 +01:00
c17f01753c ...and similarly for __cxa_allocate_exception and __cxa_throw
Change-Id: I87ae299aac97180f0587c553d85b051decca155c
2013-06-20 15:59:09 +02:00
5ba3d1740b Clean up declaration of __cxa_get_globals
At least Clang trunk towards 3.4 now rejects incompatible declarations of the
same extern "C" function in different namespaces, so that trick of getting at
the function that is exported by libstdc++ but only rudimentarily if at all
exposed in cxxabi.h no longer worked.

TODO: This change should be reflected in any other bridges where it is relevant,
too.

Change-Id: Ie3ccbdb7d75cc98636d02c0435958532620724f2
2013-06-20 14:02:48 +02:00
d7ae9f7743 rename HAVE_CXX0X->HAVE_CXX11 and clean up to #define in a config header
Change-Id: Id13e77fe890301a8510952994a91853568a7aea6
2013-06-13 20:08:16 +02:00
c32c11fbd4 MPLv2 subset improvements. 2013-06-04 17:45:42 +01:00
8659ca5c35 fdo#64311 - don't encourage the fpicker to give us URLs we can't handle.
Change-Id: Ide7d833801e96a3375909238d036687082f34605
2013-05-11 17:36:58 +01:00
1ad700f5a4 Minor improvements to UNOIDL binary format
Change-Id: Ia215b34842ce85bfbd1ad90a286abcbae0884bd5
2013-05-08 17:30:53 +02:00
bff8fa97e1 Enable HarfBuzz by default
HarfBuzz integration should be functional now, so to give it more wider
testing it is made now a required dependency on non-Windows non-Mac OSs.
By default text layout is now done by HarfBuzz but ICU LayoutEngine is
kept as a fallback and can be enabled with SAL_USE_ICULE env variable.

After 4.1.x is branched, ICU LayoutEngine should be removed completely.

Change-Id: I4fe3beeaf6092f33dd436906c11b83aeafdfbd5d
2013-05-06 17:22:31 +02:00
7de37ac7d6 Add --enable-desktop-gui-elements to show such even on non-DESKTOP platforms
Not my idea.

Change-Id: If4874d97a2035588cd65ded9f281de0c3598b7d7
2013-05-02 20:19:15 +03:00
cb33ae88e0 extend license filtering, and add fallback-checks.
Change-Id: Ia1ec3564326cf898d756c231a64a54db8698bf20
2013-04-24 16:21:40 +01:00
7e389f4def Add HarfBuzz support to the build system
To be used in the next commit.

Change-Id: I6ee286d0c050a5ca650e7fb3692b0facccb5f0c0
Reviewed-on: https://gerrit.libreoffice.org/3517
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
2013-04-23 08:00:14 +00:00
4be242ce6b Allow selecting the tls backend to use in oox from configure
Change-Id: Ie82afb1f22caa0b02ddac256e2a0c2a49f19bb15
Reviewed-on: https://gerrit.libreoffice.org/3173
Reviewed-by: Miklos Vajna <vmiklos@suse.cz>
Tested-by: Miklos Vajna <vmiklos@suse.cz>
2013-04-10 08:36:51 +00:00
cdd1de0854 Check for the C++11 "final" specifier and introduce SAL_FINAL
I think it is useful to use SAL_FINAL mainly as a documentation aid,
to make it clear to a code reader when a class is not expected to be
derived from, and when a virtual function is not expected to be
overridden in a derived class.

Possibly there is also some class of bugs that using SAL_FINAL will
help find?

Change-Id: I45002f020dcb52e8a9f2962ff98780f2b80627af
2013-04-08 11:46:10 +03:00
598d3228cd remove HAVE_SFINAE_ANONYMOUS_BROKEN
Since we no longer support the old Apple SDK using gcc-4.0.1, we can
remove the cruft to work around its problems. Woohoo.

Change-Id: Idf275e76449443f1f0314e75dab993f213a77eb7
2013-04-04 13:44:30 +02:00
2c38ea6d16 Building without --with-help is not supposed to disable help functionality
Drop HAVE_FEATURE_HELP. Just check HAVE_FEATURE_DESKTOP instead in the few
places in the code where HAVE_FEATURE_HELP had been introduced so far. It's
only for the non-desktop platforms that leaving out the traditional help
functionality is intended anyway.

Change-Id: I2d05869267f509a8e64cf402eed8ebef0020cada
2013-03-28 11:48:14 +02:00
ab7ac5884c Use <config_features.h> instead of -DDISABLE_EXTENSIONS
Change-Id: I4fe5cd27b77d44b9b33af0ae3c3754e3b85c2ca3
2013-03-27 13:02:22 +02:00
556fe2c612 Add config_features.h platform or configurable high-level features
Defines HAVE_FEATURE_{DESKTOP,HELP,MULTIUSER_ENVIRONMENT} for
now. Using <config_features.h> will supersede checking the
LIBO_FEATURE_DESKTOP and LIBO_FEATURE_HELP passed on the compilation
command-line.

Change-Id: I9866e2fd142f5c1a64c8f5c74452a20de23c66e3
2013-03-27 11:36:03 +02:00
f174c972ac .gitignore already ignores config_*.h
Change-Id: I97e9fa6e8ad45a0cd07926d1f6d33652d9dd332c
2013-03-27 11:36:02 +02:00
8bfc664c61 autoconf can actually handle #define HAVE_FOO 0 as the default
Change-Id: I6cd70d885a3fe3ab53f7523d1a5da6ae30ee01e3
2013-03-26 19:32:20 +01:00
fa545023ad Introduce HAVE_GCC_PRAGMA_DIAGNOSTIC_{MODIFY,SCOPE}
...replacing hard-coded GCC version checks.  Those checks that guard

  #pragma GCC diagnostic ignored "-Wnon-virtual-dtor"

appear relevant only for GCC itself, not Clang (which used to fail the old
guards because it typically announces itself with a rather low
__GNUC__/__GNUC_MINOR__ version), see 6e67c03dc0225fc66343546b14e902b9d238b1a3
"Enable -Wnon-virtual-dtor for GCC 4.6"

Change-Id: I6bfa4d5caa6192e7a203ce829682bf6bb8d61a1b
2013-03-25 08:52:54 +01:00
43f59b86cd Consistent "config_XXX.h" naming
Change-Id: Ie7cb4356fd2400753934ca907f09cf240ada734e
2013-03-22 18:12:51 +01:00
52f8321c41 use #if instead of #ifdef for testing config_xxx.hxx macros
http://lists.freedesktop.org/archives/libreoffice/2013-March/047769.html

Change-Id: I81ed4500878ff3193e028410a1f0205e28d17fc3
2013-03-20 11:34:18 +01:00
594a1ca96b clarify when HAVE_FOO macros should have 0 fallback
Change-Id: Idc6635b59851c9b1a94f11042d3a60a4822061f2
2013-03-20 11:34:17 +01:00
30844869cc update config HAVE_FOO instructions
Feature macros should now always be set (even if to 0), and should be
checked with #if, in order to avoid missing including the config_xxx.hxx header.

http://lists.freedesktop.org/archives/libreoffice/2013-March/047769.html

Change-Id: Id15f536240d032b3c523e33856cb40af78be65df
2013-03-18 17:15:57 +01:00
8c2711e771 change #ifdef -> #if for KDE4 feature macros
Change-Id: I289744eaa62ad819620f0b31a54efd5ebbdb9dc2
2013-03-18 17:15:55 +01:00
133fbbcbd3 solenv: remove versionlist.hrc
Change-Id: Iddbfcacd17c1022293357ff5240ab7a52b1a390e
Reviewed-on: https://gerrit.libreoffice.org/2677
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Reviewed-by: David Ostrovsky <David.Ostrovsky@gmx.de>
Tested-by: David Ostrovsky <David.Ostrovsky@gmx.de>
2013-03-12 22:57:46 +00:00
6fbd871135 re-add support for KDE4 Qt+glib eventloop intergration
The necessary build stuff was apparently silently dropped during gbuild
conversion and never noticed.

Change-Id: Ib1f530b92618a9d4f11c54818e984f737abaa283
2013-03-12 20:05:56 +01:00
f6deda85ef current mingw headers don't have fMergeNeutralItems
Reported upstream by Kendy (r5626), for now do not use the field
if not present, seems to be not that important.
2013-03-01 18:25:25 +01:00
bfdcde7c2e Unused UDK_MAJOR/MINOR/MICRO macros (and udkversion.mk), also removed from SDK
Change-Id: I466424c5b71de4d6bb126499895539813283502a
2013-02-28 13:33:48 +01:00
8546e4180d Unused SAL_UDK_MAJOR/MINOR/MICRO macros (unused sal/udkversion.h)
Change-Id: Iac16e28979e7d6ae7e0502588f6216d9bfa51eda
2013-02-28 13:33:47 +01:00
f413decfef move generation of udkversion.mk to configure
Change-Id: Id2f047686e2ba3ac2d8242d9b47abad751679759
2013-02-27 17:09:46 +01:00
fdd44e2d6c move generation of sal/udkversion.h to configure
Change-Id: I401dc6b3dcea933d1f186a8618e7c86ccd21430e
2013-02-27 17:09:45 +01:00
8b8cd431c5 move generation of sal/typesizes.h to configure
Change-Id: I22d28044bde624b7cfd8537c5c1e2906cb5303fc
2013-02-27 17:09:44 +01:00
c91d353872 rhbz#908674: Adapt rtl::Allocator::construct to C++11
...otherwise, at least with some --with-system-boost versions and C++11
compilers, like with Fedora's boost-1.50.0-4.fc18.x86_64 and
gcc-c++-4.7.2-8.fc18.x86_64, using this to copy-construct an instance of
boost::unordered::detail::ptr_node<std::pair<rtl::OUString,Bootstrap_Impl*>> in
the call to p_bootstrap_map->insert(...) in rtl_bootstrap_args_open
(sal/rtl/source/bootstrap.cxx) would memcopy the ptr_node and fail to call
rtl_uString_acquire, leading to memory corruption later on when
rtl_uString_release is called one time too often.

It is not entirely clear to me whether this is a shortcoming of the given Boost
version, but this patch solves the problem and brings rtl::Allocator::construct
in line with the (changed) Allocator requirements of C++11 anyway.

The problem potentially lurks with every use of rtl::Allocator, but only showed
now begining with LO 4.0 where e5111574fd904b38a3980ca4ea3d21cfcb22dea6 "Revert
'sb140: sb140: #i116981# clean up memory upon exit'" re-introduced code into
rtl_bootstrap_args_open that inserts into a boost::unordered_map that uses
rtl::Allocator.

Change-Id: I3be22f59a8eb49d31458480c27f3ce15803c7fd4
2013-02-14 15:55:09 +01:00
fdafe9505c fix documentation for config_xxx.h files
Not that I know why the directory had to be renamed in the first place.

Change-Id: I3e4d07591876636ae4930240ac1acc68522fb94f
2013-02-01 14:19:18 +01:00
c5b1441ede Use separate config_*.h files for BUILD and HOST when cross-compiling
We have only been lucky so far that there hasn't been any compilation errors
caused by using the HOST platform config_*.h files also for the BUILD
platform. But as more and more information found out during configury is
stored in config_*.h files, sooner or later it will be a problem.

Move config/* to config_host/*. When not cross-compiling, the config_*.h files
in config_host expanded from config_*.h.in are all there is. When
cross-compiling, the generated config_*.h files for the BUILD platform are
put into a config_build folder.

Then use config_build when building the cross_toolset and config_host
otherwise.

Change-Id: I3c28cc83866bffd696b45d00dfb68e00bc2ae538
2013-01-31 21:43:59 +02:00