Go to file
Guillem Jover 92337b15a2 Make getprogname() porting mandatory
Although the function is documented as possibly returning NULL if it
cannot find a known source of information, we should still at least
attempt to port it to any supported system, and otherwise explicitly
mark it as not implementable for such systems if that was to be the
case.
2023-04-21 05:20:27 +02:00
include build: On macOS do not build functions provided by the system 2023-04-17 04:12:42 +02:00
m4 build: Add compiler warnings support 2021-11-27 05:06:14 +01:00
man build: On macOS do not build functions provided by the system 2023-04-17 04:12:42 +02:00
src Make getprogname() porting mandatory 2023-04-21 05:20:27 +02:00
test test: Do not use /dev/null as compiler output file 2023-04-18 01:09:05 +02:00
.gitignore build: Add generated *.sym files to .gitignore 2023-04-18 01:09:05 +02: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 build: On macOS do not build functions provided by the system 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».