[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] make branch, master, updated. 4.3-37-g58a3792
From: |
Paul D. Smith |
Subject: |
[SCM] make branch, master, updated. 4.3-37-g58a3792 |
Date: |
Sun, 29 Nov 2020 18:02:27 -0500 (EST) |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "make".
The branch, master has been updated
via 58a37927e6f36ff0b9b53c57c0690b20430c928e (commit)
via ec272f3a9cd3881f43539012c7cf576fed967e8f (commit)
via ef6aca5a389a34a5d0fbfc30cebd5f5e886cceb6 (commit)
via b262ea5d8f7df10627e846cb7de3f30a2351dd1b (commit)
via cc20f90507adb74578f509c7ff7b622d6058f7aa (commit)
via 9e2fa24649b870d79e2582f46e851fb34daa4762 (commit)
via 2dc0280d82dd11bc6bb06363f27dd7739ee8a371 (commit)
via 90959b8b70be9d81bb559f51a3a894d80dc5d469 (commit)
via 19ae6fe72ace81bd16f02bd40635bbc766e53c95 (commit)
via 0e020bbc24d89592e9ea15f9e8b887a71692eedf (commit)
via c01222c0181f9bb4297459663d13444ebfe3ad97 (commit)
via 957aa450a073796513f9d4d815ef36ad00823be0 (commit)
from e49e11e069fe7f214263be1782242b9b50f71eaa (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 58a37927e6f36ff0b9b53c57c0690b20430c928e
Author: Paul Smith <psmith@gnu.org>
Date: Sun Nov 29 17:40:34 2020 -0500
* maintMakefile: [SV 58794] Check for file existence in the release
commit ec272f3a9cd3881f43539012c7cf576fed967e8f
Author: Paul Smith <psmith@gnu.org>
Date: Sun Nov 29 16:02:41 2020 -0500
* Makefile.am (HAVE_GUILE): Only use Guile options if HAVE_GUILE.
commit ef6aca5a389a34a5d0fbfc30cebd5f5e886cceb6
Author: Paul Smith <psmith@gnu.org>
Date: Sun Nov 29 16:02:12 2020 -0500
* tests/scripts/features/vpathgpath: Avoid duplicate function name.
commit b262ea5d8f7df10627e846cb7de3f30a2351dd1b
Author: Paul Smith <psmith@gnu.org>
Date: Sun Nov 29 14:28:29 2020 -0500
Resolve unused-result warnings for alloca(0)
* src/makeint.h (free_alloca): New macro to defeat warn_unused_result.
* src/read.c (eval_makefile): Call it.
(eval_buffer): Ditto.
* src/remake.c (update_file): Ditto.
commit cc20f90507adb74578f509c7ff7b622d6058f7aa
Author: Paul Smith <psmith@gnu.org>
Date: Sun Nov 29 14:03:30 2020 -0500
Avoid some valgrind warnings
Using sscanf() to parse archive header values (struct ar_hdr) can lead
to valgrind warnings which are probably bogus but are annoying.
To be safer, create a local method to convert the ASCII integer
strings into integers.
* src/arscan.c (parse_int): Turn integer strings into integers.
(ar_scan): Initialize struct ar_hdr memory.
Call parse_int() rather than sscanf/atol.
commit 9e2fa24649b870d79e2582f46e851fb34daa4762
Author: Paul Smith <psmith@gnu.org>
Date: Fri Nov 27 17:07:53 2020 -0500
[SV 41273] Allow the directory cache to be invalidated
Each time we invoke a command it's possible that it will change the
filesystem in ways that were not described by the target. If that
happens but we have cached previous directory contents then we may
make decisions or report results based on obsolete information.
Keep a count of how many commands we've invoked, and remember the
current command count every time we load the contents of a directory.
If we request the directory and the current command count has changed
we know the cache is outdated so reload from scratch.
* NEWS: Announce the change.
* src/makeint.h (command_count): Create a global counter.
* src/main.c (command_count): Ditto.
* src/job.c (reap_children): Increment the counter on job completion.
* src/function.c (func_file): Increment if we write a file.
* src/dir.c (clear_directory_contents): Clear the current contents of
a cached directory.
(struct directory_contents): Remember the counter value.
(struct directory): Remember the counter value for non-existing dirs.
(find_directory): If we have a cached directory and the count hasn't
changed then return it. Else, clear the previous contents and re-read
from scratch.
* tests/scripts/features/dircache: Add tests of the directory cache.
commit 2dc0280d82dd11bc6bb06363f27dd7739ee8a371
Author: Paul Smith <psmith@gnu.org>
Date: Sat Nov 28 12:30:08 2020 -0500
Support "unexport" in target-specific variables.
Rewrite the environment variable algorithm to correctly inherit
export settings from parent variable sets. The new algorithm
for computing the table of environment variables is:
- Start with the most local variable set and proceed to global.
- If the variable already exists in the table and we don't know
its export status, update it with the current variable's status.
- If the variable is not in the table and it's not global, add it
regardless of its status so if it's unexported we remember that.
- If the variable is not in the table and is global, check its
export status and don't add it if we won't export it.
Then when generating the environment variables, check the export
status of each variable in case it was a target-specific variable
and we have determined it should not be exported.
Rework SHELL handling to check at the end whether we added it or
not and if we didn't, add the value from the environment.
* NEWS: Announce support for target-specific "unexport"."
* doc/make.texi (Target-specific): Document the support.
* src/variable.h (enum variable_export): Make into a global type.
* src/read.c (struct vmodifiers): Use enum variable_export rather
than individual booleans.
(parse_var_assignment): Parse the "unexport" keyword.
(eval): Remember the vmodifier value in the variable.
(record_target_var): Ditto.
* src/variable.c (should_export): Check if the variable should be
exported.
(target_environment): Implement the above algorithm.
* tests/scripts/features/export: Test export/unexport with variable
assignments on the same line.
* tests/scripts/features/targetvars: Add a comprehensive suite of
tests for different types of target-specific export / unexport.
* tests/scripts/variables/SHELL: Update the comment.
commit 90959b8b70be9d81bb559f51a3a894d80dc5d469
Author: Dmitry Goncharov <dgoncharov@users.sf.net>
Date: Fri Nov 27 17:18:05 2020 -0500
[SV 59230] Preserve export settings for target-specific vars
* src/read.c (record_target_var): Don't overwrite pre-existing export
flag unless we're changing it.
* tests/scripts/features/targetvars: Add a test.
commit 19ae6fe72ace81bd16f02bd40635bbc766e53c95
Author: Paul Smith <psmith@gnu.org>
Date: Fri Nov 27 16:56:22 2020 -0500
[SV 59230] Ensure environment variables are exportable
When checking for invalid environment variable names we searched the
entire name string instead of just the first LENGTH chars; this could
cause us to incorrectly decide the variable was not exportable.
Dmitry Goncharov <dgoncharov@users.sf.net> found this bug and
provided a test case and sample fix: I used the test but chose a
slightly different fix.
* src/variable.c (define_variable_in_set): check the variable name
not the input string.
* tests/scripts/features/targetvars: Ensure environment variable
values are exported.
commit 0e020bbc24d89592e9ea15f9e8b887a71692eedf
Author: Paul Smith <psmith@gnu.org>
Date: Fri Nov 27 16:16:38 2020 -0500
* src/default.c (default_variables) [AIX]: [SV 59096] Fix ARFLAGS
Reported by Dmitry Goncharov <dgoncharov@users.sf.net>, with a patch
changing the pattern rule for building archives. I decided to
change the default value of ARFLAGS on AIX instead.
commit c01222c0181f9bb4297459663d13444ebfe3ad97
Author: Paul Smith <psmith@gnu.org>
Date: Fri Nov 27 11:37:29 2020 -0500
[SV 35711] Check for special targets earlier
GNU make must recognize some special targets as they are defined.
Because of the way targets are defined, we were not recognizing these
special targets until we were handling the NEXT statement. However
that's too late for some special targets such as .POSIX etc. which can
change the behavior of make during parsing.
Check for special targets earlier, as soon as we've finished parsing
the target introduction line (before we've even parsed the recipe).
* NEWS: Mention the change.
* src/read.c (check_specials): New function to look for special
targets. Move checks from eval() and record_files() to this new
function.
(eval): Call check_specials() after we've completed parsing the target
introduction line. Move default goal detection to check_specials().
(record_files): Move handling of .POSIX, .SECONDEXPANSION, and
.ONESHELL to check_specials().
* tests/scripts/misc/bs-nl: Remove workaround for late .POSIX issue.
* tests/scripts/targets/POSIX: Add a comment.
commit 957aa450a073796513f9d4d815ef36ad00823be0
Author: Paul Smith <psmith@gnu.org>
Date: Sat Nov 28 12:27:49 2020 -0500
* .ccls: Disable clang compare against static string warning
-----------------------------------------------------------------------
Summary of changes:
.ccls | 1 +
Makefile.am | 12 +-
NEWS | 12 ++
doc/make.texi | 5 +-
maintMakefile | 18 +--
src/arscan.c | 37 +++++-
src/default.c | 7 +-
src/dir.c | 258 +++++++++++++++++++++-----------------
src/function.c | 5 +
src/job.c | 11 +-
src/main.c | 6 +
src/makeint.h | 8 ++
src/read.c | 215 ++++++++++++++++---------------
src/remake.c | 2 +-
src/variable.c | 122 ++++++++++--------
src/variable.h | 15 ++-
tests/scripts/features/dircache | 31 +++++
tests/scripts/features/export | 22 +++-
tests/scripts/features/targetvars | 140 ++++++++++++++++++++-
tests/scripts/features/vpathgpath | 4 +-
tests/scripts/misc/bs-nl | 2 -
tests/scripts/targets/POSIX | 2 +
tests/scripts/variables/SHELL | 9 +-
23 files changed, 626 insertions(+), 318 deletions(-)
create mode 100644 tests/scripts/features/dircache
hooks/post-receive
--
make
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] make branch, master, updated. 4.3-37-g58a3792,
Paul D. Smith <=