6.24. Attr-2.4.47

The attr package contains utilities to administer the extended attributes on filesystem objects.

Approximate build time: less than 0.1 SBU
Required disk space: 4.2 MB

6.24.1. Installation of Attr

Modify the documentation directory so that it is a versioned directory:

sed -i -e 's|/@pkg_name@|&-@pkg_version@|' include/builddefs.in

Prevent installation of manual pages that were already installed by the man pages package:

sed -i -e "/SUBDIRS/s|man2||" man/Makefile

Prepare Attr for compilation:

./configure --prefix=/usr --disable-static

Compile the package:

make

The tests need to be run on a filesystem that supports extended attributes such as the ext2, ext3, or ext4 filesystems. The tests are also known to fail if running multiple simultaneous tests (-j option greater than 1). To test the results, issue:

make -j1 tests root-tests

Install the package to a temporary directory:

make install install-dev install-lib DESTDIR=$(pwd)/debian/tmp
chmod -v 755 debian/tmp/usr/lib/libattr.so

The shared library needs to be moved to /lib, and as a result the .so file in /usr/lib will need to be recreated:

mkdir -pv debian/tmp/lib
mv -v debian/tmp/usr/lib/libattr.so.* debian/tmp/lib
ln -sfv ../../lib/$(readlink debian/tmp/usr/lib/libattr.so) \
        debian/tmp/usr/lib/libattr.so

Create the package archive:

buildpkg

Install the package:

dpkg -i ../attr_2.4.47_*.deb

6.24.2. Contents of Attr

Installed programs: attr, getfattr, and setattr
Installed library: libattr.{a,so}
Installed directories: /usr/include/attr and /usr/share/doc/attr-2.4.47

Short Descriptions

attr

Extends attributes on filesystem objects

getfattr

Gets the extended attributes of filesystem objects

setattr

Sets the extended attributes of filesystem objects

libattr

Contains the libbrary functions for manipulating extended attributes