Indent the new <sect2> (from <sect3>) one step back.

And fixup the few whitespace errors igor -RZ reports.

Whitespace only, translators can ignore.

Approved by:	wblock (mentor)
Differential Revision:	https://reviews.freebsd.org/D2952
This commit is contained in:
Mathieu Arnold 2015-06-30 15:38:37 +00:00
parent bec94907eb
commit 0413d7e930
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=46902

View file

@ -1932,89 +1932,89 @@ MASTER_SITE_SUBDIR= stardict/WyabdcRealPeopleTTS/${PORTVERSION}</programlisting>
</sect3>
</sect2>
<sect2 xml:id="makefile-master_sites-github">
<title><varname>USE_GITHUB</varname></title>
<sect2 xml:id="makefile-master_sites-github">
<title><varname>USE_GITHUB</varname></title>
<para>If the distribution file comes from a specific commit or
tag on <link xlink:href="https://github.com">GitHub</link>
for which there is no officially released file, there is an
easy way to set the right <varname>DISTNAME</varname> and
<varname>MASTER_SITES</varname> automatically. These
variables are available:</para>
<para>If the distribution file comes from a specific commit or
tag on <link xlink:href="https://github.com">GitHub</link>
for which there is no officially released file, there is an
easy way to set the right <varname>DISTNAME</varname> and
<varname>MASTER_SITES</varname> automatically. These
variables are available:</para>
<table xml:id="makefile-master_sites-github-description">
<title><varname>USE_GITHUB</varname> Description</title>
<table xml:id="makefile-master_sites-github-description">
<title><varname>USE_GITHUB</varname> Description</title>
<tgroup cols="3">
<thead>
<row>
<entry>Variable</entry>
<entry>Description</entry>
<entry>Default</entry>
</row>
</thead>
<tgroup cols="3">
<thead>
<row>
<entry>Variable</entry>
<entry>Description</entry>
<entry>Default</entry>
</row>
</thead>
<tbody>
<row>
<entry><varname>GH_ACCOUNT</varname></entry>
<entry>Account name of the GitHub user hosting the
project</entry>
<entry><literal>${PORTNAME}</literal></entry>
</row>
<tbody>
<row>
<entry><varname>GH_ACCOUNT</varname></entry>
<entry>Account name of the GitHub user hosting the
project</entry>
<entry><literal>${PORTNAME}</literal></entry>
</row>
<row>
<entry><varname>GH_PROJECT</varname></entry>
<entry>Name of the project on GitHub</entry>
<entry><literal>${PORTNAME}</literal></entry>
</row>
<row>
<entry><varname>GH_PROJECT</varname></entry>
<entry>Name of the project on GitHub</entry>
<entry><literal>${PORTNAME}</literal></entry>
</row>
<row>
<entry><varname>GH_TAGNAME</varname></entry>
<entry>Name of the tag to download (2.0.1, hash, ...)
Using the name of a branch here is incorrect. It is
also possible to use the hash of a commit id to do a
snapshot.</entry>
<entry><literal>${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}</literal></entry>
</row>
</tbody>
</tgroup>
</table>
<row>
<entry><varname>GH_TAGNAME</varname></entry>
<entry>Name of the tag to download (2.0.1, hash, ...)
Using the name of a branch here is incorrect. It is
also possible to use the hash of a commit id to do a
snapshot.</entry>
<entry><literal>${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}</literal></entry>
</row>
</tbody>
</tgroup>
</table>
<example xml:id="makefile-master_sites-github-ex1">
<title>Simple Use of <varname>USE_GITHUB</varname></title>
<example xml:id="makefile-master_sites-github-ex1">
<title>Simple Use of <varname>USE_GITHUB</varname></title>
<para>While trying to make a port for version
<literal>1.2.7</literal> of <application>pkg</application>
from the &os; user on github, at <link
xlink:href="https://github.com/freebsd/pkg"/>, The
<filename>Makefile</filename> would end up looking like
this (slightly stripped for the example):</para>
<para>While trying to make a port for version
<literal>1.2.7</literal> of <application>pkg</application>
from the &os; user on github, at <link
xlink:href="https://github.com/freebsd/pkg"/>, The
<filename>Makefile</filename> would end up looking like
this (slightly stripped for the example):</para>
<programlisting>PORTNAME= pkg
<programlisting>PORTNAME= pkg
PORTVERSION= 1.2.7
USE_GITHUB= yes
GH_ACCOUNT= freebsd</programlisting>
<para>It will automatically have
<varname>MASTER_SITES</varname> set to <literal>GH
GHC</literal> and <varname>WRKSRC</varname> to
<literal>${WRKDIR}/pkg-1.2.7</literal>.</para>
</example>
<para>It will automatically have
<varname>MASTER_SITES</varname> set to <literal>GH
GHC</literal> and <varname>WRKSRC</varname> to
<literal>${WRKDIR}/pkg-1.2.7</literal>.</para>
</example>
<example xml:id="makefile-master_sites-github-ex2">
<title>More Complete Use of
<varname>USE_GITHUB</varname></title>
<example xml:id="makefile-master_sites-github-ex2">
<title>More Complete Use of
<varname>USE_GITHUB</varname></title>
<para>While trying to make a port for the bleeding edge
version of <application>pkg</application> from the &os;
user on github, at <link
xlink:href="https://github.com/freebsd/pkg"/>, the
<filename>Makefile</filename> ends up looking like
this (slightly stripped for the example):</para>
<para>While trying to make a port for the bleeding edge
version of <application>pkg</application> from the &os;
user on github, at <link
xlink:href="https://github.com/freebsd/pkg"/>, the
<filename>Makefile</filename> ends up looking like
this (slightly stripped for the example):</para>
<programlisting>PORTNAME= pkg-devel
<programlisting>PORTNAME= pkg-devel
PORTVERSION= 1.3.0.a.20140411
USE_GITHUB= yes
@ -2022,77 +2022,77 @@ GH_ACCOUNT= freebsd
GH_PROJECT= pkg
GH_TAGNAME= 6dbb17b</programlisting>
<para>It will automatically have
<varname>MASTER_SITES</varname> set to <literal>GH
GHC</literal> and <varname>WRKSRC</varname> to
<literal>${WRKDIR}/pkg-6dbb17b</literal>.</para>
</example>
<para>It will automatically have
<varname>MASTER_SITES</varname> set to <literal>GH
GHC</literal> and <varname>WRKSRC</varname> to
<literal>${WRKDIR}/pkg-6dbb17b</literal>.</para>
</example>
<example xml:id="makefile-master_sites-github-ex3">
<title>Use of <varname>USE_GITHUB</varname> with
<varname>DISTVERSIONPREFIX</varname></title>
<example xml:id="makefile-master_sites-github-ex3">
<title>Use of <varname>USE_GITHUB</varname> with
<varname>DISTVERSIONPREFIX</varname></title>
<para>From time to time, <varname>GH_TAGNAME</varname> is a
slight variation from <varname>DISTVERSION</varname>.
For example, if the version is <literal>1.0.2</literal>,
the tag is <literal>v1.0.2</literal>. In those cases, it
is possible to use <varname>DISTVERSIONPREFIX</varname> or
<varname>DISTVERSIONSUFFIX</varname>:</para>
<para>From time to time, <varname>GH_TAGNAME</varname> is a
slight variation from <varname>DISTVERSION</varname>.
For example, if the version is <literal>1.0.2</literal>,
the tag is <literal>v1.0.2</literal>. In those cases, it
is possible to use <varname>DISTVERSIONPREFIX</varname> or
<varname>DISTVERSIONSUFFIX</varname>:</para>
<programlisting>PORTNAME= foo
<programlisting>PORTNAME= foo
PORTVERSION= 1.0.2
DISTVERSIONPREFIX= v
USE_GITHUB= yes</programlisting>
<para>It will automatically set
<varname>GH_TAGNAME</varname> to
<literal>v1.0.2</literal>, while <varname>WRKSRC</varname>
will be kept to
<varname>${WRKDIR}/foo-1.0.2</varname>.</para>
</example>
<para>It will automatically set
<varname>GH_TAGNAME</varname> to
<literal>v1.0.2</literal>, while <varname>WRKSRC</varname>
will be kept to
<varname>${WRKDIR}/foo-1.0.2</varname>.</para>
</example>
<sect3>
<title>Fetching Multiple Files From GitHub</title>
<sect3>
<title>Fetching Multiple Files From GitHub</title>
<para>The <varname>USE_GITHUB</varname> framework also
supports fetching multiple distribution files from
different places in GitHub. It works in a way very
similar to <xref
linkend="porting-master-sites-n"/>.</para>
<para>The <varname>USE_GITHUB</varname> framework also
supports fetching multiple distribution files from
different places in GitHub. It works in a way very
similar to <xref
linkend="porting-master-sites-n"/>.</para>
<para>Multiple values are added to
<varname>GH_ACCOUNT</varname>,
<varname>GH_PROJECT</varname>, and
<varname>GH_TAGNAME</varname>. Each different value is
assigned a tag. The main value can either have no tag, or
the <literal>:DEFAULT</literal> tag. A value can be
omitted if it is the same as the default as listed in
<xref
linkend="makefile-master_sites-github-description"/>.</para>
<para>Multiple values are added to
<varname>GH_ACCOUNT</varname>,
<varname>GH_PROJECT</varname>, and
<varname>GH_TAGNAME</varname>. Each different value is
assigned a tag. The main value can either have no tag, or
the <literal>:DEFAULT</literal> tag. A value can be
omitted if it is the same as the default as listed in
<xref
linkend="makefile-master_sites-github-description"/>.</para>
<para>For each tag, a
<varname>${WRKSRC_<replaceable>tag</replaceable>}</varname>
helper variable is created, containing the directory into
which the file has been extracted. The
<varname>${WRKSRC_<replaceable>tag</replaceable>}</varname>
variables can be used to move directories around during
<buildtarget>post-extract</buildtarget>, or add to
<varname>CONFIGURE_ARGS</varname>, or whatever is needed
so that the software builds correctly.</para>
<para>For each tag, a
<varname>${WRKSRC_<replaceable>tag</replaceable>}</varname>
helper variable is created, containing the directory into
which the file has been extracted. The
<varname>${WRKSRC_<replaceable>tag</replaceable>}</varname>
variables can be used to move directories around during
<buildtarget>post-extract</buildtarget>, or add to
<varname>CONFIGURE_ARGS</varname>, or whatever is needed
so that the software builds correctly.</para>
<example xml:id="makefile-master_sites-github-multi">
<title>Use of <varname>USE_GITHUB</varname> with Multiple
Distribution Files</title>
<example xml:id="makefile-master_sites-github-multi">
<title>Use of <varname>USE_GITHUB</varname> with Multiple
Distribution Files</title>
<para>From time to time, there is a need to fetch more
than one distribution file. For example, when the
upstream git repository uses submodules. This can be
done easily using tags in the
<varname>GH_<replaceable>*</replaceable></varname>
variables:</para>
<para>From time to time, there is a need to fetch more
than one distribution file. For example, when the
upstream git repository uses submodules. This can be
done easily using tags in the
<varname>GH_<replaceable>*</replaceable></varname>
variables:</para>
<programlisting>PORTNAME= foo
<programlisting>PORTNAME= foo
PORTVERSION= 1.0.2
USE_GITHUB= yes
@ -2103,36 +2103,36 @@ GH_TAGNAME= 1.0:icons fa579bc:contrib
CONFIGURE_ARGS= --with-contrib=${WRKSRC_contrib}
post-extract:
@${MV} ${WRKSRC_icons} ${WRKSRC}/icons</programlisting>
@${MV} ${WRKSRC_icons} ${WRKSRC}/icons</programlisting>
<para>This will fetch three distribution files from
github. The default one comes from
<filename>foo/foo</filename> and is version
<literal>1.0.2</literal>. The second one, tagged
<literal>icons</literal>, comes from
<filename>bar/foo-icons</filename> and is in version
<literal>1.0</literal>. The third one comes from
<filename>bar/foo-contrib</filename> and uses the
<application>Git</application> commit
<literal>fa579bc</literal>. The distribution files are
named <filename>foo-foo-1.0.2_GH0.tar.gz</filename>,
<filename>bar-foo-icons-1.0_GH0.tar.gz</filename>, and
<filename>bar-foo-contrib-fa579bc_GH0.tar.gz</filename>.</para>
<para>This will fetch three distribution files from
github. The default one comes from
<filename>foo/foo</filename> and is version
<literal>1.0.2</literal>. The second one, tagged
<literal>icons</literal>, comes from
<filename>bar/foo-icons</filename> and is in version
<literal>1.0</literal>. The third one comes from
<filename>bar/foo-contrib</filename> and uses the
<application>Git</application> commit
<literal>fa579bc</literal>. The distribution files are
named <filename>foo-foo-1.0.2_GH0.tar.gz</filename>,
<filename>bar-foo-icons-1.0_GH0.tar.gz</filename>, and
<filename>bar-foo-contrib-fa579bc_GH0.tar.gz</filename>.</para>
<para>All the distribution files are extracted in
<varname>${WRKDIR}</varname> in their respective
subdirectories. The default file is still extracted in
<varname>${WRKSRC}</varname>, in this case,
<filename>${WRKDIR}/foo-1.0.2</filename>. Each
additional distribution file is extracted in
<varname>${WRKSRC_<replaceable>tag</replaceable>}</varname>.
Here, for the <literal>icons</literal> tag, it is called
<varname>${WRKSRC_icons}</varname> and it contains
<filename>${WRKDIR}/foo-icons-1.0</filename>. The file
with the <literal>contrib</literal> tag is called
<varname>${WRKSRC_contrib}</varname> and contains
<literal>${WRKDIR}/foo-contrib-fa579bc</literal>.</para>
</example>
<para>All the distribution files are extracted in
<varname>${WRKDIR}</varname> in their respective
subdirectories. The default file is still extracted in
<varname>${WRKSRC}</varname>, in this case,
<filename>${WRKDIR}/foo-1.0.2</filename>. Each
additional distribution file is extracted in
<varname>${WRKSRC_<replaceable>tag</replaceable>}</varname>.
Here, for the <literal>icons</literal> tag, it is called
<varname>${WRKSRC_icons}</varname> and it contains
<filename>${WRKDIR}/foo-icons-1.0</filename>. The file
with the <literal>contrib</literal> tag is called
<varname>${WRKSRC_contrib}</varname> and contains
<literal>${WRKDIR}/foo-contrib-fa579bc</literal>.</para>
</example>
</sect3>
</sect2>
@ -2924,8 +2924,8 @@ PATCHFILES= patch1:test</programlisting>
<literal>${PKGNAMEPREFIX}${PORTNAME}</literal> are
fine). This will change <varname>DISTDIR</varname> from the
default <filename>/usr/ports/distfiles</filename> to
<filename>/usr/ports/distfiles/${DIST_SUBDIR}</filename>, and in
effect puts everything that is required for the port into
<filename>/usr/ports/distfiles/${DIST_SUBDIR}</filename>, and
in effect puts everything that is required for the port into
that subdirectory.</para>
<para>It will also look at the subdirectory with the same name
@ -4570,7 +4570,7 @@ LIB_DEPENDS+= liba.so:${PORTSDIR}/devel/a
<note>
<para>Some variables are not in this list, in particular
<varname>PKGNAMEPREFIX</varname> and
<varname>PKGNAMESUFFIX</varname>. This is intentional. A
<varname>PKGNAMESUFFIX</varname>. This is intentional. A
port <emphasis>must not</emphasis> change its name when
its option set changes.</para>
</note>
@ -4785,8 +4785,9 @@ PORTVERSION= 1.0</programlisting>
<filename>pkg-plist</filename> with the corresponding entries,
such as
<literal>@(<replaceable>owner</replaceable>,<replaceable>group</replaceable>,)</literal>,
<literal>@owner <replaceable>owner</replaceable></literal>, and
<literal>@group <replaceable>group</replaceable></literal>.
<literal>@owner <replaceable>owner</replaceable></literal>,
and <literal>@group
<replaceable>group</replaceable></literal>.
These operators work until overridden, or until the end
of <filename>pkg-plist</filename>, so do not forget to reset
them after they are no longer needed. The default ownership