tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

make command-line overrides Makefile...sometimes?



I'm trying to roll some software (a particular version of libpng)
forward.  Its Makefile uses <bsd.lib.mk>.  That Makefile sets LIBDIR,
MANDIR, and INCSDIR unconditionally ("LIBDIR= ..." style).

These guesses as to where things should be installed are wrong for me.
The build procedure I had, which worked on at least some older
versions, ran make with LIBDIR, MANDIR, and INCSDIR set, on the make
command line, to the correct installation directories.  This used to
work; these settings overrode the ones in the Makefile.

Under 4.0.1, I find that LIBDIR works - ie, library installation goes
where I want it to - but MANDIR and INCSDIR don't; it uses the
Makefile's settings for those.

Any idea why the command-line arguments override the Makefile's
settings for some but not all of these variables?  I've just stared at
output from "fgrep DIR /usr/share/mk/* | egrep '(LIB|MAN|INCS)DIR'" and
can't see any justification for the command-line value to override the
Makefile value for LIBDIR but not for MANDIR or INCSDIR.

I'm entirely willing to believe that this is something stupid I'm
doing, but I sure can't see what.  Any pointers on how to track it
down?  My reading of the 4.0.1 make(1) is that the command-line values
should override the others, the way it worked historically.

/etc/mk.conf does not exist on the machine.

I can supply more data if there's something relevant I've left off.

/~\ The ASCII                             Mouse
\ / Ribbon Campaign
 X  Against HTML                mouse%rodents-montreal.org@localhost
/ \ Email!           7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index