From 088c499815a6a856ece2bf0d54d6d8f1e7b431fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20Bot=C3=B6?= Date: Thu, 11 Apr 2013 13:56:03 +0200 Subject: systemd: Fix path to systemd-analyze so it end up in the right package. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since the upgrade to version 199 the location for systemd-analyze has change this caused the systemd-analyze package to be empty and the binary was shipped with the systemd package instead. Signed-off-by: Erik Botö Signed-off-by: Richard Purdie --- meta/recipes-core/systemd/systemd_199.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-core/systemd/systemd_199.bb b/meta/recipes-core/systemd/systemd_199.bb index 354e55733c..3ee1283ab7 100644 --- a/meta/recipes-core/systemd/systemd_199.bb +++ b/meta/recipes-core/systemd/systemd_199.bb @@ -122,7 +122,7 @@ PACKAGES =+ "${PN}-gui ${PN}-vconsole-setup ${PN}-initramfs ${PN}-analyze ${PN}- USERADD_PACKAGES = "${PN}" GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal" -FILES_${PN}-analyze = "${base_bindir}/systemd-analyze" +FILES_${PN}-analyze = "${bindir}/systemd-analyze" FILES_${PN}-initramfs = "/init" RDEPENDS_${PN}-initramfs = "${PN}" -- cgit v1.2.3 From e915c0ac6faab824207f0a0227a1f2ac422b3d4f Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Wed, 20 Mar 2013 08:29:22 +0800 Subject: package_rpm.bbclass: fix build multilib image failed when PR Server enabled 1, In bitbake.conf PKGR ?= "${PR}${EXTENDPRAUTO}" EXTENDPKGV ?= "${EXTENDPKGEVER}${PKGV}-${PKGR}" RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPKGV})" 2, When PR Server is enabled, EXTENDPRAUTO is not none which means PKGR and PR don't have the same value. 3, When multilib is enabled, RDEPENDS_${PN}-dev is not expanded correctly which uses PR rather than PKGR in the versioned dependency string. 4, Make sure PKGR rather than PR in version string when do_package_rpm. [YOCTO #4050] Signed-off-by: Hongxu Jia Signed-off-by: Richard Purdie --- meta/classes/package_rpm.bbclass | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index 12b4bfa536..3a2997637b 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass @@ -605,7 +605,14 @@ python write_specfile () { pv = subd['PV'] pkgv = subd['PKGV'] reppv = pkgv.replace('-', '+') - verlist.append(ver.replace(pv, reppv).replace(pkgv, reppv)) + ver = ver.replace(pv, reppv).replace(pkgv, reppv) + if 'PKGR' in subd: + # Make sure PKGR rather than PR in ver + pr = '-' + subd['PR'] + pkgr = '-' + subd['PKGR'] + if pkgr not in ver: + ver = ver.replace(pr, pkgr) + verlist.append(ver) else: verlist.append(ver) newdeps_dict[dep] = verlist -- cgit v1.2.3 From 37c17dcd92244379e59e848cb2d12184bb27d5e5 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Mon, 18 Mar 2013 10:10:08 +0000 Subject: icecc: Allow to use this bbclass together with external toolchains * original implementation by Antti Harju Signed-off-by: Martin Jansa Signed-off-by: Richard Purdie --- meta/classes/icecc.bbclass | 37 +++++++++++++++++++++++++++++++++---- 1 file changed, 33 insertions(+), 4 deletions(-) diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass index f3e89a9747..cf3f23d93a 100644 --- a/meta/classes/icecc.bbclass +++ b/meta/classes/icecc.bbclass @@ -47,6 +47,9 @@ def get_cross_kernel_cc(bb,d): kernel_cc = kernel_cc.strip() return kernel_cc +def get_icecc(d): + return d.getVar('ICECC_PATH') or os.popen("which icecc").read()[:-1] + def create_path(compilers, bb, d): """ Create Symlinks for the icecc in the staging directory @@ -56,7 +59,7 @@ def create_path(compilers, bb, d): staging += "-kernel" #check if the icecc path is set by the user - icecc = d.getVar('ICECC_PATH') or os.popen("which icecc").read()[:-1] + icecc = get_icecc(d) # Create the dir if necessary try: @@ -151,6 +154,11 @@ def icc_path(bb,d): prefix = d.expand('${HOST_PREFIX}') return create_path( [prefix+"gcc", prefix+"g++"], bb, d) +def icc_get_external_tool(bb, d, tool): + external_toolchain_bindir = d.expand('${EXTERNAL_TOOLCHAIN}${bindir_cross}') + target_prefix = d.expand('${TARGET_PREFIX}') + return os.path.join(external_toolchain_bindir, '%s%s' % (target_prefix, tool)) + def icc_get_tool(bb, d, tool): if icc_is_native(bb, d): return os.popen("which %s" % tool).read()[:-1] @@ -159,7 +167,26 @@ def icc_get_tool(bb, d, tool): else: ice_dir = d.expand('${STAGING_BINDIR_TOOLCHAIN}') target_sys = d.expand('${TARGET_SYS}') - return os.path.join(ice_dir, "%s-%s" % (target_sys, tool)) + tool_bin = os.path.join(ice_dir, "%s-%s" % (target_sys, tool)) + if os.path.isfile(tool_bin): + return tool_bin + else: + external_tool_bin = icc_get_external_tool(bb, d, tool) + if os.path.isfile(external_tool_bin): + return external_tool_bin + else: + return "" + +def icc_get_and_check_tool(bb, d, tool): + # Check that g++ or gcc is not a symbolic link to icecc binary in + # PATH or icecc-create-env script will silently create an invalid + # compiler environment package. + t = icc_get_tool(bb, d, tool) + if t and os.popen("readlink -f %s" % t).read()[:-1] == get_icecc(d): + bb.error("%s is a symlink to %s in PATH and this prevents icecc from working" % (t, get_icecc(d))) + return "" + else: + return t set_icecc_env() { if [ "x${ICECC_DISABLED}" != "x" ] @@ -178,8 +205,8 @@ set_icecc_env() { return fi - ICECC_CC="${@icc_get_tool(bb,d, "gcc")}" - ICECC_CXX="${@icc_get_tool(bb,d, "g++")}" + ICECC_CC="${@icc_get_and_check_tool(bb, d, "gcc")}" + ICECC_CXX="${@icc_get_and_check_tool(bb, d, "g++")}" if [ ! -x "${ICECC_CC}" -o ! -x "${ICECC_CXX}" ] then return @@ -207,6 +234,8 @@ set_icecc_env() { export ICECC_VERSION ICECC_CC ICECC_CXX export PATH="$ICE_PATH:$PATH" export CCACHE_PATH="$PATH" + + bbnote "Using icecc" } do_configure_prepend() { -- cgit v1.2.3