Mercurial > hg > octave-lyh
changeset 4353:ea4b8c35ac9d
[project @ 2003-02-21 21:04:41 by jwe]
author | jwe |
---|---|
date | Fri, 21 Feb 2003 21:04:41 +0000 |
parents | 80b83de0aa2a |
children | dfd47756dda7 |
files | ChangeLog configure.in src/ChangeLog src/ov.cc src/ov.h |
diffstat | 5 files changed, 65 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2003-02-21 John W. Eaton <jwe@bevo.che.wisc.edu> + * configure.in: Allow RLD_FLAG to be set using --enable-rpath arg. + + * configure.in: Fix default RLD_FLAG value for *-sgi-*. From + Paul Kienzle <pkienzle@users.sf.net>. + + * configure.in: Check for long long int and unsigned long long int. + * configure.in (AH_BOTTOM): Define HAVE_PLACEMENT_DELETE for gcc 3.2 and later.
--- a/configure.in +++ b/configure.in @@ -22,7 +22,7 @@ ### 02111-1307, USA. AC_INIT -AC_REVISION($Revision: 1.415 $) +AC_REVISION($Revision: 1.416 $) AC_PREREQ(2.52) AC_CONFIG_SRCDIR([src/octave.cc]) AC_CONFIG_HEADER(config.h) @@ -637,10 +637,15 @@ AC_MSG_ERROR([You can't disable building static AND shared libraries!]) fi -use_rpath=true AC_ARG_ENABLE(rpath, - [ --enable-rpath add -rpath to link command for shared libraries], - [if test "$enableval" = no; then use_rpath=false; fi], []) + [ --enable-rpath override the default link options for rpath; + e.g., --with-rpath='-rpath $(octlibdir)'], + [ if test "$enableval" = no; then use_rpath=false; + else + use_rpath=true + if test "$enableval" = yes; then true; + else enable_rpath_arg="$enableval"; fi + fi], [use_rpath=false]) DLFCN_DIR= CPICFLAG=-fPIC @@ -730,7 +735,7 @@ CPICFLAG= CXXPICFLAG= FPICFLAG= - RLD_FLAG='-L$(octlibdir)' + RLD_FLAG='-rpath $(octlibdir)' ;; sparc-sun-sunos4*) if test "$ac_cv_f77_compiler_gnu" = yes; then @@ -772,9 +777,11 @@ esac if $use_rpath; then - true + if test -n "$enable_rpath_arg"; then + RLD_FLAG="$enable_rpath_arg" + fi else - RLD_FLAG= + RLD_FLAG="" fi AC_MSG_RESULT([defining FPICFLAG to be $FPICFLAG]) @@ -828,6 +835,17 @@ AC_CHECK_FUNCS(gethostname, [], [AC_CHECK_LIB(socket, gethostname)]) AC_CHECK_FUNCS(getpwnam, [], [AC_CHECK_LIB(sun, getpwnam)]) +### Type stuff. + +AC_TYPE_MODE_T +AC_TYPE_OFF_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_TYPE_UID_T +AC_CHECK_TYPES([dev_t, ino_t, nlink_t, nlink_t]) +AC_CHECK_TYPES([long long int, unsigned long long int]) +AC_CHECK_TYPES([sigset_t, sig_atomic_t], , , [#include <signal.h>]) + ### How big are ints and how are they oriented? These could probably ### be eliminated in favor of run-time checks. @@ -1165,16 +1183,6 @@ OCTAVE_SIGNAL_CHECK OCTAVE_REINSTALL_SIGHANDLERS -### Type stuff. - -AC_TYPE_MODE_T -AC_TYPE_OFF_T -AC_TYPE_PID_T -AC_TYPE_SIZE_T -AC_TYPE_UID_T -AC_CHECK_TYPES([dev_t, ino_t, nlink_t, nlink_t]) -AC_CHECK_TYPES([sigset_t, sig_atomic_t], , , [#include <signal.h>]) - ### A system dependent kluge or two. AC_CHECK_FUNCS(getrusage times)
--- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,8 @@ 2003-02-21 John W. Eaton <jwe@bevo.che.wisc.edu> + * ov.h, ov.cc (octave_value (long long int)): New constructor. + (octave_value (unsigned long long int)): Likewise. + * oct-obj.h (octave_value_list::operator delete): Handle systems with or without placement delete.
--- a/src/ov.cc +++ b/src/ov.cc @@ -383,6 +383,22 @@ rep->count = 1; } +#if defined (HAVE_LONG_LONG_INT) +octave_value::octave_value (long long int i) + : rep (new octave_scalar (i)) +{ + rep->count = 1; +} +#endif + +#if defined (HAVE_UNSIGNEDLONG_LONG_INT) +octave_value::octave_value (unsigned long long int i) + : rep (new octave_scalar (i)) +{ + rep->count = 1; +} +#endif + octave_value::octave_value (octave_time t) : rep (new octave_scalar (t)) {
--- a/src/ov.h +++ b/src/ov.h @@ -165,6 +165,20 @@ octave_value (unsigned int i); octave_value (long int i); octave_value (unsigned long int i); + + // XXX FIXME XXX -- these are kluges. They turn into doubles + // internally, which will break for very large values. We just use + // them to store things like 64-bit ino_t, etc, and hope that those + // values are never actually larger than can be represented exactly + // in a double. + +#if defined (HAVE_LONG_LONG_INT) + octave_value (long long int i); +#endif +#if defined (HAVE_UNSIGNEDLONG_LONG_INT) + octave_value (unsigned long long int i); +#endif + octave_value (octave_time t); octave_value (double d); octave_value (const Cell& m);