Update the porting guide to include the new libtool scheme, and mention that

lthack is now deprecated for general use.
This commit is contained in:
Joe Marcus Clarke 2004-07-26 20:46:45 +00:00
parent fca606f5df
commit 0a25bc1270
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=21697
2 changed files with 18 additions and 27 deletions

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/gnome_porting.sgml,v 1.13 2004/06/27 19:20:33 marcus Exp $">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/gnome_porting.sgml,v 1.14 2004/06/29 05:25:35 marcus Exp $">
<!ENTITY title "FreeBSD GNOME Project: GNOME Desktop-Independent Components">
<!ENTITY % gnomeincludes SYSTEM "../includes.sgml"> %gnomeincludes;
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
@ -90,6 +90,12 @@
<td><tt>lthack</tt> prevents the installation of .la
files and ensures that <tt>${PTHREAD_LIBS}</tt>
will be passed to the linker.
<b>NOTE:</b> lthack is <b>DEPRECATED</b>,
and <tt>USE_LIBTOOL_VER=15</tt> should be
used instead. See the <a
href="porting.html#libtool">libtool
section</a> of the porting guide for more
details.
</td>
<td><tt>&nbsp;</tt></td>
</tr>

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/porting.sgml,v 1.41 2004/06/27 19:57:12 marcus Exp $">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/porting.sgml,v 1.42 2004/06/30 23:45:27 pav Exp $">
<!ENTITY title "FreeBSD GNOME Project: How To Make a Port">
<!ENTITY % gnomeincludes SYSTEM "../includes.sgml"> %gnomeincludes;
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
@ -290,35 +290,20 @@ gconftool-2 --makefile-install-rule \
<!-- End GConf schemas -->
<!-- Begin GNOME libtool -->
<a name="libtool"></a>
<h2>Libtool Issues</h2>
<p>Most, if not all, GNOME applications depend on GNU's libtool.
They also use the GNU configure system. If your port installs
shared libraries, you should add <tt>USE_LIBTOOL_VER= 13</tt> to
your port's Makefile. This takes care of most of the libtool
requirements, but will not prevent things such as .la files
from being installed. To ensure a proper shared library
installation, also consider adding <tt>lthack</tt> to
<b>USE_GNOME</b> line in port Makefile. This prevents the
installation of .la files and ensures that
<tt>${PTHREAD_LIBS}</tt> will be passed to the linker.</p>
<p>Some applications may use newer versions of libtool, and
<tt>lthack</tt> may not be sufficient. This is usually
apparent during the linking phase where errors such as the
following are thrown:</p>
<pre>
libtool: ../../libsomelib.la not found
</pre>
<p>In this case, you should replace
<tt>USE_LIBTOOL_VER=13</tt> with <tt>GNU_CONFIGURE=yes</tt>,
and patch the port's <tt>ltmain.sh</tt> script directly.
Unfortunately, there is not one patch for
<tt>ltmain.sh</tt> that will work for every port.
Therefore, you should adapt one of the existing
<tt>patch-ltmain.sh</tt> files to work with your port.</p>
shared libraries, and includes an <tt>ltmain.sh</tt> script
in its <tt>${WRKSRC}</tt> directory, you should add
<tt>USE_LIBTOOL_VER=15</tt> to your port's Makefile.
However, if your port uses custom <tt>LIBTOOLFLAGS</tt>, you
must use <tt>USE_INC_LIBTOOL_VER=13</tt> instead. If you have
to use <tt>USE_INC_LIBTOOL_VER</tt>, you must also add
<tt>lthack</tt> to <tt>USE_GNOME</tt>. In general, though,
<tt>lthack</tt> is deprecated, and should only be used if
absolutely necessary.</p>
<!-- End GNOME libtool -->
<!-- Begin GNOME distfiles -->