fontsrv: only build when the pieces are there
diff --git a/INSTALL b/INSTALL
index 1ce9bd0..a0e208e 100755
--- a/INSTALL
+++ b/INSTALL
@@ -89,6 +89,21 @@
 	rm -f ./a.out
 fi
 
+if [ `uname` != Darwin ]; then
+	# Determine whether fontsrv X11 files are available.
+	rm -f a.out
+	gcc -o a.out -c -Iinclude -I/usr/include -I/usr/include/freetype2 src/cmd/fontsrv/x11.c >/dev/null 2>&1
+	if [ -f a.out ]; then
+		echo "	fontsrv dependencies found."
+		echo "FONTSRV=fontsrv" >>$PLAN9/config
+	else
+		echo "	fontsrv dependencies not found."
+		echo "FONTSRV=" >>$PLAN9/config
+		rm -f bin/fontsrv
+	fi
+	rm -f a.out
+fi
+
 if [ -f LOCAL.config ]; then
 	echo Using LOCAL.config options:
 	sed 's/^/	/' LOCAL.config
diff --git a/src/cmd/mkfile b/src/cmd/mkfile
index 9541f5c..d256303 100644
--- a/src/cmd/mkfile
+++ b/src/cmd/mkfile
@@ -4,8 +4,8 @@
 
 <$PLAN9/src/mkmany
 
-BUGGERED='CVS|faces|factotum|lp|ip|mailfs|upas|vncv|mnihongo|mpm|index|u9fs|secstore|smugfs|snarfer'
-DIRS=lex `ls -l |sed -n 's/^d.* //p' |egrep -v "^($BUGGERED)$"|egrep -v '^lex$'`
+BUGGERED='CVS|faces|factotum|fontsrv|lp|ip|mailfs|upas|vncv|mnihongo|mpm|index|u9fs|secstore|smugfs|snarfer'
+DIRS=lex `ls -l |sed -n 's/^d.* //p' |egrep -v "^($BUGGERED)$"|egrep -v '^lex$'` $FONTSRV
 
 <$PLAN9/src/mkdirs