From ecb38fbf49cec66ec4eb77cb4fba0fac0df1241f Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Wed, 4 May 2022 12:22:02 +0200 Subject: [PATCH 3/3] meson: Install all server headers --- contrib/cube/meson.build | 5 +++ contrib/hstore/meson.build | 5 +++ contrib/isn/meson.build | 5 +++ contrib/ltree/meson.build | 5 +++ contrib/seg/meson.build | 5 +++ meson.build | 1 + src/include/meson.build | 64 +++++++++++++++++++++++++++++++++-- src/include/utils/meson.build | 12 +++++-- src/pl/plperl/meson.build | 7 ++++ src/pl/plpython/meson.build | 17 ++++++++++ 10 files changed, 121 insertions(+), 5 deletions(-) diff --git a/contrib/cube/meson.build b/contrib/cube/meson.build index cb6ebf481b..e15a56f257 100644 --- a/contrib/cube/meson.build +++ b/contrib/cube/meson.build @@ -31,6 +31,11 @@ install_data( kwargs: contrib_data_args, ) +install_headers( + 'cubedata.h', + install_dir: dir_include_extension / 'cube', +) + tests += { 'name': 'cube', 'sd': meson.current_source_dir(), diff --git a/contrib/hstore/meson.build b/contrib/hstore/meson.build index 3026fe95e8..3aed37ce8e 100644 --- a/contrib/hstore/meson.build +++ b/contrib/hstore/meson.build @@ -27,6 +27,11 @@ install_data( kwargs: contrib_data_args, ) +install_headers( + 'hstore.h', + install_dir: dir_include_extension / 'hstore', +) + tests += { 'name': 'hstore', 'sd': meson.current_source_dir(), diff --git a/contrib/isn/meson.build b/contrib/isn/meson.build index 8178c1450d..508e2dfa08 100644 --- a/contrib/isn/meson.build +++ b/contrib/isn/meson.build @@ -15,6 +15,11 @@ install_data( kwargs: contrib_data_args, ) +install_headers( + 'isn.h', + install_dir: dir_include_extension / 'isn', +) + tests += { 'name': 'isn', 'sd': meson.current_source_dir(), diff --git a/contrib/ltree/meson.build b/contrib/ltree/meson.build index e2ab05ddba..222c64bb35 100644 --- a/contrib/ltree/meson.build +++ b/contrib/ltree/meson.build @@ -26,6 +26,11 @@ install_data( kwargs: contrib_data_args, ) +install_headers( + 'ltree.h', + install_dir: dir_include_extension / 'ltree', +) + tests += { 'name': 'ltree', 'sd': meson.current_source_dir(), diff --git a/contrib/seg/meson.build b/contrib/seg/meson.build index 21561f6651..10e9b8562b 100644 --- a/contrib/seg/meson.build +++ b/contrib/seg/meson.build @@ -30,6 +30,11 @@ install_data( kwargs: contrib_data_args, ) +install_headers( + 'segdata.h', + install_dir: dir_include_extension / 'seg', +) + tests += { 'name': 'seg', 'sd': meson.current_source_dir(), diff --git a/meson.build b/meson.build index 27bc9dcd48..70951efeb4 100644 --- a/meson.build +++ b/meson.build @@ -297,6 +297,7 @@ dir_locale = get_option('localedir') dir_bitcode = dir_lib / 'bitcode' dir_include_internal = dir_include_pkg / 'internal' dir_include_server = dir_include_pkg / 'server' +dir_include_extension = dir_include_server / 'extension' dir_data_extension = dir_data / 'extension' diff --git a/src/include/meson.build b/src/include/meson.build index 2f27d6f33e..e5ce901e9a 100644 --- a/src/include/meson.build +++ b/src/include/meson.build @@ -68,10 +68,23 @@ install_headers( install_headers( 'c.h', - 'port.h', - 'postgres_fe.h', + 'fmgr.h', + 'funcapi.h', + 'getaddrinfo.h', + 'getopt_long.h', + 'miscadmin.h', 'pg_config_manual.h', + 'pg_getopt.h', + 'pg_trace.h', + 'pgstat.h', + 'pgtar.h', + 'pgtime.h', + 'port.h', + 'postgres.h', 'postgres_ext.h', + 'postgres_fe.h', + 'rusagestub.h', + 'windowapi.h', pg_config_ext, pg_config_os, pg_config, @@ -83,3 +96,50 @@ subdir('storage') subdir('catalog') subdir('parser') subdir('pch') + +foreach d : [ + 'access', 'bootstrap', 'commands', 'common', 'datatype', + 'executor', 'fe_utils', 'foreign', 'jit', + 'lib', 'libpq', 'mb', 'nodes', 'optimizer', 'parser', 'partitioning', 'postmaster', + 'regex', 'replication', 'rewrite', + 'statistics', 'storage', 'tcop', 'snowball', 'tsearch', + 'utils', 'port', 'portability', +] + install_subdir(d, install_dir: dir_include_server, + exclude_files: ['.gitignore', 'meson.build']) +endforeach + +install_subdir('catalog', install_dir: dir_include_server, + exclude_files: [ + '.gitignore', + 'Makefile', + 'duplicate_oids', + 'meson.build', + 'pg_aggregate.dat', + 'pg_am.dat', + 'pg_amop.dat', + 'pg_amproc.dat', + 'pg_authid.dat', + 'pg_cast.dat', + 'pg_class.dat', + 'pg_collation.dat', + 'pg_conversion.dat', + 'pg_database.dat', + 'pg_language.dat', + 'pg_namespace.dat', + 'pg_opclass.dat', + 'pg_operator.dat', + 'pg_opfamily.dat', + 'pg_proc.dat', + 'pg_range.dat', + 'pg_tablespace.dat', + 'pg_ts_config.dat', + 'pg_ts_config_map.dat', + 'pg_ts_dict.dat', + 'pg_ts_parser.dat', + 'pg_ts_template.dat', + 'pg_type.dat', + 'reformat_dat_file.pl', + 'renumber_oids.pl', + 'unused_oids', + ]) diff --git a/src/include/utils/meson.build b/src/include/utils/meson.build index b9c959b474..6e1437f300 100644 --- a/src/include/utils/meson.build +++ b/src/include/utils/meson.build @@ -1,7 +1,9 @@ errcodes = custom_target('errcodes', input : files('../../backend/utils/errcodes.txt'), output : ['errcodes.h'], - command : [perl, files('../../backend/utils/generate-errcodes.pl'), '@INPUT@', '@OUTPUT@'] + command : [perl, files('../../backend/utils/generate-errcodes.pl'), '@INPUT@', '@OUTPUT@'], + install: true, + install_dir: dir_include_server/'utils', ) generated_headers += errcodes @@ -9,13 +11,17 @@ generated_backend_headers += custom_target('probes.d', input: files('../../backend/utils/probes.d'), output : 'probes.h', capture: true, - command : [sed, '-f', files('../../backend/utils/Gen_dummy_probes.sed'), '@INPUT@'] + command : [sed, '-f', files('../../backend/utils/Gen_dummy_probes.sed'), '@INPUT@'], + install: true, + install_dir: dir_include_server/'utils', ) fmgrtab_target = custom_target('fmgrtab', input: '../catalog/pg_proc.dat', output : ['fmgroids.h', 'fmgrprotos.h', 'fmgrtab.c'], - command: [perl, '-I', '@SOURCE_ROOT@/src/backend/catalog/', files('../../backend/utils/Gen_fmgrtab.pl'), '--include-path=@SOURCE_ROOT@/src/include', '--output=@OUTDIR@', '@INPUT@'] + command: [perl, '-I', '@SOURCE_ROOT@/src/backend/catalog/', files('../../backend/utils/Gen_fmgrtab.pl'), '--include-path=@SOURCE_ROOT@/src/include', '--output=@OUTDIR@', '@INPUT@'], + install: true, + install_dir: [dir_include_server/'utils', dir_include_server/'utils', false], ) generated_backend_headers += fmgrtab_target[0] diff --git a/src/pl/plperl/meson.build b/src/pl/plperl/meson.build index 9f0ad97936..4b14c556c2 100644 --- a/src/pl/plperl/meson.build +++ b/src/pl/plperl/meson.build @@ -60,6 +60,13 @@ install_data( install_dir: dir_data_extension, ) +install_headers( + 'plperl.h', + 'plperl_helpers.h', + 'ppport.h', + install_dir: dir_include_server, +) + tests += { 'name': 'plperl', 'sd': meson.current_source_dir(), diff --git a/src/pl/plpython/meson.build b/src/pl/plpython/meson.build index dd5f8838e2..449654914d 100644 --- a/src/pl/plpython/meson.build +++ b/src/pl/plpython/meson.build @@ -44,6 +44,23 @@ install_data( install_dir: dir_data_extension, ) +install_headers( + 'plpy_cursorobject.h', + 'plpy_elog.h', + 'plpy_exec.h', + 'plpy_main.h', + 'plpy_planobject.h', + 'plpy_plpymodule.h', + 'plpy_procedure.h', + 'plpy_resultobject.h', + 'plpy_spi.h', + 'plpy_subxactobject.h', + 'plpy_typeio.h', + 'plpy_util.h', + 'plpython.h', + install_dir: dir_include_server, +) + plpython_regress = [ 'plpython_schema', 'plpython_populate', -- 2.35.1