On Tue, Dec 13, 2011 at 12:54 PM, Vincent Torri <[email protected]> wrote:
> On Tue, Dec 13, 2011 at 3:44 PM, Gustavo Sverzut Barbieri
> <[email protected]> wrote:
>> On Tue, Dec 13, 2011 at 12:35 PM, Vincent Torri <[email protected]> 
>> wrote:
>>> On Tue, Dec 13, 2011 at 2:28 PM, Gustavo Sverzut Barbieri
>>> <[email protected]> wrote:
>>>>>
>>>>> I would actually like you to answer that question: why moving to cmake
>>>>> if the autotools are already doing the job correctly ?
>>>>
>>>> Doing it correctly may not be enough.
>>>
>>> you didn't answer to that question. you just give vague comparison. So
>>> what's no enough ?
>>
>> 1. it is utterly complicated for what it does, m4 macros are a hell,
>> the shell commands to be portable must be restricted from gnu-isms and
>> likely we fail at that from time to time.
>
> it's a hell for you, maybe. I've tried to twek cmake files, and i
> didn't undrestand how to do what i wanted. It's a matter of learning a
> langage.

We'll stay and help, it's not a drop and run thing. Don't worry.

And as for learning the language. I do know, both actually. Some of
the helper m4 files were written by me, like the optional plugin used
by e17.

I can guarantee you, I just came to like cmake after I tried it. And
even being autofoo person since 1998 I find my way easier on cmake
than autofoo.


>> 2. it does not generate native build systems, which is not a problem
>> for the way we handle win32/mac ports at the moment, but it may not be
>> sufficient in the future.
>
> for win32, i've already replied.

Yes, for the current solution. But is that the final solution?
Wouldn't it be better to integrate more natively with win32 apis if
there was manpower to help fix the VS bugs?


>> 3. it does not help with generation of your windows packages, cmake
>> generates it and other helpers for the unpackaged distributions (rpm
>> at least).
>
> see 2.
>
>> 4. it is hard to maintain (see #1).
>
> not for me
>
>> 5. it is hard to customize and extend (see #1)
>
> not for me
>
> again, it's a matter of learning a "langage".

compare adding an option at autoconf and cmake:

cmake:
OPTION(NAME "Some documentation for help" INIT_VAL)

autoconf:
AC_ARG_ENABLE(NAME,
  AC_HELP_STRING([--enable-NAME], [Some documentation for help
@<:@default=detect@:>@]),
  [NAME=$enableval],
  [NAME=INIT_VAL]
)

seems very close, right? but if someone drops [] it will work, except
in some cases that requires quotes, etc. It's tricky.

Needless to say there is no such thing as variable types in autoconf,
that prevents people to create nice GUI for it, for cmake people have
at least an ncurses and qt! You can have it to present checkboxes or
even file dialogs to choose paths.

If you want to choose cache for variables, painful with autoconf...
then we don't do it and we actually remove config.cache!

Take a look at:
http://svn.webkit.org/repository/webkit/trunk/CMakeLists.txt  # our configure.ac
http://svn.webkit.org/repository/webkit/trunk/Source/cmake/ # our m4/

As webkit is a complex software with different ports (different
features, versions...), each port keeps options in separate:
http://svn.webkit.org/repository/webkit/trunk/Source/cmake/OptionsCommon.cmake
http://svn.webkit.org/repository/webkit/trunk/Source/cmake/OptionsEfl.cmake
http://svn.webkit.org/repository/webkit/trunk/Source/cmake/OptionsWinCE.cmake
http://svn.webkit.org/repository/webkit/trunk/Source/cmake/OptionsBlackBerry.cmake

I doubt you can't read or hack those.

-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: [email protected]
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

------------------------------------------------------------------------------
Systems Optimization Self Assessment
Improve efficiency and utilization of IT resources. Drive out cost and 
improve service delivery. Take 5 minutes to use this Systems Optimization 
Self Assessment. http://www.accelacomm.com/jaw/sdnl/114/51450054/
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to