diff options
author | Wilfredo Sanchez <wsanchez@apache.org> | 2002-11-29 00:31:37 +0100 |
---|---|---|
committer | Wilfredo Sanchez <wsanchez@apache.org> | 2002-11-29 00:31:37 +0100 |
commit | 5eb2ee00c039147777daa018fe9b22cacef1c09f (patch) | |
tree | fd951f46994893ff20d70b649f5f21fc474f8ba0 /build/PrintPath | |
parent | Don't include apr_network.m4 and apr_threads.m4; we don't use them. (diff) | |
download | apache2-5eb2ee00c039147777daa018fe9b22cacef1c09f.tar.xz apache2-5eb2ee00c039147777daa018fe9b22cacef1c09f.zip |
Changes to reduce dependency on in-tree apr and apr-util.
Change AC_CONFIG_AUX_DIR in configure to build from srclib/apr/build.
Have buildconf copy the needed files (config.guess, config.sub,
PrintPath) from srclib/apr/build to build.
Change binbuild.sh to stop using srclib/apr.
This gets to to where ./configure --with-apr --with-apr-util actually
works without an in-tree apr and apr-util, though we still need them
in-tree to run buildconf.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97671 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'build/PrintPath')
-rwxr-xr-x | build/PrintPath | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/build/PrintPath b/build/PrintPath new file mode 100755 index 0000000000..68435f3744 --- /dev/null +++ b/build/PrintPath @@ -0,0 +1,116 @@ +#!/bin/sh +# Look for program[s] somewhere in $PATH. +# +# Options: +# -s +# Do not print out full pathname. (silent) +# -pPATHNAME +# Look in PATHNAME instead of $PATH +# +# Usage: +# PrintPath [-s] [-pPATHNAME] program [program ...] +# +# Initially written by Jim Jagielski for the Apache configuration mechanism +# (with kudos to Kernighan/Pike) +# +# This script falls under the Apache License. +# See http://www.apache.org/docs/LICENSE + +## +# Some "constants" +## +pathname=$PATH +echo="yes" + +## +# Find out what OS we are running for later on +## +os=`(uname) 2>/dev/null` + +## +# Parse command line +## +for args in $* +do + case $args in + -s ) echo="no" ;; + -p* ) pathname="`echo $args | sed 's/^..//'`" ;; + * ) programs="$programs $args" ;; + esac +done + +## +# Now we make the adjustments required for OS/2 and everyone +# else :) +# +# First of all, all OS/2 programs have the '.exe' extension. +# Next, we adjust PATH (or what was given to us as PATH) to +# be whitespace seperated directories. +# Finally, we try to determine the best flag to use for +# test/[] to look for an executable file. OS/2 just has '-r' +# but with other OSs, we do some funny stuff to check to see +# if test/[] knows about -x, which is the prefered flag. +## + +if [ "x$os" = "xOS/2" ] +then + ext=".exe" + pathname=`echo -E $pathname | + sed 's/^;/.;/ + s/;;/;.;/g + s/;$/;./ + s/;/ /g + s/\\\\/\\//g' ` + test_exec_flag="-r" +else + ext="" # No default extensions + pathname=`echo $pathname | + sed 's/^:/.:/ + s/::/:.:/g + s/:$/:./ + s/:/ /g' ` + # Here is how we test to see if test/[] can handle -x + testfile="pp.t.$$" + + cat > $testfile <<ENDTEST +#!/bin/sh +if [ -x / ] || [ -x /bin ] || [ -x /bin/ls ]; then + exit 0 +fi +exit 1 +ENDTEST + + if `/bin/sh $testfile 2>/dev/null`; then + test_exec_flag="-x" + else + test_exec_flag="-r" + fi + rm -f $testfile +fi + +for program in $programs +do + for path in $pathname + do + if [ $test_exec_flag $path/${program}${ext} ] && \ + [ ! -d $path/${program}${ext} ]; then + if [ "x$echo" = "xyes" ]; then + echo $path/${program}${ext} + fi + exit 0 + fi + +# Next try without extension (if one was used above) + if [ "x$ext" != "x" ]; then + if [ $test_exec_flag $path/${program} ] && \ + [ ! -d $path/${program} ]; then + if [ "x$echo" = "xyes" ]; then + echo $path/${program} + fi + exit 0 + fi + fi + done +done +exit 1 + |