From 96d6d288c3969f3ce61d5891a8076d349d559a46 Mon Sep 17 00:00:00 2001
From: Esben Haabendal <esben.haabendal@huawei.com>
Date: Thu, 7 Apr 2022 13:58:56 +0200
Subject: [PATCH] Add repo manifest files

Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
---
 README.md            | 65 ++++++++++++++++++++++++++++++++++++++++++++
 default.xml          |  1 +
 manifests/branch.xml | 21 ++++++++++++++
 manifests/pin.xml    | 16 +++++++++++
 4 files changed, 103 insertions(+)
 create mode 120000 default.xml
 create mode 100644 manifests/branch.xml
 create mode 100644 manifests/pin.xml

diff --git a/README.md b/README.md
index 40721576..0e6df924 100644
--- a/README.md
+++ b/README.md
@@ -18,3 +18,68 @@ See the `CONTRIBUTING.md` file.
 ## License
 
 See the `LICENSES` subdirectory.
+
+
+## Dependencies
+
+	URI: https://gitlab.eclipse.org/eclipse/oniro-core/oniro.git
+	layers: meta-oniro-staging
+	branch: kirkstone
+
+	URI: git://git.openembedded.org/bitbake
+	branch: 2.0
+
+	URI: https://git.openembedded.org/openembedded-core
+	layers: meta
+	branch: kirkstone
+
+	URI: https://git.openembedded.org/meta-openembedded
+	layers: meta-oe meta-python
+	branch: master
+
+	URI: https://github.com/kraj/meta-clang.git
+	branch: master
+
+
+## General usage
+
+In order to build with this layer, you need to use a compatible host OS. See
+https://docs.yoctoproject.org/3.1.8/brief-yoctoprojectqs/brief-yoctoprojectqs.html
+for details on this. Sections
+https://docs.yoctoproject.org/3.1.8/brief-yoctoprojectqs/brief-yoctoprojectqs.html#compatible-linux-distribution
+and
+https://docs.yoctoproject.org/3.1.8/brief-yoctoprojectqs/brief-yoctoprojectqs.html#build-host-packages
+in particular.
+
+To use the meta-openharmony layer, you need a build setup with BitBake and all
+needed Yocto layers.
+
+If you are adding OpenHarmony features to an existing project, you have to add
+meta-openharmony and its layer dependencies to your existing project setup. You
+can use the `bitbake-layers add-layer` command to do this.
+
+If you don't have an existing project, and simply want to quickly try out
+OpenHarmony features, you could use the repo manifest included in the
+meta-openharmony layer.
+
+You can run these commands to do this:
+
+	mkdir ohoe && cd ohoe
+	repo init -u https://gitlab.eclipse.org/eclipse/oniro-core/meta-openharmony.git -b kirkstone
+	repo sync --no-clone-bundle
+
+
+## Repo manifests
+
+The meta-openharmony repository includes a number of different repo manifest
+files, which can be used fetch all repositories needed for building OpenHarmony.
+
+### manifests/branch.xml
+
+This manifest checks out all repositories with the latest revision from
+their development branch, including upstream projects.
+
+### manifests/pin.xml
+
+This manifest checks out all repositories at known good versions, which are
+locked down by commit ids in the manifest file. This is the default manifest.
diff --git a/default.xml b/default.xml
new file mode 120000
index 00000000..9eb58037
--- /dev/null
+++ b/default.xml
@@ -0,0 +1 @@
+manifests/pin.xml
\ No newline at end of file
diff --git a/manifests/branch.xml b/manifests/branch.xml
new file mode 100644
index 00000000..09751478
--- /dev/null
+++ b/manifests/branch.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+SPDX-License-Identifier: Apache-2.0
+SPDX-FileCopyrightText: Huawei Inc.
+-->
+<manifest>
+  <remote name="oniro-core" fetch="https://gitlab.eclipse.org/eclipse/oniro-core" />
+  <remote name="openembedded" fetch="https://git.openembedded.org" />
+  <remote name="yocto" fetch="https://git.yoctoproject.org/git" />
+  <remote name="kraj" fetch="https://github.com/kraj" />
+  <default revision="kirkstone" sync-j="4" />
+
+  <project name="meta-openharmony" remote="oniro-core" />
+  <project name="oniro" remote="oniro-core" />
+
+  <project name="bitbake" remote="openembedded" revision="2.0" />
+  <project name="openembedded-core" remote="openembedded" path="oe-core"/>
+  <project name="meta-openembedded" remote="openembedded" revision="master" />
+  <project name="meta-clang" remote="kraj" revision="master" />
+  
+</manifest>
diff --git a/manifests/pin.xml b/manifests/pin.xml
new file mode 100644
index 00000000..f05b00a4
--- /dev/null
+++ b/manifests/pin.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+SPDX-License-Identifier: Apache-2.0
+SPDX-FileCopyrightText: Huawei Inc.
+-->
+<manifest>
+  <include name="manifests/branch.xml" />
+
+  <extend-project name="oniro" revision="ab7d94c98db300b0b2010d6eb53b053d082640e0" />
+
+  <extend-project name="bitbake" revision="c212b0f3b542efa19f15782421196b7f4b64b0b9" />
+  <extend-project name="openembedded-core" revision="d2ba3b8850d461bc7b773240cdf15b22b31a3f9e" />
+  <extend-project name="meta-openembedded" revision="6fbe7f748706229f43a2e06b08b6e1e729942314" />
+  <extend-project name="meta-clang" revision="12a5f8be1201fa1fcb62aa004542279d5c9acae0" />
+
+</manifest>
-- 
GitLab