#!/bin/sh # This scripts work as following: # (1) cp current xf86site.def (it may be created by imake-4 ports) # to ${WRKDIR}/xc/config/cf. # this means this ports use imake-4's config defaultly. # (2) Generate temporal config for compiling. # Some configs, such as `ForceNormalLib', `FreeBSDBuildXprog', are # used for compiling this ports localy. so these configs will be generated # this scripts. these configs will be stored to `host.def' file. # but this host.def will never install. use local only. ORIGDEF=$PREFIX/lib/X11/config/xf86site.def DESTDEF=$WRKDIR/xc/config/cf/xf86site.def ORIGHOSTDEF=$PREFIX/lib/X11/config/host.def LOCALDEF=$WRKDIR/.config HOSTDEF=$WRKDIR/xc/config/cf/host.def configure () { # Use original host.def as initial config file rm -f $LOCALDEF grep -v '#define.*ProjectRoot' $ORIGHOSTDEF >> $LOCALDEF echo "#define ProjectRoot $PREFIX" >> $LOCALDEF # It's good for FreeBSD ports/packages system. echo "#define NothingOutsideProjectRoot YES" >> $LOCALDEF echo "#define InstallXserverSetUID NO" >> $LOCALDEF # User Config. if [ X$HasSecureRPC != XDEFAULT -a X$HasSecureRPC != X ]; then echo "#define HasSecureRPC $HasSecureRPC" >> $LOCALDEF fi if [ X$HasPam != XDEFAULT -a X$HasPam != X ]; then echo "#define HasPam $HasPam" >> $LOCALDEF fi if [ X$InstallXdmConfig != XDEFAULT -a X$InstallXdmConfig != X ]; then echo "#define InstallXdmConfig $InstallXdmConfig" >> $LOCALDEF fi if [ X$InstallXinitConfig != XDEFAULT -a X$InstallXinitConfig != X ]; then echo "#define InstallXinitConfig $InstallXinitConfig" >> $LOCALDEF fi if [ X$InstallAppDefFiles != XDEFAULT -a X$InstallAppDefFiles != X ]; then echo "#define InstallAppDefFiles $InstallAppDefFiles" >> $LOCALDEF fi if [ ! -d /sys -a ! -d /usr/src/sys ]; then echo "#define BuildXF86DRI NO" >> $LOCALDEF fi # disable some configs: there are not used this ports for i in \ InstallFSConfig \ BuildServer \ BuildFontServer \ BuildFonts \ Build75DpiFonts \ Build100DpiFonts \ BuildSpeedoFonts \ BuildType1Fonts \ BuildCIDFonts \ BuildCyrillicFonts \ BuildLatin2Fonts \ LibHeaders \ LibInstall \ ForceNormalLib \ ModInstall \ XTrueTypeInstallCConvHeaders do \ echo "#define $i NO" >> $LOCALDEF done echo "#define LibInstallBuild YES" >> $LOCALDEF echo "#define FreeBSDBuildXlib NO" >> $LOCALDEF echo "#define FreeBSDBuildXbin YES" >> $LOCALDEF # Check Wraphelp.c if [ $HasXdmAuth = DEFAULT ]; then HasXdmAuth=$(awk '/^#define.*HasXdmAuth/ {print $3}' $ORIGDEF|tail -1) fi cpwh=NO if [ $HasXdmAuth = YES ]; then WH=$WRKDIR/xc/lib/Xdmcp/Wraphelp.c if [ -f $WH ] ; then cpwh=SOURCE elif [ -f $DISTDIR/xc/Wraphelp.c ] ; then cpwh=$DISTDIR/xc/Wraphelp.c else echo "==> You must fetch USA-legal Wraphelp.c manually" echo "==> and put it to ${DISTDIR}/xc/." exit 1 fi if [ X$cpwh != XNO -a X$cpwh != XSOURCE ]; then tr -d '\r' < $cpwh > $WH fi fi # Copy ORIGDEF to DESTDEF rm -f $DESTDEF grep -v '#define.*HasXdmAuth' $ORIGDEF >> $DESTDEF if [ $cpwh = NO ] ; then echo "#define HasXdmAuth NO" >> $DESTDEF else echo "#define HasXdmAuth YES" >> $DESTDEF fi # copy generated config to host.def cp -f $LOCALDEF $HOSTDEF } cp ${X11BASE}/lib/X11/config/version.def ${WRKSRC}/config/cf configure exit 0