Hello everyone, Our use case is the following: - We are building firmwares using yocto on machines that have no internet access - We have a mirror that we are feeding with tarballs generated by a machine connected to internet - We want to port our BSP to yocto thud
Until now (we used krogoth) our mirror was operating properly. Since we switched to thud, the build systems is generating tarballs of git repositories (i.e.: gstreamer1.0-plugins-good_1.14.imx.bb, from freescale) containing symbolic links to git submodules (gstreamer common). The issue is that these symbolic links contain an absolute path which is not portable on other machines. We fixed it by patching the yocto framework so it generates a relative symbolic link instead. _We want to be sure is that is the proper way to fix the issue we are facing for our use case_ You will find the patch we used at the end of this mail. Thank you. >From 456bc347c38039006619c0e95831cb4faf4d8c49 Mon Sep 17 00:00:00 2001 From: Philippe GISLARD <[email protected]> Date: Wed, 6 Mar 2019 10:03:43 +0100 Subject: [PATCH] Change the git submodule symbolic link from absolute to relative in order to allow sharing the downloaded packages between different build machines Signed-off-by: Philippe GISLARD <[email protected]> Signed-off-by: Fabien MICAELLI <[email protected]> --- bitbake/lib/bb/fetch2/gitsm.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bitbake/lib/bb/fetch2/gitsm.py b/bitbake/lib/bb/fetch2/gitsm.py index 35729db..009b2af 100644 --- a/bitbake/lib/bb/fetch2/gitsm.py +++ b/bitbake/lib/bb/fetch2/gitsm.py @@ -119,7 +119,7 @@ class GitSM(Git): os.makedirs(os.path.dirname(symlink_path), exist_ok=True) except OSError: pass - os.symlink(local_paths[module], symlink_path) + os.symlink(os.path.relpath(local_paths[module], os.path.dirname(symlink_path)), symlink_path) return True -- 2.7.4 -- Philippe GISLARD -- _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
