Bud Utility © 2006, Derek Parnell, Melbourne
(table of contents)
build <sourcefile> [<switches> ] [<otherfiles> ]You can however specify the files and switches in any order you like.
Path and Version : C:\Program Files\build.exe v3.6(339)
Usage: build sourcefile [options objectfiles libraries]
sourcefile D source file
-v Verbose (passed through to D)
-V Verbose (NOT passed through)
-names Displays the names of the files used to build the target.
-DCPATH<path> <path> is where the compiler has been installed.
Only needed if the compiler is not in the system's
PATH list. Used if you are testing an alternate
version of the compiler.
-CFPATH<path> <path> is where the D config file has been installed.
-full Causes all source files, except ignored modules,
to be compiled.
-link Forces the linker to be called instead of the librarian.
(Only needed if the source files do not contain
main/WinMain)
-nolink Ensures that the linker is not called.
(Only needed if main/WinMain is found in the source
files and you do NOT want an executable created.)
-lib Forces the object files to be placed in a library.
(Only needed if main/WinMain is found in the source
files AND you want it in a library instead of
an executable.)
-modules<=name> Create a Module List File.
-nolib Ensures that the object files are not used to form
a library.
(Only needed if main/WinMain is not found in the source
files and you do NOT want a library.)
-obj This is the same as having both -nolink and -nolib
switches on the command line. It is just a shorthand.
-allobj Ensures that all object files are added to a
library.
(Normally only those in the same directory are added.)
-cleanup Ensures that all object files created during the run
are removed at the end of the run, plus other work files.
-clean Same as -cleanup
-test Does everything as normal except it displays the commands
instead of running them. Also, the auto-build-numbers are
not incremented.
-si Search the Import Path(s) for files specified on
the command line.
-MDF<path> Overrides the default Macro Definition File
-RDF<path> Overrides the default Rule Definition File
-gui[:x.y] Forces a GUI application to be created. The optional
:x.y can be used to build an application for a
specific version of Windows. eg. -gui:4.0
(Only needed if WinMain is not found in the source files
or if you wish to override the default Windows version)
-dll Forces a DLL library to be created.
(Only needed if DllMain is not found in the source files.)
-LIBOPT <opt> Allows you to pass <opt> to the librarian
-LIBPATH=<pathlist> Used to add a semi-colon delimited list
of search paths for library files.
-X<module> Packages and Modules to ignore (eg. -Xmylib)
-M<module> Packages and Modules to notice (eg. -Mphobos)
-T<targetname> The name of the target file to create. Normally
the target name istaken from the first or only name
of the command line.
-R=<Yes/No> Indicates whether to use a response file or command line
arguments with the compiler tools.
-R=Yes will cause a response to be used.
-R=No will cause command line arguments to be used.
-R will reverse the current usage.
Note that the default for Windows DigitalMars is to use a response file
but for all other environments it is to use command line arguments.
-info Displays the version and path of the Bud application
-help Displays the full 'usage' help text.
-h Same as /-help, displays the full 'usage' help text.
-? Same as /-help, displays the full 'usage' help text.
-silent Avoids unnecessary messages being displayed.
-noautoimport Turns off the automatic addition of source paths
to the list of Import Roots.
-exec<param> If the link is successful, this will cause the
executable just created to run. You can give it
run time parameters. Anything after the '-exec' will
placed in the program's command line. You will need
to quote any embedded spaces.
-od<path> Nominate the directory where temporary (work) files
are to be created. By default they are created in
the same directory as the target file.
-nodef Prevents a Module Definition File being automatically created.
This will override any pragma()
statements in the source code.
-UMB=<Yes/No> If Yes this forces the utility to expect
the object file to be created or residing in the current
directory.
[...] All other options, objectfiles and libraries are
passed to the compiler
See also