cvs commit: src/lib/libc/gen fts-compat.c fts-compat.h

Yar Tikhiy yar at comp.chem.msu.su
Wed Aug 29 08:36:32 PDT 2007


[Cc: list trimmed]

On Wed, Aug 29, 2007 at 03:29:57PM +0200, Alexander Leidinger wrote:
> Quoting Yar Tikhiy <yar at comp.chem.msu.su> (Mon, 27 Aug 2007 19:10:34 +0400):
> 
> > On Mon, Aug 27, 2007 at 04:26:55PM +0200, Alexander Leidinger wrote:
> > > 
> > > So the really important thing for you is: How many ports are affected  
> > > by this change?
> > > 
> > > Does anyone have an estimate for this?
> > > 
> > > If not, does someone has an exhaustive list of affected symbols? I can  
> > > write a short script which has a look into each installed port to  
> > > determine if it is affected or not (based upon the assumption that you  
> > > don't mind if we overlook a few things... I'm not sure if statically  
> > > linked binaries contain enough information).
> > 
> > With the resolution approaching to avoid compatibility in fts(3)
> > now and my experiment on improving src/Makefile.inc1 going on really
> > well, I think I should estimate which ports are going to be affected.
> > I'll do so by searching binary packages for CURRENT, so some ports
> > can slip through my sieve.  The symbols to look for match the simple
> > pattern: fts_* (or regexp: ^fts_.*).  I don't think there are a lot
> > of ports using those functions.
> > 
> > Here's the exact list of symbols to be affected:
> > 
> >        fts_open
> >        fts_close
> >        fts_read
> >        fts_set
> >        fts_children
> >        fts_get_clientptr
> >        fts_get_stream
> >        fts_set_clientptr
> > 
> 
> Attached are two scripts. find_fts.sh has to be in the PATH. It returns
> the files specified at the command line, which contain unresolved
> references to fts_* (e.g. "find_fts.sh /bin/*"). The other script
> parses a +CONTENTS file of an installed port and hands over the
> executables and libraries to find_fts.sh. If it finds a match, it
> prints the port origin.
> 
> I let it run on my >800 installed ports via
> for i in /var/db/pkg/*;do; ./analyse_ports_for_fts_abi_change.sh $i;done
> 
> It didn't find a match. I hope this is not because of a bug in my
> script...

Here's the list of ports that are likely to use fts(3) because
binaries in their CURRENT packages reference fts_ symbols.  Note,
however, that it isn't 100% certain yet whether the ABI should be
broken, so it may be a bit too early to worry about them. :-)

archivers/xar
audio/ifp-line
cad/brlcad
chinese/xmms
deskutils/fusenshi
ftp/ftpd-tls
ftp/tnftpd
japanese/jls
mail/mboxgrep
mail/qmail-remove
multimedia/audacious
multimedia/beep-media-player
multimedia/xmms
net-mgmt/nfdump-devel
net/coda6_client
net/coda6_server
net/kissd
news/husky-fidoconf
news/husky-fidoconf-devel
news/husky-hpt
news/husky-hpt-devel
news/husky-hptkill
ports-mgmt/pkg_install
ports-mgmt/pkg_install-devel
russian/xmms
security/amavisd-milter
security/destroy
security/rdigest
security/srm
sysutils/vcp
textproc/bsdgrep
textproc/freegrep
www/polipo

-- 
Yar


More information about the cvs-src mailing list