.TH WIDL 1 "October 2007" "@PACKAGE_STRING@" "Wine Developers Manual"
.SH NAME
widl \- Wine Interface Definition Language (IDL) compiler
.SH SYNOPSIS
.B widl
[\fIoptions\fR] \fIIDL_file\fR
.br
.B widl
[\fIoptions\fR] \fB--dlldata-only\fR \fIname1\fR [\fIname2\fR...]
.SH DESCRIPTION
When no options are used the program will generate a header file, and possibly
client and server stubs, proxy and dlldata files, a typelib, and a UUID file,
depending on the contents of the IDL file.  If any of the options \fB-c\fR,
\fB-h\fR, \fB-p\fR, \fB-s\fR, \fB-t\fR, \fB-u\fR or \fB--local-stubs\fR is given,
.B widl
will only generate the requested files, and no others.  When run with
\fB--dlldata-only\fR, widl will only generate a dlldata file, and it will
contain a list of the names passed as arguments.  Usually the way this file
is updated is that each time
.B widl
is run, it reads any existing dlldata file, and if necessary regenerates it
with the same list of names, but with the present proxy file included.
.PP
When run without any arguments,
.B widl
will print a help message.
.PP
.SH OPTIONS
.PP
.B General options:
.IP "\fB-V\fR"
Print version number and exit.
.IP "\fB-o, --output=\fIname"
Set the name of the output file. When generating multiple output
files, this sets only the base name of the file; the respective output
files are then named \fIname\fR.h, \fIname\fR_p.c, etc.  If a full
file name with extension is specified, only that file is generated.
.IP "\fB-b \fIcpu-manufacturer\fR[\fB-\fIkernel\fR]\fB-\fIos\fR"
Set the target architecture when cross-compiling. The target
specification is in the standard autoconf format as returned by
\fBconfig.sub\fR.
.PP
.B Header options:
.IP "\fB-h\fR"
Generate header files. The default output filename is \fIinfile\fB.h\fR.
.IP "\fB--oldnames\fR"
Use old naming conventions.
.PP
.B Type library options:
.IP \fB-t\fR
Generate a type library. The default output filename is
\fIinfile\fB.tlb\fR.  If the output file name ends in \fB.res\fR, a
binary resource file containing the type library is generated instead.
.IP "\fB-m32, -m64\fR"
Generate a Win32 or Win64 type library respectively.
.PP
.B UUID file options:
.IP "\fB-u\fR"
Generate a UUID file. The default output filename is \fIinfile\fB_i.c\fR.
.PP
.B Proxy/stub generation options:
.IP "\fB-c\fR"
Generate a client stub file. The default output filename is \fIinfile\fB_c.c\fR.
.IP "\fB-Os\fR"
Generate inline stubs.
.IP "\fB-Oi\fR"
Generate old-style interpreted stubs.
.IP "\fB-Oif, -Oic, -Oicf\fR"
Generate new-style fully interpreted stubs.
.IP "\fB-p\fR"
Generate a proxy. The default output filename is \fIinfile\fB_p.c\fR.
.IP "\fB--prefix-all=\fIprefix\fR"
Prefix to put on the name of both client and server stubs.
.IP "\fB--prefix-client=\fIprefix\fR"
Prefix to put on the name of client stubs.
.IP "\fB--prefix-server=\fIprefix\fR"
Prefix to put on the name of server stubs.
.IP "\fB-s\fR"
Generate a server stub file. The default output filename is
\fIinfile\fB_s.c\fR.
.IP "\fB--win32\fR, \fB--win64\fR"
Only generate 32-bit or 64-bit code respectively (the default is to
generate both 32-bit and 64-bit versions into the same destination
file).
.PP
.IP "\fB--winrt\fR"
Enable Windows Runtime mode.
.IP "\fB--ns_prefix\fR"
Prefix namespaces with ABI namespace.
.PP
.B Registration script options:
.IP "\fB-r\fR"
Generate a registration script. The default output filename is
\fIinfile\fB_r.rgs\fR. If the output file name ends in \fB.res\fR, a
binary resource file containing the script is generated instead.
.PP
.B Dlldata file options:
.IP "\fB--dlldata-only\fI name1 \fR[\fIname2\fR...]"
Regenerate the dlldata file from scratch using the specified proxy
names. The default output filename is \fBdlldata.c\fR.
.PP
.B Preprocessor options:
.IP "\fB-I \fIpath\fR"
Add a header search directory to path. Multiple search
directories are allowed.
.IP "\fB-D \fIid\fR[\fB=\fIval\fR]"
Define preprocessor macro \fIid\fR with value \fIval\fR.
.IP "\fB-E\fR"
Preprocess only.
.IP "\fB-N\fR"
Do not preprocess input.
.PP
.B Debug options:
.IP "\fB-W\fR"
Enable pedantic warnings.
.IP "\fB-d \fIn\fR"
Set debug level to the non negative integer \fIn\fR.  If
prefixed with \fB0x\fR, it will be interpreted as an hexadecimal
number.  For the meaning of values, see the \fBDEBUG\fR section.
.PP
.B Miscellaneous options:
.IP "\fB-app_config\fR"
Ignored, present for midl compatibility.
.IP "\fB--local-stubs=\fIfile\fR"
Generate empty stubs for call_as/local methods in an object interface and
write them to \fIfile\fR.
.PP
.SH DEBUG
Debug level \fIn\fR is a bitmask with the following meaning:
    * 0x01 Tell which resource is parsed (verbose mode)
    * 0x02 Dump internal structures
    * 0x04 Create a parser trace (yydebug=1)
    * 0x08 Preprocessor messages
    * 0x10 Preprocessor lex messages
    * 0x20 Preprocessor yacc trace
.SH BUGS
Bugs can be reported on the
.UR http://bugs.winehq.org
.B Wine bug tracker
.UE .
.SH AUTHORS
.B widl
was originally written by Ove Kåven.  It has been improved by Rob Shearman,
Dan Hipschman, and others.  For a complete list, see the git commit logs.
This man page was originally written by Hannu Valtonen and then updated by
Dan Hipschman.
.SH AVAILABILITY
.B widl
is part of the Wine distribution, which is available through WineHQ,
the
.UR http://www.winehq.org/
.B Wine development headquarters
.UE .
.SH "SEE ALSO"
.UR http://www.winehq.org/help
.B Wine documentation and support
.UE .
