pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Firefox 24 doesn't restore session



On Mon, Nov 11, 2013 at 05:45:47PM +0100, Martin Husemann wrote:
> On Tue, Nov 12, 2013 at 01:00:59AM +0900, Izumi Tsutsui wrote:
> > __foo50() syscalls are introduced for 64 bit time_t changes in 6.x
> > and later, so NetBSD 5.x needs different symbols (__stat30() etc)?
> 
> Real fix is using nm in the build system (but I don't know how to do it).
> Short term fix is to query the OS version and only do the __*50 symobls
> on 6.0 or newer. Again, I don't know how to do that: OS.Constants.Sys
> seems to only have "Name" and "DEBUG" attributes.

Actually it is simple to distinguish in the script code:

Const.OSFILE_SIZEOF_TIME_T == 4 in the old case, and 8 in the new.

So we need something like:

  } else if (OS.Constants.Sys.Name == "NetBSD") {

     let v = Const.OSFILE_SIZEOF_TIME_T < 8 ? "30" : "50";

     declareLazyFFI(SysFile,  "stat", libc, "__stat"+v, ctypes.default_abi,
                      /*return*/ Type.negativeone_or_nothing,
                      /*path*/   Type.path,
                      /*buf*/    Type.stat.out_ptr
                     );


Ryo, do you have a testable < 6.0 environment?

Martin


Home | Main Index | Thread Index | Old Index