X-Git-Url: http://gitweb/?a=blobdiff_plain;f=Makefile;h=451630bf6d81f44a43f4bec19ad5f45169513b9f;hb=8dd27051b13145400355452949eb805f9116863e;hp=f664b46377d1cd0f76bd50a096cf0fa4796ca183;hpb=cacea90b434f55f9584128e18bab6d3370a4b4dc;p=kernel%2Fefikamx.git

diff --git a/Makefile b/Makefile
index f664b46..451630b 100644
--- a/Makefile
+++ b/Makefile
@@ -4,11 +4,11 @@
 
 TARGET = arm-crux-linux-gnueabi
 
-TOPDIR = $(shell pwd)
+PWD = $(shell pwd)
 WORK = $(PWD)/work
-CROSSTOOLS = $(TOPDIR)/../../toolchain/crosstools
+CROSSTOOLS = $(PWD)/../../toolchain/crosstools
 
-KERNEL_VERSION = 2.6.31.14.22-efikamx_20110510
+KERNEL_VERSION = 2.6.31.14.27-efikamx_20111026
 
 .PHONY: all clean image modules map config
 
@@ -17,34 +17,34 @@ all: image modules map
 clean: image-clean modules-clean map-clean
 
 distclean: clean image-distclean modules-distclean map-distclean
-	rm -vrf $(WORK)/linux-$(KERNEL_VERSION)
-
-$(WORK)/mkimage: 
-	wget -P $(WORK) http://crux-arm.nu/files/devices/efikamx/mkimage
-	chmod u+x $(WORK)/mkimage
 
 $(WORK)/linux-$(KERNEL_VERSION).tar.bz2:
 	wget -P $(WORK) http://crux-arm.nu/files/distfiles/efikamx/linux-$(KERNEL_VERSION).tar.bz2
 
-$(WORK)/linux-$(KERNEL_VERSION): $(TOPDIR)/config-$(KERNEL_VERSION) $(WORK)/mkimage $(WORK)/linux-$(KERNEL_VERSION).tar.bz2
+$(WORK)/linux-$(KERNEL_VERSION): $(WORK)/linux-$(KERNEL_VERSION).tar.bz2 $(PWD)/config-$(KERNEL_VERSION)
 	tar -C $(WORK) -xvjf $(WORK)/linux-$(KERNEL_VERSION).tar.bz2
-	cp -v $(TOPDIR)/config-$(KERNEL_VERSION) $(WORK)/linux-$(KERNEL_VERSION)/.config
+	cd $(WORK) && \
+		patch -p1 -i $(WORK)/Makefile_arm_unaligned.diff && \
+		sed -e 's|`whoami`|devel|' -e 's|`hostname .*`|crux-arm.nu|' -i linux-$(KERNEL_VERSION)/scripts/mkcompile_h
+	cp -v $(PWD)/config-$(KERNEL_VERSION) $(WORK)/linux-$(KERNEL_VERSION)/.config
 	touch $(WORK)/linux-$(KERNEL_VERSION)
 
-$(WORK)/uImage-$(KERNEL_VERSION): $(WORK)/linux-$(KERNEL_VERSION)
+$(WORK)/zImage-$(KERNEL_VERSION): $(WORK)/linux-$(KERNEL_VERSION)
 	cd $(WORK)/linux-$(KERNEL_VERSION) && \
-		export PATH=$(CROSSTOOLS)/bin:$(WORK):$$PATH && \
+		export PATH=$(CROSSTOOLS)/bin:$$PATH && \
 		export LD_LIBRARY_PATH=$(CROSSTOOLS)/lib:$$LD_LIBRARY_PATH && \
-		make uImage ARCH=arm CROSS_COMPILE=$(TARGET)- 
-	cp -v $(WORK)/linux-$(KERNEL_VERSION)/arch/arm/boot/uImage $(WORK)/uImage-$(KERNEL_VERSION)
-	touch $(WORK)/uImage-$(KERNEL_VERSION)
+		make zImage ARCH=arm CROSS_COMPILE=$(TARGET)-
+	cp -v $(WORK)/linux-$(KERNEL_VERSION)/arch/arm/boot/zImage $(WORK)/zImage-$(KERNEL_VERSION)
+	ln -sf zImage-$(KERNEL_VERSION) $(WORK)/zImage
+	touch $(WORK)/zImage-$(KERNEL_VERSION)
 
-image: $(WORK)/uImage-$(KERNEL_VERSION)
+image: $(WORK)/zImage-$(KERNEL_VERSION)
 
 image-clean:
-	rm -vf $(WORK)/uImage-$(KERNEL_VERSION)
+	rm -vf $(WORK)/zImage-$(KERNEL_VERSION)
 
 image-distclean: image-clean
+	rm -vrf $(WORK)/linux-$(KERNEL_VERSION) $(WORK)/linux-$(KERNEL_VERSION).tar.bz2
 
 $(WORK)/modules-$(KERNEL_VERSION): $(WORK)/linux-$(KERNEL_VERSION)
 	cd $(WORK)/linux-$(KERNEL_VERSION) && \
@@ -55,10 +55,15 @@ $(WORK)/modules-$(KERNEL_VERSION): $(WORK)/linux-$(KERNEL_VERSION)
 	rm -f $(WORK)/modules-$(KERNEL_VERSION)/lib/modules/$(KERNEL_VERSION)/{source,build}
 	touch $(WORK)/modules-$(KERNEL_VERSION)
 
-modules: $(WORK)/modules-$(KERNEL_VERSION)
+$(WORK)/modules-$(KERNEL_VERSION).tar.xz: $(WORK)/modules-$(KERNEL_VERSION)
+	cd $(WORK)/modules-$(KERNEL_VERSION) && \
+		tar cvJf $(WORK)/modules-$(KERNEL_VERSION).tar.xz *
+	touch $(WORK)/modules-$(KERNEL_VERSION).tar.xz
+
+modules: $(WORK)/modules-$(KERNEL_VERSION).tar.xz
 
 modules-clean:
-	rm -vrf $(WORK)/modules-$(KERNEL_VERSION)
+	rm -vrf $(WORK)/modules-$(KERNEL_VERSION) $(WORK)/modules-$(KERNEL_VERSION).tar.xz
 
 modules-distclean: modules-clean