delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2012/03/04/18:36:12

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
Message-Id: <201203042335.q24NZTn5004491@delorie.com>
From: Juan Manuel Guerrero <juan DOT guerrero AT gmx DOT de>
To: djgpp-announce AT delorie DOT com
Subject: ANNOUNCE: DJGPP port of GNU dbm (gdbm) 1.10 uploaded.
Date: Mon, 5 Mar 2012 00:31:25 +0100

This is a port of GNU dbm (gdbm) 1.10 to MSDOS/DJGPP.


  GNU dbm (gdbm) is a set of database routines that use extendible hashing
  and works similar to the standard UNIX dbm routines.  The library provides
  also an optional compatibility layer for UNIX-like dbm and ndbm calls.
  These routines are provided to a programmer needing to create and manipulate
  a hashed database. gdbm is *NOT* a complete database package for an end user.


  DJGPP specific changes.
  =======================

  The port of gdbm will offer file locking support if compiled with DJGPP 2.04
  and if the used OS offers the required file locking functionality.  But if
  compiled with DJGPP 2.03 the file locking support will never been available.
  To be able to use that port version, the calls to fcntl() have been replaced
  by macros that always return success.  Thus that version will never try to
  lock data base files during operation.  All other changes concern DOS specific
  issues like the reading and writing in binary mode, the handling of mixed
  slashes and backslashes in paths, the closing of source and destination files
  before renaming them and the initialization of the hash table directory for a
  new data base files.  This initialization is very dependent on the st_blksize
  value returned by fstat().  This value must always be an integral multiple of
  512 or the initialization will fail and no new data base file will be created.

  The dbm and ndbm specific functions have been moved into a separate library.
  This means that there are two libraries:
    - libgdbm.a containing all gdbm specific functions and
    - libgdbm_compat.a containing all dbm specific functions

  If you need to compile an application using the old unix dbm functions you
  will have to use a command like this:
    gcc application.c -lgdbm_compat -lgdbm

  Now you will have access to the dbm compatibility functions. Please note,
  that these compatibility functions are mapped to the equivalent gdbm functions
  so you must link both libraries in the order shown in the example above.

  The port does neither support mmap() for I/O operations nor O_CLOEXEC for
  file closing.

  Please read the docs to become familiar with the products.




  The port has been compiled using stock djdev203 (patchlevel 2) and consists
  of the usual three packages that can be downloaded from ftp.delorie.com and
  mirrors as (timestamp 2012-03-04):

    GNU dbm 1.10 binaries, headers, libraries, info and man
    format documentation:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gdbm110b.zip

    GNU dbm 1.10 dvi, html, pdf and ps format documentation:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gdbm110d.zip

    GNU dbm 1.10 source:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gdbm110s.zip


  The binaries have been produced a second time using the stock version of
  djdev204 beta library.  This package is available at ftp.delorie.com and
  mirrors as (timestamp 2012-03-04):

    GNU dbm 1.10 binaries, headers, libraries, info and man
    format documentation:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gdbm110b.zip


  Send gdbm specific bug reports to <bug-gdbm AT gnu DOT org>.
  Send suggestions and bug reports concerning the DJGPP port to
  comp.os.msdos.djgpp or <djgpp AT delorie DOT com>.



Enjoy.

        Guerrero, Juan Manuel <juan DOT guerrero AT gmx DOT de>

- Raw text -


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