qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] configure: create fsdev/ directory
@ 2013-10-11  9:05 Michael Tokarev
  2013-10-12 12:54 ` Alex Bennée
  2013-10-12 16:28 ` Paolo Bonzini
  0 siblings, 2 replies; 5+ messages in thread
From: Michael Tokarev @ 2013-10-11  9:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-trivial, Michael Tokarev

In some cases when building with parallelism (make -jN),
build fails because the directory where output files are
supposed to be does not exist.  In particular, when make
decides to build virtfs-proxy-helper.1 before other files
in fsdev/, build will fail with the following error:

perl -Ww -- BUILDDIR/scripts/texi2pod.pl BUILDDIR/fsdev/virtfs-proxy-helper.texi fsdev/virtfs-proxy-helper.pod && pod2man --utf8 --section=1 --center=" " --release=" " fsdev/virtfs-proxy-helper.pod > fsdev/virtfs-proxy-helper.1
opening "fsdev/virtfs-proxy-helper.pod": No such file or directory

Create the `fsdev' subdir the same way as other "conditional"
subdirs (eg, dtc or pixman) are created in configure.

Might be better to extract all dirs from $tools and other
common vars and run mkdir on all of these, but this needs
some review/restructuring first.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
---
 configure |    1 +
 1 file changed, 1 insertion(+)

diff --git a/configure b/configure
index 23dbaaf..203084a 100755
--- a/configure
+++ b/configure
@@ -3576,6 +3576,7 @@ if test "$softmmu" = yes ; then
     if test "$cap" = yes && test "$linux" = yes && test "$attr" = yes ; then
       virtfs=yes
       tools="$tools fsdev/virtfs-proxy-helper\$(EXESUF)"
+      mkdir -p fsdev
     else
       if test "$virtfs" = yes; then
         error_exit "VirtFS is supported only on Linux and requires libcap-devel and libattr-devel"
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] configure: create fsdev/ directory
  2013-10-11  9:05 [Qemu-devel] [PATCH] configure: create fsdev/ directory Michael Tokarev
@ 2013-10-12 12:54 ` Alex Bennée
  2013-10-12 16:28 ` Paolo Bonzini
  1 sibling, 0 replies; 5+ messages in thread
From: Alex Bennée @ 2013-10-12 12:54 UTC (permalink / raw)
  To: Michael Tokarev; +Cc: qemu-trivial, qemu-devel


mjt@tls.msk.ru writes:

> In some cases when building with parallelism (make -jN),
> build fails because the directory where output files are
> supposed to be does not exist.  In particular, when make
> decides to build virtfs-proxy-helper.1 before other files
> in fsdev/, build will fail with the following error:
<snip>

Isn't this the sort of think Make dependencies are for?

-- 
Alex Bennée

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] configure: create fsdev/ directory
  2013-10-11  9:05 [Qemu-devel] [PATCH] configure: create fsdev/ directory Michael Tokarev
  2013-10-12 12:54 ` Alex Bennée
@ 2013-10-12 16:28 ` Paolo Bonzini
  2013-10-12 19:05   ` Michael Tokarev
  1 sibling, 1 reply; 5+ messages in thread
From: Paolo Bonzini @ 2013-10-12 16:28 UTC (permalink / raw)
  To: Michael Tokarev; +Cc: qemu-trivial, qemu-devel

Il 11/10/2013 11:05, Michael Tokarev ha scritto:
> In some cases when building with parallelism (make -jN),
> build fails because the directory where output files are
> supposed to be does not exist.  In particular, when make
> decides to build virtfs-proxy-helper.1 before other files
> in fsdev/, build will fail with the following error:
> 
> perl -Ww -- BUILDDIR/scripts/texi2pod.pl BUILDDIR/fsdev/virtfs-proxy-helper.texi fsdev/virtfs-proxy-helper.pod && pod2man --utf8 --section=1 --center=" " --release=" " fsdev/virtfs-proxy-helper.pod > fsdev/virtfs-proxy-helper.1
> opening "fsdev/virtfs-proxy-helper.pod": No such file or directory
> 
> Create the `fsdev' subdir the same way as other "conditional"
> subdirs (eg, dtc or pixman) are created in configure.
> 
> Might be better to extract all dirs from $tools and other
> common vars and run mkdir on all of these, but this needs
> some review/restructuring first.
> 
> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
> ---
>  configure |    1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/configure b/configure
> index 23dbaaf..203084a 100755
> --- a/configure
> +++ b/configure
> @@ -3576,6 +3576,7 @@ if test "$softmmu" = yes ; then
>      if test "$cap" = yes && test "$linux" = yes && test "$attr" = yes ; then
>        virtfs=yes
>        tools="$tools fsdev/virtfs-proxy-helper\$(EXESUF)"
> +      mkdir -p fsdev
>      else
>        if test "$virtfs" = yes; then
>          error_exit "VirtFS is supported only on Linux and requires libcap-devel and libattr-devel"
> 

Please modify around

DIRS="tests tests/tcg tests/tcg/cris tests/tcg/lm32 tests/libqos
tests/qapi-schema tests/tcg/xtensa tests/qemu-iotests"
DIRS="$DIRS pc-bios/optionrom pc-bios/spapr-rtas pc-bios/s390-ccw"
DIRS="$DIRS roms/seabios roms/vgabios"
DIRS="$DIRS qapi-generated"

instead.

Paolo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] configure: create fsdev/ directory
  2013-10-12 16:28 ` Paolo Bonzini
@ 2013-10-12 19:05   ` Michael Tokarev
  2013-10-13  7:01     ` Paolo Bonzini
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Tokarev @ 2013-10-12 19:05 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-trivial, qemu-devel

12.10.2013 20:28, Paolo Bonzini wrote:
> Il 11/10/2013 11:05, Michael Tokarev ha scritto:
[]
>> --- a/configure
>> +++ b/configure
>> @@ -3576,6 +3576,7 @@ if test "$softmmu" = yes ; then
>>       if test "$cap" = yes && test "$linux" = yes && test "$attr" = yes ; then
>>         virtfs=yes
>>         tools="$tools fsdev/virtfs-proxy-helper\$(EXESUF)"
>> +      mkdir -p fsdev
>>       else
>>         if test "$virtfs" = yes; then
>>           error_exit "VirtFS is supported only on Linux and requires libcap-devel and libattr-devel"
>>
>
> Please modify around
>
> DIRS="tests tests/tcg tests/tcg/cris tests/tcg/lm32 tests/libqos
> tests/qapi-schema tests/tcg/xtensa tests/qemu-iotests"
> DIRS="$DIRS pc-bios/optionrom pc-bios/spapr-rtas pc-bios/s390-ccw"
> DIRS="$DIRS roms/seabios roms/vgabios"
> DIRS="$DIRS qapi-generated"
>
> instead.

I considered doing it there initially, but decided to add it
to the other place, because that's where virtfs variable
is set.  The place you're referring to will need to have a
condition `if' based on $virtfs value.

Also, there are other places below this virtfs test (which I
modified) which runs mkdir (dtc, pixman), so this is not
something unusual.

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] configure: create fsdev/ directory
  2013-10-12 19:05   ` Michael Tokarev
@ 2013-10-13  7:01     ` Paolo Bonzini
  0 siblings, 0 replies; 5+ messages in thread
From: Paolo Bonzini @ 2013-10-13  7:01 UTC (permalink / raw)
  To: Michael Tokarev; +Cc: qemu-trivial, qemu-devel

Il 12/10/2013 21:05, Michael Tokarev ha scritto:
> I considered doing it there initially, but decided to add it
> to the other place, because that's where virtfs variable
> is set.  The place you're referring to will need to have a
> condition `if' based on $virtfs value.

It's harmless to create a directory that won't be used.

> Also, there are other places below this virtfs test (which I
> modified) which runs mkdir (dtc, pixman), so this is not
> something unusual.

I didn't check the code, and dtc+pixman are both submodules so there may
be something special there.  But in general, let's avoid the "it's bad
so it's okay to make it worse" argument.

Paolo

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-10-13  7:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-11  9:05 [Qemu-devel] [PATCH] configure: create fsdev/ directory Michael Tokarev
2013-10-12 12:54 ` Alex Bennée
2013-10-12 16:28 ` Paolo Bonzini
2013-10-12 19:05   ` Michael Tokarev
2013-10-13  7:01     ` Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).