All Makefiles now use MACHINE_ARCH for the target architecture.
Unification is required for cross-building.
Tags added to:
sys/boot/Makefile
sys/boot/arc/loader/Makefile
sys/kern/Makefile
usr.bin/cpp/Makefile
usr.bin/gcore/Makefile
usr.bin/truss/Makefile
usr.bin/gcore/Makefile:
fixed typo: MACHINDE -> MACHINE_ARCH
executing apropos or whatis. This prevents `man -k ';echo foo'` from
executing `echo foo` and causes apropos to print an error message instead.
Add $FreeBSD$ while I am here.
Noticed by: chris
tidy up the logic that works out which sub-directories to build.
The new directories with freebsdelf suffixes now have freebsd suffixes
after a repo move by Peter at the request of David O'Brien.
directory to /usr/cross/${MACHINE_ARCH}-freebsdelf/usr/lib so that
the cross tools behave the same way that the host versions do. When
building cross tools, Cygnus doesn't set the default library directory.
This doesn't suit FreeBSD IMHO.
Add WinNT emulation support too. You only get this if you've set
BINUTILSDISTDIR because the contrib/binutils repository doesn't
contain the required sources.
directory to /usr/cross/${MACHINE_ARCH}-freebsdelf/usr/lib so that
the cross tools behave the same way that the host versions do. When
building cross tools, Cygnus doesn't set the default library directory.
This doesn't suit FreeBSD IMHO.
gas for i386 targeted to NT for those (like me) who have to do work
targeted to NT, but can't stand actually looking at it all day long.
I cross build apps on FreeBSD and just run them on NT later. Life is
better that way.
Allow for the case where the host architecture might also be listed
in CROSS_ARCH, so don't do things twice. This situation can arise if you
want NT support in binutils (CROSS_ARCH=i386 CROSS_FORMAT=winnt).
When I imported EGCS into contrib/egcs/ I failed to prune out
egcs/gcc/cp/hash.h which is generated from gxx.gperf. Thus `cc1plus' wasn't
using the hash.h we generated by cc/cc_tools/Makefile, but rather the one in
egcs/gcc/cp/.
When I imported contrib/gcc/ I did prune gcc/cp/hash.h. Unfortunately the
GCC maintainers weren't smart on their file nameing and there is also a
egcs/gcc/hash.h (name overloading does NOT work as well on the filesystem
as in C++...). Due to the -I ordering we are were then picking up gcc/hash.h
when compiling `cc1plus'.
${LIB} was wrong at dependency-parsing time, so dependencies for
libgcc_r*.a were wrong. This somehow worked right, except libgcc_r*.a
were always out of date.
-----------------------------
Most of the userland changes are in libc. For both the alpha
and the i386 setjmp has been changed to accomodate for the
new sigset_t. Internally, libc is mostly rewritten to use the
new syscalls. The exception is in compat-43/sigcompat.c
The POSIX thread library has also been rewritten to use the
new sigset_t. Except, that it currently only handles NSIG
signals instead of the maximum _SIG_MAXSIG. This should not
be a problem because current applications don't use any
signals higher than NSIG.
There are version bumps for the following libraries:
libdialog
libreadline
libc
libc_r
libedit
libftpio
libss
These libraries either a) have one of the modified structures
visible in the interface, or b) use sigset_t internally and
may cause breakage if new binaries are used against libraries
that don't have the sigset_t change. This not an immediate
issue, but will be as soon as applications start using the
new range to its fullest.
NOTE: libncurses already had an version bump and has not been
given one now.
NOTE: doscmd is a real casualty and has been disconnected for
the moment. Reconnection will eventually happen after
doscmd has been fixed. I'm aware that being the last one
to touch it, I'm automaticly promoted to being maintainer.
According to good taste this means that I will receive a
badge which either will be glued or mechanically stapled,
drilled or otherwise violently forced onto me :-)
NOTE: pcvt/vttest cannot be compiled with -traditional. The
change cause sys/types to be included along the way which
contains the const and volatile modifiers. I don't consider
this a solution, but more a workaround.
except an absence of the directory is not considered an error
and doesn't produce a warning).
Put /usr/local/lib/perl5/*/man under OPTIONAL_MANPATH.
- An order of directives in manpath.config is now irrelevant.
- Get rid of infinite loop when PATH is unset or NULL, and
MANDATORY_MANPATH directory doesn't exist.
- mdoc(9)ify manpage.
Reviewed by: des, markm, sheldonh
Configuration header inclusion has been moved around to reduce diffs from
the offical GCC distribution. We now generate the same ``tm.h'' produced by
gcc's `configure' script [minus all the "#ifdef IN_GCC"'s].
Jeff Law of EGCS/Cygus says the new "approved" way of doing configure-related
includes is to list them all in ``tm.h'' rather than having the architure
config headers include large numbers of other configure headers.
- Sort xrefs
- Be consistent with section names as outlined in mdoc(7).
- Other misc mdoc cleanup.
PR: doc/13144
Submitted by: Alexey M. Zelkin <phantom@cris.net>
representation by generating the same format as tar-1.13 (use a single
space as the terminator for 7-digit octal numbers). This is POSIX.1
conformant (2-byte terminators are just a bug or historical wart in
old versions of gnu tar). All devices created by `MAKEDEV all' except
rsa0.ctl can now be handled by tar(1).
was installed in /usr/bin normally got clobbered when objformat
was installed. Indirection through objformat is correct although
underscore handling is the only thing that differs for aout and
elf -- going through objformat is the easiest way to set c++filt's
underscore handling flag correctly.
broke nroff because it added the '-S' option to the troff call, which
requires that the tmac.safer macro package be installed.
Since 90% of our *roff calls are probably generated by man(1), and
man(1) calls groff directly, I'm not really sure what rev 1.5 of nroff.sh
was trying to fix, but at least now nroff works again.
Broken by: imp
Add $Id$
Removes temp file exploits in gzexe (predictable filenames)
Fixes some typos
Fixes a buffer overrun in gzip -S
Don't prepend /usr/local/bin to path in scripts
Correct location of /usr/share/misc/termcap
Obtained from: OpenBSD
* Update build for gdbserver and gdbreplay to work under binutils
* Fix gdbserver to use PT_GETREGS etc to access registers, removing the
dependancy on the u-area.
* Make gdbserver work on the alpha.
Add an emply MAIN__() function. This avoid an unresolved reference error
during link phase when using fortran subroutines with non-fortran 'main()'.
Obtained from: src/lib/libF77/MAIN.c rev 1.1 by jmz
aren't needed as those files aren't part of libstdc++ any longer. Another
isn't needed as Cygnus doesn't compile with -frtti.
Noticed by: bde & my initial mispelling of ".So".
zero when building for little endian machines.
Correct the target names for mips. We just use the generic targets
for mips elf, so the mipse[lb]-unknown-freebsd emulation types don't
exist.
name of the bfd target, not the gnu-standard target name. Corrected
to be elf32-{big,little}mips from mipse[bl]-unknown-freebsd.
DEFAULT_EMULATION was bogusly defined, causing ld to always fail (this
was masked by the TARGET bogosity). Define correctly as elf32bmip and
elf32lmip. Mips doesn't follow the same conventions as i386 and alpha
do in this area.
ld now appears to work correctly for the uncommitted mips changes to
egcs.
code still applies, but the code attached to it had rotted:
# ../Makefile.inc will put an absolute path to our objdir in CFLAGS.
# Prevent mkdep from using it, so that we don't have to give rules for
# aliases of generated headers.
Many other makefiles seem to have the same bug (i.e., spelling "." as
"${.OBJDIR}" or as an even more complicated alias in -I directives).
The previous commit made things worse by breaking the -j0 case and
moving around the breakage for the -jN case. The fix involves
restoring .ORDER statements that were deleted in the previous commit,
removing wrong special handling of tree-check.h, and rewriting the
generation of fudged dependencies based on an idea I got from the
previous commit (filter out problematic objects first).
I knew better... too dependant on the environment we generate in, but...
This fixes the
/usr/lib/libstdc++.so: undefined reference to `filebuf virtual table'
/usr/lib/libstdc++.so: undefined reference to `stdiobuf virtual table'
errors seen after the initial bootstrap from gcc 2.7.2 to EGCS.
Agreed with by: bde & jdp