-# X-Window
-if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
- ipkg_ac ${FREETYPE}
- ipkg_cust ${FONTCONFIG} cis-fontconfig
- ipkg_cust ${XFREE86} cis-xfree86
- source /etc/profile
-
- ipkg_cust ${T1LIB} cis-t1lib
- ipkg_cust ${TK} cis-tk
-
- # Re-installing python now that tk is present???
- ipkg_ac ${PYTHON} "--enable-shared"
-
- ipkg_cust ${WINDOWMAKER} cis-windowmaker
- ipkg_ac ${WINDOWMAKER_EXTRA}
-
- ipkg_ac ${LESSTIF} "--disable-debug --enable-production --with-xdnd --disable-build-tests"
-
- # Gtk
- ipkg_ac ${GTK_DOC}
- ipkg_ac ${GLIB}
- ipkg_ac ${PIXMAN}
- ipkg_ac ${GLITZ}
- ipkg_ac ${CAIRO} "--enable-glitz"
- ipkg_ac ${PANGO}
- ipkg_ac ${ATK}
- ipkg_ac ${GTK} "--without-libjasper"
-
- ipkg_ac ${GTK_ENGINES}
- ipkg_ac ${PYGOBJECT}
- ipkg_ac ${PYGTK}
- ipkg_ac ${LIBSIGCPP}
- ipkg_ac ${GC}
- ipkg_ac ${GLIBMM}
- ipkg_ac ${CAIROMM}
- ipkg_ac ${GTKMM}
-
- ipkg_cust ${EMACS} cis-emacs
-
- ipkg_ac ${HVCLOCK}
- ipkg_ac ${WMNOTIFY}
-
- # Needed by GNOME-2
- ipkg_ac ${DESKTOP_FILE_UTILS}
- ipkg_ac ${SHARED_MIME_INFO}
- ipkg_ac ${STARTUP_NOTIFICATION}
- ipkg_ac ${LIBWNCK}
- ipkg_ac ${LIBXKLAVIER}
- ipkg_ac ${LIBGLADE}
- ipkg_ac ${LIBSOUP}
- ipkg_ac ${LIBIDL}
-fi
-
-ipkg_ac ${HELP2MAN}
-ipkg_ac ${INTLTOOL}
-ipkg_ac ${GSL}
-ipkg_cust ${CUPS} cis-cups
-ipkg_cust ${SPLIX} cis-splix # Drivers Samsung pour CUPS
-ipkg_cust ${ESPGS} cis-espgs
-
-ipkg_cust ${LIBBOOST} cis-boost
-
-if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
- ipkg_cust ${LIBUSB} cis-libusb
- ipkg_ac ${LIBGPHOTO2}
- ipkg_ac ${IMAGE_MAGICK} "--with-modules"
- ipkg_ac ${POPPLER} "--enable-xpdf-headers --enable-zlib"
- ipkg_ac ${LIBRSVG} "--disable-gtk-doc --disable-mozilla-plugin"
- ipkg_ac ${BABL}
- ipkg_ac ${GEGL}
- ipkg_ac ${GIMP} "--disable-print"
- ipkg_ac_nb ${GUTENPRINT}
- ipkg_ac ${INKSCAPE} "CFLAGS=\"-DPOPPLER_NEW_GFXFONT\""
-fi
-
-ipkg_cust ${CDRTOOLS} cis-cdrtools
-ipkg_cust ${DVDRWTOOLS} cis-dvd-rw-tools
-ipkg_ac ${LIBDVDCSS}
-ipkg_ac ${LIBDVDREAD} "--with-libdvdcss"
-ipkg_cust ${DVDFS} cis-dvdfs
-
-if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
- ipkg_cust ${TETEX_SRC} cis-tetex
- ipkg_cust ${JADETEX} cis-jadetex
-fi
-
-if [ "x${SANE_SUPPORT}" = "xyes" ]; then
- ipkg_cust ${SANE_BACKENDS} cis-sane-backends
- ipkg_cust ${XSANE} cis-xsane
-fi
-
-# Needed by Tango
-ipkg_pm ${PERL_MOD_XML_SIMPLE}
-ipkg_pm ${PERL_MOD_PARSE_REDESCENT}
-
-ipkg_ac ${ICON_NAMING_UTILS}
-ipkg_ac ${TANGO_ICON_THEME}
-ipkg_ac ${TANGO_ICON_THEME_EXTRAS}
-
-if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
- # Audio
- if [ "x${SOUND_CARD}" = "xyes" ]; then
- # Needed by some packages, mostly audio applications.
- ipkg_ac ${LIBOIL}
-
- # ALSA
- ipkg_cust ${ALSA_LIB} cis-alsa-lib
- ipkg_cust ${ALSA_UTILS} cis-alsa-utils
- ipkg_ac ${ALSA_OSS}
-
- # Audio raw utilities
- ipkg_ac ${LIBSAMPLERATE}
-
- # Audio file formats
- ipkg_ac ${LIBOGG}
- ipkg_ac ${LIBVORBIS}
- ipkg_ac_nb ${FLAC}
- ipkg_ac ${LAME}
- ipkg_ac ${LIBA52} "--enable-shared"
- ipkg_cust ${LIBID3TAG} cis-libid3tag
- ipkg_cust ${LIBMAD} cis-libmad
-
- ipkg_ac_nb ${LIBFAAC}
- ipkg_ac_nb ${LIBFAAD2}
- ipkg_ac ${LIBTHEORA}
- ipkg_cust ${XVIDCORE} cis-xvidcore
-
- # Audio libraries
- ipkg_ac_nb ${AUDIOFILE}
- ipkg_ac ${PORTAUDIO}
- ipkg_ac ${LIBSNDFILE}
-
- # Audio servers
- ipkg_ac ${ESOUND}
- ipkg_ac ${SPEEX}
- ipkg_cust ${PULSEAUDIO} cis-pulseaudio
- ipkg_ac ${JACK} "--disable-portaudio"
-
- ipkg_ac ${ALSA_PLUGINS} # Depends on pulseaudio
- ipkg_ac ${VORBIS_TOOLS}
-
- # Audio applications
- ipkg_ac_nb ${GRIP} "--disable-id3"
- ipkg_ac_nb ${CDRDAO}
- ipkg_ac ${SWEEP} "--enable-pulseaudio"
- ipkg_ac ${EASYTAG}
- ipkg_ac_nb ${LILYPOND}
-
- ipkg_ac_nb ${FFMPEG} "--enable-shared --enable-pthreads --enable-gpl --enable-nonfree --disable-ffplay \
- --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libtheora \
- --enable-libvorbis --enable-libxvid"
- fi
-
- ipkg_ac ${SYLPHEED} "--enable-ssl --enable-ldap"
- ipkg_cust ${NSS} cis-nss
- ipkg_cust ${FIREFOX} cis-firefox
-
- # Plugins for Firefox
- ipkg_cust ${JAVA} cis-java
- ipkg_cust ${AGG} cis-agg
- ipkg_cust ${GNASH} cis-gnash
-fi
-
-ipkg_cust ${DBUS} cis-dbus
-ipkg_ac ${DBUS_GLIB} "--disable-tests --disable-dependency-tracking --disable-xml-docs --disable-doxygen-docs"
+export XORG_PREFIX=/usr
+export XORG_CONFIG="\
+ --mandir=${XORG_PREFIX}/share/man \
+ --localstatedir=/var"
+
+LFS_PKG_DIR_ORIG=${LFS_PKG_DIR}
+
+# 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