This is the mail archive of the
mailing list for the glibc project.
Re: PATCH: Fix __WORDSIZE for ia64.
On Fri, Aug 01, 2003 at 07:22:27AM -0700, H. J. Lu wrote:
> On Fri, Aug 01, 2003 at 10:37:48AM +0200, Jakub Jelinek wrote:
> > On Fri, Aug 01, 2003 at 01:13:33AM -0700, Roland McGrath wrote:
> > > > With this change, the only loss is we can no longer access the old utmp
> > > > file. I think it is the price we should pay to fix the problem.
> > >
> > > I am inclined to agree with this conclusion (the same one made on other
> > > 64/32 platforms). But it's not a change you just slip in without comment,
> > > discussion with users and system maintainers, and approval from the
> > > architecture's canonical maintainer.
> > There are many programs which access utmp directly and use struct utmp
> > or struct lastlog for that (instead of using the libc acess functions).
> > Defining __WORDSIZE_COMPAT32 macro on ia64 means you simply abandon
> > compatibility with any ia64 programs which ever use utmp/wtmp/lastlog,
> It is only incompatible with old static ia64 programs which access
> utmp/wtmp/lastlog and the old utmp/wtmp/lastlog files.
No, this is incorrect.
Even programs using say getutent look at struct utmp members
and by defining __WORDSIZE_COMPAT32 you change its layout.
So, you would at least need new symbol version for most of the utmp.h
Plus, if you want to change something and don't care about programs
looking at the file directly, you should keep 64-bit utmp format
and write support for translating 64-bit file format into 32-bit
struct utmp in 32-bit programs.
But I'd suggest you to first look what programs do direct access.
AFAIK there are really many.