Commit Graph

30037 Commits

Author SHA1 Message Date
Peter Wemm 7a9d789745 Import NetBSD-current version of if_de driver onto vendor branch. 1998-07-08 01:16:05 +00:00
Julian Elischer 6deaf84b1f Catch a few corner cases where FreeBSD differs enough from BSD 4.4 to
confuse Soft updates..
Should solve several "dangling deps" panics.
1998-07-08 01:04:33 +00:00
Peter Wemm b5fe8fabda New flag for internal stdio use to enable dynamic string allocation for
asprintf() implementation.

Obtained from: Todd Miller <Todd.Miller@courtesan.com> via OpenBSD
1998-07-08 00:52:40 +00:00
Bruce Evans 07b64a25d2 Use a different hack for building libgcc2: `XCC= ${CC}' instead of
`XCC= <relative cc> -B<path to relative cc1> ...'.  This is equivalent
when cc and cc1, etc. have just been bootstrapped by `make world'.
The relative versions normally won't work if the target system is
not binary compatible.  Bootstrapping different versions of gcc
without going through `make world' is slightly more broken than
before.

Uniformized macro names (P1OBJS -> LIB1POBJS, etc.).

Don't give full paths to sources.
1998-07-08 00:45:50 +00:00
Peter Wemm 64a965e707 Replace my original asprintf() and vasprintf() hacks with something
more cleanly integrated with stdio.  This should be faster and cleaner
since it doesn't memcpy() the data into a seperate buffer.  This lets
stdio allocate and manage the buffer and then hand it over to the user.

Obtained from: Todd Miller <Todd.Miller@courtesan.com> via OpenBSD
1998-07-08 00:44:56 +00:00
Bruce Evans 0cc5719c0a Use the installed versions of cc, cc1 and cpp for building underscore.
They have been bootstrapped by `make world' since long before the
hacks here were cloned from ../libgcc/Makefile.  The versions just
built in "../*" normally won't work if the target system is not binary
compatible.

Don't use OBJS to defeat `make depend'; just put generated sources in
SRCS.

Added temporary files to CLEANFILES.
1998-07-08 00:14:15 +00:00
Bruce Evans 36c1af94e2 Use the installed version of perl for `make install'. It is now
bootstrapped by `make world'.  The version just built in ".."
normally won't work if the target system is not binary compatible.
1998-07-07 23:44:43 +00:00
John Polstra 5f9f3cb473 Add definitions for PT_LOPROC and PT_HIPROC.
Submitted by:	Kapil Chowksey <kchowksey@hss.hns.com>
1998-07-07 23:32:57 +00:00
Bruce Evans f7bebafb62 Use the installed version of perl for `make depend'. It is now
bootstrapped by `make world'.  The version just built in ".."
normally won't work if the target system is not binary compatible.
The bootstrapped version has a better chance of working.

This makes the fixes and bugs in the previous 3 commits irrelevant.
Rev.1.11 was just wrong and rev.1.10 became unnecessary when
perl/perl was added to build-tools.  Don't expect to build perl/usub
without using `make world' or equivalent if you don't have perl
installed.
1998-07-07 23:32:39 +00:00
Bruce Evans 42ff1492ee Use the installed version of mklocale for `make all'. It is now
bootstrapped by `make world'.  The version just built in ".."
normally won't work if the target system is not binary compatible.

Don't build or install anything if _BUILD_TOOLS is defined.  Then
we only want to build and install the mklocale binary, but the layout
of the mklocale tree forces recursing to mklocale/data for at least
the obj target even when _BUILD_TOOLS is defined.
1998-07-07 23:05:59 +00:00
Bruce Evans 563030afa1 Use the installed version of colldef for `make all'. It is now
bootstrapped by `make world'.  The version just built in ".."
normally won't work if the target system is not binary compatible.

Don't build or install anything if _BUILD_TOOLS is defined.  Then
we only want to build and install the colldef binary, but the layout
of the colldef tree forces recursing to colldef/data for at least
the obj target even when _BUILD_TOOLS is defined.
1998-07-07 23:04:25 +00:00
Jordan K. Hubbard df1da01e0e Previous fix didn't make it past the Bruce filter. Clean up
non-KNF indentation and use err() properly.
1998-07-07 22:20:50 +00:00
Jordan K. Hubbard 0b1778905f msgs -p (and maybe other flags, too) gives misleading error messages,
especially on a new install, where /var/msgs/bounds doesn't exist.  I
        moved my bounds file out of the way to create this before and after
        on a quick 'n' dirty hack, which is probably the 23rd best way to do it,
        but it works:

PR:		6963
Submitted by:	Matthew Fuller <fullermd@mortis.futuresouth.com>
1998-07-07 12:02:59 +00:00
Bruce Evans 1d86f959b6 Oops, don't build tools for building games, etc. when we're not building
games, etc.

Define _BUILD_TOOLS in sub-makes for building tools.  This will be used
to avoid using uninstalled tools in colldef and mklocale.
1998-07-07 09:59:48 +00:00
Bruce Evans 07d8ec4c17 Use the installed versions of caesar and strfile. They are now
bootstrapped by `make world', and the installed versions are just
as likely to work as the installed version of cc if `make' is run
directly.
1998-07-07 06:22:23 +00:00
Bruce Evans 274068262c Build internal tools in build-tools so that they have some chance of
working when the target system is not binary compatible.  Use various
hacks to work around minor problems in the source and binary tree
layouts:
- caesar and strfile are built normally (the source layout is good),
  then installed by copying them to ${WORLDTMP}/usr/bin (they are
  installed in ${WORLDTMP}/usr/games, but I don't want to put that
  in $PATH).
- colldef and mklocale are built and installed normally.  Messy and
  incomplete relative path searches for them and caesar and strfile
  can now go away.
- internal tools that aren't installed are now built and left lying
  around for the `make all' pass to use.  If the target system is
  not binary compatible, it is critical that these tools don't get
  rebuilt.  Cleaning of the obj tree before building the internal
  tools should ensure this.
- most internal tools are built using internal build-tools targets,
  but tn3270 is simpler for a change - it has all the tools in a
  separate tree, so they can be built using `make all'.
1998-07-07 05:37:34 +00:00
Bruce Evans 6aa42d9a4e Changed `#if defined(i386)' to `#ifdef __i386__'.
`#if defined(ONE_THING)' is a style bug, and i386 instead of __i386__
is a bug, since i386 is never defined when the kernel is compiled
by with the default flags (`gcc -ansi ...').  Here the bug disabled
the call to pmap_setvidram(), so ISA video memory was not mapped
WC on 686's.  The bug may have been masked by bugs in the committer's
version of gcc - `gcc -ansi' incorrectly defines i386 for gcc = the
version of egcs on the 2.2.6 cdrom.
1998-07-07 05:00:09 +00:00
Bruce Evans c4ebf24f6e Don't depend on gcc's feature of casting lvalues. 1998-07-07 04:36:23 +00:00
Bruce Evans a9a252909a Don't assume that longs are 32 bits in struct dos_partition. 1998-07-07 04:19:25 +00:00
Bruce Evans 96eb19e1a3 Quick fix for type mismatches which were fatal if longs aren't 32
bits.  We used a private, wrong, version of `struct dirent' to help
break getdirentries(), and we use a silly check that the size of this
struct is a power of 2 to help break mount() if getdirentries() would
not work.  This fix just changes the struct to match `struct dirent'
(except for the name length).
1998-07-07 04:08:44 +00:00
Bruce Evans 96cf6a722f Added a `build-tools' target for internal tools.
Honor LDFLAGS for building internal tools.
1998-07-07 02:43:26 +00:00
Bruce Evans 4ef3e8aa33 Added a `build-tools' target for internal tools.
Honor LDFLAGS for building internal tools.
1998-07-07 02:30:45 +00:00
Bruce Evans 90665a1b48 Finished previous fix - don't forget to add one dummy options header
to CLEANFILES.

Fixed lots of style bugs.
1998-07-07 02:27:09 +00:00
Bruce Evans 8c1a5985d2 Added a `build-tools' target for internal tools. (linux_genassym may
not actually work for cross compiling, but that is another problem.)

Honor LDFLAGS for building internal tools.  (Tools should normally
be built static to avoid problems with picking up target shared
libraries.  bsd.kmod doesn't set -static yet, and has some problems
with `LDFLAGS=-static ...' in the environment.)
1998-07-07 02:04:20 +00:00
Bruce Evans 6d31e616a0 Added a `build-tools' target for internal tools. 1998-07-07 01:51:18 +00:00
Bruce Evans da1a06c3c3 Added a `build-tools' target for internal tools.
Honor LDFLAGS for building internal tools.
1998-07-07 01:43:54 +00:00
Bruce Evans 5325b598c0 Added a `build-tools' target for internal tools.
Honor LDFLAGS for building internal tools.

Always build intermediate object files explicitly so that binaries don't
change when they are rebuilt.

Fixed some style bugs.
1998-07-07 01:41:58 +00:00
Bruce Evans d2c317efc5 Added a `build-tools' target for internal tools.
Restored a variant of explicit rule for `setup', with modifications to
always build setup.o so that `setup' doesn't change every time it is
rebuilt because it has a temporary file name in it.
1998-07-07 01:25:37 +00:00
Bruce Evans 3c3472fb32 Added a `build-tools' target for internal tools.
Removed explicit dependencies of foo.o on foo.c.  These were mainly
placeholders for comments about missing dependencies of tools objects
on headers.  This problem needs to be handled more generally.
1998-07-07 01:06:58 +00:00
Bruce Evans 81a4459b5f Fixed type mismatches which were fatal when sizeof(long) > sizeof(int). 1998-07-06 22:08:00 +00:00
Bruce Evans 29415d80c2 Fixed classic sign extension bug `-(long)sizeof(foo)'.
Fixed the type of the string table size variable to match its use
(assuming that int32_t is 4 bytes and other unportable things).
bfd uses `unsigned char string_chars[BYTES_IN_WORD]', where
BYTES_IN_WORD can be 4, 8, or perhaps even 2 or 3, but it is
assumed to be precisely 4 bytes here.

Fixed printf format errors (don't assume that n_value in struct
n_list has type u_long, since it should have size BYTES_IN_WORD
and longs may be longer than words).
1998-07-06 21:45:12 +00:00
Bruce Evans 22694ebad5 Fixed printf format errors. 1998-07-06 21:01:54 +00:00
Bruce Evans b45d09e830 Fixed type mismatches and style bugs in rev.1.30. 1998-07-06 20:52:08 +00:00
Bruce Evans a0f9f69e20 Declared version_string() properly (1970's style). 1998-07-06 20:40:57 +00:00
Bruce Evans 78cda23056 Fixed printf format errors. 1998-07-06 20:28:08 +00:00
Bruce Evans 6497a56c81 Removed bogus #ifdef INET - <net/if_slvar.h> no longer depends on it. 1998-07-06 20:09:36 +00:00
Robert Nordier 5a901bd884 Activate newfs_msdos. 1998-07-06 20:05:41 +00:00
Robert Nordier dc9ef4d1f7 Add newfs_msdos: extensive newfs-style support for creating FAT12,
FAT16, and FAT32 file systems in all their various horriblenesses.

Approved-in-concept by: joerg
1998-07-06 20:01:34 +00:00
Bruce Evans 91ba27a769 ioctl() request args are unsigned longs, so don't attempt to store
them as ints.  Among other bugs, doing so at best caused benign
overflow followed by fatal sign extension on machines with 32-bit
ints and 64-bit longs.
1998-07-06 19:54:39 +00:00
Bill Fenner dece5b6a43 Introduce (fairly hacky) workaround for odd TCP behavior with application
writes of size (100,208]+N*MCLBYTES.

The bug:
 sosend() hands each mbuf off to the protocol output routine as soon as it
 has copied it, in the hopes of increasing parallelism (see
  http://www.kohala.com/~rstevens/vanj.88jul20.txt ). This works well for
 TCP as long as the first mbuf handed off is at least the MSS.  However,
 when doing small writes (between MHLEN and MINCLSIZE), the transaction is
 split into 2 small MBUF's and each is individually handed off to TCP.
 TCP assumes that the first small mbuf is the whole transaction, so sends
 a small packet.  When the second small mbuf arrives, Nagle prevents TCP
 from sending it so it must wait for a (potentially delayed) ACK.  This
 sends throughput down the toilet.

The workaround:
 Set the "atomic" flag when we're doing small writes.  The "atomic" flag
 has two meanings:
 1. Copy all of the data into a chain of mbufs before handing off to the
    protocol.
 2. Leave room for a datagram header in said mbuf chain.
 TCP wants the first but doesn't want the second.  However, the second
 simply results in some memory wastage (but is why the workaround is a
 hack and not a fix).

The real fix:
 The real fix for this problem is to introduce something like a "requested
 transfer size" variable in the socket->protocol interface.  sosend()
 would then accumulate an mbuf chain until it exceeded the "requested
 transfer size".  TCP could set it to the TCP MSS (note that the
 current interface causes strange TCP behaviors when the MSS > MCLBYTES;
 nobody notices because MCLBYTES > ethernet's MTU).
1998-07-06 19:27:14 +00:00
Bruce Evans 517cdb815b Restored rev.1.11, which I somehow clobbered in rev.1.12. 1998-07-06 19:11:35 +00:00
Justin T. Gibbs 2f333cd887 Attempt to load serial eeprom contents in both 93c46 and 93c56/66 mode before
giving up.

PR: 6966
1998-07-06 18:38:57 +00:00
Eivind Eklund c8cedb4e27 "vender" -> "vendor"
Requested by:	Aage Røbekk <aagero@aage.priv.no>
1998-07-06 16:10:06 +00:00
Eivind Eklund d860c4c0e9 Shorten line.
Prodded (long time ago) by:	bde
1998-07-06 16:07:43 +00:00
KATO Takenori 36a5980c70 Sync with sys/i386/isa/fd.c and wd.c revisions 1.115 and 1.170,
respectively.
1998-07-06 10:09:42 +00:00
Julian Elischer 3a1ae084e2 oops ended comment before the comment ended.. 1998-07-06 09:10:56 +00:00
Julian Elischer efe39c6a1a Bring back some slight cleanups from 2.2 1998-07-06 09:06:58 +00:00
Philippe Charnier e37a54892b Correct use of .Nm. Spelling. Add rcsid and remove unused #includes. 1998-07-06 07:19:27 +00:00
Philippe Charnier 7b353f1aca -Wall. 1998-07-06 07:17:27 +00:00
Philippe Charnier 46fc8f78df Sync usage string and man page. Correct use of .Nm. Spelling. Remove
unused #includes.
1998-07-06 07:15:53 +00:00