find_package(BISON 2.3.0 REQUIRED)
find_package(FLEX 2.5.31 REQUIRED)
-if("${FLEX_VERSION}" VERSION_LESS "2.5.31")
- message(SEND_ERROR "Your version of flex is too old. You can specify an alternative path using -DFLEX_EXECUTABLE=/path/to/flex")
-endif()
-
bison_target(config_parser config_parser.yy ${CMAKE_CURRENT_BINARY_DIR}/config_parser.cc)
set_property(SOURCE ${CMAKE_CURRENT_BINARY_DIR}/config_parser.cc PROPERTY EXCLUDE_UNITY_BUILD TRUE)
FLEX_VERSION "${FLEX_version_output}")
ENDIF()
+ IF(FLEX_FIND_VERSION)
+ IF("${FLEX_VERSION}" VERSION_LESS "${FLEX_FIND_VERSION}")
+ MESSAGE(SEND_ERROR "Your version of flex is too old. You can specify an alternative path using -DFLEX_EXECUTABLE=/path/to/flex")
+ ENDIF()
+ ENDIF()
+
#============================================================
# FLEX_TARGET (public macro)
#============================================================
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FLEX FLEX_EXECUTABLE
FLEX_VERSION)
-# FindFLEX.cmake ends here
\ No newline at end of file
+# FindFLEX.cmake ends here
find_package(BISON 2.3.0 REQUIRED)
find_package(FLEX 2.5.31 REQUIRED)
-if("${FLEX_VERSION}" VERSION_LESS "2.5.31")
- message(SEND_ERROR "Your version of flex is too old. You can specify an alternative path using -DFLEX_EXECUTABLE=/path/to/flex")
-endif()
-
bison_target(class_parser class_parser.yy ${CMAKE_CURRENT_BINARY_DIR}/class_parser.cc)
flex_target(class_lexer class_lexer.ll ${CMAKE_CURRENT_BINARY_DIR}/class_lexer.cc)
add_flex_bison_dependency(class_lexer class_parser)