- the two `_EXTRADEPEND::' targets potentially clobbered each other for
`make -jN'. In practice, the output for the second target sometimes
disappeared.
- bogus dependencies were generated for static libraries.
libraries so that `ld -f' in can create correct dependencies for
yet-to-be-built libraries.
Get the default BINDIR correctly (by including ../Makefile.inc recursively.
Override the default it it is wrong.
Don't override defaults when the defaults are correct.
Don't give absolute paths to man page sources.
libraries so that `ld -f' in can create correct dependencies for
yet-to-be-built libraries.
Get the default BINDIR correctly (by including ../Makefile.inc recursively.
Override the default it it is wrong.
Don't override defaults when the defaults are correct.
libraries so that `ld -f' in can create correct dependencies for
yet-to-be-built libraries.
Get the default BINDIR correctly (by including ../Makefile.inc recursively.
- Completely recoded the ypmatch cache code. The old code could leak
memory: it would allow the cache to grow, but never
shrink. The new code imposes the following limits:
o The cache is capped at a limit of 5 entries.
o Each entry expires after five seconds, at which point
its slot is freed.
o If an insertion is to be done and all five slots
are filled, the oldest entry is forcibly expired
to release its slot.
Also, the cache is implemented on a per-binding basis rather than
having a global cache covering all bindings. This means that each
bound domain has its own 5 slot cache.
- Changed clntudp_create() to clntudp_bufcreate() so that the
xmit/recv message buffer sizes can be set explicitly. NIS transactions
are rarely much larger than 1024 bytes since YPMAXRECORD is 1024.
The defaults chosen by clntudb_create() are actually much larger
than needed. I set the xmit buffer to a little over 1024 and the
recv buffer to a little over 2048. This saves a few Kbytes for each
NIS binding.
- Add my name to the copyright. I think I've made enough changes to
this file to merit it. :)
Note: these changes should go into the 2.2.x branch, but I'm waiting
on feedback from a tester to see if the cache fixes solve the reported
memory leak problem.
SRCS was disordered to work around the bug for plain `make', and
the version number was bumped twice by building two copies of
version.[ch] concurrently.
objects depend on all generated headers doesn't work because it gives
cyclic dependencies. Give enough dependencies explicitly. We no
longer need to use .SINGLESHELL for `make depend'. .SINGLESHELL was
more of a bottleneck than usual because `make depend' makes everything.
Fixed some spelling and English errors.
${SRCS} instead of giving inadequate explicit dependencies. There
is still a problem after `make depend; make clean'. Then `make'
barely works, and `make -jN' is confused by absolute paths in
.depend.
changes to bsd.lib.mk can handle building it early enough. Don't
use the same rule for ss_err.h and ss_err.c, else `make -jN' would
run the rule twice concurrently. Don't put ss_err.c out of order
in SRCS; doing so was a kludge to get ss_err.h built early enough
for plain `make'.
Don't put a non-generated file in CLEANFILES.
headers in ${SRCS}, as in bsd.lmod.mk and bsd.prog.mk. This helps
`make [-j]' work when .depend doesn't exist. Even plain `make'
sometimes only worked because of magic ordering in ${SRCS}.
strip program (via "install") to strip itself. But the program
wasn't executable because "install" hadn't made it so yet. I
borrowed the method used for the old strip to get around this.