{
cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
#$DELIM ${PRODUCT_TYPE} $DELIM
-export TCLHOME=\${INSTALL_ROOT}/${PRODUCT}
+export TCLHOME=\${INSTALL_ROOT}/${SINGLE_DIR:-${PRODUCT}}
export PATH=\${TCLHOME}/bin:\${PATH}
export LD_LIBRARY_PATH=\${TCLHOME}/lib:\${LD_LIBRARY_PATH}
export TCLLIBPATH="\${TCLHOME}/lib \${TCLHOME}/lib/tcl${VERSION} \${TCLHOME}/lib/tk${VERSION} \${TCLLIBPATH}"
# nothing to do
##
EOF
-(test -w ${PRODUCT_DIR}_SRC && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}_src.sh ${PRODUCT_DIR}_SRC)
+(test -w ${PRODUCT_SRC_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}_src.sh ${PRODUCT_SRC_DIR})
make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}"
}
try_preinstalled(){
try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}
-try_existing ${PRODUCT_DIR}_SRC ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}_src
+try_existing ${PRODUCT_SRC_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}_src
return $?
}
make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}_src
source ${INSTALL_WORK}/$SHRC
-mkdir -p ${PRODUCT_DIR}_SRC
+mkdir -p ${PRODUCT_SRC_DIR}
-check_jb tar xfz ${SOURCE_DIR}/tcl8.4.14.tar.gz -C ${PRODUCT_DIR}_SRC
-check_jb tar xfz ${SOURCE_DIR}/tk8.4.14.tar.gz -C ${PRODUCT_DIR}_SRC
-check_jb tar xfz ${SOURCE_DIR}/tclx8.3.5.tar.gz -C ${PRODUCT_DIR}_SRC
+check_jb tar xfz ${SOURCE_DIR}/tcl8.4.14.tar.gz -C ${PRODUCT_SRC_DIR}
+check_jb tar xfz ${SOURCE_DIR}/tk8.4.14.tar.gz -C ${PRODUCT_SRC_DIR}
+check_jb tar xfz ${SOURCE_DIR}/tclx8.3.5.tar.gz -C ${PRODUCT_SRC_DIR}
# to generate environment scripts
try_preinstalled
install_source
# build sources
-makedir ${PRODUCT_DIR}
+test -z ${SINGLE_DIR} && makedir ${PRODUCT_DIR} || mkdir -p ${PRODUCT_DIR}
-cd ${PRODUCT_DIR}_SRC/tcl8.4.14_SRC/unix
+cd ${PRODUCT_SRC_DIR}/tcl8.4.14_SRC/unix
cat >> ${PRODUCT_DIR}/CONFIGURE.LOG <<EOF
-------------------
Configuring tcl...
(cd ${PRODUCT_DIR}/lib; ln -fs libtcl8.4.so libtcl.so)
(cd ${PRODUCT_DIR}/lib; ln -fs libtclstub8.4.a libtclstub.a)
-cd ${PRODUCT_DIR}_SRC/tk8.4.14_SRC/unix
+cd ${PRODUCT_SRC_DIR}/tk8.4.14_SRC/unix
cat >> ${PRODUCT_DIR}/CONFIGURE.LOG <<EOF
-------------------
Configuring tk...
(cd ${PRODUCT_DIR}/lib; ln -fs libtkstub8.4.a libtkstub.a)
#vsr: patch tclx 8.3.5 to make it compiliable on Mandriva 2006.0
-cd ${PRODUCT_DIR}_SRC/tclx8.3.5_SRC/unix
+cd ${PRODUCT_SRC_DIR}/tclx8.3.5_SRC/unix
mv Common.mk.in Common.mk.in.orig
sed -e 's/@DEFS@/-DSTDC_HEADERS=1 -DNDEBUG=1 -DRETSIGTYPE=void/g' Common.mk.in.orig > Common.mk.in
-cd ${PRODUCT_DIR}_SRC/tclx8.3.5_SRC/tcl/unix
+cd ${PRODUCT_SRC_DIR}/tclx8.3.5_SRC/tcl/unix
mv tclxConfig.sh.in tclxConfig.sh.in.orig
sed -e 's/@DEFS@/ -DSTDC_HEADERS=1 -DNDEBUG=1 -DRETSIGTYPE=void /g' tclxConfig.sh.in.orig > tclxConfig.sh.in
-cd ${PRODUCT_DIR}_SRC/tclx8.3.5_SRC/tk/unix
+cd ${PRODUCT_SRC_DIR}/tclx8.3.5_SRC/tk/unix
mv tkxConfig.sh.in tkxConfig.sh.in.orig
sed -e 's/@DEFS@/ -DSTDC_HEADERS=1 -DNDEBUG=1 -DRETSIGTYPE=void /g' tkxConfig.sh.in.orig > tkxConfig.sh.in
-cd ${PRODUCT_DIR}_SRC/tclx8.3.5_SRC/unix
+cd ${PRODUCT_SRC_DIR}/tclx8.3.5_SRC/unix
#VRV - bug in a tclx configure
chmod +w ./configure
echo -e '/test "$no_create" = yes || ${CONFIG_SHELL-\/bin\/sh} $CONFIG_STATUS || exit 1\ns/test "$no_create" = yes || ${CONFIG_SHELL-\/bin\/sh} $CONFIG_STATUS || exit 1/test "$no_create" = yes || ${CONFIG_SHELL-\/bin\/sh} $CONFIG_STATUS || exit 0\nwq' | ed - configure
(cd ${PRODUCT_DIR}/lib; ln -fs libtkx8.3.so libtkx.so)
(cd ${PRODUCT_DIR}/lib; ln -fs libtkx8.3.a libtkx.a)
-#du -sk ${PRODUCT_DIR}_SRC > ${PRODUCT_DIR}/size.log
+#du -sk ${PRODUCT_SRC_DIR} > ${PRODUCT_DIR}/size.log
cd ${PRODUCT_DIR}
# remove sources and temporary files after building
if [ ${REMOVE_SRC_TMP} == "TRUE" ] ; then
- test -d ${PRODUCT_DIR}_SRC && rm -fr ${PRODUCT_DIR}_SRC
+ test -d ${PRODUCT_SRC_DIR} && rm -fr ${PRODUCT_SRC_DIR}
fi
# to generate environment scripts
make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}
source ${INSTALL_WORK}/$SHRC
-check_jb tar xfz ${SOURCE_DIR}/${PRODUCT}.tar.gz -C ${INSTALL_ROOT}
+# create a product directory
+test -z ${SINGLE_DIR} && makedir ${PRODUCT_DIR} || mkdir -p ${PRODUCT_DIR}
+
+check_jb tar xfz ${SOURCE_DIR}/${PRODUCT}.tar.gz -C ${PRODUCT_DIR}
# overriding installation path
cd ${PRODUCT_DIR}/lib
export INSTALL_PRODUCTS=$7;
shift
REMOVE_SRC_TMP=$8;
+test $# == 10 && shift && SINGLE_DIR=$9
export PRODUCT="tcltk-8.4.14"
-export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
+export PRODUCT_DIR=${INSTALL_ROOT}/${SINGLE_DIR:-${PRODUCT}}
export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
+export PRODUCT_SRC_DIR=${INSTALL_ROOT}/${PRODUCT}_SRC
source ./common.sh
$PROCEDURE