diff options
Diffstat (limited to 'meta/classes/package_rpm.bbclass')
-rw-r--r-- | meta/classes/package_rpm.bbclass | 32 |
1 files changed, 19 insertions, 13 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 |