[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Moving CoreBase into Base

From: Quentin Mathé
Subject: Re: Moving CoreBase into Base
Date: Tue, 21 Sep 2010 15:20:42 +0200

On Mon, Sep 20, 2010 at 12:44 PM, Fred Kiefer <address@hidden> wrote:
Am 19.09.2010 21:53, schrieb Quentin Mathé:
> Le 19 sept. 2010 à 03:13, Gregory Casamento a écrit :
>> What does getting the CF stuff by default really hurt?  If someone
>> doesn't want it then just don't use it.  Making it optional just
>> complicates things a little.
>> On the other hand, I guess it just adds more weight to the library if
>> you know you're not going to use it in the first place.
> For now, I just added the standard C headers of CoreFoundation.h to
> This makes the compilation a bit slower:
> Base with new preface.h
> real    0m48.585s
> user    0m42.819s
> sys     0m5.292s
> Base with old preface.h
> real    0m45.288s
> user    0m39.858s
> sys     0m4.944s
> Gui with new preface.h
> real    0m58.710s
> user    0m51.835s
> sys     0m6.368s
> Gui with old preface.h
> real    0m54.698s
> user    0m48.687s
> sys     0m5.776s
> To keep the compilation time as it is, we can pass
> -DCF_EXCLUDE_CSTD_HEADERS in Base, Gui and Back and continue to include
> the C headers as we currently do it. We just need to include string.h in
> few more places if we do that.

Sounds like a great idea to me. Up to now we made sure that GNUstep only
includes the headers we really need and we should keep it that way for
the internal code at least.

I attached a patch that restores the old compilation time for Base. Before committing it, I just wanted to know whether the way I did it was ok…
 > For Gui, HUGE macro is 3.40282347e+38F in math.h and 1e7 in
> NSTextView.m. Since math.h is automatically included we now get a
> warning. Can we use the value from math.h or not? There is a comment
> stating the value should be changed carefully.

We could easily rename the variable in NSTextView. As far as I remember
the actual value isn't that important, it just has to be "huge",
compared to a normal dimension of a text container.
I just noticed that in many places we are using 1e7 directly. We should
replace all these occurrences with a new variable and may then be free
to change the actual value.



Attachment: base-cf-exclude-headers.patch
Description: Text Data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]