www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/2003/02/15/18:17:56

Mailing-List: contact cygwin-developers-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-developers-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin-developers/>
List-Post: <mailto:cygwin-developers AT cygwin DOT com>
List-Help: <mailto:cygwin-developers-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-developers-owner AT cygwin DOT com
Delivered-To: mailing list cygwin-developers AT cygwin DOT com
Message-ID: <3E4EC9F9.2080704@netscape.net>
Date: Sat, 15 Feb 2003 18:15:05 -0500
From: Nicholas Wourms <nwourms AT netscape DOT net>
User-Agent: Mozilla/5.0 (Windows; U; Win 9x 4.90; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: cygwin-developers AT cygwin DOT com
Subject: Re: Just exported Massive number of newlib functions in cygwin.din
References: <20030215220518 DOT GA3574 AT redhat DOT com>

--------------070307080608060400010504
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

> I didn't export the argz functions and the envz functions since I wasn't
> familiar with them and don't recall anyone ever asking for them.

Actually, I have had them exported for about 6 months now, 
and haven't had a single issue yet.  They are mostly used 
for manipulating of strings in vectors and arrays.  They are 
most often found in core GNU software such as fileutils, 
binutils, libtool(ltdl), and gcc.  One minor catch I 
discovered was that I had to prepend two underscores to the 
symbol alias, as that is what configure often was expecting 
(i.e. __argz_next).  Chuck can attest to the fact that I 
have been planning to submit a patch for awhile, but I guess 
I was just waiting for the "right time".  I'm sure you may 
choose to do differently, but I've attached a diff of how I 
defined them, merely as a reference.

I suppose it is relevant to note that the argz/envz are 
unique to GNU/OS's and have no set specification outside of 
them.  So I suppose you could considier it another set of 
linux-centric functions.

Cheers,
Nicholas

--------------070307080608060400010504
Content-Type: text/plain;
 name="argz-envz-export.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="argz-envz-export.diff"

Index: cygwin/cygwin.din
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/cygwin.din,v
retrieving revision 1.77
diff -u -3 -p -a -u -p -r1.77 cygwin.din
--- cygwin/cygwin.din   15 Feb 2003 21:45:08 -0000  1.77
+++ cygwin/cygwin.din   15 Feb 2003 23:16:28 -0000
@@ -38,6 +38,30 @@ alarm
 _alarm = alarm
 alphasort
 _alphasort = alphasort
+argz_add
+__argz_add = argz_add
+argz_add_sep
+__argz_add_sep = argz_add_sep
+argz_append
+__argz_append = argz_append
+argz_count
+__argz_count = argz_count
+argz_create
+__argz_create = argz_create
+argz_create_sep
+__argz_create_sep = argz_create_sep
+argz_delete
+__argz_delete = argz_delete
+argz_extract
+__argz_extract = argz_extract
+argz_insert
+__argz_insert = argz_insert
+argz_next
+__argz_next = argz_next
+argz_replace
+__argz_replace = argz_replace
+argz_stringify
+__argz_stringify = argz_stringify
 asctime
 _asctime = asctime
 asctime_r
@@ -170,6 +194,18 @@ endgrent
 _endgrent = endgrent
 endutent
 _endutent = endutent
+envz_add
+__envz_add = envz_add
+envz_entry
+__envz_entry = envz_entry
+envz_get
+__envz_get = envz_get
+envz_merge
+__envz_merge = envz_merge
+envz_remove
+__envz_remove = envz_remove
+envz_strip
+__envz_strip = envz_strip
 erf
 _erf = erf
 erfc
Index: cygwin/include/cygwin/version.h
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/include/cygwin/version.h,v
retrieving revision 1.101
diff -u -3 -p -a -u -p -r1.101 version.h
--- cygwin/include/cygwin/version.h 15 Feb 2003 21:45:09 -0000  1.101
+++ cygwin/include/cygwin/version.h 15 Feb 2003 23:16:28 -0000
@@ -180,12 +180,16 @@ details. */
          wcschr wcscpy wcscspn wcslcat wcslcpy wcsncat wcsncmp wcsncpy
          wcspbrk wcsrchr wcsrtombs wcsspn wcsstr wctob wctob wctrans
          wctype wmemchr wmemcmp wmemcpy wmemmove wmemset
+       75: Export argz_add, argz_add_sep, argz_append, argz_count, argz_create,
+           argz_create_sep, argz_delete, argz_extract, argz_insert, argz_next,
+           argz_replace, argz_stringify, envz_add, envz_entry, envz_get, envz_merge,
+           envz_remove, envz_strip and related aliases
      */
 
      /* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
 
 #define CYGWIN_VERSION_API_MAJOR 0
-#define CYGWIN_VERSION_API_MINOR 74
+#define CYGWIN_VERSION_API_MINOR 75
 
      /* There is also a compatibity version number associated with the
    shared memory regions.  It is incremented when incompatible

--------------070307080608060400010504--

- Raw text -


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