AutotoolsPM: Introduce MakefileParserOutputData

Change-Id: I47c277a1d3814c2de2f0b2c0a1e5894118821e1f
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2024-07-15 11:27:43 +02:00
parent 6f6004a425
commit 4a6db9fd74
3 changed files with 53 additions and 45 deletions

View File

@@ -18,6 +18,18 @@ QT_END_NAMESPACE
namespace AutotoolsProjectManager::Internal {
class MakefileParserOutputData final
{
public:
QString m_executable;
QStringList m_sources;
QStringList m_makefiles;
QStringList m_includePaths;
ProjectExplorer::Macros m_macros;
QStringList m_cflags;
QStringList m_cxxflags;
};
/**
* @brief Parses the autotools makefile Makefile.am.
*
@@ -49,6 +61,8 @@ public:
*/
bool parse();
MakefileParserOutputData outputData() const { return m_outputData; }
/**
* @return List of sources that are set for the _SOURCES target.
* Sources in sub directorties contain the sub directory as
@@ -246,13 +260,7 @@ private:
std::atomic_bool m_cancel = false; ///< True, if the parsing should be cancelled.
QString m_makefile; ///< Filename of the makefile
QString m_executable; ///< Return value for MakefileParser::executable()
QStringList m_sources; ///< Return value for MakefileParser::sources()
QStringList m_makefiles; ///< Return value for MakefileParser::makefiles()
QStringList m_includePaths; ///< Return value for MakefileParser::includePaths()
Macros m_macros; ///< Return value for MakefileParser::macros()
QStringList m_cflags; ///< Return value for MakefileParser::cflags()
QStringList m_cxxflags; ///< Return value for MakefileParser::cxxflags()
MakefileParserOutputData m_outputData;
QStringList m_cppflags; ///< The cpp flags, which will be part of both cflags and cxxflags
QString m_line; ///< Current line of the makefile