- Add a new section for Options Helpers from bapt@
Submitted by: bapt@ Reviewed by: Ken Reed <kreed002@gmail.com>
This commit is contained in:
parent
989ef6ffaf
commit
5f78ff8efe
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=42487
1 changed files with 241 additions and 0 deletions
|
|
@ -4629,6 +4629,247 @@ CONFIGURE_ARGS+= --disable-foo
|
|||
.if ${VARIABLE:MVALUE}</programlisting>
|
||||
</note>
|
||||
</sect2>
|
||||
<sect2>
|
||||
<title>Options Helpers</title>
|
||||
|
||||
<para>There are some macros to help simplify conditional
|
||||
values which differ based on the options set.</para>
|
||||
|
||||
<para>If <makevar>OPTIONS_SUB</makevar> is set to
|
||||
<literal>yes</literal> then each of the options added
|
||||
to <makevar>OPTIONS_DEFINE</makevar> will be added to
|
||||
<makevar>PLIST_SUB</makevar>, for example:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPTIONS_SUB= yes</programlisting>
|
||||
|
||||
<para> is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
PLIST_SUB+= OPT1=""
|
||||
.else
|
||||
PLIST_SUB+= OPT1="@comment "
|
||||
.endif</programlisting>
|
||||
|
||||
<para>If <makevar>X_CONFIGURE_ENABLE</makevar> is set then
|
||||
<literal>--enable-${X_CONFIGURE_ENABLE}</literal>
|
||||
or <literal>--disable-${X_CONFIGURE_ENABLE}</literal> will
|
||||
be added to <makevar>CONFIGURE_ARGS</makevar> depending on
|
||||
the value of the option<makevar>X</makevar>, for example:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_CONFIGURE_ENABLE= test</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
CONFIGURE_ARGS+= --enable-test
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-test
|
||||
.endif</programlisting>
|
||||
|
||||
<para>If <makevar>X_CONFIGURE_WITH</makevar> is set then
|
||||
<literal>--with-${X_CONFIGURE_WITH}</literal>
|
||||
or <literal>--without-${X_CONFIGURE_WITH}</literal> will
|
||||
be added to <makevar>CONFIGURE_ARGS</makevar> depending
|
||||
on the status of the option <makevar>X</makevar>,
|
||||
for example:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_CONFIGURE_WITH= test</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
CONFIGURE_ARGS+= --with-test
|
||||
.else
|
||||
CONFIGURE_ARGS+= --without-test
|
||||
.endif</programlisting>
|
||||
|
||||
<para>If <makevar>X_CONFIGURE_ON</makevar> is set then its value
|
||||
will be appended to <makevar>CONFIGURE_ARGS</makevar> depending
|
||||
on the status of the option <makevar>X</makevar>, for example:
|
||||
</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_CONFIGURE_ON= --add-test</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
CONFIGURE_ARGS+= --add-test
|
||||
.endif</programlisting>
|
||||
|
||||
<para>If <makevar>X_CONFIGURE_OFF</makevar> is set then its value
|
||||
will be appended to <makevar>CONFIGURE_ARGS</makevar> depending
|
||||
on the status of the option <makevar>X</makevar>, for example:
|
||||
</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_CONFIGURE_OFF= --no-test</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
.include <bsd.port.options.mk>
|
||||
.if ! ${PORT_OPTIONS:MOPT1}
|
||||
CONFIGURE_ARGS+= --no-test
|
||||
.endif</programlisting>
|
||||
|
||||
<para>If <makevar>X_CMAKE_ON</makevar> is set then its value
|
||||
will be appended to <makevar>CMAKE_ARGS</makevar> depending
|
||||
on the status of the option <makevar>X</makevar>, for example:
|
||||
</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_CMAKE_ON= -DTEST:BOOL=true</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
CMAKE_ARGS+= -DTEST:BOOL=true
|
||||
.endif</programlisting>
|
||||
|
||||
<para>If <makevar>X_CMAKE_OFF</makevar> is set then its value
|
||||
will be appended to <makevar>CMAKE_ARGS</makevar> depending
|
||||
on the status of the option <makevar>X</makevar>, for example:
|
||||
</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_CMAKE_OFF= -DTEST:BOOL=false</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ! ${PORT_OPTIONS:MOPT1}
|
||||
CMAKE_ARGS+= -DTEST:BOOL=false
|
||||
.endif</programlisting>
|
||||
|
||||
<para>For any of the following variables:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><makevar>CFLAGS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>CXXFLAGS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>LDLAGS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>CONFIGURE_ENV</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>MAKE_ENV</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>USES</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>DISTFILES</makevar></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>If <makevar>X_ABOVEVARIABLE</makevar> is defined then
|
||||
its value will be appended to
|
||||
<makevar>ABOVEVARIABLE</makevar> depending on the status of
|
||||
the option <makevar>X</makevar>, for example:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_USES= gmake
|
||||
OPT1_CFLAGS= -DTEST</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
USES+= gmake
|
||||
CFLAGS+= -DTEST
|
||||
.endif</programlisting>
|
||||
|
||||
<para>For any of the following dependency type:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><makevar>PKG_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>EXTRACT_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>PATCH_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>FETCH_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>BUILD_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>LIB_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><makevar>RUN_DEPENDS</makevar></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>If <makevar>X_ABOVEVARIABLE</makevar> is defined then
|
||||
its value will be appended to
|
||||
<makevar>ABOVEVARIABLE</makevar> depending on the status
|
||||
of the option <makevar>X</makevar>, for example:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
OPT1_LIB_DEPENDS= liba.so:${PORTSDIR}/devel/a</programlisting>
|
||||
|
||||
<para>is equivalent to:</para>
|
||||
|
||||
<programlisting>OPTIONS_DEFINE= OPT1
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MOPT1}
|
||||
LIB_DEPENDS+= liba.so:${PORTSDIR}/devel/a
|
||||
.endif</programlisting>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="makefile-wrkdir">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue