# HG changeset patch # User jwe # Date 886800433 0 # Node ID 8cdcb8945695a2cc68a7446b2e6cd6b8791bfc4a # Parent 894d516b4a006b530a04b0b9a933914680261fb3 [project @ 1998-02-06 21:25:11 by jwe] diff --git a/Makefile.in b/Makefile.in --- a/Makefile.in +++ b/Makefile.in @@ -7,7 +7,7 @@ # Department of Chemical Engineering TARGETS = octave-bug mkoctfile libcruft liboctave kpathsea dlfcn \ - src scripts doc check octave.info INSTALL.OCTAVE BUGS \ + readline src scripts doc check octave.info INSTALL.OCTAVE BUGS \ install install-strip uninstall tags TAGS dist conf-dist \ snapshot snapshot-version @@ -39,23 +39,25 @@ header-msg: FORCE @echo "" - @echo "**********************************************************" - @echo "* *" - @echo "* To compile Octave, you will need a recent version of *" - @echo "* GNU Make. *" - @echo "* *" - @echo "* You will also need g++ and libg++. *" - @echo "* *" - @echo "* This version of Octave has been developed with *" - @echo "* version 2.7.2. You probably won't get very far *" - @echo "* with earlier versions. Later versions may work, *" - @echo "* but C++ is still evolving, so don't be too surprised *" - @echo "* if you run into some trouble. *" - @echo "* *" - @echo "* Now would be a good time to read INSTALL.OCTAVE if *" - @echo "* you have not done so already. *" - @echo "* *" - @echo "**********************************************************" + @echo "***********************************************************" + @echo "* *" + @echo "* To compile Octave, you will need a recent version of *" + @echo "* GNU Make. *" + @echo "* *" + @echo "* You will also need g++ 2.7.2 or later. Version 2.8.0 *" + @echo "* or egcs 1.0.x should work. Later versions may work, *" + @echo "* but C++ is still evolving, so don't be too surprised *" + @echo "* if you run into some trouble. *" + @echo "* *" + @echo "* libg++ is no longer required (if you are using g++ *" + @echo "* 2.7.2, libstdc++ is distributed along with libg++, *" + @echo "* but for later versions, libstdc++ is distributed *" + @echo "* separately). *" + @echo "* *" + @echo "* Now would be a good time to read INSTALL.OCTAVE if *" + @echo "* you have not done so already. *" + @echo "* *" + @echo "***********************************************************" @echo "" help: header-msg diff --git a/README b/README --- a/README +++ b/README @@ -2,7 +2,7 @@ Copyright (C) 1996, 1997 John W. Eaton -Last updated: Tue May 20 14:16:45 1997 +Last updated: Fri Feb 6 02:23:36 1998 Overview -------- @@ -41,12 +41,16 @@ you don't build shared libraries or the binaries and libraries do not include debugging symbols). -In order to build Octave, you will need a current version of g++, -libg++, and GNU make. Recommended versions are +To compile Octave, you will need a recent version of GNU Make. You +will also need g++ 2.7.2 or later. Version 2.8.0 or egcs 1.0.x should +work. Later versions may work, but C++ is still evolving, so don't be +too surprised if you run into some trouble. - g++ 2.7.2 or 2.7.2.1 - libg++ 2.7.1 or 2.7.2 - make 3.75 +It is no longer necessary to have libg++, but you do need to have the +GNU implementation of libstdc++. If you are using g++ 2.7.2, +libstdc++ is distributed along with libg++, but for later versions, +libstdc++ is distributed separately. For egcs, libstdc++ is included +with the compiler distribution. YOU MUST HAVE GNU MAKE TO COMPILE OCTAVE. Octave's Makefiles use features of GNU Make that are not present in other versions of make. @@ -75,9 +79,9 @@ Octave is being developed with the Free Software Foundation's make, bison (a replacement for YACC), flex (a replacement for lex), gcc/g++, -and libg++ on an Intel Pentium 133 system running Debian Linux/GNU. -It should be possible to install it on any machine that runs GCC/G++. -It may also be possible to install it using other implementations of +and libstdc++ on an Intel Pentium II system running Linux/GNU. It +should be possible to install it on any machine that runs GCC/G++. It +may also be possible to install it using other implementations of these tools, but it will most certainly require much more work. Do yourself a favor and get the GNU development tools, either via anonymous ftp from prep.ai.mit.edu or by writing the Free Software diff --git a/doc/interpreter/install.texi b/doc/interpreter/install.texi --- a/doc/interpreter/install.texi +++ b/doc/interpreter/install.texi @@ -59,10 +59,10 @@ much smaller and on some systems it may be necessary to build shared libraries in order to use dynamically linked functions. -You may also want to build a shared version of @code{libg++}, if your +You may also want to build a shared version of @code{libstdc++}, if your system doesn't already have one. Note that a patch is needed to build -shared versions of version 2.7.2 of @code{libg++} and @code{libstdc++} -on the HP-PA architecture. You can find the patch at +shared versions of version 2.7.2 of @code{libstdc++} on the HP-PA +architecture. You can find the patch at @url{ftp://ftp.cygnus.com/pub/g++/libg++-2.7.2-hppa-gcc-fix}. @item --enable-dl @@ -105,23 +105,29 @@ is a coincidence---it is not related to the GNU project or the FSF in any but the most peripheral sense. -For reading the on-line documentation, you will need the GNU Info reader -from the GNU Texinfo package, version 3.11 or later. +To compile Octave, you will need a recent version of GNU Make. You +will also need @code{g++} 2.7.2 or later. Version 2.8.0 or @code{egcs} +1.0.x should work. Later versions may work, but C++ is still evolving, +so don't be too surprised if you run into some trouble. + +It is no longer necessary to have @code{libg++}, but you do need to have +the GNU implementation of @code{libstdc++}. If you are using @code{g++} +2.7.2, @code{libstdc++} is distributed along with @code{libg++}, but for +later versions, @code{libstdc++} is distributed separately. For +@code{egcs}, @code{libstdc++} is included with the compiler +distribution. -For version @value{VERSION}, you must have the GNU C++ compiler -(@code{gcc}) version 2.7.2 or later to compile Octave. You will also -need version 2.7.1 or 2.7.2 of the GNU C++ class library -(@code{libg++}). If you plan to modify the parser you will also need -GNU @code{bison} and @code{flex}. If you modify the documentation, you -will need the @code{makeinfo} from the GNU Texinfo package. +If you plan to modify the parser you will also need GNU @code{bison} and +@code{flex}. If you modify the documentation, you will need GNU +Texinfo, along with the patch for the @code{makeinfo} program that is +distributed with Octave. -GNU Make, @code{gcc}, and @code{libg++}, @code{gnuplot}, @code{bison}, -@code{flex}, and Texinfo are all available from many anonymous ftp -archives. The primary site is @url{prep.ai.mit.edu}, but it is often -very busy. A list of sites that mirror the software on @code{prep} is -available by anonymous ftp from -@url{ftp://prep.ai.mit.edu/pub/gnu/GNUinfo/FTP}, or by fingering -@email{fsf@@prep.ai.mit.edu}. +GNU Make, @code{gcc}, and @code{libstdc++}, @code{gnuplot}, +@code{bison}, @code{flex}, and Texinfo are all available from many +anonymous ftp archives. The primary site is @url{ftp.gnu.org}, but it +is often very busy. A list of sites that mirror the software on +@url{ftp.gnu.org} is available by anonymous ftp from +@url{ftp://ftp.gnu.org/pub/gnu/GNUinfo/FTP}. If you don't have a Fortran compiler, or if your Fortran compiler doesn't work like the traditional Unix f77, you will need to have the @@ -228,9 +234,9 @@ @item Building @file{.oct} files doesn't work. -You should probably have a shared version of @code{libg++}. A patch is -needed to build shared versions of version 2.7.2 of @code{libg++} and -@code{libstdc++} on the HP-PA architecture. You can find the patch at +You should probably have a shared version of @code{libstdc++}. A patch +is needed to build shared versions of version 2.7.2 of @code{libstdc++} +on the HP-PA architecture. You can find the patch at @url{ftp://ftp.cygnus.com/pub/g++/libg++-2.7.2-hppa-gcc-fix}. @item diff --git a/liboctave/oct-syscalls.cc b/liboctave/oct-syscalls.cc --- a/liboctave/oct-syscalls.cc +++ b/liboctave/oct-syscalls.cc @@ -156,7 +156,7 @@ #if defined (HAVE_VFORK) status = ::vfork (); #else - status = ::vfork (); + status = ::fork (); #endif if (status < 0) diff --git a/octMakefile.in b/octMakefile.in --- a/octMakefile.in +++ b/octMakefile.in @@ -166,7 +166,9 @@ find `cat .fname` \( \( -name RCS -a -type d \) \ -o \( -name CVS -a -type d \) -o \( -name OLD -a -type d \) \ -o -name "=*" -o -name '*~' -o -name '#*#' -o -name config.log \ - -o -name config.status -o -name c-auto.h \) -print | xargs rm -rf + -o -name config.status -o -name config.cache -o-name config.h \ + -o -name Makefile -o -name stamp-h -o -name klibtool.config \ + -o -name c-auto.h \) -print | xargs rm -rf rm -f `cat .fname`/test/octave.test/*.m chmod -R a+rwX `cat .fname` tar cf `cat .fname`.tar `cat .fname` diff --git a/scripts/ChangeLog b/scripts/ChangeLog --- a/scripts/ChangeLog +++ b/scripts/ChangeLog @@ -1,3 +1,7 @@ +Fri Feb 6 00:29:50 1998 John W. Eaton + + * miscellaneous/popen2.m: Use vfork instead of fork. + Tue Feb 3 00:18:40 1998 John W. Eaton * special-matrix/sylvester_matrix.m: Rename from hadamard.m diff --git a/scripts/miscellaneous/popen2.m b/scripts/miscellaneous/popen2.m --- a/scripts/miscellaneous/popen2.m +++ b/scripts/miscellaneous/popen2.m @@ -59,7 +59,7 @@ if (stdin_status == 0 && stdout_status == 0) - pid = fork (); + pid = vfork (); if (pid == 0) diff --git a/src/ChangeLog b/src/ChangeLog --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +Fri Feb 6 01:23:18 1998 John W. Eaton + + * oct-stream.cc (octave_base_stream::file_number): Rename from fileno. + Change all uses. + + * fsolve.cc (fsolve_option_table): Add missing & to function names. + Thu Feb 5 02:27:18 1998 John W. Eaton * dirfns.cc (Fls): If first attempt at reading process output diff --git a/src/DLD-FUNCTIONS/fsolve.cc b/src/DLD-FUNCTIONS/fsolve.cc --- a/src/DLD-FUNCTIONS/fsolve.cc +++ b/src/DLD-FUNCTIONS/fsolve.cc @@ -200,8 +200,8 @@ { "tolerance", { "tolerance", 0, }, { 1, 0, }, 1, - NLEqn_options::set_tolerance, - NLEqn_options::tolerance, }, + &NLEqn_options::set_tolerance, + &NLEqn_options::tolerance, }, { 0, { 0, 0, }, diff --git a/src/oct-stream.cc b/src/oct-stream.cc --- a/src/oct-stream.cc +++ b/src/oct-stream.cc @@ -721,7 +721,7 @@ } int -octave_base_stream::fileno (void) +octave_base_stream::file_number (void) { // Kluge alert! diff --git a/src/oct-stream.h b/src/oct-stream.h --- a/src/oct-stream.h +++ b/src/oct-stream.h @@ -257,7 +257,7 @@ virtual ostream *output_stream (void) { return 0; } - int fileno (void); + int file_number (void); bool ok (void) const { return ! fail; } @@ -412,7 +412,7 @@ return error (clear, err_num); } - int fileno (void) { return rep ? rep->fileno () : -1; } + int file_number (void) { return rep ? rep->file_number () : -1; } bool ok (void) const { return rep && rep->ok (); } diff --git a/src/syscalls.cc b/src/syscalls.cc --- a/src/syscalls.cc +++ b/src/syscalls.cc @@ -111,8 +111,8 @@ if (! error_state) { - int i_old = old_stream->fileno (); - int i_new = new_stream->fileno (); + int i_old = old_stream->file_number (); + int i_new = new_stream->file_number (); if (i_old >= 0 && i_new >= 0) {