diff options
Diffstat (limited to 'meta')
| -rw-r--r-- | meta/classes/package_rpm.bbclass | 32 | ||||
| -rw-r--r-- | meta/classes/populate_sdk_rpm.bbclass | 7 | ||||
| -rw-r--r-- | meta/classes/rootfs_rpm.bbclass | 9 |
3 files changed, 28 insertions, 20 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index 215be8d607..7cbdae6256 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass | |||
| @@ -35,15 +35,22 @@ package_update_index_rpm () { | |||
| 35 | if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then | 35 | if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then |
| 36 | extension="" | 36 | extension="" |
| 37 | fi | 37 | fi |
| 38 | packagedirs="$packagedirs ${DEPLOY_DIR_RPM}/$arch" | 38 | packagedirs="${DEPLOY_DIR_RPM}/$arch $packagedirs" |
| 39 | packagedirs_sdk="$packagedirs_sdk ${DEPLOY_DIR_RPM}/$sdkarch$extension" | 39 | packagedirs_sdk="${DEPLOY_DIR_RPM}/$sdkarch$extension $packagedirs_sdk" |
| 40 | |||
| 41 | rm -rf ${DEPLOY_DIR_RPM}/$arch/solvedb | ||
| 42 | rm -rf ${DEPLOY_DIR_RPM}/$sdkarch$extension/solvedb | ||
| 40 | done | 43 | done |
| 41 | 44 | ||
| 42 | cat /dev/null > ${RPMCONF_TARGET_BASE}.conf | 45 | cat /dev/null > ${RPMCONF_TARGET_BASE}.conf |
| 43 | for pkgdir in $packagedirs; do | 46 | for pkgdir in $packagedirs; do |
| 44 | if [ -e $pkgdir/ ]; then | 47 | if [ -e $pkgdir/ ]; then |
| 45 | echo "Generating solve db for $pkgdir..." | 48 | echo "Generating solve db for $pkgdir..." |
| 46 | rm -rf $pkgdir/solvedb | 49 | echo $pkgdir/solvedb >> ${RPMCONF_TARGET_BASE}.conf |
| 50 | if [ -d $pkgdir/solvedb ]; then | ||
| 51 | # We've already processed this and it's a duplicate | ||
| 52 | continue | ||
| 53 | fi | ||
| 47 | mkdir -p $pkgdir/solvedb | 54 | mkdir -p $pkgdir/solvedb |
| 48 | echo "# Dynamically generated solve manifest" >> $pkgdir/solvedb/manifest | 55 | echo "# Dynamically generated solve manifest" >> $pkgdir/solvedb/manifest |
| 49 | find $pkgdir -maxdepth 1 -type f >> $pkgdir/solvedb/manifest | 56 | find $pkgdir -maxdepth 1 -type f >> $pkgdir/solvedb/manifest |
| @@ -53,7 +60,6 @@ package_update_index_rpm () { | |||
| 53 | --ignoresize --nosignature --nodigest \ | 60 | --ignoresize --nosignature --nodigest \ |
| 54 | -D "__dbi_txn create nofsync" \ | 61 | -D "__dbi_txn create nofsync" \ |
| 55 | $pkgdir/solvedb/manifest | 62 | $pkgdir/solvedb/manifest |
| 56 | echo $pkgdir/solvedb >> ${RPMCONF_TARGET_BASE}.conf | ||
| 57 | fi | 63 | fi |
| 58 | done | 64 | done |
| 59 | 65 | ||
| @@ -61,7 +67,11 @@ package_update_index_rpm () { | |||
| 61 | for pkgdir in $packagedirs_sdk; do | 67 | for pkgdir in $packagedirs_sdk; do |
| 62 | if [ -e $pkgdir/ ]; then | 68 | if [ -e $pkgdir/ ]; then |
| 63 | echo "Generating solve db for $pkgdir..." | 69 | echo "Generating solve db for $pkgdir..." |
| 64 | rm -rf $pkgdir/solvedb | 70 | echo $pkgdir/solvedb >> ${RPMCONF_HOST_BASE}.conf |
| 71 | if [ -d $pkgdir/solvedb ]; then | ||
| 72 | # We've already processed this and it's a duplicate | ||
| 73 | continue | ||
| 74 | fi | ||
| 65 | mkdir -p $pkgdir/solvedb | 75 | mkdir -p $pkgdir/solvedb |
| 66 | echo "# Dynamically generated solve manifest" >> $pkgdir/solvedb/manifest | 76 | echo "# Dynamically generated solve manifest" >> $pkgdir/solvedb/manifest |
| 67 | find $pkgdir -maxdepth 1 -type f >> $pkgdir/solvedb/manifest | 77 | find $pkgdir -maxdepth 1 -type f >> $pkgdir/solvedb/manifest |
| @@ -71,7 +81,6 @@ package_update_index_rpm () { | |||
| 71 | --ignoresize --nosignature --nodigest \ | 81 | --ignoresize --nosignature --nodigest \ |
| 72 | -D "__dbi_txn create nofsync" \ | 82 | -D "__dbi_txn create nofsync" \ |
| 73 | $pkgdir/solvedb/manifest | 83 | $pkgdir/solvedb/manifest |
| 74 | echo $pkgdir/solvedb >> ${RPMCONF_HOST_BASE}.conf | ||
| 75 | fi | 84 | fi |
| 76 | done | 85 | done |
| 77 | } | 86 | } |
| @@ -146,8 +155,7 @@ resolve_package_rpm () { | |||
| 146 | # install a bunch of packages using rpm | 155 | # install a bunch of packages using rpm |
| 147 | # the following shell variables needs to be set before calling this func: | 156 | # the following shell variables needs to be set before calling this func: |
| 148 | # INSTALL_ROOTFS_RPM - install root dir | 157 | # INSTALL_ROOTFS_RPM - install root dir |
| 149 | # INSTALL_PLATFORM_RPM - main platform | 158 | # INSTALL_PLATFORM_RPM - extra platform |
| 150 | # INSTALL_PLATFORM_EXTRA_RPM - extra platform | ||
| 151 | # INSTALL_CONFBASE_RPM - configuration file base name | 159 | # INSTALL_CONFBASE_RPM - configuration file base name |
| 152 | # INSTALL_PACKAGES_NORMAL_RPM - packages to be installed | 160 | # INSTALL_PACKAGES_NORMAL_RPM - packages to be installed |
| 153 | # INSTALL_PACKAGES_ATTEMPTONLY_RPM - packages attemped to be installed only | 161 | # INSTALL_PACKAGES_ATTEMPTONLY_RPM - packages attemped to be installed only |
| @@ -158,8 +166,7 @@ resolve_package_rpm () { | |||
| 158 | package_install_internal_rpm () { | 166 | package_install_internal_rpm () { |
| 159 | 167 | ||
| 160 | local target_rootfs="${INSTALL_ROOTFS_RPM}" | 168 | local target_rootfs="${INSTALL_ROOTFS_RPM}" |
| 161 | local platform="${INSTALL_PLATFORM_RPM}" | 169 | local platforms="${INSTALL_PLATFORM_RPM}" |
| 162 | local platform_extra="${INSTALL_PLATFORM_EXTRA_RPM}" | ||
| 163 | local confbase="${INSTALL_CONFBASE_RPM}" | 170 | local confbase="${INSTALL_CONFBASE_RPM}" |
| 164 | local package_to_install="${INSTALL_PACKAGES_NORMAL_RPM}" | 171 | local package_to_install="${INSTALL_PACKAGES_NORMAL_RPM}" |
| 165 | local package_attemptonly="${INSTALL_PACKAGES_ATTEMPTONLY_RPM}" | 172 | local package_attemptonly="${INSTALL_PACKAGES_ATTEMPTONLY_RPM}" |
| @@ -169,9 +176,8 @@ package_install_internal_rpm () { | |||
| 169 | 176 | ||
| 170 | # Setup base system configuration | 177 | # Setup base system configuration |
| 171 | mkdir -p ${target_rootfs}/etc/rpm/ | 178 | mkdir -p ${target_rootfs}/etc/rpm/ |
| 172 | echo "${platform}-unknown-linux" >${target_rootfs}/etc/rpm/platform | 179 | if [ ! -z "$platforms" ]; then |
| 173 | if [ ! -z "$platform_extra" ]; then | 180 | for pt in $platforms ; do |
| 174 | for pt in $platform_extra ; do | ||
| 175 | echo "$pt-unknown-linux" >> ${target_rootfs}/etc/rpm/platform | 181 | echo "$pt-unknown-linux" >> ${target_rootfs}/etc/rpm/platform |
| 176 | done | 182 | done |
| 177 | fi | 183 | fi |
diff --git a/meta/classes/populate_sdk_rpm.bbclass b/meta/classes/populate_sdk_rpm.bbclass index e1abbad17b..d1797806e2 100644 --- a/meta/classes/populate_sdk_rpm.bbclass +++ b/meta/classes/populate_sdk_rpm.bbclass | |||
| @@ -33,8 +33,7 @@ fakeroot populate_sdk_rpm () { | |||
| 33 | 33 | ||
| 34 | #install target | 34 | #install target |
| 35 | export INSTALL_ROOTFS_RPM="${SDK_OUTPUT}/${SDKTARGETSYSROOT}" | 35 | export INSTALL_ROOTFS_RPM="${SDK_OUTPUT}/${SDKTARGETSYSROOT}" |
| 36 | export INSTALL_PLATFORM_RPM="${TARGET_ARCH}" | 36 | export INSTALL_PLATFORM_RPM="${PACKAGE_ARCHS}" |
| 37 | export INSTALL_PLATFORM_EXTRA_RPM="${PACKAGE_ARCHS}" | ||
| 38 | export INSTALL_CONFBASE_RPM="${RPMCONF_TARGET_BASE}" | 37 | export INSTALL_CONFBASE_RPM="${RPMCONF_TARGET_BASE}" |
| 39 | export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_TARGET_TASK}" | 38 | export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_TARGET_TASK}" |
| 40 | 39 | ||
| @@ -46,7 +45,6 @@ fakeroot populate_sdk_rpm () { | |||
| 46 | export INSTALL_PLATFORM_RPM="${SDK_ARCH}" | 45 | export INSTALL_PLATFORM_RPM="${SDK_ARCH}" |
| 47 | export INSTALL_CONFBASE_RPM="${RPMCONF_HOST_BASE}" | 46 | export INSTALL_CONFBASE_RPM="${RPMCONF_HOST_BASE}" |
| 48 | export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_HOST_TASK}" | 47 | export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_HOST_TASK}" |
| 49 | INSTALL_PLATFORM_EXTRA_RPM="" | ||
| 50 | for arch in ${PACKAGE_ARCHS}; do | 48 | for arch in ${PACKAGE_ARCHS}; do |
| 51 | sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` | 49 | sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` |
| 52 | extension="-nativesdk" | 50 | extension="-nativesdk" |
| @@ -54,10 +52,9 @@ fakeroot populate_sdk_rpm () { | |||
| 54 | extension="" | 52 | extension="" |
| 55 | fi | 53 | fi |
| 56 | if [ -e ${DEPLOY_DIR_RPM}/$sdkarch$extension ]; then | 54 | if [ -e ${DEPLOY_DIR_RPM}/$sdkarch$extension ]; then |
| 57 | INSTALL_PLATFORM_EXTRA_RPM="$INSTALL_PLATFORM_EXTRA_RPM $sdkarch" | 55 | INSTALL_PLATFORM_RPM="$INSTALL_PLATFORM_RPM $sdkarch" |
| 58 | fi | 56 | fi |
| 59 | done | 57 | done |
| 60 | export INSTALL_PLATFORM_EXTRA_RPM | ||
| 61 | 58 | ||
| 62 | package_install_internal_rpm | 59 | package_install_internal_rpm |
| 63 | populate_sdk_post_rpm ${INSTALL_ROOTFS_RPM} | 60 | populate_sdk_post_rpm ${INSTALL_ROOTFS_RPM} |
diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass index 6fe11f77e4..a722e68ae1 100644 --- a/meta/classes/rootfs_rpm.bbclass +++ b/meta/classes/rootfs_rpm.bbclass | |||
| @@ -48,8 +48,6 @@ fakeroot rootfs_rpm_do_rootfs () { | |||
| 48 | 48 | ||
| 49 | #install pacakges | 49 | #install pacakges |
| 50 | export INSTALL_ROOTFS_RPM="${IMAGE_ROOTFS}" | 50 | export INSTALL_ROOTFS_RPM="${IMAGE_ROOTFS}" |
| 51 | export INSTALL_PLATFORM_RPM="${TARGET_ARCH}" | ||
| 52 | export INSTALL_PLATFORM_EXTRA_RPM="${PACKAGE_ARCHS}" | ||
| 53 | export INSTALL_CONFBASE_RPM="${RPMCONF_TARGET_BASE}" | 51 | export INSTALL_CONFBASE_RPM="${RPMCONF_TARGET_BASE}" |
| 54 | export INSTALL_PACKAGES_NORMAL_RPM="${PACKAGE_INSTALL}" | 52 | export INSTALL_PACKAGES_NORMAL_RPM="${PACKAGE_INSTALL}" |
| 55 | export INSTALL_PACKAGES_ATTEMPTONLY_RPM="${PACKAGE_INSTALL_ATTEMPTONLY}" | 53 | export INSTALL_PACKAGES_ATTEMPTONLY_RPM="${PACKAGE_INSTALL_ATTEMPTONLY}" |
| @@ -57,6 +55,13 @@ fakeroot rootfs_rpm_do_rootfs () { | |||
| 57 | export INSTALL_PROVIDENAME_RPM="" | 55 | export INSTALL_PROVIDENAME_RPM="" |
| 58 | export INSTALL_TASK_RPM="populate_sdk" | 56 | export INSTALL_TASK_RPM="populate_sdk" |
| 59 | 57 | ||
| 58 | # List must be prefered to least preferred order | ||
| 59 | INSTALL_PLATFORM_RPM="" | ||
| 60 | for each_arch in ${PACKAGE_ARCHS} ; do | ||
| 61 | INSTALL_PLATFORM_RPM="$each_arch $INSTALL_PLATFORM_RPM" | ||
| 62 | done | ||
| 63 | export INSTALL_PLATFORM_RPM | ||
| 64 | |||
| 60 | package_install_internal_rpm | 65 | package_install_internal_rpm |
| 61 | 66 | ||
| 62 | export D=${IMAGE_ROOTFS} | 67 | export D=${IMAGE_ROOTFS} |
