Update porters handbook: Qt/KDE sections.

PR:		171788
Submitted by:	Max Brazhnikov <makc@FreeBSD.org>
This commit is contained in:
Warren Block 2012-09-19 16:59:39 +00:00
parent d4509bdcac
commit 99e0a71dc6
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=39579

View file

@ -6244,14 +6244,21 @@ USE_XORG= x11 xpm</programlisting>
<tbody>
<row>
<entry><makevar>USE_QT_VER</makevar></entry>
<entry>The port uses the Qt toolkit. Possible values
are <literal>3</literal> and <literal>4</literal>;
each specify the major version of Qt to use.
<entry>The port uses the Qt toolkit. The only
possible value is <literal>3</literal>.
Appropriate parameters are passed to
<command>configure</command> script and
<command>make</command>.</entry>
</row>
<row>
<entry><makevar>USE_QT4</makevar></entry>
<entry>Specify tool and library dependencies for ports
that use Qt 4. See <link
linkend="qt4-components">Qt 4 component
selection</link> for more details.</entry>
</row>
<row>
<entry><makevar>QT_PREFIX</makevar></entry>
<entry>Set to the path where Qt installed to
@ -6299,12 +6306,6 @@ USE_XORG= x11 xpm</programlisting>
<tgroup cols="2">
<tbody>
<row>
<entry><makevar>QT_COMPONENTS</makevar></entry>
<entry>Specify tool and library dependencies for Qt 4.
See below for details.</entry>
</row>
<row>
<entry><makevar>UIC</makevar></entry>
<entry>Set to the path of <command>uic</command>
@ -6323,12 +6324,36 @@ USE_XORG= x11 xpm</programlisting>
<command>qmake</command> (read-only
variable).</entry>
</row>
<row>
<entry><makevar>QMAKEFLAGS</makevar></entry>
<entry>Additional flags for
<command>qmake</command>.</entry>
</row>
<row>
<entry><makevar>QT_INCDIR</makevar></entry>
<entry>Set to Qt 4 include directories (read-only
variable).</entry>
</row>
<row>
<entry><makevar>QT_LIBDIR</makevar></entry>
<entry>Set to Qt 4 libraries path (read-only
variable).</entry>
</row>
<row>
<entry><makevar>QT_PLUGINDIR</makevar></entry>
<entry>Set to Qt 4 plugins path (read-only
variable).</entry>
</row>
</tbody>
</tgroup>
</table>
<para>When <makevar>USE_QT_VER</makevar> is set, some useful
settings are passed to <command>configure</command>
<para>When <makevar>USE_QT_VER</makevar> is set to <literal>3</literal>,
some useful settings are passed to the <command>configure</command>
script:</para>
<programlisting>CONFIGURE_ARGS+= --with-qt-includes=${QT_PREFIX}/include \
@ -6339,21 +6364,28 @@ CONFIGURE_ENV+= MOC="${MOC}" LIBS="${QTCFGLIBS}" \
QTDIR="${QT_PREFIX}" KDEDIR="${KDE_PREFIX}"
CPPFLAGS+= ${QTCPPFLAGS}</programlisting>
<para>If <makevar>USE_QT_VER</makevar> is set to
<literal>4</literal>, the following settings are also
deployed:</para>
<para>If <makevar>USE_QT4</makevar> is set, the following
settings are deployed:</para>
<programlisting>CONFIGURE_ENV+= UIC="${UIC}" QMAKE="${QMAKE}" QMAKESPEC="${QMAKESPEC}"
MAKE_ENV+= QMAKESPEC="${QMAKESPEC}"</programlisting>
<programlisting>CONFIGURE_ARGS+= --with-qt-includes=${QT_INCDIR} \
--with-qt-libraries=${QT_LIBDIR} \
--with-extra-libs=${LOCALBASE}/lib \
--with-extra-includes=${LOCALBASE}/include
CONFIGURE_ENV+= MOC="${MOC}" UIC="${UIC}" LIBS="${QTCFGLIBS}" \
QMAKE="${QMAKE}" QMAKESPEC="${QMAKESPEC}" QTDIR="${QT_PREFIX}"
MAKE_ENV+= QMAKESPEC="${QMAKESPEC}"
PLIST_SUB+= QT_INCDIR_REL=${QT_INCDIR_REL} \
QT_LIBDIR_REL=${QT_LIBDIR_REL} \
QT_PLUGINDIR_REL=${QT_PLUGINDIR_REL}</programlisting>
</sect2>
<sect2 id="qt4-components">
<title>Component Selection (Qt 4.x Only)</title>
<para>When <makevar>USE_QT_VER</makevar> is set to
<literal>4</literal>, individual Qt 4 tool and library
dependencies can be specified in the
<makevar>QT_COMPONENTS</makevar> variable. Every component
<para>Individual Qt 4 tool and library dependencies
must be specified in the <makevar>USE_QT4</makevar>
variable. Every component
can be suffixed by either <literal>_build</literal> or
<literal>_run</literal>, the suffix indicating whether the
component should be depended on at buildtime or runtime,
@ -6364,7 +6396,7 @@ MAKE_ENV+= QMAKESPEC="${QMAKESPEC}"</programlisting>
plugin components should be specified with the
<literal>_run</literal> suffix. The most commonly used
components are listed below (all available components are
listed in <makevar>_QT_COMPONENTS_ALL</makevar> in
listed in <makevar>_USE_QT4_ALL</makevar> in
<filename>/usr/ports/Mk/bsd.qt.mk</filename>):</para>
<table frame="none">
@ -6517,8 +6549,7 @@ MAKE_ENV+= QMAKESPEC="${QMAKESPEC}"</programlisting>
only needed at buildtime, thus they are specified with the
<literal>_build</literal> suffix:</para>
<programlisting>USE_QT_VER= 4
QT_COMPONENTS= gui moc_build qmake_build rcc_build uic_build</programlisting>
<programlisting>USE_QT4= gui moc_build qmake_build rcc_build uic_build</programlisting>
</example>
</sect2>
@ -6534,7 +6565,7 @@ QT_COMPONENTS= gui moc_build qmake_build rcc_build uic_build</programlisting>
do-configure:
@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \
${QMAKE} PREFIX=${PREFIX} texmaker.pro</programlisting>
${QMAKE} ${QMAKEFLAGS} PREFIX=${PREFIX} texmaker.pro</programlisting>
<para>Note the similarity to the <command>qmake</command> line
from the provided <filename>BUILD.sh</filename> script.
@ -6560,7 +6591,7 @@ do-configure:
the include and library search paths via the command
line, for example:</para>
<programlisting>${QMAKE} PREFIX=${PREFIX} INCLUDEPATH+=${LOCALBASE}/include \
<programlisting>${QMAKE} ${QMAKEFLAGS} PREFIX=${PREFIX} INCLUDEPATH+=${LOCALBASE}/include \
LIBS+=-L${LOCALBASE}/lib sillyapp.pro</programlisting>
</listitem>
@ -6641,11 +6672,6 @@ do-configure:
</thead>
<tbody>
<row>
<entry><literal>baseapps</literal></entry>
<entry>Basic applications for KDE Desktop</entry>
</row>
<row>
<entry><literal>kdehier</literal></entry>
<entry>Hierarchy of common KDE directories</entry>
@ -6664,13 +6690,13 @@ do-configure:
</row>
<row>
<entry><literal>pimlibs</literal></entry>
<entry>KDE-Pim libraries</entry>
<entry><literal>sharedmime</literal></entry>
<entry>MIME types database for KDE ports</entry>
</row>
<row>
<entry><literal>workspace</literal></entry>
<entry>KDE user environments</entry>
<entry><literal>automoc4</literal></entry>
<entry>Automatic moc for Qt 4 packages</entry>
</row>
<row>
@ -6679,8 +6705,101 @@ do-configure:
</row>
<row>
<entry><literal>automoc4</literal></entry>
<entry>Automatic moc for Qt 4 packages</entry>
<entry><literal>soprano</literal></entry>
<entry>Qt 4 RDF framework</entry>
</row>
<row>
<entry><literal>strigi</literal></entry>
<entry>Desktop search daemon</entry>
</row>
<row>
<entry><literal>libkcddb</literal></entry>
<entry>KDE CDDB library</entry>
</row>
<row>
<entry><literal>libkcompactdisc</literal></entry>
<entry>KDE library for interfacing with audio
CDs</entry>
</row>
<row>
<entry><literal>libkdeedu</literal></entry>
<entry>Libraries used by educational
applications</entry>
</row>
<row>
<entry><literal>libkdcraw</literal></entry>
<entry>KDE LibRaw library</entry>
</row>
<row>
<entry><literal>libkexiv2</literal></entry>
<entry>KDE Exiv2 library</entry>
</row>
<row>
<entry><literal>libkipi</literal></entry>
<entry> KDE Image Plugin Interface</entry>
</row>
<row>
<entry><literal>libkonq</literal></entry>
<entry>Konqueror core library</entry>
</row>
<row>
<entry><literal>libksane</literal></entry>
<entry>KDE SANE ("Scanner Access Now Easy")
library</entry>
</row>
<row>
<entry><literal>pimlibs</literal></entry>
<entry>KDE-Pim libraries</entry>
</row>
<row>
<entry><literal>kate</literal></entry>
<entry>Text editor framework</entry>
</row>
<row>
<entry><literal>marble</literal></entry>
<entry>Virtual globe</entry>
</row>
<row>
<entry><literal>okular</literal></entry>
<entry>Universal document viewer</entry>
</row>
<row>
<entry><literal>korundum</literal></entry>
<entry>KDE Ruby bindings</entry>
</row>
<row>
<entry><literal>perlkde</literal></entry>
<entry>KDE Perl bindings</entry>
</row>
<row>
<entry><literal>pykde4</literal></entry>
<entry>KDE Python bindings</entry>
</row>
<row>
<entry><literal>pykdeuic4</literal></entry>
<entry>PyKDE user interface compiler</entry>
</row>
<row>
<entry>smokekde<literal></literal></entry>
<entry>KDE SMOKE libraries</entry>
</row>
</tbody>
</tgroup>
@ -6709,14 +6828,13 @@ do-configure:
Required KDE components and other dependencies can be
determined through configure log.
<makevar>USE_KDE4</makevar> does not imply
<makevar>USE_QT_VER</makevar>. If a port requires some
Qt 4 components, <makevar>USE_QT_VER</makevar> should be
set and then needed components can be specified.</para>
<makevar>USE_QT4</makevar>. If a port requires some
Qt 4 components, they should be specified in
<makevar>USE_QT4</makevar>.</para>
<programlisting>USE_CMAKE= yes
USE_KDE4= kdelibs kdeprefix automoc4
USE_QT_VER= 4
QT_COMPONENTS= moc_build qmake_build rcc_build uic_build</programlisting>
USE_QT4= moc_build qmake_build rcc_build uic_build</programlisting>
</example>
</sect2>
</sect1>