From 40db5e12652f63668e4f2c11f4dc67b5bd8c34c3 Mon Sep 17 00:00:00 2001 From: Zharkov Roman Date: Tue, 21 Jan 2025 14:55:43 +0300 Subject: [PATCH] Add meson.build file to support building from the contrib source tree. --- meson.build | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 meson.build diff --git a/meson.build b/meson.build new file mode 100644 index 0000000..10f4ee9 --- /dev/null +++ b/meson.build @@ -0,0 +1,53 @@ +# Copyright (c) 2025, Postgres Professional + +# Does not support the PGXS infrastructure at this time. Please, compile as part +# of the contrib source tree. + +jsquery_sources = files( + 'jsonb_gin_ops.c', + 'jsquery_constr.c', + 'jsquery_extract.c', + 'jsquery_io.c', + 'jsquery_op.c', + 'jsquery_support.c', +) + +jsquery_gram = custom_target('jsquerygram', + input: 'jsquery_gram.y', + kwargs: bison_kw, +) +generated_sources += jsquery_gram.to_list() +jsquery_sources += jsquery_gram + +run_command(flex, '--outfile=jsquery_scan.c', 'jsquery_scan.l', check: true) + +if host_system == 'windows' + jsquery_sources += rc_lib_gen.process(win32ver_rc, extra_args: [ + '--NAME', 'jsquery', + '--FILEDESC', 'jsquery - language to query jsonb data type.',]) +endif + +jsquery = shared_module('jsquery', + jsquery_sources, + include_directories: include_directories('.'), + kwargs: contrib_mod_args, +) +contrib_targets += jsquery + +install_data( + 'jsquery.control', + 'jsquery--1.0--1.1.sql', + 'jsquery--1.1.sql', + kwargs: contrib_data_args, +) + +tests += { + 'name': 'jsquery', + 'sd': meson.current_source_dir(), + 'bd': meson.current_build_dir(), + 'regress': { + 'sql': [ + 'jsquery', + ], + }, +}