(gl_GETOPT_SUBSTITUTE, gl_PREREQ_GETOPT): New macros.
[gnulib.git] / m4 / getopt.m4
1 # getopt.m4 serial 3
2 dnl Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
3 dnl This file is free software, distributed under the terms of the GNU
4 dnl General Public License.  As a special exception to the GNU General
5 dnl Public License, this file may be distributed as part of a program
6 dnl that contains a configuration script generated by Autoconf, under
7 dnl the same distribution terms as the rest of that program.
8
9 # The getopt module assume you want GNU getopt, with getopt_long etc,
10 # rather than vanilla POSIX getopt.  This means your your code should
11 # always include <getopt.h> for the getopt prototypes.
12
13 AC_DEFUN([gl_GETOPT_SUBSTITUTE],
14 [
15   GETOPT_H=getopt.h
16   AC_LIBOBJ([getopt])
17   AC_LIBOBJ([getopt1])
18   AC_DEFINE([optarg], [rpl_optarg],
19     [Define to rpl_optarg if the replacement variable should be used.])
20   AC_DEFINE([optind], [rpl_optind],
21     [Define to rpl_optind if the replacement variable should be used.])
22   AC_DEFINE([optopt], [rpl_optopt],
23     [Define to rpl_optopt if the replacement variable should be used.])
24   AC_DEFINE([getopt], [rpl_getopt],
25     [Define to rpl_getopt if the replacement function should be used.])
26   AC_DEFINE([getopt_long], [rpl_getopt_long],
27     [Define to rpl_getopt_long if the replacement function should be used.])
28   AC_DEFINE([getopt_long_only], [rpl_getopt_long_only],
29     [Define to rpl_getopt_long_only if the replacement function should be used.])
30   AC_SUBST([GETOPT_H])
31 ])
32
33 AC_DEFUN([gl_GETOPT],
34 [
35   gl_PREREQ_GETOPT
36
37   GETOPT_H=
38   AC_CHECK_HEADERS([getopt.h], [], [GETOPT_H=getopt.h])
39   AC_CHECK_FUNCS([getopt_long_only], [], [GETOPT_H=getopt.h])
40
41   if test -n "$GETOPT_H"; then
42      gl_GETOPT_SUBSTITUTE
43   fi
44 ])
45
46 # Prerequisites of lib/getopt*.
47 AC_DEFUN([gl_PREREQ_GETOPT], [:])