aboutsummaryrefslogtreecommitdiff
path: root/gnu/usr.bin
Commit message (Collapse)AuthorAgeFilesLines
* Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-168-8/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* Update/fix Makefile.depend for userlandSimon J. Gerraty2023-04-192-3/+2
|
* gnu diff3: apply patch to committed src, rather than at build timeEd Maste2022-11-142-17/+0
| | | | | | | | 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
* ncurses: chase dependency changes in the source treeBaptiste Daroussin2021-10-041-1/+1
| | | | Differential Revision: https://reviews.freebsd.org/D32098
* gnu: remove gnugrep and libgnuregexKyle Evans2020-12-2564-17979/+0
| | | | Differential Revision: https://reviews.freebsd.org/D27732
* build: remove the option to build gnugrepKyle Evans2020-12-251-1/+0
| | | | | | | | | 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
* Retire obsolete GDB 6.1.1Ed Maste2020-12-1598-22008/+0
| | | | | | | | | | | | | | | | | | | | | 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
* Do a sweep and remove most WARNS=6 settingsKyle Evans2020-10-011-2/+0
| | | | | | | | | | | | | | | 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
* build: provide a default WARNS for all in-tree buildsKyle Evans2020-09-183-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Remove now-unused GNU as build infrastructureEd Maste2020-06-0716-1570/+0
| | | | Notes: svn path=/head/; revision=361894
* Retire BINUTILS and BINUTILS_BOOTSTRAP optionsEd Maste2020-06-072-18/+1
| | | | | | | | | | | | | 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
* Remove GNU objcopy and objdump build infrastructureEd Maste2020-06-066-1575/+0
| | | | | | | We haven't used the GNU versions of these tools for some time. Notes: svn path=/head/; revision=361860
* binutils: build as with BINUTILS || BINUTILS_BOOTSTRAPEd Maste2020-05-301-2/+3
| | | | | | | | | | | | | | | | | 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
* binutils: disconnect objdump from the buildEd Maste2020-05-061-4/+0
| | | | | | | | | | | | | | | | | | | | | 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
* userland build: replace -fno-common with ${CFCOMMONFLAG}Kyle Evans2020-04-101-1/+1
| | | | | | | | | | | | | | | | | 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
* drop GDB_LIBEXEC option (now always true)Ed Maste2020-03-302-7/+1
| | | | | | | | | | | | | | | | | | | | | | | 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
* gdb: compile with -fcommon explicitlyKyle Evans2020-03-291-0/+5
| | | | | | | | | | | | | 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
* remove binutils ld leftoversEd Maste2020-03-271-1/+0
| | | | Notes: svn path=/head/; revision=359376
* Now that there are no remaining users of ld.bfd, remove the ld subdir.Brandon Bergren2020-03-2721-2878/+0
| | | | Notes: svn path=/head/; revision=359349
* [PowerPC] Switch powerpc and powerpcspe to lldBrandon Bergren2020-03-271-6/+0
| | | | | | | | | | | | | | | 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
* retire in-tree GPL dtc devicetree compilerEd Maste2020-02-293-70/+0
| | | | | | | | | | | | | | | | | | | | | 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
* remove GCC 4.2.1 build infrastructureEd Maste2020-02-2948-5019/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* limit building GNU assembler (as) to x86Ed Maste2020-01-191-1/+7
| | | | | | | | | | | | | 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
* limit ld.bfd to powerpcEd Maste2020-01-141-5/+3
| | | | | | | | | | | | 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
* Move all sources from the llvm project into contrib/llvm-project.Dimitry Andric2019-12-201-1/+1
| | | | | | | | | | | | | 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
* Get the readline header from the installed header instead of the from the sourceBaptiste Daroussin2019-09-121-1/+1
| | | | | | | location. Notes: svn path=/head/; revision=352249
* Remove usesless readline compat includes which will reinclude readline.hBaptiste Daroussin2019-09-121-1/+0
| | | | | | | | | itself. This simplifies the upcoming update to newer libedit. Notes: svn path=/head/; revision=352242
* as: add deprecation notice to the man pageEd Maste2019-08-011-0/+4
| | | | | | | | | | | | | | | | | | | 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
* objdump: be explicit that GNU objdump that will be removedEd Maste2019-08-011-2/+2
| | | | | | | | | | | 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
* objdump: move deprecation notice to indended spot in the man pageEd Maste2019-08-011-4/+4
| | | | | | | | | | | 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
* powerpc: Transition to Secure-PLT, like most other OSs (Toolchain part)Justin Hibbits2019-06-251-0/+3
| | | | | | | | | | | | | | | | 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
* [PPC] Enable build/install of ld.bfd on baseLeandro Lupori2019-05-201-1/+3
| | | | | | | | | | | | | | When using LLVM+clang+lld on PowerPC64, ld.bfd is also needed, to link 32-bit binaries correctly, as lld support for 32-bit is still minimal. This change enables it to be built and installed when lld is used. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D20259 Notes: svn path=/head/; revision=347992
* Fix gdb/kgdb build under WITH_PIEEd Maste2019-04-012-6/+8
| | | | | | | | | | Explicitly specified bare .a libraries need ${PIE_SUFFIX}. Reported by: David E. Cross, on twitter Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=345778
* Apply WITH_PIE changes to other binutils componentsEd Maste2019-03-253-8/+8
| | | | | | | | | | Followon to r345489, explicitly specified bare .a libraries need ${PIE_SUFFIX} (although these still built). MFC with: r345489 Notes: svn path=/head/; revision=345490
* Fix GNU objdump build under WITH_PIEEd Maste2019-03-251-4/+4
| | | | | | | | | Explicitly specified bare .a libraries need ${PIE_SUFFIX}. Reported by: David E. Cross, on twitter Notes: svn path=/head/; revision=345489
* Divorce MK_GDB from MK_BINUTILS.John Baldwin2019-03-062-8/+12
| | | | | | | | | | | | This permits legacy GDB to still be built and installed if WITHOUT_BINUTILS is set (e.g. if base/binutils is installed). Reviewed by: emaste MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D19480 Notes: svn path=/head/; revision=344854
* grep(1) outputs NOT-matched lines with multi-byte charactersPedro F. Giffuni2019-01-101-9/+22
| | | | | | | | PR 113343 MFC after: 2 months Notes: svn path=/head/; revision=342910
* Avoid bsd.files.mk duplicate rule warning for bfd ldscriptsAlex Richardson2019-01-092-3/+6
| | | | | | | | | | | | Without this change I get lots of warning: duplicate script for target "_FILESINS_ldscripts/elf64btsmip_fbsd.xw" ignored message for every tree walk. Reviewed By: imp, emaste Differential Revision: https://reviews.freebsd.org/D18783 Notes: svn path=/head/; revision=342882
* Do not install GNU ld if lld is /usr/bin/ldEd Maste2018-11-261-1/+5
| | | | | | | | | | | | | | GNU binutils ld.bfd 2.17.50 does not support ifuncs and produces broken binaries when ifuncs are in use. When LLD_IS_LD is default we have an ifunc-capable system linker and can just avoid installing ld.bfd. Reported by: theraven Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18340 Notes: svn path=/head/; revision=340984
* Bring back the WARNS level to what it used to be to please gcc arches at leastBaptiste Daroussin2018-10-201-0/+2
| | | | Notes: svn path=/head/; revision=339495
* Update libdialog to 1.3-20180621Baptiste Daroussin2018-10-201-2/+0
| | | | Notes: svn path=/head/; revision=339488
* - Update head to 13.0-CURRENT.Glen Barber2018-10-191-2/+2
| | | | | | | | | | | | | | - Bump MACHINE_TRIPLE, TARGET_TRIPLE, FBSD_MAJOR, FBSD_CC_VER, FREEBSD_CC_VERSION, OS_VERSION. - Update comment in UPDATING regarding debugging options. - Remove debug.witness.trace=0 from installation media. - Bump __FreeBSD_version. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=339436
* Disable sbrk() use in GNU tools.Brooks Davis2018-09-2112-12/+12
| | | | | | | | | | | | | | We're studing the possibility of deprecating sbrk(). To make it easier we're removing unnecessicary uses in the base system. None of these tools require sbrk(), but they agressively prefer it for no good reason. Reviewed by: andrew Approved by: re (kib) Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D16141 Notes: svn path=/head/; revision=338860
* Teach binutils that arm64 is a 64bit architecture. This is needed to crossAndrew Turner2018-07-061-1/+1
| | | | | | | | | build from arm64 to other architectures that use binutils. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=336027
* Don't use CCACHE for linking.Bryan Drewery2018-06-273-6/+6
| | | | | | | | MFC after: 2 weeks Sponsored by: Dell EMC Notes: svn path=/head/; revision=335733
* Fix GCC 4.2.1 to honor --sysroot for includes.John Baldwin2018-06-272-7/+4
| | | | | | | | | | | | | | | | | | | - Change the C++ directory entries to honor --sysroot if it is set. - Don't define CROSS_INCLUDE_DIR for the cross compiler. Instead, set TARGET_SYSTEM_ROOT to point to WORLDTMP and always define STANDARD_INCLUDE_DIR. - Change STANDARD_INCLUDE_DIR and the C++ include directories to just start with "/usr" always. The compiler will prepend the sysroot when doing cross-builds. GCC_INCLUDE_DIR (which contains headers that ship with the compiler such as intrinsincs rather than OS-supplied headers) remains hardcoded to look in TOOLS_PREFIX. Reviewed by: bdrewery (older version) Sponsored by: DARPA / AFRL Differential Revision: https://reviews.freebsd.org/D15127 Notes: svn path=/head/; revision=335717
* Don't hardcode the TOOLS_PREFIX for the startfiles directories.John Baldwin2018-06-271-2/+2
| | | | | | | | | | | | GCC 4.2 prefixes these directories with --sysroot meaning that during buildworld they have a double sysroot. Reviewed by: bdrewery Sponsored by: DARPA / AFRL Differential Revision: https://reviews.freebsd.org/D14780 Notes: svn path=/head/; revision=335716
* Rework how the ld link is handled in WORLDTMP from r322811.Bryan Drewery2018-06-201-4/+3
| | | | | | | | | | | | | | LLD_BOOTSTRAP (build) is independent of LLD_IS_LD (installed) so they should not be based on each other. This is related to upcoming WITH_SYSTEM_LINKER work. Reviewed by: emaste Sponsored by: Dell EMC Differential Revision: https://reviews.freebsd.org/D15836 Notes: svn path=/head/; revision=335447
* objdump.1: manually apply r229046 to the rendered man pageEd Maste2018-06-151-0/+4
| | | | Notes: svn path=/head/; revision=335219
* Use a script wrapper for <compress>grepBaptiste Daroussin2018-04-251-13/+0
| | | | | | | | | | | | | | | | | | | | | Import the wrapper script from zstdgrep (written by wiz@netbsd.org) Modify it to support more than just zstd (adding support for gzip, lzma, xz and bzip2) Write a simple manpage dedicated for it. Only use that new wrapper both for gnu grep and bsd grep Next step will be removing code related to compression format from bsdgrep Reviewed by: kevans Approved by: kevans MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D15193 Notes: svn path=/head/; revision=332993