On 14/01/2018 00:56, Bruce Dubbs wrote:
> Pierre Labastie wrote:
>> Hi,
>>
>> This message is about circular dependencies in BLFS, and the way to resolve
>> them automatically for jhalfs, so it belongs to both alfs-discuss and
>> blfs-dev.
>>
>> [...]
>> Don't know whether it is clear, but I will apply this if you agree to add
>> this
>> new role to the book
>
> I understand the concept and what you are trying to do, but I'm afraid the
> notation is a bit unclear to me. I'll have to study it a bit.
Sorry about that.
>
> To answer DJ about attributes like role, generally you can have more than one
> value, for instance role="a b c" for three different roles. At least it works
> that way in html/css. I'd have to test it for xsl stylesheets.
I'm sure that attribute would be accepted by xmllint. Then, the xsl stylesheet
would have to interpret it. (e.g. with things like
<xsl:if test="contains(concat(' ',@role,' '),' a ')">)
Anyway, I think "first", "nodep", and "runtime" are mutually exclusive.
>
> I'll also note that for users, a very hard question is "Do I need this
> optional dependency?" You have to know what it does and if something else
> needs it. I generally do not script multiple packages. I like to review the
> optional dependencies and build some, but not all as I build up my system.
>
It's a good point: does optional applies to the first level of dependencies or
to all levels? An example: let's say the user requests to build package a with
optional dependencies, and the dependency graph contain:
a -3> b -3> c
Surely, the user wants b to be built before a, but the question is whether the
user thinks c should be built before b.
Also, even when requesting only recommended dependencies, we may have the
following case:
-2> b -3>
/ \
a -2> c -2> d
a DFS algorithm using only recommended dependencies would generate the build
order b, then d, then c, then a. A better option would be d, then b, then c,
then a... So optional deps have to be considered even if only recommended ones
are requested. The new version will account for that (so that cycles at the
optional level may be generated even if requesting only recommended). But for
the first example above, I am not sure what to do.
As of whether a user needs to build optional or only recommended deps, jhalfs
cannot answer... The book may give some indications, but what I do not like
with those, is that we rarely test when they become obsolete (and jhalfs is
not able to interpret natural language to check it).
Regards
Pierre
--
http://lists.linuxfromscratch.org/listinfo/alfs-discuss
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page