]> code.ossystems Code Review - openembedded-core.git/commitdiff
Remove manifest code from base.bbclass, fixing the error shown by the puzzles .bb...
authorRichard Purdie <richard@openedhand.com>
Fri, 26 May 2006 11:27:03 +0000 (11:27 +0000)
committerRichard Purdie <richard@openedhand.com>
Fri, 26 May 2006 11:27:03 +0000 (11:27 +0000)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@425 311d38ba-8fff-0310-9ca6-ca027cbcb966

openembedded/classes/base.bbclass
openembedded/classes/manifest.bbclass [new file with mode: 0644]

index 5f0e0d2fcef968305d9362a19e3f77786655095c..1b31d43450206f5cffbb599cc2b92766a1bbb6c9 100644 (file)
@@ -579,23 +579,10 @@ do_populate_staging[dirs] = "${STAGING_DIR}/${TARGET_SYS}/bin ${STAGING_DIR}/${T
 
 addtask populate_staging after do_compile
 
-#python do_populate_staging () {
-#      if not bb.data.getVar('manifest', d):
-#              bb.build.exec_func('do_emit_manifest', d)
-#      if bb.data.getVar('do_stage', d):
-#              bb.build.exec_func('do_stage', d)
-#      else:
-#              bb.build.exec_func('manifest_do_populate_staging', d)
-#}
-
 python do_populate_staging () {
-       if bb.data.getVar('manifest_do_populate_staging', d):
-               bb.build.exec_func('manifest_do_populate_staging', d)
-       else:
-               bb.build.exec_func('do_stage', d)
+       bb.build.exec_func('do_stage', d)
 }
 
-#addtask install
 addtask install after do_compile
 do_install[dirs] = "${S} ${B}"
 
@@ -603,14 +590,6 @@ base_do_install() {
        :
 }
 
-#addtask populate_pkgs after do_compile
-#python do_populate_pkgs () {
-#      if not bb.data.getVar('manifest', d):
-#              bb.build.exec_func('do_emit_manifest', d)
-#      bb.build.exec_func('manifest_do_populate_pkgs', d)
-#      bb.build.exec_func('package_do_shlibs', d)
-#}
-
 base_do_package() {
        :
 }
@@ -625,38 +604,6 @@ do_build[func] = "1"
 SHLIBS = ""
 RDEPENDS_prepend = " ${SHLIBS}"
 
-python read_manifest () {
-       import sys
-       mfn = bb.data.getVar("MANIFEST", d, 1)
-       if os.access(mfn, os.R_OK):
-               # we have a manifest, so emit do_stage and do_populate_pkgs,
-               # and stuff some additional bits of data into the metadata store
-               mfile = file(mfn, "r")
-               manifest = bb.manifest.parse(mfile, d)
-               if not manifest:
-                       return
-
-               bb.data.setVar('manifest', manifest, d)
-}
-
-python parse_manifest () {
-               manifest = bb.data.getVar("manifest", d)
-               if not manifest:
-                       return
-               for func in ("do_populate_staging", "do_populate_pkgs"):
-                       value = bb.manifest.emit(func, manifest, d)
-                       if value:
-                               bb.data.setVar("manifest_" + func, value, d)
-                               bb.data.delVarFlag("manifest_" + func, "python", d)
-                               bb.data.delVarFlag("manifest_" + func, "fakeroot", d)
-                               bb.data.setVarFlag("manifest_" + func, "func", 1, d)
-               packages = []
-               for l in manifest:
-                       if "pkg" in l and l["pkg"] is not None:
-                               packages.append(l["pkg"])
-               bb.data.setVar("PACKAGES", " ".join(packages), d)
-}
-
 def explode_deps(s):
        r = []
        l = s.split()
@@ -740,15 +687,6 @@ python __anonymous () {
        use_nls = bb.data.getVar('USE_NLS_%s' % pn, d, 1)
        if use_nls != None:
                bb.data.setVar('USE_NLS', use_nls, d)
-
-       try:
-               bb.build.exec_func('read_manifest', d)
-               bb.build.exec_func('parse_manifest', d)
-       except exceptions.KeyboardInterrupt:
-               raise
-       except Exception, e:
-               bb.error("anonymous function: %s" % e)
-               pass
 }
 
 python () {
@@ -772,26 +710,6 @@ python () {
                                return
 }
 
-
-addtask emit_manifest
-python do_emit_manifest () {
-#      FIXME: emit a manifest here
-#      1) adjust PATH to hit the wrapper scripts
-       wrappers = bb.which(bb.data.getVar("BBPATH", d, 1), 'build/install', 0)
-       path = (bb.data.getVar('PATH', d, 1) or '').split(':')
-       path.insert(0, os.path.dirname(wrappers))
-       bb.data.setVar('PATH', ':'.join(path), d)
-#      2) exec_func("do_install", d)
-       bb.build.exec_func('do_install', d)
-#      3) read in data collected by the wrappers
-       bb.build.exec_func('read_manifest', d)
-#      4) mangle the manifest we just generated, get paths back into
-#         our variable form
-#      5) write it back out
-#      6) re-parse it to ensure the generated functions are proper
-       bb.build.exec_func('parse_manifest', d)
-}
-
 EXPORT_FUNCTIONS do_clean do_mrproper do_fetch do_unpack do_configure do_compile do_install do_package do_patch do_populate_pkgs do_stage
 
 MIRRORS[func] = "0"
diff --git a/openembedded/classes/manifest.bbclass b/openembedded/classes/manifest.bbclass
new file mode 100644 (file)
index 0000000..687f4b7
--- /dev/null
@@ -0,0 +1,80 @@
+
+python read_manifest () {
+       import sys, bb.manifest
+       mfn = bb.data.getVar("MANIFEST", d, 1)
+       if os.access(mfn, os.R_OK):
+               # we have a manifest, so emit do_stage and do_populate_pkgs,
+               # and stuff some additional bits of data into the metadata store
+               mfile = file(mfn, "r")
+               manifest = bb.manifest.parse(mfile, d)
+               if not manifest:
+                       return
+
+               bb.data.setVar('manifest', manifest, d)
+}
+
+python parse_manifest () {
+               manifest = bb.data.getVar("manifest", d)
+               if not manifest:
+                       return
+               for func in ("do_populate_staging", "do_populate_pkgs"):
+                       value = bb.manifest.emit(func, manifest, d)
+                       if value:
+                               bb.data.setVar("manifest_" + func, value, d)
+                               bb.data.delVarFlag("manifest_" + func, "python", d)
+                               bb.data.delVarFlag("manifest_" + func, "fakeroot", d)
+                               bb.data.setVarFlag("manifest_" + func, "func", 1, d)
+               packages = []
+               for l in manifest:
+                       if "pkg" in l and l["pkg"] is not None:
+                               packages.append(l["pkg"])
+               bb.data.setVar("PACKAGES", " ".join(packages), d)
+}
+
+python __anonymous () {
+       try:
+               bb.build.exec_func('read_manifest', d)
+               bb.build.exec_func('parse_manifest', d)
+       except exceptions.KeyboardInterrupt:
+               raise
+       except Exception, e:
+               bb.error("anonymous function: %s" % e)
+               pass
+}
+
+#python do_populate_staging () {
+#      if not bb.data.getVar('manifest', d):
+#              bb.build.exec_func('do_emit_manifest', d)
+#      if bb.data.getVar('do_stage', d):
+#              bb.build.exec_func('do_stage', d)
+#      else:
+#              bb.build.exec_func('manifest_do_populate_staging', d)
+#}
+
+#addtask populate_pkgs after do_compile
+#python do_populate_pkgs () {
+#      if not bb.data.getVar('manifest', d):
+#              bb.build.exec_func('do_emit_manifest', d)
+#      bb.build.exec_func('manifest_do_populate_pkgs', d)
+#      bb.build.exec_func('package_do_shlibs', d)
+#}
+
+addtask emit_manifest
+python do_emit_manifest () {
+#      FIXME: emit a manifest here
+#      1) adjust PATH to hit the wrapper scripts
+       wrappers = bb.which(bb.data.getVar("BBPATH", d, 1), 'build/install', 0)
+       path = (bb.data.getVar('PATH', d, 1) or '').split(':')
+       path.insert(0, os.path.dirname(wrappers))
+       bb.data.setVar('PATH', ':'.join(path), d)
+#      2) exec_func("do_install", d)
+       bb.build.exec_func('do_install', d)
+#      3) read in data collected by the wrappers
+       print("Got here2 213")
+       bb.build.exec_func('read_manifest', d)
+#      4) mangle the manifest we just generated, get paths back into
+#         our variable form
+#      5) write it back out
+#      6) re-parse it to ensure the generated functions are proper
+       bb.build.exec_func('parse_manifest', d)
+}