delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2004/04/08/16:04:17

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Thu, 8 Apr 2004 16:02:23 -0400
From: Christopher Faylor <cgf-no-personal-reply-please AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: reentrant functions
Message-ID: <20040408200223.GD931@coc.bosbc.com>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <20040407044353 DOT GA6805 AT panix DOT com> <20040407194643 DOT GM26558 AT cygbert DOT vinschen DOT de> <n2m-g DOT c54g74 DOT 3vv9r8p DOT 1 AT buzzy-box DOT bavag>
Mime-Version: 1.0
In-Reply-To: <n2m-g.c54g74.3vv9r8p.1@buzzy-box.bavag>
User-Agent: Mutt/1.4.1i

On Thu, Apr 08, 2004 at 09:30:47PM +0200, Bas van Gompel wrote:
>Op Wed, 7 Apr 2004 21:46:43 +0200
>schreef Corinna Vinschen <corinna-cygwin from cygwin.com>
>in <20040407194643 DOT GM26558 AT cygbert DOT vinschen DOT de>
>in local.ml.cygwin:
>:  On Apr  6 23:43, Oleg Ostrozhansky wrote:
>[...]
>: > not thread-safe.  But when as an example I try using _gets_r(), I'm
>: > getting a link error that this function does not exist:
>[...]
>:  Many reentrant functions from newlib are currently just not exported by
>:  Cygwin.  Any volunteer to collect these non-exported newlib functions
>:  so that we can add all of them?
>
>----
>$ grep -oR '_[^ ]\+_r *( *struct \+_reent' .|sed 's, *(.*,,'|sort|uniq
>_atoi_r
>_atol_r
>_atoll_r
>_calloc_r
>_cfree_r
>_close_r
>_creat_r
>_execve_r
>_fcloseall_r
>_fcntl_r
>_fgetpos64_r
>_fgetpos_r
>_fork_r
>_free_r
>_freopen64_r
>_freopen_r
>_fscanf_r
>_fseek_r
>_fseeko64_r
>_fseeko_r
>_fsetpos64_r
>_fsetpos_r
>_fstat64_r
>_fstat_r
>_ftell_r
>_ftello64_r
>_ftello_r
>_getenv_r
>_getpid_r
>_gettimeofday_r
>_iconv_close_r
>_iconv_open_r
>_iconv_r
>_iprintf_r
>_kill_r
>_ldtoa_r
>_link_r
>_lseek64_r
>_lseek_r
>_mallinfo_r
>_malloc_r
>_malloc_stats_r
>_malloc_trim_r
>_malloc_usable_size_r
>_mallopt_r
>_mblen_r
>_memalign_r
>_open64_r
>_open_r
>_pread_r
>_printf_r
>_pvalloc_r
>_pwrite_r
>_read_r
>_realloc_r
>_remove_r
>_rewind_r
>_sbrk_r
>_scanf_r
>_simdldtoa_r
>_sscanf_r
>_stat64_r
>_stat_r
>_strtoll_r
>_strtoull_r
>_times_r
>_tzset_r
>_unlink_r
>_valloc_r
>_wait_r
>_write_r
>----
>
>_remove_r and _stat64_r only occur in winsup/cygwin/syscalls.cc.
>_fstat_r, _getpid_r and _stat_r are in winsup/cygwin/syscalls.cc
>and newlib/libc.
>The others are only in newlib/libc.
>
>Is this the info you wanted?

Not really.  The above list includes at least one function that are
already exported by the DLL.

We also do not want to export _r functions which are unique only to
newlib.  For instance, I suspect that _mallopt_r is probably not
something that we want to export since no other UNIX has it.

This is not something that will be solved by grep.  It actually
involves some research.

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019