* [PATCH 0/2] Fix TMPDIR usage in scripts
@ 2011-09-28 9:26 Paul Eggleton
2011-09-28 9:26 ` [PATCH 1/2] scripts: use OE_TMPDIR instead of TMPDIR external variable Paul Eggleton
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Paul Eggleton @ 2011-09-28 9:26 UTC (permalink / raw)
To: openembedded-core
Fix TMPDIR external environment variable usage within our scripts which
is a problem on OpenSUSE within an X session (see Yocto bug #1530) by
using OE_TMPDIR from the external environment instead.
Note that this will require changes to autobuilder scripts that use a
TMPDIR environment variable when calling these scripts - they should now
set OE_TMPDIR instead (if versions with and without this change need to
be run on the same system, then setting both variables will cause no
harm).
The following changes since commit 684a4b517d13884c315688967fadd5e6a4845b71:
libffi: really populate -dev package (2011-09-26 20:50:27 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib paule/scripts-tmpdir
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/scripts-tmpdir
Paul Eggleton (2):
scripts: use OE_TMPDIR instead of TMPDIR external variable
scripts/oe-setup-rpmrepo: use setup_tmpdir from runqemu
scripts/oe-setup-rpmrepo | 35 +++++++++++++++++++++--------------
scripts/runqemu | 7 ++++++-
2 files changed, 27 insertions(+), 15 deletions(-)
--
1.7.4.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] scripts: use OE_TMPDIR instead of TMPDIR external variable
2011-09-28 9:26 [PATCH 0/2] Fix TMPDIR usage in scripts Paul Eggleton
@ 2011-09-28 9:26 ` Paul Eggleton
2011-09-28 9:26 ` [PATCH 2/2] scripts/oe-setup-rpmrepo: use setup_tmpdir from runqemu Paul Eggleton
2011-09-28 11:09 ` [PATCH 0/2] Fix TMPDIR usage in scripts Richard Purdie
2 siblings, 0 replies; 6+ messages in thread
From: Paul Eggleton @ 2011-09-28 9:26 UTC (permalink / raw)
To: openembedded-core
On OpenSUSE within an X session, TMPDIR is set to the system temporary
directory (/tmp) which is incorrect for these scripts. Thus, change
runqemu and oe-setup-rpmrepo to use OE_TMPDIR from the external
environment rather than TMPDIR.
Fixes [YOCTO #1530]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
scripts/oe-setup-rpmrepo | 8 +++++++-
scripts/runqemu | 7 ++++++-
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/scripts/oe-setup-rpmrepo b/scripts/oe-setup-rpmrepo
index 03372b6..fc2f7a8 100755
--- a/scripts/oe-setup-rpmrepo
+++ b/scripts/oe-setup-rpmrepo
@@ -17,9 +17,15 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+# Don't use TMPDIR from the external environment, it may be a distro
+# variable pointing to /tmp (e.g. within X on OpenSUSE)
+# Instead, use OE_TMPDIR for passing this in externally.
+TMPDIR="$OE_TMPDIR"
+
function usage() {
echo "Usage: $0 <rpm-dir>"
- echo " <rpm-dir>: default is $TPMDIR/deploy/rpm"
+ echo " <rpm-dir>: default is $TMPDIR/deploy/rpm"
}
if [ $# -gt 1 ]; then
diff --git a/scripts/runqemu b/scripts/runqemu
index 0f943b5..31e9822 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -55,6 +55,11 @@ SCRIPT_QEMU_OPT=""
SCRIPT_QEMU_EXTRA_OPT=""
SCRIPT_KERNEL_OPT=""
+# Don't use TMPDIR from the external environment, it may be a distro
+# variable pointing to /tmp (e.g. within X on OpenSUSE)
+# Instead, use OE_TMPDIR for passing this in externally.
+TMPDIR="$OE_TMPDIR"
+
# Determine whether the file is a kernel or QEMU image, and set the
# appropriate variables
process_filename() {
@@ -260,7 +265,7 @@ SPITZ_DEFAULT_FSTYPE=ext3
setup_tmpdir() {
if [ -z "$TMPDIR" ]; then
- # BUILDDIR unset, try and get TMPDIR from bitbake
+ # Try to get TMPDIR from bitbake
type -P bitbake &>/dev/null || {
echo "In order for this script to dynamically infer paths";
echo "to kernels or filesystem images, you either need";
--
1.7.4.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/2] scripts/oe-setup-rpmrepo: use setup_tmpdir from runqemu
2011-09-28 9:26 [PATCH 0/2] Fix TMPDIR usage in scripts Paul Eggleton
2011-09-28 9:26 ` [PATCH 1/2] scripts: use OE_TMPDIR instead of TMPDIR external variable Paul Eggleton
@ 2011-09-28 9:26 ` Paul Eggleton
2011-09-28 11:09 ` [PATCH 0/2] Fix TMPDIR usage in scripts Richard Purdie
2 siblings, 0 replies; 6+ messages in thread
From: Paul Eggleton @ 2011-09-28 9:26 UTC (permalink / raw)
To: openembedded-core
Update the internal copy of setup_tmpdir in the oe-setup-rpmrepo script
to be the same as the one in the runqemu script.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
scripts/oe-setup-rpmrepo | 27 ++++++++++++++-------------
1 files changed, 14 insertions(+), 13 deletions(-)
diff --git a/scripts/oe-setup-rpmrepo b/scripts/oe-setup-rpmrepo
index fc2f7a8..ea885f6 100755
--- a/scripts/oe-setup-rpmrepo
+++ b/scripts/oe-setup-rpmrepo
@@ -35,19 +35,20 @@ fi
setup_tmpdir() {
if [ -z "$TMPDIR" ]; then
- if [ "x$BUILDDIR" = "x" -o ! -d "$BUILDDIR/tmp" ]; then
- # BUILDDIR unset, try and get TMPDIR from bitbake
- type -P bitbake &>/dev/null || {
- echo "In order for this script to dynamically infer paths";
- echo "to kernels or filesystem images, you either need";
- echo "bitbake in your PATH or to source oe-init-build-env";
- echo "before running this script" >&2;
- exit 1; }
-
- # We have bitbake in PATH, get TMPDIR from bitbake
- TMPDIR=`bitbake -e | grep TMPDIR=\" | cut -d '=' -f2 | cut -d '"' -f2`
- else
- TMPDIR=$BUILDDIR/tmp
+ # Try to get TMPDIR from bitbake
+ type -P bitbake &>/dev/null || {
+ echo "In order for this script to dynamically infer paths";
+ echo "to kernels or filesystem images, you either need";
+ echo "bitbake in your PATH or to source oe-init-build-env";
+ echo "before running this script" >&2;
+ exit 1; }
+
+ # We have bitbake in PATH, get TMPDIR from bitbake
+ TMPDIR=`bitbake -e | grep ^TMPDIR=\" | cut -d '=' -f2 | cut -d '"' -f2`
+ if [ -z "$TMPDIR" ]; then
+ echo "Error: this script needs to be run from your build directory,"
+ echo "or you need to explicitly set TMPDIR in your environment"
+ exit 1
fi
fi
}
--
1.7.4.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] Fix TMPDIR usage in scripts
2011-09-28 9:26 [PATCH 0/2] Fix TMPDIR usage in scripts Paul Eggleton
2011-09-28 9:26 ` [PATCH 1/2] scripts: use OE_TMPDIR instead of TMPDIR external variable Paul Eggleton
2011-09-28 9:26 ` [PATCH 2/2] scripts/oe-setup-rpmrepo: use setup_tmpdir from runqemu Paul Eggleton
@ 2011-09-28 11:09 ` Richard Purdie
2011-09-28 11:25 ` Paul Eggleton
2 siblings, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2011-09-28 11:09 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Wed, 2011-09-28 at 10:26 +0100, Paul Eggleton wrote:
> Fix TMPDIR external environment variable usage within our scripts which
> is a problem on OpenSUSE within an X session (see Yocto bug #1530) by
> using OE_TMPDIR from the external environment instead.
>
> Note that this will require changes to autobuilder scripts that use a
> TMPDIR environment variable when calling these scripts - they should now
> set OE_TMPDIR instead (if versions with and without this change need to
> be run on the same system, then setting both variables will cause no
> harm).
At the very least we need to fix the references in
scripts/qemuimage-testlib so the automated image testing doesn't break.
Cheers,
Richard
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] Fix TMPDIR usage in scripts
2011-09-28 11:09 ` [PATCH 0/2] Fix TMPDIR usage in scripts Richard Purdie
@ 2011-09-28 11:25 ` Paul Eggleton
2011-09-28 11:38 ` Richard Purdie
0 siblings, 1 reply; 6+ messages in thread
From: Paul Eggleton @ 2011-09-28 11:25 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Wednesday 28 September 2011 12:09:57 Richard Purdie wrote:
> At the very least we need to fix the references in
> scripts/qemuimage-testlib so the automated image testing doesn't break.
OK, v2 on its way. The scripts that call qemuimage-testlib will still need to
be updated to set OE_TMPDIR though.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] Fix TMPDIR usage in scripts
2011-09-28 11:25 ` Paul Eggleton
@ 2011-09-28 11:38 ` Richard Purdie
0 siblings, 0 replies; 6+ messages in thread
From: Richard Purdie @ 2011-09-28 11:38 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Wed, 2011-09-28 at 12:25 +0100, Paul Eggleton wrote:
> On Wednesday 28 September 2011 12:09:57 Richard Purdie wrote:
> > At the very least we need to fix the references in
> > scripts/qemuimage-testlib so the automated image testing doesn't break.
>
> OK, v2 on its way. The scripts that call qemuimage-testlib will still need to
> be updated to set OE_TMPDIR though.
The "script" is "meta/classes/imagetest-qemu.bbclass" and you could even
test this by setting IMAGETEST = "qemu" in local.conf and then "bitbake
core-image-minimal" ;-).
Also, why can't scripts/qemuimage-testlib just do OE_TMPDIR=${TMPDIR} ?
Cheers,
Richard
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-09-28 11:43 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-28 9:26 [PATCH 0/2] Fix TMPDIR usage in scripts Paul Eggleton
2011-09-28 9:26 ` [PATCH 1/2] scripts: use OE_TMPDIR instead of TMPDIR external variable Paul Eggleton
2011-09-28 9:26 ` [PATCH 2/2] scripts/oe-setup-rpmrepo: use setup_tmpdir from runqemu Paul Eggleton
2011-09-28 11:09 ` [PATCH 0/2] Fix TMPDIR usage in scripts Richard Purdie
2011-09-28 11:25 ` Paul Eggleton
2011-09-28 11:38 ` Richard Purdie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox