diff --git a/converters/Makefile b/converters/Makefile index 3782f6bcdac8..7b40eac0f7ae 100644 --- a/converters/Makefile +++ b/converters/Makefile @@ -1,185 +1,186 @@ COMMENT = Character code converters SUBDIR += R-cran-RJSONIO SUBDIR += R-cran-arabic2kansuji SUBDIR += R-cran-base64enc SUBDIR += R-cran-jsonlite SUBDIR += R-cran-rjson SUBDIR += aish SUBDIR += ascii2binary SUBDIR += asr10 SUBDIR += base64 SUBDIR += base91 SUBDIR += bibtexconv SUBDIR += bmfdec SUBDIR += bsdconv SUBDIR += btoa SUBDIR += chmview SUBDIR += cl-babel SUBDIR += cl-babel-sbcl SUBDIR += cmios9 SUBDIR += cocot SUBDIR += convmv SUBDIR += dos2unix SUBDIR += dosunix SUBDIR += drg2sbg SUBDIR += dumpasn1 SUBDIR += enca SUBDIR += fconv SUBDIR += fix-mime-charset SUBDIR += fondu SUBDIR += fpc-iconvenc SUBDIR += fribidi SUBDIR += gbase SUBDIR += gbsdconv SUBDIR += hs-aeson-pretty SUBDIR += hs-dhall-bash SUBDIR += hs-dhall-json SUBDIR += hs-dhall-yaml SUBDIR += i18ntools SUBDIR += ical2html SUBDIR += iconv SUBDIR += iconv-extra SUBDIR += iconv-rfc1345 SUBDIR += ish SUBDIR += libb64 SUBDIR += libiconv SUBDIR += libticonv SUBDIR += libutf-8 SUBDIR += linux-c7-fribidi SUBDIR += lua-iconv SUBDIR += lua-json SUBDIR += mimelib SUBDIR += mmencode SUBDIR += mpack SUBDIR += nomyso SUBDIR += o3read SUBDIR += ocaml-base64 SUBDIR += ocaml-jsonm SUBDIR += osm2mp SUBDIR += osm2pgrouting SUBDIR += osm2pgsql SUBDIR += p5-Bencode SUBDIR += p5-Boulder SUBDIR += p5-Convert-ASCII-Armour SUBDIR += p5-Convert-ASN1 SUBDIR += p5-Convert-BER SUBDIR += p5-Convert-Base32 SUBDIR += p5-Convert-Bencode SUBDIR += p5-Convert-Bencode_XS SUBDIR += p5-Convert-BinHex SUBDIR += p5-Convert-Binary-C SUBDIR += p5-Convert-IBM390 SUBDIR += p5-Convert-Moji SUBDIR += p5-Convert-Morse SUBDIR += p5-Convert-NLS_DATE_FORMAT SUBDIR += p5-Convert-PEM SUBDIR += p5-Convert-Recode SUBDIR += p5-Convert-TNEF SUBDIR += p5-Convert-UU SUBDIR += p5-Convert-UUlib SUBDIR += p5-Cpanel-JSON-XS SUBDIR += p5-Cstools SUBDIR += p5-Data-AMF SUBDIR += p5-Encode SUBDIR += p5-Encode-Base32-Crockford SUBDIR += p5-Encode-Base32-GMP SUBDIR += p5-Encode-Base58-GMP SUBDIR += p5-Encode-Detect SUBDIR += p5-Encode-Detect-CJK SUBDIR += p5-Encode-DoubleEncodedUTF8 SUBDIR += p5-Encode-IMAPUTF7 SUBDIR += p5-Encode-JIS2K SUBDIR += p5-Encode-Locale SUBDIR += p5-Encode-Punycode SUBDIR += p5-Encode-compat SUBDIR += p5-Encoding-BER SUBDIR += p5-Encoding-FixLatin SUBDIR += p5-Format-Human-Bytes SUBDIR += p5-JSON SUBDIR += p5-JSON-Any SUBDIR += p5-JSON-DWIW SUBDIR += p5-JSON-MaybeXS SUBDIR += p5-JSON-PP SUBDIR += p5-JSON-Tiny SUBDIR += p5-JSON-XS SUBDIR += p5-JSON-XS-VersionOneAndTwo SUBDIR += p5-LaTeXML SUBDIR += p5-MIME-Base32 SUBDIR += p5-MIME-Base64 SUBDIR += p5-MIME-Base64-URLSafe SUBDIR += p5-Net-IDN-Nameprep SUBDIR += p5-Number-Nary SUBDIR += p5-Number-RecordLocator SUBDIR += p5-PerlIO-via-Unidecode SUBDIR += p5-Sereal SUBDIR += p5-Sereal-Decoder SUBDIR += p5-Sereal-Encoder SUBDIR += p5-Storable-AMF SUBDIR += p5-String-Multibyte SUBDIR += p5-Text-Bidi SUBDIR += p5-Text-Iconv SUBDIR += p5-Text-Unidecode SUBDIR += p5-URI-UTF8-Punycode SUBDIR += p5-Unicode-IMAPUtf7 SUBDIR += p5-Unicode-Map SUBDIR += p5-Unicode-Map8 SUBDIR += p5-Unicode-MapUTF8 SUBDIR += p5-Unicode-RecursiveDowngrade SUBDIR += p5-Unicode-String SUBDIR += p5-Unicode-Stringprep SUBDIR += p5-Unicode-UTF8simple SUBDIR += p5-WAP-wbxml SUBDIR += p5-XML-WBXML SUBDIR += p5-bsdconv SUBDIR += p5-plutil SUBDIR += pdf2djvu SUBDIR += pear-Services_JSON SUBDIR += pecl-igbinary SUBDIR += php-bsdconv SUBDIR += php80-iconv SUBDIR += php80-mbstring SUBDIR += php81-iconv SUBDIR += php81-mbstring SUBDIR += php82-iconv SUBDIR += php82-mbstring SUBDIR += php83-iconv SUBDIR += php83-mbstring SUBDIR += psiconv SUBDIR += py-bencode.py SUBDIR += py-bencoder SUBDIR += py-better-bencode SUBDIR += py-bsdconv SUBDIR += py-rencode SUBDIR += py-svglib SUBDIR += py-text-unidecode SUBDIR += py-unidecode SUBDIR += py-webencodings SUBDIR += py-zfec SUBDIR += rcctools SUBDIR += recode SUBDIR += rubygem-base32 SUBDIR += rubygem-base64 SUBDIR += rubygem-iconv SUBDIR += rubygem-json-ld SUBDIR += rubygem-json-ld-preloaded SUBDIR += rubygem-po_to_json SUBDIR += rubygem-ruby-bsdconv SUBDIR += rubygem-url_safe_base64 SUBDIR += rubygem-xdr SUBDIR += showkey + SUBDIR += simdutf SUBDIR += ta2as SUBDIR += tnef SUBDIR += trans SUBDIR += tuc SUBDIR += unix2dos SUBDIR += uudeview SUBDIR += uulib SUBDIR += wkhtmltopdf SUBDIR += xdeview SUBDIR += xml2c SUBDIR += yj SUBDIR += yj-bruceadams SUBDIR += ytnef .include diff --git a/converters/simdutf/Makefile b/converters/simdutf/Makefile new file mode 100644 index 000000000000..947a871a07f6 --- /dev/null +++ b/converters/simdutf/Makefile @@ -0,0 +1,38 @@ +PORTNAME= simdutf +DISTVERSIONPREFIX= v +DISTVERSION= 4.0.0 +CATEGORIES= converters textproc + +MAINTAINER= fuz@FreeBSD.org +COMMENT= Unicode validation and transcoding with SIMD +WWW= https://simdutf.github.io/simdutf/ + +LICENSE= APACHE20 MIT +LICENSE_COMB= dual +LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSE-APACHE +LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT + +USES= cmake:testing +USE_GITHUB= yes +USE_LDCONFIG= yes + +CMAKE_ON= BUILD_SHARED_LIBS + +OPTIONS_DEFINE= BENCHMARKS ICONV TEST TOOLS +OPTIONS_DEFAULT= ICONV TOOLS +OPTIONS_SUB= yes +BENCHMARKS_DESC= Build benchmarks +TOOLS_DESC= Build tools + +BENCHMARKS_IMPLIES= TEST +BENCHMARKS_LIB_DEPENDS= libicuuc.so:devel/icu +BENCHMARKS_CMAKE_BOOL= SIMDUTF_BENCHMARKS +ICONV_USES= iconv +ICONV_CMAKE_BOOL= SIMDUTF_ICONV +TEST_CMAKE_BOOL= SIMDUTF_TESTS +TOOLS_CMAKE_BOOL= SIMDUTF_TOOLS + +pre-test-TEST-off: + @echo Enable option TEST to run the full test suite + +.include diff --git a/converters/simdutf/distinfo b/converters/simdutf/distinfo new file mode 100644 index 000000000000..ef9cc66d6552 --- /dev/null +++ b/converters/simdutf/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1697849191 +SHA256 (simdutf-simdutf-v4.0.0_GH0.tar.gz) = 1a84ea8a24396ea410d1c88d3126f95956a8799d8eaea0e03dc721e7c65ff9b3 +SIZE (simdutf-simdutf-v4.0.0_GH0.tar.gz) = 1864807 diff --git a/converters/simdutf/pkg-descr b/converters/simdutf/pkg-descr new file mode 100644 index 000000000000..d8319ef380ee --- /dev/null +++ b/converters/simdutf/pkg-descr @@ -0,0 +1,26 @@ +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) + +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. diff --git a/converters/simdutf/pkg-plist b/converters/simdutf/pkg-plist new file mode 100644 index 000000000000..4c801e507c91 --- /dev/null +++ b/converters/simdutf/pkg-plist @@ -0,0 +1,18 @@ +%%TOOLS%%bin/sutf +include/simdutf.h +include/simdutf/avx512.h +include/simdutf/common_defs.h +include/simdutf/compiler_check.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/simdutf_version.h +lib/cmake/simdutf/simdutf-config-version.cmake +lib/cmake/simdutf/simdutf-config.cmake +lib/cmake/simdutf/simdutfTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/simdutf/simdutfTargets.cmake +lib/libsimdutf.so.5.0.0 +lib/libsimdutf.so.5 +lib/libsimdutf.so