From owner-freebsd-current@FreeBSD.ORG Wed May 13 22:02:05 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0A82B106566C; Wed, 13 May 2009 22:02:05 +0000 (UTC) (envelope-from jdl@jdl.com) Received: from jdl.com (jdl.com [208.123.74.7]) by mx1.freebsd.org (Postfix) with ESMTP id D27EC8FC18; Wed, 13 May 2009 22:02:04 +0000 (UTC) (envelope-from jdl@jdl.com) Received: from jdl (helo=jdl.com) by jdl.com with local-esmtp (Exim 4.69) (envelope-from ) id 1M4MWa-0007qE-6m; Wed, 13 May 2009 17:02:04 -0500 To: Andrew Thompson In-reply-to: <20090513175000.GA2635@citylink.fud.org.nz> References: <20090513170028.GA96051@citylink.fud.org.nz> <20090513175000.GA2635@citylink.fud.org.nz> Comments: In-reply-to Andrew Thompson message dated "Wed, 13 May 2009 10:50:00 -0700." Date: Wed, 13 May 2009 17:02:04 -0500 From: Jon Loeliger Message-Id: X-Spam-Score: -2.3 Cc: freebsd-current@freebsd.org Subject: Re: Building boot2 for ixp425 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 May 2009 22:02:05 -0000 > > The buildenv command is the one that spawns a new shell with all the > correct paths to use the new compiler. just do the kernel-toolchain > before it, as in. > > make TARGET_ARCH=arm TARGET_CPUTYPE=xscale \ > TARGET_BIG_ENDIAN=true kernel-toolchain > > make TARGET_ARCH=arm TARGET_CPUTYPE=xscale \ > TARGET_BIG_ENDIAN=true buildenv > > cd sys/boot/arm/ixp425/boot2/ > make > > That should work :) But alas, it did not. So I ran the first two make commands as above but with my KERNCONF=BOOT2 in the mix as well. Built a toolchain and all just fine. And switched into a "buildenv" as well. However: # make Warning: Object directory not changed from original /usr/src/sys/boot/arm/ixp425/boot2 cc -O -pipe -mbig-endian -march=armv5te -D__XSCALE__ -DBOOT_STACK=0x200000-4 -I/usr/src/sys/boot/arm/ixp425/boot2/../../../common -I/usr/src/sys/boot/arm/ixp425/boot2 -DFIXUP_BOOT_DRV -Os -ffreestanding -I/usr/src/sys/boot/arm/ixp425/boot2/../../../.. -I/usr/src/sys/boot/arm/ixp425/boot2/../../../../arm -DCPU_XSCALE_IXP425 -Wall -Waggregate-return -Werror -Wnested-externs -Wpointer-arith -Wshadow -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -DBOOT_IXP425 -std=gnu99 -c arm_init.S arm_init.S:27:25: error: machine/asm.h: No such file or directory arm_init.S: Assembler messages: arm_init.S:29: Error: bad instruction `asentry_np(start)' arm_init.S:52: Error: bad instruction `entry(cpu_id)' arm_init.S:54: Error: bad instruction `ret' *** Error code 1 *sigh* Trying to simply build a kernel in this "buildenv" didn't work. Same results from either: # make KERNCONF=BOOT2 buildkernel or # make TARGET_ARCH=arm TARGET_CPUTYPE=xscale TARGET_BIG_ENDIAN=true KERNCONF=BOOT2 buildkernel Like this: # make TARGET_ARCH=arm TARGET_CPUTYPE=xscale TARGET_BIG_ENDIAN=true KERNCONF=BOOT2 buildenv Entering world for arm:arm # cd /usr/src/sys/boot/arm/ixp425/boot2 # make Warning: Object directory not changed from original /usr/src/sys/boot/arm/ixp425/boot2 cc -O -pipe -mbig-endian -march=armv5te -D__XSCALE__ -DBOOT_STACK=0x200000-4 -I/usr/src/sys/boot/arm/ixp425/boot2/../../../common -I/usr/src/sys/boot/arm/ixp425/boot2 -DFIXUP_BOOT_DRV -Os -ffreestanding -I/usr/src/sys/boot/arm/ixp425/boot2/../../../.. -I/usr/src/sys/boot/arm/ixp425/boot2/../../../../arm -DCPU_XSCALE_IXP425 -Wall -Waggregate-return -Werror -Wnested-externs -Wpointer-arith -Wshadow -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -DBOOT_IXP425 -std=gnu99 -c arm_init.S arm_init.S:27:25: error: machine/asm.h: No such file or directory arm_init.S: Assembler messages: arm_init.S:29: Error: bad instruction `asentry_np(start)' arm_init.S:52: Error: bad instruction `entry(cpu_id)' arm_init.S:54: Error: bad instruction `ret' *** Error code 1 Stop in /usr/src/sys/boot/arm/ixp425/boot2. So I tried to construct the tree as it would be after a buildkernel, but that didn't go well at all. Should it be trying to find the file /usr/src/sys/arm/include/asm.h ? Thanks, jdl