summaryrefslogtreecommitdiff
path: root/m4/getopt_long.m4
blob: 59e9d81487c004cb67df0880c16f2a7462d1eb0d (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
dnl ---------------------------------------------
dnl Check for GNU getopt_long()
dnl ---------------------------------------------

AC_DEFUN([AC_GETOPT_LONG], [
  AC_MSG_CHECKING(for GNU getopt_long)
  AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <stdio.h>
#include <stdlib.h>
#include <getopt.h>

static struct option long_options[] = {
  {"help"    , no_argument, 0, 1 },
  {"version" , no_argument, 0, 2 },
  {0         , no_argument, 0, 0 }
};

int main (int argc, char **argv) {
  int option_index = 0;
  int c;
  opterr = 0;
  while ((c = getopt_long (argc, argv, "?hv",
			   long_options, &option_index)) != EOF)
    ;
  return 0;
}
	]])],
	[AC_MSG_RESULT(yes);
	 ac_getopt_long=yes;
	 AC_DEFINE(HAVE_GETOPT_LONG,,[Define this if you have GNU getopt_long() implemented])],
	[AC_MSG_RESULT(no); ac_getopt_long=no],
	[AC_MSG_RESULT(no); ac_getopt_long=no])
  AM_CONDITIONAL(HAVE_GETOPT_LONG, test x"$ac_getopt_long" = "xyes")
])