kernel, license, sstate, rootfs.py: Remove deploy directory README
PATCH 1/1 kernel, license, sstate, rootfs.py: Remove deploy directory README
It isn't clear that the README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt file in the deploy directory warrants the complexity it brings elsewhere. Let's just remove it entirely.
In particular, if two do_image_complete tasks run in parallel they risk both trying to put their image into ${DEPLOY_DIR_IMAGE} at the same time. Both will contain a README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt file. In theory this should be safe because "cp -alf" will just cause one to overwrite the other. Unfortunately, coreutils cp also has a race[1] which means that if one copy creates the file at just the wrong point the other will fail with:
cp: cannot create hard link ‘..../tmp-glibc/deploy/images/pantera/README_-_DO_NOT_DELETE_FILES_IN_THIS_D.txt’ to
+‘..../tmp-glibc/work/rage_against-oe-linux-gnueabi/my-own-image/1.0-r0/deploy-my-own-image-complete/README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt’: File exists
[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25680
--- meta/classes/kernel.bbclass | 2 -- meta/classes/license.bbclass | 2 +- meta/classes/sstate.bbclass | 2 -- meta/files/deploydir_readme.txt | 8 -------- meta/lib/oe/rootfs.py | 4 ---- 5 files changed, 1 insertion(+), 17 deletions(-) delete mode 100644 meta/files/deploydir_readme.txt
meta/classes/kernel.bbclass +0 -2
@@ -608,8 +608,6 @@ kernel_do_deploy() { ln -sf ${base_name}.bin ${DEPLOYDIR}/${type} done - cp ${COREBASE}/meta/files/deploydir_readme.txt ${DEPLOYDIR}/README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt - cd ${B} # Update deploy directory for type in ${KERNEL_IMAGETYPES} ; do
meta/classes/license.bbclass +1 -1
@@ -279,7 +279,7 @@ def get_deployed_files(man_file): """ dep_files = [] - excluded_files = ["README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt"] + excluded_files = [] with open(man_file, "r") as manifest: all_files = manifest.read() for f in all_files.splitlines():
meta/classes/sstate.bbclass +0 -2
@@ -30,8 +30,6 @@ SSTATE_DUPWHITELIST = "${DEPLOY_DIR_IMAGE}/ ${DEPLOY_DIR}/licenses/ ${DEPLOY_DIR SSTATE_DUPWHITELIST += "${STAGING_ETCDIR_NATIVE}/sgml ${STAGING_DATADIR_NATIVE}/sgml" # Archive the sources for many architectures in one deploy folder SSTATE_DUPWHITELIST += "${DEPLOY_DIR_SRC}" -# Ignore overlapping README -SSTATE_DUPWHITELIST += "${DEPLOY_DIR}/sdk/README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt" SSTATE_SCAN_FILES ?= "*.la *-config *_config" SSTATE_SCAN_CMD ??= 'find ${SSTATE_BUILDDIR} \( -name "${@"\" -o -name \"".join(d.getVar("SSTATE_SCAN_FILES").split())}" \) -type f'
meta/files/deploydir_readme.txt deleted +0 -8
@@ -1,8 +0,0 @@ -Files in the deploy directory will not be re-created automatically if you -delete them. If you do delete a file, you will need to run: - - bitbake -c clean TARGET - bitbake TARGET - -where TARGET is the name of the appropriate package or target e.g. -"virtual/kernel" for the kernel, an image, etc.
meta/lib/oe/rootfs.py +0 -4
@@ -189,10 +189,6 @@ class Rootfs(object, metaclass=ABCMeta): shutil.copytree(postinst_intercepts_dir, intercepts_dir) - shutil.copy(self.d.expand("${COREBASE}/meta/files/deploydir_readme.txt"), - self.deploydir + - "/README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt") - execute_pre_post_process(self.d, pre_process_cmds) if self.progress_reporter:
Signature · 1 line
2.12.0.rc0