.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.
.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--rt\fR"
Enable additional language extensions for IDL to support WinRT.
.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 .
