Changeset 68872 in vbox
- Timestamp:
- Sep 26, 2017 10:50:57 AM (8 years ago)
- svn:sync-xref-src-repo-rev:
- 118126
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/manual/docbook-refentry-to-C-help.xsl
r68860 r68872 50 50 <!-- Assert refetry expectations. --> 51 51 <xsl:if test="not(./refsynopsisdiv)"> 52 <xsl:message terminate="yes"> refentry must have a refsynopsisdiv</xsl:message>52 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refentry must have a refsynopsisdiv</xsl:message> 53 53 </xsl:if> 54 54 <xsl:if test="not(./refentryinfo/title)"> 55 <xsl:message terminate="yes"> refentry must have a refentryinfo with title</xsl:message>55 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refentry must have a refentryinfo with title</xsl:message> 56 56 </xsl:if> 57 57 <xsl:if test="not(./refmeta/refentrytitle)"> 58 <xsl:message terminate="yes"> refentry must have a refentryinfo with title</xsl:message>58 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refentry must have a refentryinfo with title</xsl:message> 59 59 </xsl:if> 60 60 <xsl:if test="./refmeta/refentrytitle != ./refnamediv/refname"> 61 <xsl:message terminate="yes"> The refmeta/refentrytitle and the refnamediv/refname must be identical</xsl:message>61 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>The refmeta/refentrytitle and the refnamediv/refname must be identical</xsl:message> 62 62 </xsl:if> 63 63 <xsl:if test="not(./refsect1/title)"> 64 <xsl:message terminate="yes"> refentry must have a refsect1 with title</xsl:message>64 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refentry must have a refsect1 with title</xsl:message> 65 65 </xsl:if> 66 66 <xsl:if test="not(@id) or @id = ''"> 67 <xsl:message terminate="yes"> refentry must have an id attribute</xsl:message>67 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refentry must have an id attribute</xsl:message> 68 68 </xsl:if> 69 69 … … 83 83 <!-- Assert synopsis expectations --> 84 84 <xsl:if test="not(@id) or substring-before(@id, '-') != 'synopsis'"> 85 <xsl:message terminate="yes"> The refsynopsisdiv/cmdsynopsis elements must have an id starting with 'synopsis-'.</xsl:message>85 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>The refsynopsisdiv/cmdsynopsis elements must have an id starting with 'synopsis-'.</xsl:message> 86 86 </xsl:if> 87 87 <xsl:if test="not(starts-with(substring-after(@id, '-'), $sBaseId))"> 88 <xsl:message terminate="yes"> The refsynopsisdiv/cmdsynopsis elements @id is expected to include the refentry @id.</xsl:message>88 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>The refsynopsisdiv/cmdsynopsis elements @id is expected to include the refentry @id.</xsl:message> 89 89 </xsl:if> 90 90 <xsl:if test="not(../../refsect1/refsect2[@id=./@id])"> 91 <xsl:message terminate="yes"> No refsect2 with id="<xsl:value-of select="@id"/>" found.</xsl:message>91 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>No refsect2 with id="<xsl:value-of select="@id"/>" found.</xsl:message> 92 92 </xsl:if> 93 93 … … 132 132 <!-- Then comes the description and other refsect1 --> 133 133 <xsl:for-each select="./refsect1"> 134 <xsl:if test="name(*[1]) != 'title'"><xsl:message terminate="yes"> Expected title as the first element in refsect1.</xsl:message></xsl:if>135 <xsl:if test="text()"><xsl:message terminate="yes"> No text supported in refsect1.</xsl:message></xsl:if>134 <xsl:if test="name(*[1]) != 'title'"><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Expected title as the first element in refsect1.</xsl:message></xsl:if> 135 <xsl:if test="text()"><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>No text supported in refsect1.</xsl:message></xsl:if> 136 136 <xsl:if test="not(./remark[@role='help-skip'])"> 137 137 <xsl:variable name="sTitle"> … … 148 148 149 149 <xsl:apply-templates select="./*[name() != 'title']"/> 150 151 <xsl:text> 152 { RTMSGREFENTRYSTR_SCOPE_SAME, "" },</xsl:text> 150 153 </xsl:if> 151 154 </xsl:for-each> … … 193 196 --> 194 197 <xsl:template match="cmdsynopsis"> 195 <xsl:if test="text()"><xsl:message terminate="yes"> cmdsynopsis with text is not supported.</xsl:message></xsl:if>198 <xsl:if test="text()"><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>cmdsynopsis with text is not supported.</xsl:message></xsl:if> 196 199 <xsl:text> 197 200 { </xsl:text><xsl:call-template name="calc-scope-cmdsynopsis"/><xsl:text> | RTMSGREFENTRYSTR_FLAGS_SYNOPSIS, … … 222 225 <xsl:template match="replaceable"> 223 226 <xsl:choose> 224 <xsl:when test=" not(ancestor::cmdsynopsis) orancestor::arg">227 <xsl:when test="ancestor::arg"> 225 228 <xsl:apply-templates /> 226 229 </xsl:when> … … 249 252 <xsl:when test="@choice = 'req'"> <xsl:value-of select="$arg.choice.req.open.str"/></xsl:when> 250 253 <xsl:when test="@choice = 'plain'"/> 251 <xsl:otherwise><xsl:message terminate="yes"> Invalid arg choice: "<xsl:value-of select="@choice"/>"</xsl:message></xsl:otherwise>254 <xsl:otherwise><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Invalid arg choice: "<xsl:value-of select="@choice"/>"</xsl:message></xsl:otherwise> 252 255 </xsl:choose> 253 256 … … 259 262 <xsl:when test="@rep = 'norepeat' or not(@rep) or @rep = ''"/> 260 263 <xsl:when test="@rep = 'repeat'"> <xsl:value-of select="$arg.rep.repeat.str"/></xsl:when> 261 <xsl:otherwise><xsl:message terminate="yes"> Invalid rep choice: "<xsl:value-of select="@rep"/>"</xsl:message></xsl:otherwise>264 <xsl:otherwise><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Invalid rep choice: "<xsl:value-of select="@rep"/>"</xsl:message></xsl:otherwise> 262 265 </xsl:choose> 263 266 <!-- close wrapping --> … … 275 278 <xsl:template match="refsect2"> 276 279 <!-- assertions --> 277 <xsl:if test="text()"><xsl:message terminate="yes"> refsect2 shouldn't contain text</xsl:message></xsl:if>278 <xsl:if test="count(./title) != 1"><xsl:message terminate="yes"> refsect2 requires a title (<xsl:value-of select="ancestor-or-self::*[@id][1]/@id"/>)</xsl:message></xsl:if>280 <xsl:if test="text()"><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refsect2 shouldn't contain text</xsl:message></xsl:if> 281 <xsl:if test="count(./title) != 1"><xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>refsect2 requires a title (<xsl:value-of select="ancestor-or-self::*[@id][1]/@id"/>)</xsl:message></xsl:if> 279 282 280 283 <!-- title / command synopsis - sets the scope. --> … … 324 327 <xsl:template match="variablelist"> 325 328 <xsl:if test="*[not(self::varlistentry)]|text()"> 326 <xsl:message terminate="yes"> Only varlistentry elements are supported in variablelist</xsl:message>329 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Only varlistentry elements are supported in variablelist </xsl:message> 327 330 </xsl:if> 328 331 <xsl:for-each select="./varlistentry"> 329 332 <xsl:if test="not(term) or not(listitem) or count(listitem) > 1"> 330 <xsl:message terminate="yes"> Expected one or more term members and exactly one listentry member in varlistentry element.</xsl:message>333 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Expected one or more term members and exactly one listentry member in varlistentry element.</xsl:message> 331 334 </xsl:if> 332 <xsl:if test=" not(@spacing) or @spacing != 'compact'">335 <xsl:if test="(not(@spacing) or @spacing != 'compact') and (position() > 1 or (count(../preceding-sibling::*) - count(../preceding-sibling::title) > 0))"> 333 336 <xsl:text> 334 337 { RTMSGREFENTRYSTR_SCOPE_SAME, "" },</xsl:text> … … 358 361 <xsl:if test="*[not(self::listitem)]|text()"> 359 362 <xsl:message terminate="yes"> 360 <xsl:call-template name=" get-node-path"/>: error:Only listitem elements are supported in <xsl:value-of select="name()"/>:363 <xsl:call-template name="error-prefix"/>Only listitem elements are supported in <xsl:value-of select="name()"/>: 361 364 <xsl:call-template name="list-nodes"> 362 365 <xsl:with-param name="Nodes" select="*[not(self::listitem)]|text()"/> … … 380 383 <xsl:if test="*[not(self::para)]|text()"> 381 384 <xsl:message terminate="yes"> 382 <xsl:call-template name=" get-node-path"/>: error:Expected <xsl:value-of select="name()"/>/listitem to only contain para elements:385 <xsl:call-template name="error-prefix"/>Expected <xsl:value-of select="name()"/>/listitem to only contain para elements: 383 386 <xsl:call-template name="list-nodes"> 384 387 <xsl:with-param name="Nodes" select="*[not(self::para)]|text()"/> … … 416 419 <xsl:otherwise> 417 420 <xsl:if test="*"> 418 <xsl:message terminate="yes"> Support for elements under screen has not been implemented: <xsl:value-of select="name()"/></xsl:message>421 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Support for elements under screen has not been implemented: <xsl:value-of select="name()"/></xsl:message> 419 422 </xsl:if> 420 423 </xsl:otherwise> … … 565 568 --> 566 569 <xsl:template match="synopfragment|synopfragmentref|title|refsect1"> 567 <xsl:message terminate="yes"> The <xsl:value-of select="name()"/> element is not supported</xsl:message>570 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>The <xsl:value-of select="name()"/> element is not supported</xsl:message> 568 571 </xsl:template> 569 572 … … 577 580 <xsl:when test="parent::cmdsynopsis and ancestor::refsynopsisdiv"/> 578 581 <xsl:otherwise> 579 <xsl:message terminate="yes"> Misplaced remark/@role=help-scope element.582 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Misplaced remark/@role=help-scope element. 580 583 Only supported on: refsect1, refsect2, refsynopsisdiv/cmdsynopsis</xsl:message> 581 584 </xsl:otherwise> … … 587 590 --> 588 591 <xsl:template match="remark[@role = 'help-copy-synopsis']"> 589 <xsl:message terminate="yes"> remark/@role=help-copy-synopsis is not supported by this stylesheet. Must preprocess input!</xsl:message>592 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>remark/@role=help-copy-synopsis is not supported by this stylesheet. Must preprocess input!</xsl:message> 590 593 </xsl:template> 591 594 … … 714 717 </xsl:when> 715 718 <xsl:otherwise> 716 <xsl:message terminate="yes"> expected remark child or id attribute.</xsl:message>719 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>expected remark child or id attribute.</xsl:message> 717 720 </xsl:otherwise> 718 721 </xsl:choose> … … 729 732 <xsl:choose> 730 733 <xsl:when test="not($sAncestorId)"> <!-- Sanity check. --> 731 <xsl:message terminate="yes"> error:calc-scope-const-from-id is invoked without an refentry ancestor with a id. <xsl:call-template name="get-node-path"/> </xsl:message>734 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>calc-scope-const-from-id is invoked without an refentry ancestor with a id. <xsl:call-template name="get-node-path"/> </xsl:message> 732 735 </xsl:when> 733 736 … … 735 738 <xsl:variable name="sPrefix" select="concat(substring-before($sAncestorId, '-'), '-')"/> 736 739 <xsl:if test="not(contains($sId, $sPrefix))"> 737 <xsl:message terminate="yes"> Expected sId (<xsl:value-of select="$sId"/>) to contain <xsl:value-of select="$sPrefix"/></xsl:message>740 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Expected sId (<xsl:value-of select="$sId"/>) to contain <xsl:value-of select="$sPrefix"/></xsl:message> 738 741 </xsl:if> 739 742 <xsl:call-template name="str:to-upper"> … … 755 758 <xsl:variable name="sNormalized" select="concat(normalize-space(translate($sCondition, ',;:|', ' ')), ' ')"/> 756 759 <xsl:if test="$sNormalized = ' ' or $sNormalized = ''"> 757 <xsl:message terminate="yes"> Empty @condition for help-scope remark.</xsl:message>760 <xsl:message terminate="yes"><xsl:call-template name="error-prefix"/>Empty @condition for help-scope remark.</xsl:message> 758 761 </xsl:if> 759 762 <xsl:choose> … … 855 858 <xsl:otherwise> 856 859 <xsl:value-of select="concat('/', name(.))"/> 857 <xsl:if test="@id"> 858 <xsl:text>[@id=</xsl:text> 859 <xsl:value-of select="@id"/> 860 <xsl:text>]</xsl:text> 861 </xsl:if> 860 <xsl:choose> 861 <xsl:when test="@id"> 862 <xsl:text>[@id=</xsl:text> 863 <xsl:value-of select="@id"/> 864 <xsl:text>]</xsl:text> 865 </xsl:when> 866 <xsl:when test="position() > 1"> 867 <xsl:text>[</xsl:text><xsl:value-of select="position()"/><xsl:text>]</xsl:text> 868 </xsl:when> 869 </xsl:choose> 862 870 </xsl:otherwise> 863 871 </xsl:choose> 864 872 </xsl:for-each> 865 873 </xsl:for-each> 874 </xsl:template> 875 876 <!-- 877 Debug/Diagnostics: Return error message prefix. 878 --> 879 <xsl:template name="error-prefix"> 880 <xsl:param name="Node" select="."/> 881 <xsl:text>error: </xsl:text> 882 <xsl:call-template name="get-node-path"> 883 <xsl:with-param name="Node" select="$Node"/> 884 </xsl:call-template> 885 <xsl:text>: </xsl:text> 866 886 </xsl:template> 867 887 -
trunk/src/VBox/Runtime/common/fs/isomakercmd-man.xml
r68860 r68872 14 14 --> 15 15 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd"> 16 <refentry id=" rtisomaker" lang="en">16 <refentry id="viso" lang="en"> 17 17 18 18 <refentryinfo> … … 22 22 23 23 <refmeta> 24 <refentrytitle> RTIsoMaker</refentrytitle>24 <refentrytitle>viso</refentrytitle> 25 25 <manvolnum>8</manvolnum> 26 26 </refmeta> … … 28 28 <refnamediv> 29 29 <!--<refname>VISO</refname>--> 30 <refname> RTIsoMaker</refname>30 <refname>viso</refname> 31 31 <refpurpose>ISO image maker</refpurpose> 32 32 <refclass>IPRT</refclass> … … 34 34 35 35 <refsynopsisdiv> 36 <cmdsynopsis id="synopsis- rtisomaker"> <!-- The 'id' is mandatory and must start with 'synopsis-'. -->36 <cmdsynopsis id="synopsis-viso"> <!-- The 'id' is mandatory and must start with 'synopsis-'. --> 37 37 <command>RTIsoMaker</command> 38 38 <arg><replaceable>options</replaceable></arg> … … 47 47 file (RTIsoMaker) or serve it as a virtual image (VISO).</para> 48 48 49 <refsect2 id=" rtisomaker-viso">49 <refsect2 id="viso-viso"> 50 50 <title>VISO file format</title> 51 51 <para>A VISO file is a virtual ISO image, i.e. constructed in memory from a bunch of files on … … 63 63 </refsect2> 64 64 65 <refsect2 id=" rtisomaker-filespecs">65 <refsect2 id="viso-filespecs"> 66 66 <title>File specifications and --name-setup</title> 67 67 <para>All non-options that does not start with '@' are taken to indicate a file, directory, … … 123 123 </refsect1> 124 124 125 <refsect1 id="rtisomaker-general-options"> 126 <title>Options - General</title> 127 128 <variablelist> 129 <varlistentry> 130 <term><option>-o <replaceable>output-file</replaceable></option></term> 131 <term><option>--output=<replaceable>output-file</replaceable></option></term> 132 <listitem><para>The output filename. This option is not supported in VISO mode.</para></listitem> 133 </varlistentry> 134 135 <varlistentry> 136 <term><option>--name-setup <replaceable>spec</replaceable></option></term> 137 <listitem><para>Configures active namespaces and how file specifications are to be 138 interpreted. The specification is a comma separated list. Each element in the list is 139 a sub-list separated by space, <computeroutput>'+'</computeroutput> or 140 <computeroutput>'|'</computeroutput> giving the namespaces that elements controls. 141 Namespaces are divied into two major and minor ones, you cannot specifying a minor 142 before the major it belongs to.</para> 143 <para>Major namespaces and aliases in parentheses:</para> 144 <itemizedlist> 145 <listitem><para>iso (primary, iso9660, iso-9660, primary-iso, iso-primary)</para></listitem> 146 <listitem><para>joliet</para></listitem> 147 <listitem><para>udf</para></listitem> 148 <listitem><para>hfs (hfs-plus)</para></listitem> 149 </itemizedlist> 150 <para>Minor namespaces:</para> 151 <itemizedlist> 152 <listitem><para>rock: rock ridge on previous major namespace (iso / joliet)</para></listitem> 153 <listitem><para>iso-rock: rock ridge extensions on primary ISO 9660 namespace</para></listitem> 154 <listitem><para>joliet-rock: rock ridge on joliet namespace (just for fun)</para></listitem> 155 <listitem><para>trans-tbl: translation table file on previous major namespace</para></listitem> 156 <listitem><para>iso-trans-tbl</para></listitem> 157 <listitem><para>joliet-trans-tbl</para></listitem> 158 <listitem><para>udf-trans-tbl</para></listitem> 159 <listitem><para>hfs-trans-tbl</para></listitem> 160 </itemizedlist> 161 </listitem> 162 </varlistentry> 163 </variablelist> 125 <refsect1 id="viso-options"> 126 <title>Options</title> 127 128 <refsect2 id="viso-options-general"> 129 <title>General</title> 130 131 <variablelist> 132 <varlistentry> 133 <term><option>-o <replaceable>output-file</replaceable></option></term> 134 <term><option>--output=<replaceable>output-file</replaceable></option></term> 135 <listitem><para>The output filename. This option is not supported in VISO mode.</para></listitem> 136 </varlistentry> 137 138 <varlistentry> 139 <term><option>--name-setup <replaceable>spec</replaceable></option></term> 140 <listitem><para>Configures active namespaces and how file specifications are to be 141 interpreted. The specification is a comma separated list. Each element in the list is 142 a sub-list separated by space, <computeroutput>'+'</computeroutput> or 143 <computeroutput>'|'</computeroutput> giving the namespaces that elements controls. 144 Namespaces are divied into two major and minor ones, you cannot specifying a minor 145 before the major it belongs to.</para> 146 <para>Major namespaces and aliases in parentheses:</para> 147 <itemizedlist spacing="compact"> 148 <listitem><para>iso (primary, iso9660, iso-9660, primary-iso, iso-primary)</para></listitem> 149 <listitem><para>joliet</para></listitem> 150 <listitem><para>udf</para></listitem> 151 <listitem><para>hfs (hfs-plus)</para></listitem> 152 </itemizedlist> 153 <para>Minor namespaces:</para> 154 <itemizedlist spacing="compact"> 155 <listitem><para>rock: rock ridge on previous major namespace (iso / joliet)</para></listitem> 156 <listitem><para>iso-rock: rock ridge extensions on primary ISO 9660 namespace</para></listitem> 157 <listitem><para>joliet-rock: rock ridge on joliet namespace (just for fun)</para></listitem> 158 <listitem><para>trans-tbl: translation table file on previous major namespace</para></listitem> 159 <listitem><para>iso-trans-tbl</para></listitem> 160 <listitem><para>joliet-trans-tbl</para></listitem> 161 <listitem><para>udf-trans-tbl</para></listitem> 162 <listitem><para>hfs-trans-tbl</para></listitem> 163 </itemizedlist> 164 </listitem> 165 </varlistentry> 166 167 <varlistentry> 168 <term><option>--push-iso=<replaceable>iso-file</replaceable></option></term> 169 <term><option>--push-iso-no-joliet=<replaceable>iso-file</replaceable></option></term> 170 <term><option>--push-iso-no-rock-<replaceable>iso-file</replaceable></option></term> 171 <term><option>--push-iso-no-rock-no-joliet=<replaceable>iso-file</replaceable></option></term> 172 <listitem><para>Open the specified ISO file and use it as source file system until the 173 corresponding <option>--pop</option> options is encountered. The variations are for 174 selecting which namespace on the ISO to (not) access. These options are handy for copying 175 files/directories/stuff from an ISO without having to extract them first or using the 176 <computeroutput>:iprtvfs:</computeroutput> syntax.</para> 177 </listitem> 178 </varlistentry> 179 180 <varlistentry> 181 <term><option>--pop</option></term> 182 <listitem><para>Pops a <option>--push-iso</option> of the source file system stack.</para></listitem> 183 </varlistentry> 184 185 <varlistentry> 186 <term><option>--import-iso=<replaceable>iso-file</replaceable></option></term> 187 <listitem><para>Imports everything on the given ISO file, including boot configuration and 188 system area (first 16 sectors) content. You can use <option>--name-setup</option> to omit 189 namespaces.</para></listitem> 190 </varlistentry> 191 192 </variablelist> 193 </refsect2> 194 195 <refsect2 id="viso-options-namespaces"> 196 <title>Namespaces</title> 197 <variablelist> 198 199 <varlistentry> 200 <term><option>--iso-level=<replaceable>0|1|2|3</replaceable></option></term> <!-- FIXME: imperfect markup --> 201 <listitem> 202 <para>Sets the ISO level:</para> 203 <itemizedlist spacing="compact"> 204 <listitem><para>0: Disable primary ISO namespace.</para></listitem> 205 <listitem><para>1: ISO level 1: Filenames 8.3 format and limited to 4GB - 1.</para></listitem> 206 <listitem><para>2: ISO level 2: 31 char long names and limited to 4GB - 1.</para></listitem> 207 <listitem><para>3: ISO level 3: 31 char long names and support for >=4GB files. (default)</para></listitem> 208 <listitem><para>4: Fictive level used by other tools. Not yet implemented.</para></listitem> 209 </itemizedlist> 210 </listitem> 211 </varlistentry> 212 213 <varlistentry> 214 <term><option>--rock-ridge</option></term> 215 <term><option>--limited-rock-ridge</option></term> 216 <term><option>--no-rock-ridge</option></term> 217 <listitem><para>Enables or disables rock ridge support for the primary ISO 9660 namespace. 218 The <option>--limited-rock-ridge</option> option omits a couple of bits in the root 219 directory that would make Linux pick rock ridge over joliet.</para> 220 <para>Default: <option>--limited-rock-ridge</option></para> 221 </listitem> 222 </varlistentry> 223 224 <varlistentry> 225 <term><option>-J</option></term> 226 <term><option>--joliet</option></term> 227 <term><option>--no-joliet</option></term> 228 <listitem><para>Enables or disable the joliet namespace. This option must precede any file 229 specifications.</para> 230 <para>Default: <option>--joliet</option></para> 231 </listitem> 232 </varlistentry> 233 234 <varlistentry> 235 <term><option>--joliet-ucs-level=<replaceable>1|2|3</replaceable></option></term> <!-- FIXME: imperfect markup --> 236 <term><option>--ucs-level=<replaceable>1|2|3</replaceable></option></term> 237 <listitem><para>Set the Joliet UCS support level. This is currently only flagged in the 238 image but not enforced on the actual path names.</para> 239 <para>Default level: 3</para> 240 </listitem> 241 </varlistentry> 242 243 </variablelist> 244 </refsect2> 245 246 <refsect2 id="viso-options-file-attributes"> 247 <title>File Attributes</title> 248 <variablelist> 249 250 <varlistentry> 251 <term><option>--rational-attribs</option></term> 252 <listitem><para>Enables rational file attribute handling (default):</para> 253 <itemizedlist spacing="compact"> 254 <listitem><para>Owner ID is set to zero</para></listitem> 255 <listitem><para>Group ID is set to zero</para></listitem> 256 <listitem><para>Mode is set to 0444 for non-executable files.</para></listitem> 257 <listitem><para>Mode is set to 0555 for executable files.</para></listitem> 258 <listitem><para>Mode is set to 0555 for directories, preserving stick bits.</para></listitem> 259 </itemizedlist> 260 </listitem> 261 </varlistentry> 262 263 <varlistentry> 264 <term><option>--strict-attribs</option></term> 265 <listitem><para>Counters <option>--rational-attribs</option> and causes attributes to be 266 recorded exactly as they appear in the source.</para> 267 </listitem> 268 </varlistentry> 269 270 <varlistentry> 271 <term><option>--file-mode=<replaceable>mode</replaceable></option></term> 272 <term><option>--no-file-mode</option></term> 273 <listitem><para>Controls the forced file mode mask for rock ridge, UDF and HFS.</para></listitem> 274 </varlistentry> 275 276 <varlistentry> 277 <term><option>--dir-mode=<replaceable>mode</replaceable></option></term> 278 <term><option>--no-dir-mode</option></term> 279 <listitem><para>Controls the forced directory mode mask for rock ridge, UDF and HFS.</para></listitem> 280 </varlistentry> 281 282 <varlistentry> 283 <term><option>--new-dir-mode=<replaceable>mode</replaceable></option></term> 284 <listitem><para>Controls the default mode mask (rock ridge, UDF, HFS) for directories that 285 are created implicitly. The <option>--dir-mode</option> option overrides this.</para> 286 </listitem> 287 </varlistentry> 288 289 <varlistentry> 290 <term><option>--chmod=<replaceable>mode</replaceable>:<replaceable>on-iso-file</replaceable></option></term> 291 <listitem><para>Explictily sets the rock ridge, UDF and HFS file mode for a file/dir/whatever 292 that has already been added to the ISO. The mode can be octal, <computeroutput>ra+x</computeroutput>, 293 <computeroutput>a+r</computeroutput>, or <computeroutput>a+rx</computeroutput>. 294 (Support for more complicated mode specifications may be implemented at a later point.)</para> 295 <para>Note that only namespaces in the current --name-setup are affected.</para> 296 </listitem> 297 </varlistentry> 298 299 <varlistentry> 300 <term><option>--chown=<replaceable>owner-id</replaceable>:<replaceable>on-iso-file</replaceable></option></term> 301 <listitem><para>Explictily sets the rock ridge, UDF and HFS file owner ID (numeric) for a 302 file/dir/whatever that has already been added to the ISO.</para> 303 <para>Note that only namespaces in the current --name-setup are affected.</para> 304 </listitem> 305 </varlistentry> 306 307 <varlistentry> 308 <term>--chgrp=<replaceable>group-id</replaceable>:<replaceable>on-iso-file</replaceable></term> 309 <listitem><para>Explictily sets the rock ridge, UDF and HFS file group ID (numeric) for a 310 file/dir/whatever that has already been added to the ISO.</para> 311 <para>Note that only namespaces in the current --name-setup are affected.</para> 312 </listitem> 313 </varlistentry> 314 315 </variablelist> 316 </refsect2> 317 318 <refsect2 id="viso-options-booting"> 319 <title>Booting</title> 320 <variablelist> 321 322 <varlistentry> 323 <term><option>--eltorito-new-entry</option></term> 324 <term><option>--eltorito-alt-boot</option></term> 325 <listitem><para>Starts a new El Torito boot entry.</para></listitem> 326 </varlistentry> 327 328 <varlistentry> 329 <term><option>--eltorito-add-image=<replaceable>filespec</replaceable></option></term> 330 <listitem><para>File specification of a file that should be added to the image and used as 331 the El Torito boot image of the current boot entry.</para> 332 </listitem> 333 </varlistentry> 334 335 <varlistentry> 336 <term><option>-b <replaceable>on-iso-file</replaceable></option></term> 337 <term><option>--eltorito-boot=<replaceable>on-iso-file</replaceable></option></term> 338 <listitem><para>Specifies a file on the ISO as the El Torito boot image for the current boot 339 entry.</para> 340 </listitem> 341 </varlistentry> 342 343 <varlistentry> 344 <term><option>--eltorito-floppy-12</option></term> 345 <term><option>--eltorito-floppy-144</option></term> 346 <term><option>--eltorito-floppy-288</option></term> 347 <term><option>--no-emulation-boot</option></term> 348 <term><option>--hard-disk-boot</option></term> 349 <listitem><para>Sets the boot image emulation type of the current El Torito boot entry.</para></listitem> 350 </varlistentry> 351 352 <varlistentry> 353 <term><option>--boot-load-seg=<replaceable>seg</replaceable></option></term> 354 <listitem><para>Specify the image load segment for the current El Torito boot entry.</para> 355 <para>Default: 0x7c0</para> 356 </listitem> 357 </varlistentry> 358 359 <varlistentry> 360 <term><option>--boot-load-size=<replaceable>sectors</replaceable></option></term> 361 <listitem><para>Specify the image load size in emulated sectors for the current El Torito 362 boot entry.</para> 363 <para>Default: 4 (sectors of 512 bytes)</para> 364 </listitem> 365 </varlistentry> 366 367 <varlistentry> 368 <term><option>--no-boot</option></term> 369 <listitem><para>Indicates that the current El Torito boot entry isn't bootable. (The BIOS 370 will allegedly configure the emulation, but not attempt booting.)</para> 371 </listitem> 372 </varlistentry> 373 374 <varlistentry> 375 <term><option>--boot-info-table</option></term> 376 <listitem><para>Write a isolinux/syslinux boot info table into the boot image for the 377 current El Torito boot entry.</para> 378 </listitem> 379 </varlistentry> 380 381 <varlistentry> 382 <term><option>--eltorito-platform-id=<replaceable>id</replaceable></option></term> 383 <listitem><para>Set the El Torito platform ID of the current entry, a new entry of the 384 verification entry depending on when it's used. The ID must be one of: 385 <computeroutput>x86</computeroutput>, <computeroutput>PPC</computeroutput>, 386 <computeroutput>Mac</computeroutput>, <computeroutput>efi</computeroutput></para> 387 </listitem> 388 </varlistentry> 389 390 <varlistentry> 391 <term><option>-c <replaceable>namespec</replaceable></option></term> 392 <term><option>--boot-catalog=<replaceable>namespec</replaceable></option></term> 393 <listitem><para>Enters the El Torito boot catalog into the namespaces as a file. The 394 <replaceable>namespec</replaceable> uses the same format as a 'filespec', but omits the 395 final source file system name component.</para> 396 </listitem> 397 </varlistentry> 398 399 <varlistentry> 400 <term><option>-G <replaceable>file</replaceable></option></term> 401 <term><option>--generic-boot=<replaceable>file</replaceable></option></term> 402 <listitem><para>Specifies a file that should be loaded at offset 0 in the ISO image. The 403 file must not be larger than 32KB. When creating a hybrid image, parts of this may be 404 regenerated by partition tables and such.</para> 405 </listitem> 406 </varlistentry> 407 408 </variablelist> 409 </refsect2> 410 411 <refsect2 id="viso-options-string-properties"> 412 <title>String properties (applied to active namespaces only)</title> 413 <variablelist> 414 415 <varlistentry> 416 <term><option>--abstract=<replaceable>file-id</replaceable></option></term> 417 <listitem><para>The name of the abstract file in the root dir.</para></listitem> 418 </varlistentry> 419 420 <varlistentry> 421 <term><option>-A <replaceable>text|_file-id</replaceable></option></term> 422 <term><option>--application-id=<replaceable>text|_file-id</replaceable></option></term> 423 <listitem><para>Application ID string or root file name. The latter must be prefixed with 424 an underscore.</para> 425 </listitem> 426 </varlistentry> 427 428 <varlistentry> 429 <term><option>--biblio=<replaceable>file-id</replaceable></option></term> 430 <listitem><para>The name of the bibliographic file in the root dir.</para></listitem> 431 </varlistentry> 432 433 <varlistentry> 434 <term><option>--copyright=<replaceable>file-id</replaceable></option></term> 435 <listitem><para>The name of the copyright file in the root dir.</para></listitem> 436 </varlistentry> 437 438 <varlistentry> 439 <term><option>-P <replaceable>text|_file-id</replaceable></option></term> 440 <term><option>--publisher=<replaceable>text|_file-id</replaceable></option></term> 441 <listitem><para>Publisher ID string or root file name. The latter must be prefixed with an 442 underscore.</para> 443 </listitem> 444 </varlistentry> 445 446 <varlistentry> 447 <term><option>-p <replaceable>text|_file-id</replaceable></option></term> 448 <term><option>--preparer=<replaceable>text|_file-id</replaceable></option></term> 449 <listitem><para>Data preparer ID string or root file name. The latter must be prefixed 450 with an underscore.</para> 451 </listitem> 452 </varlistentry> 453 454 <varlistentry> 455 <term><option>--sysid=<replaceable>text</replaceable></option></term> 456 <listitem><para>System ID string.</para></listitem> 457 </varlistentry> 458 459 <varlistentry> 460 <term><option>--volid=<replaceable>text</replaceable></option></term> 461 <term><option>--volume-id=<replaceable>text</replaceable></option></term> 462 <listitem><para>Volume ID string (label). (It is possible to set different labels for 463 primary ISO 9660, joliet, UDF and HFS by changing the active namespaces using the 464 <option>--name-setup</option> option between <option>--volume-id</option> occurences.)</para> 465 </listitem> 466 </varlistentry> 467 468 <varlistentry> 469 <term><option>--volset=<replaceable>text</replaceable></option></term> 470 <listitem><para>Volume set ID string.</para></listitem> 471 </varlistentry> 472 473 </variablelist> 474 </refsect2> 475 476 <refsect2 id="viso-options-compatibility"> 477 <title>Compatibility:</title> 478 <variablelist> 479 480 <varlistentry> 481 <term><option>--graft-points</option></term> 482 <listitem><para>Alias for --name-setup iso+joliet+udf+hfs.</para></listitem> 483 </varlistentry> 484 485 <varlistentry> 486 <term><option>-l</option></term> 487 <term><option>--long-names</option></term> 488 <listitem><para>Allow 31 charater filenames. Just ensure ISO level >= 2 here.</para></listitem> 489 </varlistentry> 490 491 <varlistentry> 492 <term><option>-R</option></term> 493 <term><option>--rock</option></term> 494 <listitem><para>Same as <option>--rock-ridge</option> and <option>--strict-attribs</option>.</para></listitem> 495 </varlistentry> 496 497 <varlistentry> 498 <term><option>-r</option></term> 499 <term><option>--rational-rock</option></term> 500 <listitem><para>Same as <option>--rock-ridge</option> and <option>--rational-attribs</option>.</para></listitem> 501 </varlistentry> 502 503 </variablelist> 504 </refsect2> 505 506 507 <refsect2 id="viso-options-viso-specific"> 508 <title>VISO Specific:</title> 509 <variablelist> 510 511 <varlistentry> 512 <term><option>--iprt-iso-maker-file-marker=<replaceable>UUID</replaceable></option></term> 513 <term><option>--iprt-iso-maker-file-marker-bourne=<replaceable>UUID</replaceable></option></term> 514 <term><option>--iprt-iso-maker-file-marker-bourne-sh=<replaceable>UUID</replaceable></option></term> 515 <listitem><para>Used as first option in a VISO file to specify the file UUID and that it is 516 formatted using bourne-shell argument quoting & escaping style.</para> 517 </listitem> 518 </varlistentry> 519 520 <varlistentry> 521 <term><option>--iprt-iso-maker-file-marker-ms=<replaceable>UUID</replaceable></option></term> 522 <term><option>--iprt-iso-maker-file-marker-ms-sh=<replaceable>UUID</replaceable></option></term> 523 <listitem><para>Used as first option in a VISO file to specify the file UUID and that it is 524 formatted using microsoft CRT argument quoting & escaping style.</para> 525 </listitem> 526 </varlistentry> 527 528 </variablelist> 529 </refsect2> 530 531 532 <refsect2 id="viso-options-testing"> 533 <title>Testing (not applicable to VISO):</title> 534 <variablelist> 535 536 <varlistentry> 537 <term><option>--output-buffer-size=<replaceable>bytes</replaceable></option></term> 538 <listitem><para>Selects a specific output buffer size for testing virtual image reads.</para></listitem> 539 </varlistentry> 540 541 <varlistentry> 542 <term><option>--random-output-buffer-size</option></term> 543 <listitem><para>Enables randomized buffer size for each virtual image read, using the 544 current output buffer size (<option>--output-buffer-size</option>) as maximum.</para> 545 </listitem> 546 </varlistentry> 547 548 <varlistentry> 549 <term><option>--random-order-verification=<replaceable>size</replaceable></option></term> 550 <listitem><para>Enables verification pass of the image that compares blocks of the given 551 size in random order from the virtual and output images.</para> 552 </listitem> 553 </varlistentry> 554 555 </variablelist> 556 </refsect2> 164 557 165 558 </refsect1> 166 167 559 </refentry> 168 560 169 170 <!--171 172 173 Options - General:174 175 176 177 -dashdash-push-iso <iso-file>178 -dashdash-push-iso-no-joliet <iso-file>179 -dashdash-push-iso-no-rock <iso-file>180 -dashdash-push-iso-no-rock-no-joliet <iso-file>181 Open the specified ISO file and use it as source file system until the182 corresponding -dashdash-pop options is encountered. The variations are for183 selecting which namespace on the ISO to (not) access. These options184 are handy for copying files/directories/stuff from an ISO without185 having to extract them first or using the :iprtvfs: syntax.186 187 -dashdash-pop188 Pops a -dashdash-push-iso of the source file system stack.189 190 -dashdash-import-iso <iso-file>191 Imports everything on the given ISO file. You can use -dashdash-name-setup to192 omit namespaces.193 194 195 Options - Namespaces:196 197 -dashdash-iso-level <0|1|2|3>198 Sets the ISO level:199 - 0: Disable primary ISO namespace.200 - 1: ISO level 1: Filenames 8.3 format and limited to 4GB - 1.201 - 2: ISO level 2: 31 char long names and limited to 4GB - 1.202 - 3: ISO level 3: 31 char long names and support for >=4GB files.203 - 4: Fictive level used by other tools. Not yet implemented.204 Default: 3205 206 -dashdash-rock-ridge207 -dashdash-limited-rock-ridge208 -dashdash-no-rock-ridge209 Enables or disables rock ridge support for the primary ISO 9660210 namespace. The -dashdash-limited-rock-ridge option omits a couple of bits in211 the root directory that would make Linux pick rock ridge over joliet.212 Default: -dashdash-limited-rock-ridge213 -J214 -dashdash-joliet215 -dashdash-no-joliet216 Enables or disable the joliet namespace. This option must precede any217 file specifications. Default: -dashdash-joliet218 219 -dashdash-joliet-ucs-level <1|2|3>220 -dashdash-ucs-level <1|2|3>221 Set the Joliet UCS support level. This is currently only flagged in the222 image but not enforced on the actual path names. Default level: 3223 224 225 Options - File attributes:226 227 -dashdash-rational-attribs228 Enables rational file attribute handling:229 * Owner ID is set to zero230 * Group ID is set to zero231 * Mode is set to 0444 for non-executable files.232 * Mode is set to 0555 for executable files.233 * Mode is set to 0555 for directories, preserving stick bits.234 This is default.235 236 -dashdash-strict-attribs237 Counters -dashdash-rational-attribs and causes attributes to be recorded238 exactly as they appear in the source.239 240 -dashdash-file-mode <mode>241 -dashdash-no-file-mode242 Controls the forced file mode mask for rock ridge, UDF and HFS.243 244 -dashdash-dir-mode <mode>245 -dashdash-no-dir-mode246 Controls the forced directory mode mask for rock ridge, UDF and HFS.247 248 -dashdash-new-dir-mode <mode>249 Controls the default mode mask (rock ridge, UDF, HFS) for directories250 that are created implicitly. The -dashdash-dir-mode option overrides this.251 252 -dashdash-chmod <mode>:<on-iso-file>253 Explictily sets the rock ridge, UDF and HFS file mode for a254 file/dir/whatever that has already been added to the ISO. The mode can255 be octal, a+x, a+r, or a+rx. (Support for more complicated mode256 specifications may be implemented at a later point.)257 Note that only namespaces in the current -dashdash-name-setup are affected.258 259 -dashdash-chown <owner-id>:<on-iso-file>260 Explictily sets the rock ridge, UDF and HFS file owner ID (numeric) for a261 file/dir/whatever that has already been added to the ISO.262 Note that only namespaces in the current -dashdash-name-setup are affected.263 264 -dashdash-chgrp <group-id>:<on-iso-file>265 Explictily sets the rock ridge, UDF and HFS file group ID (numeric) for a266 file/dir/whatever that has already been added to the ISO.267 Note that only namespaces in the current -dashdash-name-setup are affected.268 269 270 Options - Booting:271 272 -dashdash-eltorito-new-entry273 -dashdash-eltorito-alt-boot274 Starts a new El Torito boot entry.275 276 -dashdash-eltorito-add-image <filespec>277 File specification of a file that should be added to the image and used278 as the El Torito boot image of the current boot entry.279 280 -b <on-iso-file>281 -dashdash-eltorito-boot <on-iso-file>282 Specifies a file on the ISO as the El Torito boot image for the current283 boot entry.284 285 -dashdash-eltorito-floppy-12286 -dashdash-eltorito-floppy-144287 -dashdash-eltorito-floppy-288288 -dashdash-no-emulation-boot289 -dashdash-hard-disk-boot290 Sets the boot image emulation type of the current El Torito boot entry.291 292 -dashdash-boot-load-seg <seg>293 Specify the image load segment for the current El Torito boot entry.294 Default: 0x7c0295 296 -dashdash-boot-load-size <seg>297 Specify the image load size in emulated sectors for the current El Torito298 boot entry. Default: 4 (sectors of 512 bytes)299 300 -dashdash-no-boot301 Indicates that the current El Torito boot entry isn't bootable. (The302 BIOS will allegedly configure the emulation, but not attempt booting.)303 304 -dashdash-boot-info-table305 Write a isolinux/syslinux boot info table into the boot image for the306 current El Torito boot entry.307 308 -dashdash-eltorito-platform-id <id>309 Set the El Torito platform ID of the current entry, a new entry of the310 verification entry depending on when it's used. The ID must be one311 of: x86, PPC, Mac, efi312 313 -c <namespec>314 -dashdash-boot-catalog <namespec>315 Enters the El Torito boot catalog into the namespaces as a file. The316 'namespec' uses the same format as a 'filespec', but omits the final317 source file system name component.318 319 -G <file>320 -dashdash-generic-boot <file>321 Specifies a file that should be loaded at offset 0 in the ISO image.322 The file must not be larger than 32KB. When creating a hybrid image,323 parts of this may be regenerated by partition tables and such.324 325 326 Options - String properties (applied to active namespaces only):327 328 -dashdash-abstract <file-id>329 The name of the abstract file in the root dir.330 331 -A <text|_file-id>332 -dashdash-application-id <text|_file-id>333 Application ID string or root file name. The latter must be prefixed334 with an underscore.335 336 -dashdash-biblio <file-id>337 The name of the bibliographic file in the root dir.338 339 -dashdash-copyright <file-id>340 The name of the copyright file in the root dir.341 342 -P <text|_file-id>343 -dashdash-publisher <text|_file-id>344 Publisher ID string or root file name. The latter must be prefixed345 with an underscore.346 347 -p <text|_file-id>348 -dashdash-preparer <text|_file-id>349 Data preparer ID string or root file name. The latter must be prefixed350 with an underscore.351 352 -dashdash-sysid <text>353 System ID string.354 355 -dashdash-volid <text>356 -dashdash-volume-id <text>357 Volume ID string (label). (It is possible to set different labels for358 primary ISO 9660, joliet, UDF and HFS by changing the active namespaces359 using the -dashdash-name-setup option between -dashdash-volume-id occurences.)360 361 -dashdash-volset <text>362 Volume set ID string.363 364 365 Options - Compatibility:366 367 -dashdash-graft-points368 Alias for -dashdash-name-setup iso+joliet+udf+hfs.369 370 -l371 -dashdash-long-names372 Allow 31 charater filenames. Just ensure ISO level >= 2 here.373 374 -R375 -dashdash-rock376 Same as -dashdash-rock-ridge and -dashdash-strict-attribs.377 378 -r379 -dashdash-rational-rock380 Same as -dashdash-rock-ridge and -dashdash-rational-attribs.381 382 383 Options - VISO specific:384 385 -dashdash-iprt-iso-maker-file-marker <UUID>386 -dashdash-iprt-iso-maker-file-marker-bourne <UUID>387 -dashdash-iprt-iso-maker-file-marker-bourne-sh <UUID>388 Used as first option in a VISO file to specify the file UUID and that389 it is formatted using bourne-shell argument quoting & escaping style.390 391 -dashdash-iprt-iso-maker-file-marker-ms <UUID>392 -dashdash-iprt-iso-maker-file-marker-ms-sh <UUID>393 Used as first option in a VISO file to specify the file UUID and that394 it is formatted using microsoft CRT argument quoting & escaping style.395 396 397 Options - Testing (not applicable to VISO):398 399 -dashdash-output-buffer-size <bytes>400 Selects a specific output buffer size for testing virtual image reads.401 402 -dashdash-random-output-buffer-size403 Enables randomized buffer size for each virtual image read, using the404 current output buffer size (-dashdash-output-buffer-size) as maximum.405 406 -dashdash-random-order-verification <size>407 Enables verification pass of the image that compares blocks of the given408 size in random order from the virtual and output images409 410 411 --> -
trunk/src/VBox/Runtime/common/fs/isomakercmd.cpp
r68864 r68872 814 814 static void rtFsIsoMakerCmdUsage(PRTFSISOMAKERCMDOPTS pOpts, const char *pszProgName) 815 815 { 816 #ifdef RT_OS_OS2 /* fixme */ 817 rtFsIsoMakerPrintf(pOpts, 818 "Usage: %s [options] [@commands.rsp] <filespec1> [filespec2 [..]]\n" 819 "\n" 820 "File specifications and --name-setup:\n" 821 "\n" 822 " All non-options that does not start with '@' are taken to indicate a file,\n" 823 " directory, or similar that is should be added to the ISO image. Directories\n" 824 " are added recursively and content is subject to filtering options.\n" 825 "\n" 826 " Since there can be up to six different namespaces on an ISO, it is handy\n" 827 " to be able to control the names used in each and be able to exclude an\n" 828 " object from one or more namespaces. The --name-setup option specifies the\n" 829 " file specification format to use forthwith.\n" 830 "\n" 831 " The default setup is:\n" 832 "\n" 833 " --name-setup iso+joliet+udf+hfs\n" 834 "\n" 835 " Which means you specify one on-ISO name for all namespaces followed by '='\n" 836 " and the source file system name. Only specifying the source file system\n" 837 " will add the file/dir/whatever to the root of the ISO image.\n" 838 "\n" 839 " Lets look at the following two examples:\n" 840 "\n" 841 " /docs/readme.txt=/home/user/Documents/product-x-readme.txt\n" 842 " /home/user/Documents/product-x-readme.txt\n" 843 "\n" 844 " In the first case the file '/home/user/Documents/product-x-readme.txt' is\n" 845 " added to the ISO image as '/docs/readme.txt' in all enabled namespaces.\n" 846 " In the primary ISO 9660 namespace, the filename will by default be converted\n" 847 " to upper case because it's required by the spec.\n" 848 "\n" 849 " In the second case the file is added to the root under the name\n" 850 " 'product-x-readme.txt' in all namespaces. Though, in the primary ISO 9660\n" 851 " namespace the name will be transformed to apply with the current ISO level,\n" 852 " probably uppercased, possibly truncated too.\n" 853 "\n" 854 " Given --name-setup iso,joliet,udf you can specify the name individually\n" 855 " for each of the three namespace, if you like. If you omit any, they will\n" 856 " use last name given. Any names left blank (==) will be considered omitted.\n" 857 "\n" 858 " A different name in each namespace:\n" 859 " /ISO.TXT=/Joliet.TxT=/UDF.txt=/tmp/iso/real.txt\n" 860 " Specific name in the ISO 9660 namespace, same in the rest:\n" 861 " /ISO.TXT=/OtherNamespaces.TxT=/tmp/iso/real.txt\n" 862 " Omit the file from the ISO 9660 namespace:\n" 863 " =/OtherNamespaces.TxT=/tmp/iso/real.txt\n" 864 " Omit the file from the joliet namespace:\n" 865 " /ISO.TXT==/UDF.TxT=/tmp/iso/real.txt\n" 866 " Use the same filename as the source everywhere:\n" 867 " /tmp/iso/real.txt\n" 868 "\n" 869 " Using for instance --name-setup udf you can add a files/dirs/whatever to\n" 870 " select namespace(s) without the more complicated empty name syntax above.\n" 871 "\n" 872 " When adding directories, you can only control the naming and omitting of the\n" 873 " directory itself, not any recursively added files and directories below it.\n" 874 "\n" 875 "\n" 876 "Options - General:\n" 877 "\n" 878 " -o <output-file>\n" 879 " --output <output-file>\n" 880 " The output filename. This option is not supported in VISO mode.\n" 881 "\n" 882 " --name-setup <spec>\n" 883 " Configures active namespaces and how file specifications are to be\n" 884 " interpreted. The specification is a comma separated list. Each element\n" 885 " in the list is a sub-list separated by space, '+' or '|' giving the\n" 886 " namespaces that elements controls. Namespaces are divied into two major\n" 887 " and minor ones, you cannot specifying a minor before the major it\n" 888 " belongs to.\n" 889 " Major namespaces and aliases in parentheses:\n" 890 " - iso (primary, iso9660, iso-9660, primary-iso, iso-primary)\n" 891 " - joliet\n" 892 " - udf\n" 893 " - hfs (hfs-plus)\n" 894 " Minor namespaces:\n" 895 " - rock: rock ridge on previous major namespace (iso / joliet)\n" 896 " - iso-rock: rock ridge extensions on primary ISO 9660 namespace\n" 897 " - joliet-rock: rock ridge on joliet namespace (just for fun)\n" 898 " - trans-tbl: translation table file on previous major namespace\n" 899 " - iso-trans-tbl\n" 900 " - joliet-trans-tbl\n" 901 " - udf-trans-tbl\n" 902 " - hfs-trans-tbl\n" 903 "\n" 904 " --push-iso <iso-file>\n" 905 " --push-iso-no-joliet <iso-file>\n" 906 " --push-iso-no-rock <iso-file>\n" 907 " --push-iso-no-rock-no-joliet <iso-file>\n" 908 " Open the specified ISO file and use it as source file system until the\n" 909 " corresponding --pop options is encountered. The variations are for\n" 910 " selecting which namespace on the ISO to (not) access. These options\n" 911 " are handy for copying files/directories/stuff from an ISO without\n" 912 " having to extract them first or using the :iprtvfs: syntax.\n" 913 "\n" 914 " --pop\n" 915 " Pops a --push-iso of the source file system stack.\n" 916 "\n" 917 " --import-iso <iso-file>\n" 918 " Imports everything on the given ISO file. You can use --name-setup to\n" 919 " omit namespaces.\n" 920 "\n" 921 "\n" 922 "Options - Namespaces:\n" 923 "\n" 924 " --iso-level <0|1|2|3>\n" 925 " Sets the ISO level:\n" 926 " - 0: Disable primary ISO namespace.\n" 927 " - 1: ISO level 1: Filenames 8.3 format and limited to 4GB - 1.\n" 928 " - 2: ISO level 2: 31 char long names and limited to 4GB - 1.\n" 929 " - 3: ISO level 3: 31 char long names and support for >=4GB files.\n" 930 " - 4: Fictive level used by other tools. Not yet implemented.\n" 931 " Default: 3\n" 932 "\n" 933 " --rock-ridge\n" 934 " --limited-rock-ridge\n" 935 " --no-rock-ridge\n" 936 " Enables or disables rock ridge support for the primary ISO 9660\n" 937 " namespace. The --limited-rock-ridge option omits a couple of bits in\n" 938 " the root directory that would make Linux pick rock ridge over joliet.\n" 939 " Default: --limited-rock-ridge" 940 "\n" 941 " -J\n" 942 " --joliet\n" 943 " --no-joliet\n" 944 " Enables or disable the joliet namespace. This option must precede any\n" 945 " file specifications. Default: --joliet\n" 946 "\n" 947 " --joliet-ucs-level <1|2|3>\n" 948 " --ucs-level <1|2|3>\n" 949 " Set the Joliet UCS support level. This is currently only flagged in the\n" 950 " image but not enforced on the actual path names. Default level: 3\n" 951 "\n" 952 "\n" 953 "Options - File attributes:\n" 954 "\n" 955 " --rational-attribs\n" 956 " Enables rational file attribute handling:\n" 957 " * Owner ID is set to zero\n" 958 " * Group ID is set to zero\n" 959 " * Mode is set to 0444 for non-executable files.\n" 960 " * Mode is set to 0555 for executable files.\n" 961 " * Mode is set to 0555 for directories, preserving stick bits.\n" 962 " This is default.\n" 963 "\n" 964 " --strict-attribs\n" 965 " Counters --rational-attribs and causes attributes to be recorded\n" 966 " exactly as they appear in the source.\n" 967 "\n" 968 " --file-mode <mode>\n" 969 " --no-file-mode\n" 970 " Controls the forced file mode mask for rock ridge, UDF and HFS.\n" 971 "\n" 972 " --dir-mode <mode>\n" 973 " --no-dir-mode\n" 974 " Controls the forced directory mode mask for rock ridge, UDF and HFS.\n" 975 "\n" 976 " --new-dir-mode <mode>\n" 977 " Controls the default mode mask (rock ridge, UDF, HFS) for directories\n" 978 " that are created implicitly. The --dir-mode option overrides this.\n" 979 "\n" 980 " --chmod <mode>:<on-iso-file>\n" 981 " Explictily sets the rock ridge, UDF and HFS file mode for a\n" 982 " file/dir/whatever that has already been added to the ISO. The mode can\n" 983 " be octal, a+x, a+r, or a+rx. (Support for more complicated mode\n" 984 " specifications may be implemented at a later point.)\n" 985 " Note that only namespaces in the current --name-setup are affected.\n" 986 "\n" 987 " --chown <owner-id>:<on-iso-file>\n" 988 " Explictily sets the rock ridge, UDF and HFS file owner ID (numeric) for a\n" 989 " file/dir/whatever that has already been added to the ISO.\n" 990 " Note that only namespaces in the current --name-setup are affected.\n" 991 "\n" 992 " --chgrp <group-id>:<on-iso-file>\n" 993 " Explictily sets the rock ridge, UDF and HFS file group ID (numeric) for a\n" 994 " file/dir/whatever that has already been added to the ISO.\n" 995 " Note that only namespaces in the current --name-setup are affected.\n" 996 "\n" 997 "\n" 998 "Options - Booting:\n" 999 "\n" 1000 " --eltorito-new-entry\n" 1001 " --eltorito-alt-boot\n" 1002 " Starts a new El Torito boot entry.\n" 1003 "\n" 1004 " --eltorito-add-image <filespec>\n" 1005 " File specification of a file that should be added to the image and used\n" 1006 " as the El Torito boot image of the current boot entry.\n" 1007 "\n" 1008 " -b <on-iso-file>\n" 1009 " --eltorito-boot <on-iso-file>\n" 1010 " Specifies a file on the ISO as the El Torito boot image for the current\n" 1011 " boot entry.\n" 1012 "\n" 1013 " --eltorito-floppy-12\n" 1014 " --eltorito-floppy-144\n" 1015 " --eltorito-floppy-288\n" 1016 " --no-emulation-boot\n" 1017 " --hard-disk-boot\n" 1018 " Sets the boot image emulation type of the current El Torito boot entry.\n" 1019 "\n" 1020 " --boot-load-seg <seg>\n" 1021 " Specify the image load segment for the current El Torito boot entry.\n" 1022 " Default: 0x7c0\n" 1023 "\n" 1024 " --boot-load-size <seg>\n" 1025 " Specify the image load size in emulated sectors for the current El Torito\n" 1026 " boot entry. Default: 4 (sectors of 512 bytes)\n" 1027 "\n" 1028 " --no-boot\n" 1029 " Indicates that the current El Torito boot entry isn't bootable. (The\n" 1030 " BIOS will allegedly configure the emulation, but not attempt booting.)\n" 1031 "\n" 1032 " --boot-info-table\n" 1033 " Write a isolinux/syslinux boot info table into the boot image for the\n" 1034 " current El Torito boot entry.\n" 1035 "\n" 1036 " --eltorito-platform-id <id>\n" 1037 " Set the El Torito platform ID of the current entry, a new entry of the\n" 1038 " verification entry depending on when it's used. The ID must be one\n" 1039 " of: x86, PPC, Mac, efi\n" 1040 "\n" 1041 " -c <namespec>\n" 1042 " --boot-catalog <namespec>\n" 1043 " Enters the El Torito boot catalog into the namespaces as a file. The\n" 1044 " 'namespec' uses the same format as a 'filespec', but omits the final\n" 1045 " source file system name component.\n" 1046 "\n" 1047 " -G <file>\n" 1048 " --generic-boot <file>\n" 1049 " Specifies a file that should be loaded at offset 0 in the ISO image.\n" 1050 " The file must not be larger than 32KB. When creating a hybrid image,\n" 1051 " parts of this may be regenerated by partition tables and such.\n" 1052 "\n" 1053 "\n" 1054 "Options - String properties (applied to active namespaces only):\n" 1055 "\n" 1056 " --abstract <file-id>\n" 1057 " The name of the abstract file in the root dir.\n" 1058 "\n" 1059 " -A <text|_file-id>\n" 1060 " --application-id <text|_file-id>\n" 1061 " Application ID string or root file name. The latter must be prefixed\n" 1062 " with an underscore.\n" 1063 "\n" 1064 " --biblio <file-id>\n" 1065 " The name of the bibliographic file in the root dir.\n" 1066 "\n" 1067 " --copyright <file-id>\n" 1068 " The name of the copyright file in the root dir.\n" 1069 "\n" 1070 " -P <text|_file-id>\n" 1071 " --publisher <text|_file-id>\n" 1072 " Publisher ID string or root file name. The latter must be prefixed\n" 1073 " with an underscore.\n" 1074 "\n" 1075 " -p <text|_file-id>\n" 1076 " --preparer <text|_file-id>\n" 1077 " Data preparer ID string or root file name. The latter must be prefixed\n" 1078 " with an underscore.\n" 1079 "\n" 1080 " --sysid <text>\n" 1081 " System ID string.\n" 1082 "\n" 1083 " --volid <text>\n" 1084 " --volume-id <text>\n" 1085 " Volume ID string (label). (It is possible to set different labels for\n" 1086 " primary ISO 9660, joliet, UDF and HFS by changing the active namespaces\n" 1087 " using the --name-setup option between --volume-id occurences.)\n" 1088 "\n" 1089 " --volset <text>\n" 1090 " Volume set ID string.\n" 1091 "\n" 1092 "\n" 1093 "Options - Compatibility:\n" 1094 "\n" 1095 " --graft-points\n" 1096 " Alias for --name-setup iso+joliet+udf+hfs.\n" 1097 "\n" 1098 " -l\n" 1099 " --long-names\n" 1100 " Allow 31 charater filenames. Just ensure ISO level >= 2 here.\n" 1101 "\n" 1102 " -R\n" 1103 " --rock\n" 1104 " Same as --rock-ridge and --strict-attribs.\n" 1105 "\n" 1106 " -r\n" 1107 " --rational-rock\n" 1108 " Same as --rock-ridge and --rational-attribs.\n" 1109 "\n" 1110 "\n" 1111 "Options - VISO specific:\n" 1112 "\n" 1113 " --iprt-iso-maker-file-marker <UUID>\n" 1114 " --iprt-iso-maker-file-marker-bourne <UUID>\n" 1115 " --iprt-iso-maker-file-marker-bourne-sh <UUID>\n" 1116 " Used as first option in a VISO file to specify the file UUID and that\n" 1117 " it is formatted using bourne-shell argument quoting & escaping style.\n" 1118 "\n" 1119 " --iprt-iso-maker-file-marker-ms <UUID>\n" 1120 " --iprt-iso-maker-file-marker-ms-sh <UUID>\n" 1121 " Used as first option in a VISO file to specify the file UUID and that\n" 1122 " it is formatted using microsoft CRT argument quoting & escaping style.\n" 1123 "\n" 1124 "\n" 1125 "Options - Testing (not applicable to VISO):\n" 1126 "\n" 1127 " --output-buffer-size <bytes>\n" 1128 " Selects a specific output buffer size for testing virtual image reads.\n" 1129 "\n" 1130 " --random-output-buffer-size\n" 1131 " Enables randomized buffer size for each virtual image read, using the\n" 1132 " current output buffer size (--output-buffer-size) as maximum.\n" 1133 "\n" 1134 " --random-order-verification <size>\n" 1135 " Enables verification pass of the image that compares blocks of the given\n" 1136 " size in random order from the virtual and output images\n" 1137 "\n" 1138 , RTPathFilename(pszProgName)); 1139 #else 1140 if (pOpts->pErrInfo) 1141 rtFsIsoMakerPrintf(pOpts, "Usage: %s [options] [@commands.rsp] <filespec1> [filespec2 [..]]\n", 816 #ifndef RT_OS_OS2 /* fixme */ 817 if (!pOpts->pErrInfo) 818 RTMsgRefEntryHelp(g_pStdOut, &g_viso); 819 else 820 #endif 821 rtFsIsoMakerPrintf(pOpts, "Usage: %s [options] [@commands.rsp] <filespec...>\n", 1142 822 RTPathFilename(pszProgName)); 1143 else1144 RTMsgRefEntryHelp(g_pStdOut, &g_rtisomaker);1145 #endif1146 823 } 1147 824
Note:
See TracChangeset
for help on using the changeset viewer.