March 23, 2004 A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to dmt | >
>People will be more attracted to "D" when somebody provides makefile for compiler linix distribution. It is hard to figure out on what platform and with what libraries binaries been compiled and linked.
>
Would like a D automake program that can scan a module and the options given, determine what other modules will be imported (for this compile, subject to any versioning), add them, scan them recursively to get everything that is needed. It should be aware of Phobos (which are loaded automatically) and able to deal with packages however we decide to handle that. This doesn;t seem very terrible, I may do it next after a round of improvement on my wildcard code.
|
March 23, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to ,larry cowan | I recently started using SCons and have to say, it beats the buttons off of traditional 'make'. Try giving it a look, at least. http://www.scons.org/ Of course I guess I'm biased, being a bit of a Python person. :) -C. Sauls -Invironz |
March 23, 2004 A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to dmt | >
>People will be more attracted to "D" when somebody provides makefile for compiler linix distribution. It is hard to figure out on what platform and with what libraries binaries been compiled and linked.
>
Would like a D automake program that can scan a module and the options given, determine what other modules will be imported (for this compile, subject to any versioning), add them, scan them recursively to get everything that is needed. It should be aware of Phobos (which are loaded automatically) and able to deal with packages however we decide to handle that. This doesn't seem very terrible, I may do it next after a round of improvement on my wildcard code.
|
March 23, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to C. Sauls | C. Sauls wrote:
> I recently started using SCons and have to say, it beats the buttons off of traditional 'make'. Try giving it a look, at least.
> http://www.scons.org/
>
> Of course I guess I'm biased, being a bit of a Python person. :)
Seconded. SCons is awesome. I should see if it's possible to make a standalone package with py2exe.
-- andy
|
March 23, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to ,larry cowan | ,larry cowan wrote: <snip> > Would like a D automake program that can scan a module and the options given, > determine what other modules will be imported (for this compile, subject to any > versioning), add them, scan them recursively to get everything that is needed. > It should be aware of Phobos (which are loaded automatically) and able to deal > with packages however we decide to handle that. This doesn;t seem very > terrible, I may do it next after a round of improvement on my wildcard code. It would be handy if it would compile the whole lot in one dmd run, enabling the holistic optimisations to take place. But then again, it would also be handy if OSs supported infinitely long command lines! Stewart. -- My e-mail is valid but not my primary mailbox, aside from its being the unfortunate victim of intensive mail-bombing at the moment. Please keep replies on the 'group where everyone may benefit. |
March 23, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to Stewart Gordon | It probably should be switchable to try a single-compile or separate ones at the user's option. There are potential problems there with pure template modules that require a much smarter code scanner or more user provided info. In article <c3p3j1$gj3$2@digitaldaemon.com>, Stewart Gordon says... > >,larry cowan wrote: > ><snip> >> Would like a D automake program that can scan a module and the options given, determine what other modules will be imported (for this compile, subject to any versioning), add them, scan them recursively to get everything that is needed. It should be aware of Phobos (which are loaded automatically) and able to deal with packages however we decide to handle that. This doesn;t seem very terrible, I may do it next after a round of improvement on my wildcard code. > >It would be handy if it would compile the whole lot in one dmd run, enabling the holistic optimisations to take place. But then again, it would also be handy if OSs supported infinitely long command lines! > >Stewart. > >-- >My e-mail is valid but not my primary mailbox, aside from its being the unfortunate victim of intensive mail-bombing at the moment. Please keep replies on the 'group where everyone may benefit. |
March 24, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andy Friesen | On Mon, 22 Mar 2004 19:17:42 -0800, Andy Friesen <andy@ikagames.com> wrote: > C. Sauls wrote: > > I recently started using SCons and have to say, it beats the buttons off of traditional 'make'. Try giving it a look, at least. http://www.scons.org/ > > > > Of course I guess I'm biased, being a bit of a Python person. :) > > Seconded. SCons is awesome .. > I should see if it's possible to make a standalone package with py2exe. Please! Karl Bocher |
March 24, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to Karl Bochert | Karl Bochert wrote: > On Mon, 22 Mar 2004 19:17:42 -0800, Andy Friesen <andy@ikagames.com> wrote: > >>C. Sauls wrote: >> >>>I recently started using SCons and have to say, it beats the buttons off of traditional 'make'. Try giving it a look, at least. >>>http://www.scons.org/ >>> >>>Of course I guess I'm biased, being a bit of a Python person. :) >> >>Seconded. SCons is awesome > > .. > >>I should see if it's possible to make a standalone package with py2exe. > > > Please! > > Karl Bocher > > I always make and use a compile.bat for compiling and a debug.bat for debugging. (They're different for each project, but I only have to modify them every so often. For c# and java I have them compile *.cs, or *.java, etc, and only have to modify the compile.bat once or twice. I haven't tried that with D yet.) Example: ------------------ @echo off set path=c:\dm\bin;c:\dmd\bin;%path% set LIB=\dmd\lib;\dm\lib del D_SpaceSim.exe dmd.exe spacesim.d mt.d webinterface.d winutil.d socket.d winsock.d windows.d ws2_32.lib D_SpaceSim.exe -debug -g -gt -unittest | more if exist D_SpaceSim.exe goto g goto x2 :g del SpaceSim.exe dmd.exe spacesim.d mt.d webinterface.d winutil.d socket.d winsock.d windows.d ws2_32.lib SpaceSim.exe -release -O | more if exist SpaceSim.exe goto g2 goto x2 :x2 pause :g2 del *.obj /q pause ------------------ (The pause at the very end is there because DMD still creates an EXE if the linker fails, so I need that to see if there are linker errors :/ - Otherwise it would auto-close when there are no errors, in XP anyways.) But personally, I never liked make or automake, etc. Admittedly, a tool which automatically determines what libraries you need and puts them in the command line COULD be useful, but if the time it takes to learn and be able to use it is greater than the time it takes to write a batch file to do the job (Which takes a minute or less), then I would just write the batch file. -SL |
March 24, 2004 Re: A dmake program needed [was: How are people finding D?] | ||||
---|---|---|---|---|
| ||||
Posted in reply to SL | I used to use compile.bat myself before switching to SCons, which I did partly so I could have one compile script on both Windows and Linux, since my main projects need that. But to make a brief point and then hush about it, this is your compile script, converted to SCons... =======file: %project%\SConstruct======= env = Environment( DC = '/dmd/bin/dmd', DLIB = '/dm/bin/lib' ) common = Split(""" spacesim.d mt.d webinterface.d winutil.d socket.d winsock.d windows.d ws2_32.lib """) prefix = '' exe = 'SpaceSim' if (ARGUMENTS.get('debug', False)): env.Append(DCFLAGS = ' -debug -g -gt -unittest ') prefix = 'D_' else: env.Append(DCFLAGS = ' -release -O ') Default(env.Program(prefix + exe, [common])) =======end file: %project%\SConstruct======= =======file: %project%\compile.bat======= @echo off set D_TARGET=D_SpaceSim.exe set TARGET=SpaceSim.exe scons -Q -s debug=1 | more if exist %D_TARGET% goto good goto bad :good scons -Q -s | more if exist %TARGET% goto good2 goto bad :good2 del *.obj /q :bad pause =======end file: %project%\compile.bat======= Now bear in mind I threw this together literally over the last two minutes, and that I tried to mimic your batch file's behaviour as close as possible, which is the only reason there still is a batch file at all. Normally I might spend a few more minutes and iron the thing out a little so that I wouldn't need a batch at all... Plus now with this you would have the added conveniance that the same pair of files would work with any project. Just replace the two SET's in the batch file, and name the appropriate files and exe in the SConstruct file. Alrighty then, now I'm done. -C. Sauls -Invironz |
March 25, 2004 Re: A dmake program needed | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andy Friesen | Andy Friesen wrote: > C. Sauls wrote: > >> I recently started using SCons and have to say, it beats the buttons off of traditional 'make'. Try giving it a look, at least. >> http://www.scons.org/ >> >> Of course I guess I'm biased, being a bit of a Python person. :) > > > Seconded. SCons is awesome. I should see if it's possible to make a standalone package with py2exe. > > -- andy And of course A-A-P is even better ;). It's syntax is close to make's, can be scripted by Python and is actually somewhat influenced by SCons. And it supports dmd (hopefully gdmd and others will follow soon). I think it works wonderfully. http://www.a-a-p.org/ Lars Ivar Igesund |
Copyright © 1999-2021 by the D Language Foundation