Re: [Libreoffice] Mac OS 10.4 Support

2011-07-25 Thread Jonathan Aquilina

On 25/07/2011 03:24, Christian Lohmaier wrote:

Hi Norbert, *,

On Mon, Jul 25, 2011 at 2:52 AM, Norbert Thiebaudnthieb...@gmail.com  wrote:

On Sun, Jul 24, 2011 at 7:10 PM, Christian Lohmaier
lohmaier+libreoff...@googlemail.com  wrote:

because you can build with a sdk 10.6 and a deployment-target of 10.4
(at least that is how I understood theAvailabilityMacros.h  )

Yes, in theory, but see my other post, or look at the apple developer
lists. That it only works in theory is the reason why people also
prefer to keep using the 3.2.6 SDK even on system where you could be
using the newer 4.x ones.

I'm getting a bit confuse. --with-macosx-target-deployment is aiming

--with-macosx-deployment-target


at MACOSX_DEPLOYMENT_TARGET right ?

Yes, but..


That is not solid enough for the reason you stated above. hence the
--with-mac-sdk= which force the use of a particular version of the SDK

it should also set the matching SDK.


I mean, we could use --with-macos-target-deployment to do the task I
assigned to --with-mac-sdk.. but that would certainly not  be more
'consistent'

It is. As you do expect a version string as argument passed to that
option, not a path to the actual SDK.

--with-macosx-deployment-target=10.4

it's clear that you want the build to run on 10.4 and later.

--with-macosx-sdk=10.6 (or /Developer/SDKs...10.6, doesn't matter)

it could mean: I only have XCode 4.1 installed, so I don't have the
10.4 SDK available and cannot use it, but I still would like to have
my build run on my laptop that runs 10.4

Just specifying the sdk is ambiguous. As you yourself noted that it is
not strictly necessary (in theory) to use the target's SDK to produce
a build that runs on the target.

If people consider it a problem to modify the XCode 3.2.6 dmg to be
able to install it on Lion, then using the flaky way to rely on the
availability macros is the only way to keep 10.4 and 10.5 compatible.

The other way doesn't make any sense, you cannot compile against 10.4
SDK but make use of 10.5 features (and it doesn't make sense to use
the 10.7SDK to compile for 10.4 or 10.5, this is just asking for
deprecation warnings and stuff) So IMHO one switch that specifies the
target is enough to derive the rest.

If matching SDK is available, use that, otherwise use whatever
oldest SDK is available and hope for the availability-macro stuff
(and more importantly the linking) doesn't fail.
This would of course require some more modification to the compiler /
linker arguments to support that method.


From what I have seen with mac package, how come we dont package a 
universal binary that will support older hardware as well as the new 
intel based mac's


[SNIP]
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-25 Thread Christian Lohmaier
Hi Norbert, *,

On Mon, Jul 25, 2011 at 4:44 AM, Norbert Thiebaud nthieb...@gmail.com wrote:
 On Sun, Jul 24, 2011 at 8:24 PM, Christian Lohmaier
 lohmaier+libreoff...@googlemail.com wrote:
 Hi Norbert, *,

 [..]
 If matching SDK is available, use that, otherwise use whatever
 oldest SDK is available and hope for the availability-macro stuff
 (and more importantly the linking) doesn't fail.
 This would of course require some more modification to the compiler /
 linker arguments to support that method.

 Wait.. isn't that exactly what you were so adamantly against ? the
 'silently break compatibility' by not using explicitly the 10.4 SDK ?

No, as of course the user must explicitly use that switch. And the
non-SDK way to compile against 10.4 doesn't exist yet.
If that proves to work, then I would be fine with that method as well.
But I'm sceptical about this, so I definitely prefer the SDK method.
The use other SDK when target is not available is a future task so
to say. And of course should not be the default unless somebody proves
it actually works.

The problem with that method is not using newer api, that should work
more or less reliably - the problem is to create working builds with
that method.

 I was adjusting my thinking as follow:

 1/ by default we require 10.4 sdk. if it is not there we fail autogen.
 (that is --with-macosx-sdk=10.4 and
 --with-macosx-deployment-target=10.4 by default)

Yes, but see above for the two switches.

 2/ the builder can override and say use 10.x sdk
 (--with-macosx-sdk=10.x). using MACOSX_DEPLOYMENT_TARGET=10.4 by
 default
 3/ the builder can over-ride MACOSX_DEPLOYMENT_TARGET using
 --with-macosx-deployment-target=10.y (of course 10.y = 10.x)

And I see no need for the two switches, why deliberately use a newer
SDK than necessary? Use the one closest to the target version.
But anyway - the case where the target version and target SDK doesn't
match is not supported yet. MAC_OS_X_VERSION_MAX_ALLOWED needs to be
set for example.

So what I was written about choosing the closest matching SDK is under
the presumption that this additional method is in place and working
(which it is not yet).

It is to show that I personally don't see the need for two switches,
that providing the target version is what matters.
Until the alternative way to produce compatible builds is in place,
configure should error out if no matching SDK is found.

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Christian Lohmaier
Hi Tor, * (now all, wrong button the first time...),

On Sat, Jul 23, 2011 at 8:11 AM, Tor Lillqvist tlillqv...@novell.com wrote:
 Having lion doesn't force you to install the latest version of XCode, or 
 does it?

 Well, if you want to use Xcode 4.x, it must be Xcode 4.1 (the latest). An 
 Xcode 4(.0) you had in 10.6 tells you to upgrade when you try to use it on 
 10.7.

If you take this position, the just moving the baseline to 10.5
doesn't work, you would have to raise the bar to intel-only (10.6 and
above), and that hopefully is out of the question.

 I haven't tried if one can run the IDE of Xcode 3.2.6 on Lion. (At least the 
 command-line tools from it work fine.)

Mailing-list, blog posts, etc state this is a no-brainer, and also the
artificial installation check that prevents installation of 3.2.6 is
easily disabled.
After all Lion has no problem when updating from a previous version
that had 3.2.6 installed, it won't prevent you from using it (again
judging from mailinglist/blog posts, no own experience with Lion)

two blogs with inststruction on how to disable the check that prevents
installation of 3.2.6
http://catacombae.blogspot.com/2011/07/installing-xcode-326-in-mac-os-x-lion.html
http://anatomicwax.tumblr.com/post/7906770311/installing-xcode-3-2-6-on-lion

ciao
Christain
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Christian Lohmaier
Hi Norbert, *,

On Sat, Jul 23, 2011 at 5:57 AM, Norbert Thiebaud nthieb...@gmail.com wrote:
Like for example?
Mac OSX was the first platform to be WaE free, despite some
over-pickyness of the compiler. What pain did gcc 4.0 bring?

 actually I'm compiling with SDK 10.5 and gcc 4.2.1 right now and it is
 picking up quite few more WaE.
 so gcc-4.0 is not over-picky, quite the contrary...

Well, it is picki in areas where there actually is no problem, like
not detecting when a variable is initialized by overloaded operators
and similar stuff.

 and that is
 probably why we get away with -Werror on Mac.

No, we get away with it because we (at OOo times already) just did
use -Werror from the very beginning it was introduced. And having a
single system, a single compiler for Mac as opposed to having various
different patched versions, different versions by itself on LInux made
fixing the problems an rather easy task.

 Also 10.4 + gcc 4.0 means 32 bits only... I'm finding issue with 64
 bits support and deprecated stuff in Cairo for instance( like
 something similar to

64bits for an office suite is questionable anyway.
And exactly those deprecation stuff will very likely break
compatibility with 10.4 when the person who builds against a newer SDK
doesn't bother to check whether the replacement is available in 10.4
already.

That's why I'm against making it easy to break without noticing.

 On Fri, Jul 22, 2011 at 7:08 PM, Christian Lohmaier
 lohmaier+libreoff...@googlemail.com wrote:
 On Fri, Jul 22, 2011 at 7:18 PM, Norbert Thiebaud nthieb...@gmail.com 
 wrote:

 That is just twisting the truth. Sure, 10.4 support is not dropped,
 but the effect is the same. So I'm still not pleased with it.

 Ok so what if I made the default to 10.4 in configure.in so that one
 can only build against another SDK if he explicitly ask for it ?

That would be OK with me.
I'm not against building with a newer SDK to check out where things
are lacking and to make the SDK configurable. But the start of this
thread was right about dropping 10.4 support. (and not forcing to
use 10.4 SDK on builders is like dropping 10.4 support throught the
back-door) And that is nothing I support.

 Tor's message contains the only valid reason for dropping 10.4
 support: You absolutely need to use a newer compiler.

 Any other reason than that is invalid. Then whether the baseline is
 10.4 or 10.5 - when using new features of Lion, you have to provide
 two codepaths / a fallback nevertheless.

 The problem right now is that you CANNOT use any other SDK since 10.4
 is hard-coded
 so 'new feature' are out of question, two codpath/fallback or not.

But that's a completely different topic than raising the baseline.

As long as the solution to your change broke the build on 10.4 is
just revert the change I'm fine with it. The person who did break
the build did so on purpose by ignoring configure/overriding the SDK.
It is his/her fault for wasting time/not providing
backwards-compatibility.
If however the answer is look, 10.4 is s old, get over with and
let it die, I'm against it.

ciao
Christian
PS: In theory, you don't have to compile against the 10.4 SDK to
ensure compatibility with 10.4, but in practice relying on
api-versioning just doesn't work reliably, at least causes problems
when linking (or worse you don't detect them when linking, but when
trying to actually run it on the baseline system.
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Christian Lohmaier
Hi Norbert,

On Fri, Jul 22, 2011 at 7:18 PM, Norbert Thiebaud nthieb...@gmail.com wrote:
 Ok it is easier to discuss based on actual code... so:

 the attaches patch, allow for --with-mac-sdk=10.x to be specified
 the default is the lowest SDK available in /Developer/SDKs

regarding the default see the other posts.

just regarding
-MACDEVSDK*=/Developer/SDKs/MacOSX10.4u.sdk
+MACDEVSDK*=$(MACSDK_PATH)

time to get rid of that from the external modules. That is basically a
hack for Hamburg's non-configure based environment.

(same for the .IF $(SYSBASE)!= checks in various makefiles)

get rid of that special treatment in the individual modules' makefiles.

And probably a switch --with-macosx-deployment-target would be more
appropriate/consistent

 The patch does not check that your CC anc CCX make sens based on the
 SDK selected (ToDO list)

Well, but it should/must
Either by simple version check as it is currently done, or by a
compile/link test.
Configure must not pass when the combination of SDK and compiler is
not suitable.

ciao
Christain
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Tor Lillqvist
The more I look at the aqua code (to get inspiration / hints for iOS 
CocoaTouch), and read the various notes from the MacOSX porters in the OOo 
Wiki, and read Apple documentation, the more I suspect / realize  that the 
aqua MacOSX port is mostly using obsolete APIs. ATSUI , HITheme*, etc. 
Probably this isn't news as such.

Note: I am not saying that we should drop support for 10.4, or drop the aqua 
port. But at some point, if somebody wants to work on modernizing LO on MacOSX, 
we probably should tell him/her that it would be best to do a completely 
separate port for 10.6 or later instead of adding hacks that check the OS 
version at run-time and optionally use different APIs to the aqua code.

(Sure, in such a fresh port as much code as possible should be reused from the 
aqua port, of course.)

--tml


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Norbert Thiebaud
On Sun, Jul 24, 2011 at 3:11 PM, Christian Lohmaier
lohmaier+libreoff...@googlemail.com wrote:
 Hi Norbert,

 On Fri, Jul 22, 2011 at 7:18 PM, Norbert Thiebaud nthieb...@gmail.com wrote:
 Ok it is easier to discuss based on actual code... so:

 the attaches patch, allow for --with-mac-sdk=10.x to be specified
 the default is the lowest SDK available in /Developer/SDKs

 regarding the default see the other posts.

 just regarding
 -MACDEVSDK*=/Developer/SDKs/MacOSX10.4u.sdk
 +MACDEVSDK*=$(MACSDK_PATH)

 time to get rid of that from the external modules. That is basically a
 hack for Hamburg's non-configure based environment.

I'm not sure what you mean. that variable is used in external module,
in gbuild and in 'dmake' to set -isysroot to the proper value.
(right now, gbuld for instance, hard-code MacOS10.4u.sdk)
How do you suggest we do that ?



 (same for the .IF $(SYSBASE)!= checks in various makefiles)

Agreed. There is no reason to worry about SYSBASE != /Developer/SDKs
and if someone installed a SDK at a non-standard location, they can
always ln -s it


 get rid of that special treatment in the individual modules' makefiles.

 And probably a switch --with-macosx-deployment-target would be more
 appropriate/consistent

ok but not instead of but in addition to --with-mac-sdk (or
--with-macosx-sdk if you prefer)
because you can build with a sdk 10.6 and a deployment-target of 10.4
(at least that is how I understood the AvailabilityMacros.h )


 The patch does not check that your CC anc CCX make sens based on the
 SDK selected (ToDO list)

 Well, but it should/must
 Either by simple version check as it is currently done, or by a
 compile/link test.
 Configure must not pass when the combination of SDK and compiler is
 not suitable.

Agreed.

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Christian Lohmaier
Hi Norbert, *,

On Mon, Jul 25, 2011 at 12:00 AM, Norbert Thiebaud nthieb...@gmail.com wrote:
 On Sun, Jul 24, 2011 at 3:11 PM, Christian Lohmaier
 lohmaier+libreoff...@googlemail.com wrote:

 regarding the default see the other posts.

 just regarding
 -MACDEVSDK*=/Developer/SDKs/MacOSX10.4u.sdk
 +MACDEVSDK*=$(MACSDK_PATH)

 time to get rid of that from the external modules. That is basically a
 hack for Hamburg's non-configure based environment.

 I'm not sure what you mean. that variable is used in external module,
 in gbuild and in 'dmake' to set -isysroot to the proper value.

It is pointless to set something, but only when it is not already set
in individual makefiles, when the stuff is used globally anyway.

If you have a variable MACSDK_PATH anyway, there is no point in having
an additional  MACDEVSDK variable whose only purpose is to take the
value of MACSDK_PATH, but only if MACDEVSDK has not been defined
already.
It never will be defined already or it always will. But as there is a
variable with that same value already, just use the real thing.

 (right now, gbuld for instance, hard-code MacOS10.4u.sdk)
 How do you suggest we do that ?

define it in solenv or as your initial patch adds an environment
variable, use that environment variable instead.

 (same for the .IF $(SYSBASE)!= checks in various makefiles)

 Agreed. There is no reason to worry about SYSBASE != /Developer/SDKs
 and if someone installed a SDK at a non-standard location, they can
 always ln -s it

Or override the one and only variable.

 get rid of that special treatment in the individual modules' makefiles.

 And probably a switch --with-macosx-deployment-target would be more
 appropriate/consistent

 ok but not instead of but in addition to --with-mac-sdk (or
 --with-macosx-sdk if you prefer)

No, I thought of instead, at least since your switch would not accept
a target-path, but a version identifier.

 because you can build with a sdk 10.6 and a deployment-target of 10.4
 (at least that is how I understood the AvailabilityMacros.h )

Yes, in theory, but see my other post, or look at the apple developer
lists. That it only works in theory is the reason why people also
prefer to keep using the 3.2.6 SDK even on system where you could be
using the newer 4.x ones.

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Norbert Thiebaud
On Sun, Jul 24, 2011 at 7:10 PM, Christian Lohmaier
lohmaier+libreoff...@googlemail.com wrote:
 Hi Norbert, *,

 because you can build with a sdk 10.6 and a deployment-target of 10.4
 (at least that is how I understood the AvailabilityMacros.h )

 Yes, in theory, but see my other post, or look at the apple developer
 lists. That it only works in theory is the reason why people also
 prefer to keep using the 3.2.6 SDK even on system where you could be
 using the newer 4.x ones.

I'm getting a bit confuse. --with-macosx-target-deployment is aiming
at MACOSX_DEPLOYMENT_TARGET right ?
That is not solid enough for the reason you stated above. hence the
--with-mac-sdk= which force the use of a particular version of the SDK

I mean, we could use --with-macos-target-deployment to do the task I
assigned to --with-mac-sdk.. but that would certainly not  be more
'consistent'

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Christian Lohmaier
Hi Norbert, *,

On Mon, Jul 25, 2011 at 2:52 AM, Norbert Thiebaud nthieb...@gmail.com wrote:
 On Sun, Jul 24, 2011 at 7:10 PM, Christian Lohmaier
 lohmaier+libreoff...@googlemail.com wrote:

 because you can build with a sdk 10.6 and a deployment-target of 10.4
 (at least that is how I understood the AvailabilityMacros.h )

 Yes, in theory, but see my other post, or look at the apple developer
 lists. That it only works in theory is the reason why people also
 prefer to keep using the 3.2.6 SDK even on system where you could be
 using the newer 4.x ones.

 I'm getting a bit confuse. --with-macosx-target-deployment is aiming

--with-macosx-deployment-target

 at MACOSX_DEPLOYMENT_TARGET right ?

Yes, but..

 That is not solid enough for the reason you stated above. hence the
 --with-mac-sdk= which force the use of a particular version of the SDK

it should also set the matching SDK.

 I mean, we could use --with-macos-target-deployment to do the task I
 assigned to --with-mac-sdk.. but that would certainly not  be more
 'consistent'

It is. As you do expect a version string as argument passed to that
option, not a path to the actual SDK.

--with-macosx-deployment-target=10.4

it's clear that you want the build to run on 10.4 and later.

--with-macosx-sdk=10.6 (or /Developer/SDKs...10.6, doesn't matter)

it could mean: I only have XCode 4.1 installed, so I don't have the
10.4 SDK available and cannot use it, but I still would like to have
my build run on my laptop that runs 10.4

Just specifying the sdk is ambiguous. As you yourself noted that it is
not strictly necessary (in theory) to use the target's SDK to produce
a build that runs on the target.

If people consider it a problem to modify the XCode 3.2.6 dmg to be
able to install it on Lion, then using the flaky way to rely on the
availability macros is the only way to keep 10.4 and 10.5 compatible.

The other way doesn't make any sense, you cannot compile against 10.4
SDK but make use of 10.5 features (and it doesn't make sense to use
the 10.7SDK to compile for 10.4 or 10.5, this is just asking for
deprecation warnings and stuff) So IMHO one switch that specifies the
target is enough to derive the rest.

If matching SDK is available, use that, otherwise use whatever
oldest SDK is available and hope for the availability-macro stuff
(and more importantly the linking) doesn't fail.
This would of course require some more modification to the compiler /
linker arguments to support that method.

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-24 Thread Norbert Thiebaud
On Sun, Jul 24, 2011 at 8:24 PM, Christian Lohmaier
lohmaier+libreoff...@googlemail.com wrote:
 Hi Norbert, *,

[..]
 If matching SDK is available, use that, otherwise use whatever
 oldest SDK is available and hope for the availability-macro stuff
 (and more importantly the linking) doesn't fail.
 This would of course require some more modification to the compiler /
 linker arguments to support that method.

Wait.. isn't that exactly what you were so adamantly against ? the
'silently break compatibility' by not using explicitly the 10.4 SDK ?

I was adjusting my thinking as follow:

1/ by default we require 10.4 sdk. if it is not there we fail autogen.
(that is --with-macosx-sdk=10.4 and
--with-macosx-deployment-target=10.4 by default)
2/ the builder can override and say use 10.x sdk
(--with-macosx-sdk=10.x). using MACOSX_DEPLOYMENT_TARGET=10.4 by
default
3/ the builder can over-ride MACOSX_DEPLOYMENT_TARGET using
--with-macosx-deployment-target=10.y (of course 10.y = 10.x)

that way:
The default behavior is exactly what it is today: strict 10.4
Devs can start experimenting with newer SDK level, for building
_and/or_ for target.

Norbert

Note: sure, we could have
--with-macosx-sdk=/Developer/SDKs/MacOSX10.4u.sdk but that is just
more painful to write for no good reason.
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-23 Thread Tor Lillqvist
 Having lion doesn't force you to install the latest version of XCode, or does 
 it?

Well, if you want to use Xcode 4.x, it must be Xcode 4.1 (the latest). An Xcode 
4(.0) you had in 10.6 tells you to upgrade when you try to use it on 10.7.

I haven't tried if one can run the IDE of Xcode 3.2.6 on Lion. (At least the 
command-line tools from it work fine.)

--tml


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Tor Lillqvist
 I believe it's about time to drop 10.4 support in LibreOffice. [in master]

I agree, but please ignore my opinion, as I am not really in the Mac part of 
this community... I just happen to have also a MacBookPro, I love it, and build 
LO on it (natively, and cross-compiling for iOS).

 Most of this is because I'd like to Upgrade my box to 10.7 and the new 
 version of xCode 4.1 (the Mac development suit) doesn't support 10.4.

Xcode 4(.0) which has been out for some time already has not supported 10.4 
either, so one had to install Xcode 3 in parallel with Xcode 4. Which works 
fine, as long as you install Xcode 3 first, and in a different prefix (like 
/Xcode3, instead of the default /Developer). You can even develop against the 
10.4 SDK in thr Xcode IDE if you add a few symlinks, 
http://hints.macworld.com/article.php?story=20110318050811544 . (But for an LO 
build that is irrelevant, we don't use the IDE.)

I upgraded my Mac to 10.7 yesterday, and with some minor glitches, a LO build 
seemed to get going normally. I didn't have time to let it complete, though, 
before the wife started to use the MBP, and she has a tendency of putting it to 
sleep (closing the lid) when finishing, and I didn't bother go down and re-open 
the lid, reopen my ssh connections, etc, as it was getting late;)

I pushed some fixes that I hope help with the above mentioned glitches. Seems 
that we for some reason have been using -L/usr/lib when building for the Mac, 
which of course is silly as we explicitly build against the 10.4 SDK, so we 
should never have any reason to link against a library in the potentially much 
newer build OS. Previously that apparently/hopefully didn't matter, but in 10.7 
I saw some strange problem that seemed to be caused by such unintended linking 
with stuff from /usr/lib. Or something.


--tml


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Michael Meeks
Hi Joe,

On Thu, 2011-07-21 at 20:21 -0700, Joseph Powers wrote:
 Just doing a little research and wanted to report my findings:

Wow - what a nice write-up; we have similar problems on Linux deciding
what versions of what underlying infrastructure to support and/or when
to axe it.

It sounds like 3.5 is a good place to make a platform cut for some of
this stuff to make our lives easier.

I'd love an ack from Norbert / Christian - to make a final decision, or
if it is truly controversial we can discuss it at the TSC meeting next
week.

ATB,

Michael.

-- 
 michael.me...@novell.com  , Pseudo Engineer, itinerant idiot


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Marc-André Laverdière
+1
Support doesn't come free. If there is a real need for it, then we can
reverse decision any time... Git is there for such things :)

Marc-André Laverdière
Software Security Scientist
Innovation Labs, Tata Consultancy Services
Hyderabad, India

On 07/22/2011 03:42 PM, Michael Meeks wrote:
 Hi Joe,
 
 On Thu, 2011-07-21 at 20:21 -0700, Joseph Powers wrote:
 Just doing a little research and wanted to report my findings:
 
   Wow - what a nice write-up; we have similar problems on Linux deciding
 what versions of what underlying infrastructure to support and/or when
 to axe it.
 
   It sounds like 3.5 is a good place to make a platform cut for some of
 this stuff to make our lives easier.
 
   I'd love an ack from Norbert / Christian - to make a final decision, or
 if it is truly controversial we can discuss it at the TSC meeting next
 week.
 
   ATB,
 
   Michael.
 
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Christian Lohmaier
Hi *,

On Fri, Jul 22, 2011 at 12:12 PM, Michael Meeks
michael.me...@novell.com wrote:
 On Thu, 2011-07-21 at 20:21 -0700, Joseph Powers wrote:
 Just doing a little research and wanted to report my findings:
 [...]
        I'd love an ack from Norbert / Christian - to make a final decision, or
 if it is truly controversial we can discuss it at the TSC meeting next
 week.

I won't ack it - I happen to be one of those who have PPC with 10.4 on it..

So unless there is something to be done for Lion/Snow Leopard that is
blocked by sticking with 10.4 compatibility, I'm against removing this
baseline requirement just because it is old.
As for updating to 10.5 - would you really spend money to upgrade the
machine when the vendor did already stop support for it? Throw money
out of the window to update from one old version to a new version that
is just as old (and risk of breaking your working setup)?

So I don't quite follow the 10.4 users could update to 10.5 thought.

Actual user numbers would help more than OS release dates.

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Norbert Thiebaud
On Fri, Jul 22, 2011 at 5:12 AM, Michael Meeks michael.me...@novell.com wrote:
 Hi Joe,

 On Thu, 2011-07-21 at 20:21 -0700, Joseph Powers wrote:
 Just doing a little research and wanted to report my findings:

        Wow - what a nice write-up; we have similar problems on Linux deciding
 what versions of what underlying infrastructure to support and/or when
 to axe it.

        It sounds like 3.5 is a good place to make a platform cut for some of
 this stuff to make our lives easier.

        I'd love an ack from Norbert / Christian - to make a final decision, or
 if it is truly controversial we can discuss it at the TSC meeting next
 week.


http://marketshare.hitslink.com/operating-system-market-share.aspx?spider=1qprid=10
show that the ratio of Mac OS 10.4 vs Mac OS in general is about 6%
down from 12.5% a year ago.

With 3.4 keeping support for 10.4, and at the current rate of
attrition of the 10.4 installed based, I think that the 3.4 life-cycle
will be enough to cater for that demographic

so:

Ack for bumping minimum requirement to 10.5


Caveat: Like tml_ I don't consider myself a 'Mac' developer... just a
Dev that happen to own a Mac.

That being said, Christian is the person that need convincing.

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Christian Lohmaier
Hi Norbert, *,

On Fri, Jul 22, 2011 at 3:47 PM, Norbert Thiebaud nthieb...@gmail.com wrote:
 [...]
 Caveat: Like tml_ I don't consider myself a 'Mac' developer... just a
 Dev that happen to own a Mac.

 That being said, Christian is the person that need convincing.

Oh, I don't consider myself any more Mac developer than you - I happen
to have a PPC with 10.4 on it, so I'm affected (and I definitely won't
update it to 10.5)

I happened to be quite involved of getting rid of external
dependencies on Mac, to compile against the SDK, but that's about it.
Apart from a few bugfixes here and there and making it possible to
uses internal python, I haven't been involved in any actual porting
efforts.

I just find that drop it because it is old is not enough reason to
drop 10.4 support.

And raising it to 10.5 won't help anything if you want to use 10.7
features. You then have to provide different codepaths as well, and
need runtime detection for that unless you want to release separate
builds for different versions of Mac OS X - so where's the point?
Where's the benefit of lifting the baseline to 10.5?

The only effect is that you drop support for 10.4 - but I fail to see
any positive effect (apart from the builder not having to install an
old version of XCode that comes with the 10.4 SDK - but that again
doesn't count as a reason for me)

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Tor Lillqvist
 I just find that drop it because it is old is not enough reason to
 drop 10.4 support.

Yeah, I see your point.

I guess a good enough reason to drop it would be this hypothetical (but, I 
guess, quite possible) situation, or something similar: Some volunteer wants to 
contribute code that makes LibreOffice integrate nicely with Lion's document 
versioning etc. Using those features requires compiling with the compiler from 
Xcode 4(.1) (even if one would look up and use the API in question 
dynamically), thanks to the use of blocks 
(http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html
 ) or whatever, and that compiler is not capable of compiling against the 10.4 
SDK. And mixing compilers wouldn't work either.

How likely is it that something like that would happen? I guess we won't know 
for sure until somebody actually starts hacking on the MacOSX code to make it 
use (optionally at run-time) up-to-date features of the OS...

--tml


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Norbert Thiebaud
On Fri, Jul 22, 2011 at 8:57 AM, Christian Lohmaier
lohmaier+libreoff...@googlemail.com wrote:
 Hi Norbert, *,

 On Fri, Jul 22, 2011 at 3:47 PM, Norbert Thiebaud nthieb...@gmail.com wrote:
 [...]
 Caveat: Like tml_ I don't consider myself a 'Mac' developer... just a
 Dev that happen to own a Mac.

 That being said, Christian is the person that need convincing.

 Oh, I don't consider myself any more Mac developer than you - I happen
 to have a PPC with 10.4 on it, so I'm affected (and I definitely won't
 update it to 10.5)

 I happened to be quite involved of getting rid of external
 dependencies on Mac, to compile against the SDK, but that's about it.
 Apart from a few bugfixes here and there and making it possible to
 uses internal python, I haven't been involved in any actual porting
 efforts.

 I just find that drop it because it is old is not enough reason to
 drop 10.4 support.

 And raising it to 10.5 won't help anything if you want to use 10.7
 features. You then have to provide different codepaths as well, and
 need runtime detection for that unless you want to release separate
 builds for different versions of Mac OS X - so where's the point?
 Where's the benefit of lifting the baseline to 10.5?

The benefit is that a new developer can still build the product, even
if he has _only_ a brand new lion.

As you mentioned earlier, You worked hard so that the Mac build, build
out-of-the box, without 'external dep'.
Having to hunt for a 10.4 SDK, and having to do some ln magic and
other trick to beat your box into submission is not going in that
direction.

Regarding different code path:

Yes, I think that it is eventually inevitable. I understand you
wanting to keep the product build-able on 10.4, but why does we have
to live with the lowest common denominator and not use a 'minimum
version' build flag. (I did hear the argument that if we do that, then
some mac dev can introduce, unknowingly, 10.4 incompatibility without
the proper flag isolation... but that is the very situation that tml_
and Fridrich are on Windows I don't think that devs will
intentionally try to break  it, but then if you care _about_ a
particular os version, you also need to care _for_ it.
iow, yes, having #ifdef to allow for different minimum OS X version
will cause some pain and some breakage, most likely on the least
used/supported version... but supporting 10.4 is causing some pain and
breakage to the rest, and particularly to  new volunteer. and it is
going to get worse as 10.4 SDK will soon vanish altogether as Joe
mentioned.

The only effect is that you drop support for 10.4 - but I fail to see
any positive effect (apart from the builder not having to install an
old version of XCode that comes with the 10.4 SDK - but that again
doesn't count as a reason for me)

The other effect is requiring gcc-4.0, which in turn bring its load of
pain and inefficiencies.


I suggest that we start allowing a --target-sdk= at build time for mac

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Norbert Thiebaud
Ok it is easier to discuss based on actual code... so:

the attaches patch, allow for --with-mac-sdk=10.x to be specified
the default is the lowest SDK available in /Developer/SDKs

The patch does not check that your CC anc CCX make sens based on the
SDK selected (ToDO list)

I have only tested it so far on a machine that _has_ 10.4 SDK
installed... next I'll try to see what happen when we compile with
10.5 or 10.6

Note: the patches themselves do _not_ 'drop' 10.4 support or anything
like that.. they just make it possible to try to build with something
else than 10.4...


Norbert


0001-allow-the-Mac-OSX-SDK-to-use-to-be-a-configure-optio.patch
Description: application/mbox


0001-allow-MacOS-X-SDK-to-be-a-configure-option.patch
Description: application/mbox
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Norbert Thiebaud
On Fri, Jul 22, 2011 at 9:51 AM, Tor Lillqvist tlillqv...@novell.com wrote:
 I just find that drop it because it is old is not enough reason to
 drop 10.4 support.

 Yeah, I see your point.

 I guess a good enough reason to drop it would be this hypothetical (but, I 
 guess, quite possible) situation, or something similar: Some volunteer wants 
 to contribute code that makes LibreOffice integrate nicely with Lion's 
 document versioning etc. Using those features requires compiling with the 
 compiler from Xcode 4(.1) (even if one would look up and use the API in 
 question dynamically), thanks to the use of blocks 
 (http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html
  ) or whatever, and that compiler is not capable of compiling against the 
 10.4 SDK. And mixing compilers wouldn't work either.

 How likely is it that something like that would happen? I guess we won't know 
 for sure until somebody actually starts hacking on the MacOSX code to make it 
 use (optionally at run-time) up-to-date features of the OS...

One feature that will help here is described in
http://developer.apple.com/library/mac/#technotes/tn2064/_index.html

namely
extern int SayHello() __attribute__((weak_import));

that is you tell the linker that the said external reference is 'weak'
that is if it is resolved, fine, otherwise, keep going.

The trick of course is that the code must make sure not to use a
feature if it is not there..
 the tech note give an example:

#include stdlib.h
#include stdio.h

extern int SayHello() __attribute__((weak_import));

int main()
{
int result;

if (SayHello!=NULL)
{
printf(SayHello is present!\n);
result=SayHello();
}
else
printf(SayHello is not present!\n);
}

Norbert (who is learning more about Mac OS SDKs than he really wanted to :-) )
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Christian Lohmaier
Hi Tor, *,

On Fri, Jul 22, 2011 at 4:51 PM, Tor Lillqvist tlillqv...@novell.com wrote:
 I just find that drop it because it is old is not enough reason to
 drop 10.4 support.

 Yeah, I see your point.

 I guess a good enough reason to drop it would be this hypothetical (but, I 
 guess, quite possible) situation, or something similar: Some volunteer wants 
 to contribute code that makes LibreOffice integrate nicely with Lion's 
 document versioning etc. Using those features requires compiling with the 
 compiler from Xcode 4(.1) (even if one would look up and use the API in 
 question dynamically), thanks to the use of blocks 
 (http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html
  ) or whatever, and that compiler is not capable of compiling against the 
 10.4 SDK. And mixing compilers wouldn't work either.

Yes, that would be a reason, but that also has a drawback - using
blocks requires 10.6 at least, so I don't think how likely this is.
You'll in effect drop 10.5 as well as 10.4 at the same time basically.

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Christian Lohmaier
Hi Norbert, *,

On Fri, Jul 22, 2011 at 4:53 PM, Norbert Thiebaud nthieb...@gmail.com wrote:
 [...]
 The benefit is that a new developer can still build the product, even
 if he has _only_ a brand new lion.

Having lion doesn't force you to install the latest version of XCode,
or does it?

 As you mentioned earlier, You worked hard so that the Mac build, build
 out-of-the box, without 'external dep'.
 Having to hunt for a 10.4 SDK, and having to do some ln magic and
 other trick to beat your box into submission is not going in that
 direction.

Hunt for a SDK is not difficult. Login to https://connect.apple.com
and download XCode 3.2.6 - not a big deal, is it?

 Regarding different code path:

 Yes, I think that it is eventually inevitable. I understand you
 wanting to keep the product build-able on 10.4, but why does we have
 to live with the lowest common denominator and not use a 'minimum
 version' build flag. (I did hear the argument that if we do that, then
 some mac dev can introduce, unknowingly, 10.4 incompatibility without
 the proper flag isolation... but that is the very situation that tml_
 and Fridrich are on Windows I don't think that devs will
 intentionally try to break  it, but then if you care _about_ a
 particular os version, you also need to care _for_ it.

Well, my stance is the other way round. If you cannot break it by
accident, the person who likes to use fancy new OS features is aware,
and has to add corresponding runtime checks.

 iow, yes, having #ifdef to allow for different minimum OS X version
 will cause some pain and some breakage, most likely on the least
 used/supported version... but supporting 10.4 is causing some pain and
 breakage to the rest, and particularly to  new volunteer. and it is
 going to get worse as 10.4 SDK will soon vanish altogether as Joe
 mentioned.

Again: I don't see the pain yet. The only argument is that latest
XCode doesn't come with 10.4uSDK and thus you have to download an
older version, and if you want to use latest fetures of XCode as well
for other product you have to install both / manually move files
around.

 The other effect is requiring gcc-4.0, which in turn bring its load of
 pain and inefficiencies.

Like for example?
Mac OSX was the first platform to be WaE free, despite some
over-pickyness of the compiler. What pain did gcc 4.0 bring?

 I suggest that we start allowing a --target-sdk= at build time for mac

If it still defaults to 10.4 - fine with me.

Breaking compatibility must be done explicitly by the person who
compiles, not by accident/unknowingly

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Christian Lohmaier
Hi Norbert, *,

On Fri, Jul 22, 2011 at 7:18 PM, Norbert Thiebaud nthieb...@gmail.com wrote:

 the attaches patch, allow for --with-mac-sdk=10.x to be specified
 the default is the lowest SDK available in /Developer/SDKs

This is pointless, it is the same as dropping 10.4 support.

 Note: the patches themselves do _not_ 'drop' 10.4 support or anything
 like that.. they just make it possible to try to build with something
 else than 10.4...

That is just twisting the truth. Sure, 10.4 support is not dropped,
but the effect is the same. So I'm still not pleased with it.

Having it explicitly breaking compatibility is OK with me, having it a
silent default that slips through, is not OK with me.

I already see some eager developer getting rid of some deprecation
messages when compiling on a 10.6 system, killing 10.4 support that
way.

Tor's message contains the only valid reason for dropping 10.4
support: You absolutely need to use a newer compiler.

Any other reason than that is invalid. Then whether the baseline is
10.4 or 10.5 - when using new features of Lion, you have to provide
two codepaths / a fallback nevertheless.

ciao
Christian
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] Mac OS 10.4 Support

2011-07-22 Thread Norbert Thiebaud
Like for example?
Mac OSX was the first platform to be WaE free, despite some
over-pickyness of the compiler. What pain did gcc 4.0 bring?

actually I'm compiling with SDK 10.5 and gcc 4.2.1 right now and it is
picking up quite few more WaE.
so gcc-4.0 is not over-picky, quite the contrary... and that is
probably why we get away with -Werror on Mac.

Also 10.4 + gcc 4.0 means 32 bits only... I'm finding issue with 64
bits support and deprecated stuff in Cairo for instance( like
something similar to
http://lists.cairographics.org/archives/cairo-bugs/2009-February/002951.html
)
none of these are that hard to fix... but they take time... time that
will be in even more short supply if we wait until we are _forced_
suddenly have to support a new SDKs (whether that means 2 build or
not). so the sooner we iron these quirk the better.


On Fri, Jul 22, 2011 at 7:08 PM, Christian Lohmaier
lohmaier+libreoff...@googlemail.com wrote:
 Hi Norbert, *,

 On Fri, Jul 22, 2011 at 7:18 PM, Norbert Thiebaud nthieb...@gmail.com wrote:

 the attaches patch, allow for --with-mac-sdk=10.x to be specified
 the default is the lowest SDK available in /Developer/SDKs

 This is pointless, it is the same as dropping 10.4 support.

 Note: the patches themselves do _not_ 'drop' 10.4 support or anything
 like that.. they just make it possible to try to build with something
 else than 10.4...

 That is just twisting the truth. Sure, 10.4 support is not dropped,
 but the effect is the same. So I'm still not pleased with it.

Ok so what if I made the default to 10.4 in configure.in so that one
can only build against another SDK if he explicitly ask for it ?


 Tor's message contains the only valid reason for dropping 10.4
 support: You absolutely need to use a newer compiler.

 Any other reason than that is invalid. Then whether the baseline is
 10.4 or 10.5 - when using new features of Lion, you have to provide
 two codepaths / a fallback nevertheless.

The problem right now is that you CANNOT use any other SDK since 10.4
is hard-coded
so 'new feature' are out of question, two codpath/fallback or not.

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


[Libreoffice] Mac OS 10.4 Support

2011-07-21 Thread Joseph Powers
Just doing a little research and wanted to report my findings:

1. The last G3 Mac was sold in January 1999 - 12 years ago
2. The last G5 mac was sold in August 2006 - 5 years ago
2. Mac OS 10.5 was released in October 2007 - 4 years ago
3. The last security update for Mac OS 10.4 was September 2009 - 2 years ago
4. A lot of software developers are dropping Mac OS 10.4 support.
a. VideoLAN - June 2009
b. Firefox - February 2010 
c. Adobe Flash - All PPC Macs in Jun 2011

Please note that all G4  G5 PPC Macs can run 10.5; thus, 10.4 support is only 
needed for people who haven't  upgraded to 10.5 or for Macs older then 11 
years. If people don't want to upgrade the OS or still haven't replaced their 
12 year old computer, what are the odds that they will be upgrading to the 
latest version of LibreOffice?

I believe it's about time to drop 10.4 support in LibreOffice. The 3.4 release 
is quite good, so we can keep a versions of it around for those people who 
don't want to or can't upgrade their hardware/OS.

How hard would it be to change the build system for 3.5+ (master) to allow it 
to build for 10.5? (With the release of 10.7, Apple will most likely end 
support for 10.5; however, I have a G5 Mac and don't want to retire it yet… 
it's the wife's computer).

Most of this is because I'd like to Upgrade my box to 10.7 and the new version 
of xCode 4.1 (the Mac development suit) doesn't support 10.4. It also doesn't 
support PPC, so we'll still need to have a way to use the older xCode 3.2.6 for 
building the PPC binaries.

By dropping 10.4 the build system should be able to use xCode 3.2.6 or 4.1 
interchangeably. 

If we don't drop 10.4 support, I'm not sure how long Apple is going to keep 
xCode 3.2.6 available for download. Once it disappears, we'll have to drop 10.4 
support since all new developers won't be able to get a compiler suite; this 
will also mean the end of our ability to support PPC.

This post is mostly to get people thinking about the future of LibreOffice 
development. 

It would be nice to get consensus on when (i.e. which version) we should drop 
support of 10.4 in and also which version we should drop PPC support in general.

Joe P.

PS: I only upgraded to xCode 4.1 on a secondary drive. I'm going to only 
upgrade the main drive to Lion and leave xCode at 3.2.6 until we get decide to 
drop 10.4 support.

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice