Date: Sat, 18 May 2013 07:58:50 -0400 From: Warner Losh <imp@bsdimp.com> To: Adrian Chadd <adrian@freebsd.org> Cc: freebsd-arm <freebsd-arm@freebsd.org> Subject: Re: Port: U-Boot for BeagleBone Message-ID: <4C0D8A36-DBFC-46D4-9BED-81782BB35668@bsdimp.com> In-Reply-To: <CAJ-Vmo=jM-G7%2BCO6wzv4SacremEybO6mTWAR_7fz2h%2BtOMGK-A@mail.gmail.com> References: <3B16A2E5-C92B-4248-BE98-DD5C1194CB05@freebsd.org> <CALCpEUGY-RNq1BoChYeVR%2Bf8Tfm-=pfyNncRzKOwV9hfuFKTcg@mail.gmail.com> <86vc6hpb5r.wl%gnn@neville-neil.com> <CAJ-VmoksuRiSnRYyQ=TYAqXDsRw4TiwrvMgk_jkE1Qb2=HqJdA@mail.gmail.com> <8DC27DAB-FC30-4152-A408-4D666AD15875@freebsd.org> <CAJ-Vmo=jM-G7%2BCO6wzv4SacremEybO6mTWAR_7fz2h%2BtOMGK-A@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On May 17, 2013, at 11:48 PM, Adrian Chadd wrote: > This makes it really difficult to potentially support building FreeBSD > images on non-FreeBSD platforms. >=20 > It also means that people can do things like have out of date builds > of things like bootloaders, mkuboot/mkuzimage, etc. >=20 > That's why I'm kind of a bit worried about this trend. >=20 > I'm likely going to go the opposite way with my stuff. Ie, if I do > need bootloaders and such, I'll be packaging either the source trees, > or ports themselves, as part of the "freebsd-wifi-image" build > environment. I'll try to reuse the port build infrastructure as much > as possible but I won't rely on many tools and external support > software trees that aren't in /usr/src or the build environment > itself. Actually the notion is that you'd always fetch the latest port/package = and build/install it before moving onto the image creation phase. Things = are still just as integrated, but we have a unified framework to do them = that doesn't reinvent wheels (badly). Warner > On 17 May 2013 16:01, Tim Kientzle <kientzle@freebsd.org> wrote: >>=20 >> On May 17, 2013, at 5:20 PM, Adrian Chadd wrote: >>=20 >>> ... so how do I do a userland build of a bootloader? :-) >>=20 >>> Does crochet have extra stuff in it to build ports with alternate >>> roots and install-as-user options set? Or does it now require you = have >>> them installed before you can build images? >>=20 >> This is still pretty experimental, so feel free to chime >> in with better ideas. >>=20 >> My thinking right now is essentially that: >>=20 >> * Port/package creates = /usr/local/share/u-boot/u-boot-beaglebone/<files> >> * Crochet uses these files when it builds the image >>=20 >> So yes, the port or package containing the boot bits >> would be a prerequisite. For the interim, this is not >> much worse than the current "you have to download >> the source and run crochet as root." >>=20 >> This is basically driven from the observation that Crochet's >> current logic to build a boot loader contains essentially >> the same information (place to download source, patches, etc) >> that go into a FreeBSD port. So it avoids a chunk of duplication >> to make the boot loader builds be ports. >>=20 >> I haven't thought through the non-root build case yet: >>=20 >> Obviously, once the port/package is installed, using it >> as a non-root user is no problem. I suspect this is the >> common case. >>=20 >> Building/installing the port as a non-root user should >> be feasible, but I haven't tinkered with that yet. >>=20 >> Downloading/installing the package as a non-root user >> may also be feasible. >>=20 >> Any suggestions? >>=20 >> Tim >>=20 >>=20 >>=20 >>> Thanks, >>>=20 >>>=20 >>> adrian >>>=20 >>>=20 >>> On 17 May 2013 14:08, <gnn@freebsd.org> wrote: >>>> At Fri, 17 May 2013 13:41:33 -0700, >>>> hiren panchasara wrote: >>>>>=20 >>>>> On Fri, May 17, 2013 at 1:22 PM, Tim Kientzle = <kientzle@freebsd.org> wrote: >>>>>> I'm trying to move the actual building of boot loaders out of = Crochet and into FreeBSD ports. >>>>>>=20 >>>>>> Here's the first attempt at such a port (many thanks to Diane = Bruce for patiently tutoring me through this): >>>>>>=20 >>>>>> http://people.freebsd.org/~kientzle/u-boot-beaglebone.tgz >>>>>>=20 >>>>>> I'd appreciate any feedback: >>>>>> * Can you build this? >>>>>=20 >>>>> Yes. >>>>>=20 >>>>> Its fetching things and I can see uboot generated in >>>>> work/u-boot-2013.04/ >>>>=20 >>>> It claims to require a cross building compiler in /usr/obj so I'm >>>> waiting for that to build on my laptop. >>>>=20 >>>>>> * Suggestions for improving it? >>>>>>=20 >>>>>> If this works, I plan to use it as a template for U-Boot for = other >>>>>> platforms (RaspberryPi, Pandaboard, etc.). Crochet would then >>>>>> rely on these ports instead of building boot loaders itself. = Even >>>>>> better, these will eventually be built by the package system and >>>>>> available through packages. >>>>>=20 >>>>> sweet! >>>>>=20 >>>>=20 >>>> Works for me. Thanks to both of you. >>>>=20 >>>> Best, >>>> George >>>> _______________________________________________ >>>> freebsd-arm@freebsd.org mailing list >>>> http://lists.freebsd.org/mailman/listinfo/freebsd-arm >>>> To unsubscribe, send any mail to = "freebsd-arm-unsubscribe@freebsd.org" >>> _______________________________________________ >>> freebsd-arm@freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-arm >>> To unsubscribe, send any mail to = "freebsd-arm-unsubscribe@freebsd.org" >>=20 > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C0D8A36-DBFC-46D4-9BED-81782BB35668>