All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
@ 2007-10-25 16:43 Fillod Stephane
  2007-10-25 16:53 ` Jan Kiszka
  0 siblings, 1 reply; 5+ messages in thread
From: Fillod Stephane @ 2007-10-25 16:43 UTC (permalink / raw)
  To: Robert Gubler, xenomai

Robert Gubler wrote:
[...]
>   AS      arch/i386/boot/compressed/head.o
>   CC      arch/i386/boot/compressed/misc.o 
> In file included from include/linux/ipipe_base.h:29,
>                  from include/linux/kernel.h:17,
>                  from include/asm/system.h:4,
>                  from include/asm/processor.h:18, 
>                  from include/asm/thread_info.h:16,
>                  from include/linux/thread_info.h:21,
>                  from include/linux/preempt.h:9,
>                  from include/linux/spinlock.h:49, 
>                  from include/linux/vmalloc.h:4,
>                  from arch/i386/boot/compressed/misc.c:14:
> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
> directory
> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
> make: *** [bzImage] Error 2

I had the same issue with this setup(*). It went away when I switched 
the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.

setup:
linux-2.6.23.1.tar.bz2
xenomai-2.4-rc4.tar.bz2
adeos-ipipe-2.6.23-i386-1.10-10.patch

If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.

BTW, I had also to patch include/asm-i386/mach-default/mach_time.h,
adding a missing #include <linux/bcd.h> for BCD macros.

-- 
Stephane


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
  2007-10-25 16:43 [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23 Fillod Stephane
@ 2007-10-25 16:53 ` Jan Kiszka
  2007-10-25 17:20   ` Philippe Gerum
  0 siblings, 1 reply; 5+ messages in thread
From: Jan Kiszka @ 2007-10-25 16:53 UTC (permalink / raw)
  To: Fillod Stephane; +Cc: xenomai

[-- Attachment #1: Type: text/plain, Size: 1902 bytes --]

Fillod Stephane wrote:
> Robert Gubler wrote:
> [...]
>>    AS      arch/i386/boot/compressed/head.o
>>    CC      arch/i386/boot/compressed/misc.o 
>> In file included from include/linux/ipipe_base.h:29,
>>                   from include/linux/kernel.h:17,
>>                   from include/asm/system.h:4,
>>                   from include/asm/processor.h:18, 
>>                   from include/asm/thread_info.h:16,
>>                   from include/linux/thread_info.h:21,
>>                   from include/linux/preempt.h:9,
>>                   from include/linux/spinlock.h:49, 
>>                   from include/linux/vmalloc.h:4,
>>                   from arch/i386/boot/compressed/misc.c:14:
>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>> directory
>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
>> make: *** [bzImage] Error 2
> 
> I had the same issue with this setup(*). It went away when I switched 
> the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
> 
> setup:
> linux-2.6.23.1.tar.bz2
> xenomai-2.4-rc4.tar.bz2
> adeos-ipipe-2.6.23-i386-1.10-10.patch
> 
> If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.

The attached patch fixes it (failed to find the time for posting it
earlier, sorry). Philippe, we do need my original version here, mflags-y
is not enough (actually, it is not needed now).

> 
> BTW, I had also to patch include/asm-i386/mach-default/mach_time.h,
> adding a missing #include <linux/bcd.h> for BCD macros.
> 

That doesn't tell me anything. Also with the default .config and
X86_GENERIC? Otherwise, please provide the involved .config.

Jan

-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux

[-- Attachment #2: fix-CONFIG_X86_GENERIC.patch --]
[-- Type: text/x-patch, Size: 593 bytes --]

Index: linux-2.6.23/arch/i386/boot/compressed/Makefile
===================================================================
--- linux-2.6.23.orig/arch/i386/boot/compressed/Makefile
+++ linux-2.6.23/arch/i386/boot/compressed/Makefile
@@ -11,7 +11,7 @@ EXTRA_AFLAGS	:= -traditional
 LDFLAGS_vmlinux := -T
 hostprogs-y	:= relocs
 
-CFLAGS  := -m32 -D__KERNEL__ $(LINUXINCLUDE) $(mflags-y) -O2 \
+CFLAGS  := -m32 -D__KERNEL__ $(LINUXINCLUDE) -Iinclude/asm-i386/mach-default -O2 \
 	   -fno-strict-aliasing -fPIC \
 	   $(call cc-option,-ffreestanding) \
 	   $(call cc-option,-fno-stack-protector)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
  2007-10-25 16:53 ` Jan Kiszka
@ 2007-10-25 17:20   ` Philippe Gerum
  2007-10-25 17:40     ` Jan Kiszka
  0 siblings, 1 reply; 5+ messages in thread
From: Philippe Gerum @ 2007-10-25 17:20 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: xenomai

Jan Kiszka wrote:
> Fillod Stephane wrote:
>> Robert Gubler wrote:
>> [...]
>>>    AS      arch/i386/boot/compressed/head.o
>>>    CC      arch/i386/boot/compressed/misc.o 
>>> In file included from include/linux/ipipe_base.h:29,
>>>                   from include/linux/kernel.h:17,
>>>                   from include/asm/system.h:4,
>>>                   from include/asm/processor.h:18, 
>>>                   from include/asm/thread_info.h:16,
>>>                   from include/linux/thread_info.h:21,
>>>                   from include/linux/preempt.h:9,
>>>                   from include/linux/spinlock.h:49, 
>>>                   from include/linux/vmalloc.h:4,
>>>                   from arch/i386/boot/compressed/misc.c:14:
>>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>>> directory
>>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
>>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
>>> make: *** [bzImage] Error 2
>> I had the same issue with this setup(*). It went away when I switched 
>> the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
>>
>> setup:
>> linux-2.6.23.1.tar.bz2
>> xenomai-2.4-rc4.tar.bz2
>> adeos-ipipe-2.6.23-i386-1.10-10.patch
>>
>> If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
>> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.
> 
> The attached patch fixes it (failed to find the time for posting it
> earlier, sorry). Philippe, we do need my original version here, mflags-y
> is not enough (actually, it is not needed now).

The proper fix is the one below. Forcing mach-default as your patch does
would prevent the per-platform overrides to happen for some headers,
like irq_vectors.h. We do need the contents of mflags-y to be passed to
the leaf Makefile, verbatim. It's only a matter of proper quoting of
theisvariable when running make recursively, actually.

diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
index f78f5fe..4e6a230 100644
--- a/arch/i386/boot/Makefile
+++ b/arch/i386/boot/Makefile
@@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
 	$(call if_changed,objcopy)

 $(obj)/compressed/vmlinux: FORCE
-	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
IMAGE_OFFSET=$(IMAGE_OFFSET) $@
+	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
IMAGE_OFFSET=$(IMAGE_OFFSET) $@

 # Set this if you want to pass append arguments to the
zdisk/fdimage/isoimage kernel
 FDARGS =
{rpm@xenomai.org} git diff arch/i386
diff --git a/arch/i386/Makefile b/arch/i386/Makefile
index 3b17aed..1fc6175 100644
--- a/arch/i386/Makefile
+++ b/arch/i386/Makefile
@@ -128,7 +128,7 @@ all: bzImage
 zImage zlilo zdisk: KBUILD_IMAGE := arch/i386/boot/zImage

 zImage bzImage: vmlinux
-	$(Q)$(MAKE) $(build)=$(boot) mflags-y=$(mflags-y) $(KBUILD_IMAGE)
+	$(Q)$(MAKE) $(build)=$(boot) mflags-y="$(mflags-y)" $(KBUILD_IMAGE)

 compressed: zImage

diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
index f78f5fe..4e6a230 100644
--- a/arch/i386/boot/Makefile
+++ b/arch/i386/boot/Makefile
@@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
 	$(call if_changed,objcopy)

 $(obj)/compressed/vmlinux: FORCE
-	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
IMAGE_OFFSET=$(IMAGE_OFFSET) $@
+	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
IMAGE_OFFSET=$(IMAGE_OFFSET) $@

 # Set this if you want to pass append arguments to the
zdisk/fdimage/isoimage kernel
 FDARGS =

-- 
Philippe.


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
  2007-10-25 17:20   ` Philippe Gerum
@ 2007-10-25 17:40     ` Jan Kiszka
  2007-10-25 19:37       ` Robert Gubler
  0 siblings, 1 reply; 5+ messages in thread
From: Jan Kiszka @ 2007-10-25 17:40 UTC (permalink / raw)
  To: rpm; +Cc: xenomai

Philippe Gerum wrote:
> Jan Kiszka wrote:
>> Fillod Stephane wrote:
>>> Robert Gubler wrote:
>>> [...]
>>>>    AS      arch/i386/boot/compressed/head.o
>>>>    CC      arch/i386/boot/compressed/misc.o 
>>>> In file included from include/linux/ipipe_base.h:29,
>>>>                   from include/linux/kernel.h:17,
>>>>                   from include/asm/system.h:4,
>>>>                   from include/asm/processor.h:18, 
>>>>                   from include/asm/thread_info.h:16,
>>>>                   from include/linux/thread_info.h:21,
>>>>                   from include/linux/preempt.h:9,
>>>>                   from include/linux/spinlock.h:49, 
>>>>                   from include/linux/vmalloc.h:4,
>>>>                   from arch/i386/boot/compressed/misc.c:14:
>>>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>>>> directory
>>>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
>>>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
>>>> make: *** [bzImage] Error 2
>>> I had the same issue with this setup(*). It went away when I switched 
>>> the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
>>>
>>> setup:
>>> linux-2.6.23.1.tar.bz2
>>> xenomai-2.4-rc4.tar.bz2
>>> adeos-ipipe-2.6.23-i386-1.10-10.patch
>>>
>>> If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
>>> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.
>> The attached patch fixes it (failed to find the time for posting it
>> earlier, sorry). Philippe, we do need my original version here, mflags-y
>> is not enough (actually, it is not needed now).
> 
> The proper fix is the one below. Forcing mach-default as your patch does
> would prevent the per-platform overrides to happen for some headers,
> like irq_vectors.h. We do need the contents of mflags-y to be passed to
> the leaf Makefile, verbatim. It's only a matter of proper quoting of
> theisvariable when running make recursively, actually.
> 
> diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> index f78f5fe..4e6a230 100644
> --- a/arch/i386/boot/Makefile
> +++ b/arch/i386/boot/Makefile
> @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
>  	$(call if_changed,objcopy)
> 
>  $(obj)/compressed/vmlinux: FORCE
> -	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> +	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> 
>  # Set this if you want to pass append arguments to the
> zdisk/fdimage/isoimage kernel
>  FDARGS =
> {rpm@xenomai.org} git diff arch/i386
> diff --git a/arch/i386/Makefile b/arch/i386/Makefile
> index 3b17aed..1fc6175 100644
> --- a/arch/i386/Makefile
> +++ b/arch/i386/Makefile
> @@ -128,7 +128,7 @@ all: bzImage
>  zImage zlilo zdisk: KBUILD_IMAGE := arch/i386/boot/zImage
> 
>  zImage bzImage: vmlinux
> -	$(Q)$(MAKE) $(build)=$(boot) mflags-y=$(mflags-y) $(KBUILD_IMAGE)
> +	$(Q)$(MAKE) $(build)=$(boot) mflags-y="$(mflags-y)" $(KBUILD_IMAGE)
> 
>  compressed: zImage
> 
> diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> index f78f5fe..4e6a230 100644
> --- a/arch/i386/boot/Makefile
> +++ b/arch/i386/boot/Makefile
> @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
>  	$(call if_changed,objcopy)
> 
>  $(obj)/compressed/vmlinux: FORCE
> -	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> +	$(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> 
>  # Set this if you want to pass append arguments to the
> zdisk/fdimage/isoimage kernel
>  FDARGS =
> 

Ack, it's cleaner. Still, the actual problem is the for boot/compressed/
unneeded, but probably unavoidable indirect inclusion of ipipe_base.h.

Jan

-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
  2007-10-25 17:40     ` Jan Kiszka
@ 2007-10-25 19:37       ` Robert Gubler
  0 siblings, 0 replies; 5+ messages in thread
From: Robert Gubler @ 2007-10-25 19:37 UTC (permalink / raw)
  To: xenomai

[-- Attachment #1: Type: text/plain, Size: 4251 bytes --]

I got it working.  Thanks for the help everyone.

-Rob

On 10/25/07, Jan Kiszka <jan.kiszka@domain.hid> wrote:
>
> Philippe Gerum wrote:
> > Jan Kiszka wrote:
> >> Fillod Stephane wrote:
> >>> Robert Gubler wrote:
> >>> [...]
> >>>>    AS      arch/i386/boot/compressed/head.o
> >>>>    CC      arch/i386/boot/compressed/misc.o
> >>>> In file included from include/linux/ipipe_base.h:29,
> >>>>                   from include/linux/kernel.h:17,
> >>>>                   from include/asm/system.h:4,
> >>>>                   from include/asm/processor.h:18,
> >>>>                   from include/asm/thread_info.h:16,
> >>>>                   from include/linux/thread_info.h:21,
> >>>>                   from include/linux/preempt.h:9,
> >>>>                   from include/linux/spinlock.h:49,
> >>>>                   from include/linux/vmalloc.h:4,
> >>>>                   from arch/i386/boot/compressed/misc.c:14:
> >>>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>
> >>>> directory
> >>>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
> >>>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
> >>>> make: *** [bzImage] Error 2
> >>> I had the same issue with this setup(*). It went away when I switched
> >>> the subarch from CONFIG_X86_GENERICARCH (default with FC) to
> CONFIG_X86_PC.
> >>>
> >>> setup:
> >>> linux-2.6.23.1.tar.bz2
> >>> xenomai-2.4-rc4.tar.bz2
> >>> adeos-ipipe-2.6.23-i386-1.10-10.patch
> >>>
> >>> If you do need GENERICARCH, you can tweak
> arch/i386/boot/compressed/Makefile
> >>> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to
> CFLAGS.
> >> The attached patch fixes it (failed to find the time for posting it
> >> earlier, sorry). Philippe, we do need my original version here,
> mflags-y
> >> is not enough (actually, it is not needed now).
> >
> > The proper fix is the one below. Forcing mach-default as your patch does
> > would prevent the per-platform overrides to happen for some headers,
> > like irq_vectors.h. We do need the contents of mflags-y to be passed to
> > the leaf Makefile, verbatim. It's only a matter of proper quoting of
> > theisvariable when running make recursively, actually.
> >
> > diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> > index f78f5fe..4e6a230 100644
> > --- a/arch/i386/boot/Makefile
> > +++ b/arch/i386/boot/Makefile
> > @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
> >       $(call if_changed,objcopy)
> >
> >  $(obj)/compressed/vmlinux: FORCE
> > -     $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> > +     $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> >
> >  # Set this if you want to pass append arguments to the
> > zdisk/fdimage/isoimage kernel
> >  FDARGS =
> > {rpm@xenomai.org} git diff arch/i386
> > diff --git a/arch/i386/Makefile b/arch/i386/Makefile
> > index 3b17aed..1fc6175 100644
> > --- a/arch/i386/Makefile
> > +++ b/arch/i386/Makefile
> > @@ -128,7 +128,7 @@ all: bzImage
> >  zImage zlilo zdisk: KBUILD_IMAGE := arch/i386/boot/zImage
> >
> >  zImage bzImage: vmlinux
> > -     $(Q)$(MAKE) $(build)=$(boot) mflags-y=$(mflags-y) $(KBUILD_IMAGE)
> > +     $(Q)$(MAKE) $(build)=$(boot) mflags-y="$(mflags-y)"
> $(KBUILD_IMAGE)
> >
> >  compressed: zImage
> >
> > diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> > index f78f5fe..4e6a230 100644
> > --- a/arch/i386/boot/Makefile
> > +++ b/arch/i386/boot/Makefile
> > @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
> >       $(call if_changed,objcopy)
> >
> >  $(obj)/compressed/vmlinux: FORCE
> > -     $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> > +     $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> >
> >  # Set this if you want to pass append arguments to the
> > zdisk/fdimage/isoimage kernel
> >  FDARGS =
> >
>
> Ack, it's cleaner. Still, the actual problem is the for boot/compressed/
> unneeded, but probably unavoidable indirect inclusion of ipipe_base.h.
>
> Jan
>
> --
> Siemens AG, Corporate Technology, CT SE 2
> Corporate Competence Center Embedded Linux
>

[-- Attachment #2: Type: text/html, Size: 6439 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2007-10-25 19:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-25 16:43 [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23 Fillod Stephane
2007-10-25 16:53 ` Jan Kiszka
2007-10-25 17:20   ` Philippe Gerum
2007-10-25 17:40     ` Jan Kiszka
2007-10-25 19:37       ` Robert Gubler

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.