80 lines
2.6 KiB
Meson
80 lines
2.6 KiB
Meson
# Copyright (c) 2022-2024, PostgreSQL Global Development Group
|
|
|
|
wait_event_output = ['wait_event_types.h', 'pgstat_wait_event.c', 'wait_event_funcs_data.c']
|
|
wait_event_target = custom_target('wait_event_names',
|
|
input: files('../../backend/utils/activity/wait_event_names.txt'),
|
|
output: wait_event_output,
|
|
command: [
|
|
perl, files('../../backend/utils/activity/generate-wait_event_types.pl'),
|
|
'--outdir', '@OUTDIR@', '--code',
|
|
'@INPUT@'
|
|
],
|
|
build_by_default: true,
|
|
install: true,
|
|
install_dir: [dir_include_server / 'utils', false, false],
|
|
)
|
|
|
|
wait_event_types_h = wait_event_target[0]
|
|
generated_backend_headers += wait_event_types_h
|
|
|
|
errcodes = custom_target('errcodes',
|
|
input: files('../../backend/utils/errcodes.txt'),
|
|
output: ['errcodes.h'],
|
|
command: [
|
|
perl, files('../../backend/utils/generate-errcodes.pl'),
|
|
'--outfile', '@OUTPUT@',
|
|
'@INPUT@',
|
|
],
|
|
install: true,
|
|
install_dir: dir_include_server / 'utils',
|
|
)
|
|
generated_headers += errcodes
|
|
|
|
if dtrace.found()
|
|
probes_tmp = custom_target('probes.h.tmp',
|
|
input: files('../../backend/utils/probes.d'),
|
|
output: 'probes.h.tmp',
|
|
command: [dtrace, '-C', '-h', '-s', '@INPUT@', '-o', '@OUTPUT@'],
|
|
)
|
|
probes = custom_target('probes.h',
|
|
input: probes_tmp,
|
|
output: 'probes.h',
|
|
capture: true,
|
|
command: [sed, '-f', files('../../backend/utils/postprocess_dtrace.sed'), '@INPUT@'],
|
|
install: true,
|
|
install_dir: dir_include_server / 'utils',
|
|
)
|
|
else
|
|
probes = custom_target('probes.h',
|
|
input: files('../../backend/utils/probes.d'),
|
|
output: 'probes.h',
|
|
capture: true,
|
|
command: [perl, '-n', files('../../backend/utils/Gen_dummy_probes.pl'), '@INPUT@'],
|
|
install: true,
|
|
install_dir: dir_include_server / 'utils',
|
|
)
|
|
endif
|
|
|
|
generated_backend_headers += probes
|
|
|
|
fmgrtab_output = ['fmgroids.h', 'fmgrprotos.h', 'fmgrtab.c']
|
|
fmgrtab_target = custom_target('fmgrtab',
|
|
input: '../catalog/pg_proc.dat',
|
|
output : fmgrtab_output,
|
|
depend_files: catalog_pm,
|
|
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]
|
|
generated_backend_headers += fmgrtab_target[1]
|
|
|
|
# autoconf generates the file there, ensure we get a conflict
|
|
generated_sources_ac += {
|
|
'src/backend/utils': fmgrtab_output + ['errcodes.h', 'probes.h', 'fmgr-stamp'],
|
|
'src/include/utils': ['header-stamp'],
|
|
}
|
|
|
|
generated_sources_ac += {'src/backend/utils/activity': ['wait_event_types.h']}
|