[CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
I've been using CMAKE for a few years now and I absolutley LOVE it. It makes my life as a programmer so much easier to be able to generate project files on any platform. What hurts is doing the reverse. I can't count how many hours I've spent converting Solutions, Projects and Makefiles into CmakeLists files. I think if CMAKE could generate CMakeLists files from Solutions, Projects and Makefiles, it would be the ULTIMATE make system. Just think. Any time you run into some sorcecode that does not have a CMakeFile, you could generate it from the Makefile or Project. I can't imagine any programmer that would not love that ability. I think it would be something great to add to CMAKE. What are everyones thoughts on that? Paul Dean I.T. Professional 714-341-4519 p...@pdcomputertech.com aquawic...@hotmail.com ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
Funny timing - I just did that today, at least in a crude manner. Long story short: On Unix/Linux/Mac, you can use the command-line tools (grep, sed, cut, xargs, etc.) to get the list of all source file that comprise the solutions' projects. If your needs aren't too fancy, it's pretty trivial to make a simple CMakeLists.txt file out of that list of files. Granted it's just a start, but my point is, it may not me as tough of a nut to crack as you fear, at least for relatively simple projects. > -Original Message- > From: cmake-boun...@cmake.org [mailto:cmake-boun...@cmake.org] On > Behalf Of Paul Dean > Sent: Tuesday, December 07, 2010 14:14 > To: cmake@cmake.org > Subject: [CMake] Creating CMakeLists files from Solutions,Projects and > Makefiles > > I've been using CMAKE for a few years now and I absolutley LOVE it. > It makes my life as a programmer so much easier to be able to generate > project files on any platform. > > What hurts is doing the reverse. I can't count how many hours I've > spent converting Solutions, Projects and Makefiles into CmakeLists > files. > > I think if CMAKE could generate CMakeLists files from Solutions, > Projects and Makefiles, it would be the ULTIMATE make system. > Just think. Any time you run into some sorcecode that does not have a > CMakeFile, you could generate it from the Makefile or Project. > > I can't imagine any programmer that would not love that ability. I > think it would be something great to add to CMAKE. > What are everyones thoughts on that? > > Paul Dean > I.T. Professional > 714-341-4519 > p...@pdcomputertech.com > aquawic...@hotmail.com > > > smime.p7s Description: S/MIME cryptographic signature ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
On Tue, Dec 7, 2010 at 2:14 PM, Paul Dean wrote: > I've been using CMAKE for a few years now and I absolutley LOVE it. > It makes my life as a programmer so much easier to be able to generate > project files on any platform. > > What hurts is doing the reverse. I can't count how many hours I've spent > converting Solutions, Projects and Makefiles into CmakeLists files. > > I think if CMAKE could generate CMakeLists files from Solutions, Projects > and Makefiles, it would be the ULTIMATE make system. > Just think. Any time you run into some sorcecode that does not have a > CMakeFile, you could generate it from the Makefile or Project. > > I can't imagine any programmer that would not love that ability. I think it > would be something great to add to CMAKE. > What are everyones thoughts on that? > I would love to see a working QMake to CMake converter. And I mean one that works for complicated QMake projects not just a simple executable with a few headers and a few source files. John ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
Hi, On Tue, Dec 07, 2010 at 02:25:18PM -0500, cmake-requ...@cmake.org wrote: > Message: 4 > Date: Tue, 7 Dec 2010 13:14:19 -0600 > From: Paul Dean > Subject: [CMake] Creating CMakeLists files from Solutions,Projects > and Makefiles > I've been using CMAKE for a few years now and I absolutley LOVE it. > It makes my life as a programmer so much easier to be able to generate > project files on any platform. > > What hurts is doing the reverse. I can't count how many hours I've spent > converting Solutions, Projects and Makefiles into CmakeLists files. > > I think if CMAKE could generate CMakeLists files from Solutions, Projects and > Makefiles, it would be the ULTIMATE make system. http://sourceforge.net/projects/vcproj2cmake/ ? OK, it's not integrated, it's got its sizeable share of warts considering its current sorta-pre-beta status (I've currently got lots of notes for improvements in the near future though), but... it might just help after all, you know ;) > Just think. Any time you run into some sorcecode that does not have a > CMakeFile, you could generate it from the Makefile or Project. "some sorcecode" == 2MLOC on my side of the fence. It's working ok so far. Andreas Mohr ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
On 07.12.10 14:31:56, John Drescher wrote: > On Tue, Dec 7, 2010 at 2:14 PM, Paul Dean wrote: > > I've been using CMAKE for a few years now and I absolutley LOVE it. > > It makes my life as a programmer so much easier to be able to generate > > project files on any platform. > > > > What hurts is doing the reverse. I can't count how many hours I've spent > > converting Solutions, Projects and Makefiles into CmakeLists files. > > > > I think if CMAKE could generate CMakeLists files from Solutions, Projects > > and Makefiles, it would be the ULTIMATE make system. > > Just think. Any time you run into some sorcecode that does not have a > > CMakeFile, you could generate it from the Makefile or Project. > > > > I can't imagine any programmer that would not love that ability. I think it > > would be something great to add to CMAKE. > > What are everyones thoughts on that? > > > > I would love to see a working QMake to CMake converter. And I mean one > that works for complicated QMake projects not just a simple executable > with a few headers and a few source files. If I recollect my lessons in computer-theory correctly from university, then this is not possible for the "general case". The problem is that QMake's language is very close to a general-purpose programming language, in particular it supports loops and conditions. This (again IIRC) makes it impossible for a program to decide wether two qmake projects or a qmake and a cmake project are semantically equal. It might be possible to do a "bit-by-bit" conversion of qmake project files to cmake, but I doubt the resulting cmake project is very useful except for pure building. Maintaining those cmake-files is not going to be easy or fun, nor would they match what a cmake developer would write if he set up stuff "from scratch" for cmake to build the project. And without the goal of switching from qmake to cmake, I don't see any point in doing a conversion in the first place - after all qmake can build the project on all interesting platforms already (else it would've been replaced). And that doesn't even consider a configure-script which I think most larger qmake projects have (like Qt itself). Andreas -- You are as I am with You. ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
On 07.12.10 13:14:19, Paul Dean wrote: > > I've been using CMAKE for a few years now and I absolutley LOVE it. > It makes my life as a programmer so much easier to be able to generate > project files on any platform. > > What hurts is doing the reverse. I can't count how many hours I've spent > converting Solutions, Projects and Makefiles into CmakeLists files. > > I think if CMAKE could generate CMakeLists files from Solutions, Projects and > Makefiles, it would be the ULTIMATE make system. > Just think. Any time you run into some sorcecode that does not have a > CMakeFile, you could generate it from the Makefile or Project. > > I can't imagine any programmer that would not love that ability. I think it > would be something great to add to CMAKE. > What are everyones thoughts on that? See my answer to John, basically I doubt this is actually possible, except for very static project-files like may VS solutions are. For Makefile's or other build-tools like qmake its not going to work as they allow arbitrary commands to be executed at any point. You may be able to convert the files on a syntactic level, but that doesn't guarantee you they're semantically equivalent. And I bet in most cases (except very trivial ones) the generated CMake files will look very un-cmake'ish. Not to mention configure-scripts written in some shell-language or as C++ app... Also whats the point of being able to generate cmake files from "any" project files? If I just want to build the project then I can just as well use the existing buildsystem to build. Why bother installing cmake, if VS is already installed and the project has a solution file? If you want to port a project to cmake, you'll probably also end up restructuring some things wrt. the buildsystem, so a human needs to do the conversion anyway (and automatic conversion will be ugly, see above). This is similar to automatic translation of languages. Yes todays tools that do this are good enough so that you can get the meaning of a text for many cases. But they're still not good enough to match what a native speaker would've written or to be able to translate any arbitrary text (especially 'slang', scientific texts etc. are causing problems for such tools). Andreas -- You need more time; and you probably always will. ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
> And without the > goal of switching from qmake to cmake, I don't see any point in doing a > conversion in the first place - after all qmake can build the project on > all interesting platforms already (else it would've been replaced). The reason I want this is there are a few QMake based libraries I would like to use with my projects but in their current form (without proper cmake support / finders ...) it becomes difficult to integrate them into projects that use CMake. John ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating CMakeLists files from Solutions, Projects and Makefiles
On 07.12.10 23:52:10, Andreas Pakulat wrote: > On 07.12.10 13:14:19, Paul Dean wrote: > > > > I've been using CMAKE for a few years now and I absolutley LOVE it. > > It makes my life as a programmer so much easier to be able to generate > > project files on any platform. > > > > What hurts is doing the reverse. I can't count how many hours I've spent > > converting Solutions, Projects and Makefiles into CmakeLists files. > > > > I think if CMAKE could generate CMakeLists files from Solutions, Projects > > and Makefiles, it would be the ULTIMATE make system. > > Just think. Any time you run into some sorcecode that does not have a > > CMakeFile, you could generate it from the Makefile or Project. > > > > I can't imagine any programmer that would not love that ability. I think > > it would be something great to add to CMAKE. > > What are everyones thoughts on that? > > See my answer to John, basically I doubt this is actually possible, > except for very static project-files like may VS solutions are. For > Makefile's or other build-tools like qmake its not going to work as they > allow arbitrary commands to be executed at any point. You may be able to > convert the files on a syntactic level, but that doesn't guarantee you > they're semantically equivalent. And I bet in most cases (except very > trivial ones) the generated CMake files will look very un-cmake'ish. > > Not to mention configure-scripts written in some shell-language or as > C++ app... > > Also whats the point of being able to generate cmake files from "any" > project files? If I just want to build the project then I can just as > well use the existing buildsystem to build. Why bother installing cmake, > if VS is already installed and the project has a solution file? > > If you want to port a project to cmake, you'll probably also end up > restructuring some things wrt. the buildsystem, so a human needs to do > the conversion anyway (and automatic conversion will be ugly, see > above). > > This is similar to automatic translation of languages. Yes todays tools > that do this are good enough so that you can get the meaning of a text > for many cases. But they're still not good enough to match what a native > speaker would've written or to be able to translate any arbitrary text > (especially 'slang', scientific texts etc. are causing problems for such > tools). PS: All the above doesn't mean I think conversion-tools are totally useless. In fact the automake-to-cmake tool I think is very useful to get a basic skeleton cmake project up in no time. That way one can concentrate on the 'real work', i.e. porting the library/feature checks and making sure that includes and link-libs are set up correctly. Andreas -- You are so boring that when I see you my feet go to sleep. ___ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake