summaryrefslogtreecommitdiff
path: root/meta/classes/devupstream.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/devupstream.bbclass')
-rw-r--r--meta/classes/devupstream.bbclass48
1 files changed, 48 insertions, 0 deletions
diff --git a/meta/classes/devupstream.bbclass b/meta/classes/devupstream.bbclass
new file mode 100644
index 0000000000..7780c5482c
--- /dev/null
+++ b/meta/classes/devupstream.bbclass
@@ -0,0 +1,48 @@
+# Class for use in BBCLASSEXTEND to make it easier to have a single recipe that
+# can build both stable tarballs and snapshots from upstream source
+# repositories.
+#
+# Usage:
+# BBCLASSEXTEND = "devupstream:target"
+# SRC_URI_class-devupstream = "git://git.example.com/example"
+# SRCREV_class-devupstream = "abcdef"
+#
+# If the first entry in SRC_URI is a git: URL then S is rewritten to
+# WORKDIR/git.
+#
+# There are a few caveats that remain to be solved:
+# - You can't build native or nativesdk recipes using for example
+# devupstream:native, you can only build target recipes.
+# - If the fetcher requires native tools (such as subversion-native) then
+# bitbake won't be able to add them automatically.
+
+CLASSOVERRIDE .= ":class-devupstream"
+
+python devupstream_virtclass_handler () {
+ # Do nothing if this is inherited, as it's for BBCLASSEXTEND
+ if "devupstream" not in (d.getVar('BBCLASSEXTEND') or ""):
+ bb.error("Don't inherit devupstream, use BBCLASSEXTEND")
+ return
+
+ variant = d.getVar("BBEXTENDVARIANT")
+ if variant not in ("target"):
+ bb.error("Pass the variant when using devupstream, for example devupstream:target")
+ return
+
+ # Develpment releases are never preferred by default
+ d.setVar("DEFAULT_PREFERENCE", "-1")
+
+ uri = bb.fetch2.URI(d.getVar("SRC_URI").split()[0])
+
+ if uri.scheme == "git":
+ d.setVar("S", "${WORKDIR}/git")
+
+ # Modify the PV if the recipe hasn't already overridden it
+ pv = d.getVar("PV")
+ proto_marker = "+" + uri.scheme
+ if proto_marker not in pv:
+ d.setVar("PV", pv + proto_marker + "${SRCPV}")
+}
+
+addhandler devupstream_virtclass_handler
+devupstream_virtclass_handler[eventmask] = "bb.event.RecipePreFinalise"
style='width: 0.4%;'/> -rwxr-xr-xbitbake/bin/bitbake134
-rwxr-xr-xbitbake/bin/bitdoc532
-rw-r--r--bitbake/contrib/README1
-rw-r--r--bitbake/contrib/bbdev.sh31
-rw-r--r--bitbake/contrib/vim/ftdetect/bitbake.vim4
-rw-r--r--bitbake/contrib/vim/syntax/bitbake.vim120
-rw-r--r--bitbake/doc/bitbake.1117
-rw-r--r--bitbake/doc/manual/Makefile56
-rw-r--r--bitbake/doc/manual/html.css281
-rw-r--r--bitbake/doc/manual/usermanual.xml518
-rw-r--r--bitbake/lib/bb/COW.py320
-rw-r--r--bitbake/lib/bb/__init__.py1252
-rw-r--r--bitbake/lib/bb/build.py463
-rw-r--r--bitbake/lib/bb/cache.py436
-rw-r--r--bitbake/lib/bb/cooker.py696
-rw-r--r--bitbake/lib/bb/data.py570
-rw-r--r--bitbake/lib/bb/data_smart.py292
-rw-r--r--bitbake/lib/bb/event.py266
-rw-r--r--bitbake/lib/bb/fetch/__init__.py473
-rw-r--r--bitbake/lib/bb/fetch/bzr.py159
-rw-r--r--bitbake/lib/bb/fetch/cvs.py156
-rw-r--r--bitbake/lib/bb/fetch/git.py131
-rw-r--r--bitbake/lib/bb/fetch/local.py61
-rw-r--r--bitbake/lib/bb/fetch/perforce.py213
-rw-r--r--bitbake/lib/bb/fetch/ssh.py120
-rw-r--r--bitbake/lib/bb/fetch/svk.py109
-rw-r--r--bitbake/lib/bb/fetch/svn.py206
-rw-r--r--bitbake/lib/bb/fetch/wget.py99
-rw-r--r--bitbake/lib/bb/manifest.py144
-rw-r--r--bitbake/lib/bb/methodpool.py84
-rw-r--r--bitbake/lib/bb/msg.py129
-rw-r--r--bitbake/lib/bb/parse/__init__.py80
-rw-r--r--bitbake/lib/bb/parse/parse_c/BBHandler.py188
-rw-r--r--bitbake/lib/bb/parse/parse_c/Makefile36
-rw-r--r--bitbake/lib/bb/parse/parse_c/README.build12
-rw-r--r--bitbake/lib/bb/parse/parse_c/__init__.py28
-rw-r--r--bitbake/lib/bb/parse/parse_c/bitbakec.pyx253
-rw-r--r--bitbake/lib/bb/parse/parse_c/bitbakeparser.cc1157
-rw-r--r--bitbake/lib/bb/parse/parse_c/bitbakeparser.h29
-rw-r--r--bitbake/lib/bb/parse/parse_c/bitbakeparser.y179
-rw-r--r--bitbake/lib/bb/parse/parse_c/bitbakescanner.cc3209
-rw-r--r--bitbake/lib/bb/parse/parse_c/bitbakescanner.l319
-rw-r--r--bitbake/lib/bb/parse/parse_c/lexer.h48
-rw-r--r--bitbake/lib/bb/parse/parse_c/lexerc.h19
-rw-r--r--bitbake/lib/bb/parse/parse_c/python_output.h56
-rw-r--r--bitbake/lib/bb/parse/parse_c/token.h96
-rw-r--r--bitbake/lib/bb/parse/parse_py/BBHandler.py427
-rw-r--r--bitbake/lib/bb/parse/parse_py/ConfHandler.py228
-rw-r--r--bitbake/lib/bb/parse/parse_py/__init__.py33
-rw-r--r--bitbake/lib/bb/persist_data.py106
-rw-r--r--bitbake/lib/bb/providers.py324
-rw-r--r--bitbake/lib/bb/runqueue.py646
-rw-r--r--bitbake/lib/bb/shell.py838
-rw-r--r--bitbake/lib/bb/taskdata.py566
-rw-r--r--bitbake/lib/bb/utils.py204
-rw-r--r--build/conf/local.conf.sample117
-rw-r--r--meta-extras/packages/cdrtools/cdrtools-native_2.01.bb23
-rw-r--r--meta-extras/packages/dhcdbd/dhcdbd_2.0.bb25
-rw-r--r--meta-extras/packages/dhcdbd/files/dbus-api-fix.patch20
-rw-r--r--meta-extras/packages/dhcdbd/files/dhcdbd28
-rw-r--r--meta-extras/packages/dhcdbd/files/dhcdbd-1.14-pkgconfig_dbus.patch26
-rw-r--r--meta-extras/packages/dhcdbd/files/no-ext-options.patch13
-rw-r--r--meta-extras/packages/dhcp/dhcp_3.0.2.bb51
-rw-r--r--meta-extras/packages/dhcp/files/default-relay12
-rw-r--r--meta-extras/packages/dhcp/files/dhcp-3.0.3-dhclient-dbus.patch84
-rw-r--r--meta-extras/packages/dhcp/files/fixincludes.patch10
-rw-r--r--meta-extras/packages/dhcp/files/init-server44
-rw-r--r--meta-extras/packages/dhcp/files/noattrmode.patch20
-rw-r--r--meta-extras/packages/dosfstools/dosfstools-native_2.10.bb27
-rw-r--r--meta-extras/packages/dosfstools/dosfstools_2.10.bb22
-rw-r--r--meta-extras/packages/dosfstools/dosfstools_2.11.bb21
-rw-r--r--meta-extras/packages/dosfstools/files/2.6.20-syscall.patch65
-rw-r--r--meta-extras/packages/dosfstools/files/alignment_hack.patch34
-rw-r--r--meta-extras/packages/dosfstools/files/dosfstools-2.10-kernel-2.6.patch74
-rw-r--r--meta-extras/packages/dosfstools/files/dosfstools-msdos_fs-types.patch30
-rw-r--r--meta-extras/packages/dosfstools/files/include-linux-types.patch17
-rw-r--r--meta-extras/packages/dosfstools/files/mkdosfs-bootcode.patch240
-rw-r--r--meta-extras/packages/dosfstools/files/mkdosfs-dir.patch634
-rw-r--r--meta-extras/packages/dosfstools/files/msdos_fat12_undefined.patch12
-rw-r--r--meta-extras/packages/evince/evince_2.19.4.bb10
-rw-r--r--meta-extras/packages/evince/evince_svn.bb14
-rw-r--r--meta-extras/packages/evince/files/no-icon-theme.diff13
-rw-r--r--meta-extras/packages/flumotion/flumotion/no-check-for-python-stuff.patch68
-rw-r--r--meta-extras/packages/flumotion/flumotion/python-path.patch25
-rw-r--r--meta-extras/packages/flumotion/flumotion_0.4.1.bb30
-rw-r--r--meta-extras/packages/images/poky-image-extras.bb9
-rw-r--r--meta-extras/packages/iproute2/iproute2-2.6.18/iproute2-2.6.15_no_strip.diff25
-rw-r--r--meta-extras/packages/iproute2/iproute2-2.6.18/new-flex-fix.patch83
-rw-r--r--meta-extras/packages/iproute2/iproute2.inc18
-rw-r--r--meta-extras/packages/iproute2/iproute2_2.6.18.bb8
-rw-r--r--meta-extras/packages/libnl/files/local-includes.patch11
-rw-r--r--meta-extras/packages/libnl/libnl_1.0-pre6.bb18
-rw-r--r--meta-extras/packages/libol/libol_0.3.18.bb14
-rw-r--r--meta-extras/packages/libxosd/files/autofoo.patch116
-rw-r--r--meta-extras/packages/libxosd/files/use-sane-default-font.patch13
-rw-r--r--meta-extras/packages/libxosd/libxosd_svn.bb24
-rw-r--r--meta-extras/packages/madplay/madplay_0.15.2b.bb12
-rw-r--r--meta-extras/packages/maemo-mapper/files/fix_segfault.patch31
-rw-r--r--meta-extras/packages/maemo-mapper/maemo-mapper-nohildon_svn.bb22
-rw-r--r--meta-extras/packages/mc/mc_4.6.0.bb32
-rw-r--r--meta-extras/packages/mtools/files/mtools-makeinfo.patch63
-rw-r--r--meta-extras/packages/mtools/mtools-native_3.9.9.bb8
-rw-r--r--meta-extras/packages/mtools/mtools_3.9.9.bb14
-rw-r--r--meta-extras/packages/nasm/nasm-native_0.98.38.bb4
-rw-r--r--meta-extras/packages/nasm/nasm_0.98.38.bb15
-rw-r--r--meta-extras/packages/networkmanager/files/99_networkmanager1
-rw-r--r--meta-extras/packages/networkmanager/files/NetworkManager28
-rw-r--r--meta-extras/packages/networkmanager/networkmanager_svn.bb64
-rw-r--r--meta-extras/packages/poppler/poppler-data_0.1.bb16
-rw-r--r--meta-extras/packages/poppler/poppler-fpu.inc6
-rw-r--r--meta-extras/packages/poppler/poppler.inc23
-rw-r--r--meta-extras/packages/poppler/poppler_0.5.4.bb2
-rw-r--r--meta-extras/packages/python/python-2.4.4-manifest.inc275
-rw-r--r--meta-extras/packages/python/python-2.4.4/autohell.patch1209
-rw-r--r--meta-extras/packages/python/python-2.4.4/bindir-libdir.patch18
-rw-r--r--meta-extras/packages/python/python-2.4.4/crosscompile.patch108
-rw-r--r--meta-extras/packages/python/python-2.4.4/fix-tkinter-detection.patch39
-rw-r--r--meta-extras/packages/python/python-2.4.4/sitebranding.patch19
-rw-r--r--meta-extras/packages/python/python-gst/python-path.patch24
-rw-r--r--meta-extras/packages/python/python-gst_0.10.7.bb25
-rw-r--r--