mirror of
https://github.com/pocoproject/poco.git
synced 2025-12-11 12:07:23 +01:00
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:
67
modules/Poco.cppm
Normal file
67
modules/Poco.cppm
Normal file
@@ -0,0 +1,67 @@
|
||||
//
|
||||
// Poco.cppm
|
||||
//
|
||||
// C++ module file, re-exporting all other modules
|
||||
//
|
||||
// Copyright (c) 2025, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// SPDX-License-Identifier: BSL-1.0
|
||||
//
|
||||
|
||||
export module Poco;
|
||||
|
||||
#ifdef ENABLE_FOUNDATION
|
||||
export import Poco.Foundation;
|
||||
#endif
|
||||
#ifdef ENABLE_ACTIVERECORD
|
||||
export import Poco.ActiveRecord;
|
||||
#endif
|
||||
#ifdef ENABLE_CPPPARSER
|
||||
export import Poco.CppParser;
|
||||
#endif
|
||||
#ifdef ENABLE_CRYPTO
|
||||
export import Poco.Crypto;
|
||||
#endif
|
||||
#ifdef ENABLE_DNSSD
|
||||
export import Poco.DNSSD;
|
||||
#endif
|
||||
#ifdef ENABLE_DATA
|
||||
export import Poco.Data;
|
||||
#endif
|
||||
#ifdef ENABLE_DYNAMIC
|
||||
export import Poco.Dynamic;
|
||||
#endif
|
||||
#ifdef ENABLE_JSON
|
||||
export import Poco.JSON;
|
||||
#endif
|
||||
#ifdef ENABLE_JWT
|
||||
export import Poco.JWT;
|
||||
#endif
|
||||
#ifdef ENABLE_MONGODB
|
||||
export import Poco.MongoDB;
|
||||
#endif
|
||||
#ifdef ENABLE_NET
|
||||
export import Poco.Net;
|
||||
#endif
|
||||
#ifdef ENABLE_PDF
|
||||
export import Poco.PDF;
|
||||
#endif
|
||||
#ifdef ENABLE_PROMETHEUS
|
||||
export import Poco.Prometheus;
|
||||
#endif
|
||||
#ifdef ENABLE_REDIS
|
||||
export import Poco.Redis;
|
||||
#endif
|
||||
#ifdef ENABLE_SEVENZIP
|
||||
export import Poco.SevenZip;
|
||||
#endif
|
||||
#ifdef ENABLE_UTIL
|
||||
export import Poco.Util;
|
||||
#endif
|
||||
#ifdef ENABLE_XML
|
||||
export import Poco.XML;
|
||||
#endif
|
||||
#ifdef ENABLE_ZIP
|
||||
export import Poco.Zip;
|
||||
#endif
|
||||
Reference in New Issue
Block a user