Hi Raphael,
Do you have any progress in make Apache OpenOffice run on XCode 4? Do
you have allready any code in this area?
This has some different aspects:
1. compiling with XCode4's clang
2. using a standard compliant STL
3. using SDKs directly supported by XCode4
4. replacing deprecated APIs with their modern counterparts
5. supporting newer architectures such as AMD64
For the clang compilation (1.) I already committed many changes for this
that don't interfere with the other builds. Clang was quite good in
finding real problems. Many regressions happened because the new
environment resulted in problems in the bridges, in UNO, etc, that were
mostly identified and solved. They need a to be cleaned up more. There
are many more things to do such as extending the configure script and
the platform specific solenv parts.
As clang doesn't like stlport4 and using a standard compliant STL is a
good idea anyway, especially since we now have the chance to switch to
it for the major version change, I'm working on this (2) too. For now
I'd like to keep these changes minimally invasive to reduce the risk of
regressions. I try to do this by emulating the stlport4 peculiarities
with standard facilities using a shallow wrapper. E.g. stlport4's
hash<const char*> functor is identified and replaced, hash_map can
mostly be emulated by an unordered_map and cases where this is not
possible are identified and replaced. This approach allows us to "become
native" by switching to the platform's/compiler's native STLs and later
drop the shallow emulation layer without becoming incompatible then.
There is also the interesting topic that e.g. libc++ doesn't allow
recursive declarations such as "struct S{map<int,S>m;};". As using
libc++ with clang would be a good idea such declarations should be
replaced. A short-circuit/fallback for now could be to use boost's tr1
containers because they explicitly allow recursive declarations.
On the SDK question (3) I suggest to drop support for platforms that
even Apple doesn't support anymore such as OSX<10.6. If Apple cannot
afford to support it anymore with regular releases we shouldn't strain
our infinitely smaller resources to achieve this.
On the API frontier (4) we need to support e.g. CoreText and drop ATSUI
(except for debugging layout changes). There are also other topics that
need to be looked into such as the native widget framework.
On Mac things already look quite good except for some crashes in
CoreText's cascade code, Writer services, etc. that need to be solved.
For Linux and Windows getting them to build and pass BVT using the TR1
compliant STL needs more work. When the emulation is cleaned up enough
I'll open a branch for the "platform refresh 2013" => pr2013
Volunteers are very welcome... first some loose ends have to be tied though.
Herbert
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org