diff builder.d @ 29:960b408d3ac5

Builds and runs ok with builder now. Still heaps of cleaning up to do, especially code roughly imported from dog.
author Graham St Jack <graham.stjack@internode.on.net>
date Mon, 03 Aug 2009 23:19:55 +0930
parents 1754cb773d41
children 4a688da41f1a
line wrap: on
line diff
--- a/builder.d	Sun Aug 02 16:27:21 2009 +0930
+++ b/builder.d	Mon Aug 03 23:19:55 2009 +0930
@@ -44,10 +44,10 @@
 //
 // The directory structure within a bundle is:
 //
-//  +--configure                Script to set up the build directory and check for assumed system libraries
-//  |
-//  +--repackage                Script to produce a source tarball that can be built with dsss
-//  |
+//  +--README                   Introductory information
+//  +--configure.d              D script to set up a build directory
+//  +--builder.d                This file
+//  +--options                  Compiler options
 //  +--uses                     Specifies which other bundles to use, with paths relative to this bundle
 //  |
 //  +--product-name(s)          Provides namespace - only contains packages
@@ -505,11 +505,12 @@
         writefln("Object    %s", mPath);
         scope cmd = new StringFormatter;
 
-        cmd.format("dmd -c @%s", Global.optionsPath);
+        cmd.format("dmd -c");
         foreach (path; Global.bundlePaths) {
             cmd.format(" -I", path);
         }
         cmd.format(" -od%s -of%s %s", dirname(mPath), basename(mPath), mSource.mPath);
+        cmd.format(" @%s", Global.optionsPath);
 
         if (std.process.system(cmd.str)) {
             writefln("%s", cmd.str);
@@ -590,7 +591,7 @@
         writefln("Program   %s", mPath);
         scope cmd = new StringFormatter();
 
-        cmd.format("dmd -g @%s -L-L%s", Global.optionsPath, join(Global.buildPath, "lib"));
+        cmd.format("dmd -g -L-L%s", join(Global.buildPath, "lib"));
         cmd.format(" -of%s %s", mPath, mObject.mPath);
 
         // add the libraries we need
@@ -604,6 +605,7 @@
         foreach_reverse (lib; libs) {
             cmd.format(" -L-l%s", lib.mName);
         }
+        cmd.format(" @%s", Global.optionsPath);
 
         if (std.process.system(cmd.str)) {
             writefln("%s", cmd.str);