#!/bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated automatically using autoconf.
# Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

# Usage: configure [-help] [-prefix=PREFIX] [-bin-prefix=PREFIX] 
#		   [-x-include-prefix=PREFIX] [-x-lib-prefix=PREFIX]
#		   [-x-font-prefix=PREFIX]


for arg in $@; do
   case $arg in
     -bin-prefix=*)
	bin_prefix=`echo $arg | sed 's/[-a-z]*=//'` ;;
     -prefix=*)
	prefix=`echo $arg | sed 's/[-a-z]*=//'` ;;
     -x-include-prefix=*)
	x_include_prefix=`echo $arg | sed 's/[-a-z]*=//'` ;;
     -x-lib-prefix=*)
	x_lib_prefix=`echo $arg | sed 's/[-a-z]*=//'` ;;
     -x-font-prefix=*)
	x_font_prefix=`echo $arg | sed 's/[-a-z]*=//'` ;;
     -help)
	cat << EOF >&2
Usage:  configure [-help] [-prefix=PREFIX] [-exec-prefix=PREFIX] 
		  [-X-include-prefix=PREFIX] [-X-lib-prefix=PREFIX]
		  [-X-font-prefix=PREFIX]

        -help:  Print this message.

        -prefix:  Prefix dir of the /bin, /xcin, /man dirs.

        -bin-prefix:  Prefix dir of the /bin dir.

	-x-include-prefix:  Prefix dir of the /X11/Xlib.h include dir.

	-x-lib-prefix:  Prefix dir of the /libX11* lib dir.

        -x-font-prefix:  Prefix dir of the X-win .pcf fonts.

EOF
	exit 0
;;
     *) echo "Invalid option: $arg. Try \`configure --help\' to see the usage."; exit 1 ;;
   esac
done


trap 'rm -f conftest* core; exit 1' 1 3 15
rm -f conftest*
compile='${CC-cc} $CFLAGS $DEFS conftest.c -o conftest $LIBS >/dev/null 2>&1'

#
# Needed for some versions of `tr' so that character classes in `[]' work.
#
if test "${LANG+set}" = "set" ; then
   LANG=C
   LC_ALL=C
   export LANG LC_ALL
fi

#
# A filename unique to this package, relative to the directory that
# configure is in, which we can look for to find out if srcdir is correct.
#
unique_file=script/configure.install
srcdir=`pwd`
if [ ! -x $srcdir/$unique_file ]; then
    echo "configure: Can not find sources in $srcdir. Stop."
    exit 1
fi

# 
# Run the configure.install script
#
echo
echo '!!! XCIN-2.1d now support TWO Languages configuration program !!!'
echo
echo 'If now you are in the Chinese environment, you can choose the'
echo 'Chinese interface to setting up your XCIN system.'
echo 
echo 'Do you want to use the Chinese interface [y/n]?'
read chinese
if [ "$chinese" = 'y' ] || [ "$chinese" = 'Y' ]; then
    unique_file=script/configure.Cinstall
fi
$srcdir/$unique_file -root=$srcdir -prefix=$prefix -bin-prefix=$bin_prefix -x-font-prefix=$x_font_prefix
if [ "$?" = '1' ]; then
    echo 'Stop!'
    echo
    exit 1
fi


#
# Find the architecture
#
echo checking for architecture
ARCH=`uname -a`
SARCH=`uname | sed 's/-//g' | tr "a-z" "A-Z"`
if [ "$SARCH" = 'SUNOS' ]; then
    SARCH="$SARCH`echo $ARCH | awk '{print $3}' | sed 's/\.[0-9]\.[0-9]//'`"
fi

if test -z "$CC"; then
  #
  # Extract the first word of `gcc', so it can be a program name with args.
  #
  set dummy gcc; word=$2
  echo checking for $word
  IFS="${IFS= 	}"; saveifs="$IFS"; IFS="${IFS}:"
  for dir in $PATH; do
    test -z "$dir" && dir=.
    if test -f $dir/$word; then
      CC="gcc"
      break
    fi
  done
  IFS="$saveifs"
fi
test -z "$CC" && CC="cc"

#
# Find out if we are using GNU C, under whatever name.
#
cat > conftest.c <<EOF
#ifdef __GNUC__
  yes
#endif
EOF
${CC-cc} -E conftest.c > conftest.out 2>&1
if egrep yes conftest.out >/dev/null 2>&1; then
  GCC=1 # For later tests.
fi

echo checking for CFLAGS
cat > conftest.c <<EOF
main(){}
EOF
rm -f a.out

# Test the -O2 for CFLAGS.
${CC-cc} -O2 conftest.c >/dev/null 2>&1
test -f a.out && CFLAGS=-O2
CFLAGS="${CFLAGS--O}"
rm -f a.out

# Test the -pipe for CFLAGS.
if [ "$GCC" = '1' ]; then
    ${CC-cc} -pipe conftest.c >/dev/null 2>&1
    test -f a.out && CFLAGS="${CFLAGS} -pipe"
    rm -f a.out
fi

echo checking how to run the C preprocessor
if test -z "$CPP"; then
  CPP='${CC-cc} -E'
  cat > conftest.c <<EOF
#include <stdio.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  :
else
  CPP=/lib/cpp
fi
rm -f conftest*
fi

echo checking for underline in external names
test -z "$ASCPP" -a -f /lib/cpp && ASCPP=/lib/cpp
test -z "$ASCPP" && ASCPP="$CC -E"
cat > conftest.c <<EOF
int foo() {return 0;}
EOF
eval "$CC -c conftest.c > /dev/null 2>&1"
if nm conftest.o | grep _foo > /dev/null 2>&1 ; then
  :
else
  ASCPP="${ASCPP} -DNO_UNDERLINE"
fi
rm -f _match.o conftest.c conftest.o
if echo "$DEFS" | grep NO_ASM >/dev/null; then
  :
else
  echo checking for assembler
  OBJA=""
  if eval "$ASCPP $srcdir/match.S > _match.s 2>/dev/null"; then
    if test ! -s _match.s || grep error < _match.s > /dev/null; then
      :
    elif eval "$CC -c _match.s >/dev/null 2>&1" && test -f _match.o; then
      DEFS="${DEFS} -DASMV"
      OBJA=match.o
    fi
  fi
  rm -f _match.s _match.o
fi
# Make sure to not get the incompatible SysV /etc/install and
# /usr/sbin/install, which might be in PATH before a BSD-like install,
# or the SunOS /usr/etc/install directory, or the AIX /bin/install,
# or the AFS install, which mishandles nonexistent args, or
# /usr/ucb/install on SVR4, which tries to use the nonexistent group
# `staff'.  On most BSDish systems install is in /usr/bin, not /usr/ucb
# anyway.  Sigh.
if test "z${INSTALL}" = "z" ; then
  echo checking for install
  IFS="${IFS= 	}"; saveifs="$IFS"; IFS="${IFS}:"
  for dir in $PATH; do
    test -z "$dir" && dir=.
    case $dir in
    /etc|/usr/sbin|/usr/etc|/usr/afsws/bin|/usr/ucb) ;;
    *)
      if test -f $dir/installbsd; then
	INSTALL="$dir/installbsd -c" # OSF1
	INSTALL_PROGRAM='$(INSTALL)'
	INSTALL_DATA='$(INSTALL) -m 644'
	INSTALL_DIR='$(INSTALL) -d'
	break
      fi
      if test -f $dir/install; then
	if grep dspmsg $dir/install >/dev/null 2>&1; then
	  : # AIX
	else
	  INSTALL="$dir/install -c"
	  INSTALL_PROGRAM='$(INSTALL)'
	  INSTALL_DATA='$(INSTALL) -m 644'
	  INSTALL_DIR='$(INSTALL) -d'
	  break
	fi
      fi
      ;;
    esac
  done
  IFS="$saveifs"
fi
INSTALL=${INSTALL-cp}
INSTALL_PROGRAM=${INSTALL_PROGRAM-'$(INSTALL)'}
INSTALL_DATA=${INSTALL_DATA-'$(INSTALL)'}
INSTALL_DIR=${INSTALL_DIR-mkdir}

echo checking for AIX
cat > conftest.c <<EOF
#ifdef _AIX
  yes
#endif

EOF
eval "$CPP \$DEFS conftest.c > conftest.out 2>&1"
if egrep "yes" conftest.out >/dev/null 2>&1; then
  DEFS="$DEFS -D_ALL_SOURCE=1"
fi
rm -f conftest*


echo checking for minix/config.h
cat > conftest.c <<EOF
#include <minix/config.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  MINIX=1
fi
rm -f conftest*

# The Minix shell can't assign to the same variable on the same line!
if test -n "$MINIX"; then
  DEFS="$DEFS -D_POSIX_SOURCE=1"
  DEFS="$DEFS -D_POSIX_1_SOURCE=2"
  DEFS="$DEFS -D_MINIX=1"
fi

echo checking for POSIXized ISC
if test -d /etc/conf/kconfig.d &&
  grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
then
  ISC=1 # If later tests want to check for ISC.
  DEFS="$DEFS -D_POSIX_SOURCE=1"
  if test -n "$GCC"; then
    CC="$CC -posix"
  else
    CC="$CC -Xp"
  fi
fi

echo checking for DYNIX/ptx libseq
cat > conftest.c <<EOF
#if defined(_SEQUENT_)
  yes
#endif

EOF
eval "$CPP \$DEFS conftest.c > conftest.out 2>&1"
if egrep "yes" conftest.out >/dev/null 2>&1; then
  SEQUENT=1
fi
rm -f conftest*

test -n "$SEQUENT" && test -f /usr/lib/libseq.a &&
  LIBS="$LIBS -lseq"

echo checking for ANSI C header files
cat > conftest.c <<EOF
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <float.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
echo '#include <string.h>' > conftest.c
eval "$CPP \$DEFS conftest.c > conftest.out 2>&1"
if egrep "memchr" conftest.out >/dev/null 2>&1; then
  # SGI's /bin/cc from Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
cat > conftest.c <<EOF
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
#define XOR(e,f) (((e) && !(f)) || (!(e) && (f)))
int main () { int i; for (i = 0; i < 256; i++)
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
exit (0); }

EOF
eval $compile
if test -s conftest && (./conftest; exit) 2>/dev/null; then
DEFS="$DEFS -DSTDC_HEADERS=1"
fi
rm -f conftest*
fi
rm -f conftest*

fi
rm -f conftest*

echo checking for string.h
cat > conftest.c <<EOF
#include <string.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  :
else
  DEFS="$DEFS -DNO_STRING_H=1"
fi
rm -f conftest*

echo checking for stdlib.h
cat > conftest.c <<EOF
#include <stdlib.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  :
else
  DEFS="$DEFS -DNO_STDLIB_H=1"
fi
rm -f conftest*

echo checking for memory.h
cat > conftest.c <<EOF
#include <memory.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  :
else
  DEFS="$DEFS -DNO_MEMORY_H=1"
fi
rm -f conftest*

echo checking for fcntl.h
cat > conftest.c <<EOF
#include <fcntl.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  :
else
  DEFS="$DEFS -DNO_FCNTL_H=1"
fi
rm -f conftest*

echo checking for time.h
cat > conftest.c <<EOF
#include <time.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  :
else
  DEFS="$DEFS -DNO_TIME_H=1"
fi
rm -f conftest*

for hdr in unistd.h
do
trhdr=HAVE_`echo $hdr | tr '[a-z]./' '[A-Z]__'`
echo checking for ${hdr}
cat > conftest.c <<EOF
#include <${hdr}>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  DEFS="$DEFS -D${trhdr}=1"

fi
rm -f conftest*
done

utime=0
echo checking for utime.h
cat > conftest.c <<EOF
#include <utime.h>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  utime=1 
else
  DEFS="$DEFS -DNO_UTIME_H=1"
fi
rm -f conftest*

if test $utime -eq 0; then
  for hdr in sys/utime.h
do
trhdr=HAVE_`echo $hdr | tr '[a-z]./' '[A-Z]__'`
echo checking for ${hdr}
cat > conftest.c <<EOF
#include <${hdr}>
EOF
err=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`
if test -z "$err"; then
  DEFS="$DEFS -D${trhdr}=1"
fi
rm -f conftest*
done

fi
echo checking for directory library header
dirheader=
if test -z "$dirheader"; then
  echo checking for dirent.h
cat > conftest.c <<EOF
#include <sys/types.h>
#include <dirent.h>
int main() { exit(0); }
int t() { DIR *dirp = opendir ("/"); }
EOF
if eval $compile; then
  DEFS="$DEFS -DDIRENT=1"
  dirheader=dirent.h
fi
rm -f conftest*
fi
if test -z "$dirheader"; then
  echo checking for sys/ndir.h
cat > conftest.c <<EOF
#include <sys/types.h>
#include <sys/ndir.h>
int main() { exit(0); }
int t() { DIR *dirp = opendir ("/"); }
EOF
if eval $compile; then
  DEFS="$DEFS -DSYSNDIR=1"
  dirheader=sys/ndir.h
fi
rm -f conftest*
fi
if test -z "$dirheader"; then
  echo checking for sys/dir.h
cat > conftest.c <<EOF
#include <sys/types.h>
#include <sys/dir.h>
int main() { exit(0); }
int t() { DIR *dirp = opendir ("/"); }
EOF
if eval $compile; then
  DEFS="$DEFS -DSYSDIR=1"
  dirheader=sys/dir.h
fi
rm -f conftest*
fi
if test -z "$dirheader"; then
  echo checking for ndir.h
cat > conftest.c <<EOF
#include <sys/types.h>
#include <ndir.h>
int main() { exit(0); }
int t() { DIR *dirp = opendir ("/"); }
EOF
if eval $compile; then
  DEFS="$DEFS -DNDIR=1"
  dirheader=ndir.h
fi
rm -f conftest*
fi

echo checking for closedir return value
cat > conftest.c <<EOF
#include <sys/types.h>
#include <$dirheader>
int closedir(); main() { exit(closedir(opendir(".")) != 0); }
EOF
eval $compile
if test -s conftest && (./conftest; exit) 2>/dev/null; then
  :
else
  DEFS="$DEFS -DVOID_CLOSEDIR=1"
fi
rm -f conftest*

echo checking for Xenix
cat > conftest.c <<EOF
#if defined(M_XENIX) && !defined(M_UNIX)
  yes
#endif

EOF
eval "$CPP \$DEFS conftest.c > conftest.out 2>&1"
if egrep "yes" conftest.out >/dev/null 2>&1; then
  XENIX=1
fi
rm -f conftest*

if test -n "$XENIX"; then
  LIBS="$LIBS -lx"
  case "$DEFS" in
  *SYSNDIR*) ;;
  *) LIBS="-ldir $LIBS" ;; # Make sure -ldir precedes any -lx.
  esac
fi

echo checking for return type of signal handlers
cat > conftest.c <<EOF
#include <sys/types.h>
#include <signal.h>
#ifdef signal
#undef signal
#endif
extern void (*signal ()) ();
int main() { exit(0); }
int t() { int i; }
EOF
if eval $compile; then
  :
else
  DEFS="$DEFS -DRETSIGTYPE=int"

fi
rm -f conftest*


echo checking for size_t in sys/types.h
echo '#include <sys/types.h>' > conftest.c
eval "$CPP \$DEFS conftest.c > conftest.out 2>&1"
if egrep "size_t" conftest.out >/dev/null 2>&1; then
  :
else
  DEFS="$DEFS -Dsize_t=unsigned"
fi
rm -f conftest*

echo '#include <sys/types.h>' > conftest.c
eval "$CPP \$DEFS conftest.c > conftest.out 2>&1"
if egrep "off_t" conftest.out >/dev/null 2>&1; then
  :
else
  DEFS="$DEFS -DNO_OFF_T=1"
fi
rm -f conftest*

echo "checking if \`#!' works in shell scripts"
cat <<'__EOF__' > conftest.csh
#!/bin/csh -f
setenv SHELL /bin/csh
# Avoid tcsh bug 'Bad Hertz Value':
setenv HZ 60
# Make sure foo doesn't get exported into the environment
# Astoundingly, some versions of csh don't have unsetenv.
if (${?foo}) unsetenv foo >& /dev/null
if (${?foo}) unset foo
set output="`./conftest.sh`"
if ( "$output" == "foo=bar" ) then
   exit 0
endif
exit 1
__EOF__
cat <<'__EOF__' > conftest.sh
#!/bin/sh
set foo=bar
echo "$*"
__EOF__
chmod 777 conftest.csh conftest.sh
(csh -f ./conftest.csh) 2> /dev/null
if test $? = 0 ; then
   :; SEDCMD="1d"
else
   :; SEDCMD=""
fi
rm -f conftest.csh conftest.sh

if test -z "$prefix"
then
  echo checking for gzip to derive installation directory prefix
  IFS="${IFS= 	}"; saveifs="$IFS"; IFS="$IFS:"
  for dir in $PATH; do
    test -z "$dir" && dir=.
    if test $dir != . && test -f $dir/gzip; then
      # Not all systems have dirname.
      prefix=`echo $dir|sed 's%/[^/][^/]*$%%'`
      break
    fi
  done
  IFS="$saveifs"
  echo "	chose installation directory prefix ${prefix}"
fi

if test -z "$G" -a -n "$prefix" -a -f $prefix/bin/gznew; then
  G=g
fi
if test -z "$ZCAT"; then
  if test -n "$prefix" -a -f $prefix/bin/gzcat; then
    ZCAT=gzcat
  else
    ZCAT=${G}zcat
  fi
fi
if test -n "$prefix"; then
  test -z "$exec_prefix" && exec_prefix='${prefix}'
  prsub="s%^prefix\\([ 	]*\\)=\\([ 	]*\\).*$%prefix\\1=\\2$prefix%"
fi
if test -n "$exec_prefix"; then
  prsub="$prsub
s%^exec_prefix\\([ 	]*\\)=\\([ 	]*\\).*$%\
exec_prefix\\1=\\2$exec_prefix%"
fi
cat >conftest.def <<EOF
$DEFS
EOF
escape_ampersand_and_backslash='s%[&\\]%\\&%g'
DEFS=`sed "$escape_ampersand_and_backslash" <conftest.def`
rm -f conftest.def


#
#  The following is heavily modified by Tung-Han Hsieh
#
#  Test for the utmp file
#
echo 'checking for utmp file.'
for xdir in /etc /var /var/run /var/adm /var/log; do
    if [ -f $xdir/utmp ]; then
	UTMP=\\\\\"$xdir/utmp\\\\\"
	break;
    fi
done

#
#  Test for the X-win library.
#
if [ "`test -L /lib/libc.a 2> /dev/null && echo yes`" = 'yes' ]; then
    TESTLINK=-L
else
    TESTLINK=-h
fi
testlink() {
    ff=$1
    ffbase=`basename $ff`
    dir=`echo $ff | sed "s/\/$ffbase//"`
    if [ $TESTLINK $ff ]; then
        while [ 1 ]; do
            xfreal="`/bin/ls -l $dir/$ffbase | sed 's/.*-> //'`"
            xfbase=`basename $xfreal`

            if [ "$xfbase" = "$xfreal" ]; then
                dirreal=$dir
            else
                dirreal=`echo $xfreal | sed "s/\/$xfbase//"`
            fi
            if [ ! -f $dirreal/$xfbase ]; then break; fi
            if [ ! $TESTLINK $dirreal/$xfbase ]; then echo $dirreal; break; fi

            ffbase=$xfbase
            dir=$dirreal
        done
    elif [ -f $ff ]; then
        echo $dir
    fi
}

echo 'checking for X-window system.'
xfile=
xrealpath=
xfilefind=no
for pdir in /. /usr /usr/lib /usr/ucb /usr/util /usr/local /usr/lpp; do
    for xdir in /X11R6 /X11 /X11R5 /openwin /X11R4; do
        xfile=`/bin/ls $pdir$xdir/lib/libX11* $pdir$xdir/libX11* 2>/dev/null`
        if [ -n "$xfile" ]; then
	    for f in $xfile; do
	        xrealpath=`testlink $f`
	        if [ ! -z "$xrealpath" ]; then xfilefind=yes; break; fi
	    done
        fi
        test "$xfilefind" = 'yes' && break;
    done
    test "$xfilefind" = 'yes' && break
done
if [ "$xfilefind" = 'yes' ]; then
    LIBS="$LIBS -lX11"
    LIB_PATH="$LIB_PATH -L$xrealpath"
elif [ ! -z "$x_lib_prefix" ]; then
    xfile=`/bin/ls $x_lib_prefix/libX11* 2>/dev/null`
    if [ ! -z "$xfile" ]; then
	for f in $xfile; do
	    xrealpath=`testlink $f`
	    if [ ! -z "$xrealpath" ]; then 
		xfilefind=yes
	        LIBS="$LIBS -lX11"
	        LIB_PATH="$LIB_PATH -L$xrealpath"
		break
	    fi
	done
    fi
fi
if [ "$xfilefind" != 'yes' ]; then
    echo "YOU DO NOT HAVE THE X-WINDOW LIBRARIES IN YOUR SYSTEM!!!!" >&2
    echo "CONFIGURATION TERMINATES!" >&2
    exit 1;
fi


xfilefind=no
for pdir in /. /usr /usr/lib /usr/ucb /usr/util /usr/local /usr/lpp; do
    test -f $pdir/include/X11/Xlib.h && xfilefind=yes && break
    for xdir in /X11R6 /X11 /X11R5 /openwin /X11R4; do
        test -f $pdir$xdir/include/X11/Xlib.h && xfilefind=yes && pdir=$pdir$xdir && break
    done
    test "$xfilefind" = 'yes' && break
done
if [ "$xfilefind" = 'yes' ]; then
    test "$pdir" != '/usr' && INC_PATH="$INC_PATH -I$pdir/include"
elif [ ! -z "$x_include_prefix" ]; then
    INC_PATH="$INC_PATH -I$x_include_prefix"
    xfilefind=yes
fi
if [ "$xfilefind" != 'yes' ]; then
    echo "YOU DO NOT HAVE THE X-WINDOW INCLUDE FILES IN YOUR SYSTEM!!!!" >&2
    echo "CONFIGURATION TERMINATES!" >&2
    exit 1;
fi


trap 'rm -f config.status; exit 1' 1 3 15
echo 'creating config.status .....'
rm -f config.status
cat > config.status <<EOF
ARCH=$ARCH
SARCH=$SARCH
CC=$CC
CPP=$CPP
CFLAGS=$CFLAGS
DEFS=$DEFS
G=$G
ASCPP=$ASCPP
OBJA=$OBJA
SEDCMD=$SEDCMD
INSTALL=$INSTALL
INSTALL_PROGRAM=$INSTALL_PROGRAM
INSTALL_DATA=$INSTALL_DATA
INSTALL_DIR=$INSTALL_DIR
ZCAT=$ZCAT
srcdir=$srcdir
prefix=$prefix
bin_prefix=$bin_prefix
x_lib_prefix=$x_lib_prefix
x_include_prefix=$x_include_prefix
x_font_prefix=$x_font_prefix
LIBS=$LIBS
LIB_PATH=$LIB_PATH
INC_PATH=$INC_PATH
EOF

echo 'Reading script/install.status .....'
GetData() {
    grep $1 install.status | sed "s%$1=%%"
}
INSTALL_XCIN=`GetData INSTALL_XCIN`
INSTALL_CRXVT=`GetData INSTALL_CRXVT`
INSTALL_FONTS=`GetData INSTALL_FONTS`
INSTALL_INPTABS=`GetData INSTALL_INPTABS`
INSTALL_DOCS=`GetData INSTALL_DOCS`
INSTALL_UTILS=`GetData INSTALL_UTILS`
OPT_XCIN_DELETEK=`GetData OPT_XCIN_DELETEK`
OPT_XCIN_CFONT=`GetData OPT_XCIN_CFONT`
OPT_XCIN_EFONT=`GetData OPT_XCIN_EFONT`
OPT_CRXVT_CFONT=`GetData OPT_CRXVT_CFONT`
OPT_CRXVT_EFONT=`GetData OPT_CRXVT_EFONT`
OPT_FONT_ET15=`GetData OPT_FONT_ET15`
OPT_FONT_ET24K=`GetData OPT_FONT_ET24K`
OPT_FONT_ET24L=`GetData OPT_FONT_ET24L`
OPT_FONT_ET24S=`GetData OPT_FONT_ET24S`
OPT_FONT_ET24M=`GetData OPT_FONT_ET24M`
OPT_FONT_ET24R=`GetData OPT_FONT_ET24R`
OPT_FONT_ET24B=`GetData OPT_FONT_ET24B`
OPT_FONT_ETV8=`GetData OPT_FONT_ETV8`
OPT_FONT_ETV12=`GetData OPT_FONT_ETV12`
OPT_UTIL_CLIOBJ=`GetData OPT_UTIL_CLIOBJ`
OPT_UTIL_ET2BDF=`GetData OPT_UTIL_ET2BDF`
OPT_UTIL_CIN2TAB=`GetData OPT_UTIL_CIN2TAB`
OPT_UTIL_TSINTOOLS=`GetData OPT_UTIL_TSINTOOLS`
OPT_INPTAB_DAYI=`GetData OPT_INPTAB_DAYI`
OPT_INPTAB_PHONE=`GetData OPT_INPTAB_PHONE`
OPT_INPTAB_PINYIN=`GetData OPT_INPTAB_PINYIN`
OPT_INPTAB_BOSH=`GetData OPT_INPTAB_BOSH`
OPT_INPTAB_AR30=`GetData OPT_INPTAB_AR30`
OPT_INPTAB_ETCJ=`GetData OPT_INPTAB_ETCJ`
OPT_INPTAB_ETPHO=`GetData OPT_INPTAB_ETPHO`
OPT_INPTAB_ETAR30=`GetData OPT_INPTAB_ETAR30`

for f in . xcin crxvt docs input_tabs/source fonts/source; do
    rm -f $f/Makefile
done

if [ "$INSTALL_XCIN" = 'yes' ] || [ "$OPT_UTIL_CLIOBJ" = 'yes' ] ||
   [ "$INSTALL_CRXVT" = 'yes' ] || [ "$INSTALL_INPTABS" ]; then 
    echo 'Creating xcin/Makefile .....'
    EXTRA_LIBS=
    EXTRA_DEFINES='-DXCIN_DIR=\\\"$(PATH_XCIN_DIR)\\\" -DDELETE_K=$(OPT_XCIN_DELETEK) -DOPT_XCIN_CFONT=\\\"$(OPT_XCIN_CFONT)\\\" -DOPT_XCIN_EFONT=\\\"$(OPT_XCIN_EFONT)\\\" -DAuto_First=$(Auto_First)'
    EXTRA_DEFINES="-D$SARCH $EXTRA_DEFINES"

    MAKEALL=
    if [ "$INSTALL_XCIN" = 'yes' ]; then
	MAKEALL='xcin $(KBMS) $(INPUT0) tsintools tsintab'
	INSTALLALL=install_xcin
    else
	if [ "$INSTALL_CRXVT" = 'yes' ] || [ "$OPT_UTIL_CLIOBJ" = 'yes' ]; then
	    MAKEALL="cli_xcin.o"
	fi
	if [ "$OPT_UTIL_TSINTOOLS" = 'yes' ]; then
	    MAKEALL="$MAKEALL tsintools"
	fi
    fi
    if [ "$OPT_UTIL_CLIOBJ" = 'yes' ]; then
	INSTALLALL="$INSTALLALL install_cli_xcin.o"
    fi
    if [ "$INSTALL_INPTABS" = 'yes' ] || [ "$OPT_UTIL_CIN2TAB" = 'yes' ]; then
	MAKEALL="$MAKEALL cin2tab"
    fi
    if [ "$OPT_UTIL_CIN2TAB" = 'yes' ]; then
	INSTALLALL="$INSTALLALL install_cin2tab"
    fi
    if [ "$OPT_UTIL_TSINTOOLS" = 'yes' ]; then
	INSTALLALL="$INSTALLALL install_tsintools"
    fi
    sed "s%@EXTRA_DEFINES@%$EXTRA_DEFINES%;s%@EXTRA_LIBS@%$EXTRA_LIBS%;s%@MAKEALL@%$MAKEALL%;s%@INSTALLALL@%$INSTALLALL%" xcin/Makefile.in > xcin/Makefile
fi

if [ "$INSTALL_CRXVT" = 'yes' ]; then
    echo 'Creating crxvt/Makefile .....'
    EXTRA_DEFINS='-DPRINT_PIPE -DMULTIPLE_CLICKS -DMAX_REFRESH_PERIOD=10 -DCOLOR -DGRAPHICS -DOPT_CRXVT_CFONT=\\\"$(OPT_CRXVT_CFONT)\\\" -DOPT_CRXVT_EFONT=\\\"$(OPT_CRXVT_EFONT)\\\"'

    if [ "$SARCH" = 'LINUX' ]; then
        EXTRA_DEFINES="-DLINUX $EXTRA_DEFINS -DFAKE_RESOURCES"
        EXTRA_LIBS=
    elif [ "$SARCH" = 'SUNOS4' ]; then
        EXTRA_DEFINES="-DBSD $EXTRA_DEFINS -DREAL_RESOURCES -DUSE_XCOPYAREA -DTTYTAB=\\\\\"/etc/ttytab\\\\\""
        EXTRA_LIBS=
    elif [ "$SARCH" = 'SUNOS5' ]; then
        EXTRA_DEFINES="-DSVR4 $EXTRA_DEFINS -DREAL_RESOURCES -DUSE_XCOPYAREA -DTTYTAB=\\\\\"/etc/ttytab\\\\\"" 
        EXTRA_LIBS=
    elif [ "$SARCH" = 'FREEBSD' ]; then
        EXTRA_DEFINES="-DBSD -DFREEBSD $EXTRA_DEFINS -DREAL_RESOURCES -DMAPALERT -DXTERM_SCROLL -DTTYTAB=\\\\\"/etc/ttys\\\\\""
        EXTRA_LIBS=
    elif [ "$SARCH" = 'NETBSD' ]; then
        EXTRA_DEFINES="-DBSD -DFREEBSD $EXTRA_DEFINS -DFAKE_RESOURCES -DTTYTAB=\\\\\"/etc/ttys\\\\\""
        EXTRA_LIBS=
    elif [ "$SARCH" = 'AIX' ]; then
        EXTRA_DEFINES="-DAIXV3 $EXTRA_DEFINS -DREAL_RESOURCES -DUSE_XCOPYAREA -DFAKE_RESOURCES" 
        EXTRA_LIBS=
    elif [ "$SARCH" = 'OSF1' ]; then
        EXTRA_DEFINES="-DALPHA $EXTRA_DEFINS -DFAKE_RESOURCES -DUSE_XCOPYAREA"
        EXTRA_LIBS=
    elif [ "$SARCH" = 'HPUX' ]; then
        EXTRA_DEFINES="-DHPUX $EXTRA_DEFINS -DFAKE_RESOURCES -DUSE_XCOPYAREA -DTTYTAB=\\\\\"/etc/ttytype\\\\\""
        EXTRA_LIBS=
#   elif [ -n "`echo $ARCH | grep 'Iris Indigo - Irix 5.1.1.2/X11R5'`" ]; then
#       EXTRA_DEFINES=" -DMULTIPLE_CLICKS -DCOLOR -DGRAPHICS'
#       EXTRA_LIBS=
#   elif [ -n "`echo $ARCH | grep svr4`" ]; then 
#       EXTRA_DEFINES='-DSVR4 -DPRINT_PIPE -DMULTIPLE_CLICKS -DMAX_REFRESH_PERIOD=10 -DFAKE_RESOURCES -DCOLOR -DGRAPHICS'
#       EXTRA_LIBS=-lc -lucb
    fi
    if [ -n "$UTMP" ]; then
        EXTRA_DEFINES="-DUTMP_SUPPORT -DUTMP=$UTMP $EXTRA_DEFINES"
    fi
    sed "s%@EXTRA_DEFINES@%$EXTRA_DEFINES%;s%@EXTRA_LIBS@%$EXTRA_LIBS%" crxvt/Makefile.in > crxvt/Makefile
fi

if [ "$INSTALL_FONTS" = 'yes' ] || [ "$OPT_UTIL_ET2BDF" = 'yes' ]; then
    echo 'Creating fonts/source/Makefile .....'
    EXTRA_LIBS=
    EXTRA_DEFINES=
    MAKEALL=
    INSTALLALL=

    if [ "$INSTALL_FONTS" = 'yes' ]; then
	INSTALLALL="$INSTALLALL install.fonts"

        if [ "$OPT_FONT_TAIPEI" = 'yes' ]; then MAKEALL="$MAKEALL taipei.pcf"; fi
        if [ "$OPT_FONT_ET15" = 'yes' ]; then MAKEALL="$MAKEALL et15.pcf"; fi
        if [ "$OPT_FONT_ET24K" = 'yes' ]; then MAKEALL="$MAKEALL et24k.pcf"; fi
        if [ "$OPT_FONT_ET24L" = 'yes' ]; then MAKEALL="$MAKEALL et24l.pcf"; fi
        if [ "$OPT_FONT_ET24S" = 'yes' ]; then MAKEALL="$MAKEALL et24s.pcf"; fi
        if [ "$OPT_FONT_ET24M" = 'yes' ]; then MAKEALL="$MAKEALL et24m.pcf"; fi
        if [ "$OPT_FONT_ET24R" = 'yes' ]; then MAKEALL="$MAKEALL et24r.pcf"; fi
        if [ "$OPT_FONT_ET24B" = 'yes' ]; then MAKEALL="$MAKEALL et24b.pcf"; fi
        if [ "$OPT_FONT_ETV8" = 'yes' ]; then MAKEALL="$MAKEALL vga8x15.pcf"; fi
        if [ "$OPT_FONT_ETV12" = 'yes' ]; then MAKEALL="$MAKEALL vga12x24.pcf"; fi
    fi
    if [ "$OPT_UTIL_ET2BDF" = 'yes' ]; then
	MAKEALL="et2bdf $MAKEALL"
	INSTALLALL="$INSTALLALL install.et2bdf"
    fi
    sed "s%@EXTRA_DEFINES@%$EXTRA_DEFINES%;s%@EXTRA_LIBS@%$EXTRA_LIBS%;s%@MAKEALL@%$MAKEALL%;s%@INSTALLALL@%$INSTALLALL%" fonts/source/Makefile.in > fonts/source/Makefile
fi

if [ "$INSTALL_INPTABS" = 'yes' ]; then
    echo 'Creating input_tabs/source/Makefile .....'
    EXTRA_LIBS=
    EXTRA_DEFINES=-D$SARCH
    MAKEALL=
    INSTALLALL=

    if [ "$OPT_INPTAB_DAYI" = 'yes' ]; then MAKEALL="$MAKEALL 3-dayi.tab"; fi
    if [ "$OPT_INPTAB_PHONE" = 'yes' ]; then MAKEALL="$MAKEALL phone.tab"; fi
    if [ "$OPT_INPTAB_PINYIN" = 'yes' ]; then MAKEALL="$MAKEALL pinyin.tab"; fi
    if [ "$OPT_INPTAB_BOSH" = 'yes' ]; then MAKEALL="$MAKEALL zmdbosh.tab"; fi
    if [ "$OPT_INPTAB_AR30" = 'yes' ]; then MAKEALL="$MAKEALL array30.tab"; fi
    if [ "$OPT_INPTAB_ETCJ" = 'yes' ]; then MAKEALL="$MAKEALL cj.tab"; fi
    if [ "$OPT_INPTAB_ETPHO" = 'yes' ]; then MAKEALL="$MAKEALL pho.tab"; fi
    if [ "$OPT_INPTAB_ETAR30" = 'yes' ]; then MAKEALL="$MAKEALL ar30.tab"; fi
    sed "s%@EXTRA_DEFINES@%$EXTRA_DEFINES%;s%@EXTRA_LIBS@%$EXTRA_LIBS%;s%@MAKEALL@%$MAKEALL%" input_tabs/source/Makefile.in > input_tabs/source/Makefile
fi

if [ "$INSTALL_DOCS" = 'yes' ]; then
    echo 'Creating docs/Makefile .....'
    EXTRA_LIBS=
    EXTRA_DEFINES=-D$SARCH
    MAKEALL=
    INSTALLALL=

    if [ "$INSTALL_XCIN" = 'yes' ]; then MAKEALL="$MAKEALL xcin.1"; fi
    if [ "$INSTALL_CRXVT" = 'yes' ]; then MAKEALL="$MAKEALL crxvt.1"; fi
    if [ "$OPT_UTIL_CIN2TAB" = 'yes' ]; then MAKEALL="$MAKEALL cin2tab.1"; fi
    sed "s%@EXTRA_DEFINES@%$EXTRA_DEFINES%;s%@EXTRA_LIBS@%$EXTRA_LIBS%;s%@MAKEALL@%$MAKEALL%" docs/Makefile.in > docs/Makefile
fi
    
echo 'Creating Makefile'
MAKEALL=
INSTALLALL=
if [ -f xcin/Makefile ]; then
    MAKEALL="$MAKEALL make_xcin"
    INSTALLALL="$INSTALLALL install_xcin"
fi
if [ -f crxvt/Makefile ]; then
    MAKEALL="$MAKEALL make_crxvt"
    INSTALLALL="$INSTALLALL install_crxvt"
fi
if [ -f input_tabs/source/Makefile ]; then
    MAKEALL="$MAKEALL make_inptabs"
    INSTALLALL="$INSTALLALL install_inptabs"
fi
if [ -f fonts/source/Makefile ]; then
    MAKEALL="$MAKEALL make_fonts"
    INSTALLALL="$INSTALLALL install_fonts"
fi
if [ -f docs/Makefile ]; then
    INSTALLALL="$INSTALLALL install_docs"
fi
sed "s%@MAKEALL@%$MAKEALL%;s%@INSTALLALL@%$INSTALLALL%" script/Makefile.in > Makefile

echo
echo
if [ "$chinese" = 'y' ]; then
    echo '您所做的組態設定存檔在  install.status  檔中。'
    echo '您的系統組態偵測結果存檔在  config.status  檔中。'
    echo '在 xcin/, crxvt/, input_tabs/, fonts/, 以及 docs/ 都分別存有 Makefile。'
    echo '如果您無法順利進行 make ，請試著自行修改上述這些檔案。'
    echo '如果您想清除 make 後的 object 檔與可執行檔，請執行 "make clean"。'
    echo '如果您想清除所有的設定，請執行 "make veryclean"。'
    echo
    echo '現在您可以開始執行 "make; make install"'
else
    echo 'The config file for your choice is in  install.status.'
    echo 'The config file for OS-dependence is in  config.status.'
    echo 'xcin/, crxvt/, input_tabs/, fonts/, and docs/ have their own Makefile.'
    echo 'If you cannot make, try to modify these files by yourself.'
    echo 'If you want to clear the object and executable, type "make clean".'
    echo 'If you want to clear all the settings, type "make veryclean".'
    echo
    echo 'Now you can type "make; make install"'
fi
echo
echo
