1# *************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20# *************************************************************
21
22
23        Command Line Options
24        --------------------
25
26autodoc [-v <level>]
27        -html <out>
28        [-extroot <externroot> -extnsp <externnamespace>]
29        [-ignoredefine <PreprocessorDefinition>]
30        -lg <proglang>
31        [-t <sourcetree>[ <sourcetree> ...]
32        [-d <sourcedir>[ <sourcedir> ...]
33        [-f <sourcefile>[ <sourcefile> ...]
34
35
36    -html <OutputDirectory>
37        Directory where the output will be created.
38
39    -lg <ProgrammingLanguage>
40        Allowed values: "c++" or "idl"
41
42    -ignoredefine <PreprocessorDefinition>
43        Only together with "-lg c++".
44        Ignore the given preprocessor definition when parsing the
45        source code. This is necessary as autodoc doesn't have a
46        C/C++ preprocessor, so it will get confused if it sees a
47        preprocessor definition somewhere it doesn't expect one,
48        and won't parse that code. For example in
49        "class CPPUHELPER_DLLPUBLIC UnoUrl"
50        you need to pass it "-ignoredefine CPPUHELPER_DLLPUBLIC".
51
52    -extroot <externroot>
53        Only together with "-lg idl" and -extnsp.
54        Links to code entities not found within the current parsed
55        code, will be linked there, but only if -extnsp is given and
56        the linked entity is in the given namespace.
57        <externroot> is a http link, it needs no "http://" at the
58        beginning nor slash at the end.
59
60    -extnsp <externnamespace>
61        Only together with "-lg idl" and -extroot.
62        If a code entity is not found in the current parsed code, but
63        dwells in the namespace (or its children) given here, it is
64        linked into the loc�tion given by -extroot.
65        <externnamespace> is an absolute qualified namespace,
66        starting with "::".
67
68    -t <SourceTree>*
69        Directory with all subdirectories.
70
71    -d <SourceDirectory>*
72        Directory without subdirectories.
73
74    -f <SourceFile>*
75        Any file. Here also files with extensions not matching the
76        language are accepted.
77
78    -I:<ResponseFile>
79        Each line in the response file has to have one command line
80        option. No whitespace at start of line.
81
82    -C:<ConfigurationFile>
83        Format see below.
84
85    -v <VerboseLevel>
86        Only for debugging. Bits 1, 2 and 4 in any combination give
87        different output.
88
89    -h
90        Displays help.
91    -?
92        Displays help.
93
94
95
96
97
98        Command Line Options especially for the OpenOffice.org SDK
99        ----------------------------------------------------------
100
101    -dvgroot <DevelopersGuide>
102        Root directory of the SDK Developers Guide.
103
104    -dvgfile <ReferenceFile>
105        File with references to the SDK Developers Guide.
106
107    -sincefile <@since-AssociationFile>
108        File that maps OpenOffice versions to the wished displayed version names.
109
110    -idlref <IdlDocumentationRoot> <Namespace[,Namespace ...]>
111        Gives the outputdirectory of an IDL documentation, where
112        symbols not found in the currently parsed namespaces of C++
113        or Java can be found.
114
115
116
117        Configure File Format
118        ---------------------
119
120<AutodocConfiguration>
121    <RepositoryName></RepositoryName>
122        // Base name of the binary repository files.
123        // Has to be a valid file name.
124
125    <HtmlOutputTitle></HtmlOutputTitle>
126        // Title on the "welcome page" of the created HTML documentation.
127        // Can be any text.
128
129    <CppExtensions></CppExtensions>
130        // Overwrites the default. Default is: .hxx .h .hpp
131        // Format: File extensions with a dot in front, like ".hcc".
132
133    <IdlExtensions></IdlExtensions>
134        // Overwrites the default. Default is: .idl
135        // Format: File extensions with a dot in front, like ".txt".
136
137    <CppDocu html="(on|off) off"/>
138
139    <IdlDocu html="(on|off) on"/>
140
141</AutodocConfiguration>
142
143
144
145
146
147
148        Historical Command Line Options
149        -------------------------------
150
151autodoc.exe
152    [ -v <VerboseNr> ]
153    -html <OutputDirectory>
154    {
155        [ -parse ]
156	[ -name <RepositoryName> ]
157        -lg <ProgrammingLanguage>
158        {
159            [ -p <ProjectName> <ProjectRootDirectory> ]
160            {
161                -t <SourceDirectory>*
162                -d <SourceDirectory>*
163                -f <SourceFile>*
164            }+
165        }+
166    }
167
168Legend:
169    <Text>
170    	command line parameter
171    [ ]
172    	optional
173    { }
174    	Block of connected options.
175    The sequence of not connected options does not matter. So the -html or -v options can be used before or after all the parsing options.
176    +
177    	once or more times
178    *
179    	none or more times
180
181
182Explanation of the Options
183    -v <VerboseNr> 	Only for debugging. Bits 1, 2 and 4 in any combination give different output.
184    -html <OutputDirectory>
185    	Gives the directory, where a HTML version of the docu shall be generated.
186    -parse 	Starts the block, where all the parse options are given. This can be omitted, because the parse options are identifiable without it, but it may make a commandline more readable.
187    -name <RepositoryName> 	This name appears as title of the documentation (currently only in the in the C++ version).
188    -lg <ProgrammingLanguage>
189
190
191    Possible values are:
192
193    c++
194        This parses all files with the endings .hxx and .h .
195    idl
196        This parses all files with the ending .idl .
197
198    -p with -t/-d/-f: 	If there are more than one project, the -p option is required for each one.
199
200    The directory given wit the -p option is the root directory of the project.
201    If there is no -p option, the working directory is seen as root.
202
203    All paths given with -t/-d/-f are relative to that root directory. It is possible to use "." as argument for -t or -d.
204
205    Each of -t/-d/-f can have several arguments:
206    One could write "-f file1.hxx file2.hxx file_xyz.hxx"
207    After each -p (or after -lg, if there is no -p option), there has to be at least one of the following three:
208    -t 	Tree, which means: include subdirectories
209    -d 	Directory, which means: no subdirectories
210    -f 	File", which means: single file name with ending.
211    This option also allows to parse some files with an ending different from those, the -lg option implies.
212
213
214
215