<html lang="en"> <head> <title>def file format - GNU Binary Utilities</title> <meta http-equiv="Content-Type" content="text/html"> <meta name="description" content="GNU Binary Utilities"> <meta name="generator" content="makeinfo 4.7"> <link title="Top" rel="start" href="index.html#Top"> <link rel="up" href="dlltool.html#dlltool" title="dlltool"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''. man end--> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"><!-- pre.display { font-family:inherit } pre.format { font-family:inherit } pre.smalldisplay { font-family:inherit; font-size:smaller } pre.smallformat { font-family:inherit; font-size:smaller } pre.smallexample { font-size:smaller } pre.smalllisp { font-size:smaller } span.sc { font-variant:small-caps } span.roman { font-family: serif; font-weight: normal; } --></style> </head> <body> <div class="node"> <p> <a name="def-file-format"></a>Up: <a rel="up" accesskey="u" href="dlltool.html#dlltool">dlltool</a> <hr><br> </div> <h3 class="section">14.1 The format of the <span class="command">dlltool</span> <span class="file">.def</span> file</h3> <p>A <span class="file">.def</span> file contains any number of the following commands: <dl> <dt><code>NAME</code> <var>name</var> <code>[ ,</code> <var>base</var> <code>]</code><dd>The result is going to be named <var>name</var><code>.exe</code>. <br><dt><code>LIBRARY</code> <var>name</var> <code>[ ,</code> <var>base</var> <code>]</code><dd>The result is going to be named <var>name</var><code>.dll</code>. <br><dt><code>EXPORTS ( ( (</code> <var>name1</var> <code>[ = </code> <var>name2</var> <code>] ) | ( </code> <var>name1</var> <code>=</code> <var>module-name</var> <code>.</code> <var>external-name</var> <code>) )</code><br><dt><code>[</code> <var>integer</var> <code>] [ NONAME ] [ CONSTANT ] [ DATA ] [ PRIVATE ] ) *</code><dd>Declares <var>name1</var> as an exported symbol from the DLL, with optional ordinal number <var>integer</var>, or declares <var>name1</var> as an alias (forward) of the function <var>external-name</var> in the DLL <var>module-name</var>. <br><dt><code>IMPORTS ( (</code> <var>internal-name</var> <code>=</code> <var>module-name</var> <code>.</code> <var>integer</var> <code>) | [</code> <var>internal-name</var> <code>= ]</code> <var>module-name</var> <code>.</code> <var>external-name</var> <code>) ) *</code><dd>Declares that <var>external-name</var> or the exported function whose ordinal number is <var>integer</var> is to be imported from the file <var>module-name</var>. If <var>internal-name</var> is specified then this is the name that the imported function will be referred to in the body of the DLL. <br><dt><code>DESCRIPTION</code> <var>string</var><dd>Puts <var>string</var> into the output <span class="file">.exp</span> file in the <code>.rdata</code> section. <br><dt><code>STACKSIZE</code> <var>number-reserve</var> <code>[, </code> <var>number-commit</var> <code>]</code><br><dt><code>HEAPSIZE</code> <var>number-reserve</var> <code>[, </code> <var>number-commit</var> <code>]</code><dd>Generates <code>--stack</code> or <code>--heap</code> <var>number-reserve</var>,<var>number-commit</var> in the output <code>.drectve</code> section. The linker will see this and act upon it. <br><dt><code>CODE</code> <var>attr</var> <code>+</code><br><dt><code>DATA</code> <var>attr</var> <code>+</code><br><dt><code>SECTIONS (</code> <var>section-name</var> <var>attr</var><code> + ) *</code><dd>Generates <code>--attr</code> <var>section-name</var> <var>attr</var> in the output <code>.drectve</code> section, where <var>attr</var> is one of <code>READ</code>, <code>WRITE</code>, <code>EXECUTE</code> or <code>SHARED</code>. The linker will see this and act upon it. </dl> </body></html>