Commit b9d43233 authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

include Fortran code in documentation

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.


SVN Path:     http://gpitrsvn.gpi.uni-karlsruhe.de/repos/TFSoftware/trunk
SVN Revision: 1241
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent f65ec529
# this is <Makefile>
# ----------------------------------------------------------------------------
# $Id: Makefile,v 1.13 2002-12-23 16:43:38 forbrig Exp $
# $Id: Makefile,v 1.14 2002-12-27 17:03:02 forbrig Exp $
#
# Copyright (c) 2002 by Thomas Forbriger (IMG Frankfurt)
#
......@@ -21,6 +21,7 @@
#
# REVISIONS and CHANGES
# 06/12/2002 V1.0 Thomas Forbriger
# 27/12/2002 V1.1 doxygen reads Fortran code and files generated by f2c
#
# ============================================================================
#
......@@ -280,7 +281,9 @@ DOXYWWWPATH=$(WWWBASEDIR)/libaff
doxyclean: ;/bin/rm -rfv docfull/* docbrief docfull
DOXYSRC=$(README) $(HEADERS) $(SRC)
DOXYSRC=$(README) $(HEADERS) $(SRC) \
tests/f77procs.P tests/f77procs.f \
tests/f77common.inc tests/f77common_com.P
doc%/html/index.html: doxy%.cfg $(DOXYSRC)
mkdir -vp $(DOXYWWWPATH)
......
......@@ -3,7 +3,7 @@
*
* ----------------------------------------------------------------------------
*
* $Id: README,v 1.11 2002-12-27 16:43:00 forbrig Exp $
* $Id: README,v 1.12 2002-12-27 17:03:03 forbrig Exp $
*
* Copyright (c) 2002 by Thomas Forbriger (IMG Frankfurt)
*
......@@ -20,6 +20,7 @@
* - complete revision of this file
* - 27/12/2002 V1.2 (thof)
* - completed Fortran considerations
* - doxygen now reads Fortran and f2c generated code
*
* ============================================================================
*/
......@@ -126,6 +127,8 @@ deep copy (elementwise copy) and a shallow copy (copying the representation).
- \ref sec_fortran_call
- \ref sec_fortran_common
- \ref sec_fortran_links
- \ref sec_fortran_source
- \ref sec_fortran_f2c
After switching to C++ many numerical routines coded in Fortran 77 will stay
in use. Recoding them in C++ should not generally be considered. It involves
......@@ -141,8 +144,8 @@ deep copy (elementwise copy) and a shallow copy (copying the representation).
\sa namespace f77interface
\sa tests/f77interface.cc
\sa tests/f77proto.h
\sa tests/f77procs.f
\sa tests/f77common.inc
\sa \ref sec_fortran_f77procsf
\sa \ref sec_fortran_f77commoninc
\sa tests/Makefile
/*----------------------------------------------------------------------*/
......@@ -237,7 +240,7 @@ Aspects to consider:
- To ensure synchronous code between Fortran and the C++ interface, we use
prototypes written by f2c. They are generated by
\verbatim f2c -C++ -P -\!c tests/f77procs.f \endverbatim
to file tests/f77procs.P
to file \ref sec_fortran_f77procsp
- The prototypes are not declared with external C linkage. Therefore the
correspnding include section in tests/f77interface.cc reads like
\code extern "C" { #include "f77procs.P" } \endcode
......@@ -284,7 +287,8 @@ Aspects to consider:
The interface functions are presented in tests/f77proto.h, are defined in
tests/f77interface.cc and the underlying Fortran subroutines are defined in
tests/f77procs.f. The common-block itself is defined in tests/f77common.inc.
\ref sec_fortran_f77procsf.
The common-block itself is defined in \ref sec_fortran_f77commoninc.
f77interface::viewcommon is the module that actually allows direct
read/write acces to the common block. The other two provide means to access
the same common block from tests/f77test.cc through calls to Fortran
......@@ -318,7 +322,7 @@ Aspects to consider:
must make use of automatic code generation by f2c. We use
\verbatim f2c -C++ -f -u -ec tests/f77procs.f
sed -e 's/^struct/extern struct/' tests/f77common_com.c > tests/f77common_com.P \endverbatim
to create a common block definition in tests/f77common_com.P.
to create a common block definition in \ref sec_fortran_f77commoncomp.
This definition is read via
\code #include"f77common_com.P" \endcode
in tests/f77interface.cc.
......@@ -357,7 +361,23 @@ Aspects to consider:
- http://wwwinfo.cern.ch/asdcgi/listcernlibfaqs.pl/3
- http://home.online.no/~arnholm/cppf77.htm
- http://www.llnl.gov/CASC/components/babel.html
*/
/*----------------------------------------------------------------------*/
\section sec_fortran_source Fortran 77 Source code
\subsection sec_fortran_f77commoninc tests/f77common.inc
\verbinclude tests/f77common.inc
\subsection sec_fortran_f77procsf tests/f77procs.f
\verbinclude tests/f77procs.f
\section sec_fortran_f2c Code generated by f2c
\subsection sec_fortran_f77commoncomp tests/f77common_com.P
\verbinclude tests/f77common_com.P
\subsection sec_fortran_f77procsp tests/f77procs.P
\verbinclude tests/f77procs.P
*/
// ----- END OF README -----
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment