<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright 2023 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>
  <remote fetch="https://opensecura.googlesource.com" name="opensecura" review="https://opensecura-review.googlesource.com" />
  <remote name="android" fetch="https://android.googlesource.com" />
  <default remote="opensecura" revision="master" />

  <project name="build" path="build">
    <linkfile src="Makefile" dest="Makefile" />
  </project>

  <project name="docs" path="docs">
    <linkfile src="GettingStarted.md" dest="GettingStarted.md" />
  </project>

  <project name="manifest" path="manifest" />
  <project name="scripts"  path="scripts">
    <linkfile src="preupload-hooks/GLOBAL-PREUPLOAD.cfg" dest="GLOBAL-PREUPLOAD.cfg" />
  </project>

  <!-- BEGIN cantrip components -->
  <project name="sw/cantrip/userland"  path="cantrip/projects/cantrip" />
  <project name="sw/cantrip/minisel"   path="cantrip/projects/minisel" />
  <project name="sw/cantrip/sel4"      path="cantrip/kernel" />
  <project name="sw/cantrip/sel4_libs" path="cantrip/projects/seL4_libs" />

  <project name="3p/sel4/camkes-tool"            path="cantrip/projects/camkes-tool" />
  <project name="3p/sel4/camkes"                 path="cantrip/projects/camkes" />
  <project name="3p/sel4/capdl"                  path="cantrip/projects/capdl" />
  <project name="3p/nicta/cogent"                path="cantrip/tools/cogent" />
  <project name="3p/sel4proj/global-components"  path="cantrip/projects/global-components" />
  <project name="3p/sel4/musllibc"               path="cantrip/projects/musllibc" />
  <project name="3p/sel4proj/projects_libs"      path="cantrip/projects/projects_libs" />
  <project name="3p/sel4proj/sel4_projects_libs" path="cantrip/projects/seL4_projects_libs" />
  <project name="3p/sel4/sel4test"               path="cantrip/projects/sel4test" />
  <project name="3p/sel4/sel4_tools"             path="cantrip/tools/seL4" />
  <project name="3p/sel4proj/sel4runtime"        path="cantrip/projects/sel4runtime" />
  <project name="3p/sel4/util_libs"              path="cantrip/projects/util_libs" />
  <project name="3p/nanopb/nanopb"               path="cantrip/tools/nanopb" />
  <!-- END cantrip components -->

  <!-- BEGIN ML toolchain-->
  <!--TODO(b/301616633): unpin the release -->
  <project revision="735a77e4116cb91e2ad1d3a709ec5cf456b35c30" name="3p/openxla/iree" path="toolchain/iree" />
  <project name="sw/vec_iree"                     path="sw/vec_iree" />
  <project name="ml-models-public"                path="ml/ml-models-public" />
  <!-- END ML toolchain -->

  <!-- Simulation -->
  <project name="3p/renode/renode"                path="sim/renode" />
  <project name="sim/config"                      path="sim/config" />
  <project name="3p/verilator/verilator"          path="sim/verilator" />
  <project name="sim/tests"                       path="sim/tests" />
  <project name="sim/tbm"                         path="sim/tbm" />
  <project name="sim/kelvin"                      path="sim/kelvin" />

  <!-- Opentitan -->
  <project name="3p/lowrisc/opentitan"            path="hw/opentitan-upstream" />

  <!-- ML Core -->
  <project name="sw/vec"                          path="sw/vec" />
  <project name="sw/kelvin"                       path="sw/kelvin" />

  <!-- Kelvin -->
  <project name="hw/kelvin"                       path="hw/kelvin" />

  <!-- Matcha -->
  <project name="hw/matcha"                       path="hw/matcha" />
  <project name="3p/ip/isp"                       path="hw/ip/isp" />

  <!-- TockOS -->
  <project name="3p/tock/tock"       dest-branch="master" path="sw/tock" />
  <project name="3p/tock/libtock-rs" dest-branch="master" path="sw/libtock-rs" />
  <project name="sw/matcha"        path="sw/matcha" />

  <!-- Pigweed -->
  <project name="3p/google/pigweed" path="sw/pigweed" />

  <!-- Tensorflow Lite for Microcontrollers -->
  <project name="3p/tensorflow/tflite-micro" path="sw/tflite-micro" />

  <!-- Repo pre-upload hooks -->
  <project name="platform/tools/repohooks" path="repohooks" remote="android" />
  <repo-hooks in-project="platform/tools/repohooks" enabled-list="pre-upload" />
</manifest>
