|  | .\" -*- nroff -*- | 
|  | .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] \fIinfile\fR.idl | 
|  | .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 are 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-b \fIcpu-manufacturer[-kernel]-os\fR" | 
|  | Set the target architecture when cross-compiling. The target | 
|  | specification is in the standard autoconf format as returned by | 
|  | config.sub. | 
|  | .PP | 
|  | .B Header options: | 
|  | .IP "\fB-h\fR" | 
|  | Generate header files. | 
|  | .IP "\fB-H \fIfile\fR" | 
|  | Name of header file to generate. The default header | 
|  | filename is \fIinfile\fR.h. | 
|  | .IP "\fB--oldnames\fR" | 
|  | Use old naming conventions. | 
|  | .PP | 
|  | .B Type library options: | 
|  | .IP \fB-t\fR | 
|  | Generate a type library. | 
|  | .IP "\fB-T \fIfile\fR" | 
|  | Define the name of the type library to be generated. | 
|  | The default filename is \fIinfile\fR.tlb. | 
|  | .IP "\fB-m32, -m64\fR" | 
|  | Generate a Win32, respectively Win64, type library. | 
|  | .PP | 
|  | .B UUID file options: | 
|  | .IP "\fB-u\fR" | 
|  | Generate a UUID file. | 
|  | .IP "\fB-U \fIfile\fR" | 
|  | Define the name of the UUID file to be generated. | 
|  | The default filename is \fIinfile\fR_i.c. | 
|  | .PP | 
|  | .B Proxy/stub generation options: | 
|  | .IP "\fB-c\fR" | 
|  | Generate client stub. | 
|  | .IP "\fB-C \fIfile\fR" | 
|  | Name of client stub file (default is \fIinfile\fR_c.c) | 
|  | .IP "\fB-p\fR" | 
|  | Generate proxy. | 
|  | .IP "\fB-P \fIfile\fR" | 
|  | Name of proxy file (default is \fIinfile\fR_p.c) | 
|  | .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 server stub. | 
|  | .IP "\fB-S \fIfile\fR" | 
|  | Name of server stub file (default is \fIinfile\fR_s.c) | 
|  | .IP "\fB--win32, --win64\fR" | 
|  | Only generate 32-bit, respectively 64-bit code (the default is to | 
|  | generate both 32-bit and 64-bit versions into the same destination | 
|  | file). | 
|  | .PP | 
|  | .B Dlldata file options: | 
|  | .IP "\fB--dlldata=\fIfile\fR" | 
|  | Name of the dlldata file (default is dlldata.c) | 
|  | .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[=\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--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 | 
|  | .B widl | 
|  | is incomplete.  Please file bug reports for this application at | 
|  | .I http://bugs.winehq.org. | 
|  | .SH AUTHORS | 
|  | .B widl | 
|  | was originally written by Ove Kaaven.  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 "SEE ALSO" | 
|  | The Winelib User Guide | 
|  | .nf | 
|  | The Wine Developers Guide |