I think this is very close. There are a few things to work out that I'd like help with.
1. If I set a variable like UCLIBC_VER in the config/platforms/serengeti_cheetah-x86_64.conf file, it doesn't make it to uclibc.mk 2. Could someone that has the actual hardware see if you need to comment out soft_resest_x in cache_as_ram_auto.c, or if that's a SimNow issue? (LinuxBIOS enters an infinite loop resetting itself if the reset is not commented out)
Thanks, Myles
Here's the change log for the patch added config/platforms/serengeti_cheetah-x86_64.conf added PLATFORM_SERENGETI_CHEETAH_64 to config/platforms/Config.in changed config/platforms/serengeti_cheetah.conf to point to its own linuxbios make file instead of generic-linuxbios.mk changed scripts/Makefile.lab to use bzImage instead of vmlinux for mkelfimage so that it works on x86_64 updated Build.settings to include a UCLIBC_LOADER variable for 64-bit removed the magic number from bin/checkrom.sh (Was LinuxBIOS version and platform dependent) and changed it to an informational message added a kernel config file and .mk file changed packages/kernel/kernel.inc to be platform aware changed packages/busybox/busybox.mk to be platform aware added a defconfig for busybox with 64-bit uClibc added a defconfig for uClibc 64-bit added a uClibc version variable UCLIBC_VER to uclibc.mk (0.9.28 doesn't have resolve.S for x86_64) changed "Building target config file" to "Building target" because it is executing ./buildtarget added patches for Config.lb for serengeti_cheetah-payload and serengeti_cheetah-lab added serengeti_cheetah.mk which
I forgot one more thing that I'd like help improving in buildrom:
I'd like to pass -j 6 to make to speed compilation (I added it to the kernel makefile for the target), but if you pass it to the top-level makefile it doesn't respect ordering. Is there a way to have the top-level makefile include a jobs setting without breaking the build?
On 01/11/07 10:35 -0600, Myles Watson wrote:
I forgot one more thing that I'd like help improving in buildrom:
I'd like to pass -j 6 to make to speed compilation (I added it to the kernel makefile for the target), but if you pass it to the top-level makefile it doesn't respect ordering. Is there a way to have the top-level makefile include a jobs setting without breaking the build?
-j should always be the number of cores on your system + 1. But ensuring that the code builds cleanly is the job of the system. If we have out of order issues with buildrom we can try to address them, but if we start getting too deeply into respecting strict dependencies then we will very quickly get overly complex. My suggestion is to pass in -j independently to each package so that you can get the speed advantage there.
This is yet another reason why I'm pushing so hard to move the LAB and kernel compile out of buildrom and into something else like buildroot or Firmware Linux or <insert favorite tool here>. I don't know if we want buildROM to be in the business of understanding how to build a distro - there are other packages out there that do a better job of that. Where buildROM comes in useful is managing the juxtaposition of LinuxBIOS and its payloads. So instead of building the kernel & LAB distro, if buildrom can pass control to buildroot or one of its friends, and then consume the resulting filesystem image and turn it into an ELF.
But until we get that working, I have no objection to passing -j <whatever> into the various Makefiles. We can make <whatever> a configurable option in the advanced settings.
Jordan
If I configure tyan_s2891 to have Linux As Bootloader and include the kexec tools, the build fails. Here's the last bit of the build log
gcc --32 -c -o kexec/x86-setup-32.o kexec/x86-setup-32.S cc1: error: unrecognized command line option "-f32"
Is this another place where there should be quotes around flags being passed around?
Myles
On 01/11/07 11:27 -0600, Myles Watson wrote:
If I configure tyan_s2891 to have Linux As Bootloader and include the kexec tools, the build fails. Here's the last bit of the build log
gcc --32 -c -o kexec/x86-setup-32.o kexec/x86-setup-32.S cc1: error: unrecognized command line option "-f32"
Is this another place where there should be quotes around flags being passed around?
It looks like it got the ASFLAGS when it wanted the CFLAGS. I'll look at this along with the other problems.
Myles
-- linuxbios mailing list linuxbios@linuxbios.org http://www.linuxbios.org/mailman/listinfo/linuxbios
I've had really bad luck with buildroot lately. It seems to have passed some sort of event horizon of mass, and it is really easy to drive yourself into corner to the point that you have a broken build, a broken bulid system, nothing compiles, and nothing works -- and your every attempt at reconfiguration only makes it worse. I am not sure what the future of buildroot will be.
So, I am happy that buildrom can do what it does.
ron
On Thu, Nov 01, 2007 at 09:42:16PM -0700, ron minnich wrote:
I am not sure what the future of buildroot will be.
So, I am happy that buildrom can do what it does.
I like Gentoo's catalyst for building systems. Granted it's geared toward full-fledged systems, but there's no reason it can't be used for small ones too. There's also crossdev for cross-compiling.
//Peter