diff options
author | joerg <joerg@pkgsrc.org> | 2010-09-07 14:11:07 +0000 |
---|---|---|
committer | joerg <joerg@pkgsrc.org> | 2010-09-07 14:11:07 +0000 |
commit | 92219014db9b676e01e78bbe73c3877f94f2a471 (patch) | |
tree | ab9a7f9be7c8a296d14b01c32db3ad74c367c34b /devel/bmake/files/bmake.cat1 | |
parent | 4f45bdd33e7709b15d484a629483e12d8643a6e1 (diff) | |
download | pkgsrc-92219014db9b676e01e78bbe73c3877f94f2a471.tar.gz |
Import bmake-20100808:
- boot-strap (TOOL_DIFF): set this to ensure tests use the same version
of diff that configure tested
- in jobs mode, when we discover we cannot make something, call
PrintOnError before exit.
- formatting fixes for ignored errors
- ensure jobs are cleaned up regardless of where wait() was called.
- os.sh (MACHINE_ARCH): watch out for drivel from uname -p
- call PrintOnError from JobFinish when we detect an error we are not
ignoring.
- use bmake_signal() which is a wrapper around sigaction() in place of
signal()
- add .export-env to allow exporting variables to environment without
tracking (so no re-export when the internal value is changed).
- fix for .info et al being greedy.
- back to using realpath on argv[0] but only if contains '/' and does not
start with '/'.
Diffstat (limited to 'devel/bmake/files/bmake.cat1')
-rw-r--r-- | devel/bmake/files/bmake.cat1 | 55 |
1 files changed, 46 insertions, 9 deletions
diff --git a/devel/bmake/files/bmake.cat1 b/devel/bmake/files/bmake.cat1 index 4e7f1093254..a88acfe3147 100644 --- a/devel/bmake/files/bmake.cat1 +++ b/devel/bmake/files/bmake.cat1 @@ -321,10 +321,37 @@ VVAARRIIAABBLLEE AASSSSIIGGNNMMEENNTTSS If the result of expanding a variable contains a dollar sign (`$') the string is expanded again. - Variable substitution occurs at two distinct times, depending on where - the variable is being used. Variables in dependency lines are expanded - as the line is read. Variables in shell commands are expanded when the - shell command is executed. + Variable substitution occurs at three distinct times, depending on where + the variable is being used. + + 1. Variables in dependency lines are expanded as the line is read. + + 2. Variables in shell commands are expanded when the shell command is + executed. + + 3. ``.for'' loop index variables are expanded on each loop iteration. + Note that other variables are not expanded inside loops so the fol- + lowing example code: + + + .for i in 1 2 3 + a+= ${i} + j= ${i} + b+= ${j} + .endfor + + all: + @echo ${a} + @echo ${b} + + will print: + + 1 2 3 + 3 3 3 + + Because while ${a} contains ``1 2 3'' after the loop is executed, + ${b} contains ``${j} ${j} ${j}'' which expands to ``3 3 3'' since + after the loop completes ${j} contains ``3''. VVaarriiaabbllee ccllaasssseess The four different classes of variables (in order of increasing prece- @@ -358,7 +385,7 @@ VVAARRIIAABBLLEE AASSSSIIGGNNMMEENNTTSS _._O_O_D_A_T_E The list of sources for this target that were deemed out-of-date; also known as `_?'. - _._P_R_E_F_I_X The file prefix of the file, containing only the file + _._P_R_E_F_I_X The file prefix of the target, containing only the file portion, no suffix or preceding directory components; also known as `_*'. @@ -487,8 +514,9 @@ VVAARRIIAABBLLEE AASSSSIIGGNNMMEENNTTSS Variable expansion is performed on the value before it's used, so expressions such as - ${.CURDIR:C,^/usr/src,/var/obj,} - may be used. + ${.CURDIR:S,^/usr/src,/var/obj,} + may be used. This is especially useful with + `MAKEOBJDIR'. `_._O_B_J_D_I_R' may be modified in the makefile as a global variable. In all cases, bbmmaakkee will chdir(2) to `_._O_B_J_D_I_R' @@ -516,6 +544,9 @@ VVAARRIIAABBLLEE AASSSSIIGGNNMMEENNTTSS contains a variable transform. `PWD' is set to the value of `_._O_B_J_D_I_R' for all programs which bbmmaakkee executes. + .TARGETS The list of targets explicitly specified on the command + line, if any. + VPATH Colon-separated (``:'') lists of directories that bbmmaakkee will search for files. The variable is supported for compatibility with old make programs only, use `_._P_A_T_H' @@ -790,6 +821,11 @@ IINNCCLLUUDDEE SSTTAATTEEMMEENNTTSS,, CCOONNDDIITTIIOO Appending a variable name to _._M_A_K_E_._E_X_P_O_R_T_E_D is equivalent to exporting a variable. + ..eexxppoorrtt--eennvv _v_a_r_i_a_b_l_e _._._. + The same as `.export', except that the variable is not appended + to _._M_A_K_E_._E_X_P_O_R_T_E_D. This allows exporting a value to the environ- + ment which is different from that used by bbmmaakkee internally. + ..iinnffoo _m_e_s_s_a_g_e The message is printed along with the name of the makefile and line number. @@ -963,7 +999,8 @@ SSPPEECCIIAALL SSOOUURRCCEESS ((AATTTTRRIIBBUUTTEESS)) ..PPHHOONNYY The target does not correspond to an actual file; it is always considered to be out of date, and will not be created with the - --tt option. + --tt option. Suffix-transformation rules are not applied to + ..PPHHOONNYY targets. ..PPRREECCIIOOUUSS When bbmmaakkee is interrupted, it normally removes any partially @@ -1166,4 +1203,4 @@ HHIISSTTOORRYY bbmmaakkee is derived from NetBSD's make(1). It uses autoconf to facilitate portability to other platforms. -NetBSD 5.0_STABLE April 21, 2010 NetBSD 5.0_STABLE +NetBSD 5.0_STABLE June 30, 2010 NetBSD 5.0_STABLE |