CDC- Compile D Code

Eric Poggel dnewsgroup at yage3d.net
Fri Jul 3 12:25:33 PDT 2009


Michael P. wrote:
> Eric Poggel Wrote:
> 
>> Hello,
>>
>> I wrote a new build tool for D.  I'm calling it CDC (for Compile D 
>> Code).  It's hosted at http://dsource.org/projects/cdc .  I'm open to 
>> any ideas or constructive criticism.  My target here is anyone looking 
>> for a very simple build solution, not an everything and the kitchen sink 
>> project like DSSS (not that that's a bad thing).
>>
>>
>>  From the project description:
>>
>> This is a D programming language build script (and library) that can be 
>> used to compile D (version 1) source code. Unlike Bud, DSSS/Rebuild, 
>> Jake, and similar tools, CDC is contained within a single file that can 
>> easily be distributed with projects. This simplifies the build process 
>> since no other tools are required. The customBuild() function can be 
>> utilized to turn CDC into a custom build script for your project.
>>
>> CDC's only requirement is a D compiler. It is/will be supported on any 
>> operating system supported by the language. It works with dmd, ldc 
>> (soon), and gdc, phobos or tango.
>>
>> CDC can be used just like dmd, except for the following improvements.
>>
>>      * CDC can accept paths as as well as individual source files for
>>        compilation. Each path is recursively searched for source,
>>        library,
>>        object, and ddoc files.
>>      * CDC automatically creates a modules.ddoc file for use with
>>        CandyDoc? and similar documentation utilities.
>>      * CDC defaults to use the compiler that was used to build itself.
>>        Compiler flags are passed straight through to that compiler.
>>      * The -op flag is always used, to prevent name conflicts in object
>>        and doc files.
>>      * Documentation files are all placed in the same folder with their
>>        full package names. This makes relative links between documents
>>        easier.
> 
> It didn't build right away for me with DMD1.045 + Phobos.
> I changed line 141 which is:
> import std.c.time : sleep;
> to
> import std.c.time : sleep, usleep;
> And it built fine.
> The errors were:
> michael at ubuntu:~/d/cdc/trunk$ dmd cdc.d
> cdc.d(623): Error: undefined identifier usleep
> cdc.d(623): Error: function expected before (), not usleep of type int

Thanks.  Your patch is now committed.


More information about the Digitalmars-d-announce mailing list