forked from dlang/tools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrdmd.1
124 lines (96 loc) · 3 KB
/
rdmd.1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
.TH RDMD 1 "2006-03-12" "Digital Mars" "Digital Mars D"
.SH NAME
rdmd \- Digital Mars D executable cacher
.SH SYNOPSIS
.B rdmd [compiler arguments] [rdmd arguments]
.I progfile.d
.B [program arguments]
.SH DESCRIPTION
.B rdmd
is a program to compile, cache and execute D source code
files or 'pseudo shell scripts' (using the she-bang syntax
with dmd v0.146 or above) on Linux and Windows systems.
It will cache the executable in the
.I /tmp
directory by default and will re-compile the executable if
any of the source file, the compiler or rdmd itself is
newer than the cached executable. It can optionally use
.B gdmd
if specified, but uses
.B dmd
by default.
.SH OPTIONS
.IP --build-only
Just build the executable, don't run it
.IP --chatty
Write compiler commands to stdout before executing them
.IP --compiler=(dmd|gdmd|ldmd2)
Use the specified compiler (e.g. gdmd) instead of dmd
.IP --dry-run
Do not compile, just show what commands would be run
(implies --chatty)
.IP --eval=\fIcode\fR
Evaluate code as in perl -e (multiple --eval allowed)
.IP --exclude=\fIpackage\fR
Exclude a package from the build (multiple --exclude allowed)
.IP --include=\fIpackage\fR
Negate an --exclude switch or a package excluded by default
.IP --extra-file=\fIfile\fR
Include an extra source or object in the compilation. Useful
if you need to add an extra object (compiled by another
language maybe) or an extra source (when rdmd picked up the
.B "\&.di"
file rather than the
.B "\&.d"
file) when compiling the program (multiple --extra-file
allowed).
.IP --force
Force re-compilation of source code [default = do not
force]
.IP --help
Print help
.IP --loop
Assume \fI"foreach (line; stdin.byLine()) { ... }"\fR for eval
.IP --main
Add a stub main program to the mix (e.g. for unittesting)
.IP --makedepend
Print dependencies in makefile format and exit
.IP --makedepfile=\fIfile\fR
Print dependencies in makefile format to file and continue
.IP --man
Open web browser on manual page
.IP --shebang
On some operating systems (e.g. Linux) all of the arguments to the interpreter
in a shebang line are passed as one concatenated string. In such an
environment if you need to supply multiple options to rdmd, place this option
before any others. This will cause rdmd to parse the string and extract all
of the options.
.IP --tmpdir=\fItmp_dir_path\fR
Specify directory to store cached program and other
temporaries [default = as per \fIhttp://dlang.org/phobos/std_file.html#.tempDir\fR]
.SH ENVIRONMENT
.TP
.B RDMD_DMD
Specifies the D compiler to use, in the same way as \fB--compiler\fR, when \fB--compiler\fR is not specified.
.PP
.SH NOTES
.B dmd
or
.B gdmd
must be in the current user context $PATH
.PP
.B rdmd
does not support execution of D source code via stdin
.PP
.B rdmd
will only compile and execute files with a '.d' file
extension
.PP
\fBrdmd\fR's functionality will probably get folded into
dmd itself
.SH AUTHOR
Written by Andrei Alexandrescu
Originally written by Dave Fladebo and Robert Mariottini
.SH "SEE ALSO"
.BR dmd (1)
.BR gdmd (1)