All,
Thanks for the many suggestions. I managed to subdue the one error
message I got by adding some compiler flags (the --fdefault-real8 did
the job, although I am not quite sure why because the statement it was
giving errors on was dealing with integers).
Alin's suggestion of using the "-std=legacy" flag quieted most of the
warnings.
Thanks again.
James
On Aug 20, 2009, at 12:17 PM, Alin M Elena wrote:
Hi James,
this is the option of gfortran that you want to look into.
-std=std
Specify the standard to which the program is expected to
conform,
which may be one of f95, f2003, f2008, gnu,
or legacy. The default value for std is gnu, which
specifies a
superset of the Fortran 95 standard that
includes all of the extensions supported by GNU Fortran,
although
warnings will be given for obsolete
extensions not recommended for use in new code. The
legacy value
is equivalent but without the warnings for
obsolete extensions, and may be useful for old non-standard
programs. The f95, f2003 and f2008 values specify
strict conformance to the Fortran 95, Fortran 2003 and
Fortran 2008
standards, respectively; errors are given
for all extensions beyond the relevant language standard,
and
warnings are given for the Fortran 77 features
that are permitted but obsolescent in later standards.
A good compiler would select the type of the standard after the
extension.
than you should look at this
set_source_files_properties(${src_dir}/SCF2.f90 PROPERTIES
COMPILE_FLAGS
/Od)
if the code is too old 80's you may deal with pre fortran 77 and
other special
extension that were never part of standard.
Alin
On Wednesday 19 August 2009 01:20:39 [email protected] wrote:
Message: 3
Date: Tue, 18 Aug 2009 15:39:14 -0600
From: "James C. Sutherland" <[email protected]>
Subject: [CMake] F90 and legacy F77
To: cmake Mailing List <[email protected]>
Message-ID: <[email protected]>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Is there a way to detect and use both F77 and F90 compilers?
I have some legacy F77 code that uses constructs that have been
deprecated/removed in F90. I would like to compile those F77 files
with a F77 compiler, compile the F90 files with an F90 compiler, and
then link them with the F90 compiler.
How can this be done with CMake?
For example:
foo.f <-- F77 file
bar.f90 <-- F90 file
I want something equivalent to
g77 foo.f -o foo.o
gfotran bar.f90 foo.o -o executable.x
--
______________________________________________________________________
Without Questions there are no Answers!
______________________________________________________________________
Mr Alin M ELENA
Irish Centre for High-End Computing -- www.ichec.ie
The Design Tower, Trinity Technology & Enterprise Campus
Grand Canal Quay, Dublin 2, Ireland
Tel: +353 (0) 1 5241608 ext 29
Fax: +353 (0) 1 7645845
http://alin.elenaworld.net
[email protected]
[email protected]
______________________________________________________________________
--
______________________________________________________________________
Without Questions there are no Answers!
______________________________________________________________________
Mr Alin M ELENA
Irish Centre for High-End Computing -- www.ichec.ie
The Design Tower, Trinity Technology & Enterprise Campus
Grand Canal Quay, Dublin 2, Ireland
Tel: +353 (0) 1 5241608 ext 29
Fax: +353 (0) 1 7645845
http://alin.elenaworld.net
[email protected]
[email protected]
______________________________________________________________________
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake