1
1

Try to find the installed flex on current windows system first, if it's not there, just use the one comes along with the source.

This commit was SVN r20642.
Этот коммит содержится в:
Shiqing Fan 2009-02-26 13:03:53 +00:00
родитель 4c0e8e1e69
Коммит 4d3f801dbd
4 изменённых файлов: 19 добавлений и 7 удалений

Просмотреть файл

@ -1,5 +1,5 @@
#
# Copyright (c) 2007-2008 High Performance Computing Center Stuttgart,
# Copyright (c) 2007-2009 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved.
# $COPYRIGHT$
#
@ -19,10 +19,19 @@ MACRO(FIND_FLEX)
IF(NOT FLEX_FOUND)
MESSAGE(STATUS "Check for working flex...")
# first find out if it's already installed somewhere
FIND_PROGRAM(FLEX_EXECUTABLE_SYS NAMES flex)
IF (WIN32)
SET(FLEX_EXECUTABLE "${CMAKE_SOURCE_DIR}/contrib/platform/win32/bin/flex.exe" CACHE FILEPATH "Flex")
IF(FLEX_EXECUTABLE_SYS)
SET(FLEX_EXECUTABLE ${FLEX_EXECUTABLE_SYS} CACHE FILEPATH "Flex")
ELSE(FLEX_EXECUTABLE_SYS)
# in case that no flex is installed, use our own version
SET(FLEX_EXECUTABLE "${CMAKE_SOURCE_DIR}/contrib/platform/win32/bin/flex.exe" CACHE FILEPATH "Flex")
ENDIF(FLEX_EXECUTABLE_SYS)
ELSE(WIN32)
FIND_PROGRAM(FLEX_EXECUTABLE NAMES flex)
# nothing to do here at moment.
ENDIF(WIN32)
IF(FLEX_EXECUTABLE)
@ -66,6 +75,8 @@ MACRO(ADD_FLEX_FILE _sourcelist _source _prefix _output_dir)
SET(_out ${_output_dir}/${_basename}.c)
ENDIF(NOT _prefix_length EQUAL 0)
#MESSAGE("${FLEX_EXECUTABLE} -o${_out} ${_args} ${_in}")
FILE(MAKE_DIRECTORY ${_output_dir})
EXECUTE_PROCESS(
COMMAND ${FLEX_EXECUTABLE} -o${_out} ${_args} ${_in}

Просмотреть файл

@ -1,5 +1,5 @@
#
# Copyright (c) 2007-2008 High Performance Computing Center Stuttgart,
# Copyright (c) 2007-2009 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved.
# Copyright (c) 2008 The University of Tennessee and The University
# of Tennessee Research Foundation. All rights
@ -69,6 +69,10 @@ IF(WIN32)
OMPI_MICROSOFT_COMPILER ()
ENDIF(WIN32)
# find flex command
INCLUDE (find_flex)
FIND_FLEX()
# Get current time and date.
EXECUTE_PROCESS(COMMAND cmd /C time /t
OUTPUT_VARIABLE CURRENT_TIME)

Просмотреть файл

@ -76,8 +76,6 @@ FOREACH(OPAL_SUBDIR ${OPAL_SUBDIRS})
ENDFOREACH(OPAL_SUBDIR ${OPAL_SUBDIRS})
# Generate flex files.
INCLUDE (find_flex)
FIND_FLEX()
ADD_FLEX_FILE(OPAL_SOURCE_FILES ./util/keyval/keyval_lex.l opal_util_keyval_yy "${PROJECT_BINARY_DIR}/util/keyval/")
ADD_FLEX_FILE(OPAL_SOURCE_FILES ./util/show_help_lex.l opal_show_help_yy "${PROJECT_BINARY_DIR}/util/")

Просмотреть файл

@ -47,7 +47,6 @@ FOREACH(ORTE_SUBDIR ${ORTE_SUBDIRS})
ENDFOREACH(ORTE_SUBDIR ${ORTE_SUBDIRS})
# Generate flex files.
INCLUDE (find_flex)
ADD_FLEX_FILE(ORTE_SOURCE_FILES "./util/hostfile/hostfile_lex.l" "orte_util_hostfile_"
"${PROJECT_BINARY_DIR}/util/hostfile/")
SET_SOURCE_FILES_PROPERTIES(${PROJECT_BINARY_DIR}/util/hostfile/hostfile_lex.c