mirror of
https://github.com/postgres/postgres.git
synced 2025-11-25 12:03:53 +03:00
Both lwlocknames.txt and wait_event_names.txt contain a list of all the predefined LWLocks, i.e., those with predefined positions within MainLWLockArray. It is easy to miss one or the other, especially since the list in wait_event_names.txt omits the "Lock" suffix from all the LWLock wait events. This commit adds a cross- check of these lists to the script that generates lwlocknames.h. If the lists do not match exactly, building will fail. Suggested-by: Robert Haas Reviewed-by: Robert Haas, Michael Paquier, Bertrand Drouvot Discussion: https://postgr.es/m/20240102173120.GA1061678%40nathanxps13
24 lines
731 B
Meson
24 lines
731 B
Meson
# Copyright (c) 2022-2024, PostgreSQL Global Development Group
|
|
|
|
lwlocknames = custom_target('lwlocknames',
|
|
input: files(
|
|
'../../backend/storage/lmgr/lwlocknames.txt',
|
|
'../../backend/utils/activity/wait_event_names.txt'),
|
|
output: ['lwlocknames.h', 'lwlocknames.c'],
|
|
command: [
|
|
perl, files('../../backend/storage/lmgr/generate-lwlocknames.pl'),
|
|
'-o', '@OUTDIR@',
|
|
'@INPUT@'
|
|
],
|
|
build_by_default: true,
|
|
install: true,
|
|
install_dir: [dir_include_server / 'storage', false],
|
|
)
|
|
|
|
lwlocknames_h = lwlocknames[0]
|
|
|
|
generated_backend_headers += lwlocknames_h
|
|
|
|
# autoconf generates the file there, ensure we get a conflict
|
|
generated_sources_ac += {'src/backend/storage/lmgr': ['lwlocknames.c', 'lwlocknames.h']}
|