summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/CHANGES.txt3
-rw-r--r--src/RELEASE.txt13
-rw-r--r--src/engine/SCons/Tool/__init__.py14
3 files changed, 23 insertions, 7 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index 93846b5..e568b31 100644
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -315,6 +315,9 @@ RELEASE 0.97 - XXX
- Add a --raw argument to the sconsign script, so it can print a
raw representation of each entry's NodeInfo dictionary.
+ - Add the 'f90' and 'f95' tools to the list of Fortran compilers
+ searched for by default.
+
From Chen Lee:
- Handle Visual Studio project and solution files in Unicode.
diff --git a/src/RELEASE.txt b/src/RELEASE.txt
index d55c7a4..4728748 100644
--- a/src/RELEASE.txt
+++ b/src/RELEASE.txt
@@ -144,6 +144,19 @@ RELEASE 0.97 - XXX
the link command itself. This will cause recompilation
of target files created by these changed lines.
+ -- F95 AND F90 COMPILERS ARE NOW PREFERRED OVER F77
+
+ SCons now searches for Fortran 95 and Fortran 90 compilers first
+ in preference to Fortran 77. This may result in a different
+ Fortran compiler being used by default, although as Fortran 95 and
+ Fortran 90 are backwards compatible with Fortran 77, this should
+ not cause problems for standards-compliant Fortran programs.
+ On systems that have multiple versions of Fortran installed,
+ the Fortran 77 compiler may be explicitly selected by specifying
+ it when creating the construction environment:
+
+ env = Environment(tools = ['default', 'f77'])
+
-- CACHED Configure() RESULTS ARE STORED IN A DIFFERENT FILE
The Configure() subsystem now stores its cached results in a
diff --git a/src/engine/SCons/Tool/__init__.py b/src/engine/SCons/Tool/__init__.py
index b4e8ad5..94fe121 100644
--- a/src/engine/SCons/Tool/__init__.py
+++ b/src/engine/SCons/Tool/__init__.py
@@ -321,7 +321,7 @@ def tool_list(platform, env):
c_compilers = ['msvc', 'mingw', 'gcc', 'intelc', 'icl', 'icc', 'cc', 'bcc32' ]
cxx_compilers = ['msvc', 'intelc', 'icc', 'g++', 'c++', 'bcc32' ]
assemblers = ['masm', 'nasm', 'gas', '386asm' ]
- fortran_compilers = ['g77', 'ifl', 'cvf', 'fortran']
+ fortran_compilers = ['g77', 'ifl', 'cvf', 'f95', 'f90', 'fortran']
ars = ['mslib', 'ar', 'tlib']
elif str(platform) == 'os2':
"prefer IBM tools on OS/2"
@@ -337,7 +337,7 @@ def tool_list(platform, env):
c_compilers = ['sgicc', 'gcc', 'cc']
cxx_compilers = ['sgic++', 'g++', 'c++']
assemblers = ['as', 'gas']
- fortran_compilers = ['f77', 'g77', 'fortran']
+ fortran_compilers = ['f95', 'f90', 'f77', 'g77', 'fortran']
ars = ['sgiar']
elif str(platform) == 'sunos':
"prefer Forte tools on SunOS"
@@ -345,7 +345,7 @@ def tool_list(platform, env):
c_compilers = ['suncc', 'gcc', 'cc']
cxx_compilers = ['sunc++', 'g++', 'c++']
assemblers = ['as', 'gas']
- fortran_compilers = ['f77', 'g77', 'fortran']
+ fortran_compilers = ['f95', 'f90', 'f77', 'g77', 'fortran']
ars = ['sunar']
elif str(platform) == 'hpux':
"prefer aCC tools on HP-UX"
@@ -353,7 +353,7 @@ def tool_list(platform, env):
c_compilers = ['hpcc', 'gcc', 'cc']
cxx_compilers = ['hpc++', 'g++', 'c++']
assemblers = ['as', 'gas']
- fortran_compilers = ['f77', 'g77', 'fortran']
+ fortran_compilers = ['f95', 'f90', 'f77', 'g77', 'fortran']
ars = ['ar']
elif str(platform) == 'aix':
"prefer AIX Visual Age tools on AIX"
@@ -361,7 +361,7 @@ def tool_list(platform, env):
c_compilers = ['aixcc', 'gcc', 'cc']
cxx_compilers = ['aixc++', 'g++', 'c++']
assemblers = ['as', 'gas']
- fortran_compilers = ['aixf77', 'g77', 'fortran']
+ fortran_compilers = ['f95', 'f90', 'aixf77', 'g77', 'fortran']
ars = ['ar']
elif str(platform) == 'darwin':
"prefer GNU tools on Mac OS X, except for some linkers and IBM tools"
@@ -369,7 +369,7 @@ def tool_list(platform, env):
c_compilers = ['gcc', 'cc']
cxx_compilers = ['g++', 'c++']
assemblers = ['as']
- fortran_compilers = ['g77']
+ fortran_compilers = ['f95', 'f90', 'g77']
ars = ['ar']
else:
"prefer GNU tools on all other platforms"
@@ -377,7 +377,7 @@ def tool_list(platform, env):
c_compilers = ['gcc', 'msvc', 'intelc', 'icc', 'cc']
cxx_compilers = ['g++', 'msvc', 'intelc', 'icc', 'c++']
assemblers = ['gas', 'nasm', 'masm']
- fortran_compilers = ['g77', 'ifort', 'ifl', 'fortran']
+ fortran_compilers = ['f95', 'f90', 'g77', 'ifort', 'ifl', 'fortran']
ars = ['ar', 'mslib']
c_compiler = FindTool(c_compilers, env) or c_compilers[0]