This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Port ndbm.h


On 2019-06-09 21:55, Vaibhav Gupta wrote:
> I have ported ndbm.h to newlib from FreeBSD.
> I have placed ndbm.h to newlib/libc/include directory and ndbm.c to
> newlib/libc/posix directory.
> But I realized, the function declaration of __hash_open in newlib is:
> DB *__hash_open(const char *, int, int, int, const HASHINFO *);
> and in FreeBSD it is:
> DB *__hash_open(const char *, int, int, const HASHINFO *, int);
> Although I made required changes in ndbm.c but I guess maybe the entire
> search.h should be updated to newer FreeBSD resource?
> Should we do that?

I think this needs to be discussed more widely with previous maintainers.

Args were switched in 2010 commit:
https://cygwin.com/git/gitweb.cgi?p=newlib-cygwin.git;a=commit;h=b73e65bb44e2bac2b3e0a7a2a9f596ccb47e05a5

* libm/math/ef_sqrt.c: Delete unused variable sign.
* libc/stdlib/getenv.c: Delete "char *_findenv_r ();", as is not a
proper prototype, and is properly prototyped in stdlib.h, anyway.
* libc/stdlib/getenv_r.c: Ditto.
* libc/search/hash.c: Add _DEFUN to __hash_open() declaration; add
#define __DBINTERFACE_PRIVATE to activate prototypes from db_local.h.
* libc/search/db_local.h: Correct __hash_open() prototype.
* libc/sys/linux/cmath/math_private.h:  Eliminate compiler warnings:
Remove #define INFINITY (redefines from math.h); remove #define __isnanf
and #define __isinff isinff.

newlib/libc/search/db_local.h diff:
https://cygwin.com/git/gitweb.cgi?p=newlib-cygwin.git;a=blobdiff;f=newlib/libc/search/db_local.h;h=ec621fabf53f060b62fd3922f07d00ba0d8221c8;hp=53f9d17ff5abd8727be1a5b12e512131a6f8a287;hb=b73e65bb44e2bac2b3e0a7a2a9f596ccb47e05a5;hpb=56fbdfab68cf4577781e8623fe4c6d13ca7ec727

diff --git a/newlib/libc/search/db_local.h b/newlib/libc/search/db_local.h
index 53f9d17..ec621fa 100644 (file)
--- a/newlib/libc/search/db_local.h
+++ b/newlib/libc/search/db_local.h
@@ -210,7 +210,7 @@ DB *dbopen(const char *, int, int, DBTYPE, const void *);

 #ifdef __DBINTERFACE_PRIVATE
 DB     *__bt_open(const char *, int, int, const BTREEINFO *, int);
-DB     *__hash_open(const char *, int, int, const HASHINFO *, int);
+DB     *__hash_open(const char *, int, int, int, const HASHINFO *);
 DB     *__rec_open(const char *, int, int, const RECNOINFO *, int);
 void    __dbpanic(DB *dbp);
 #endif

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]