ZXing-C++ ("zebra crossing") is an open-source, multi-format
linear/matrix barcode image processing library implemented in C++.
It was originally ported from the Java ZXing Library, but has been
developed further and now includes many improvements in terms of runtime
and detection performance. It can both read and write barcodes in a
number of formats.
textproc/zxing-cpp: fix build with libc++ 19
As noted in the libc++ 19 release notes [1], std::char_traits<> is now
only provided for char, char8_t, char16_t, char32_t and wchar_t, and any
instantiation for other types will fail.
This causes textproc/zxing-cpp to fail to compile with clang 19 and
libc++ 19, resulting in errors similar to:
/usr/include/c++/v1/string_view:300:42: error: implicit instantiation of
undefined template 'std::char_traits<unsigned char>'
300 | static_assert(is_same<_CharT, typename
traits_type::char_type>::value,
| ^
/wrkdirs/usr/ports/textproc/zxing-cpp/work/zxing-cpp-2.2.1/core/src/Utf.cpp:72:42:
note: in instantiation of template class 'std::basic_string_view<unsigned char>'
requested here
72 | static size_t Utf8CountCodePoints(utf8_t utf8)
| ^
(Only the first 15 lines of the commit message are shown above )
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
textproc/zxing-cpp: update to 1.2.0
There have been nearly 800 commits that touched about 10k lines of code
since the last release.
Here are the highlights/major changes:
* switch to C++-17 (client code can still be compiled with a C++-11
compiler)
* switch to the reimplemented 1D detectors (about 5x faster than old
ones in false-positive use case)
* deprecate the use of ResultMetadata, see ZXingReader.cpp as an
example
* completely new Android wrapper library with CameraX support,
integrated build system and demo app
(Only the first 15 lines of the commit message are shown above )
textproc/zxing-cpp: Make OpenCV optional and off by default by adding the port
option OPENCV
While here add USE_LDCONFIG=yes that was missing.
Reported by: Leo Cherepanov <grey.leo@gmail.com>
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
textproc/zxing-cpp: Patch to remove OpenCV libs from the installed cmake files
net/kitinerary was broken because OpenCV libs were unnecessarily supplied to its
build by
cmake files from textproc/zxing-cpp. These OpenCV libs were missing
-L/usr/local/lib for
some reason, possiblt because OpenCV's cmake files provide LIBS without
-L/usr/local/lib.
PR: 237388
Reported by: Martin Birgmeier <d8zNeCFG@aon.at>
textproc/zxing-cpp: Link OpenCV libs to the library
Add the patch from the upstream pull request
PR: 237388
Reported by: Martin Birgmeier <d8zNeCFG@aon.at>
Change cmake default behaviour to outsource.
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Make ninja opt-out in cmake.mk
Using ninja instead of make (1) can lead to significant speed ups while
building.
Therefore switch from having the ninja generator opt-in to having it opt-out.
Previously cmake-ports that wanted to use ninja could set
CMAKE_NINJA=yes
now, ports that do not work with ninja can set
cmake:<existing args>,noninja
Note, that needing this should be an exception and most often points to a broken
cmake of the port.
The ports using cmake were modified
* removed USES=gmake, if ninja is used
* removed MAKE_ARGS, if ninja is used
* added the cmake-argument noninja if necessary
PR: 219629
PR: 213331
Exp-run by: antoine
Reviewed by: rakuco
Differential Revision: https://reviews.freebsd.org/D10748