]> git.draconx.ca Git - cdecl99.git/blobdiff - configure.ac
libcdecl: Use Bison's api.token.raw feature.
[cdecl99.git] / configure.ac
index f1bd702e331e1c9c2246fa94a10968a788b30b45..b9633244cd13b551b049ae9e3ed4f2d3f80cb96e 100644 (file)
@@ -98,6 +98,26 @@ AS_IF([test x"$dx_cv_bison_warn_no_deprecated" = x"yes"],
   [AS_VAR_APPEND([BISON_COMPAT], ["${BISON_COMPAT:+ }-Wno-deprecated"])])
 AC_SUBST([BISON_COMPAT])
 
+AS_IF([test x"$dx_cv_bison_define_cmdline" != x"yes"],
+  [dx_cv_bison_api_token_raw=no])
+AC_CACHE_CHECK([whether $BISON supports api.token.raw],
+  [dx_cv_bison_api_token_raw], [dx_cv_bison_api_token_raw=no
+cat >conftest.y <<'EOF'
+%token T_TEST
+%{
+int yylex(void) { return 0; }
+void yyerror(const char *msg) { }
+%}
+%%
+input:
+EOF
+AS_IF([$BISON --define api.token.raw conftest.y >&AS_MESSAGE_LOG_FD 2>&1],
+[AC_COMPUTE_INT([testval], [T_TEST], [#include "conftest.tab.c"
+])
+AS_IF([test "$testval" -lt 256], [dx_cv_bison_api_token_raw=yes])])])
+AS_IF([test x"$dx_cv_bison_api_token_raw" = x"yes"],
+  [AS_VAR_APPEND([BISON_COMPAT], [" --define api.token.raw"])])
+
 AH_TOP([#include <conf_pre.h>])
 AH_BOTTOM([#include <conf_post.h>])