diff options
Diffstat (limited to 'documentation/dev-manual/external-scm.rst')
| -rw-r--r-- | documentation/dev-manual/external-scm.rst | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/documentation/dev-manual/external-scm.rst b/documentation/dev-manual/external-scm.rst new file mode 100644 index 0000000000..97a7e63e36 --- /dev/null +++ b/documentation/dev-manual/external-scm.rst | |||
| @@ -0,0 +1,67 @@ | |||
| 1 | .. SPDX-License-Identifier: CC-BY-SA-2.0-UK | ||
| 2 | |||
| 3 | Using an External SCM | ||
| 4 | ********************* | ||
| 5 | |||
| 6 | If you're working on a recipe that pulls from an external Source Code | ||
| 7 | Manager (SCM), it is possible to have the OpenEmbedded build system | ||
| 8 | notice new recipe changes added to the SCM and then build the resulting | ||
| 9 | packages that depend on the new recipes by using the latest versions. | ||
| 10 | This only works for SCMs from which it is possible to get a sensible | ||
| 11 | revision number for changes. Currently, you can do this with Apache | ||
| 12 | Subversion (SVN), Git, and Bazaar (BZR) repositories. | ||
| 13 | |||
| 14 | To enable this behavior, the :term:`PV` of | ||
| 15 | the recipe needs to reference | ||
| 16 | :term:`SRCPV`. Here is an example:: | ||
| 17 | |||
| 18 | PV = "1.2.3+git${SRCPV}" | ||
| 19 | |||
| 20 | Then, 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 | ||
| 26 | which you want to enable automatic source revision updating. | ||
| 27 | |||
| 28 | If you do not want to update your local configuration file, you can add | ||
| 29 | the following directly to the recipe to finish enabling the feature:: | ||
| 30 | |||
| 31 | SRCREV = "${AUTOREV}" | ||
| 32 | |||
| 33 | The Yocto Project provides a distribution named ``poky-bleeding``, whose | ||
| 34 | configuration file contains the line:: | ||
| 35 | |||
| 36 | require conf/distro/include/poky-floating-revisions.inc | ||
| 37 | |||
| 38 | This line pulls in the | ||
| 39 | listed 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 | |||
| 59 | These lines allow you to | ||
| 60 | experiment with building a distribution that tracks the latest | ||
| 61 | development 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 | |||
