1# Copyright 2022 The Pigweed Authors 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); you may not 4# use this file except in compliance with the License. You may obtain a copy of 5# the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12# License for the specific language governing permissions and limitations under 13# the License. 14 15fuchsia_repo_files = [ 16 ".clang-format", 17 "LICENSE", 18 # fit 19 "sdk/lib/fit/include/lib/fit/defer.h", 20 "sdk/lib/fit/include/lib/fit/function.h", 21 "sdk/lib/fit/include/lib/fit/internal/compiler.h", 22 "sdk/lib/fit/include/lib/fit/internal/function.h", 23 "sdk/lib/fit/include/lib/fit/internal/result.h", 24 "sdk/lib/fit/include/lib/fit/internal/utility.h", 25 "sdk/lib/fit/include/lib/fit/nullable.h", 26 "sdk/lib/fit/include/lib/fit/result.h", 27 "sdk/lib/fit/include/lib/fit/traits.h", 28 "sdk/lib/fit/test/function_tests.cc", 29 # stdcompat 30 "sdk/lib/stdcompat/include/lib/stdcompat/bit.h", 31 "sdk/lib/stdcompat/include/lib/stdcompat/functional.h", 32 "sdk/lib/stdcompat/include/lib/stdcompat/memory.h", 33 "sdk/lib/stdcompat/include/lib/stdcompat/optional.h", 34 "sdk/lib/stdcompat/include/lib/stdcompat/type_traits.h", 35 "sdk/lib/stdcompat/include/lib/stdcompat/utility.h", 36 "sdk/lib/stdcompat/include/lib/stdcompat/version.h", 37 "sdk/lib/stdcompat/include/lib/stdcompat/internal/bit.h", 38 "sdk/lib/stdcompat/include/lib/stdcompat/internal/constructors.h", 39 "sdk/lib/stdcompat/include/lib/stdcompat/internal/exception.h", 40 "sdk/lib/stdcompat/include/lib/stdcompat/internal/functional.h", 41 "sdk/lib/stdcompat/include/lib/stdcompat/internal/storage.h", 42 "sdk/lib/stdcompat/include/lib/stdcompat/internal/type_traits.h", 43 "sdk/lib/stdcompat/include/lib/stdcompat/internal/utility.h", 44 # lazy_init 45 "zircon/system/ulib/lazy_init/include/lib/lazy_init/internal/storage.h", 46 "zircon/system/ulib/lazy_init/include/lib/lazy_init/lazy_init.h", 47 "zircon/system/ulib/lazy_init/include/lib/lazy_init/options.h", 48] 49 50core.workflow( 51 name = "default", 52 description = "Imports files from Fuchsia's fit, stdcompat and lazy_init libraries", 53 origin = git.origin( 54 url = "https://fuchsia.googlesource.com/fuchsia", 55 ref = "main", 56 ), 57 destination = git.gerrit_destination( 58 url = "https://pigweed.googlesource.com/pigweed/pigweed", 59 fetch = "main", 60 push_to_refs_for = "main%message=No%2dDocs%2dUpdate%2dReason%3a_copybara_import", 61 labels = ["Commit-Queue+1"], 62 checker = leakr.disable_check("Syncing between OSS projects"), 63 ), 64 origin_files = glob(fuchsia_repo_files), 65 # Exclude BUILD.gn files to keep Pigweed's versions. 66 destination_files = glob(["third_party/fuchsia/repo/**"], exclude = ["**/BUILD.gn"]), 67 authoring = authoring.pass_thru("Fuchsia Authors <[email protected]>"), 68 transformations = [ 69 core.move("", "third_party/fuchsia/repo"), 70 # Apply the patch file created by generate_fuchsia_patch.py. 71 patch.apply(["pigweed_adaptations.patch"]), 72 # Replace test #includes with gtest. 73 core.replace("#include <zxtest/zxtest.h>", "#include \"gtest/gtest.h\""), 74 # Show all commits but exclude the author to reduce line length. 75 metadata.squash_notes( 76 "third_party/fuchsia: Copybara import\n\n", 77 show_author = False, 78 ), 79 ], 80) 81