mirror of
https://github.com/pocoproject/poco.git
synced 2025-12-14 22:08:26 +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:
65
modules/Poco/CppParser.cppm
Normal file
65
modules/Poco/CppParser.cppm
Normal file
@@ -0,0 +1,65 @@
|
||||
//
|
||||
// CppParser.cppm
|
||||
//
|
||||
// C++ module file
|
||||
//
|
||||
// Copyright (c) 2025, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// SPDX-License-Identifier: BSL-1.0
|
||||
//
|
||||
|
||||
module;
|
||||
|
||||
#ifdef ENABLE_CPPPARSER
|
||||
#include "Poco/CppParser/Attributes.h"
|
||||
#include "Poco/CppParser/BuiltIn.h"
|
||||
#include "Poco/CppParser/CppParser.h"
|
||||
#include "Poco/CppParser/CppToken.h"
|
||||
#include "Poco/CppParser/Decl.h"
|
||||
#include "Poco/CppParser/Enum.h"
|
||||
#include "Poco/CppParser/EnumValue.h"
|
||||
#include "Poco/CppParser/Function.h"
|
||||
#include "Poco/CppParser/NameSpace.h"
|
||||
#include "Poco/CppParser/Parameter.h"
|
||||
#include "Poco/CppParser/Parser.h"
|
||||
#include "Poco/CppParser/Struct.h"
|
||||
#include "Poco/CppParser/Symbol.h"
|
||||
#include "Poco/CppParser/Tokenizer.h"
|
||||
#include "Poco/CppParser/TypeDef.h"
|
||||
#include "Poco/CppParser/Utility.h"
|
||||
#include "Poco/CppParser/Variable.h"
|
||||
#endif
|
||||
|
||||
export module Poco.CppParser;
|
||||
|
||||
export namespace Poco::CppParser {
|
||||
#ifdef ENABLE_CPPPARSER
|
||||
using Poco::CppParser::Attributes;
|
||||
using Poco::CppParser::AttributesParser;
|
||||
using Poco::CppParser::BuiltIn;
|
||||
using Poco::CppParser::CharLiteralToken;
|
||||
using Poco::CppParser::CommentToken;
|
||||
using Poco::CppParser::CppToken;
|
||||
using Poco::CppParser::Decl;
|
||||
using Poco::CppParser::Enum;
|
||||
using Poco::CppParser::EnumValue;
|
||||
using Poco::CppParser::Function;
|
||||
using Poco::CppParser::IdentifierToken;
|
||||
using Poco::CppParser::NameSpace;
|
||||
using Poco::CppParser::NumberLiteralToken;
|
||||
using Poco::CppParser::OperatorToken;
|
||||
using Poco::CppParser::Parameter;
|
||||
using Poco::CppParser::Parser;
|
||||
using Poco::CppParser::PreprocessorToken;
|
||||
using Poco::CppParser::StringLiteralToken;
|
||||
using Poco::CppParser::Struct;
|
||||
using Poco::CppParser::Symbol;
|
||||
using Poco::CppParser::Tokenizer;
|
||||
using Poco::CppParser::TypeDef;
|
||||
using Poco::CppParser::Utility;
|
||||
using Poco::CppParser::Variable;
|
||||
|
||||
using Poco::CppParser::replace;
|
||||
#endif
|
||||
}
|
||||
Reference in New Issue
Block a user