Export rand48 functions.
Kazuhiro Fujieda
fujieda@jaist.ac.jp
Wed Feb 14 23:08:00 GMT 2001
The following patch enables rand48 functions provided by newlib.
I've changed the way of initializing the reentrant structure so
other members than _stdin, _stdout and _stderr are initialized
to other than zero as well.
ChangeLog:
2001-02-15 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
* cygwin.din: Export rand48 functions.
* thread.cc (MTinterface::Init): Remove the initialization of
`reent_data'.
* dcrt0.cc: Add the initalizer to the declaration of `reent_data'.
* include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 35.
Index: cygwin.din
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/cygwin.din,v
retrieving revision 1.19
diff -u -p -r1.19 cygwin.din
--- cygwin.din 2001/01/22 15:55:34 1.19
+++ cygwin.din 2001/02/15 06:03:26
@@ -866,6 +866,24 @@ y1
y1f
yn
ynf
+drand48
+_drand48 = drand48
+erand48
+_erand48 = erand48
+jrand48
+_jrand48 = jrand48
+lcong48
+_lcong48 = lcong48
+lrand48
+_lrand48 = lrand48
+mrand48
+_lrand48 = lrand48
+nrand48
+_nrand48 = nrand48
+seed48
+_seed48 = seed48
+srand48
+_srand48 = srand48
setmode
_setmode = setmode
__assertfail
Index: thread.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/thread.cc,v
retrieving revision 1.15
diff -u -p -r1.15 thread.cc
--- thread.cc 2001/01/08 04:02:01 1.15
+++ thread.cc 2001/02/15 06:03:26
@@ -301,14 +301,6 @@ MTinterface::Init (int forked)
item->sigmask = NULL;
item->sigtodo = NULL;
#endif
-
- struct _reent *r = _REENT;
- memset (r, 0, sizeof (struct _reent));
-
- r->_errno = 0;
- r->_stdin = &r->__sf[0];
- r->_stdout = &r->__sf[1];
- r->_stderr = &r->__sf[2];
}
ThreadItem *
Index: dcrt0.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/dcrt0.cc,v
retrieving revision 1.85
diff -u -p -r1.85 dcrt0.cc
--- dcrt0.cc 2001/01/29 00:46:25 1.85
+++ dcrt0.cc 2001/02/15 06:03:27
@@ -85,7 +85,7 @@ extern "C"
char ***main_environ;
/* __progname used in getopt error message */
char *__progname = NULL;
- struct _reent reent_data;
+ struct _reent reent_data = _REENT_INIT(reent_data);
struct per_process __cygwin_user_data =
{/* initial_sp */ 0, /* magic_biscuit */ 0,
/* dll_major */ CYGWIN_VERSION_DLL_MAJOR,
@@ -764,6 +764,9 @@ dll_crt0_1 ()
if (!old_title && GetConsoleTitle (title_buf, TITLESIZE))
old_title = title_buf;
+
+ /* Initialize locale */
+ locale_init ();
/* Allocate fdtab */
dtable_init ();
Index: include/cygwin/version.h
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/include/cygwin/version.h,v
retrieving revision 1.30
diff -u -p -r1.30 version.h
--- version.h 2001/01/30 23:19:19 1.30
+++ version.h 2001/02/15 06:03:27
@@ -125,10 +125,12 @@ details. */
32: Export getrlimit/setrlimit
33: Export setlogmask
34: Separated out mount table
+ 35: Export drand48, erand48, jrand48, lcong48, lrand48,
+ mrand48, nrand48, seed48, and srand48.
*/
#define CYGWIN_VERSION_API_MAJOR 0
-#define CYGWIN_VERSION_API_MINOR 34
+#define CYGWIN_VERSION_API_MINOR 35
/* There is also a compatibity version number associated with the
shared memory regions. It is incremented when incompatible
____
| AIST Kazuhiro Fujieda <fujieda@jaist.ac.jp>
| HOKURIKU School of Information Science
o_/ 1990 Japan Advanced Institute of Science and Technology
More information about the Cygwin-patches
mailing list