summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
...
* MFC r309124:dim2016-12-263-83/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade our copies of clang, llvm, lldb, compiler-rt and libc++ to 3.9.0 release, and add lld 3.9.0. Also completely revamp the build system for clang, llvm, lldb and their related tools. Please note that from 3.5.0 onwards, clang, llvm and lldb require C++11 support to build; see UPDATING for more information. Release notes for llvm, clang and lld are available here: <http://llvm.org/releases/3.9.0/docs/ReleaseNotes.html> <http://llvm.org/releases/3.9.0/tools/clang/docs/ReleaseNotes.html> <http://llvm.org/releases/3.9.0/tools/lld/docs/ReleaseNotes.html> Thanks to Ed Maste, Bryan Drewery, Andrew Turner, Antoine Brodin and Jan Beich for their help. Relnotes: yes MFC r309147: Pull in r282174 from upstream llvm trunk (by Krzysztof Parzyszek): [PPC] Set SP after loading data from stack frame, if no red zone is present Follow-up to r280705: Make sure that the SP is only restored after all data is loaded from the stack frame, if there is no red zone. This completes the fix for https://llvm.org/bugs/show_bug.cgi?id=26519. Differential Revision: https://reviews.llvm.org/D24466 Reported by: Mark Millard PR: 214433 MFC r309149: Pull in r283060 from upstream llvm trunk (by Hal Finkel): [PowerPC] Refactor soft-float support, and enable PPC64 soft float This change enables soft-float for PowerPC64, and also makes soft-float disable all vector instruction sets for both 32-bit and 64-bit modes. This latter part is necessary because the PPC backend canonicalizes many Altivec vector types to floating-point types, and so soft-float breaks scalarization support for many operations. Both for embedded targets and for operating-system kernels desiring soft-float support, it seems reasonable that disabling hardware floating-point also disables vector instructions (embedded targets without hardware floating point support are unlikely to have Altivec, etc. and operating system kernels desiring not to use floating-point registers to lower syscall cost are unlikely to want to use vector registers either). If someone needs this to work, we'll need to change the fact that we promote many Altivec operations to act on v4f32. To make it possible to disable Altivec when soft-float is enabled, hardware floating-point support needs to be expressed as a positive feature, like the others, and not a negative feature, because target features cannot have dependencies on the disabling of some other feature. So +soft-float has now become -hard-float. Fixes PR26970. Pull in r283061 from upstream clang trunk (by Hal Finkel): [PowerPC] Enable soft-float for PPC64, and +soft-float -> -hard-float Enable soft-float support on PPC64, as the backend now supports it. Also, the backend now uses -hard-float instead of +soft-float, so set the target features accordingly. Fixes PR26970. Reported by: Mark Millard PR: 214433 MFC r309212: Add a few missed clang 3.9.0 files to OptionalObsoleteFiles. MFC r309262: Fix packaging for clang, lldb and lld 3.9.0 During the upgrade of clang/llvm etc to 3.9.0 in r309124, the PACKAGE directive in the usr.bin/clang/*.mk files got dropped accidentally. Restore it, with a few minor changes and additions: * Correct license in clang.ucl to NCSA * Add PACKAGE=clang for clang and most of the "ll" tools * Put lldb in its own package * Put lld in its own package Reviewed by: gjb, jmallett Differential Revision: https://reviews.freebsd.org/D8666 MFC r309656: During the bootstrap phase, when building the minimal llvm library on PowerPC, add lib/Support/Atomic.cpp. This is needed because upstream llvm revision r271821 disabled the use of std::call_once, which causes some fallback functions from Atomic.cpp to be used instead. Reported by: Mark Millard PR: 214902 MFC r309835: Tentatively apply https://reviews.llvm.org/D18730 to work around gcc PR 70528 (bogus error: constructor required before non-static data member). This should fix buildworld with the external gcc package. Reported by: https://jenkins.freebsd.org/job/FreeBSD_HEAD_amd64_gcc/ MFC r310194: Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to 3.9.1 release. Please note that from 3.5.0 onwards, clang, llvm and lldb require C++11 support to build; see UPDATING for more information. Release notes for llvm, clang and lld will be available here: <http://releases.llvm.org/3.9.1/docs/ReleaseNotes.html> <http://releases.llvm.org/3.9.1/tools/clang/docs/ReleaseNotes.html> <http://releases.llvm.org/3.9.1/tools/lld/docs/ReleaseNotes.html> Relnotes: yes
* MFC r310186,r310187:ngie2016-12-241-0/+59
| | | | | | | | | | | | | | | r310186: Install the lib/libelftc manpages Some other manpages, e.g. c++filt reference these r310187: Remove lib/libelf's manpages if MK_TOOLCHAIN == no Add a comment to help figure out which set is lib/libelf's and which set is lib/libelftc's
* MFC r309602:ngie2016-12-151-0/+4
| | | | Remove svn[lite]{bench,fsfs} if either MK_SVN == no or MK_SVNLITE == no
* MFC r309797-r309802bapt2016-12-121-0/+41
| | | | | | | | | | | | | | | | | | | | | | | r309797: Add entries to remove timed files with make delete-old if WITHOUT_TIMED is set r309798: Also remove auditdistd files if src.conf has WITHOUT_AUDIT r309799: Respect WITHOUT_RBOOTD in src.conf when running make delete-old r309800: Respect WITHOUT_BOOTPARAMD in src.conf when running make delete-old r309801: Respect WITHOUT_BOOTPD in src.conf when running make delete-old r309802: Respect WITHOUT_FINGER in src.conf when running make delete-old PR: 213719, 213720, 213721, 213722, 213723, 213724 Submitted by: philippe.michel7@sfr.fr
* MFC: r309060brueffer2016-12-121-1/+1
| | | | | | | Fix comment typo. PR: 208484 Submitted by: madpilot
* MFC 306821,306823: Permit updating firmware config file in flash.jhb2016-12-052-0/+60
| | | | | | | | | 306821: cxgbe(4): Add an ioctl to copy a firmware config file to the card's flash. 306823: cxgbetool: Add a loadcfg subcommand to allow a user to upload a firmware configuration file to the card.
* MFC 305695,305696,305699,305702,305703,305713,305715,305827,305852,305906,jhb2016-12-051-7/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 305908,306062,306063,306137,306138,306206,306216,306273,306295,306301, 306465,309302: Add support for adapters using the Terminator T6 ASIC. 305695: cxgbe(4): Set up fl_starve_threshold2 accurately for T6. 305696: cxgbe(4): Use correct macro for header length with T6 ASICs. This affects the transmit of the VF driver only. 305699: cxgbe(4): Update the pad_boundary calculation for T6, which has a different range of boundaries. 305702: cxgbe(4): Use smaller min/max bursts for fl descriptors with a T6. 305703: cxgbe(4): Deal with the slightly different SGE_STAT_CFG in T6. 305713: cxgbe(4): Add support for additional port types and link speeds. 305715: cxgbe(4): Catch up with the rename of tlscaps -> cryptocaps. TLS is one of the capabilities of the crypto engine in T6. 305827: cxgbe(4): Use the interface's viid to calculate the PF/VF/VFValid fields to use in tx work requests. 305852: cxgbe(4): Attach to cards with the Terminator 6 ASIC. T6 cards will come up as 't6nex' nexus devices with 'cc' ports hanging off them. The T6 firmware and configuration files will be added as soon as they are released. For now the driver will try to work with whatever firmware and configuration is on the card's flash. 305906: cxgbe/t4_tom: The SMAC entry for a VI is at a different location in the T6. 305908: cxgbe/t4_tom: Update the active/passive open code to support T6. Data path works as-is. 306062: cxgbe(4): Show wcwr_stats for T6 cards. 306063: cxgbe(4): Setup congestion response for T6 rx queues. 306137: cxgbetool: Add T6 support to the SGE context decoder. 306138: Fix typo. 306206: cxgbe(4): Catch up with the different layout of WHOAMI in T6. Note that the code moved below t4_prep_adapter() as part of this change because now it needs a working chip_id(). 306216: cxgbe(4): Fix the output of the "tids" sysctl on T6. 306273: cxgbe(4): Fix netmap with T6, which doesn't encapsulate SGE_EGR_UPDATE message inside a FW_MSG. The base NIC already deals with updates in either form. 306295: cxgbe(4): Support SIOGIFXMEDIA so that ifconfig displays correct media for 25Gbps and 100Gbps ports. This should have been part of r305713, which is when the driver first started reporting extended media types. 306301: cxgbe(4): Use the port's top speed to figure out whether it is "high speed" or not (for the purpose of calculating the number of queues etc.) This does the right thing for 25Gbps and 100Gbps ports. 306465: cxgbe(4): Claim the T6 -DBG card. 309302: cxgbe(4): Include firmware for T6 cards in the driver. Update all firmwares to 1.16.12.0. Sponsored by: Chelsio Communications
* MFC r307713:ngie2016-12-031-0/+1
| | | | Remove /usr/libexec/bsdinstall/hardening if MK_BSDINSTALL == no
* MFC r307182,307191,307192: rc.d/zfsbe: new script designed for BE supportavg2016-11-031-0/+1
|
* MFC r307786:bapt2016-10-251-0/+7
| | | | | | | Do not install NIS program rc script if WITHOUT_NIS is set PR: 213375 Submitted by: sergey@akhmatov.ru
* MFC r303784, r303785, r305620:bapt2016-10-221-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r303784: etcupdate: directly use diff3(1) instead of merge(1) During the last attempt to rmeove GNU rcs, 2 blockers were spotted: We need an ident(1) and etcupdate(8) uses merge(1). Now nothing should prevent to remove rcs from base Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D7401 r303785: always install etcupdate Now that etcupdate does not depend on rcs anymore there is no need to conditionnally install it r305620: (by vangyzen ) etcupdate: preserve the metadata of the destination file When using diff3 to perform a three-way merge, etcupdate lost the destination file's metadata. The metadata from the temporary file were used instead. This was unpleasant for rc.d scripts, which require execute permission. Use "cat >" to overwrite the destination file's contents while preserving its metadata. Reviewed by: bapt Sponsored by: Dell Technologies Differential Revision: https://reviews.freebsd.org/D7817
* MFC r306877bapt2016-10-151-4/+0
| | | | Remove the WITH_FMAKE option left over from r284464
* MFC 303887: Add a dmardump utility to dump the VT-d context tables.jhb2016-09-302-0/+307
| | | | | | | | | | | | This tool parses the ACPI DMAR table looking for DMA remapping devices. For each device it walks the root table and any context tables referenced to display mapping info for PCI devices. Note that acpidump -t already parses the info in the ACPI DMAR tables directly. This tool examines some of the data structures the DMAR remapping engines use to translate DMA requests. Sponsored by: Chelsio Communications
* MFC: 305066,305304,305312gnn2016-09-241-30/+36
| | | | | | | | | Update cryptotest for modern algorithms Clean up the usage message and remove dead code. Add cpuset support to separate forked processes. Reviewed by: cem Sponsored by: Rubicon Communications, LLC (Netgate)
* Remove ftp(1) related files when MK_FTP == nongie2016-07-031-0/+14
| | | | | | | | | Approved by: re (gjb) Differential Revision: https://reviews.freebsd.org/D6969 MFC after: 1 week Reviewed by: ngie Submitted by: rakuco Sponsored by: EMC / Isilon Storage Division
* Posixify the locales name for variantsbapt2016-07-033-88/+99
| | | | | | | | | | | | | | | | | | | | For all locales with variants: - if no ambiguity on the locale (only one variant) just use the regular name - if ambiguity, pick one as default and append @<variant> to the others respecting POSIX As a result: - All the 3 components locales added recently are renamed to the usual 2 components version for all but sr_RS.UTF-8 - Set sr_RS.UTF-8 to the cyrillic variant - Add sr_RS.UTF-8@latin - Remove the symlinks aliases they were created to represent the 2 components version as aliasas and are now useless - Update the OptionalObsoleteFiles.inc and ObsoleteFiles.inc to reflect those changes Discussed with: ache@ Approved by: re@ (gjb)
* Document support for alternate TCP stacks.jtl2016-06-281-0/+2
| | | | | | | Differential Revision: https://reviews.freebsd.org/D6940 Reviewed by: hiren Approved by: re (gjb) Sponsored by: Juniper Networks
* makeroot: zero out subsecond component of time= keywordsemaste2016-06-231-0/+4
| | | | | | | | | | They are currently not supported by makefs(1). PR: 194703 Reviewed by: brooks Approved by: re (gjb) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D6925
* Fix generation of locales with multiple variantsbapt2016-06-201-18/+19
| | | | | | | | | Serbian locales have triple components to represent the 2 variations of the locale: Latin and Cyrillic. Previously the tools generatic the locale were appending both definitions instead of differentiating them. Reported by: ache Approved by: re (gjb)
* - Prefer to use %d over %e where the day of the month should be zeroume2016-06-191-3/+12
| | | | | | | | | filled. - Since %e means the day of the month as well, regard %e as same as %d in md_order. Reported by: vangyzen Approved by: re (gjb)
* Add clang-format under WITH_CLANG_EXTRAS.bdrewery2016-06-171-0/+1
| | | | | | | Reviewed by: dim Approved by: re (gjb) Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D6856
* Add a tool to decode ioctl commands.jhb2016-06-152-0/+104
| | | | | | | | | | | One or more ioctl command values can be passed as arguments on the command line. For each value, the command is broken down into it's components (direction, group, number, and length). In addition, if a command has a known name it is output via sysdecode_ioctlname(). Reviewed by: kib, emaste, avg Approved by: re (gjb) Differential Revision: https://reviews.freebsd.org/D6851
* WITH_META_MODE: Enable printing of some of make's environment on error.bdrewery2016-06-141-0/+3
| | | | | | | | | | | | | | This will print a set of variables from make on error using MAKE_PRINT_VAR_ON_ERROR. It is already enabled for the DIRDEPS_BUILD. It may make sense to enable this in the non-meta mode as well once people are more used to its more verbose error output. This makes it much simpler to see which .meta file is used when a command files so that it may be inspected for the build command. Suggested by: sjg Approved by: re (implicit) Sponsored by: EMC / Isilon Storage Division
* WITH_META_MODE: Lessen the filemon(4) requirement scope.bdrewery2016-06-141-2/+6
| | | | | | | | | | | | | | | | | | | - Move the sys.mk filemon requirement to bsd.init.mk as a warning. This is intended only to show when building directly in a subdirectory without filemon loaded. - Move the error into Makefile and only apply it when building from the META_TGT_WHITELIST target list. -DNO_FILEMON can be used to suppress both the warning and the error but makes WITH_META_MODE less useful. It will only compare build commands in this mode rather than track all dependencies. This fixes installing from a jail which doesn't need filemon in this phase [1]. Reported by: Nikolai Lifanov <lifanov@mail.lifanov.com> [1] Approved by: re (implicit) Sponsored by: EMC / Isilon Storage Division
* build: Add legacy support for futimens() and utimensat().jilles2016-06-094-1/+259
| | | | | | | | | | | | | | | In order to allow using utimensat() in install(1), add futimens() and utimensat() to -legacy. The files futimens.c and utimensat.c are modified copies of the files under lib/libc/sys/ since the libc versions use symbols that do not exist in the libc on the build system (sys_futimens and sys_utimensat) . I expect the next non-sweeping change to both sets of files to be to delete them, anyway. This will allow reverting r299942 (which is a revert of r299850) enabling nanosecond timestamps in install(1). Reviewed by: bdrewery
* Replace _pam_verbose_error() with a macro. This was the last differencedes2016-06-081-6/+6
| | | | | between our libpam and stock OpenPAM, meaning that it is now possible to replace the base libpam with a hypothetical ports version of OpenPAM.
* Document BLACKLIST related build optionslidl2016-06-072-0/+10
| | | | | Reported by: bdrewery Sponsored by: The FreeBSD Foundation
* Separate BLACKLIST vs BLACKLIST_SUPPORT properlylidl2016-06-071-1/+1
| | | | Sponsored by: The FreeBSD Foundation
* cxgbetool: Allow max-rate > 10Gbps for rate-limited traffic.np2016-06-061-2/+2
| | | | Sponsored by: Chelsio Communications
* Document WITH_META_MODE enforcing WITHOUT_SYSTEM_COMPILER.bdrewery2016-06-051-0/+3
| | | | | | makeman doesn't handle this since it would need to enable all non-default options when checking enabling 1 option, which then convolutes what is really affecting each other.
* WITH_META_MODE: Enable bmake's missing meta rebuild featurebdrewery2016-06-051-3/+4
|
* Correct path for blacklistd.conf in OptionalObsoleteFiles.inclidl2016-06-051-1/+1
| | | | | | | | | | Fix typo made when adding the blacklistd.conf file to OptionalObsoleteFiles.inc Submitted by: Herbert J. Skuhra ( herbert at mailbox.org ) Reviewed by: rpaulo Approved by: rpaulo Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D6715
* Add blacklistd.conf manpagelidl2016-06-031-0/+1
| | | | | | | | | | Install the blacklistd.conf man page, missed in the original commit. Submitted by: Herbert J. Skuhra ( herbert at mailbox.org ) Reviewed by: rpaulo Approved by: rpaulo Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D6702
* Add basic blacklist build supportlidl2016-06-021-0/+20
| | | | | | | | Reviewed by: rpaulo Approved by: rpaulo Relnotes: YES Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D5913
* Add more hacks to correct CLDR databapt2016-05-291-5/+27
| | | | | | | | | | | | | | For Russian: - Convert AM/PM which are badly formatted in CLDR to replace it by the proper cyrillic - Add a dependency on Text::Iconv so non unicode get the proper encoding for AM/PM - fix the date format having 'r.,' and convert it to 'r.' (also fixed in Bulgarian) For All: - Use complete Day of Week instead of the abbreviated one Reported by: ache
* Remove yacc and the yacc tests if MK_TOOLCHAIN == nongie2016-05-291-0/+310
| | | | | | | yacc's install is conditional based on MK_TOOLCHAIN != no MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Remove the sa(8) tests if MK_ACCT == no when "make delete-old" is runngie2016-05-291-0/+27
| | | | | | | sa(8) is conditionally installed based on MK_ACCT != no today MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Remove the etcupdate tests if MK_RCS == no when "make delete-old" is runngie2016-05-291-0/+9
| | | | | | | etcupdate is conditionally installed based on MK_RCS != no today MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Remove the calendar tests if MK_CALENDAR == no when "make delete-old"ngie2016-05-291-0/+33
| | | | | | | is run MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Add a hack to readd the day of weeks in default date formatsbapt2016-05-281-6/+10
|
* Update usage(..)ngie2016-05-271-6/+11
| | | | | | | | | - Document missing options - Sync options with ioatcontrol(8). - Make it clear that the first 2 parameters are always required. MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Remove note about bogus chain-len maximumngie2016-05-271-1/+1
| | | | | | | | | There's no current limit on chain-len with Broadwell DE chips; it isn't enforced in software, and there doesn't appear to be a hardware limitation either on the Intel Xeon D-1527 (Broadwell-DE) chip. MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Install ioatcontrol to /usr/bin by default instead of /ngie2016-05-271-0/+1
| | | | | MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* - Sort make variablesngie2016-05-271-2/+5
| | | | | | | - Use SRCTOP instead of ad hoc definition for it MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Fix description for -V in the -r casengie2016-05-271-1/+1
| | | | | | | | t.verify_test = true is always set when -V is specified, regardless of whether or not the tool is being run in raw mode MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Document the default behavior for -c (0)ngie2016-05-271-2/+3
| | | | | | | Bump .Dd for the change MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* Initialize `t` with memset(.., 0, ..)ngie2016-05-271-0/+3
| | | | | | | | This will help ensure that we're not using random garbage on the stack by accident with respect to the variable MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* DIRDEPS_BUILD: Add a Makefile.dependbdrewery2016-05-261-0/+56
| | | | Sponsored by: EMC / Isilon Storage Division
* WITH_META_MODE: Correct description of missing .meta file.bdrewery2016-05-241-1/+3
| | | | Sponsored by: EMC / Isilon Storage Division
* Opportunistically skip building a cross-compiler with SYSTEM_COMPILER set.bdrewery2016-05-212-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will still build the compiler for the target but will not build the bootstrap cross-compiler in the cross-tools phase. Other toolchain bootstrapping, such as elftoolchan and binutils, currently still occurs. This will utilize the default CC (cc, /usr/bin/cc) as an external compiler. This is planned to be on-by-default eventually. This will utilize the __FreeBSD_cc_version compiler macro defined in the source tree and compare it to CC's version. If they match then the cross-compiler is skipped. If [X]CC is an external compiler (absolute path) or WITHOUT_CROSS_COMPILER is already set, then this logic is skipped. If the expected bootstrap compiler type no longer matches the found CC compiler type (clang vs gcc), then the logic is skipped. As an extra safety check the version number is also compared from the compiler to the tree version. Clang: The macro FREEBSD_CC_VERSION is defined in: lib/clang/include/clang/Basic/Version.inc For clang -target will be used if TARGET_ARCH != MACHINE_ARCH. This is from the current external toolchain logic. There is currently an assumption that the host compiler can build the TARGET_ARCH. This will usually be the case since we don't conditionalize target arch support in clang, but it will break when introducing new architectures. This problem is mitigated by incrementing the version when adding new architectures. GCC: The macro FBSD_CC_VER is defined in: gnu/usr.bin/cc/cc_tools/freebsd-native.h For GCC there is no simple -target support when TARGET_ARCH != MACHINE_ARCH. In this case the opportunistic skip is not done. If we add proper support for this case in external toolchain logic then it will be fine to enable. This relies on the macros being incremented whenever any change occurs to these compilers that warrant rebuilding files. It also should never repeat earlier values. Reviewed by: brooks, bapt, imp Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D6357
OpenPOWER on IntegriCloud