summaryrefslogtreecommitdiffstats
path: root/meta/conf
diff options
context:
space:
mode:
Diffstat (limited to 'meta/conf')
-rw-r--r--meta/conf/abi_version.conf7
-rw-r--r--meta/conf/bitbake.conf784
-rw-r--r--meta/conf/conf-notes.txt8
-rw-r--r--meta/conf/distro/defaultsetup.conf23
-rw-r--r--meta/conf/distro/include/as-needed.inc16
-rw-r--r--meta/conf/distro/include/default-distrovars.inc50
-rw-r--r--meta/conf/distro/include/default-providers.inc47
-rw-r--r--meta/conf/distro/include/default-versions.inc14
-rw-r--r--meta/conf/distro/include/security_flags.inc85
-rw-r--r--meta/conf/distro/include/seperatebuilddir.inc768
-rw-r--r--meta/conf/distro/include/tclibc-eglibc.inc40
-rw-r--r--meta/conf/distro/include/tclibc-uclibc.inc28
-rw-r--r--meta/conf/distro/include/tcmode-default.inc60
-rw-r--r--meta/conf/distro/include/world-broken.inc5
-rw-r--r--meta/conf/documentation.conf447
-rw-r--r--meta/conf/layer.conf33
-rw-r--r--meta/conf/licenses.conf167
-rw-r--r--meta/conf/machine-sdk/i586.conf3
-rw-r--r--meta/conf/machine-sdk/i686.conf2
-rw-r--r--meta/conf/machine-sdk/x86_64.conf1
-rw-r--r--meta/conf/machine/include/README100
-rw-r--r--meta/conf/machine/include/arm/README40
-rw-r--r--meta/conf/machine/include/arm/arch-arm.inc17
-rw-r--r--meta/conf/machine/include/arm/arch-armv4.inc33
-rw-r--r--meta/conf/machine/include/arm/arch-armv5-dsp.inc52
-rw-r--r--meta/conf/machine/include/arm/arch-armv5.inc60
-rw-r--r--meta/conf/machine/include/arm/arch-armv6.inc50
-rw-r--r--meta/conf/machine/include/arm/arch-armv7a.inc75
-rw-r--r--meta/conf/machine/include/arm/feature-arm-neon.inc3
-rw-r--r--meta/conf/machine/include/arm/feature-arm-thumb.inc25
-rw-r--r--meta/conf/machine/include/arm/feature-arm-vfp.inc9
-rw-r--r--meta/conf/machine/include/mips/README36
-rw-r--r--meta/conf/machine/include/mips/arch-mips.inc102
-rw-r--r--meta/conf/machine/include/powerpc/README17
-rw-r--r--meta/conf/machine/include/powerpc/arch-powerpc.inc34
-rw-r--r--meta/conf/machine/include/powerpc/arch-powerpc64.inc14
-rw-r--r--meta/conf/machine/include/qemu.inc29
-rw-r--r--meta/conf/machine/include/sh/README11
-rw-r--r--meta/conf/machine/include/sh/arch-sh.inc9
-rw-r--r--meta/conf/machine/include/soc-family.inc2
-rw-r--r--meta/conf/machine/include/tune-arm1136jf-s.inc11
-rw-r--r--meta/conf/machine/include/tune-arm920t.inc11
-rw-r--r--meta/conf/machine/include/tune-arm926ejs.inc11
-rw-r--r--meta/conf/machine/include/tune-arm9tdmi.inc11
-rw-r--r--meta/conf/machine/include/tune-atom.inc2
-rw-r--r--meta/conf/machine/include/tune-c3.inc12
-rw-r--r--meta/conf/machine/include/tune-core2.inc35
-rw-r--r--meta/conf/machine/include/tune-corei7.inc35
-rw-r--r--meta/conf/machine/include/tune-cortexa15.inc36
-rw-r--r--meta/conf/machine/include/tune-cortexa5.inc36
-rw-r--r--meta/conf/machine/include/tune-cortexa7.inc42
-rw-r--r--meta/conf/machine/include/tune-cortexa8.inc36
-rw-r--r--meta/conf/machine/include/tune-cortexa9.inc36
-rw-r--r--meta/conf/machine/include/tune-cortexm1.inc11
-rw-r--r--meta/conf/machine/include/tune-cortexm3.inc14
-rw-r--r--meta/conf/machine/include/tune-cortexr4.inc14
-rw-r--r--meta/conf/machine/include/tune-ep9312.inc12
-rw-r--r--meta/conf/machine/include/tune-i586.inc14
-rw-r--r--meta/conf/machine/include/tune-iwmmxt.inc14
-rw-r--r--meta/conf/machine/include/tune-mips32.inc25
-rw-r--r--meta/conf/machine/include/tune-mips64.inc3
-rw-r--r--meta/conf/machine/include/tune-ppc476.inc14
-rw-r--r--meta/conf/machine/include/tune-ppc603e.inc14
-rw-r--r--meta/conf/machine/include/tune-ppc7400.inc14
-rw-r--r--meta/conf/machine/include/tune-ppce300c2.inc11
-rw-r--r--meta/conf/machine/include/tune-ppce300c3.inc23
-rw-r--r--meta/conf/machine/include/tune-ppce500.inc20
-rw-r--r--meta/conf/machine/include/tune-ppce500mc.inc14
-rw-r--r--meta/conf/machine/include/tune-ppce500v2.inc20
-rw-r--r--meta/conf/machine/include/tune-ppce5500.inc20
-rw-r--r--meta/conf/machine/include/tune-ppce6500.inc21
-rw-r--r--meta/conf/machine/include/tune-sh3.inc17
-rw-r--r--meta/conf/machine/include/tune-sh4.inc34
-rw-r--r--meta/conf/machine/include/tune-strongarm1100.inc11
-rw-r--r--meta/conf/machine/include/tune-supersparc.inc4
-rw-r--r--meta/conf/machine/include/tune-xscale.inc16
-rw-r--r--meta/conf/machine/include/x86-base.inc52
-rw-r--r--meta/conf/machine/include/x86/README24
-rw-r--r--meta/conf/machine/include/x86/arch-x86.inc51
-rw-r--r--meta/conf/machine/qemuarm.conf12
-rw-r--r--meta/conf/machine/qemumips.conf13
-rw-r--r--meta/conf/machine/qemumips64.conf13
-rw-r--r--meta/conf/machine/qemuppc.conf11
-rw-r--r--meta/conf/machine/qemux86-64.conf27
-rw-r--r--meta/conf/machine/qemux86.conf26
-rw-r--r--meta/conf/migrate_localcount.conf1
-rw-r--r--meta/conf/multilib.conf19
-rw-r--r--meta/conf/prexport.conf1
-rw-r--r--meta/conf/primport.conf1
-rw-r--r--meta/conf/sanity.conf16
-rw-r--r--meta/conf/swabber/Ubuntu-10.04.1-64/blacklist6
-rw-r--r--meta/conf/swabber/Ubuntu-10.04.1-64/filters7
-rw-r--r--meta/conf/swabber/Ubuntu-10.04.1-64/whitelist23
-rw-r--r--meta/conf/swabber/generic/blacklist2
-rw-r--r--meta/conf/swabber/generic/filters10
-rw-r--r--meta/conf/swabber/generic/whitelist15
96 files changed, 4310 insertions, 0 deletions
diff --git a/meta/conf/abi_version.conf b/meta/conf/abi_version.conf
new file mode 100644
index 0000000..e8cf9a3
--- /dev/null
+++ b/meta/conf/abi_version.conf
@@ -0,0 +1,7 @@
1#
2# OELAYOUT_ABI allows us to notify users when the format of TMPDIR changes in
3# an incompatible way. Such changes should usually be detailed in the commit
4# that breaks the format and have been previously discussed on the mailing list
5# with general agreement from the core team.
6#
7OELAYOUT_ABI = "9"
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
new file mode 100644
index 0000000..b3786a7
--- /dev/null
+++ b/meta/conf/bitbake.conf
@@ -0,0 +1,784 @@
1##################################################################
2# Standard target filesystem paths.
3##################################################################
4#
5# If changing these values, beware that native/cross/nativesdk bbclass
6# files may also need changes to keep in sync.
7#
8
9# Used by multilib code to change the library paths
10baselib = "${BASELIB}"
11baselib[vardepvalue] = "${baselib}"
12BASELIB = "lib"
13BASELIB_powerpc64 = "lib64"
14
15# Path prefixes
16export base_prefix = ""
17export prefix = "/usr"
18export exec_prefix = "/usr"
19
20# Base paths
21export base_bindir = "${base_prefix}/bin"
22export base_sbindir = "${base_prefix}/sbin"
23export base_libdir = "${base_prefix}/${baselib}"
24export nonarch_base_libdir = "${base_prefix}/lib"
25
26# Architecture independent paths
27export datadir = "${prefix}/share"
28export sysconfdir = "${base_prefix}/etc"
29export servicedir = "${base_prefix}/srv"
30export sharedstatedir = "${base_prefix}/com"
31export localstatedir = "${base_prefix}/var"
32export infodir = "${datadir}/info"
33export mandir = "${datadir}/man"
34export docdir = "${datadir}/doc"
35export systemd_unitdir = "/lib/systemd"
36
37# Architecture dependent paths
38export bindir = "${exec_prefix}/bin"
39export sbindir = "${exec_prefix}/sbin"
40export libdir = "${exec_prefix}/${baselib}"
41export libexecdir = "${libdir}/${BPN}"
42export includedir = "${exec_prefix}/include"
43export oldincludedir = "${exec_prefix}/include"
44localedir = "${libdir}/locale"
45
46# Linkage between native/cross/nativesdk layouts
47base_bindir_native = "/bin"
48base_sbindir_native = "/sbin"
49sysconfdir_native = "/etc"
50prefix_native = "/usr"
51bindir_native = "${prefix_native}/bin"
52sbindir_native = "${prefix_native}/sbin"
53includedir_native = "${prefix_native}/include"
54libdir_native = "${prefix_native}/lib"
55libexecdir_native = "${libdir_native}/${BPN}"
56base_libdir_native = "/lib"
57datadir_native = "${prefix_native}/share"
58bindir_cross = "/bin"
59bindir_crossscripts = "${bindir}/crossscripts"
60prefix_nativesdk = "/usr"
61bindir_nativesdk = "${prefix_nativesdk}/bin"
62includedir_nativesdk = "${prefix_nativesdk}/include"
63libdir_nativesdk = "${prefix_nativesdk}/lib"
64base_libdir_nativesdk = "/lib"
65localstatedir_nativesdk = "/var"
66
67#
68# Cross recipes need to know about the target layout
69# := is used carefully here
70#
71target_datadir := "${datadir}"
72# Used to find env/perl/python
73USRBINPATH = "${bindir}"
74USRBINPATH_class-native = "/usr/bin"
75USRBINPATH_class-nativesdk = "/usr/bin"
76
77# Root home directory
78ROOT_HOME ??= "/home/root"
79
80##################################################################
81# Architecture-dependent build variables.
82##################################################################
83
84BUILD_ARCH = "${@os.uname()[4]}"
85BUILD_OS = "${@os.uname()[0].lower()}"
86BUILD_VENDOR = ""
87BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}"
88BUILD_PREFIX = ""
89BUILD_CC_ARCH = ""
90BUILD_LD_ARCH = ""
91BUILD_AS_ARCH = ""
92BUILD_EXEEXT = ""
93
94HOST_ARCH = "${TARGET_ARCH}"
95HOST_OS = "${TARGET_OS}"
96HOST_VENDOR = "${TARGET_VENDOR}"
97HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
98HOST_PREFIX = "${TARGET_PREFIX}"
99HOST_CC_ARCH = "${TARGET_CC_ARCH}"
100HOST_LD_ARCH = "${TARGET_LD_ARCH}"
101HOST_AS_ARCH = "${TARGET_AS_ARCH}"
102HOST_EXEEXT = ""
103
104TUNE_ARCH ??= "INVALID"
105TUNE_CCARGS ??= ""
106TUNE_CCARGS[vardepvalue] = "${TUNE_CCARGS}"
107TUNE_LDARGS ??= ""
108TUNE_ASARGS ??= ""
109TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}"
110LIBCEXTENSION ??= ""
111ABIEXTENSION ??= ""
112USE_NLS ??= "yes"
113SDKUSE_NLS ??= "yes"
114
115TARGET_ARCH = "${TUNE_ARCH}"
116TARGET_OS = "linux${LIBCEXTENSION}${ABIEXTENSION}"
117TARGET_VENDOR = "-oe"
118TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + d.getVar('TARGET_OS', True), ''][d.getVar('TARGET_OS', True) == ('' or 'custom')]}"
119TARGET_PREFIX = "${TARGET_SYS}-"
120TARGET_CC_ARCH = "${TUNE_CCARGS}"
121TARGET_LD_ARCH = "${TUNE_LDARGS}"
122TARGET_AS_ARCH = "${TUNE_ASARGS}"
123
124SDK_ARCH = "${BUILD_ARCH}"
125SDK_OS = "${BUILD_OS}"
126SDK_VENDOR = "-oesdk"
127SDK_SYS = "${SDK_ARCH}${SDK_VENDOR}${@['-' + d.getVar('SDK_OS', True), ''][d.getVar('SDK_OS', True) == ('' or 'custom')]}"
128SDK_PREFIX = "${SDK_SYS}-"
129SDK_CC_ARCH = "${BUILD_CC_ARCH}"
130SDKPKGSUFFIX = "nativesdk"
131SDK_PACKAGE_ARCHS = "all any noarch ${SDK_ARCH}-${SDKPKGSUFFIX}"
132SDK_LD_ARCH = "${BUILD_LD_ARCH}"
133SDK_AS_ARCH = "${BUILD_AS_ARCH}"
134
135PACKAGE_ARCH = "${TUNE_PKGARCH}"
136MACHINE_ARCH = "${@[d.getVar('TUNE_PKGARCH', True), d.getVar('MACHINE', True)][bool(d.getVar('MACHINE', True))].replace('-', '_')}"
137PACKAGE_EXTRA_ARCHS ??= "${PACKAGE_EXTRA_ARCHS_tune-${DEFAULTTUNE}}"
138PACKAGE_ARCHS = "all any noarch ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}"
139# MACHINE_ARCH shouldn't be included here as a variable dependency
140# since machine specific packages are handled using multimachine
141PACKAGE_ARCHS[vardepsexclude] = "MACHINE_ARCH"
142
143MULTIMACH_TARGET_SYS = "${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
144MULTIMACH_HOST_SYS = "${PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}"
145
146# select proper CPU to get binary locales generated
147QEMU_OPTIONS = ""
148QEMU_OPTIONS_iwmmxt = "-cpu pxa270-c5"
149QEMU_OPTIONS_armv6 = "-cpu arm1136"
150QEMU_OPTIONS_armv7a = "-cpu cortex-a8"
151QEMU_OPTIONS_e500v2 = "-cpu e500v2"
152QEMU_OPTIONS_e500mc = "-cpu e500mc"
153QEMU_OPTIONS_e5500 = "-cpu e5500"
154QEMU_OPTIONS_e5500-64b = "-cpu e5500"
155QEMU_OPTIONS_e6500 = "-cpu e6500"
156QEMU_OPTIONS_e6500-64b = "-cpu e6500"
157
158##################################################################
159# Date/time variables.
160##################################################################
161
162DATE := "${@time.strftime('%Y%m%d',time.gmtime())}"
163TIME := "${@time.strftime('%H%M%S',time.gmtime())}"
164DATETIME = "${DATE}${TIME}"
165
166##################################################################
167# Openembedded Software Prerequisites.
168##################################################################
169
170# python-native should be here but python relies on building
171# its own in staging
172ASSUME_PROVIDED = "\
173 bzip2-native \
174 chrpath-native \
175 git-native \
176 grep-native \
177 diffstat-native \
178 patch-native \
179 perl-native-runtime \
180 python-native-runtime \
181 tar-native \
182 virtual/libintl-native \
183 "
184# gzip-native should be listed above?
185
186##################################################################
187# Package default variables.
188##################################################################
189
190PN = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[0] or 'defaultpkgname'}"
191PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[1] or '1.0'}"
192PR = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[2] or 'r0'}"
193PRINC ?= "0"
194PF = "${PN}-${EXTENDPE}${PV}-${PR}"
195EXTENDPE = "${@['','${PE\x7d_'][int(d.getVar('PE',1) or 0) > 0]}"
196P = "${PN}-${PV}"
197
198EXTENDPRAUTO = "${@['.${PRAUTO\x7d',''][d.getVar('PRAUTO',1) is None]}"
199PRAUTOINX = "${PF}"
200
201PKGV ?= "${PV}"
202PKGR ?= "${PR}${EXTENDPRAUTO}"
203PKGE ?= "${@['','${PE\x7d'][int(d.getVar('PE',1) or 0) > 0]}"
204EXTENDPKGEVER = "${@['','${PKGE\x7d:'][d.getVar('PKGE',1).strip() != '']}"
205EXTENDPKGV ?= "${EXTENDPKGEVER}${PKGV}-${PKGR}"
206
207# Base package name
208# Automatically derives "foo" from "foo-native", "foo-cross" or "foo-initial"
209# otherwise it is the same as PN and P
210SPECIAL_PKGSUFFIX = "-native -cross -initial -intermediate -crosssdk -cross-canadian"
211BPN = "${@base_prune_suffix(d.getVar('PN', True), d.getVar('SPECIAL_PKGSUFFIX', True).split(), d)}"
212BP = "${BPN}-${PV}"
213
214# Package info.
215
216SECTION = "base"
217PRIORITY = "optional"
218SUMMARY ?= "${PN} version ${PV}-${PR}"
219DESCRIPTION ?= "${SUMMARY}."
220
221# The following two are commented out because they result in a recursive
222# definition of the variable in some corner cases. These are left in
223# to illustrate the intended behavior.
224#SUMMARY_${PN} ?= "${SUMMARY}"
225#DESCRIPTION_${PN} ?= "${DESCRIPTION}"
226
227SUMMARY_${PN}-dbg ?= "${SUMMARY} - Debugging files"
228DESCRIPTION_${PN}-dbg ?= "${DESCRIPTION} \
229This package contains ELF symbols and related sources for debugging purposes."
230
231SUMMARY_${PN}-dev ?= "${SUMMARY} - Development files"
232DESCRIPTION_${PN}-dev ?= "${DESCRIPTION} \
233This package contains symbolic links, header files, and \
234related items necessary for software development."
235
236SUMMARY_${PN}-staticdev ?= "${SUMMARY} - Development files (Static Libraries)"
237DESCRIPTION_${PN}-staticdev?= "${DESCRIPTION} \
238This package contains static libraries for software development."
239
240SUMMARY_${PN}-doc ?= "${SUMMARY} - Documentation files"
241DESCRIPTION_${PN}-doc ?= "${DESCRIPTION} \
242This package contains documentation."
243
244LICENSE = "INVALID"
245MAINTAINER = "OE-Core Developers <openembedded-core@lists.openembedded.org>"
246HOMEPAGE = ""
247
248# Package dependencies and provides.
249
250# Ensure that -dev packages recommend the corresponding -dev packages of their
251# deps, and the same for -dbg.
252DEPCHAIN_PRE = ""
253DEPCHAIN_POST = "-dev -dbg"
254
255DEPENDS = ""
256RDEPENDS = ""
257PROVIDES = ""
258PROVIDES_prepend = "${PN} "
259RPROVIDES = ""
260
261MULTI_PROVIDER_WHITELIST = "virtual/libintl virtual/libintl-native virtual/nativesdk-libintl virtual/xserver virtual/update-alternatives-native virtual/update-alternatives"
262
263SOLIBS = ".so.*"
264SOLIBS_darwin = ".dylib"
265
266SOLIBSDEV = ".so"
267# Due to the ordering of PACKAGES and the naming of the dev symlinks on darwin,
268# we can't make the symlinks end up in the -dev packages easily at this point. This hack
269# at least means builds aren't completely broken and symlinks don't take up much space.
270SOLIBSDEV_darwin = ".dylibbroken"
271
272PACKAGE_BEFORE_PN ?= ""
273PACKAGES = "${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}"
274PACKAGES_DYNAMIC = "^${PN}-locale-.*"
275FILES = ""
276
277FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
278 ${sysconfdir} ${sharedstatedir} ${localstatedir} \
279 ${base_bindir}/* ${base_sbindir}/* \
280 ${base_libdir}/*${SOLIBS} \
281 ${base_prefix}/lib/udev/rules.d ${prefix}/lib/udev/rules.d \
282 ${datadir}/${BPN} ${libdir}/${BPN}/* \
283 ${datadir}/pixmaps ${datadir}/applications \
284 ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
285 ${libdir}/bonobo/servers"
286
287FILES_${PN}-bin = "${bindir}/* ${sbindir}/*"
288
289FILES_${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \
290 ${datadir}/gnome/help"
291SECTION_${PN}-doc = "doc"
292
293FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}"
294FILES_${PN}-dev = "${includedir} ${FILES_SOLIBSDEV} ${libdir}/*.la \
295 ${libdir}/*.o ${libdir}/pkgconfig ${datadir}/pkgconfig \
296 ${datadir}/aclocal ${base_libdir}/*.o \
297 ${libdir}/${BPN}/*.la ${base_libdir}/*.la"
298SECTION_${PN}-dev = "devel"
299ALLOW_EMPTY_${PN}-dev = "1"
300RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPKGV})"
301
302FILES_${PN}-staticdev = "${libdir}/*.a ${base_libdir}/*.a ${libdir}/${BPN}/*.a"
303SECTION_${PN}-staticdev = "devel"
304RDEPENDS_${PN}-staticdev = "${PN}-dev (= ${EXTENDPKGV})"
305
306DOTDEBUG-dbg = "${bindir}/.debug ${sbindir}/.debug ${libexecdir}/.debug ${libdir}/.debug \
307 ${base_bindir}/.debug ${base_sbindir}/.debug ${base_libdir}/.debug ${libdir}/${BPN}/.debug \
308 ${libdir}/matchbox-panel/.debug /usr/src/debug"
309
310DEBUGFILEDIRECTORY-dbg = "/usr/lib/debug /usr/src/debug"
311
312FILES_${PN}-dbg = "${@d.getVar(['DOTDEBUG-dbg', 'DEBUGFILEDIRECTORY-dbg'][d.getVar('PACKAGE_DEBUG_SPLIT_STYLE', True) == 'debug-file-directory'], True)}"
313
314SECTION_${PN}-dbg = "devel"
315ALLOW_EMPTY_${PN}-dbg = "1"
316
317FILES_${PN}-locale = "${datadir}/locale"
318
319# File manifest
320
321FILE_DIRNAME = "${@os.path.dirname(d.getVar('FILE'))}"
322# FILESPATH is set in base.bbclass
323#FILESPATH = "${FILE_DIRNAME}/${PF}:${FILE_DIRNAME}/${P}:${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/${BP}:${FILE_DIRNAME}/${BPN}:${FILE_DIRNAME}/files:${FILE_DIRNAME}"
324
325##################################################################
326# General work and output directories for the build system.
327##################################################################
328
329TMPDIR ?= "${TOPDIR}/tmp"
330CACHE = "${TMPDIR}/cache${@['', '/' + str(d.getVar('MACHINE', True))][bool(d.getVar('MACHINE', True))]}${@['', '/' + str(d.getVar('SDKMACHINE', True))][bool(d.getVar('SDKMACHINE', True))]}"
331# The persistent cache should be shared by all builds
332PERSISTENT_DIR = "${TOPDIR}/cache"
333LOG_DIR = "${TMPDIR}/log"
334CO_DIR = "${DL_DIR}"
335CVSDIR = "${CO_DIR}/cvs"
336SVNDIR = "${CO_DIR}/svn"
337GITDIR = "${CO_DIR}/git2"
338BZRDIR = "${CO_DIR}/bzr"
339HGDIR = "${CO_DIR}/hg"
340
341STAMPS_DIR ?= "${TMPDIR}/stamps"
342STAMP = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}"
343STAMPCLEAN = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/*-*"
344BASE_WORKDIR ?= "${TMPDIR}/work"
345WORKDIR = "${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}"
346T = "${WORKDIR}/temp"
347D = "${WORKDIR}/image"
348S = "${WORKDIR}/${BP}"
349B = "${S}"
350
351STAGING_DIR = "${TMPDIR}/sysroots"
352
353STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}"
354STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}"
355STAGING_BINDIR_CROSS = "${STAGING_BINDIR}/crossscripts"
356STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
357STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}"
358STAGING_LIBEXECDIR_NATIVE = "${STAGING_DIR_NATIVE}${libexecdir_native}"
359STAGING_BASE_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${base_libdir_native}"
360STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}"
361STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${sysconfdir_native}"
362STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${datadir_native}"
363
364STAGING_DIR_HOST = "${STAGING_DIR}/${MACHINE}"
365STAGING_BINDIR = "${STAGING_DIR_HOST}${bindir}"
366STAGING_LIBDIR = "${STAGING_DIR_HOST}${libdir}"
367STAGING_LIBEXECDIR = "${STAGING_DIR_HOST}${libexecdir}"
368STAGING_BASELIBDIR = "${STAGING_DIR_HOST}${base_libdir}"
369STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}"
370STAGING_DATADIR = "${STAGING_DIR_HOST}${datadir}"
371STAGING_EXECPREFIXDIR = "${STAGING_DIR_HOST}${exec_prefix}"
372STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader"
373STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware"
374
375STAGING_DIR_TARGET = "${STAGING_DIR}/${MACHINE}"
376STAGING_DIR_TCBOOTSTRAP = "${STAGING_DIR_TARGET}-tcbootstrap"
377
378# Setting DEPLOY_DIR outside of TMPDIR is helpful, when you are using
379# packaged staging and/or multimachine.
380DEPLOY_DIR ?= "${TMPDIR}/deploy"
381DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar"
382DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk"
383DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm"
384DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb"
385DEPLOY_DIR_IMAGE ?= "${DEPLOY_DIR}/images/${MACHINE}"
386DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools"
387
388PKGDATA_DIR = "${STAGING_DIR_HOST}/pkgdata"
389
390##################################################################
391# SDK variables.
392##################################################################
393
394SDK_NAME_PREFIX ?= "oecore"
395SDK_NAME = "${SDK_NAME_PREFIX}-${SDK_ARCH}-${TUNE_PKGARCH}"
396SDKPATH = "/usr/local/${SDK_NAME_PREFIX}-${SDK_ARCH}"
397SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
398
399##################################################################
400# Kernel info.
401##################################################################
402
403OLDEST_KERNEL = "2.6.16"
404STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel"
405
406##################################################################
407# Specific image creation and rootfs population info.
408##################################################################
409
410IMAGE_ROOTFS = "${WORKDIR}/rootfs"
411IMAGE_BASENAME = "${PN}"
412IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}"
413IMAGE_NAME[vardepsexclude] += "DATETIME"
414IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}"
415
416# This option allows for a percentage overage of the actual image size rather than a
417# fixed extra space, this is space needed for initial startup and basic operations.
418IMAGE_OVERHEAD_FACTOR ?= "1.3"
419# This option allows for adding additional space in K above and beyond what the
420# IMAGE_OVERHEAD_FACTOR might add. This space is for additional packages, user data, ...
421# To set a fixed size then overriding IMAGE_ROOTFS_SIZE with the max size one wants
422# should do the trick
423IMAGE_ROOTFS_EXTRA_SPACE ?= "0"
424
425EXTRA_IMAGEDEPENDS = ""
426
427##################################################################
428# Toolchain info.
429##################################################################
430
431PATH_prepend = "${COREBASE}/scripts:${STAGING_BINDIR_TOOLCHAIN}:${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}${base_bindir_native}:"
432export PATH
433
434##################################################################
435# Build utility info.
436##################################################################
437
438CCACHE ??= ""
439# Disable ccache explicitly if CCACHE is null since gcc may be a symlink
440# of ccache some distributions (e.g., Fedora 17).
441export CCACHE_DISABLE ??= "${@[0,1][d.getVar('CCACHE', True) == '']}"
442# Assign CCACHE_DIR a default value to fix a bug of ccache 3.1.7,
443# since it would always create CCACHE_DIR/.ccache even if
444# CCACHE_DISABLE = 1.
445export CCACHE_DIR ??= "${@os.getenv('HOME')}"
446
447TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TARGET}"
448
449export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
450export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
451export FC = "${CCACHE}${HOST_PREFIX}gfortran ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
452export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS} ${HOST_CC_ARCH}"
453export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}"
454export CCLD = "${CC}"
455export AR = "${HOST_PREFIX}ar"
456export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
457export RANLIB = "${HOST_PREFIX}ranlib"
458export STRIP = "${HOST_PREFIX}strip"
459export OBJCOPY = "${HOST_PREFIX}objcopy"
460export OBJDUMP = "${HOST_PREFIX}objdump"
461export STRINGS = "${HOST_PREFIX}strings"
462export NM = "${HOST_PREFIX}nm"
463PYTHON = "${@sys.executable}"
464
465export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
466export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
467export BUILD_FC = "${CCACHE}${BUILD_PREFIX}gfortran ${BUILD_CC_ARCH}"
468export BUILD_CPP = "${BUILD_PREFIX}cpp ${BUILD_CC_ARCH}"
469export BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}"
470export BUILD_CCLD = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
471export BUILD_AR = "${BUILD_PREFIX}ar"
472export BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}"
473export BUILD_RANLIB = "${BUILD_PREFIX}ranlib"
474export BUILD_STRIP = "${BUILD_PREFIX}strip"
475export BUILD_NM = "${BUILD_PREFIX}nm"
476
477export MAKE = "make"
478EXTRA_OEMAKE = "-e MAKEFLAGS="
479EXTRA_OECONF = ""
480export LC_ALL = "C"
481
482##################################################################
483# Patch handling.
484##################################################################
485PATCHTOOL = 'quilt'
486PATCHRESOLVE = 'user'
487
488##################################################################
489# Build flags and options.
490##################################################################
491
492export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}"
493BUILDSDK_CPPFLAGS = "-isystem${STAGING_INCDIR}"
494export CPPFLAGS = "${TARGET_CPPFLAGS}"
495export TARGET_CPPFLAGS = ""
496#export TARGET_CPPFLAGS = "-isystem${STAGING_DIR_TARGET}${includedir}"
497
498export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}"
499BUILDSDK_CFLAGS = "${BUILDSDK_CPPFLAGS} ${BUILD_OPTIMIZATION}"
500export CFLAGS = "${TARGET_CFLAGS}"
501export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}"
502
503export BUILD_CXXFLAGS = "${BUILD_CFLAGS}"
504export CXXFLAGS = "${TARGET_CXXFLAGS}"
505export TARGET_CXXFLAGS = "${TARGET_CFLAGS}"
506
507export BUILD_LDFLAGS = "-L${STAGING_LIBDIR_NATIVE} \
508 -L${STAGING_BASE_LIBDIR_NATIVE} \
509 -Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} \
510 -Wl,-rpath-link,${STAGING_BASE_LIBDIR_NATIVE} \
511 -Wl,-rpath,${STAGING_LIBDIR_NATIVE} \
512 -Wl,-rpath,${STAGING_BASE_LIBDIR_NATIVE} \
513 -Wl,-O1"
514
515BUILDSDK_LDFLAGS = "-L${STAGING_LIBDIR} \
516 -Wl,-rpath-link,${STAGING_LIBDIR} \
517 -Wl,-rpath,${libdir} -Wl,-O1 \
518 -L${STAGING_DIR_HOST}${base_libdir} \
519 -Wl,-rpath-link,${STAGING_DIR_HOST}${base_libdir} \
520 -Wl,-rpath,${base_libdir} -Wl,-O1"
521
522LINKER_HASH_STYLE ??= "gnu"
523# mips does not support GNU hash style therefore we override
524LINKER_HASH_STYLE_mips = "sysv"
525LINKER_HASH_STYLE_mipsel = "sysv"
526LINKER_HASH_STYLE_mips64 = "sysv"
527LINKER_HASH_STYLE_mips64el = "sysv"
528TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_STYLE', True) != 'gnu']}"
529
530export LDFLAGS = "${TARGET_LDFLAGS}"
531export TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE}"
532#export TARGET_LDFLAGS = "-L${STAGING_DIR_TARGET}${libdir} \
533# -Wl,-rpath-link,${STAGING_DIR_TARGET}${libdir} \
534# -Wl,-O1"
535
536# Which flags to leave by strip-flags() in bin/build/oebuild.sh ?
537ALLOWED_FLAGS = "-O -mcpu -march -pipe"
538
539# Pass parallel make options to the compile task
540EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} "
541PARALLEL_MAKEINST ??= "${PARALLEL_MAKE}"
542# Pass parallel make options to the install task
543EXTRA_OEMAKE_prepend_task-install = "${PARALLEL_MAKEINST} "
544
545##################################################################
546# Optimization flags.
547##################################################################
548DEBUG_FLAGS ?= "-g -feliminate-unused-debug-types"
549# Disabled until the option works properly -feliminate-dwarf2-dups
550FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}"
551DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe"
552SELECTED_OPTIMIZATION = "${@d.getVar(['FULL_OPTIMIZATION', 'DEBUG_OPTIMIZATION'][d.getVar('DEBUG_BUILD', True) == '1'], True)}"
553SELECTED_OPTIMIZATION[vardeps] += "FULL_OPTIMIZATION DEBUG_OPTIMIZATION"
554BUILD_OPTIMIZATION = "-O2 -pipe"
555
556##################################################################
557# Download locations and utilities.
558##################################################################
559
560APACHE_MIRROR = "http://www.apache.org/dist"
561DEBIAN_MIRROR = "ftp://ftp.debian.org/debian/pool"
562GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles"
563GNOME_GIT = "git://git.gnome.org"
564GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources"
565GNU_MIRROR = "ftp://ftp.gnu.org/gnu"
566GPE_MIRROR = "http://gpe.linuxtogo.org/download/source"
567KERNELORG_MIRROR = "http://kernel.org/pub"
568SOURCEFORGE_MIRROR = "http://downloads.sourceforge.net"
569XLIBS_MIRROR = "http://xlibs.freedesktop.org/release"
570XORG_MIRROR = "http://xorg.freedesktop.org/releases"
571
572# You can use the mirror of your country to get faster downloads by putting
573# export DEBIAN_MIRROR = "ftp://ftp.de.debian.org/debian/pool"
574# into your local.conf
575
576FETCHCMD_svn = "/usr/bin/env svn --non-interactive --trust-server-cert"
577FETCHCMD_cvs = "/usr/bin/env cvs"
578FETCHCMD_wget = "/usr/bin/env wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate"
579FETCHCMD_bzr = "/usr/bin/env bzr"
580FETCHCMD_hg = "/usr/bin/env hg"
581
582SRCDATE = "${DATE}"
583SRCREV ??= "INVALID"
584AUTOREV = "${@bb.fetch2.get_autorev(d)}"
585SRCPV = "${@bb.fetch2.get_srcrev(d)}"
586SRCPV[vardepvalue] = "${SRCPV}"
587
588SRC_URI = ""
589
590# Use pseudo as the fakeroot implementation
591PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/"
592PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}"
593export PSEUDO_DISABLED = "1"
594#export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}"
595#export PSEUDO_BINDIR = "${STAGING_DIR_NATIVE}${bindir_native}"
596#export PSEUDO_LIBDIR = "${STAGING_DIR_NATIVE}$PSEUDOBINDIR/../lib/pseudo/lib
597FAKEROOTBASEENV = "PSEUDO_BINDIR=${STAGING_BINDIR_NATIVE} PSEUDO_LIBDIR=${STAGING_BINDIR_NATIVE}/../lib/pseudo/lib PSEUDO_PREFIX=${STAGING_BINDIR_NATIVE}/../../ PSEUDO_DISABLED=1"
598FAKEROOTCMD = "${STAGING_BINDIR_NATIVE}/pseudo"
599FAKEROOTENV = "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0"
600FAKEROOTNOENV = "PSEUDO_UNLOAD=1"
601FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}"
602PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native"
603
604##################################################################
605# Miscellaneous utilities.
606##################################################################
607
608MKTEMPDIRCMD = "mktemp -d -q ${TMPBASE}"
609MKTEMPCMD = "mktemp -q ${TMPBASE}"
610
611# GNU patch tries to be intellgent about checking out read-only files from
612# a RCS, which freaks out those special folks with active Perforce clients
613# the following makes patch ignore RCS:
614
615export PATCH_GET="0"
616
617##################################################################
618# Not sure about the rest of this yet.
619##################################################################
620
621# Pre-build configuration output
622BUILDCFG_HEADER = "Build Configuration:"
623BUILDCFG_VARS = "BB_VERSION BUILD_SYS NATIVELSBSTRING TARGET_SYS MACHINE DISTRO DISTRO_VERSION TUNE_FEATURES TARGET_FPU"
624BUILDCFG_VARS[type] = "list"
625BUILDCFG_NEEDEDVARS = "TARGET_ARCH TARGET_OS"
626BUILDCFG_NEEDEDVARS[type] = "list"
627
628# Other
629
630export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${libdir}/pkgconfig"
631export PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig"
632export PKG_CONFIG_LIBDIR = "${PKG_CONFIG_DIR}"
633export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
634export PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
635
636# library package naming
637AUTO_LIBNAME_PKGS = "${PACKAGES}"
638
639###
640### Config file processing
641###
642
643# An empty distro leads to :: entries in OVERRIDES and FILEOVERRIDES which
644# is a bad idea. Setting a dummy value is better than a ton of anonymous python.
645DISTRO ??= "nodistro"
646
647# Overrides are processed left to right, so the ones that are named later take precedence.
648# You generally want them to go from least to most specific.
649#
650# This means that an envionment variable named '<foo>_arm' overrides an
651# environment variable '<foo>' (when ${TARGET_ARCH} is arm).
652# An environment variable '<foo>_qemuarm' overrides '<foo>' and overrides
653# '<foo>_arm' when ${MACHINE} is 'qemuarm'.
654# If you use combination ie '<foo>_qemuarm_arm', then '<foo>_qemuarm_arm' will override
655# '<foo>_qemuarm' and then '<foo>' will be overriden with that value from '<foo>_qemuarm'.
656# And finally '<foo>_forcevariable' overrides any standard variable, with the highest priority.
657#
658# This works for functions as well, they are really just environment variables.
659# Default OVERRIDES to make compilation fail fast in case of build system misconfiguration.
660OVERRIDES = "${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable"
661OVERRIDES[vardepsexclude] = "MACHINEOVERRIDES"
662CLASSOVERRIDE ?= "class-target"
663DISTROOVERRIDES ?= "${@d.getVar('DISTRO', True) or ''}"
664MACHINEOVERRIDES ?= "${MACHINE}"
665MACHINEOVERRIDES[vardepsexclude] = "MACHINE"
666
667FILESOVERRIDES = "${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}"
668
669##################################################################
670# Include the rest of the config files.
671##################################################################
672
673require conf/abi_version.conf
674include conf/site.conf
675include conf/auto.conf
676include conf/local.conf
677include conf/build/${BUILD_SYS}.conf
678include conf/target/${TARGET_SYS}.conf
679include conf/machine/${MACHINE}.conf
680include conf/machine-sdk/${SDKMACHINE}.conf
681include conf/distro/${DISTRO}.conf
682include conf/distro/defaultsetup.conf
683include conf/documentation.conf
684include conf/licenses.conf
685require conf/sanity.conf
686
687##################################################################
688# Weak variables (usually to retain backwards compatibility)
689##################################################################
690
691DL_DIR ?= "${TOPDIR}/downloads"
692SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
693IMAGE_FSTYPES ?= "tar.gz"
694INITRAMFS_FSTYPES ?= "cpio.gz"
695DEFAULT_TASK_PROVIDER ?= "packagegroup-base"
696MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}"
697IMAGE_ROOTFS_SIZE ?= "65536"
698
699# Forcefully set CACHE now so future changes to things like
700# MACHINE don't change the path to the cache
701CACHE := "${CACHE}"
702
703##################################################################
704# Magic Cookie for SANITY CHECK
705##################################################################
706OES_BITBAKE_CONF = "1"
707
708##################################################################
709# Machine properties and packagegroup-base stuff
710##################################################################
711
712MACHINE_FEATURES ?= ""
713DISTRO_FEATURES ?= ""
714
715DISTRO_EXTRA_RDEPENDS ?= ""
716DISTRO_EXTRA_RRECOMMENDS ?= ""
717MACHINE_EXTRA_RDEPENDS ?= ""
718MACHINE_EXTRA_RRECOMMENDS ?= ""
719MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= ""
720MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= ""
721
722EXTRA_IMAGE_FEATURES ??= ""
723IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}"
724
725DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit"
726MACHINE_FEATURES_BACKFILL = "rtc"
727
728COMBINED_FEATURES = "\
729 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "alsa", d)} \
730 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "bluetooth", d)} \
731 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "ext2", d)} \
732 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "vfat", d)} \
733 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "irda", d)} \
734 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pcmcia", d)} \
735 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pci", d)} \
736 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbgadget", d)} \
737 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbhost", d)} \
738 ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "wifi", d)}"
739COMBINED_FEATURES[vardeps] += "DISTRO_FEATURES MACHINE_FEATURES"
740
741SERIAL_CONSOLE ??= ""
742SERIAL_CONSOLES ??= "${@d.getVar('SERIAL_CONSOLE', True).replace(' ', ';')}"
743
744NO_RECOMMENDATIONS ?= ""
745BAD_RECOMMENDATIONS ?= ""
746
747# Make sure MACHINE isn't exported
748# (breaks binutils at least)
749MACHINE[unexport] = "1"
750
751# Make sure TARGET_ARCH isn't exported
752# (breaks Makefiles using implicit rules, e.g. quilt, as GNU make has this
753# in them, undocumented)
754TARGET_ARCH[unexport] = "1"
755
756# Make sure DISTRO isn't exported
757# (breaks sysvinit at least)
758DISTRO[unexport] = "1"
759
760# Used by canadian-cross to handle string conversions on TARGET_ARCH where needed
761TRANSLATED_TARGET_ARCH ??= "${@d.getVar('TARGET_ARCH', True).replace("_", "-")}"
762
763# Complete output from bitbake
764BB_CONSOLELOG ?= "${LOG_DIR}/cooker/${MACHINE}/${DATETIME}.log"
765
766# Setup our default hash policy
767BB_SIGNATURE_HANDLER ?= "OEBasicHash"
768BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR \
769 SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM \
770 USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \
771 PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \
772 CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE LICENSE_PATH SDKPKGSUFFIX \
773 WARN_QA ERROR_QA WORKDIR STAMPCLEAN"
774BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SSH_AGENT_PID \
775 SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \
776 PARALLEL_MAKE BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED"
777BB_SIGNATURE_EXCLUDE_FLAGS ?= "doc defaultval _append _prepend deps depends \
778 lockfiles type vardepsexclude vardeps vardepvalue vardepvalueexclude \
779 file-checksums python func task export unexport noexec nostamp dirs cleandirs \
780 sstate-lockfile-shared prefuncs postfuncs export_func deptask rdeptask \
781 recrdeptask nodeprrecs stamp-base stamp-extra-info"
782
783MLPREFIX ??= ""
784MULTILIB_VARIANTS ??= ""
diff --git a/meta/conf/conf-notes.txt b/meta/conf/conf-notes.txt
new file mode 100644
index 0000000..66e6319
--- /dev/null
+++ b/meta/conf/conf-notes.txt
@@ -0,0 +1,8 @@
1Common targets are:
2 core-image-minimal
3 core-image-sato
4 meta-toolchain
5 adt-installer
6 meta-ide-support
7
8You can also run generated qemu images with a command like 'runqemu qemux86'
diff --git a/meta/conf/distro/defaultsetup.conf b/meta/conf/distro/defaultsetup.conf
new file mode 100644
index 0000000..6fc522c
--- /dev/null
+++ b/meta/conf/distro/defaultsetup.conf
@@ -0,0 +1,23 @@
1include conf/distro/include/default-providers.inc
2include conf/distro/include/default-versions.inc
3include conf/distro/include/default-distrovars.inc
4include conf/distro/include/world-broken.inc
5include conf/distro/include/seperatebuilddir.inc
6
7TCMODE ?= "default"
8require conf/distro/include/tcmode-${TCMODE}.inc
9
10TCLIBC ?= "eglibc"
11require conf/distro/include/tclibc-${TCLIBC}.inc
12
13# Allow single libc distros to disable this code
14TCLIBCAPPEND ?= "-${TCLIBC}"
15TMPDIR .= "${TCLIBCAPPEND}"
16
17CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' + str(d.getVar('MACHINE', True))][bool(d.getVar('MACHINE', True))]}${@['', '/' + str(d.getVar('SDKMACHINE', True))][bool(d.getVar('SDKMACHINE', True))]}"
18
19USER_CLASSES ?= ""
20PACKAGE_CLASSES ?= "package_ipk"
21INHERIT_DISTRO ?= "debian devshell sstate license"
22INHERIT += "${PACKAGE_CLASSES} ${USER_CLASSES} ${INHERIT_DISTRO}"
23
diff --git a/meta/conf/distro/include/as-needed.inc b/meta/conf/distro/include/as-needed.inc
new file mode 100644
index 0000000..9d2056e
--- /dev/null
+++ b/meta/conf/distro/include/as-needed.inc
@@ -0,0 +1,16 @@
1
2ASNEEDED = "-Wl,--as-needed"
3
4ASNEEDED_pn-console-tools = ""
5ASNEEDED_pn-distcc = ""
6ASNEEDED_pn-openobex = ""
7ASNEEDED_pn-icu = ""
8ASNEEDED_pn-xserver-kdrive-xomap = ""
9ASNEEDED_pn-minimo = ""
10ASNEEDED_pn-pciutils = ""
11ASNEEDED_pn-puzzles = ""
12ASNEEDED_pn-dialer = ""
13ASNEEDED_pn-pulseaudio = ""
14ASNEEDED_pn-rpm = ""
15
16TARGET_LDFLAGS += "${ASNEEDED}"
diff --git a/meta/conf/distro/include/default-distrovars.inc b/meta/conf/distro/include/default-distrovars.inc
new file mode 100644
index 0000000..5ef9c32
--- /dev/null
+++ b/meta/conf/distro/include/default-distrovars.inc
@@ -0,0 +1,50 @@
1QA_LOGFILE = "${TMPDIR}/qa.log"
2
3OEINCLUDELOGS ?= "yes"
4KERNEL_CONSOLE ?= "ttyS0"
5KEEPUIMAGE ??= "yes"
6
7IMAGE_LINGUAS ?= "en-us en-gb"
8LIMIT_BUILT_LOCALES ?= "POSIX en_US en_GB"
9ENABLE_BINARY_LOCALE_GENERATION ?= "1"
10LOCALE_UTF8_ONLY ?= "0"
11
12DISTRO_FEATURES_DEFAULT ?= "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11"
13DISTRO_FEATURES_LIBC_DEFAULT ?= "ipv4 ipv6 libc-backtrace libc-big-macros libc-bsd libc-cxx-tests libc-catgets libc-charsets libc-crypt \
14 libc-crypt-ufc libc-db-aliases libc-envz libc-fcvt libc-fmtmsg libc-fstab libc-ftraverse \
15 libc-getlogin libc-idn libc-inet-anl libc-libm libc-locales libc-locale-code \
16 libc-memusage libc-nis libc-nsswitch libc-rcmd libc-rtld-debug libc-spawn libc-streams libc-sunrpc \
17 libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc \
18 libc-posix-wchar-io"
19DISTRO_FEATURES_LIBC ?= "${DISTRO_FEATURES_LIBC_DEFAULT}"
20DISTRO_FEATURES_LIBC_class-nativesdk = "${DISTRO_FEATURES_LIBC_DEFAULT}"
21DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC}"
22
23IMAGE_FEATURES ?= ""
24
25# This is a list of packages that are used by the build system to build the distribution, they are not
26# directly part of the distribution.
27HOSTTOOLS_WHITELIST_GPLv3 ?= ""
28WHITELIST_GPLv3 ?= "less"
29LGPLv2_WHITELIST_GPLv3 ?= "libassuan gnutls libtasn1 libidn libgcc gcc-runtime"
30
31COMMERCIAL_AUDIO_PLUGINS ?= ""
32# COMMERCIAL_AUDIO_PLUGINS ?= "gst-plugins-ugly-mad gst-plugins-ugly-mpegaudioparse"
33COMMERCIAL_VIDEO_PLUGINS ?= ""
34# COMMERCIAL_VIDEO_PLUGINS ?= "gst-plugins-ugly-mpeg2dec gst-plugins-ugly-mpegstream gst-plugins-bad-mpegvideoparse"
35COMMERCIAL_QT ?= ""
36# COMMERCIAL_QT ?= "qmmp"
37# Set of common licenses used for license.bbclass
38COMMON_LICENSE_DIR ??= "${COREBASE}/meta/files/common-licenses"
39
40BB_GENERATE_MIRROR_TARBALLS ??= "0"
41
42NO32LIBS ??= "1"
43
44# Default to emitting logfiles if a build fails.
45BBINCLUDELOGS ??= "yes"
46SDK_VERSION ??= "nodistro.0"
47DISTRO_VERSION ??= "nodistro.0"
48
49# Missing checksums should raise an error
50BB_STRICT_CHECKSUM = "1"
diff --git a/meta/conf/distro/include/default-providers.inc b/meta/conf/distro/include/default-providers.inc
new file mode 100644
index 0000000..419ffcd
--- /dev/null
+++ b/meta/conf/distro/include/default-providers.inc
@@ -0,0 +1,47 @@
1#
2# Default virtual providers
3#
4PREFERRED_PROVIDER_virtual/db ?= "db"
5PREFERRED_PROVIDER_virtual/db-native ?= "db-native"
6PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
7PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xorg"
8PREFERRED_PROVIDER_virtual/egl ?= "mesa"
9PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
10PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
11PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
12PREFERRED_PROVIDER_virtual/mesa ?= "mesa"
13PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg-utils"
14PREFERRED_PROVIDER_virtual/update-alternatives-native ?= "opkg-utils-native"
15PREFERRED_PROVIDER_virtual/libx11 ?= "libx11"
16PREFERRED_PROVIDER_xf86-video-intel ?= "xf86-video-intel"
17
18#
19# Default virtual runtime providers
20#
21VIRTUAL-RUNTIME_update-alternatives ?= "update-alternatives-opkg"
22VIRTUAL-RUNTIME_apm ?= "apm"
23VIRTUAL-RUNTIME_alsa-state ?= "alsa-state"
24
25#
26# Default recipe providers
27#
28PREFERRED_PROVIDER_dbus-glib ?= "dbus-glib"
29PREFERRED_PROVIDER_dbus-glib-native ?= "dbus-glib-native"
30PREFERRED_PROVIDER_gdk-pixbuf ?= "gdk-pixbuf"
31PREFERRED_PROVIDER_libgcc ?= "libgcc"
32PREFERRED_PROVIDER_nativesdk-libgcc ?= "nativesdk-libgcc"
33PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
34PREFERRED_PROVIDER_nativesdk-linux-libc-headers ?= "nativesdk-linux-libc-headers"
35PREFERRED_PROVIDER_matchbox-panel ?= "matchbox-panel-2"
36PREFERRED_PROVIDER_opkg ?= "opkg"
37PREFERRED_PROVIDER_opkg-native ?= "opkg-native"
38PREFERRED_PROVIDER_nativesdk-opkg ?= "nativesdk-opkg"
39PREFERRED_PROVIDER_console-tools ?= "kbd"
40PREFERRED_PROVIDER_gzip-native ?= "pigz-native"
41PREFERRED_PROVIDER_make ?= "make"
42PREFERRED_PROVIDER_udev ?= "${@base_contains('DISTRO_FEATURES','systemd','systemd','udev',d)}"
43# There are issues with runtime packages and PREFERRED_PROVIDER, see YOCTO #5044 for details
44# on this rather strange entry.
45PREFERRED_PROVIDER_bluez4 ?= "bluez4"
46# Alternative is ltp-ddt in meta-oe: meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_0.0.4.bb
47PREFERRED_PROVIDER_ltp ?= "ltp"
diff --git a/meta/conf/distro/include/default-versions.inc b/meta/conf/distro/include/default-versions.inc
new file mode 100644
index 0000000..a9a931d
--- /dev/null
+++ b/meta/conf/distro/include/default-versions.inc
@@ -0,0 +1,14 @@
1#
2# Default preferred versions
3#
4
5# Force the python versions in one place
6PYTHON_BASEVERSION ?= "2.7"
7PREFERRED_VERSION_python ?= "2.7.3"
8PREFERRED_VERSION_python-native ?= "2.7.3"
9
10# Force the older version of liberation-fonts until we fix the fontforge issue
11PREFERRED_VERSION_liberation-fonts ?= "1.04"
12
13# Intel video stack 2013Q3 and newer need a version >=2.99.902
14PREFERRED_VERSION_xf86-video-intel ?= "2.99.910"
diff --git a/meta/conf/distro/include/security_flags.inc b/meta/conf/distro/include/security_flags.inc
new file mode 100644
index 0000000..60f3049
--- /dev/null
+++ b/meta/conf/distro/include/security_flags.inc
@@ -0,0 +1,85 @@
1SECURITY_CFLAGS ?= "-fstack-protector-all -pie -fpie -D_FORTIFY_SOURCE=2"
2SECURITY_NO_PIE_CFLAGS ?= "-fstack-protector-all -D_FORTIFY_SOURCE=2"
3SECURITY_LDFLAGS ?= "-Wl,-z,relro,-z,now"
4SECURITY_X_LDFLAGS ?= "-Wl,-z,relro"
5
6# powerpc does not get on with pie for reasons not looked into as yet
7SECURITY_CFLAGS_powerpc = "-fstack-protector-all -D_FORTIFY_SOURCE=2"
8# Deal with ppc specific linker failures when using the cflags
9SECURITY_CFLAGS_pn-dbus_powerpc = ""
10SECURITY_CFLAGS_pn-dbus-ptest_powerpc = ""
11SECURITY_CFLAGS_pn-libmatchbox_powerpc = ""
12SECURITY_CFLAGS_pn-webkit-gtk_powerpc = ""
13
14# arm specific security flag issues
15SECURITY_CFLAGS_pn-lttng-tools_arm = "${SECURITY_NO_PIE_CFLAGS}"
16
17SECURITY_CFLAGS_pn-aspell = "${SECURITY_NO_PIE_CFLAGS}"
18SECURITY_CFLAGS_pn-beecrypt = "${SECURITY_NO_PIE_CFLAGS}"
19# Curl seems to check for FORTIFY_SOURCE in CFLAGS, but even assigned
20# to CPPFLAGS it gets picked into CFLAGS in bitbake.
21#TARGET_CPPFLAGS_pn-curl += "-D_FORTIFY_SOURCE=2"
22SECURITY_CFLAGS_pn-cups = "${SECURITY_NO_PIE_CLAGS}"
23SECURITY_CFLAGS_pn-curl = "-fstack-protector-all -pie -fpie"
24SECURITY_CFLAGS_pn-db = "${SECURITY_NO_PIE_CFLAGS}"
25SECURITY_CFLAGS_pn-directfb = "${SECURITY_NO_PIE_CFLAGS}"
26SECURITY_CFLAGS_pn-eglibc = ""
27SECURITY_CFLAGS_pn-eglibc-initial = ""
28SECURITY_CFLAGS_pn-enchant = "${SECURITY_NO_PIE_CFLAGS}"
29SECURITY_CFLAGS_pn-flac = "${SECURITY_NO_PIE_CFLAGS}"
30SECURITY_CFLAGS_pn-gcc-runtime = "${SECURITY_NO_PIE_CFLAGS}"
31SECURITY_CFLAGS_pn-gdb = "${SECURITY_NO_PIE_CFLAGS}"
32SECURITY_CFLAGS_pn-gmp = "${SECURITY_NO_PIE_CFLAGS}"
33SECURITY_CFLAGS_pn-gnutls = "${SECURITY_NO_PIE_CFLAGS}"
34SECURITY_CFLAGS_pn-grub = ""
35SECURITY_CFLAGS_pn-grub-efi = ""
36SECURITY_CFLAGS_pn-grub-efi-native = ""
37SECURITY_CFLAGS_pn-grub-efi-x86-native = ""
38SECURITY_CFLAGS_pn-grub-efi-x86-64-native = ""
39SECURITY_CFLAGS_pn-grub-efi-i586-native = ""
40SECURITY_CFLAGS_pn-grub-efi-x86-64-native = ""
41SECURITY_CFLAGS_pn-gst-plugins-bad = "${SECURITY_NO_PIE_CFLAGS}"
42SECURITY_CFLAGS_pn-gst-plugins-gl = "${SECURITY_NO_PIE_CFLAGS}"
43SECURITY_CFLAGS_pn-gstreamer1.0-plugins-good = "${SECURITY_NO_PIE_CFLAGS}"
44SECURITY_CFLAGS_pn-harfbuzz = "${SECURITY_NO_PIE_CFLAGS}"
45SECURITY_CFLAGS_pn-kexec-tools = "${SECURITY_NO_PIE_CFLAGS}"
46SECURITY_CFLAGS_pn-libcap = "${SECURITY_NO_PIE_CFLAGS}"
47SECURITY_CFLAGS_pn-libgcc = "${SECURITY_NO_PIE_CFLAGS}"
48SECURITY_CFLAGS_pn-libid3tag = "${SECURITY_NO_PIE_CFLAGS}"
49SECURITY_CFLAGS_pn-libnewt = "${SECURITY_NO_PIE_CFLAGS}"
50SECURITY_CFLAGS_pn-libglu = "${SECURITY_NO_PIE_CFLAGS}"
51SECURITY_CFLAGS_pn-libpcap = "${SECURITY_NO_PIE_CFLAGS}"
52SECURITY_CFLAGS_pn-libpcre = "${SECURITY_NO_PIE_CFLAGS}"
53SECURITY_CFLAGS_pn-libproxy = "${SECURITY_NO_PIE_CFLAGS}"
54SECURITY_CFLAGS_pn-lttng-ust = "${SECURITY_NO_PIE_CFLAGS}"
55SECURITY_CFLAGS_pn-mesa = "${SECURITY_NO_PIE_CFLAGS}"
56SECURITY_CFLAGS_pn-mesa-gl = "${SECURITY_NO_PIE_CFLAGS}"
57SECURITY_CFLAGS_pn-openssl = "${SECURITY_NO_PIE_CFLAGS}"
58SECURITY_CFLAGS_pn-opensp = "${SECURITY_NO_PIE_CFLAGS}"
59SECURITY_CFLAGS_pn-ppp = "${SECURITY_NO_PIE_CFLAGS}"
60SECURITY_CFLAGS_pn-python = "${SECURITY_NO_PIE_CFLAGS}"
61SECURITY_CFLAGS_pn-python-imaging = "${SECURITY_NO_PIE_CFLAGS}"
62SECURITY_CFLAGS_pn-python-pycurl = "${SECURITY_NO_PIE_CFLAGS}"
63SECURITY_CFLAGS_pn-python-smartpm = "${SECURITY_NO_PIE_CFLAGS}"
64SECURITY_CFLAGS_pn-tcl = "${SECURITY_NO_PIE_CFLAGS}"
65SECURITY_CFLAGS_pn-tiff = "${SECURITY_NO_PIE_CFLAGS}"
66SECURITY_CFLAGS_pn-valgrind = "${SECURITY_NO_PIE_CFLAGS}"
67SECURITY_CFLAGS_pn-webkit-gtk = "${SECURITY_NO_PIE_CFLAGS}"
68SECURITY_CFLAGS_pn-zlib = "${SECURITY_NO_PIE_CFLAGS}"
69SECURITY_CFLAGS_pn-lvm2 = "${SECURITY_NO_PIE_CFLAGS}"
70SECURITY_CFLAGS_pn-expect = "${SECURITY_NO_PIE_CFLAGS}"
71
72# These 2 have text relco errors with the pie options enabled
73SECURITY_CFLAGS_pn-ltp = "${SECURITY_NO_PIE_CFLAGS}"
74SECURITY_CFLAGS_pn-pulseaudio = "${SECURITY_NO_PIE_CFLAGS}"
75
76TARGET_CFLAGS_append = " ${SECURITY_CFLAGS}"
77TARGET_LDFLAGS_append = " ${SECURITY_LDFLAGS}"
78
79SECURITY_LDFLAGS_pn-xf86-video-fbdev = "${SECURITY_X_LDFLAGS}"
80SECURITY_LDFLAGS_pn-xf86-video-intel = "${SECURITY_X_LDFLAGS}"
81SECURITY_LDFLAGS_pn-xf86-video-omapfb = "${SECURITY_X_LDFLAGS}"
82SECURITY_LDFLAGS_pn-xf86-video-omap = "${SECURITY_X_LDFLAGS}"
83SECURITY_LDFLAGS_pn-xf86-video-vesa = "${SECURITY_X_LDFLAGS}"
84SECURITY_LDFLAGS_pn-xf86-video-vmware = "${SECURITY_X_LDFLAGS}"
85SECURITY_LDFLAGS_pn-xserver-xorg = "${SECURITY_X_LDFLAGS}"
diff --git a/meta/conf/distro/include/seperatebuilddir.inc b/meta/conf/distro/include/seperatebuilddir.inc
new file mode 100644
index 0000000..cf90c10
--- /dev/null
+++ b/meta/conf/distro/include/seperatebuilddir.inc
@@ -0,0 +1,768 @@
1# List of autotools recipes which support building with external build directories
2# i.e. ${B} != ${S}
3SEPB = "${WORKDIR}/build"
4
5# Makefile based, no out of tree support
6#B_pn-acl = "${SEPB}"
7#B_pn-acl-native = "${SEPB}"
8B_pn-alsa-lib = "${SEPB}"
9B_pn-alsa-lib-native = "${SEPB}"
10# Not autotools
11#B_pn-alsa-tools = "${SEPB}"
12# Has header issues at compile, likely fixable
13#B_pn-alsa-utils = "${SEPB}"
14B_pn-apache2 = "${SEPB}"
15# No working out of tree support
16#B_pn-apr = "${SEPB}"
17#B_pn-apr-native = "${SEPB}"
18#B_pn-apr-util = "${SEPB}"
19#B_pn-apr-util-native = "${SEPB}"
20B_pn-apt = "${SEPB}"
21B_pn-apt-native = "${SEPB}"
22# support for out of tree broken at compile, likely fixable
23#B_pn-aspell = "${SEPB}"
24# No support for out of tree builds
25#B_pn-at = "${SEPB}"
26B_pn-atk = "${SEPB}"
27B_pn-atk-native = "${SEPB}"
28# Makefile based, no out of tree support
29#B_pn-attr = "${SEPB}"
30#B_pn-attr-native = "${SEPB}"
31B_pn-augeas = "${SEPB}"
32B_pn-autoconf = "${SEPB}"
33B_pn-autoconf-native = "${SEPB}"
34B_pn-autogen-native = "${SEPB}"
35B_pn-automake = "${SEPB}"
36B_pn-automake-native = "${SEPB}"
37B_pn-avahi = "${SEPB}"
38B_pn-avahi-ui = "${SEPB}"
39B_pn-babeltrace = "${SEPB}"
40B_pn-base-passwd = "${SEPB}"
41#B_pn-bash = "${SEPB}"
42B_pn-bc = "${SEPB}"
43B_pn-bdwgc = "${SEPB}"
44B_pn-bdwgc-native = "${SEPB}"
45B_pn-beecrypt = "${SEPB}"
46B_pn-beecrypt-native = "${SEPB}"
47B_pn-bigreqsproto = "${SEPB}"
48B_pn-bigreqsproto-native = "${SEPB}"
49#| make[3]: Entering directory `/media/build1/poky/build/tmp/work/i586-poky-linux/bind/9.8.1-r5/build/bin/named'
50#| i586-poky-linux-gcc -m32 -march=i586 --sysroot=/media/build1/poky/build/tmp/sysroots/qemux86 -O2 -pipe -g -feliminate-unused-debug-types -c -o named-symtbl.o named-symtbl.c
51#| named-symtbl.c:4:27: fatal error: isc/backtrace.h: No such file or directory
52#B_pn-bind = "${SEPB}"
53B_pn-bison = "${SEPB}"
54B_pn-bison-native = "${SEPB}"
55B_pn-blktool = "${SEPB}"
56# ln: failed to create symbolic link 'lib/bluetooth/bluetooth.h': File exists
57#B_pn-bluez4 = "${SEPB}"
58B_pn-bluez-hcidump = "${SEPB}"
59B_pn-byacc = "${SEPB}"
60B_pn-byacc-native = "${SEPB}"
61B_pn-bzip2 = "${SEPB}"
62B_pn-bzip2-native = "${SEPB}"
63B_pn-cairo = "${SEPB}"
64B_pn-cairo-native = "${SEPB}"
65B_pn-calibrateproto = "${SEPB}"
66B_pn-ccache = "${SEPB}"
67B_pn-ccache-native = "${SEPB}"
68B_pn-chrpath = "${SEPB}"
69B_pn-chrpath-native = "${SEPB}"
70B_pn-clutter-1.0 = "${SEPB}"
71B_pn-clutter-gst-1.0 = "${SEPB}"
72B_pn-clutter-gtk-1.0 = "${SEPB}"
73#B_pn-cmake = "${SEPB}"
74#B_pn-cmake-native = "${SEPB}"
75B_pn-cogl-1.0 = "${SEPB}"
76B_pn-compositeproto = "${SEPB}"
77B_pn-compositeproto-native = "${SEPB}"
78#B_pn-connman = "${SEPB}"
79#B_pn-connman-gnome = "${SEPB}"
80B_pn-consolekit = "${SEPB}"
81B_pn-console-tools = "${SEPB}"
82B_pn-coreutils = "${SEPB}"
83B_pn-coreutils-native = "${SEPB}"
84B_pn-courier-authlib = "${SEPB}"
85B_pn-courier-imap = "${SEPB}"
86B_pn-cpio = "${SEPB}"
87B_pn-cracklib = "${SEPB}"
88B_pn-cronie = "${SEPB}"
89B_pn-cross-localedef-native = "${SEPB}"
90#No autoconf and no support for separate build
91#B_pn-cups = "${SEPB}"
92B_pn-curl = "${SEPB}"
93B_pn-curl-native = "${SEPB}"
94B_pn-damageproto = "${SEPB}"
95B_pn-damageproto-native = "${SEPB}"
96B_pn-db = "${SEPB}"
97B_pn-db-native = "${SEPB}"
98B_pn-dbus = "${SEPB}"
99B_pn-dbus-glib = "${SEPB}"
100B_pn-dbus-glib-native = "${SEPB}"
101B_pn-dbus-native = "${SEPB}"
102B_pn-dbus-ptest = "${SEPB}"
103B_pn-dbus-wait = "${SEPB}"
104B_pn-desktop-file-utils-native = "${SEPB}"
105B_pn-dhcp = "${SEPB}"
106B_pn-diffstat = "${SEPB}"
107B_pn-diffutils = "${SEPB}"
108B_pn-directfb = "${SEPB}"
109B_pn-directfb-examples = "${SEPB}"
110B_pn-distcc = "${SEPB}"
111B_pn-dmxproto = "${SEPB}"
112B_pn-docbook-utils-native = "${SEPB}"
113B_pn-dpkg = "${SEPB}"
114B_pn-dpkg-native = "${SEPB}"
115B_pn-dri2proto = "${SEPB}"
116B_pn-dropbear = "${SEPB}"
117## Makefile based not autotools
118##B_pn-dtc = "${SEPB}"
119##B_pn-dtc-native = "${SEPB}"
120B_pn-e2fsprogs = "${SEPB}"
121B_pn-e2fsprogs-native = "${SEPB}"
122B_pn-ed = "${SEPB}"
123B_pn-elfutils = "${SEPB}"
124B_pn-elfutils-native = "${SEPB}"
125B_pn-enchant = "${SEPB}"
126B_pn-encodings = "${SEPB}"
127B_pn-ethtool = "${SEPB}"
128B_pn-expat = "${SEPB}"
129B_pn-expat-native = "${SEPB}"
130B_pn-fetchmail = "${SEPB}"
131B_pn-file = "${SEPB}"
132B_pn-file-native = "${SEPB}"
133B_pn-findutils = "${SEPB}"
134B_pn-findutils-native = "${SEPB}"
135B_pn-fixesproto = "${SEPB}"
136B_pn-fixesproto-native = "${SEPB}"
137# /bin/bash: line 0: cd: api: No such file or directory
138#B_pn-flac = "${SEPB}"
139B_pn-flex = "${SEPB}"
140B_pn-flex-native = "${SEPB}"
141B_pn-font-alias = "${SEPB}"
142B_pn-fontconfig = "${SEPB}"
143B_pn-fontconfig-native = "${SEPB}"
144B_pn-fontsproto = "${SEPB}"
145B_pn-fontsproto-native = "${SEPB}"
146B_pn-font-util = "${SEPB}"
147B_pn-font-util-native = "${SEPB}"
148B_pn-foomatic-filters = "${SEPB}"
149## run.do_configure.4694: 88: cd: can't cd to builds/unix
150##B_pn-freetype = "${SEPB}"
151##B_pn-freetype-native = "${SEPB}"
152B_pn-fstests = "${SEPB}"
153B_pn-gaku = "${SEPB}"
154B_pn-gamin = "${SEPB}"
155B_pn-gawk = "${SEPB}"
156B_pn-gccmakedep = "${SEPB}"
157B_pn-gconf = "${SEPB}"
158B_pn-gconf-native = "${SEPB}"
159B_pn-gdb = "${SEPB}"
160B_pn-gdb-cross = "${SEPB}"
161B_pn-gdb-cross-canadian-i586 = "${SEPB}"
162B_pn-gdbm = "${SEPB}"
163B_pn-gdbm-native = "${SEPB}"
164B_pn-gdk-pixbuf = "${SEPB}"
165B_pn-gdk-pixbuf-native = "${SEPB}"
166B_pn-gettext = "${SEPB}"
167B_pn-gettext-native = "${SEPB}"
168#checking for system lcms2 library... checking for cmsCreateXYZProfile in -llcms2... no
169#checking for local lcms library source... configure: error: LittleCMS source not found!
170#B_pn-ghostscript = "${SEPB}"
171#B_pn-ghostscript-native = "${SEPB}"
172# No out of tree build support (manual makefile)
173#B_pn-git = "${SEPB}"
174#B_pn-git-native = "${SEPB}"
175B_pn-glew = "${SEPB}"
176B_pn-glib-2.0 = "${SEPB}"
177B_pn-glib-2.0-native = "${SEPB}"
178B_pn-glib-networking = "${SEPB}"
179B_pn-glproto = "${SEPB}"
180B_pn-gmp = "${SEPB}"
181B_pn-gmp-native = "${SEPB}"
182B_pn-gnome-common = "${SEPB}"
183B_pn-gnome-common-native = "${SEPB}"
184B_pn-gnome-desktop = "${SEPB}"
185#B_pn-gnome-doc-utils = "${SEPB}"
186#B_pn-gnome-doc-utils-native = "${SEPB}"
187B_pn-gnome-icon-theme = "${SEPB}"
188B_pn-gnome-mime-data = "${SEPB}"
189B_pn-gnupg = "${SEPB}"
190## libtool: link: warning: library `.../usr/lib/libgcrypt.la' was moved.
191##B_pn-gnutls = "${SEPB}"
192B_pn-gnutls-native = "${SEPB}"
193B_pn-gperf = "${SEPB}"
194B_pn-gperf-native = "${SEPB}"
195B_pn-gpgme = "${SEPB}"
196B_pn-grep = "${SEPB}"
197B_pn-groff = "${SEPB}"
198B_pn-groff-native = "${SEPB}"
199B_pn-grub = "${SEPB}"
200B_pn-grub-efi-i586-native = "${SEPB}"
201B_pn-gsettings-desktop-schemas = "${SEPB}"
202#| ./config.status: line 2219: /media/build1/poky/build/tmp/work/i586-poky-linux/gst-ffmpeg/0.10.13-r4/build//media/build1/poky/build/tmp/work/i586-poky-linux/gst-ffmpeg/0.10.13-r4/gst-ffmpeg-0.10.13/gst-libs/ext/libav/configure: No such file or directory
203#| config.status: error: Failed to configure embedded Libav tree
204#B_pn-gst-ffmpeg = "${SEPB}"
205B_pn-gst-fluendo-mp3 = "${SEPB}"
206B_pn-gst-fluendo-mpegdemux = "${SEPB}"
207B_pn-gst-openmax = "${SEPB}"
208# Has races/confusion over file/symbolic link creation
209#B_pn-gst-plugin-bluetooth = "${SEPB}"
210B_pn-gst-plugins-bad = "${SEPB}"
211B_pn-gst-plugins-base = "${SEPB}"
212B_pn-gst-plugins-gl = "${SEPB}"
213B_pn-gst-plugins-good = "${SEPB}"
214B_pn-gst-plugins-ugly = "${SEPB}"
215B_pn-gstreamer = "${SEPB}"
216B_pn-gtk+ = "${SEPB}"
217B_pn-gtk+3 = "${SEPB}"
218B_pn-gtk-doc-stub = "${SEPB}"
219B_pn-gtk-doc-stub-native = "${SEPB}"
220B_pn-gtk-engines = "${SEPB}"
221##make[1]: *** No rule to make target `data/gtkrc', needed by `all-am'. Stop
222##B_pn-gtk-sato-engine = "${SEPB}"
223B_pn-guile = "${SEPB}"
224B_pn-guile-native = "${SEPB}"
225B_pn-gzip = "${SEPB}"
226B_pn-gzip-native = "${SEPB}"
227B_pn-harfbuzz = "${SEPB}"
228B_pn-harfbuzz-native = "${SEPB}"
229B_pn-help2man-native = "${SEPB}"
230## Hand coded makefiles don't support out-of-tree
231##B_pn-hicolor-icon-theme = "${SEPB}"
232B_pn-icon-naming-utils-native = "${SEPB}"
233B_pn-icu = "${SEPB}"
234B_pn-icu-native = "${SEPB}"
235B_pn-inputproto = "${SEPB}"
236B_pn-inputproto-native = "${SEPB}"
237B_pn-intltool = "${SEPB}"
238B_pn-intltool-native = "${SEPB}"
239B_pn-iptables = "${SEPB}"
240#B_pn-irda-utils = "${SEPB}"
241B_pn-jpeg = "${SEPB}"
242B_pn-jpeg-native = "${SEPB}"
243#B_pn-js = "${SEPB}"
244B_pn-json-glib = "${SEPB}"
245B_pn-kbd = "${SEPB}"
246B_pn-kbd-native = "${SEPB}"
247B_pn-kbproto = "${SEPB}"
248B_pn-kbproto-native = "${SEPB}"
249B_pn-kconfig-frontends = "${SEPB}"
250B_pn-kconfig-frontends-native = "${SEPB}"
251##kexec-tools-2.0.3/kexec/arch/ppc/Makefile:4: kexec/arch/ppc/libfdt/Makefile.libfdt: No such file or directory
252##B_pn-kexec-tools = "${SEPB}"
253B_pn-kmod = "${SEPB}"
254B_pn-kmod-native = "${SEPB}"
255B_pn-lame = "${SEPB}"
256B_pn-leafpad = "${SEPB}"
257B_pn-less = "${SEPB}"
258B_pn-liba52 = "${SEPB}"
259#| cat /media/build1/poky/build/tmp/work/i586-poky-linux/libarchive/2.8.5-r0/libarchive-2.8.5/libarchive/test/test_*.c | grep DEFINE_TEST > libarchive/test/list.h
260#| cat /media/build1/poky/build/tmp/work/i586-poky-linux/libarchive/2.8.5-r0/libarchive-2.8.5/tar/test/test_*.c | grep DEFINE_TEST > tar/test/list.h
261#| cat /media/build1/poky/build/tmp/work/i586-poky-linux/libarchive/2.8.5-r0/libarchive-2.8.5/cpio/test/test_*.c | grep DEFINE_TEST > cpio/test/list.h
262#| /bin/bash: tar/test/list.h: No such file or directory
263#| /bin/bash: libarchive/test/list.h: No such file or directory
264#| /bin/bash: cpio/test/list.h: No such file or directory
265#B_pn-libarchive = "${SEPB}"
266B_pn-libart-lgpl = "${SEPB}"
267B_pn-libassuan = "${SEPB}"
268B_pn-libatomics-ops = "${SEPB}"
269B_pn-libcgroup = "${SEPB}"
270B_pn-libcheck = "${SEPB}"
271B_pn-libcroco = "${SEPB}"
272B_pn-libdaemon = "${SEPB}"
273B_pn-libdmx = "${SEPB}"
274B_pn-libdrm = "${SEPB}"
275B_pn-libevent = "${SEPB}"
276B_pn-libexif = "${SEPB}"
277B_pn-libfakekey = "${SEPB}"
278B_pn-libffi = "${SEPB}"
279B_pn-libffi-native = "${SEPB}"
280##i586-poky-linux-libtool: link: cannot find the library `/media/build1/poky/build/tmp/work/i586-poky-linux/libfm/1.1.0-r0/libfm-1.1.0/src/actions/libfmactions.la' or unhandled argument `/media/build1/poky/build/tmp/work/i586-poky-linux/libfm/1.1.0-r0/libfm-1.1.0/src/actions/libfmactions.la'
281##B_pn-libfm = "${SEPB}"
282B_pn-libfontenc = "${SEPB}"
283B_pn-libfontenc-native = "${SEPB}"
284B_pn-libgcc = "${SEPB}"
285#B_pn-libgcrypt = "${SEPB}"
286#B_pn-libgcrypt-native = "${SEPB}"
287B_pn-libglade = "${SEPB}"
288B_pn-libglu = "${SEPB}"
289B_pn-libgpg-error = "${SEPB}"
290B_pn-libgpg-error-native = "${SEPB}"
291B_pn-libice = "${SEPB}"
292B_pn-libice-native = "${SEPB}"
293B_pn-libid3tag = "${SEPB}"
294B_pn-libidn = "${SEPB}"
295B_pn-json-c = "${SEPB}"
296B_pn-libksba = "${SEPB}"
297B_pn-libmad = "${SEPB}"
298B_pn-libmatchbox = "${SEPB}"
299B_pn-libmpc = "${SEPB}"
300B_pn-libmpc-native = "${SEPB}"
301# CMake Error: The source directory "[...]libmusicbrainz-5.0.1[...]/build" does not appear to contain CMakeLists.txt.
302#B_pn-libmusicbrainz = "${SEPB}"
303# Not automake and no support for out of tree
304#B_pn-libnewt = "${SEPB}"
305B_pn-libnfsidmap = "${SEPB}"
306# flex.real: could not create route/cls/ematch_grammar.c
307#B_pn-libnl = "${SEPB}"
308B_pn-libnss-mdns = "${SEPB}"
309B_pn-libogg = "${SEPB}"
310B_pn-liboil = "${SEPB}"
311B_pn-libomxil = "${SEPB}"
312B_pn-libowl = "${SEPB}"
313B_pn-libowl-av = "${SEPB}"
314B_pn-libpam = "${SEPB}"
315B_pn-libpcap = "${SEPB}"
316B_pn-libpciaccess = "${SEPB}"
317B_pn-libpcre = "${SEPB}"
318B_pn-libpcre-native = "${SEPB}"
319B_pn-libpng = "${SEPB}"
320B_pn-libpng-native = "${SEPB}"
321B_pn-libpthread-stubs = "${SEPB}"
322B_pn-libpthread-stubs-native = "${SEPB}"
323B_pn-librsvg = "${SEPB}"
324B_pn-librsvg-native = "${SEPB}"
325B_pn-libsamplerate0 = "${SEPB}"
326B_pn-libsdl = "${SEPB}"
327B_pn-libsm = "${SEPB}"
328B_pn-libsm-native = "${SEPB}"
329B_pn-libsndfile1 = "${SEPB}"
330B_pn-libsoup-2.4 = "${SEPB}"
331B_pn-libtasn1 = "${SEPB}"
332B_pn-libtasn1-native = "${SEPB}"
333B_pn-libtelepathy = "${SEPB}"
334B_pn-libtheora = "${SEPB}"
335B_pn-libtirpc = "${SEPB}"
336B_pn-libtool = "${SEPB}"
337B_pn-libtool-cross = "${SEPB}"
338B_pn-libtool-native = "${SEPB}"
339B_pn-libunique = "${SEPB}"
340B_pn-libunistring = "${SEPB}"
341B_pn-libunistring-native = "${SEPB}"
342B_pn-liburcu = "${SEPB}"
343B_pn-libusb1 = "${SEPB}"
344B_pn-libusb1-native = "${SEPB}"
345B_pn-libusb-compat = "${SEPB}"
346B_pn-libusb-compat-native = "${SEPB}"
347B_pn-libuser = "${SEPB}"
348B_pn-libva-intel-driver = "${SEPB}"
349B_pn-libvorbis = "${SEPB}"
350B_pn-libx11 = "${SEPB}"
351B_pn-libx11-diet = "${SEPB}"
352B_pn-libx11-native = "${SEPB}"
353B_pn-libxau = "${SEPB}"
354B_pn-libxau-native = "${SEPB}"
355B_pn-libxcalibrate = "${SEPB}"
356B_pn-libxcb = "${SEPB}"
357B_pn-libxcb-native = "${SEPB}"
358B_pn-libxcomposite = "${SEPB}"
359B_pn-libxcomposite-native = "${SEPB}"
360B_pn-libxcursor = "${SEPB}"
361B_pn-libxcursor-native = "${SEPB}"
362B_pn-libxdamage = "${SEPB}"
363B_pn-libxdamage-native = "${SEPB}"
364B_pn-libxdmcp = "${SEPB}"
365B_pn-libxdmcp-native = "${SEPB}"
366B_pn-libxext = "${SEPB}"
367B_pn-libxext-native = "${SEPB}"
368B_pn-libxfixes = "${SEPB}"
369B_pn-libxfixes-native = "${SEPB}"
370B_pn-libxfont = "${SEPB}"
371B_pn-libxfont-native = "${SEPB}"
372B_pn-libxft = "${SEPB}"
373B_pn-libxft-native = "${SEPB}"
374B_pn-libxi = "${SEPB}"
375B_pn-libxinerama = "${SEPB}"
376B_pn-libxkbcommon = "${SEPB}"
377B_pn-libxkbfile = "${SEPB}"
378B_pn-libxkbfile-native = "${SEPB}"
379B_pn-libxml2 = "${SEPB}"
380B_pn-libxml2-native = "${SEPB}"
381B_pn-libxmu = "${SEPB}"
382B_pn-libxmu-native = "${SEPB}"
383B_pn-libxpm = "${SEPB}"
384B_pn-libxpm-native = "${SEPB}"
385B_pn-libxrandr = "${SEPB}"
386B_pn-libxrandr-native = "${SEPB}"
387B_pn-libxrender = "${SEPB}"
388B_pn-libxrender-native = "${SEPB}"
389B_pn-libxres = "${SEPB}"
390B_pn-libxscrnsaver = "${SEPB}"
391B_pn-libxsettings-client = "${SEPB}"
392B_pn-libxslt = "${SEPB}"
393B_pn-libxslt-native = "${SEPB}"
394B_pn-libxt = "${SEPB}"
395B_pn-libxt-native = "${SEPB}"
396B_pn-libxtst = "${SEPB}"
397B_pn-libxv = "${SEPB}"
398B_pn-libxvmc = "${SEPB}"
399B_pn-libxxf86dga = "${SEPB}"
400B_pn-libxxf86misc = "${SEPB}"
401B_pn-libxxf86vm = "${SEPB}"
402B_pn-lighttpd = "${SEPB}"
403# Doesn't use automake so no separate build support
404#B_pn-linuxdoc-tools-native = "${SEPB}"
405B_pn-lrzsz = "${SEPB}"
406# Doesn't use automake
407#B_pn-ltp = "${SEPB}"
408##/media/build1/poky/build1/tmp/work/i586-poky-linux/lttng-tools/v2.1.0-r0/git/tests/tools/health/health_check.c:20:25: fatal error: lttng/lttng.h: No such file or directory
409##B_pn-lttng-tools = "${SEPB}"
410B_pn-lttng-ust = "${SEPB}"
411B_pn-lzo = "${SEPB}"
412B_pn-lzo-native = "${SEPB}"
413B_pn-lzop = "${SEPB}"
414B_pn-lzop-native = "${SEPB}"
415B_pn-m4 = "${SEPB}"
416B_pn-m4-native = "${SEPB}"
417# Makefile only, no out of tree support
418#B_pn-mailx = "${SEPB}"
419B_pn-make = "${SEPB}"
420B_pn-makedepend = "${SEPB}"
421B_pn-makedepend-native = "${SEPB}"
422B_pn-make-native = "${SEPB}"
423B_pn-matchbox-config-gtk = "${SEPB}"
424B_pn-matchbox-desktop = "${SEPB}"
425B_pn-matchbox-desktop-sato = "${SEPB}"
426B_pn-matchbox-keyboard = "${SEPB}"
427B_pn-matchbox-panel-2 = "${SEPB}"
428B_pn-matchbox-terminal = "${SEPB}"
429B_pn-matchbox-theme-sato = "${SEPB}"
430B_pn-matchbox-wm = "${SEPB}"
431B_pn-mc = "${SEPB}"
432#makefile only, no out of tree support
433#B_pn-mdadm = "${SEPB}"
434B_pn-menu-cache = "${SEPB}"
435B_pn-mesa-demos = "${SEPB}"
436# src/mapi/mapi/stub.c:51:39: error: 'MAPI_TABLE_NUM_DYNAMIC' undeclared here (not in a function)
437B_pn-mesa = "${SEPB}"
438B_pn-mesa-gl = "${SEPB}"
439B_pn-minicom = "${SEPB}"
440# Not automake, no external tree support
441#B_pn-mkelfimage = "${SEPB}"
442#B_pn-mkelfimage-native = "${SEPB}"
443B_pn-mkfontdir = "${SEPB}"
444B_pn-mkfontdir-native = "${SEPB}"
445B_pn-mkfontscale = "${SEPB}"
446B_pn-mkfontscale-native = "${SEPB}"
447B_pn-mklibs-native = "${SEPB}"
448B_pn-mktemp = "${SEPB}"
449B_pn-mobile-broadband-provider-info = "${SEPB}"
450B_pn-mpeg2dec = "${SEPB}"
451B_pn-mpfr = "${SEPB}"
452B_pn-mpfr-native = "${SEPB}"
453B_pn-msmtp = "${SEPB}"
454B_pn-mtdev = "${SEPB}"
455B_pn-mtools = "${SEPB}"
456B_pn-mtools-native = "${SEPB}"
457B_pn-mx = "${SEPB}"
458# /media/build1/poky/build1/tmp/work/x86_64-linux/nasm-native/2.10.07-r0/nasm-2.10.07/compiler.h:47:21: fatal error: config.h: No such file or directory
459#B_pn-nasm = "${SEPB}"
460#B_pn-nasm-native = "${SEPB}"
461B_pn-nativesdk-alsa-lib = "${SEPB}"
462B_pn-nativesdk-autoconf = "${SEPB}"
463B_pn-nativesdk-automake = "${SEPB}"
464B_pn-nativesdk-bash = "${SEPB}"
465B_pn-nativesdk-bdwgc = "${SEPB}"
466B_pn-nativesdk-bigreqsproto = "${SEPB}"
467B_pn-nativesdk-bison = "${SEPB}"
468B_pn-nativesdk-bzip2 = "${SEPB}"
469B_pn-nativesdk-chrpath = "${SEPB}"
470B_pn-nativesdk-cmake = "${SEPB}"
471B_pn-nativesdk-curl = "${SEPB}"
472B_pn-nativesdk-db = "${SEPB}"
473B_pn-nativesdk-dbus = "${SEPB}"
474## Makefile based not autotools
475##B_pn-nativesdk-dtc = "${SEPB}"
476B_pn-nativesdk-eglibc = "${SEPB}"
477B_pn-nativesdk-eglibc-initial = "${SEPB}"
478B_pn-nativesdk-elfutils = "${SEPB}"
479B_pn-nativesdk-expat = "${SEPB}"
480B_pn-nativesdk-fixesproto = "${SEPB}"
481B_pn-nativesdk-flex = "${SEPB}"
482B_pn-nativesdk-gcc-runtime = "${SEPB}"
483B_pn-nativesdk-gdbm = "${SEPB}"
484B_pn-nativesdk-gettext = "${SEPB}"
485B_pn-nativesdk-glib-2.0 = "${SEPB}"
486B_pn-nativesdk-glproto = "${SEPB}"
487B_pn-nativesdk-gmp = "${SEPB}"
488B_pn-nativesdk-inputproto = "${SEPB}"
489B_pn-nativesdk-kbproto = "${SEPB}"
490#B_pn-nativesdk-libarchive = "${SEPB}"
491B_pn-nativesdk-libffi = "${SEPB}"
492B_pn-nativesdk-libgcc = "${SEPB}"
493B_pn-nativesdk-libmpc = "${SEPB}"
494B_pn-nativesdk-libpcre = "${SEPB}"
495B_pn-nativesdk-libpng = "${SEPB}"
496B_pn-nativesdk-libpthread-stubs = "${SEPB}"
497B_pn-nativesdk-libsdl = "${SEPB}"
498B_pn-nativesdk-libtool = "${SEPB}"
499B_pn-nativesdk-libunistring = "${SEPB}"
500B_pn-nativesdk-libusb1 = "${SEPB}"
501B_pn-nativesdk-libusb-compat = "${SEPB}"
502B_pn-nativesdk-libx11 = "${SEPB}"
503B_pn-nativesdk-libxau = "${SEPB}"
504B_pn-nativesdk-libxcb = "${SEPB}"
505B_pn-nativesdk-libxdmcp = "${SEPB}"
506B_pn-nativesdk-libxext = "${SEPB}"
507B_pn-nativesdk-libxfixes = "${SEPB}"
508B_pn-nativesdk-libxml2 = "${SEPB}"
509B_pn-nativesdk-libxrandr = "${SEPB}"
510B_pn-nativesdk-libxrender = "${SEPB}"
511B_pn-nativesdk-lzo = "${SEPB}"
512B_pn-nativesdk-lzop = "${SEPB}"
513B_pn-nativesdk-m4 = "${SEPB}"
514B_pn-nativesdk-mpfr = "${SEPB}"
515B_pn-nativesdk-ncurses = "${SEPB}"
516B_pn-nativesdk-opkg = "${SEPB}"
517B_pn-nativesdk-pixman = "${SEPB}"
518B_pn-nativesdk-pkgconfig = "${SEPB}"
519# run.do_compile: 89: cd: can't cd to Lib/plat-linux2
520#B_pn-nativesdk-python = "${SEPB}"
521##B_pn-nativesdk-qemu = "${SEPB}"
522B_pn-nativesdk-randrproto = "${SEPB}"
523B_pn-nativesdk-readline = "${SEPB}"
524B_pn-nativesdk-renderproto = "${SEPB}"
525B_pn-nativesdk-sqlite3 = "${SEPB}"
526B_pn-nativesdk-systemtap = "${SEPB}"
527B_pn-nativesdk-unfs3 = "${SEPB}"
528B_pn-nativesdk-util-macros = "${SEPB}"
529B_pn-nativesdk-xcb-proto = "${SEPB}"
530B_pn-nativesdk-xcmiscproto = "${SEPB}"
531B_pn-nativesdk-xextproto = "${SEPB}"
532B_pn-nativesdk-xproto = "${SEPB}"
533B_pn-nativesdk-xtrans = "${SEPB}"
534B_pn-ncurses = "${SEPB}"
535B_pn-ncurses-native = "${SEPB}"
536B_pn-neon = "${SEPB}"
537B_pn-neon-native = "${SEPB}"
538##Weird as configure exits with error code despite apparent success
539##B_pn-nfs-utils = "${SEPB}"
540B_pn-npth = "${SEPB}"
541#B_pn-nspr = "${SEPB}"
542B_pn-ofono = "${SEPB}"
543B_pn-oh-puzzles = "${SEPB}"
544## make[2]: openjade-1.3.2/grove/../Makefile.comm: No such file or directory
545##B_pn-openjade-native = "${SEPB}"
546B_pn-opensp = "${SEPB}"
547B_pn-opensp-native = "${SEPB}"
548##/media/build1/poky/build1/tmp/work/i586-poky-linux/openssh/6.1p1-r0/openssh-6.1p1/configure: line 5674: syntax error near unexpected token `-Wall'
549##/media/build1/poky/build1/tmp/work/i586-poky-linux/openssh/6.1p1-r0/openssh-6.1p1/configure: line 5674: ` OSSH_CHECK_CFLAG_COMPILE(-Wall)'
550##Configure failed. The contents of all config.log files follows to aid debugging
551#B_pn-openssh = "${SEPB}"
552B_pn-openvpn = "${SEPB}"
553B_pn-opkg = "${SEPB}"
554B_pn-opkg-native = "${SEPB}"
555#B_pn-oprofile = "${SEPB}"
556B_pn-oprofileui = "${SEPB}"
557B_pn-oprofileui-server = "${SEPB}"
558B_pn-ossp-uuid = "${SEPB}"
559B_pn-ossp-uuid-native = "${SEPB}"
560B_pn-owl-video = "${SEPB}"
561B_pn-pango = "${SEPB}"
562B_pn-pango-native = "${SEPB}"
563B_pn-parted = "${SEPB}"
564B_pn-parted-native = "${SEPB}"
565B_pn-patch = "${SEPB}"
566B_pn-pax = "${SEPB}"
567B_pn-pcmanfm = "${SEPB}"
568B_pn-pixman = "${SEPB}"
569B_pn-pixman-native = "${SEPB}"
570B_pn-pkgconfig = "${SEPB}"
571B_pn-pkgconfig-native = "${SEPB}"
572B_pn-pm-utils = "${SEPB}"
573B_pn-polkit = "${SEPB}"
574B_pn-polkit-gnome = "${SEPB}"
575B_pn-popt = "${SEPB}"
576B_pn-popt-native = "${SEPB}"
577#B_pn-ppp = "${SEPB}"
578B_pn-prelink = "${SEPB}"
579B_pn-prelink-native = "${SEPB}"
580# Makefile only, no out of tree support
581#B_pn-procps = "${SEPB}"
582B_pn-psmisc = "${SEPB}"
583B_pn-psplash = "${SEPB}"
584B_pn-pth = "${SEPB}"
585B_pn-pulseaudio = "${SEPB}"
586#B_pn-python = "${SEPB}"
587B_pn-python-dbus = "${SEPB}"
588B_pn-python-gst = "${SEPB}"
589B_pn-python-native = "${SEPB}"
590B_pn-python-pygobject = "${SEPB}"
591B_pn-python-pygobject-native = "${SEPB}"
592B_pn-python-pygtk = "${SEPB}"
593## Not autotools
594##B_pn-qemu = "${SEPB}"
595##B_pn-qemu-native = "${SEPB}"
596##| /bin/bash: ./git-desc: No such file or directory
597##| /usr/bin/find: `compat': No such file or directory
598##| /bin/bash: /media/build1/poky/build1/tmp/work/x86_64-linux/quilt-native/0.60-r0/build/test/test.quiltrc: No such file or directory
599##| make: *** No rule to make target `Makefile.in', needed by `Makefile'. Stop.
600##B_pn-quilt = "${SEPB}"
601##B_pn-quilt-native = "${SEPB}"
602#B_pn-quota = "${SEPB}"
603B_pn-randrproto = "${SEPB}"
604B_pn-randrproto-native = "${SEPB}"
605B_pn-readline = "${SEPB}"
606B_pn-readline-native = "${SEPB}"
607B_pn-recordproto = "${SEPB}"
608B_pn-remake = "${SEPB}"
609B_pn-remake-native = "${SEPB}"
610B_pn-renderproto = "${SEPB}"
611B_pn-renderproto-native = "${SEPB}"
612B_pn-resourceproto = "${SEPB}"
613B_pn-rgb = "${SEPB}"
614B_pn-rpcbind = "${SEPB}"
615B_pn-rpm = "${SEPB}"
616B_pn-rpm-native = "${SEPB}"
617B_pn-rsync = "${SEPB}"
618B_pn-rxvt-unicode = "${SEPB}"
619B_pn-sato-icon-theme = "${SEPB}"
620B_pn-sato-screenshot = "${SEPB}"
621B_pn-sbc = "${SEPB}"
622B_pn-screen = "${SEPB}"
623B_pn-scrnsaverproto = "${SEPB}"
624B_pn-sed = "${SEPB}"
625B_pn-sed-native = "${SEPB}"
626# Wierd out of tree support, could probably be fixed
627#i586-poky-linux-gcc: error: setserial.c: No such file or directory
628#i586-poky-linux-gcc: fatal error: no input files
629#compilation terminated.
630#B_pn-setserial = "${SEPB}"
631B_pn-settings-daemon = "${SEPB}"
632B_pn-sgml-common = "${SEPB}"
633B_pn-sgml-common-native = "${SEPB}"
634B_pn-shadow = "${SEPB}"
635B_pn-shadow-native = "${SEPB}"
636B_pn-shared-mime-info = "${SEPB}"
637B_pn-shared-mime-info-native = "${SEPB}"
638##configure: error: "This software does not support configuring from another directory. See the INSTALL file"
639##B_pn-slang = "${SEPB}"
640B_pn-socat = "${SEPB}"
641B_pn-speex = "${SEPB}"
642B_pn-sqlite3 = "${SEPB}"
643B_pn-sqlite3-native = "${SEPB}"
644B_pn-startup-notification = "${SEPB}"
645B_pn-strace = "${SEPB}"
646B_pn-strace-native = "${SEPB}"
647B_pn-subversion = "${SEPB}"
648B_pn-subversion-native = "${SEPB}"
649B_pn-sudo = "${SEPB}"
650B_pn-sysfsutils = "${SEPB}"
651B_pn-sysprof = "${SEPB}"
652# No automake, no separate build support
653#B_pn-sysstat = "${SEPB}"
654B_pn-systemd = "${SEPB}"
655B_pn-systemtap = "${SEPB}"
656B_pn-systemtap-native = "${SEPB}"
657B_pn-tar = "${SEPB}"
658B_pn-tar-replacement-native = "${SEPB}"
659B_pn-tcl = "${SEPB}"
660B_pn-tcl-native = "${SEPB}"
661B_pn-telepathy-glib = "${SEPB}"
662B_pn-telepathy-idle = "${SEPB}"
663B_pn-telepathy-mission-control = "${SEPB}"
664B_pn-telepathy-python = "${SEPB}"
665B_pn-texi2html = "${SEPB}"
666B_pn-texinfo = "${SEPB}"
667B_pn-texinfo-native = "${SEPB}"
668B_pn-tiff = "${SEPB}"
669B_pn-tiff-native = "${SEPB}"
670B_pn-time = "${SEPB}"
671B_pn-tremor = "${SEPB}"
672B_pn-tslib = "${SEPB}"
673B_pn-udev = "${SEPB}"
674B_pn-unfs3 = "${SEPB}"
675B_pn-unfs3-native = "${SEPB}"
676B_pn-usbutils = "${SEPB}"
677B_pn-util-linux = "${SEPB}"
678B_pn-util-linux-native = "${SEPB}"
679B_pn-util-macros = "${SEPB}"
680B_pn-util-macros-native = "${SEPB}"
681B_pn-valgrind = "${SEPB}"
682B_pn-videoproto = "${SEPB}"
683B_pn-vte = "${SEPB}"
684B_pn-watchdog = "${SEPB}"
685B_pn-wayland = "${SEPB}"
686B_pn-wayland-native = "${SEPB}"
687# Not even going there
688#B_pn-webkit-gtk = "${SEPB}"
689B_pn-weston = "${SEPB}"
690B_pn-wget = "${SEPB}"
691B_pn-which = "${SEPB}"
692B_pn-x11perf = "${SEPB}"
693#B_pn-x11vnc = "${SEPB}"
694B_pn-xauth = "${SEPB}"
695B_pn-xcb-proto = "${SEPB}"
696B_pn-xcb-proto-native = "${SEPB}"
697B_pn-xcb-util = "${SEPB}"
698B_pn-xcb-util-image = "${SEPB}"
699B_pn-xcb-util-keysyms = "${SEPB}"
700B_pn-xcb-util-renderutil = "${SEPB}"
701B_pn-xcb-util-wm = "${SEPB}"
702B_pn-xcmiscproto = "${SEPB}"
703B_pn-xcmiscproto-native = "${SEPB}"
704B_pn-xcursor-transparent-theme = "${SEPB}"
705# No out of tree support, no automake
706#/usr/bin/install: cannot stat `xdg-desktop-menu': No such file or directory
707#/usr/bin/install: cannot stat `xdg-desktop-icon': No such file or directory
708#/usr/bin/install: cannot stat `xdg-mime': No such file or directory
709#/usr/bin/install: cannot stat `xdg-icon-resource': No such file or directory
710#/usr/bin/install: cannot stat `xdg-open': No such file or directory
711#/usr/bin/install: cannot stat `xdg-email': No such file or directory
712#/usr/bin/install: cannot stat `xdg-screensaver': No such file or directory
713#make[1]: *** [install] Error 1
714#Probably fixable
715#B_pn-xdg-utils = "${SEPB}"
716B_pn-xdpyinfo = "${SEPB}"
717B_pn-xev = "${SEPB}"
718B_pn-xextproto = "${SEPB}"
719B_pn-xextproto-native = "${SEPB}"
720B_pn-xeyes = "${SEPB}"
721B_pn-xf86dgaproto = "${SEPB}"
722B_pn-xf86driproto = "${SEPB}"
723B_pn-xf86-input-evdev = "${SEPB}"
724B_pn-xf86-input-keyboard = "${SEPB}"
725B_pn-xf86-input-mouse = "${SEPB}"
726B_pn-xf86-input-synaptics = "${SEPB}"
727B_pn-xf86-input-vmmouse = "${SEPB}"
728B_pn-xf86miscproto = "${SEPB}"
729B_pn-xf86-video-fbdev = "${SEPB}"
730B_pn-xf86-video-imxfb = "${SEPB}"
731B_pn-xf86-video-intel = "${SEPB}"
732B_pn-xf86-video-mga = "${SEPB}"
733B_pn-xf86-video-modesetting = "${SEPB}"
734B_pn-xf86-video-omap = "${SEPB}"
735B_pn-xf86-video-omapfb = "${SEPB}"
736B_pn-xf86-video-vesa = "${SEPB}"
737B_pn-xf86-video-vmware = "${SEPB}"
738B_pn-xf86vidmodeproto = "${SEPB}"
739B_pn-xhost = "${SEPB}"
740B_pn-xineramaproto = "${SEPB}"
741B_pn-xinetd = "${SEPB}"
742B_pn-xinit = "${SEPB}"
743B_pn-xinput = "${SEPB}"
744B_pn-xkbcomp = "${SEPB}"
745B_pn-xkbcomp-native = "${SEPB}"
746B_pn-xkeyboard-config = "${SEPB}"
747B_pn-xmodmap = "${SEPB}"
748B_pn-xprop = "${SEPB}"
749B_pn-xproto = "${SEPB}"
750B_pn-xproto-native = "${SEPB}"
751B_pn-xrandr = "${SEPB}"
752B_pn-xrestop = "${SEPB}"
753B_pn-xserver-xorg = "${SEPB}"
754B_pn-xset = "${SEPB}"
755B_pn-xtrans = "${SEPB}"
756B_pn-xtrans-native = "${SEPB}"
757B_pn-xtscal = "${SEPB}"
758B_pn-xvideo-tests = "${SEPB}"
759B_pn-xvinfo = "${SEPB}"
760B_pn-xwininfo = "${SEPB}"
761B_pn-xz = "${SEPB}"
762B_pn-xz-native = "${SEPB}"
763B_pn-yasm = "${SEPB}"
764B_pn-yasm-native = "${SEPB}"
765B_pn-zaurusd = "${SEPB}"
766
767# Recipes that cannot by design use a separate build directory:
768# wpa-supplicant
diff --git a/meta/conf/distro/include/tclibc-eglibc.inc b/meta/conf/distro/include/tclibc-eglibc.inc
new file mode 100644
index 0000000..15f5ee5
--- /dev/null
+++ b/meta/conf/distro/include/tclibc-eglibc.inc
@@ -0,0 +1,40 @@
1#
2# eglibc specific configuration
3#
4
5LIBCEXTENSION = "${@['', '-gnu'][(d.getVar('ABIEXTENSION', True) or '') != '']}"
6
7# Add glibc overrides to the overrides for eglibc.
8LIBCOVERRIDE = ":libc-glibc"
9OVERRIDES .= "${LIBCOVERRIDE}"
10
11PREFERRED_PROVIDER_virtual/libiconv ?= "eglibc"
12PREFERRED_PROVIDER_virtual/nativesdk-libiconv ?= "nativesdk-eglibc"
13PREFERRED_PROVIDER_virtual/nativesdk-libintl ?= "nativesdk-eglibc"
14PREFERRED_PROVIDER_virtual/libintl ?= "eglibc"
15PREFERRED_PROVIDER_virtual/libc ?= "eglibc"
16PREFERRED_PROVIDER_virtual/nativesdk-libc ?= "nativesdk-eglibc"
17PREFERRED_PROVIDER_virtual/libc-locale ?= "eglibc-locale"
18
19CXXFLAGS += "-fvisibility-inlines-hidden"
20
21LIBC_DEPENDENCIES = "libsegfault \
22 eglibc \
23 eglibc-dbg \
24 eglibc-dev \
25 eglibc-utils \
26 eglibc-thread-db \
27 ${@get_libc_locales_dependencies(d)}"
28
29LIBC_LOCALE_DEPENDENCIES = "\
30 eglibc-localedata-i18n \
31 eglibc-gconv-ibm850 \
32 eglibc-gconv-cp1252 \
33 eglibc-gconv-iso8859-1 \
34 eglibc-gconv-iso8859-15"
35
36def get_libc_locales_dependencies(d):
37 if 'libc-locales' in (d.getVar('DISTRO_FEATURES', True) or '').split() :
38 return d.getVar('LIBC_LOCALE_DEPENDENCIES', True) or ''
39 else:
40 return ''
diff --git a/meta/conf/distro/include/tclibc-uclibc.inc b/meta/conf/distro/include/tclibc-uclibc.inc
new file mode 100644
index 0000000..a4d8c39
--- /dev/null
+++ b/meta/conf/distro/include/tclibc-uclibc.inc
@@ -0,0 +1,28 @@
1#
2# uclibc specific configuration
3#
4
5LIBCEXTENSION = "-uclibc"
6
7# Add uclibc overrides to the overrides.
8LIBCOVERRIDE = ":libc-uclibc"
9OVERRIDES .= "${LIBCOVERRIDE}"
10
11PREFERRED_PROVIDER_virtual/libc ?= "uclibc"
12PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
13PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
14PREFERRED_PROVIDER_virtual/nativesdk-libintl ?= "nativesdk-eglibc"
15PREFERRED_PROVIDER_virtual/nativesdk-libiconv ?= "nativesdk-eglibc"
16
17USE_NLS ?= "no"
18
19CXXFLAGS += "-fvisibility-inlines-hidden"
20
21IMAGE_LINGUAS = ""
22
23LIBC_DEPENDENCIES = "\
24 uclibc \
25 uclibc-dbg \
26 uclibc-dev \
27 uclibc-thread-db \
28 "
diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
new file mode 100644
index 0000000..300deea
--- /dev/null
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -0,0 +1,60 @@
1#
2# Default toolchain configuration
3#
4
5PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
6PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial"
7PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate"
8PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross"
9PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross"
10PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "gcc-runtime"
11PREFERRED_PROVIDER_gdb = "gdb"
12
13# Default libc config
14PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "${TCLIBC}"
15PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-for-gcc ?= "nativesdk-${TCLIBC}"
16PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "${TCLIBC}-initial"
17PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-initial = "nativesdk-${TCLIBC}-initial"
18PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
19
20GCCVERSION ?= "4.8%"
21SDKGCCVERSION ?= "${GCCVERSION}"
22BINUVERSION ?= "2.24"
23EGLIBCVERSION ?= "2.19"
24UCLIBCVERSION ?= "0.9.33+git%"
25LINUXLIBCVERSION ?= "3.14"
26
27PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
28PREFERRED_VERSION_gcc-cross ?= "${GCCVERSION}"
29PREFERRED_VERSION_gcc-cross-initial ?= "${GCCVERSION}"
30PREFERRED_VERSION_gcc-cross-intermediate ?= "${GCCVERSION}"
31PREFERRED_VERSION_gcc-crosssdk ?= "${SDKGCCVERSION}"
32PREFERRED_VERSION_gcc-crosssdk-initial ?= "${SDKGCCVERSION}"
33PREFERRED_VERSION_gcc-crosssdk-intermediate ?= "${SDKGCCVERSION}"
34PREFERRED_VERSION_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= "${GCCVERSION}"
35PREFERRED_VERSION_gcc-runtime ?= "${GCCVERSION}"
36PREFERRED_VERSION_nativesdk-gcc-runtime ?= "${SDKGCCVERSION}"
37PREFERRED_VERSION_libgcc ?= "${GCCVERSION}"
38PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
39PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
40PREFERRED_VERSION_binutils-cross ?= "${BINUVERSION}"
41PREFERRED_VERSION_binutils-crosssdk ?= "${BINUVERSION}"
42PREFERRED_VERSION_binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= "${BINUVERSION}"
43PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}"
44PREFERRED_VERSION_nativesdk-linux-libc-headers ?= "${LINUXLIBCVERSION}"
45PREFERRED_VERSION_eglibc ?= "${EGLIBCVERSION}"
46PREFERRED_VERSION_eglibc-locale ?= "${EGLIBCVERSION}"
47PREFERRED_VERSION_nativesdk-eglibc ?= "${EGLIBCVERSION}"
48PREFERRED_VERSION_eglibc-initial ?= "${EGLIBCVERSION}"
49PREFERRED_VERSION_nativesdk-eglibc-initial ?= "${EGLIBCVERSION}"
50PREFERRED_VERSION_cross-localedef-native ?= "${EGLIBCVERSION}"
51PREFERRED_VERSION_uclibc ?= "${UCLIBCVERSION}"
52PREFERRED_VERSION_uclibc-initial ?= "${UCLIBCVERSION}"
53PREFERRED_VERSION_elfutils ?= "0.148"
54# don't use version earlier than 1.4 for gzip-native, as it's necessary for
55# some packages using an archive format incompatible with earlier gzip
56PREFERRED_VERSION_gzip-native ?= "1.6"
57
58# Setup suitable toolchain flags
59require conf/distro/include/as-needed.inc
60
diff --git a/meta/conf/distro/include/world-broken.inc b/meta/conf/distro/include/world-broken.inc
new file mode 100644
index 0000000..ab0c2dc
--- /dev/null
+++ b/meta/conf/distro/include/world-broken.inc
@@ -0,0 +1,5 @@
1#
2# Exclude known broken packages
3#
4
5
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
new file mode 100644
index 0000000..7fa3f31
--- /dev/null
+++ b/meta/conf/documentation.conf
@@ -0,0 +1,447 @@
1# this file holds documentation for known keys, possible values and
2# their meanings. Please update, correct and extend this documentation.
3# Mail your changes to openembedded-devel@openembedded.org
4
5# DESCRIPTIONS FOR TASKS #
6
7do_bootimg[doc] = "Creates a bootable live image"
8do_build[doc] = "Default task for a recipe - depends on all other normal tasks required to 'build' a recipe"
9do_bundle_initramfs[doc] = "Combines an initial ramdisk image and kernel together to form a single image"
10do_checkuri[doc] = "Validates the SRC_URI value"
11do_checkuriall[doc] = "Validates the SRC_URI value for all recipes required to build a target"
12do_clean[doc] = "Removes all output files for a target"
13do_cleanall[doc] = "Removes all output files, shared state cache, and downloaded source files for a target"
14do_cleansstate[doc] = "Removes all output files and shared state cache for a target"
15do_compile[doc] = "Compiles the source in the compilation directory"
16do_compile_kernelmodules[doc] = "Compiles loadable modules for the Linux kernel"
17do_compile_ptest_base[doc] = "Compiles the runtime test suite included in the software being built"
18do_configure[doc] = "Configures the source by enabling and disabling any build-time and configuration options for the software being built"
19do_configure_ptest_base[doc] = "Configures the runtime test suite included in the software being built"
20do_deploy[doc] = "Writes deployable output files to the deploy directory"
21do_devshell[doc] = "Starts a shell with the environment set up for development/debugging"
22do_diffconfig[doc] = "Compares the old and new config files after running do_menuconfig for the kernel"
23do_fetch[doc] = "Fetches the source code"
24do_fetchall[doc] = "Fetches all remote sources required to build a target"
25do_generate_qt_config_file[doc] = "Writes a qt.conf file for building a Qt-based application"
26do_install[doc] = "Copies files from the compilation directory to a holding area"
27do_install_ptest_base[doc] = "Copies the runtime test suite files from the compilation directory to a holding area"
28do_kernel_checkout[doc] = "Checks out source/meta branches for a linux-yocto style kernel"
29do_kernel_configcheck[doc] = "Validates the kernel configuration for a linux-yocto style kernel"
30do_kernel_configme[doc] = "Assembles the kernel configuration for a linux-yocto style kernel"
31do_kernel_link_vmlinux[doc] = "Creates a symbolic link in arch/$arch/boot for vmlinux kernel images"
32do_listtasks[doc] = "Lists all defined tasks for a target"
33do_menuconfig[doc] = "Runs 'make menuconfig' for the kernel"
34do_package[doc] = "Analyzes the content of the holding area and splits it into subsets based on available packages and files"
35do_package_index[doc] = "Creates or updates the index in the Package Feed area"
36do_package_write[doc] = "Creates the actual packages and places them in the Package Feed area"
37do_package_write_deb[doc] = "Creates the actual DEB packages and places them in the Package Feed area"
38do_package_write_ipk[doc] = "Creates the actual IPK packages and places them in the Package Feed area"
39do_package_write_rpm[doc] = "Creates the actual RPM packages and places them in the Package Feed area"
40do_package_write_tar[doc] = "Creates tar archives for packages and places them in the Package Feed area"
41do_packagedata[doc] = "Creates package metadata used by the build system to generate the final packages"
42do_patch[doc] = "Locates patch files and applies them to the source code"
43do_populate_lic[doc] = "Writes license information for the recipe that is collected later when the image is constructed"
44do_populate_sdk[doc] = "Creates the file and directory structure for an installable SDK"
45do_populate_sysroot[doc] = "Copies a subset of files installed by do_install into the sysroot in order to make them available to other recipes"
46do_rm_work[doc] = "Removes work files after the build system has finished with them"
47do_rm_work_all[doc] = "Top-level task for removing work files after the build system has finished with them"
48do_rootfs[doc] = "Creates the root filesystem (file and directory structure) for an image"
49do_savedefconfig[doc] = "Creates a minimal Linux kernel configuration file"
50do_sizecheck[doc] = "Checks the size of the kernel image against KERNEL_IMAGE_MAXSIZE (if set)"
51do_spdx[doc] = "A build stage that takes the source code and scans it on a remote FOSSOLOGY server in order to produce an SPDX document"
52do_strip[doc] = "Strips unneeded sections out of the Linux kernel image"
53do_testimage[doc] = "Boots an image and performs runtime tests within the image"
54do_testimage_auto[doc] = "Boots an image and performs runtime tests within the image immediately after it has been built"
55do_uboot_mkimage[doc] = "Creates a uImage file from the kernel for the U-Boot bootloader"
56do_unpack[doc] = "Unpacks the source code into a working directory"
57do_validate_branches[doc] = "Ensures that the source/meta branches are on the locations specified by their SRCREV values for a linux-yocto style kernel"
58do_vmdkimg[doc] = "Creates a .vmdk image for use with VMware and compatible virtual machine hosts"
59
60# DESCRIPTIONS FOR VARIABLES #
61
62#A
63
64ALLOW_EMPTY[doc] = "Specifies if an output package should still be produced if it is empty."
65ALTERNATIVE[doc] = "Lists commands in a package that need an alternative binary naming scheme."
66ALTERNATIVE_LINK_NAME[doc] = "Used by the alternatives system to map duplicated commands to actual locations."
67ALTERNATIVE_PRIORITY[doc] = "Used by the alternatives system to create default priorities for duplicated commands."
68ALTERNATIVE_TARGET[doc] = "Used by the alternatives system to create default link locations for duplicated commands."
69ASSUME_PROVIDED[doc] = "List of packages (recipes actually) that are assumed to be implicitly available. BitBake does not build these packages."
70ASSUME_SHLIBS[doc] = "List of shlib:package[_version] mappings. Useful for lib packages in ASSUME_PROVIDED, for which automatic shlib dependency tracking does not work."
71AUTHOR[doc] = "Email address used to contact the original author(s) in order to send patches and forward bugs."
72AUTO_SYSLINUXMENU[doc] = "Enables creating an automatic menu for the syslinux bootloader."
73AUTOREV[doc] = "When SRCREV is set to the value of this variable, it specifies to use the latest source revision in the repository."
74
75#B
76
77B[doc] = "The Build Directory. The OpenEmbedded build system places generated objects into the Build Directory during a recipe's build process."
78BAD_RECOMMENDATIONS[doc] = "A list of packages not to install despite being recommended by a recipe. Support for this variable exists only when using the IPK packaging backend."
79BB_DANGLINGAPPENDS_WARNONLY[doc] = "Defines how BitBake handles situations where an append file (.bbappend) has no corresponding recipe file (.bb)."
80BB_DISKMON_DIRS[doc] = "Monitors disk space and available inodes during the build and allows you to control the build based on these parameters."
81BB_DISKMON_WARNINTERVAL[doc] = "Defines the disk space and free inode warning intervals. To set these intervals, define the variable in the conf/local.conf file in the Build Directory."
82BB_GENERATE_MIRROR_TARBALLS[doc] = "Causes tarballs of the Git repositories to be placed in the DL_DIR directory."
83BB_NUMBER_THREADS[doc] = "The maximum number of tasks BitBake should run in parallel at any one time. A good rule of thumb is to set this variable to twice the number of cores."
84BBCLASSEXTEND[doc] = "Allows you to extend a recipe so that it builds variants of the software. Common variants for recipes are 'native', 'cross', 'nativesdk' and multilibs."
85BBFILE_COLLECTIONS[doc] = "Lists the names of configured layers. These names are used to find the other BBFILE_* variables."
86BBFILE_PATTERN[doc] = "Variable that expands to match files from BBFILES in a particular layer. This variable is used in the layer.conf file and must be suffixed with the name of a layer."
87BBFILE_PRIORITY[doc] = "Assigns the priority for recipe files in each layer. Setting this variable allows you to prioritize a layer against other layers that contain the same recipe."
88BBFILES[doc] = "List of recipe files used by BitBake to build software."
89BBINCLUDELOGS[doc] = "Variable that controls how BitBake displays logs on build failure."
90BBINCLUDELOGS_LINES[doc] = "Amount of log lines printed on failure."
91BBLAYERS[doc] = "Lists the layers to enable during the build. This variable is defined in the bblayers.conf configuration file."
92BBLAYERS_NON_REMOVABLE[doc] = "Lists core layers that cannot be removed from the bblayers.conf file."
93BBMASK[doc] = "Prevents BitBake from processing specific recipes or recipe append files. Use the BBMASK variable from within conf/local.conf."
94BBPATH[doc] = "Used by BitBake to locate .bbclass and configuration files. This variable is analogous to the PATH variable."
95BBSERVER[doc] = "Points to the server that runs memory-resident BitBake."
96BINCONFIG_GLOB[doc] = "When inheriting binconfig.bbclass from a recipe, this variable specifies a wildcard for configuration scripts that need editing."
97BP[doc] = "The base recipe name and version but without any special recipe name suffix (i.e. -native, lib64-, and so forth). BP is comprised of ${BPN}-${PV}"
98BPN[doc] = "The bare name of the recipe. This variable is a version of the PN variable but removes common suffixes and prefixes."
99BUGTRACKER[doc] = "Specifies a URL for an upstream bug tracking website for a recipe."
100BUILD_ARCH[doc] = "The name of the building architecture (e.g. i686)."
101BUILD_OS[doc] = "The operating system (in lower case) of the building architecture (e.g. linux)."
102BUILDDIR[doc] = "Points to the location of the Build Directory."
103BUILDSTATS_BASE[doc] = "Points to the location of the directory that holds build statistics when you use and enable the buildstats class."
104BUSYBOX_SPLIT_SUID[doc] = "For the BusyBox recipe, specifies whether to split the output executable file into two parts: one for features that require setuid root, and one for the remaining features."
105
106#C
107
108CACHE[doc] = "The directory holding the cache of the metadata."
109CFLAGS[doc] = "Flags passed to the C compiler for the target system. This variable evaluates to the same as TARGET_CFLAGS."
110CLASSOVERRIDE[doc] = "An internal variable specifying the special class override that should currently apply (e.g. "class-target", "class-native", and so forth)."
111COMBINED_FEATURES[doc] = "A set of features common between MACHINE_FEATURES and DISTRO_FEATURES."
112COMMON_LICENSE_DIR[doc] = "Points to meta/files/common-licenses in the Source Directory, which is where generic license files reside."
113COMPATIBLE_HOST[doc] = "A regular expression that resolves to one or more hosts (when the recipe is native) or one or more targets (when the recipe is non-native) with which a recipe is compatible."
114COMPATIBLE_MACHINE[doc] = "A regular expression that resolves to one or more target machines with which a recipe is compatible."
115COMPLEMENTARY_GLOB[doc] = "Defines wildcards to match when installing a list of complementary packages for all the packages installed in an image."
116CONFFILES[doc] = "Identifies editable or configurable files that are part of a package."
117CONFIG_SITE[doc] = "A list of files that contains autoconf test results relevant to the current build. This variable is used by the Autotools utilities when running configure."
118CONFLICT_DISTRO_FEATURES[doc] = "When a recipe inherits the distro_features_check class, this variable identifies distribution features that would be in conflict should the recipe be built."
119CORE_IMAGE_EXTRA_INSTALL[doc] = "Specifies the list of packages to be added to the image. You should only set this variable in the conf/local.conf file in the Build Directory."
120COREBASE[doc] = "Specifies the parent directory of the OpenEmbedded Core Metadata layer (i.e. meta)."
121CONF_VERSION[doc] = "Tracks the version of local.conf. Increased each time build/conf/ changes incompatibly."
122CVSDIR[doc] = "The directory where cvs checkouts will be stored in."
123
124#D
125
126D[doc] = "The destination directory."
127DATE[doc] = "The date the build was started using YMD format."
128DATETIME[doc] = "The date and time the build was started."
129DEBUG_BUILD[doc] = "Specifies to build packages with debugging information. This influences the value of the SELECTED_OPTIMIZATION variable."
130DEBUG_OPTIMIZATION[doc] = "The options to pass in TARGET_CFLAGS and CFLAGS when compiling a system for debugging. This variable defaults to '-O -fno-omit-frame-pointer -g'."
131DEFAULT_PREFERENCE[doc] = "Specifies a weak bias for recipe selection priority."
132DEPENDS[doc] = "Lists a recipe's build-time dependencies (i.e. other recipe files)."
133DEPLOY_DIR[doc] = "Points to the general area that the OpenEmbedded build system uses to place images, packages, SDKs and other output files that are ready to be used outside of the build system."
134DEPLOY_DIR_IMAGE[doc] = "Points to the area that the OpenEmbedded build system uses to place images and other associated output files that are ready to be deployed onto the target machine."
135DEPLOYDIR[doc] = "For recipes that inherit the deploy class, the DEPLOYDIR points to a temporary work area for deployed files."
136DESCRIPTION[doc] = "The package description used by package managers. If not set, DESCRIPTION takes the value of the SUMMARY variable."
137DISTRO[doc] = "The short name of the distribution. If the variable is blank, meta/conf/distro/defaultsetup.conf will be used."
138DISTRO_EXTRA_RDEPENDS[doc] = "Specifies a list of distro-specific packages to add to all images. The variable only applies to the images that include packagegroup-base."
139DISTRO_EXTRA_RRECOMMENDS[doc] = "Specifies a list of distro-specific packages to add to all images if the packages exist. The list of packages are automatically installed but you can remove them."
140DISTRO_FEATURES[doc] = "The features enabled for the distribution."
141DISTRO_FEATURES_BACKFILL[doc] = "Features to be added to DISTRO_FEATURES if not also present in DISTRO_FEATURES_BACKFILL_CONSIDERED. This variable is set in the meta/conf/bitbake.conf file and it is not intended to be user-configurable."
142DISTRO_FEATURES_BACKFILL_CONSIDERED[doc] = "Features from DISTRO_FEATURES_BACKFILL that should not be backfilled (i.e. added to DISTRO_FEATURES) during the build."
143DISTRO_NAME[doc] = "The long name of the distribution."
144DISTRO_PN_ALIAS[doc] = "Alias names used for the recipe in various Linux distributions."
145DISTRO_VERSION[doc] = "The version of the distribution."
146DISTROOVERRIDES[doc] = "Lists overrides specific to the current distribution. By default, the variable list includes the value of the DISTRO variable."
147DL_DIR[doc] = "The central download directory used by the build process to store downloads. By default, the directory is 'downloads' in the Build Directory."
148
149#E
150
151ENABLE_BINARY_LOCALE_GENERATION[doc] = "Controls which locales for eglibc are generated during the build. The variable is useful if the target device has 64Mbytes of RAM or less."
152ERROR_QA[doc] = "Specifies the quality assurance checks whose failures are reported as errors by the OpenEmbedded build system."
153EXCLUDE_FROM_WORLD[doc] = "Directs BitBake to exclude a recipe from world builds (i.e. bitbake world)."
154EXTENDPE[doc] = "Used with file and pathnames to create a prefix for a recipe's version based on the recipe's PE value. If PE is set and greater than zero for a recipe, EXTENDPE becomes that value."
155EXTENDPKGV[doc] = "The full package version specification as it appears on the final packages produced by a recipe."
156EXTERNALSRC[doc] = "If externalsrc.bbclass is inherited, this variable points to the source tree, which is outside of the OpenEmbedded build system."
157EXTERNALSRC_BUILD[doc] = "If externalsrc.bbclass is inherited, this variable points to the directory in which the recipe's source code is built, which is outside of the OpenEmbedded build system."
158EXTRA_IMAGE_FEATURES[doc] = "The list of additional features to include in an image. Configure this variable in the conf/local.conf file in the Build Directory."
159EXTRA_IMAGEDEPENDS[doc] = "A list of recipes to build that do not provide packages for installing into the root filesystem. Use this variable to list recipes that are required to build the final image, but not needed in the root filesystem."
160EXTRA_OECMAKE[doc] = "Additional cmake options."
161EXTRA_OECONF[doc] = "Additional configure script options."
162EXTRA_OEMAKE[doc] = "Additional GNU make options."
163EXTRA_OESCONS[doc] = "When a recipe inherits the scons class, this variable specifies additional configuration options you want to pass to the scons command line."
164EXTRA_QMAKEVARS_POST[doc] = "Configuration variables or options you want to pass to qmake when the arguments need to be after the .pro file list on the command line."
165EXTRA_QMAKEVARS_PRE[doc] = "Configuration variables or options you want to pass to qmake when the arguments need to be before the .pro file list on the command line."
166EXTRA_USERS_PARAMS[doc] = "When a recipe inherits the extrausers class, this variable provides image level user and group operations."
167
168#F
169
170FEED_DEPLOYDIR_BASE_URI[doc] = "Allow to serve ipk deploy directory as an ad hoc feed (bogofeed). Set to base URL of the directory as exported by HTTP. Set of ad hoc feed configs will be generated in the image."
171FILES[doc] = "The list of directories or files that are placed in packages."
172FILESEXTRAPATHS[doc] = "Extends the search path the OpenEmbedded build system uses when looking for files and patches as it processes recipes and append files."
173FILESOVERRIDES[doc] = "A subset of OVERRIDES used by the OpenEmbedded build system for creating FILESPATH."
174FILESPATH[doc] = "The default set of directories the OpenEmbedded build system uses when searching for patches and files. It is defined in the base.bbclass class found in meta/classes in the Source Directory. Do not hand-edit the FILESPATH variable."
175FILESYSTEM_PERMS_TABLES[doc] = "Allows you to define your own file permissions settings table as part of your configuration for the packaging process."
176FONT_EXTRA_RDEPENDS[doc] = "When a recipe inherits the fontcache class, this variable specifies runtime dependencies for font packages. This variable defaults to 'fontconfig-utils'."
177FONT_PACKAGES[doc] = "When a recipe inherits the fontcache class, this variable identifies packages containing font files that need to be cached by Fontconfig."
178FULL_OPTIMIZATION[doc]= "The options to pass in TARGET_CFLAGS and CFLAGS when compiling an optimized system. This variable defaults to '-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2'."
179
180#G
181
182GITDIR[doc] = "The directory where Git clones will be stored."
183GROUPADD_PARAM[doc] = "When a recipe inherits the useradd class, this variable specifies for a package what parameters should be passed to the groupadd command if you wish to add a group to the system when the package is installed."
184GROUPMEMS_PARAM[doc] = "When a recipe inherits the useradd class, this variable specifies for a package what parameters should be passed to the groupmems command if you wish to modify the members of a group when the package is installed."
185GRUB_GFXSERIAL[doc] = "Configures the GNU GRand Unified Bootloader (GRUB) to have graphics and serial in the boot menu."
186GRUB_OPTS[doc] = "Additional options to add to the GNU GRand Unified Bootloader (GRUB) configuration."
187GRUB_TIMEOUT[doc] = "Specifies the timeout before executing the default LABEL in the GNU GRand Unified Bootloader (GRUB)."
188GTKIMMODULES_PACKAGES[doc] = "For recipes that inherit the gtk-immodules-cache class, this variable specifies the packages that contain the GTK+ input method modules being installed when the modules are in packages other than the main package."
189
190#H
191
192HOMEPAGE[doc] = "Website where more information about the software the recipe is building can be found."
193HOST_ARCH[doc] = "The name of the target architecture. Normally same as the TARGET_ARCH."
194HOST_CC_ARCH[doc] = "The name of the host architecture. Normally same as the TARGET_CC_ARCH."
195HOST_OS[doc] = "The name of the target operating system. Normally the same as the TARGET_OS."
196HOST_PREFIX[doc] = "The prefix for the cross compile toolchain. Normally same as the TARGET_PREFIX."
197HOST_SYS[doc] = "Specifies the system, including the architecture and the operating system, for with the build is occurring in the context of the current recipe."
198HOST_VENDOR[doc] = "The name of the vendor. Normally same as the TARGET_VENDOR."
199
200#I
201
202ICECC_ENV_EXEC[doc] = "Points to the icecc-create-env script that you provide."
203ICECC_PATH[doc] = "The location of the icecc binary."
204ICECC_USER_CLASS_BL[doc] = "Identifies user classes that you do not want the Icecream distributed compile support to consider."
205ICECC_USER_PACKAGE_BL[doc] = "Identifies user recipes that you do not want the Icecream distributed compile support to consider."
206ICECC_USER_PACKAGE_WL[doc] = "Identifies user recipes that use an empty PARALLEL_MAKE variable that you want to force remote distributed compilation on using the Icecream distributed compile support."
207IMAGE_BASENAME[doc] = "The base name of image output files."
208IMAGE_CLASSES[doc] = "A list of classes that all images should inherit."
209IMAGE_FEATURES[doc] = "The primary list of features to include in an image. Configure this variable in an image recipe."
210IMAGE_FSTYPES[doc] = "Formats of root filesystem images that you want to have created."
211IMAGE_INSTALL[doc] = "Specifies the packages to install into an image. Image recipes set IMAGE_INSTALL to specify the packages to install into an image through image.bbclass."
212IMAGE_LINGUAS[doc] = "Specifies the list of locales to install into the image during the root filesystem construction process."
213IMAGE_NAME[doc] = "The name of the output image files minus the extension."
214IMAGE_OVERHEAD_FACTOR[doc] = "Defines a multiplier that the build system applies to the initial image size for cases when the multiplier times the returned disk usage value for the image is greater than the sum of IMAGE_ROOTFS_SIZE and IMAGE_ROOTFS_EXTRA_SPACE."
215IMAGE_PKGTYPE[doc] = "Defines the package type (DEB, RPM, IPK, or TAR) used by the OpenEmbedded build system."
216IMAGE_POSTPROCESS_COMMAND[doc] = "Added by classes to run post processing commands once the OpenEmbedded build system has created the image."
217IMAGE_ROOTFS[doc] = "The location of the root filesystem while it is under construction (i.e. during do_rootfs)."
218IMAGE_ROOTFS_EXTRA_SPACE[doc] = "Defines additional free disk space created in the image in Kbytes. By default, this variable is set to '0'."
219IMAGE_ROOTFS_SIZE[doc] = "Defines the size in Kbytes for the generated image."
220IMAGE_TYPES[doc] = "Specifies the complete list of supported image types by default."
221INC_PR[doc] = "Helps define the recipe revision for recipes that share a common include file."
222INCOMPATIBLE_LICENSE[doc] = "Specifies a space-separated list of license names (as they would appear in LICENSE) that should be excluded from the build."
223INHIBIT_DEFAULT_DEPS[doc] = "Prevents the default dependencies, namely the C compiler and standard C library (libc), from being added to DEPENDS."
224INHIBIT_PACKAGE_STRIP[doc] = "If set to "1", causes the build to not strip binaries in resulting packages."
225INHERIT[doc] = "Causes the named class to be inherited at this point during parsing. The variable is only valid in configuration files."
226INHERIT_DISTRO[doc] = "Lists classes that will be inherited at the distribution level. It is unlikely that you want to edit this variable."
227INITRAMFS_FSTYPES[doc] = "Defines the format for the output image of an initial RAM disk (initramfs), which is used during boot."
228INITRD[doc] = "Indicates a filesystem image to use as an initial RAM disk (initrd)."
229INITSCRIPT_NAME[doc] = "The filename of the initialization script as installed to ${sysconfdir}/init.d."
230INITSCRIPT_PACKAGES[doc] = "A list of the packages that contain initscripts. This variable is used in recipes when using update-rc.d.bbclass. The variable is optional and defaults to the PN variable."
231INITSCRIPT_PARAMS[doc] = "Specifies the options to pass to update-rc.d. The variable is mandatory and is used in recipes when using update-rc.d.bbclass."
232INSANE_SKIP[doc] = "Specifies the QA checks to skip for a specific package within a recipe."
233IPK_FEED_URIS[doc] = "List of ipkg feed records to put into generated image."
234
235#K
236
237KARCH[doc] = "Defines the kernel architecture used when assembling the configuration. You define the KARCH variable in the BSP Descriptions."
238KBRANCH[doc] = "A regular expression used by the build process to explicitly identify the kernel branch that is validated, patched and configured during a build."
239KBRANCH_DEFAULT[doc] = "Defines the Linux kernel source repository's default branch used to build the Linux kernel. Unless you specify otherwise, the variable initializes to 'master'."
240KERNEL_EXTRA_ARGS[doc] = "Specifies additional make command-line arguments the OpenEmbedded build system passes on when compiling the kernel."
241KERNEL_FEATURES[doc] = "Includes additional metadata from the Yocto Project kernel Git repository. The metadata you add through this variable includes config fragments and features descriptions."
242KERNEL_IMAGETYPE[doc] = "The type of kernel to build for a device, usually set by the machine configuration files and defaults to 'zImage'."
243KERNEL_PATH[doc] = "The location of the kernel sources. This variable is set to the value of the STAGING_KERNEL_DIR within the module class (module.bbclass)."
244KERNEL_SRC[doc] = "The location of the kernel sources. This variable is set to the value of the STAGING_KERNEL_DIR within the module class (module.bbclass)."
245KFEATURE_DESCRIPTION[doc] = "Provides a short description of a configuration fragment. You use this variable in the .scc file that describes a configuration fragment file."
246KMACHINE[doc] = "The machine as known by the kernel."
247KTYPE[doc] = "Defines the kernel type to be used in assembling the configuration."
248
249#L
250
251LAYERDEPENDS[doc] = "Lists the layers, separated by spaces, upon which this recipe depends. This variable is used in the conf/layer.conf file and must be suffixed with the name of the specific layer."
252LAYERDIR[doc] = "When used inside the layer.conf configuration file, this variable provides the path of the current layer."
253LAYERVERSION[doc] = "Optionally specifies the version of a layer as a single number. This variable is used in the conf/layer.conf file and must be suffixed with the name of the specific layer."
254LEAD_SONAME[doc] = "Specifies the lead (or primary) compiled library file (.so) that the debian class applies its naming policy to given a recipe that packages multiple libraries."
255LIC_FILES_CHKSUM[doc] = "Checksums of the license text in the recipe source code."
256LICENSE[doc] = "The list of source licenses for the recipe. Logical operators '&' or '|' and parentheses can be used."
257LICENSE_PATH[doc] = "Path to additional licenses used during the build."
258LINUX_KERNEL_TYPE[doc] = "Defines the kernel type to be used in assembling the configuration."
259LINUX_VERSION[doc] = "The Linux version from kernel.org on which the Linux kernel image being built using the OpenEmbedded build system is based. You define this variable in the kernel recipe."
260LINUX_VERSION_EXTENSION[doc] = "A string extension compiled into the version string of the Linux kernel built with the OpenEmbedded build system. You define this variable in the kernel recipe."
261LOG_DIR[doc] = "Specifies the directory to which the OpenEmbedded build system writes overall log files. The default directory is ${TMPDIR}/log"
262
263#M
264
265MACHINE[doc] = "Specifies the target device for which the image is built. You define MACHINE in the conf/local.conf file in the Build Directory."
266MACHINE_ESSENTIAL_EXTRA_RDEPENDS[doc] = "A list of required machine-specific packages to install as part of the image being built. Because this is a 'machine essential' variable, the list of packages are essential for the machine to boot."
267MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS[doc] = "A list of recommended machine-specific packages to install as part of the image being built. Because this is a 'machine essential' variable, the list of packages are essential for the machine to boot."
268MACHINE_EXTRA_RDEPENDS[doc] = "A list of machine-specific packages to install as part of the image being built that are not essential for the machine to boot. However, the build process for more fully-featured images depends on the packages being present."
269MACHINE_EXTRA_RRECOMMENDS[doc] = "A list of machine-specific packages to install as part of the image being built that are not essential for booting the machine. The image being built has no build dependencies on the packages in this list."
270MACHINE_FEATURES[doc] = "Specifies the list of hardware features the MACHINE supports."
271MACHINE_FEATURES_BACKFILL[doc] = "Features to be added to MACHINE_FEATURES if not also present in MACHINE_FEATURES_BACKFILL_CONSIDERED. This variable is set in the meta/conf/bitbake.conf file and is not intended to be user-configurable."
272MACHINE_FEATURES_BACKFILL_CONSIDERED[doc] = "Features from MACHINE_FEATURES_BACKFILL that should not be backfilled (i.e. added to MACHINE_FEATURES) during the build."
273MACHINEOVERRIDES[doc] = "Lists overrides specific to the current machine. By default, this list includes the value of MACHINE."
274MAINTAINER[doc] = "The email address of the distribution maintainer."
275MIRRORS[doc] = "Specifies additional paths from which the OpenEmbedded build system gets source code."
276MLPREFIX[doc] = "Specifies a prefix has been added to PN to create a special version of a recipe or package, such as a Multilib version."
277MODULE_TARBALL_DEPLOY[doc] = "Controls creation of the modules-*.tgz file. Set this variable to "0" to disable creation of this file, which contains all of the kernel modules resulting from a kernel build."
278MULTIMACH_TARGET_SYS[doc] = "Separates files for different machines such that you can build for multiple target machines using the same output directories."
279
280#N
281
282NATIVELSBSTRING[doc] = "A string identifying the host distribution."
283NO_RECOMMENDATIONS[doc] = "When set to '1', no recommended packages will be installed. Realize that some recommended packages might be required for certain system functionality, such as kernel-modules. It is up to the user to add packages to IMAGE_INSTALL as needed."
284NOHDD[doc] = "Causes the OpenEmbedded build system to skip building the .hddimg image."
285NOISO[doc] = "Causes the OpenEmbedded build system to skip building the ISO image."
286
287#O
288
289OE_BINCONFIG_EXTRA_MANGLE[doc] = "When a recipe inherits the binconfig.bbclass class, this variable specifies additional arguments passed to the "sed" command."
290OE_IMPORTS[doc] = "An internal variable used to tell the OpenEmbedded build system what Python modules to import for every Python function run by the system."
291OE_TERMINAL[doc] = "Controls how the OpenEmbedded build system spawns interactive terminals on the host development system."
292OEROOT[doc] = "The directory from which the top-level build environment setup script is sourced."
293OLDEST_KERNEL[doc] = "Declares the oldest version of the Linux kernel that the produced binaries must support."
294OVERRIDES[doc] = "BitBake uses OVERRIDES to control what variables are overridden after BitBake parses recipes and configuration files."
295
296#P
297
298P[doc] = "The recipe name and version. P is comprised of ${PN}-${PV}."
299PACKAGE_ARCH[doc] = "The architecture of the resulting package or packages."
300PACKAGE_ARCHS[doc] = "A list of architectures compatible with the given target in order of priority."
301PACKAGE_BEFORE_PN[doc] = "Enables easily adding packages to PACKAGES before ${PN} so that the packages can pick up files that would normally be included in the default package."
302PACKAGE_CLASSES[doc] = "This variable specifies the package manager to use when packaging data. It is set in the conf/local.conf file in the Build Directory."
303PACKAGE_EXCLUDE[doc] = "Packages to exclude from the installation. If a listed package is required, an error is generated."
304PACKAGE_EXTRA_ARCHS[doc] = "Specifies the list of architectures compatible with the device CPU. This variable is useful when you build for several different devices that use miscellaneous processors."
305PACKAGE_GROUP[doc] = "Defines one or more packages to include in an image when a specific item is included in IMAGE_FEATURES."
306PACKAGE_INSTALL[doc] = "List of the packages to be installed into the image. The variable is generally not user-defined and uses IMAGE_INSTALL as part of the list."
307PACKAGE_INSTALL_ATTEMPTONLY[doc] = "List of packages attempted to be installed. If a listed package fails to install, the build system does not generate an error. This variable is generally not user-defined."
308PACKAGECONFIG[doc] = "This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis."
309PACKAGES[doc] = "The list of packages to be created from the recipe."
310PACKAGES_DYNAMIC[doc] = "A promise that your recipe satisfies runtime dependencies for optional modules that are found in other recipes."
311PARALLEL_MAKE[doc] = "Specifies extra options that are passed to the make command during the compile tasks. This variable is usually in the form -j 4, where the number represents the maximum number of parallel threads make can run."
312PARALLEL_MAKEINST[doc] = "Extra options passed to the make install command during the do_install task in order to specify parallel installation."
313PATCHRESOLVE[doc] = "Enable or disable interactive patch resolution."
314PATCHTOOL[doc] = "Specifies the utility used to apply patches for a recipe during do_patch."
315PE[doc] = "The epoch of the recipe. The default value is '0'. The field is used to make upgrades possible when the versioning scheme changes in some backwards incompatible way."
316PF[doc] = "Specifies the recipe or package name and includes all version and revision numbers. This variable is comprised of ${PN}-${EXTENDPE}${PV}-${PR}."
317PIXBUF_PACKAGES[doc] = "When a recipe inherits the pixbufcache class, this variable identifies packages that contain the pixbuf loaders used with gdk-pixbuf."
318PKGD[doc] = "Points to the destination directory for files to be packaged before they are split into individual packages."
319PKGDATA_DIR[doc] = "Points to a shared, global-state directory that holds data generated during the packaging process."
320PKGDEST[doc] = "Points to the parent directory for files to be packaged after they have been split into individual packages."
321PKGDESTWORK[doc] = "Points to a temporary work area used by the do_package task to write output from the do_packagedata task."
322PN[doc] = "PN refers to a recipe name in the context of a file used by the OpenEmbedded build system as input to create a package. It refers to a package name in the context of a file created or produced by the OpenEmbedded build system."
323PNBLACKLIST[doc] = "Lists recipes you do not want the OpenEmbedded build system to build."
324PR[doc] = "The revision of the recipe. The default value for this variable is 'r0'."
325PREFERRED_PROVIDER[doc] = "If multiple recipes provide an item, this variable determines which recipe should be given preference."
326PREFERRED_VERSION[doc] = "If there are multiple versions of recipes available, this variable determines which recipe should be given preference."
327PREMIRRORS[doc] = "Specifies additional paths from which the OpenEmbedded build system gets source code."
328PRINC[doc] = "Causes the PR variable of .bbappend files to dynamically increment. This increment minimizes the impact of layer ordering. This variable defaults to '0'."
329PRIORITY[doc] = "Indicates the importance of a package. The default value is 'optional'. Other standard values are 'required', 'standard' and 'extra'."
330PROVIDES[doc] = "A list of aliases that a recipe also provides. These aliases are useful for satisfying dependencies of other recipes during the build as specified by DEPENDS."
331PRSERV_HOST[doc] = "The network based PR service host and port."
332PV[doc] = "The version of the recipe. The version is normally extracted from the recipe filename."
333
334#Q
335
336QMAKE_PROFILES[doc] = "Specifies your own subset of .pro files to be built for use with qmake."
337
338#R
339
340RCONFLICTS[doc] = "The list of packages that conflict with another package. Note that the package will not be installed if the conflicting packages are not first removed."
341RDEPENDS[doc] = "Lists a package's runtime dependencies (i.e. other packages) that must be installed for the package to be built. They must be the names of other packages as listed in the PACKAGES variable, not recipe names (PN)."
342REQUIRED_DISTRO_FEATURES[doc] = "When a recipe inherits the distro_features_check class, this variable identifies distribution features that must exist in the current configuration in order for the OpenEmbedded build system to build the recipe."
343RM_OLD_IMAGE[doc] = "Reclaims disk space by removing previously built versions of the same image from the images directory pointed to by the DEPLOY_DIR variable."
344RM_WORK_EXCLUDE[doc] = "With rm_work enabled, this variable specifies a list of packages whose work directories should not be removed."
345ROOTFS[doc] = "Indicates a filesystem image to include as the root filesystem."
346ROOTFS_POSTPROCESS_COMMAND[doc] = "Added by classes to run post processing commands once the OpenEmbedded build system has created the root filesystem."
347RPROVIDES[doc] = "A list of package name aliases that a package also provides. These aliases are useful for satisfying runtime dependencies of other packages both during the build and on the target."
348RRECOMMENDS[doc] = "A list of packages that extends the usability of a package being built. The package being built does not depend on this list of packages in order to successfully build, but needs them for the extended usability."
349RREPLACES[doc] = "A list of packages replaced by a package. The package manager uses this variable to determine which package should be installed to replace other package(s) during an upgrade."
350RSUGGESTS[doc] = "A list of additional packages that you can suggest for installation by the package manager at the time a package is installed. Not all package managers support this functionality."
351
352#S
353
354S[doc] = "The location in the Build Directory where unpacked package source code resides."
355SANITY_TESTED_DISTROS[doc] = "A list of the host distribution identifiers that the build system has been tested against."
356SDK_ARCH[doc] = "The target architecture for the SDK."
357SDK_DEPLOY[doc] = "The directory set up and used by the populate_sdk_base to which the SDK is deployed."
358SDK_DIR[doc] = "The parent directory used by the OpenEmbedded build system when creating SDK output."
359SDK_NAME[doc] = "The base name for SDK output files."
360SDK_OUTPUT[doc] = "The location used by the OpenEmbedded build system when creating SDK output."
361SDKIMAGE_FEATURES[doc] = "Equivalent to IMAGE_FEATURES. However, this variable applies to the SDK generated from an image using the command 'bitbake -c populate_sdk imagename'."
362SDKMACHINE[doc] = "Specifies the architecture (i.e. i686 or x86_64) for which to build SDK and ADT items."
363SECTION[doc] = "The section in which packages should be categorized. Package management utilities can make use of this variable."
364SELECTED_OPTIMIZATION[doc] = "The variable takes the value of FULL_OPTIMIZATION unless DEBUG_BUILD = '1'. In this case, the value of DEBUG_OPTIMIZATION is used."
365SERIAL_CONSOLE[doc] = "The speed and device for the serial port used to attach the serial console. This variable is given to the kernel as the 'console' parameter. After booting occurs, getty is started on that port so remote login is possible."
366SERIAL_CONSOLES[doc] = "Defines the serial consoles (TTYs) to enable using getty."
367SERIAL_CONSOLES_CHECK[doc] = "Similar to SERIAL_CONSOLES except the device is checked for existence before attempting to enable it. Supported only by SysVinit."
368SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS[doc] = "A list of recipe dependencies that should not be used to determine signatures of tasks from one recipe when they depend on tasks from another recipe."
369SIGGEN_EXCLUDERECIPES_ABISAFE[doc] = "A list of recipes that are completely stable and will never change."
370SITEINFO_BITS[doc] = "Specifies the number of bits for the target system CPU."
371SITEINFO_ENDIANNESS[doc] = "Specifies the endian byte order of the target system. The value should be either 'le' for 'little-endian' or 'be' for 'big-endian'."
372SOC_FAMILY[doc] = "Groups together machines based upon the same family of SOC (System On Chip). You typically set this variable in a common .inc file that you include in the configuration files of all the machines."
373SOLIBS[doc] = "Defines the suffix for shared libraries used on the target platform."
374SOLIBSDEV[doc] = "Defines the suffix for the development symbolic link (symlink) for shared libraries on the target platform."
375SOURCE_MIRROR_FETCH[doc] = "Switch marking build as source fetcher. Used to skip COMPATIBLE_* checking."
376SOURCE_MIRROR_URL[doc] = "URL to source mirror that will be used before fetching from original SRC_URI."
377SPECIAL_PKGSUFFIX[doc] = "A list of prefixes for PN used by the OpenEmbedded build system to create variants of recipes or packages. The list specifies the prefixes to strip off during certain circumstances such as the generation of the BPN variable."
378SRC_URI[doc] = "The list of source files - local or remote. This variable tells the OpenEmbedded build system what bits to pull in for the build and how to pull them in."
379SRC_URI_OVERRIDES_PACKAGE_ARCH[doc] = "By default, the OpenEmbedded build system automatically detects whether SRC_URI contains files that are machine-specific. If so, the build system automatically changes PACKAGE_ARCH. Setting this variable to '0' disables this behavior."
380SRCDATE[doc] = "The date of the source code used to build the package. This variable applies only if the source was fetched from a Source Code Manager (SCM)."
381SRCPV[doc] = "Returns the version string of the current package. This string is used to help define the value of PV."
382SRCREV[doc] = "The revision of the source code used to build the package. This variable applies to Subversion, Git, Mercurial and Bazaar only."
383SSTATE_DIR[doc] = "The directory for the shared state cache."
384SSTATE_MIRRORS[doc] = "Configures the OpenEmbedded build system to search other mirror locations for prebuilt cache data objects before building out the data. You can specify a filesystem directory or a remote URL such as HTTP or FTP."
385STAGING_KERNEL_DIR[doc] = "The directory with kernel headers that are required to build out-of-tree modules."
386STAMP[doc] = "Specifies the base path used to create recipe stamp files. The path to an actual stamp file is constructed by evaluating this string and then appending additional information."
387STAMPS_DIR[doc] = "Specifies the base directory in which the OpenEmbedded build system places stamps."
388SUMMARY[doc] = "The short (80 characters or less) summary of the binary package for packaging systems such as opkg, rpm or dpkg. By default, SUMMARY is used to define the DESCRIPTION variable if DESCRIPTION is not set in the recipe."
389SVNDIR[doc] = "The directory where Subversion checkouts will be stored."
390SYSLINUX_DEFAULT_CONSOLE[doc] = "Specifies the kernel boot default console."
391SYSLINUX_OPTS[doc] = "Lists additional options to add to the syslinux file."
392SYSLINUX_SERIAL[doc] = "Specifies the alternate serial port or turns it off."
393SYSLINUX_SPLASH[doc] = "An .LSS file used as the background for the VGA boot menu when you are using the boot menu."
394SYSLINUX_SERIAL_TTY[doc] = "Specifies the alternate console=tty... kernel boot argument."
395SYSROOT_PREPROCESS_FUNCS[doc] = "A list of functions to execute after files are staged into the sysroot. These functions are usually used to apply additional processing on the staged files, or to stage additional files."
396SYSTEMD_AUTO_ENABLE[doc] = "For recipes that inherit the systemd class, this variable specifies whether the service you have specified in SYSTEMD_SERVICE should be started automatically or not."
397SYSTEMD_PACKAGES[doc] = "For recipes that inherit the systemd class, this variable locates the systemd unit files when they are not found in the main recipe's package."
398SYSTEMD_SERVICE[doc] = "For recipes that inherit the systemd class, this variable specifies the systemd service name for a package."
399SYSVINIT_ENABLED_GETTYS[doc] = "Specifies which virtual terminals should be running a getty, the default is '1'."
400
401#T
402
403T[doc] = "This variable points to a directory were BitBake places temporary files, which consist mostly of task logs and scripts, when building a particular recipe."
404TARGET_ARCH[doc] = "The architecture of the device being built. The OpenEmbedded build system supports the following architectures: arm, mips, ppc, x86, x86-64."
405TARGET_CFLAGS[doc] = "Flags passed to the C compiler for the target system. This variable evaluates to the same as CFLAGS."
406TARGET_FPU[doc] = "Specifies the method for handling FPU code. For FPU-less targets, which include most ARM CPUs, the variable must be set to 'soft'. If not, the kernel emulation gets used, which results in a performance penalty."
407TARGET_OS[doc] = "Specifies the target's operating system."
408TARGET_PREFIX[doc] = "The prefix for the cross-compile toolchain (e.g. arm-linux-)."
409TARGET_SYS[doc] = "The target system is comprised of TARGET_ARCH,TARGET_VENDOR and TARGET_OS."
410TCLIBC[doc] = "Specifies GNU standard C library (libc) variant to use during the build process. You can select 'eglibc' or 'uclibc'."
411TCMODE[doc] = "Enables an external toolchain (where provided by an additional layer) if set to a value other than 'default'."
412TEST_IMAGE[doc] = "Enables test booting of virtual machine images under the QEMU emulator after any root filesystems are created and runs tests against those images."
413TEST_QEMUBOOT_TIMEOUT[doc] = "The time in seconds allowed for an image to boot before automated runtime tests begin to run against an image."
414TEST_SUITES[doc] = "An ordered list of tests (modules) to run against an image when performing automated runtime testing."
415THISDIR[doc] = "The directory in which the file BitBake is currently parsing is located."
416TIME[doc] = "The time the build was started using HMS format."
417TMPDIR[doc] = "The temporary directory the OpenEmbedded build system uses when it does its work building images. By default, the TMPDIR variable is named tmp within the Build Directory."
418TOOLCHAIN_HOST_TASK[doc] = "This variable lists packages the OpenEmbedded build system uses when building an SDK, which contains a cross-development environment."
419TOOLCHAIN_TARGET_TASK[doc] = "This variable lists packages the OpenEmbedded build system uses when it creates the target part of an SDK, which includes libraries and headers."
420TOPDIR[doc] = "The Build Directory. BitBake automatically sets this variable. The OpenEmbedded build system uses the Build Directory when building images."
421TRANSLATED_TARGET_ARCH[doc] = "A sanitized version of TARGET_ARCH. This variable is used where the architecture is needed in a value where underscores are not allowed."
422TUNE_PKGARCH[doc] = "The package architecture understood by the packaging system to define the architecture, ABI, and tuning of output packages."
423TUNEABI[doc] = "An underlying ABI used by a particular tuning in a given toolchain layer. This feature allows providers using prebuilt libraries to check compatibility of a tuning against their selection of libraries."
424TUNEABI_OVERRIDE[doc] = "If set, ignores TUNEABI_WHITELIST."
425TUNEABI_WHITELIST[doc] = "A whitelist of permissible TUNEABI values. If the variable is not set, all values are allowed."
426TUNECONFLICTS[doc] = "List of conflicting features for a given feature."
427TUNEVALID[doc] = "Descriptions, stored as flags, of valid tuning features."
428
429#U
430
431UBOOT_CONFIG[doc] = "Configures the UBOOT_MACHINE and can also define IMAGE_FSTYPES for individual cases."
432UBOOT_ENTRYPOINT[doc] = "Specifies the entry point for the U-Boot image."
433UBOOT_LOADADDRESS[doc] = "Specifies the load address for the U-Boot image."
434UBOOT_LOCALVERSION[doc] = "Appends a string to the name of the local version of the U-Boot image."
435UBOOT_MACHINE[doc] = "Specifies the value passed on the make command line when building a U-Boot image."
436UBOOT_MAKE_TARGET[doc] = "Specifies the target called in the Makefile."
437UBOOT_SUFFIX[doc] = "Points to the generated U-Boot extension."
438UBOOT_TARGET[doc] = "Specifies the target used for building U-Boot."
439USE_DEVFS[doc] = "When building images, specifies to populate or not /dev. This variable defaults to '1' (leave directory empty, surely because devtmpfs do the job). Set it to '0' to use makedevs (or consider using a custom file with IMAGE_DEVICE_TABLES)."
440USER_CLASSES[doc] = "List of additional classes to use when building images that enable extra features."
441USERADD_PACKAGES[doc] = "When a recipe inherits the useradd class, this variable specifies the individual packages within the recipe that require users and/or groups to be added."
442USERADD_PARAM[doc] = "When a recipe inherits the useradd class, this variable specifies for a package what parameters should be passed to the useradd command if you wish to add a user to the system when the package is installed."
443
444#W
445
446WARN_QA[doc] = "Specifies the quality assurance checks whose failures are reported as warnings by the OpenEmbedded build system."
447WORKDIR[doc] = "The pathname of the working directory in which the OpenEmbedded build system builds a recipe. This directory is located within the TMPDIR directory structure and changes as different packages are built."
diff --git a/meta/conf/layer.conf b/meta/conf/layer.conf
new file mode 100644
index 0000000..18609dd
--- /dev/null
+++ b/meta/conf/layer.conf
@@ -0,0 +1,33 @@
1# We have a conf and classes directory, add to BBPATH
2BBPATH .= ":${LAYERDIR}"
3# We have recipes-* directories, add to BBFILES
4BBFILES += "${LAYERDIR}/recipes-*/*/*.bb"
5
6BBFILE_COLLECTIONS += "core"
7BBFILE_PATTERN_core = "^${LAYERDIR}/"
8BBFILE_PRIORITY_core = "5"
9
10# This should only be incremented on significant changes that will
11# cause compatibility issues with other layers
12LAYERVERSION_core = "4"
13
14# Set a variable to get to the top of the metadata location
15COREBASE = '${@os.path.normpath("${LAYERDIR}/../")}'
16
17SIGGEN_EXCLUDERECIPES_ABISAFE += " \
18 sysvinit-inittab \
19 shadow-securetty \
20 opkg-config-base \
21 netbase \
22 init-ifupdown \
23 connman-conf \
24 formfactor \
25 xserver-xf86-config \
26 pointercal \
27 pointercal-xinput \
28 base-files \
29 keymaps \
30 udev-extraconf \
31 packagegroup-x11-xserver \
32 systemd-serialgetty \
33"
diff --git a/meta/conf/licenses.conf b/meta/conf/licenses.conf
new file mode 100644
index 0000000..b41d0a8
--- /dev/null
+++ b/meta/conf/licenses.conf
@@ -0,0 +1,167 @@
1# These aren't actually used anywhere that I can tell
2# They may be in the future (or are used by someone else
3# For completion sake, I've updated them
4SRC_DISTRIBUTE_LICENSES += "AAL Adobe AFL-1.2 AFL-2.0 AFL-2.1 AFL-3.0"
5SRC_DISTRIBUTE_LICENSES += "AGPL-3.0 ANTLR-PD Apache-1.0 Apache-1.1 Apache-2.0"
6SRC_DISTRIBUTE_LICENSES += "APL-1.0 APSL-1.0 APSL-1.1 APSL-1.2 APSL-2.0"
7SRC_DISTRIBUTE_LICENSES += "Artistic-1.0 Artistic-2.0 BitstreamVera BSD"
8SRC_DISTRIBUTE_LICENSES += "BSD-2-Clause BSD-3-Clause BSD-4-Clause BSL-1.0"
9SRC_DISTRIBUTE_LICENSES += "CATOSL-1.1 CC0-1.0 CC-BY-1.0 CC-BY-2.0 CC-BY-2.5"
10SRC_DISTRIBUTE_LICENSES += "CC-BY-3.0 CC-BY-NC-1.0 CC-BY-NC-2.0 CC-BY-NC-2.5"
11SRC_DISTRIBUTE_LICENSES += "CC-BY-NC-3.0 CC-BY-NC-ND-1.0 CC-BY-NC-ND-2.0"
12SRC_DISTRIBUTE_LICENSES += "CC-BY-NC-ND-2.5 CC-BY-NC-ND-3.0 CC-BY-NC-SA-1.0"
13SRC_DISTRIBUTE_LICENSES += "CC-BY-NC-SA-2.0 CC-BY-NC-SA-2.5 CC-BY-NC-SA-3.0"
14SRC_DISTRIBUTE_LICENSES += "CC-BY-ND-1.0 CC-BY-ND-2.0 CC-BY-ND-2.5 CC-BY-ND-3.0"
15SRC_DISTRIBUTE_LICENSES += "CC-BY-SA-1.0 CC-BY-SA-2.0 CC-BY-SA-2.5 CC-BY-SA-3.0"
16SRC_DISTRIBUTE_LICENSES += "CDDL-1.0 CECILL-1.0 CECILL-2.0 CECILL-B CECILL-C"
17SRC_DISTRIBUTE_LICENSES += "ClArtistic CPAL-1.0 CPL-1.0 CUA-OPL-1.0 DSSSL"
18SRC_DISTRIBUTE_LICENSES += "ECL-1.0 ECL-2.0 eCos-2.0 EDL-1.0 EFL-1.0 EFL-2.0"
19SRC_DISTRIBUTE_LICENSES += "Elfutils-Exception Entessa EPL-1.0 ErlPL-1.1"
20SRC_DISTRIBUTE_LICENSES += "EUDatagrid EUPL-1.0 EUPL-1.1 Fair Frameworx-1.0"
21SRC_DISTRIBUTE_LICENSES += "FreeType GFDL-1.1 GFDL-1.2 GFDL-1.3 GPL-1.0"
22SRC_DISTRIBUTE_LICENSES += "GPL-2.0 GPL-2.0-with-autoconf-exception"
23SRC_DISTRIBUTE_LICENSES += "GPL-2.0-with-classpath-exception"
24SRC_DISTRIBUTE_LICENSES += "GPL-2.0-with-font-exception"
25SRC_DISTRIBUTE_LICENSES += "GPL-2.0-with-GCC-exception"
26SRC_DISTRIBUTE_LICENSES += "GPL-2-with-bison-exception GPL-3.0"
27SRC_DISTRIBUTE_LICENSES += "GPL-3.0-with-autoconf-exception"
28SRC_DISTRIBUTE_LICENSES += "GPL-3.0-with-GCC-exception"
29SRC_DISTRIBUTE_LICENSES += "gSOAP-1 gSOAP-1.3b HPND IPA IPL-1.0 ISC LGPL-2.0"
30SRC_DISTRIBUTE_LICENSES += "LGPL-2.1 LGPL-3.0 Libpng LPL-1.02 LPPL-1.0 LPPL-1.1"
31SRC_DISTRIBUTE_LICENSES += "LPPL-1.2 LPPL-1.3c MirOS MIT Motosoto MPL-1.0"
32SRC_DISTRIBUTE_LICENSES += "MPL-1.1 MS-PL MS-RL Multics NASA-1.3 Nauman NCSA"
33SRC_DISTRIBUTE_LICENSES += "NGPL Nokia NPOSL-3.0 NTP OASIS OCLC-2.0 ODbL-1.0"
34SRC_DISTRIBUTE_LICENSES += "OFL-1.1 OGTSL OLDAP-2.8 OpenSSL OSL-1.0 OSL-2.0"
35SRC_DISTRIBUTE_LICENSES += "OSL-3.0 PD PHP-3.0 PostgreSQL Proprietary"
36SRC_DISTRIBUTE_LICENSES += "Python-2.0 QPL-1.0 RHeCos-1 RHeCos-1.1 RPL-1.5"
37SRC_DISTRIBUTE_LICENSES += "RPSL-1.0 RSCPL Ruby SAX-PD SGI-1 Simple-2.0 Sleepycat"
38SRC_DISTRIBUTE_LICENSES += "SPL-1.0 SugarCRM-1 SugarCRM-1.1.3 UCB VSL-1.0 W3C"
39SRC_DISTRIBUTE_LICENSES += "Watcom-1.0 WXwindows XFree86-1.1 Xnet YPL-1.1"
40SRC_DISTRIBUTE_LICENSES += "Zimbra-1.3 Zlib ZPL-1.1 ZPL-2.0 ZPL-2.1"
41
42# Standards are great! Everyone has their own. In an effort to standardize licensing
43# names, common-licenses will use the SPDX standard license names. In order to not
44# break the non-standardized license names that we find in LICENSE, we'll set
45# up a bunch of VarFlags to accomodate non-SPDX license names.
46#
47# We should really discuss standardizing this field, but that's a longer term goal.
48# For now, we can do this and it should grab the most common LICENSE naming variations.
49#
50# We should NEVER have a GPL/LGPL without a version!!!!
51# Any mapping to MPL/LGPL/GPL should be fixed
52# see: https://wiki.yoctoproject.org/wiki/License_Audit
53
54# GPL variations
55SPDXLICENSEMAP[GPL-1] = "GPL-1.0"
56SPDXLICENSEMAP[GPLv1] = "GPL-1.0"
57SPDXLICENSEMAP[GPLv1.0] = "GPL-1.0"
58SPDXLICENSEMAP[GPL-2] = "GPL-2.0"
59SPDXLICENSEMAP[GPLv2] = "GPL-2.0"
60SPDXLICENSEMAP[GPLv2.0] = "GPL-2.0"
61SPDXLICENSEMAP[GPL-3] = "GPL-3.0"
62SPDXLICENSEMAP[GPLv3] = "GPL-3.0"
63SPDXLICENSEMAP[GPLv3.0] = "GPL-3.0"
64
65#LGPL variations
66SPDXLICENSEMAP[LGPLv2] = "LGPL-2.0"
67SPDXLICENSEMAP[LGPLv2.0] = "LGPL-2.0"
68SPDXLICENSEMAP[LGPL2.1] = "LGPL-2.1"
69SPDXLICENSEMAP[LGPLv2.1] = "LGPL-2.1"
70SPDXLICENSEMAP[LGPLv3] = "LGPL-3.0"
71
72#MPL variations
73SPDXLICENSEMAP[MPL-1] = "MPL-1.0"
74SPDXLICENSEMAP[MPLv1] = "MPL-1.0"
75SPDXLICENSEMAP[MPLv1.1] = "MPL-1.1"
76SPDXLICENSEMAP[MPLv2] = "MPL-2.0"
77
78#MIT variations
79SPDXLICENSEMAP[MIT-X] = "MIT"
80SPDXLICENSEMAP[MIT-style] = "MIT"
81
82#Openssl variations
83SPDXLICENSEMAP[openssl] = "OpenSSL"
84
85#Python variations
86SPDXLICENSEMAP[PSF] = "Python-2.0"
87SPDXLICENSEMAP[PSFv2] = "Python-2.0"
88SPDXLICENSEMAP[Python-2] = "Python-2.0"
89
90#Apache variations
91SPDXLICENSEMAP[Apachev2] = "Apache-2.0"
92SPDXLICENSEMAP[Apache-2] = "Apache-2.0"
93
94#Artistic variations
95SPDXLICENSEMAP[Artisticv1] = "Artistic-1.0"
96SPDXLICENSEMAP[Artistic-1] = "Artistic-1.0"
97
98#Academic variations
99SPDXLICENSEMAP[AFL-2] = "AFL-2.0"
100SPDXLICENSEMAP[AFL-1] = "AFL-1.2"
101SPDXLICENSEMAP[AFLv2] = "AFL-2.0"
102SPDXLICENSEMAP[AFLv1] = "AFL-1.2"
103
104#Other variations
105SPDXLICENSEMAP[EPLv1.0] = "EPL-1.0"
106
107#Silicon Graphics variations
108SPDXLICENSEMAP[SGIv1] = "SGI-1"
109
110# Additional license directories. Add your custom licenses directories this path.
111# LICENSE_PATH += "${COREBASE}/custom-licenses"
112
113# Set if you want the license.manifest copied to the image
114#COPY_LIC_MANIFEST = "1"
115
116# If you want the pkg licenses copied over as well you must set
117# both COPY_LIC_MANIFEST and COPY_LIC_DIRS
118#COPY_LIC_DIRS = "1"
119
120## SPDX temporary directory
121SPDX_TEMP_DIR = "${WORKDIR}/spdx_temp"
122SPDX_MANIFEST_DIR = "/home/yocto/fossology_scans"
123
124## SPDX Format info
125SPDX_VERSION = "SPDX-1.1"
126DATA_LICENSE = "CC0-1.0"
127
128## Fossology scan information
129# You can set option to control if the copyright information will be skipped
130# during the identification process.
131#
132# It is defined as [FOSS_COPYRIGHT] in ./meta/conf/licenses.conf.
133# FOSS_COPYRIGHT = "true"
134# NO copyright will be processed. That means only license information will be
135# identified and output to SPDX file
136# FOSS_COPYRIGHT = "false"
137# Copyright will be identified and output to SPDX file along with license
138# information. The process will take more time than not processing copyright
139# information.
140#
141
142FOSS_COPYRIGHT = "true"
143
144# A option defined as[FOSS_RECURSIVE_UNPACK] in ./meta/conf/licenses.conf. is
145# used to control if FOSSology server need recursively unpack tar.gz file which
146# is sent from do_spdx task.
147#
148# FOSS_RECURSIVE_UNPACK = "false":
149# FOSSology server does NOT recursively unpack. In the current release, this
150# is the default choice because recursively unpack will not necessarily break
151# down original compressed files.
152# FOSS_RECURSIVE_UNPACK = "true":
153# FOSSology server recursively unpack components.
154#
155
156FOSS_RECURSIVE_UNPACK = "false"
157
158# FOSSologySPDX instance server.
159# For more information on FOSSologySPDX commandline:
160# https://github.com/spdx-tools/fossology-spdx/wiki/Fossology-SPDX-Web-API
161#
162
163FOSS_SERVER = "http://localhost//?mod=spdx_license_once&noCopyright=${FOSS_COPYRIGHT}&recursiveUnpack=${FOSS_RECURSIVE_UNPACK}"
164
165FOSS_WGET_FLAGS = "-qO - --no-check-certificate --timeout=0"
166
167
diff --git a/meta/conf/machine-sdk/i586.conf b/meta/conf/machine-sdk/i586.conf
new file mode 100644
index 0000000..baacce7
--- /dev/null
+++ b/meta/conf/machine-sdk/i586.conf
@@ -0,0 +1,3 @@
1SDK_ARCH = "i586"
2SDK_CC_ARCH = "-march=i586"
3
diff --git a/meta/conf/machine-sdk/i686.conf b/meta/conf/machine-sdk/i686.conf
new file mode 100644
index 0000000..ffdb461
--- /dev/null
+++ b/meta/conf/machine-sdk/i686.conf
@@ -0,0 +1,2 @@
1SDK_ARCH = "i686"
2SDK_CC_ARCH = "-march=i686"
diff --git a/meta/conf/machine-sdk/x86_64.conf b/meta/conf/machine-sdk/x86_64.conf
new file mode 100644
index 0000000..812d67c
--- /dev/null
+++ b/meta/conf/machine-sdk/x86_64.conf
@@ -0,0 +1 @@
SDK_ARCH = "x86_64"
diff --git a/meta/conf/machine/include/README b/meta/conf/machine/include/README
new file mode 100644
index 0000000..d66130a
--- /dev/null
+++ b/meta/conf/machine/include/README
@@ -0,0 +1,100 @@
12012/03/30 - Mark Hatle <mark.hatle@windriver.com>
2 - Initial Revision
3
4
5Introduction
6============
7The individual CPU, and ABI tunings are contained in this directory. A
8number of local and global variables are used to control the way the
9tunings are setup and how they work together to specify an optimized
10configuration.
11
12The following is brief summary of the generic components that are used
13in these tunings.
14
15AVAILTUNES - This is a list of all of the tuning definitions currently
16available in the system. Not all tunes in this list may be compatible
17with the machine configuration, or each other in a multilib
18configuration. Each tuning file can add to this list using "+=", but
19should never replace the list using "=".
20
21DEFAULTTUNE - This specifies the tune to use for a particular build.
22Each tune should specify a reasonable default, which can be overriden by
23a machine or multilib configuration. The specified tune must be listed
24in the AVAILTUNES.
25
26TUNEVALID[feature] - The <feature> is defined with a human readable
27explanation for what it does. All architectural, cpu, abi, etc tuning
28features must be defined using TUNEVALID.
29
30TUNECONFLICTS[feature] - A list of features which conflict with <feature>.
31New sanity checks will try to reject combinations in which a single
32tuning ends up with features which conflict with each other.
33
34TUNE_FEATURES - This is automatically defined as TUNE_FEATURES_tune-<tune>.
35See TUNE_FEATURES_tune-<tune> for more information.
36
37TUNE_FEATURES_tune-<tune> - Specify the features used to describe a
38specific tune. This is a list of features that a tune support, each
39feature must be in the TUNEVALID list. Note: the tune and a given
40feature name may be the same, but they have different purposes. Only
41features may be used to change behavior, while tunes are used to
42describe an overall set of features.
43
44ABIEXTENSION - An ABI extension may be specified by a specific feature
45or other tuning setting, such as TARGET_FPU. Any ABI extensions either
46need to be defined in the architectures base arch file, i.e.
47ABIEXTENSION = "eabi" in the arm case, or appended to in specific tune
48files with a ".=". Spaces are not allowed in this variable.
49
50TUNE_CCARGS - Setup the cflags based on the TUNE_FEATURES settings.
51These should be additive when defined using "+=". All items in this
52list should be dynamic! i.e.
53${@bb.utils.contains("TUNE_FEATURES", "feature", "cflag", "!cflag", d)}
54
55TUNE_ARCH - The GNU canonical arch for a specific architecture. i.e.
56arm, armeb, mips, mips64, etc. This value is used by bitbake to setup
57configure. TUNE_ARCH definitions are specific to a given architecture.
58They may be a single static definition, or may be dynamically adjusted.
59See each architecture's README for details for that CPU family.
60
61TUNE_PKGARCH - The package architecture used by the packaging systems to
62define the architecture, abi and tuning of a particular package.
63Similarly to TUNE_ARCH, the definition of TUNE_PKGARCH is specific to
64each architecture. See each architectures README for details for that
65CPU family.
66
67PACKAGE_EXTRA_ARCHS - Lists all runtime compatible package
68architectures. By default this is equal to
69PACKAGE_EXTRA_ARCHS_tune-<tune>. If an architecture deviates from the
70default it will be listed in the architecture README.
71
72PACKAGE_EXTRA_ARCHS_tune-<tune> - List all of the package architectures
73that are compatible with this specific tune. The package arch of this
74tune must be in the list.
75
76TARGET_FPU - The FPU setting for a given tune, hard (generate floating
77point instructions), soft (generate internal gcc calls), "other"
78architecture specific floating point. This is synchronized with the
79compiler and other toolchain items. This should be dynamically
80configured in the same way that TUNE_CCARGS is.
81
82BASE_LIB_tune-<tune> - The "/lib" location for a specific ABI. This is
83used in a multilib configuration to place the libraries in the correct,
84non-conflicting locations.
85
86
87Best Practice
88=============
89The tune infrastructure is designed to be hierarchical. When writing a
90new tune file for a "fast-forward" CPU architecture (one that supports
91everything from a previous generation), it is recommended to require the
92previous generation tune file and specify PACKAGE_EXTRA_ARCHS using the
93previous generation's override and appending the new tune. Note that
94only one previous tune file should be included to avoid mutiple includes
95of the base arch which could lead to a broken configuration due to
96multiple prepend and append assignments.
97
98For example, for x86, there is a common x86/arch-x86.inc which is
99included in the base i586 tune file. The core2 tune builds
100on that, and corei7 builds on core2.
diff --git a/meta/conf/machine/include/arm/README b/meta/conf/machine/include/arm/README
new file mode 100644
index 0000000..a1beb75
--- /dev/null
+++ b/meta/conf/machine/include/arm/README
@@ -0,0 +1,40 @@
12012/03/30 - Mark Hatle <mark.hatle@windriver.com>
2 - Initial Revision
3
4The ARM architecture definitions are split among a number of files.
5The primary definitions for the variables are handled by the core
6arch-arm.inc file.
7
8TUNE_ARCH is set to either "arm" or "armeb" depending on the value
9of the existence of the "bigendian" feature in a given tune.
10
11A small set of ARM specific variables have been defined to allow
12TUNE_PKGARCH to be automatically defined. Optimized tunings must NOT
13change the definiton of TUNE_PKGARCH. TUNE_PKGACH_tune-<tune> will be
14ignored. The format of the package arch is enforced by the TUNE_PKGARCH
15default. The format must be of the form:
16<armversion>[t][e][hf][b][-vfp][-neon]
17
18TUNE_PKGARCH is defined as:
19${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}
20
21ARMPKGARCH - This is the core package arch component specified by each
22tuning. This is the primary identifier of a tuning. Usual values are:
23arm, armv4, armv5, armv6, armv7a, etc.
24
25ARMPKGSFX_THUMB - This is the thumb specific suffix. Curently it is
26defined in feature-arm-thumb.inc.
27
28ARMPKGSFX_DSP - This is the DSP specific suffix. Currently this is set
29to 'e' when on armv5 and the dsp feature is enabled.
30
31ARMPKGSFX_EABI - This is the eabi specific suffix. There are currently
32two defined ABIs specificed, standard EABI and Hard Float (VFP) EABI.
33When the callconvention-hard is enabled, "hf" is specified, otherwise it
34is blank.
35
36ARMPKGSFX_ENDIAN - This is the endian specific suffix. It is defined in
37the core arch-arm.inc file.
38
39ARMPKGSFX_FPU - This is the FPU specific suffix. The suffix indicates
40specific FPU optimizations. 'vfp' and 'neon' are both defined.
diff --git a/meta/conf/machine/include/arm/arch-arm.inc b/meta/conf/machine/include/arm/arch-arm.inc
new file mode 100644
index 0000000..90b80c4
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-arm.inc
@@ -0,0 +1,17 @@
1
2TUNEVALID[bigendian] = "Enable big-endian mode."
3
4ARMPKGARCH = "${ARMPKGARCH_tune-${DEFAULTTUNE}}"
5ARMPKGSFX_ENDIAN = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", "b", "", d)}"
6ARMPKGSFX_FPU ??= ""
7ARMPKGSFX_DSP ??= ""
8ARMPKGSFX_EABI ??= ""
9ARMPKGSFX_THUMB ??= ""
10
11TUNE_ARCH = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", "armeb", "arm", d)}"
12TUNE_PKGARCH = "${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}"
13
14ABIEXTENSION = "eabi"
15
16TARGET_FPU = "${@d.getVar('ARMPKGSFX_FPU', True).strip('-') or 'soft'}"
17
diff --git a/meta/conf/machine/include/arm/arch-armv4.inc b/meta/conf/machine/include/arm/arch-armv4.inc
new file mode 100644
index 0000000..c33c816
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-armv4.inc
@@ -0,0 +1,33 @@
1DEFAULTTUNE ?= "armv4"
2
3TUNEVALID[armv4] = "Enable instructions for ARMv4"
4TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "armv4", " -march=armv4${ARMPKGSFX_THUMB}", "", d)}"
5# enable --fix-v4bx when we have armv4 in TUNE_FEATURES, but then disable it when we have also armv5 or thumb
6# maybe we should extend bb.utils.contains to support check for any checkvalues in value, now it does
7# checkvalues.issubset(val) which cannot be used for negative test of foo neither bar in value
8FIX_V4BX_ARMV4 = "${@bb.utils.contains("TUNE_FEATURES", "armv4", "--fix-v4bx", "", d)}"
9FIX_V4BX_ARMV5 = "${@bb.utils.contains("TUNE_FEATURES", "armv5", "", "${FIX_V4BX_ARMV4}", d)}"
10FIX_V4BX = "${@bb.utils.contains("TUNE_FEATURES", "thumb", "", "${FIX_V4BX_ARMV5}", d)}"
11TARGET_LD_KERNEL_ARCH += "${FIX_V4BX}"
12MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "armv4", "armv4:", "" ,d)}"
13
14require conf/machine/include/arm/arch-arm.inc
15require conf/machine/include/arm/feature-arm-thumb.inc
16
17# Little Endian
18AVAILTUNES += "armv4 armv4t"
19ARMPKGARCH_tune-armv4 ?= "armv4"
20ARMPKGARCH_tune-armv4t ?= "armv4"
21TUNE_FEATURES_tune-armv4 ?= "armv4"
22TUNE_FEATURES_tune-armv4t ?= "${TUNE_FEATURES_tune-armv4} thumb"
23PACKAGE_EXTRA_ARCHS_tune-armv4 = "arm armv4"
24PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
25
26# Big Endian
27AVAILTUNES += "armv4b armv4tb"
28ARMPKGARCH_tune-armv4b ?= "armv4"
29ARMPKGARCH_tune-armv4tb ?= "armv4"
30TUNE_FEATURES_tune-armv4b ?= "${TUNE_FEATURES_tune-armv4} bigendian"
31TUNE_FEATURES_tune-armv4tb ?= "${TUNE_FEATURES_tune-armv4t} bigendian"
32PACKAGE_EXTRA_ARCHS_tune-armv4b = "armeb armv4b"
33PACKAGE_EXTRA_ARCHS_tune-armv4tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv4tb"
diff --git a/meta/conf/machine/include/arm/arch-armv5-dsp.inc b/meta/conf/machine/include/arm/arch-armv5-dsp.inc
new file mode 100644
index 0000000..524a62a
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-armv5-dsp.inc
@@ -0,0 +1,52 @@
1ARMPKGSFX_DSP = "${@bb.utils.contains("TUNE_FEATURES", [ "armv5", "dsp" ], "e", "", d)}"
2TUNEVALID[dsp] = "ARM DSP functionality"
3
4require conf/machine/include/arm/arch-armv5.inc
5
6# Little Endian
7AVAILTUNES += "armv5e armv5te"
8ARMPKGARCH_tune-armv5e ?= "armv5"
9ARMPKGARCH_tune-armv5te ?= "armv5"
10TUNE_FEATURES_tune-armv5e ?= "${TUNE_FEATURES_tune-armv5} dsp"
11TUNE_FEATURES_tune-armv5te ?= "${TUNE_FEATURES_tune-armv5t} dsp"
12PACKAGE_EXTRA_ARCHS_tune-armv5e = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5e"
13PACKAGE_EXTRA_ARCHS_tune-armv5te = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5e armv5te"
14
15# Little Endian + VFP/DSP
16AVAILTUNES += "armv5e-vfp armv5te-vfp armv5ehf-vfp armv5tehf-vfp"
17ARMPKGARCH_tune-armv5e-vfp ?= "armv5"
18ARMPKGARCH_tune-armv5te-vfp ?= "armv5"
19ARMPKGARCH_tune-armv5ehf-vfp ?= "armv5"
20ARMPKGARCH_tune-armv5tehf-vfp ?= "armv5"
21TUNE_FEATURES_tune-armv5e-vfp ?= "${TUNE_FEATURES_tune-armv5e} vfp"
22TUNE_FEATURES_tune-armv5te-vfp ?= "${TUNE_FEATURES_tune-armv5te} vfp"
23TUNE_FEATURES_tune-armv5ehf-vfp ?= "${TUNE_FEATURES_tune-armv5e-vfp} callconvention-hard"
24TUNE_FEATURES_tune-armv5tehf-vfp ?= "${TUNE_FEATURES_tune-armv5te-vfp} callconvention-hard"
25PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5-vfp} armv5e armv5e-vfp"
26PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp} armv5e armv5te armv5e-vfp armv5te-vfp"
27PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp} armv5ehf-vfp"
28PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
29
30# Big Endian
31AVAILTUNES += "armv5eb armv5teb"
32ARMPKGARCH_tune-armv5eb ?= "armv5"
33ARMPKGARCH_tune-armv5teb ?= "armv5"
34TUNE_FEATURES_tune-armv5eb ?= "${TUNE_FEATURES_tune-armv5e} bigendian"
35TUNE_FEATURES_tune-armv5teb ?= "${TUNE_FEATURES_tune-armv5te} bigendian"
36PACKAGE_EXTRA_ARCHS_tune-armv5eb = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5eb"
37PACKAGE_EXTRA_ARCHS_tune-armv5teb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5eb armv5teb"
38
39# Big Endian + VFP/DSP
40AVAILTUNES += "armv5eb-vfp armv5teb-vfp armv5ehfb-vfp armv5tehfb-vfp"
41ARMPKGARCH_tune-armv5eb-vfp ?= "armv5"
42ARMPKGARCH_tune-armv5teb-vfp ?= "armv5"
43ARMPKGARCH_tune-armv5ehfb-vfp ?= "armv5"
44ARMPKGARCH_tune-armv5tehfb-vfp ?= "armv5"
45TUNE_FEATURES_tune-armv5eb-vfp ?= "${TUNE_FEATURES_tune-armv5e-vfp} bigendian"
46TUNE_FEATURES_tune-armv5teb-vfp ?= "${TUNE_FEATURES_tune-armv5te-vfp} bigendian"
47TUNE_FEATURES_tune-armv5ehfb-vfp ?= "${TUNE_FEATURES_tune-armv5ehf-vfp} bigendian"
48TUNE_FEATURES_tune-armv5tehfb-vfp ?= "${TUNE_FEATURES_tune-armv5tehf-vfp} bigendian"
49PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp} armv5eb armv5eb-vfp"
50PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
51PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp} armv5ehfb-vfp"
52PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thfb-vfp} armv5ehfb-vfp armv5tehfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv5.inc b/meta/conf/machine/include/arm/arch-armv5.inc
new file mode 100644
index 0000000..9e8d1fa
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-armv5.inc
@@ -0,0 +1,60 @@
1DEFAULTTUNE ?= "armv5"
2
3TUNEVALID[armv5] = "Enable instructions for ARMv5"
4TUNECONFLICTS[armv5] = "armv4"
5TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "armv5", " -march=armv5${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}", "", d)}"
6MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "armv5", "armv5:", "" ,d)}"
7
8ARMPKGSFX_DSP = "${@bb.utils.contains("TUNE_FEATURES", [ "armv5", "dsp" ], "e", "", d)}"
9
10require conf/machine/include/arm/arch-armv4.inc
11require conf/machine/include/arm/feature-arm-vfp.inc
12
13# Little Endian
14AVAILTUNES += "armv5 armv5t"
15ARMPKGARCH_tune-armv5 ?= "armv5"
16ARMPKGARCH_tune-armv5t ?= "armv5"
17TUNE_FEATURES_tune-armv5 ?= "armv5"
18TUNE_FEATURES_tune-armv5t ?= "${TUNE_FEATURES_tune-armv5} thumb"
19PACKAGE_EXTRA_ARCHS_tune-armv5 = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv5"
20PACKAGE_EXTRA_ARCHS_tune-armv5t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} armv5 armv5t"
21
22# Little Endian + VFP/DSP
23AVAILTUNES += "armv5-vfp armv5t-vfp armv5hf-vfp armv5thf-vfp"
24ARMPKGARCH_tune-armv5-vfp ?= "armv5"
25ARMPKGARCH_tune-armv5t-vfp ?= "armv5"
26ARMPKGARCH_tune-armv5hf-vfp ?= "armv5"
27ARMPKGARCH_tune-armv5thf-vfp ?= "armv5"
28TUNE_FEATURES_tune-armv5-vfp ?= "${TUNE_FEATURES_tune-armv5} vfp"
29TUNE_FEATURES_tune-armv5t-vfp ?= "${TUNE_FEATURES_tune-armv5t} vfp"
30TUNE_FEATURES_tune-armv5hf-vfp ?= "${TUNE_FEATURES_tune-armv5-vfp} callconvention-hard"
31TUNE_FEATURES_tune-armv5thf-vfp ?= "${TUNE_FEATURES_tune-armv5t-vfp} callconvention-hard"
32PACKAGE_EXTRA_ARCHS_tune-armv5-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5-vfp"
33PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5-vfp armv5t-vfp"
34PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp = "armv5hf-vfp"
35PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp = "armv5hf-vfp armv5thf-vfp"
36PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
37
38# Big Endian
39AVAILTUNES += "armv5b armv5tb"
40ARMPKGARCH_tune-armv5b ?= "armv5"
41ARMPKGARCH_tune-armv5tb ?= "armv5"
42TUNE_FEATURES_tune-armv5b ?= "${TUNE_FEATURES_tune-armv5} bigendian"
43TUNE_FEATURES_tune-armv5tb ?= "${TUNE_FEATURES_tune-armv5t} bigendian"
44PACKAGE_EXTRA_ARCHS_tune-armv5b = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv5b"
45PACKAGE_EXTRA_ARCHS_tune-armv5tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4tb} armv5b armv5tb"
46
47# Big Endian + VFP/DSP
48AVAILTUNES += "armv5b-vfp armv5tb-vfp armv5hfb-vfp armv5thfb-vfp"
49ARMPKGARCH_tune-armv5b-vfp ?= "armv5"
50ARMPKGARCH_tune-armv5tb-vfp ?= "armv5"
51ARMPKGARCH_tune-armv5hfb-vfp ?= "armv5"
52ARMPKGARCH_tune-armv5thfb-vfp ?= "armv5"
53TUNE_FEATURES_tune-armv5b-vfp ?= "${TUNE_FEATURES_tune-armv5-vfp} bigendian"
54TUNE_FEATURES_tune-armv5tb-vfp ?= "${TUNE_FEATURES_tune-armv5t-vfp} bigendian"
55TUNE_FEATURES_tune-armv5hfb-vfp ?= "${TUNE_FEATURES_tune-armv5hf-vfp} bigendian"
56TUNE_FEATURES_tune-armv5thfb-vfp ?= "${TUNE_FEATURES_tune-armv5thf-vfp} bigendian"
57PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5b-vfp"
58PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5b-vfp armv5tb-vfp"
59PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp = "armv5hfb-vfp"
60PACKAGE_EXTRA_ARCHS_tune-armv5thfb-vfp = "armv5hfb-vfp armv5thfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv6.inc b/meta/conf/machine/include/arm/arch-armv6.inc
new file mode 100644
index 0000000..0adf73f
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-armv6.inc
@@ -0,0 +1,50 @@
1DEFAULTTUNE ?= "armv6"
2
3TUNEVALID[armv6] = "Enable instructions for ARMv6"
4TUNECONFLICTS[armv6] = "armv4 armv5"
5TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "armv6", " -march=armv6", "", d)}"
6MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "armv6", "armv6:", "" ,d)}"
7
8require conf/machine/include/arm/arch-armv5-dsp.inc
9
10# Little Endian
11AVAILTUNES += "armv6-novfp armv6t-novfp armv6 armv6t armv6hf armv6thf"
12ARMPKGARCH_tune-armv6-novfp ?= "armv6"
13ARMPKGARCH_tune-armv6t-novfp ?= "armv6"
14ARMPKGARCH_tune-armv6 ?= "armv6"
15ARMPKGARCH_tune-armv6t ?= "armv6"
16ARMPKGARCH_tune-armv6hf ?= "armv6"
17ARMPKGARCH_tune-armv6thf ?= "armv6"
18TUNE_FEATURES_tune-armv6-novfp ?= "armv6"
19TUNE_FEATURES_tune-armv6t-novfp ?= "${TUNE_FEATURES_tune-armv6-novfp} thumb"
20TUNE_FEATURES_tune-armv6 ?= "${TUNE_FEATURES_tune-armv6-novfp} vfp"
21TUNE_FEATURES_tune-armv6t ?= "${TUNE_FEATURES_tune-armv6t-novfp} vfp"
22TUNE_FEATURES_tune-armv6hf ?= "${TUNE_FEATURES_tune-armv6} callconvention-hard"
23TUNE_FEATURES_tune-armv6thf ?= "${TUNE_FEATURES_tune-armv6t} callconvention-hard"
24PACKAGE_EXTRA_ARCHS_tune-armv6-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5e} armv6"
25PACKAGE_EXTRA_ARCHS_tune-armv6t-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} armv6 armv6t"
26PACKAGE_EXTRA_ARCHS_tune-armv6 = "${PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp} armv6 armv6-vfp"
27PACKAGE_EXTRA_ARCHS_tune-armv6t = "${PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp} armv6 armv6t armv6-vfp armv6t-vfp"
28PACKAGE_EXTRA_ARCHS_tune-armv6hf = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp} armv6hf-vfp"
29PACKAGE_EXTRA_ARCHS_tune-armv6thf = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp} armv6hf-vfp armv6thf-vfp"
30
31# Big Endian
32AVAILTUNES += "armv6b-novfp armv6tb-novfp armv6b armv6tb armv6hfb armv6thfb"
33ARMPKGARCH_tune-armv6b-novfp ?= "armv6"
34ARMPKGARCH_tune-armv6tb-novfp ?= "armv6"
35ARMPKGARCH_tune-armv6b ?= "armv6"
36ARMPKGARCH_tune-armv6tb ?= "armv6"
37ARMPKGARCH_tune-armv6hfb ?= "armv6"
38ARMPKGARCH_tune-armv6thfb ?= "armv6"
39TUNE_FEATURES_tune-armv6b-novfp ?= "${TUNE_FEATURES_tune-armv6-novfp} bigendian"
40TUNE_FEATURES_tune-armv6tb-novfp ?= "${TUNE_FEATURES_tune-armv6t-novfp} bigendian"
41TUNE_FEATURES_tune-armv6b ?= "${TUNE_FEATURES_tune-armv6} bigendian"
42TUNE_FEATURES_tune-armv6tb ?= "${TUNE_FEATURES_tune-armv6t} bigendian"
43TUNE_FEATURES_tune-armv6hfb ?= "${TUNE_FEATURES_tune-armv6hf} bigendian"
44TUNE_FEATURES_tune-armv6thfb ?= "${TUNE_FEATURES_tune-armv6thf} bigendian"
45PACKAGE_EXTRA_ARCHS_tune-armv6b-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb} armv6b"
46PACKAGE_EXTRA_ARCHS_tune-armv6tb-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb} armv6b armv6tb"
47PACKAGE_EXTRA_ARCHS_tune-armv6b = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp} armv6b armv6b-vfp"
48PACKAGE_EXTRA_ARCHS_tune-armv6tb = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp} armv6b armv6tb armv6b-vfp armv6tb-vfp"
49PACKAGE_EXTRA_ARCHS_tune-armv6hfb = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp} armv6hfb-vfp"
50PACKAGE_EXTRA_ARCHS_tune-armv6thfb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp} armv6hfb-vfp armv6thfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
new file mode 100644
index 0000000..bb36c39
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -0,0 +1,75 @@
1DEFAULTTUNE ?= "armv7a"
2
3TUNEVALID[armv7a] = "Enable instructions for ARMv7-a"
4TUNECONFLICTS[armv7a] = "armv4 armv5 armv6 armv7"
5TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "armv7a", " -march=armv7-a", "", d)}"
6MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "armv7a", "armv7a:", "" ,d)}"
7
8require conf/machine/include/arm/arch-armv6.inc
9require conf/machine/include/arm/feature-arm-neon.inc
10
11# Little Endian base configs
12AVAILTUNES += "armv7a armv7at armv7a-neon armv7at-neon"
13ARMPKGARCH_tune-armv7a ?= "armv7a"
14ARMPKGARCH_tune-armv7at ?= "armv7a"
15ARMPKGARCH_tune-armv7a-neon?= "armv7a"
16ARMPKGARCH_tune-armv7at-neon ?= "armv7a"
17TUNE_FEATURES_tune-armv7a ?= "armv7a vfp"
18TUNE_FEATURES_tune-armv7at ?= "${TUNE_FEATURES_tune-armv7a} thumb"
19TUNE_FEATURES_tune-armv7a-neon ?= "${TUNE_FEATURES_tune-armv7a} neon"
20TUNE_FEATURES_tune-armv7at-neon ?= "${TUNE_FEATURES_tune-armv7at} neon"
21PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv6} armv7a armv7a-vfp"
22PACKAGE_EXTRA_ARCHS_tune-armv7a-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-neon"
23PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
24PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
25
26# VFP Tunes
27AVAILTUNES += "armv7ahf armv7athf armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
28ARMPKGARCH_tune-armv7ahf ?= "armv7a"
29ARMPKGARCH_tune-armv7athf ?= "armv7a"
30ARMPKGARCH_tune-armv7ahf-neon?= "armv7a"
31ARMPKGARCH_tune-armv7athf-neon ?= "armv7a"
32ARMPKGARCH_tune-armv7ahf-neon-vfpv4 ?= "armv7a"
33ARMPKGARCH_tune-armv7athf-neon-vfpv4 ?= "armv7a"
34TUNE_FEATURES_tune-armv7ahf ?= "${TUNE_FEATURES_tune-armv7a} callconvention-hard"
35TUNE_FEATURES_tune-armv7athf ?= "${TUNE_FEATURES_tune-armv7at} callconvention-hard"
36TUNE_FEATURES_tune-armv7ahf-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} callconvention-hard"
37TUNE_FEATURES_tune-armv7athf-neon ?= "${TUNE_FEATURES_tune-armv7at-neon} callconvention-hard"
38TUNE_FEATURES_tune-armv7ahf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7ahf-neon} vfpv4"
39TUNE_FEATURES_tune-armv7athf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7athf-neon} vfpv4"
40PACKAGE_EXTRA_ARCHS_tune-armv7ahf = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} armv7ahf-vfp"
41PACKAGE_EXTRA_ARCHS_tune-armv7athf = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
42PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7ahf-vfp-neon"
43PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-neon armv7at2hf-vfp-neon"
44PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} armv7ahf-vfp-neon-vfpv4"
45PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7athf-vfp-neon-vfpv4"
46
47# Big Endian
48AVAILTUNES += "armv7ab armv7atb armv7ab-neon armv7atb-neon"
49ARMPKGARCH_tune-armv7ab ?= "armv7a"
50ARMPKGARCH_tune-armv7atb ?= "armv7a"
51ARMPKGARCH_tune-armv7ab-neon?= "armv7a"
52ARMPKGARCH_tune-armv7atb-neon ?= "armv7a"
53TUNE_FEATURES_tune-armv7ab ?= "${TUNE_FEATURES_tune-armv7a} bigendian"
54TUNE_FEATURES_tune-armv7atb ?= "${TUNE_FEATURES_tune-armv7at} bigendian"
55TUNE_FEATURES_tune-armv7ab-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} bigendian"
56TUNE_FEATURES_tune-armv7atb-neon ?= "${TUNE_FEATURES_tune-armv7at-neon} bigendian"
57PACKAGE_EXTRA_ARCHS_tune-armv7ab = "${PACKAGE_EXTRA_ARCHS_tune-armv6b} armv7ab-vfp"
58PACKAGE_EXTRA_ARCHS_tune-armv7atb = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
59PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-neon"
60PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
61
62# Big Endian + VFP
63AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-neon armv7athfb-neon"
64ARMPKGARCH_tune-armv7ahfb ?= "armv7a"
65ARMPKGARCH_tune-armv7athfb ?= "armv7a"
66ARMPKGARCH_tune-armv7ahfb-neon?= "armv7a"
67ARMPKGARCH_tune-armv7athfb-neon ?= "armv7a"
68TUNE_FEATURES_tune-armv7ahfb ?= "${TUNE_FEATURES_tune-armv7ahf} bigendian"
69TUNE_FEATURES_tune-armv7athfb ?= "${TUNE_FEATURES_tune-armv7athf} bigendian"
70TUNE_FEATURES_tune-armv7ahfb-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} bigendian"
71TUNE_FEATURES_tune-armv7athfb-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} bigendian"
72PACKAGE_EXTRA_ARCHS_tune-armv7ahfb = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb} armv7ahfb-vfp"
73PACKAGE_EXTRA_ARCHS_tune-armv7athfb = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
74PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7ahfb-vfp-neon"
75PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
diff --git a/meta/conf/machine/include/arm/feature-arm-neon.inc b/meta/conf/machine/include/arm/feature-arm-neon.inc
new file mode 100644
index 0000000..e8b2b85
--- /dev/null
+++ b/meta/conf/machine/include/arm/feature-arm-neon.inc
@@ -0,0 +1,3 @@
1TUNEVALID[neon] = "Enable Neon SIMD accelerator unit."
2TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "neon", bb.utils.contains("TUNE_FEATURES", "vfpv4", " -mfpu=neon-vfpv4", " -mfpu=neon", d), "" , d)}"
3ARMPKGSFX_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "neon", "-neon", "", d)}"
diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc b/meta/conf/machine/include/arm/feature-arm-thumb.inc
new file mode 100644
index 0000000..fa3a4e5
--- /dev/null
+++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
@@ -0,0 +1,25 @@
1# The instruction set the compiler should use when generating application
2# code. The kernel is always compiled with arm code at present. arm code
3# is the original 32 bit ARM instruction set, thumb code is the 16 bit
4# encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size)
5# but requires more instructions (140% for 70% smaller code) so may be
6# slower.
7TUNEVALID[thumb] = "Use thumb instructions instead of ARM"
8ARM_THUMB_M_OPT = "${@['-marm', '-mthumb'][d.getVar('ARM_INSTRUCTION_SET', True) == 'thumb']}"
9TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", " ${ARM_THUMB_M_OPT}", "", d)}"
10OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}"
11
12ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv4", "thumb" ], "t", "", d)}"
13ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv5", "thumb" ], "t", "", d)}"
14ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv6", "thumb" ], "t", "", d)}"
15ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv7a", "thumb" ], "t2", "", d)}"
16
17# Whether to compile with code to allow interworking between the two
18# instruction sets. This allows thumb code to be executed on a primarily
19# arm system and vice versa. It is strongly recommended that DISTROs not
20# turn this off - the actual cost is very small.
21TUNEVALID[no-thumb-interwork] = "Disable mixing of thumb and ARM functions"
22TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", " -mno-thumb-interwork", " -mthumb-interwork", d)}"
23OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", ":thumb-interwork", "", d)}"
24
25TARGET_CC_KERNEL_ARCH += "-mno-thumb-interwork -marm"
diff --git a/meta/conf/machine/include/arm/feature-arm-vfp.inc b/meta/conf/machine/include/arm/feature-arm-vfp.inc
new file mode 100644
index 0000000..13927ff
--- /dev/null
+++ b/meta/conf/machine/include/arm/feature-arm-vfp.inc
@@ -0,0 +1,9 @@
1TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
2ARMPKGSFX_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "vfp", "-vfp", "" ,d)}"
3
4TUNEVALID[vfpv4] = "Enable Vector Floating Point Version 4 (vfpv4) unit."
5ARMPKGSFX_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "vfpv4", "-vfpv4", "" ,d)}"
6
7TUNEVALID[callconvention-hard] = "Enable EABI hard float call convention, requires VFP."
8TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "vfp", bb.utils.contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
9ARMPKGSFX_EABI .= "${@bb.utils.contains("TUNE_FEATURES", [ "callconvention-hard", "vfp" ], "hf", "", d)}"
diff --git a/meta/conf/machine/include/mips/README b/meta/conf/machine/include/mips/README
new file mode 100644
index 0000000..c375f31
--- /dev/null
+++ b/meta/conf/machine/include/mips/README
@@ -0,0 +1,36 @@
12012/03/30 - Mark Hatle <mark.hatle@windriver.com>
2 - Initial Version
3
4MIPS currently defines 12 ABIs. Combinations of:
5 *) Big/Little Endian
6 *) Hardware/Software Floating Point
7 *) o32, n32, n64 ABI
8
9TUNE_ARCH, the GNU canonical arch, is defined as:
10
11mips${MIPSPKGSFX_BYTE}${MIPSPKGSFX_ENDIAN}
12
13The package arch is defined in such a way to generated a standard naming
14scheme. The scheme is: <mips variant>[-nf][-n32]
15
16TUNE_PKGARCH is defined as:
17
18${MIPSPKGSFX_VARIANT_tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}
19
20The following is a list of MIPS specific variables:
21
22MIPSPKGSFX_BYTE - This is defined as either blank and "64" for MIPS64 CPUs.
23
24MIPSPKGSFX_ENDIAN - For bigendian hardware this is blank, otherwise it's
25defined as "el".
26
27MIPSPKGSFX_VARIANT_tune-<tune> - In the default tunings it is set to the
28same value as TUNE_ARCH. In custom, optimized tunings, the value should
29be modified to more precisely describe the tuning.
30
31MIPSPKGSFX_FPU - The value is set to "" or "-nf", where "-nf" indicates
32that the tune is using a non-floating point ABI.
33
34MIPSPKGSFX_ABI - This is used to specify an alternative ABI when the previous
35values are not enough to distringuish the package. "-n32" is added when
36building for N32 ABI.
diff --git a/meta/conf/machine/include/mips/arch-mips.inc b/meta/conf/machine/include/mips/arch-mips.inc
new file mode 100644
index 0000000..02626d3
--- /dev/null
+++ b/meta/conf/machine/include/mips/arch-mips.inc
@@ -0,0 +1,102 @@
1# MIPS Architecture definition
2# 12 defined ABIs, all combinations of:
3# *) Big/Little Endian
4# *) Hardware/Software Floating Point
5# *) o32, n32, n64 ABI
6
7DEFAULTTUNE ?= "mips"
8
9# Endianess
10TUNEVALID[bigendian] = "Enable big-endian mode"
11TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -meb", " -mel", d)}"
12
13# ABI flags
14TUNEVALID[o32] = "MIPS o32 ABI"
15TUNECONFLICTS[o32] = "n32 n64"
16TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "o32", " -mabi=32", "", d)}"
17
18TUNEVALID[n32] = "MIPS64 n32 ABI"
19TUNECONFLICTS[n32] = "o32 n64"
20ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "n32", "n32", "" ,d)}"
21TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "n32", " -mabi=n32", "", d)}"
22
23TUNEVALID[n64] = "MIPS64 n64 ABI"
24TUNECONFLICTS[n64] = "o32 n32"
25TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "n64", " -mabi=64", "", d)}"
26
27# Floating point
28TUNEVALID[fpu-hard] = "Use hardware FPU"
29TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", " -mhard-float", " -msoft-float", d)}"
30TARGET_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", "", "soft", d)}"
31
32# Package naming
33MIPSPKGSFX_ENDIAN = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", "", "el", d)}"
34MIPSPKGSFX_BYTE = "${@bb.utils.contains("TUNE_FEATURES", "n64" , "64", "", d)}"
35MIPSPKGSFX_BYTE .= "${@bb.utils.contains("TUNE_FEATURES", "n32" , "64", "", d)}"
36MIPSPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}"
37MIPSPKGSFX_ABI = "${@bb.utils.contains("TUNE_FEATURES", "n32", "-n32", "", d)}"
38
39TUNE_ARCH = "mips${MIPSPKGSFX_BYTE}${MIPSPKGSFX_ENDIAN}"
40TUNE_PKGARCH = "${MIPSPKGSFX_VARIANT_tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}"
41
42# Base tunes
43AVAILTUNES += "mips mips64-n32 mips64 mipsel mips64el-n32 mips64el mips-nf mips64-nf-n32 mips64-nf mipsel-nf mips64el-nf-n32 mips64el-nf"
44TUNE_FEATURES_tune-mips = "o32 bigendian fpu-hard"
45BASE_LIB_tune-mips = "lib"
46MIPSPKGSFX_VARIANT_tune-mips = "${TUNE_ARCH}"
47PACKAGE_EXTRA_ARCHS_tune-mips = "mips"
48
49TUNE_FEATURES_tune-mips64-n32 = "n32 bigendian fpu-hard"
50BASE_LIB_tune-mips64-n32 = "lib32"
51MIPSPKGSFX_VARIANT_tune-mips64-n32 = "${TUNE_ARCH}"
52PACKAGE_EXTRA_ARCHS_tune-mips64-n32 = "mips64-n32"
53
54TUNE_FEATURES_tune-mips64 = "n64 bigendian fpu-hard"
55BASE_LIB_tune-mips64 = "lib64"
56MIPSPKGSFX_VARIANT_tune-mips64 = "${TUNE_ARCH}"
57PACKAGE_EXTRA_ARCHS_tune-mips64 = "mips64"
58
59TUNE_FEATURES_tune-mipsel = "o32 fpu-hard"
60BASE_LIB_tune-mipsel = "lib"
61MIPSPKGSFX_VARIANT_tune-mipsel = "${TUNE_ARCH}"
62PACKAGE_EXTRA_ARCHS_tune-mipsel = "mipsel"
63
64TUNE_FEATURES_tune-mips64el-n32 = "n32 fpu-hard"
65BASE_LIB_tune-mips64el-n32 = "lib32"
66MIPSPKGSFX_VARIANT_tune-mips64el-n32 = "${TUNE_ARCH}"
67PACKAGE_EXTRA_ARCHS_tune-mips64el-n32 = "mips64el-n32"
68
69TUNE_FEATURES_tune-mips64el = "n64 fpu-hard"
70BASE_LIB_tune-mips64el = "lib64"
71MIPSPKGSFX_VARIANT_tune-mips64el = "${TUNE_ARCH}"
72PACKAGE_EXTRA_ARCHS_tune-mips64el = "mips64el"
73
74TUNE_FEATURES_tune-mips-nf = "o32 bigendian"
75BASE_LIB_tune-mips-nf = "lib"
76MIPSPKGSFX_VARIANT_tune-mips-nf = "${TUNE_ARCH}"
77PACKAGE_EXTRA_ARCHS_tune-mips-nf = "mips-nf"
78
79TUNE_FEATURES_tune-mips64-nf-n32 = "n32 bigendian"
80BASE_LIB_tune-mips64-nf-n32 = "lib32"
81MIPSPKGSFX_VARIANT_tune-mips64-nf-n32 = "${TUNE_ARCH}"
82PACKAGE_EXTRA_ARCHS_tune-mips64-nf-n32 = "mips64-nf-n32"
83
84TUNE_FEATURES_tune-mips64-nf = "n64 bigendian"
85BASE_LIB_tune-mips64-nf = "lib64"
86MIPSPKGSFX_VARIANT_tune-mips64-nf = "${TUNE_ARCH}"
87PACKAGE_EXTRA_ARCHS_tune-mips64-nf = "mips64-nf"
88
89TUNE_FEATURES_tune-mipsel-nf = "o32"
90BASE_LIB_tune-mipsel-nf = "lib"
91MIPSPKGSFX_VARIANT_tune-mipsel-nf = "${TUNE_ARCH}"
92PACKAGE_EXTRA_ARCHS_tune-mipsel-nf = "mipsel-nf"
93
94TUNE_FEATURES_tune-mips64el-nf-n32 = "n32"
95BASE_LIB_tune-mips64el-nf-n32 = "lib32"
96MIPSPKGSFX_VARIANT_tune-mips64el-nf-n32 = "${TUNE_ARCH}"
97PACKAGE_EXTRA_ARCHS_tune-mips64el-nf-n32 = "mips64el-nf-n32"
98
99TUNE_FEATURES_tune-mips64el-nf = "n64"
100BASE_LIB_tune-mips64el-nf = "lib64"
101MIPSPKGSFX_VARIANT_tune-mips64el-nf = "${TUNE_ARCH}"
102PACKAGE_EXTRA_ARCHS_tune-mips64el-nf = "mips64el-nf"
diff --git a/meta/conf/machine/include/powerpc/README b/meta/conf/machine/include/powerpc/README
new file mode 100644
index 0000000..e87fb50
--- /dev/null
+++ b/meta/conf/machine/include/powerpc/README
@@ -0,0 +1,17 @@
12012/03/30 - Mark Hatle <mark.hatle@windriver.com>
2 - Initial revision
3
4There are 4 primary PowerPC ABIs.
5# *) Hard/Soft Floating Point
6# *) 32-bit/64-bit
7
8TUNE_ARCH is defined as either "powerpc" or "powerpc64" based on the m32
9or m64 feature.
10
11May of the PowerPC package archictures are based on legacy Linux names.
12However, a general naming scheme should be similar to: ppc[64][<family>][-nf].
13(Note: the default package architectures are "powerpc" and "powerpc64".)
14
15TUNE_PKGARCH is defined as TUNE_PKGARCH_tune-${DEFAULTTUNE}. All
16PowerPC tunings are required to define TUNE_PKGARCH_tune-<tune>.
17
diff --git a/meta/conf/machine/include/powerpc/arch-powerpc.inc b/meta/conf/machine/include/powerpc/arch-powerpc.inc
new file mode 100644
index 0000000..036ca3c
--- /dev/null
+++ b/meta/conf/machine/include/powerpc/arch-powerpc.inc
@@ -0,0 +1,34 @@
1# Power Architecture definition
2# Four defined ABIs, all combinations of:
3# *) Hard/Soft Floating Point
4# *) 32-bit/64-bit
5
6DEFAULTTUNE ?= "powerpc"
7
8TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
9ABIEXTENSION ?= ""
10
11TUNEVALID[m32] = "Power ELF32 standard ABI"
12TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "m32", " -m32", "", d)}"
13TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m32", "powerpc", "", d)}"
14
15TUNEVALID[fpu-hard] = "Use hardware FPU."
16TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", " -mhard-float", "", d)}"
17
18TUNEVALID[fpu-soft] = "Use software FPU."
19TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", " -msoft-float", "", d)}"
20TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)}"
21
22TUNEVALID[altivec] = "Altivec"
23
24# Basic tune definitions
25AVAILTUNES += "powerpc powerpc-nf"
26TUNE_FEATURES_tune-powerpc-nf = "m32 fpu-soft"
27BASE_LIB_tune-powerpc-nf = "lib"
28TUNE_PKGARCH_tune-powerpc-nf = "powerpc-nf"
29PACKAGE_EXTRA_ARCHS_tune-powerpc-nf = "powerpc-nf"
30
31TUNE_FEATURES_tune-powerpc = "m32 fpu-hard"
32BASE_LIB_tune-powerpc = "lib"
33TUNE_PKGARCH_tune-powerpc = "powerpc"
34PACKAGE_EXTRA_ARCHS_tune-powerpc = "powerpc"
diff --git a/meta/conf/machine/include/powerpc/arch-powerpc64.inc b/meta/conf/machine/include/powerpc/arch-powerpc64.inc
new file mode 100644
index 0000000..8476dec
--- /dev/null
+++ b/meta/conf/machine/include/powerpc/arch-powerpc64.inc
@@ -0,0 +1,14 @@
1DEFAULTTUNE ?= "powerpc64"
2
3require conf/machine/include/powerpc/arch-powerpc.inc
4
5TUNEVALID[m64] = "Power ELF64 standard ABI"
6TUNECONFLICTS[m64] = "m32 nf"
7TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "m64", " -m64", "", d)}"
8TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", [ "m64" ], "powerpc64", "", d)}"
9
10AVAILTUNES += "powerpc64"
11TUNE_FEATURES_tune-powerpc64 ?= "m64 fpu-hard"
12BASE_LIB_tune-powerpc64 = "lib64"
13TUNE_PKGARCH_tune-powerpc64 = "powerpc64"
14PACKAGE_EXTRA_ARCHS_tune-powerpc64 = "powerpc64"
diff --git a/meta/conf/machine/include/qemu.inc b/meta/conf/machine/include/qemu.inc
new file mode 100644
index 0000000..591f6b4
--- /dev/null
+++ b/meta/conf/machine/include/qemu.inc
@@ -0,0 +1,29 @@
1PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
2PREFERRED_PROVIDER_virtual/egl ?= "mesa"
3PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
4PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
5PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
6
7XSERVER ?= "xserver-xorg \
8 ${@base_contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast', '', d)} \
9 xf86-input-evdev \
10 xf86-input-mouse \
11 xf86-video-fbdev \
12 xf86-input-keyboard"
13
14MACHINE_FEATURES = "alsa bluetooth usbgadget screen"
15
16MACHINEOVERRIDES =. "qemuall:"
17
18IMAGE_FSTYPES += "tar.bz2 ext3"
19
20# Don't include kernels in standard images
21RDEPENDS_kernel-base = ""
22
23# Use a common kernel recipe for all QEMU machines
24PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
25
26EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native"
27
28# Provide the nfs server kernel module for all qemu images
29KERNEL_FEATURES_append_pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
diff --git a/meta/conf/machine/include/sh/README b/meta/conf/machine/include/sh/README
new file mode 100644
index 0000000..b351acd
--- /dev/null
+++ b/meta/conf/machine/include/sh/README
@@ -0,0 +1,11 @@
12012/03/30 - Mark Hatle <mark.hatle@windriver.com>
2 - Initial Revision
3
4Both big endian and little endian are defined for SH.
5
6Experimental -- SH tunings have not been validated.
7
8The TUNE_ARCH is defined as ${TUNE_ARCH_tune-${DEFAULTTUNE}}.
9
10The TUNE_PKGARCH is defind as ${TUNE_PKGARCH_tune-${DEFAULTTUNE}}.
11
diff --git a/meta/conf/machine/include/sh/arch-sh.inc b/meta/conf/machine/include/sh/arch-sh.inc
new file mode 100644
index 0000000..64d4cac
--- /dev/null
+++ b/meta/conf/machine/include/sh/arch-sh.inc
@@ -0,0 +1,9 @@
1# SH Architecture definition
2
3DEFAULTTUNE ?= "sh"
4
5TUNE_ARCH = "${TUNE_ARCH_tune-${DEFAULTTUNE}}"
6TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
7
8TUNEVALID[bigendian] = "Enabled big-endian mode."
9TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mb", " -ml", d)}"
diff --git a/meta/conf/machine/include/soc-family.inc b/meta/conf/machine/include/soc-family.inc
new file mode 100644
index 0000000..0251da0
--- /dev/null
+++ b/meta/conf/machine/include/soc-family.inc
@@ -0,0 +1,2 @@
1# Add SOC_FAMILY to machine overrides so we get access to e.g. 'omap3' and 'ti335x'
2MACHINEOVERRIDES =. "${@['', '${SOC_FAMILY}:']['${SOC_FAMILY}' != '']}"
diff --git a/meta/conf/machine/include/tune-arm1136jf-s.inc b/meta/conf/machine/include/tune-arm1136jf-s.inc
new file mode 100644
index 0000000..4a131b6
--- /dev/null
+++ b/meta/conf/machine/include/tune-arm1136jf-s.inc
@@ -0,0 +1,11 @@
1DEFAULTTUNE ?= "armv6"
2
3require conf/machine/include/arm/arch-armv6.inc
4
5TUNEVALID[arm1136jfs] = "Enable arm1136jfs specific processor optimizations"
6TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "arm1136jfs", " -mtune=arm1136jf-s", "", d)}"
7
8AVAILTUNES += "arm1136jfs"
9ARMPKGARCH_tune-arm1136jfs = "arm1136jfs"
10TUNE_FEATURES_tune-arm1136jfs = "${TUNE_FEATURES_tune-armv6} arm1136jfs"
11PACKAGE_EXTRA_ARCHS_tune-arm1136jfs = "${PACKAGE_EXTRA_ARCHS_tune-armv6} arm1136jfs-vfp"
diff --git a/meta/conf/machine/include/tune-arm920t.inc b/meta/conf/machine/include/tune-arm920t.inc
new file mode 100644
index 0000000..5cadcc7
--- /dev/null
+++ b/meta/conf/machine/include/tune-arm920t.inc
@@ -0,0 +1,11 @@
1DEFAULTTUNE ?= "armv4t"
2
3require conf/machine/include/arm/arch-armv4.inc
4
5TUNEVALID[arm920t] = "Enable arm920t specific processor optimizations"
6TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "arm920t", " -mtune=arm920t", "", d)}"
7
8AVAILTUNES += "arm920t"
9ARMPKGARCH_tune-arm920t = "arm920t"
10TUNE_FEATURES_tune-arm920t = "${TUNE_FEATURES_tune-armv4t} arm920t"
11PACKAGE_EXTRA_ARCHS_tune-arm920t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} arm920tt"
diff --git a/meta/conf/machine/include/tune-arm926ejs.inc b/meta/conf/machine/include/tune-arm926ejs.inc
new file mode 100644
index 0000000..335e4e0
--- /dev/null
+++ b/meta/conf/machine/include/tune-arm926ejs.inc
@@ -0,0 +1,11 @@
1DEFAULTTUNE ?= "armv5te"
2
3require conf/machine/include/arm/arch-armv5-dsp.inc
4
5TUNEVALID[arm926ejs] = "Enable arm926ejs specific processor optimizations"
6TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "arm926ejs", " -mtune=arm926ej-s", "", d)}"
7
8AVAILTUNES += "arm926ejs"
9ARMPKGARCH_tune-arm926ejs = "arm926ejs"
10TUNE_FEATURES_tune-arm926ejs = "${TUNE_FEATURES_tune-armv5te} arm926ejs"
11PACKAGE_EXTRA_ARCHS_tune-arm926ejs = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} arm926ejste"
diff --git a/meta/conf/machine/include/tune-arm9tdmi.inc b/meta/conf/machine/include/tune-arm9tdmi.inc
new file mode 100644
index 0000000..dee57c9
--- /dev/null
+++ b/meta/conf/machine/include/tune-arm9tdmi.inc
@@ -0,0 +1,11 @@
1DEFAULTTUNE ?= "armv4t"
2
3require conf/machine/include/arm/arch-armv4.inc
4
5TUNEVALID[arm9tdmi] = "Enable arm9tdmi specific processor optimizations"
6TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "arm9tdmi", " -mtune=arm9tdmi", "", d)}"
7
8AVAILTUNES += "arm9tdmi"
9ARMPKGARCH_tune-arm9tdmi = "arm9tdmi"
10TUNE_FEATURES_tune-arm9tdmi = "${TUNE_FEATURES_tune-armv4t} arm9tdmi"
11PACKAGE_EXTRA_ARCHS_tune-arm9tdmi = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} arm9tdmit"
diff --git a/meta/conf/machine/include/tune-atom.inc b/meta/conf/machine/include/t