Re: Cannot find a working 64-bit integer type on Illumos

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Tomas Vondra <tomas@vondra.me>, Peter Eisentraut <peter@eisentraut.org>, Heikki Linnakangas <hlinnaka@iki.fi>, Japin Li <japinli@hotmail.com>, Andres Freund <andres@anarazel.de>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-12-05T01:06:09Z
Lists: pgsql-hackers
On Thu, Dec 5, 2024 at 1:59 PM Thomas Munro <thomas.munro@gmail.com> wrote:
> I was trying to figure out how I missed this, and I think it might be
> that the meson build scripts didn't port AC_SYS_LARGEFILES.  So if you
> build on a 32 bit Linux system with meson (like one of CI's tasks, and
> also build farm animal adder) then I think you finish up with 32 bit
> off_t and no SIZEOF_OFF_T, because we don't do AC_SYS_LARGEFILES'
> dance to figure out if this system needs -D_FILE_OFFSET_BITS=64 (or
> other similar macros for AIX, Solaris etc).  I will look into that.

Ahh, correction, it does define it (or else perl would have
complained), but it seems that meson magically puts it into the
compiler command line without being asked.  So it is defined without
pg_config.h being involved, and thus earlier.  Huh.



Commits

  1. Move pg_int64 back to postgres_ext.h

  2. pgbench: Make set_random_seed() 64-bit everywhere.

  3. Use PRI?64 instead of "ll?" in format strings (continued).

  4. Fix order of -I switches for building pg_regress.o.

  5. libpq: Deprecate pg_int64.

  6. Use PRI*64 instead of "ll*" in format strings (minimal trial)

  7. Fix header inclusion order in c.h.

  8. Use <stdint.h> and <inttypes.h> for c.h integers.

  9. Remove traces of BeOS.

  10. More correct way to check for existence of types, which allows to specify