--- sourceforge.net/trunk/rdesktop/configure 2002/09/24 05:14:14 187 +++ sourceforge.net/trunk/rdesktop/configure 2002/09/24 07:27:43 189 @@ -8,44 +8,11 @@ echo "# Generated by $0 $*" >Makeconf -# Choose gcc if available - -if `which gcc >/dev/null`; then - echo "CC = gcc" >>Makeconf -fi - - -# Find X installation - -xdirs="/usr/X11 /usr/X11R6 /usr/openwin /usr /usr/local/X11 /usr/local/X11R6 /usr/local" - -for dir in $xdirs; do - if [ -f $dir/include/X11/Xlib.h ]; then - xdir=$dir - break - fi -done - -if [ -z $xdir ]; then - echo "ERROR: could not find X installation" - echo "(searched for include/X11/Xlib.h in $xdirs)" - exit 1 -fi - -echo "X11DIR = $xdir" >> Makeconf - - -# Add platform-specific options - -case `uname -s` in - SunOS) - echo "LDFLAGS += -R$(X11DIR)/lib -lsocket -lnsl" >>Makeconf - ;; -esac - - # Process command line options +cflags= +ldflags= + for arg in $*; do optarg=`echo $arg | sed 's/[-a-z]*=//'` case $arg in @@ -65,17 +32,14 @@ echo "datadir = $optarg" >>Makeconf ;; --with-openssl*) - echo "CFLAGS += -DWITH_OPENSSL" >>Makeconf - echo "LDFLAGS += -lcrypto" >>Makeconf - echo "CRYPTOBJ =" >>Makeconf ;; --without-openssl*) ;; --with-debug) - echo "CFLAGS += -g -DWITH_DEBUG" >>Makeconf + cflags="$cflags -g -DWITH_DEBUG" ;; --with-debug-kbd) - echo "CFLAGS += -g -DWITH_DEBUG_KBD" >>Makeconf + cflags="$cflags -g -DWITH_DEBUG_KBD" ;; --without-debug*) ;; @@ -90,7 +54,6 @@ echo " --sharedir=SHAREDIR location for architecture-independent shared files [PREFIX/share/rdesktop]" echo echo "Build configuration:" - echo " --with-openssl use system OpenSSL libraries for crypto" echo " --with-debug enable protocol debugging output" echo " --with-debug-kbd enable debugging of keyboard handling" echo @@ -100,4 +63,87 @@ esac done + +# Platform-specific options + +need_runpath=no + +case `uname -s` in + SunOS) + ldflags="$ldflags -lsocket -lnsl" + need_runpath=yes + ;; +esac + + +# Find X installation + +xdirs="/usr /usr/X11R6 /usr/X11 /usr/openwin /usr/local /usr/local/X11R6 /usr/local/X11" + +for dir in $xdirs; do + if [ -f $dir/include/X11/Xlib.h ]; then + xdir=$dir + break + fi +done + +if [ -z "$xdir" ]; then + echo "ERROR: could not find X Window System headers" + echo "(searched for include/X11/Xlib.h in $xdirs)" + + # additional helpful information for Linux users + if [ -f /etc/redhat_release ]; then + echo You probably need to install the XFree86-devel package + elif [ -f /etc/debian_version ]; then + echo You probably need to install the xlibs-dev package + fi + exit 1 +fi + +if [ $xdir != "/usr" ]; then + cflags="$cflags -I$xdir/include" + ldflags="$ldflags -L$xdir/lib" + if [ $need_runpath = "yes" ]; then + ldflags="$ldflags -R$xdir/lib" + fi +fi + +ldflags="$ldflags -lX11" + + +# Find OpenSSL installation if available + +ssldirs="/usr /usr/openssl /usr/ssl /usr/local /usr/local/openssl /usr/local/ssl" + +for dir in $ssldirs; do + if [ -f $dir/include/openssl/rc4.h ]; then + ssldir=$dir + break + fi +done + +if [ -z "$ssldir" ]; then + echo "WARNING: could not find OpenSSL headers" + echo "(searched for include/openssl/rc4.h in $ssldirs)" + echo "Using in-tree crypto; installing OpenSSL is recommended." + echo +else + echo "CRYPTOBJ =" >>Makeconf + + if [ $ssldir != "/usr" ]; then + cflags="$cflags -I$ssldir/include" + ldflags="$ldflags -L$ssldir/lib" + if [ $need_runpath = "yes" ]; then + ldflags="$ldflags -R$ssldir/lib" + fi + fi + + cflags="$cflags -DWITH_OPENSSL" + ldflags="$ldflags -lcrypto" +fi + + +echo "CFLAGS += $cflags" >>Makeconf +echo "LDFLAGS += $ldflags" >>Makeconf + echo "configure complete - now run make"