tooling quality and some random rant
gölgeliyele
usuldan at gmail.com
Sun Feb 13 19:33:23 PST 2011
On 2/13/11 2:05 PM, Walter Bright wrote:
> golgeliyele wrote:
>> 2. dmd compiler's command line options:
>> This is mostly an esthetic issue. However, it is like the entrance to
>> your house. People who are not sure about entering in
>> care about what it looks like from the outside. If Walter is willing,
>> I can work on a command line options interface proposal
>> that would keep backwards compatibility with the existing options.
>> This would enable a staged transition. Would there be
>> an interest in this?
>
> A proposal would be nice. But please keep in mind that people often view
> their build systems / makefiles as black boxes, and breaking them with
> incompatible changes can be extremely annoying.
Here is one proposal:
Digital Mars D Compiler v2.051
Copyright (c) 1999-2010 by Digital Mars written by Walter Bright
Documentation: http://www.digitalmars.com/d/2.0/index.html
Usage:
dmd [options] <files>
<files> D source files
Options:
--commands <file> read arguments from a command file
-c, --compile only compile, do not link
--coverage do code coverage analysis
-D, --ddoc generate documentation
--ddoc-dir <dir> write documentation file to a directory
--ddoc-file <file> write documentation file to a file
-d, --deprecated allow deprecated features
--debug compile in debug code
--debug-level <level> compile in debug code <= level
--debug-ident <ident> compile in debug code identified by ident
--debug-lib <name> set symbolic debug library to name
--default-lib <name> set default library to name
--dependencies <file> write module dependencies to a file
--dylib generate dylib
-g, --sym-debug add symbolic debug info
--sym-debug-c add symbolic debug info, pretend to be C
-H, --header generate 'header' file
--header-dir <dir> write 'header' file to a directory
--header-file <file> write 'header' file to a file
--help print this help
-I, --imports <path> where to look for imports
--ignore-bad-pragmas ignore unsupported pragmas
--inline do function inlining
-J, --string-imports <path> where to look for string imports
-L, --linker-flags <flags> pass flags to the linker
--lib generate library rather than object files
--man open web browser on manual page
--linker-map generate linker .map file
--no-bounds-check turns off array bounds checking
--no-float do not emit reference to floating point
-O, --optimize optimize
-n, --no-object-file do not write object file
--object-dir <dir> write object, library files to a directory
--output <file> name output file to a file name
--no-path-strip do not strip paths from source file
--profile profile runtime performance of code
--quiet suppress unnecessary messages
--release compile release version
--run <prog> <args...> run resulting program file, passing args
--unittest compile in unit tests
-v, --verbose verbose
--version <level> compile in version >= level
--version <ident> compile in version identified by ident
--tls-vars list all variables going into thread
local storage
-w, --warnings enable warnings
-W, --info-warnings enable informational warnings
-X, --json generate JSON file
--json-file <file> write JSON file to a given file
More information about the Digitalmars-d
mailing list