prjlibs is set of general-purpose libraries for C, sh, and Scheme.
This package is discussed on the prjware list. New releases are announced on the prjware-announce list.
prjlibs is devoid of warranty and is distributed under the GNU General Public License, version 2. But that doesn't mean it's necessarily a good idea for you to distribute modified versions. (That includes repackaging.) I'd like to know if you plan to do that.
This link always points to the latest version (currently 2020.05.04).
Older versions are published for historical interest.
You can get the latest development sources with:
$ git clone git://git.dogmap.org/prjlibs.git
The Scheme libraries were written for GNU Guile; I haven't investigated using them with other Scheme implementations. The C and sh libraries are intended to be portable.
slashpackage is a good thing. You can
read more about it
here. If you don't already have /package
, create it (on any
filesystem you like, as long as it's accessible by the name
“/package
”):
# mkdir -p /usr/local/package # ln -s /usr/local/package / # chmod +t /package/.
Then run sp-install
:
# sp-install prjlibs-VERSION.tar.bz2
Or, if you like to do things manually, unpack the tarball and run
package/install
:
# cd /package # bunzip2 < /path/to/prjlibs-VERSION.tar.bz2 | > tar -xpf - # cd prog/prjlibs-VERSION # package/install
Read package/README
and package/INSTALL
for
more detailed instructions.
This documentation so far covers only the C libraries. Some of the Scheme procedures have docstrings in the source code.
case.h
header provides character
case operations.
check_close
function
wraps close()
to handle EINTR
as safely as
possible.
diewarn.h
header defines
macros to easily produce uniform error messages.
intattr.h
header defines
macros to inspect integer types.
nsec
library provides nanosecond
file timestamp information.
package_home.h
header
lets a C program find its package directory.
standards.h
header
helps to get declarations of system functions.
types.h
header provides
meaningful aliases for commonly used types.
vec
library provides
type-generic, type-safe, dynamically allocated vectors.
warn.h
header provides
macros to provoke or inhibit compiler warnings.
None.