diff options
author | Stephen Kelly <steveire@gmail.com> | 2015-09-26 17:05:00 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-09-29 13:56:23 (GMT) |
commit | 59a729b2be6614427f3fd74f60412f17e6618d30 (patch) | |
tree | ea64675f3b79c54539d8519a4e54d007f5e4c7a7 /Source/cmQtAutoGeneratorInitializer.h | |
parent | 1e83a963d8983f09f5fe6fbf7d268f920b4ed7d0 (diff) | |
download | CMake-59a729b2be6614427f3fd74f60412f17e6618d30.zip CMake-59a729b2be6614427f3fd74f60412f17e6618d30.tar.gz CMake-59a729b2be6614427f3fd74f60412f17e6618d30.tar.bz2 |
QtAutogen: Split initializer class into separate file.
Diffstat (limited to 'Source/cmQtAutoGeneratorInitializer.h')
-rw-r--r-- | Source/cmQtAutoGeneratorInitializer.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/Source/cmQtAutoGeneratorInitializer.h b/Source/cmQtAutoGeneratorInitializer.h new file mode 100644 index 0000000..c22f172 --- /dev/null +++ b/Source/cmQtAutoGeneratorInitializer.h @@ -0,0 +1,67 @@ +/*============================================================================ + CMake - Cross Platform Makefile Generator + Copyright 2004-2011 Kitware, Inc. + Copyright 2011 Alexander Neundorf (neundorf@kde.org) + + Distributed under the OSI-approved BSD License (the "License"); + see accompanying file Copyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the License for more information. +============================================================================*/ + +#ifndef cmQtAutoGeneratorInitializer_h +#define cmQtAutoGeneratorInitializer_h + +#include "cmStandardIncludes.h" + +#include <string> +#include <vector> +#include <map> + +class cmSourceFile; +class cmTarget; +class cmLocalGenerator; + +class cmQtAutoGeneratorInitializer +{ +public: + static void InitializeAutogenSources(cmTarget* target); + static void InitializeAutogenTarget(cmLocalGenerator* lg, cmTarget* target); + static void SetupAutoGenerateTarget(cmTarget const* target); + + static std::string GetAutogenTargetName(cmTarget const* target); + static std::string GetAutogenTargetDir(cmTarget const* target); + +private: + static void SetupSourceFiles(cmTarget const* target, + std::vector<std::string>& skipMoc, + std::vector<std::string>& mocSources, + std::vector<std::string>& mocHeaders, + std::vector<std::string>& skipUic); + + static void SetupAutoMocTarget(cmTarget const* target, + const std::string &autogenTargetName, + const std::vector<std::string>& skipMoc, + const std::vector<std::string>& mocHeaders, + std::map<std::string, std::string> &configIncludes, + std::map<std::string, std::string> &configDefines); + static void SetupAutoUicTarget(cmTarget const* target, + const std::vector<std::string>& skipUic, + std::map<std::string, std::string> &configUicOptions); + static void SetupAutoRccTarget(cmTarget const* target); + + static void MergeRccOptions(std::vector<std::string> &opts, + const std::vector<std::string> &fileOpts, bool isQt5); + + static std::string GetRccExecutable(cmTarget const* target); + + static std::string ListQt5RccInputs(cmSourceFile* sf, cmTarget const* target, + std::vector<std::string>& depends); + + static std::string ListQt4RccInputs(cmSourceFile* sf, + std::vector<std::string>& depends); +}; + +#endif |