Move routines to manipulate WAL into PostgreSQL::Test::Cluster
[pgsql.git] / src / backend / utils / Gen_dummy_probes.pl
blob489cccf3ece12a69619206b14485a130f1acbffc
1 #-------------------------------------------------------------------------
2 # Perl script to create dummy probes.h file when dtrace is not available
4 # Copyright (c) 2008-2025, PostgreSQL Global Development Group
6 # src/backend/utils/Gen_dummy_probes.pl
7 #-------------------------------------------------------------------------
9 use strict;
10 use warnings FATAL => 'all';
12 m/^\s*probe / || next;
13 s/^\s*probe ([^(]*)(.*);/$1$2/;
14 s/__/_/g;
15 y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/;
16 s/^/#define TRACE_POSTGRESQL_/;
17 s/\([^,)]{1,}\)/(INT1)/;
18 s/\([^,)]{1,}, [^,)]{1,}\)/(INT1, INT2)/;
19 s/\([^,)]{1,}, [^,)]{1,}, [^,)]{1,}\)/(INT1, INT2, INT3)/;
20 s/\([^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}\)/(INT1, INT2, INT3, INT4)/;
21 s/\([^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}\)/(INT1, INT2, INT3, INT4, INT5)/;
22 s/\([^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}\)/(INT1, INT2, INT3, INT4, INT5, INT6)/;
23 s/\([^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}\)/(INT1, INT2, INT3, INT4, INT5, INT6, INT7)/;
24 s/\([^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}, [^,)]{1,}\)/(INT1, INT2, INT3, INT4, INT5, INT6, INT7, INT8)/;
25 s/$/ do {} while (0)/;
26 print;
27 s/\(.*$/_ENABLED() (0)/;
28 print;