mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-29 02:20:17 -06:00
Not just short directory roots. The test suites did an improper generator check and masked them as the generator masks were put in place after the core development but before the autogen-specific logic tests were created.
45 lines
1.1 KiB
C++
45 lines
1.1 KiB
C++
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
|
file LICENSE.rst or https://cmake.org/licensing for details. */
|
|
#pragma once
|
|
|
|
#include <map>
|
|
#include <string>
|
|
|
|
#include "cmLocalGenerator.h"
|
|
|
|
class cmGeneratorTarget;
|
|
class cmGlobalGenerator;
|
|
class cmMakefile;
|
|
struct cmObjectLocations;
|
|
class cmSourceFile;
|
|
namespace cmStateEnums {
|
|
enum class IntermediateDirKind;
|
|
}
|
|
|
|
/** \class cmLocalGhsMultiGenerator
|
|
* \brief Write Green Hills MULTI project files.
|
|
*
|
|
* cmLocalGhsMultiGenerator produces a set of .gpj
|
|
* file for each target in its mirrored directory.
|
|
*/
|
|
class cmLocalGhsMultiGenerator : public cmLocalGenerator
|
|
{
|
|
public:
|
|
cmLocalGhsMultiGenerator(cmGlobalGenerator* gg, cmMakefile* mf);
|
|
|
|
~cmLocalGhsMultiGenerator() override;
|
|
|
|
/**
|
|
* Generate the makefile for this directory.
|
|
*/
|
|
void Generate() override;
|
|
|
|
std::string GetTargetDirectory(
|
|
cmGeneratorTarget const* target,
|
|
cmStateEnums::IntermediateDirKind kind) const override;
|
|
|
|
void ComputeObjectFilenames(
|
|
std::map<cmSourceFile const*, cmObjectLocations>& mapping,
|
|
cmGeneratorTarget const* gt = nullptr) override;
|
|
};
|