On 7/18/22 11:17, Alfred M. Szmidt wrote:
    Oh, there _is_ a bug.  Compare what the documentation says, with a bit
    of variable expansion that I did to show the bug (between parentheses):

    Documentation says:

          Should normally be */usr/local*

          Should normally be */usr/local/var*
          But write it as *$prefix/var* (= /usr/local/var; OK)

          Should normally be */var/run*
          But write it as *$localstatedir/run* (=  $prefix/var/run)
                                               (=  /usr/local/var/run)
                                               (!= /var/run; NOK)

    Do you realize the bug now?

This is intended and not a bug, "should normally" doesn't mean that it
is, or must be.  *You* are _supposed_ to pass the right thing for your
system, the defaults are (i.e. localstatedir = runstatedir) is to make

No, the defaults are not localstatedir = runstatedir.
runstatedir is $localstatedir/run, AFAICR.

it easy for people just doing a "default" install, but if your system
has someting else, you need to modify it (i,e., the 'should be').

I don't want something else.  I want the defaults.

So not a bug, but intended behaivour.

Disagree.  I'll quote exact wording of the coding standards:

"$(localstatedir) should normally be /usr/local/var, but write it as $(prefix)/var" "This [$runstatedir] should normally be /var/run, but write it as $(localstatedir)/run"

It is saying "/var/run" should be written as $localstatedir/run, but that is not possible. Remember that $localstatedir is /usr/local/var in the "default" set of directories.

I know I can set $runstatedir explicitly for my system, but defaults are there so that I don't need to do it as long as I want to use the defaults. The thing is the defaults are broken.

Or am I wrong in assuming that the wording "should normally be" means that that is the default value for GNU Makefiles? I don't think so.



Alejandro Colomar

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to