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
# mkdir -p /usr/local/package # ln -s /usr/local/package / # chmod +t /package/.
# sp-install prjlibs-VERSION.tar.bz2
Or, if you like to do things manually, unpack the tarball and run
# cd /package # bunzip2 < /path/to/prjlibs-VERSION.tar.bz2 | > tar -xpf - # cd prog/prjlibs-VERSION # package/install
more detailed instructions.
This documentation so far covers only the C libraries. Some of the Scheme procedures have docstrings in the source code.
case.hheader provides character case operations.
EINTRas safely as possible.
diewarn.hheader defines macros to easily produce uniform error messages.
intattr.hheader defines macros to inspect integer types.
nseclibrary provides nanosecond file timestamp information.
package_home.hheader lets a C program find its package directory.
standards.hheader helps to get declarations of system functions.
types.hheader provides meaningful aliases for commonly used types.
veclibrary provides type-generic, type-safe, dynamically allocated vectors.
warn.hheader provides macros to provoke or inhibit compiler warnings.