The C++ Portable Components currently consist of four libraries.
The Foundation library contains a platform abstraction layer
(including classes for multithreading, file system access, logging,
etc.), as well as a large number of useful utility classes, such
various stream buffer and stream classes, URI handling, and many
more.
The Net library contains network classes (sockets, HTTP, etc.)
The XML library contains an XML parser with SAX2 and DOM interfaces,
as well as an XMLWriter.
The Util library contains classes for working with configuration
files and command line arguments, as well as various utility classes.
===> The following configuration options are available for poco-1.13.3:
ACTIVERECORD=on: Enable ActiveRecord ORM and compiler
ENCODINGS=on: Enable Encodings component
JSON=on: JSON file/format/parser support
JWT=on: Enable JWT (JSON Web Token) component
MONGODB=on: Enable MongoDB support
PAGECOMPILER=on: Enable PageCompiler and File2Page
PROMETHEUS=on: Enable Prometheus component
REDIS=on: Redis key-value store database support
SSL=on: SSL protocol support
TEST=off: Build and/or run tests
XML=on: XML format or parser support
ZIP=on: Enable Zip support
====> Database support
MYSQL=on: MySQL database support
PGSQL=on: PostgreSQL database support
SQLITE=on: SQLite database support
====> ODBC database backend: you can only select none or one of them
IODBC=off: ODBC backend via iODBC
UNIXODBC=off: ODBC backend via unixODBC
===> Use 'make config' to modify these settings
devel/poco: 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 devel/poco to fail to compile with clang 19 and libc++ 19,
resulting in errors similar to:
/usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined
template 'std::char_traits<unsigned char>'
820 | static_assert(is_same<_CharT, typename
traits_type::char_type>::value,
| ^
/usr/include/c++/v1/__type_traits/is_constructible.h:42:62: note: in
instantiation of template class 'std::basic_string<unsigned char>' requested
here
42 | : public integral_constant<bool, __is_constructible(_Tp,
__add_rvalue_reference_t<_Tp>)> {};
| ^
(Only the first 15 lines of the commit message are shown above )
devel/poco: Modernize port Makefile
* Replace CMAKE_ARGS and <opt>_CMAKE_[ON|OFF] by CMAKE_[ON|OFF] and
<opt>_CMAKE_BOOL[_OFF] for handling cmake BOOL knobs
* Drop a CONFLICTS to a port that was removed in 2019
* As advised by portclippy, put all options descriptions in their own
block
Approved by: portmgr (blanket)
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 )
*/*: Remove redundant '-[0-9]*' from CONFLICTS
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Many CONFLICTS definitions used patterns like "bash-[0-9]*" to filter
for the bash package in any version. But that pattern is functionally
identical with just "bash".
Approved by: portmgr (blanket)
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
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
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
Adjust USES to fix building on gcc-based archs (in particular, powerpc64).
On the clang architectures, these changes have no effect: the baser
compiler already includes the needed features.
While here, remove now-redundant CXXFLAGS statements and pet portlint
(no other content change).
Tested on both powerpc64 and amd64.
Approved by: portmgr (tier-2 blanket)
devel/poco: Fix build when the TEST option is on by removing patches that
were first added to fix build on 9.x.
PR: 217714
Reported by: henry.hu.sh@gmail.com (maintainer)
Approved by: swills (mentor, implicit)
Fix the build on 9.3-i386 by working around base GCC's limitations.
Add the "LL" suffix to constants that base GCC thinks are too big.
PR: 207486
MFH: 2016Q1
Set ALL_TARGET to poco.
The "all" target builds samples and tests regardless of whether they were
disabled in the configuration script (consequently not honoring the options set
in the port).
MFH: 2016Q1
Reassign wes@'s ports to the pool.
This commit bit was taken in for safekeeping in 2011 with r269228. For some
reason I don't understand there are commits from him in 2011 and 2012 after
that happened, but in any case his last commit was in mid-2012 and he isn't
active in Bugzilla.
- Mark BROKEN on 9.x i386:
src/StringTest.cpp:929: error: integer constant is too large for 'long' type
Submitted by: pkg-fallout
Approved by: portmgr blanket
- Provide a more descriptive COMMENT (taken from the sf.net page)
- Do not abuse GNU_CONFIGURE knob for non-GNU, custom configure script
- Stagify; cleanup; define LICENSE (BSL); utilize OPTIONS helpers, etc.
(applicable to `devel/poco-ssl' port only)
- Updated to 1.3.2;
- Use SF macro;
- Sort pkg-plist;
- Add NOTE to UPDATING.
As submitted by Felippe, but I left the MASTER_SITE_SUBDIR setting because
I couldn't fetch from SourceForge without it. If you experience download
problems, please email me.
PR: ports/120595
Submitted by: Felippe de Meirelles Motta <lippemail@gmail.com>
MFC after: 1 week
The C++ Portable Components consists of four libraries providing a
platform abstraction layer for system interfaces, an XML parser
with SAX2 and DOM interfaces and an XML writer, classes for working
with configuration files and command line arguments, and a number
of network protocols.