#!/bin/sh
#*---------------------------------------------------------------------*/
#*    serrano/bigloo/sun4/bigloo1.7/distribution/install ...           */
#*                                                                     */
#*    Author      :  Manuel Serrano                                    */
#*    Creation    :  Fri Mar  5 13:32:49 1993                          */
#*    Last change :  Thu Jan 19 09:06:38 1995 (serrano)                */
#*                                                                     */
#*    On install bigloo (puisqu'il a ete boote)                        */
#*---------------------------------------------------------------------*/

#*---------------------------------------------------------------------*/
#*    !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!!  */
#*    Don't edit after this line                                       */
#*---------------------------------------------------------------------*/
dest=$1
man=$2

#*---------------------------------------------------------------------*/
#*    Le site                                                          */
#*---------------------------------------------------------------------*/
site=`pwd`

#*---------------------------------------------------------------------*/
#*    Les variables generees                                           */
#*---------------------------------------------------------------------*/
version="1.7"
bin=$dest/bin
lib=$dest/lib/bigloo/$version
lib_dir="$site/lib/$version"
include=$lib

cc=gcc

#*---------------------------------------------------------------------*/
#*    arch                                                             */
#*---------------------------------------------------------------------*/
tools_dir="$site/tools"
arch=`$tools_dir/arch`

#*---------------------------------------------------------------------*/
#*    On test si on trouve toujours le compilateur C                   */
#*---------------------------------------------------------------------*/
( cd /tmp; 
  echo "main() { ; }" > foo.c; 
  $cc foo.c > /dev/null || exit $? ) || exit $? 

#*---------------------------------------------------------------------*/
#*    On installe les librairies                                       */
#*---------------------------------------------------------------------*/
if( test ! -d $dest/lib/bigloo ); then
  echo ". creating $dest/lib/bigloo directory"
  mkdir $dest/lib/bigloo

  if( test ! -d $dest/lib/bigloo ); then
     echo "*** ERROR: cannot create -- $dest/lib/bigloo"
     exit 1
  fi
fi

if( test -d $lib ); then
  echo ". removing old $lib directory"
  \rm -rf $lib
fi

echo ". creating $lib directory"
mkdir $lib

if( test ! -d $lib ); then
   echo "*** ERROR: cannot create -- $lib"
   exit 1
fi


#*---------------------------------------------------------------------*/
#*    On change les droits                                             */
#*---------------------------------------------------------------------*/
chmod -R a+rxw lib/*
chmod -R a+rxw bin/*

#*---------------------------------------------------------------------*/
#*    On construit le bigloo.h                                         */
#*---------------------------------------------------------------------*/
echo ". installing libraries"
\rm -f $include/bigloo.h

for p in lib/$version/*.h 
do
  cp $p $include
done
\rm -f $include/bigloo.h

cat distribution/bigloo.h.head > $include/bigloo.h

echo \#define LIBRARY_DIR"()" \"$include\" >>  $include/bigloo.h
echo \#define INCLUDE_DIR"()" \"$include\" >> $include/bigloo.h
echo \#define CC"()"  \"$cc\" >> $include/bigloo.h

cat distribution/bigloo.h.tail >> $include/bigloo.h

cp lib/$version/bigloo.heap $lib/bigloo.heap
cp lib/$version/libbigloo.a $lib/libbigloo.a
cp lib/$version/libbigloo_u.a $lib/libbigloo_u.a

if( test ! $arch = "sun4-solaris" ) ; then 
  ranlib $lib/libbigloo.a
  ranlib $lib/libbigloo_u.a
fi

#*---------------------------------------------------------------------*/
#*    On installe la doc                                               */
#*---------------------------------------------------------------------*/
echo ". installing manual [$man]"

if( test ! -d $man ); then
  echo "*** ERROR: Cannot install manuals -- (ignored)"
else
  \rm -f $man/bigloo.1

  cp documentation/bigloo.1 $man/bigloo.1
  cp documentation/bigloo.ps $lib/bigloo.ps
  chmod a+r $man/bigloo.1
fi

#*---------------------------------------------------------------------*/
#*    On retouche le fichier de path et on recompile                   */
#*---------------------------------------------------------------------*/
echo ". setting new path"
\rm -f distribution/SITE
echo $dest > distribution/SITE

mv $lib_dir/bigloo.h $lib_dir/bigloo.h.old
cp $include/bigloo.h $lib_dir/bigloo.h
	
(cd comptime$version
 touch Engine/path.scm
 ../bin/bigloo$version Engine/path.scm -cc $cc -O -A -s
 $cc -O -o $bin/bigloo$version */*.o -L$lib -lbigloo -lm
 strip $bin/bigloo$version)

(cd $bin
 \rm -f bigloo
 ln -s bigloo$version bigloo)

\rm -f distribution/SITE

mv lib/$version/bigloo.h.old lib/$version/bigloo.h

echo `pwd` > distribution/SITE

#*---------------------------------------------------------------------*/
#*    On change les droits                                             */
#*---------------------------------------------------------------------*/
chmod -R a+rwx $lib
chmod a+rx $bin/bigloo$version

#*---------------------------------------------------------------------*/
#*    Voila, c'est fini                                                */
#*---------------------------------------------------------------------*/
echo "install done"
echo "-------------------------------"




