release 1.3.4
[cygwin-run.git] / configure.ac
blob96cb8d10f13c6b4ca3ba3180e842fb02ad957203
1 dnl Process this file with autoconf to produce a configure script.
3 dnl Auto* initialization
4 AC_PREREQ([2.69])
5 AC_INIT([run], [1.3.4], [cygwin@cygwin.com])
6 AC_CONFIG_SRCDIR(src/run.c)
7 AC_CONFIG_AUX_DIR([build-aux])
8 AC_CONFIG_MACRO_DIR([m4])
9 AM_INIT_AUTOMAKE([1.12 silent-rules tar-ustar dist-xz no-dist-gzip])
10 AM_CONFIG_HEADER([config.h])
11 AM_MAINTAINER_MODE
12 AM_SILENT_RULES
14 AC_CANONICAL_HOST
15 AC_CHECK_TOOL([RC],[windres], [])
16 if test "x$RC" = "x" ; then
17       AC_MSG_ERROR([No windows resource compiler found.  Cannot build.])
20 VERSION_MAJOR=`echo $VERSION | cut -f1 -d.`
21 VERSION_MINOR=`echo $VERSION | cut -f2 -d.`
22 VERSION_PATCH=`echo $VERSION | cut -f3 -d.`
24 AC_SUBST(VERSION_MAJOR)
25 AC_SUBST(VERSION_MINOR)
26 AC_SUBST(VERSION_PATCH)
28 # enable options
29 AC_ARG_ENABLE(
30   [silent],
31   AS_HELP_STRING(
32     [--enable-silent],
33     [operation is completely silent (default)]),
34   [cx_enable_silent=$enableval],
35   [cx_enable_silent=yes])
36 if test x"$cx_enable_silent" = xyes ; then
37   AC_DEFINE([SILENT],1,[Define this for completely silent operation])
40 AC_ARG_ENABLE(
41   [gui],
42   AS_HELP_STRING(
43     [--enable-gui],
44     [allow use of MSWin popup windows for messages (default)]),
45   [cx_enable_gui=$enableval],
46   [cx_enable_gui=yes])
47 if test x"$cx_enable_gui" = xyes ; then
48   AC_DEFINE([ENABLE_GUI],1,[Define this to 1 to allow MSWin popup windows])
49 else
50   AC_DEFINE([ENABLE_GUI],0)
53 AC_ARG_ENABLE(
54   [tty],
55   AS_HELP_STRING(
56     [--enable-tty],
57     [allow use of TTY console for messages (default)]),
58   [cx_enable_tty=$enableval],
59   [cx_enable_tty=yes])
60 if test x"$cx_enable_tty" = xyes ; then
61   AC_DEFINE([ENABLE_TTY],1,[Define this to 1 to allow TTY console messages])
62 else
63   AC_DEFINE([ENABLE_TTY],0)
66 AC_ARG_ENABLE(
67   [debug],
68   AS_HELP_STRING(
69     [--enable-debug],
70     [turn on debugging messages]),
71   [cx_enable_debug=$enableval],
72   [cx_enable_debug=no])
73 if test x"$cx_enable_debug" = xyes ; then
74   AC_DEFINE([ENABLE_DEBUG],1,[Define this enable debugging messages])
77 if test x"$cx_enable_tty" != xyes ; then
78   if test x"$cx_enable_gui" != xyes ; then
79     AC_MSG_ERROR([At least one of --enable-gui and --enable-tty must be "yes"])
80   fi
83 # Checks for programs.
84 AC_PROG_CC
85 AM_PROG_CC_C_O
86 AM_PROG_AR
87 AC_PROG_INSTALL
89 # checks for header files
90 AC_CHECK_HEADERS([float.h locale.h malloc.h stdlib.h string.h assert.h pwd.h unistd.h])
91 AC_CHECK_HEADERS([getopt.h sys/cygwin.h windows.h])
93 # Checks for typedefs, structures, and compiler characteristics.
94 AC_C_CONST
95 AC_TYPE_SIZE_T
96 AC_TYPE_SSIZE_T
98 # Checks for library functions.
99 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
100 AC_FUNC_MALLOC
101 AC_FUNC_REALLOC
102 AC_FUNC_STRTOD
103 AC_FUNC_VPRINTF
104 AC_CHECK_FUNCS([getcwd memset putenv setenv setlocale strcasecmp strchr strcspn strdup strerror strrchr strtol])
105 AC_CHECK_FUNC([getopt_long], [], [replace_getopt=yes])
106 AM_CONDITIONAL([REPLACE_GETOPT], [test "$replace_getopt" = yes])
107 if test "$replace_getopt" = yes; then
108       AC_DEFINE([REPLACE_GETOPT], 1,
109         [Define if you must use the replacement getopt_long implementation])
112 # Use cygwin_conv_path as a proxy for cygwin-1.7
113 AC_CHECK_DECLS([cygwin_conv_path],[],[
114 case "$host" in
115   *cygwin* ) AC_MSG_ERROR([At least cygwin-1.7 is required]) ;;
116 esac],dnl
117   [[#include <sys/cygwin.h>]])
119 dnl should only exist on windows, I hope
120 AC_CHECK_STDCALL_FUNC([OpenClipboard],[void *])
121 if test x"$ac_cv_func_OpenClipboard" = xyes ; then
122     AC_DEFINE([HAVE_OPENCLIPBOARD], 1,
123         [Define if you have the __stdcall__ OpenClipboard function])
126 RUN_FUNC_SPAWNV_ARGTYPE3
127 RUN_FUNC__SPAWNV_ARGTYPE3
128 AC_DEFINE([ORIGINAL_RUN], [], [Build utility routines for run.exe, not run2.exe])
130 AH_BOTTOM([
131 #ifndef ENABLE_GUI
132 # define ENABLE_GUI 1
133 #endif
134 #ifndef ENABLE_TTY
135 # define ENABLE_TTY 1
136 #endif
137 #if (ENABLE_TTY == 0) && (ENABLE_GUI == 0)
138 # error At least one of ENABLE_GUI and ENABLE_TTY must be 1
139 #endif
142 AC_CONFIG_FILES([Makefile
143         src/Makefile
144         src/resource.rc
145         src/run.1 ])
146 AC_OUTPUT