PostgreSQL/src/meson.build
Tom Lane 156c049bee Integrate pg_bsd_indent into our build/test infrastructure.
Update the Makefile and build directions for in-tree build,
and add Meson build infrastructure.  Also convert the ad-hoc
test target into a TAP test.

Currently, the Make build system will not build pg_bsd_indent
by default, while the Meson system will.  Both will test it
during "make check-world" or "ninja test".  Neither will install
it automatically.  (We might change some of these decisions later.)

Also fix a few portability nits noted during early testing.

Also, exclude pg_bsd_indent from pgindent's purview; at least for
now, we'll leave it formatted similarly to the FreeBSD original.

Tom Lane and Andres Freund

Discussion: https://postgr.es/m/3935719.1675967430@sss.pgh.pa.us
Discussion: https://postgr.es/m/20200812223409.6di3y2qsnvynao7a@alap3.anarazel.de
2023-02-12 12:22:21 -05:00

54 lines
1.3 KiB
Meson

# Copyright (c) 2022-2023, PostgreSQL Global Development Group
# libraries that other subsystems might depend upon first, in their respective
# dependency order
subdir('timezone')
subdir('backend')
subdir('bin')
subdir('pl')
subdir('interfaces')
subdir('tools/pg_bsd_indent')
### Generate a Makefile.global that's complete enough for PGXS to work.
#
# This is somewhat ugly, but allows extensions to use a single buildsystem
# across all the supported postgres versions. Once all supported PG versions
# support meson, we can remove all of this.
#
# XXX: Should we make this optional?
# pgxs_cdata is built in makefiles/meson.build, but some of the generated
# files are output into src/
subdir('makefiles')
makefile_global = configure_file(
input: 'Makefile.global.in',
output: 'Makefile.global',
configuration: pgxs_cdata,
install: true,
install_dir: dir_pgxs / 'src',
)
configure_files += makefile_global
makefile_port = configure_file(
input: 'makefiles' / 'Makefile.@0@'.format(portname),
output: 'Makefile.port',
copy: true,
install_dir: dir_pgxs / 'src')
configure_files += makefile_port
install_data(
'Makefile.shlib', 'nls-global.mk',
install_dir: dir_pgxs / 'src')
install_data(
'makefiles/pgxs.mk',
install_dir: dir_pgxs / 'src' / 'makefiles')