Commit Graph

306419 Commits

Author SHA1 Message Date
rillig eae7578437 tests/make: cover purging the realpath cache
In purge_relative_cached_realpaths, the hash table containing the cache
is modified while being iterated, which needs extra care, so add a test
that covers this code in at least a single simple scenario.
2024-06-01 11:06:17 +00:00
martin 74b93bff11 Fix typo in previous 2024-06-01 10:17:12 +00:00
rillig 241c9849b3 make: require return value of HashIter_Next to be used
This would have prevented an endless loop in
purge_relative_cached_realpaths.
2024-06-01 10:10:50 +00:00
rillig cdbdfe2384 tests/make: require all expected messages to be listed in the .mk files 2024-06-01 10:06:23 +00:00
tsutsui 4f42adff2a Don't try to set non-POSIX struct stat members on tools builds.
Fixes PR/58278 (src/tools/gzip build failed on Cygwin).
2024-06-01 09:45:36 +00:00
sjg 7aee84d4aa make: ensure loop termination in purge_relative_cached_realpaths
You cannot ignore the return from HashIter_Next
2024-06-01 07:37:19 +00:00
sjg cdcc95b114 make: add .export-all
An explicit syntax for exporting all global variables is much safer
than allowing .export with no argument to do the same.

Add .export-all and have .export with no argument throw a warning saying
to use .export-all

Reviewed by: rillig
2024-06-01 06:26:36 +00:00
rillig f8e0665918 make: remove unused VARE_EVAL_KEEP_DOLLAR 2024-06-01 05:08:48 +00:00
tsutsui 8b057ce4a3 Note about import of mkhybrid as a tool. 2024-05-31 21:07:40 +00:00
tsutsui 00acf8c80e Note about current status. 2024-05-31 21:04:22 +00:00
tsutsui fbc71c25d4 Use tools/mkhybrid as MKISOFS for mac68k and future macppc. 2024-05-31 20:58:52 +00:00
tsutsui 1fe42822fe Drop -data-change-warn from MKISOFS_FLAGS.
It's available only on cdrtools-3.x and later.
2024-05-31 20:57:32 +00:00
tsutsui 25b14f946f Build mac68k and macppc iso images using tools/mkhybrid. 2024-05-31 20:54:33 +00:00
tsutsui 09b5dada8b Build mkhybrid as a build tool. 2024-05-31 20:52:58 +00:00
tsutsui fdd5a63245 Pull malloc related fixes from cdrtools-2.01.
This seems to fix SIGSEGV during free(3) in write.c:write_one_file().
2024-05-31 20:50:48 +00:00
tsutsui df2645b420 Tweak OPTION_* definitions to reduce diffs from mkisofs-1.13. 2024-05-31 20:49:44 +00:00
tsutsui 61957e4641 Pull -graft-points option from mkisofs-1.13 and cdrtools-2.01.
Also remove #ifdef APPLE_HYB for NON-HFS changes to reduce diffs.
2024-05-31 20:48:22 +00:00
tsutsui b1bd5b8fae Pull options -hide-joliet-trans-tbl and -hide-rr-moved from mkisofs-1.13. 2024-05-31 20:46:19 +00:00
tsutsui 61549db5f1 Appease more warnings and remove unused getopt functions. 2024-05-31 20:44:36 +00:00
tsutsui d8b35192d7 Use HAVE_CONFIG_H to include <stdlib.h> and <string.h> in getopt sources. 2024-05-31 20:41:50 +00:00
tsutsui b3743583f0 Check <stdlib.h> and <flock.h> in configure and regen config.h. 2024-05-31 20:40:06 +00:00
tsutsui 76c5065a9f Tweak and regen configure using autoconf-2.13 to use pkgsrc tools. 2024-05-31 20:37:55 +00:00
tsutsui ab20b516c9 Always use local getopt.h as cdrtools-2.01 did. 2024-05-31 20:36:24 +00:00
tsutsui d663fb0928 Remove ancient rlimit hacks for NetBSD disabled in cdrtools-2.01. 2024-05-31 20:34:18 +00:00
tsutsui a56b9f7088 Don't redefine SYSTEM_ID_DEFAULT if it's specified in CPPFLAGS. 2024-05-31 20:33:12 +00:00
tsutsui 5597b179bd Remove duplicated SYSTEM_ID_DEFAULT definitions. 2024-05-31 20:32:03 +00:00
tsutsui a11dc48b63 Appease discard-const warnings. 2024-05-31 20:31:05 +00:00
tsutsui 3acbd1aa78 Suppress implicit declaration warnings. 2024-05-31 20:29:24 +00:00
tsutsui 6a13daf634 Update mkhybrid Makefile for NetBSD's tools builds. 2024-05-31 20:27:19 +00:00
tsutsui 7804f23efd Make newer BSD Licensed libfile sources build as tools. 2024-05-31 20:25:41 +00:00
tsutsui 785d5ade45 Pull changes from mkisofs-1.12.1 to avoid statvfs(2). 2024-05-31 20:23:33 +00:00
rillig 29b142dfe2 make: merge functions that parse modifier parts
This commit subtly changes the behavior for the :gmtime and :localtime
modifiers, but only in irrelevant cases since the time value must be an
integer, and neither '\' nor ':' nor '$' may occur in these values.
2024-05-31 20:21:34 +00:00
tsutsui fd4241d590 Remove dependencies on non-existent exclude.h. 2024-05-31 20:21:06 +00:00
tsutsui 75490c835a Import BSD licensed libfile for mkhybrid builds from cdrtools-3.01.
- unnecessary files for tools build are not imported
- file.c is renamed to lfile.c to avoid conflict with libhfs_iso
- RCSId strings are trimmed
2024-05-31 19:52:25 +00:00
tsutsui ddaa4e7dfc Import mkhybrid from OpenBSD 7.3 to create ISO9660/HFS hybrid ISO images.
- files in libfile except proto.h prepared by OpenBSD are not imported
  due to non-standard license
  (newer BSD Licensed versions will be imported later)
- unnecessary files for tools build are not imported
- RCSId strings are trimmed to avoid unintended substitutions

Proposed on tech-toolchain@:
 https://mail-index.netbsd.org/tech-toolchain/2024/05/25/msg004355.html
2024-05-31 19:49:02 +00:00
skrll 942f913628 Add more ABI register defines - should have been committed with previous
change.
2024-05-31 13:11:41 +00:00
rillig 0fbf3fce65 tests/make: replace or document .error in tests
The text 'Missing argument for ".error"' in an .exp file may be a hint
for an accidentally broken test, so eliminate them as far as possible.
2024-05-31 07:13:12 +00:00
rillig 72b6692e9f make: simplify expression in iteration over hash tables 2024-05-31 07:11:12 +00:00
rillig 2864ddb2e9 make: clean up API for iterating over hash tables 2024-05-31 05:50:11 +00:00
riastradh 9017c2c0e2 nd_timer: Update la_numheld when we clear la_hold (a.k.a. ln_hold).
Followup for PR kern/58297 fix.  Patch by mlelstv@.

PR kern/58301
2024-05-30 23:00:39 +00:00
rillig 880d6717fe make: don't log anything when freeing memory 2024-05-30 21:50:34 +00:00
skrll 95bbc8c712 Annotate the RISC-V signal trampoline with CFI attributes. 2024-05-30 15:56:43 +00:00
msaitoh 588e74af68 Move RECOVERY_MODE feature test code for readability. No functional change.
ixgbe.c rev. 1.169 inserted RECOVERY_MODE feature test in between
 MSI-X allocation and legacy allocation. To improve code readability,
move it to earlier location.
2024-05-30 08:55:02 +00:00
msaitoh f6e78d1295 Fix previous comment fix.
It seems that the work "yppush" was not duplicated.
It was two sentences without period. To make it clear,
add a colon and a newline. Found by rillig@.
2024-05-30 03:33:31 +00:00
christos 646e9b4018 should not be using .include <> but .include "" here. 2024-05-29 18:58:00 +00:00
christos 2e795eb86e Improve robustness (from kre@) 2024-05-29 13:35:12 +00:00
mlelstv 38f30d04ac The module also needs the syscall for old dup3. 2024-05-29 06:47:23 +00:00
riastradh 256d995a31 New make(1) variable NETBSD_REVISIONID in the NetBSD build.
This is intended to be a tree-wide revision identifier, like a commit
hash or similar.  This way, in builds from non-CVS trees where
per-file $NetBSD$ revision ids aren't incremented, we can still track
some version provenance of files with ident(1).

If defined, bsd.own.mk adds a macro _NETBSD_REVISIONID to CPPFLAGS
with the stringified text of NETBSD_REVISIONID.

In turn, if _NETBSD_REVISIONID is defined in sys/cdefs.h, then
__RCSID will put the concatenation of:
- `$NetBSD: '
- the file name
- ` '
- _NETBSD_REVISIONID
- ` $'
alongside the per-file revision id passed as an argument to __RCSID.

Since this is passed through command-line arguments, it doesn't cause
make to consider any dependencies to change when the revision id
changes -- so incremental builds remain incremental.  And if you
don't set it, nothing changes from the __RCSID we had before.

Currently nothing sets NETBSD_REVISIONID automatically yet -- subject
to experimentation.  Could just be verbatim commit hash, or could be
longer `hg identify' output -- or, in git, with the help of tags,
could be `git describe --dirty' output like

10.99.10-2924-gd01834fb75de

(or `10.99.10-2924-gd01834fb75de-dirty' if the working tree is dirty)
for the commit at
https://mail-index.netbsd.org/source-changes/2024/05/24/msg151526.html
which is 2924 linear commits after the commit bumping sys/param.h to
10.99.10 and (in the current git conversion) had commit hash starting
with d01834fb75.  This may require some discipline around branching
and tagging but it's worth a shot -- we'll see.

Based on a patch from joerg@ a while ago.
2024-05-29 02:06:45 +00:00
riastradh c5ebb1a017 nd_resolve: Maintain la_numheld.
Otherwise lltable_drop_entry_queue never drops anything.

Addresses mbuf leak, PR kern/58297.
2024-05-28 22:15:22 +00:00
sjg e78cefbe42 make: allow debugging the warning about .OBJDIR
When make complains about an unwritable .OBJDIR
it is not always obvious how we derrived that value.

If MAKE_DEBUG_OBJDIR_CHECK_WRITABLE is enabled call PrintOnError
so we can examine variables that are likely relevant.

Fix description of MAKE_OBJDIR_CHECK_WRITABLE in make.1
2024-05-28 19:09:04 +00:00