DragonFlyBSD/src 1289cdacontrib/gcc-8.0/gcc symbol-summary.h, contrib/gcc-8.0/gcc/cp cfns.h

Merge branch 'vendor/GCC80'
DeltaFile
+18-18contrib/gcc-8.0/gcc/cp/cfns.h
+2-2contrib/gcc-8.0/gcc/symbol-summary.h
+20-202 files

DragonFlyBSD/src 1095058contrib/gcc-8.0/gcc symbol-summary.h, contrib/gcc-8.0/gcc/cp cfns.h

vendor/GCC80: Bring in two fixes from upstream.

These fix -Wmissing-template-keyword and -Wregister warnings we were
getting when building gcc-8.3 with gcc-12.5.

commit 642dc602f89b2c11d5d833a52f37b04427a27cab
Author: Marek Polacek <polacek at redhat.com>
Date:   Fri May 15 17:54:05 2020 -0400

    c++: Regenerate cp/cfns.h.

    Current cfns.h includes register-qualified variables and that wouldn't
    play well when bootstrapping with GCC that uses the C++17 dialect,
    because 'register' was removed in C++17.  Regenerating it using the
    command specified in cfns.h luckily cleaned this up.

            * cfns.h: Regenerated.

commit fccd5b48adf568f0aabe5d5f51206a9d42da095a

    [12 lines not shown]
DeltaFile
+18-18contrib/gcc-8.0/gcc/cp/cfns.h
+2-2contrib/gcc-8.0/gcc/symbol-summary.h
+20-202 files

DragonFlyBSD/src 9245b09libexec/ftpd ftpd.c

Fix the two -Wdangling-pointer warnings in world.

Move line[] to function scope.

-Wdangling-pointer was introduced in GCC 12 and is part of -Wall.

Taken-from: FreeBSD
DeltaFile
+5-4libexec/ftpd/ftpd.c
+5-41 files

DragonFlyBSD/src f36f570gnu/lib/gcc120/libstdcxx/headers Makefile.headers, gnu/lib/gcc120/libstdcxx/product Makefile

gcc120: Fix compatibility.So building in libstdcxx

My previous commit 1f0bbf647d9751967ce37b93246695bb2c7e819c actually
fixed the building of the extra .So objects for libstdcxx by adding the
missing '-D_GLIBCXX_SHARED' CXXFLAGS.  However, the 'compatibility.So'
object failed to build after the commit because of the two reasons:

- The <bits/compatibility.h> header was missing.  It was even removed on
  the vendor branch.
- The '-std=gnu++98' was missing on the compilation command.

This commit prepares the needed <bits/compatibility.h> header, and adds
the 'gnu98' flags group for the ${cxx98_sources}.
DeltaFile
+6-0gnu/lib/gcc120/libstdcxx/headers/Makefile.headers
+3-1gnu/lib/gcc120/libstdcxx/product/Makefile
+9-12 files

DragonFlyBSD/src f48ab6bcontrib/gcc-12 README.DELETED

contrib/gcc-12: Update README.DELETED
DeltaFile
+0-1contrib/gcc-12/README.DELETED
+0-11 files

DragonFlyBSD/src b3c03a7contrib/gcc-12/libstdc++-v3/config/abi compatibility.h

Merge branch 'vendor/GCC120'
DeltaFile
+213-0contrib/gcc-12/libstdc++-v3/config/abi/compatibility.h
+213-01 files

DragonFlyBSD/src 7eb2f59contrib/gcc-12/libstdc++-v3/config/abi compatibility.h

vendor/GCC120: Add back libstdc++-v3/config/abi/compatibility.h

It's required to build 'libstdc++-v3/src/c++98/compatibility.cc' in
shared mode (-D_GLIBCXX_SHARED).
DeltaFile
+213-0contrib/gcc-12/libstdc++-v3/config/abi/compatibility.h
+213-01 files

DragonFlyBSD/src 1f0bbf6gnu/lib/gcc120/libstdc++fs Makefile, gnu/lib/gcc120/libstdcxx Makefile.inc

gcc120: Deduplicate makefile contents for libstdcxx/libstdc++fs

Move the common *FLAGS contents to libstdcxx/Makefile.inc.
DeltaFile
+27-0gnu/lib/gcc120/libstdcxx/Makefile.inc
+2-17gnu/lib/gcc120/libstdc++fs/Makefile
+0-16gnu/lib/gcc120/libstdcxx/components/libconv_1998/Makefile
+1-15gnu/lib/gcc120/libstdcxx/components/libconv_2011/Makefile
+1-15gnu/lib/gcc120/libstdcxx/components/libconv_2017/Makefile
+1-15gnu/lib/gcc120/libstdcxx/components/libconv_2020/Makefile
+32-782 files not shown
+32-1088 files

DragonFlyBSD/src ce4fc58. Makefile_upgrade.inc, gnu/lib/gcc120 Makefile

gcc120: Rename libstd++fs.a to libstdc++fs.a

I somehow made a typo in the library name ... Fix it.
DeltaFile
+44-0gnu/lib/gcc120/libstdc++fs/Makefile
+0-44gnu/lib/gcc120/libstd++fs/Makefile
+2-2gnu/lib/gcc120/Makefile
+2-0Makefile_upgrade.inc
+1-1share/mk/bsd.libnames.mk
+49-475 files

DragonFlyBSD/src 4faba44share/man/man5 make.conf.5

make.conf(5): Remove legacy obsolete MAKE_SHELL description

The MAKE_SHELL variable is unused in our bmake framework.  I guess it's
a legacy from the FreeBSD fmake framework.
DeltaFile
+1-14share/man/man5/make.conf.5
+1-141 files

DragonFlyBSD/src 958532eshare/mk sys.mk

<sys.mk>: Fix ${SHELL} to ignore the environment

From the POSIX standard [1]:
> The SHELL macro shall be treated specially. It shall be provided by
> make and set to the pathname of the shell command language interpreter
> (see sh). The SHELL environment variable shall not affect the value of
> the SHELL macro. If SHELL is defined in the makefile or is specified
> on the command line, it shall replace the original value of the SHELL
> macro, but shall not affect the SHELL environment variable. Other
> effects of defining SHELL in the makefile or on the command line are
> implementation-defined.

So fix ${SHELL} to be ${.SHELL:Ush}, making it a Bourne/POSIX shell
regardless of the user's interactive shell, so that it's suitable for
use in the makefiles.  This is obtained from 'contrib/bmake/mk/sys.mk'.

[1] https://pubs.opengroup.org/onlinepubs/9799919799/utilities/make.html#tag_20_76_13_05
DeltaFile
+4-2share/mk/sys.mk
+4-21 files

DragonFlyBSD/src e733f7cshare/mk bsd.dep.mk

<bsd.dep.mk>: Always create the depend file in the end

In case that the custom ${MKDEPCMD} does not create the depend file for
empty dependency.

While there, tweak '${_ALL_DEPENDS}' to use the ':N*.[csS]' modifier to
align with the subsequent '.if' expressions filtering on the files.

Suggested-by: swildner
DeltaFile
+4-1share/mk/bsd.dep.mk
+4-11 files

DragonFlyBSD/src 3e0027bshare/mk sys.mk

<sys.mk>: Fix ${NXCXXFLAGS} to base on ${CXXFLAGS}

${CXXFLAGS} is already defined above in <sys.mk>, so it's better and
more correct to define ${NXCXXFLAGS} based on ${CXXFLAGS}.

Actually, this fixes ${NXCXXFLAGS} to obtain the correct '-std' flag
from ${CXXFLAGS}.
DeltaFile
+1-1share/mk/sys.mk
+1-11 files

DragonFlyBSD/src 3781223sys/ddb db_sysctl.c

kernel: Ignore GCC 12.5's -Winfinite-recursion for stack_guard_panic2().

It's a function that we actually want to recurse infinitely (to force
a kernel stack guard panic).

-Winfinite-recursion was introduced in GCC 12 and is part of -Wall.

Tested-by: aly
DeltaFile
+5-0sys/ddb/db_sysctl.c
+5-01 files

DragonFlyBSD/src ece4963sys/contrib/dev/acpica/source/common dmtbdump2.c dmtbinfo2.c, sys/contrib/dev/acpica/source/compiler dttable1.c dttable2.c

Sync ACPICA with Intel's version 20251212 (from previously 20211217).

Numerous changes, too many to list.

For a detailed list, please see sys/contrib/dev/acpica/changes.txt.

It also fixes a few of GCC 12.5's -Wdangling-pointer warnings.
DeltaFile
+1,551-301sys/contrib/dev/acpica/source/include/actbl2.h
+898-464sys/contrib/dev/acpica/source/common/dmtbdump2.c
+1,154-0sys/contrib/dev/acpica/source/os_specific/service_layers/oszephyr.c
+1,123-22sys/contrib/dev/acpica/source/compiler/dttable1.c
+718-419sys/contrib/dev/acpica/source/compiler/dttable2.c
+776-230sys/contrib/dev/acpica/source/common/dmtbinfo2.c
+6,220-1,436441 files not shown
+13,839-3,228447 files

DragonFlyBSD/src a5c5e41share/mk bsd.dep.mk

<bsd.dep.mk>: Several tweaks and style cleanups

* Remove duplicate ':N*.cpp' from ${_ALL_DEPENDS}.

* Simplify '!empty(${_FG:M_})' to be '${_FG} == "_"'.

* Replace `cmd` with $(cmd), which is clearer in expressing nested
  command substitution.

* Adjust indentations and add comments to help read the complex flow.
DeltaFile
+40-36share/mk/bsd.dep.mk
+40-361 files

DragonFlyBSD/src f1d43b8share/mk bsd.subdir.mk

<bsd.subdir.mk>: Fix SUBDIR ordering for non-parallel mode

As documented in make(1) man page as well as my tests, the '.ORDER'
directive only applies to the parallel mode (even -j1), so the
${SUBDIR_ORDERED} is actually ignored in the non-parallel mode.  As a
result, the build ordering for the subdirectories is their order in
${SUBDIR}, which may be different from ${SUBDIR_ORDERED}, and this can
lead to build failures.  For example, gnu/lib/gcc120/libstd++fs failed
to build because it was built before the dependent libstdcxx/headers.

Discussed-with: swildner
DeltaFile
+20-5share/mk/bsd.subdir.mk
+20-51 files

DragonFlyBSD/src b219389share/mk bsd.subdir.mk

<bsd.subdir.mk>: Simplify a bit and clean up whitespace

* Move '_SUBDIR_${__target}' to save a '.for' expression.
* Clean up whitespace.
DeltaFile
+16-18share/mk/bsd.subdir.mk
+16-181 files

DragonFlyBSD/src 51a9f02gnu/lib/gcc120/libgcc Makefile.src Makefile, gnu/lib/gcc120/libgcc_pic Makefile

gcc120: Fix "make depend" failure in libgcc_eh

libgcc_eh pulled the 'FLAGS_GROUPS=sse2' from libgcc/Makefile.src and
thus "make depend" would call mkdep(1) on the 'sse2' group, but it would
fail because the 'sfp-machine.h' header was not generated.

Fix the problem by moving the 'FLAGS_GROUPS=sse2' and related variables
from libgcc/Makefile.src to {libgcc,libgcc_pic}/Makefile, where they're
actually used.

Discussed-with: swildner
DeltaFile
+2-5gnu/lib/gcc120/libgcc/Makefile.src
+4-0gnu/lib/gcc120/libgcc/Makefile
+4-0gnu/lib/gcc120/libgcc_pic/Makefile
+10-53 files

DragonFlyBSD/src ecbb20dshare/mk bsd.dep.mk

<bsd.dep.mk>: Apply .NOPATH to .depend_${group} files as well

Each group defined in ${FLAGS_GROUPS} will have its own depend file
named '.depend_${group}'.  Apply the '.NOPATH' attribute to them as well
as the main '.depend'.

Meanwhile, tweak the '.NOPATH' syntax as source/attribute to align
better with the make(1) man page.
DeltaFile
+3-3share/mk/bsd.dep.mk
+3-31 files

DragonFlyBSD/src b29ec24share/mk bsd.dep.mk

<bsd.dep.mk>: Fix issues in generating depend files

* Remove the '> ${.TARGET}' command so that a repeat 'make depend' would
  not falsely succeed.

  Before this change, an empty '.depend' file would be created even if
  the mkdep(1) fails, and then another 'make depend' (e.g., from
  'make quickworld') would skip creating the depend files and thus
  falsely succeed.

* Remove the '-' prefix from the 'rm -f ${.TARGET}' command.  This fixes
  that the mkdep(1) failure was ignored in the jobs mode (i.e., make -jN).

  In the jobs mode, all the commands of a target is executed by one
  single shell instance.  When the shell does not have ErrCtl enabled
  (which is the default), the '-' prefix affects the entire job rather
  than specific commands prefixed with '-'.  See make(1) for more
  details.


    [4 lines not shown]
DeltaFile
+1-2share/mk/bsd.dep.mk
+1-21 files

DragonFlyBSD/src 33ecbeasys/bus/u4b usb_request.c

kernel/usb: usbd_do_request()'s 4th argument is a pointer, so use NULL.
DeltaFile
+16-16sys/bus/u4b/usb_request.c
+16-161 files

DragonFlyBSD/src c24ee53libexec/ypxfr ypxfr_misc.c ypxfr_main.c, usr.sbin/rpc.lockd lock_proc.c

Fix GCC 12.5's -Wenum-conversion warnings.

It was introduced in GCC 10 and is part of -Wextra.

All affected enums are compatible, so just cast.
DeltaFile
+16-16libexec/ypxfr/ypxfr_misc.c
+6-6usr.sbin/rpc.lockd/lock_proc.c
+6-4libexec/ypxfr/ypxfr_main.c
+2-2usr.sbin/yppush/yppush_main.c
+2-2libexec/ypxfr/ypxfr_getmap.c
+32-305 files

DragonFlyBSD/src 0216f6egames/sail dr_5.c, sys/bus/u4b/wlan if_urtwn.c

Fix GCC 12.5's -Warray-parameter warnings.

It was introduced in GCC 11 and is part of -Wall.

The ncurses fix was taken from upstream.
DeltaFile
+6-6sys/crypto/sha2/sha2.c
+4-4sys/netinet/ip_carp.c
+4-4games/sail/dr_5.c
+5-3sys/bus/u4b/wlan/if_urtwn.c
+3-2sys/netproto/802_11/wlan/ieee80211_scan.c
+2-2sys/netproto/802_11/ieee80211_proto.h
+24-219 files not shown
+34-3015 files

DragonFlyBSD/src 7ab6148lib/libefivar uefi-dplib.h

libefivar: Clean up #ifdef logic and add some comments.
DeltaFile
+4-3lib/libefivar/uefi-dplib.h
+4-31 files

DragonFlyBSD/src 4470b57sys/cpu/x86_64/misc x86_64-gdbstub.c

kernel: Fix an off-by-one overflow in the gdb stub.

Fix identical to GDB upstream.
DeltaFile
+1-1sys/cpu/x86_64/misc/x86_64-gdbstub.c
+1-11 files

DragonFlyBSD/src d253612sys/bus/pci pci.c, sys/conf files

kernel/pci: Use ACPI's ACPI_PWR_FOR_SLEEP().

__HAVE_ACPI was never defined in DragonFly because the PCI upgrade
that brought in this check (4d28e78f7e70287ae03930ce9e16ba027ca69477)
missed actually defining it.

It only affects _suspend() and _resume() functions so in practice it
shouldn't cause any functional change.
DeltaFile
+3-7sys/bus/pci/pci.c
+1-1sys/conf/files
+4-82 files

DragonFlyBSD/src 88e1b0busr.sbin/mtree stat_flags.c mtree.h

mtree(8): Teach about the 'xlink' flag.

This fixes, for now, a confusing warning message during installworld
to be more meaningful:

empty:  flags ("schg" is not "schg", modified to "schg")

becomes

empty:  flags ("schg" is not "xlink,schg", modified to "schg")
DeltaFile
+5-0usr.sbin/mtree/stat_flags.c
+2-1usr.sbin/mtree/mtree.h
+7-12 files

DragonFlyBSD/src 2555c0esys/platform/pc64/x86_64 pmap.c

pc64: Move 4 file-scope static variables into create_pagetables()

The KPTbase/KPTphys/KPDbase/KPDphys file-scope static variables are now
only used by create_pagetables(), so just move them into the function.

After this change, the BSS size of the compiled object becomes the same
for GCC 8.3 and GCC 12.5.  Otherwise, GCC 12.5 would always place these
4 static variables in BSS, resulting in 32 bytes bigger BSS than the
object compiled by GCC 8.3.

While there, auto trim the trailing whitespaces.
DeltaFile
+27-27sys/platform/pc64/x86_64/pmap.c
+27-271 files

DragonFlyBSD/src 8739a19gnu/lib/gcc80/libstdcxx/headers Makefile.headers

gcc80: Install the newly added headers for libstdc++

While there, clean up the Makefile.headers a bit according to the same
file in gcc120.
DeltaFile
+6-3gnu/lib/gcc80/libstdcxx/headers/Makefile.headers
+6-31 files