gpsd-dev
[Top][All Lists]
Advanced

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

Re: ✘64-bit time_t on glibc 2.34 and up


From: Greg Troxel
Subject: Re: ✘64-bit time_t on glibc 2.34 and up
Date: Fri, 13 Jan 2023 20:20:48 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (berkeley-unix)

Greg Troxel <gdt@lexort.com> writes:

I just had a realization.   What Linux is doing is more or less:

  Do the same thing that BSDs did: change time_t to in64_t and change
  the syscall codepoints.  (Except you have to define something.)

  Unlike the BSD approach, also support -- even on post-change systems
  -- compiling code that uses int for time_t, and using the old
  codepoints.


We could just treat the Linux approach like the BSD one and try ignore
the ability to compile in "time_t is int" mode.  If all of
gpsd/chronyd/ntpsec:

  By default (on Linux only) check if the flag to get "time_t is
  int64_t" is available and use it

  Have, for now, a --without to say "don't look for and use the define
  to make time_t is int64_t".

  Each distribution/packaging system uses the without until all programs
  have an update with the above, and then flips them all off at once.
  Or flips them off for programs that have it, and patches in the define
  for the others.  We do know all this code works fine when built in a
  "time_t is int64_t" environemnt from the last 9 years of use on
  NetBSD.
 
  once nobody needs the without, it can be garbage collected

then way, we end up just using the time_t is int64_t, with no options
and no grossness, after some number of years.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]