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