aboutsummaryrefslogtreecommitdiff
path: root/fixincludes/configure.ac
blob: 4e78511d20fc51bc4b807492d97041a86283668f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129

AC_INIT(fixincludes, [ ])
AC_CONFIG_SRCDIR(inclhack.def)
AC_CONFIG_AUX_DIR(..)
m4_sinclude(../libtool.m4)
AC_CANONICAL_SYSTEM
AC_PROG_CC
AC_USE_SYSTEM_EXTENSIONS
AC_PROG_SED

# Figure out what compiler warnings we can enable.
# See config/warnings.m4 for details.

ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings -Wstrict-prototypes \
			  -Wmissing-prototypes -Wold-style-definition \
			  -Wmissing-format-attribute -Wno-overlength-strings])
ACX_PROG_CC_WARNING_ALMOST_PEDANTIC([-Wno-long-long])

# Only enable with --enable-werror-always until existing warnings are
# corrected.
ACX_PROG_CC_WARNINGS_ARE_ERRORS([manual])

# Determine the noncanonical target name, for directory use.
ACX_NONCANONICAL_TARGET

# Specify the local prefix
local_prefix=
AC_ARG_WITH(local-prefix,
[  --with-local-prefix=DIR specifies directory to put local include],
[case "${withval}" in
yes)	AC_MSG_ERROR(bad value ${withval} given for local include directory prefix) ;;
no)	;;
*)	local_prefix=$with_local_prefix ;;
esac])

# Default local prefix if it is empty
if test x$local_prefix = x; then
	local_prefix=/usr/local
fi

# Choose one or two-process fix methodology.  Systems that cannot handle
# bi-directional pipes must use the two process method.
#
AC_ARG_ENABLE([twoprocess],
[  --enable-twoprocess       Use a separate process to apply the fixes],
[if test "x$enable_twoprocess" = xyes; then
	TARGET=twoprocess
else
	TARGET=oneprocess
fi],
[case $host in
	i?86-*-msdosdjgpp* | \
	i?86-*-mingw32* | \
	x86_64-*-mingw32* | \
	*-*-beos* | \
        *-*-*vms*)
		TARGET=twoprocess
		;;

	* )
		TARGET=oneprocess
		;;
esac])
AC_SUBST(TARGET)

if test $TARGET = twoprocess; then
	AC_DEFINE(SEPARATE_FIX_PROC, 1,
		  [Define if testing and fixing are done by separate process])
fi

# Enable --enable-host-pie.
AC_ARG_ENABLE(host-pie,
[AS_HELP_STRING([--enable-host-pie],
       [build host code as PIE])],
[PICFLAG=-fPIE; LD_PICFLAG=-pie], [])
AC_SUBST(PICFLAG)
AC_SUBST(LD_PICFLAG)

case $host in
	vax-dec-bsd* )
		AC_DEFINE(exit, xexit, [Define to xexit if the host system does not support atexit])
		AC_DEFINE(atexit, xatexit, [Define to xatexit if the host system does not support atexit])
		;;
esac

AC_DEFINE_UNQUOTED([EXE_EXT], "$ac_exeext",
  [Defined to the executable file extension on the host system])

# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([stddef.h stdlib.h strings.h unistd.h fcntl.h sys/file.h \
	sys/stat.h])
define(fixincludes_UNLOCKED_FUNCS, clearerr_unlocked feof_unlocked dnl
  ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked dnl
  fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked dnl
  fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked dnl
  putchar_unlocked putc_unlocked)
AC_CHECK_FUNCS(fixincludes_UNLOCKED_FUNCS)
AC_CHECK_DECLS([abort, asprintf, basename(char *), errno, vasprintf, memmem])
AC_CHECK_DECLS(m4_split(m4_normalize(fixincludes_UNLOCKED_FUNCS)))

# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST

# Checks for library functions.
GCC_AC_FUNC_MMAP_BLACKLIST

AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
AC_ARG_ENABLE(maintainer-mode,
[  --enable-maintainer-mode enable make rules and dependencies not useful
                          (and sometimes confusing) to the casual installer],
      USE_MAINTAINER_MODE=$enableval,
      USE_MAINTAINER_MODE=no)
AC_MSG_RESULT($USE_MAINTAINER_MODE)
if test "$USE_MAINTAINER_MODE" = yes; then
  MAINT=
else
  MAINT='#'
fi	
AC_SUBST(MAINT)
AC_DEFINE_UNQUOTED([SED_PROGRAM], "${SED}",
   [Defined to the best working sed program on the host system])

# Determine what GCC version number to use in filesystem paths.
GCC_BASE_VER

AC_CONFIG_HEADERS(config.h, [echo timestamp > stamp-h])
AC_CONFIG_FILES(Makefile mkheaders.almost:mkheaders.in)
AC_OUTPUT