#!/bin/sh # $Id: configure,v 1.35 2004/11/06 11:36:54 paulus Exp $ # Where to install stuff by default DESTDIR=/usr/local SYSCONF=/etc # if [ -d /NextApps ]; then # system="NeXTStep" # else system=`uname -s` release=`uname -r` arch=`uname -m` # fi state="unknown" case $system in Linux) makext="linux"; ksrc="linux"; state="known";; SunOS) case $release in # [0-3]*) state="ancient";; # 4*) state="known"; ksrc="sunos4"; makext="sunos4";; 5.[7-9]*|5.[1-9][0-9]) state="known"; ksrc="solaris"; makext="sol2"; case "`/usr/bin/isainfo -k`" in sparcv9) archvariant='-64';; *) ;; esac;; 5.[1-6]*) state="known"; ksrc="solaris"; makext="sol2";; esac if [ -x /opt/SUNWspro/bin/cc -a "$1" != "gcc" ] && /opt/SUNWspro/bin/cc -flags >/dev/null 2>&1; then : # use Sun WorkShop compiler elif gcc --version >/dev/null 2>&1; then archvariant=gcc$archvariant compiletype=.gcc if [ "$archvariant" = "gcc-64" ]; then ( cd /tmp; touch ppp$$.c gcc -c -m64 ppp$$.c >/dev/null 2>&1 || ( echo "gcc is unable to make 64 bit modules, and your $arch system needs them." echo "consider upgrading gcc on this machine, or switching to Sun WorkShop." rm -f ppp$$.c exit 1 ) || exit 1 rm -f ppp$$.c ppp$$.o ) || exit 1 fi else echo "C compiler not found; hoping for the best." fi;; NetBSD|FreeBSD|ULTRIX|OSF1|NeXTStep|SINIX-?|UNIX_SV|UNIX_System_V) state="notincluded";; # NetBSD) # makext="bsd"; # case $release in # 0.*) state="ancient";; # 1.0*) state="ancient";; # 1.1*) state="known"; ksrc="netbsd-1.1";; # 1.2*) state="known"; ksrc="netbsd-1.2"; makext="netbsd-1.2";; # 1.[3-9]*|[2-9]*) # state="late"; ksrc="netbsd-1.2";; # esac;; # ULTRIX) # makext="ultrix"; # case $release in # [0-3]*) state="ancient";; # 4.[01]*) state="early"; ksrc="ultrix";; # 4.[234]) state="known"; ksrc="ultrix";; # esac;; # OSF1) # makext="osf"; # case $release in # V1.*) state="neolithic"; ksrc="osf1";; # V[23].*) state="neolithic"; ksrc="osf1";; # V4.*) state="known"; ksrc="osf1";; # V[5-9]*) state="late"; ksrc="osf1";; # esac;; # FreeBSD) # makext="bsd"; # case $release in # 1.*) state="known"; ksrc="freebsd-old";; # 2.[01]*) state="known"; ksrc="freebsd-2.0";; # 2.2.[2-7]*) state="late"; ksrc="freebsd-2.0";; # 2.2.8*) state="known"; ksrc="freebsd-2.2.8";; # 3.[0-1]*) state="known"; ksrc="freebsd-3.0";; # esac;; # NeXTStep) # makext="NeXT"; # ksrc="NeXT"; # state="known";; # SINIX-?) # case $release in # 5.4[01]) state=known; ksrc=svr4; makext=svr4;; # 5.4[2-9]) state=late; ksrc=svr4; makext=svr4;; # esac;; # # Intel SVR4 systems come with a bug in the uname program. Unless # # your provider fixed the bug, or you get a fix for it, uname -S will # # overwrite the system name with the node name! # UNIX_SV|UNIX_System_V|`uname -n`) # case $release in # 4.0) state=known; ksrc=svr4; makext=svr4;; # 4.2) state=late; ksrc=svr4; makext=svr4;; # esac;; esac if [ -d "$ksrc" ]; then :; else state="notincluded" unset ksrc fi case $state in neolithic) echo "This is a newer release on an outdated OS ($system)." echo " This software may or may not work on this OS." echo " You may want to download an older version of PPP for this OS.";; ancient) echo "This is an old release of a supported OS ($system)." echo "This software cannot be used as-is on this system," echo "but you may be able to port it. Good luck!" exit;; early) echo "This is an old release of a supported OS ($system)." echo "This software should install and run on this system," echo "but it hasn't been tested.";; late) echo "This is a newer release of $system than is supported by" echo "this software. It may or may not work.";; unknown) echo "This software has not been ported to $system. Sorry.";; notincluded) echo "Support for $system has not been included" echo "in this distribution. Sorry.";; known) echo "Configuring for $system";; esac # Parse arguments while [ $# -gt 0 ]; do arg=$1 val= shift case $arg in *=*) val=`expr "x$arg" : 'x[^=]*=\(.*\)'` arg=`expr "x$arg" : 'x\([^=]*\)=.*'` ;; --prefix|--sysconf) if [ $# -eq 0 ]; then echo "error: the $arg argument requires a value" 1>&2 exit 1 fi val=$1 shift ;; esac case $arg in --prefix) DESTDIR=$val ;; --sysconfdir) SYSCONF=$val ;; esac done mkmkf() { rm -f $2 if [ -f $1 ]; then echo " $2 <= $1" sed -e "s,@DESTDIR@,$DESTDIR,g" -e "s,@SYSCONF@,$SYSCONF,g" $1 >$2 fi } if [ -d "$ksrc" ]; then echo "Creating Makefiles." mkmkf $ksrc/Makefile.top Makefile mkmkf $ksrc/Makedefs$compiletype Makedefs.com for dir in pppd pppstats chat pppdump pppd/plugins pppd/plugins/rp-pppoe \ pppd/plugins/radius pppd/plugins/pppoatm; do mkmkf $dir/Makefile.$makext $dir/Makefile done if [ "$archvariant" ]; then mkmkf $ksrc/Makefile.$makext$archvariant $ksrc/Makefile fi else echo "Unable to locate kernel source $ksrc" exit 1 fi