[Top][All Lists]

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

Re: Cross-compiling GNUstep?

From: Markus Hitter
Subject: Re: Cross-compiling GNUstep?
Date: Mon, 30 Dec 2013 01:19:47 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Am 29.12.2013 23:11, schrieb Fred Kiefer:
> On 29.12.2013 20:17, Markus Hitter wrote:
>> Am 29.12.2013 19:47, schrieb David Chisnall:
>>> I'd be more inclined to move to CMake, which has the advantage of not being 
>>> a complete usability disaster and being able to generate XCode projects.
>> While I have no experience with CMake, I wouldn't mind either.
>> How could backward compatibility work? I already see "it has served us
>> well for 15 years and I don't want to re-write all my projects" ...
> Should I step in here?

You do and, wow, what a lengthy one.

> The first question that we should be asking us is what GNUstep make
> actually offers

This is exactly the question to answer. And also, wether these
advantages are important enough to justify maintaining a distinct build
system. Because at the bottom line and unless I'm totally mistaken,
Obj-C is compiled the same way as C, C++ and most other compiled
languages. Accordingly, many other build tools should work just as fine.

Could you elaborate a bit on these advantages of GNUstep Make?

> Writing great software is hard, writing great software that works in
> environment that you yourself normally don't use is even harder.

Unlike libobjc2 four years ago, CMake is written already and known to
work well. Accordingly, it should not be an additional burden, but a
relief from some hard work. Once setup, others maintain all the build
tools, GNUsteppers can concentrate on Obj-C.

I'm well aware it's hard to abandon stuff one has worked on for years.
But my experience is, every few years one should re-evaluate wether a
competitor was much much better/faster and wether it still makes sense
to continue with the own efforts. IF this evaluates to a small amount of
sense, only, archiving existing stuff and enjoying the shrunken code
base (less maintenance work! fewer chances for bugs!) is the right way
to go.

> Yes, I totally agree that GNUstep make plus our configure files are very
> hard to use in a cross compilation case. Requesting that we throw it
> away and replace it by cmake would at least require a proof of concept
> implementation of a cmake configuration for the GNUstep core components
> that works flawless on let's say three Linux, two BSD and one Windows
> platform.

I think the idea of CMake is to write build instructions once, then to
deploy "everywhere". Unix Makefiles, MinGW Makefiles, Xcode, whatever.
CMake comes with sort of compilers to allow everybody to extract
something usable for his favourite environment. This extraction wouldn't
be part of GNUstep, however.

> And "messages=yes make check" followed by "less tests.log" should give you
> more output

Aaah, messages are redirected into a file. Thanks for the hint!

Now I see it works better than I thought previously. Many of the tests
work, while quite a bunch in -gui fail due to a missing backend (no
surprise). "make" or "make check" doesn't work in the individual tests,
but when run from Tests/ .


- - - - - - - - - - - - - - - - - - -
Dipl. Ing. (FH) Markus Hitter

reply via email to

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