update dev300-m58
[ooovba.git] / dmake / configure.in
blob498c7b2372decf0b9716fbb65a0bb19730b4e178
2 dnl Process this file with autoconf to produce a configure script.
3 AC_PREREQ(2.59)
5 dnl Set the package version
6 dnl Don't forget to update the PACKAGE, VERSION and BUILDINFO macros in
7 dnl dmake/win95/microsft/config.h to keep the native Microsoft C++
8 dnl compiler build happy. 
9 AC_INIT(dmake, 4.12)
10 AC_CANONICAL_BUILD
11 BUILDINFO="$build"
13 AC_CONFIG_SRCDIR(man/dmake.tf)
14 AM_INIT_AUTOMAKE
16 AM_MAINTAINER_MODE
17 dnl Use this instead of AC_PROG_.. version
18 AM_PROG_CC_C_O
20 AC_CONFIG_HEADER(config.h)
22 dnl Extra parameters
23 AC_ARG_ENABLE(dbug,
24 [  --enable-dbug:          Enable build with dbug macros.
25 ],,)
27 AC_ARG_ENABLE(spawn,
28 [  --enable-spawn:         Enables the use of spawn instead of fork/exec
29                           if it is supported.
30 ],,)
31 dnl Checks for programs.
32 AC_PROG_CPP
33 AC_PROG_INSTALL
34 AC_PROG_LN_S
35 AC_PROG_MAKE_SET
36 AC_PROG_RANLIB
38 dnl Checks for utilities.
39 AC_PROG_AWK
41 dnl Checks for OS
42 AC_MSG_CHECKING([the operating system])
44 _os=`uname`
46 if test `echo $_os | $AWK -F_ '{ print $1 }'` = "CYGWIN"; then
47    if test "$GCC" = "yes"; then
48       if test `$CC -dumpmachine | $AWK -F- '{ print $3 }'` = "mingw32"; then
49          _os="MINGW"
50       else
51          _os="CYGWIN"
52       fi
53    else
54       _os="MSVC6"
55    fi
59 ## At the moment all except mingw builds are OS_TYPE unix
60 OS_TYPE=unix
62 ## The following allows like systems to share settings this is not meant to
63 ## Imply that these OS are the same thing.
64 case "$_os" in
65         "OS/2")
66           OS_VERSION=os2
67           CASE_INSENSITIVE_FS=true
68           ;;
69         "SunOS")
70           OS_VERSION=solaris  
71           ;;
72         Linux|GNU|GNU/*)
73           OS_VERSION=linux
74           ;;
75         "CYGWIN")
76           OS_VERSION=cygwin
77           CASE_INSENSITIVE_FS=true
78           ;;
79         "MINGW")
80           OS_VERSION=mingw
81           OS_TYPE=winnt
82           BUILDINFO="Windows / MinGW"
83           CASE_INSENSITIVE_FS=true
84           ;;
85         "MSVC6")
86           OS_VERSION=msvc6
87           OS_TYPE=winnt
88           BUILDINFO="Windows / MS Visual C++"
89           CASE_INSENSITIVE_FS=true
90           ;;
91         "Darwin")
92           OS_VERSION=macosx
93 # MacOSX is not garuanteed to be case insensitive, assume it's case
94 # sensitive, see issue 73661 for details.
95           ;;
96         "FreeBSD")
97           OS_VERSION=linux
98           ;;
99         "OSF1")
100           OS_VERSION=sysvr4
101           ;;
102         "NetBSD")
103           OS_VERSION=linux
104           ;;
105         "IRIX")
106           OS_VERSION=sysvr4
107           ;;
108         "IRIX64")
109           OS_VERSION=sysvr4
110           ;;
111         "AIX")
112           OS_VERSION=sysvr4
113           ;;
114         "OpenBSD")
115           OS_VERSION=linux
116           ;;
117    *)
118       AC_MSG_ERROR([$_os operating system is not suitable to build dmake!])
119       ;;
120 esac
122 AC_MSG_RESULT([checked ($_os)])
124 dnl Set OS dependent settings
125 AM_CONDITIONAL(OSTYPEUNIX, test x$OS_TYPE = xunix)
126 AM_CONDITIONAL(OSTYPEWIN32, test x$OS_TYPE = xwinnt)
128 AC_SUBST(OS_TYPE)
129 AC_SUBST(OS_VERSION)
130 AC_DEFINE_UNQUOTED(BUILDINFO, "$BUILDINFO", [Build info string])
132 if test x$CASE_INSENSITIVE_FS = xtrue; then
133 dnl Mac OSX with HFS+ and Windows FS are case insensitive (although case
134 dnl preserving).
135 AC_DEFINE(CASE_INSENSITIVE_FS, 1, [Assume case insensitive file system.])
138 dnl =============================================
139 dnl Enable dbug
140 dnl =============================================
141 AC_MSG_CHECKING([whether to do a build with dbug macros])
142 if test -n "$enable_dbug" && test "$enable_dbug" != "no"; then
143    DBUG="1"
144    CPPFLAGS="$CPPFLAGS -DDBUG=1 -I\$(top_srcdir)/dbug/dbug"
145    AC_MSG_RESULT([yes])
146 else
147    DBUG=""
148    AC_MSG_RESULT([no])
150 AM_CONDITIONAL(DBUG, test -n "$DBUG")
152 dnl =============================================
153 dnl Enable spawn
154 dnl =============================================
155 AC_MSG_CHECKING([if spawn shall be used])
156 if test -n "$enable_spawn" && test "$enable_spawn" != "no"; then
157    AC_DEFINE(ENABLE_SPAWN, 1, [Enables the use of spawn instead of fork/exec if it is supported.])
158    AC_MSG_RESULT([yes])
159 else
160    AC_MSG_RESULT([no])
163 dnl Predefine the DMAKEROOT macro for unix targets.
164 eval dmakerootprefix="$datarootdir"
165 # $datadir is ${prefix}/share if not overridden
166 test "x$dmakerootprefix" != "x${dmakerootprefix##NONE}" && dmakerootprefix=${ac_default_prefix}/share
168 if test x$OS_TYPE = xunix; then
169 DMAKEROOT_H_LINE1='"DMAKEROOT := '${dmakerootprefix}'/startup",'
171 AC_SUBST(DMAKEROOT_H_LINE1)
173 dnl List (all possible) *.in files
174 AC_CONFIG_FILES(dmakeroot.h Makefile startup/config.mk \
175                 startup/Makefile startup/unix/Makefile \
176                 startup/unix/linux/Makefile startup/unix/solaris/Makefile \
177                 startup/unix/macosx/Makefile startup/unix/sysvr4/Makefile \
178                 startup/unix/cygwin/Makefile \
179                 startup/unix/os2/Makefile \
180                 startup/winnt/Makefile startup/winnt/mingw/Makefile \
181                 startup/winnt/msvc6/Makefile \
182                 tests/Makefile)
184 dnl Checks for libraries.
186 dnl Initialize libtool
187 #AM_PROG_LIBTOOL
189 dnl Checks for header files.
190 AC_HEADER_DIRENT
191 AC_HEADER_STDC
192 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 sys/time.h)
194 dnl Checks for typedefs, structures, and compiler characteristics.
195 AC_C_CONST
196 AC_TYPE_OFF_T
197 AC_TYPE_SIZE_T
198 AC_CHECK_TYPES(int8)
199 AC_CHECK_TYPES(uint8)
200 AC_CHECK_TYPES(int16)
201 AC_CHECK_TYPES(uint16)
202 AC_CHECK_TYPES(int32)
203 AC_CHECK_TYPES(uint32)
204 AC_HEADER_TIME
205 AC_CHECK_SIZEOF(short, 2)
206 AC_CHECK_SIZEOF(int, 4)
207 AC_CHECK_SIZEOF(long, 4)
209 dnl Checks for library functions.
210 AC_FUNC_MEMCMP
211 AC_TYPE_SIGNAL
212 AC_FUNC_UTIME_NULL
213 AC_FUNC_VPRINTF
214 AC_CHECK_FUNCS(getcwd getwd strerror setvbuf tzset settz mkstemp tempnam gettimeofday)
215 # Usefull, but special to newlib/MSVC
216 AC_CHECK_FUNCS(strlwr)
218 dnl *** output to disk ***
219 AC_OUTPUT