Commit d9a3317a by Mumit Khan Committed by Jeff Law

configure.in (sys/param.h,sys/times.h): Check.

	* libU77/configure.in (sys/param.h,sys/times.h): Check.
	(times,alarm): Likewise.
	* libU77/config.h.in (HAVE_SYS_PARAM_H, HAVE_SYS_TIMES_H,
	HAVE_ALARM, HAVE_TIMES): New defs.
	* libU77/alarm_.c: Conditionalize for target platform. Set errno
	to ENOSYS if target libc doesn't have the function.
	* libU77/dtime_.c: Likewise.
	* libU77/etime_.c: Likewise.
	* libU77/sys_clock_.c: Likewise.

From-SVN: r17398
parent 4dfa6961
Sat Jan 17 22:40:31 1998 Mumit Khan <khan@xraylith.wisc.edu> Sat Jan 17 22:40:31 1998 Mumit Khan <khan@xraylith.wisc.edu>
* libU77/configure.in (sys/param.h,sys/times.h): Check.
(times,alarm): Likewise.
* libU77/config.h.in (HAVE_SYS_PARAM_H, HAVE_SYS_TIMES_H,
HAVE_ALARM, HAVE_TIMES): New defs.
* libU77/alarm_.c: Conditionalize for target platform. Set errno
to ENOSYS if target libc doesn't have the function.
* libU77/dtime_.c: Likewise.
* libU77/etime_.c: Likewise.
* libU77/sys_clock_.c: Likewise.
* configure.in (NON_UNIX_STDIO): Define if MINGW32. * configure.in (NON_UNIX_STDIO): Define if MINGW32.
(NON_ANSI_RW_MODE): Do not define for CYGWIN32 or MINGW32. (NON_ANSI_RW_MODE): Do not define for CYGWIN32 or MINGW32.
......
...@@ -24,6 +24,7 @@ Boston, MA 02111-1307, USA. */ ...@@ -24,6 +24,7 @@ Boston, MA 02111-1307, USA. */
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <errno.h> /* for ENOSYS */
#include "f2c.h" #include "f2c.h"
#ifndef RETSIGTYPE #ifndef RETSIGTYPE
...@@ -50,10 +51,14 @@ integer G77_alarm_0 (integer *seconds, sig_proc proc) ...@@ -50,10 +51,14 @@ integer G77_alarm_0 (integer *seconds, sig_proc proc)
#endif #endif
{ {
int status; int status;
#if defined (HAVE_ALARM) && defined (SIGALRM)
if (signal(SIGALRM, (sig_type)proc) == SIG_ERR) if (signal(SIGALRM, (sig_type)proc) == SIG_ERR)
status = -1; status = -1;
else else
status = alarm (*seconds); status = alarm (*seconds);
#else /* ! HAVE_ALARM || ! SIGALRM */
errno = ENOSYS;
status = -1;
#endif
return status; return status;
} }
...@@ -71,3 +71,16 @@ ...@@ -71,3 +71,16 @@
/* Define if you have the <unistd.h> header file. */ /* Define if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H #undef HAVE_UNISTD_H
/* Define if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
/* Define if you have the <sys/times.h> header file. */
#undef HAVE_SYS_TIMES_H
/* Define if you have the alarm function. */
#undef HAVE_ALARM
/* Define if you have the times function. */
#undef HAVE_TIMES
...@@ -79,7 +79,8 @@ dnl AC_DEFINE(KR_headers)])]) ...@@ -79,7 +79,8 @@ dnl AC_DEFINE(KR_headers)])])
dnl AC_MSG_RESULT($ac_cv_sys_proto) dnl AC_MSG_RESULT($ac_cv_sys_proto)
AC_HEADER_TIME AC_HEADER_TIME
AC_CHECK_HEADERS(limits.h unistd.h sys/time.h string.h stdlib.h) AC_CHECK_HEADERS(limits.h unistd.h sys/time.h string.h stdlib.h \
sys/param.h sys/times.h)
dnl Checks for typedefs, structures, and compiler characteristics. dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST AC_C_CONST
...@@ -96,7 +97,8 @@ AC_STRUCT_TM ...@@ -96,7 +97,8 @@ AC_STRUCT_TM
dnl Checks for library functions. dnl Checks for library functions.
AC_CHECK_FUNCS(symlink getcwd getwd lstat gethostname strerror clock getrusage) AC_CHECK_FUNCS(symlink getcwd getwd lstat gethostname strerror clock \
getrusage times alarm)
test $ac_cv_func_symlink = yes && MAYBES="$MAYBES symlnk_.o" test $ac_cv_func_symlink = yes && MAYBES="$MAYBES symlnk_.o"
test $ac_cv_func_lstat = yes && MAYBES="$MAYBES lstat_.o" test $ac_cv_func_lstat = yes && MAYBES="$MAYBES lstat_.o"
test $ac_cv_func_gethostname = yes && MAYBES="$MAYBES hostnm_.o" test $ac_cv_func_gethostname = yes && MAYBES="$MAYBES hostnm_.o"
......
...@@ -23,12 +23,17 @@ Boston, MA 02111-1307, USA. */ ...@@ -23,12 +23,17 @@ Boston, MA 02111-1307, USA. */
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <sys/types.h> #include <sys/types.h>
#include <sys/times.h> #if HAVE_SYS_TIMES_H
#include <sys/param.h> # include <sys/times.h>
#endif
#if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
#if HAVE_GETRUSAGE #if HAVE_GETRUSAGE
# include <sys/time.h> # include <sys/time.h>
# include <sys/resource.h> # include <sys/resource.h>
#endif #endif
#include <errno.h> /* for ENOSYS */
#include "f2c.h" #include "f2c.h"
/* For dtime, etime we store the clock tick parameter (clk_tck) the /* For dtime, etime we store the clock tick parameter (clk_tck) the
...@@ -45,6 +50,7 @@ double G77_dtime_0 (tarray) ...@@ -45,6 +50,7 @@ double G77_dtime_0 (tarray)
double G77_dtime_0 (real tarray[2]) double G77_dtime_0 (real tarray[2])
#endif #endif
{ {
#if defined (HAVE_GETRUSAGE) || defined (HAVE_TIMES)
/* The getrusage version is only the default for convenience. */ /* The getrusage version is only the default for convenience. */
#ifdef HAVE_GETRUSAGE #ifdef HAVE_GETRUSAGE
float utime, stime; float utime, stime;
...@@ -85,4 +91,8 @@ double G77_dtime_0 (real tarray[2]) ...@@ -85,4 +91,8 @@ double G77_dtime_0 (real tarray[2])
#endif /* HAVE_GETRUSAGE */ #endif /* HAVE_GETRUSAGE */
old_utime = utime; old_stime = stime; old_utime = utime; old_stime = stime;
return (tarray[0]+tarray[1]); return (tarray[0]+tarray[1]);
#else /* ! HAVE_GETRUSAGE && ! HAVE_TIMES */
errno = ENOSYS;
return 0.0;
#endif /* ! HAVE_GETRUSAGE && ! HAVE_TIMES */
} }
...@@ -23,12 +23,17 @@ Boston, MA 02111-1307, USA. */ ...@@ -23,12 +23,17 @@ Boston, MA 02111-1307, USA. */
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <sys/types.h> #include <sys/types.h>
#include <sys/times.h> #if HAVE_SYS_TIMES_H
#include <sys/param.h> # include <sys/times.h>
#endif
#if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
#if HAVE_GETRUSAGE #if HAVE_GETRUSAGE
# include <sys/time.h> # include <sys/time.h>
# include <sys/resource.h> # include <sys/resource.h>
#endif #endif
#include <errno.h> /* for ENOSYS */
#include "f2c.h" #include "f2c.h"
/* For dtime, etime we store the clock tick parameter (clk_tck) the /* For dtime, etime we store the clock tick parameter (clk_tck) the
...@@ -45,6 +50,7 @@ double G77_etime_0 (tarray) ...@@ -45,6 +50,7 @@ double G77_etime_0 (tarray)
double G77_etime_0 (real tarray[2]) double G77_etime_0 (real tarray[2])
#endif #endif
{ {
#if defined (HAVE_GETRUSAGE) || defined (HAVE_TIMES)
/* The getrusage version is only the default for convenience. */ /* The getrusage version is only the default for convenience. */
#ifdef HAVE_GETRUSAGE #ifdef HAVE_GETRUSAGE
struct rusage rbuff; struct rusage rbuff;
...@@ -77,4 +83,8 @@ double G77_etime_0 (real tarray[2]) ...@@ -77,4 +83,8 @@ double G77_etime_0 (real tarray[2])
tarray[1] = (float) buffer.tms_stime / (float)clk_tck; tarray[1] = (float) buffer.tms_stime / (float)clk_tck;
#endif /* HAVE_GETRUSAGE */ #endif /* HAVE_GETRUSAGE */
return (tarray[0]+tarray[1]); return (tarray[0]+tarray[1]);
#else /* ! HAVE_GETRUSAGE && ! HAVE_TIMES */
errno = ENOSYS;
return 0.0;
#endif /* ! HAVE_GETRUSAGE && ! HAVE_TIMES */
} }
...@@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */ ...@@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <errno.h> #include <errno.h>
#include <sys/param.h> #if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
#include "f2c.h" #include "f2c.h"
#ifdef KR_headers #ifdef KR_headers
......
...@@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */ ...@@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <errno.h> #include <errno.h>
#include <sys/param.h> #if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
#include "f2c.h" #include "f2c.h"
#ifdef KR_headers #ifdef KR_headers
......
...@@ -29,11 +29,14 @@ Boston, MA 02111-1307, USA. */ ...@@ -29,11 +29,14 @@ Boston, MA 02111-1307, USA. */
# include <time.h> # include <time.h>
# endif # endif
#endif #endif
#include <sys/times.h> #if HAVE_SYS_TIMES_H
# include <sys/times.h>
#endif
#include <limits.h> #include <limits.h>
#if HAVE_UNISTD_H #if HAVE_UNISTD_H
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <errno.h> /* for ENOSYS */
#include "f2c.h" #include "f2c.h"
#ifdef KR_headers #ifdef KR_headers
...@@ -43,6 +46,7 @@ int G77_system_clock_0 (count, count_rate, count_max) ...@@ -43,6 +46,7 @@ int G77_system_clock_0 (count, count_rate, count_max)
int G77_system_clock_0 (integer *count, integer *count_rate, integer *count_max) int G77_system_clock_0 (integer *count, integer *count_rate, integer *count_max)
#endif #endif
{ {
#if defined (HAVE_TIMES)
struct tms buffer; struct tms buffer;
unsigned long cnt; unsigned long cnt;
#ifdef _SC_CLK_TCK #ifdef _SC_CLK_TCK
...@@ -63,4 +67,8 @@ int G77_system_clock_0 (integer *count, integer *count_rate, integer *count_max) ...@@ -63,4 +67,8 @@ int G77_system_clock_0 (integer *count, integer *count_rate, integer *count_max)
else else
*count = cnt; *count = cnt;
return 0; return 0;
#else /* ! HAVE_TIMES */
errno = ENOSYS;
return -1;
#endif /* ! HAVE_TIMES */
} }
...@@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */ ...@@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */
# include <unistd.h> # include <unistd.h>
#endif #endif
#include <errno.h> #include <errno.h>
#include <sys/param.h> #if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
#include "f2c.h" #include "f2c.h"
#ifdef KR_headers #ifdef KR_headers
......
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