diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2018-04-28 16:09:03 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2018-04-28 16:09:03 -0400 |
commit | 84549ebd4c4d1941006056cfb2455a4983fb15a2 (patch) | |
tree | 8a5f2850455f1be06b020508f50a8ef210185092 /src | |
parent | 45c6d75f8cd2399181063b4e0ec11c2664ebeda6 (diff) | |
download | postgresql-84549ebd4c4d1941006056cfb2455a4983fb15a2.tar.gz postgresql-84549ebd4c4d1941006056cfb2455a4983fb15a2.zip |
Tweak reformat_dat_file.pl to make it more easily hand-invokable.
Use the same code we already applied in duplicate_oids and unused_oids
to let this script find Catalog.pm without help. This removes the need
to supply a -I switch in most cases.
Also, mark the script executable, again to follow the precedent of
duplicate_oids and unused_oids. Now you can just do
"./reformat_dat_file.pl pg_proc.dat"
if you want to reformat only one or a few .dat files rather than all.
It'd be possible to remove the -I switches in the Makefile's convenience
targets, but I chose to leave them: they don't hurt anything, and it's
possible that in weird VPATH situations they might be of value.
Diffstat (limited to 'src')
-rwxr-xr-x[-rw-r--r--] | src/include/catalog/reformat_dat_file.pl | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/src/include/catalog/reformat_dat_file.pl b/src/include/catalog/reformat_dat_file.pl index 4d2523c1bf4..00c4f2b0a07 100644..100755 --- a/src/include/catalog/reformat_dat_file.pl +++ b/src/include/catalog/reformat_dat_file.pl @@ -1,13 +1,14 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl #---------------------------------------------------------------------- # # reformat_dat_file.pl -# Perl script that reads in a catalog data file and writes out -# a functionally equivalent file in a standard format. +# Perl script that reads in catalog data file(s) and writes out +# functionally equivalent file(s) in a standard format. # -# Metadata entries (if any) come first, with normal attributes -# starting on the following line, in the same order they would be in -# the corresponding table. Comments and blank lines are preserved. +# In each entry of a reformatted file, metadata fields (if any) come +# first, with normal attributes starting on the following line, in +# the same order as the columns of the corresponding catalog. +# Comments and blank lines are preserved. # # Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group # Portions Copyright (c) 1994, Regents of the University of California @@ -16,11 +17,15 @@ # #---------------------------------------------------------------------- -use Catalog; - use strict; use warnings; +# If you copy this script to somewhere other than src/include/catalog, +# you'll need to modify this "use lib" or provide a suitable -I switch. +use FindBin; +use lib "$FindBin::RealBin/../../backend/catalog/"; +use Catalog; + my @input_files; my $output_path = ''; my $full_tuples = 0; @@ -293,13 +298,10 @@ sub usage Usage: reformat_dat_file.pl [options] datafile... Options: - -o output path + -o PATH write output files to PATH instead of current directory --full-tuples write out full tuples, including default values Expects a list of .dat files as arguments. -Make sure location of Catalog.pm is passed to the perl interpreter: -perl -I /path/to/Catalog.pm/ ... - EOM } |