X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=lfs%2Flinux;h=b8d0dd8bec2d632468bf0bb614f2f929d61f92e6;hb=7fbc483a76456ca7620c96c8d1dcf7b3a7cb8bc9;hp=dd01d9ec27f07df642760f25c65418326f820ae9;hpb=8c4f3d176b15855e3da914569f669bfd70ff9253;p=ipfire-2.x.git diff --git a/lfs/linux b/lfs/linux index dd01d9ec27..b8d0dd8bec 100644 --- a/lfs/linux +++ b/lfs/linux @@ -24,34 +24,48 @@ include Config -PATCHLEVEL = .43 -VER = 2.6.32.43 +PATCHLEVEL = .45 +VER = 2.6.32.45 THISAPP = linux-$(VER) -DL_FILE = $(THISAPP).tar.bz2 +DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) CFLAGS = CXXFLAGS = -PROG = linux-xen -PAK_VER = 17 +PAK_VER = 19 DEPS = "" # Normal build or XEN build. # -ifeq "$(PAE)" "1" - VERSUFIX=ipfire-pae +VERSUFIX=ipfire$(KCFG) + +ifeq "$(HEADERS)" "1" +ifeq "$(TOOLS)" "1" + TARGET = $(DIR_INFO)/linux-libc-headers-$(VER)-$(VERSUFIX)-tools + HEADERS_PREFIX = /tools else -ifeq "$(XEN)" "1" - VERSUFIX=ipfire-xen + TARGET = $(DIR_INFO)/linux-libc-headers-$(VER)-$(VERSUFIX) + HEADERS_PREFIX = /usr +endif else - VERSUFIX=ipfire + TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX) endif + +ifeq "$(MACHINE_TYPE)" "arm" + HEADERS_ARCH=arm +else + HEADERS_ARCH=x86 endif -TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX) +ifeq "$(KCFG)" "" +LASTKERNEL=1 +endif +ifeq "$(KCFG)" "-kirkwood" +LASTKERNEL=1 +endif ############################################################################### # Top-level Rules @@ -68,7 +82,7 @@ patch-2.6.16-nath323-1.3.bz2 = $(URL_IPFIRE)/patch-2.6.16-nath323-1.3.bz2 reiser4-for-2.6.32.patch.bz2 = $(URL_IPFIRE)/reiser4-for-2.6.32.patch.bz2 xen-patches-2.6.32-2f.tar.bz2 = $(URL_IPFIRE)/xen-patches-2.6.32-2f.tar.bz2 -$(DL_FILE)_MD5 = d6819da012da0d9772ac79da9dce3d63 +$(DL_FILE)_MD5 = d41f1c7e704cc95fdfc3374367b6fd64 netfilter-layer7-v2.22.tar.gz_MD5 = 98dff8a3d5a31885b73341633f69501f patch-2.6.16-nath323-1.3.bz2_MD5 = f926409ff703a307baf54b57ab75d138 reiser4-for-2.6.32.patch.bz2_MD5 = 3246397973d9271eb8e6d7c97c5d2d91 @@ -103,11 +117,11 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) $(DIR_SRC)/linux $(DIR_SRC)/linux-*-suse_xen_patches $(DIR_SRC)/xen-* && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) $(DIR_SRC)/linux $(DIR_SRC)/linux-*-suse_xen_patches $(DIR_SRC)/xen-* && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - ln -s linux-$(VER) /usr/src/linux + ln -svf linux-$(VER) $(DIR_SRC)/linux -ifeq "$(XEN)" "1" +ifeq "$(KCFG)" "-xen" # Apply gentoo Xen patches mkdir -p $(DIR_SRC)/xen-patches cd $(DIR_SRC)/xen-patches && tar jxf $(DIR_DL)/xen-patches-2.6.32-2f.tar.bz2 @@ -125,9 +139,6 @@ else cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32-imq-test2.patch endif - # Patch CVE 2011-1767 and 1768 dos hole - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.43-cve_2011_1767+1768.patch - # Not report deprecated syscall 1.23 (for kudzu) cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.25.18-not_report_sysctl_1.23.patch @@ -152,23 +163,50 @@ endif cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.27_ipg-fix-driver-name.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.27_mcs7830-fix-driver-name.patch +ifeq "$(KCFG)" "-kirkwood" + # Add dreamplug,guruplug and icy 62x0 support on ARM-kirkwood + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.45-arm_kirkwood_setups.patch +endif + +ifeq "$(MACHINE_TYPE)" "arm" + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.45_align_ssb_modtable_32bit_boundary.patch +endif + +ifeq "$(HEADERS)" "1" + # Install the header files + cd $(DIR_APP) && make ARCH=$(HEADERS_ARCH) INSTALL_HDR_PATH=dest headers_install + -mkdir -pv $(BUILDROOT)/$(HEADERS_PREFIX)/include + cd $(DIR_APP) && find dest/include \( -name .install -o -name ..install.cmd \) -delete + cd $(DIR_APP) && cp -rv dest/include/* $(BUILDROOT)/$(HEADERS_PREFIX)/include +else + # Install ipfire logo cd $(DIR_APP) && cp -vf $(DIR_SRC)/config/kernel/ipfire_logo.ppm \ drivers/video/logo/logo_linux_clut224.ppm # Cleanup kernel source - cp $(DIR_SRC)/config/kernel/kernel.config.$(MACHINE)-$(VERSUFIX) $(DIR_APP)/.config cd $(DIR_APP) && make CC="$(KGCC)" oldconfig cd $(DIR_APP) && make CC="$(KGCC)" clean cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ $(PATCHLEVEL)-$(VERSUFIX)/' Makefile -ifeq "$(XEN)" "1" +ifeq "$(KCFG)" "-xen" cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" vmlinuz cd $(DIR_APP) && cp -v arch/i386/boot/vmlinuz /boot/vmlinuz-$(VER)-$(VERSUFIX) +else +ifeq "$(KCFG)" "-kirkwood" + cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" uImage + cd $(DIR_APP) && cp -v arch/arm/boot/uImage /boot/vmlinuz-$(VER)-$(VERSUFIX) + cd $(DIR_APP) && cp -v arch/arm/boot/uImage /boot/uImage-$(VERSUFIX) +else +ifeq "$(KCFG)" "-versatile" + cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" zImage + cd $(DIR_APP) && cp -v arch/arm/boot/zImage /boot/vmlinuz-$(VER)-$(VERSUFIX) else cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" bzImage cd $(DIR_APP) && cp -v arch/i386/boot/bzImage /boot/vmlinuz-$(VER)-$(VERSUFIX) +endif +endif endif cd $(DIR_APP) && cp -v System.map /boot/System.map-$(VER)-$(VERSUFIX) cd $(DIR_APP) && cp -v .config /boot/config-$(VER)-$(VERSUFIX) @@ -178,9 +216,8 @@ endif cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) modules_install cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) firmware_install -ifneq "$(PAE)" "1" -ifneq "$(XEN)" "1" - # Only do this once on the standard kernel pass +ifeq "$(LASTKERNEL)" "1" + # Only do this once cd $(DIR_APP) && install -m 755 usr/gen_init_cpio /sbin/ # Blacklist matroxfb_base @@ -203,17 +240,18 @@ ifneq "$(XEN)" "1" # Disable ipv6 at runtime echo "options ipv6 disable_ipv6=1" > /etc/modprobe.d/ipv6 - -endif endif # Remove mISDN modules rm -rvf /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/isdn/mISDN rm -rvf /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/isdn/hardware/mISDN +ifneq "$(MACHINE_TYPE)" "arm" # Disable geode_aes modul mv /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/crypto/geode-aes.ko \ /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/crypto/geode-aes.ko.off +endif +endif @rm -rf $(DIR_SRC)/patch-o-matic* $(DIR_SRC)/iptables* $(DIR_SRC)/squashfs* $(DIR_SRC)/netfilter-layer7-* @$(POSTBUILD)