Skip to contentSkip to conversation

fix 2.4.x ieee1394

PATCH In review Erik Andersen 4 participants 7 messages Dec 22, 2002 – Dec 31, 2002 1 message not in the archive Kbuild

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

PATCH 1/1 fix 2.4.x ieee1394

Quoted 10 lines · linux-kernel

ChangeSet 1.901, 2002/12/17 14:14:22-02:00, [email protected]

[PATCH] Linux1394 Firewire

Syncs to our Linux-2.4 branch. Mostly bug fixes. I'll start sending more frequent and mmore verbose patches.

# This patch includes the following deltas:
# ChangeSet 1.900 -> 1.901

[-------------snip---------]

drivers/ieee1394/Makefile line 6

Quoted 9 lines

diff -Nru a/drivers/ieee1394/Makefile b/drivers/ieee1394/Makefile

drivers/ieee1394/Makefile +0 -2
@@ -2,11 +2,8 @@
 # Makefile for the Linux IEEE 1394 implementation
 #
 
-O_TARGET := ieee1394drv.o
-

After this change, firewire doesn't build for me when adding 1394 stuff directly into the kernel, i.e.

    CONFIG_IEEE1394=y
    CONFIG_IEEE1394_OHCI1394=m
    CONFIG_IEEE1394_SBP2=m
    CONFIG_IEEE1394_RAWIO=y

The top level kernel Makefile has:

    DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o

but there is no longer a ieee1394drv.o target. This patch fixes the problem.

Makefile renamed from Makefile.orig +1 -1
@@ -153,7 +153,7 @@
 DRIVERS-$(CONFIG_FC4) += drivers/fc4/fc4.a
 DRIVERS-$(CONFIG_SCSI) += drivers/scsi/scsidrv.o
 DRIVERS-$(CONFIG_FUSION_BOOT) += drivers/message/fusion/fusion.o
-DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o
+DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394.o
 
 ifneq ($(CONFIG_CD_NO_IDESCSI)$(CONFIG_BLK_DEV_IDECD)$(CONFIG_BLK_DEV_SR)$(CONFIG_PARIDE_PCD),)
 DRIVERS-y += drivers/cdrom/driver.o

-Erik

--
Erik B. Andersen http://codepoet-consulting.com/
--This message was written using 73% post-consumer electrons--

#2 lore raw
Quoted 9 lines

After this change, firewire doesn't build for me when adding 1394 stuff directly into the kernel, i.e.

    CONFIG_IEEE1394=y
    CONFIG_IEEE1394_OHCI1394=m
    CONFIG_IEEE1394_SBP2=m
    CONFIG_IEEE1394_RAWIO=y
Quoted 4 lines

The top level kernel Makefile has:

    DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o

but there is no longer a ieee1394drv.o target. This patch fixes the problem.

Thanks Erik. I like this fix better than adding the cruft back into the ieee1394 Makefile.

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
Deqo       - http://www.deqo.com/
#3 lore raw
In reply to Erik Andersen
Quoted 19 lines · Erik Andersen

On Tue Dec 17, 2002 at 04:14:22PM +0000, linux-kernel wrote:
...

drivers/ieee1394/Makefile line 6

Quoted 8 lines
drivers/ieee1394/Makefile +0 -2
@@ -2,11 +2,8 @@
 # Makefile for the Linux IEEE 1394 implementation
 #
 
-O_TARGET := ieee1394drv.o
-

After this change, firewire doesn't build for me when adding 1394 stuff directly into the kernel, i.e.

    CONFIG_IEEE1394=y
    CONFIG_IEEE1394_OHCI1394=m
    CONFIG_IEEE1394_SBP2=m
    CONFIG_IEEE1394_RAWIO=y
Quoted 5 lines

The top level kernel Makefile has:

    DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o

but there is no longer a ieee1394drv.o target. This patch fixes the problem.
...

When I try 2.4.21-pre2 with your patch and the IEEE 1394 options you mention in your mail _nothing_ gets built inside the drivers/ieee1394 directory and the error message at the final linking is:

<-- snip -->

...
-o vmlinux
ld: cannot open drivers/ieee1394/ieee1394.o: No such file or directory
make: *** [vmlinux] Error 1

<-- snip -->

How did you manage to get a kernel that actually compiles?

Quoted 1 line

-Erik

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#4 lore raw
Quoted 11 lines · Adrian Bunk

When I try 2.4.21-pre2 with your patch and the IEEE 1394 options you mention in your mail _nothing_ gets built inside the drivers/ieee1394 directory and the error message at the final linking is:

<-- snip -->

...
-o vmlinux
ld: cannot open drivers/ieee1394/ieee1394.o: No such file or directory
make: *** [vmlinux] Error 1

Quoted 5 lines

<-- snip -->

How did you manage to get a kernel that actually compiles?

Sorry about that. I missed a spot. Here is the full fix:

drivers/ieee1394/Makefile renamed from drivers/ieee1394/Makefile.orig +3 -2
@@ -18,7 +18,8 @@
 obj-$(CONFIG_IEEE1394_AMDTP) += amdtp.o
 obj-$(CONFIG_IEEE1394_CMP) += cmp.o
 
-include $(TOPDIR)/Rules.make
-
 ieee1394.o: $(ieee1394-objs)
 	$(LD) $(LDFLAGS) -r -o $@ $(ieee1394-objs)
+
+include $(TOPDIR)/Rules.make
+
Makefile renamed from Makefile.orig +1 -1
@@ -153,7 +153,7 @@
 DRIVERS-$(CONFIG_FC4) += drivers/fc4/fc4.a
 DRIVERS-$(CONFIG_SCSI) += drivers/scsi/scsidrv.o
 DRIVERS-$(CONFIG_FUSION_BOOT) += drivers/message/fusion/fusion.o
-DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o
+DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394.o
 
 ifneq ($(CONFIG_CD_NO_IDESCSI)$(CONFIG_BLK_DEV_IDECD)$(CONFIG_BLK_DEV_SR)$(CONFIG_PARIDE_PCD),)
 DRIVERS-y += drivers/cdrom/driver.o

-Erik

--
Erik B. Andersen http://codepoet-consulting.com/
--This message was written using 73% post-consumer electrons--

#5 lore raw
Quoted 2 lines

Sorry about that. I missed a spot. Here is the full fix:

Thanks. I commited my portion.

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
Deqo       - http://www.deqo.com/
#6 lore raw
Quoted 4 lines · Ben Collins
Quoted 2 lines

Sorry about that. I missed a spot. Here is the full fix:

Thanks. I commited my portion.

I don't consider myself in charge for 2.4 kbuild, but I'm pretty sure all of these fixes are wrong, they won't work when more than just the core (ieee1394.o) is built-in. Reverting to the old Makefile seems the easiest and obvious fix.

--Kai

#7 lore raw
In reply to Erik Andersen
Quoted 12 lines · Erik Andersen
Quoted 11 lines · Adrian Bunk

When I try 2.4.21-pre2 with your patch and the IEEE 1394 options you mention in your mail _nothing_ gets built inside the drivers/ieee1394 directory and the error message at the final linking is:

<-- snip -->

...
-o vmlinux
ld: cannot open drivers/ieee1394/ieee1394.o: No such file or directory
make: *** [vmlinux] Error 1

Quoted 8 lines
Quoted 5 lines

<-- snip -->

How did you manage to get a kernel that actually compiles?

Sorry about that. I missed a spot. Here is the full fix:
...

Thanks, I can confirm that this patch fixes it.

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed