Re: AIX support

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: Srirama Kucherlapati <sriram.rk@in.ibm.com>, Andres Freund <andres@anarazel.de>, AIX PG user <postgres-ibm-aix@wwpdl.vnet.ibm.com>
Cc: "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2025-11-07T16:28:13Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Restore AIX support.

  2. pg_createsubscriber: Improve error messages.

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

  4. Stabilize jsonb_path_query test case.

  5. Fix C23 compiler warning

  6. pg_stat_statements: Add tests for nested queries with level tracking

  7. Add missing newline at the end of index_including.sql

  8. Remove AIX support

  9. Fix s_lock.h PPC assembly code to be compatible with native AIX assembler.

  10. Use a non-locking initial test in TAS_SPIN on PPC.

  11. Use LWSYNC in place of SYNC/ISYNC in PPC spinlocks, where possible.

  12. Use mutex hint bit in PPC LWARX instructions, where possible.

  13. Adjust TAS assembly as per recent discussions: use "+m"(*lock) everywhere

  14. Apple's assembler likes the inlined TAS syntax too, so no reason to

  15. Tighten up register usage for inline PPC version of tas().

  16. Put the isync where it's supposed to be.

  17. > > I'll re-check that with the ppc architecture guy here.

  18. Fix PPC s_lock operations to work correctly on multi-CPU machines.

  19. I tried to build PostgreSQL with the following step to see backends hung

  20. Complete merge of all old man page information.

  21. s_lock aix patch.

On 15.10.25 17:58, Srirama Kucherlapati wrote:
> Hi Andres and team,
> 
> Please find attached the patch addressing Meson build changes for AIX.
> 
> We tried to build using below meson
> 
> ## meson -v
> 
> 1.6.1
> 
> For the following files, the shared_module() function requires 
> specifying the
> 
> appropriate symbol import file, which is provided via the aix_link_args
> 
> variable:
> 
> src/backend/jit/llvm/meson.build
> 
> src/backend/replication/libpqwalreceiver/meson.build
> 
> src/backend/replication/pgoutput/meson.build
> 
> src/backend/snowball/meson.build
> 
> src/backend/utils/mb/conversion_procs/meson.build
> 
> Additionally, with the latest version of Meson, when building static 
> libraries,
> 
> the library file name must be suffixed with “_static” in the following 
> files:
> 
> src/interfaces/ecpg/compatlib/meson.build
> 
> src/interfaces/ecpg/ecpglib/meson.build
> 
> src/interfaces/ecpg/pgtypeslib/meson.build
> 
> src/interfaces/libpq/meson.build

It is not going to be acceptable to sprinkle this much AIX-specific code 
around.  Those changes to the meson.build files were not needed before 
AIX support was removed.  You should find a way to do it without these 
changes.

The changes in src/include/port/aix.h in your patch don't make sense. 
This indicates that you are doing something wrong in your local builds. 
Please fix that.