[oe-commits] Laurentiu Palcu : populate_sdk_base: fix directory creation as normal user
git at git.openembedded.org
git at git.openembedded.org
Wed Dec 5 15:29:16 UTC 2012
Module: openembedded-core.git
Branch: master
Commit: 86286287d0134ade73f6a282158dde86bf0159e8
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=86286287d0134ade73f6a282158dde86bf0159e8
Author: Laurentiu Palcu <laurentiu.palcu at intel.com>
Date: Wed Dec 5 13:00:00 2012 +0200
populate_sdk_base: fix directory creation as normal user
My previous patch removed the mkdir and added it at the end of the
"gaining SUDO rights" block in order to fix directory creation when
installing in a location without proper rights. Unfortunately this
messed up the directory creation as normal user as it will ask for
sudo right in order to create it...
Hopefully, this will fix both cases.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu at intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/populate_sdk_base.bbclass | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index f0b88b3..c15a4d4 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -187,6 +187,9 @@ if [ "$answer" != "Y" -a "$answer" != "y" ]; then
exit 1
fi
+# Try to create the directory (this will not succeed if user doesn't have rights)
+mkdir -p $target_sdk_dir >/dev/null 2>&1
+
# if don't have the right to access dir, gain by sudo
if [ ! -x $target_sdk_dir -o ! -w $target_sdk_dir -o ! -r $target_sdk_dir ]; then
SUDO_EXEC=$(which "sudo")
@@ -198,10 +201,10 @@ if [ ! -x $target_sdk_dir -o ! -w $target_sdk_dir -o ! -r $target_sdk_dir ]; the
# test sudo could gain root right
$SUDO_EXEC pwd >/dev/null 2>&1
[ $? -ne 0 ] && echo "Sorry, you are not allowed to execute as root." && exit 1
-fi
-# create dir and don't care about the result.
-$SUDO_EXEC mkdir -p $target_sdk_dir >/dev/null 2>&1
+ # now that we have sudo rights, create the directory
+ $SUDO_EXEC mkdir -p $target_sdk_dir >/dev/null 2>&1
+fi
payload_offset=$(($(grep -na -m1 "^MARKER:$" $0|cut -d':' -f1) + 1))
More information about the Openembedded-commits
mailing list