--- /dev/null
+#!/bin/sh
+
+check_version()
+{
+check_lib_version dot ${PATH}
+if [ "$?" -eq "0" ]; then
+ #echo "The product ${PRODUCT} has been already installed on yours system"
+ return 0
+fi
+return 1
+}
+
+print_env()
+{
+cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
+#$DELIM ${PRODUCT_TYPE} $DELIM
+export PATH=\${INSTALL_ROOT}/${PRODUCT}/bin:\${PATH}
+export LD_LIBRARY_PATH=\${INSTALL_ROOT}/${PRODUCT}/lib/graphviz:\${LD_LIBRARY_PATH}
+##
+EOF
+(test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
+make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
+}
+
+# looks for the native product and collects it's environment (used by make_env())
+try_native(){
+check_version
+if [ $? -eq 0 ] ; then
+ dot="`find_in_path dot ${PATH}`"
+ dot=`cd ${dot}/..; pwd`
+ tmp="${dot}/bin ${dot}/bin \${PATH} ${PATH}";
+ path=`sort_path ${tmp}`
+ tmp="${dot}/lib/graphviz ${dot}/lib/graphviz \${LD_LIBRARY_PATH} ${LD_LIBRARY_PATH}";
+ ld_library_path=`sort_path ${tmp}`
+ cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
+#$DELIM ${PRODUCT_TYPE} $DELIM
+export PATH=${path}
+export LD_LIBRARY_PATH=${ld_library_path}
+##
+EOF
+ make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
+ return 0
+fi
+return 1;
+}
+
+try_preinstalled(){
+try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
+return $?
+}
+
+install_source()
+{
+make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
+source ${INSTALL_WORK}/$SHRC
+
+check_jb tar xfz ${SOURCE_DIR}/graphviz-1.9.tar.gz -C ${INSTALL_WORK}
+
+cd ${PRODUCT_WORK}
+makedir ${PRODUCT_DIR}
+check_job ${PRODUCT_DIR}/CONFIGURE.LOG configure --prefix=${PRODUCT_DIR} --with-tcl=$TCLHOME --disable-rpath
+GCC=`which gcc`
+cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
+used gcc=$GCC
+EOF
+check_job ${PRODUCT_DIR}/MAKE.LOG make
+check_job ${PRODUCT_DIR}/MAKEINSTALL.LOG make install
+
+rm -fr ${PRODUCT_WORK}
+print_env
+}
+
+install_binary()
+{
+make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
+source ${INSTALL_WORK}/$SHRC
+
+check_jb tar xfz ${SOURCE_DIR}/graphviz-1.9.tar.gz -C ${INSTALL_ROOT}
+
+print_env
+}
+
+export PROCEDURE=$1;
+export INSTALL_WORK=$2;
+export SOURCE_DIR=$3;
+export INSTALL_ROOT=$4;
+export PRODUCT_SEQUENCE=$5;
+if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="graphviz" ; fi
+export PRODUCT="graphviz-1.9"
+export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
+export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
+source ./common.sh
+$PROCEDURE
--- /dev/null
+#!/bin/sh
+
+check_version(){
+if [ -z "$QTDIR" ]; then
+ return 1
+fi
+check_lib_version libqt-mt.so.3.0.5 ${QTDIR}/lib
+if [ "$?" -eq "0" ] ; then
+ return 0
+fi
+return 1
+}
+
+print_env()
+{
+cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
+#$DELIM ${PRODUCT_TYPE} $DELIM
+export QTDIR=\${INSTALL_ROOT}/${PRODUCT}
+export PATH=\${QTDIR}/bin:\$PATH
+export LD_LIBRARY_PATH=\${QTDIR}/lib:\${LD_LIBRARY_PATH}
+##
+EOF
+(test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
+make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
+}
+
+# looks for the native product and collects it's environment (used by make_env())
+try_native(){
+qtdir="`find_in_path libqt-mt.so.3.0.5 ${LD_LIBRARY_PATH}`"
+if [ -z "${qtdir}" ] ; then
+ qtdir="`find_in_path libqt-mt.so.3.0.5 /usr/lib/qt-3.0.5`"
+fi
+if [ -n "${qtdir}" ] ; then
+ qtdir=`cd ${qtdir}/..; pwd`
+ moc="`find_in_path moc ${qtdir}/bin`"
+ uic="`find_in_path uic ${qtdir}/bin`"
+ if [ -n "${moc}" ] && [ -n "${uic}" ] ; then
+ tmp="\${QTDIR}/bin ${qtdir}/bin \${PATH} ${PATH}";
+ path=`sort_path ${tmp}`
+ tmp="\${QTDIR}/lib ${qtdir}/lib \${LD_LIBRARY_PATH} ${LD_LIBRARY_PATH}";
+ ld_library_path=`sort_path ${tmp}`
+ cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
+#$DELIM ${PRODUCT_TYPE} $DELIM
+export QTDIR=${qtdir}
+export PATH=${path}
+export LD_LIBRARY_PATH=${ld_library_path}
+##
+EOF
+ make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
+ return 0
+ fi
+fi
+return 1
+}
+
+try_preinstalled(){
+try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
+return $?
+}
+
+install_source()
+{
+make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
+source ${INSTALL_WORK}/$SHRC
+
+check_jb tar xfz ${SOURCE_DIR}/qt-x11-free-3.0.5.tar.gz -C ${INSTALL_ROOT}
+
+cd ${PRODUCT_DIR}
+sed -e "s%read acceptance%acceptance=yes%" configure > configurew
+cp -f configure configure-orig
+mv -f configurew configure
+chmod +x ./configure
+
+export QTDIR=${PRODUCT_DIR}
+
+QT_FLAGS="-release -thread -shared -qt-gif -platform linux-g++"
+### use system graphics libraries
+QT_FLAGS=$QT_FLAGS" -system-libpng -system-libjpeg -system-libmng"
+### link also with Mesa if it is previously installed
+if [ -n "$MESA_HOME" ]; then
+ QT_FLAGS=$QT_FLAGS" -I${MESA_HOME}/include/GL -L${MESA_HOME}/lib -L/usr/lib -lglide3"
+fi
+
+check_job ${PRODUCT_DIR}/CONFIGURE.LOG ./configure $QT_FLAGS
+
+cp -f Makefile Makefile-orig
+echo -e "/^all:\ns/sub-tutorial/\ns/sub-examples/\n/distclean clean uiclean mocclean:\n/cd tutorial && \$(MAKE) \$@\ns/cd tutorial && \$(MAKE) \$@/\n/cd examples && \$(MAKE) \$@\ns/cd examples && \$(MAKE) \$@/\nwq"| ed - Makefile 1>/dev/null
+rm -rf examples
+rm -rf tutorial
+GCC=`which gcc`
+cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
+used gcc=$GCC
+EOF
+check_job ${PRODUCT_DIR}/MAKE.LOG make
+check_job ${PRODUCT_DIR}/MAKECLEAN.LOG make clean
+
+print_env
+}
+
+install_binary()
+{
+make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
+source ${INSTALL_WORK}/$SHRC
+
+if [ -n "$MESA_HOME" ]; then
+ check_jb tar xfz ${SOURCE_DIR}/qt-x11-free-3.0.5-with-Mesa.tar.gz -C ${INSTALL_ROOT}
+else
+ check_jb tar xfz ${SOURCE_DIR}/qt-x11-free-3.0.5.tar.gz -C ${INSTALL_ROOT}
+fi
+
+print_env
+}
+
+export PROCEDURE=$1;
+export INSTALL_WORK=$2;
+export SOURCE_DIR=$3;
+export INSTALL_ROOT=$4;
+export PRODUCT_SEQUENCE=$5;
+if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="qt" ; fi
+export PRODUCT="qt-x11-free-3.0.5"
+export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
+export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
+source ./common.sh
+$PROCEDURE