D tools
This repository hosts various tools redistributed with DMD or used internally during various build tasks.
Program | Scope | Description |
---|---|---|
catdoc | Build | Concatenates Ddoc files. |
changed | Internal | Change log generator. |
chmodzip | Build | ZIP file attributes editor. |
ddemangle | Public | D symbol demangler. |
detab | Internal | Replaces tabs with spaces. |
dget | Internal | D source code downloader. |
dman | Public | D documentation lookup tool. |
dustmite | Public | Test case minimization tool. |
get_dlibcurl32 | Internal | Win32 libcurl downloader/converter. |
rdmd | Public | D build tool. |
rdmd_test | Internal | rdmd test suite. |
tests_extractor | Internal | Extracts public unittests (requires DUB) |
tolf | Internal | Line endings converter. |
updatecopyright | Internal | Update the copyright notices in DMD |
To report a problem or browse the list of open bugs, please visit the bug tracker.
For a list and descriptions of D development tools, please visit the D wiki.
Building
On a Posix system all tools can be built with:
make -f posix.mak all
Using DUB as a build tool
Most tools can also be built with DUB:
dub build :ddemangle
Running DUB tools
Some tools require D's package manager DUB.
By default, DUB builds a binary and executes it. On a Posix system,
the source files can directly be executed with DUB (e.g. ./tests_extractor.d
).
Alternatively, the full single file execution command can be used:
dub --single tests_extractor.d
Remember that when programs are run via DUB, you need to pass in --
before
the program's arguments, e.g dub --single tests_extractor.d -- -i ../phobos/std/algorithm
.
For more information, please see DUB's documentation.