used with curly braces and quotes, as in "${var}".
Also ensure that command substitution is quoted, as in "$(command)", and
convert `command` to $(command).
Reviewed by agc
by scripts in distrib/sets/*. This is intended to be useful when cross
building. Only trivial commands like echo, cat, and rm are excluded
from this treatment.
While I am here, make ${MTREE} and ${DB} follow the pattern used by most
other such variables.
Reviewed by agc.
* Add an optional third field to the sets file which is a list of
comma separated keywords that control if the line is printed.
Currently supported keywords
kerberos4 ${MKKERBEROS4} != no
kerberos ${MKKERBEROS} != no
lint ${MKLINT} != no
obsolete ${obsolete} != 0.
In this case, non obsolete files are not printed.
(This will allow future support for builds with variables such as
MKHESIOD and MKYP set to "no".)
* Use sh(1)'s getopts where appropriate, and otherwise cleanup the
various scripts.
* Move defaults for sets.subr from sets.defaults into sets.subr.
Move replicated code for determining stuff such as shlibs type
from various scripts into sets.subr.
* Merge the obsolete.*, krb.*, krb4.* and lint.* into the appropriate
main lists with the relevant third field keyword(s).
and machine_arch to their defaults into sets.defaults, and source
it at the top of each script.
Also, to be consistent with variable naming, s/arch/machine_arch/.
sets.defaults introduces two new variables, krb and krb4, which
will affect whether Kerberos- or Kerberos IV-only files are put
into the set lists.
* Improve message display in find_file_in_dirlist()
* do_obsolete(): instead of running distrib/sets/makeobsolete to
temporarily generate the obsolete sets lists, look for them in
${SRC_DIR}/etc/obsolete/* or ${DEST_DIR}/etc/obsolete/*.
The obsolete check now works for "extracted etc.tgz" as the source dir.
etc/Makefile (install-etc-files), distrib/sets/lists/*
* Install obsolete set lists into /etc/obsolete/
* Tweak how pwd_mkdb files are added to METALOG
distrib/sets/makeobsolete
* Don't bother with "_obsolete" suffix on generated file names.
after the first in each line of a set list are ignored. This introduces
no change in current set list behavior, but will need to be revisited if
we wish to distribute files with spaces in their names -- in this case we can
move to tab separated fields or some other behavior.
Current set lists work exactly as before, but in the future set lists may
have additional fields for use in a system packaging script.
I will post a detailed work plan for the system package system which uses
this to tech-pkg and tech-install in the next day or so.
in sets/lists/*. The sript sets/makeobsolete concatenates the mi and md
obsolete list files all or a specified set and dumps it in a file, in a
subdir specified on the command line (inspired from the maketar and makeflist
files).
Use this for all the sysinst-based installs.
Untested for non-i386, and the md obsolete list may be wrong or incomplete.
Each postmaster is supposed to check this on his port.