4.1 Introduction

When there are a lot of units to document, the command-line can be rather long. On some operating systems, this is a problem, as the length of the command-line easily exceeds the maximum length of command-line options supported by the OS. Also, command-lines are difficult to read and/or parse. fpdoc has always supported reading options from a file, but this is not very structured and difficult to handle in e.g. an IDE.

Therefor it is possible to write a project file. The project file is an XML file that describes an fpdoc project. The XML file contains only a few tag names.

In general, it looks as follows:

<?xml version="1.0" encoding="utf-8"?>
<docproject>
  <options>
    <option name="ostarget" value="Linux"/>
    <option name="cputarget" value="x86_64"/>
    <option name="show-private" value="false"/>
    <option name="stop-on-parser-error" value="false"/>
  </options>
  <packages>
    <package name="rtl" output="rtl" content="rtl.xct">
      <units>
        <unit file="../rtl/objpas/objpas.pp"
              options="-dHASINTF"/>
        <unit file="../rtl/objpas/types.pp"
              options=""/>
      </units>
      <descriptions>
        <description file="rtl.xml"/>
        <description file="system.xml"/>
      </descriptions>
    </package>
  </packages>
</docproject>