The NetBSD Project

CVS log for src/usr.bin/make/str.c

[BACK] Up to [cvs.NetBSD.org] / src / usr.bin / make

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.105: download - view: text, markup, annotated - select for diffs
Sun Jul 7 07:50:57 2024 UTC (5 months ago) by rillig
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.104: preferred, colored
Changes since revision 1.104: +4 -4 lines
make: only generate code for cleanup functions in CLEANUP mode

Revision 1.104: download - view: text, markup, annotated - select for diffs
Sat Jul 6 10:36:23 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +5 -3 lines
make: error out on a matching malformed matching pattern '[['

Revision 1.103: download - view: text, markup, annotated - select for diffs
Sun Apr 14 15:21:20 2024 UTC (7 months, 4 weeks ago) by rillig
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +7 -23 lines
make: make string matching platform-independent

Previously, whether the character range '[a-รค]' matched, depended on the
signedness of the plain 'char' type.  Since make operates on byte
strings and does not support UTF-8 or other multi-byte character
encodings, this edge case is not expected to occur in practice.

No change in the unit tests as this edge case is not covered by tests.

Revision 1.102: download - view: text, markup, annotated - select for diffs
Fri Jan 5 23:22:06 2024 UTC (11 months ago) by rillig
Branches: MAIN
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +6 -2 lines
make: miscellaneous cleanups

Revision 1.101: download - view: text, markup, annotated - select for diffs
Sun Dec 17 22:46:44 2023 UTC (11 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.100: preferred, colored
Changes since revision 1.100: +10 -3 lines
make: speed up pattern matching in the ':M' modifier

In the common patterns where '*' is followed by a regular character,
such as in the patterns '*.c' or '*.mk', search the next possible
matching position in a small loop, instead of repeatedly comparing the
first remaining pattern character to all special characters.

Revision 1.100: download - view: text, markup, annotated - select for diffs
Sat Dec 16 21:26:07 2023 UTC (11 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +25 -39 lines
make: eliminate a local variable in Str_Match

No functional change.

Revision 1.99: download - view: text, markup, annotated - select for diffs
Fri Jun 23 05:03:04 2023 UTC (17 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +25 -26 lines
make: reduce indentation in pattern matching code

No functional change.

Revision 1.98: download - view: text, markup, annotated - select for diffs
Fri Jun 23 04:56:54 2023 UTC (17 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +28 -15 lines
make: warn about malformed patterns in ':M', ':N' and '.if make(...)'

These patterns shouldn't occur in practice, as their results are tricky
to predict.  Generate a warning for now, and maybe an error later.

Reviewed by sjg@.

Revision 1.97: download - view: text, markup, annotated - select for diffs
Thu Jun 22 16:59:17 2023 UTC (17 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +10 -16 lines
make: unclutter string matching code

Revision 1.96: download - view: text, markup, annotated - select for diffs
Thu Jun 22 16:32:09 2023 UTC (17 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +20 -19 lines
make: rename variables in string matching, remove redundant code

No functional change.

Revision 1.95: download - view: text, markup, annotated - select for diffs
Thu Jun 22 12:59:54 2023 UTC (17 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +50 -19 lines
make: speed up pattern matching in the ':M' and ':N' modifiers

In the code coverage report, the highest count for Str_Match goes from
5,298,924 down to 79,646.

Revision 1.94: download - view: text, markup, annotated - select for diffs
Wed Dec 7 10:28:48 2022 UTC (2 years ago) by rillig
Branches: MAIN
CVS tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +4 -4 lines
make: clean up comments

Revision 1.93: download - view: text, markup, annotated - select for diffs
Sat Jun 11 09:24:07 2022 UTC (2 years, 6 months ago) by rillig
Branches: MAIN
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +6 -19 lines
make: clean up comments for string splitting and string matching

No binary change.

Revision 1.92: download - view: text, markup, annotated - select for diffs
Sat Jun 11 08:06:32 2022 UTC (2 years, 6 months ago) by rillig
Branches: MAIN
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +9 -24 lines
make: condense Str_Match

The test for '\\' followed by '\0' was redundant since at that point,
*str is guaranteed to be not '\0', which takes the next 'return false'.

No functional change.

Revision 1.91: download - view: text, markup, annotated - select for diffs
Fri May 13 21:42:30 2022 UTC (2 years, 7 months ago) by rillig
Branches: MAIN
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +23 -5 lines
make: document platform dependency in string pattern matching

No unit test for this edge case since all other unit tests are platform-
independent.

To reproduce:
$ make clean
$ make -s PROG=s-make NOMAN=yes USER_CFLAGS=-fsigned-char
$ make clean
$ make -s PROG=u-make NOMAN=yes USER_CFLAGS=-funsigned-char
$ make clean
$ range=$(lua -e 'print(("[%c-%c]"):format(0xe4, 0x61))')
$ ./s-make -V "\${:UM:M$range}\${:UN:N$range}"
M
$ ./u-make -V "\${:UM:M$range}\${:UN:N$range}"
N

Revision 1.90: download - view: text, markup, annotated - select for diffs
Fri May 13 20:37:01 2022 UTC (2 years, 7 months ago) by rillig
Branches: MAIN
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +7 -16 lines
make: clean up low-level comments, eliminate common subexpression

No functional change.

Revision 1.89: download - view: text, markup, annotated - select for diffs
Thu Mar 3 19:50:01 2022 UTC (2 years, 9 months ago) by rillig
Branches: MAIN
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +4 -4 lines
make: make code for string matching syntactically more consistent

No functional change.

Revision 1.88: download - view: text, markup, annotated - select for diffs
Wed Dec 15 10:57:01 2021 UTC (2 years, 11 months ago) by rillig
Branches: MAIN
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +10 -2 lines
make: in CLEANUP mode, free interned strings at the very end

Noticed by sjg.

Revision 1.87: download - view: text, markup, annotated - select for diffs
Mon Dec 13 05:25:04 2021 UTC (3 years ago) by rillig
Branches: MAIN
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +19 -2 lines
make: fix memory leak for filenames in .for loops (since 2013-06-18)

Previously, each time a .for directive pushed its buffer on the input
file stack, the current filename was duplicated.  This was a waste of
memory.

The name of a file is typically only used while it is read in.  There is
one situation when the filename is needed for longer, which is when a
target is defined.

Since .for loops are implemented as a special form of included files,
each .for loop duplicated the current filename as well.

$ cat << EOF > for.mk
.for i in 1 2 3 4 5 6 7 8 9 0
.for i in 1 2 3 4 5 6 7 8 9 0
.for i in 1 2 3 4 5 6 7 8 9 0
.for i in 1 2 3 4 5 6 7 8 9 0
.for i in 1 2 3 4 5 6 7 8 9 0
.for i in 1 2 3 4 5 6 7 8 9 0
.for i in 1 2 3 4 5 6 7 8 9 0
.endfor
.endfor
.endfor
.endfor
.endfor
.endfor
.endfor

all:
	@ps -o rsz -p ${.MAKE.PID}
EOF

$ make-2021.12.13.03.55.16 -r -f for.mk
  RSZ
10720

$ ./make -r -f for.mk
 RSZ
1716

The difference is 8 MB, which amounts to 1 million .for loops.

Revision 1.86: download - view: text, markup, annotated - select for diffs
Mon Jun 21 16:59:18 2021 UTC (3 years, 5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +4 -5 lines
make: eliminate local variable in Substring_Words

No functional change.

Revision 1.84.2.1: download - view: text, markup, annotated - select for diffs
Mon May 31 22:15:25 2021 UTC (3 years, 6 months ago) by cjep
Branches: cjep_staticlib_x
Diff to: previous 1.84: preferred, colored; next MAIN 1.85: preferred, colored
Changes since revision 1.84: +2 -18 lines
sync with head

Revision 1.85: download - view: text, markup, annotated - select for diffs
Sun May 30 21:16:54 2021 UTC (3 years, 6 months ago) by rillig
Branches: MAIN
CVS tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +2 -18 lines
make: inline str_concat4

This function is only ever used for forming strings of the form
"archive(member)".

No functional change.

Revision 1.84: download - view: text, markup, annotated - select for diffs
Sun Apr 11 19:05:06 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
CVS tags: cjep_staticlib_x-base
Branch point for: cjep_staticlib_x
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +37 -12 lines
make: avoid unnecessary calls to strlen when evaluating modifiers

No functional change.

Revision 1.83: download - view: text, markup, annotated - select for diffs
Sat Apr 3 14:39:02 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +18 -4 lines
make: backport to C90

In the past few months I had accidentally used C99 features in the make
code.  According to tools/README, tools that are used in the build
system should restrict themselves to C90.

This allows make to build with GCC's options "-pedantic
-Wno-system-headers -Dinline= -Wno-error=cast-qual".

I didn't notice anyone actively complaining though, I just wanted to see
how much work this backporting would be.  The identifier __func__ is
still used, as in other tools.

No functional change.

Revision 1.82: download - view: text, markup, annotated - select for diffs
Sat Apr 3 11:08:40 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +14 -14 lines
make: use C99 bool type instead of defining its own

No functional change.

Revision 1.81: download - view: text, markup, annotated - select for diffs
Mon Feb 1 22:36:28 2021 UTC (3 years, 10 months ago) by rillig
Branches: MAIN
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +11 -5 lines
make: document necessary tests for Str_Match

Revision 1.80: download - view: text, markup, annotated - select for diffs
Mon Feb 1 19:46:58 2021 UTC (3 years, 10 months ago) by rillig
Branches: MAIN
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +3 -3 lines
make: replace pre-increment with post-increment or simple addition

The rest of the code already prefers post-increment if there is no
actual difference.

Revision 1.79: download - view: text, markup, annotated - select for diffs
Tue Jan 19 20:51:46 2021 UTC (3 years, 10 months ago) by rillig
Branches: MAIN
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +4 -4 lines
make(1): remove do-not-format markers from comments

These markers had been used inconsistently.  Furthermore the source code
had not been formatted automatically before 2020 at all, otherwise there
wouldn't have been any trailing whitespace left.

Revision 1.78: download - view: text, markup, annotated - select for diffs
Sun Jan 10 23:59:53 2021 UTC (3 years, 11 months ago) by rillig
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +4 -4 lines
make(1): make a few more bool expressions more precise

The previous version of lint(1) from a few hours ago didn't catch all
occurrences.  And even the current one doesn't catch everything.
Function arguments and return types still need some work.  The "return
quietly" from shouldDieQuietly still implicitly converts from int to
_Bool.

No functional change.

Revision 1.77: download - view: text, markup, annotated - select for diffs
Sun Jan 10 21:20:46 2021 UTC (3 years, 11 months ago) by rillig
Branches: MAIN
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +3 -3 lines
make(1): consistently use boolean expressions in conditions

Most of the make code already followed the style of explicitly writing
(ptr != NULL) instead of the shorter (ptr) in conditions.

The remaining 50 instances have been found by an experimental,
unpublished check in lint(1) that treats bool expressions as
incompatible to any other scalar type, just as in Java, C#, Pascal and
several other languages.

The only unsafe operation on Boolean that is left over is (flags &
FLAG), for an enum implementing a bit set.  If Boolean is an ordinary
integer type (the default), some high bits may get lost.  But if Boolean
is the same as _Bool (by compiling with -DUSE_C99_BOOLEAN), C99 6.3.1.2
defines that a conversion from any scalar to the type _Bool acts as a
comparison to 0, which cannot lose any bits.

Revision 1.76: download - view: text, markup, annotated - select for diffs
Wed Dec 30 10:03:16 2020 UTC (3 years, 11 months ago) by rillig
Branches: MAIN
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +4 -3 lines
make(1): format multi-line comments

Revision 1.75: download - view: text, markup, annotated - select for diffs
Sat Dec 12 19:13:47 2020 UTC (4 years ago) by rillig
Branches: MAIN
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +3 -3 lines
make(1): remove redundant call to strlen in Str_Words

Revision 1.74: download - view: text, markup, annotated - select for diffs
Mon Nov 16 18:28:27 2020 UTC (4 years ago) by rillig
Branches: MAIN
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +3 -3 lines
make(1): use postfix increment where possible

Revision 1.73: download - view: text, markup, annotated - select for diffs
Sun Nov 15 12:02:44 2020 UTC (4 years ago) by rillig
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +13 -18 lines
make(1): clean up make.h, meta.c, parse.c, str.c

The main changes are in the comments, which have been shortened and
corrected.

Some local variables changed their names.

In ParseErrorInternal, the scope of va_start is now narrower.

In ParseDoDependency, the type of tOp has been fixed.

ParseGetLine doesn't take flags anymore but instead a parsing mode.
Previously, the flags had not been combined anyway.

At the beginning of Parse_File, fatals is already guaranteed to be 0, and
even if not, it would be wrong to just discard the fatal errors.

Revision 1.72: download - view: text, markup, annotated - select for diffs
Sat Nov 7 10:44:53 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +4 -5 lines
make(1): add pp_skip_hspace to skip horizontal whitespace during parsing

Revision 1.71: download - view: text, markup, annotated - select for diffs
Sat Nov 7 10:16:19 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +13 -13 lines
make(1): clean up code stylistically

* Replace character literal 0 with '\0'.
* Replace pointer literal 0 with NULL.
* Remove redundant parentheses.
* Parentheses in multi-line conditions are not redundant at the
  beginning of a line.
* Replace a few !ptr with ptr == NULL.
* Replace a few ptr with ptr != NULL.
* Replace (expr & mask) == 0 with !(expr & mask).
* Remove redundant braces for blocks in cases where the generated code
  stays the same.  (Assertions further down in the code would get
  different line numbers.)
* Rename parameters in CondParser_String to reflect the data flow.
* Replace #ifdef notdef with #if 0.

The generated code stays exactly the same, at least with GCC 5.5.0 on
NetBSD 8.0 amd64 using the default configuration.

Revision 1.70: download - view: text, markup, annotated - select for diffs
Sat Oct 24 20:51:49 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +3 -3 lines
make(1): remove macros MIN and MAX

These macros typically evaluate one of their arguments twice.  Until
2020-08-31, they had not parenthesized their arguments properly.  They
are only used in a few places, therefore it doesn't hurt much to have
them expanded.

Revision 1.69: download - view: text, markup, annotated - select for diffs
Thu Oct 22 05:50:02 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +3 -3 lines
make(1): remove redundant type casts

This mainly affects the void pointers in callback functions for lists.
These had been necessary once when the parameter type was still
ClientData instead of void pointer.

Revision 1.68: download - view: text, markup, annotated - select for diffs
Mon Oct 5 19:27:47 2020 UTC (4 years, 2 months ago) by rillig
Branches: MAIN
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +2 -42 lines
make(1): revert previous commit

It had accidentally reverted all the work from the past few days.

Revision 1.67: download - view: text, markup, annotated - select for diffs
Mon Oct 5 19:24:29 2020 UTC (4 years, 2 months ago) by rillig
Branches: MAIN
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +40 -0 lines
make(1): fix double-free bug in -DCLEANUP mode (since 2020-10-02)

The bug had been introduced with dir.c 1.155 on 2020-10-02 22:20:25.  In
that commit, openDirectories was replaced with a combination of a list
with a hash table, for more efficient lookup by name.

Upon cleanup, OpenDirs_Done is called, which in turn called
Dir_ClearPath.  Dir_ClearPath takes full ownership of the given list and
empties it.  This was no problem before since afterwards the list was
empty and calling Lst_Free just frees the remaining list pointer.

With OpenDirs, this list was combined with a hash table, and the hash
table contains the list nodes, assuming that the OpenDirs functions have
full ownership of both the list and the hash table.  This assumption was
generally correct, except for the one moment during cleanup where full
ownership of the list was passed to Dir_ClearPath, while the hash table
still contained pointers to the (now freed) list nodes.  This by itself
was not a problem since the hash table would be freed afterwards.  But
as part of Dir_ClearPath, OpenDirs_Remove was called, which looked up
the freed directory by name and now found the freed list node, trying to
free it again.  Boom.

Fixed by replacing the call to Dir_ClearPath with code that only frees
the directories, without giving up control over the list.

Revision 1.66: download - view: text, markup, annotated - select for diffs
Sat Oct 3 15:00:57 2020 UTC (4 years, 2 months ago) by rillig
Branches: MAIN
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +2 -42 lines
make(1): inline Str_FindSubstring in JobOutput

Revision 1.65: download - view: text, markup, annotated - select for diffs
Sun Sep 13 15:15:51 2020 UTC (4 years, 2 months ago) by rillig
Branches: MAIN
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +4 -14 lines
make(1): clean up RCSID blocks

These blocks mostly consisted of redundant structure, following the same
#ifndef pattern over and over, with only minimal variation.

It's easier to maintain if the common structure is only written once and
encapsulated in a macro.

To avoid "defined but unused" warnings from GCC in the case where
MAKE_NATIVE is not defined, I had to add volatile.  Adding
MAKE_ATTR_UNUSED alone would not preserve the rcsid variable in the
resulting binary.

Revision 1.64: download - view: text, markup, annotated - select for diffs
Sun Aug 30 19:56:02 2020 UTC (4 years, 3 months ago) by rillig
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +17 -26 lines
make(1): replace brk_string with Str_Words

The API is much simpler, and there is less detail that is exposed by
default and fewer punctuation to type on the caller's side.  To see that
there is some memory to be freed, one would have to look into the
struct.  Having part of the return value as the actual return value and
the rest in output parameters was unnecessarily asymmetrical.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Sat Aug 29 07:52:55 2020 UTC (4 years, 3 months ago) by rillig
Branches: MAIN
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +4 -4 lines
make(1): allow for strict type checking for Boolean

Having Boolean aliased to int creates ambiguities since int is widely
used.  Allow to occasionally compile make with -DUSE_DOUBLE_BOOLEAN to
check that the type definitions still agree.

Revision 1.62: download - view: text, markup, annotated - select for diffs
Sun Aug 23 18:26:35 2020 UTC (4 years, 3 months ago) by rillig
Branches: MAIN
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +5 -5 lines
make(1): make brk_string return size_t for the number of words

Revision 1.61: download - view: text, markup, annotated - select for diffs
Sun Aug 23 18:03:35 2020 UTC (4 years, 3 months ago) by rillig
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +6 -6 lines
make(1): prepare str.c for WARNS=6

The next step is to make brk_string return size_t instead of int.

Revision 1.60: download - view: text, markup, annotated - select for diffs
Tue Aug 11 18:41:46 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +19 -3 lines
make(1): add str_concat4 to make the other code simpler

There's no need for arch.c to call strlen when there is a high-level API
for the same purpose.

Revision 1.59: download - view: text, markup, annotated - select for diffs
Mon Aug 10 19:53:19 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +19 -25 lines
make(1): replace str_concat with str_concat2 and str_concat3

The new functions have a simpler interface, and str_concat3 is even more
general-purpose, since the middle string is no longer required to be
exactly of length 1.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Mon Aug 10 19:30:30 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +6 -6 lines
make(1): fix parameter name of str_concat

The previous documentation mentioned Str_Concat, but str_concat has been
written in lowercase for years.  The "flags" are not flags since they
cannot be combined, not even when they are written in hex.

Revision 1.57: download - view: text, markup, annotated - select for diffs
Mon Aug 10 19:20:33 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +7 -14 lines
make(1): fix integer type in str_concat

Revision 1.56: download - view: text, markup, annotated - select for diffs
Sun Aug 9 10:24:02 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +21 -20 lines
make(1): format code in str.c consistently

Revision 1.55: download - view: text, markup, annotated - select for diffs
Mon Aug 3 20:26:09 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +21 -12 lines
make(1): no declaration-after-statement anymore

NetBSD make is intended to be maximally portable, therefore it uses only
C89.  This was not declared in the Makefile before.

There are still a few places in parse.c and metachar.c that use
end-of-line comments.  These will be fixed in a follow-up commit.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Sat Aug 1 10:44:23 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +12 -18 lines
make(1): reduce scope of local variables in brk_string

This also removes the unused assignment to words_cap.

Revision 1.53: download - view: text, markup, annotated - select for diffs
Sun Jul 26 16:51:53 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +14 -13 lines
make(1): document the circumstances in which brk_string returns NULL

Revision 1.52: download - view: text, markup, annotated - select for diffs
Sun Jul 19 09:26:18 2020 UTC (4 years, 4 months ago) by rillig
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +3 -107 lines
make(1): move SysV string matching to var.c

This kind of string matching is only used in variable modifiers, and only
if this feature is enabled by SYSVVARSUB.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Fri Jul 3 07:40:13 2020 UTC (4 years, 5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +67 -79 lines
make(1): refactor Str_Match

- use shorter variable names to avoid line breaks
- eliminate c2 variable
- change return type to Boolean

Revision 1.50: download - view: text, markup, annotated - select for diffs
Fri Jul 3 06:30:02 2020 UTC (4 years, 5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +11 -11 lines
make(1): clean up Str_Match

- removed unnecessary parentheses
- uniform test for end of string

Revision 1.49: download - view: text, markup, annotated - select for diffs
Fri Jul 3 06:25:23 2020 UTC (4 years, 5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +9 -10 lines
make(1): clean up documentation of Str_Match

Revision 1.48: download - view: text, markup, annotated - select for diffs
Mon Jun 15 14:46:28 2020 UTC (4 years, 5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +5 -3 lines
make(1): fix performance problem in specially crafted :M modifier

This fix was previously suspected to make the vax build fail.  The next
build succeeded though, and it started 2 hours before this fix was
reverted.

Revision 1.47: download - view: text, markup, annotated - select for diffs
Sun Jun 14 23:13:21 2020 UTC (4 years, 5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -5 lines
usr.bin/make: revert performance improvement

That change might be the cause of a build failure for vax.
http://releng.netbsd.org/builds/HEAD/202006131940Z/ builds fine.
http://releng.netbsd.org/builds/HEAD/202006141020Z/ doesn't.

The build fails with:
/home/source/ab/HEAD/src/external/gpl3/gcc/dist/gcc/machmode.h:524:28:
error: 'mode_size_inline' was not declared in this scope

Revision 1.46: download - view: text, markup, annotated - select for diffs
Sat Jun 13 21:16:27 2020 UTC (4 years, 6 months ago) by rillig
Branches: MAIN
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +5 -3 lines
usr.bin/make: make Str_Match faster for repeated asterisks

Conceptually related to https://en.wikipedia.org/wiki/ReDoS.

Revision 1.45: download - view: text, markup, annotated - select for diffs
Sat Jun 13 07:48:59 2020 UTC (4 years, 6 months ago) by rillig
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +13 -13 lines
usr.bin/make: remove redundant parentheses around return

Revision 1.44: download - view: text, markup, annotated - select for diffs
Sat Jun 13 07:36:07 2020 UTC (4 years, 6 months ago) by rillig
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +5 -5 lines
usr.bin/make: consistently use ++ for incrementing pointers

Revision 1.43: download - view: text, markup, annotated - select for diffs
Sat Jun 13 07:30:02 2020 UTC (4 years, 6 months ago) by rillig
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +5 -5 lines
usr.bin/make: fix typo in comment

Revision 1.42: download - view: text, markup, annotated - select for diffs
Wed May 6 02:30:10 2020 UTC (4 years, 7 months ago) by christos
Branches: MAIN
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +7 -3 lines
Behave like gmake: empty string does not match % pattern

Revision 1.41: download - view: text, markup, annotated - select for diffs
Sun May 3 12:10:28 2020 UTC (4 years, 7 months ago) by rillig
Branches: MAIN
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +61 -58 lines
usr.bin/make: refactor brk_string

The variables are renamed to reflect to which memory region each pointer
belongs.

The variable "curlen" was always zero.

The type of "ch" has changed to char, and its scope is now limited to
its actual use.

Comparisons of pointers are now consistently written as p != NULL
instead of !p, like character comparisons are written as ch != '\0'.

The "store_words_buf" is updated when the function returns, not before.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Sat Apr 25 18:20:57 2020 UTC (4 years, 7 months ago) by christos
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +14 -9 lines
- Percent on the rhs is special only if the lhs has one too.
- If the rhs does not have percent, but the lhs has, the result is the rhs
This behavior matches gmake

Revision 1.38.12.1: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:09:16 2020 UTC (4 years, 8 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.38: preferred, colored; next MAIN 1.39: preferred, colored
Changes since revision 1.38: +5 -3 lines
Merge changes from current as of 20200406

Revision 1.39: download - view: text, markup, annotated - select for diffs
Sun Dec 1 23:53:49 2019 UTC (5 years ago) by rillig
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +5 -3 lines
Fix out-of-bounds read in Str_Match.

Revision 1.36.2.1: download - view: text, markup, annotated - select for diffs
Wed Apr 26 02:53:35 2017 UTC (7 years, 7 months ago) by pgoyette
Branches: pgoyette-localcount
Diff to: previous 1.36: preferred, colored; next MAIN 1.37: preferred, colored
Changes since revision 1.36: +17 -5 lines
Sync with HEAD

Revision 1.38: download - view: text, markup, annotated - select for diffs
Fri Apr 21 22:15:44 2017 UTC (7 years, 7 months ago) by sjg
Branches: MAIN
CVS tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, phil-wifi-20191119, phil-wifi-20190609, pgoyette-localcount-20170426, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, netbsd-9-base, netbsd-9-4-RELEASE, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, netbsd-8-base, netbsd-8-3-RELEASE, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek
Branch point for: phil-wifi
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +9 -6 lines
Str_Match: fix closure tests for [^] and add unit-test.

Revision 1.36.4.1: download - view: text, markup, annotated - select for diffs
Fri Apr 21 16:54:14 2017 UTC (7 years, 7 months ago) by bouyer
Branches: bouyer-socketcan
Diff to: previous 1.36: preferred, colored; next MAIN 1.37: preferred, colored
Changes since revision 1.36: +14 -5 lines
Sync with HEAD

Revision 1.37: download - view: text, markup, annotated - select for diffs
Tue Apr 11 17:30:13 2017 UTC (7 years, 8 months ago) by sjg
Branches: MAIN
CVS tags: bouyer-socketcan-base1
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +14 -5 lines
Str_Match: allow [^a-z] to behave as expected.

Revision 1.36: download - view: text, markup, annotated - select for diffs
Wed Apr 6 09:57:00 2016 UTC (8 years, 8 months ago) by gson
Branches: MAIN
CVS tags: pgoyette-localcount-base, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, localcount-20160914, bouyer-socketcan-base
Branch point for: pgoyette-localcount, bouyer-socketcan
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +4 -4 lines
Fully avoid the nonstandard types u_char, u_int, and u_long, which
were only used inconsistently in a few places anyway.

Revision 1.34.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 20 00:05:00 2014 UTC (10 years, 3 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.34: preferred, colored; next MAIN 1.35: preferred, colored
Changes since revision 1.34: +10 -4 lines
Rebase to HEAD as of a few days ago.

Revision 1.33.6.2: download - view: text, markup, annotated - select for diffs
Thu May 22 11:42:46 2014 UTC (10 years, 6 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.33.6.1: preferred, colored; branchpoint 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33.6.1: +10 -4 lines
sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.35: download - view: text, markup, annotated - select for diffs
Wed Feb 12 01:35:56 2014 UTC (10 years, 10 months ago) by sjg
Branches: MAIN
CVS tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +10 -4 lines
Reduce the calls to realloc from brk_string by basing initial argmax guess
on length of input.

Reviewed by: christos

Revision 1.33.6.1: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:09:36 2012 UTC (12 years, 7 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +5 -3 lines
sync with head

Revision 1.34: download - view: text, markup, annotated - select for diffs
Sat Mar 3 23:16:47 2012 UTC (12 years, 9 months ago) by dholland
Branches: MAIN
CVS tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, dholland-make-base, agc-symver-base, agc-symver
Branch point for: tls-maxphys
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +5 -3 lines
Note in comment that Str_Match() does not detect or report invalid
patterns. This is not critical, since for the moment both possible
cases (unclosed [], and \ at the end of the string) are handled more
or less sanely.

Revision 1.32.2.1: download - view: text, markup, annotated - select for diffs
Wed May 13 19:19:57 2009 UTC (15 years, 7 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +4 -4 lines
Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html

Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Feb 25 21:17:21 2009 UTC (15 years, 9 months ago) by sno
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-premerge-20091211, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-mips64-premerge-20101231, jym-xensuspend-nbase, jym-xensuspend-base, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +4 -4 lines
replace c++ style comment by a c-style one

Revision 1.32: download - view: text, markup, annotated - select for diffs
Sat Jan 17 13:29:37 2009 UTC (15 years, 10 months ago) by dsl
Branches: MAIN
Branch point for: jym-xensuspend
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +7 -7 lines
Change 'Buffer' so that it is the actual struct, not a pointer to it.
Saves having to malloc/free a fixed size structure.
Buf_Init() now takes ptr to Buffer to initialiase.
Change Buf_Destroy() to return ptr to string when not freed.
Remove large number of casts to (Byte) and (Byte *) - 'Byte' is 'char' here.
Buf_AddByte[s] guarantees that the data is 0 termininated, so never add '\0'.
Keep 'count' not 'left' and 'inPtr', code is simplier with only one update.
Fix fallou, no functional change.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Fri Dec 19 22:04:36 2008 UTC (15 years, 11 months ago) by christos
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +11 -4 lines
PR/32154: Roland Illig: brk_string fails to report errors in unquoted strings.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Fri Dec 19 21:34:14 2008 UTC (15 years, 11 months ago) by christos
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +8 -4 lines
PR/34138: Roland Illig: In the non-expand case, fix brk_string not to eat
quotes.

Revision 1.29: download - view: text, markup, annotated - select for diffs
Mon Oct 6 22:09:21 2008 UTC (16 years, 2 months ago) by joerg
Branches: MAIN
CVS tags: netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +7 -7 lines
Don't use emalloc and friends directly, but call them consistently
bmake_malloc and friends. Implement them via macros for the native case
and provide fallback implementations otherwise. Avoid polluting the
namespace by not defining enomem globally. Don't bother to provide
strdup and strndup, they were only used for the estrdup and estrndup
comapt code.

This addresses the presence of emalloc in system libraries on A/UX and
resulted strange issues as reported by Timothy E. Larson.

Revision 1.28: download - view: text, markup, annotated - select for diffs
Fri Feb 15 21:29:50 2008 UTC (16 years, 10 months ago) by christos
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, mjf-devfs2-base, mjf-devfs2, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-nbase, hpcarm-cleanup-base
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +10 -10 lines
back all changes out until I fix it properly.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Thu Feb 14 22:11:20 2008 UTC (16 years, 10 months ago) by christos
Branches: MAIN
CVS tags: christos-broken
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +13 -13 lines
- use pid_t/size_t as appropriate instead of int.
- use %ld to print pids.
- fix a bit of lint.
- WARNS=4

Revision 1.25.4.1: download - view: text, markup, annotated - select for diffs
Mon Sep 3 07:05:31 2007 UTC (17 years, 3 months ago) by wrstuden
Branches: wrstuden-fixsa
Diff to: previous 1.25: preferred, colored; next MAIN 1.26: preferred, colored
Changes since revision 1.25: +11 -3 lines
Sync w/ NetBSD-4-RC_1

Revision 1.25.2.1: download - view: text, markup, annotated - select for diffs
Tue Jun 5 20:53:31 2007 UTC (17 years, 6 months ago) by bouyer
Branches: netbsd-4
CVS tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0
Diff to: previous 1.25: preferred, colored; next MAIN 1.26: preferred, colored
Changes since revision 1.25: +11 -3 lines
Apply patch (requested by tron in ticket #696):
	usr.bin/make/compat.c		patch
	usr.bin/make/cond.c		patch
	usr.bin/make/dir.c		patch
	usr.bin/make/for.c		patch
	usr.bin/make/main.c		patch
	usr.bin/make/make.1		patch
	usr.bin/make/make.c		patch
	usr.bin/make/make.h		patch
	usr.bin/make/nonints.h		patch
	usr.bin/make/parse.c		patch
	usr.bin/make/str.c		patch
	usr.bin/make/targ.c		patch
	usr.bin/make/util.c		patch
	usr.bin/make/var.c		patch

Synchronize make(1) with HEAD branch to increase perfomance and
improve stability.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Fri Dec 22 20:28:31 2006 UTC (17 years, 11 months ago) by erh
Branches: MAIN
CVS tags: matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-base, matt-armv6, hpcarm-cleanup, cube-autoconf-base, cube-autoconf
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +11 -3 lines
Correctly handle '\' at the end of a variable in the non-expanding case.

Revision 1.25: download - view: text, markup, annotated - select for diffs
Fri Aug 11 19:11:00 2006 UTC (18 years, 4 months ago) by christos
Branches: MAIN
CVS tags: netbsd-4-base
Branch point for: wrstuden-fixsa, netbsd-4
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +5 -3 lines
If a word is "" eat the last quote since we ate the first.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Mon Aug 8 16:42:54 2005 UTC (19 years, 4 months ago) by christos
Branches: MAIN
CVS tags: chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +8 -8 lines
From Max Okumoto:
- Remove casts to NULL.
- Remove space between cast and object.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Wed Feb 16 15:11:52 2005 UTC (19 years, 9 months ago) by christos
Branches: MAIN
CVS tags: netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +4 -4 lines
PR/29203, PR/29204: Max Okumoto: KNF changes to make [no functional changes]

Revision 1.21.2.1: download - view: text, markup, annotated - select for diffs
Mon May 10 15:43:25 2004 UTC (20 years, 7 months ago) by tron
Branches: netbsd-2-0
CVS tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2
Diff to: previous 1.21: preferred, colored; next MAIN 1.22: preferred, colored
Changes since revision 1.21: +4 -4 lines
Pull up revision 1.22 (requested by sjg in ticket #282):
Simplify build, no functional changes.
Instead of adding MAKE_BOOTSTRAP for hosted environments, i.e., when
you want things simple, instead add MAKE_NATIVE to get those hugely
important features like __RCSID().
It's now possible to build make on some hosts with: cc *.c */*.c

Revision 1.22: download - view: text, markup, annotated - select for diffs
Fri May 7 00:04:40 2004 UTC (20 years, 7 months ago) by ross
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +4 -4 lines
Simplify build, no functional changes.

Instead of adding MAKE_BOOTSTRAP for hosted environments, i.e., when
you want things simple, instead add MAKE_NATIVE to get those hugely
important features like __RCSID().

It's now possible to build make on some hosts with: cc *.c */*.c

Revision 1.21: download - view: text, markup, annotated - select for diffs
Sat Sep 27 21:29:37 2003 UTC (21 years, 2 months ago) by sjg
Branches: MAIN
CVS tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +4 -5 lines
Implement :[] modifier to allow picking a range of words out of a variable.
Also :tW and a W flag to :C and :S to allow treating value as a single word.
Add unit tests for the above, and fix some corner cases.
Based on patches supplied by Alan Barrett <apb@cequrux.com>

Revision 1.20: download - view: text, markup, annotated - select for diffs
Thu Aug 7 11:14:57 2003 UTC (21 years, 4 months ago) by agc
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +33 -3 lines
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Mon Jul 14 18:19:13 2003 UTC (21 years, 5 months ago) by christos
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +19 -23 lines
Pass WARNS=3

Revision 1.18: download - view: text, markup, annotated - select for diffs
Sat Jun 15 18:24:57 2002 UTC (22 years, 6 months ago) by wiz
Branches: MAIN
CVS tags: fvdl_fs64_base
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +23 -31 lines
Remove !__STDC__ stuff, de-__P(), ANSIfy, and de-register.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Fri Nov 6 23:31:09 1998 UTC (26 years, 1 month ago) by christos
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, wrstuden-devbsize, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5, netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, minoura-xpg4dl-base, minoura-xpg4dl, comdex-fall-1999-base, comdex-fall-1999
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +5 -4 lines
- full prototypes
- more conservative printf
- char -> unsigned char

Revision 1.15.2.1: download - view: text, markup, annotated - select for diffs
Fri May 8 06:12:08 1998 UTC (26 years, 7 months ago) by mycroft
Branches: netbsd-1-3
CVS tags: netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002
Diff to: previous 1.15: preferred, colored; next MAIN 1.16: preferred, colored
Changes since revision 1.15: +11 -45 lines
Sync with trunk, per request of christos.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Thu Mar 26 19:20:37 1998 UTC (26 years, 8 months ago) by christos
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +11 -45 lines
PR/5210: Hauke Fath: make core dumps with .SHELL
Unfortunately this revealed a deeper problem with the brk_string code.
To fix it:
	- remove sharing of the buffer between brk_string invocations
	- change the semantics of brk_string so that the argument array
	  starts with 0, and return the buffer where the strings are
	  stored

Revision 1.15: download - view: text, markup, annotated - select for diffs
Sun Sep 28 03:31:10 1997 UTC (27 years, 2 months ago) by lukem
Branches: MAIN
CVS tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH001, netbsd-1-3-BETA
Branch point for: netbsd-1-3
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +6 -2 lines
wrap #include <sys/cdefs.h>, __RCSID(...) stuff in #ifndef MAKE_BOOTSTRAP

Revision 1.14: download - view: text, markup, annotated - select for diffs
Tue Jul 1 21:17:37 1997 UTC (27 years, 5 months ago) by christos
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +3 -2 lines
Add WARNS=1
RCSID police

Revision 1.12.4.1: download - view: text, markup, annotated - select for diffs
Sun Jan 26 05:51:51 1997 UTC (27 years, 10 months ago) by rat
Branches: netbsd-1-2
CVS tags: netbsd-1-2-PATCH001
Diff to: previous 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12: +17 -16 lines
Update make(1) from trunk, by request from Christos Zoulas.  Fixes many bugs.

Revision 1.1.1.2 (vendor branch): download - view: text, markup, annotated - select for diffs
Sat Dec 28 04:41:16 1996 UTC (27 years, 11 months ago) by tls
Branches: WFJ-920714, CSRG
CVS tags: lite-2
Diff to: previous 1.1.1.1: preferred, colored
Changes since revision 1.1.1.1: +177 -25 lines
Import 4.4BSD-Lite2 sources onto CSRG branch (already merged at head)

Revision 1.13: download - view: text, markup, annotated - select for diffs
Wed Nov 6 17:59:23 1996 UTC (28 years, 1 month ago) by christos
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +17 -16 lines
- Merge in FreeBSD and Lite2 changes.
- Fix bug where a non-archive target with a .a suffix would always
  be considered to be out of date, since it does not have a TOC.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Fri Mar 29 02:17:34 1996 UTC (28 years, 8 months ago) by jtc
Branches: MAIN
CVS tags: netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-BETA
Branch point for: netbsd-1-2
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +4 -5 lines
Added erealloc() function that calls enomem() if the allocation fails
(this is like the existing emalloc() function).  Changed all realloc()
calls to erealloc().

Revision 1.10.2.1: download - view: text, markup, annotated - select for diffs
Mon Oct 30 22:55:14 1995 UTC (29 years, 1 month ago) by jtc
Branches: netbsd-1-1
CVS tags: netbsd-1-1-RELEASE, netbsd-1-1-PATCH001
Diff to: previous 1.10: preferred, colored; next MAIN 1.11: preferred, colored
Changes since revision 1.10: +4 -4 lines
Update from trunk: Always ensure space for trailing NULL in argv

Revision 1.11: download - view: text, markup, annotated - select for diffs
Mon Oct 30 17:36:27 1995 UTC (29 years, 1 month ago) by ws
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +4 -4 lines
Always ensure space for trailing NULL in argv

Revision 1.10: download - view: text, markup, annotated - select for diffs
Wed Jun 14 15:19:56 1995 UTC (29 years, 6 months ago) by christos
Branches: MAIN
CVS tags: netbsd-1-1-base
Branch point for: netbsd-1-1
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +7 -2 lines
- $NetBSD$ rcsids
- Fixed so that .[A-Z]* targets that do not match keywords are ignored as
  Posix mandates
- Added .PHONY target keyword

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sat Feb 4 23:44:41 1995 UTC (29 years, 10 months ago) by christos
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +5 -3 lines
str.c: Don't free NULL; does not work with non posix frees.
var.c: Minor memory leak plugged.
suff.c: Don't add extra sources on the null suffix if it has dependency
	lines or commands attached to it [POSIX says so]

Revision 1.8: download - view: text, markup, annotated - select for diffs
Thu Jun 16 18:50:18 1994 UTC (30 years, 6 months ago) by jtc
Branches: MAIN
CVS tags: netbsd-1-0-base, netbsd-1-0-RELEASE, netbsd-1-0-PATCH1, netbsd-1-0-PATCH06, netbsd-1-0-PATCH05, netbsd-1-0-PATCH04, netbsd-1-0-PATCH03, netbsd-1-0-PATCH02, netbsd-1-0-PATCH0, netbsd-1-0
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +20 -3 lines
Christos' fix for quoting variable extraction properly.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Mon Jun 6 22:45:43 1994 UTC (30 years, 6 months ago) by jtc
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +38 -12 lines
Fixes from Christos Zoulas, who used purify, objectcenter and testcenter
to find memory leaks and illegal memory accesses.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Tue May 17 15:55:42 1994 UTC (30 years, 7 months ago) by jtc
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +8 -2 lines
Properly parse null command line arguments in makefile rules.
Fix from Christos Zoulas.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Wed Mar 23 00:52:13 1994 UTC (30 years, 8 months ago) by jtc
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +6 -3 lines
Fixes from Christos Zoulas:
The following two patches fix a couple of problems with make(1)

1. Null Suffixes were not being copied, but they were being free'd
   This caused rules of the form:

   .c:
	${CC} ...

   to access invalid memory and potentially core dump..
   [That was always broken; I did not break that one :-)]

2. My recent fixes to parse ${VAR:%.foo=%.bar} handled the null string
   case incorrectly (${VAR:=.c} was broken).

Revision 1.4: download - view: text, markup, annotated - select for diffs
Sat Mar 5 00:35:08 1994 UTC (30 years, 9 months ago) by cgd
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +106 -10 lines
fixes/improvements from Christos Zoulas <christos@deshaw.com>.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Thu Jan 13 21:02:03 1994 UTC (30 years, 11 months ago) by jtc
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +2 -1 lines
Include appropriate header files to bring prototypes into scope.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Sun Aug 1 18:11:43 1993 UTC (31 years, 4 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +2 -1 lines
Add RCS identifiers.

Revision 1.1.1.1 (vendor branch): download - view: text, markup, annotated - select for diffs
Sun Mar 21 09:45:37 1993 UTC (31 years, 9 months ago) by cgd
Branches: WFJ-920714, CSRG
CVS tags: patchkit-0-2-2, netbsd-alpha-1, netbsd-0-9-base, netbsd-0-9-RELEASE, netbsd-0-9-BETA, netbsd-0-9-ALPHA2, netbsd-0-9-ALPHA, netbsd-0-9, netbsd-0-8, WFJ-386bsd-01
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +0 -0 lines
initial import of 386bsd-0.1 sources

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Mar 21 09:45:37 1993 UTC (31 years, 9 months ago) by cgd
Branches: MAIN
Initial revision

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>