summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2008-04-21 15:21:57 -0400
committerBill Hoffman <bill.hoffman@kitware.com>2008-04-21 15:21:57 -0400
commit51768eaab156a4a61f06e39bc4915e854ebd4865 (patch)
tree1f4ff593d6669ce3d3e0de68280bc5590ddf69e0
parentb855e7defc42a210e7908c2abc54535de9265acc (diff)
downloadcmake-51768eaab156a4a61f06e39bc4915e854ebd4865.tar.gz
ENH: merge in from main tree
-rw-r--r--CMakeLists.txt2
-rw-r--r--ChangeLog.manual8
-rw-r--r--Modules/CMakeCInformation.cmake12
-rw-r--r--Modules/CMakeCXXInformation.cmake11
-rw-r--r--Modules/CMakeFortranInformation.cmake12
-rw-r--r--Source/cmComputeLinkInformation.cxx6
-rw-r--r--Source/cmDependsFortran.cxx6
-rw-r--r--Source/cmDependsFortranLexer.cxx475
-rw-r--r--Source/cmDependsFortranLexer.h26
-rw-r--r--Source/cmDependsFortranLexer.in.l22
-rw-r--r--Source/cmDependsFortranParser.cxx4
-rw-r--r--Source/cmDependsFortranParser.y4
-rw-r--r--Tests/CMakeLists.txt22
13 files changed, 373 insertions, 237 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6badd627ed..3dffb1024d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -354,7 +354,7 @@ ENDMACRO (CMAKE_BUILD_UTILITIES)
SET(CMake_VERSION_MAJOR 2)
SET(CMake_VERSION_MINOR 6)
SET(CMake_VERSION_PATCH 0)
-SET(CMake_VERSION_RC 81)
+SET(CMake_VERSION_RC 82)
# CVS versions are odd, if this is an odd minor version
# then set the CMake_VERSION_DATE variable
IF("${CMake_VERSION_MINOR}" MATCHES "[13579]$")
diff --git a/ChangeLog.manual b/ChangeLog.manual
index 2a640bfe5c..439c158095 100644
--- a/ChangeLog.manual
+++ b/ChangeLog.manual
@@ -1,4 +1,10 @@
-Changes in CMake 2.6.0 RC 9
+Changes in CMake 2.6.0 RC 82
+- Fix bug 6440, and make sure _INIT flags do not overright cache values
+- Do not report CMP0003 for anything other than -l
+- Fix crash in fortran depend scanning, bug 6855
+- Fix timeout values for cmake's own tests
+
+Changes in CMake 2.6.0 RC 81
- Better message in compiler ABI detect
- Fixes for cpack x11 packages on leopard
diff --git a/Modules/CMakeCInformation.cmake b/Modules/CMakeCInformation.cmake
index 77df12eb82..e3a8d93435 100644
--- a/Modules/CMakeCInformation.cmake
+++ b/Modules/CMakeCInformation.cmake
@@ -62,11 +62,13 @@ IF(NOT CMAKE_MODULE_EXISTS)
SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS})
ENDIF(NOT CMAKE_MODULE_EXISTS)
-SET (CMAKE_C_FLAGS "$ENV{CFLAGS}" CACHE STRING
- "Flags for C compiler.")
-IF (CMAKE_C_FLAGS_INIT)
- SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_INIT}")
-ENDIF (CMAKE_C_FLAGS_INIT)
+SET(CMAKE_C_FLAGS_INIT "$ENV{CFLAGS} ${CMAKE_C_FLAGS_INIT}")
+# avoid just having a space as the initial value for the cache
+IF(CMAKE_C_FLAGS_INIT STREQUAL " ")
+ SET(CMAKE_C_FLAGS_INIT)
+ENDIF(CMAKE_C_FLAGS_INIT STREQUAL " ")
+SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS_INIT}" CACHE STRING
+ "Flags used by the compiler during all build types.")
IF(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
# default build type is none
diff --git a/Modules/CMakeCXXInformation.cmake b/Modules/CMakeCXXInformation.cmake
index 6cd2ec7e21..65c590248c 100644
--- a/Modules/CMakeCXXInformation.cmake
+++ b/Modules/CMakeCXXInformation.cmake
@@ -145,13 +145,14 @@ ENDFOREACH(type)
# on the initial values computed in the platform/*.cmake files
# use _INIT variables so that this only happens the first time
# and you can set these flags in the cmake cache
-SET (CMAKE_CXX_FLAGS "$ENV{CXXFLAGS}" CACHE STRING
+SET(CMAKE_CXX_FLAGS_INIT "$ENV{CXXFLAGS} ${CMAKE_CXX_FLAGS_INIT}")
+# avoid just having a space as the initial value for the cache
+IF(CMAKE_CXX_FLAGS_INIT STREQUAL " ")
+ SET(CMAKE_CXX_FLAGS_INIT)
+ENDIF(CMAKE_CXX_FLAGS_INIT STREQUAL " ")
+SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_INIT}" CACHE STRING
"Flags used by the compiler during all build types.")
-IF (CMAKE_CXX_FLAGS_INIT)
- SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_INIT}")
-ENDIF (CMAKE_CXX_FLAGS_INIT)
-
IF(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG_INIT}" CACHE STRING
"Flags used by the compiler during debug builds.")
diff --git a/Modules/CMakeFortranInformation.cmake b/Modules/CMakeFortranInformation.cmake
index 93d58b8fff..cfde0e55bd 100644
--- a/Modules/CMakeFortranInformation.cmake
+++ b/Modules/CMakeFortranInformation.cmake
@@ -106,13 +106,13 @@ ENDIF(NOT CMAKE_INCLUDE_FLAG_SEP_Fortran)
SET(CMAKE_VERBOSE_MAKEFILE FALSE CACHE BOOL "If this value is on, makefiles will be generated without the .SILENT directive, and all commands will be echoed to the console during the make. This is useful for debugging only. With Visual Studio IDE projects all commands are done without /nologo.")
-SET (CMAKE_Fortran_FLAGS "$ENV{FFLAGS}" CACHE STRING
+SET(CMAKE_Fortran_FLAGS_INIT "$ENV{FFFLAGS} ${CMAKE_Fortran_FLAGS_INIT}")
+# avoid just having a space as the initial value for the cache
+IF(CMAKE_Fortran_FLAGS_INIT STREQUAL " ")
+ SET(CMAKE_Fortran_FLAGS_INIT)
+ENDIF(CMAKE_Fortran_FLAGS_INIT STREQUAL " ")
+SET (CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS_INIT}" CACHE STRING
"Flags for Fortran compiler.")
-IF (CMAKE_Fortran_FLAGS_INIT)
- SET (CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} ${CMAKE_Fortran_FLAGS_INIT}")
-ENDIF (CMAKE_Fortran_FLAGS_INIT)
-
-
INCLUDE(CMakeCommonLanguageInclude)
diff --git a/Source/cmComputeLinkInformation.cxx b/Source/cmComputeLinkInformation.cxx
index 878c3d64de..5e105371a2 100644
--- a/Source/cmComputeLinkInformation.cxx
+++ b/Source/cmComputeLinkInformation.cxx
@@ -1187,7 +1187,11 @@ void cmComputeLinkInformation::AddUserItem(std::string const& item)
}
else if(item[0] == '-' || item[0] == '$' || item[0] == '`')
{
- if(item.find("-framework") != 0)
+ // if this is a -l option then we might need to warn about
+ // CMP0003 so put it in OldUserFlagItems, if it is not a -l
+ // or -Wl,-l (-framework -pthread), then allow it without a
+ // CMP0003 as -L will not affect those other linker flags
+ if(item.find("-l") == 0 || item.find("-Wl,-l") == 0)
{
// This is a linker option provided by the user.
this->OldUserFlagItems.push_back(item);
diff --git a/Source/cmDependsFortran.cxx b/Source/cmDependsFortran.cxx
index 577ebad2b7..3d23b802e0 100644
--- a/Source/cmDependsFortran.cxx
+++ b/Source/cmDependsFortran.cxx
@@ -1209,7 +1209,8 @@ void cmDependsFortranParser_RuleElif(cmDependsFortranParser* parser)
// Allways taken unless an #ifdef or #ifndef-branch has been taken
// already. If the second condition isn't meet already
// (parser->InPPFalseBranch == 0) correct it.
- if(parser->SkipToEnd.top() && !parser->InPPFalseBranch)
+ if(!parser->SkipToEnd.empty() &&
+ parser->SkipToEnd.top() && !parser->InPPFalseBranch)
{
parser->InPPFalseBranch = 1;
}
@@ -1226,7 +1227,8 @@ void cmDependsFortranParser_RuleElse(cmDependsFortranParser* parser)
// parser->InPPFalseBranch is either 0 or 1. We change it denpending on
// parser->SkipToEnd.top()
- if(parser->SkipToEnd.top())
+ if(!parser->SkipToEnd.empty() &&
+ parser->SkipToEnd.top())
{
parser->InPPFalseBranch = 1;
}
diff --git a/Source/cmDependsFortranLexer.cxx b/Source/cmDependsFortranLexer.cxx
index 4f426c245c..2c874aafaa 100644
--- a/Source/cmDependsFortranLexer.cxx
+++ b/Source/cmDependsFortranLexer.cxx
@@ -1,3 +1,19 @@
+/*=========================================================================
+
+ Program: CMake - Cross-Platform Makefile Generator
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+ Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
+ See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the above copyright notices for more information.
+
+=========================================================================*/
#line 2 "cmDependsFortranLexer.cxx"
#line 4 "cmDependsFortranLexer.cxx"
@@ -9,7 +25,7 @@
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 33
+#define YY_FLEX_SUBMINOR_VERSION 34
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
@@ -31,10 +47,10 @@
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
-#if __STDC_VERSION__ >= 199901L
+#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
- * if you want the limit (max/min) macros for int types.
+ * if you want the limit (max/min) macros for int types.
*/
#ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS 1
@@ -51,7 +67,7 @@ typedef uint32_t flex_uint32_t;
typedef signed char flex_int8_t;
typedef short int flex_int16_t;
typedef int flex_int32_t;
-typedef unsigned char flex_uint8_t;
+typedef unsigned char flex_uint8_t;
typedef unsigned short int flex_uint16_t;
typedef unsigned int flex_uint32_t;
#endif /* ! C99 */
@@ -94,11 +110,12 @@ typedef unsigned int flex_uint32_t;
#else /* ! __cplusplus */
-#if __STDC__
+/* C99 requires __STDC__ to be defined as 1. */
+#if defined (__STDC__)
#define YY_USE_CONST
-#endif /* __STDC__ */
+#endif /* defined (__STDC__) */
#endif /* ! __cplusplus */
#ifdef YY_USE_CONST
@@ -134,8 +151,6 @@ typedef void* yyscan_t;
#define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
#define yy_flex_debug yyg->yy_flex_debug_r
-int cmDependsFortran_yylex_init (yyscan_t* scanner);
-
/* Enter a start condition. This macro really ought to take a parameter,
* but we do it the disgusting crufty way forced on us by the ()-less
* definition of BEGIN.
@@ -176,7 +191,7 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE;
#define EOB_ACT_LAST_MATCH 2
#define YY_LESS_LINENO(n)
-
+
/* Return all but the first "n" matched characters back to the input stream. */
#define yyless(n) \
do \
@@ -196,11 +211,13 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE;
/* The following is because we cannot portably get our hands on size_t
* (without autoconf's help, which isn't available because we want
* flex-generated scanners to compile on their own).
+ * Given that the standard has decreed that size_t exists since 1989,
+ * I guess we can afford to depend on it. Manoj.
*/
#ifndef YY_TYPEDEF_YY_SIZE_T
#define YY_TYPEDEF_YY_SIZE_T
-typedef unsigned int yy_size_t;
+typedef size_t yy_size_t;
#endif
#ifndef YY_STRUCT_YY_BUFFER_STATE
@@ -243,7 +260,7 @@ struct yy_buffer_state
int yy_bs_lineno; /**< The line count. */
int yy_bs_column; /**< The column count. */
-
+
/* Whether to try to fill the input buffer when we reach the
* end of it.
*/
@@ -364,25 +381,25 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[155] =
+static yyconst flex_int16_t yy_accept[158] =
{ 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 42, 36, 38, 37, 40, 1, 36, 36, 31, 2,
- 37, 34, 36, 35, 36, 35, 37, 36, 35, 9,
- 8, 9, 4, 3, 36, 0, 10, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 31, 31, 32,
- 34, 36, 35, 0, 39, 35, 0, 36, 0, 11,
- 35, 0, 0, 5, 0, 0, 0, 21, 0, 0,
- 0, 0, 0, 0, 27, 0, 31, 31, 31, 31,
- 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
+ 42, 36, 38, 37, 40, 1, 36, 31, 2, 37,
+ 34, 36, 35, 36, 35, 38, 36, 37, 36, 35,
+ 9, 8, 9, 4, 3, 36, 0, 10, 0, 0,
+ 0, 0, 0, 31, 31, 32, 34, 36, 35, 0,
+ 39, 35, 0, 0, 0, 0, 0, 0, 0, 0,
+ 36, 0, 11, 35, 0, 0, 5, 0, 0, 0,
+ 27, 0, 0, 31, 31, 31, 31, 0, 0, 0,
+ 0, 0, 21, 0, 0, 0, 0, 0, 6, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 22, 23, 0, 0,
- 0, 0, 0, 0, 0, 28, 29, 0, 0, 0,
- 0, 0, 0, 0, 0, 24, 19, 0, 0, 17,
- 0, 18, 30, 25, 0, 0, 0, 0, 0, 15,
- 20, 0, 16, 26, 0, 0, 7, 33, 7, 12,
- 13, 0, 14, 0
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 28,
+ 29, 0, 0, 0, 0, 0, 0, 0, 22, 23,
+ 0, 0, 0, 0, 0, 0, 0, 0, 30, 25,
+ 0, 0, 18, 0, 0, 24, 19, 0, 0, 17,
+ 0, 0, 16, 26, 0, 0, 15, 20, 0, 7,
+ 33, 7, 13, 0, 12, 14, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
@@ -394,12 +411,12 @@ static yyconst flex_int32_t yy_ec[256] =
1, 12, 1, 4, 1, 1, 1, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 1, 14, 1,
15, 16, 17, 1, 18, 18, 19, 20, 21, 22,
- 18, 18, 23, 18, 18, 18, 18, 24, 18, 18,
- 18, 18, 18, 18, 25, 18, 18, 18, 18, 18,
- 1, 26, 1, 1, 27, 1, 18, 18, 28, 29,
+ 18, 18, 23, 18, 18, 24, 18, 25, 18, 18,
+ 18, 18, 26, 18, 27, 18, 18, 18, 18, 18,
+ 1, 28, 1, 1, 29, 1, 18, 18, 30, 31,
- 30, 31, 18, 18, 32, 18, 18, 33, 18, 34,
- 18, 18, 18, 18, 35, 18, 36, 18, 18, 18,
+ 32, 33, 18, 18, 34, 18, 18, 35, 18, 36,
+ 18, 18, 18, 18, 37, 18, 38, 18, 18, 18,
18, 18, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -417,152 +434,180 @@ static yyconst flex_int32_t yy_ec[256] =
1, 1, 1, 1, 1
} ;
-static yyconst flex_int32_t yy_meta[37] =
+static yyconst flex_int32_t yy_meta[39] =
{ 0,
1, 2, 2, 3, 4, 3, 3, 1, 1, 3,
3, 1, 5, 3, 3, 1, 1, 6, 6, 6,
- 6, 6, 6, 6, 6, 1, 5, 6, 6, 6,
- 6, 6, 6, 6, 6, 6
+ 6, 6, 6, 6, 6, 6, 6, 1, 5, 6,
+ 6, 6, 6, 6, 6, 6, 6, 6
} ;
-static yyconst flex_int16_t yy_base[163] =
+static yyconst flex_int16_t yy_base[166] =
{ 0,
- 0, 0, 0, 0, 276, 34, 37, 39, 48, 49,
- 277, 0, 356, 356, 273, 356, 62, 97, 63, 356,
- 356, 259, 257, 0, 36, 129, 267, 156, 183, 356,
- 266, 69, 356, 356, 0, 267, 356, 218, 239, 10,
- 26, 234, 253, 246, 242, 42, 46, 76, 98, 356,
- 356, 82, 0, 104, 356, 0, 260, 285, 261, 356,
- 0, 258, 108, 83, 231, 80, 232, 61, 232, 230,
- 235, 236, 84, 224, 89, 224, 129, 148, 219, 225,
- 131, 217, 244, 241, 138, 356, 213, 213, 213, 210,
- 211, 211, 206, 208, 214, 215, 203, 203, 200, 196,
-
- 152, 147, 151, 173, 172, 142, 356, 356, 144, 143,
- 141, 134, 136, 142, 140, 356, 356, 130, 129, 122,
- 113, 114, 139, 123, 96, 356, 356, 94, 95, 356,
- 100, 356, 356, 356, 89, 76, 53, 94, 0, 356,
- 356, 53, 356, 356, 40, 32, 356, 356, 356, 356,
- 356, 15, 356, 356, 312, 318, 323, 325, 331, 337,
- 343, 349
+ 0, 37, 0, 38, 176, 45, 41, 51, 53, 63,
+ 161, 0, 492, 492, 150, 492, 76, 77, 492, 492,
+ 118, 116, 0, 66, 114, 93, 143, 123, 181, 210,
+ 492, 115, 114, 492, 492, 0, 110, 492, 247, 70,
+ 100, 96, 75, 144, 197, 492, 492, 135, 0, 136,
+ 492, 0, 104, 284, 0, 136, 226, 140, 142, 89,
+ 322, 87, 492, 0, 81, 183, 253, 158, 243, 175,
+ 240, 234, 252, 285, 291, 307, 338, 298, 248, 286,
+ 319, 306, 327, 327, 329, 69, 67, 357, 492, 331,
+ 333, 340, 341, 347, 349, 346, 350, 354, 351, 354,
+
+ 356, 355, 362, 366, 366, 370, 62, 50, 367, 492,
+ 492, 371, 373, 375, 371, 377, 376, 380, 492, 492,
+ 386, 390, 392, 387, 393, 44, 36, 396, 492, 492,
+ 396, 400, 492, 394, 401, 492, 492, 405, 410, 492,
+ 56, 0, 492, 492, 413, 415, 492, 492, 415, 492,
+ 492, 492, 492, 416, 492, 492, 492, 448, 454, 459,
+ 461, 467, 473, 479, 485
} ;
-static yyconst flex_int16_t yy_def[163] =
+static yyconst flex_int16_t yy_def[166] =
{ 0,
- 154, 1, 1, 1, 1, 1, 155, 155, 155, 155,
- 154, 156, 154, 154, 157, 154, 156, 156, 154, 154,
- 154, 154, 156, 158, 156, 158, 154, 159, 154, 154,
- 154, 154, 154, 154, 156, 157, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 160, 154,
- 154, 156, 158, 154, 154, 26, 154, 159, 159, 154,
- 29, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 160, 160, 160, 160,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
-
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 161, 162, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 0, 154, 154, 154, 154, 154, 154,
- 154, 154
+ 157, 1, 1, 1, 1, 1, 158, 158, 158, 158,
+ 157, 159, 157, 157, 160, 157, 157, 157, 157, 157,
+ 157, 159, 161, 159, 161, 157, 157, 157, 162, 157,
+ 157, 157, 157, 157, 157, 159, 160, 157, 157, 157,
+ 157, 157, 157, 157, 163, 157, 157, 159, 161, 157,
+ 157, 25, 157, 157, 54, 157, 157, 157, 157, 157,
+ 162, 162, 157, 30, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 163, 163, 163, 163, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 164, 165, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 0, 157, 157, 157,
+ 157, 157, 157, 157, 157
} ;
-static yyconst flex_int16_t yy_nxt[393] =
+static yyconst flex_int16_t yy_nxt[531] =
{ 0,
- 12, 13, 14, 13, 13, 15, 16, 17, 18, 19,
- 20, 12, 12, 21, 22, 12, 23, 24, 24, 24,
- 24, 24, 24, 24, 24, 25, 26, 24, 24, 24,
- 24, 24, 24, 24, 24, 24, 27, 54, 55, 31,
- 54, 31, 66, 67, 153, 28, 32, 33, 32, 33,
- 31, 31, 29, 29, 34, 34, 68, 32, 32, 69,
- 152, 29, 29, 38, 48, 48, 38, 48, 49, 151,
- 63, 64, 50, 63, 73, 74, 75, 48, 48, 76,
- 48, 49, 150, 81, 85, 50, 81, 85, 146, 91,
- 39, 40, 86, 41, 92, 148, 148, 42, 43, 78,
-
- 48, 43, 78, 79, 145, 54, 55, 80, 54, 63,
- 64, 88, 63, 82, 89, 97, 44, 100, 98, 144,
- 143, 45, 101, 142, 141, 140, 46, 139, 47, 35,
- 78, 48, 81, 78, 79, 81, 35, 35, 80, 85,
- 35, 56, 85, 138, 35, 35, 137, 86, 136, 78,
- 48, 135, 78, 79, 35, 56, 58, 80, 60, 134,
- 133, 132, 82, 58, 58, 131, 130, 58, 58, 129,
- 128, 58, 58, 127, 126, 125, 124, 123, 122, 121,
- 120, 58, 58, 59, 59, 60, 59, 59, 59, 59,
- 59, 59, 59, 59, 59, 61, 59, 59, 59, 59,
-
- 61, 61, 61, 61, 61, 61, 61, 61, 59, 61,
- 61, 61, 61, 61, 61, 61, 61, 61, 61, 38,
- 78, 48, 38, 78, 79, 119, 78, 48, 80, 78,
- 79, 118, 117, 116, 80, 115, 114, 113, 112, 111,
- 110, 109, 108, 107, 106, 105, 39, 40, 104, 41,
- 103, 102, 99, 42, 43, 96, 95, 43, 94, 93,
- 90, 87, 84, 60, 83, 72, 71, 70, 65, 37,
- 62, 57, 44, 52, 51, 37, 154, 45, 27, 154,
- 154, 154, 46, 154, 47, 58, 154, 60, 154, 154,
- 154, 154, 58, 58, 154, 154, 58, 58, 154, 154,
-
- 58, 58, 154, 154, 154, 154, 154, 154, 154, 154,
- 58, 58, 30, 30, 30, 30, 30, 30, 35, 154,
- 154, 154, 35, 36, 36, 36, 36, 36, 36, 53,
- 53, 59, 59, 59, 59, 59, 59, 77, 77, 77,
- 77, 77, 77, 147, 147, 147, 154, 147, 147, 149,
- 154, 149, 154, 149, 149, 11, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154
-
+ 12, 13, 14, 13, 13, 15, 16, 12, 17, 18,
+ 19, 12, 12, 20, 21, 12, 22, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 24, 25, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 26, 26,
+ 142, 26, 26, 32, 27, 27, 26, 28, 141, 26,
+ 33, 34, 27, 32, 127, 32, 29, 151, 151, 35,
+ 33, 34, 33, 30, 30, 32, 126, 50, 51, 35,
+ 50, 108, 33, 107, 30, 30, 36, 39, 44, 44,
+ 39, 44, 45, 36, 36, 87, 46, 36, 36, 63,
+ 68, 36, 36, 86, 53, 40, 41, 53, 42, 73,
+
+ 54, 68, 43, 36, 36, 53, 40, 41, 53, 42,
+ 73, 54, 38, 43, 36, 66, 67, 71, 66, 65,
+ 72, 36, 36, 69, 70, 36, 52, 60, 71, 36,
+ 36, 72, 48, 47, 69, 70, 78, 50, 51, 78,
+ 50, 36, 52, 36, 55, 44, 44, 55, 44, 45,
+ 36, 36, 38, 46, 36, 36, 80, 79, 36, 36,
+ 157, 83, 56, 57, 84, 58, 85, 80, 79, 59,
+ 36, 36, 83, 56, 57, 84, 58, 85, 28, 90,
+ 59, 61, 157, 63, 66, 67, 157, 66, 61, 61,
+ 90, 157, 61, 61, 93, 157, 61, 61, 75, 44,
+
+ 157, 75, 76, 157, 157, 93, 77, 157, 61, 61,
+ 62, 62, 63, 62, 62, 62, 62, 62, 62, 62,
+ 62, 62, 64, 62, 62, 62, 62, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 62, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 39, 81,
+ 82, 39, 96, 157, 88, 157, 157, 88, 157, 94,
+ 81, 82, 89, 96, 95, 91, 40, 41, 92, 42,
+ 94, 97, 98, 43, 157, 95, 91, 40, 41, 92,
+ 42, 157, 97, 98, 43, 55, 75, 44, 55, 75,
+ 76, 157, 75, 44, 77, 75, 76, 157, 157, 78,
+
+ 77, 157, 78, 56, 57, 157, 58, 99, 75, 44,
+ 59, 75, 76, 157, 56, 57, 77, 58, 99, 157,
+ 79, 59, 61, 157, 63, 102, 157, 157, 157, 61,
+ 61, 79, 157, 61, 61, 157, 102, 61, 61, 75,
+ 44, 100, 75, 76, 101, 105, 103, 77, 106, 61,
+ 61, 104, 100, 109, 110, 101, 105, 103, 88, 106,
+ 111, 88, 104, 112, 109, 110, 89, 113, 114, 115,
+ 116, 111, 117, 118, 112, 119, 120, 121, 113, 114,
+ 115, 116, 122, 117, 118, 123, 119, 120, 121, 124,
+ 125, 128, 129, 122, 130, 131, 123, 132, 133, 134,
+
+ 124, 125, 128, 129, 135, 130, 131, 136, 132, 133,
+ 134, 137, 138, 139, 140, 135, 143, 144, 136, 145,
+ 146, 147, 137, 138, 139, 140, 148, 143, 144, 149,
+ 145, 146, 147, 153, 154, 155, 156, 148, 157, 157,
+ 149, 157, 157, 157, 153, 154, 155, 156, 31, 31,
+ 31, 31, 31, 31, 36, 157, 157, 157, 36, 37,
+ 37, 37, 37, 37, 37, 49, 49, 62, 62, 62,
+ 62, 62, 62, 74, 74, 74, 74, 74, 74, 150,
+ 150, 150, 157, 150, 150, 152, 157, 152, 157, 152,
+ 152, 11, 157, 157, 157, 157, 157, 157, 157, 157,
+
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157
} ;
-static yyconst flex_int16_t yy_chk[393] =
+static yyconst flex_int16_t yy_chk[531] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 6, 25, 25, 7,
- 25, 8, 40, 40, 152, 6, 7, 7, 8, 8,
- 9, 10, 6, 6, 9, 10, 41, 9, 10, 41,
- 146, 6, 6, 17, 19, 19, 17, 19, 19, 145,
- 32, 32, 19, 32, 46, 46, 47, 48, 48, 47,
- 48, 48, 142, 52, 64, 48, 52, 64, 137, 68,
- 17, 17, 64, 17, 68, 138, 138, 17, 18, 49,
-
- 49, 18, 49, 49, 136, 54, 54, 49, 54, 63,
- 63, 66, 63, 52, 66, 73, 18, 75, 73, 135,
- 131, 18, 75, 129, 128, 125, 18, 124, 18, 26,
- 77, 77, 81, 77, 77, 81, 26, 26, 77, 85,
- 26, 26, 85, 123, 26, 26, 122, 85, 121, 78,
- 78, 120, 78, 78, 26, 26, 28, 78, 28, 119,
- 118, 115, 81, 28, 28, 114, 113, 28, 28, 112,
- 111, 28, 28, 110, 109, 106, 105, 104, 103, 102,
- 101, 28, 28, 29, 29, 29, 29, 29, 29, 29,
- 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
-
- 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
- 29, 29, 29, 29, 29, 29, 29, 29, 29, 38,
- 79, 79, 38, 79, 79, 100, 80, 80, 79, 80,
- 80, 99, 98, 97, 80, 96, 95, 94, 93, 92,
- 91, 90, 89, 88, 87, 84, 38, 38, 83, 38,
- 82, 76, 74, 38, 43, 72, 71, 43, 70, 69,
- 67, 65, 62, 59, 57, 45, 44, 42, 39, 36,
- 31, 27, 43, 23, 22, 15, 11, 43, 5, 0,
- 0, 0, 43, 0, 43, 58, 0, 58, 0, 0,
- 0, 0, 58, 58, 0, 0, 58, 58, 0, 0,
-
- 58, 58, 0, 0, 0, 0, 0, 0, 0, 0,
- 58, 58, 155, 155, 155, 155, 155, 155, 156, 0,
- 0, 0, 156, 157, 157, 157, 157, 157, 157, 158,
- 158, 159, 159, 159, 159, 159, 159, 160, 160, 160,
- 160, 160, 160, 161, 161, 161, 0, 161, 161, 162,
- 0, 162, 0, 162, 162, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
- 154, 154
-
+ 1, 1, 1, 1, 1, 1, 1, 1, 2, 4,
+ 127, 2, 4, 7, 2, 4, 6, 6, 126, 6,
+ 7, 7, 6, 8, 108, 9, 6, 141, 141, 9,
+ 8, 8, 9, 6, 6, 10, 107, 24, 24, 10,
+ 24, 87, 10, 86, 6, 6, 17, 17, 18, 18,
+ 17, 18, 18, 17, 17, 65, 18, 17, 17, 62,
+ 40, 17, 17, 60, 26, 17, 17, 26, 17, 43,
+
+ 26, 40, 17, 17, 17, 53, 17, 17, 53, 17,
+ 43, 53, 37, 17, 25, 33, 33, 42, 33, 32,
+ 42, 25, 25, 41, 41, 25, 25, 28, 42, 25,
+ 25, 42, 22, 21, 41, 41, 48, 50, 50, 48,
+ 50, 25, 25, 27, 27, 44, 44, 27, 44, 44,
+ 27, 27, 15, 44, 27, 27, 56, 48, 27, 27,
+ 11, 58, 27, 27, 58, 27, 59, 56, 48, 27,
+ 27, 27, 58, 27, 27, 58, 27, 59, 5, 68,
+ 27, 29, 0, 29, 66, 66, 0, 66, 29, 29,
+ 68, 0, 29, 29, 70, 0, 29, 29, 45, 45,
+
+ 0, 45, 45, 0, 0, 70, 45, 0, 29, 29,
+ 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
+ 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
+ 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
+ 30, 30, 30, 30, 30, 30, 30, 30, 39, 57,
+ 57, 39, 72, 0, 67, 0, 0, 67, 0, 71,
+ 57, 57, 67, 72, 71, 69, 39, 39, 69, 39,
+ 71, 73, 79, 39, 0, 71, 69, 39, 39, 69,
+ 39, 0, 73, 79, 39, 54, 74, 74, 54, 74,
+ 74, 0, 75, 75, 74, 75, 75, 0, 0, 78,
+
+ 75, 0, 78, 54, 54, 0, 54, 80, 76, 76,
+ 54, 76, 76, 0, 54, 54, 76, 54, 80, 0,
+ 78, 54, 61, 0, 61, 82, 0, 0, 0, 61,
+ 61, 78, 0, 61, 61, 0, 82, 61, 61, 77,
+ 77, 81, 77, 77, 81, 84, 83, 77, 85, 61,
+ 61, 83, 81, 90, 91, 81, 84, 83, 88, 85,
+ 92, 88, 83, 93, 90, 91, 88, 94, 95, 96,
+ 97, 92, 98, 99, 93, 100, 101, 102, 94, 95,
+ 96, 97, 103, 98, 99, 104, 100, 101, 102, 105,
+ 106, 109, 112, 103, 113, 114, 104, 115, 116, 117,
+
+ 105, 106, 109, 112, 118, 113, 114, 121, 115, 116,
+ 117, 122, 123, 124, 125, 118, 128, 131, 121, 132,
+ 134, 135, 122, 123, 124, 125, 138, 128, 131, 139,
+ 132, 134, 135, 145, 146, 149, 154, 138, 0, 0,
+ 139, 0, 0, 0, 145, 146, 149, 154, 158, 158,
+ 158, 158, 158, 158, 159, 0, 0, 0, 159, 160,
+ 160, 160, 160, 160, 160, 161, 161, 162, 162, 162,
+ 162, 162, 162, 163, 163, 163, 163, 163, 163, 164,
+ 164, 164, 0, 164, 164, 165, 0, 165, 0, 165,
+ 165, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157
} ;
/* The intent behind this definition is that it'll catch
@@ -591,9 +636,9 @@ static yyconst flex_int16_t yy_chk[393] =
=========================================================================*/
/*-------------------------------------------------------------------------
- Portions of this source have been derived from makefdep90 version 2.8.8,
+ Portions of this source have been derived from makedepf90 version 2.8.8,
- Copyright (C) 2000,2001 Erik Edelmann <eedelman@beam.helsinki.fi>.
+ Copyright (C) 2000--2006 Erik Edelmann <erik.edelmann@iki.fi>
The code was originally distributed under the GPL but permission
from the copyright holder has been obtained to distribute this
@@ -639,7 +684,7 @@ Modify cmDependsFortranLexer.h:
/*--------------------------------------------------------------------------*/
-#line 643 "cmDependsFortranLexer.cxx"
+#line 672 "cmDependsFortranLexer.cxx"
#define INITIAL 0
#define free_fmt 1
@@ -695,6 +740,10 @@ struct yyguts_t
static int yy_init_globals (yyscan_t yyscanner );
+int cmDependsFortran_yylex_init (yyscan_t* scanner);
+
+int cmDependsFortran_yylex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
+
/* Accessor methods to globals.
These are made visible to non-reentrant scanners for convenience. */
@@ -737,7 +786,7 @@ extern int cmDependsFortran_yywrap (yyscan_t yyscanner );
#endif
static void yyunput (int c,char *buf_ptr ,yyscan_t yyscanner);
-
+
#ifndef yytext_ptr
static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
#endif
@@ -766,7 +815,7 @@ static int input (yyscan_t yyscanner );
/* This used to be an fputs(), but since the string might contain NUL's,
* we now use fwrite().
*/
-#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
+#define ECHO fwrite( yytext, yyleng, 1, yyout )
#endif
/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
@@ -777,7 +826,7 @@ static int input (yyscan_t yyscanner );
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
{ \
int c = '*'; \
- size_t n; \
+ int n; \
for ( n = 0; n < max_size && \
(c = getc( yyin )) != EOF && c != '\n'; ++n ) \
buf[n] = (char) c; \
@@ -866,7 +915,7 @@ YY_DECL
#line 75 "cmDependsFortranLexer.in.l"
-#line 870 "cmDependsFortranLexer.cxx"
+#line 903 "cmDependsFortranLexer.cxx"
if ( !yyg->yy_init )
{
@@ -920,13 +969,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 155 )
+ if ( yy_current_state >= 158 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
- while ( yy_base[yy_current_state] != 356 );
+ while ( yy_base[yy_current_state] != 492 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
@@ -1173,7 +1222,7 @@ YY_RULE_SETUP
#line 176 "cmDependsFortranLexer.in.l"
ECHO;
YY_BREAK
-#line 1206 "cmDependsFortranLexer.cxx"
+#line 1239 "cmDependsFortranLexer.cxx"
case YY_END_OF_BUFFER:
{
@@ -1427,6 +1476,14 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
else
ret_val = EOB_ACT_CONTINUE_SCAN;
+ if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
+ /* Extend the array by 50%, plus the number we really need. */
+ yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
+ YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) cmDependsFortran_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
+ if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
+ YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
+ }
+
yyg->yy_n_chars += number_to_move;
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] = YY_END_OF_BUFFER_CHAR;
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
@@ -1458,7 +1515,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 155 )
+ if ( yy_current_state >= 158 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -1487,11 +1544,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 155 )
+ if ( yy_current_state >= 158 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
- yy_is_jam = (yy_current_state == 154);
+ yy_is_jam = (yy_current_state == 157);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -1684,7 +1741,7 @@ static void cmDependsFortran_yy_load_buffer_state (yyscan_t yyscanner)
YY_BUFFER_STATE cmDependsFortran_yy_create_buffer (FILE * file, int size , yyscan_t yyscanner)
{
YY_BUFFER_STATE b;
-
+
b = (YY_BUFFER_STATE) cmDependsFortran_yyalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
if ( ! b )
YY_FATAL_ERROR( "out of dynamic memory in cmDependsFortran_yy_create_buffer()" );
@@ -1728,7 +1785,7 @@ static void cmDependsFortran_yy_load_buffer_state (yyscan_t yyscanner)
#ifndef __cplusplus
extern int isatty (int );
#endif /* __cplusplus */
-
+
/* Initializes or reinitializes a buffer.
* This function is sometimes called more than once on the same buffer,
* such as during a cmDependsFortran_yyrestart() or at EOF.
@@ -1754,7 +1811,7 @@ extern int isatty (int );
}
b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
-
+
errno = oerrno;
}
@@ -1858,9 +1915,11 @@ static void cmDependsFortran_yyensure_buffer_stack (yyscan_t yyscanner)
yyg->yy_buffer_stack = (struct yy_buffer_state**)cmDependsFortran_yyalloc
(num_to_alloc * sizeof(struct yy_buffer_state*)
, yyscanner);
-
+ if ( ! yyg->yy_buffer_stack )
+ YY_FATAL_ERROR( "out of dynamic memory in cmDependsFortran_yyensure_buffer_stack()" );
+
memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
-
+
yyg->yy_buffer_stack_max = num_to_alloc;
yyg->yy_buffer_stack_top = 0;
return;
@@ -1876,6 +1935,8 @@ static void cmDependsFortran_yyensure_buffer_stack (yyscan_t yyscanner)
(yyg->yy_buffer_stack,
num_to_alloc * sizeof(struct yy_buffer_state*)
, yyscanner);
+ if ( ! yyg->yy_buffer_stack )
+ YY_FATAL_ERROR( "out of dynamic memory in cmDependsFortran_yyensure_buffer_stack()" );
/* zero only the new slots.*/
memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_size * sizeof(struct yy_buffer_state*));
@@ -1887,12 +1948,12 @@ static void cmDependsFortran_yyensure_buffer_stack (yyscan_t yyscanner)
* @param base the character buffer
* @param size the size in bytes of the character buffer
* @param yyscanner The scanner object.
- * @return the newly allocated buffer state object.
+ * @return the newly allocated buffer state object.
*/
YY_BUFFER_STATE cmDependsFortran_yy_scan_buffer (char * base, yy_size_t size , yyscan_t yyscanner)
{
YY_BUFFER_STATE b;
-
+
if ( size < 2 ||
base[size-2] != YY_END_OF_BUFFER_CHAR ||
base[size-1] != YY_END_OF_BUFFER_CHAR )
@@ -1928,7 +1989,7 @@ YY_BUFFER_STATE cmDependsFortran_yy_scan_buffer (char * base, yy_size_t size ,
*/
YY_BUFFER_STATE cmDependsFortran_yy_scan_string (yyconst char * yystr , yyscan_t yyscanner)
{
-
+
return cmDependsFortran_yy_scan_bytes(yystr,strlen(yystr) ,yyscanner);
}
@@ -1945,7 +2006,7 @@ YY_BUFFER_STATE cmDependsFortran_yy_scan_bytes (yyconst char * yybytes, int _y
char *buf;
yy_size_t n;
int i;
-
+
/* Get memory for full buffer, including space for trailing EOB's. */
n = _yybytes_len + 2;
buf = (char *) cmDependsFortran_yyalloc(n ,yyscanner );
@@ -2013,10 +2074,10 @@ YY_EXTRA_TYPE cmDependsFortran_yyget_extra (yyscan_t yyscanner)
int cmDependsFortran_yyget_lineno (yyscan_t yyscanner)
{
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-
+
if (! YY_CURRENT_BUFFER)
return 0;
-
+
return yylineno;
}
@@ -2026,10 +2087,10 @@ int cmDependsFortran_yyget_lineno (yyscan_t yyscanner)
int cmDependsFortran_yyget_column (yyscan_t yyscanner)
{
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-
+
if (! YY_CURRENT_BUFFER)
return 0;
-
+
return yycolumn;
}
@@ -2090,8 +2151,8 @@ void cmDependsFortran_yyset_lineno (int line_number , yyscan_t yyscanner)
/* lineno is only valid if an input buffer exists. */
if (! YY_CURRENT_BUFFER )
- yy_fatal_error( "cmDependsFortran_yyset_lineno called with no buffer" , yyscanner);
-
+ yy_fatal_error( "cmDependsFortran_yyset_lineno called with no buffer" , yyscanner);
+
yylineno = line_number;
}
@@ -2105,8 +2166,8 @@ void cmDependsFortran_yyset_column (int column_no , yyscan_t yyscanner)
/* column is only valid if an input buffer exists. */
if (! YY_CURRENT_BUFFER )
- yy_fatal_error( "cmDependsFortran_yyset_column called with no buffer" , yyscanner);
-
+ yy_fatal_error( "cmDependsFortran_yyset_column called with no buffer" , yyscanner);
+
yycolumn = column_no;
}
@@ -2170,6 +2231,42 @@ int cmDependsFortran_yylex_init(yyscan_t* ptr_yy_globals)
return yy_init_globals ( *ptr_yy_globals );
}
+/* cmDependsFortran_yylex_init_extra has the same functionality as cmDependsFortran_yylex_init, but follows the
+ * convention of taking the scanner as the last argument. Note however, that
+ * this is a *pointer* to a scanner, as it will be allocated by this call (and
+ * is the reason, too, why this function also must handle its own declaration).
+ * The user defined value in the first argument will be available to cmDependsFortran_yyalloc in
+ * the yyextra field.
+ */
+
+int cmDependsFortran_yylex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_globals )
+
+{
+ struct yyguts_t dummy_yyguts;
+
+ cmDependsFortran_yyset_extra (yy_user_defined, &dummy_yyguts);
+
+ if (ptr_yy_globals == NULL){
+ errno = EINVAL;
+ return 1;
+ }
+
+ *ptr_yy_globals = (yyscan_t) cmDependsFortran_yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
+
+ if (*ptr_yy_globals == NULL){
+ errno = ENOMEM;
+ return 1;
+ }
+
+ /* By setting to 0xAA, we expose bugs in
+ yy_init_globals. Leave at 0x00 for releases. */
+ memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
+
+ cmDependsFortran_yyset_extra (yy_user_defined, *ptr_yy_globals);
+
+ return yy_init_globals ( *ptr_yy_globals );
+}
+
static int yy_init_globals (yyscan_t yyscanner)
{
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
diff --git a/Source/cmDependsFortranLexer.h b/Source/cmDependsFortranLexer.h
index f73f946eb8..bebc522437 100644
--- a/Source/cmDependsFortranLexer.h
+++ b/Source/cmDependsFortranLexer.h
@@ -9,8 +9,8 @@
Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
- This software is distributed WITHOUT ANY WARRANTY; without even
- the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
@@ -25,7 +25,7 @@
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 33
+#define YY_FLEX_SUBMINOR_VERSION 34
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
@@ -47,7 +47,7 @@
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
-#if __STDC_VERSION__ >= 199901L
+#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
* if you want the limit (max/min) macros for int types.
@@ -110,11 +110,12 @@ typedef unsigned int flex_uint32_t;
#else /* ! __cplusplus */
-#if __STDC__
+/* C99 requires __STDC__ to be defined as 1. */
+#if defined (__STDC__)
#define YY_USE_CONST
-#endif /* __STDC__ */
+#endif /* defined (__STDC__) */
#endif /* ! __cplusplus */
#ifdef YY_USE_CONST
@@ -140,7 +141,10 @@ typedef void* yyscan_t;
#define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
#define yy_flex_debug yyg->yy_flex_debug_r
-int cmDependsFortran_yylex_init (yyscan_t* scanner);
+/* Size of default input buffer. */
+#ifndef YY_BUF_SIZE
+#define YY_BUF_SIZE 16384
+#endif
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
#define YY_TYPEDEF_YY_BUFFER_STATE
@@ -150,11 +154,13 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE;
/* The following is because we cannot portably get our hands on size_t
* (without autoconf's help, which isn't available because we want
* flex-generated scanners to compile on their own).
+ * Given that the standard has decreed that size_t exists since 1989,
+ * I guess we can afford to depend on it. Manoj.
*/
#ifndef YY_TYPEDEF_YY_SIZE_T
#define YY_TYPEDEF_YY_SIZE_T
-typedef unsigned int yy_size_t;
+typedef size_t yy_size_t;
#endif
#ifndef YY_STRUCT_YY_BUFFER_STATE
@@ -244,6 +250,10 @@ void cmDependsFortran_yyfree (void * ,yyscan_t yyscanner );
#define YY_EXTRA_TYPE void *
#endif
+int cmDependsFortran_yylex_init (yyscan_t* scanner);
+
+int cmDependsFortran_yylex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
+
/* Accessor methods to globals.
These are made visible to non-reentrant scanners for convenience. */
diff --git a/Source/cmDependsFortranLexer.in.l b/Source/cmDependsFortranLexer.in.l
index 05210eb4a1..45c07b6aad 100644
--- a/Source/cmDependsFortranLexer.in.l
+++ b/Source/cmDependsFortranLexer.in.l
@@ -16,9 +16,9 @@
=========================================================================*/
/*-------------------------------------------------------------------------
- Portions of this source have been derived from makefdep90 version 2.8.8,
+ Portions of this source have been derived from makedepf90 version 2.8.8,
- Copyright (C) 2000,2001 Erik Edelmann <eedelman@beam.helsinki.fi>.
+ Copyright (C) 2000--2006 Erik Edelmann <erik.edelmann@iki.fi>
The code was originally distributed under the GPL but permission
from the copyright holder has been obtained to distribute this
@@ -119,22 +119,22 @@ Modify cmDependsFortranLexer.h:
!.*\n { return EOSTMT; } /* Treat comments like */
<fixed_fmt>^[cC*dD].*\n { return EOSTMT; } /* empty lines */
-#[ \t]*include { return CPP_INCLUDE; }
+^[ \t]*#[ \t]*include { return CPP_INCLUDE; }
\$[ \t]*include { return F90PPR_INCLUDE; }
\?\?[ \t]*include { return COCO_INCLUDE; }
-#[ \t]*define { return CPP_DEFINE; }
+^[ \t]*#[ \t]*define { return CPP_DEFINE; }
\$[ \t]*DEFINE { return F90PPR_DEFINE; }
-#[ \t]*undef { return CPP_UNDEF; }
+^[ \t]*#[ \t]*undef { return CPP_UNDEF; }
\$[ \t]*UNDEF { return F90PPR_UNDEF; }
-#[ \t]*ifdef { return CPP_IFDEF; }
-#[ \t]*ifndef { return CPP_IFNDEF; }
-#[ \t]*if { return CPP_IF; }
-#[ \t]*elif { return CPP_ELIF; }
-#[ \t]*else { return CPP_ELSE; }
-#[ \t]*endif { return CPP_ENDIF; }
+^[ \t]*#[ \t]*ifdef { return CPP_IFDEF; }
+^[ \t]*#[ \t]*ifndef { return CPP_IFNDEF; }
+^[ \t]*#[ \t]*if { return CPP_IF; }
+^[ \t]*#[ \t]*elif { return CPP_ELIF; }
+^[ \t]*#[ \t]*else { return CPP_ELSE; }
+^[ \t]*#[ \t]*endif { return CPP_ENDIF; }
$[ \t]*ifdef { return F90PPR_IFDEF; }
$[ \t]*ifndef { return F90PPR_IFNDEF; }
diff --git a/Source/cmDependsFortranParser.cxx b/Source/cmDependsFortranParser.cxx
index e0daf0c848..6569c7dcc1 100644
--- a/Source/cmDependsFortranParser.cxx
+++ b/Source/cmDependsFortranParser.cxx
@@ -153,9 +153,9 @@
=========================================================================*/
/*-------------------------------------------------------------------------
- Portions of this source have been derived from makefdep90 version 2.6.2,
+ Portions of this source have been derived from makedepf90 version 2.8.8,
- Copyright (C) 2000,2001 Erik Edelmann <eedelman@beam.helsinki.fi>.
+ Copyright (C) 2000--2006 Erik Edelmann <erik.edelmann@iki.fi>
The code was originally distributed under the GPL but permission
from the copyright holder has been obtained to distribute this
diff --git a/Source/cmDependsFortranParser.y b/Source/cmDependsFortranParser.y
index b28786d34d..4800b98a2e 100644
--- a/Source/cmDependsFortranParser.y
+++ b/Source/cmDependsFortranParser.y
@@ -16,9 +16,9 @@
=========================================================================*/
/*-------------------------------------------------------------------------
- Portions of this source have been derived from makefdep90 version 2.6.2,
+ Portions of this source have been derived from makedepf90 version 2.8.8,
- Copyright (C) 2000,2001 Erik Edelmann <eedelman@beam.helsinki.fi>.
+ Copyright (C) 2000--2006 Erik Edelmann <erik.edelmann@iki.fi>
The code was originally distributed under the GPL but permission
from the copyright holder has been obtained to distribute this
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 895579c731..0af70f7b10 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -27,6 +27,16 @@ IF(BUILD_TESTING)
MARK_AS_ADVANCED(CTEST_TEST_CTEST)
ENDIF (CMAKE_RUN_LONG_TESTS)
+ # Use 1500 or CTEST_TEST_TIMEOUT for long test timeout value,
+ # whichever is greater.
+ SET(CMAKE_LONG_TEST_TIMEOUT 1500)
+ IF(CTEST_TEST_TIMEOUT)
+ SET(CMAKE_LONG_TEST_TIMEOUT ${CTEST_TEST_TIMEOUT})
+ ENDIF(CTEST_TEST_TIMEOUT)
+ IF(CMAKE_LONG_TEST_TIMEOUT LESS 1500)
+ SET(CMAKE_LONG_TEST_TIMEOUT 1500)
+ ENDIF(CMAKE_LONG_TEST_TIMEOUT LESS 1500)
+
# add a bunch of standard build-and-test style tests
ADD_TEST_MACRO(CommandLineTest CommandLineTest)
ADD_TEST_MACRO(FindPackageTest FindPackageTest)
@@ -655,17 +665,20 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=CVS -P ${CMake_SOURCE_DIR}/Utilities/Rel
# if timeouts have not already been set
GET_TEST_PROPERTY(CTestTest TIMEOUT PREVIOUS_TIMEOUT)
IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( CTestTest PROPERTIES TIMEOUT 1500)
+ SET_TESTS_PROPERTIES ( CTestTest
+ PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
GET_TEST_PROPERTY(CTestTest2 TIMEOUT PREVIOUS_TIMEOUT)
IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( CTestTest2 PROPERTIES TIMEOUT 1500)
+ SET_TESTS_PROPERTIES ( CTestTest2
+ PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
GET_TEST_PROPERTY(CTestTest3 TIMEOUT PREVIOUS_TIMEOUT)
IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( CTestTest3 PROPERTIES TIMEOUT 1500)
+ SET_TESTS_PROPERTIES ( CTestTest3
+ PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
ENDIF(COMMAND SET_TESTS_PROPERTIES AND COMMAND GET_TEST_PROPERTY)
ENDIF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
@@ -695,7 +708,8 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=CVS -P ${CMake_SOURCE_DIR}/Utilities/Rel
IF (COMMAND GET_TEST_PROPERTY)
GET_TEST_PROPERTY(BootstrapTest TIMEOUT PREVIOUS_TIMEOUT)
IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( BootstrapTest PROPERTIES TIMEOUT 1500)
+ SET_TESTS_PROPERTIES ( BootstrapTest
+ PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
ENDIF (COMMAND GET_TEST_PROPERTY)