On Sun, Feb 10, 2013 at 6:42 AM, Michael Tokarev <[email protected]> wrote: > 09.02.2013 23:01, Blue Swirl wrote: >> >> Check if xsltproc and Sparc32, Sparc64 and PPC compilers >> are available. If found, rebuild OpenBIOS ROMs from submodule. >> >> Signed-off-by: Blue Swirl <[email protected]> >> --- >> A patch to OpenBIOS is also needed to support out of tree build, >> just sent to the list. > > [] > >> +# OpenBIOS needs xsltproc, and Sparc32, Sparc64 and PPC cross compilers >> +if has xsltproc; then >> + if has_crossgcc "sparc" -a has_crossgcc "sparc64" -a \ >> + \( has_crossgcc "powerpc" -o has_crossgcc "ppc" \); then >> + roms="$roms openbios" >> + fi >> +fi > > > Do we need to be able to turn it off? Or maybe we should just > stop doing this by default (since binaries are already present > in the tarball), but instead suggest user to run `make -C roms' > if [s]he needs/wants these roms to be rebuilt?
We also build optionroms and spapr-rtas automatically, not seabios though and there's no option to disable/enable those. I'm not sure why we build those either except to encourage using self built ROMs instead of the supplied binaries. I think it has more to do with keeping in line with the spirit of open source rather than any technical advantages. > > I guess this is not a question for this patch but a more general > question. > > I dislike rebuilding stuff this way, in particular because current > system may have some outdated (or too new) compiler for that stuff > to produce somehow broken binary, because this way, the resulting > blobs differs from ones in the tarball and comparing in attempt to > find what has changed shows these and makes some noize, -- stuff > like that. This could also apply to optionroms and spapr-rtas. Clang/LLVM assembler does not support 16 bit x86 code yet, so we already have a workaround for that. For OpenBIOS this is also a real concern since GCC 4.7.0 does not produce working binaries. > > >> +++ b/pc-bios/openbios/Makefile >> >> +config-timestamp: $(SRC_PATH)/roms/openbios/config/scripts/switch-arch >> + mkdir build || true > > > That's what `mkdir -p' if for. Thanks, will fix. The directory could be also made by configure. > > Thanks, > > /mjt
