###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2010 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-PATCHLEVEL = .28
-VER = 2.6.32.28
+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 = 16
+PAK_VER = 19
DEPS = ""
# Normal build or XEN build.
endif
endif
-TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX)
+ifeq "$(HEADERS)" "1"
+ifeq "$(TOOLS)" "1"
+ TARGET = $(DIR_INFO)/linux-libc-headers-$(VER)-$(VERSUFIX)-tools
+ HEADERS_PREFIX = /tools
+else
+ TARGET = $(DIR_INFO)/linux-libc-headers-$(VER)-$(VERSUFIX)
+ HEADERS_PREFIX = /usr
+endif
+else
+ TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX)
+endif
+
+ifeq "$(MACHINE_TYPE)" "arm"
+ HEADERS_ARCH=arm
+else
+ HEADERS_ARCH=x86
+endif
###############################################################################
# Top-level Rules
netfilter-layer7-v2.22.tar.gz \
patch-2.6.16-nath323-1.3.bz2 \
reiser4-for-2.6.32.patch.bz2 \
- xen-patches-2.6.32-2d.tar.bz2
+ xen-patches-2.6.32-2f.tar.bz2
$(DL_FILE) = $(URL_IPFIRE)/$(DL_FILE)
netfilter-layer7-v2.22.tar.gz = $(URL_IPFIRE)/netfilter-layer7-v2.22.tar.gz
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-2d.tar.bz2 = $(URL_IPFIRE)/xen-patches-2.6.32-2d.tar.bz2
+xen-patches-2.6.32-2f.tar.bz2 = $(URL_IPFIRE)/xen-patches-2.6.32-2f.tar.bz2
-$(DL_FILE)_MD5 = 9ee6d4023f34eb055ec32f201b5f9206
+$(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
-xen-patches-2.6.32-2d.tar.bz2_MD5 = d1690d2b8b0c9124897981aea505f8f7
+xen-patches-2.6.32-2f.tar.bz2_MD5 = b59d6f89e11accb9d40354418e13f31b
install : $(TARGET)
$(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"
# Apply gentoo Xen patches
mkdir -p $(DIR_SRC)/xen-patches
- cd $(DIR_SRC)/xen-patches && tar jxf $(DIR_DL)/xen-patches-2.6.32-2d.tar.bz2
+ cd $(DIR_SRC)/xen-patches && tar jxf $(DIR_DL)/xen-patches-2.6.32-2f.tar.bz2
for x in `ls -1 $(DIR_SRC)/xen-patches/*.patch1`; do \
echo "*********** [Patch: $$x]"; \
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 "$(MACHINE)" "arm"
+ # Add dreamplug support on ARM
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.45-arm_kirkwood_dreamplug.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
ifeq "$(XEN)" "1"
cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" vmlinuz
cd $(DIR_APP) && cp -v arch/i386/boot/vmlinuz /boot/vmlinuz-$(VER)-$(VERSUFIX)
+else
+ifeq "$(MACHINE_TYPE)" "arm"
+ cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" uImage
+ cd $(DIR_APP) && cp -v arch/arm/boot/uImage /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
cd $(DIR_APP) && cp -v System.map /boot/System.map-$(VER)-$(VERSUFIX)
cd $(DIR_APP) && cp -v .config /boot/config-$(VER)-$(VERSUFIX)
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)