Commits

Steven Knight  committed 074f9eb

Add f90 and f95 to the list of Fortran compilers searched by default.

  • Participants
  • Parent commits 903f9b8

Comments (0)

Files changed (3)

File src/CHANGES.txt

   - 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.

File src/RELEASE.txt

               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

File src/engine/SCons/Tool/__init__.py

         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"
         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"
         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"
         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"
         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"
         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"
         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]