converters/simdutf 9.3.2 FreeBSD
Unicode validation and transcoding with SIMD
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- Last update
- Commit
d16f3289b1- License
- APACHE20, MIT
- Categories
- converters, textproc
- Package size
- 164.4 KiB, 1133.1 KiB installed
Description
This library provide fast Unicode functions such as
- ASCII, UTF-8, UTF-16LE/BE and UTF-32 validation, with and without error identification,
- transcoding between each of Latin1, UTF-8, UTF-16LE/BE, and UTF-32, with and without validation, with and without error identification
- From an UTF-8 string, compute the size of the Latin1/UTF-16/UTF-32 equivalent string,
- From an UTF-16LE/BE string, compute the size of the Latin1/UTF-8/UTF-32 equivalent string,
- From an UTF-32 string, compute the size of the UTF-8 or UTF-16LE equivalent string,
- UTF-8 and UTF-16LE/BE character counting.
- UTF-16 endianness change (UTF16-LE/BE to UTF-16-BE/LE)
- Base64 encoding and decoding
The functions are accelerated using SIMD instructions (e.g., ARM NEON, SSE, AVX, AVX-512, etc.). When your strings contain hundreds of characters, we can often transcode them at speeds exceeding a billion characters per second. You should expect high speeds not only with English strings (ASCII) but also Chinese, Japanese, Arabic, and so forth. We handle the full character range (including, for example, emojis).
The library compiles down to a small library of a few hundred kilobytes. Our functions are exception-free and non allocating. We have extensive tests and extensive benchmarks.
In the other systems
| System | Port | Version |
|---|---|---|
| FreeBSD | converters/simdutf | 9.3.2 |
| OpenBSD | textproc/simdutf | 9.2.1 |
Install
Binary package:
pkg install simdutf
From the ports tree:
cd /usr/ports/converters/simdutf/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= simdutf>0:converters/simdutf
LIB_DEPENDS= libsimdutf.so:converters/simdutf
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 9.2.1 | 9.2.1 | - | 7.3.6 | 9.3.2 |
| FreeBSD:14:quarterly | 9.2.1 | 9.2.1 | n/a | 7.3.6 | 9.2.1 |
| FreeBSD:15:latest | 9.2.1 | 9.3.2 | n/a | 7.3.6 | 7.4.0 |
| FreeBSD:15:quarterly | 9.2.1 | 9.2.1 | n/a | n/a | n/a |
| FreeBSD:16:latest | 9.2.1 | 9.3.2 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
The Makefile names none itself; they come from USES and USE_*.
The full lists below include those, and their dependencies in turn.
Build dependencies 15
Configuration
Options name: converters_simdutf
| Option | Default | Description |
|---|---|---|
| ICONV | on | Encoding conversion support via iconv |
| TOOLS | on | Build tools |
- USES
- cmake:testing compiler:c++17-lang python:build,test
- Service scripts
- none
Files
Manual pages 3
- fastbase64(1)
- fastbase64.coreutils(1)
- sutf(1)
pkg-plist 58
- bin/fastbase64
- bin/fastbase64.coreutils
- bin/sutf
- include/simdutf.h
- include/simdutf/avx512.h
- include/simdutf/base64_implementation.h
- include/simdutf/base64_tables.h
- include/simdutf/common_defs.h
- include/simdutf/compiler_check.h
- include/simdutf/constexpr_ptr.h
- include/simdutf/encoding_types.h
- include/simdutf/error.h
- include/simdutf/implementation.h
- include/simdutf/internal/isadetection.h
- include/simdutf/portability.h
- include/simdutf/scalar/ascii.h
- include/simdutf/scalar/atomic_util.h
- include/simdutf/scalar/base64.h
- include/simdutf/scalar/latin1.h
- include/simdutf/scalar/latin1_to_utf16/latin1_to_utf16.h
- include/simdutf/scalar/latin1_to_utf32/latin1_to_utf32.h
- include/simdutf/scalar/latin1_to_utf8/latin1_to_utf8.h
- include/simdutf/scalar/swap_bytes.h
- include/simdutf/scalar/utf16.h
- include/simdutf/scalar/utf16_to_latin1/utf16_to_latin1.h
- include/simdutf/scalar/utf16_to_latin1/valid_utf16_to_latin1.h
- include/simdutf/scalar/utf16_to_utf32/utf16_to_utf32.h
- include/simdutf/scalar/utf16_to_utf32/valid_utf16_to_utf32.h
- include/simdutf/scalar/utf16_to_utf8/utf16_to_utf8.h
- include/simdutf/scalar/utf16_to_utf8/valid_utf16_to_utf8.h
- include/simdutf/scalar/utf32.h
- include/simdutf/scalar/utf32_to_latin1/utf32_to_latin1.h
- include/simdutf/scalar/utf32_to_latin1/valid_utf32_to_latin1.h
- include/simdutf/scalar/utf32_to_utf16/utf32_to_utf16.h
- include/simdutf/scalar/utf32_to_utf16/valid_utf32_to_utf16.h
- include/simdutf/scalar/utf32_to_utf8/utf32_to_utf8.h
- include/simdutf/scalar/utf32_to_utf8/valid_utf32_to_utf8.h
- include/simdutf/scalar/utf8.h
- include/simdutf/scalar/utf8_to_latin1/utf8_to_latin1.h
- include/simdutf/scalar/utf8_to_latin1/valid_utf8_to_latin1.h
- include/simdutf/scalar/utf8_to_utf16/utf8_to_utf16.h
- include/simdutf/scalar/utf8_to_utf16/valid_utf8_to_utf16.h
- include/simdutf/scalar/utf8_to_utf32/utf8_to_utf32.h
- include/simdutf/scalar/utf8_to_utf16/utf8_to_utf16_with_replacement.h
- include/simdutf/scalar/utf8_to_utf32/valid_utf8_to_utf32.h
- include/simdutf/simdutf_version.h
- include/simdutf_c.h
- lib/cmake/simdutf/simdutf-config-version.cmake
- lib/cmake/simdutf/simdutf-config.cmake
- lib/cmake/simdutf/simdutfTargets-.cmake
- lib/cmake/simdutf/simdutfTargets.cmake
- lib/libsimdutf.so
- lib/libsimdutf.so.37
- lib/libsimdutf.so.37.0.0
- libdata/pkgconfig/simdutf.pc
- share/man/man1/fastbase64.1.gz
- share/man/man1/fastbase64.coreutils.1.gz
- share/man/man1/sutf.1.gz
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| simdutf-simdutf-v9.3.2_GH0.tar.gz | 3.524445e+06 | d92a0a4ce216dcebf18af20fed7ea7279fa535683f790fdaeed39827a234f567 |
Commit history 7
| Date | Commit | Credits | Log message |
|---|---|---|---|
d16f3289b1 |
Robert Clausecker | converters/simdutf: update to 9.3.2 Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.3.0
Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.3.1
Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.3.2
MFH: no (soname change) |
|
683ef9e4fb |
Robert Clausecker | converters/simdutf: update to 9.2.1 Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.2.1 |
|
efe653ae80 |
Robert Clausecker | converters/simdutf: update to 9.2.0 Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.2.0 |
|
a29c72f1f1 |
Robert Clausecker | converters/simdutf: remove stray patch This was left over after a wrong rebase (mid-air collission).
Fixes: 81f18785a4d12bf1d01751f5e54643cf9afe9443
Reported by: Einar Bjarni Halldórsson <[email protected]>
PR: 298403
Event: EuroBSDcon Devsummit 2026 |
|
81f18785a4 |
Robert Clausecker | converters/simdutf: update to 9.1.2 Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.1.1
Changelog: https://github.com/simdutf/simdutf/releases/tag/v9.1.2
Event: EuroBSDcon Devsummit 2026 |
The latest 5 of 7 in the history this site was built from.