#!/bin/sh answset () { if [ -n "$NO_INPUT" ]; then echo "$2 [$1]" answ=$1 else answ=X fi } yesno () { answset $1 "$2" while [ $answ = X ]; do echo -n "$2 [$1] " read answ if [ X$answ = X ]; then answ=$1; fi case $answ in y|yes|Y|YES) answ=YES;; n|no|N|NO) answ=NO;; *) echo invalid answer answ=X ;; esac done } F=$WRKDIR/.config configure () { rm -f $F # set ProjectRoot to be ${PREFIX} echo "#define ProjectRoot ${PREFIX}" >>$F # XXX the build of XF86Setup us broken in 4.0.2 (undefined reference to xf86OpenConfigFile) if false; then # Tk detection tkversion= for v in 42 80 81 82 83 42jp 80jp; do if [ -f /usr/local/lib/libtk$v.a ]; then tkversion=$v case $tkversion in 42) tclversion=76 tclLversion=7.6 tkLversion=4.2 ;; 80) tclversion=80 tclLversion=8.0 tkLversion=8.0 ;; 42jp) tclversion=76jp tclLversion=7.6jp tkLversion=4.2jp ;; 80jp) tclversion=80jp tclLversion=8.0jp tkLversion=8.0jp ;; 81) tclversion=81 tclLversion=8.1 tkLversion=8.1 ;; 82) tclversion=82 tclLversion=8.2 tkLversion=8.2 ;; 83) tclversion=83 tclLversion=8.3 tkLversion=8.3 ;; esac fi done if [ X$tkversion != X ]; then case $tkversion in *jp) echo "Using Japanized tk-$tkLversion" if [ X"${MACHINE}" = X"pc98" ]; then echo "#define HasJpTk YES" >>$F echo "#define JpTkLibDir /usr/local/lib" >>$F echo "#define JpTkIncDir /usr/local/include/tk$tkLversion" >>$F echo "#define JpTkLibName tk$tkversion" >>$F echo "#define HasJpTcl YES" >>$F echo "#define JpTclLibDir /usr/local/lib" >>$F echo "#define JpTclIncDir /usr/local/include/tcl$tclLversion" >>$F echo "#define JpTclLibName tcl$tclversion" >>$F else echo "#define HasTk YES" >>$F echo "#define TkLibDir /usr/local/lib" >>$F echo "#define TkIncDir /usr/local/include/tk$tkLversion" >>$F echo "#define TkLibName tk$tkversion" >>$F echo "#define HasTcl YES" >>$F echo "#define TclLibDir /usr/local/lib" >>$F echo "#define TclIncDir /usr/local/include/tcl$tclLversion" >>$F echo "#define TclLibName tcl$tclversion" >>$F fi ;; *) echo "Using tk-$tkLversion" echo "#define HasTk YES" >>$F echo "#define TkLibDir /usr/local/lib" >>$F echo "#define TkIncDir /usr/local/include/tk$tkLversion" >>$F echo "#define TkLibName tk$tkversion" >>$F echo "#define HasTcl YES" >>$F echo "#define TclLibDir /usr/local/lib" >>$F echo "#define TclIncDir /usr/local/include/tcl$tclLversion" >>$F echo "#define TclLibName tcl$tclversion" >>$F ;; esac echo "#define BuildXF86Setup YES" >>$F else cat <> $F <> $F yesno $XINITDEFAULT "Install xinit config?" echo "#define InstallXinitConfig $answ" >> $F yesno YES "Do you want to include support for the FontServer?" echo "#define BuildFontServer $answ" >>$F if [ $answ = YES ]; then yesno $XFSDEFAULT "Install xfs config?" echo "#define InstallFSConfig $answ" >> $F else echo "#define InstallFSConfig NO" >> $F fi cat <<'END' Do you want to Build Fonts (Usually you only want to build and install fonts once, if this is a first time install you will want to build the fonts) END yesno YES "Build fonts?" echo "#define BuildFonts $answ" >> $F if [ $answ = YES ]; then yesno YES "Build/install the 75dpi fonts?" echo "#define Build75DpiFonts $answ" >> $F yesno YES "Build/install the 100dpi fonts?" echo "#define Build100DpiFonts $answ" >> $F yesno YES "Build/install the Speedo fonts?" echo "#define BuildSpeedoFonts $answ" >> $F yesno YES "Build/install the Type1 fonts?" echo "#define BuildType1Fonts $answ" >> $F yesno YES "Build/install the CID fonts?" echo "#define BuildCIDFonts $answ" >> $F yesno YES "Build/install the Cyrillic fonts?" echo "#define BuildCyrillicFonts $answ" >> $F yesno YES "Build/install the Latin2 fonts?" echo "#define BuildLatin2Fonts $answ" >> $F fi yesno YES "Build the servers with Extended input devices?" if [ $answ = NO ]; then echo "#define XInputDrivers mouse" >> $F else echo "#define XInputDrivers mouse dynapro elo2300 elographics magellan microtouch \ mutouch spaceorb wacom void" >> $F # XXX broken in 3.9.18 # if [ X${MACHINE} != X"alpha" ]; then # echo "#define JoystickSupport YES" >> $F # fi fi yesno YES "Build PEX?" echo "#define BuildPexExt $answ" >> $F yesno YES "Build Xinerama?" echo "#define BuildXinerama $answ" >> $F yesno YES "Build XIE?" echo "#define BuildXIE $answ" >> $F echo # XXX We may not want to default this to 'YES' if there are any app-default # files installed yesno YES "Install application defaults files?" echo "#define InstallAppDefFiles $answ" >> $F yesno YES "Build static libraries in addition to shared libraries?" echo "#define ForceNormalLib $answ" >> $F if [ ${OSVERSION} -ge 300000 ]; then cat <<'END' FreeBSD-3.x has support for Secure RPC. While this scheme is not used for general purpose encryption, some countries restrict the use of strong cryptography. END yesno YES "Build with Secure RPC?" echo "#define HasSecureRPC $answ" >> $F fi cat <<'END' MIT supplies an authentication mechanism that relies upon DES, this is called XDM-AUTHORIZATION-1. Source code for this authentication mechanism may not be exported from the United States, however, there are compatible replacements for this mechanism available elsewhere. Also, while this scheme is not used for general purpose encryption, some countries restrict the use of strong cryptography. If you have aquired a copy of "Wraphelp.c" and it currently resides in the same location as the XFree86 source or in the ports "files" subdirectory, it will be copied into the right place in the X11 source distribution and support for this feature will be enabled if you answer YES to the following question. If you do not have a copy of this file, even if you answer YES to this question, support will not be enabled. If you wish to change this later, the option controling this is contained the file xc/config/cf/xf86site.def. END yesno YES "Do you want to enable XDM-AUTHORIZATION-1 support?" cpwh=NO if [ $answ = YES ]; then WH=$WRKDIR/xc/lib/Xdmcp/Wraphelp.c if [ -f $WH ] ; then echo "==> $WH found in source distribution." elif [ -f $DISTDIR/xc/Wraphelp.c ] ; then echo "==> Wraphelp.c found in DISTDIR directory, copying to source tree." cpwh=$DISTDIR/xc/Wraphelp.c elif [ -f $FILESDIR/Wraphelp.c ] ; then echo "==> Wraphelp.c found in files directory, copying to source tree." cpwh=$FILESDIR/Wraphelp.c else echo "==> Wraphelp.c not found, DES support NOT enabled." cpwh=NO fi fi if [ $cpwh != NO ]; then echo "#define HasXdmAuth $answ" >> $F fi echo yesno YES "Do you want to compile with PAM support?" echo "#define HasPam $answ" >> $F echo "#define Freetype2Dir $LOCALBASE" >> $F } configure if [ X$cpwh != XNO ]; then tr -d '\r' < $cpwh > $WH fi cat $F >> $WRKDIR/xc/config/cf/xf86site.def exit 0