Hi Francesco,

Just for the sake of discussion/learning.

Francesco Montorsi wrote:

>   - it provides a build system mostly identic to the wxWidgets build 
> system. This is a bonus for the users because it means that if they 
> managed to compile wx, they surely will manage to compile also wxArt2d ;)

You are right, also the many flavors wxWidgets offers by default ( e.g. in IDE 
project files ), can not be made like 
that in Cmake.

> 
>   - it does not require anything else the compiler while cmake requires 
> "cmake" exec to be installed on the user's side. From that POV, it's 
> also faster to use: in fact the end user does not need to use it in any 
> way nor even know about its existence.

I as a developer, need some version of bakefile generator, python. And what i 
remember it is slow.
Documentation is so so. Without you behind it, i would have stayed far away 
from it.
I see you talking about configure, AM files, and it seems to me all complicated.
Not for the user, but for me, and as you say, we really prefer to do other 
things.
If the maturity level of bakefile in terms of docs, easy of use etc. is 
becoming better, it is becoming more interesting 
to people having limited time. That's me :-)

But the amount of make files given to the user is not that small, but it is at 
least in few locations.
The real draw back of only having make files for the user, is that certain 
things become impossible.
Like i generate the binding for wxLua on the fly, while building.

> 
>   - it provides a "template-target" architecture which basically is OOP 
> translated in the "build system tools logic": you create <template>s 
> from which you then derive your targets or other templates (just like in 
> C++ you can create classes and inherit others from them).

What is de advantage of that? Cmake is indeed more like a programming script 
language.

> 
>   - it does not require a CMakeLists.txt file everywhere

This one, i find not a problem. I see here and there a Makefile.in next to my 
CmakeLists.txt.
I could in fact concentrate all Cmake stuff in one location, but for the sake 
of modularity i did not.
And as i understand, for bakefile the situation would be the same, if all 
modules would be seperate packages.

> 
>   - running bakefile generates a limited set of files of which you know 
> where they go and what they contain. CMake IMHO generates a _bunch_ of 
> files here and there, everywhere (thus the strong need of out-of-source 
> builds!)

But this outside source builds is great! It is improving with bakefile, but 
there were conflict when building release 
and debug in wxLua.

How often did i need to delete my wxLua checkout, and check it out complete 
again, just to make it compile.
Else there are left overs after clean, which makes it impossible to compile.
Cleaning up things properly seems to be difficult.

Can bakefile build outside already? As far as i remember wxWidgets itself is 
able to.

> 
>   - last but not least: IIRC it supports more formats than cmake does. 
> I'm on Unix and so I'm not 100% sure but bakefile supports:
> 
>      autoconf      GNU autoconf Makefile.in files
>      borland       Borland C/C++ makefiles
>      dmars         Digital Mars makefiles
>      dmars_smake   Digital Mars makefiles for SMAKE
>      gnu           GNU toolchain makefiles (Unix)
>      mingw         MinGW makefiles (mingw32-make)
>      msevc4prj     MS eMbedded Visual C++ 4 project files
>      msvc          MS Visual C++ nmake makefiles
>      msvc6prj      MS Visual C++ 6.0 project files
>      msvs2005prj   MS Visual Studio 2005 project files
>      symbian       Symbian development files
>      watcom        OpenWatcom makefiles
>      xcode2        Xcode 2.0 project.pbxproj files (UNFINISHED!)

Yes this is impressive, i like this.

> 
> I know the above points are not enough to convince you to drop cmake in 
> favour of bakefile but at least I tried :D

The feeling i would have by dropping Cmake is the same you have by dropping 
bakefile from wxArt2D.
It just does not feel good, after spending so much time on it.
And i simply have difficulty to handle bakefile.


> 
>> If wxPM  and all wxCode stuff is organized this way, or even using Cmake for 
>> some, it all has become easy because things 
>> are organized.
> I'm trying to update all my wxCode components and put the WXP descriptor 
> file to make them valid wxPM packages but unfortunately wxPM seems not 
> to have such a great success in wx users.

But what wxPM packages are available ??
I think it takes time, for me the great win is still that things in wxCode 
start to work ( like for me wxStedit, is 
without problems now ).
Although i still had to use WX_DEBUG=0 and not BUILD=release ??

> 
>> So for me it starts to look like bakefile and Cmake can used in a mixed 
>> configuration of packages without much problem.
> hopefully any build system which respects the "standards" we are 
> defining (in terms of naming etc) will be usable in such environment.

exactly.


>>> Thoughts?
>> If with not to much effort you can make the thing work again with bakefile( 
>> not that much did change ), it would improve 
>> the current situation. And i am curious how it would work out after all the 
>> changes to bakefile :-)
> much like wxLua... i.e. a 99.9% perfect build system ;)

Yep, and wxLua is picking up nicely because of that ;-)

> 
>> Several modules in wxArt2D can be usefull without anything else (docview), 
>> but sofar i have not 
>> managed to make them really available as seperate packages. I already 
>> seperated the samples to be outside of all 
>> modules, that was a first step. The next step  would be to organize the 
>> modules in such a way that they could be used as 
>> wxPM packages if wanted.
> right - but as said the packages would then need individual build systems.

And can there be something on top, to call the lower packages?
There or dependencies between them too.
Anyway that is not the discussion now.

> 
>> So Francesco its up to you.
>>
>> If you think it is better to spend your precious time, improving wxCode and 
>> wxLua and what not, i am all with you.
>> Only removing all bakefile stuff in wxArt2D hurts a bit, even if the 
>> arguments point to that.
> right. Removing the bakefile stuff from wxArt2D after all the time I 
> spent on it seems a waste.
> 
> I still have to make a definitive decision... I'll let you know asap.

You can not ask me to throw away all Cmake stuff just like that, and continue 
with bakefile.
People are using wxArt2D in Cmake mode, for there own project. They would need 
to switch too, if they want to stay 
platform independent, or at least something like a wxart2d-config would be 
needed.

But i see a lot of positive things to in using backfile, the most important 
being that it is fully synchronized with 
wxWidgets and wxlua etc. when it comes to compilers, buidl modes and such.

I wait patiently.

Klaas

-- 
Unclassified

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wxart2d-users_dev mailing list
Wxart2d-users_dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wxart2d-users_dev

Reply via email to