194 lines
4.1 KiB
Text
Executable file
194 lines
4.1 KiB
Text
Executable file
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
AC_PREREQ(2.50)
|
|
AC_INIT
|
|
|
|
dnl set the DMAKEROOT
|
|
#AC_FUNC_SET_DMAKEROOT
|
|
PACKAGE=dmake
|
|
VERSION=4.2
|
|
|
|
AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
|
|
AM_MAINTAINER_MODE
|
|
|
|
dnl Checks for programs.
|
|
AC_PROG_CC
|
|
AC_PROG_CPP
|
|
AC_PROG_INSTALL
|
|
AC_PROG_LN_S
|
|
AC_PROG_MAKE_SET
|
|
AC_PROG_RANLIB
|
|
|
|
dnl Checks for utilities.
|
|
AC_PROG_AWK
|
|
|
|
dnl Checks for libraries.
|
|
|
|
dnl Initialize libtool
|
|
#AM_PROG_LIBTOOL
|
|
|
|
|
|
dnl Checks for header files.
|
|
AC_HEADER_DIRENT
|
|
AC_HEADER_STDC
|
|
AC_CHECK_HEADERS(fcntl.h limits.h strings.h sys/types.h sys/stat.h unistd.h errno.h utime.h spawn.h wait.h sys/wait.h)
|
|
|
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
|
AC_C_CONST
|
|
AC_TYPE_OFF_T
|
|
AC_TYPE_SIZE_T
|
|
AC_HEADER_TIME
|
|
AC_CHECK_SIZEOF(short, 2)
|
|
AC_CHECK_SIZEOF(int, 4)
|
|
AC_CHECK_SIZEOF(long, 4)
|
|
|
|
dnl Checks for library functions.
|
|
AC_FUNC_MEMCMP
|
|
AC_TYPE_SIGNAL
|
|
AC_FUNC_UTIME_NULL
|
|
AC_FUNC_VPRINTF
|
|
AC_CHECK_FUNCS(getcwd getwd putenv strcspn strerror strspn strstr setvbuf tzset settz)
|
|
|
|
dnl Checks for OS
|
|
AC_MSG_CHECKING([the operating system])
|
|
|
|
_os=`uname`
|
|
|
|
if test `echo $_os | $AWK -F_ '{ print $1 }'` = "CYGWIN"; then
|
|
if test "$GCC" = "yes"; then
|
|
if test `$CC -dumpmachine | $AWK -F- '{ print $3 }'` = "mingw32"; then
|
|
_os="MINGW"
|
|
else
|
|
_os="CYGWIN"
|
|
fi
|
|
else
|
|
_os="MSVC6"
|
|
fi
|
|
fi
|
|
|
|
|
|
## At the moment all except mingw builds are OS_TYPE unix
|
|
OS_TYPE=unix
|
|
|
|
## The following allows like systems to share settings this is not meant to
|
|
## Imply that these OS are the same thing.
|
|
case "$_os" in
|
|
"SunOS")
|
|
OS_VERSION=solaris
|
|
;;
|
|
"Linux")
|
|
OS_VERSION=linux
|
|
;;
|
|
"CYGWIN")
|
|
OS_VERSION=cygwin
|
|
;;
|
|
"MINGW")
|
|
OS_VERSION=mingw
|
|
OS_TYPE=winnt
|
|
;;
|
|
"MSVC6")
|
|
OS_VERSION=msvc6
|
|
OS_TYPE=winnt
|
|
;;
|
|
"Darwin")
|
|
OS_VERSION=macosx
|
|
;;
|
|
"FreeBSD")
|
|
OS_VERSION=linux
|
|
;;
|
|
"OSF1")
|
|
OS_VERSION=sysvr4
|
|
;;
|
|
"NetBSD")
|
|
OS_VERSION=linux
|
|
;;
|
|
"IRIX")
|
|
OS_VERSION=sysvr4
|
|
;;
|
|
"IRIX64")
|
|
OS_VERSION=sysvr4
|
|
;;
|
|
"GNU")
|
|
OS_VERSION=linux
|
|
;;
|
|
*)
|
|
AC_MSG_ERROR([$_os operating system is not suitable to build dmake!])
|
|
;;
|
|
esac
|
|
|
|
AC_MSG_RESULT([checked ($_os)])
|
|
|
|
if test x$OS_TYPE = xunix; then
|
|
OS_SUBDIRS=["unix startup"]
|
|
OS_LIBRARY=unix/libunix.a
|
|
else
|
|
OS_SUBDIRS=["win95 msdos startup"]
|
|
OS_LIBRARY=["win95/libwin95.a msdos/libmsdos.a win95/microsft/libmsft.a"]
|
|
fi
|
|
|
|
AC_SUBST(OS_TYPE)
|
|
AC_SUBST(OS_VERSION)
|
|
AC_SUBST(OS_SUBDIRS)
|
|
AC_SUBST(OS_LIBRARY)
|
|
|
|
AM_CONFIG_HEADER(config.h)
|
|
|
|
AC_CONFIG_FILES(Makefile unix/Makefile startup/Makefile startup/unix/Makefile \
|
|
startup/unix/linux/Makefile startup/unix/solaris/Makefile \
|
|
startup/unix/macosx/Makefile startup/unix/sysvr4/Makefile \
|
|
startup/unix/cygwin/Makefile \
|
|
startup/winnt/Makefile startup/winnt/mingw/Makefile \
|
|
startup/winnt/msvc6/Makefile \
|
|
msdos/Makefile win95/Makefile win95/microsft/Makefile )
|
|
|
|
dnl ******************************
|
|
dnl *** output the whole stuff ***
|
|
dnl ******************************
|
|
|
|
AC_CONFIG_COMMANDS_POST([
|
|
|
|
|
|
## Generate `dmakeroot.h' in two cases
|
|
## 1. `config.status' is run either explicitly, or via configure.
|
|
## Esp. not when it is run in `Makefile' to generate makefiles and
|
|
## config.h
|
|
## 2. CONFIG_OTHER is set explicitly
|
|
##
|
|
## Case 1 is difficult. We know that `automake' sets one of
|
|
## CONFIG_FILES or CONFIG_HEADERS to empty. This heuristic works
|
|
## only when AM_CONFIG_HEADER is set, however.
|
|
|
|
if test -n "${CONFIG_FILES}" && test -n "${CONFIG_HEADERS}"; then
|
|
# Both CONFIG_FILES and CONFIG_HEADERS are non-empty ==> Case 1
|
|
CONFIG_OTHER=${CONFIG_OTHER:-dmakeroot.h}
|
|
fi
|
|
outfile=dmakeroot.h-tmp
|
|
cat > $outfile <<\_______EOF
|
|
/* dmakeroot.h
|
|
*
|
|
* This is a generated file. Please modify `configure.in'
|
|
*/
|
|
|
|
_______EOF
|
|
|
|
if test x$prefix != x; then
|
|
if test x$OS_TYPE = xunix; then
|
|
echo '"DMAKEROOT := '$prefix'/share/startup",' >> $outfile
|
|
fi
|
|
echo '"OS := '${OS_VERSION}'",' >> $outfile
|
|
fi
|
|
if cmp -s $outfile dmakeroot.h; then
|
|
echo dmakeroot.h is unchanged
|
|
rm -f $outfile
|
|
else
|
|
mv $outfile dmakeroot.h
|
|
fi
|
|
])
|
|
|
|
|
|
dnl set the DMAKEROOT
|
|
AC_SET_DMAKEROOT
|
|
|
|
dnl *** output to disk ***
|
|
AC_OUTPUT
|
|
|