Use PG_MODULE_MAGIC_EXT in our installable shared libraries.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 55527368bd07248e91e3d37a782bf66b76f06865
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2025-03-26T15:11:02Z
Releases: 18.0
Use PG_MODULE_MAGIC_EXT in our installable shared libraries.

It seems potentially useful to label our shared libraries with version
information, now that a facility exists for retrieving that.  This
patch labels them with the PG_VERSION string.  There was some
discussion about using semantic versioning conventions, but that
doesn't seem terribly helpful for modules with no SQL-level presence;
and for those that do have SQL objects, we typically expect them
to support multiple revisions of the SQL definitions, so it'd still
not be very helpful.

I did not label any of src/test/modules/.  It seems unnecessary since
we don't install those, and besides there ought to be someplace that
still provides test coverage for the original PG_MODULE_MAGIC macro.

Author: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/dd4d1b59-d0fe-49d5-b28f-1e463b68fa32@gmail.com

Files

PathChange+/−
contrib/amcheck/verify_nbtree.c modified +4 −1
contrib/auth_delay/auth_delay.c modified +4 −1
contrib/basebackup_to_shell/basebackup_to_shell.c modified +4 −1
contrib/basic_archive/basic_archive.c modified +4 −1
contrib/bloom/blinsert.c modified +4 −1
contrib/bool_plperl/bool_plperl.c modified +4 −1
contrib/btree_gin/btree_gin.c modified +4 −1
contrib/btree_gist/btree_gist.c modified +4 −1
contrib/citext/citext.c modified +4 −1
contrib/cube/cube.c modified +4 −1
contrib/dblink/dblink.c modified +4 −1
contrib/dict_int/dict_int.c modified +4 −1
contrib/dict_xsyn/dict_xsyn.c modified +4 −1
contrib/earthdistance/earthdistance.c modified +4 −1
contrib/file_fdw/file_fdw.c modified +4 −1
contrib/fuzzystrmatch/fuzzystrmatch.c modified +4 −1
contrib/hstore/hstore_io.c modified +4 −1
contrib/hstore_plperl/hstore_plperl.c modified +4 −1
contrib/hstore_plpython/hstore_plpython.c modified +4 −1
contrib/intarray/_int_op.c modified +4 −1
contrib/isn/isn.c modified +4 −1
contrib/jsonb_plperl/jsonb_plperl.c modified +4 −1
contrib/jsonb_plpython/jsonb_plpython.c modified +4 −1
contrib/lo/lo.c modified +4 −1
contrib/ltree/ltree_op.c modified +4 −1
contrib/ltree_plpython/ltree_plpython.c modified +4 −1
contrib/pageinspect/rawpage.c modified +4 −1
contrib/passwordcheck/passwordcheck.c modified +4 −1
contrib/pg_buffercache/pg_buffercache_pages.c modified +4 −1
contrib/pgcrypto/pgcrypto.c modified +4 −1
contrib/pg_freespacemap/pg_freespacemap.c modified +4 −1
contrib/pg_logicalinspect/pg_logicalinspect.c modified +4 −1
contrib/pg_prewarm/pg_prewarm.c modified +4 −1
contrib/pgrowlocks/pgrowlocks.c modified +4 −1
contrib/pg_stat_statements/pg_stat_statements.c modified +4 −1
contrib/pgstattuple/pgstattuple.c modified +4 −1
contrib/pg_surgery/heap_surgery.c modified +4 −1
contrib/pg_trgm/trgm_op.c modified +4 −1
contrib/pg_visibility/pg_visibility.c modified +4 −1
contrib/pg_walinspect/pg_walinspect.c modified +4 −1
contrib/postgres_fdw/postgres_fdw.c modified +4 −1
contrib/seg/seg.c modified +4 −1
contrib/sepgsql/hooks.c modified +4 −1
contrib/spi/autoinc.c modified +4 −1
contrib/spi/insert_username.c modified +4 −1
contrib/spi/moddatetime.c modified +4 −1
contrib/spi/refint.c modified +4 −1
contrib/sslinfo/sslinfo.c modified +4 −1
contrib/tablefunc/tablefunc.c modified +4 −1
contrib/tcn/tcn.c modified +4 −1
contrib/test_decoding/test_decoding.c modified +4 −1
contrib/tsm_system_rows/tsm_system_rows.c modified +4 −1
contrib/tsm_system_time/tsm_system_time.c modified +4 −1
contrib/unaccent/unaccent.c modified +4 −1
contrib/uuid-ossp/uuid-ossp.c modified +4 −1
contrib/xml2/xpath.c modified +4 −1
src/backend/jit/llvm/llvmjit.c modified +4 −1
src/backend/replication/libpqwalreceiver/libpqwalreceiver.c modified +4 −1
src/backend/replication/pgoutput/pgoutput.c modified +4 −1
src/backend/snowball/dict_snowball.c modified +4 −1
src/backend/utils/mb/conversion_procs/cyrillic_and_mic/cyrillic_and_mic.c modified +4 −1
src/backend/utils/mb/conversion_procs/euc2004_sjis2004/euc2004_sjis2004.c modified +4 −1
src/backend/utils/mb/conversion_procs/euc_cn_and_mic/euc_cn_and_mic.c modified +4 −1
src/backend/utils/mb/conversion_procs/euc_jp_and_sjis/euc_jp_and_sjis.c modified +4 −1
src/backend/utils/mb/conversion_procs/euc_kr_and_mic/euc_kr_and_mic.c modified +4 −1
src/backend/utils/mb/conversion_procs/euc_tw_and_big5/euc_tw_and_big5.c modified +4 −1
src/backend/utils/mb/conversion_procs/latin2_and_win1250/latin2_and_win1250.c modified +4 −1
src/backend/utils/mb/conversion_procs/latin_and_mic/latin_and_mic.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_big5/utf8_and_big5.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_cyrillic/utf8_and_cyrillic.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_euc2004/utf8_and_euc2004.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_euc_cn/utf8_and_euc_cn.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_euc_jp/utf8_and_euc_jp.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_euc_kr/utf8_and_euc_kr.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_euc_tw/utf8_and_euc_tw.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_gb18030/utf8_and_gb18030.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_gbk/utf8_and_gbk.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_iso8859_1/utf8_and_iso8859_1.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_johab/utf8_and_johab.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_sjis2004/utf8_and_sjis2004.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_sjis/utf8_and_sjis.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_uhc/utf8_and_uhc.c modified +4 −1
src/backend/utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c modified +4 −1
src/pl/plperl/plperl.c modified +4 −1
src/pl/plpgsql/src/pl_handler.c modified +4 −1
src/pl/plpython/plpy_main.c modified +4 −1
src/pl/tcl/pltcl.c modified +4 −1
src/test/regress/regress.c modified +4 −1

Discussion