+# Arg #1: module name and version
+# Arg #2: subdirectory
+# Arg #3: optional configure arguments
+ipkg_xorg()
+{
+ local MODULE=${1}
+ local SUBDIR=${2}
+ shift 2
+ local CONFIGURE_OPTS=${*}
+
+ LFS_PKG_DIR=${LFS_PKG_DIR_ORIG}/${SUBDIR}
+ ipkg_ac ${MODULE} ${XORG_CONFIG} ${CONFIGURE_OPTS}
+ LFS_PKG_DIR=${LFS_PKG_DIR_ORIG}
+}
+
+# Install all submodules in a module
+#
+# Arg #1: module name and version
+# Arg #2: optional configure arguments
+install_xorg_modules()
+{
+ local MODULE=${1}
+ shift
+ local CONFIGURE_OPTS=${*}
+
+ local MODULE_NAME=$(get_pkg_name ${MODULE})
+
+ local MY_XORG_CONFIG
+
+ for package in $(grep -v '^#' ${LFS_PKG_DIR}/${MODULE_NAME}/${MODULE}.wget); do
+ SUBMOD="$(echo ${package} | sed 's!\.tar\.bz2$!!')"
+
+ # Special configure options for specific packages
+ case ${SUBMOD} in
+ libXfont-[0-9]* )
+ MY_XORG_CONFIG="--disable-devel-docs"
+ ;;
+ libX11-[0-9]* )
+ MY_XORG_CONFIG="--without-xcb"
+ ;;
+ libXt-[0-9]* )
+ MY_XORG_CONFIG="--with-appdefaultdir=/etc/X11/app-defaults"
+ ;;
+ xinit-[0-9]* )
+ MY_XORG_CONFIG="--with-xinitdir=/etc/X11/app-defautls"
+ ;;
+ esac
+
+ ipkg_xorg ${SUBMOD} ${MODULE_NAME} ${MY_XORG_CONFIG} ${CONFIGURE_OPTS}
+ done
+}
+
+install_xorg_modules ${XORG_PROTO}
+install_xorg_modules ${XORG_UTIL}
+ipkg_xorg ${LIBXAU} "lib"
+ipkg_xorg ${LIBXDMCP} "lib"
+install_xorg_modules ${XORG_LIB}
+ipkg_cust ${LESSTIF} cis-lesstif \
+ --sysconfdir=/etc/X11 \
+ --disable-debug \
+ --disable-build-tests \
+ --enable-production \
+ --with-xdnd \
+ --x-includes=$XORG_PREFIX/include \
+ --x-libraries=$XORG_PREFIX/lib
+ipkg_xorg ${XBITMAPS} "data"
+ipkg_ac ${LIBPTHREAD_STUBS}
+ipkg_ac ${LIBDRM} --enable-udev
+ipkg_cust ${MESALIB} cis-mesalib --enable-motif
+install_xorg_modules ${XORG_APP}
+ipkg_xorg ${XCURSOR_THEMES} "data"
+install_xorg_modules ${XORG_FONT}
+rscr once "Configuring fonts" configure-fonts
+ipkg_ac ${XKEYBOARD_CONFIG} ${XORG_CONFIG} --with-xkb-rules-symlink=xorg
+ipkg_xorg ${LUIT} "app"
+ipkg_ac ${PIXMAN}
+ipkg_ac ${LIBFFI}
+ipkg_cust ${DBUS} cis-dbus
+ipkg_cust ${GLIB} cis-glib --with-pcre=system
+ipkg_ac ${GOBJECT_INSTROSPECTION}
+ipkg_ac ${DBUS_GLIB} \
+ --disable-tests \
+ --disable-dependency-tracking \
+ --libexecdir=/usr/lib/dbus-1.0/dbus-1
+ipkg_ac ${EGGDBUS}
+ipkg_cust ${POLKIT} cis-polkit
+ipkg_ac_nb ${CONSOLEKIT} \
+ --libexecdir=/usr/lib/ConsoleKit \
+ --localstatedir=/var \
+ --enable-pam-module
+ipkg_cust ${POLICYKIT} cis-policykit
+ipkg_cust ${HAL} cis-hal
+ipkg_ac ${HAL_INFO}
+
+ipkg_xorg ${XORG_SERVER} "xserver" "\
+ --with-module-dir=${XORG_PREFIX}/lib/X11/modules \
+ --with-xkb-output=/var/lib/xkb \
+ --enable-install-setuid \
+ --disable-config-hal"
+
+# newport, vmware, and xgixp drivers cause Xorg -configure to hang
+# To fix this problem, comment out these drivers in both driver-7.5-2.md5 and driver-7.5-2.wget.
+install_xorg_modules ${XORG_DRIVER} --with-xorg-module-dir=${XORG_PREFIX}/lib/X11/modules
+
+ipkg_xorg ${XDM} "app"
+
+rscr once "Configuring X.org" configure-xorg
+
+ipkg_cust ${XTERM} cis-xterm ${XORG_CONFIG}
+
+ipkg_cust ${T1LIB} cis-t1lib
+
+ipkg_cust ${TK} cis-tk