2011-01-30 07:54:05 +00:00
|
|
|
do_populate_sdk[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot bzip2-native:do_populate_sysroot"
|
|
|
|
do_populate_sdk[recrdeptask] += "do_package_write_deb"
|
|
|
|
|
|
|
|
|
Convert to use direct access to the data store (instead of bb.data.*Var*())
This is the result of running the following over the metadata:
sed \
-e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \
-e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \
-e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \
-e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \
-e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \
-e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \
-i `grep -ril bb.data *`
(From OE-Core rev: b22831fd63164c4db9c0b72934d7d734a6585251)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-09 15:00:01 +00:00
|
|
|
DEB_SDK_ARCH = "${@[d.getVar('SDK_ARCH', 1), "i386"]\
|
|
|
|
[d.getVar('SDK_ARCH', 1) in \
|
package_deb.bbclass, populate_sdk_deb.bbclass: fix meta-toolchain-gmae build
[YOCTO #1070]
Currently with deb packaging, we have 2 issues when running
"bitbake meta-toolchain-gmae".
1) when MACHINE="qemux86", SDKMACHINE="i686", INSTALL_BASEARCH_DEB is "i686",
too. This causes the following ERROR:
| E: Couldn't find package task-sdk-host-nativesdk
NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed
This is becasue: due to the DPKG_ARCH mapping, we create such a deb package
tmp/deploy/deb/i686-nativesdk/task-sdk-host-nativesdk_1.0-r10_i386.deb; dpkg
can't recoginze the package. We need to map INSTALL_BASEARCH_DEB in the same
way.
2) when MACHINE="qemux86", SDKMACHINE="x86_64", INSTALL_BASEARCH_DEB is
"x86_64", too.
We get such an ERROR:
| E: Couldn't find package task-cross-canadian-i586
NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed
This is because: dpkg can't recognize the generated package
tmp/deploy/deb/x86_64-nativesdk/task-cross-canadian-i586_1.0-r0_i386.deb
Here the "i386" suffix is incorrect and should be "x86_64" -- the i386
comes from the line
DPKG_ARCH_i586 ?= "i386" in package_deb.bbclass.
However, for canadian package, actually here the overriding of DPKG (from
"x86-64" to "i386") should not happen -- it accidently happens just because
TARGET_ARCH exists in OVERRIDES. We can move the overriding logic to the
anonymous python function to work this around.
(From OE-Core rev: 63010b9ee89643c8e83656783231f0a7848d9e45)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-14 14:30:14 +00:00
|
|
|
["x86", "i486", "i586", "i686", "pentium"]]}"
|
|
|
|
|
2011-01-30 07:54:05 +00:00
|
|
|
populate_sdk_post_deb () {
|
|
|
|
|
|
|
|
local target_rootfs=$1
|
|
|
|
|
2011-09-06 09:12:20 +00:00
|
|
|
tar -cf - -C ${STAGING_ETCDIR_NATIVE} -ps apt | tar -xf - -C ${target_rootfs}/etc
|
2011-01-30 07:54:05 +00:00
|
|
|
}
|
|
|
|
|
2011-11-10 18:02:56 +00:00
|
|
|
populate_sdk_deb () {
|
2011-01-30 07:54:05 +00:00
|
|
|
|
2011-08-01 17:34:51 +00:00
|
|
|
# update index
|
2011-01-30 07:54:05 +00:00
|
|
|
package_update_index_deb
|
|
|
|
|
2011-08-01 17:34:51 +00:00
|
|
|
## install target ##
|
|
|
|
# This needs to work in the same way as rootfs_deb.bbclass
|
2011-01-30 07:54:05 +00:00
|
|
|
echo "Installing TARGET packages"
|
2011-08-01 17:34:51 +00:00
|
|
|
|
|
|
|
mkdir -p ${IMAGE_ROOTFS}/var/dpkg/alternatives
|
|
|
|
|
2011-01-30 07:54:05 +00:00
|
|
|
export INSTALL_ROOTFS_DEB="${SDK_OUTPUT}/${SDKTARGETSYSROOT}"
|
|
|
|
export INSTALL_BASEARCH_DEB="${DPKG_ARCH}"
|
|
|
|
export INSTALL_ARCHS_DEB="${PACKAGE_ARCHS}"
|
|
|
|
export INSTALL_PACKAGES_NORMAL_DEB="${TOOLCHAIN_TARGET_TASK}"
|
2011-08-01 17:34:51 +00:00
|
|
|
export INSTALL_PACKAGES_ATTEMPTONLY_DEB=""
|
|
|
|
export PACKAGES_LINGUAS_DEB=""
|
|
|
|
export INSTALL_TASK_DEB="populate_sdk-target"
|
2011-01-30 07:54:05 +00:00
|
|
|
|
|
|
|
package_install_internal_deb
|
2011-08-01 17:34:51 +00:00
|
|
|
|
2011-01-30 07:54:05 +00:00
|
|
|
populate_sdk_post_deb ${INSTALL_ROOTFS_DEB}
|
|
|
|
|
|
|
|
populate_sdk_log_check populate_sdk
|
|
|
|
|
2011-08-01 17:34:51 +00:00
|
|
|
## install nativesdk ##
|
|
|
|
echo "Installing NATIVESDK packages"
|
2011-01-30 07:54:05 +00:00
|
|
|
export INSTALL_ROOTFS_DEB="${SDK_OUTPUT}"
|
package_deb.bbclass, populate_sdk_deb.bbclass: fix meta-toolchain-gmae build
[YOCTO #1070]
Currently with deb packaging, we have 2 issues when running
"bitbake meta-toolchain-gmae".
1) when MACHINE="qemux86", SDKMACHINE="i686", INSTALL_BASEARCH_DEB is "i686",
too. This causes the following ERROR:
| E: Couldn't find package task-sdk-host-nativesdk
NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed
This is becasue: due to the DPKG_ARCH mapping, we create such a deb package
tmp/deploy/deb/i686-nativesdk/task-sdk-host-nativesdk_1.0-r10_i386.deb; dpkg
can't recoginze the package. We need to map INSTALL_BASEARCH_DEB in the same
way.
2) when MACHINE="qemux86", SDKMACHINE="x86_64", INSTALL_BASEARCH_DEB is
"x86_64", too.
We get such an ERROR:
| E: Couldn't find package task-cross-canadian-i586
NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed
This is because: dpkg can't recognize the generated package
tmp/deploy/deb/x86_64-nativesdk/task-cross-canadian-i586_1.0-r0_i386.deb
Here the "i386" suffix is incorrect and should be "x86_64" -- the i386
comes from the line
DPKG_ARCH_i586 ?= "i386" in package_deb.bbclass.
However, for canadian package, actually here the overriding of DPKG (from
"x86-64" to "i386") should not happen -- it accidently happens just because
TARGET_ARCH exists in OVERRIDES. We can move the overriding logic to the
anonymous python function to work this around.
(From OE-Core rev: 63010b9ee89643c8e83656783231f0a7848d9e45)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-14 14:30:14 +00:00
|
|
|
export INSTALL_BASEARCH_DEB="${DEB_SDK_ARCH}"
|
2011-08-01 17:11:22 +00:00
|
|
|
export INSTALL_ARCHS_DEB="${SDK_PACKAGE_ARCHS}"
|
2011-08-01 17:34:51 +00:00
|
|
|
export INSTALL_PACKAGES_NORMAL_DEB="${TOOLCHAIN_HOST_TASK}"
|
|
|
|
export INSTALL_PACKAGES_ATTEMPTONLY_DEB=""
|
|
|
|
export PACKAGES_LINGUAS_DEB=""
|
|
|
|
export INSTALL_TASK_DEB="populate_sdk-nativesdk"
|
2011-01-30 07:54:05 +00:00
|
|
|
|
|
|
|
package_install_internal_deb
|
|
|
|
populate_sdk_post_deb ${SDK_OUTPUT}/${SDKPATHNATIVE}
|
|
|
|
|
|
|
|
#move remainings
|
2011-09-19 08:00:38 +00:00
|
|
|
install -d ${SDK_OUTPUT}/${SDKPATHNATIVE}/var/lib/dpkg
|
|
|
|
mv ${SDK_OUTPUT}/var/lib/dpkg/* ${SDK_OUTPUT}/${SDKPATHNATIVE}/var/lib/dpkg
|
2011-01-30 07:54:05 +00:00
|
|
|
rm -rf ${SDK_OUTPUT}/var
|
|
|
|
|
|
|
|
populate_sdk_log_check populate_sdk
|
|
|
|
}
|
|
|
|
|