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> <tbody>
<row> <row>
<entry><makevar>USE_QT_VER</makevar></entry> <entry><makevar>USE_QT_VER</makevar></entry>
<entry>The port uses the Qt toolkit. Possible values <entry>The port uses the Qt toolkit. The only
are <literal>3</literal> and <literal>4</literal>; possible value is <literal>3</literal>.
each specify the major version of Qt to use.
Appropriate parameters are passed to Appropriate parameters are passed to
<command>configure</command> script and <command>configure</command> script and
<command>make</command>.</entry> <command>make</command>.</entry>
</row> </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> <row>
<entry><makevar>QT_PREFIX</makevar></entry> <entry><makevar>QT_PREFIX</makevar></entry>
<entry>Set to the path where Qt installed to <entry>Set to the path where Qt installed to
@ -6299,12 +6306,6 @@ USE_XORG= x11 xpm</programlisting>
<tgroup cols="2"> <tgroup cols="2">
<tbody> <tbody>
<row>
<entry><makevar>QT_COMPONENTS</makevar></entry>
<entry>Specify tool and library dependencies for Qt 4.
See below for details.</entry>
</row>
<row> <row>
<entry><makevar>UIC</makevar></entry> <entry><makevar>UIC</makevar></entry>
<entry>Set to the path of <command>uic</command> <entry>Set to the path of <command>uic</command>
@ -6323,12 +6324,36 @@ USE_XORG= x11 xpm</programlisting>
<command>qmake</command> (read-only <command>qmake</command> (read-only
variable).</entry> variable).</entry>
</row> </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> </tbody>
</tgroup> </tgroup>
</table> </table>
<para>When <makevar>USE_QT_VER</makevar> is set, some useful <para>When <makevar>USE_QT_VER</makevar> is set to <literal>3</literal>,
settings are passed to <command>configure</command> some useful settings are passed to the <command>configure</command>
script:</para> script:</para>
<programlisting>CONFIGURE_ARGS+= --with-qt-includes=${QT_PREFIX}/include \ <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}" QTDIR="${QT_PREFIX}" KDEDIR="${KDE_PREFIX}"
CPPFLAGS+= ${QTCPPFLAGS}</programlisting> CPPFLAGS+= ${QTCPPFLAGS}</programlisting>
<para>If <makevar>USE_QT_VER</makevar> is set to <para>If <makevar>USE_QT4</makevar> is set, the following
<literal>4</literal>, the following settings are also settings are deployed:</para>
deployed:</para>
<programlisting>CONFIGURE_ENV+= UIC="${UIC}" QMAKE="${QMAKE}" QMAKESPEC="${QMAKESPEC}" <programlisting>CONFIGURE_ARGS+= --with-qt-includes=${QT_INCDIR} \
MAKE_ENV+= QMAKESPEC="${QMAKESPEC}"</programlisting> --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>
<sect2 id="qt4-components"> <sect2 id="qt4-components">
<title>Component Selection (Qt 4.x Only)</title> <title>Component Selection (Qt 4.x Only)</title>
<para>When <makevar>USE_QT_VER</makevar> is set to <para>Individual Qt 4 tool and library dependencies
<literal>4</literal>, individual Qt 4 tool and library must be specified in the <makevar>USE_QT4</makevar>
dependencies can be specified in the variable. Every component
<makevar>QT_COMPONENTS</makevar> variable. Every component
can be suffixed by either <literal>_build</literal> or can be suffixed by either <literal>_build</literal> or
<literal>_run</literal>, the suffix indicating whether the <literal>_run</literal>, the suffix indicating whether the
component should be depended on at buildtime or runtime, 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 plugin components should be specified with the
<literal>_run</literal> suffix. The most commonly used <literal>_run</literal> suffix. The most commonly used
components are listed below (all available components are 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> <filename>/usr/ports/Mk/bsd.qt.mk</filename>):</para>
<table frame="none"> <table frame="none">
@ -6517,8 +6549,7 @@ MAKE_ENV+= QMAKESPEC="${QMAKESPEC}"</programlisting>
only needed at buildtime, thus they are specified with the only needed at buildtime, thus they are specified with the
<literal>_build</literal> suffix:</para> <literal>_build</literal> suffix:</para>
<programlisting>USE_QT_VER= 4 <programlisting>USE_QT4= gui moc_build qmake_build rcc_build uic_build</programlisting>
QT_COMPONENTS= gui moc_build qmake_build rcc_build uic_build</programlisting>
</example> </example>
</sect2> </sect2>
@ -6534,7 +6565,7 @@ QT_COMPONENTS= gui moc_build qmake_build rcc_build uic_build</programlisting>
do-configure: do-configure:
@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \ @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 <para>Note the similarity to the <command>qmake</command> line
from the provided <filename>BUILD.sh</filename> script. from the provided <filename>BUILD.sh</filename> script.
@ -6560,7 +6591,7 @@ do-configure:
the include and library search paths via the command the include and library search paths via the command
line, for example:</para> 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> LIBS+=-L${LOCALBASE}/lib sillyapp.pro</programlisting>
</listitem> </listitem>
@ -6641,11 +6672,6 @@ do-configure:
</thead> </thead>
<tbody> <tbody>
<row>
<entry><literal>baseapps</literal></entry>
<entry>Basic applications for KDE Desktop</entry>
</row>
<row> <row>
<entry><literal>kdehier</literal></entry> <entry><literal>kdehier</literal></entry>
<entry>Hierarchy of common KDE directories</entry> <entry>Hierarchy of common KDE directories</entry>
@ -6664,13 +6690,13 @@ do-configure:
</row> </row>
<row> <row>
<entry><literal>pimlibs</literal></entry> <entry><literal>sharedmime</literal></entry>
<entry>KDE-Pim libraries</entry> <entry>MIME types database for KDE ports</entry>
</row> </row>
<row> <row>
<entry><literal>workspace</literal></entry> <entry><literal>automoc4</literal></entry>
<entry>KDE user environments</entry> <entry>Automatic moc for Qt 4 packages</entry>
</row> </row>
<row> <row>
@ -6679,8 +6705,101 @@ do-configure:
</row> </row>
<row> <row>
<entry><literal>automoc4</literal></entry> <entry><literal>soprano</literal></entry>
<entry>Automatic moc for Qt 4 packages</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> </row>
</tbody> </tbody>
</tgroup> </tgroup>
@ -6709,14 +6828,13 @@ do-configure:
Required KDE components and other dependencies can be Required KDE components and other dependencies can be
determined through configure log. determined through configure log.
<makevar>USE_KDE4</makevar> does not imply <makevar>USE_KDE4</makevar> does not imply
<makevar>USE_QT_VER</makevar>. If a port requires some <makevar>USE_QT4</makevar>. If a port requires some
Qt 4 components, <makevar>USE_QT_VER</makevar> should be Qt 4 components, they should be specified in
set and then needed components can be specified.</para> <makevar>USE_QT4</makevar>.</para>
<programlisting>USE_CMAKE= yes <programlisting>USE_CMAKE= yes
USE_KDE4= kdelibs kdeprefix automoc4 USE_KDE4= kdelibs kdeprefix automoc4
USE_QT_VER= 4 USE_QT4= moc_build qmake_build rcc_build uic_build</programlisting>
QT_COMPONENTS= moc_build qmake_build rcc_build uic_build</programlisting>
</example> </example>
</sect2> </sect2>
</sect1> </sect1>