[patch] intel C++/f90 support

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[patch] intel C++/f90 support

Mumit Khan-4
The subject line is incorrect -- the only specific change needed for Intel
C++ is in src/c-file-ptr-stream.h in using the non-standard std::filebuf
interface. The rest are generic changes.

The configury for Intel C++ nor F9x is there, so it has to be done
manually. C++ is easy, it's the F9x configury that's hard to get right.
Here's how I do it:

  #! /bin/sh
  CXX=icc
  F77=ifc
  FLIBS='-L/opt/intel/compiler60/ia32/lib -lintrins -lIEPCF90 -lF90 -limf -lirc -lcxa -lcprts -lunwind'
  export CXX F77 FLIBS
  ../../octave-cvs/configure --enable-shared --disable-static --enable-rpath -v

And then edit Makeconf to change the following:

  Remove -Wall and -mieee-fp from CXXFLAGS and XTRA_CXXFLAGS. Also change
  -fPIC to -kPIC in CXXFLAGS and FFLAGS.

Sure I'm forgetting some important detail here, but you get the picture.

The FLIBS environment variable is *very* important -- the configure will
abort otherwise when checking the output of the Intel F9x libraries.

liboctave/ChangeLog:
2002-06-05  Mumit Khan  <[hidden email]>

        * CmplxCHOL.h, CollocWt.h, cmd-edit.h, oct-shlib.h: Don't use
        qualified names.

src/ChangeLog:

        * c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add Intel
        C++ runtime support.
        * Cell.h, gripes.cc, ov-base-scalar.cc, ov-colon.cc, ov-fcn.cc,
        ov-file.cc, ov-mapper.h, ov-va-args.cc, token.cc, xpow.cc,
        OPERATORS/op-b-b.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
        OPERATORS/op-cell.cc, OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc,
        OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
        OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc,
        OPERATORS/op-cs-s.cc, OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
        OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
        OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
        OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
        OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, OPERATORS/op-m-cm.cc,
        OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
        OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
        OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc,
        TEMPLATE-INST/Array-sym.cc, TEMPLATE-INST/Array-tc.cc,
        TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/SLList-expr.cc,
        TEMPLATE-INST/SLList-tc.cc, TEMPLATE-INST/SLList-tm.cc,
        TEMPLATE-INST/SLStack-sym.cc: Make the implementation of
        octave_value_list visibile for template instantiation.

Index: liboctave/CmplxCHOL.h
===================================================================
RCS file: /cvs/octave/liboctave/CmplxCHOL.h,v
retrieving revision 1.11
diff -u -3 -p -r1.11 CmplxCHOL.h
--- liboctave/CmplxCHOL.h 2000/02/01 10:06:55 1.11
+++ liboctave/CmplxCHOL.h 2002/06/05 22:52:42
@@ -38,17 +38,17 @@ public:

   ComplexCHOL (void) : chol_mat () { }

-  ComplexCHOL::ComplexCHOL (const ComplexMatrix& a) { init (a); }
+  ComplexCHOL (const ComplexMatrix& a) { init (a); }

-  ComplexCHOL::ComplexCHOL (const ComplexMatrix& a, int& info)
+  ComplexCHOL (const ComplexMatrix& a, int& info)
     {
       info = init (a);
     }

-  ComplexCHOL::ComplexCHOL (const ComplexCHOL& a)
+  ComplexCHOL (const ComplexCHOL& a)
     : chol_mat (a.chol_mat) { }

-  ComplexCHOL& ComplexCHOL::operator = (const ComplexCHOL& a)
+  ComplexCHOL& operator = (const ComplexCHOL& a)
     {
       if (this != &a)
  chol_mat = a.chol_mat;
@@ -56,7 +56,7 @@ public:
       return *this;
     }

-  ComplexMatrix ComplexCHOL::chol_matrix (void) const
+  ComplexMatrix chol_matrix (void) const
     {
       return chol_mat;
     }
Index: liboctave/CollocWt.h
===================================================================
RCS file: /cvs/octave/liboctave/CollocWt.h,v
retrieving revision 1.16
diff -u -3 -p -r1.16 CollocWt.h
--- liboctave/CollocWt.h 2000/02/01 10:06:56 1.16
+++ liboctave/CollocWt.h 2002/06/05 22:52:42
@@ -37,35 +37,35 @@ CollocWt
 {
 public:

-  CollocWt::CollocWt (void)
+  CollocWt (void)
     : n (0), inc_left (0), inc_right (0), lb (0.0), rb (1.0),
       Alpha (0.0), Beta (0.0), r (), q (), A (), B (), initialized (0) { }

-  CollocWt::CollocWt (int nc, int il, int ir)
+  CollocWt (int nc, int il, int ir)
     : n (nc), inc_left (il), inc_right (ir), lb (0.0), rb (1.0),
       Alpha (0.0), Beta (0.0), r (), q (), A (), B (), initialized (0) { }

-  CollocWt::CollocWt (int nc, int il, int ir, double l, double r)
+  CollocWt (int nc, int il, int ir, double l, double r)
     : n (nc), inc_left (il), inc_right (ir), lb (l), rb (r),
       Alpha (0.0), Beta (0.0), r (), q (), A (), B (), initialized (0) { }

-  CollocWt::CollocWt (int nc, double a, double b, int il, int ir)
+  CollocWt (int nc, double a, double b, int il, int ir)
     : n (nc), inc_left (il), inc_right (ir), lb (0.0), rb (1.0),
       Alpha (a), Beta (b), initialized (0) { }

-  CollocWt::CollocWt (int nc, double a, double b, int il, int ir,
+  CollocWt (int nc, double a, double b, int il, int ir,
       double l, double r)
     : n (nc), inc_left (il), inc_right (ir), lb (l), rb (r),
       Alpha (a), Beta (b), r (), q (), A (), B (), initialized (0) { }

-  CollocWt::CollocWt (const CollocWt& a)
+  CollocWt (const CollocWt& a)
     : n (a.n), inc_left (a.inc_left), inc_right (a.inc_right),
       lb (a.lb), rb (a.rb), Alpha (a.Alpha), Beta (a.Beta),
       r (a.r), q (a.q), A (a.A), B (a.B),
       initialized (a.initialized) { }

   CollocWt&
-  CollocWt::operator = (const CollocWt& a)
+  operator = (const CollocWt& a)
     {
       if (this != &a)
  {
Index: liboctave/cmd-edit.h
===================================================================
RCS file: /cvs/octave/liboctave/cmd-edit.h,v
retrieving revision 1.11
diff -u -3 -p -r1.11 cmd-edit.h
--- liboctave/cmd-edit.h 2002/05/15 03:21:00 1.11
+++ liboctave/cmd-edit.h 2002/06/05 22:52:42
@@ -73,11 +73,9 @@ public:

   static void blink_matching_paren (bool flag);

-  static void command_editor::set_basic_word_break_characters
-    (const std::string& s);
+  static void set_basic_word_break_characters (const std::string& s);

-  static void command_editor::set_completer_word_break_characters
-    (const std::string& s);
+  static void set_completer_word_break_characters (const std::string& s);

   static void set_basic_quote_characters (const std::string& s);

Index: liboctave/oct-shlib.h
===================================================================
RCS file: /cvs/octave/liboctave/oct-shlib.h,v
retrieving revision 1.2
diff -u -3 -p -r1.2 oct-shlib.h
--- liboctave/oct-shlib.h 2000/02/01 10:07:24 1.2
+++ liboctave/oct-shlib.h 2002/06/05 22:52:42
@@ -49,7 +49,7 @@ public:

   octave_shlib (void) : rep (make_shlib ()) { }

-  octave_shlib::octave_shlib (const std::string& f, bool warn_future)
+  octave_shlib (const std::string& f, bool warn_future)
     : rep (make_shlib ())
   {
     open (f, warn_future);
Index: src/Cell.h
===================================================================
RCS file: /cvs/octave/src/Cell.h,v
retrieving revision 1.4
diff -u -3 -p -r1.4 Cell.h
--- src/Cell.h 2002/05/15 03:21:00 1.4
+++ src/Cell.h 2002/06/05 22:52:42
@@ -33,7 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "oct-alloc.h"
 #include "str-vec.h"

-#include "ov.h"
+#include "oct-obj.h"

 class
 Cell : public Array2<octave_value>
Index: src/c-file-ptr-stream.h
===================================================================
RCS file: /cvs/octave/src/c-file-ptr-stream.h,v
retrieving revision 1.8
diff -u -3 -p -r1.8 c-file-ptr-stream.h
--- src/c-file-ptr-stream.h 2002/05/23 03:41:25 1.8
+++ src/c-file-ptr-stream.h 2002/06/05 22:52:42
@@ -72,6 +72,8 @@ public:
     :
 #if defined __GNUC__ && __GNUC__ >= 3
     OCTAVE_STD_FILEBUF (f_arg, std::ios::in | std::ios::out),
+#elif defined __INTEL_COMPILER
+    OCTAVE_STD_FILEBUF (f_arg),
 #else
     OCTAVE_STD_FILEBUF (f_arg ? fileno (f_arg) : -1),
 #endif
Index: src/gripes.cc
===================================================================
RCS file: /cvs/octave/src/gripes.cc,v
retrieving revision 1.23
diff -u -3 -p -r1.23 gripes.cc
--- src/gripes.cc 2000/02/02 10:25:56 1.23
+++ src/gripes.cc 2002/06/05 22:52:42
@@ -26,7 +26,7 @@ Software Foundation, 59 Temple Place - S

 #include "error.h"
 #include "gripes.h"
-#include "ov.h"
+#include "oct-obj.h"

 void
 gripe_not_supported (const char *fcn)
Index: src/ov-base-scalar.cc
===================================================================
RCS file: /cvs/octave/src/ov-base-scalar.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 ov-base-scalar.cc
--- src/ov-base-scalar.cc 2002/05/15 03:21:00 1.4
+++ src/ov-base-scalar.cc 2002/06/05 22:52:42
@@ -30,6 +30,7 @@ Software Foundation, 59 Temple Place - S

 #include <iostream>

+#include "oct-obj.h"
 #include "ov-base.h"
 #include "ov-cx-mat.h"
 #include "ov-re-mat.h"
Index: src/ov-colon.cc
===================================================================
RCS file: /cvs/octave/src/ov-colon.cc,v
retrieving revision 1.7
diff -u -3 -p -r1.7 ov-colon.cc
--- src/ov-colon.cc 2000/02/02 10:26:06 1.7
+++ src/ov-colon.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S

 #include "error.h"
 #include "pr-output.h"
+#include "oct-obj.h"
 #include "ov-colon.h"

 DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA (octave_magic_colon, "magic-colon");
Index: src/ov-fcn.cc
===================================================================
RCS file: /cvs/octave/src/ov-fcn.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 ov-fcn.cc
--- src/ov-fcn.cc 2002/05/15 03:21:00 1.4
+++ src/ov-fcn.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "error.h"
+#include "oct-obj.h"
 #include "ov-fcn.h"

 DEFINE_OCTAVE_ALLOCATOR (octave_function);
Index: src/ov-file.cc
===================================================================
RCS file: /cvs/octave/src/ov-file.cc,v
retrieving revision 1.6
diff -u -3 -p -r1.6 ov-file.cc
--- src/ov-file.cc 2000/02/02 10:26:07 1.6
+++ src/ov-file.cc 2002/06/05 22:52:42
@@ -30,6 +30,7 @@ Software Foundation, 59 Temple Place - S

 #include <iostream>

+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov-file.h"
Index: src/ov-mapper.h
===================================================================
RCS file: /cvs/octave/src/ov-mapper.h,v
retrieving revision 1.6
diff -u -3 -p -r1.6 ov-mapper.h
--- src/ov-mapper.h 2002/05/15 03:21:00 1.6
+++ src/ov-mapper.h 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S

 #include <string>

+#include "oct-obj.h"
 #include "ov-fcn.h"
 #include "ov-typeinfo.h"

Index: src/ov-va-args.cc
===================================================================
RCS file: /cvs/octave/src/ov-va-args.cc,v
retrieving revision 1.7
diff -u -3 -p -r1.7 ov-va-args.cc
--- src/ov-va-args.cc 2000/02/02 10:26:09 1.7
+++ src/ov-va-args.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S

 #include "error.h"
 #include "pr-output.h"
+#include "oct-obj.h"
 #include "ov-va-args.h"

 DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA (octave_all_va_args, "va-arg");
Index: src/token.cc
===================================================================
RCS file: /cvs/octave/src/token.cc,v
retrieving revision 1.26
diff -u -3 -p -r1.26 token.cc
--- src/token.cc 2000/02/03 03:05:30 1.26
+++ src/token.cc 2002/06/05 22:52:42
@@ -31,7 +31,7 @@ Software Foundation, 59 Temple Place - S
 #include <cassert>

 #include "error.h"
-#include "ov.h"
+#include "oct-obj.h"
 #include "symtab.h"
 #include "token.h"
 #include "utils.h"
Index: src/xpow.cc
===================================================================
RCS file: /cvs/octave/src/xpow.cc,v
retrieving revision 1.31
diff -u -3 -p -r1.31 xpow.cc
--- src/xpow.cc 2000/02/08 04:35:47 1.31
+++ src/xpow.cc 2002/06/05 22:52:42
@@ -37,7 +37,7 @@ Software Foundation, 59 Temple Place - S
 #include "oct-cmplx.h"

 #include "error.h"
-#include "ov.h"
+#include "oct-obj.h"
 #include "utils.h"
 #include "xpow.h"

Index: src/OPERATORS/op-b-b.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-b-b.cc,v
retrieving revision 1.5
diff -u -3 -p -r1.5 op-b-b.cc
--- src/OPERATORS/op-b-b.cc 2001/02/14 06:05:29 1.5
+++ src/OPERATORS/op-b-b.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-bool.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-bm-b.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-bm-b.cc,v
retrieving revision 1.1
diff -u -3 -p -r1.1 op-bm-b.cc
--- src/OPERATORS/op-bm-b.cc 2002/05/16 15:12:10 1.1
+++ src/OPERATORS/op-bm-b.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-bool.h"
 #include "ov-bool-mat.h"
Index: src/OPERATORS/op-bm-bm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-bm-bm.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-bm-bm.cc
--- src/OPERATORS/op-bm-bm.cc 2000/06/28 19:25:04 1.4
+++ src/OPERATORS/op-bm-bm.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-bool-mat.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-cell.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cell.cc,v
retrieving revision 1.1
diff -u -3 -p -r1.1 op-cell.cc
--- src/OPERATORS/op-cell.cc 2002/05/16 15:12:10 1.1
+++ src/OPERATORS/op-cell.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-cell.h"
 #include "ov-scalar.h"
Index: src/OPERATORS/op-chm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-chm.cc,v
retrieving revision 1.2
diff -u -3 -p -r1.2 op-chm.cc
--- src/OPERATORS/op-chm.cc 2000/02/02 12:36:31 1.2
+++ src/OPERATORS/op-chm.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-ch-mat.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-cm-cm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cm-cm.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-cm-cm.cc
--- src/OPERATORS/op-cm-cm.cc 2000/02/02 12:36:31 1.3
+++ src/OPERATORS/op-cm-cm.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-cx-mat.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-cm-cs.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cm-cs.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-cm-cs.cc
--- src/OPERATORS/op-cm-cs.cc 2001/01/29 14:33:07 1.3
+++ src/OPERATORS/op-cm-cs.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-cx-mat.h"
 #include "ov-complex.h"
Index: src/OPERATORS/op-cm-m.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cm-m.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-cm-m.cc
--- src/OPERATORS/op-cm-m.cc 2001/01/29 14:33:07 1.3
+++ src/OPERATORS/op-cm-m.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S
 #include "mx-m-cm.h"

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-cx-mat.h"
 #include "ov-re-mat.h"
Index: src/OPERATORS/op-cm-s.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cm-s.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-cm-s.cc
--- src/OPERATORS/op-cm-s.cc 2001/01/29 14:33:07 1.3
+++ src/OPERATORS/op-cm-s.cc 2002/06/05 22:52:42
@@ -31,6 +31,7 @@ Software Foundation, 59 Temple Place - S
 #include "mx-cm-s.h"

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-cx-mat.h"
 #include "ov-re-mat.h"
Index: src/OPERATORS/op-cs-cm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cs-cm.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-cs-cm.cc
--- src/OPERATORS/op-cs-cm.cc 2001/01/29 14:33:07 1.4
+++ src/OPERATORS/op-cs-cm.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-complex.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-cs-cs.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cs-cs.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-cs-cs.cc
--- src/OPERATORS/op-cs-cs.cc 2000/02/02 12:58:27 1.4
+++ src/OPERATORS/op-cs-cs.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-complex.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-cs-m.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cs-m.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-cs-m.cc
--- src/OPERATORS/op-cs-m.cc 2001/01/29 14:33:07 1.4
+++ src/OPERATORS/op-cs-m.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S
 #include "mx-m-cs.h"

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-complex.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-cs-s.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-cs-s.cc,v
retrieving revision 1.5
diff -u -3 -p -r1.5 op-cs-s.cc
--- src/OPERATORS/op-cs-s.cc 2000/02/02 12:58:27 1.5
+++ src/OPERATORS/op-cs-s.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-complex.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-fil-b.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-b.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-b.cc
--- src/OPERATORS/op-fil-b.cc 2000/02/02 12:36:34 1.4
+++ src/OPERATORS/op-fil-b.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-bm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-bm.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-bm.cc
--- src/OPERATORS/op-fil-bm.cc 2000/02/02 12:36:34 1.4
+++ src/OPERATORS/op-fil-bm.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-cm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-cm.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-cm.cc
--- src/OPERATORS/op-fil-cm.cc 2000/02/02 12:36:34 1.4
+++ src/OPERATORS/op-fil-cm.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-cs.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-cs.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-cs.cc
--- src/OPERATORS/op-fil-cs.cc 2000/02/02 12:36:34 1.4
+++ src/OPERATORS/op-fil-cs.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-lis.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-lis.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-lis.cc
--- src/OPERATORS/op-fil-lis.cc 2000/02/02 12:36:34 1.4
+++ src/OPERATORS/op-fil-lis.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-m.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-m.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-m.cc
--- src/OPERATORS/op-fil-m.cc 2000/02/02 12:36:34 1.4
+++ src/OPERATORS/op-fil-m.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-rec.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-rec.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-rec.cc
--- src/OPERATORS/op-fil-rec.cc 2000/02/02 12:36:35 1.4
+++ src/OPERATORS/op-fil-rec.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-s.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-s.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-s.cc
--- src/OPERATORS/op-fil-s.cc 2000/02/02 12:36:35 1.4
+++ src/OPERATORS/op-fil-s.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-fil-str.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-fil-str.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-fil-str.cc
--- src/OPERATORS/op-fil-str.cc 2000/02/02 12:36:35 1.4
+++ src/OPERATORS/op-fil-str.cc 2002/06/05 22:52:42
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - S
 #include "mach-info.h"

 #include "error.h"
+#include "oct-obj.h"
 #include "oct-stream.h"
 #include "ops.h"
 #include "ov.h"
Index: src/OPERATORS/op-list.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-list.cc,v
retrieving revision 1.2
diff -u -3 -p -r1.2 op-list.cc
--- src/OPERATORS/op-list.cc 2000/02/02 12:36:35 1.2
+++ src/OPERATORS/op-list.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-list.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-m-cm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-m-cm.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-m-cm.cc
--- src/OPERATORS/op-m-cm.cc 2001/01/29 14:33:07 1.4
+++ src/OPERATORS/op-m-cm.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S
 #include "mx-cm-m.h"

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-re-mat.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-m-cs.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-m-cs.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-m-cs.cc
--- src/OPERATORS/op-m-cs.cc 2001/01/29 14:33:07 1.4
+++ src/OPERATORS/op-m-cs.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S
 #include "mx-cs-m.h"

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-re-mat.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-m-m.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-m-m.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-m-m.cc
--- src/OPERATORS/op-m-m.cc 2001/01/29 14:33:07 1.4
+++ src/OPERATORS/op-m-m.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-re-mat.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-m-s.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-m-s.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-m-s.cc
--- src/OPERATORS/op-m-s.cc 2001/01/29 14:33:08 1.3
+++ src/OPERATORS/op-m-s.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-re-mat.h"
 #include "ov-scalar.h"
Index: src/OPERATORS/op-range.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-range.cc,v
retrieving revision 1.2
diff -u -3 -p -r1.2 op-range.cc
--- src/OPERATORS/op-range.cc 2000/02/02 12:36:36 1.2
+++ src/OPERATORS/op-range.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-range.h"
 #include "ov-typeinfo.h"
Index: src/OPERATORS/op-s-cm.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-s-cm.cc,v
retrieving revision 1.5
diff -u -3 -p -r1.5 op-s-cm.cc
--- src/OPERATORS/op-s-cm.cc 2001/01/29 14:33:08 1.5
+++ src/OPERATORS/op-s-cm.cc 2002/06/05 22:52:42
@@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - S
 #include "mx-cm-s.h"

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-scalar.h"
 #include "ov-cx-mat.h"
Index: src/OPERATORS/op-s-cs.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-s-cs.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-s-cs.cc
--- src/OPERATORS/op-s-cs.cc 2000/02/02 12:58:28 1.3
+++ src/OPERATORS/op-s-cs.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-scalar.h"
 #include "ov-complex.h"
Index: src/OPERATORS/op-s-m.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-s-m.cc,v
retrieving revision 1.4
diff -u -3 -p -r1.4 op-s-m.cc
--- src/OPERATORS/op-s-m.cc 2001/01/29 14:33:08 1.4
+++ src/OPERATORS/op-s-m.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-scalar.h"
 #include "ov-re-mat.h"
Index: src/OPERATORS/op-s-s.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-s-s.cc,v
retrieving revision 1.5
diff -u -3 -p -r1.5 op-s-s.cc
--- src/OPERATORS/op-s-s.cc 2001/02/18 19:06:24 1.5
+++ src/OPERATORS/op-s-s.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-scalar.h"
 #include "ov-re-mat.h"
Index: src/OPERATORS/op-str-str.cc
===================================================================
RCS file: /cvs/octave/src/OPERATORS/op-str-str.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 op-str-str.cc
--- src/OPERATORS/op-str-str.cc 2000/02/02 12:36:37 1.3
+++ src/OPERATORS/op-str-str.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #endif

 #include "gripes.h"
+#include "oct-obj.h"
 #include "ov.h"
 #include "ov-str-mat.h"
 #include "ov-typeinfo.h"
Index: src/TEMPLATE-INST/Array-sym.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/Array-sym.cc,v
retrieving revision 1.1
diff -u -3 -p -r1.1 Array-sym.cc
--- src/TEMPLATE-INST/Array-sym.cc 1997/06/02 19:41:17 1.1
+++ src/TEMPLATE-INST/Array-sym.cc 2002/06/05 22:52:42
@@ -29,6 +29,7 @@ Software Foundation, 59 Temple Place - S
 #include "Array.h"
 #include "Array.cc"

+#include "oct-obj.h"
 #include "symtab.h"

 template class Array<symbol_record *>;
Index: src/TEMPLATE-INST/Array-tc.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/Array-tc.cc,v
retrieving revision 1.6
diff -u -3 -p -r1.6 Array-tc.cc
--- src/TEMPLATE-INST/Array-tc.cc 2002/05/23 00:42:16 1.6
+++ src/TEMPLATE-INST/Array-tc.cc 2002/06/05 22:52:42
@@ -35,7 +35,7 @@ Software Foundation, 59 Temple Place - S
 #include "DiagArray2.h"
 #include "DiagArray2.cc"

-#include "ov.h"
+#include "oct-obj.h"

 template class Array<octave_value>;

Index: src/TEMPLATE-INST/Map-tc.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/Map-tc.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 Map-tc.cc
--- src/TEMPLATE-INST/Map-tc.cc 2000/02/03 03:05:31 1.3
+++ src/TEMPLATE-INST/Map-tc.cc 2002/06/05 22:52:42
@@ -29,7 +29,7 @@ Software Foundation, 59 Temple Place - S
 #include "Map.h"
 #include "Map.cc"

-#include "ov.h"
+#include "oct-obj.h"

 template class Map<octave_value>;
 template class CHNode<octave_value>;
Index: src/TEMPLATE-INST/SLList-expr.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/SLList-expr.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 SLList-expr.cc
--- src/TEMPLATE-INST/SLList-expr.cc 1997/05/16 01:13:06 1.3
+++ src/TEMPLATE-INST/SLList-expr.cc 2002/06/05 22:52:42
@@ -29,7 +29,7 @@ Software Foundation, 59 Temple Place - S
 #include "SLList.h"
 #include "SLList.cc"

-#include "ov.h"
+#include "oct-obj.h"
 #include "pt-exp.h"
 #include "pt-id.h"
 #include "pt-idx.h"
Index: src/TEMPLATE-INST/SLList-tc.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/SLList-tc.cc,v
retrieving revision 1.1
diff -u -3 -p -r1.1 SLList-tc.cc
--- src/TEMPLATE-INST/SLList-tc.cc 1997/05/05 05:33:53 1.1
+++ src/TEMPLATE-INST/SLList-tc.cc 2002/06/05 22:52:42
@@ -29,7 +29,7 @@ Software Foundation, 59 Temple Place - S
 #include "SLList.h"
 #include "SLList.cc"

-#include "ov.h"
+#include "oct-obj.h"

 template class SLNode<octave_value>;
 template class SLList<octave_value>;
Index: src/TEMPLATE-INST/SLList-tm.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/SLList-tm.cc,v
retrieving revision 1.2
diff -u -3 -p -r1.2 SLList-tm.cc
--- src/TEMPLATE-INST/SLList-tm.cc 1997/05/15 17:44:29 1.2
+++ src/TEMPLATE-INST/SLList-tm.cc 2002/06/05 22:52:42
@@ -29,7 +29,7 @@ Software Foundation, 59 Temple Place - S
 #include "SLList.h"
 #include "SLList.cc"

-#include "ov.h"
+#include "oct-obj.h"
 #include "pt-mat.h"

 template class SLNode<tree_matrix *>;
Index: src/TEMPLATE-INST/SLStack-sym.cc
===================================================================
RCS file: /cvs/octave/src/TEMPLATE-INST/SLStack-sym.cc,v
retrieving revision 1.3
diff -u -3 -p -r1.3 SLStack-sym.cc
--- src/TEMPLATE-INST/SLStack-sym.cc 2000/02/03 03:05:31 1.3
+++ src/TEMPLATE-INST/SLStack-sym.cc 2002/06/05 22:52:42
@@ -35,6 +35,7 @@ Software Foundation, 59 Temple Place - S
 #include "SLStack.h"
 #include "SLStack.cc"

+#include "oct-obj.h"
 #include "symtab.h"

 template class SLNode<symbol_record::symbol_def *>;



Reply | Threaded
Open this post in threaded view
|

[patch] intel C++/f90 support

John W. Eaton-6
On  5-Jun-2002, Mumit Khan <[hidden email]> wrote:

| The subject line is incorrect -- the only specific change needed for Intel
| C++ is in src/c-file-ptr-stream.h in using the non-standard std::filebuf
| interface. The rest are generic changes.

OK.

| The configury for Intel C++ nor F9x is there, so it has to be done
| manually. C++ is easy, it's the F9x configury that's hard to get right.
| Here's how I do it:
|
|   #! /bin/sh
|   CXX=icc
|   F77=ifc
|   FLIBS='-L/opt/intel/compiler60/ia32/lib -lintrins -lIEPCF90 -lF90 -limf -lirc -lcxa -lcprts -lunwind'
|   export CXX F77 FLIBS
|   ../../octave-cvs/configure --enable-shared --disable-static --enable-rpath -v

Does the Intel F9x compiler not have a -v option, or not print good
information if it is used?

| And then edit Makeconf to change the following:
|
|   Remove -Wall and -mieee-fp from CXXFLAGS and XTRA_CXXFLAGS. Also change
|   -fPIC to -kPIC in CXXFLAGS and FFLAGS.

Shouldn't -Wall and -mieee-fp only be added if we are using gcc?

| Sure I'm forgetting some important detail here, but you get the picture.
|
| The FLIBS environment variable is *very* important -- the configure will
| abort otherwise when checking the output of the Intel F9x libraries.
|
| liboctave/ChangeLog:
| 2002-06-05  Mumit Khan  <[hidden email]>
|
| * CmplxCHOL.h, CollocWt.h, cmd-edit.h, oct-shlib.h: Don't use
| qualified names.
|
| src/ChangeLog:
|
| * c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add Intel
| C++ runtime support.
| * Cell.h, gripes.cc, ov-base-scalar.cc, ov-colon.cc, ov-fcn.cc,
| ov-file.cc, ov-mapper.h, ov-va-args.cc, token.cc, xpow.cc,
| OPERATORS/op-b-b.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
| OPERATORS/op-cell.cc, OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc,
| OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
| OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc,
| OPERATORS/op-cs-s.cc, OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
| OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
| OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
| OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
| OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, OPERATORS/op-m-cm.cc,
| OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
| OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
| OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc,
| TEMPLATE-INST/Array-sym.cc, TEMPLATE-INST/Array-tc.cc,
| TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/SLList-expr.cc,
| TEMPLATE-INST/SLList-tc.cc, TEMPLATE-INST/SLList-tm.cc,
| TEMPLATE-INST/SLStack-sym.cc: Make the implementation of
| octave_value_list visibile for template instantiation.

Sorry for the delay.  I applied these changes.

Thanks,

jwe


Reply | Threaded
Open this post in threaded view
|

Re: [patch] intel C++/f90 support

Mumit Khan-4
On Sat, 17 Aug 2002, John W. Eaton wrote:

>
> Does the Intel F9x compiler not have a -v option, or not print good
> information if it is used?

It does, but it's quite messy to parse. I'll take another stab at it.

>
> | And then edit Makeconf to change the following:
> |
> |   Remove -Wall and -mieee-fp from CXXFLAGS and XTRA_CXXFLAGS. Also change
> |   -fPIC to -kPIC in CXXFLAGS and FFLAGS.
>
> Shouldn't -Wall and -mieee-fp only be added if we are using gcc?

Yes, you're right.

>
> | Sure I'm forgetting some important detail here, but you get the picture.
> |
> | The FLIBS environment variable is *very* important -- the configure will
> | abort otherwise when checking the output of the Intel F9x libraries.

This really needs to be cleaned up. I'll give it another go once I update
my tree. Not till end of Aug when I get back from vacation.

Mumit



Reply | Threaded
Open this post in threaded view
|

Re: [patch] intel C++/f90 support

John W. Eaton-6
On 18-Aug-2002, Mumit Khan <[hidden email]> wrote:

| On Sat, 17 Aug 2002, John W. Eaton wrote:
|
| >
| > Does the Intel F9x compiler not have a -v option, or not print good
| > information if it is used?
|
| It does, but it's quite messy to parse. I'll take another stab at it.
|
| >
| > | And then edit Makeconf to change the following:
| > |
| > |   Remove -Wall and -mieee-fp from CXXFLAGS and XTRA_CXXFLAGS. Also change
| > |   -fPIC to -kPIC in CXXFLAGS and FFLAGS.
| >
| > Shouldn't -Wall and -mieee-fp only be added if we are using gcc?
|
| Yes, you're right.

Oh, actually, I see now that configure.in uses the OCTAVE_CC_FLAG and
OCTAVE_CXX_FLAG macros to check for these options, so they could still
be added for non-gcc compilers if those compilers don't complain when
given those options.  I'm not sure how best to handle these kinds of
options, short of using a database, and knowing which compiler you are
actually using, and it seems that doing that is very much against the
spirit of autoconf.

jwe