1
1

Require a modern version of flex to make a dist tarball so that it

generates Windows-friendly *_lex.c files.  Update HACKING to match.

Also need r22467 in the CMRs to fix how the pcie btl compiles and
distributes its .l file.

cmr:v1.4
cmr:v1.5

This commit was SVN r22468.

The following SVN revision numbers were found above:
  r22467 --> open-mpi/ompi@1a7b7f7180
Этот коммит содержится в:
Jeff Squyres 2010-01-22 16:39:38 +00:00
родитель 1a7b7f7180
Коммит 08fbd6c644
2 изменённых файлов: 32 добавлений и 7 удалений

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

@ -8,7 +8,7 @@ Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
University of Stuttgart. All rights reserved.
Copyright (c) 2004-2005 The Regents of the University of California.
All rights reserved.
Copyright (c) 2008 Cisco Systems, Inc. All rights reserved.
Copyright (c) 2008-2010 Cisco Systems, Inc. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
@ -256,11 +256,18 @@ supported: given the choice of making parsing code portable between
all flavors of lex and doing more interesting work on Open MPI, we
greatly prefer the latter.
Several developers use the stable flex version v2.5.4a from July of
1997. Others have upgraded to more recent versions; these also seem
to work fine. Note that no testing has been performed to see what the
minimum version of Flex is required by Open MPI. We suggest that you
use v2.5.4a at the earliest.
Several POSIXly-oriented developers use the stable flex version
v2.5.4a from July of 1997. Others have upgraded to more recent
versions; these also seem to work fine. Note that no testing has been
performed to see what the minimum version of Flex is required by Open
MPI. We suggest that you use v2.5.4a at the earliest.
*** NOTE: Windows builds of Open MPI require Flex version 2.5.35.
Specifically, we know that v2.5.35 works and 2.5.4a does not. We have
not tested to figure out exactly what the minimum required flex
version is on Windows; we suggest that you use 2.5.35 at the earliest.
It is for this reason that the contrib/dist/make_dist_tarball script
checks for a Windows-friendly version of flex before continuing.
Note that the flex-generated code generates some compiler warnings on
some platforms, but the warnings do not seem to be consistent or

20
contrib/dist/make_dist_tarball поставляемый
Просмотреть файл

@ -26,6 +26,7 @@ M4_TARGET_VERSION=1.4.13
AM_TARGET_VERSION=1.11
AC_TARGET_VERSION=2.65
LT_TARGET_VERSION=2.2.6b
FLEX_TARGET_VERSION=2.5.35
#
# Check command line flags
@ -66,6 +67,7 @@ check_gnu_version() {
target="$2"
ver="`$prog --version | head -n 1 | sed -e's/([^)]*)//g' -e's/[^0-9 .][^ ]* / /g' -e's/ //g'`"
echo $prog version is $ver
ver_major=`echo $ver | cut -d. -f1`
ver_minor=`echo $ver | cut -d. -f2`
@ -122,6 +124,7 @@ m4: $M4_TARGET_VERSION
Automake: $AM_TARGET_VERSION
Autoconf: $AC_TARGET_VERSION
Libtool: $LT_TARGET_VERSION
Flex: $FLEX_TARGET_VERSION
Either change this script to match the found version, or install
the correct version of the tools.
@ -142,6 +145,7 @@ m4: $M4_TARGET_VERSION
Automake: $AM_TARGET_VERSION
Autoconf: $AC_TARGET_VERSION
Libtool: $LT_TARGET_VERSION
Flex: $FLEX_TARGET_VERSION
Either change this script to match the found version, or install
the correct version of the tools.
@ -160,6 +164,7 @@ m4: $M4_TARGET_VERSION
Automake: $AM_TARGET_VERSION
Autoconf: $AC_TARGET_VERSION
Libtool: $LT_TARGET_VERSION
Flex: $FLEX_TARGET_VERSION
This is *usually* ok, but this script is going to sleep for 5 seconds
to give you the chance to quit before doing anything.
@ -180,6 +185,7 @@ m4: $M4_TARGET_VERSION
Automake: $AM_TARGET_VERSION
Autoconf: $AC_TARGET_VERSION
Libtool: $LT_TARGET_VERSION
Flex: $FLEX_TARGET_VERSION
Either change this script to match the found version, or install
the correct version of the tools.
@ -221,6 +227,15 @@ make_tarball() {
exit 1
fi
#
# Remove all generated *_lex.c files so that we ensure to invoke
# flex from here in this script (to ensure that we're using a good
# version of flex, and not picking up random *_lex.c files that
# happened to be in the tree already).
#
echo "*** Removing old generated flex files..."
find . -name \*_lex.c -exec rm -f {} \; -print
#
# make tarball
#
@ -249,11 +264,14 @@ make_tarball() {
# main
#########################################################################
echo "*** Checking GNU tools versions..."
echo "*** Checking tools versions..."
check_gnu_version m4 $M4_TARGET_VERSION
check_gnu_version automake $AM_TARGET_VERSION
check_gnu_version autoconf $AC_TARGET_VERSION
check_gnu_version libtool $LT_TARGET_VERSION
# Windows needs a recent version of flex; old versions don't generate
# Windows-friendly *_lex.c files.
check_gnu_version flex $FLEX_TARGET_VERSION
#
# Verify that we're in a top Open MPI dir