1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-14 02:08:27 +08:00
Files
CMake/Source/cmLocalXCodeGenerator.h
Ben Boeckel fe0163cd23 autogen: compute short directories too
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.
2025-09-02 12:56:23 -04:00

47 lines
1.3 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 "cmConfigure.h" // IWYU pragma: keep
#include <iosfwd>
#include <map>
#include <string>
#include "cmLocalGenerator.h"
#include "cmObjectLocation.h"
class cmGeneratorTarget;
class cmGlobalGenerator;
class cmMakefile;
class cmSourceFile;
/** \class cmLocalXCodeGenerator
* \brief Write a local Xcode project
*
* cmLocalXCodeGenerator produces a LocalUnix makefile from its
* member Makefile.
*/
class cmLocalXCodeGenerator : public cmLocalGenerator
{
public:
//! Set cache only and recurse to false by default.
cmLocalXCodeGenerator(cmGlobalGenerator* gg, cmMakefile* mf);
~cmLocalXCodeGenerator() override;
std::string GetTargetDirectory(
cmGeneratorTarget const* target,
cmStateEnums::IntermediateDirKind kind) const override;
void AppendFlagEscape(std::string& flags,
std::string const& rawFlag) const override;
void Generate() override;
void AddGeneratorSpecificInstallSetup(std::ostream& os) override;
void ComputeObjectFilenames(
std::map<cmSourceFile const*, cmObjectLocations>& mapping,
cmGeneratorTarget const* gt = nullptr) override;
void AddXCConfigSources(cmGeneratorTarget* target) override;
private:
};