On Fri, 2021-11-05 at 14:31 +0100, Jasper Orschulko via lists.openembedded.org wrote: > From: Jasper Orschulko <[email protected]> > > Add a recipe for repo, prerequisite for the repo fetcher. > > Signed-off-by: Jasper Orschulko <[email protected]> > --- > .../repo/files/0001-python3-shebang.patch | 21 ++++++++++++ > .../0001-Set-REPO_REV-to-v2.17.3.patch | 33 +++++++++++++++++++ > meta/recipes-devtools/repo/repo.inc | 25 ++++++++++++++ > meta/recipes-devtools/repo/repo_2.17.3.bb | 7 ++++ > 4 files changed, 86 insertions(+) > create mode 100644 > meta/recipes-devtools/repo/files/0001-python3-shebang.patch > create mode 100644 > meta/recipes-devtools/repo/repo-2.17.3/0001-Set-REPO_REV-to-v2.17.3.patch > create mode 100644 meta/recipes-devtools/repo/repo.inc > create mode 100644 meta/recipes-devtools/repo/repo_2.17.3.bb
This basically looks ok to me, I've some minor comments below. The patch is missing adding an entry to: meta/conf/distro/include/maintainers.inc which is required for OE-Core recipes and will trip up automated testing if we don't. > > diff --git a/meta/recipes-devtools/repo/files/0001-python3-shebang.patch > b/meta/recipes-devtools/repo/files/0001-python3-shebang.patch > new file mode 100644 > index 0000000000..09ccf58264 > --- /dev/null > +++ b/meta/recipes-devtools/repo/files/0001-python3-shebang.patch I'd put this in a folder called "repo" rather than files. > @@ -0,0 +1,21 @@ > +From b8e84b202cd302a7c99288d3835dc9c63071f8f2 Mon Sep 17 00:00:00 2001 > +From: Jasper Orschulko <[email protected]> > +Date: Tue, 14 Sep 2021 16:46:51 +0200 > +Subject: [PATCH] python3 shebang > + > +--- > + repo | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > Missing Upstream-Status: (you got the second one ok though! :) > +diff --git a/repo b/repo > +index b13e34c..205e0e5 100755 > +--- a/repo > ++++ b/repo > +@@ -1,4 +1,4 @@ > +-#!/usr/bin/env python > ++#!/usr/bin/env python3 > + # -*- coding:utf-8 -*- > + # > + # Copyright (C) 2008 The Android Open Source Project > +-- > +2.33.0 > diff --git > a/meta/recipes-devtools/repo/repo-2.17.3/0001-Set-REPO_REV-to-v2.17.3.patch > b/meta/recipes-devtools/repo/repo-2.17.3/0001-Set-REPO_REV-to-v2.17.3.patch > new file mode 100644 > index 0000000000..294a3af53a > --- /dev/null > +++ > b/meta/recipes-devtools/repo/repo-2.17.3/0001-Set-REPO_REV-to-v2.17.3.patch > @@ -0,0 +1,33 @@ > +From bdd2a528da59c28db8ae2986834926de7cebf3ab Mon Sep 17 00:00:00 2001 > +From: Jasper Orschulko <[email protected]> > +Date: Thu, 4 Nov 2021 16:55:12 +0100 > +Subject: [PATCH] Set REPO_REV to v2.17.3 > + > +repo is an unusual tool because it downloads all of its own Python modules > +using GPG-signed git tags, and stores those files as part of the project > +that it is working with. > + > +So in order to have a reproducible repo installation within the project > +folders, we hardcode the REPO_REV variable to this recipes PV. > + > +Upstream-Status: Inappropriate [configuration] > +Signed-off-by: Jasper Orschulko <[email protected]> > +--- > + repo | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/repo b/repo > +index 4cddbf1..cf5f6b1 100755 > +--- a/repo > ++++ b/repo > +@@ -142,7 +142,7 @@ if __name__ == '__main__': > + REPO_URL = os.environ.get('REPO_URL', None) > + if not REPO_URL: > + REPO_URL = 'https://gerrit.googlesource.com/git-repo' > +-REPO_REV = os.environ.get('REPO_REV') > ++REPO_REV = 'v2.17.3' > + if not REPO_REV: > + REPO_REV = 'stable' > + # URL to file bug reports for repo tool issues. > +-- > +2.33.1 > diff --git a/meta/recipes-devtools/repo/repo.inc > b/meta/recipes-devtools/repo/repo.inc > new file mode 100644 > index 0000000000..60b32e4d74 > --- /dev/null > +++ b/meta/recipes-devtools/repo/repo.inc > @@ -0,0 +1,25 @@ > +# SPDX-License-Identifier: MIT > +# Copyright (C) 2021 iris-GmbH infrared & intelligent sensors > + > +SUMMARY = "Tool for managing many Git repositories" > +DESCRIPTION = "Repo is a tool built on top of Git. Repo helps manage many > Git repositories, does the uploads to revision control systems, and automates > parts of the development workflow." > +HOMEPAGE = "https://android.googlesource.com/tools/repo" > +SECTION = "console/utils" > + > +LICENSE = "Apache-2.0" > + > +SRC_URI = > "git://[email protected]/git-repo.git;protocol=https;branch=main" > +MIRRORS = "git://[email protected]/git-repo.git > git://github.com/GerritCodeReview/git-repo.git \n" You shouldn't be clearing MIRRORS with "=" as the user may have something set in there the system needs to work, you probably want += here. > + > +SRC_URI += "file://0001-python3-shebang.patch" > + > +S = "${WORKDIR}/git" > + > +RDEPENDS_${PN} = "python3" This is old overrides syntax, it is RDEPENDS:${PN} now as others have mentioned. > + > +do_install() { > + install -d ${D}${bindir} > + install -m 755 ${WORKDIR}/git/repo ${D}${bindir} > +} > + > +BBCLASSEXTEND = "native nativesdk" > diff --git a/meta/recipes-devtools/repo/repo_2.17.3.bb > b/meta/recipes-devtools/repo/repo_2.17.3.bb > new file mode 100644 > index 0000000000..c26264b9e9 > --- /dev/null > +++ b/meta/recipes-devtools/repo/repo_2.17.3.bb > @@ -0,0 +1,7 @@ > +# SPDX-License-Identifier: MIT > +# Copyright (C) 2021 iris-GmbH infrared & intelligent sensors > + > +require recipes-devtools/repo/repo.inc > + > +SRCREV = "11b30b91df1f0e03b53da970ec2588e85817bacc" > +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#157948): https://lists.openembedded.org/g/openembedded-core/message/157948 Mute This Topic: https://lists.openembedded.org/mt/86878942/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
