pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

PR/59839 CVS commit: src/sys/arch



The following reply was made to PR pkg/59839; it has been noted by GNATS.

From: "Nia Alarie" <nia%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/59839 CVS commit: src/sys/arch
Date: Mon, 15 Dec 2025 22:10:34 +0000

 Module Name:	src
 Committed By:	nia
 Date:		Mon Dec 15 22:10:34 UTC 2025
 
 Modified Files:
 	src/sys/arch/aarch64/include: byte_swap.h
 	src/sys/arch/amd64/include: byte_swap.h
 	src/sys/arch/arm/include: byte_swap.h
 	src/sys/arch/hppa/include: byte_swap.h
 	src/sys/arch/i386/include: byte_swap.h
 	src/sys/arch/m68k/include: byte_swap.h
 	src/sys/arch/or1k/include: byte_swap.h
 	src/sys/arch/riscv/include: byte_swap.h
 	src/sys/arch/sh3/include: byte_swap.h
 	src/sys/arch/vax/include: byte_swap.h
 
 Log Message:
 Eliminate recursive dependency on <sys/bswap.h> in MD <byte_swap.h>
 
 On certain NetBSD archs, it isn't possible to include <sys/bswap.h>
 directly without including <sys/endian.h> first. This has been
 broken since at least before netbsd-10, but recent changes elsewhere
 have made this problem more visible for some reason.
 
 Fix this by not including <sys/types.h>, eliminating recursive
 inclusion - <sys/types.h> includes <machine/endian.h>. It would
 be nice to remove that line from types.h, since it's no longer
 necessary, but currently the kernel assumes that <sys/endian.h> is
 included from <sys/types.h> in various places (and possibly userspace
 software does too).
 
 For now we can take the less dangerous option by avoiding
 including <sys/types.h> from these bswap headers. They don't need the
 full header, and applications that assume transclusion aren't portable
 anyway, since architectures like sparc64 don't include <sys/types.h>
 via <sys/bswap.h>.
 
 PR pkg/59839 palemoon, firefox, etc., don't build on arm64 any more
 
 
 To generate a diff of this commit:
 cvs rdiff -u -r1.4 -r1.5 src/sys/arch/aarch64/include/byte_swap.h
 cvs rdiff -u -r1.8 -r1.9 src/sys/arch/amd64/include/byte_swap.h
 cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/include/byte_swap.h
 cvs rdiff -u -r1.8 -r1.9 src/sys/arch/hppa/include/byte_swap.h
 cvs rdiff -u -r1.17 -r1.18 src/sys/arch/i386/include/byte_swap.h
 cvs rdiff -u -r1.11 -r1.12 src/sys/arch/m68k/include/byte_swap.h
 cvs rdiff -u -r1.2 -r1.3 src/sys/arch/or1k/include/byte_swap.h
 cvs rdiff -u -r1.5 -r1.6 src/sys/arch/riscv/include/byte_swap.h
 cvs rdiff -u -r1.4 -r1.5 src/sys/arch/sh3/include/byte_swap.h
 cvs rdiff -u -r1.12 -r1.13 src/sys/arch/vax/include/byte_swap.h
 
 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.
 


Home | Main Index | Thread Index | Old Index