Go to file
Guillem Jover 8f61036467 build: Add -no-undefined libtool flag
We have no need for undefined symbols, so we can let the shared
library build even on systems without support for undefined symbols.
2023-04-17 04:12:42 +02:00
include include: Adjust closefrom() per glibc adoption 2023-02-17 22:29:26 +01:00
m4 build: Add compiler warnings support 2021-11-27 05:06:14 +01:00
man man: Add HISTORY section to arc4random(3bsd) 2023-03-29 02:49:28 +02:00
src build: Add -no-undefined libtool flag 2023-04-17 04:12:42 +02:00
test test: Use open_memstream() only if available 2023-04-17 04:12:42 +02:00
.gitignore Switch md5 compatibility logic back to direct linking 2021-12-01 04:14:35 +01:00
.gitlab-ci.yml build: Do not enable ASAN for musl CI pipelines 2023-03-29 09:35:27 +02:00
autogen build: Switch to autotools 2012-05-29 04:35:55 +02:00
configure.ac Only use <stdio_ext.h> if present 2023-04-17 04:12:42 +02: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».