diff options
Diffstat (limited to 'meta/conf/bitbake.conf')
-rw-r--r-- | meta/conf/bitbake.conf | 797 |
1 files changed, 797 insertions, 0 deletions
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf new file mode 100644 index 0000000000..47d2171775 --- /dev/null +++ b/meta/conf/bitbake.conf | |||
@@ -0,0 +1,797 @@ | |||
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 | |||
156 | ################################################################## | ||
157 | # Date/time variables. | ||
158 | ################################################################## | ||
159 | |||
160 | DATE := "${@time.strftime('%Y%m%d',time.gmtime())}" | ||
161 | TIME := "${@time.strftime('%H%M%S',time.gmtime())}" | ||
162 | DATETIME = "${DATE}${TIME}" | ||
163 | |||
164 | ################################################################## | ||
165 | # Openembedded Software Prerequisites. | ||
166 | ################################################################## | ||
167 | |||
168 | # python-native should be here but python relies on building | ||
169 | # its own in staging | ||
170 | ASSUME_PROVIDED = "\ | ||
171 | bzip2-native \ | ||
172 | chrpath-native \ | ||
173 | git-native \ | ||
174 | grep-native \ | ||
175 | diffstat-native \ | ||
176 | patch-native \ | ||
177 | perl-native-runtime \ | ||
178 | python-native-runtime \ | ||
179 | tar-native \ | ||
180 | virtual/libintl-native \ | ||
181 | " | ||
182 | # gzip-native should be listed above? | ||
183 | |||
184 | ################################################################## | ||
185 | # Package default variables. | ||
186 | ################################################################## | ||
187 | |||
188 | PN = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[0] or 'defaultpkgname'}" | ||
189 | PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[1] or '1.0'}" | ||
190 | PR = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[2] or 'r0'}" | ||
191 | PRINC ?= "0" | ||
192 | PF = "${PN}-${EXTENDPE}${PV}-${PR}" | ||
193 | EXTENDPE = "${@['','${PE\x7d_'][int(d.getVar('PE',1) or 0) > 0]}" | ||
194 | P = "${PN}-${PV}" | ||
195 | |||
196 | EXTENDPRAUTO = "${@['.${PRAUTO\x7d',''][d.getVar('PRAUTO',1) is None]}" | ||
197 | PRAUTOINX = "${PF}" | ||
198 | |||
199 | PKGV ?= "${PV}" | ||
200 | PKGR ?= "${PR}${EXTENDPRAUTO}" | ||
201 | PKGE ?= "${@['','${PE\x7d'][int(d.getVar('PE',1) or 0) > 0]}" | ||
202 | EXTENDPKGEVER = "${@['','${PKGE\x7d:'][d.getVar('PKGE',1).strip() != '']}" | ||
203 | EXTENDPKGV ?= "${EXTENDPKGEVER}${PKGV}-${PKGR}" | ||
204 | |||
205 | # Base package name | ||
206 | # Automatically derives "foo" from "foo-native", "foo-cross" or "foo-initial" | ||
207 | # otherwise it is the same as PN and P | ||
208 | SPECIAL_PKGSUFFIX = "-native -cross -initial -intermediate -crosssdk -cross-canadian" | ||
209 | BPN = "${@base_prune_suffix(d.getVar('PN', True), d.getVar('SPECIAL_PKGSUFFIX', True).split(), d)}" | ||
210 | BP = "${BPN}-${PV}" | ||
211 | |||
212 | # Package info. | ||
213 | |||
214 | SECTION = "base" | ||
215 | PRIORITY = "optional" | ||
216 | SUMMARY ?= "${PN} version ${PV}-${PR}" | ||
217 | DESCRIPTION ?= "${SUMMARY}" | ||
218 | |||
219 | # The following two are commented out because they result in a recursive | ||
220 | # definition of the variable in some corner cases. These are left in | ||
221 | # to illustrate the intended behavior. | ||
222 | #SUMMARY_${PN} ?= "${SUMMARY}" | ||
223 | #DESCRIPTION_${PN} ?= "${DESCRIPTION}" | ||
224 | |||
225 | SUMMARY_${PN}-dbg ?= "${SUMMARY} - Debugging files" | ||
226 | DESCRIPTION_${PN}-dbg ?= "${DESCRIPTION} \ | ||
227 | This package contains ELF symbols and related sources for debugging purposes." | ||
228 | |||
229 | SUMMARY_${PN}-dev ?= "${SUMMARY} - Development files" | ||
230 | DESCRIPTION_${PN}-dev ?= "${DESCRIPTION} \ | ||
231 | This package contains symbolic links, header files, and \ | ||
232 | related items necessary for software development." | ||
233 | |||
234 | SUMMARY_${PN}-staticdev ?= "${SUMMARY} - Development files (Static Libraries)" | ||
235 | DESCRIPTION_${PN}-staticdev?= "${DESCRIPTION} \ | ||
236 | This package contains static libraries for software development." | ||
237 | |||
238 | SUMMARY_${PN}-doc ?= "${SUMMARY} - Documentation files" | ||
239 | DESCRIPTION_${PN}-doc ?= "${DESCRIPTION} \ | ||
240 | This package contains documentation." | ||
241 | |||
242 | LICENSE = "INVALID" | ||
243 | MAINTAINER = "OE-Core Developers <openembedded-core@lists.openembedded.org>" | ||
244 | HOMEPAGE = "unknown" | ||
245 | |||
246 | # Package dependencies and provides. | ||
247 | |||
248 | # Ensure that -dev packages recommend the corresponding -dev packages of their | ||
249 | # deps, and the same for -dbg. | ||
250 | DEPCHAIN_PRE = "" | ||
251 | DEPCHAIN_POST = "-dev -dbg" | ||
252 | |||
253 | DEPENDS = "" | ||
254 | RDEPENDS = "" | ||
255 | PROVIDES = "" | ||
256 | PROVIDES_prepend = "${PN} " | ||
257 | RPROVIDES = "" | ||
258 | |||
259 | MULTI_PROVIDER_WHITELIST = "virtual/libintl virtual/libintl-native virtual/nativesdk-libintl virtual/xserver virtual/update-alternatives-native virtual/update-alternatives" | ||
260 | |||
261 | SOLIBS = ".so.*" | ||
262 | SOLIBS_darwin = ".dylib" | ||
263 | |||
264 | SOLIBSDEV = ".so" | ||
265 | # Due to the ordering of PACKAGES and the naming of the dev symlinks on darwin, | ||
266 | # we can't make the symlinks end up in the -dev packages easily at this point. This hack | ||
267 | # at least means builds aren't completely broken and symlinks don't take up much space. | ||
268 | SOLIBSDEV_darwin = ".dylibbroken" | ||
269 | |||
270 | PACKAGE_BEFORE_PN ?= "" | ||
271 | PACKAGES = "${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}" | ||
272 | PACKAGES_DYNAMIC = "^${PN}-locale-.*" | ||
273 | FILES = "" | ||
274 | |||
275 | FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \ | ||
276 | ${sysconfdir} ${sharedstatedir} ${localstatedir} \ | ||
277 | ${base_bindir}/* ${base_sbindir}/* \ | ||
278 | ${base_libdir}/*${SOLIBS} \ | ||
279 | ${base_prefix}/lib/udev/rules.d ${prefix}/lib/udev/rules.d \ | ||
280 | ${datadir}/${BPN} ${libdir}/${BPN}/* \ | ||
281 | ${datadir}/pixmaps ${datadir}/applications \ | ||
282 | ${datadir}/idl ${datadir}/omf ${datadir}/sounds \ | ||
283 | ${libdir}/bonobo/servers" | ||
284 | |||
285 | FILES_${PN}-bin = "${bindir}/* ${sbindir}/*" | ||
286 | |||
287 | FILES_${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \ | ||
288 | ${datadir}/gnome/help" | ||
289 | SECTION_${PN}-doc = "doc" | ||
290 | |||
291 | FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}" | ||
292 | FILES_${PN}-dev = "${includedir} ${FILES_SOLIBSDEV} ${libdir}/*.la \ | ||
293 | ${libdir}/*.o ${libdir}/pkgconfig ${datadir}/pkgconfig \ | ||
294 | ${datadir}/aclocal ${base_libdir}/*.o \ | ||
295 | ${libdir}/${BPN}/*.la ${base_libdir}/*.la" | ||
296 | SECTION_${PN}-dev = "devel" | ||
297 | ALLOW_EMPTY_${PN}-dev = "1" | ||
298 | RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPKGV})" | ||
299 | |||
300 | FILES_${PN}-staticdev = "${libdir}/*.a ${base_libdir}/*.a ${libdir}/${BPN}/*.a" | ||
301 | SECTION_${PN}-staticdev = "devel" | ||
302 | RDEPENDS_${PN}-staticdev = "${PN}-dev (= ${EXTENDPKGV})" | ||
303 | |||
304 | DOTDEBUG-dbg = "${bindir}/.debug ${sbindir}/.debug ${libexecdir}/.debug ${libdir}/.debug \ | ||
305 | ${base_bindir}/.debug ${base_sbindir}/.debug ${base_libdir}/.debug ${libdir}/${BPN}/.debug \ | ||
306 | ${libdir}/matchbox-panel/.debug /usr/src/debug" | ||
307 | |||
308 | DEBUGFILEDIRECTORY-dbg = "/usr/lib/debug /usr/src/debug" | ||
309 | |||
310 | FILES_${PN}-dbg = "${@d.getVar(['DOTDEBUG-dbg', 'DEBUGFILEDIRECTORY-dbg'][d.getVar('PACKAGE_DEBUG_SPLIT_STYLE', True) == 'debug-file-directory'], True)}" | ||
311 | |||
312 | SECTION_${PN}-dbg = "devel" | ||
313 | ALLOW_EMPTY_${PN}-dbg = "1" | ||
314 | |||
315 | FILES_${PN}-locale = "${datadir}/locale" | ||
316 | |||
317 | # File manifest | ||
318 | |||
319 | FILE_DIRNAME = "${@os.path.dirname(d.getVar('FILE'))}" | ||
320 | # FILESPATH is set in base.bbclass | ||
321 | #FILESPATH = "${FILE_DIRNAME}/${PF}:${FILE_DIRNAME}/${P}:${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/${BP}:${FILE_DIRNAME}/${BPN}:${FILE_DIRNAME}/files:${FILE_DIRNAME}" | ||
322 | |||
323 | ################################################################## | ||
324 | # General work and output directories for the build system. | ||
325 | ################################################################## | ||
326 | |||
327 | TMPDIR ?= "${TOPDIR}/tmp" | ||
328 | CACHE = "${TMPDIR}/cache${@['', '/' + str(d.getVar('MACHINE', True))][bool(d.getVar('MACHINE', True))]}${@['', '/' + str(d.getVar('SDKMACHINE', True))][bool(d.getVar('SDKMACHINE', True))]}" | ||
329 | # The persistent cache should be shared by all builds | ||
330 | PERSISTENT_DIR = "${TOPDIR}/cache" | ||
331 | LOG_DIR = "${TMPDIR}/log" | ||
332 | CO_DIR = "${DL_DIR}" | ||
333 | CVSDIR = "${CO_DIR}/cvs" | ||
334 | SVNDIR = "${CO_DIR}/svn" | ||
335 | GITDIR = "${CO_DIR}/git2" | ||
336 | BZRDIR = "${CO_DIR}/bzr" | ||
337 | HGDIR = "${CO_DIR}/hg" | ||
338 | |||
339 | STAMPS_DIR ?= "${TMPDIR}/stamps" | ||
340 | STAMP = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" | ||
341 | STAMPCLEAN = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/*-*" | ||
342 | BASE_WORKDIR ?= "${TMPDIR}/work" | ||
343 | WORKDIR = "${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" | ||
344 | T = "${WORKDIR}/temp" | ||
345 | D = "${WORKDIR}/image" | ||
346 | S = "${WORKDIR}/${BP}" | ||
347 | B = "${S}" | ||
348 | |||
349 | STAGING_DIR = "${TMPDIR}/sysroots" | ||
350 | |||
351 | STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}" | ||
352 | STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}" | ||
353 | STAGING_BINDIR_CROSS = "${STAGING_BINDIR}/crossscripts" | ||
354 | STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}" | ||
355 | STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}" | ||
356 | STAGING_LIBEXECDIR_NATIVE = "${STAGING_DIR_NATIVE}${libexecdir_native}" | ||
357 | STAGING_BASE_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${base_libdir_native}" | ||
358 | STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}" | ||
359 | STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${sysconfdir_native}" | ||
360 | STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${datadir_native}" | ||
361 | |||
362 | STAGING_DIR_HOST = "${STAGING_DIR}/${MACHINE}" | ||
363 | STAGING_BINDIR = "${STAGING_DIR_HOST}${bindir}" | ||
364 | STAGING_LIBDIR = "${STAGING_DIR_HOST}${libdir}" | ||
365 | STAGING_LIBEXECDIR = "${STAGING_DIR_HOST}${libexecdir}" | ||
366 | STAGING_BASELIBDIR = "${STAGING_DIR_HOST}${base_libdir}" | ||
367 | STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}" | ||
368 | STAGING_DATADIR = "${STAGING_DIR_HOST}${datadir}" | ||
369 | STAGING_EXECPREFIXDIR = "${STAGING_DIR_HOST}${exec_prefix}" | ||
370 | STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader" | ||
371 | STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware" | ||
372 | |||
373 | STAGING_DIR_TARGET = "${STAGING_DIR}/${MACHINE}" | ||
374 | STAGING_DIR_TCBOOTSTRAP = "${STAGING_DIR_TARGET}-tcbootstrap" | ||
375 | |||
376 | # Setting DEPLOY_DIR outside of TMPDIR is helpful, when you are using | ||
377 | # packaged staging and/or multimachine. | ||
378 | DEPLOY_DIR ?= "${TMPDIR}/deploy" | ||
379 | DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar" | ||
380 | DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk" | ||
381 | DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" | ||
382 | DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" | ||
383 | DEPLOY_DIR_IMAGE ?= "${DEPLOY_DIR}/images/${MACHINE}" | ||
384 | DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools" | ||
385 | |||
386 | PKGDATA_DIR = "${STAGING_DIR_HOST}/pkgdata" | ||
387 | |||
388 | ################################################################## | ||
389 | # SDK variables. | ||
390 | ################################################################## | ||
391 | |||
392 | SDK_NAME_PREFIX ?= "oecore" | ||
393 | SDK_NAME = "${SDK_NAME_PREFIX}-${SDK_ARCH}-${TUNE_PKGARCH}" | ||
394 | SDKPATH = "/usr/local/${SDK_NAME_PREFIX}-${SDK_ARCH}" | ||
395 | SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}" | ||
396 | |||
397 | ################################################################## | ||
398 | # Kernel info. | ||
399 | ################################################################## | ||
400 | |||
401 | OLDEST_KERNEL = "2.6.16" | ||
402 | STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel" | ||
403 | |||
404 | ################################################################## | ||
405 | # Specific image creation and rootfs population info. | ||
406 | ################################################################## | ||
407 | |||
408 | IMAGE_ROOTFS = "${WORKDIR}/rootfs" | ||
409 | IMAGE_BASENAME = "${PN}" | ||
410 | IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}" | ||
411 | IMAGE_NAME[vardepsexclude] += "DATETIME" | ||
412 | IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}" | ||
413 | |||
414 | # This option allows for a percentage overage of the actual image size rather than a | ||
415 | # fixed extra space, this is space needed for initial startup and basic operations. | ||
416 | IMAGE_OVERHEAD_FACTOR ?= "1.3" | ||
417 | # This option allows for adding additional space in K above and beyond what the | ||
418 | # IMAGE_OVERHEAD_FACTOR might add. This space is for additional packages, user data, ... | ||
419 | # To set a fixed size then overriding IMAGE_ROOTFS_SIZE with the max size one wants | ||
420 | # should do the trick | ||
421 | IMAGE_ROOTFS_EXTRA_SPACE ?= "0" | ||
422 | |||
423 | EXTRA_IMAGEDEPENDS = "" | ||
424 | |||
425 | ################################################################## | ||
426 | # Toolchain info. | ||
427 | ################################################################## | ||
428 | |||
429 | 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}:" | ||
430 | export PATH | ||
431 | |||
432 | ################################################################## | ||
433 | # Build utility info. | ||
434 | ################################################################## | ||
435 | |||
436 | CCACHE ??= "" | ||
437 | # Disable ccache explicitly if CCACHE is null since gcc may be a symlink | ||
438 | # of ccache some distributions (e.g., Fedora 17). | ||
439 | export CCACHE_DISABLE ??= "${@[0,1][d.getVar('CCACHE', True) == '']}" | ||
440 | # Assign CCACHE_DIR a default value to fix a bug of ccache 3.1.7, | ||
441 | # since it would always create CCACHE_DIR/.ccache even if | ||
442 | # CCACHE_DISABLE = 1. | ||
443 | export CCACHE_DIR ??= "${@os.getenv('HOME')}" | ||
444 | |||
445 | TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TARGET}" | ||
446 | |||
447 | export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" | ||
448 | export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" | ||
449 | export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" | ||
450 | export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS} ${HOST_CC_ARCH}" | ||
451 | export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}" | ||
452 | export CCLD = "${CC}" | ||
453 | export AR = "${HOST_PREFIX}ar" | ||
454 | export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}" | ||
455 | export RANLIB = "${HOST_PREFIX}ranlib" | ||
456 | export STRIP = "${HOST_PREFIX}strip" | ||
457 | export OBJCOPY = "${HOST_PREFIX}objcopy" | ||
458 | export OBJDUMP = "${HOST_PREFIX}objdump" | ||
459 | export STRINGS = "${HOST_PREFIX}strings" | ||
460 | export NM = "${HOST_PREFIX}nm" | ||
461 | PYTHON = "${@sys.executable}" | ||
462 | |||
463 | export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}" | ||
464 | export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}" | ||
465 | export BUILD_F77 = "${CCACHE}${BUILD_PREFIX}g77 ${BUILD_CC_ARCH}" | ||
466 | export BUILD_CPP = "${BUILD_PREFIX}cpp ${BUILD_CC_ARCH}" | ||
467 | export BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}" | ||
468 | export BUILD_CCLD = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}" | ||
469 | export BUILD_AR = "${BUILD_PREFIX}ar" | ||
470 | export BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}" | ||
471 | export BUILD_RANLIB = "${BUILD_PREFIX}ranlib" | ||
472 | export BUILD_STRIP = "${BUILD_PREFIX}strip" | ||
473 | export BUILD_NM = "${BUILD_PREFIX}nm" | ||
474 | |||
475 | export MAKE = "make" | ||
476 | EXTRA_OEMAKE = "-e MAKEFLAGS=" | ||
477 | EXTRA_OECONF = "" | ||
478 | export LC_ALL = "C" | ||
479 | |||
480 | ################################################################## | ||
481 | # Patch handling. | ||
482 | ################################################################## | ||
483 | PATCHTOOL = 'quilt' | ||
484 | PATCHRESOLVE = 'user' | ||
485 | |||
486 | ################################################################## | ||
487 | # Build flags and options. | ||
488 | ################################################################## | ||
489 | |||
490 | export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}" | ||
491 | BUILDSDK_CPPFLAGS = "-isystem${STAGING_INCDIR}" | ||
492 | export CPPFLAGS = "${TARGET_CPPFLAGS}" | ||
493 | export TARGET_CPPFLAGS = "" | ||
494 | #export TARGET_CPPFLAGS = "-isystem${STAGING_DIR_TARGET}${includedir}" | ||
495 | |||
496 | export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}" | ||
497 | BUILDSDK_CFLAGS = "${BUILDSDK_CPPFLAGS} ${BUILD_OPTIMIZATION}" | ||
498 | export CFLAGS = "${TARGET_CFLAGS}" | ||
499 | export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}" | ||
500 | |||
501 | export BUILD_CXXFLAGS = "${BUILD_CFLAGS} -fpermissive" | ||
502 | export CXXFLAGS = "${TARGET_CXXFLAGS}" | ||
503 | export TARGET_CXXFLAGS = "${TARGET_CFLAGS} -fpermissive" | ||
504 | |||
505 | export BUILD_LDFLAGS = "-L${STAGING_LIBDIR_NATIVE} \ | ||
506 | -L${STAGING_BASE_LIBDIR_NATIVE} \ | ||
507 | -Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} \ | ||
508 | -Wl,-rpath-link,${STAGING_BASE_LIBDIR_NATIVE} \ | ||
509 | -Wl,-rpath,${STAGING_LIBDIR_NATIVE} \ | ||
510 | -Wl,-rpath,${STAGING_BASE_LIBDIR_NATIVE} \ | ||
511 | -Wl,-O1" | ||
512 | |||
513 | BUILDSDK_LDFLAGS = "-L${STAGING_LIBDIR} \ | ||
514 | -Wl,-rpath-link,${STAGING_LIBDIR} \ | ||
515 | -Wl,-rpath,${libdir} -Wl,-O1 \ | ||
516 | -L${STAGING_DIR_HOST}${base_libdir} \ | ||
517 | -Wl,-rpath-link,${STAGING_DIR_HOST}${base_libdir} \ | ||
518 | -Wl,-rpath,${base_libdir} -Wl,-O1" | ||
519 | |||
520 | LINKER_HASH_STYLE ??= "gnu" | ||
521 | # mips does not support GNU hash style therefore we override | ||
522 | LINKER_HASH_STYLE_mips = "sysv" | ||
523 | LINKER_HASH_STYLE_mipsel = "sysv" | ||
524 | LINKER_HASH_STYLE_mips64 = "sysv" | ||
525 | LINKER_HASH_STYLE_mips64el = "sysv" | ||
526 | TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_STYLE', True) != 'gnu']}" | ||
527 | |||
528 | export LDFLAGS = "${TARGET_LDFLAGS}" | ||
529 | export TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE}" | ||
530 | #export TARGET_LDFLAGS = "-L${STAGING_DIR_TARGET}${libdir} \ | ||
531 | # -Wl,-rpath-link,${STAGING_DIR_TARGET}${libdir} \ | ||
532 | # -Wl,-O1" | ||
533 | |||
534 | # Which flags to leave by strip-flags() in bin/build/oebuild.sh ? | ||
535 | ALLOWED_FLAGS = "-O -mcpu -march -pipe" | ||
536 | |||
537 | # Pass parallel make options to the compile task | ||
538 | EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} " | ||
539 | PARALLEL_MAKEINST ??= "${PARALLEL_MAKE}" | ||
540 | # Pass parallel make options to the install task | ||
541 | EXTRA_OEMAKE_prepend_task-install = "${PARALLEL_MAKEINST} " | ||
542 | |||
543 | ################################################################## | ||
544 | # Optimization flags. | ||
545 | ################################################################## | ||
546 | DEBUG_FLAGS ?= "-g -feliminate-unused-debug-types" | ||
547 | # Disabled until the option works properly -feliminate-dwarf2-dups | ||
548 | FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}" | ||
549 | DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe" | ||
550 | SELECTED_OPTIMIZATION = "${@d.getVar(['FULL_OPTIMIZATION', 'DEBUG_OPTIMIZATION'][d.getVar('DEBUG_BUILD', True) == '1'], True)}" | ||
551 | SELECTED_OPTIMIZATION[vardeps] += "FULL_OPTIMIZATION DEBUG_OPTIMIZATION" | ||
552 | BUILD_OPTIMIZATION = "-O2 -pipe" | ||
553 | |||
554 | ################################################################## | ||
555 | # Bootstrap stuff. | ||
556 | ################################################################## | ||
557 | |||
558 | BOOTSTRAP_EXTRA_RDEPENDS = "" | ||
559 | BOOTSTRAP_EXTRA_RRECOMMENDS = "" | ||
560 | |||
561 | ################################################################## | ||
562 | # Download locations and utilities. | ||
563 | ################################################################## | ||
564 | |||
565 | ADOBE_MIRROR = "http://fpdownload.macromedia.com/get/flashplayer/current/" | ||
566 | APACHE_MIRROR = "http://www.apache.org/dist" | ||
567 | DEBIAN_MIRROR = "ftp://ftp.debian.org/debian/pool" | ||
568 | E_MIRROR = "http://download.enlightenment.org/releases" | ||
569 | E_SVN = "svn://svn.enlightenment.org/svn/e" | ||
570 | FREEBSD_MIRROR = "ftp://ftp.freebsd.org/pub/FreeBSD/" | ||
571 | FREEDESKTOP_CVS = "cvs://anoncvs:anoncvs@anoncvs.freedesktop.org/cvs" | ||
572 | FREESMARTPHONE_GIT = "git://git.freesmartphone.org" | ||
573 | GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles" | ||
574 | GNOME_GIT = "git://git.gnome.org" | ||
575 | GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources" | ||
576 | GNU_MIRROR = "ftp://ftp.gnu.org/gnu" | ||
577 | GPE_MIRROR = "http://gpe.linuxtogo.org/download/source" | ||
578 | GPE_EXTRA_SVN = "svn://projects.linuxtogo.org/svn/gpe/trunk/extra;module=${PN}" | ||
579 | GPE_SVN = "svn://projects.linuxtogo.org/svn/gpe/trunk/base;module=${PN}" | ||
580 | GPEPHONE_MIRROR = "http://gpephone.linuxtogo.org/download/gpephone" | ||
581 | GPEPHONE_SVN = "svn://projects.linuxtogo.org/svn/gpephone/trunk/source;module=${PN}" | ||
582 | HANDHELDS_CVS = "cvs://anoncvs:anoncvs@anoncvs.handhelds.org/cvs" | ||
583 | KERNELORG_MIRROR = "http://kernel.org/pub" | ||
584 | SOURCEFORGE_MIRROR = "http://downloads.sourceforge.net" | ||
585 | XLIBS_MIRROR = "http://xlibs.freedesktop.org/release" | ||
586 | XORG_MIRROR = "http://xorg.freedesktop.org/releases" | ||
587 | |||
588 | # You can use the mirror of your country to get faster downloads by putting | ||
589 | # export DEBIAN_MIRROR = "ftp://ftp.de.debian.org/debian/pool" | ||
590 | # into your local.conf | ||
591 | |||
592 | FETCHCMD_svn = "/usr/bin/env svn --non-interactive --trust-server-cert" | ||
593 | FETCHCMD_cvs = "/usr/bin/env cvs" | ||
594 | FETCHCMD_wget = "/usr/bin/env wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate" | ||
595 | FETCHCMD_bzr = "/usr/bin/env bzr" | ||
596 | FETCHCMD_hg = "/usr/bin/env hg" | ||
597 | |||
598 | SRCDATE = "${DATE}" | ||
599 | SRCREV ??= "INVALID" | ||
600 | AUTOREV = "${@bb.fetch2.get_autorev(d)}" | ||
601 | SRCPV = "${@bb.fetch2.get_srcrev(d)}" | ||
602 | SRCPV[vardepvalue] = "${SRCPV}" | ||
603 | |||
604 | SRC_URI = "" | ||
605 | |||
606 | # Use pseudo as the fakeroot implementation | ||
607 | PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/" | ||
608 | PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}" | ||
609 | export PSEUDO_DISABLED = "1" | ||
610 | #export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}" | ||
611 | #export PSEUDO_BINDIR = "${STAGING_DIR_NATIVE}${bindir_native}" | ||
612 | #export PSEUDO_LIBDIR = "${STAGING_DIR_NATIVE}$PSEUDOBINDIR/../lib/pseudo/lib | ||
613 | FAKEROOTBASEENV = "PSEUDO_BINDIR=${STAGING_BINDIR_NATIVE} PSEUDO_LIBDIR=${STAGING_BINDIR_NATIVE}/../lib/pseudo/lib PSEUDO_PREFIX=${STAGING_BINDIR_NATIVE}/../../ PSEUDO_DISABLED=1" | ||
614 | FAKEROOTCMD = "${STAGING_BINDIR_NATIVE}/pseudo" | ||
615 | FAKEROOTENV = "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0" | ||
616 | FAKEROOTNOENV = "PSEUDO_UNLOAD=1" | ||
617 | FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}" | ||
618 | PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native" | ||
619 | |||
620 | ################################################################## | ||
621 | # Miscellaneous utilities. | ||
622 | ################################################################## | ||
623 | |||
624 | MKTEMPDIRCMD = "mktemp -d -q ${TMPBASE}" | ||
625 | MKTEMPCMD = "mktemp -q ${TMPBASE}" | ||
626 | |||
627 | # GNU patch tries to be intellgent about checking out read-only files from | ||
628 | # a RCS, which freaks out those special folks with active Perforce clients | ||
629 | # the following makes patch ignore RCS: | ||
630 | |||
631 | export PATCH_GET="0" | ||
632 | |||
633 | ################################################################## | ||
634 | # Not sure about the rest of this yet. | ||
635 | ################################################################## | ||
636 | |||
637 | # Pre-build configuration output | ||
638 | BUILDCFG_HEADER = "Build Configuration:" | ||
639 | BUILDCFG_VARS = "BB_VERSION BUILD_SYS NATIVELSBSTRING TARGET_SYS MACHINE DISTRO DISTRO_VERSION TUNE_FEATURES TARGET_FPU" | ||
640 | BUILDCFG_VARS[type] = "list" | ||
641 | BUILDCFG_NEEDEDVARS = "TARGET_ARCH TARGET_OS" | ||
642 | BUILDCFG_NEEDEDVARS[type] = "list" | ||
643 | |||
644 | # Other | ||
645 | |||
646 | export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}/${libdir}/pkgconfig" | ||
647 | export PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig" | ||
648 | export PKG_CONFIG_LIBDIR = "${PKG_CONFIG_DIR}" | ||
649 | export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}" | ||
650 | export PKG_CONFIG_DISABLE_UNINSTALLED = "yes" | ||
651 | |||
652 | # library package naming | ||
653 | AUTO_LIBNAME_PKGS = "${PACKAGES}" | ||
654 | |||
655 | ### | ||
656 | ### Config file processing | ||
657 | ### | ||
658 | |||
659 | # Overrides are processed left to right, so the ones that are named later take precedence. | ||
660 | # You generally want them to go from least to most specific. | ||
661 | # | ||
662 | # This means that an envionment variable named '<foo>_arm' overrides an | ||
663 | # environment variable '<foo>' (when ${TARGET_ARCH} is arm). | ||
664 | # An environment variable '<foo>_qemuarm' overrides '<foo>' and overrides | ||
665 | # '<foo>_arm' when ${MACHINE} is 'qemuarm'. | ||
666 | # If you use combination ie '<foo>_qemuarm_arm', then '<foo>_qemuarm_arm' will override | ||
667 | # '<foo>_qemuarm' and then '<foo>' will be overriden with that value from '<foo>_qemuarm'. | ||
668 | # And finally '<foo>_forcevariable' overrides any standard variable, with the highest priority. | ||
669 | # | ||
670 | # This works for functions as well, they are really just environment variables. | ||
671 | # Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. | ||
672 | OVERRIDES = "${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable" | ||
673 | OVERRIDES[vardepsexclude] = "MACHINEOVERRIDES" | ||
674 | CLASSOVERRIDE ?= "class-target" | ||
675 | DISTROOVERRIDES ?= "${@d.getVar('DISTRO', True) or ''}" | ||
676 | MACHINEOVERRIDES ?= "${MACHINE}" | ||
677 | MACHINEOVERRIDES[vardepsexclude] = "MACHINE" | ||
678 | |||
679 | FILESOVERRIDES = "${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}" | ||
680 | |||
681 | CPU_FEATURES ?= "" | ||
682 | CPU_FEATURES_arm ?= "vfp" | ||
683 | |||
684 | ################################################################## | ||
685 | # Include the rest of the config files. | ||
686 | ################################################################## | ||
687 | |||
688 | require conf/abi_version.conf | ||
689 | include conf/site.conf | ||
690 | include conf/auto.conf | ||
691 | include conf/local.conf | ||
692 | include conf/build/${BUILD_SYS}.conf | ||
693 | include conf/target/${TARGET_SYS}.conf | ||
694 | include conf/machine/${MACHINE}.conf | ||
695 | include conf/machine-sdk/${SDKMACHINE}.conf | ||
696 | include conf/distro/${DISTRO}.conf | ||
697 | include conf/distro/defaultsetup.conf | ||
698 | include conf/documentation.conf | ||
699 | include conf/licenses.conf | ||
700 | require conf/sanity.conf | ||
701 | |||
702 | ################################################################## | ||
703 | # Weak variables (usually to retain backwards compatibility) | ||
704 | ################################################################## | ||
705 | |||
706 | DL_DIR ?= "${TOPDIR}/downloads" | ||
707 | SSTATE_DIR ?= "${TOPDIR}/sstate-cache" | ||
708 | IMAGE_FSTYPES ?= "tar.gz" | ||
709 | INITRAMFS_FSTYPES ?= "cpio.gz" | ||
710 | DEFAULT_TASK_PROVIDER ?= "packagegroup-base" | ||
711 | MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}" | ||
712 | IMAGE_ROOTFS_SIZE ?= "65536" | ||
713 | |||
714 | # Forcefully set CACHE now so future changes to things like | ||
715 | # MACHINE don't change the path to the cache | ||
716 | CACHE := "${CACHE}" | ||
717 | |||
718 | ################################################################## | ||
719 | # Magic Cookie for SANITY CHECK | ||
720 | ################################################################## | ||
721 | OES_BITBAKE_CONF = "1" | ||
722 | |||
723 | ################################################################## | ||
724 | # Machine properties and packagegroup-base stuff | ||
725 | ################################################################## | ||
726 | |||
727 | DISTRO_FEATURES ?= "" | ||
728 | |||
729 | DISTRO_EXTRA_RDEPENDS ?= "" | ||
730 | DISTRO_EXTRA_RRECOMMENDS ?= "" | ||
731 | MACHINE_EXTRA_RDEPENDS ?= "" | ||
732 | MACHINE_EXTRA_RRECOMMENDS ?= "" | ||
733 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= "" | ||
734 | MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= "" | ||
735 | |||
736 | EXTRA_IMAGE_FEATURES ??= "" | ||
737 | IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}" | ||
738 | |||
739 | DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit" | ||
740 | MACHINE_FEATURES_BACKFILL = "rtc" | ||
741 | |||
742 | COMBINED_FEATURES = "\ | ||
743 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "alsa", d)} \ | ||
744 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "bluetooth", d)} \ | ||
745 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "ext2", d)} \ | ||
746 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "vfat", d)} \ | ||
747 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "irda", d)} \ | ||
748 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pcmcia", d)} \ | ||
749 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pci", d)} \ | ||
750 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbgadget", d)} \ | ||
751 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbhost", d)} \ | ||
752 | ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "wifi", d)}" | ||
753 | COMBINED_FEATURES[vardeps] += "DISTRO_FEATURES MACHINE_FEATURES" | ||
754 | |||
755 | SERIAL_CONSOLE ??= "" | ||
756 | SERIAL_CONSOLES ??= "${@d.getVar('SERIAL_CONSOLE', True).replace(' ', ';')}" | ||
757 | |||
758 | NO_RECOMMENDATIONS ?= "" | ||
759 | BAD_RECOMMENDATIONS ?= "" | ||
760 | |||
761 | # Make sure MACHINE isn't exported | ||
762 | # (breaks binutils at least) | ||
763 | MACHINE[unexport] = "1" | ||
764 | |||
765 | # Make sure TARGET_ARCH isn't exported | ||
766 | # (breaks Makefiles using implicit rules, e.g. quilt, as GNU make has this | ||
767 | # in them, undocumented) | ||
768 | TARGET_ARCH[unexport] = "1" | ||
769 | |||
770 | # Make sure DISTRO isn't exported | ||
771 | # (breaks sysvinit at least) | ||
772 | DISTRO[unexport] = "1" | ||
773 | |||
774 | # Used by canadian-cross to handle string conversions on TARGET_ARCH where needed | ||
775 | TRANSLATED_TARGET_ARCH ??= "${@d.getVar('TARGET_ARCH', True).replace("_", "-")}" | ||
776 | |||
777 | # Complete output from bitbake | ||
778 | BB_CONSOLELOG ?= "${LOG_DIR}/cooker/${MACHINE}/${DATETIME}.log" | ||
779 | |||
780 | # Setup our default hash policy | ||
781 | BB_SIGNATURE_HANDLER ?= "OEBasicHash" | ||
782 | BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR \ | ||
783 | SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM \ | ||
784 | USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \ | ||
785 | PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \ | ||
786 | CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE LICENSE_PATH SDKPKGSUFFIX" | ||
787 | BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SSH_AGENT_PID \ | ||
788 | SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \ | ||
789 | PARALLEL_MAKE BB_NUMBER_THREADS BB_ORIGENV" | ||
790 | BB_SIGNATURE_EXCLUDE_FLAGS ?= "doc defaultval _append _prepend deps depends \ | ||
791 | lockfiles type vardepsexclude vardeps vardepvalue file-checksums python \ | ||
792 | func task export unexport noexec nostamp dirs cleandirs \ | ||
793 | sstate-lockfile-shared prefuncs postfuncs export_func deptask rdeptask \ | ||
794 | recrdeptask nodeprrecs stamp-base stamp-extra-info" | ||
795 | |||
796 | MLPREFIX ??= "" | ||
797 | MULTILIB_VARIANTS ??= "" | ||