* Latest kernel sources included symbolic links that were broken and caused the
  tar command to fail.
* In certain circumstances broken symbolic links are valid and should be
  packaged up.
* However, any patch located in the "patches" directory should be dereference
* since the original file is located in the recipe's WORKDIR.
* Therefore, the sym link will be broken when accessed on a different computer.
* By using the dereference option with the cp command the patches directory can
  be dereferenced.

Signed-off-by: Franklin S. Cooper Jr <[email protected]>
---
 meta-arago-distro/classes/sourceipk.bbclass |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/meta-arago-distro/classes/sourceipk.bbclass 
b/meta-arago-distro/classes/sourceipk.bbclass
index 1ea0577..3086670 100644
--- a/meta-arago-distro/classes/sourceipk.bbclass
+++ b/meta-arago-distro/classes/sourceipk.bbclass
@@ -166,8 +166,18 @@ sourceipk_do_create_srcipk() {
             cp ${FILE} $tmp_dir/${SRCIPK_INSTALL_DIR}/
         fi
 
+        # Dereference symbolic links to patches that are stored in patches 
directory
+        if [ -d "$tmp_dir/${SRCIPK_INSTALL_DIR}/patches" ]
+        then
+
+            mv $tmp_dir/${SRCIPK_INSTALL_DIR}/patches 
$tmp_dir/${SRCIPK_INSTALL_DIR}/patches_bak
+            cp -rL $tmp_dir/${SRCIPK_INSTALL_DIR}/patches_bak 
$tmp_dir/${SRCIPK_INSTALL_DIR}/patches
+            rm -rf $tmp_dir/${SRCIPK_INSTALL_DIR}/patches_bak
+        fi
+
+
         #Write the data tarball
-        tar -C $tmp_dir --owner=0 --group=0 -chzf $srcipk_dir/data.tar.gz .
+        tar -C $tmp_dir --owner=0 --group=0 -czf $srcipk_dir/data.tar.gz .
 
         # Create the debian-binary file
         echo "2.0" > $srcipk_dir/debian-binary
-- 
1.7.0.4

_______________________________________________
meta-arago mailing list
[email protected]
http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago

Reply via email to