| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- #!/usr/bin/awk
- function which(c,path) {
- cmd = "test -x " c;
- if (system(cmd)==0) {
- return c;
- }
- sub(/\/.*\//,"",c);
- for (dir in path) {
- cmd = "test -x " path[dir] "/" c;
- if (system(cmd)==0) {
- return path[dir] "/" c;
- }
- }
- return c;
- }
- # used to replace "use lib utils.pm" with "use lib @libexecdir"
- #
- function led() {
- led1 = "@libexecdir@";
- led2 = "@exec_prefix@";
- led3 = "@prefix@";
- if ( match(led1, /^\$\{exec_prefix\}/ ) != 0 ) {
- return "\"" led3 "/libexec\" " ;
-
- }
- return "\"" led1 "\"" ;
- }
- BEGIN {
- split(ENVIRON["PATH"] ":/sbin:/usr/sbin",path,/:/);
- }
- # scripting language (first line)
- /^#! ?\/.*\/python/ {sub(/^#! ?\/.*\/python/,"#! @PYTHON@");}
- /^#! ?\/.*\/perl/ {sub(/^#! ?\/.*\/perl/,"#! @PERL@");}
- /^#! ?\/.*\/[a-z]{0,2}awk/ {sub(/^#! ?\/.*\/[a-z]{0,2}awk/,"#! @AWK@");}
- /^#! ?\/.*\/sh/ {sub(/^#! ?\/.*\/sh/,"#! @SHELL@");}
- # add to libexecdir to INC for perl utils.pm
- /^use/ { if (/lib/) { if (/utils.pm/ ) {sub(/utils.pm/,led() )} } }
- # Trusted path mechanism (deprecated)
- /^[ \t]*\$ENV[ \t]*\{[ \t'"]*PATH[ \t"']*\}[ \t]*=/ {
- sub(/\=[ \t]*['"][^"']+["']/,"='@trusted_path@' # autoconf-derived");
- }
- /^[\t ]*(export[\t ]*)?PATH[\t ]*=['"]+.+["']$/ {
- sub(/\=.*$/,"='@trusted_path@' # autoconf-derived");
- }
- # Specific programs
- #
- /^[^#]/ && /(\/.*)?\/(bin|sbin|lib|libexec)\// {
- match($0,/(\/.*)?\/(bin|sbin|lib|libexec)\/[-_a-zA-Z0-9]+/);
- start=RSTART+RLENGTH;
- c=substr($0,RSTART,RLENGTH);
- sub(c,which(c,path));
- }
- {
- print;
- }
|