<!--
 Copyright 2020 Google LLC

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<manifest>

  <include name="flaky_repos.xml" />

  <remote  name="cos"
           fetch="https://cos.googlesource.com"
           review="https://cos-review.googlesource.com"  />
  <default remote="cos" revision="refs/heads/release-R97" sync-j="8" />
  <notice>
Your sources have been sync'd successfully.
  </notice>

  <!-- mirrored cros_sdk dependencies -->
  <project path="chromite/infra/proto"
           name="mirrors/cros/chromiumos/infra/proto"
           revision="8a4833a0bfedd1acdb9ebda9b9045970b820d0e6" />
  <project path="chromite/third_party/pyelftools"
           name="mirrors/cros/chromiumos/third_party/pyelftools"
           revision="6fec9f599bef566fe8f6f6ca6c2102508b664792" />
  <project path="src/platform/crostestutils"
           name="mirrors/cros/chromiumos/platform/crostestutils"
           revision="0515327957ce2c1a4d816ed0a68bbdcdddb3d026" />
  <project path="src/third_party/autotest/files"
           name="mirrors/cros/chromiumos/third_party/autotest"
           revision="6311d895c7f41411cb43618793202a42555e60d5" />
  <project path="src/platform/dev"
           name="mirrors/cros/chromiumos/platform/dev-util"
           revision="c20010434ed180b67b404420979023fe3eb0047b" />
  <project path="src/third_party/toolchain-utils"
           name="mirrors/cros/chromiumos/third_party/toolchain-utils"
           revision="a7a19342ac9fe044cbf45a3aa618defca9db413f" />
  <project path="src/third_party/portage_tool"
           name="mirrors/cros/chromiumos/third_party/portage_tool"
           revision="ceeb0e9ff251cf1bdb92358371ec9e5d6d9f751c" />
  <project path="src/chromium/depot_tools"
           name="mirrors/cros/chromium/tools/depot_tools"
           revision="09f358bae36c316e3c4c39cd344de964bd0fed7c" />
  <project path="src/third_party/coreboot"
           name="mirrors/cros/chromiumos/third_party/coreboot"
           revision="925a3a4f5836e2f6f696975cf52c0ff6c86c9309" />
  <project path="src/third_party/modp_b64"
           name="mirrors/cros/aosp/platform/external/modp_b64"
           revision="269b6fb8401617b85e2dff7ae8a7b0f97613e2cd" />
  <project path="src/platform2"
           name="mirrors/cros/chromiumos/platform2"
           revision="65a5b18bfdcd883b6399b922e57a8f0fa9eb88ec" />
  <project path="infra_virtualenv"
           name="mirrors/cros/chromiumos/infra_virtualenv"
           revision="cab8a95f2961561eb56a95d6f2bfc685686db75a" />

  <!-- COS sources -->
  <project path="src/overlays"
           name="cos/overlays/board-overlays"
           revision="refs/heads/main-R97" />
  <project path="src/third_party/portage-stable"
           name="third_party/overlays/portage-stable"
           revision="refs/heads/main-R97" />
  <project path="src/third_party/eclass-overlay"
           name="third_party/overlays/eclass-overlay" />
  <project path="src/third_party/chromiumos-overlay"
           sync-c="true"
           name="third_party/overlays/chromiumos-overlay"
           revision="refs/heads/main-R97" />
  <project path="src/scripts"
           name="third_party/platform/crosutils" />
  <project path="chromite"
           name="third_party/chromite" />
  <project path="src/platform/vboot_reference"
           name="third_party/platform/vboot_reference" />
  <project path="src/compliance"
           name="cos/compliance" />
  <project path="src/repohooks"
           name="cos/repohooks"
           revision="refs/heads/master" />

  <project path="src/platform/cobble"
           name="cos/cobble" />
  <project path="manifest" name="cos/manifest" >
      <copyfile src="LICENSE" dest="LICENSE" />
  </project>
  <project path="src/third_party/policymanager"
           name="cos/policymanager" />
  <project path="src/third_party/toolbox"
           name="third_party/toolbox" />
  <project path="src/third_party/kernel/v5.10"
           name="third_party/kernel"
           revision="refs/heads/release-R97-cos-5.10" />

  <repo-hooks enabled-list="pre-upload"
           in-project="cos/repohooks" />

</manifest>



