Commit Graph

3777 Commits

Author SHA1 Message Date
Ed Maste
d290883447 Move test for zero bufp or size before rseq and wseq calculation. This
avoids spinning in an infinite loop for some (possibly corrupt?) core
files at work.
2010-09-22 19:41:01 +00:00
Dimitry Andric
d205253515 When building world with clang, for gnu/lib/libobjc, sys/boot/i386/boot2
and sys/boot/pc98/boot2, do not simply assign 'gcc' to CC, since compile
flags are sometimes passed via this variable, for example during the
build32 stage on amd64.  This caused the 32-bit libobjc build on amd64
to fail.

Instead, only replace the first instance of clang (if any, including
optional path) with gcc, and leave the arguments alone.

Approved-by:	rpaulo (mentor)
2010-09-21 21:41:45 +00:00
Tijl Coosemans
2751839107 GCC defines built-ins for atomic instructions found on i486 and higher.
Because FreeBSD no longer supports the 80386 cpu all code targeting
FreeBSD/i386 necessarily runs on i486 or higher so the compiler
built-ins can be used by default inside libstdc++ and in C++ headers.
This allows newly compiled C++ code to inline some atomic operations.
Old binaries continue to use libstdc++ functions.

PR:		148926
Tested by:	Yuri Karaban <tech askold net>
Reviewed by:	kan
Approved by:	kib (mentor)
MFC after:	2 weeks
2010-09-07 08:33:17 +00:00
Dimitry Andric
c05f0da034 Use a more robust way to substitute gcc for clang, when compiling
gnu/lib/libobjc and sys/boot/i386/boot2, so it also works when using
absolute paths and/or options, as in CC="/absolute/path/clang -foo".

Approved by:	rpaulo (mentor)
2010-08-31 17:33:29 +00:00
Nathan Whitehorn
b12277d1d4 Repair some build breakage introduced in r211725 and garbage collect some
code made obsolete in the same commit.
2010-08-28 15:03:11 +00:00
Warner Losh
b57429d082 Create a checklist and call one of the *printw() functions from the
selected() callback. When the dialog first appears, you will not see
the printed statement on the dialog, if you move down one, you will,
move up again and it now appears. I am assuming that you call a
*printw() function on a line in the dialog box of course.

The fix, from the pr:
	This is a hack at best, I looked at the redraw code in
	dialog_checklist() and took the minimal amount of it out to do
	a simple "refresh" right after the items are drawn. This
	doesn't hurt anything and makes the library work like it
	should. There is probably a better way however =).

PR:		148609
Submitted by:	John Hixson
2010-08-24 06:30:46 +00:00
Warner Losh
25faff346c MFtbemd:
Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want
to test of all the CPUs of a given family conform.
2010-08-23 22:24:11 +00:00
Gabor Kovesdan
6608cc579e - Change default grep back to GNU version. BSD grep can be built with the
WITH_BSD_GREP knob.
- Bump __FreeBSD_version

Requested by:   dougb
Approved by:    delphij (mentor)
2010-08-23 10:04:26 +00:00
Rui Paulo
3a060e4a1a We need to pull bsd.own.mk before modifying the CC variable. Otherwise
it will be overwritten when we include bsd.lib.mk.

Pointed out by:	Dimitry Andric <dimitry at andric.com>
2010-08-21 14:59:37 +00:00
Will Andrews
4be3feb212 Fix buildworld -DNO_CLEAN when using with Perforce, which marks files as
read-only by default, meaning files copied can't be overwritten next time.

Reviewed by:	imp
Approved by:	ken (mentor)
2010-08-12 20:46:49 +00:00
John Baldwin
68819dae55 Change kgdb_lookup() to resolve symbols via GDB instead of via libkvm(3). 2010-08-04 21:02:04 +00:00
Jung-uk Kim
03b2888ea1 Give kgdb(1) a chance to take a look at FPU state. 2010-08-02 17:40:25 +00:00
Ulrich Spörlein
419fbf6975 Fix case for library macros 2010-08-02 15:33:16 +00:00
Rui Paulo
7cbb9251a6 Add libproc.
Sponsored by:	The FreeBSD Foundation
2010-07-31 14:57:33 +00:00
Rui Paulo
8f19d9820c Add librtld_db.
Sponsored by:	The FreeBSD Foundation
2010-07-31 14:36:34 +00:00
Andriy Gapon
7996bf419b kgdb: correctly map sections to addresses in elf object modules (amd64)
Unlike for modules with dso type, in elf object modules all the sections
have virtual address of zero.  So, it is insufficient to add module base
address to section virtual address (as recorded in section header) to
get section address in kernel memory.
Instead, we should apply the same calculations that are performed by
kernel loaders (in boot code and in kernel) when they lay out sections
in memory.

Discussed with:	jhb, np
MFC after:	3 weeks
2010-07-23 17:21:23 +00:00
Rui Paulo
fcfec2f998 Disable building libobjc with clang as it's not yet supported.
Submitted by:	Dimitry Andric <dimitry at andric.com>
2010-07-22 18:49:27 +00:00
Marcel Moolenaar
0d95bb16e3 Sanitize CFLAGS and add WARNS?=2. The hardcoding of -Os -fPIC
as compiler options resulted in an invalid executable on PowerPC.
2010-07-15 02:22:50 +00:00
Nathan Whitehorn
2cf64c8006 Teach our toolchain how to generate 64-bit PowerPC binaries. This fixes
a variety of bugs in binutils related to handling of 64-bit PPC ELF,
provides a GCC configuration for 64-bit PowerPC on FreeBSD, and
associated build systems tweaks.

Obtained from:	projects/ppc64
2010-07-10 02:29:22 +00:00
Benedict Reuschling
4935d54b6a Mention the radiolist option in the man page. It is being listed when
dialog(1) is run without arguments and works as expected. Therefore,
it should be part of the manual as well.

Note: dialog(1) has not been updated for many years and is not actively
maintained at the moment.

PR:             docs/139682
Submitted by:   manolis@
Discussed with: jkim@
MFC after:      2 weeks
2010-07-06 18:06:10 +00:00
Konstantin Belousov
46d44c29db For "thread signal" command, print some information from siginfo when
available.

Suggested by:	davidxu
MFC after:	2 weeks
2010-07-04 12:09:30 +00:00
Jayachandran C.
d12582eb67 Add an alignment of 8 for sections in the n32 ABI. The default alignment
of of 4 causes _end to be word aligned, which will be returned by sbrk.

malloc(3), when compiled for n32, expects sbrk to return an 8-byte aligned
value.

Approved by:	rrs (mentor)
2010-06-25 05:07:42 +00:00
Konstantin Belousov
15744a9c4c Often reported issue with newer ld is:
error in /usr/lib/crtendS.o(.eh_frame); no .eh_frame_hdr table will be created.

The issue is that crtend is compiled with unwind table, and also it
places the special CIE into the .eh_frame indicating the end of section,
that is located before generated unwind table. New ld has assertion that
verifies that closing CIE is indeed the last CIE, causing the crypting
message to be issued, and refusing to generate dwarf unwind.

Add -fno-asynchronous-unwind-tables to disable unwind table generation
for crtbegin/crtend. While there, disable omitting the frame pointer [1].

Requested by:	kan [1]
Reviewed by:	kan
MFC after:	2 weeks
2010-06-18 11:09:51 +00:00
Andrey V. Elsukov
516ce862b0 Make all tests in libdialog compilable.
Fix coredump in menu3.c.

Approved by:	kib (mentor)
2010-06-15 10:01:49 +00:00
Rafal Jaworowski
3c5326bf4a Connect FDT infrastructure to the build system.
Reviewed by:	imp
Sponsored by:	The FreeBSD Foundation
2010-06-13 13:02:43 +00:00
Juli Mallett
8da70fdc42 Fix build for O32 systems without a TARGET_CPUTYPE defined. We must default to
MIPS-III because FreeBSD relies on a number of MIPS-III features; the ABI
default would be MIPS-I which we don't intend to support.  Our old default
before I switched to using the ABI default was MIPS32.
2010-06-02 21:15:00 +00:00
Juli Mallett
5619a3e4bf Add/improve mips64r2, Octeon, n32 and n64 support in the toolchain.
o) Add TARGET_ABI to the MIPS toolchain build process.  This sets the default
   ABI to one of o32, n32 or n64.  If it is not set, o32 is assumed as that is
   the current default.
o) Set the default GCC cpu type to any specified TARGET_CPUTYPE.  This is
   necessary to have a working "cc" if e.g. mips64 is specified, as binutils
   will refuse to link objects using different ISAs in some cases.
o) Add support for n32 and n64 ABIs to binutils and GCC.
o) Add additional required libgcc2 stubs for n32 and n64.
o) Add support for the "mips64r2" architecture to GCC.  Add the "octeon"
o) When static linking, wrap default libraries in --start-group and
   --end-group.  This is required for static linking to work on n64 with the
   interdependencies between libraries there.  This is what other OSes that
   support n64 seem to do, as well.
o) Fix our GCC spec to define __mips64 for 64-bit targets, not __mips64__, the
   former being what libgcc, etc., check and the latter seemingly being a
   misspelling of a hand merge from a Linux spec.
o) When no TARGET_CPUTYPE is specified at build time, make GCC take the default
   ISA from the ABI.  Our old defaults were too liberal and assumed that 64-bit
   ABIs should default to the MIPS64 ISA and that 32-bit ABIs should default to
   the MIPS32 ISA, when we are supporting or will support some systems based on
   earlier 32-bit and 64-bit ISAs, most notably MIPS-III.
o) Merge a new opcode file (and support code) from a later version of binutils
   and add flags and code necessary to support Octeon-specific instructions.
   This should also make merging opcodes for other modern architectures easier.

Reviewed by:	imp
2010-06-02 11:06:03 +00:00
Rafal Jaworowski
a95b1d6c6a Correct dtc version header autogen location.
While there unify brackets usage.
2010-05-25 13:27:55 +00:00
Jung-uk Kim
07e547fe26 Add a new build option, MAN_UTILS. This option lets you control building
utilities and related support files for manual pages, which were previously
controlled by MAN.  For POLA, the default depends on MAN, i.e., WITHOUT_MAN
implies WITHOUT_MAN_UTILS and WITH_MAN implies WITH_MAN_UTILS.  This patch
is slightly improved by me from:

PR:		misc/145212
2010-05-19 23:56:26 +00:00
David E. O'Brien
680e78b305 Non-GCC gcc compatible compilers may provide the same multimedia intrinsic
headers as GCC, but of their own implementation.  So put the GCC ones into
their own header "namespace".

Requested by:	ed
2010-05-12 19:59:32 +00:00
Xin LI
8bbe8f7393 Add FreeBSD 8.1 to known list as it's being referenced by a couple of
manpages already.

MFC after:	3 days
2010-04-29 18:37:56 +00:00
Warner Losh
d578fbb66e Make this directory more regular. Since it is one we control, use the
freebsd-based names for filenames.  This allows us to eliminate
almost all of the uses of ${MACHINE_ARCH} here to do special things, and
instead we use it to include filenames.  This makes new architectures easier
to support.
2010-04-14 20:31:06 +00:00
Ulrich Spörlein
aa12cea2cc mdoc: order prologue macros consistently by Dd/Dt/Os
Although groff_mdoc(7) gives another impression, this is the ordering
most widely used and also required by mdocml/mandoc.

Reviewed by:	ru
Approved by:	philip, ed (mentors)
2010-04-14 19:08:06 +00:00
Warner Losh
b29d0c6134 Simplify how we select which architectures to add gdbserver for. If
the MD files exist, compile it, otherwise omit it.
2010-04-12 23:35:58 +00:00
Ed Schouten
99742a231f Change all our own code to use st_*tim instead of st_*timespec.
Also remove some local patches to diff(1) which are now unneeded.
2010-03-28 13:16:08 +00:00
Marcel Moolenaar
2a4510e122 Allow building a cross-kgdb for ia64. 2010-03-26 19:41:40 +00:00
Marcel Moolenaar
10da4aa601 Handle cross-builds for gdbserver. 2010-03-26 19:40:53 +00:00
Xin LI
36e60cda45 Remove GNU cpio after fix of CVE-2010-0624.
Note that this is actually a no-op for most users, as this GNU
cpio was broken on -HEAD and 8-STABLE since last March until
the recent fix.

FreeBSD 8.0+ uses BSD cpio by default and the code is being
actively maintained.

Blessed by:	kientzle
With hat:	secteam
MFC after:	3 days
2010-03-26 17:02:32 +00:00
Warner Losh
ebbcc89c45 This broke when we went to gnu99 as the default standard. Fix the build
by reverting to the gnu89 standard.
2010-03-24 20:20:28 +00:00
Warner Losh
ae84e39b61 Fix typo in comment 2010-03-19 05:40:47 +00:00
Warner Losh
56ac80ce81 Make little endian compiles produce little endian binaries on mips.
Submitted by:	neel@
2010-03-05 21:24:41 +00:00
Rafal Jaworowski
9649a9dd26 Remove stale path reference. 2010-03-05 19:51:02 +00:00
Warner Losh
9737f6898d Make the n32 scripts actually generate, ummm, n32 binaries... <blush>
Submitted by:	jmallet
2010-03-04 04:30:16 +00:00
Warner Losh
69be831fc8 Add n32 ABI generators...
Submitted by:	neel, jmallet
2010-03-02 05:43:04 +00:00
Rafal Jaworowski
78fffe9d7b Provide BSD-style Makefile for the device tree compiler (dtc).
Note it is not connected to the build hierarchy yet.

Sponsored by:	The FreeBSD Foundation
2010-02-28 22:09:09 +00:00
Jung-uk Kim
bdcf2df5c2 Initial gdbserver support for amd64. 2010-02-25 21:29:00 +00:00
Xin LI
aa74e2f883 POSIX patch(1) would treat -b as different meaning (the functionality
is to be provided by --suffix).  Looking at the usage here in diffutils,
it seems that we can just get rid of the -b .orig stuff.  This resolves
a problem that can triggered if we move toward to a more permissively
licensed patch(1) program.
2010-02-22 22:32:24 +00:00
Gabor Kovesdan
5e72825fcd - Remove GNU bc/dc bits. There has not been any regressions seen after
BSD bc/dc import. It has been tested with make universe that this code
  is not used by anything any more.

Approved by:	delphij (mentor)
2010-02-21 14:28:03 +00:00
Randall Stewart
7e1f32462d These contain JC's patch to get gdb sort of working
on mips. Its not fully done yet but its a start.

Obtained from: JC - c.jayachandran@gmail.com

M    gnu/usr.bin/gdb/kgdb/trgt_mips.c
M    gnu/usr.bin/gdb/arch/mips/init.c
M    gnu/usr.bin/gdb/arch/mips/Makefile
M    gnu/usr.bin/Makefile
M    contrib/gdb/gdb/mips-tdep.h
2010-02-20 17:29:27 +00:00
Marcel Moolenaar
f6c3201d66 Compile fbsd-threads.c. Threading & TLS support is working just fine. 2010-02-16 16:38:57 +00:00