summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-22 13:08:58 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-25 12:06:30 +0100
commitdffe253336f4cc1999ad2a2323d346bfa5f22047 (patch)
tree35d54bca59f409cd5970c45b835df75c64887453 /meta
parenteea4bd731ef286516ee1fb934fe2222a09c06e70 (diff)
downloadpoky-dffe253336f4cc1999ad2a2323d346bfa5f22047.tar.gz
bitbake.conf/cross.bbclass: Add ability to dynamically change library location
Add the ability to dynamically change the library directory from "lib" to other values. This allows the tune files to specifiy altnerative ABIs which can be dynamically enabled by the multilib BBCLASSEXTEND code. A variety of approaches have been attempted with this, the immediate expansions in cross.bbclass being problematic as they are they are expanded before the bbclass extend event hander runs. This approach ensures the ${baselib} variable is retained in the expressions resolving that complication. Derived from some ideas from Mark Hatle. (From OE-Core rev: aeea22da699b276a97ca1a17e3c53176c9afd9de) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/cross.bbclass7
-rw-r--r--meta/conf/bitbake.conf15
2 files changed, 14 insertions, 8 deletions
diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass
index f9fd07a9a2..81358ec8dd 100644
--- a/meta/classes/cross.bbclass
+++ b/meta/classes/cross.bbclass
@@ -38,11 +38,12 @@ DEPENDS_GETTEXT = "gettext-native"
38# Path mangling needed by the cross packaging 38# Path mangling needed by the cross packaging
39# Note that we use := here to ensure that libdir and includedir are 39# Note that we use := here to ensure that libdir and includedir are
40# target paths. 40# target paths.
41target_libdir := "${libdir}" 41target_base_prefix := "${base_prefix}"
42target_includedir := "${includedir}"
43target_base_libdir := "${base_libdir}"
44target_prefix := "${prefix}" 42target_prefix := "${prefix}"
45target_exec_prefix := "${exec_prefix}" 43target_exec_prefix := "${exec_prefix}"
44target_base_libdir = "${target_base_prefix}/${baselib}"
45target_libdir = "${target_exec_prefix}/${baselib}"
46target_includedir := "${includedir}"
46 47
47# Overrides for paths 48# Overrides for paths
48CROSS_TARGET_SYS_DIR = "${MULTIMACH_TARGET_SYS}" 49CROSS_TARGET_SYS_DIR = "${MULTIMACH_TARGET_SYS}"
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 975e24c071..e768df5f7f 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -1,6 +1,13 @@
1################################################################## 1##################################################################
2# Standard target filesystem paths. 2# Standard target filesystem paths.
3################################################################## 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 = "lib"
4 11
5# Path prefixes 12# Path prefixes
6export base_prefix = "" 13export base_prefix = ""
@@ -10,7 +17,7 @@ export exec_prefix = "/usr"
10# Base paths 17# Base paths
11export base_bindir = "${base_prefix}/bin" 18export base_bindir = "${base_prefix}/bin"
12export base_sbindir = "${base_prefix}/sbin" 19export base_sbindir = "${base_prefix}/sbin"
13export base_libdir = "${base_prefix}/lib" 20export base_libdir = "${base_prefix}/${baselib}"
14 21
15# Architecture independent paths 22# Architecture independent paths
16export datadir = "${prefix}/share" 23export datadir = "${prefix}/share"
@@ -26,13 +33,11 @@ export docdir = "${datadir}/doc"
26export bindir = "${exec_prefix}/bin" 33export bindir = "${exec_prefix}/bin"
27export sbindir = "${exec_prefix}/sbin" 34export sbindir = "${exec_prefix}/sbin"
28export libexecdir = "${exec_prefix}/libexec" 35export libexecdir = "${exec_prefix}/libexec"
29export libdir = "${exec_prefix}/lib" 36export libdir = "${exec_prefix}/${baselib}"
30export includedir = "${exec_prefix}/include" 37export includedir = "${exec_prefix}/include"
31export oldincludedir = "${exec_prefix}/include" 38export oldincludedir = "${exec_prefix}/include"
32 39
33# 40# Linkage between native/cross/nativesdk layouts
34# These must match the various bbclass layout definitions
35#
36base_bindir_native = "/bin" 41base_bindir_native = "/bin"
37base_sbindir_native = "/sbin" 42base_sbindir_native = "/sbin"
38sysconfdir_native = "/etc" 43sysconfdir_native = "/etc"