[PATCH v4] configure: Add 'mkdir build' check

Dinah Baum posted 1 patch 1 year, 2 months ago
configure | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
[PATCH v4] configure: Add 'mkdir build' check
Posted by Dinah Baum 1 year, 2 months ago
QEMU configure script goes into an infinite error printing loop
when in read only directory due to 'build' dir never being created.

Checking if 'mkdir dir' succeeds prevents this error.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/321
Signed-off-by: Dinah Baum <dinahbaum123@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
---
 configure | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index cf6db3d551..1ef3e7f77d 100755
--- a/configure
+++ b/configure
@@ -31,7 +31,12 @@ then
         fi
     fi
 
-    mkdir build
+    if ! mkdir build || ! touch $MARKER
+    then
+        echo "ERROR: Could not create ./build directory. Check the permissions on"
+        echo "your source directory, or try doing an out-of-tree build."
+        exit 1
+    fi
     touch $MARKER
 
     cat > GNUmakefile <<'EOF'
-- 
2.30.2
Re: [PATCH v4] configure: Add 'mkdir build' check
Posted by Thomas Huth 1 year, 2 months ago
On 21/02/2023 12.06, Dinah Baum wrote:
> QEMU configure script goes into an infinite error printing loop
> when in read only directory due to 'build' dir never being created.
> 
> Checking if 'mkdir dir' succeeds prevents this error.
> 
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/321
> Signed-off-by: Dinah Baum <dinahbaum123@gmail.com>
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>   configure | 7 ++++++-
>   1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/configure b/configure
> index cf6db3d551..1ef3e7f77d 100755
> --- a/configure
> +++ b/configure
> @@ -31,7 +31,12 @@ then
>           fi
>       fi
>   
> -    mkdir build
> +    if ! mkdir build || ! touch $MARKER
> +    then
> +        echo "ERROR: Could not create ./build directory. Check the permissions on"
> +        echo "your source directory, or try doing an out-of-tree build."
> +        exit 1
> +    fi
>       touch $MARKER

Nit: I think the final "touch $MARKER" could now be removed, too, since the 
code either exits above, or runs the "|| ! touch $MARKER" part there already.

Anyway, it's just a nit, and maybe could also be fixed while picking up the 
patch, thus:

Reviewed-by: Thomas Huth <thuth@redhat.com>
Re: [PATCH v4] configure: Add 'mkdir build' check
Posted by Philippe Mathieu-Daudé 1 year, 2 months ago
On 21/2/23 12:14, Thomas Huth wrote:
> On 21/02/2023 12.06, Dinah Baum wrote:
>> QEMU configure script goes into an infinite error printing loop
>> when in read only directory due to 'build' dir never being created.
>>
>> Checking if 'mkdir dir' succeeds prevents this error.
>>
>> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/321
>> Signed-off-by: Dinah Baum <dinahbaum123@gmail.com>
>> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
>> ---
>>   configure | 7 ++++++-
>>   1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/configure b/configure
>> index cf6db3d551..1ef3e7f77d 100755
>> --- a/configure
>> +++ b/configure
>> @@ -31,7 +31,12 @@ then
>>           fi
>>       fi
>> -    mkdir build
>> +    if ! mkdir build || ! touch $MARKER
>> +    then
>> +        echo "ERROR: Could not create ./build directory. Check the 
>> permissions on"
>> +        echo "your source directory, or try doing an out-of-tree build."
>> +        exit 1
>> +    fi
>>       touch $MARKER
> 
> Nit: I think the final "touch $MARKER" could now be removed, too, since 
> the code either exits above, or runs the "|| ! touch $MARKER" part there 
> already.
> 
> Anyway, it's just a nit, and maybe could also be fixed while picking up 
> the patch,

Yes please :)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>

> thus:
> 
> Reviewed-by: Thomas Huth <thuth@redhat.com>
> 
>