summaryrefslogtreecommitdiffstats
path: root/meta/classes/icecc.bbclass
diff options
context:
space:
mode:
authorRichard Purdie <richard@openedhand.com>2007-12-01 18:36:52 +0000
committerRichard Purdie <richard@openedhand.com>2007-12-01 18:36:52 +0000
commit25110f59cc380bcba3172b79f7afd92334accd66 (patch)
tree59aa9805a03bca653fd352811e675a04177ac08e /meta/classes/icecc.bbclass
parenta19595060cf8e8a22b64bdb49570343c1eea2442 (diff)
downloadpoky-25110f59cc380bcba3172b79f7afd92334accd66.tar.gz
icecc.bbclass: Sync from OE
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3292 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/classes/icecc.bbclass')
-rw-r--r--meta/classes/icecc.bbclass17
1 files changed, 10 insertions, 7 deletions
diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
index 446e78ae1a..56cbd6444f 100644
--- a/meta/classes/icecc.bbclass
+++ b/meta/classes/icecc.bbclass
@@ -9,7 +9,8 @@
9# ICECC_VERSION accordingly. 9# ICECC_VERSION accordingly.
10# 10#
11#The class now handles all 3 different compile 'stages' (i.e native ,cross-kernel and target) creating the 11#The class now handles all 3 different compile 'stages' (i.e native ,cross-kernel and target) creating the
12#necessary enviroment tar.gz file to be used by the remote machines 12#necessary enviroment tar.gz file to be used by the remote machines.
13#It also supports meta-toolchain generation
13# 14#
14#If ICECC_PATH is not set in local.conf then the class will try to locate it using 'which' 15#If ICECC_PATH is not set in local.conf then the class will try to locate it using 'which'
15#but nothing is sure ;) 16#but nothing is sure ;)
@@ -186,12 +187,15 @@ def create_cross_kernel_env(bb,d):
186def create_env(bb,d): 187def create_env(bb,d):
187 188
188 #return create_cross_kernel_env(bb,d) 189 #return create_cross_kernel_env(bb,d)
190
189 if bb.data.inherits_class("native", d): 191 if bb.data.inherits_class("native", d):
190 return create_native_env(bb,d) 192 return create_native_env(bb,d)
191 elif bb.data.inherits_class("kernel", d): 193 elif bb.data.inherits_class("kernel", d):
192 return create_cross_kernel_env(bb,d) 194 return create_cross_kernel_env(bb,d)
193 elif bb.data.inherits_class("cross", d): 195 elif bb.data.inherits_class("cross", d):
194 return create_native_env(bb,d) 196 return create_native_env(bb,d)
197 elif bb.data.inherits_class("sdk", d):
198 return create_native_env(bb,d)
195 else: 199 else:
196 return create_cross_env(bb,d) 200 return create_cross_env(bb,d)
197 201
@@ -253,11 +257,11 @@ def icc_path(bb,d,compile):
253 257
254 #"system" package blacklist contains a list of packages that can not distribute compile tasks 258 #"system" package blacklist contains a list of packages that can not distribute compile tasks
255 #for one reason or the other 259 #for one reason or the other
256 system_package_blacklist = [ "uclibc", "glibc-intermediate", "qemu" ] 260 system_package_blacklist = [ "uclibc", "glibc-intermediate", "gcc", "qemu", "bind", "u-boot", "dhcp-forwarder", "enchant" ]
257 261
258 for black in system_package_blacklist: 262 for black in system_package_blacklist:
259 if black in package_tmp: 263 if black in package_tmp:
260 bb.data.setVar('PARALLEL_MAKE' , '', d) 264 bb.data.setVar("PARALLEL_MAKE" , "", d)
261 return "" 265 return ""
262 266
263 #user defined exclusion list 267 #user defined exclusion list
@@ -266,7 +270,7 @@ def icc_path(bb,d,compile):
266 270
267 for black in user_package_blacklist: 271 for black in user_package_blacklist:
268 if black in package_tmp: 272 if black in package_tmp:
269 bb.data.setVar('PARALLEL_MAKE' , '', d) 273 bb.data.setVar("PARALLEL_MAKE" , "", d)
270 return "" 274 return ""
271 275
272 276
@@ -280,7 +284,6 @@ def icc_path(bb,d,compile):
280 return create_path( ["gcc", "g++"], "native", bb, d) 284 return create_path( ["gcc", "g++"], "native", bb, d)
281 285
282 elif compile and bb.data.inherits_class("kernel", d): 286 elif compile and bb.data.inherits_class("kernel", d):
283 #kernel_cc = bb.data.expand('${KERNEL_CC}', d)
284 return create_path( [get_cross_kernel_ver(bb,d), "foo"], "cross-kernel", bb, d) 287 return create_path( [get_cross_kernel_ver(bb,d), "foo"], "cross-kernel", bb, d)
285 288
286 elif not compile or len(prefix) == 0: 289 elif not compile or len(prefix) == 0:
@@ -305,7 +308,7 @@ def check_for_kernel(bb,d):
305def get_cross_kernel_ver(bb,d): 308def get_cross_kernel_ver(bb,d):
306 309
307 return bb.data.expand('${KERNEL_CC}', d).strip() or "gcc" 310 return bb.data.expand('${KERNEL_CC}', d).strip() or "gcc"
308 311
309# set the icecream environment variables 312# set the icecream environment variables
310do_configure_prepend() { 313do_configure_prepend() {
311 export PATH=${@icc_path(bb,d,False)}$PATH 314 export PATH=${@icc_path(bb,d,False)}$PATH
@@ -316,7 +319,7 @@ do_configure_prepend() {
316do_compile_prepend() { 319do_compile_prepend() {
317 320
318 export PATH=${@icc_path(bb,d,True)}$PATH 321 export PATH=${@icc_path(bb,d,True)}$PATH
319 322
320 #check if we are building a kernel and select gcc-cross-kernel 323 #check if we are building a kernel and select gcc-cross-kernel
321 if [ "${@check_for_kernel(bb,d)}" = "yes" ]; then 324 if [ "${@check_for_kernel(bb,d)}" = "yes" ]; then
322 export ICECC_CC="${@get_cross_kernel_ver(bb,d)}" 325 export ICECC_CC="${@get_cross_kernel_ver(bb,d)}"