Home | History | Annotate | Download | only in boot_ufs
History log of /src/sys/arch/x68k/stand/boot_ufs/Makefile
RevisionDateAuthorComments
 1.39  11-Jan-2023  isaki Add udivdi3/umoddi3 (and ashldi3) that were required by recent UFS change.
This increases xxboot_ufs from about 4.5KB to 5.5KB (The upper limit is 8KB).
Thanks tsutsui@ for advices.
 1.38  15-Dec-2021  christos branches: 1.38.4;
-W === -Wextra
 1.37  15-Dec-2021  christos remove naked -W
 1.36  18-Jan-2020  isaki Check whether the text+data+bss doesn't reach 0x6000 where secondary
bootloader should be.
 1.35  18-Jan-2020  isaki Use ASSERT() in ldscript to check first_kbyte (etc) restrictions,
rather than complicated shell expressions in Makefile.
 1.34  18-Jan-2020  isaki Change primary bootloader's load address from 0x0f0000 to 0x003000.
- Moving addresses closer eliminates bunch of this linker errors:
in function `entry0':
relocation truncated to fit: R_68K_16 against `edata'+ffffffffffff8000
:
- By this change, harmful -noinhibit-exec option can also be removed.
Finally, we can break the builds when assemble error occurs!
- Load address of secondary is 0x6000, so that this change limits
text+data+bss 12KB or less. Current actual size is 5~7KB.
I think it should be fine.
- cd9660 can have up to 30KB text+data in its bootarea. Even in this
case, this change limits text+data+bss 12KB or less (currently, it's
about 6KB). However, I take breaking the builds on errors rather than
future size limitation.
There is no user visible changes or interface changes.
 1.33  18-Jan-2020  isaki Add 0x prefix when defining variables, not when using it.
This was necessary for bc(1) but it's no longer necessary.
 1.32  18-Jan-2020  isaki Pass address constants from Makefile to ldscript.
 1.31  16-Jan-2020  isaki Rewrite limit check using cross-build tools.
This eliminates use of hosts tr(1) and bc(1).
(But I'm going to remove this again soon due to other reason)
 1.30  08-Apr-2017  christos branches: 1.30.14; 1.30.20;
centralize vers.c building for standalone programs.
 1.29  12-Aug-2013  joerg branches: 1.29.6; 1.29.10; 1.29.14;
Build boot loaders without unwind tables.
 1.28  15-Jun-2013  christos branches: 1.28.2;
revert previous
 1.27  15-Jun-2013  christos adjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs split
 1.26  11-Oct-2011  tsutsui branches: 1.26.2; 1.26.12;
Fix "Error occurs, please reset" boot problem on
X68030 + 060turbo in 060 mode, found on NetBSD booth
at OSC 2011 Hiroshima:

- use -D__daddr_t=int32_t for all bootloader files
to avoid 64 bit ops in FFS
- explicitly specify -m68020-60 to avoid 64 bit mulsl/mulul
instructions which need to be handled by 060SP emulation
but not available in 060turbo IPL ROM
(LFS still has uint64_t members even with 32bit daddr_t)

The problem was investigated (at least 1.6.2 bootloaders worked)
by Yasushi Oshima at OSC booth, and fixes have been confirmed
by Y.Sugahara on his 060turbo. Thanks everyone!

Should also be pulled up to netbsd-5.
 1.25  22-Jan-2011  joerg Drop bootprog_maker (formerly enabled by -M) and bootprog_date (formerly
disabled by -D) from the output of newvers_stand.sh. Change -D to the
inverted logic, so that it adds the date to bootprog_rev in ().

Change all platforms accordingly. -D is added if MKREPRO is not yes and
wasn't present before. Platforms that didn't use -D don't depend on
MKREPRO now either.
 1.24  06-Jul-2010  mrg branches: 1.24.2; 1.24.4;
remove almost all the ability to build netbsd with an a.out target.
we're ELF now, and there are many missing checks against OBJECT_FMT.
if we ever consider switching, the we can figure out what new ones
we need but for now it's just clutter.

this doesn't remove any of the support for exec_aout or any actually
required-for-boot a.out support, only the ability to build a netbsd
release in a.out format. ie, most of this code has been dead for
over a decade.

i've tested builds on vax, amd64, i386, mac68k, macppc, sparc, atari,
amiga, shark, cats, dreamcast, landisk, mmeye and x68k. this covers
the 5 MACHINE_ARCH's affected, and all the other arch code touched.
it also includes some actual run-time testing of sparc, i386 and
shark, and i performed binary comparison upon amiga and x68k as well.


some minor details relevant:
- move shlib.[ch] from ld.aout_so into ldconfig proper, and cut them
down to only the parts ldconfig needs
- remove various unused source files
- switch amiga bootblocks to using elf2bb.h instead of aout2bb.h
 1.23  25-Oct-2008  apb branches: 1.23.4; 1.23.14; 1.23.16;
Use ${TOOL_SED} instead if plain sed in Makefiles.
 1.22  19-Oct-2008  apb Use ${TOOL_AWK} instead of ${AWK} or plain "awk" in make commands.
Pass AWK=${TOOL_AWK:Q} to shell scripts that use awk.
 1.21  03-Mar-2007  isaki branches: 1.21.40; 1.21.44; 1.21.50;
-Wconversion is too strict.
 1.20  29-Jun-2006  lukem branches: 1.20.10;
Support MAKEVERBOSE
 1.19  29-Jun-2006  lukem Rename LDFLAGS to LINKFLAGS, as the former is for CC not LD.
 1.18  27-Dec-2005  he branches: 1.18.4; 1.18.8; 1.18.16;
Make this build again by using ${S}/../common/lib/libc/Makefile.inc,
after the libc/libkern consolidation.
 1.17  11-Dec-2005  christos merge ktrace-lwp.
 1.16  21-Mar-2004  itohy branches: 1.16.16;
Add notice on "relocation truncated to fit: R_68K_16" errors of ld.
Cleanup consistency check.
 1.15  30-Oct-2003  he Add -I${S} for <lib/libsa/stand.h> inclusion, and add
include of ../Makefile.booters for -ffreestanding.
 1.14  26-Oct-2003  lukem Use ${HOST_SH} instead of `sh'.

If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
 1.13  09-Apr-2003  itohy branches: 1.13.2;
Support UFS2 format for FFS.
 1.12  02-Feb-2003  isaki Use 32bit daddr_t.
 1.11  17-Mar-2002  minoura LFSv2 support.
Note that secondary boot does not support LFSv2.
Code written by itohy.
 1.10  12-Dec-2001  lukem branches: 1.10.2;
Set NOxxx= before <bsd.own.mk> is pulled in (even indirectly).
Otherwise the appropriate MKxxx=no won't be defined .
 1.9  12-Dec-2001  tv MKfoo=no -> NOfoo
 1.8  05-Dec-2001  minoura Correct LINKS to install sdboot_ufs properly.
 1.7  24-Nov-2001  minoura Emit the binaries directly from the loader.
 1.6  15-Oct-2001  minoura branches: 1.6.4;
Use newvers_stand.sh to record the version.
 1.5  01-Oct-2001  minoura Install as xxboot_*, and create links as fdboot_* and sdboot_*.
 1.4  28-Sep-2001  minoura Install as `boot_ufs'.
 1.3  27-Sep-2001  minoura Make these compile with the old (a.out) toolchain.
 1.2  27-Sep-2001  minoura Add some missing definitions.
 1.1  27-Sep-2001  minoura Initial commit of the new bootloader to support ELF kernel.
It consists of two programs named boot_ufs and boot; the former reads
the latter (an OMAGIC a.out).
Boot now utilizes the libsa library to read the actual kernel.

- LFS code exists, but probobly does not work.
- Currently the ELF toolchain is required.
- Many features are missing.
 1.6.4.3  01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.6.4.2  08-Jan-2002  nathanw Catch up to -current.
 1.6.4.1  15-Oct-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:45 +0000
 1.10.2.3  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.10.2.2  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.10.2.1  12-Dec-2001  thorpej file Makefile was added on branch kqueue on 2002-01-10 19:50:27 +0000
 1.13.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.13.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.13.2.1  03-Aug-2004  skrll Sync with HEAD
 1.16.16.3  03-Sep-2007  yamt sync with head.
 1.16.16.2  30-Dec-2006  yamt sync with head.
 1.16.16.1  21-Jun-2006  yamt sync with head.
 1.18.16.1  13-Jul-2006  gdamore Merge from HEAD.
 1.18.8.1  11-Aug-2006  yamt sync with head
 1.18.4.1  09-Sep-2006  rpaulo sync with head
 1.20.10.1  12-Mar-2007  rmind Sync with HEAD.
 1.21.50.1  13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.21.44.2  11-Aug-2010  yamt sync with head.
 1.21.44.1  04-May-2009  yamt sync with head.
 1.21.40.1  17-Jan-2009  mjf Sync with HEAD.
 1.23.16.1  05-Mar-2011  rmind sync with head
 1.23.14.1  17-Aug-2010  uebayasi Sync with HEAD.
 1.23.4.1  17-Mar-2012  bouyer Pull up following revision(s) (requested by tsutsui in ticket #1731):
sys/arch/x68k/stand/boot_ufs/Makefile: revision 1.26 via patch
sys/arch/x68k/stand/boot/version: revision 1.4 via patch
sys/arch/x68k/stand/libsa/Makefile: revision 1.27 via patch
sys/arch/x68k/stand/Makefile.booters: revision 1.7 via patch
sys/arch/x68k/stand/boot_ustar/Makefile: revision 1.19 via patch
Fix "Error occurs, please reset" boot problem on
X68030 + 060turbo in 060 mode, found on NetBSD booth
at OSC 2011 Hiroshima:
- use -D__daddr_t=int32_t for all bootloader files
to avoid 64 bit ops in FFS
- explicitly specify -m68020-60 to avoid 64 bit mulsl/mulul
instructions which need to be handled by 060SP emulation
but not available in 060turbo IPL ROM
(LFS still has uint64_t members even with 32bit daddr_t)
The problem was investigated (at least 1.6.2 bootloaders worked)
by Yasushi Oshima at OSC booth, and fixes have been confirmed
by Y.Sugahara on his 060turbo. Thanks everyone!
Should also be pulled up to netbsd-5.
Bump version to denote 060turbo boot fix.
 1.24.4.1  08-Feb-2011  bouyer Sync with HEAD
 1.24.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.26.12.2  03-Dec-2017  jdolecek update from HEAD
 1.26.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.26.2.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.28.2.1  28-Aug-2013  rmind sync with head
 1.29.14.1  21-Apr-2017  bouyer Sync with HEAD
 1.29.10.1  26-Apr-2017  pgoyette Sync with HEAD
 1.29.6.1  28-Aug-2017  skrll Sync with HEAD
 1.30.20.2  25-Jan-2020  ad Sync with head.
 1.30.20.1  17-Jan-2020  ad Sync with head.
 1.30.14.1  08-Apr-2020  martin Merge changes from current as of 20200406
 1.38.4.1  15-May-2023  martin Pull up following revision(s) (requested by chs in ticket #166):

sys/arch/x68k/stand/boot_ufs/Makefile: revision 1.39

Add udivdi3/umoddi3 (and ashldi3) that were required by recent UFS change.

This increases xxboot_ufs from about 4.5KB to 5.5KB (The upper limit is 8KB).

Thanks tsutsui@ for advices.

RSS XML Feed