BSD Ports

textproc/libgrapheme 3.0.0 FreeBSD

Freestanding C99 library for Unicode string handling

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
Port added
Last update
Commit
d1de7051fe
License
ISCL
Categories
textproc

Description

libgrapheme is a minimal freestanding C99 library for handling strings according to the Unicode standard. It provides grapheme cluster (i.e. user-perceived character), word, and sentence segmentation, line break opportunity detection, case detection, and case conversion, on UTF-8 strings and codepoint arrays.

The necessary lookup tables are generated from the Unicode character database at build time, and the library has no runtime dependency on libc.

In the other systems

SystemPortVersion
FreeBSDtextproc/libgrapheme3.0.0
OpenBSDtextproc/libgrapheme2.0.2
NetBSDtextproc/libgrapheme3.0.0

Install

Binary package:

pkg install libgrapheme

From the ports tree:

cd /usr/ports/textproc/libgrapheme/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	libgrapheme>0:textproc/libgrapheme
LIB_DEPENDS=	libgrapheme.so:textproc/libgrapheme

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest-3.0.0--3.0.0
FreeBSD:14:quarterly--n/a--
FreeBSD:15:latest-3.0.0n/a--
FreeBSD:15:quarterly--n/an/an/a
FreeBSD:16:latest-3.0.0n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

The Makefile names none itself; they come from USES and USE_*.

The full lists below include those, and their dependencies in turn.

No port depends on this one.

Configuration

No options to configure.

Service scripts
none

Files

Manual pages 24
  • grapheme_decode_utf8(3)
  • grapheme_encode_utf8(3)
  • grapheme_is_character_break(3)
  • grapheme_is_lowercase(3)
  • grapheme_is_lowercase_utf8(3)
  • grapheme_is_titlecase(3)
  • grapheme_is_titlecase_utf8(3)
  • grapheme_is_uppercase(3)
  • grapheme_is_uppercase_utf8(3)
  • grapheme_next_character_break(3)
  • grapheme_next_character_break_utf8(3)
  • grapheme_next_line_break(3)
  • grapheme_next_line_break_utf8(3)
  • grapheme_next_sentence_break(3)
  • grapheme_next_sentence_break_utf8(3)
  • grapheme_next_word_break(3)
  • grapheme_next_word_break_utf8(3)
  • grapheme_to_lowercase(3)
  • grapheme_to_lowercase_utf8(3)
  • grapheme_to_titlecase(3)
  • grapheme_to_titlecase_utf8(3)
  • grapheme_to_uppercase(3)
  • grapheme_to_uppercase_utf8(3)
  • libgrapheme(7)
pkg-plist 31
  • include/grapheme.h
  • lib/libgrapheme.a
  • lib/libgrapheme.so
  • lib/libgrapheme.so.3
  • lib/libgrapheme.so.3.0
  • lib/libgrapheme.so.3.0.0
  • libdata/pkgconfig/libgrapheme.pc
  • share/man/man3/grapheme_decode_utf8.3.gz
  • share/man/man3/grapheme_encode_utf8.3.gz
  • share/man/man3/grapheme_is_character_break.3.gz
  • share/man/man3/grapheme_is_lowercase.3.gz
  • share/man/man3/grapheme_is_lowercase_utf8.3.gz
  • share/man/man3/grapheme_is_titlecase.3.gz
  • share/man/man3/grapheme_is_titlecase_utf8.3.gz
  • share/man/man3/grapheme_is_uppercase.3.gz
  • share/man/man3/grapheme_is_uppercase_utf8.3.gz
  • share/man/man3/grapheme_next_character_break.3.gz
  • share/man/man3/grapheme_next_character_break_utf8.3.gz
  • share/man/man3/grapheme_next_line_break.3.gz
  • share/man/man3/grapheme_next_line_break_utf8.3.gz
  • share/man/man3/grapheme_next_sentence_break.3.gz
  • share/man/man3/grapheme_next_sentence_break_utf8.3.gz
  • share/man/man3/grapheme_next_word_break.3.gz
  • share/man/man3/grapheme_next_word_break_utf8.3.gz
  • share/man/man3/grapheme_to_lowercase.3.gz
  • share/man/man3/grapheme_to_lowercase_utf8.3.gz
  • share/man/man3/grapheme_to_titlecase.3.gz
  • share/man/man3/grapheme_to_titlecase_utf8.3.gz
  • share/man/man3/grapheme_to_uppercase.3.gz
  • share/man/man3/grapheme_to_uppercase_utf8.3.gz
  • share/man/man7/libgrapheme.7.gz
distinfo 1
FileSizeSHA256
libgrapheme-3.0.0.tar.gz2.815602e+0632585af73dda62fbcc0fed14f199aa1bc988ad01dad0bfbd06cf175d9cf3d68c
Master sites 1
  • https://dl.suckless.org/libgrapheme/

Commit history 2

DateCommitCreditsLog message
d1de7051fe Faraz Vahedi textproc/libgrapheme: Hook up the test suite
Upstream's test target exits 0 even when tests fail, so patch it to report failures; 744 line break tests currently fail upstream. Reviewed by: fuz Approved by: fuz (mentor) Differential Revision: https://reviews.freebsd.org/D60836
77ef5ddf8a Faraz Vahedi textproc/libgrapheme: New port
Simple freestanding C99 library for Unicode string handling. Reviewed by: fuz, dteske Approved by: fuz (mentor), dteske (mentor) Differential Revision: https://reviews.freebsd.org/D60773