On Mon, Feb 20, 2023 at 01:41:05PM +0000, Ian Abbott wrote: > libtahu exposes a library function `get_current_timestamp()` to return > the real-time clock as the number of milliseconds since the Unix epoch > as a 64-bit value. It calls `clock_gettime(CLOCK_REALTIME, &ts)` (where > `ts` is a `struct timespec`) to get the system time and does some simple > arithmetic on `ts.tv_sec` and `ts.tv_nsec` to convert the time to a > number of milliseconds. > > Ideally, we want `ts.tv_sec` to have a 64-bit type to avoid Y2038 > problems, but on most 32-bit architectures, `ts.tv_sec` will have a > 32-bit type by default. Try and select the 64-bit time interface even > on 32-bit architectures by appending `-D_FILE_OFFSET_BITS=64` and > `-D_TIME_BITS=64` to the `CFLAGS` variable when invoking `make`. This > works for glibc 2.34 or later when the system is running on Linux kernel > 5.1 or later. > > Signed-off-by: Ian Abbott <abbo...@mev.co.uk> > --- > rules/libtahu.make | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/rules/libtahu.make b/rules/libtahu.make > index 26c064c6d..3e392216d 100644 > --- a/rules/libtahu.make > +++ b/rules/libtahu.make > @@ -37,11 +37,12 @@ LIBTAHU_CONF_TOOL := NO > # Compile > # > ---------------------------------------------------------------------------- > > -#LIBTAHU_MAKE_ENV := $(CROSS_ENV) > - > +LIBTAHU_CPPFLAGS := -Iinclude -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 > +LIBTAHU_CFLAGS := -O2 -g -g3 -fPIC
No need to mess with the existing CFLAGS. You can inject extra CFLAGS though the toolchain wrappers. And for correctness, make it conditional: ifdef PTXCONF_GLOBAL_LARGE_FILE LIBTAHU_CFLAGS := -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 endif nothing else is needed. Michael > # Just build the dynamic library. > LIBTAHU_MAKE_OPT := \ > $(CROSS_ENV_PROGS) \ > + CFLAGS='$(CROSS_CPPFLAGS) $(LIBTAHU_CPPFLAGS) $(CROSS_CFLAGS) > $(LIBTAHU_CFLAGS)' \ > lib/libtahu.so > > # > ---------------------------------------------------------------------------- > -- > 2.39.1 > > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |