Hi,
Peter Samuelson wrote:
> +If you think in terms of Boolean algebra, most of the above rules make
> +sense if you think of each primitive value ("y", "m" and "n") as two
> +bits: "y"=11, "m"=01, "n"=00. Adjacent words are implicitly ANDed
> +together, and the "or" statement, with lower precedence, performs an
> +OR between lists of words. The "!" operator does not quite fit this
> +explanation, because "!m" = "m", but that was specified for practical
> +reasons, to cover a common case in kernel configuration.
Simply define y=2, m=1, n=0, then you can define:
x && y == min(x, y)
x || y == max(x, y)
!x == 2-x
As soon as you have to deal with more complex expressions or even
expression transformations, that will make a lot of sense. :)
> + | Value of the if_dep dependency line
> + Statements in | (nested restrictions are cumulative)
> + the blocks | y | n | m
> + --------------+--------------+--------------+-----------------------
> + bool, | | | suppressed in
> + dep_bool | | | both blocks
> + | unrestricted | suppressed |
> + --------------+ in if_dep | in if_dep +-----------------------
> + tristate, | block, | block, | restricted to {m,n} in
> + dep_tristate | suppressed | unrestricted | if_dep block, suppressed
> + | in else_dep | in else_dep | in else_dep block
> + --------------+ block | block +-----------------------
> + all other | | | unrestricted in if_dep
> + verbs | | | block, suppressed in
> + | | | else_dep block
> +
The last coloumn makes no sense. "if" requires a boolean value, so you
have to convert the tristate value. This means if_dep e.g. becomes "if
(dep) != n" and else_dep "if (dep) == n" and to the dependency list you
had to add "dep" and "!dep" respectively.
bye, Roman
-------------------------------------------------------
This sf.net email is sponsored by: OSDN - Tired of that same old
cell phone? Get a new here for FREE!
https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390
_______________________________________________
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel