+libtool
authorshort <>
Tue, 14 Oct 2003 18:58:18 +0000 (18:58 +0000)
committershort <>
Tue, 14 Oct 2003 18:58:18 +0000 (18:58 +0000)
configure.ac
project/Makefile.am
project/libtool/Index.html.pl [new file with mode: 0755]
project/libtool/ListItem.pm [new file with mode: 0755]
project/libtool/Makefile.am [new file with mode: 0644]
project/pgsqlsubstr/ListItem.pm
project/phphash/ListItem.pm

index 533499c..c003d6e 100644 (file)
@@ -96,6 +96,7 @@ Makefile
 ./project/MyWeb/Makefile
 ./project/pgsqlsubstr/Makefile
 ./project/int13sniff/Makefile
+./project/libtool/Makefile
 ])
 
 echo done.
index dc6a979..c6e3047 100644 (file)
@@ -78,7 +78,8 @@ SUBDIRS= \
                energie         \
                MyWeb           \
                pgsqlsubstr     \
-               int13sniff
+               int13sniff      \
+               libtool
 
 EXTRA_DIST+= \
                Index.html.pl \
diff --git a/project/libtool/Index.html.pl b/project/libtool/Index.html.pl
new file mode 100755 (executable)
index 0000000..641b135
--- /dev/null
@@ -0,0 +1,65 @@
+#! /usr/bin/perl
+# 
+# $Id$
+# Main page of 'My::Project::libtool'
+# Copyright (C) 2003 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
+# 
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; exactly version 2 of June 1991 is required
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+package project::libtool::Index;
+require 5.6.0; # at least 'use warnings;' but we need some 5.6.0+ modules anyway
+our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
+our $CVS_ID=q$Id$;
+use strict;
+use warnings;
+
+BEGIN{ open F,"Makefile"; our $top_dir=pop @{[split /\s/,(grep /^top_srcdir/,<F>)[0]]}; eval "use lib '$top_dir'"; close F; }
+use My::Web;
+Wuse 'My::Project';
+Wuse 'project::libtool::ListItem';
+
+
+My::Project->init_project(
+               "__PACKAGE__"=>__PACKAGE__,
+               "ListItem"=>\@project::libtool::ListItem::ListItem,
+               );
+
+
+print <<"HERE";
+<p>When you include convenience library (<i>.a</i>) containing two conflicting name
+objects (same basename from two different directories) only one of those two
+object files will survive in &quot;<i>.libs/libA.lax/</i>&quot; arena:</p>
+<pre>
+       rm -fr .libs/libA.lax/libB.a
+       mkdir .libs/libA.lax/libB.a
+       (cd .libs/libA.lax/libB.a &amp;&amp; ar x /abs/path/to/A/B/.libs/libB.a)
+</pre>
+
+<p>The patch implements automatic renaming of &quot;<i>*.*</i>&quot; to &quot;<i>*-@{[ '$' ]}seqnum.*</i>&quot;
+in such case:</p>
+<pre>
+       libtool: link: warning: object name conflicts; renaming object files
+       libtool: link: warning: to ensure that they will not overwrite
+       (cd .libs/libA.lax/libB.a &amp;&amp; ar xN 1 /abs/path/to/A/B/.libs/libB.a 'XconflictX.o' &amp;&amp; mv -f 'XconflictX.o' 'XconflictX-1.o')
+       (cd .libs/libA.lax/libB.a &amp;&amp; ar xN 2 /abs/path/to/A/B/.libs/libB.a 'XconflictX.o' &amp;&amp; mv -f 'XconflictX.o' 'XconflictX-2.o')
+</pre>
+
+<p>Although renaming to a new name may be confusing IMO there is no better option.
+The original (conflicting) name is not left there in any instance to prevent
+misleading confusion of different object file found than expected.</p>
+HERE
+
+
+My::Web->footer();
diff --git a/project/libtool/ListItem.pm b/project/libtool/ListItem.pm
new file mode 100755 (executable)
index 0000000..88c0558
--- /dev/null
@@ -0,0 +1,46 @@
+#! /usr/bin/perl
+# 
+# $Id$
+# Definition of 'My::Project::libtool' for list.cgi.pl
+# Copyright (C) 2003 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
+# 
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; exactly version 2 of June 1991 is required
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+package project::libtool::ListItem;
+require 5.6.0; # at least 'use warnings;' but we need some 5.6.0+ modules anyway
+our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
+our $CVS_ID=q$Id$;
+use strict;
+use warnings;
+
+use My::Web;
+
+
+our @ListItem=(
+               "name"=>a_href('http://www.gnu.org/software/libtool/libtool.html','GNU Libtool').' fix',
+               "platform"=>"patch",
+               "priority"=>7,
+               "summary"=>'Handle duplicate object file names',
+               "download-patch"=>'http://savannah.gnu.org/cgi-bin/cvsweb/libtool/ltmain.in.diff?r1=1.320&r2=1.321',
+               "license"=>"GPL",
+               "maintenance"=>"accepted",
+               "language"=>"sh patch",
+               "description"=><<"HERE",
+<p>Patch fixis linking of convenience libraries (<i>.a</i>) containing two
+conflicting name objects.</p>
+HERE
+               );
+
+1;
diff --git a/project/libtool/Makefile.am b/project/libtool/Makefile.am
new file mode 100644 (file)
index 0000000..58fc29f
--- /dev/null
@@ -0,0 +1,23 @@
+# $Id$
+# automake source for the Makefile of project/libtool/ subdir
+# Copyright (C) 2003 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
+# 
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; exactly version 2 of June 1991 is required
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+include $(top_srcdir)/Makefile-head.am
+
+EXTRA_DIST+= \
+       ListItem.pm \
+       Index.html.pl
index ebbc18f..29ca16b 100755 (executable)
@@ -29,7 +29,7 @@ use My::Web;
 
 
 our @ListItem=(
-               "name"=>'PostgreSQL-6.3 fix',
+               "name"=>a_href('http://www.postgresql.org/','PostgreSQL').'-6.3 fix',
                "platform"=>"patch",
                "priority"=>3,
                "icon"=>"postgresql",
index d676adf..e6f2556 100755 (executable)
@@ -29,7 +29,7 @@ use My::Web;
 
 
 our @ListItem=(
-               "name"=>'PHP-3.0b6 fix',
+               "name"=>a_href('http://www.php.net/','PHP').'-3.0b6 fix',
                "platform"=>"patch",
                "priority"=>3,
                "icon"=>"php",