[2/4] configure: Display if libfdt is from system or git

Message ID 20180415230522.24404-3-f4bug@amsat.org
State New
Headers show
Series
  • [for-2.12?,1/4] configure: Really use local libfdt if the system one is too old
Related show

Commit Message

Philippe Mathieu-Daudé April 15, 2018, 11:05 p.m.
The configure script outputs "yes" regardless which libfdt is used:

  ./configure
  [...]
  fdt support       yes

Sometimes you can have both system and local git version available,
change the configure script to display which library got selected:

  debian8$ dpkg-query --showformat='${Version}\n' --show libfdt-dev
  1.4.0+dfsg-1

  debian8$ ./configure
  [...]
  fdt support       git

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 configure | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

Comments

Thomas Huth April 16, 2018, 5:16 a.m. | #1
On 16.04.2018 01:05, Philippe Mathieu-Daudé wrote:
> The configure script outputs "yes" regardless which libfdt is used:
> 
>   ./configure
>   [...]
>   fdt support       yes
> 
> Sometimes you can have both system and local git version available,
> change the configure script to display which library got selected:
> 
>   debian8$ dpkg-query --showformat='${Version}\n' --show libfdt-dev
>   1.4.0+dfsg-1
> 
>   debian8$ ./configure
>   [...]
>   fdt support       git
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  configure | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)
> 
> diff --git a/configure b/configure
> index 162e804b49..056b391f22 100755
> --- a/configure
> +++ b/configure
> @@ -3758,15 +3758,14 @@ int main(void) { fdt_first_subnode(0, 0); return 0; }
>  EOF
>    if compile_prog "" "$fdt_libs" ; then
>      # system DTC is good - use it
> -    fdt=yes
> +    fdt=system
>    else
>        # have GIT checkout, so activate dtc submodule
>        if test -e "${source_path}/.git" ; then
>            git_submodules="${git_submodules} dtc"
>        fi
>        if test -d "${source_path}/dtc/libfdt" || test -e "${source_path}/.git" ; then
> -          fdt=yes
> -          dtc_internal="yes"
> +          fdt=git

That's ok for git checkout, but what about release tarballs? I'd strange
to see "git" here. So maybe better use "internal" instead of "git" here?

OTOH, capstone is also using the term "git" here, so this is just
consistent here...

 Thomas
Philippe Mathieu-Daudé April 16, 2018, 10:40 a.m. | #2
Hi Thomas,

On 04/16/2018 02:16 AM, Thomas Huth wrote:
> On 16.04.2018 01:05, Philippe Mathieu-Daudé wrote:
>> The configure script outputs "yes" regardless which libfdt is used:
>>
>>   ./configure
>>   [...]
>>   fdt support       yes
>>
>> Sometimes you can have both system and local git version available,
>> change the configure script to display which library got selected:
>>
>>   debian8$ dpkg-query --showformat='${Version}\n' --show libfdt-dev
>>   1.4.0+dfsg-1
>>
>>   debian8$ ./configure
>>   [...]
>>   fdt support       git
>>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>>  configure | 9 ++++-----
>>  1 file changed, 4 insertions(+), 5 deletions(-)
>>
>> diff --git a/configure b/configure
>> index 162e804b49..056b391f22 100755
>> --- a/configure
>> +++ b/configure
>> @@ -3758,15 +3758,14 @@ int main(void) { fdt_first_subnode(0, 0); return 0; }
>>  EOF
>>    if compile_prog "" "$fdt_libs" ; then
>>      # system DTC is good - use it
>> -    fdt=yes
>> +    fdt=system
>>    else
>>        # have GIT checkout, so activate dtc submodule
>>        if test -e "${source_path}/.git" ; then
>>            git_submodules="${git_submodules} dtc"
>>        fi
>>        if test -d "${source_path}/dtc/libfdt" || test -e "${source_path}/.git" ; then
>> -          fdt=yes
>> -          dtc_internal="yes"
>> +          fdt=git
> 
> That's ok for git checkout, but what about release tarballs? I'd strange
> to see "git" here. So maybe better use "internal" instead of "git" here?
> 
> OTOH, capstone is also using the term "git" here, so this is just
> consistent here...

Having both use "internal" sounds a good cleanup.

Patch

diff --git a/configure b/configure
index 162e804b49..056b391f22 100755
--- a/configure
+++ b/configure
@@ -3758,15 +3758,14 @@  int main(void) { fdt_first_subnode(0, 0); return 0; }
 EOF
   if compile_prog "" "$fdt_libs" ; then
     # system DTC is good - use it
-    fdt=yes
+    fdt=system
   else
       # have GIT checkout, so activate dtc submodule
       if test -e "${source_path}/.git" ; then
           git_submodules="${git_submodules} dtc"
       fi
       if test -d "${source_path}/dtc/libfdt" || test -e "${source_path}/.git" ; then
-          fdt=yes
-          dtc_internal="yes"
+          fdt=git
           mkdir -p dtc
           if [ "$pwd_is_source_path" != "y" ] ; then
               symlink "$source_path/dtc/Makefile" "dtc/Makefile"
@@ -6307,7 +6306,7 @@  fi
 if test "$preadv" = "yes" ; then
   echo "CONFIG_PREADV=y" >> $config_host_mak
 fi
-if test "$fdt" = "yes" ; then
+if test "$fdt" != "no" ; then
   echo "CONFIG_FDT=y" >> $config_host_mak
 fi
 if test "$membarrier" = "yes" ; then
@@ -7109,7 +7108,7 @@  echo "QEMU_CFLAGS+=$cflags" >> $config_target_mak
 
 done # for target in $targets
 
-if [ "$dtc_internal" = "yes" ]; then
+if [ "$fdt" = "git" ]; then
   echo "config-host.h: subdir-dtc" >> $config_host_mak
 fi
 if [ "$capstone" = "git" -o "$capstone" = "internal" ]; then