libbsd/0.10.0

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.
Recipe info
2024-05-18

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
libbsd/0.10.0

Using libbsd

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
libbsd/0.10.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("libbsd/0.10.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): libbsd
  • CMake target name(s): libbsd::libbsd
  • bsd => libbsd::bsd
    libbsd-ctor => libbsd::libbsd-ctor
    libbsd-overlay => libbsd::libbsd-overlay
    
  • pkg-config file name(s): libbsd.pc
  • bsd => libbsd.pc
    libbsd-ctor => libbsd-ctor.pc
    libbsd-overlay => libbsd-overlay.pc
    

A simple use case using the CMake file name and the global target:

# ...
find_package(libbsd REQUIRED)
# ...
target_link_libraries(YOUR_TARGET libbsd::libbsd)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the libbsd homepage listed above:

#include "bsd/bitstring.h"
#include "bsd/bsd.h"
#include "bsd/err.h"
#include "bsd/getopt.h"
#include "bsd/inttypes.h"
#include "bsd/libutil.h"
#include "bsd/md5.h"
#include "bsd/netinet/ip_icmp.h"
#include "bsd/nlist.h"
#include "bsd/readpassphrase.h"
#include "bsd/stdio.h"
#include "bsd/stdlib.h"
#include "bsd/string.h"
#include "bsd/stringlist.h"
#include "bsd/sys/bitstring.h"
#include "bsd/sys/cdefs.h"
#include "bsd/sys/endian.h"
#include "bsd/sys/param.h"
#include "bsd/sys/poll.h"
#include "bsd/sys/queue.h"
#include "bsd/sys/time.h"
#include "bsd/sys/tree.h"
#include "bsd/timeconv.h"
#include "bsd/unistd.h"
#include "bsd/vis.h"
#include "bsd/wchar.h"