Commit Graph

10968 Commits

Author SHA1 Message Date
christos 8a0c0d837a Document environment variable use. 2024-05-04 13:11:41 +00:00
christos 9c1705ca7b add an environment variable to override the number ot threads. 2024-05-03 15:50:42 +00:00
christos 79cacd8776 Allow c99 array designators 2024-05-01 21:34:48 +00:00
mrg d9076a8b46 xdm(1) was renamed xdm(8) a long while ago. catch up location.
add support for section 8 X manuals.  amusingly, we already knew
to convert __adminmansuffix__ into "8", but not how to create
.8 from X .man.
2024-04-29 22:09:10 +00:00
maya acbe8419a2 Remove documentation for long removed -F option
Suggested by Robert Whitlock in PR bin/58177

I've sent this patch to the nvi maintainers but the response suggested
patching this downstream, as there would be no further releases of nvi.
2024-04-29 00:50:42 +00:00
rillig 3a6d2122c6 dri: disable lint 2024-04-26 17:22:26 +00:00
rillig 58b62ac6a6 gallium: disable lint 2024-04-26 16:34:17 +00:00
hgutch fa9aaa8d4e Fix gcc build on FreeBSD 14 (and possibly other systems using clang >= 16).
Pointed out by Eirik Øverby.

OK mrg@
2024-04-24 16:48:29 +00:00
nia 4707556686 it's netbsd-11, time for a slightly less eye-bleeding shade of orange 2024-04-24 10:35:13 +00:00
maya 5077947004 mesa21: link against libxcb-sync for missing symbols
Not super obvious in practice, but it does show if you run GL programs
with LD_BIND_NOW.
2024-04-22 03:38:49 +00:00
rillig d122acbd72 libntf: make MKREPRO timestamp compatible with NetBSD 10
In NetBSD 10, make(1) cannot handle :gmtime arguments that are
expressions, resulting in the error message "Unknown modifier '1'".
2024-04-21 17:19:52 +00:00
maya 102a662e07 Mesa 21: Add some intel files so we don't have missing symbols
seen as error messages when running "glxgears" on intel.

This also avoids graphical corruption (changed areas of terminal
emulator take a few seconds to gradually update) when the modesetting
driver is explicitly chosen.
2024-04-21 00:23:23 +00:00
rillig 7202b80324 libntp: clean up MKREPRO_TIMESTAMP handling
NetBSD's make has built-in support for formatting timestamps, so use
that instead of relying on an external tool.  The month name is still
always in the C locale, and possible errors are reported in the affected
line, due to the ':=' assignment operator.

Without the ':=' assignment operator, the intermediate variable would
not be necessary, but in that case, make's error handling is broken and
unspecific.
2024-04-20 08:03:08 +00:00
jakllsch 466d1a15ac fix copy/paste-o 2024-04-19 16:04:28 +00:00
jakllsch 7386dcbbb8 Increase MKREPRO robustness
- Use C locale to ensure month abbreviations are as expected
 - bail out if MKREPRO_TIMESTAMP is not defined
 - bail out if resulting __DATE__/__TIME__ replacement strings are empty
2024-04-19 14:58:18 +00:00
jakllsch 05916288da The substitute __DATE__ should be %b %e %Y per a C18 draft
Subtle change that won't make a functional difference in this case;
changed only for semantic correctness.
2024-04-19 13:34:15 +00:00
christos b844656e78 PR/58170: Yoshitaka Tokugawa: Remove blocking statement when the requestor
asks for for an address that is in the cache and that access is prevented
by a cache acl because the querier has no way to know that this access is
denied, so it is not an abuse.
2024-04-19 12:35:28 +00:00
jakllsch 1784c46724 Format MKREPRO_TIMESTAMP with "%b %d %Y" to correctly substitute __DATE__ 2024-04-18 19:23:53 +00:00
jakllsch 2c9c248e72 Install xsetwallpaper(1) manual page
Should fix PR 58172.
2024-04-18 19:17:14 +00:00
christos 0b7c760b94 Add comparison function so that it can be used to provide a stable sort
(Jan-Benedict Glaw)
2024-04-16 23:43:08 +00:00
christos 2f8da1f3f1 fix compat build of filter-aaaa.so.0 2024-04-16 19:15:36 +00:00
riastradh a5106e9076 opensolaris/sys/sys/elf.h: Omit needless __ELF_WORD_SIZE. 2024-04-16 14:29:33 +00:00
simonb 586f421948 Add a newline to a printf message. 2024-04-15 08:06:36 +00:00
kre d2a7bfe14b Revert previous until Christos has a chance to work out why it breaks
the builds.
2024-04-14 08:29:54 +00:00
christos f68fe2325c Don't build/install the compat plugin. 2024-04-13 17:22:33 +00:00
jakllsch 308afeb1b5 remove now-unused assignment 2024-04-12 19:06:45 +00:00
christos 72e5ca92c9 Now that the bug in bsd.lib.mk, MAKELINKLIB is not needed anymore (as it
should not be). Pointed out by kre@
2024-04-09 22:38:17 +00:00
christos 11b31797aa make qsort sorting deterministic 2024-04-07 12:30:38 +00:00
rillig c070e60d9e flex.1: fix single-bit error in contributor name 2024-04-05 22:21:40 +00:00
christos e84b33b8b9 break strength ties so that qsort is deterministic 2024-04-05 16:56:58 +00:00
kre 40580391fd Revert last, the .pic file is used elsewhere. 2024-04-05 12:03:24 +00:00
simonb dcc7d3f968 Apply FreeBSD svn r373278 fix for ZFS corruption. Fix for NetBSD
PR kern/58111 .

It would be extremely unlikely to trip this bug on NetBSD, as we don't
expose SEEK_DATA and SEEK_HOLE and you need to call ioctl(2) with
FIOSEEKDATA and FIOSEEKHOLE directly which no currently known code does,
and even then be unlucky enough to trip a race condition.

With a reproducer based on that in https://www.illumos.org/issues/16087,
I saw 11 groups of failures over 8 hours.  With this patch, no
failures in 10 hours.  The repro for NetBSD will be attached to
https://gnats.netbsd.org/58111 .

Original FreeBSD commit message:
--------------------------------
dnode_is_dirty: check dnode and its data for dirtiness

Over its history this the dirty dnode test has been changed between
checking for a dnodes being on `os_dirty_dnodes` (`dn_dirty_link`) and
`dn_dirty_record`.

It turns out both are actually required.

In the case of appending data to a newly created file, the dnode proper
is dirtied (at least to change the blocksize) and dirty records are
added.  Thus, a single logical operation is represented by separate
dirty indicators, and must not be separated.

The incorrect dirty check becomes a problem when the first block of a
file is being appended to while another process is calling lseek to skip
holes. There is a small window where the dnode part is undirtied while
there are still dirty records. In this case, `lseek(fd, 0, SEEK_DATA)`
would not know that the file is dirty, and would go to
`dnode_next_offset()`. Since the object has no data blocks yet, it
returns `ESRCH`, indicating no data found, which results in `ENXIO`
being returned to `lseek()`'s caller.

This change simply updates the dirty check to check both types of dirty.
If there's anything dirty at all, we immediately go to the "wait for
sync" stage, It doesn't really matter after that; both changes are on
disk, so the dirty fields should be correct.

Sponsored by:   Klara, Inc.
Sponsored by:   Wasabi Technology, Inc.
2024-04-05 11:20:34 +00:00
christos 510d1ca606 Just build the staticlib. 2024-04-05 11:04:37 +00:00
christos c998d55824 Fold long line 2024-04-05 11:04:19 +00:00
kre 390195052f Probable hack fix for current build breakage.
Make sure to build external/mit before external/mpl (as bind in mpl
needs libuv from mit) and in mit/libuv make sure to build the
static library with the new MAKESTATICLIB mechanism, as that is
what bind needs.
2024-04-05 08:51:27 +00:00
christos 6b2da37d70 - Create 3 new variables:
MAKELINKLIB that follows MKLINKLIB but can be overwritten by Makefiles
  MAKESTATICLIB that follows MKSTATICLIB but can be overwritten by Makefiles
  LINKINSTALL that follows MAKELINKLIB but can be overwritten by Makefiles
  These give enough control to the module Makefiles so that they don't need
  to override the default library install rules which break the debug sets.
- Remove /usr/libexec/named which duplicated /usr/lib/named
2024-04-05 01:15:59 +00:00
christos 68ac9d1eae LIBISMODULE should be yes or no... 2024-04-04 23:54:17 +00:00
christos 4c0c17af69 Don't ccreate dwarf-4 on these files because it breaks ctfconvert. 2024-04-04 23:50:13 +00:00
riastradh 3f53e7a4bf external/bsd/am-utils: delete outdated amd2netbsd under dist
This was stored as a local change to dist, where it doesn't belong --
it belongs outside dist.  But we already have an amd2netbsd with the
correct path outside of dist.
2024-04-04 20:33:59 +00:00
christos 0ba9bcdd8c fix format. 2024-04-03 00:38:36 +00:00
christos 3a91ec0ace use ${MKREPRO_TIMESTAMP} for baking in the date and time. 2024-04-02 14:19:02 +00:00
riastradh ad49149131 elftoolchain: Be consistent about which ELF header files we use.
1. For tools that use elftoolchain: always use elftoolchain's
   elfdefinitions.h.  Don't even think about looking at the host's
   sys/exec_elf.h, which makes no sense and should never happen.

   (ELF tools that don't use elftoolchain, like m68k-elf2coff,
   continue to use nbincludes/sys/exec_elf.h.  But no more nbincludes
   hacks in elftoolchain.)

2. For kernel components (solaris, zfs, dtrace): always use
   sys/exec_elf.h, even in Solaris components via sys/elf.h.
   elfdefinitions.h is not wired up in the kernel build at all.

3. For most userland components that involve libelf: use
   elfdefinitions.h via libelf header files (libelf.h, gelf.h).

   libdtrace in particular requires _all_ R_* reloc type definitions,
   but sys/exec_elf.h brings in only the _current machine's_ R_*
   reloc type definitions.  (While here: Use uintptr_t instead of
   Elf_Addr for pointer-to-integer cast, since Elf_Addr is MD and
   provided only by sys/exec_elf.h, not by elfdefinitions.h.)

   And most userland components using libelf don't rely on any
   properties of the current machine from sys/exec_elf.h, so they can
   use libelf's elfdefinition.h.

   Exceptions:

   - dtrace drti.c relies on link.h -> link_elf.h -> sys/exec_elf.h,
     but it also relies on sys/dtrace.h -> sys/elf.h ->
     elfdefinitions.h like other userland components using sys/elf.h.

   - kdump-ioctl.c uses sys/exec_elf.h directly and sys/dtrace.h ->
     sys/elf.h -> elfdefinitions like other userland components using
     sys/elf.h.

   - t_ptrace_wait.c (via t_ptrace_core_wait.h) uses libelf to parse
     core files, but relies on sys/exec_elf.h for struct
     netbsd_elfcore_procinfo.

   None of these exceptions needs all R_* reloc type definitions, so
   as a workaround, we can just suppress libelf's elfdefinitions.h by
   defining _SYS_ELFDEFINITIONS_H_ and use sys/exec_elf.h in these
   exceptions.

And undo the whole BUILTIN_ELF_HEADERS mistake.  This was:

- half bogus workarounds for missing build_install dependencies in
  tools/Makefile, which are no longer missing now, and
- half futile attempt to use src/sys/sys/exec_elf.h via nbincludes in
  tools involving libelf instead of libelf's elfdefinitions.h, which
  collides.

Longer-term, we may wish to unify sys/exec_elf.h and libelf's
elfdefinitions.h, so we don't have to play these games.

But at least now the games are limited to three .c files (one of
which is generated by Makefile.ioctl-c), rather than haphazardly
applied tree-wide by monstrous kludges in widely used .h files with
broken hackarounds to get the tools build lurching to completion.
2024-04-01 18:33:22 +00:00
christos 97a4ef4394 Restore the minimum build to install elfdefinitions.h. Provide a pre-built
copy, since we don't have m4 available. Use pax to install it because
using the Makefile needs more stuff available (nbsed) which we have not
built yet.
2024-03-31 03:20:38 +00:00
christos d40876c8a3 Add ${_MKTARGET_CREATE} 2024-03-27 21:55:08 +00:00
christos 89eb4d6b6c Don't try to compile the arch-specific relocation code if we don't have the
built-in headers (for tools)
2024-03-27 21:53:06 +00:00
uwe f85a9be4ea doc.tmac: .Lk - handle punctuation without anchor-text correctly
doc-get-arg-type expects that doc-width is set beforehand, so call
doc-get-width to make sure doc-get-arg-type detects the trailing
punctuation correctly.

PR bin/58074
2024-03-24 23:39:21 +00:00
christos 63ede46893 centrally control if we are building kerberos 2024-03-13 12:56:31 +00:00
mrg d5af1f8fb3 avoid rebuilding texi files in the read-only source tree 2024-03-09 06:51:24 +00:00
christos c1843a3608 Make sure that the extra field is maximally aligned since it is used for
other struct storage.
2024-03-07 17:10:37 +00:00
christos 900c18e5f0 -DDEBUG is broken for regex.c 2024-03-04 19:52:33 +00:00