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.
the PPC_INTR_IMPL, which is used to include a file in <machine/intr.h>.
To allow evbppc to complete a ``make release'', we also need to
factor out the LKM files to a new set list file, and tweak makeflist
to not include this file for evbppc.
Discussed with Matt Thomas.
sh3, for example, due to defincencies in the current compiler version).
Deal with this by splitting toolchain shlibs into tc.shl, and teachking
makeflist about it.
Also, fix an old-toolchain remnant in the sh3 set lists.
which respectively contain MI and objfmt-specific things associated
with static libraries. Useful for systems that don't have shared
libraries. Currently only used by lists/comp/stl.elf.
and to convert MACHINE_ARCH to a CPU. Make this cross-build
friendly by specifying MACHINE, MACHINE_ARCH, and MAKE in the
makeflist/checkflist environment.
at the moment) are pulled out into tc.mi and tc.old files.
tc.mi has any files which are in the new toolchain only and tc.old contains
the reverse (files which only existed in the old toolchain). The remainder
of the toolchain that is common between both old and new is still contained
in the various mi/md files.
Check for USE_NEW_TOOLCHAIN=yes in makeflist to determine which tc files to
pull in if they exist.
XXX - All the toolchain bits should eventually be pulled out into separate
lists as tc.mi and tc.<arch>. Leaving it for now until the new toolchain is
fully integrated on all ports.