mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
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
This commit is contained in:
@ -138,7 +138,10 @@ ResourceOwnerForgetJIT(ResourceOwner owner, LLVMJitContext *handle)
|
||||
ResourceOwnerForget(owner, PointerGetDatum(handle), &jit_resowner_desc);
|
||||
}
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "llvmjit",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
|
@ -36,7 +36,10 @@
|
||||
#include "utils/pg_lsn.h"
|
||||
#include "utils/tuplestore.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "libpqwalreceiver",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
struct WalReceiverConn
|
||||
{
|
||||
|
@ -36,7 +36,10 @@
|
||||
#include "utils/syscache.h"
|
||||
#include "utils/varlena.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "pgoutput",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
static void pgoutput_startup(LogicalDecodingContext *ctx,
|
||||
OutputPluginOptions *opt, bool is_init);
|
||||
|
@ -77,7 +77,10 @@
|
||||
#include "snowball/libstemmer/stem_UTF_8_turkish.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_yiddish.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "dict_snowball",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(dsnowball_init);
|
||||
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "cyrillic_and_mic",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(koi8r_to_mic);
|
||||
PG_FUNCTION_INFO_V1(mic_to_koi8r);
|
||||
|
@ -14,7 +14,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "euc2004_sjis2004",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_jis_2004_to_shift_jis_2004);
|
||||
PG_FUNCTION_INFO_V1(shift_jis_2004_to_euc_jis_2004);
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "euc_cn_and_mic",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_cn_to_mic);
|
||||
PG_FUNCTION_INFO_V1(mic_to_euc_cn);
|
||||
|
@ -27,7 +27,10 @@
|
||||
*/
|
||||
#include "sjis.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "euc_jp_and_sjis",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_jp_to_sjis);
|
||||
PG_FUNCTION_INFO_V1(sjis_to_euc_jp);
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "euc_kr_and_mic",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_kr_to_mic);
|
||||
PG_FUNCTION_INFO_V1(mic_to_euc_kr);
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "euc_tw_and_big5",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_tw_to_big5);
|
||||
PG_FUNCTION_INFO_V1(big5_to_euc_tw);
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "latin2_and_win1250",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(latin2_to_mic);
|
||||
PG_FUNCTION_INFO_V1(mic_to_latin2);
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "latin_and_mic",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(latin1_to_mic);
|
||||
PG_FUNCTION_INFO_V1(mic_to_latin1);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/big5_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_big5.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_big5",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(big5_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_big5);
|
||||
|
@ -19,7 +19,10 @@
|
||||
#include "../../Unicode/utf8_to_koi8u.map"
|
||||
#include "../../Unicode/koi8u_to_utf8.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_cyrillic",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(utf8_to_koi8r);
|
||||
PG_FUNCTION_INFO_V1(koi8r_to_utf8);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/euc_jis_2004_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_euc_jis_2004.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_euc2004",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_jis_2004_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_euc_jis_2004);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/euc_cn_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_euc_cn.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_euc_cn",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_cn_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_euc_cn);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/euc_jp_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_euc_jp.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_euc_jp",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_jp_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_euc_jp);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/euc_kr_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_euc_kr.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_euc_kr",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_kr_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_euc_kr);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/euc_tw_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_euc_tw.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_euc_tw",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(euc_tw_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_euc_tw);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/gb18030_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_gb18030.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_gb18030",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(gb18030_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_gb18030);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/gbk_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_gbk.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_gbk",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(gbk_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_gbk);
|
||||
|
@ -41,7 +41,10 @@
|
||||
#include "../../Unicode/utf8_to_iso8859_9.map"
|
||||
#include "../../Unicode/iso8859_16_to_utf8.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_iso8859",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(iso8859_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_iso8859);
|
||||
|
@ -15,7 +15,10 @@
|
||||
#include "fmgr.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_iso8859_1",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(iso8859_1_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_iso8859_1);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/johab_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_johab.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_johab",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(johab_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_johab);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/sjis_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_sjis.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_sjis",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(sjis_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_sjis);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/shift_jis_2004_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_shift_jis_2004.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_sjis2004",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(shift_jis_2004_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_shift_jis_2004);
|
||||
|
@ -17,7 +17,10 @@
|
||||
#include "../../Unicode/uhc_to_utf8.map"
|
||||
#include "../../Unicode/utf8_to_uhc.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_uhc",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(uhc_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_uhc);
|
||||
|
@ -37,7 +37,10 @@
|
||||
#include "../../Unicode/win874_to_utf8.map"
|
||||
#include "../../Unicode/win1258_to_utf8.map"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "utf8_and_win",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(win_to_utf8);
|
||||
PG_FUNCTION_INFO_V1(utf8_to_win);
|
||||
|
@ -52,7 +52,10 @@ EXTERN_C void boot_DynaLoader(pTHX_ CV *cv);
|
||||
EXTERN_C void boot_PostgreSQL__InServer__Util(pTHX_ CV *cv);
|
||||
EXTERN_C void boot_PostgreSQL__InServer__SPI(pTHX_ CV *cv);
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "plperl",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
/**********************************************************************
|
||||
* Information associated with a Perl interpreter. We have one interpreter
|
||||
|
@ -31,7 +31,10 @@ static bool plpgsql_extra_checks_check_hook(char **newvalue, void **extra, GucSo
|
||||
static void plpgsql_extra_warnings_assign_hook(const char *newvalue, void *extra);
|
||||
static void plpgsql_extra_errors_assign_hook(const char *newvalue, void *extra);
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "plpgsql",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
/* Custom GUC variable */
|
||||
static const struct config_enum_entry variable_conflict_options[] = {
|
||||
|
@ -28,7 +28,10 @@
|
||||
* exported functions
|
||||
*/
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "plpython",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
PG_FUNCTION_INFO_V1(plpython3_validator);
|
||||
PG_FUNCTION_INFO_V1(plpython3_call_handler);
|
||||
|
@ -39,7 +39,10 @@
|
||||
#include "utils/typcache.h"
|
||||
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "pltcl",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
#define HAVE_TCL_VERSION(maj,min) \
|
||||
((TCL_MAJOR_VERSION > maj) || \
|
||||
|
@ -79,7 +79,10 @@
|
||||
|
||||
static void regress_lseg_construct(LSEG *lseg, Point *pt1, Point *pt2);
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
PG_MODULE_MAGIC_EXT(
|
||||
.name = "regress",
|
||||
.version = PG_VERSION
|
||||
);
|
||||
|
||||
|
||||
/* return the point where two paths intersect, or NULL if no intersection. */
|
||||
|
Reference in New Issue
Block a user