diff options
Diffstat (limited to 'meta/classes-recipe/native.bbclass')
-rw-r--r-- | meta/classes-recipe/native.bbclass | 45 |
1 files changed, 27 insertions, 18 deletions
diff --git a/meta/classes-recipe/native.bbclass b/meta/classes-recipe/native.bbclass index 84a3ec65da..625975a694 100644 --- a/meta/classes-recipe/native.bbclass +++ b/meta/classes-recipe/native.bbclass | |||
@@ -40,11 +40,6 @@ HOST_CC_ARCH = "${BUILD_CC_ARCH}" | |||
40 | HOST_LD_ARCH = "${BUILD_LD_ARCH}" | 40 | HOST_LD_ARCH = "${BUILD_LD_ARCH}" |
41 | HOST_AS_ARCH = "${BUILD_AS_ARCH}" | 41 | HOST_AS_ARCH = "${BUILD_AS_ARCH}" |
42 | 42 | ||
43 | CPPFLAGS = "${BUILD_CPPFLAGS}" | ||
44 | CFLAGS = "${BUILD_CFLAGS}" | ||
45 | CXXFLAGS = "${BUILD_CXXFLAGS}" | ||
46 | LDFLAGS = "${BUILD_LDFLAGS}" | ||
47 | |||
48 | STAGING_BINDIR = "${STAGING_BINDIR_NATIVE}" | 43 | STAGING_BINDIR = "${STAGING_BINDIR_NATIVE}" |
49 | STAGING_BINDIR_CROSS = "${STAGING_BINDIR_NATIVE}" | 44 | STAGING_BINDIR_CROSS = "${STAGING_BINDIR_NATIVE}" |
50 | 45 | ||
@@ -58,17 +53,20 @@ PTEST_ENABLED = "0" | |||
58 | export CONFIG_SITE = "${COREBASE}/meta/site/native" | 53 | export CONFIG_SITE = "${COREBASE}/meta/site/native" |
59 | 54 | ||
60 | # set the compiler as well. It could have been set to something else | 55 | # set the compiler as well. It could have been set to something else |
61 | export CC = "${BUILD_CC}" | 56 | CC = "${BUILD_CC}" |
62 | export CXX = "${BUILD_CXX}" | 57 | CXX = "${BUILD_CXX}" |
63 | export FC = "${BUILD_FC}" | 58 | FC = "${BUILD_FC}" |
64 | export CPP = "${BUILD_CPP}" | 59 | CPP = "${BUILD_CPP}" |
65 | export LD = "${BUILD_LD}" | 60 | LD = "${BUILD_LD}" |
66 | export CCLD = "${BUILD_CCLD}" | 61 | CCLD = "${BUILD_CCLD}" |
67 | export AR = "${BUILD_AR}" | 62 | AR = "${BUILD_AR}" |
68 | export AS = "${BUILD_AS}" | 63 | AS = "${BUILD_AS}" |
69 | export RANLIB = "${BUILD_RANLIB}" | 64 | RANLIB = "${BUILD_RANLIB}" |
70 | export STRIP = "${BUILD_STRIP}" | 65 | STRIP = "${BUILD_STRIP}" |
71 | export NM = "${BUILD_NM}" | 66 | NM = "${BUILD_NM}" |
67 | OBJCOPY = "${BUILD_OBJCOPY}" | ||
68 | OBJDUMP = "${BUILD_OBJDUMP}" | ||
69 | READELF = "${BUILD_READELF}" | ||
72 | 70 | ||
73 | # Path prefixes | 71 | # Path prefixes |
74 | base_prefix = "${STAGING_DIR_NATIVE}" | 72 | base_prefix = "${STAGING_DIR_NATIVE}" |
@@ -124,6 +122,7 @@ SSTATE_SCAN_CMD ?= "${SSTATE_SCAN_CMD_NATIVE}" | |||
124 | INHIBIT_SYSROOT_STRIP ?= "${@oe.utils.vartrue('DEBUG_BUILD', '1', '', d)}" | 122 | INHIBIT_SYSROOT_STRIP ?= "${@oe.utils.vartrue('DEBUG_BUILD', '1', '', d)}" |
125 | 123 | ||
126 | python native_virtclass_handler () { | 124 | python native_virtclass_handler () { |
125 | import re | ||
127 | pn = e.data.getVar("PN") | 126 | pn = e.data.getVar("PN") |
128 | if not pn.endswith("-native"): | 127 | if not pn.endswith("-native"): |
129 | return | 128 | return |
@@ -163,10 +162,20 @@ python native_virtclass_handler () { | |||
163 | newdeps.append(dep.replace(pn, bpn) + "-native") | 162 | newdeps.append(dep.replace(pn, bpn) + "-native") |
164 | else: | 163 | else: |
165 | newdeps.append(dep) | 164 | newdeps.append(dep) |
166 | d.setVar(varname, " ".join(newdeps)) | 165 | output_varname = varname |
166 | # Handle ${PN}-xxx -> ${BPN}-xxx-native | ||
167 | if suffix != "${PN}" and "${PN}" in suffix: | ||
168 | output_varname = varname.replace("${PN}", "${BPN}") + "-native" | ||
169 | d.renameVar(varname, output_varname) | ||
170 | d.setVar(output_varname, " ".join(newdeps)) | ||
167 | 171 | ||
168 | map_dependencies("DEPENDS", e.data, selfref=False) | 172 | map_dependencies("DEPENDS", e.data, selfref=False) |
169 | for pkg in e.data.getVar("PACKAGES", False).split(): | 173 | # We need to handle things like ${@bb.utils.contains('PTEST_ENABLED', '1', '${PN}-ptest', '', d)} |
174 | # and not pass ${PN}-test since in the native case it would be ignored. This does mean we ignore | ||
175 | # anonymous python derived PACKAGES entries. | ||
176 | for pkg in re.split(r"\${@(?:{.*?}|.)+?}|\s", d.getVar("PACKAGES", False)): | ||
177 | if not pkg: | ||
178 | continue | ||
170 | map_dependencies("RDEPENDS", e.data, pkg) | 179 | map_dependencies("RDEPENDS", e.data, pkg) |
171 | map_dependencies("RRECOMMENDS", e.data, pkg) | 180 | map_dependencies("RRECOMMENDS", e.data, pkg) |
172 | map_dependencies("RSUGGESTS", e.data, pkg) | 181 | map_dependencies("RSUGGESTS", e.data, pkg) |