]> mj.ucw.cz Git - libucw.git/blobdiff - build/installer
'make tests' should not display error messages when the tmp dir is empty
[libucw.git] / build / installer
index aff3b0d2a38e53b274244a23805fcfa51403dbbc..b5bf16f20f9b699d18733b52193cbc4b7097e6a2 100755 (executable)
@@ -2,33 +2,38 @@
 set -e
 DEST=`eval echo $1`
 echo "Installing to $DEST"
-if [ ! -d $DEST/cf ] ; then
-       echo "Creating $DEST and the whole directory hierarchy under it."
-       mkdir -p $DEST/{cf,db,index,log,tmp}
-fi
-echo "Installing binaries..."
-rm -rf $DEST/{bin,lib}
-mkdir -p $DEST/{bin,lib}
-cp -a run/bin/* $DEST/bin/
-cp -a run/lib/* $DEST/lib/
+for d in "" cf $SH_EXTRA_RUNDIRS ; do
+       if [ ! -d $DEST/$d ] ; then
+               echo "Creating $DEST/$d"
+               mkdir -p $DEST/$d
+       fi
+done
+for d in $SH_INSTALL_RUNDIRS ; do
+       echo "Installing to $DEST/$d"
+       rm -rf $DEST/$d
+       mkdir -p $DEST/$d
+       cp -aL run/$d/* $DEST/$d/
+done
 echo "Installing config files..."
-for a in cf/* ; do
-       if [ -f $a ] ; then
-               if [ ! -f $DEST/$a ] ; then
-                       echo "$a: new, installed"
-                       cp $a $DEST/$a
-               elif diff -u $DEST/$a $a ; then
-                       echo "$a: no differences"
+for a in $SH_CONFIGS ; do
+       if [ -f run/cf/$a ] ; then
+               if [ ! -f $DEST/cf/$a ] ; then
+                       echo "cf/$a: new, installed"
+                       cp run/cf/$a $DEST/cf/$a
+               elif [ $a = catalog-rules ] ; then
+                       echo "cf/$a: will be regenerated automatically"
+               elif diff -u $DEST/cf/$a run/cf/$a ; then
+                       echo "cf/$a: no differences"
                else
-                       echo -n "$a differs, replace it [Yn]? "
+                       echo -n "cf/$a differs, replace it [Yn]? "
                        read x
-                       if [ -z "$x" -o "$x" == "y" -o "$x" == "Y" ] ; then
-                               echo "$a: replacing and keeping the old version as $a.old"
-                               mv $DEST/$a $DEST/$a.old
-                               cp $a $DEST/$a
+                       if [ -z "$x" -o "$x" = "y" -o "$x" = "Y" ] ; then
+                               echo "cf/$a: replacing and keeping the old version as cf/$a.old"
+                               mv $DEST/cf/$a $DEST/cf/$a.old
+                               cp run/cf/$a $DEST/cf/$a
                        else
-                               echo "$a: installing the new version as $a.dist"
-                               cp $a $DEST/$a.dist
+                               echo "cf/$a: installing the new version as cf/$a.dist"
+                               cp run/cf/$a $DEST/cf/$a.dist
                        fi
                fi
        fi