Documentation for Build v2.08
Table of Contents

Introduction

This is a utility to build an application using the D programming language. It does this by examining the source file supplied on the command line to work out its dependant files, and then determines which need to be compiled and which need to be linked to create the executable.

Alternatively, it can be used to create a Library file rather than an executable.

The aim of the utility is to help remove the need for make files or similar devices.


Table of Contents

Topic

Description

IndexAlphabetical list of all items.
Auto Build NumberAutomatically Incremented Build Numbering for Modules
Change LogA list of changes and fixes that have been made.
Command Line The build utility supplies the source file and optional switches via the command line.
Configuration FileThe utility configuration file is used to specify your default options for the utility.
DLL LibrariesHow to create a DLL library using Build.
Pragma The build utility supports the use of various pragma statements.
Response FileA response file is a file that contains command line values.
Rule Definition FileDefines the rules used to build non-D source files.
Switches Build supports a number of command line switches to control its default assumptions.
To DoIdeas that have yet to be implemented.

Index

-allobj [switch] Ensures that all object files are added to a library.
-CFPATH [switch] Identifies where the D config file has been installed.
-cleanup [switch] Ensures that all working files created during the run are removed.
-DCPATH [switch] Identifies where the compiler has been installed.
-dll [switch] Forces a DLL library to be created.
-full [switch] Causes all source files, except ignored modules, to be compiled.
-gui [switch] Forces a GUI application to be created.
-help [switch] Displays the full text of the Usage information.
-info [switch] Displays the version and path of the build application
-lib [switch] Forces the object files to be placed in a library.
-LIBOPT [switch] Allows commandline options to be passed to the librarian.
-LIBPATH [switch] Used to add a list of search paths for library files.
-link [switch] Forces the linker to be called instead of the librarian.
-M [switch] Identifies a module or a package to notice (not ignore)
-names [switch] Displays the names of the files used in building the target.
-noautoimport [switch] Prevents source file paths from being added to the list of Import Roots
-nodef [switch] Prevent a Module Definition File being created.
-nolib [switch] Ensures that the object files are not used to form a library.
-nolink [switch] Ensures that the linker is not called.
-obj [switch] Shorthand for using both -nolink and -nolib switches.
-od [switch] Nominates the temporary file directory.
-R [switch] Determines if the compiler tools use a response file or not.
-RDF [switch] Defines a file to override the default Rule Definition File
-silent [switch] Prevents unnecessary messages being displayed.
-T [switch] Identifies the target name to build.
-test [switch] Does a test run only. No compiling, linking or library work is done.
-V [switch] Set verbose mode on for just build and not for the compiler
-v [switch] Set verbose mode on for both build and for the compiler
-X [switch] Identifies a module or package to ignore
Auto Build Number
build [pragma] This identifies a file that needs an external program to build it.
build_def [pragma] This supplies an option to be placed in an OptLink definition file.
Change Log
Command Line
Configuration File
DLL Libraries
include [pragma] This identifies a required file which is not otherwise imported.
link [pragma] This nominates one or more libraries that are required to be linked in.
nolink [pragma] This identifies that the current module is not to be be linked in.
Pragma
Response File
Rule Definition File
Switches
target [pragma] This identifies the basename of the target file.
To Do