Use PG_MODULE_MAGIC_EXT in our installable shared libraries.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 26 Mar 2025 15:11:02 +0000 (11:11 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 26 Mar 2025 15:11:02 +0000 (11:11 -0400)
commit55527368bd07248e91e3d37a782bf66b76f06865
tree7bb79a5fedea00a79c5b447b1539e3098f0fde42
parent9324c8c580655800331b0582b770e88c01b7a5c4
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
89 files changed:
contrib/amcheck/verify_nbtree.c
contrib/auth_delay/auth_delay.c
contrib/basebackup_to_shell/basebackup_to_shell.c
contrib/basic_archive/basic_archive.c
contrib/bloom/blinsert.c
contrib/bool_plperl/bool_plperl.c
contrib/btree_gin/btree_gin.c
contrib/btree_gist/btree_gist.c
contrib/citext/citext.c
contrib/cube/cube.c
contrib/dblink/dblink.c
contrib/dict_int/dict_int.c
contrib/dict_xsyn/dict_xsyn.c
contrib/earthdistance/earthdistance.c
contrib/file_fdw/file_fdw.c
contrib/fuzzystrmatch/fuzzystrmatch.c
contrib/hstore/hstore_io.c
contrib/hstore_plperl/hstore_plperl.c
contrib/hstore_plpython/hstore_plpython.c
contrib/intarray/_int_op.c
contrib/isn/isn.c
contrib/jsonb_plperl/jsonb_plperl.c
contrib/jsonb_plpython/jsonb_plpython.c
contrib/lo/lo.c
contrib/ltree/ltree_op.c
contrib/ltree_plpython/ltree_plpython.c
contrib/pageinspect/rawpage.c
contrib/passwordcheck/passwordcheck.c
contrib/pg_buffercache/pg_buffercache_pages.c
contrib/pg_freespacemap/pg_freespacemap.c
contrib/pg_logicalinspect/pg_logicalinspect.c
contrib/pg_prewarm/pg_prewarm.c
contrib/pg_stat_statements/pg_stat_statements.c
contrib/pg_surgery/heap_surgery.c
contrib/pg_trgm/trgm_op.c
contrib/pg_visibility/pg_visibility.c
contrib/pg_walinspect/pg_walinspect.c
contrib/pgcrypto/pgcrypto.c
contrib/pgrowlocks/pgrowlocks.c
contrib/pgstattuple/pgstattuple.c
contrib/postgres_fdw/postgres_fdw.c
contrib/seg/seg.c
contrib/sepgsql/hooks.c
contrib/spi/autoinc.c
contrib/spi/insert_username.c
contrib/spi/moddatetime.c
contrib/spi/refint.c
contrib/sslinfo/sslinfo.c
contrib/tablefunc/tablefunc.c
contrib/tcn/tcn.c
contrib/test_decoding/test_decoding.c
contrib/tsm_system_rows/tsm_system_rows.c
contrib/tsm_system_time/tsm_system_time.c
contrib/unaccent/unaccent.c
contrib/uuid-ossp/uuid-ossp.c
contrib/xml2/xpath.c
src/backend/jit/llvm/llvmjit.c
src/backend/replication/libpqwalreceiver/libpqwalreceiver.c
src/backend/replication/pgoutput/pgoutput.c
src/backend/snowball/dict_snowball.c
src/backend/utils/mb/conversion_procs/cyrillic_and_mic/cyrillic_and_mic.c
src/backend/utils/mb/conversion_procs/euc2004_sjis2004/euc2004_sjis2004.c
src/backend/utils/mb/conversion_procs/euc_cn_and_mic/euc_cn_and_mic.c
src/backend/utils/mb/conversion_procs/euc_jp_and_sjis/euc_jp_and_sjis.c
src/backend/utils/mb/conversion_procs/euc_kr_and_mic/euc_kr_and_mic.c
src/backend/utils/mb/conversion_procs/euc_tw_and_big5/euc_tw_and_big5.c
src/backend/utils/mb/conversion_procs/latin2_and_win1250/latin2_and_win1250.c
src/backend/utils/mb/conversion_procs/latin_and_mic/latin_and_mic.c
src/backend/utils/mb/conversion_procs/utf8_and_big5/utf8_and_big5.c
src/backend/utils/mb/conversion_procs/utf8_and_cyrillic/utf8_and_cyrillic.c
src/backend/utils/mb/conversion_procs/utf8_and_euc2004/utf8_and_euc2004.c
src/backend/utils/mb/conversion_procs/utf8_and_euc_cn/utf8_and_euc_cn.c
src/backend/utils/mb/conversion_procs/utf8_and_euc_jp/utf8_and_euc_jp.c
src/backend/utils/mb/conversion_procs/utf8_and_euc_kr/utf8_and_euc_kr.c
src/backend/utils/mb/conversion_procs/utf8_and_euc_tw/utf8_and_euc_tw.c
src/backend/utils/mb/conversion_procs/utf8_and_gb18030/utf8_and_gb18030.c
src/backend/utils/mb/conversion_procs/utf8_and_gbk/utf8_and_gbk.c
src/backend/utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c
src/backend/utils/mb/conversion_procs/utf8_and_iso8859_1/utf8_and_iso8859_1.c
src/backend/utils/mb/conversion_procs/utf8_and_johab/utf8_and_johab.c
src/backend/utils/mb/conversion_procs/utf8_and_sjis/utf8_and_sjis.c
src/backend/utils/mb/conversion_procs/utf8_and_sjis2004/utf8_and_sjis2004.c
src/backend/utils/mb/conversion_procs/utf8_and_uhc/utf8_and_uhc.c
src/backend/utils/mb/conversion_procs/utf8_and_win/utf8_and_win.c
src/pl/plperl/plperl.c
src/pl/plpgsql/src/pl_handler.c
src/pl/plpython/plpy_main.c
src/pl/tcl/pltcl.c
src/test/regress/regress.c