Thread: [cedet-semantic] Make with Windows_NT cmd.exe and other things
Brought to you by:
zappo
From: <vin...@gm...> - 2012-10-23 05:53:14
|
Hello, Still in the same vein as my previous email, I investigated whether it would be easy to use make with Windows NT native shell cmd.exe. I attached what I came to: The file my_cedet_update.tgz contains two shell scripts which will probably work only in my environment: - my_cedet_update.bat is for compiling with cmd.exe - my_cedet_update.sh is for compiling with msys (which on this forum was deemed not the right way to have make on MSWindows). This still needs some elaboration, but I could not do this because I corrupted my source tree (I don't anymore a makefile under cedet/list/cedet), and I could not get again the latest source code, I tried: bzr branch bzr://cedet.bzr.sourceforge.net/bzrroot/cedet code But this does not work. Anyway, I wanted first to know whether this kind of evolution is welcome. It seems to me that this makes the Makefiles harder to read when going to all these macro definitions to be multi-platform. It would be simpler if EDE could generate makefile both for *nixy shells and for Windows_NT. OK, I know that somebody is going to say "anyway you can build with cedet-build.el". But the discussion point is not just to build CEDET, but to build any project in a portably, and about this I am still in the opinion that if GNUMake had more shell-like builtins (to do things like cp, mkdir, rmdir, rm, and find ... -exec) that would make this easier. VBR, Vincent. |
From: Stephen L. <ste...@st...> - 2012-10-23 21:29:23
|
vin...@gm... (Vincent Belaïche) writes: > OK, I know that somebody is going to say "anyway you can build with > cedet-build.el". But the discussion point is not just to build CEDET, > but to build any project in a portably, and about this I am still in the > opinion that if GNUMake had more shell-like builtins (to do things like > cp, mkdir, rmdir, rm, and find ... -exec) that would make this easier. Gnu Make and Gnu Bash run everywhere you need them; that is the most portable solution. -- -- Stephe |
From: David E. <de...@ra...> - 2012-10-25 15:40:46
|
Vincent Belaïche writes: > This still needs some elaboration, but I could not do this because I > corrupted my source tree (I don't anymore a makefile under > cedet/list/cedet), and I could not get again the latest source code, I > tried: > > bzr branch bzr://cedet.bzr.sourceforge.net/bzrroot/cedet code > > But this does not work. Wrong URL. See http://cedet.sourceforge.net/bzr-repo.shtml > Anyway, I wanted first to know whether this kind of evolution is > welcome. It seems to me that this makes the Makefiles harder to read > when going to all these macro definitions to be multi-platform. Changing EDE to generate multi-platform Makefiles like this is indeed out of the question. Our Makefiles are already too complicated. Generating Makefiles for other systems like Windows would have to be a separate EDE project type. Now, building CEDET through such a project is a different issue; at least I could not properly test and maintain that, and frankly, I still don't see the need for such a build, because... > I know that somebody is going to say "anyway you can build with > cedet-build.el". ...yep. > - con: You re-invent what GNUMake does perfectly, that is to say, > most of the time you do a re-build all and lose all the > partial build and parallelization that GNUMake can do. cedet-build.el doesn't do a full rebuild. Parallel builds are another matter entirely; we don't support it, neither through cedet-build.el nor through GNU Make. It simply might or might not work with the latter, since GNU Make cannot magically solve dependencies between targets. > - use a build system that is more platform independent that GNUMake, the > only candidate that come to my mind is ant. There are many build systems out there which are more patform independent than GNU Make. Scons, Rake, Maven, Cmake, just to name a few. Supporting one of those in EDE - now that would be nice addition. Someone should totally code that. -David |