and exception handling have a chance of working properly.
- creates libgcc, libgcc_eh and libgcc_s
- updates LIBGCC_SPEC to use them appropriately.
There's a hack in here at the moment with respect to libgcc_so in that it
is preferable to link against libgcc_so will only when -shared-libgcc is
specified (the c++ frontend does this automatically.) Configurations where
LINK_EH_SPEC is defined already do this. The gcc configuration for
NetBSD/alpha and another NetBSD platform (I forget which) actually define
LINK_EH_SPEC probably by accident rather than design.
- updates share/mk to use the compiler's knowledge of what needs linking into
libraries and executables. This removes an hppa hack.
- updates the sets for the newly created libgcc* files.
- support for linking against the _pg version of libgcc has been removed.
called with every buffer written through spec_strategy().
Used by fss(4). Future file-system-internal snapshots will need them too.
Welcome to 1.6ZK
Approved by: Jason R. Thorpe <thorpej@netbsd.org>
/etc/mtree/set.<set> if they are different. This should allow
installsets to operate from a pre-populated read-only DESTDIR.
Based on fix from Juergen Hannken-Illjes.
DISTRIBVERDEP in Makefile.distrib, and make both sysinst and
distribution notes use that information so that they rebuild
if the kernel version changes.
Distribution notes didn't have this before, sysinst had a private
(now outdated, since sys/sys/param.h now determines version) copy
of this.
* Some MAKEVERBOSE support.
* Add some variables to simplify various rules.
* Simply script startup by replacing ${SETSENV} with ${SETSCMD}, which
cd's to ${.CURDIR} before doing the work.
PR#23470, with minor updates by me. This is only the syscall support
from that PR, for now.
Changes: port over fix from FreeBSD for multicast address generation.
Changed bcopy to memcpy. For now, #ifdef notyet the portions of
kern_uuid.c that are meant to be used by (currently nonexistent) other
things in the kernel. Added syscall to COMPAT_FREEBSD as well, though
that's currently not useful, as any program new enough to use this call
also uses other syscalls we don't (yet) emulate.
./usr/X11R6/bin/inl
./usr/X11R6/bin/inw
./usr/X11R6/bin/ioport
./usr/X11R6/bin/outb
./usr/X11R6/bin/outl
./usr/X11R6/bin/outw
for x86_64, this should resolve recent issues w/ amd64 and these files
being installed but not in the set lists.
Don't write out dummy extended partitions for unused ares in the extended
partition.
Add some more comments - I write this and I couldn't remember how it worked.
It was already merged in the XFree86 4.x source anyway, and it doesn't
make senses to keep some programs in a separate set just because they
used to be built from a separate directory in XFree86 3.x.
- Document the kernel thread.
- Rename some functions and variables.
- Return EROFS where appropriate.
- Use shifts instead of 64-bit divide.
- Use a simple_lock to make it MP-safe.
- Add M_CANFAIL to malloc to avoid panic on large cluster size.
- Allow sparse file for backing store and use VOP_BALLOC() to allocate
space. Default size of backing store is the size of the file system.
MKCATPAGES=no
MKMAN=no
MKMANZ=yes
Add ".man" (from "man") and ".cat" (from "catpages") to indicate files
that will automatically be treated as having a ".gz" extension if
MKMANZ != no. (This simplifies the MKMANZ!=no support...)
Hopefully I didn't make too much of a hash of the postinstall support for
this; it currently installs the file if there's none in the destination,
and elsewise notes if the CVS version differs (or is missing) but doesn't
try to fix that.
XXX we may want to not install it at all, but this is better than
having it spread across xbase for some machines and xserver
for others in various md.<mach> files.
* Add an optional third field to the sets file which is a list of
comma separated keywords that control if the line is printed.
Currently supported keywords
kerberos4 ${MKKERBEROS4} != no
kerberos ${MKKERBEROS} != no
lint ${MKLINT} != no
obsolete ${obsolete} != 0.
In this case, non obsolete files are not printed.
(This will allow future support for builds with variables such as
MKHESIOD and MKYP set to "no".)
* Use sh(1)'s getopts where appropriate, and otherwise cleanup the
various scripts.
* Move defaults for sets.subr from sets.defaults into sets.subr.
Move replicated code for determining stuff such as shlibs type
from various scripts into sets.subr.
* Merge the obsolete.*, krb.*, krb4.* and lint.* into the appropriate
main lists with the relevant third field keyword(s).
* sets for xsrc/xc (XF 3.x)
xbase3 xcomp3 xcontrib3 xfont3 xmisc3 xserver3
* sets for xsrc/xfree/xc (XF 4.x)
xbase4 xcomp4 xcontrib4 xfont4 xmisc4 xserver4
* sets for src/x11 (reachover build of xsrc/xfree/xc):
xbase xcomp xcontrib xfont xmisc xserver
(note: not populated yet, and not to be shared by x*3 or x*4 anymore)
isn't enabled.
This is how the rc.d system works in conjunction with our current build
and install system; all the rc.d scripts are installed even if the
subsystems they control are not.
* Use "mknod -F netbsd -r" to create nodes, instead of
"rm ; mknod; chmod; chown".
This means permissions & ownership of existing nodes will
not be changed.
This is up to 30% faster when populating an empty /dev,
and nearly 2x faster when re-running on an existing /dev.
* New options:
-f force change of permission & ownership of existing
devices
-m mknod override name/path of mknod program
(which defaults to $TOOL_MKNOD, then "mknod").
-s generate mtree(8) specfile instead of creating devices
* Remove /usr/etc from $PATH; not needed anymore.
* Provide functions to create devices & directories:
mkdev name [b|c] major minor [mode{=600} [gid{=0} [uid{=0}]]]
create device node `name' with the appropriate permissions
lndev src target
create a symlink from src to target
makedir dir mode
create directory with appropriate mode
* UIDs and GIDs are hardcoded in at MAKEDEV generation time.
(Unfortunately there's not a simple way of determining a GID
a la "id -n user" for determining a UID).
This was tested by generating MAKEDEV for each MACHINE,MACHINE_ARCH
combination and comparing the results of "MAKEDEV all" from the
previous version to the new one.
(This testing actually highlighted mistakes in the previous configuration!)
Simplify distrib/common/Makefile.makedev to use "MAKEDEV -s"
and without Kerberos 4 & 5 (MKKERBEROS=no). Previously checkflist
complained of missing files.
* move kerberos- and kerberos 4-only files into new flists,
distrib/sets/lists/*/krb.*
* make the flist generators grok MKKERBEROS{,4} variables
* fix Makefiles which treat MKKERBEROS=no as MKKERBEROS5=no.
9 out of 10 experts agree that it is ludicrous to build w/
KERBEROS4 and w/o KERBEROS5.
* fix header files, also, which treat MKKERBEROS=no as MKKERBEROS5=no.
* omit some Kerberos-only subdirectories from the build as
MKKERBEROS{,4} indicate
(I acknowledge the sentiment that flists are the wrong way to go,
and that the makefiles should produce the metalog directly. That
sounds to me like the right way to go, but I am not prepared to do
revamp all the makefiles. While my approach is expedient, it fits
painlessly within the current build architecture until we are
delivered from flist purgatory, and it does not postpone our
delivery. Fair enough?)
to a 2-clause licence (retaining UCB clauses (1) and (2)), per PR
22409 from Joel Baker, approved by Theo de Raadt, and ratified by
myself - the only discrepancy being the handling of the original
clause 3 in src/usr.sbin/yppoll/yppoll.c.
Uses a hook in spec_strategy() to save data written from a mounted
file system to its block device and a hook in dounmount().
Not enabled by default in any kernel config.
Approved by: Frank van der Linden <fvdl@netbsd.org>
(I must have forgotten to commit this at the same time).
sysinst still runs in 16MB (and hasn't run in 8MB for a while).
The extra space costs almost nothing on the compressed 'floppies', but
gives more working room for the install system (eg sysinst can coredump
without filling /).
- Rename run_prog() to run_program() and remove the 'errmsg' argument (almost
never used).
- Be consistent about #define<space> in defs.h
- Allow BSDFFS partitions to be FFSv1 or FFSv2 (fixes PR install/23547)
- i386: install correct bootblocks for root filesystem type.
- Do 'fsck -p' before all mounts (but never a full fsck), rename fsck_xxx()
to mount_xxx() and remove some wrapper functions.
- Allow root to be an APPLEUFS partition - and allow them to be newfsed,
should fix PR install/23198
- Redo fstab processing for upgrade to avoid large static data items and
memory leaks. Change walk() to abort on user defined error.
(the fstab stuff really needs more work though...)
- i386: 'Warp' cursor to alternate option when selecting console/bootblocks,
should fix PR port-i386/23546.
- Allow MENU_ok and MENU_yesno to take user defined title.
- Ensure that mountpoint not defined for swap (and similar issues) when
editing netbsd label.
- Tweaks to error handling in run_program(), allow user to say that errors
are expected or that the display shouldn't be cleared before returning.
- Remove some old code that has been festering under #if 0
down to a cylinder boundary before adding in the requested size.
Stops the partition being one cylinder larger than requested when the
partition doesn't start at the beginning of a cylinder (eg for partitions
starting in sector 63).
Fixes part of PR install/23548
and machine_arch to their defaults into sets.defaults, and source
it at the top of each script.
Also, to be consistent with variable naming, s/arch/machine_arch/.
sets.defaults introduces two new variables, krb and krb4, which
will affect whether Kerberos- or Kerberos IV-only files are put
into the set lists.
Tweak dependency rules for (menu|msg)_defs.h so that everything isn't
recompiled if the xxx_def file has changed but the generated header
is unaffected.
* use cd0a rather than cd0[cd] as the CDROM installation device.
This fixes problems with platforms that install from iso9660 images
encapsulated in a partition, and should not affect platforms that
don't.
* add RUN_PROGRESS to the run_prog() flags for ftp installs.
Okay'ed by David Laight.
Make sure that there is a domain set before printing a "search" line.
hosts:
Add domain to the second "localhost" line if there is a domain set.
Add domain to hostname (in addition to bare version) if there is a
domain set.
Patches from William Simpson, PR 21999
- update minimum disk requirements
- update video support info
- a little more info on the SPARCbook internal modem
- mention that multiple SuperSPARC CPUs are supported, but not HyperSPARC
- rework run_prog() so that the program name (etc) is usually displayed if
the program generates any output, or terminates with an error.
Allow arguments to included in single quotes.
Try to collect console output so it doesn't interfere with curses.
- Add a '*' to the cylinder count if non-integral number of cylinders
(on disklabel editor)
- Only show partition type for unused partitions.
- Show size including unused space on '+' partition, remove a..z since
the don't relate to partition IDs (netbsd partition sizes)
- Fix deleting of 'user' partitions - killed size of next ptn.
- Don't default a swap partition is the disk already has one.
- Fix deleting of extended MBR partitions - changed size of ptn 2.
- Show error message if user tries something illegal in mbr editor.
- Default to old diskname (actually disk type - dunno why!)
- Use MI enable_rc_conf() to set RC_CONFIGURED=YES, use a single sed
command instead of a raft of code playing with files etc.
- Float some menus to just below header text, saves counting and lets
language variants have different height headers (use y=-1)
- Track whether anything is mounted on /mnt2 better.
- Put more texts into message file.
- Change english prose texts to be more correct.
- Stop french and polish versions core dumping if ptn start/size changed.
- Fix processing logic for saving /etc (action is still borked)
- Do tail-end setup if any sets (eg X) can't be found (but not if you give
in (yet)).
removing the advertising clause. Diffs provided in PR 22410 by Joel
Baker, confirmed to the board by Jason Downs.
With additional thanks to Jason Thorpe.
changed, and libkrb5 depends on libcrypto.
* Bump the shlib major of libgssapi, libhdb, libkadm5clnt, libkadm5srv,
and libkafs, because they depend on librb5.
Dependent library list provided by, and change approved by, lha@netbsd.
Per discussion on tech-userlevel.
<sys/bootblock.h>:
* Added definitions for the Master Boot Record (MBR) used by
a variety of systems (primarily i386), including the format
of the BIOS Parameter Block (BPB).
This information was cribbed from a variety of sources
including <sys/disklabel_mbr.h> which this is a superset of.
As part of this, some data structure elements and #defines
were renamed to be more "namespace friendly" and consistent
with other bootblocks and MBR documentation.
Update all uses of the old names to the new names.
<sys/disklabel_mbr.h>:
* Deprecated in favor of <sys/bootblock.h> (the latter is more
"host tool" friendly).
amd64 & i386:
* Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
be consistent with the naming convention of the msdosfs tools.
* Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
and it's confusing to have two functionally equivalent bootblocks,
especially given that "ufs" has multiple meanings (it could be
a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).
* Rework pbr.S (the first sector of bootxx_*):
+ Ensure that BPB (bytes 11..89) and the partition table
(bytes 446..509) do not contain code.
+ Add support for booting from FAT partitions if BOOT_FROM_FAT
is defined. (Only set for bootxx_msdos).
+ Remove "dummy" partition 3; if people want to installboot(8)
these to the start of the disk they can use fdisk(8) to
create a real MBR partition table...
+ Compile with TERSE_ERROR so it fits because of the above.
Whilst this is less user friendly, I feel it's important
to have a valid partition table and BPB in the MBR/PBR.
* Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
with other platforms.
* Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
we can boot off FAT partitions.
* Crank version of /usr/mdec/boot to 3.1, and fix some of the other
entries in the version file.
installboot(8) (i386):
* Read the existing MBR of the filesystem and retain the BIOS
Parameter Block (BPB) in bytes 11..89 and the MBR partition
table in bytes 446..509. (Previously installboot(8) would
trash those two sections of the MBR.)
mbrlabel(8):
* Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
to map the MBR partition type to the NetBSD disklabel type.
Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).