diff options
| author | Richard Purdie <richard@openedhand.com> | 2007-04-03 11:31:02 +0000 |
|---|---|---|
| committer | Richard Purdie <richard@openedhand.com> | 2007-04-03 11:31:02 +0000 |
| commit | 409335beaede58ed792030f9da0fcea39f32f1c7 (patch) | |
| tree | 2d25f86c2c48caef8a9ef8f301b423ae7b0ee81e | |
| parent | bd0ca262c95d28dc45305efbc03e53607e9c9a0a (diff) | |
| download | poky-409335beaede58ed792030f9da0fcea39f32f1c7.tar.gz | |
classes: Rework core dependencies to work properly at the task level
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1427 311d38ba-8fff-0310-9ca6-ca027cbcb966
| -rw-r--r-- | meta/classes/base.bbclass | 6 | ||||
| -rw-r--r-- | meta/classes/image.bbclass | 22 | ||||
| -rw-r--r-- | meta/classes/insane.bbclass | 2 | ||||
| -rw-r--r-- | meta/classes/package.bbclass | 16 | ||||
| -rw-r--r-- | meta/classes/package_deb.bbclass | 4 | ||||
| -rw-r--r-- | meta/classes/package_ipk.bbclass | 4 | ||||
| -rw-r--r-- | meta/classes/package_tar.bbclass | 2 | ||||
| -rw-r--r-- | meta/classes/patch.bbclass | 2 | ||||
| -rw-r--r-- | meta/classes/rootfs_deb.bbclass | 4 | ||||
| -rw-r--r-- | meta/classes/rootfs_ipk.bbclass | 3 |
10 files changed, 39 insertions, 26 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 3cff42c138..4a1b09b1a4 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass | |||
| @@ -12,12 +12,6 @@ def base_dep_prepend(d): | |||
| 12 | # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command. Whether or not | 12 | # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command. Whether or not |
| 13 | # we need that built is the responsibility of the patch function / class, not | 13 | # we need that built is the responsibility of the patch function / class, not |
| 14 | # the application. | 14 | # the application. |
| 15 | patchdeps = bb.data.getVar("PATCHTOOL", d, 1) | ||
| 16 | if patchdeps: | ||
| 17 | patchdeps = "%s-native" % patchdeps | ||
| 18 | if not patchdeps in bb.data.getVar("PROVIDES", d, 1): | ||
| 19 | deps = patchdeps | ||
| 20 | |||
| 21 | if not bb.data.getVar('INHIBIT_DEFAULT_DEPS', d): | 15 | if not bb.data.getVar('INHIBIT_DEFAULT_DEPS', d): |
| 22 | if (bb.data.getVar('HOST_SYS', d, 1) != | 16 | if (bb.data.getVar('HOST_SYS', d, 1) != |
| 23 | bb.data.getVar('BUILD_SYS', d, 1)): | 17 | bb.data.getVar('BUILD_SYS', d, 1)): |
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index d8c6ccff21..edb04029b2 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass | |||
| @@ -13,19 +13,21 @@ USE_DEVFS ?= "0" | |||
| 13 | 13 | ||
| 14 | PID = "${@os.getpid()}" | 14 | PID = "${@os.getpid()}" |
| 15 | 15 | ||
| 16 | DEPENDS += "makedevs-native" | ||
| 17 | PACKAGE_ARCH = "${MACHINE_ARCH}" | 16 | PACKAGE_ARCH = "${MACHINE_ARCH}" |
| 18 | 17 | ||
| 19 | def get_image_deps(d): | 18 | do_rootfs[depends] += "makedevs-native:do_populate_staging fakeroot-native:do_populate_staging" |
| 20 | import bb | ||
| 21 | str = "" | ||
| 22 | for type in (bb.data.getVar('IMAGE_FSTYPES', d, 1) or "").split(): | ||
| 23 | deps = bb.data.getVar('IMAGE_DEPENDS_%s' % type, d) or "" | ||
| 24 | if deps: | ||
| 25 | str += " %s" % deps | ||
| 26 | return str | ||
| 27 | 19 | ||
| 28 | DEPENDS += "${@get_image_deps(d)}" | 20 | python () { |
| 21 | import bb | ||
| 22 | |||
| 23 | deps = bb.data.getVarFlag('do_rootfs', 'depends', d) or "" | ||
| 24 | for type in (bb.data.getVar('IMAGE_FSTYPES', d, 1) or "").split(): | ||
| 25 | for dep in ((bb.data.getVar('IMAGE_DEPENDS_%s' % type, d) or "").split() or []): | ||
| 26 | deps += " %s:do_populate_staging" % dep | ||
| 27 | for dep in (bb.data.getVar('EXTRA_IMAGEDEPENDS', d, 1) or "").split(): | ||
| 28 | deps += " %s:do_populate_staging" % dep | ||
| 29 | bb.data.setVarFlag('do_rootfs', 'depends', deps, d) | ||
| 30 | } | ||
| 29 | 31 | ||
| 30 | IMAGE_DEVICE_TABLE ?= "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-minimal.txt')}" | 32 | IMAGE_DEVICE_TABLE ?= "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-minimal.txt')}" |
| 31 | IMAGE_POSTPROCESS_COMMAND ?= "" | 33 | IMAGE_POSTPROCESS_COMMAND ?= "" |
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index 4bceaaed82..eef4f72678 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass | |||
| @@ -20,7 +20,7 @@ | |||
| 20 | 20 | ||
| 21 | # We play a special package function | 21 | # We play a special package function |
| 22 | inherit package | 22 | inherit package |
| 23 | PACKAGE_DEPENDS += "pax-utils-native" | 23 | do_package[depends] += "pax-utils-native:do_populate_staging" |
| 24 | PACKAGEFUNCS += " do_package_qa " | 24 | PACKAGEFUNCS += " do_package_qa " |
| 25 | 25 | ||
| 26 | def package_qa_check_rpath(file,name,d): | 26 | def package_qa_check_rpath(file,name,d): |
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 21fe94e94e..0919f302b9 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
| @@ -116,8 +116,18 @@ def do_split_packages(d, root, file_regex, output_pattern, description, postinst | |||
| 116 | 116 | ||
| 117 | bb.data.setVar('PACKAGES', ' '.join(packages), d) | 117 | bb.data.setVar('PACKAGES', ' '.join(packages), d) |
| 118 | 118 | ||
| 119 | PACKAGE_DEPENDS ?= "file-native fakeroot-native" | 119 | do_package[depends] = "file-native:do_populate_staging" |
| 120 | DEPENDS_prepend =+ "${PACKAGE_DEPENDS} " | 120 | |
| 121 | python () { | ||
| 122 | import bb | ||
| 123 | |||
| 124 | if bb.data.getVar('PACKAGES', d, 1) != '': | ||
| 125 | deps = bb.data.getVarFlag('do_package_write', 'depends', d) or "" | ||
| 126 | for dep in (bb.data.getVar('PACKAGE_EXTRA_DEPENDS', d, 1) or "").split(): | ||
| 127 | deps += " %s:do_populate_staging" % dep | ||
| 128 | bb.data.setVarFlag('do_package_write', 'depends', deps, d) | ||
| 129 | } | ||
| 130 | |||
| 121 | # file(1) output to match to consider a file an unstripped executable | 131 | # file(1) output to match to consider a file an unstripped executable |
| 122 | FILE_UNSTRIPPED_MATCH ?= "not stripped" | 132 | FILE_UNSTRIPPED_MATCH ?= "not stripped" |
| 123 | #FIXME: this should be "" when any errors are gone! | 133 | #FIXME: this should be "" when any errors are gone! |
| @@ -126,7 +136,7 @@ IGNORE_STRIP_ERRORS ?= "1" | |||
| 126 | runstrip() { | 136 | runstrip() { |
| 127 | # Function to strip a single file, called from RUNSTRIP in populate_packages below | 137 | # Function to strip a single file, called from RUNSTRIP in populate_packages below |
| 128 | # A working 'file' (one which works on the target architecture) | 138 | # A working 'file' (one which works on the target architecture) |
| 129 | # is necessary for this stuff to work, hence the addition to PACKAGES_DEPENDS | 139 | # is necessary for this stuff to work, hence the addition to do_package[depends] |
| 130 | 140 | ||
| 131 | local ro st | 141 | local ro st |
| 132 | 142 | ||
diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index 18cba66da0..907fbd9ebf 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass | |||
| @@ -1,5 +1,7 @@ | |||
| 1 | inherit package | 1 | inherit package |
| 2 | DEPENDS_prepend="${@["dpkg-native ", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" | 2 | |
| 3 | PACKAGE_EXTRA_DEPENDS += "dpkg-native fakeroot-native" | ||
| 4 | |||
| 3 | BOOTSTRAP_EXTRA_RDEPENDS += "dpkg" | 5 | BOOTSTRAP_EXTRA_RDEPENDS += "dpkg" |
| 4 | DISTRO_EXTRA_RDEPENDS += "dpkg" | 6 | DISTRO_EXTRA_RDEPENDS += "dpkg" |
| 5 | PACKAGE_WRITE_FUNCS += "do_package_deb" | 7 | PACKAGE_WRITE_FUNCS += "do_package_deb" |
diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass index 54fecf6659..334148219b 100644 --- a/meta/classes/package_ipk.bbclass +++ b/meta/classes/package_ipk.bbclass | |||
| @@ -1,5 +1,7 @@ | |||
| 1 | inherit package | 1 | inherit package |
| 2 | DEPENDS_prepend="${@["ipkg-utils-native ", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" | 2 | |
| 3 | PACKAGE_EXTRA_DEPENDS += "ipkg-utils-native fakeroot-native" | ||
| 4 | |||
| 3 | BOOTSTRAP_EXTRA_RDEPENDS += "ipkg-collateral ipkg ipkg-link" | 5 | BOOTSTRAP_EXTRA_RDEPENDS += "ipkg-collateral ipkg ipkg-link" |
| 4 | DISTRO_EXTRA_RDEPENDS += "ipkg-collateral ipkg ipkg-link" | 6 | DISTRO_EXTRA_RDEPENDS += "ipkg-collateral ipkg ipkg-link" |
| 5 | PACKAGE_WRITE_FUNCS += "do_package_ipk" | 7 | PACKAGE_WRITE_FUNCS += "do_package_ipk" |
diff --git a/meta/classes/package_tar.bbclass b/meta/classes/package_tar.bbclass index 81ae0f84a0..17216a86f4 100644 --- a/meta/classes/package_tar.bbclass +++ b/meta/classes/package_tar.bbclass | |||
| @@ -1,5 +1,7 @@ | |||
| 1 | inherit package | 1 | inherit package |
| 2 | 2 | ||
| 3 | PACKAGE_EXTRA_DEPENDS += "tar-native" | ||
| 4 | |||
| 3 | PACKAGE_WRITE_FUNCS += "do_package_tar" | 5 | PACKAGE_WRITE_FUNCS += "do_package_tar" |
| 4 | IMAGE_PKGTYPE ?= "tar" | 6 | IMAGE_PKGTYPE ?= "tar" |
| 5 | 7 | ||
diff --git a/meta/classes/patch.bbclass b/meta/classes/patch.bbclass index e051b0344a..b794f81593 100644 --- a/meta/classes/patch.bbclass +++ b/meta/classes/patch.bbclass | |||
| @@ -391,6 +391,8 @@ def patch_init(d): | |||
| 391 | 391 | ||
| 392 | addtask patch after do_unpack | 392 | addtask patch after do_unpack |
| 393 | do_patch[dirs] = "${WORKDIR}" | 393 | do_patch[dirs] = "${WORKDIR}" |
| 394 | do_patch[depends] = "${PATCHTOOL}-native:do_populate_staging" | ||
| 395 | |||
| 394 | python patch_do_patch() { | 396 | python patch_do_patch() { |
| 395 | import re | 397 | import re |
| 396 | import bb.fetch | 398 | import bb.fetch |
diff --git a/meta/classes/rootfs_deb.bbclass b/meta/classes/rootfs_deb.bbclass index 3cd1d0d04d..3989dc333b 100644 --- a/meta/classes/rootfs_deb.bbclass +++ b/meta/classes/rootfs_deb.bbclass | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | DEPENDS_prepend = "dpkg-native apt-native fakeroot-native " | 1 | |
| 2 | DEPENDS_append = " ${EXTRA_IMAGEDEPENDS}" | 2 | do_rootfs[depends] += "dpkg-native:do_populate_staging apt-native:do_populate_staging" |
| 3 | 3 | ||
| 4 | fakeroot rootfs_deb_do_rootfs () { | 4 | fakeroot rootfs_deb_do_rootfs () { |
| 5 | set +e | 5 | set +e |
diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass index 28296a7e86..0e38579cd4 100644 --- a/meta/classes/rootfs_ipk.bbclass +++ b/meta/classes/rootfs_ipk.bbclass | |||
| @@ -5,8 +5,7 @@ | |||
| 5 | # See image.bbclass for a usage of this. | 5 | # See image.bbclass for a usage of this. |
| 6 | # | 6 | # |
| 7 | 7 | ||
| 8 | DEPENDS_prepend="ipkg-native ipkg-utils-native fakeroot-native " | 8 | do_rootfs[depends] += "ipkg-native:do_populate_staging ipkg-utils-native:do_populate_staging" |
| 9 | DEPENDS_append=" ${EXTRA_IMAGEDEPENDS}" | ||
| 10 | 9 | ||
| 11 | IPKG_ARGS = "-f ${T}/ipkg.conf -o ${IMAGE_ROOTFS}" | 10 | IPKG_ARGS = "-f ${T}/ipkg.conf -o ${IMAGE_ROOTFS}" |
| 12 | 11 | ||
