aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllen Winter <winter@kde.org>2006-10-06 20:00:57 +0000
committerAllen Winter <winter@kde.org>2006-10-06 20:00:57 +0000
commit364b72ed39705614bc995767d183af2b23b5e885 (patch)
tree765b4f46302e8f641f5c0cbd69b69ea3e8bb0583
parent04bc37d29b6a84246df90944cb1d6bd39e9d422b (diff)
downloadextra-cmake-modules-364b72ed39705614bc995767d183af2b23b5e885.tar.gz
extra-cmake-modules-364b72ed39705614bc995767d183af2b23b5e885.tar.bz2
For other modules that might require flex. For example kdesdk (kbabel)
svn path=/trunk/KDE/kdelibs/; revision=593108
-rw-r--r--modules/FindFlex.cmake32
1 files changed, 32 insertions, 0 deletions
diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake
new file mode 100644
index 00000000..59831ffd
--- /dev/null
+++ b/modules/FindFlex.cmake
@@ -0,0 +1,32 @@
+# - Try to find Flex
+# Once done this will define
+#
+# FLEX_FOUND - system has Flex
+# FLEX_EXECUTABLE - path of the flex executable
+# FLEX_VERSION - the version string, like "2.5.31"
+#
+
+
+FIND_PROGRAM(FLEX_EXECUTABLE NAMES flex)
+
+INCLUDE(MacroEnsureVersion)
+
+IF(FLEX_EXECUTABLE)
+ SET(FLEX_FOUND TRUE)
+
+ EXECUTE_PROCESS(COMMAND ${FLEX_EXECUTABLE} --version
+ OUTPUT_VARIABLE _FLEX_VERSION
+ )
+ string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" FLEX_VERSION "${_FLEX_VERSION}")
+ENDIF(FLEX_EXECUTABLE)
+
+IF(FLEX_FOUND)
+ IF(NOT Flex_FIND_QUIETLY)
+ MESSAGE(STATUS "Found Flex: ${FLEX_EXECUTABLE}")
+ ENDIF(NOT Flex_FIND_QUIETLY)
+ELSE(FLEX_FOUND)
+ IF(Flex_FIND_REQUIRED)
+ MESSAGE(FATAL_ERROR "Could not find Flex")
+ ENDIF(Flex_FIND_REQUIRED)
+ENDIF(FLEX_FOUND)
+