create_dir
+cp_dir
em_path.h.src
first
get_answer
--- /dev/null
+set -e
+trap "rm -f /tmp/xx$$" 0 1 2 3 15
+case $2 in
+/*) target_dir=$2
+ ;;
+*) target_dir=`pwd`/$2
+ ;;
+esac
+cd $1
+tar cf /tmp/xx$$ .
+if [ -d $target_dir ]
+then :
+else mkdir $target_dir
+fi
+cd $target_dir
+tar xf /tmp/xx$$
echo "Your default machine to compile for is $ACM"
-DISABLE_LANG=
echo "Installation of the complete ACK takes a long time. Limiting the
number of languages, runtime libraries, back-ends, and assemblers to be
installed may save a lot of time. If you want to install everything,
if [ $TARGET_HOME = $UTIL_HOME ]
then
- sed "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" < $FDIR/target_comp >> make_macros
+ if [ -f /bin/ranlib -o -f /usr/bin/ranlib -o -f /usr/ucb/ranlib ]
+ then
+ sed "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" < $FDIR/target_comp >> make_macros
+ else
+ sed -e "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" -e "s/^# RANLIB=:/RANLIB=:/" < $FDIR/target_comp >> make_macros
+ fi
if [ -f /bin/arch ]
then
case `/bin/arch` in
case $know_target in
1) sed -e "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" -e "/cc-and-mkdep.ack/s/^..//" -e "s/^CC=cc/CC=acc -m$ACM/" -e "s/^# AR=aal/AR=aal/" -e "s/^# RANLIB=:/RANLIB=:/" < $FDIR/target_comp >> make_macros
;;
- *) sed "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" < $FDIR/target_comp >> make_macros
+ *) if [ -f /bin/ranlib -o -f /usr/bin/ranlib -o -f /usr/ucb/ranlib ]
+ then
+ sed "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" < $FDIR/target_comp >> make_macros
+ else
+ sed -e "s/^COPTIONS.*\$/COPTIONS=-O -D_EM_WSIZE=$WS -D_EM_PSIZE=$PS/" -e "s/^# RANLIB=:/RANLIB=:/" < $FDIR/target_comp >> make_macros
+ fi
;;
esac
sed "s/^#U/U/" < $FDIR/util_comp >> make_macros
cat $SRC_HOME/TakeAction >> $CONFIG/bin/TakeAction
sed '/^#PARAMS/r make_macros' < $SRC_HOME/first/mk_makefile > $CONFIG/bin/mk_makefile
cp $SRC_HOME/first/create_dir $CONFIG/bin/create_dir
+cp $SRC_HOME/first/cp_dir $CONFIG/bin/cp_dir
chmod +x $CONFIG/bin/*
$SRC_HOME/first/mk_config
;;
esac
done
+OLD_DIS_LANG="$DISABLE_LANG"
+DISABLE_LANG=
+case X$OLD_DIS_LANG in
+X) ;;
+*) set $OLD_DIS_LANG
+ ;;
+esac
for i in Modula-2 Pascal Occam Basic ANSI-C C Fortran
do
+ DEF=y
+ if [ $# != 0 -a X$i = X$1 ]
+ then
+ DEF=n
+ shift
+ fi
while :
do
- echo $E_FLAG "Do you want to install $i? (y/n) $E_SFX"
+ echo $E_FLAG "Do you want to install $i? (y/n) [$DEF] $E_SFX"
. $FDIR/get_answer
+ case $ANS in
+ '') ANS="$DEF";;
+ esac
case X$ANS in
- Xj*|Xy*|X)
+ Xj*|Xy*)
echo "$i will be installed"
echo
break
esac
done
done
+OLD_DIS_SUP="$DISABLE_SUP"
DISABLE_SUP=
set $MACH_LIST
while test $# != 0
do
+ DEF=y
+ for i in $OLD_DIS_SUP
+ do
+ if [ X$i = X$1 ]
+ then
+ DEF=n
+ break
+ fi
+ done
while :
do
case $1 in
m68020) echo "not installing m68020 will disable installation of sun3."
;;
esac
- echo $E_FLAG "Do you want to install the $1 support? (y/n) $E_SFX"
+ echo $E_FLAG "Do you want to install the $1 support? (y/n) [$DEF] $E_SFX"
. $FDIR/get_answer
+ case $ANS in
+ '') ANS="$DEF";;
+ esac
case X$ANS in
- Xj*|Xy*|X)
+ Xj*|Xy*)
echo "The $1 support will be installed"
echo
case $1 in
'') ANS="$DO_FAST" ;;
esac
case X$ANS in
- Xj*|Xy*|X)
+ Xj*|Xy*)
DO_FAST=y
echo "The fast compilers will be installed"
break
# The current setup is for ACK lint. If you want to use the Unix lint,
# put '#' signs on the next 4 lines that have ACK in them.
-LINT=/usr/bin/lint # Unix lint
-LINT=$(UTIL_HOME)/bin/lint # ACK lint
+LINT=/usr/bin/lint# # Unix lint
+LINT=$(UTIL_HOME)/bin/lint# # ACK lint
-LINTOPTIONS= # options always passed to lint
+LINTOPTIONS=# # options always passed to lint
-LINTPREF=llib-l # prefix of unix lint libraries
-LINTPREF= # ACK lint libraries do not have a prefix
+LINTPREF=llib-l# # prefix of unix lint libraries
+LINTPREF=# # ACK lint libraries do not have a prefix
-LINTSUF=ln # suffix of Unix lint libraries
-LINTSUF=llb # suffix of ACK lint libraries
-
-MK_LINT_LIB=lint-lib.unix # for Unix lint
-MK_LINT_LIB=lint-lib.ack # for ACK lint
+LINTSUF=ln# # suffix of Unix lint libraries
+LINTSUF=llb# # suffix of ACK lint libraries
+
+MK_LINT_LIB=lint-lib.unix# # for Unix lint
+MK_LINT_LIB=lint-lib.ack# # for ACK lint
fi
done
-cd $SRC_HOME/util/ceg/util
-for i in make_*
-do
- mk_makefile $i > $CONFIG/util/ceg/util/$i
-done
-
cd $CONFIG
for i in lang/cem/cemcom.ansi lang/cem/cemcom lang/m2/comp
create_dir $TARGET_HOME/modules/lib
create_dir $TARGET_HOME/bin
-( cd $SRC_HOME/modules/h ; tar cf - . ) | ( cd $TARGET_HOME/modules/h ; tar xf - )
+cp_dir $SRC_HOME/modules/h $TARGET_HOME/modules/h
cp local.h em_path.h $TARGET_HOME/config
-( cd $SRC_HOME/bin ; tar cf - . ) | ( cd $TARGET_HOME/bin ; tar xf - )
+cp_dir $SRC_HOME/bin $TARGET_HOME/bin
+cp $CONFIG/bin/cp_dir $TARGET_HOME/bin/cp_dir
echo "echo $SYSNAME" > $TARGET_HOME/bin/ack_sys
chmod +x $TARGET_HOME/bin/ack_sys
create_dir $TARGET_HOME/doc
cp $SRC_HOME/etc/ip_spec.t $TARGET_HOME/etc/ip_spec.t
-( cd $SRC_HOME/lib ; tar cf - . ) | ( cd $TARGET_HOME/lib ; tar xf - )
-( cd $SRC_HOME/include ; tar cf - . ) | ( cd $TARGET_HOME/include ; tar xf - )
-( cd $SRC_HOME/h ; tar cf - . ) | ( cd $TARGET_HOME/h ; tar xf - )
-( cd $SRC_HOME/doc ; tar cf - . ) | ( cd $TARGET_HOME/doc ; tar xf - )
+cp_dir $SRC_HOME/lib $TARGET_HOME/lib
+cp_dir $SRC_HOME/h $TARGET_HOME/h
+cp_dir $SRC_HOME/doc $TARGET_HOME/doc
+cp_dir $SRC_HOME/include $TARGET_HOME/include
cd $TARGET_HOME
find . -type f -exec chmod +w {} \;
# compiler set for target machine
-CC=cc # compiler to be used for compiling ACK
+CC=cc# # compiler to be used for compiling ACK
+# always passed to $(CC) -c.
COPTIONS=-O -D_EM_WSIZE=4 -D_EM_PSIZE=4
- # always passed to $(CC) -c.
-CC_AND_MKDEP=cc-and-mkdep.all # when $(CC) is neither ACK or SUN,
-# CC_AND_MKDEP=cc-and-mkdep.ack # when $(CC) is an ACK-derived C compiler,
-# CC_AND_MKDEP=cc-and-mkdep.sun # when $(CC) is a SUN C compiler
+CC_AND_MKDEP=cc-and-mkdep.all# # when $(CC) is neither ACK or SUN,
+# CC_AND_MKDEP=cc-and-mkdep.ack## when $(CC) is an ACK-derived C compiler,
+# CC_AND_MKDEP=cc-and-mkdep.sun## when $(CC) is a SUN C compiler
-LDOPTIONS= # always passed to $(CC) when linking
+LDOPTIONS=# # always passed to $(CC) when linking
-SUF=o # suffix of files produced with $(CC) -c
+SUF=o# # suffix of files produced with $(CC) -c
-AR=ar # archiver for Unix format objects
-# AR=aal # archiver for ACK .o format objects
-# AR=arch # archiver for ACK .s format objects
+AR=ar# # archiver for Unix format objects
+# AR=aal# # archiver for ACK .o format objects
+# AR=arch# # archiver for ACK .s format objects
-RANLIB=ranlib # when ranlib required
-# RANLIB=: # when ranlib not required
+RANLIB=ranlib# # when ranlib required
+# RANLIB=:# # when ranlib not required
-LIBSUF=a # suffix of object libraries
+LIBSUF=a# # suffix of object libraries
# has already changed them, but they should be checked to be sure.
UCC=$(CC)
-#UCC=cc # compiler to be used
+#UCC=cc# # compiler to be used
UCOPTIONS=$(COPTIONS)
-#UCOPTIONS=-O # always passed to $(UCC) -c.
+#UCOPTIONS=-O# # always passed to $(UCC) -c.
ULDOPTIONS=$(LDOPTIONS)
-#ULDOPTIONS= # always passed to $(UCC) when linking
+#ULDOPTIONS=# # always passed to $(UCC) when linking
USUF=$(SUF)
-#USUF=o # suffix of files produced with $(UCC) -c
+#USUF=o# # suffix of files produced with $(UCC) -c
ULIBSUF=$(LIBSUF)
-#ULIBSUF=a # suffix of object libraries for $(UCC)
+#ULIBSUF=a# # suffix of object libraries for $(UCC)