summaryrefslogtreecommitdiff
path: root/gnu
AgeCommit message (Collapse)Author
2025-10-01diff3: Move to own packageEd Maste
diff3 is the last remaining GPL-licensed userland component. Move it to its own package, so that it may be excluded if desired. Reviewed by: ivy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52810
2025-06-06build: remove the last vestiges of lint supportBrooks Davis
Commit 1cbb58886a47 (shipped in 12.0.0) removed all lint infrastructure. A bunch of NO_LINT definitions remained (perhaps as a bootstrapping measture). Remove them. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50704
2024-07-15Remove residual blank line at start of MakefileWarner Losh
This is a residual of the $FreeBSD$ removal. MFC After: 3 days (though I'll just run the command on the branches) Sponsored by: Netflix
2023-11-26misc: Remove ancient SCCS tags.Warner Losh
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script. This is for the misfits that have only a few: COPYRIGHT, gnu, tools, rescue, and etc. Sponsored by: Netflix
2023-08-16Remove $FreeBSD$: one-line sh patternWarner Losh
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
2023-08-16Remove $FreeBSD$: two-line .h patternWarner Losh
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
2023-04-18Update/fix Makefile.depend for userlandSimon J. Gerraty
2022-11-13gnu diff3: apply patch to committed src, rather than at build timeEd Maste
This appears to be a leftover from the time we used a less-capable VCS. Reviewed by: delphij MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D37368
2021-10-27libdialog: Bump shared library version to 10.John Baldwin
The upgrade to libdialog 1.3 included changes to the ABI. Bump libdpv to 3 since it links against libdialog. Reported by: Mark Millard <marklmi@yahoo.com> Reviewed by: bapt Fixes: a96ef4501919 dialog: import dialog 1.3-20210117 Differential Revision: https://reviews.freebsd.org/D32675
2021-10-04ncurses: chase dependency changes in the source treeBaptiste Daroussin
Differential Revision: https://reviews.freebsd.org/D32098
2021-03-01dialog: fix macro redefinitionBaptiste Daroussin
dialog.h defines MIN and MAX (making sure to undefine the previous macros if it already exists), but sys/param.h also defines those macros (without guards) and is included after dialog.h resulting in both gcc and clang complaining about macro redefiniton While clang do accept -Wno-macro-redefined to ignore the redefinition warning, gcc does not [1] Undefine both macros prior inclusion of sys/param.h to avoid the warning Reported by: arichardson
2021-02-26dialog: guard macros definition to avoid redifinitionBaptiste Daroussin
This unbreaks building libdpv
2021-02-26dialog: finish update to 1.3-20210117Baptiste Daroussin
patch dialog.c which requires stddef for the usage of offsetof catchup on the config header
2021-02-01Bump shared library versions after ncurses bump in 13.John Baldwin
A few shared libraries in the base system link against ncurses. An upgrade from a 12.x host to 13 results in ABI breakage for existing binaries since the newer versions of these libraries link against the newer ncurses while the binary itself links against the older ncurses. For example, dialog4ports built on 12.x sometimes crashes on 13 since it depends on libdialog which links against ncurses internally. MFC after: 3 days Reviewed by: kib, delphij Differential Revision: https://reviews.freebsd.org/D28448
2020-12-25gnu: remove gnugrep and libgnuregexKyle Evans
Differential Revision: https://reviews.freebsd.org/D27732
2020-12-25build: remove the option to build gnugrepKyle Evans
Unconditionally install bsdgrep as grep, bootstrap or not. Remove all build glue and stop installing both gnugrep and libgnuregex now that all consumers of the latter are gone. Relnotes: yes Differential Revision: https://reviews.freebsd.org/D27732
2020-12-15Remove additional GDB leftovers missed in r368667Ed Maste
Notes: svn path=/head/; revision=368669
2020-12-15Retire obsolete GDB 6.1.1Ed Maste
GDB 6.1.1 was released in June 2004 and is long obsolete. It does not support all of the architectures that FreeBSD does, and imposes limitations on the FreeBSD kernel build, such as the continued use of DWARF2 debugging information. It was kept (in /usr/libexec/) only for use by crashinfo(8), which extracts some basic information from a kernel core dump after a crash. Crashinfo already prefers gdb from port/package if installed. Future work may add kernel debug support to LLDB or find another path for crashinfo's needs, but in any case we do not want to ship the excessively outdated GDB in FreeBSD 13. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D27610 Notes: svn path=/head/; revision=368667
2020-12-04gnu: don't build libgnuregex for WITH_GNU_GREP_COMPATKyle Evans
bsdgrep switched over to libregex back in r363823 to fill WITH_GNU_GREP_COMPAT, since libgnuregex in base is quite buggy and libregex is somewhat functional. Don't build libgnuregex on our account, please. Notes: svn path=/head/; revision=368333
2020-10-01Do a sweep and remove most WARNS=6 settingsKyle Evans
Repeating the default WARNS here makes it slightly more difficult to experiment with default WARNS changes, e.g. if we did something absolutely bananas and introduced a WARNS=7 and wanted to try lifting the default to that. Drop most of them; there is one in the blake2 kernel module, but I suspect it should be dropped -- the default WARNS in the rest of the build doesn't currently apply to kernel modules, and I haven't put too much thought into whether it makes sense to make it so. Notes: svn path=/head/; revision=366304
2020-09-18build: provide a default WARNS for all in-tree buildsKyle Evans
The current default is provided in various Makefile.inc in some top-level directories and covers a good portion of the tree, but doesn't cover parts of the build a little deeper (e.g. libcasper). Provide a default in src.sys.mk and set WARNS to it in bsd.sys.mk if that variable is defined. This lets us relatively cleanly provide a default WARNS no matter where you're building in the src tree without breaking things outside of the tree. Crunchgen has been updated as a bootstrap tool to work on this change because it needs r365605 at a minimum to succeed. The cleanup necessary to successfully walk over this change on WITHOUT_CLEAN builds has been added. There is a supplemental project to this to list all of the warnings that are encountered when the environment has WARNS=6 NO_WERROR=yes: https://warns.kevans.dev -- this project will hopefully eventually go away in favor of CI doing a much better job than it. Reviewed by: emaste, brooks, ngie (all earlier version) Reviewed by: emaste, arichardson (depend-cleanup.sh change) Differential Revision: https://reviews.freebsd.org/D26455 Notes: svn path=/head/; revision=365887
2020-06-07Remove now-unused GNU as build infrastructureEd Maste
Notes: svn path=/head/; revision=361894
2020-06-07Retire BINUTILS and BINUTILS_BOOTSTRAP optionsEd Maste
As of r361857 all BINUTILS options are disabled by default - ports have been changed to depend on binutils if they require GNU as, and all base system assembly files have been switched to use Clang's integrated assembler. Relnotes: Yes Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=361880
2020-06-06Remove GNU objcopy and objdump build infrastructureEd Maste
We haven't used the GNU versions of these tools for some time. Notes: svn path=/head/; revision=361860
2020-05-30binutils: build as with BINUTILS || BINUTILS_BOOTSTRAPEd Maste
Previously we descended into as only if MK_BINUTILS was true, including during the bootstrap tool phase. BINUTILS is now disabled by default on all archs, and we failed to build it during amd64 bootstrap. Descend into as if either BINUTILS or BINUTILS_BOOTSTRAP is enabled. This is not quite correct: we should either have the test also depend on BOOTSTRAPPING, or set BINUTILS to the value of BINUTILS_BOOTSTRAP during the bootstrap phase. However, this simple change fixes the build and has been tested, and binutils will be removed completely in the near future. Notes: svn path=/head/; revision=361656
2020-05-06binutils: disconnect objdump from the buildEd Maste
The in-tree binutils is old and will not be updated. It does not support all archs supported by FreeBSD, and for the archs it does support not all CPU features are supported. Other tools have migrated to copyfree alternatives. Although llvm-objdump is nearly a drop-in replacement for GNU objdump it is missing a few options and has some differences in output format. For now just remove GNU objdump; ports and developers can use a contemporary, maintained version from ports or packages. We can revisit installing llvm-objdump as objdump in the future. PR: 212319 [exp-run] Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D7338 Notes: svn path=/head/; revision=360698
2020-04-10userland build: replace -fno-common with ${CFCOMMONFLAG}Kyle Evans
This change allows any downstream or otherwise consumer to easily override the new -fno-common default on a temporary basis without having to hack into src.sys.mk, and also makes it a bit easier to search for these specific cases where -fno-common must be overridden with -fcommon or else the build will fail. The gdb build, the only program requiring -fcommon on head/, is switched over as an example usage. It will need it on all branches, so this does not harm future mergability. MFC after: 3 days Notes: svn path=/head/; revision=359774
2020-03-30drop GDB_LIBEXEC option (now always true)Ed Maste
In-tree gdb is essentially obsolete. We kept it for sparc64 (because gdb in ports lacked sparc64 support) and as a fallback for crashinfo. gdb was installed to /libexec on all archs other than sparc64, where the WITHOUT_GDB_LIBEXEC option was default, with gdb installed to /usr/bin. With sparc64's retirement WITH_GDB_LIBEXEC became the default for all architectures, but it was still possible to set it off and install gdb into /usr/bin. As the next step in gdb's retirement, remove the option and install gdb only into /libexec as the crashinfo fallback. We expect users to install the gdb port or package for debugging. The in-tree gdb lacks support for a number of supported architectures and does not support contemporary DWARF debug info. Reviewed by: jhb (earlier) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24227 Notes: svn path=/head/; revision=359457
2020-03-29gdb: compile with -fcommon explicitlyKyle Evans
As described in the comment, gdb relies on some of the linker magic that happens with -fcommon. I suspect the life expectancy of gdb-in-base is low enough that this isn't worth spending much time addressing, especially given the vintage. Hit it with the -fcommon hammer so that it continues to just work. MFC after: 3 days Notes: svn path=/head/; revision=359432
2020-03-27remove binutils ld leftoversEd Maste
Notes: svn path=/head/; revision=359376
2020-03-27Now that there are no remaining users of ld.bfd, remove the ld subdir.Brandon Bergren
Notes: svn path=/head/; revision=359349
2020-03-27[PowerPC] Switch powerpc and powerpcspe to lldBrandon Bergren
Now that LLD 10 is out, and required patches have landed, we are now ready to finally switch away from the ancient in-tree ld.bfd. Special thanks to Fangrui Song for many hours of work on getting the 32-bit powerpc lld ready for prime-time. Reviewed by: emaste (earlier revision), jhibbits Relnotes: yes Differential Revision: https://reviews.freebsd.org/D24111 Notes: svn path=/head/; revision=359347
2020-02-29retire in-tree GPL dtc devicetree compilerEd Maste
Now that we no longer have GCC 4.2.1 in the tree and can assume FreeBSD is being built with a C++11 compiler available, we can use BSDL dtc unconditionally and retire the GPL dtc. GPL dtc now has FreeBSD CI support via Cirrus-CI to help ensure it continues to build/work on FreeBSD and is available in the ports tree if needed. The copy of (copyfree licensed) libfdt that we actually use is in sys/contrib/libfdt so the extra copy under contrib/dtc/libfdt can be removed along with the rest of the GPL dtc. Reviewed by: kevans, ian, imp, manu, theraven Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23192 Notes: svn path=/head/; revision=358468
2020-02-29remove GCC 4.2.1 build infrastructureEd Maste
As described in Warner's email message[1] to the FreeBSD-arch mailing list we have reached GCC 4.2.1's retirement date. At this time all supported architectures either use in-tree Clang, or rely on external toolchain (i.e., a contemporary GCC version from ports). GCC 4.2.1 was released July 18, 2007 and was imported into FreeBSD later that year, in r171825. GCC has served us well, but version 4.2.1 is obsolete and not used by default on any architecture in FreeBSD. It does not support modern C and does not support arm64 or RISC-V. Thanks to everyone responsible for maintaining, updating, and testing GCC in the FreeBSD base system over the years. So long, and thanks for all the fish. [1] https://lists.freebsd.org/pipermail/freebsd-arch/2020-January/019823.html PR: 228919 Reviewed by: brooks, imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23124 Notes: svn path=/head/; revision=358454
2020-02-03remove stale gnu/lib/csu directoryEd Maste
As of r357338 gnu/lib/csu is never used. Notes: svn path=/head/; revision=357444
2020-01-31retire BSD_CRTBEGIN optionEd Maste
BSD crt is currently used on all architectures (other than sparc64). Remove the option and use BSD crt everywhere as part of the GCC 4.2.1 retirement plan. https://lists.freebsd.org/pipermail/freebsd-arch/2020-January/019823.html PR: 239851 Reviewed by: andrew, brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23122 Notes: svn path=/head/; revision=357338
2020-01-19limit building GNU assembler (as) to x86Ed Maste
GNU as 2.17.50 is currently required by amd64 and i386 for at least one file that cannot be assembled by Clang's integrated assembler (IAS). Other supported CPU architectures either use Clang IAS for all assembly files, or rely on external toolchain. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23180 Notes: svn path=/head/; revision=356889
2020-01-14limit ld.bfd to powerpcEd Maste
All archs except powerpc either use lld or require external toolchain. powerpc still needs binutils ld to link 32-bit binaries. Reviewed by: jhibbits Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23107 Notes: svn path=/head/; revision=356736
2020-01-08Retire build support for GCC's DWARF unwinderEd Maste
As of r356514 LLVM's libunwind is used as the DWARF unwinder on all supported CPU architectures, and GCC and its libraries will be removed soon. Retire the build infrastructure for GCC's unwinder; from here if there are any unwinder bugs (on any arch) the path forward is to fix LLVM's libunwind. Notes: svn path=/head/; revision=356517
2020-01-07Remove gcclibs libssp build glueKyle Evans
r356356 started providing libssp based on ^/lib/libc/secure and disconnected this version from the build. This one did formally provide runtime support for _FORTIFY_SOURCE, but FreeBSD lacks the build support that would have been needed to take advantage of it. MFC after: never Notes: svn path=/head/; revision=356463
2020-01-04Provide libssp based on libcKyle Evans
For libssp.so, rebuild stack_protector.c with FORTIFY_SOURCE stubs that just abort built into it. For libssp_nonshared.a, steal stack_protector_compat.c from ^/lib/libc/secure and massage it to maintain that __stack_chk_fail_local is a hidden symbol. libssp is now built unconditionally regardless of {WITH,WITHOUT}_SSP in the build environment, and the gcclibs version has been disconnected from the build in favor of this one. PR: 242950 (exp-run) Reviewed by: kib, emaste, pfg, Oliver Pinter (earlier version) Also discussed with: kan MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D22943 Notes: svn path=/head/; revision=356356
2019-12-20Move all sources from the llvm project into contrib/llvm-project.Dimitry Andric
This uses the new layout of the upstream repository, which was recently migrated to GitHub, and converted into a "monorepo". That is, most of the earlier separate sub-projects with their own branches and tags were consolidated into one top-level directory, and are now branched and tagged together. Updating the vendor area to match this layout is next. Notes: svn path=/head/; revision=355940
2019-12-11Update Makefile.depend filesSimon J. Gerraty
Update a bunch of Makefile.depend files as a result of adding Makefile.depend.options files Reviewed by: bdrewery MFC after: 1 week Sponsored by: Juniper Networks Differential Revision: https://reviews.freebsd.org/D22494 Notes: svn path=/head/; revision=355617
2019-09-12Get the readline header from the installed header instead of the from the sourceBaptiste Daroussin
location. Notes: svn path=/head/; revision=352249
2019-09-12Remove usesless readline compat includes which will reinclude readline.hBaptiste Daroussin
itself. This simplifies the upcoming update to newer libedit. Notes: svn path=/head/; revision=352242
2019-09-01libc: remove getsEd Maste
gets is unsafe and shouldn't be used (for many years now). Leave it in the existing symbol version so anything that previously linked aginst it still runs, but do not allow new software to link against it. (The compatability/legacy implementation must not be static so that the symbol and in particular the compat sym gets@FBSD_1.0 make it into libc.) PR: 222796 (exp-run) Reported by: Paul Vixie Reviewed by: allanjude, cy, eadler, gnn, jhb, kib, ngie (some earlier) Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D12298 Notes: svn path=/head/; revision=351659
2019-08-01as: add deprecation notice to the man pageEd Maste
In the future FreeBSD will ship without GNU binutils 2.17.50. Add a note advising users who require GNU as to install the binutils port or package. Note that on armv7, arm64, amd64, i386 we currently ship only two binutils tools (as and objdump). A deprecation notice was added to objdump's man page some time ago. PR: 233611 Discussed with: jhb MFC after: 1 week Relnotes: Yes Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=350518
2019-08-01objdump: be explicit that GNU objdump that will be removedEd Maste
We may install llvm-objdump as objdump (see review D18307) or just provide no /usr/bin/objdump, but either way GNU objdump won't be installed in the future. MFC after: 3 days Notes: svn path=/head/; revision=350505
2019-08-01objdump: move deprecation notice to indended spot in the man pageEd Maste
r335217 added a deprecation notice to the source file for the objdump man page, and r335219 added it to the rendered objdump.1, but in the wrong spot. MFC after: 3 days Notes: svn path=/head/; revision=350503
2019-06-25powerpc: Transition to Secure-PLT, like most other OSs (Toolchain part)Justin Hibbits
Summary: Toolchain follow-up to r349350. LLVM patches will be submitted upstream for 9.0 as well. The bsd.cpu.mk change is required because GNU ld assumes BSS-PLT if it cannot determine for certain that it needs Secure-PLT, and some binaries do not compile in such a way to make it know to use Secure-PLT. Reviewed By: nwhitehorn, bdragon, pfg Differential Revision: https://reviews.freebsd.org/D20598 Notes: svn path=/head/; revision=349351