digitalmars.D.announce - CDC- Compile D Code
- Eric Poggel (30/30) Jul 03 2009 Hello,
- Michael P. (11/48) Jul 03 2009 It didn't build right away for me with DMD1.045 + Phobos.
- Eric Poggel (2/52) Jul 03 2009 Thanks. Your patch is now committed.
- Michael P. (3/56) Jul 03 2009 No problem.
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (8/11) Jul 03 2009 $ ./cdc -v cdc.d
- Eric Poggel (2/18) Jul 03 2009 Fixed. thanks for the bug report.
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.
Jul 03 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 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
Jul 03 2009
Michael P. wrote:Eric Poggel Wrote:Thanks. Your patch is now committed.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 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
Jul 03 2009
Eric Poggel Wrote:Michael P. wrote:No problem. Also, on the home page, http://dsource.org/projects/cdc, it says the homepage is http://yage3d.net in that little box. Might want to change that as well.Eric Poggel Wrote:Thanks. Your patch is now committed.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 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
Jul 03 2009
Eric Poggel wrote: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 -v cdc.d /usr/bin/ld: unknown flag: -ocdc Seems to be missing a space ? translate["-of"] = "-o"; Works OK on Mac OS X otherwise... (tested with Phobos if it matters) --anders
Jul 03 2009
Anders F Björklund wrote:Eric Poggel wrote:Fixed. thanks for the bug report.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 -v cdc.d /usr/bin/ld: unknown flag: -ocdc Seems to be missing a space ? translate["-of"] = "-o"; Works OK on Mac OS X otherwise... (tested with Phobos if it matters) --anders
Jul 03 2009