Commit Graph

3917 Commits

Author SHA1 Message Date
Konstantin Belousov
57c3423c39 Print the raw value of si_code, that is esp. useful for undecoded values.
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2011-03-26 21:12:53 +00:00
Marcel Moolenaar
9d985cdc65 Change the load address from offset 0 in region 1 to offset 4G in region 0.
This (almost) gives us the address space back (at the bottom) that we lost
at the top.

Region 0 has traditionally been reserved for IA-32 emulation, which has not
been of great interest. By starting 64-bit processes at the 4G boundary we
at least preserve some of the advantages:
1.  Any invalid pointer cast (from int to pointer and back) will still
    always fail and not only when more than 4GB of memory is in use.
2.  Memory sharing between 64-bit and 32-bit processes is still possibly
    by using addresses < 4G.
2011-03-22 17:19:35 +00:00
Marcel Moolenaar
1961f30034 Branch from contrib/binutils/ld/emulparams/elf64_ia64_fbsd.s so that
we can modify it.
2011-03-22 17:02:33 +00:00
Marcel Moolenaar
a54f161a82 Fix typo: s/LIBSERACHPATH/LIBSEARCHPATH/g 2011-03-21 04:03:55 +00:00
Marius Strobl
d6582233c1 Now that TLS is supported for sparc64 by both binutils 2.17.50 committed
in r218822 and rtld(1) committed in r219533 turn on TLS support in GCC.
2011-03-11 21:24:02 +00:00
Dimitry Andric
ce8fb93178 Merge binutils 2.17.50 to head. This brings a number of improvements to
x86 CPU support, better support for powerpc64, some new directives, and
many other things.  Bump __FreeBSD_version, and add a note to UPDATING.

Thanks to the many people that have helped to test this.

Obtained from:	projects/binutils-2.17
2011-02-18 20:54:12 +00:00
Ulrich Spörlein
752d2f141b Add back soon-to-be-release FreeBSD 7.4 which got clobbered in the previous
merges.
2011-02-13 22:17:49 +00:00
Nathan Whitehorn
2774633be1 Enable wide character support in libdialog. 2011-02-05 16:23:32 +00:00
Warner Losh
39bf09d2a0 Make the generated files depend on the Makefile so new platforms are easier
to add than mipsn32 was when I was working on it...
2011-02-02 03:27:31 +00:00
Warner Losh
4ef48a113b Revert last change now that the reason for it is no more...
MACHINE_ARCH is now always mipsel when building mips/mips.
2011-02-02 03:24:52 +00:00
Jayachandran C.
1fb145a629 Rewrite the ARCH check another way for backward compatibility.
Compilation fails now, if TARGET_ARCH=mips instead of mipsel/mipseb.
2011-01-29 10:32:00 +00:00
Jayachandran C.
7b87c35eba Fix n32 compile.
These changes are needed to fix n32 compile after the recent change of
mips n32 MACHINE_ARCH to mipsn32eb/mipsn32el.

Reviewed by:	imp, bz (earlier version)
2011-01-27 14:16:12 +00:00
Ed Maste
89db1db777 Use string literal format strings to quiet clang warnings. 2011-01-23 14:08:59 +00:00
Ulrich Spörlein
7ea7457aac Update groff manpage and symbols with what has been submitted upstream.
Also remove local overrides that are now in the contrib tree.

This is a direct commit to contrib/ as we will no longer import any
newer groff snapshots, due to licensing issues.

MFC after:	3 weeks
2011-01-19 20:16:38 +00:00
Nathan Whitehorn
1e0658d5ca Add libm to the dependencies section.
Submitted by:	Garrett Cooper
2011-01-18 14:58:12 +00:00
Nathan Whitehorn
4c8945a06b Update dialog to version 20100428. This changes the license under which
dialog is distributed from GPLv2 to LGPLv2 and introduces a number of new
features and a new and better libdialog API. The existing libdialog will
be kept temporarily as libodialog for compatibility purposes until sade,
sysinstall and tzsetup have been either updated or replaced.

__FreeBSD_version is now 900030.

Discussed on:	-current
Approved by:	core
Obtained from:	http://invisible-island.net/dialog
2011-01-12 14:55:02 +00:00
Tijl Coosemans
911127a0d6 Remove unused support for 64 bit long on 32 bit architectures.
It was used mainly to discover and fix some 64-bit portability problems
before 64-bit arches were widely available.

Discussed with:	bde
Approved by:	kib (mentor)
2011-01-07 22:57:31 +00:00
Warner Losh
cd2ae2532f Retire TARGET_ABI.
Implement MACHINE_ARCH=mips64e[lb] to build N64 images.  This replaces
MACHINE_ARCH=mipse[lb] TARGET_ABI=n64.

MACHINE_ARCH=mipsn32e[lb] has been added, but currently requires
WITHOUT_CDDL due to atomic issues in libzfs.  I've not investigated
this much, but implemented this to preserve as much of the TARGET_ABI
functionality that I could.  Since its presence doesn't affect the
working cases, I've kept it in for now.

Added mips64e[lb] to make universe, so more kernels build.

And I think this (finally) closes the curtain on the tbemd tree.
2011-01-07 20:26:33 +00:00
Alexander Kabaev
d933fa1a10 Switch mips architectures back to libgcc.
MIPS64 n64 binaries are broken with libcompiler_rt at this time.
Switch mips back to libgcc until the cause of breakage is analyzed
and fixed.
2010-12-29 17:12:05 +00:00
Nathan Whitehorn
af1fdf0dbf Fix a missing underscore. 2010-12-09 17:39:40 +00:00
Dimitry Andric
e3c77b8170 For ia64, add a proper 'elf64-ia64-freebsd' output format to BFD, so the
ELF branding for FreeBSD is done in the same way as amd64, i386 and
sparc.  Something similar should probably also be done for arm, mips and
powerpc.
2010-12-05 20:24:22 +00:00
Dimitry Andric
2006fbc8fe Sync: merge r215944 through r216132 from ^/head. 2010-12-02 22:00:57 +00:00
Nathan Whitehorn
35d4aa10d7 Unbreak amd64<->i386 cross builds. 2010-12-02 17:36:47 +00:00
Nathan Whitehorn
5a7bfc90a9 The driver-XXX.c files used for host CPU detection with -march=native
should not be compiled in the cross-tools case (where -march=native makes
no sense). This fixes cross-building x86 toolchains on non-x86 systems.
2010-12-02 04:58:07 +00:00
Dimitry Andric
a35d3535ee Sync: merge r215464 through r215708 from ^/head. 2010-11-22 20:52:18 +00:00
Attilio Rao
7f08176ee8 Add the ability for GDB to printout the thread name along with other
thread specific informations.

In order to do that, and in order to avoid KBI breakage with existing
infrastructure the following semantic is implemented:
- For live programs, a new member to the PT_LWPINFO is added (pl_tdname)
- For cores, a new ELF note is added (NT_THRMISC) that can be used for
  storing thread specific, miscellaneous, informations. Right now it is
  just popluated with a thread name.

GDB, then, retrieves the correct informations from the corefile via the
BFD interface, as it groks the ELF notes and create appropriate
pseudo-sections.

Sponsored by:	Sandvine Incorporated
Tested by:	gianni
Discussed with:	dim, kan, kib
MFC after:	2 weeks
2010-11-22 14:42:13 +00:00
Dimitry Andric
6b6403a102 Sync: merge r215396 through r215463 from ^/head. 2010-11-18 18:30:03 +00:00
Tijl Coosemans
cac88fd591 Let gcc and ld know where to find 32 bit libraries on amd64.
Reviewed by:	arch@
Approved by:	kib (mentor)
2010-11-17 19:54:01 +00:00
Dimitry Andric
9977fc32d1 Sync: merge r215319 through r215395 from ^/head, so ports can actually
build! :)
2010-11-16 10:33:41 +00:00
Nathan Whitehorn
ce0cfc0ef3 Garbage-collect some code made obsolete by the TBEMD import. 2010-11-15 22:12:13 +00:00
Nathan Whitehorn
4a380db544 Try including Makefile.${TARGET_ARCH} before Makefile.${TARGET_CPUARCH} if
it exists in order to allow arch-specific overrides. This fixes the
binutils (and world) build on powerpc64 after recent TBEMD merges.

Reviewed by:	imp
2010-11-15 22:11:18 +00:00
Dimitry Andric
29d0dcddab Sync: merge r215273 through r215318 from ^/head. 2010-11-14 20:47:30 +00:00
Yoshihiro Takahashi
c482218be3 Add missing '/'. 2010-11-14 11:09:16 +00:00
Warner Losh
5fb4617bc9 We need to add powerpc64->powerpc translations (I knew I hated copying
this code in the first place).

Also MACHINE_ARCH powerpc is 32-bit, not MACHINE_CPUARCH == powerpc.

Submitted by:	nathanw
2010-11-14 01:52:19 +00:00
Warner Losh
cf3b7dd35b These two cases should be different...
Submitted by:	nathanw@
2010-11-14 01:50:40 +00:00
Dimitry Andric
5fbbc222c8 Sync: merge r215141 through r215188 from ^/head. 2010-11-12 17:20:18 +00:00
Ed Schouten
585d4a8062 Revert to libgcc for sparc64.
I've had a report of a sparc64 system where cc1 generates illegal
instructions. We still have to diagnose this properly, but instead of
hosing all sparc64 boxes out there, fall back to libgcc to prevent more
damage.

Reported by:	Florian Smeets
2010-11-12 15:52:27 +00:00
Dimitry Andric
cfe6b823a2 Garbage collect gnu/usr.bin/binutils/{gasp,gdb,gdbreplay}, as these have
not been connected to the build for more than 6 years.

Obtained from:	projects/binutils-2.17
2010-11-11 23:45:19 +00:00
Dimitry Andric
dfbf73475a Do not build or install gasp.info anymore, as gasp has not been built or
installed for more than 6 years.

Obtained from:	projects/binutils-2.17
2010-11-11 23:41:36 +00:00
Dimitry Andric
1170f3d12e Sync: merge r214895 through r215140 from ^/head. 2010-11-11 20:52:24 +00:00
Ed Schouten
39cd938c39 Replace libgcc.a by libcompiler_rt.a.
libcompiler_rt.a is a BSD licensed C language runtime, which implements
many routines which are linked into binaries on architectures where
certain functionality is missing (e.g. 64 bits mul/div on i386).

Unfortunately, libcompiler_rt cannot replace libgcc entirely. Certain
features, such as an unwinder for exception handling, are missing.
That's why only libgcc.a is replaced for now, because this one does seem
to be complete.

Tested by:	rene (amd64), nwhitehorn (powerpc), droso (i386 exprun)
		and many others. Thanks!
Obtained from:	user/ed/compiler-rt
2010-11-11 15:48:27 +00:00
Ed Schouten
b70519663c Don't use ${LIB} to obtain the library name.
Once we use libcompiler_rt, the LIB-line must go, to prevent libgcc.a
from being built. Therefore, just hardcode the name.

Obtained from:	user/ed/compiler-rt
2010-11-11 15:24:57 +00:00
Warner Losh
e8dce5b9b3 Complete the integration of tbemd branch into head.
TARGET_BIG_ENDIAN is now completely dead, except where it was
originally supposed to be used (internally in the toolchain building).

TARGET_ARCH has changed in three cases:
(1) Little endian mips has changed to mipsel.
(2) Big endian mips has changed to mipseb.
(3) Big endian arm has changed to armeb.

Some additional changes are needed to make 'make universe' work on arm
and mips after this change, so those are commented out for now.

UPDATING information will be forthcoming.  Any remaining rough edges
will be hammered out in -current.
2010-11-10 06:39:49 +00:00
Oleksandr Tymoshenko
ce9346c8a4 Fix cross-debugger build 2010-11-07 23:23:48 +00:00
Oleksandr Tymoshenko
c8f6c2ae32 Fix initialization order:_initialize_svr4_solib should
be called before _initialize_thread_db
2010-11-07 23:22:22 +00:00
Oleksandr Tymoshenko
94b78d528f - Use proper constant for accessing PCB intead of hardcoded numbers
- Minor clean-up
2010-11-07 20:56:41 +00:00
Oleksandr Tymoshenko
a815718baf Link threads support to the build 2010-11-07 20:53:19 +00:00
Dimitry Andric
964cec1081 Simply our custom OSABI branding 'stub'. It is presently still needed
for ia64, but I will integrate it into contrib/binutils/bfd/elfxx-ia64.c
later on, after which it can be removed entirely.
2010-11-03 16:39:55 +00:00
Dimitry Andric
4e41c4ad7e Fix warnings in fbsd-threads.c. 2010-11-01 20:17:15 +00:00
Dimitry Andric
e9071af4e8 For stuff under gnu/usr.bin/gdb, search contrib/binutils/include before
contrib/gdb/include, since that contains newer versions of the same
files.
2010-11-01 20:09:54 +00:00
Dimitry Andric
ce43f651bd Update doc Makefile and texinfo config file. 2010-11-01 19:47:03 +00:00
Dimitry Andric
d6def1f86e Update config.h for ld. 2010-11-01 19:46:18 +00:00
Dimitry Andric
d2d5b59cdd Update Makefile and config.h for as. 2010-11-01 19:45:55 +00:00
Dimitry Andric
8bdf879215 Add manpages under gnu/usr.bin/binutils, since they are generated. 2010-11-01 19:45:15 +00:00
Dimitry Andric
28b535d1e0 Update Makefile and config.h.bsd for libbinutils. 2010-11-01 19:42:29 +00:00
Dimitry Andric
67f8e5a556 Update Makefile and config.h.bsd for libopcodes. 2010-11-01 19:42:07 +00:00
Dimitry Andric
0921c6ef0b Update Makefile, bfd.h and config.h.bsd for libbfd. 2010-11-01 19:41:22 +00:00
Dimitry Andric
878ad3892a Update Makefile and config.h for libiberty. 2010-11-01 19:40:22 +00:00
Dimitry Andric
f74ef8307a Update VERSION to 2.17.50 [FreeBSD] 2007-07-03. 2010-11-01 19:39:10 +00:00
Dimitry Andric
1368e47f87 Make sure elf_fbsd_post_process_headers() is actually called for ia64.
This is done by prepending the file to elfxx-ia64, not appending it.

Additionally, reduce diffs between Makefile.amd64 and Makefile.ia64;
instead of echo'ing defines in Makefiles, just add the needed define to
elf-fbsd-brand.c directly, as it is only used for amd64 and ia64.
2010-10-26 17:49:17 +00:00
Dimitry Andric
e083002bca Most of binutils now compiles at WARNS=3, except for libiberty and
libbfd, which still need WARNS=2.
2010-10-22 20:46:08 +00:00
Dimitry Andric
b927df46b1 In case of powerpc64, enable HAVE_LD_NO_DOT_SYMS in gcc's auto-host.h.
Requested by:	nwhitehorn
2010-10-22 20:43:37 +00:00
Dimitry Andric
7a66be1ab6 Update gcc's auto-host.h header for binutils 2.17: turn on
HAVE_COMDAT_GROUP, HAVE_GAS_WEAKREF and HAVE_LD_SYSROOT.
2010-10-22 18:12:40 +00:00
Dimitry Andric
162972bcf5 Garbage collect gnu/lib/libiberty and gnu/lib/libg2c, these have not
been used for years.
2010-10-22 18:11:17 +00:00
Dimitry Andric
f071fb0b44 Update makeinfo include paths, and configuration settings for the as
info page.
2010-10-21 20:34:29 +00:00
Dimitry Andric
a477c4b7f8 Update ldscript extension list. 2010-10-21 20:33:09 +00:00
Dimitry Andric
d9eabf4616 Use one file per line in SRCS= definition, to make insertions and
deletions easier, and sort the file list.
2010-10-21 20:31:59 +00:00
Dimitry Andric
a8620cbced Apply upstream changes to genscripts.sh, while attempting to keep the
diff as small as possible.
2010-10-21 20:30:35 +00:00
Dimitry Andric
e7cde49997 Remove weird double-pasted sections in armelfb?_fbsd.sh. 2010-10-21 20:29:16 +00:00
Dimitry Andric
5c049bc266 Regenerate config.h for ld. 2010-10-21 20:28:23 +00:00
Dimitry Andric
1e35dff483 Remove bignum-copy.c from SRCS=, as it no longer exists. Remove
tc-sparc-fixed.c entirely, since the fix has been integrated into
contrib/binutils/gas/config/tc-sparc.c by upstream.  Define TARGET_OS
in addition to the other TARGET_XXX defines.
2010-10-21 20:27:40 +00:00
Dimitry Andric
52eb44ceae Use one file per line in SRCS= definition, to make insertions and
deletions easier, and sort the file list.
2010-10-21 20:23:53 +00:00
Dimitry Andric
631c65aad6 Regenerate config.h for as. 2010-10-21 20:22:32 +00:00
Dimitry Andric
bebf802419 Add new upstream file, and update TARGET definition. 2010-10-21 20:21:36 +00:00
Dimitry Andric
8114428ba2 Use one file per line in SRCS= definition, to make insertions and
deletions easier, and sort the file list.
2010-10-21 20:20:33 +00:00
Dimitry Andric
8f4c1b2c16 Regenerate config.h for libbinutils. 2010-10-21 20:18:34 +00:00
Dimitry Andric
6efa94bc57 Update BFD version and date, and add new upstream files. Also remove
the elf32-arm-fbsd.c kludge; it is now integrated cleanly into
contrib/binutils/bfd/elf32-arm.c.
2010-10-21 20:17:13 +00:00
Dimitry Andric
3213eafad2 Use one file per line in SRCS= definition, to make insertions and
deletions easier, and sort the file list.
2010-10-21 20:08:16 +00:00
Dimitry Andric
2afbe6d79d Regenerate bfd.h and config.h.fbsd. 2010-10-21 20:04:28 +00:00
Dimitry Andric
5c89268c37 Add new upstream file to libiberty. 2010-10-21 20:02:47 +00:00
Dimitry Andric
2fe35e02e9 Use one file per line in SRCS= definition, to make insertions and
deletions easier.
2010-10-21 20:01:21 +00:00
Dimitry Andric
c6b1c1e809 Update binutils VERSION define for 2.17, and create separate
TARGET_VENDOR and TARGET_OS defines.  Set TARGET_TUPLE from
BINUTILS_ARCH, TARGET_VENDOR and TARGET_OS.
2010-10-21 19:58:20 +00:00
Dimitry Andric
bd9ba01aba Update the BFD and binutils version defines. 2010-10-19 20:17:17 +00:00
Dimitry Andric
45f6b172aa Garbage collect gnu/usr.bin/binutils/{gasp,gdb,gdbreplay}, as these have
not been connected to the build for 6 years now.
2010-10-18 21:04:55 +00:00
Dimitry Andric
7ce9c2e938 Do not build or install gasp.info anymore, as gasp is obsolete. 2010-10-18 20:59:46 +00:00
Jaakko Heinonen
9543d2735d Add FreeBSD 8.2.
Reviewed by:	ru
MFC after:	3 days
2010-10-14 14:48:11 +00:00
Xin LI
04bf016801 Add definition for FreeBSD 7.4, which will be used in a manual page change.
Reviewed by:	ru
MFC after:	3 days
2010-10-06 18:20:07 +00:00
Gordon Tetlow
023f0373a1 Retire GNU man in favor of the newly written BSDL version.
Approved by:	wes (mentor)
2010-10-03 22:24:14 +00:00
Rui Paulo
da1eef674b Remove target peigen.c so that make doesn't warn us about it. 2010-09-30 07:12:09 +00:00
Rui Paulo
c5c0eabc00 Add support for the BFD target efi-app-x86_64.
This uses only GPL2 source code and is a requirement for a 64 bit EFI
boot loader.
2010-09-29 14:41:03 +00:00
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