]> git.ozlabs.org Git - ppp.git/blobdiff - configure
Updated Solaris-related READMEs for the current code.
[ppp.git] / configure
index ceaba7aed4b66ca536940edbb93d7375a7cb2a95..2744f4e5617616b6a5bb7b38bb09a6e592220cd3 100755 (executable)
--- a/configure
+++ b/configure
 #!/bin/sh
-# $Id: configure,v 1.19 1999/09/17 04:20:10 paulus Exp $
+# $Id: configure,v 1.29 2002/09/07 05:15:25 carlsonj Exp $
 
-if [ -d /NextApps ]; then
-  system="NeXTStep"
-else
+#  if [ -d /NextApps ]; then
+#    system="NeXTStep"
+#  else
   system=`uname -s`
   release=`uname -r`
-fi
+  machine=`uname -p`
+  arch=`uname -m`
+#  fi
 state="unknown"
 
 case $system in
-  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;;
-  SunOS)
-    case $release in
-      [0-3]*)  state="ancient";;
-      4*)      state="known"; ksrc="sunos4"; makext="sunos4";;
-      5.[1-6]*)        state="known"; ksrc="svr4"; makext="sol2";;
-      5.[789]*)        state="known"; ksrc="svr4"; makext="sol2"; lp64="y";;
-    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;;
   Linux)
     makext="linux";
     ksrc="linux";
     state="known";;
-  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`)
+  SunOS)
     case $release in
-      4.0) state=known; ksrc=svr4; makext=svr4;;
-      4.2) state=late; ksrc=svr4; makext=svr4;;
-    esac;;
+#      [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 $arch in
+               sun4u)  archvariant='-64';;
+               *)      ;;
+             esac;;
+      5.[1-6]*)        state="known"; ksrc="solaris"; makext="sol2";;
+    esac
+    if [ -x /opt/SUNWspro/bin/cc ] &&
+       /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 [ "$arch" = "sun4u" ]; 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
@@ -82,7 +110,7 @@ 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 " 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)."
@@ -103,31 +131,28 @@ case $state in
     echo "in this distribution.  Sorry.";;
 esac
 
-orig_makext=$makext
-
 if [ -d "$ksrc" ]; then
   echo "Creating links to Makefiles."
   rm -f Makefile
   ln -s $ksrc/Makefile.top Makefile
   echo "  Makefile -> $ksrc/Makefile.top"
-  if [ $ksrc = svr4 ]; then
-    # Point to 64-bit Makefile extension
-    if [ $lp64 = y ]; then 
-      makext=$makext-64 
-    fi
-    rm -f $ksrc/Makefile
-    ln -s Makefile.$makext $ksrc/Makefile
-    echo "  $ksrc/Makefile -> Makefile.$makext"
-    # Restore extension
-    if [ $lp64 = y ]; then 
-      makext=$orig_makext 
-    fi
-  fi
-  for dir in pppd pppstats chat pppdump; do
+  rm -f Makedefs.com
+  ln -s $ksrc/Makedefs$compiletype Makedefs.com
+  echo "  $ksrc/Makedefs$compiletype -> Makedefs.com"
+  for dir in pppd pppstats chat pppdump pppd/plugins pppd/plugins/rp-pppoe pppd/plugins/radius; do
     rm -f $dir/Makefile
     if [ -f $dir/Makefile.$makext ]; then
       ln -s Makefile.$makext $dir/Makefile
       echo "  $dir/Makefile -> Makefile.$makext"
     fi
   done
+  if [ "$archvariant" ]; then
+    makext=$makext$archvariant
+    rm -f $ksrc/Makefile
+    ln -s Makefile.$makext $ksrc/Makefile
+    echo "  $ksrc/Makefile -> Makefile.$makext"
+  fi
+else
+  echo "Unable to locate kernel source $ksrc"
+  exit 1
 fi