:: [Dng] Announcing libsysdev 0.1.0
Top Page
Delete this message
Reply to this message
Author: Isaac Dunham
Date:  
To: dng
Subject: [Dng] Announcing libsysdev 0.1.0
Hello all,

Those who've been following the list in the last couple days may have seen
some mention of libsysdev, a library that aims to provide an easy-to-use
API to get information about devices from sysfs.
It's available from git at:
git://github.com/idunham/libsysdev.git

I've just released libsysdev 0.1.0.
Source code may be found at:
https://github.com/idunham/libsysdev/archive/0.1.0.tar.gz
(I'll have to tag releases using a different approach.)

The license is a "0-clause BSD" license, meaning that you can do anything
you want, without any conditions beyond what the laws of your country
impose on all software.

This new release exports 5 functions, features pkg-config/pkgconf support,
has a small sample program at util/devinfo.c, and provides man pages for the
library and the sample program (libsysdev.3 and util/devinfo.1).

There's an initial port of xf86-input-evdev to libsysdev at:
https://github.com/idunham/xf86-input-evdev

Notes for packagers/builders:
It's built with make (gnu make/freebsd-make/pmake should work equally well),
configured only using variables that you can set on the command line.
eg:

make CFLAGS="-O2 -g0" CC=gcc
make install LIBDIR=/usr/lib/i386-linux-gnu

Other than LIBDIR and CFLAGS, the defaults should be suitable for a
debian/devuan package.
The header and docs can be shared by all arches.

Release notes:
Announcing libsysdev 0.1.0, the first public release.

libsysdev is a library to get information about devices from sysfs.
No daemons are required; it should be equally compatible with udev, mdev, and static /dev.

Requirements are as follows:
*libc supporting _XOPEN_SOURCE=700 or _XOPEN_SOURCE=600 + _ATFILE_SOURCE,
and exposing major()/minor() with _BSD_SOURCE defined.
*c89 or more current compiler.
*Linux kernel, with sysfs mounted.
Non-Linux systems don't use sysfs, so this won't work.
sysfs was introduced in Linux 2.5.x.
*pkg-config or pkgconf is recommended for development using libsysdev, but building with -lsysdev should work.