diff options
Diffstat (limited to 'meta/conf/bitbake.conf')
-rw-r--r-- | meta/conf/bitbake.conf | 784 |
1 files changed, 784 insertions, 0 deletions
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf new file mode 100644 index 0000000000..b3786a757b --- /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 | ||
10 | baselib = "${BASELIB}" | ||
11 | baselib[vardepvalue] = "${baselib}" | ||
12 | BASELIB = "lib" | ||
13 | BASELIB_powerpc64 = "lib64" | ||
14 | |||
15 | # Path prefixes | ||
16 | export base_prefix = "" | ||
17 | export prefix = "/usr" | ||
18 | export exec_prefix = "/usr" | ||
19 | |||
20 | # Base paths | ||
21 | export base_bindir = "${base_prefix}/bin" | ||
22 | export base_sbindir = "${base_prefix}/sbin" | ||
23 | export base_libdir = "${base_prefix}/${baselib}" | ||
24 | export nonarch_base_libdir = "${base_prefix}/lib" | ||
25 | |||
26 | # Architecture independent paths | ||
27 | export datadir = "${prefix}/share" | ||
28 | export sysconfdir = "${base_prefix}/etc" | ||
29 | export servicedir = "${base_prefix}/srv" | ||
30 | export sharedstatedir = "${base_prefix}/com" | ||
31 | export localstatedir = "${base_prefix}/var" | ||
32 | export infodir = "${datadir}/info" | ||
33 | export mandir = "${datadir}/man" | ||
34 | export docdir = "${datadir}/doc" | ||
35 | export systemd_unitdir = "/lib/systemd" | ||
36 | |||
37 | # Architecture dependent paths | ||
38 | export bindir = "${exec_prefix}/bin" | ||
39 | export sbindir = "${exec_prefix}/sbin" | ||
40 | export libdir = "${exec_prefix}/${baselib}" | ||
41 | export libexecdir = "${libdir}/${BPN}" | ||
42 | export includedir = "${exec_prefix}/include" | ||
43 | export oldincludedir = "${exec_prefix}/include" | ||
44 | localedir = "${libdir}/locale" | ||
45 | |||
46 | # Linkage between native/cross/nativesdk layouts | ||
47 | base_bindir_native = "/bin" | ||
48 | base_sbindir_native = "/sbin" | ||
49 | sysconfdir_native = "/etc" | ||
50 | prefix_native = "/usr" | ||
51 | bindir_native = "${prefix_native}/bin" | ||
52 | sbindir_native = "${prefix_native}/sbin" | ||
53 | includedir_native = "${prefix_native}/include" | ||
54 | libdir_native = "${prefix_native}/lib" | ||
55 | libexecdir_native = "${libdir_native}/${BPN}" | ||
56 | base_libdir_native = "/lib" | ||
57 | datadir_native = "${prefix_native}/share" | ||
58 | bindir_cross = "/bin" | ||
59 | bindir_crossscripts = "${bindir}/crossscripts" | ||
60 | prefix_nativesdk = "/usr" | ||
61 | bindir_nativesdk = "${prefix_nativesdk}/bin" | ||
62 | includedir_nativesdk = "${prefix_nativesdk}/include" | ||
63 | libdir_nativesdk = "${prefix_nativesdk}/lib" | ||
64 | base_libdir_nativesdk = "/lib" | ||
65 | localstatedir_nativesdk = "/var" | ||
66 | |||
67 | # | ||
68 | # Cross recipes need to know about the target layout | ||
69 | # := is used carefully here | ||
70 | # | ||
71 | target_datadir := "${datadir}" | ||
72 | # Used to find env/perl/python | ||
73 | USRBINPATH = "${bindir}" | ||
74 | USRBINPATH_class-native = "/usr/bin" | ||
75 | USRBINPATH_class-nativesdk = "/usr/bin" | ||
76 | |||
77 | # Root home directory | ||
78 | ROOT_HOME ??= "/home/root" | ||
79 | |||
80 | ################################################################## | ||
81 | # Architecture-dependent build variables. | ||
82 | ################################################################## | ||
83 | |||
84 | BUILD_ARCH = "${@os.uname()[4]}" | ||
85 | BUILD_OS = "${@os.uname()[0].lower()}" | ||
86 | BUILD_VENDOR = "" | ||
87 | BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}" | ||
88 | BUILD_PREFIX = "" | ||
89 | BUILD_CC_ARCH = "" | ||
90 | BUILD_LD_ARCH = "" | ||
91 | BUILD_AS_ARCH = "" | ||
92 | BUILD_EXEEXT = "" | ||
93 | |||
94 | HOST_ARCH = "${TARGET_ARCH}" | ||
95 | HOST_OS = "${TARGET_OS}" | ||
96 | HOST_VENDOR = "${TARGET_VENDOR}" | ||
97 | HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}" | ||
98 | HOST_PREFIX = "${TARGET_PREFIX}" | ||
99 | HOST_CC_ARCH = "${TARGET_CC_ARCH}" | ||
100 | HOST_LD_ARCH = "${TARGET_LD_ARCH}" | ||
101 | HOST_AS_ARCH = "${TARGET_AS_ARCH}" | ||
102 | HOST_EXEEXT = "" | ||
103 | |||
104 | TUNE_ARCH ??= "INVALID" | ||
105 | TUNE_CCARGS ??= "" | ||
106 | TUNE_CCARGS[vardepvalue] = "${TUNE_CCARGS}" | ||
107 | TUNE_LDARGS ??= "" | ||
108 | TUNE_ASARGS ??= "" | ||
109 | TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}" | ||
110 | LIBCEXTENSION ??= "" | ||
111 | ABIEXTENSION ??= "" | ||
112 | USE_NLS ??= "yes" | ||
113 | SDKUSE_NLS ??= "yes" | ||
114 | |||
115 | TARGET_ARCH = "${TUNE_ARCH}" | ||
116 | TARGET_OS = "linux${LIBCEXTENSION}${ABIEXTENSION}" | ||
117 | TARGET_VENDOR = "-oe" | ||
118 | TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + d.getVar('TARGET_OS', True), ''][d.getVar('TARGET_OS', True) == ('' or 'custom')]}" | ||
119 | TARGET_PREFIX = "${TARGET_SYS}-" | ||
120 | TARGET_CC_ARCH = "${TUNE_CCARGS}" | ||
121 | TARGET_LD_ARCH = "${TUNE_LDARGS}" | ||
122 | TARGET_AS_ARCH = "${TUNE_ASARGS}" | ||
123 | |||
124 | SDK_ARCH = "${BUILD_ARCH}" | ||
125 | SDK_OS = "${BUILD_OS}" | ||
126 | SDK_VENDOR = "-oesdk" | ||
127 | SDK_SYS = "${SDK_ARCH}${SDK_VENDOR}${@['-' + d.getVar('SDK_OS', True), ''][d.getVar('SDK_OS', True) == ('' or 'custom')]}" | ||
128 | SDK_PREFIX = "${SDK_SYS}-" | ||
129 | SDK_CC_ARCH = "${BUILD_CC_ARCH}" | ||
130 | SDKPKGSUFFIX = "nativesdk" | ||
131 | SDK_PACKAGE_ARCHS = "all any noarch ${SDK_ARCH}-${SDKPKGSUFFIX}" | ||
132 | SDK_LD_ARCH = "${BUILD_LD_ARCH}" | ||
133 | SDK_AS_ARCH = "${BUILD_AS_ARCH}" | ||
134 | |||
135 | PACKAGE_ARCH = "${TUNE_PKGARCH}" | ||
136 | MACHINE_ARCH = "${@[d.getVar('TUNE_PKGARCH', True), d.getVar('MACHINE', True)][bool(d.getVar('MACHINE', True))].replace('-', '_')}" | ||
137 | PACKAGE_EXTRA_ARCHS ??= "${PACKAGE_EXTRA_ARCHS_tune-${DEFAULTTUNE}}" | ||
138 | PACKAGE_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 | ||
141 | PACKAGE_ARCHS[vardepsexclude] = "MACHINE_ARCH" | ||
142 | |||
143 | MULTIMACH_TARGET_SYS = "${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}" | ||
144 | MULTIMACH_HOST_SYS = "${PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}" | ||
145 | |||
146 | # select proper CPU to get binary locales generated | ||
147 | QEMU_OPTIONS = "" | ||
148 | QEMU_OPTIONS_iwmmxt = "-cpu pxa270-c5" | ||
149 | QEMU_OPTIONS_armv6 = "-cpu arm1136" | ||
150 | QEMU_OPTIONS_armv7a = "-cpu cortex-a8" | ||
151 | QEMU_OPTIONS_e500v2 = "-cpu e500v2" | ||
152 | QEMU_OPTIONS_e500mc = "-cpu e500mc" | ||
153 | QEMU_OPTIONS_e5500 = "-cpu e5500" | ||
154 | QEMU_OPTIONS_e5500-64b = "-cpu e5500" | ||
155 | QEMU_OPTIONS_e6500 = "-cpu e6500" | ||
156 | QEMU_OPTIONS_e6500-64b = "-cpu e6500" | ||
157 | |||
158 | ################################################################## | ||
159 | # Date/time variables. | ||
160 | ################################################################## | ||
161 | |||
162 | DATE := "${@time.strftime('%Y%m%d',time.gmtime())}" | ||
163 | TIME := "${@time.strftime('%H%M%S',time.gmtime())}" | ||
164 | DATETIME = "${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 | ||
172 | ASSUME_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 | |||
190 | PN = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[0] or 'defaultpkgname'}" | ||
191 | PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[1] or '1.0'}" | ||
192 | PR = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[2] or 'r0'}" | ||
193 | PRINC ?= "0" | ||
194 | PF = "${PN}-${EXTENDPE}${PV}-${PR}" | ||
195 | EXTENDPE = "${@['','${PE\x7d_'][int(d.getVar('PE',1) or 0) > 0]}" | ||
196 | P = "${PN}-${PV}" | ||
197 | |||
198 | EXTENDPRAUTO = "${@['.${PRAUTO\x7d',''][d.getVar('PRAUTO',1) is None]}" | ||
199 | PRAUTOINX = "${PF}" | ||
200 | |||
201 | PKGV ?= "${PV}" | ||
202 | PKGR ?= "${PR}${EXTENDPRAUTO}" | ||
203 | PKGE ?= "${@['','${PE\x7d'][int(d.getVar('PE',1) or 0) > 0]}" | ||
204 | EXTENDPKGEVER = "${@['','${PKGE\x7d:'][d.getVar('PKGE',1).strip() != '']}" | ||
205 | EXTENDPKGV ?= "${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 | ||
210 | SPECIAL_PKGSUFFIX = "-native -cross -initial -intermediate -crosssdk -cross-canadian" | ||
211 | BPN = "${@base_prune_suffix(d.getVar('PN', True), d.getVar('SPECIAL_PKGSUFFIX', True).split(), d)}" | ||
212 | BP = "${BPN}-${PV}" | ||
213 | |||
214 | # Package info. | ||
215 | |||
216 | SECTION = "base" | ||
217 | PRIORITY = "optional" | ||
218 | SUMMARY ?= "${PN} version ${PV}-${PR}" | ||
219 | DESCRIPTION ?= "${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 | |||
227 | SUMMARY_${PN}-dbg ?= "${SUMMARY} - Debugging files" | ||
228 | DESCRIPTION_${PN}-dbg ?= "${DESCRIPTION} \ | ||
229 | This package contains ELF symbols and related sources for debugging purposes." | ||
230 | |||
231 | SUMMARY_${PN}-dev ?= "${SUMMARY} - Development files" | ||
232 | DESCRIPTION_${PN}-dev ?= "${DESCRIPTION} \ | ||
233 | This package contains symbolic links, header files, and \ | ||
234 | related items necessary for software development." | ||
235 | |||
236 | SUMMARY_${PN}-staticdev ?= "${SUMMARY} - Development files (Static Libraries)" | ||
237 | DESCRIPTION_${PN}-staticdev?= "${DESCRIPTION} \ | ||
238 | This package contains static libraries for software development." | ||
239 | |||
240 | SUMMARY_${PN}-doc ?= "${SUMMARY} - Documentation files" | ||
241 | DESCRIPTION_${PN}-doc ?= "${DESCRIPTION} \ | ||
242 | This package contains documentation." | ||
243 | |||
244 | LICENSE = "INVALID" | ||
245 | MAINTAINER = "OE-Core Developers <openembedded-core@lists.openembedded.org>" | ||
246 | HOMEPAGE = "" | ||
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. | ||
252 | DEPCHAIN_PRE = "" | ||
253 | DEPCHAIN_POST = "-dev -dbg" | ||
254 | |||
255 | DEPENDS = "" | ||
256 | RDEPENDS = "" | ||
257 | PROVIDES = "" | ||
258 | PROVIDES_prepend = "${PN} " | ||
259 | RPROVIDES = "" | ||
260 | |||
261 | MULTI_PROVIDER_WHITELIST = "virtual/libintl virtual/libintl-native virtual/nativesdk-libintl virtual/xserver virtual/update-alternatives-native virtual/update-alternatives" | ||
262 | |||
263 | SOLIBS = ".so.*" | ||
264 | SOLIBS_darwin = ".dylib" | ||
265 | |||
266 | SOLIBSDEV = ".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. | ||
270 | SOLIBSDEV_darwin = ".dylibbroken" | ||
271 | |||
272 | PACKAGE_BEFORE_PN ?= "" | ||
273 | PACKAGES = "${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}" | ||
274 | PACKAGES_DYNAMIC = "^${PN}-locale-.*" | ||
275 | FILES = "" | ||
276 | |||
277 | FILES_${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 | |||
287 | FILES_${PN}-bin = "${bindir}/* ${sbindir}/*" | ||
288 | |||
289 | FILES_${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \ | ||
290 | ${datadir}/gnome/help" | ||
291 | SECTION_${PN}-doc = "doc" | ||
292 | |||
293 | FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}" | ||
294 | FILES_${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" | ||
298 | SECTION_${PN}-dev = "devel" | ||
299 | ALLOW_EMPTY_${PN}-dev = "1" | ||
300 | RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPKGV})" | ||
301 | |||
302 | FILES_${PN}-staticdev = "${libdir}/*.a ${base_libdir}/*.a ${libdir}/${BPN}/*.a" | ||
303 | SECTION_${PN}-staticdev = "devel" | ||
304 | RDEPENDS_${PN}-staticdev = "${PN}-dev (= ${EXTENDPKGV})" | ||
305 | |||
306 | DOTDEBUG-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 | |||
310 | DEBUGFILEDIRECTORY-dbg = "/usr/lib/debug /usr/src/debug" | ||
311 | |||
312 | FILES_${PN}-dbg = "${@d.getVar(['DOTDEBUG-dbg', 'DEBUGFILEDIRECTORY-dbg'][d.getVar('PACKAGE_DEBUG_SPLIT_STYLE', True) == 'debug-file-directory'], True)}" | ||
313 | |||
314 | SECTION_${PN}-dbg = "devel" | ||
315 | ALLOW_EMPTY_${PN}-dbg = "1" | ||
316 | |||
317 | FILES_${PN}-locale = "${datadir}/locale" | ||
318 | |||
319 | # File manifest | ||
320 | |||
321 | FILE_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 | |||
329 | TMPDIR ?= "${TOPDIR}/tmp" | ||
330 | CACHE = "${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 | ||
332 | PERSISTENT_DIR = "${TOPDIR}/cache" | ||
333 | LOG_DIR = "${TMPDIR}/log" | ||
334 | CO_DIR = "${DL_DIR}" | ||
335 | CVSDIR = "${CO_DIR}/cvs" | ||
336 | SVNDIR = "${CO_DIR}/svn" | ||
337 | GITDIR = "${CO_DIR}/git2" | ||
338 | BZRDIR = "${CO_DIR}/bzr" | ||
339 | HGDIR = "${CO_DIR}/hg" | ||
340 | |||
341 | STAMPS_DIR ?= "${TMPDIR}/stamps" | ||
342 | STAMP = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" | ||
343 | STAMPCLEAN = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/*-*" | ||
344 | BASE_WORKDIR ?= "${TMPDIR}/work" | ||
345 | WORKDIR = "${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" | ||
346 | T = "${WORKDIR}/temp" | ||
347 | D = "${WORKDIR}/image" | ||
348 | S = "${WORKDIR}/${BP}" | ||
349 | B = "${S}" | ||
350 | |||
351 | STAGING_DIR = "${TMPDIR}/sysroots" | ||
352 | |||
353 | STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}" | ||
354 | STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}" | ||
355 | STAGING_BINDIR_CROSS = "${STAGING_BINDIR}/crossscripts" | ||
356 | STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}" | ||
357 | STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}" | ||
358 | STAGING_LIBEXECDIR_NATIVE = "${STAGING_DIR_NATIVE}${libexecdir_native}" | ||
359 | STAGING_BASE_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${base_libdir_native}" | ||
360 | STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}" | ||
361 | STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${sysconfdir_native}" | ||
362 | STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${datadir_native}" | ||
363 | |||
364 | STAGING_DIR_HOST = "${STAGING_DIR}/${MACHINE}" | ||
365 | STAGING_BINDIR = "${STAGING_DIR_HOST}${bindir}" | ||
366 | STAGING_LIBDIR = "${STAGING_DIR_HOST}${libdir}" | ||
367 | STAGING_LIBEXECDIR = "${STAGING_DIR_HOST}${libexecdir}" | ||
368 | STAGING_BASELIBDIR = "${STAGING_DIR_HOST}${base_libdir}" | ||
369 | STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}" | ||
370 | STAGING_DATADIR = "${STAGING_DIR_HOST}${datadir}" | ||
371 | STAGING_EXECPREFIXDIR = "${STAGING_DIR_HOST}${exec_prefix}" | ||
372 | STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader" | ||
373 | STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware" | ||
374 | |||
375 | STAGING_DIR_TARGET = "${STAGING_DIR}/${MACHINE}" | ||
376 | STAGING_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. | ||
380 | DEPLOY_DIR ?= "${TMPDIR}/deploy" | ||
381 | DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar" | ||
382 | DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk" | ||
383 | DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" | ||
384 | DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" | ||
385 | DEPLOY_DIR_IMAGE ?= "${DEPLOY_DIR}/images/${MACHINE}" | ||
386 | DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools" | ||
387 | |||
388 | PKGDATA_DIR = "${STAGING_DIR_HOST}/pkgdata" | ||
389 | |||
390 | ################################################################## | ||
391 | # SDK variables. | ||
392 | ################################################################## | ||
393 | |||
394 | SDK_NAME_PREFIX ?= "oecore" | ||
395 | SDK_NAME = "${SDK_NAME_PREFIX}-${SDK_ARCH}-${TUNE_PKGARCH}" | ||
396 | SDKPATH = "/usr/local/${SDK_NAME_PREFIX}-${SDK_ARCH}" | ||
397 | SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}" | ||
398 | |||
399 | ################################################################## | ||
400 | # Kernel info. | ||
401 | ################################################################## | ||
402 | |||
403 | OLDEST_KERNEL = "2.6.16" | ||
404 | STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel" | ||
405 | |||
406 | ################################################################## | ||
407 | # Specific image creation and rootfs population info. | ||
408 | ################################################################## | ||
409 | |||
410 | IMAGE_ROOTFS = "${WORKDIR}/rootfs" | ||
411 | IMAGE_BASENAME = "${PN}" | ||
412 | IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}" | ||
413 | IMAGE_NAME[vardepsexclude] += "DATETIME" | ||
414 | IMAGE_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. | ||
418 | IMAGE_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 | ||
423 | IMAGE_ROOTFS_EXTRA_SPACE ?= "0" | ||
424 | |||
425 | EXTRA_IMAGEDEPENDS = "" | ||
426 | |||
427 | ################################################################## | ||
428 | # Toolchain info. | ||
429 | ################################################################## | ||
430 | |||
431 | PATH_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}:" | ||
432 | export PATH | ||
433 | |||
434 | ################################################################## | ||
435 | # Build utility info. | ||
436 | ################################################################## | ||
437 | |||
438 | CCACHE ??= "" | ||
439 | # Disable ccache explicitly if CCACHE is null since gcc may be a symlink | ||
440 | # of ccache some distributions (e.g., Fedora 17). | ||
441 | export 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. | ||
445 | export CCACHE_DIR ??= "${@os.getenv('HOME')}" | ||
446 | |||
447 | TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TARGET}" | ||
448 | |||
449 | export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" | ||
450 | export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" | ||
451 | export FC = "${CCACHE}${HOST_PREFIX}gfortran ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" | ||
452 | export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS} ${HOST_CC_ARCH}" | ||
453 | export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}" | ||
454 | export CCLD = "${CC}" | ||
455 | export AR = "${HOST_PREFIX}ar" | ||
456 | export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}" | ||
457 | export RANLIB = "${HOST_PREFIX}ranlib" | ||
458 | export STRIP = "${HOST_PREFIX}strip" | ||
459 | export OBJCOPY = "${HOST_PREFIX}objcopy" | ||
460 | export OBJDUMP = "${HOST_PREFIX}objdump" | ||
461 | export STRINGS = "${HOST_PREFIX}strings" | ||
462 | export NM = "${HOST_PREFIX}nm" | ||
463 | PYTHON = "${@sys.executable}" | ||
464 | |||
465 | export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}" | ||
466 | export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}" | ||
467 | export BUILD_FC = "${CCACHE}${BUILD_PREFIX}gfortran ${BUILD_CC_ARCH}" | ||
468 | export BUILD_CPP = "${BUILD_PREFIX}cpp ${BUILD_CC_ARCH}" | ||
469 | export BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}" | ||
470 | export BUILD_CCLD = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}" | ||
471 | export BUILD_AR = "${BUILD_PREFIX}ar" | ||
472 | export BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}" | ||
473 | export BUILD_RANLIB = "${BUILD_PREFIX}ranlib" | ||
474 | export BUILD_STRIP = "${BUILD_PREFIX}strip" | ||
475 | export BUILD_NM = "${BUILD_PREFIX}nm" | ||
476 | |||
477 | export MAKE = "make" | ||
478 | EXTRA_OEMAKE = "-e MAKEFLAGS=" | ||
479 | EXTRA_OECONF = "" | ||
480 | export LC_ALL = "C" | ||
481 | |||
482 | ################################################################## | ||
483 | # Patch handling. | ||
484 | ################################################################## | ||
485 | PATCHTOOL = 'quilt' | ||
486 | PATCHRESOLVE = 'user' | ||
487 | |||
488 | ################################################################## | ||
489 | # Build flags and options. | ||
490 | ################################################################## | ||
491 | |||
492 | export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}" | ||
493 | BUILDSDK_CPPFLAGS = "-isystem${STAGING_INCDIR}" | ||
494 | export CPPFLAGS = "${TARGET_CPPFLAGS}" | ||
495 | export TARGET_CPPFLAGS = "" | ||
496 | #export TARGET_CPPFLAGS = "-isystem${STAGING_DIR_TARGET}${includedir}" | ||
497 | |||
498 | export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}" | ||
499 | BUILDSDK_CFLAGS = "${BUILDSDK_CPPFLAGS} ${BUILD_OPTIMIZATION}" | ||
500 | export CFLAGS = "${TARGET_CFLAGS}" | ||
501 | export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}" | ||
502 | |||
503 | export BUILD_CXXFLAGS = "${BUILD_CFLAGS}" | ||
504 | export CXXFLAGS = "${TARGET_CXXFLAGS}" | ||
505 | export TARGET_CXXFLAGS = "${TARGET_CFLAGS}" | ||
506 | |||
507 | export 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 | |||
515 | BUILDSDK_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 | |||
522 | LINKER_HASH_STYLE ??= "gnu" | ||
523 | # mips does not support GNU hash style therefore we override | ||
524 | LINKER_HASH_STYLE_mips = "sysv" | ||
525 | LINKER_HASH_STYLE_mipsel = "sysv" | ||
526 | LINKER_HASH_STYLE_mips64 = "sysv" | ||
527 | LINKER_HASH_STYLE_mips64el = "sysv" | ||
528 | TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_STYLE', True) != 'gnu']}" | ||
529 | |||
530 | export LDFLAGS = "${TARGET_LDFLAGS}" | ||
531 | export 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 ? | ||
537 | ALLOWED_FLAGS = "-O -mcpu -march -pipe" | ||
538 | |||
539 | # Pass parallel make options to the compile task | ||
540 | EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} " | ||
541 | PARALLEL_MAKEINST ??= "${PARALLEL_MAKE}" | ||
542 | # Pass parallel make options to the install task | ||
543 | EXTRA_OEMAKE_prepend_task-install = "${PARALLEL_MAKEINST} " | ||
544 | |||
545 | ################################################################## | ||
546 | # Optimization flags. | ||
547 | ################################################################## | ||
548 | DEBUG_FLAGS ?= "-g -feliminate-unused-debug-types" | ||
549 | # Disabled until the option works properly -feliminate-dwarf2-dups | ||
550 | FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}" | ||
551 | DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe" | ||
552 | SELECTED_OPTIMIZATION = "${@d.getVar(['FULL_OPTIMIZATION', 'DEBUG_OPTIMIZATION'][d.getVar('DEBUG_BUILD', True) == '1'], True)}" | ||
553 | SELECTED_OPTIMIZATION[vardeps] += "FULL_OPTIMIZATION DEBUG_OPTIMIZATION" | ||
554 | BUILD_OPTIMIZATION = "-O2 -pipe" | ||
555 | |||
556 | ################################################################## | ||
557 | # Download locations and utilities. | ||
558 | ################################################################## | ||
559 | |||
560 | APACHE_MIRROR = "http://www.apache.org/dist" | ||
561 | DEBIAN_MIRROR = "ftp://ftp.debian.org/debian/pool" | ||
562 | GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles" | ||
563 | GNOME_GIT = "git://git.gnome.org" | ||
564 | GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources" | ||
565 | GNU_MIRROR = "ftp://ftp.gnu.org/gnu" | ||
566 | GPE_MIRROR = "http://gpe.linuxtogo.org/download/source" | ||
567 | KERNELORG_MIRROR = "http://kernel.org/pub" | ||
568 | SOURCEFORGE_MIRROR = "http://downloads.sourceforge.net" | ||
569 | XLIBS_MIRROR = "http://xlibs.freedesktop.org/release" | ||
570 | XORG_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 | |||
576 | FETCHCMD_svn = "/usr/bin/env svn --non-interactive --trust-server-cert" | ||
577 | FETCHCMD_cvs = "/usr/bin/env cvs" | ||
578 | FETCHCMD_wget = "/usr/bin/env wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate" | ||
579 | FETCHCMD_bzr = "/usr/bin/env bzr" | ||
580 | FETCHCMD_hg = "/usr/bin/env hg" | ||
581 | |||
582 | SRCDATE = "${DATE}" | ||
583 | SRCREV ??= "INVALID" | ||
584 | AUTOREV = "${@bb.fetch2.get_autorev(d)}" | ||
585 | SRCPV = "${@bb.fetch2.get_srcrev(d)}" | ||
586 | SRCPV[vardepvalue] = "${SRCPV}" | ||
587 | |||
588 | SRC_URI = "" | ||
589 | |||
590 | # Use pseudo as the fakeroot implementation | ||
591 | PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/" | ||
592 | PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}" | ||
593 | export 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 | ||
597 | FAKEROOTBASEENV = "PSEUDO_BINDIR=${STAGING_BINDIR_NATIVE} PSEUDO_LIBDIR=${STAGING_BINDIR_NATIVE}/../lib/pseudo/lib PSEUDO_PREFIX=${STAGING_BINDIR_NATIVE}/../../ PSEUDO_DISABLED=1" | ||
598 | FAKEROOTCMD = "${STAGING_BINDIR_NATIVE}/pseudo" | ||
599 | FAKEROOTENV = "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0" | ||
600 | FAKEROOTNOENV = "PSEUDO_UNLOAD=1" | ||
601 | FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}" | ||
602 | PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native" | ||
603 | |||
604 | ################################################################## | ||
605 | # Miscellaneous utilities. | ||
606 | ################################################################## | ||
607 | |||
608 | MKTEMPDIRCMD = "mktemp -d -q ${TMPBASE}" | ||
609 | MKTEMPCMD = "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 | |||
615 | export PATCH_GET="0" | ||
616 | |||
617 | ################################################################## | ||
618 | # Not sure about the rest of this yet. | ||
619 | ################################################################## | ||
620 | |||
621 | # Pre-build configuration output | ||
622 | BUILDCFG_HEADER = "Build Configuration:" | ||
623 | BUILDCFG_VARS = "BB_VERSION BUILD_SYS NATIVELSBSTRING TARGET_SYS MACHINE DISTRO DISTRO_VERSION TUNE_FEATURES TARGET_FPU" | ||
624 | BUILDCFG_VARS[type] = "list" | ||
625 | BUILDCFG_NEEDEDVARS = "TARGET_ARCH TARGET_OS" | ||
626 | BUILDCFG_NEEDEDVARS[type] = "list" | ||
627 | |||
628 | # Other | ||
629 | |||
630 | export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${libdir}/pkgconfig" | ||
631 | export PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig" | ||
632 | export PKG_CONFIG_LIBDIR = "${PKG_CONFIG_DIR}" | ||
633 | export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}" | ||
634 | export PKG_CONFIG_DISABLE_UNINSTALLED = "yes" | ||
635 | |||
636 | # library package naming | ||
637 | AUTO_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. | ||
645 | DISTRO ??= "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. | ||
660 | OVERRIDES = "${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable" | ||
661 | OVERRIDES[vardepsexclude] = "MACHINEOVERRIDES" | ||
662 | CLASSOVERRIDE ?= "class-target" | ||
663 | DISTROOVERRIDES ?= "${@d.getVar('DISTRO', True) or ''}" | ||
664 | MACHINEOVERRIDES ?= "${MACHINE}" | ||
665 | MACHINEOVERRIDES[vardepsexclude] = "MACHINE" | ||
666 | |||
667 | FILESOVERRIDES = "${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}" | ||
668 | |||
669 | ################################################################## | ||
670 | # Include the rest of the config files. | ||
671 | ################################################################## | ||
672 | |||
673 | require conf/abi_version.conf | ||
674 | include conf/site.conf | ||
675 | include conf/auto.conf | ||
676 | include conf/local.conf | ||
677 | include conf/build/${BUILD_SYS}.conf | ||
678 | include conf/target/${TARGET_SYS}.conf | ||
679 | include conf/machine/${MACHINE}.conf | ||
680 | include conf/machine-sdk/${SDKMACHINE}.conf | ||
681 | include conf/distro/${DISTRO}.conf | ||
682 | include conf/distro/defaultsetup.conf | ||
683 | include conf/documentation.conf | ||
684 | include conf/licenses.conf | ||
685 | require conf/sanity.conf | ||
686 | |||
687 | ################################################################## | ||
688 | # Weak variables (usually to retain backwards compatibility) | ||
689 | ################################################################## | ||
690 | |||
691 | DL_DIR ?= "${TOPDIR}/downloads" | ||
692 | SSTATE_DIR ?= "${TOPDIR}/sstate-cache" | ||
693 | IMAGE_FSTYPES ?= "tar.gz" | ||
694 | INITRAMFS_FSTYPES ?= "cpio.gz" | ||
695 | DEFAULT_TASK_PROVIDER ?= "packagegroup-base" | ||
696 | MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}" | ||
697 | IMAGE_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 | ||
701 | CACHE := "${CACHE}" | ||
702 | |||
703 | ################################################################## | ||
704 | # Magic Cookie for SANITY CHECK | ||
705 | ################################################################## | ||
706 | OES_BITBAKE_CONF = "1" | ||
707 | |||
708 | ################################################################## | ||
709 | # Machine properties and packagegroup-base stuff | ||
710 | ################################################################## | ||
711 | |||
712 | MACHINE_FEATURES ?= "" | ||
713 | DISTRO_FEATURES ?= "" | ||
714 | |||
715 | DISTRO_EXTRA_RDEPENDS ?= "" | ||
716 | DISTRO_EXTRA_RRECOMMENDS ?= "" | ||
717 | MACHINE_EXTRA_RDEPENDS ?= "" | ||
718 | MACHINE_EXTRA_RRECOMMENDS ?= "" | ||
719 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= "" | ||
720 | MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= "" | ||
721 | |||
722 | EXTRA_IMAGE_FEATURES ??= "" | ||
723 | IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}" | ||
724 | |||
725 | DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit" | ||
726 | MACHINE_FEATURES_BACKFILL = "rtc" | ||
727 | |||
728 | COMBINED_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)}" | ||
739 | COMBINED_FEATURES[vardeps] += "DISTRO_FEATURES MACHINE_FEATURES" | ||
740 | |||
741 | SERIAL_CONSOLE ??= "" | ||
742 | SERIAL_CONSOLES ??= "${@d.getVar('SERIAL_CONSOLE', True).replace(' ', ';')}" | ||
743 | |||
744 | NO_RECOMMENDATIONS ?= "" | ||
745 | BAD_RECOMMENDATIONS ?= "" | ||
746 | |||
747 | # Make sure MACHINE isn't exported | ||
748 | # (breaks binutils at least) | ||
749 | MACHINE[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) | ||
754 | TARGET_ARCH[unexport] = "1" | ||
755 | |||
756 | # Make sure DISTRO isn't exported | ||
757 | # (breaks sysvinit at least) | ||
758 | DISTRO[unexport] = "1" | ||
759 | |||
760 | # Used by canadian-cross to handle string conversions on TARGET_ARCH where needed | ||
761 | TRANSLATED_TARGET_ARCH ??= "${@d.getVar('TARGET_ARCH', True).replace("_", "-")}" | ||
762 | |||
763 | # Complete output from bitbake | ||
764 | BB_CONSOLELOG ?= "${LOG_DIR}/cooker/${MACHINE}/${DATETIME}.log" | ||
765 | |||
766 | # Setup our default hash policy | ||
767 | BB_SIGNATURE_HANDLER ?= "OEBasicHash" | ||
768 | BB_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" | ||
774 | BB_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" | ||
777 | BB_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 | |||
783 | MLPREFIX ??= "" | ||
784 | MULTILIB_VARIANTS ??= "" | ||