CDC- Compile D Code

Michael P. baseball.mjp at gmail.com
Fri Jul 3 10:56:55 PDT 2009


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


More information about the Digitalmars-d-announce mailing list