Re: HEAD buildkernel error (aic7xxx_seq.h is missing. Run 'make ahcfirmware')

From: Warner Losh <wlosh_at_bsdimp.com>
Date: Tue, 18 Feb 2014 22:16:15 -0700
Sent from my iPad

> On Feb 18, 2014, at 9:38 PM, Luigi Rizzo <rizzo_at_iet.unipi.it> wrote:
> 
>> On Tue, Feb 18, 2014 at 11:24 AM, Ian Lepore <ian_at_freebsd.org> wrote:
>> 
>>> On Fri, 2014-02-14 at 13:46 -0800, Luigi Rizzo wrote:
>>>> On Fri, Feb 14, 2014 at 10:23 AM, Ian Lepore <ian_at_freebsd.org> wrote:
>>>> 
>>>>> On Fri, 2014-02-14 at 18:35 +0100, Luigi Rizzo wrote:
>>>>> on a freshly checked out HEAD,
>>>>> "make toolchain" followed by "make buildkernel" fails at this stage:
>>>>> 
>>>>>      ...
>>>>>      _at_ -> /usr/home/luigi/FreeBSD/head/sys
>>>>>      machine -> /usr/home/luigi/FreeBSD/head/sys/amd64/include
>>>>>      x86 -> /usr/home/luigi/FreeBSD/head/sys/x86/include
>>>>>      Error: aic7xxx_reg_print.c is missing.  Run 'make ahcfirmware'
>>>>>      Error: aic7xxx_seq.h is missing.  Run 'make ahcfirmware'
>>>>>      Error: aic7xxx_reg.h is missing.  Run 'make ahcfirmware'
>>>>> 
>>>>> (don't think it matters, but i am cross compiling amd64
>>>>> from a stable/9 amd64 system, using clang).
>>>>> I am not sure which commit triggered the problem,
>>>>> but this used to work in the past -- toolchain was enough
>>>>> to build a kernel.
>>>>> 
>>>>> cheers
>>>>> luigi
>>>> 
>>>> That should be 'make kernel-toolchain', shouldn't it?
>>> 
>>> nope, fails with kernel-toolchain as well.
>>> I need to do a full buildworld to avoid this problem.
>>> 
>>> cheers
>>> luigi
>> 
>> This all used to work when cross-building from older systems, but there
>> were some changes recently to get rid of the whole process of compiling
>> the aicasm tool.  There's supposed to be some sort of binary firmware
>> blob involved now.
>> 
>> Did you try what the error message recommended (make ahcfirmware)?
> 
> i have not tried partly for laziness partly because usually
> these suggestions require the command to run in the
> cross-building environment.
> 
> But i guess my point is that building aicasm should be
> part of kernel-toolchain (or whatever the target is for
> "all the tools we need to build a kernel").
> 
> Now, if aicasm is not changing we can perhaps try to
> reuse the one in the host environment, in which
> case i'd first try to support the same feature to
> avoid rebuilding clang or gcc.


The actual problem is old make. Old make doesn't parse this construct right, but new make does. That's why some people hit it and others don't. The right answer isn't to make aicasm a tool (which I tried and it failed the same way). It would be better to disable these targets for old make.

Warner

> thanks
> luigi
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
Received on Wed Feb 19 2014 - 04:16:25 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:47 UTC