Add patches for Doxygen and GObject introspection to improve compatibility with Yacc
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -256,8 +256,9 @@
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_ALLOW_KEYWORD_MACROS=")
|
||||
endif()
|
||||
endif()
|
||||
+find_program(BISON_EXECUTABLE NAMES bison byacc yacc)
|
||||
find_package(BISON REQUIRED)
|
||||
-if(BISON_VERSION VERSION_LESS 2.7)
|
||||
+if(BISON_VERSION AND BISON_VERSION VERSION_LESS 2.7)
|
||||
message(SEND_ERROR "Doxygen requires at least bison version 2.7 (installed: ${BISON_VERSION})")
|
||||
endif()
|
||||
find_package(Threads)
|
||||
--- a/deps/libmscgen/CMakeLists.txt
|
||||
+++ b/deps/libmscgen/CMakeLists.txt
|
||||
@@ -30,6 +30,7 @@
|
||||
mscgen_ps_out.c
|
||||
mscgen_null_out.c
|
||||
${GENERATED_SRC}/mscgen_language.cpp
|
||||
+${GENERATED_SRC}/mscgen_language.h
|
||||
${GENERATED_SRC}/mscgen_lexer.cpp
|
||||
${GENERATED_SRC}/mscgen_lexer.l.h
|
||||
mscgen_api.c
|
||||
@@ -44,4 +45,5 @@
|
||||
BISON_TARGET(mscgen_language
|
||||
mscgen_language.y
|
||||
${GENERATED_SRC}/mscgen_language.cpp
|
||||
+ DEFINES_FILE ${GENERATED_SRC}/mscgen_language.h
|
||||
COMPILE_FLAGS "${YACC_FLAGS}")
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -182,7 +182,8 @@
|
||||
BISON_TARGET(constexp
|
||||
${CMAKE_CURRENT_LIST_DIR}/constexp.y
|
||||
${GENERATED_SRC}/ce_parse.cpp
|
||||
- COMPILE_FLAGS "${YACC_FLAGS}")
|
||||
+ DEFINES_FILE ${GENERATED_SRC}/ce_parse.hpp
|
||||
+ COMPILE_FLAGS "${YACC_FLAGS} -p constexpYY")
|
||||
|
||||
if(enable_coverage)
|
||||
add_custom_command(
|
||||
--- a/src/constexp.y
|
||||
+++ b/src/constexp.y
|
||||
@@ -22,6 +22,8 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
+#define YYSTACKDATA constexpYYSTACKDATA
|
||||
+
|
||||
int constexpYYerror(yyscan_t yyscanner, const char *s)
|
||||
{
|
||||
struct constexpYY_state* yyextra = constexpYYget_extra(yyscanner);
|
||||
@@ -33,7 +35,6 @@
|
||||
|
||||
%}
|
||||
|
||||
-%define api.prefix {constexpYY}
|
||||
%define api.pure full
|
||||
%lex-param {yyscan_t yyscanner}
|
||||
%parse-param {yyscan_t yyscanner}
|
||||
Reference in New Issue
Block a user