From bbc4c104652009f01d9c72278fb30bb69ec83601 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Sun, 6 Jan 2008 02:12:37 +0000
Subject: [PATCH] Remove LINUX_2_6 dependency from qc-usb

This patch removes LINUX_2_6 dependency from qc-usb for those of us who
still have broadcom chipsets as qc-usb works fine on LINUX_2_4 too. This
compiles with both 2.4 and 2.6 kernels selected, and although i do not
have a Kamikaze svn system, the same changes (albeit without the new
package name changes in svn vs 7.09) work fine on my running 2.4 system
with a Quickcam Express card (older model).

Signed-off-by: Misha Koshelev <mk144210 at bcm dot edu>

SVN-Revision: 10123
---
 package/qc-usb/Makefile | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/package/qc-usb/Makefile b/package/qc-usb/Makefile
index 57f63941f0..ff41469b32 100644
--- a/package/qc-usb/Makefile
+++ b/package/qc-usb/Makefile
@@ -39,7 +39,7 @@ define KernelPackage/video-quickcam
 $(call Package/qc-usb/Default)
   SUBMENU:=Video Support
   TITLE:=QuickCam Express USB webcam support
-  DEPENDS:=@LINUX_2_6 @USB_SUPPORT +kmod-usb-core kmod-video-core
+  DEPENDS:=@USB_SUPPORT +kmod-usb-core kmod-video-core
   FILES:=$(PKG_BUILD_DIR)/quickcam.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,90,quickcam)
 endef
@@ -49,13 +49,25 @@ define KernelPackage/video-quickcam/description
  with similar chipsets.
 endef
 
+ifeq ($(KERNEL),2.4)
+  ifeq ($(LINUX_KARCH),i386)
+    KERNEL_C_OPTS:= -Os -mpreferred-stack-boundary=2 -march=i486 -fno-unit-at-a-time
+  endif
+  ifeq ($(LINUX_KARCH),mips)
+    KERNEL_C_OPTS:= -Os -G 0 -mlong-calls -mno-abicalls -fno-pic -finline-limit=100000 -mabi=32 -march=mips32 -Wa,-32 -Wa,-march=mips32 -Wa,-mips32 -Wa,--trap
+  endif
+endif
+
 ifneq ($(CONFIG_PACKAGE_kmod-video-quickcam),)
   define Build/Compile/kmod
-	$(MAKE) -C $(LINUX_DIR) \
+	$(MAKE) -C $(PKG_BUILD_DIR) \
+		LINUX_DIR="$(LINUX_DIR)" \
 		ARCH="$(LINUX_KARCH)" \
 		CROSS_COMPILE="$(TARGET_CROSS)" \
-		SUBDIRS="$(PKG_BUILD_DIR)" \
-		modules
+		CC="$(TARGET_CC)" \
+		LD="$(TARGET_CC) -nodefaultlibs -nostartfiles" \
+		USER_OPT="$(KERNEL_C_OPTS)" \
+		quickcam.$(LINUX_KMOD_SUFFIX)
   endef
 endif
 
-- 
GitLab