1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef TOOLS_GN_COPY_TARGET_GENERATOR_H_ 6 #define TOOLS_GN_COPY_TARGET_GENERATOR_H_ 7 8 #include "gn/target_generator.h" 9 #include "gn/ohos_variables.h" 10 11 // Populates a Target with the values from a copy rule. 12 class CopyTargetGenerator : public TargetGenerator { 13 public: 14 CopyTargetGenerator(Target* target, 15 Scope* scope, 16 const FunctionCallNode* function_call, 17 Err* err); 18 ~CopyTargetGenerator() override; 19 20 protected: 21 void DoRun() override; 22 23 private: 24 CopyTargetGenerator(const CopyTargetGenerator&) = delete; 25 CopyTargetGenerator& operator=(const CopyTargetGenerator&) = delete; 26 27 bool FillCopyLinkableFile(); 28 }; 29 30 #endif // TOOLS_GN_COPY_TARGET_GENERATOR_H_ 31