Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2005-05-05 17:34:38


Path: news.gmane.org!not-for-mail
From: "Snaury" <snaury_at_[hidden]>
Newsgroups: gmane.comp.lib.boost.user
Subject: Boost.Jam - long file names in .a files lookup fix
Date: Thu, 5 May 2005 11:23:28 +0400 (MSD)
Lines: 17
Approved: news_at_[hidden]
Message-ID: <4279C9F0.000002.20987_at_[hidden]>
Reply-To: boost-users_at_[hidden]
NNTP-Posting-Host: main.gmane.org
NNTP-Posting-Date: Thu, 5 May 2005 19:23:11 +0000 (UTC)
Original-X-From: boost-users-bounces_at_[hidden] Thu May 05 21:23:09 2005
Return-path: <boost-users-bounces_at_[hidden]>
Original-Received: from milliways.osl.iu.edu ([129.79.245.239])
by ciao.gmane.org with esmtp (Exim 4.43)
id 1DTlvG-0001K7-Mn
for yg-boost-users_at_[hidden]; Thu, 05 May 2005 21:22:11 +0200
Original-Received: from milliways.osl.iu.edu (localhost [127.0.0.1])
by milliways.osl.iu.edu (8.12.11/8.12.11/IUCS_2.65) with ESMTP id j45JLvDp011687;
Thu, 5 May 2005 14:22:00 -0500
Original-Received: from ariel.yandex.ru (ariel.yandex.ru [213.180.200.32])
by milliways.osl.iu.edu (8.12.11/8.12.11/IUCS_2.65) with ESMTP id
j457NlBk029908
for <boost-users_at_[hidden]>; Thu, 5 May 2005 02:23:48 -0500
Original-Received: from YAMAIL (ariel.yandex.ru) by mail.yandex.ru
id <S700838AbVEEHX2>; Thu, 5 May 2005 11:23:28 +0400
Original-To: boost-users_at_[hidden]
Precedence: list
List-Id: Boost Users mailing list <boost-users.lists.boost.org>
List-Unsubscribe: <http://lists.boost.org/mailman/listinfo.cgi/boost-users>,
<mailto:boost-users-request_at_[hidden]?subject=unsubscribe>
List-Archive: <http://lists.boost.org/MailArchives/boost-users>
List-Post: <mailto:boost-users_at_[hidden]>
List-Help: <mailto:boost-users-request_at_[hidden]?subject=help>
List-Subscribe: <http://lists.boost.org/mailman/listinfo.cgi/boost-users>,
<mailto:boost-users-request_at_[hidden]?subject=subscribe>
Original-Sender: boost-users-bounces_at_[hidden]
Errors-To: boost-users-bounces_at_[hidden]
Xref: news.gmane.org gmane.comp.lib.boost.user:11041
MIME-Version: 1.0

Hello, boost-users,

There is a bug in file `filent.c' in function `file_archscan', which causes long .o files in archives invisible to jam, and thus jam always recompiles such .o files, when using, for instance, mingw. The problem is in microsoft's coff definition of stringtables in archives, in which each name must be ended by '\0' versus (linux?) coff, where '\n' is used instead. The following patch is trivial, and I hope someone with cvs access can apply it. Btw, the same 'bug' is in current perforce's jam.

diff -druN boost-jam-3.1.10/filent.c boost-jam-3.1.10-df/filent.c
--- boost-jam-3.1.10/filent.c Tue Jun 1 09:45:14 2004
+++ boost-jam-3.1.10-df/filent.c Tue May 3 16:07:51 2005
@@ -251,7 +251,8 @@
*/

name = string_table + atoi( ar_hdr.ar_name + 1 );
- endname = name + strlen( name );
+ for( endname = name; *endname && *endname != '\n'; ++endname )
+ /* nothing */;
}
else
{
 --=-=-=

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com
 --=-=-=-- 

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk