blob: 97a7e63e366a5f510762e4e62742ef3df5fceda6 [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
2
3Using an External SCM
4*********************
5
6If you're working on a recipe that pulls from an external Source Code
7Manager (SCM), it is possible to have the OpenEmbedded build system
8notice new recipe changes added to the SCM and then build the resulting
9packages that depend on the new recipes by using the latest versions.
10This only works for SCMs from which it is possible to get a sensible
11revision number for changes. Currently, you can do this with Apache
12Subversion (SVN), Git, and Bazaar (BZR) repositories.
13
14To enable this behavior, the :term:`PV` of
15the recipe needs to reference
16:term:`SRCPV`. Here is an example::
17
18 PV = "1.2.3+git${SRCPV}"
19
20Then, you can add the following to your
21``local.conf``::
22
23 SRCREV:pn-PN = "${AUTOREV}"
24
25:term:`PN` is the name of the recipe for
26which you want to enable automatic source revision updating.
27
28If you do not want to update your local configuration file, you can add
29the following directly to the recipe to finish enabling the feature::
30
31 SRCREV = "${AUTOREV}"
32
33The Yocto Project provides a distribution named ``poky-bleeding``, whose
34configuration file contains the line::
35
36 require conf/distro/include/poky-floating-revisions.inc
37
38This line pulls in the
39listed include file that contains numerous lines of exactly that form::
40
41 #SRCREV:pn-opkg-native ?= "${AUTOREV}"
42 #SRCREV:pn-opkg-sdk ?= "${AUTOREV}"
43 #SRCREV:pn-opkg ?= "${AUTOREV}"
44 #SRCREV:pn-opkg-utils-native ?= "${AUTOREV}"
45 #SRCREV:pn-opkg-utils ?= "${AUTOREV}"
46 SRCREV:pn-gconf-dbus ?= "${AUTOREV}"
47 SRCREV:pn-matchbox-common ?= "${AUTOREV}"
48 SRCREV:pn-matchbox-config-gtk ?= "${AUTOREV}"
49 SRCREV:pn-matchbox-desktop ?= "${AUTOREV}"
50 SRCREV:pn-matchbox-keyboard ?= "${AUTOREV}"
51 SRCREV:pn-matchbox-panel-2 ?= "${AUTOREV}"
52 SRCREV:pn-matchbox-themes-extra ?= "${AUTOREV}"
53 SRCREV:pn-matchbox-terminal ?= "${AUTOREV}"
54 SRCREV:pn-matchbox-wm ?= "${AUTOREV}"
55 SRCREV:pn-settings-daemon ?= "${AUTOREV}"
56 SRCREV:pn-screenshot ?= "${AUTOREV}"
57 . . .
58
59These lines allow you to
60experiment with building a distribution that tracks the latest
61development source for numerous packages.
62
63.. note::
64
65 The ``poky-bleeding`` distribution is not tested on a regular basis. Keep
66 this in mind if you use it.
67