summaryrefslogtreecommitdiffstats
path: root/gnu
Commit message (Collapse)AuthorAgeFilesLines
* Add missing function prototypes in KGDBwma2016-04-207-2/+78
| | | | This fixes the build broken by r298358
* Fix KGDB backtrace on ARMwma2016-04-203-18/+74
| | | | | | | | | | | | | | | | | Modify trapframe decoding to properly analyze trapframe. Provide method for fixup_pc. It happens, that in some kernel functions, the GDB stack frame decoder cannot determine both func name and frame size. This is because these functions either contain invalid instruction, or their format does not match standard schema. Detect that scenarios and move PC accordingly to jump into known function schema, which GDB is able to parse. Obtained from: Semihalf Sponsored by: Juniper Networks Reviewed by: kib, zbb Differential Revision: https://reviews.freebsd.org/D5976
* Follow-up r297842: Rework header generation to fix always rebuilding.bdrewery2016-04-185-131/+148
| | | | | | | | | | This reworks the handling of common headers to just include the needed logic rather than invoke MAKE. This avoids the problem listed in r297842 and avoids other dependency tracking issues. Pointyhat to: bdrewery Reported by: Nikolai Lifanov <lifanov@mail.lifanov.com> Sponsored by: EMC / Isilon Storage Division
* MFHgjb2016-04-123-3/+3
| | | | Sponsored by: The FreeBSD Foundation
* MFHgjb2016-04-041-1/+0
|\ | | | | | | Sponsored by: The FreeBSD Foundation
| * Remove the old depend (mkdep) code and make FAST_DEPEND the one true way.bdrewery2016-03-301-1/+0
| | | | | | | | | | | | | | Reviewed by: emaste, hselasky (partial), brooks (brief) Discussed on: arch@ Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D5742
* | MFHgjb2016-03-104-0/+44
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * DIRDEPS_BUILD: Connect MK_TESTS.bdrewery2016-03-094-0/+44
| | | | | | | | Sponsored by: EMC / Isilon Storage Division
* | MFHgjb2016-03-0233-2424/+60
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Convert casperd(8) daemon to the libcasper.oshogbo2016-02-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After calling the cap_init(3) function Casper will fork from it's original process, using pdfork(2). Forking from a process has a lot of advantages: 1. We have the same cwd as the original process. 2. The same uid, gid and groups. 3. The same MAC labels. 4. The same descriptor table. 5. The same routing table. 6. The same umask. 7. The same cpuset(1). From now services are also in form of libraries. We also removed libcapsicum at all and converts existing program using Casper to new architecture. Discussed with: pjd, jonathan, ed, drysdale@google.com, emaste Partially reviewed by: drysdale@google.com, bdrewery Approved by: pjd (mentor) Differential Revision: https://reviews.freebsd.org/D4277
| * OBJS and POBJS have not been used since r215127.bdrewery2016-02-241-6/+4
| | | | | | | | | | | | | | r215127 disabled building of libgcc.a. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division
| * Don't hide AR command as bsd.lib.mk's r283925 changed as well.bdrewery2016-02-241-2/+2
| | | | | | | | | | MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division
| * DIRDEPS_BUILD: Regenerate without local dependencies.bdrewery2016-02-2431-2415/+53
| | | | | | | | | | | | | | | | These are no longer needed after the recent 'beforebuild: depend' changes and hooking DIRDEPS_BUILD into a subset of FAST_DEPEND which supports skipping 'make depend'. Sponsored by: EMC / Isilon Storage Division
* | MFHgjb2016-02-181-1/+1
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Hardcode date in RCS paper for reproducibilityemaste2016-02-171-1/+1
| | | | | | | | | | | | | | | | | | | | The 1995/06/01 date is taken from the $Id$ entry in rcs.ms from RCS 5.7, the last version we imported, and is more meaningful than the OS build date. Reviewed by: eadler Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D5299
* | Remove libc, librtld_db, libthr packages, and further increasegjb2016-02-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | the constraints on what needs to be installed in a specific to maintain consistency during upgrades. Create a new clibs package containing libraries that are needed as a bare minimum for consistency. With much help and input from: kib Sponsored by: The FreeBSD Foundation
* | More 'tests' packaging fixes.gjb2016-02-032-0/+9
| | | | | | | | Sponsored by: The FreeBSD Foundation
* | First pass to fix the 'tests' packages.gjb2016-02-022-0/+10
| | | | | | | | Sponsored by: The FreeBSD Foundation
* | MFHgjb2016-01-291-1/+1
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Make .debug file for libgcc_s.so.1 more useful.kan2016-01-271-1/+1
| | | | | | | | | | | | The files compiled into libgcc_s.so.1 did not have -g on compiler command line, making generated .debug quite pointless.
* | MFHgjb2016-01-271-2/+7
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Make libgcc compilable on RISC-V.br2016-01-261-2/+7
| |
* | MFHgjb2016-01-252-2/+7
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Use MAN= to specify that no man page is providedemaste2016-01-221-1/+1
| | | | | | | | | | | | NO_MAN is deprecated. Reviewed by: imp
| * Restore libunwind.cpp to LLVM libunwind build (reverts r294576)emaste2016-01-221-1/+2
| | | | | | | | The unw_* functions are not exported, but are used internally.
| * Drop HP libunwind (unw_*) functions from LLVM libunwindemaste2016-01-221-2/+1
| | | | | | | | They are not needed for exception handling.
| * Remove old generated unwind.h when using LLVM libunwindemaste2016-01-221-1/+6
| | | | | | | | | | | | | | | | | | | | | | When not using LLVM libunwind, unwind.h is a generated header and a stale copy may remain in the OBJDIR after enabling LLVM libunwind. Explicitly remove it. Reported by: bz Reviewed by: bdrewery Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D5019
* | MFHgjb2016-01-201-13/+1
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Remove local override for .cpp.o and .cpp.po rulesemaste2016-01-191-8/+1
| | | | | | | | | | | | | | | | | | | | | | The local build rule used to set -fvisibility=hidden and -fPIC, in addition to -fexceptions and -D defines that had no effect. With -fvisibility=hidden and -fPIC in STATIC_CXXFLAGS the standard bsd.lib.mk rules are suitable for libgcc_s's C++ source. PR: 206381 Sponsored by: The FreeBSD Foundation
| * Remove local override for .cpp.So ruleemaste2016-01-191-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The standard bsd.lib.mk rule is suitable for libgcc_s's C++ source. The local rule had the following non-functional argument differences or additions: 1. -DSHARED (rather than -DPIC from bsd.lib.mk) The C++ sources don't have an #ifdef for either one. 2. -fexceptions This is enabled by default for C++ so does not need to be set explicitly. 3. -D__GLIBC__=3 Not used by LLVM libunwind. 4. -DElfW=__ElfN LLVM libunwind provides its own definition. PR: 206381 Differential Revision: The FreeBSD Foundation
* | MFHgjb2016-01-121-4/+51
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Support use of LLVM's libunwind for exception unwindingemaste2016-01-091-4/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is built in libgcc_s.so and libgcc_eh.a to simplify transition. It is enabled by default on arm64 (where we previously had no other unwinder) and may be enabled for testing on other platforms by setting WITH_LLVM_LIBUNWIND in src.conf(5). Also add compiler-rt's __gcc_personality_v0 implementation for use with the LLVM unwinder. Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D4787
* | MFHgjb2016-01-071-2/+3
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Switch GNU ld to be installed as ld.bfd and linked as ldemaste2016-01-071-2/+3
| | | | | | | | | | | | | | | | | | | | We intend to replace GNU ld with LLVM's lld, and on the path to there we'll experiment with having lld installed or linked as /usr/bin/ld. Thus, make ld.bfd the primary install target for GNU ld, to later facilitate making the ld link optional. Reviewed by: davide, dim Differential Revision: https://reviews.freebsd.org/D4790
* | MFH r289384-r293170gjb2016-01-0449-141/+131
|\ \ | |/ | | | | Sponsored by: The FreeBSD Foundation
| * Install ld also as ld.bfd, for use with cc -fuse-ld=bfdemaste2015-12-231-0/+1
| | | | | | | | | | | | | | PR: 205409 [exp-run] MFC after: 1 week Relnotes: Yes Sponsored by: The FreeBSD Foundation
| * Fix LDADD/DPADD that should be LIBADD.bdrewery2015-12-0418-37/+54
| | | | | | | | Sponsored by: EMC / Isilon Storage Division
| * Don't override LIB*DIR variables from src.libnames.mk.bdrewery2015-12-011-3/+3
| | | | | | | | | | | | | | | | In some cases switch to the LIB*SRCDIR value. These recently were defined in r291327 and r291619. Sponsored by: EMC / Isilon Storage Division
| * META MODE: Update dependencies with 'the-lot' and add missing directories.bdrewery2015-12-015-7/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is not properly respecting WITHOUT or ARCH dependencies in target/. Doing so requires a massive effort to rework targets/ to do so. A better approach will be to either include the SUBDIR Makefiles directly and map to DIRDEPS or just dynamically lookup the SUBDIR. These lose the benefit of having a userland/lib, userland/libexec, etc, though and results in a massive package. The current implementation of targets/ is very unmaintainable. Currently rescue/rescue and sys/modules are still not connected. Sponsored by: EMC / Isilon Storage Division
| * Update dependencies after r291406 added libelf to libkvm.bdrewery2015-12-011-0/+1
| | | | | | | | | | | | | | | | Unfortunately filemon/meta mode tracks all indirect dependencies here since ld(1) is reading libelf when linking in libkvm. Churn would be reduced if this was able to be limited to direct dependencies. Sponsored by: EMC / Isilon Storage Division
| * Fix a double-semicolon typo in my libkvm changes.jhb2015-11-301-1/+1
| | | | | | | | Submitted by: jmallett
| * Add support to libkvm for reading vmcores from other architectures.jhb2015-11-273-29/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add a kvaddr_type to represent kernel virtual addresses instead of unsigned long. - Add a struct kvm_nlist which is a stripped down version of struct nlist that uses kvaddr_t for n_value. - Add a kvm_native() routine that returns true if an open kvm descriptor is for a native kernel and memory image. - Add a kvm_open2() function similar to kvm_openfiles(). It drops the unused 'swapfile' argument and adds a new function pointer argument for a symbol resolving function. Native kernels still use _fdnlist() from libc to resolve symbols if a resolver function is not supplied, but cross kernels require a resolver. - Add a kvm_nlist2() function similar to kvm_nlist() except that it uses struct kvm_nlist instead of struct nlist. - Add a kvm_read2() function similar to kvm_read() except that it uses kvaddr_t instead of unsigned long for the kernel virtual address. - Add a new kvm_arch switch of routines needed by a vmcore backend. Each backend is responsible for implementing kvm_read2() for a given vmcore format. - Use libelf to read headers from ELF kernels and cores (except for powerpc cores). - Add internal helper routines for the common page offset hash table used by the minidump backends. - Port all of the existing kvm backends to implement a kvm_arch switch and to be cross-friendly by using private constants instead of ones that vary by platform (e.g. PAGE_SIZE). Static assertions are present when a given backend is compiled natively to ensure the private constants match the real ones. - Enable all of the existing vmcore backends on all platforms. This means that libkvm on any platform should be able to perform KVA translation and read data from a vmcore of any platform. Tested on: amd64, i386, sparc64 (marius) Differential Revision: https://reviews.freebsd.org/D3341
| * Use LIBEXECDIR for /usr/libexec.bdrewery2015-11-262-2/+2
| | | | | | | | | | MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
| * Replace DPSRCS that work fine in SRCS.bdrewery2015-11-251-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is so that 'make depend' is not a required build step in these files. DPSRCS is overall unneeded. DPSRCS already contains SRCS, so anything which can safely be in SRCS should be. DPSRCS is mostly just a way to generate files that should not be linked into the final PROG/LIB. For headers and grammars it is safe for them to be in SRCS since they will be excluded during linking and installation. The only remaining uses of DPSRCS are for generating .c or .o files that must be built before 'make depend' can run 'mkdep' on the SRCS c files list. A semi-proper example is in tests/sys/kern/acct/Makefile where a checked-in .c file has an #include on a generated .c file. The generated .c file should not be linked into the final PROG though since it is #include'd. The more proper way here is just to build/link it in though without DPSRCS. Another example is in sys/modules/linux/Makefile where a shell script runs to parse a DPSRCS .o file that should not be linked into the module. Beyond those, the need for DPSRCS is largely unneeded, redundant, and forces 'make depend' to be ran. Generally, these Makefiles should avoid the need for DPSRCS and define proper dependencies for their files as well. An example of an improper usage and why this matters is in usr.bin/netstat. nl_defs.h was only in DPSRCS and so was not generated during 'make all', but only during 'make depend'. The files including it lacked proper depenencies on it, which forced running 'make depend' to workaround that bug. The 'make depend' target should mostly be used for incremental build help, not to produce a working build. This specific example was broken in the meta build until r287905 since it does not run 'make depend'. The gnu/lib/libreadline/readline case is fine since bsd.lib.mk has 'OBJS: SRCS:M*.h' when there is no .depend file. Sponsored by: EMC / Isilon Storage Division MFC after: 1 week
| * META MODE: Don't create .meta files when symlinking sources into the obj ↵bdrewery2015-11-255-9/+9
| | | | | | | | | | | | | | | | | | | | | | directory. Tracking these leads to situations where meta mode will consider the file to be out of date if /bin/sh or /bin/ln are newer than the source file. There's no reason for meta mode to do this as make is already handling the rebuild dependency fine. Sponsored by: EMC / Isilon Storage Division
| * META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host.bdrewery2015-11-256-6/+0
| | | | | | | | | | | | | | | | This both avoids some dependencies on xinstall.host and allows bootstrapping on older releases to work due to lack of at least 'install -l' support. Sponsored by: EMC / Isilon Storage Division
| * Fix ld not respecting --sysroot.bdrewery2015-11-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ld(1) uses the /usr/libdata/ldscripts when linking. These scripts add in the default search paths of /lib and /usr/lib via 'SEARCH_DIR("DIR")'. These need to be prefixed by '=' so that the --sysroot flag is respected. This is not a problem with buildworld since the TOOLS_PREFIX is baked into the cross-ld. However it is a problem when trying to use ld(1) with --sysroot anywhere else as it ends up still reading /lib and /usr/lib despite --sysroot. The default --sysroot (TARGET_SYSTEM_ROOT) is '/' for /usr/bin/ld. I found this while building with META MODE with uses only --sysroot with /usr/bin/ld, and found that libraries that I had not built in its sysroot directory were leaking in. This didn't happen with ports binutils either. This would also impact external compiler support. Reviewed by: bapt, brooks MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D4262
| * Include "system.h" for isdir() prototype.rodrigc2015-11-041-0/+1
| | | | | | | | | | Submitted by: bofh Differential Revision: https://reviews.freebsd.org/D2711
| * Use PCB/LR from PCB rather from stack on armv7-gdbzbb2015-10-301-7/+3
| | | | | | | | | | | | | | | | | | | | | | The kernel dump does not store these values on the stack. Use PCB structure to resolve PC and LR properly. Submitted by: Wojciech Macek <wma@semihalf.com> Reviewed by: jhb, kib Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4013
| * Remove disconnected xditview.bdrewery2015-10-211-34/+0
| |
OpenPOWER on IntegriCloud