postgresql/contrib/postgres_fdw/meson.build
Jeff Davis 8185bb5347 CREATE SUBSCRIPTION ... SERVER.
Allow CREATE SUBSCRIPTION to accept a foreign server using the SERVER
clause instead of a raw connection string using the CONNECTION clause.

  * Enables a user with sufficient privileges to create a subscription
    using a foreign server by name without specifying the connection
    details.

  * Integrates with user mappings (and other FDW infrastructure) using
    the subscription owner.

  * Provides a layer of indirection to manage multiple subscriptions
    to the same remote server more easily.

Also add CREATE FOREIGN DATA WRAPPER ... CONNECTION clause to specify
a connection_function. To be eligible for a subscription, the foreign
server's foreign data wrapper must specify a connection_function.

Add connection_function support to postgres_fdw, and bump postgres_fdw
version to 1.3.

Bump catversion.

Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Reviewed-by: Shlok Kyal <shlok.kyal.oss@gmail.com>
Reviewed-by: Masahiko Sawada <sawada.mshk@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Discussion: https://postgr.es/m/61831790a0a937038f78ce09f8dd4cef7de7456a.camel@j-davis.com
2026-03-06 08:27:56 -08:00

57 lines
1.3 KiB
Meson

# Copyright (c) 2022-2026, PostgreSQL Global Development Group
postgres_fdw_sources = files(
'connection.c',
'deparse.c',
'option.c',
'postgres_fdw.c',
'shippable.c',
)
if host_system == 'windows'
postgres_fdw_sources += rc_lib_gen.process(win32ver_rc, extra_args: [
'--NAME', 'postgres_fdw',
'--FILEDESC', 'postgres_fdw - foreign data wrapper for PostgreSQL',])
endif
postgres_fdw = shared_module('postgres_fdw',
postgres_fdw_sources,
kwargs: contrib_mod_args + {
'dependencies': contrib_mod_args['dependencies'] + [libpq],
},
)
contrib_targets += postgres_fdw
install_data(
'postgres_fdw.control',
'postgres_fdw--1.0.sql',
'postgres_fdw--1.0--1.1.sql',
'postgres_fdw--1.1--1.2.sql',
'postgres_fdw--1.2--1.3.sql',
kwargs: contrib_data_args,
)
tests += {
'name': 'postgres_fdw',
'sd': meson.current_source_dir(),
'bd': meson.current_build_dir(),
'regress': {
'sql': [
'postgres_fdw',
'query_cancel',
],
'regress_args': ['--dlpath', meson.project_build_root() / 'src/test/regress'],
},
'isolation': {
'specs': [
'eval_plan_qual',
],
'regress_args': ['--load-extension=postgres_fdw'],
},
'tap': {
'tests': [
't/001_auth_scram.pl',
't/010_subscription.pl',
],
},
}