dmdz

Ellery Newcomer ellery-newcomer at utulsa.edu
Thu Mar 11 10:11:55 PST 2010


So I'm toying with a prototype, which is proving nice enough, but there 
be a few things that I'm not quite sure which way to go with.

Currently I have the general pattern

dmdz [global flags] foo1.zip [foo1 local flags] foo2.zip [foo2 local 
flags] ...

although when given multiple zips it just compiles them independently.

My thought was when fooi.zip compiles a lib file, the result should be 
made available to all subsequent zip files, so you could do something like

dmdz lib1.zip lib2.zip main.zip

where lib2 can depend on lib1 and main can depend on either lib. But 
then most if not all of lib1's flags need to be forwarded to lib2 and main.

The other alternative I thought of is all the zip files get extracted 
and then all compiled at once.

Or is multiple zip files even a good idea?



For the more specific case

dmdz [global flags] foo.zip [local flags]

it expects all the relevant content in foo.zip to be located inside 
directory foo, and doesn't extract anything else unless you explicitly 
tell it to.

Also, there can be a file 'cmd' (name?) inside foo.zip which contains 
additional flags for the compile, with local flags overriding global 
flags overriding flags found in cmd. At least for dmdz flags.

dmd flags get filtered out and forwarded to dmd.

The current strategy for compiling just involves giving every compilable 
thing extracted to dmd. There's also an option to compile each source 
file separately (which I put in after hitting an odd Out of Memory Error).

Comments?


Also, are there any plans for std.zip, e.g. with regard to ranges, 
input/output streams, etc? The current api seems a smidge spartan.



More information about the Digitalmars-d mailing list