/tools

Ancillary tools for the D programming language compiler

Primary LanguageDBoost Software License 1.0BSL-1.0

D tools

GitHub tag Bugzilla Issues Buildkite license

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 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.