Go to file
Guillem Jover 461f10ac57 Sync strtoi()/strtou() implementations from NetBSD
These contain the fixes to the error handling logic.

In NetBSD the manual page for strtou.3 is generated from the strtoi.3
manual page applying some substitutions, the problem is that the
cross-references are then lost. We will still keep them separate.

Reported-by: Alejandro Colomar <alx@kernel.org>
2024-02-18 13:57:04 +01:00
include doc: Use macOS to refer to the operating system 2024-01-08 23:37:43 +01:00
m4 build: Add missing dash to macro title bar 2023-09-05 03:02:44 +02:00
man Sync strtoi()/strtou() implementations from NetBSD 2024-02-18 13:57:04 +01:00
src Sync strtoi()/strtou() implementations from NetBSD 2024-02-18 13:57:04 +01:00
test test: Close all descriptors before initializing them for closefrom() 2024-01-08 01:58:54 +01:00
.gitignore build: Generate the map file from the configured ABI 2024-02-18 13:54:13 +01:00
.gitlab-ci.yml build: Check out-of-tree builds in CI 2024-01-07 20:21:08 +01:00
autogen build: Switch to autotools 2012-05-29 04:35:55 +02:00
configure.ac build: Make name_from_id man pages conditional instead of id_from_name 2024-02-17 05:00:58 +01:00
COPYING man: Switch arc4random(3bsd) man page from OpenBSD to NetBSD 2023-03-29 02:48:53 +02:00
get-version build: Switch to autotools 2012-05-29 04:35:55 +02:00
Makefile.am build: Terminate lists in variables with «# EOL» 2022-11-23 23:44:09 +01:00
README doc: Add missing empty line to separate README sections 2022-10-04 04:29:37 +02:00
TODO man: Replace references to a.out(5) with elf(5) 2019-08-08 03:22:09 +02:00

libbsd - Utility functions from BSD systems

This library provides useful functions commonly found on BSD systems,
and lacking on others like GNU systems, thus making it easier to port
projects with strong BSD origins, without needing to embed the same
code over and over again on each project.

A BSD compatible message-digest library is required, on systems where
this is not provided by its libc or libmd libraries, the canonical
implementation to use is <https://www.hadrons.org/software/libmd/>.


Releases
--------

  <https://libbsd.freedesktop.org/releases/>


Mailing List
------------

The subscription interface and web archives can be found at:

  <https://lists.freedesktop.org/mailman/listinfo/libbsd>

The mail address is:

  libbsd@lists.freedesktop.org


Source Repository
-----------------

The primary repository can be browsed at:

  <https://cgit.freedesktop.org/libbsd>

and cloned from:

  <https://anongit.freedesktop.org/git/libbsd>


Building from git source
------------------------

To prepare the libbsd source tree from git before starting the build process
some required software needs to be installed:

  GNU autoconf >= 2.67
  GNU automake >= 1.9
  GNU libtool >= 2.0

After installing the needed software, and running the following command on
the git tree:

  $ ./autogen

the source should be roughly equivalent to the distributed tar source.


Building from tar source
------------------------

The minimum software required to configure and build dpkg from a tarball is:

  C89 compiler
  make

The following software might be required depending on the system:

  libmd (whenever the libc does not provide the needed digest functions)

The build process is done by running the usual «./configure; make». To
see all available configuration options please run «./configure --help».