[Buildroot] [PATCH] dependencies.sh: improve the missing perl modules detection
Vicente Olivert Riera
Vincent.Riera at imgtec.com
Wed Sep 23 21:00:35 UTC 2015
Dear Baruch Siach,
I missed some things from your reply. Let me add more comments, please.
On 23/09/15 21:52, Vicente Olivert Riera wrote:
> Dear Baruch Siach,
>
> On 23/09/15 20:50, Baruch Siach wrote:
>> Hi Vincent,
>>
>> On Wed, Sep 23, 2015 at 02:44:21PM +0100, Vicente Olivert Riera wrote:
>>> Signed-off-by: Vicente Olivert Riera <Vincent.Riera at imgtec.com>
>>> ---
>>> support/dependencies/dependencies.sh | 26 +++++++++++++++++++++-----
>>> 1 files changed, 21 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/support/dependencies/dependencies.sh
>>> b/support/dependencies/dependencies.sh
>>> index 01ad828..af9aefe 100755
>>> --- a/support/dependencies/dependencies.sh
>>> +++ b/support/dependencies/dependencies.sh
>>> @@ -236,10 +236,26 @@ if grep -q ^BR2_HOSTARCH_NEEDS_IA32_COMPILER=y
>>> $BR2_CONFIG ; then
>>> fi
>>> fi
>>>
>>> -# Check that the Perl installation is complete enough to build
>>> -# host-autoconf.
>>
>> The information that we need perl for host-autoconf should be
>> preserved, I
>> think.
This.
>>> -if ! perl -e "require Data::Dumper" > /dev/null 2>&1 ; then
>>> - echo "Your Perl installation is not complete enough, at least
>>> Data::Dumper is missing."
>>> - echo "On Debian/Ubuntu distributions, install the 'perl' package."
>>
>> You are also removing this bit of valuable information.
>>
>> Maybe we should split this into two checks, one for perl itself, and
>> then for
>> some required modules.
And this, make sense to me.
First check for perl itself, and if it's not present, say that we need
it to build host-autoconf, among other packages.
And then do the checks for required modules.
Sorry, is late and I was a bit sleepy, so a missed some parts of your reply.
I will send an v2.
Thanks for your review!
Vincent.
That would allow us to give the user a more
>> precise
>> diagnosis.
>
> I really thought about that before removing the advice about which
> package provides that missing perl module. But then I thought about it
> twice and I believe is not really so valuable. I think every Linux user
> should be able to know which package of the distribution that he is
> using provides those missing perl modules. We just say the missing
> modules and is up to the user to install the packages which provide
> those modules. Is not so hard, in my opinion. Also, in some distros the
> package has one name, and in other distros has a different name. We
> can't put all of them so having only the ones for Debian/Ubuntu only
> help part of the users, and not the other.
>
> For me the patch is good as is. If other developers think the same as
> you, I really don't have any problem that someone else overtake this
> patch and make the desired modifications. Absolutely no problem at all :-)
>
> Regards,
>
> Vincent.
>
>>
>>> +# Check that the Perl installation is complete enough for Buildroot.
>>> +# Here is the space-separated list of the required modules:
>>> +required_perl_modules="Data::Dumper Thread:Queue"
>>> +
>>> +# This variable will keep the modules that are missing in your system:
>>> +missing_perl_modules=""
>>> +
>>> +for pm in $required_perl_modules ; do
>>> + if ! perl -e "require $pm" > /dev/null 2>&1 ; then
>>> + missing_perl_modules="$missing_perl_modules $pm"
>>> + fi
>>> +done
>>> +
>>> +if [ -n "$missing_perl_modules" ] ; then
>>> + echo "Your Perl installation is not complete enough; at least
>>> the following"
>>> + echo "modules are missing:"
>>> + echo ""
>>> + for pm in $missing_perl_modules ; do
>>> + echo -e "\t $pm"
>>> + done
>>> + echo ""
>>> exit 1
>>> fi
>>
>> baruch
>>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
More information about the buildroot
mailing list