Add support for modules (#4999)

* Add support for modules

* Use "" for inclusion

* Fix missing includes on Poco.Data module

* Add PDF and SevenZip modules, and match modules to build macros

* Add CI test

* Add missing link libraries in CMake

* Add remaining libraries DNSSD, CppParser and CppUnit. Changed some static declarations to inline to export

* We also need to forward the ENABLE_NETSSL_* macros

* Update CMakeLists files

* Add samples as requested, with DateTime and URI test for example

* Fix POCO_MODULES_INSTALL macro

* chore(CMake): Combine install macro for libraries and C++ modules into one macro.

* Apply testsuite changes and address include directories concerns

* Restore accidentally deleted build files

* Mistakenly added a file generated by CMake, removed.

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
This commit is contained in:
Miko
2025-09-19 13:46:36 -04:00
committed by GitHub
parent e2920f36da
commit 041e7feeb7
50 changed files with 3880 additions and 81 deletions

View File

@@ -45,7 +45,7 @@ class Transcoder;
namespace Keywords {
static const NullData null = std::nullopt;
inline const NullData null = std::nullopt;
} // namespace Keywords

View File

@@ -27,7 +27,7 @@ namespace Poco {
namespace Data {
static const std::size_t POCO_DATA_INVALID_ROW = std::numeric_limits<std::size_t>::max();
inline const std::size_t POCO_DATA_INVALID_ROW = std::numeric_limits<std::size_t>::max();
} } // namespace Poco::Data