title: Delphi XE2: What is the purpose of IMPLICITBUILDING directive found in package
body: <p>When I attempt to create a new package in Delphi XE2, there is a new construct in package dpk source file: IMPLICITBUILDING</p>
  
  <p>What is that for?</p>
  
  <pre><code>package Package1;
  
  {$R *.res}
  {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
  {$ALIGN 8}
  {$ASSERTIONS ON}
  {$BOOLEVAL OFF}
  {$DEBUGINFO ON}
  {$EXTENDEDSYNTAX ON}
  {$IMPORTEDDATA ON}
  {$IOCHECKS ON}
  {$LOCALSYMBOLS ON}
  {$LONGSTRINGS ON}
  {$OPENSTRINGS ON}
  {$OPTIMIZATION OFF}
  {$OVERFLOWCHECKS OFF}
  {$RANGECHECKS OFF}
  {$REFERENCEINFO ON}
  {$SAFEDIVIDE OFF}
  {$STACKFRAMES ON}
  {$TYPEDADDRESS OFF}
  {$VARSTRINGCHECKS ON}
  {$WRITEABLECONST OFF}
  {$MINENUMSIZE 1}
  {$IMAGEBASE $400000}
  {$DEFINE DEBUG}
  {$ENDIF IMPLICITBUILDING}
  {$IMPLICITBUILD ON}
  
  requires
    rtl;
  
  end.
  </code></pre>