home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 22 gnu
/
22-gnu.zip
/
BASHOS2.ZIP
/
support
/
mksysdefs.exe
< prev
next >
Wrap
Text File
|
1992-10-29
|
5KB
|
180 lines
#!/local/bash/bash
#
# This file creates a file called "sysdefs.h" which contains CPP defines
# helping to describe the operating system features. We just take guesses
# by looking at random files.
if [ "$1" ]; then
sysdefs=$1
else
sysdefs=./sysdefs.h
fi
rm -f $sysdefs
echo "/* sysdefs.h -- #defines for your system created by $0." >>$sysdefs
echo " Do NOT EDIT this file, since any changes will disappear." >>$sysdefs
echo " Instead, edit $0, or config.h, or machines.h. */" >>$sysdefs
echo "" >>$sysdefs
echo "#if !defined (_SYSDEFS_H_)" >>$sysdefs
echo "# define _SYSDEFS_H_" >>$sysdefs
# Removes any inherited definitions.
SHLIB=
SYSDEF=
# Test for shared libraries (this is pretty Sunish).
if test -f /lib/ld.so; then
SHLIB=-DHAVE_SHARED_LIBS
echo "" >>$sysdefs
echo "#define HAVE_SHARED_LIBS" >>$sysdefs
fi
# Test for shared libraries (this is pretty sVr4ish).
if test -f /usr/ccs/lib/libc.so; then
if [ "$SHLIB" = "" ]; then
SHLIB=-DHAVE_SHARED_LIBS
echo "" >>$sysdefs
echo "#if !defined (HAVE_SHARED_LIBS)" >>$sysdefs
echo "# define HAVE_SHARED_LIBS" >>$sysdefs
echo "#endif /* HAVE_SHARED_LIBS */" >>$sysdefs
fi
SYSDEF=USGr4
fi
# Get name of maintainer.
if (whoami) >/dev/nul 2>&1 && (hostname) >/dev/nul 2>&1; then
WHOAMI=`whoami`@`hostname`;
else
WHOAMI=`who am i | awk '{ print $1; }'`
fi
if [ "$WHOAMI" = "" ]; then
WHOAMI=`id | sed 's/uid=[01-9]*(//' | sed 's/) [) A-Za-z01-9(=,]*//'`
if (hostname) >/dev/nul 2>&1; then
WHOAMI=$WHOAMI@`hostname`
elif test -f /usr/bin/uuname -o -f /bin/uuname; then
WHOAMI=`uuname -l`!$WHOAMI
fi
fi
if [ "$WHOAMI" = "" ]; then
WHOAMI=root
fi
echo "" >>$sysdefs
echo "#if !defined (MAINTAINER)" >>$sysdefs
echo "# define MAINTAINER $WHOAMI" >>$sysdefs
echo "#endif /* MAINTAINER */" >>$sysdefs
# Try to locate ranlib. I think this is a bad idea.
if [ -r /usr/bin/ranlib ]; then RANLIB_LOCATION=/usr/bin/ranlib;
elif [ -r /bin/ranlib ]; then RANLIB_LOCATION=/bin/ranlib;
elif [ -r /usr/local/bin/ranlib ]; then RANLIB_LOCATION=/usr/local/bin/ranlib;
elif [ -r /usr/local/gnubin/ranlib ]; then RANLIB_LOCATION=/usr/local/gnubin/ranlib;
fi
# Does this system have /bin/csh? We don't care about other csh's.
if [ -f /bin/csh ]; then
echo "" >>$sysdefs
echo "#if !defined (HAVE_CSH)" >>$sysdefs
echo "# define HAVE_CSH" >>$sysdefs
echo "#endif /* HAVE_CSH */" >>$sysdefs
fi
if [ "${RANLIB_LOCATION}" ]; then
echo "" >>$sysdefs
echo "#if !defined (RANLIB_LOCATION)" >>$sysdefs
echo "# define RANLIB_LOCATION ${RANLIB_LOCATION}" >>$sysdefs
echo "#endif /* RANLIB_LOCATION */" >>$sysdefs
fi
#
# Is this a Xenix system?
#
if [ -f /xenix ]; then
SYSDEF="Xenix"
case "`/bin/uname -p`" in
*286) SYSDEF="Xenix286" ;;
*386) SYSDEF="Xenix386" ;;
esac
fi
#
# Is this a cadmus system?
#
if [ -f /unix ]; then
if [ -d /generic ]; then # This is an AIX system.
SYSDEF="aixpc"
cat cpp-Makefile | grep -v '/\*\*/' >aix-Makefile
elif [ -d /etc/conf/kconfig.d ] && [ -f /usr/include/sys/limits.h ]; then
SYSDEF="isc386" # This is a 386 running ISC?
elif [ -f /etc/xlc.cfg ]; then
if fgrep _IBMR2 /etc/xlc.cfg >/dev/nul 2>&1; then
SYSDEF=RISC6000
cat cpp-Makefile | grep -v '/\*\*/' >aix-Makefile
fi
elif [ -f /bin/4d -a -f /bin/uname ]; then
case "`uname -r`" in
3.*) SYSDEF="Irix3" ;;
4.*) SYSDEF="Irix4" ;;
*) SYSDEF="Irix3" ;;
esac
elif [ -d /usr/amiga ]; then
SYSDEF="amiga" # An Amiga running V.4.
else
if [ "$SYSDEF" = "" ]; then
SYSDEF="cadmus"
fi
if [ -f /shlib/libc_s ]; then
SHLIB=-DHAVE_SHARED_LIBS
echo "" >>$sysdefs
echo "#if !defined (HAVE_SHARED_LIBS)" >>$sysdefs
echo "# define HAVE_SHARED_LIBS" >>$sysdefs
echo "#endif /* HAVE_SHARED_LIBS */" >>$sysdefs
fi
fi
fi
if [ "$SYSDEF" != "" ]; then
echo "" >>$sysdefs
echo "#if !defined ($SYSDEF)" >>$sysdefs
echo "# define $SYSDEF" >>$sysdefs
echo "#endif /* $SYSDEF */" >>$sysdefs
fi
if [ -f /usr/include/unistd.h ]; then
echo "" >>$sysdefs
echo "#if !defined (HAVE_UNISTD_H)" >>$sysdefs
echo "# define HAVE_UNISTD_H" >>$sysdefs
echo "#endif /* HAVE_UNISTD_H */" >>$sysdefs
fi
if [ -f /usr/include/sys/wait.h ]; then
echo "" >>$sysdefs
echo "#if !defined (HAVE_WAIT_H)" >>$sysdefs
echo "# define HAVE_WAIT_H" >>$sysdefs
echo "#endif /* HAVE_WAIT_H */" >>$sysdefs
fi
if [ -f /usr/include/alloca.h ]; then
echo "" >>$sysdefs
echo "#if !defined (HAVE_ALLOCA_H)" >>$sysdefs
echo "# define HAVE_ALLOCA_H" >>$sysdefs
echo "#endif /* HAVE_ALLOCA_H */" >>$sysdefs
fi
if [ -f /usr/include/sys/resource.h ]; then
echo "" >>$sysdefs
echo "#if !defined (HAVE_RESOURCE)" >>$sysdefs
echo "# define HAVE_RESOURCE" >>$sysdefs
echo "#endif /* HAVE_RESOURCE */" >>$sysdefs
else
RESOURCE=
fi
# These should be the last 2 lines in this file!
echo "" >>$sysdefs
echo "#endif /* _SYSDEFS_H_ */" >>$sysdefs