]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - lfs/linux
Merge remote-tracking branch 'origin/next'
[ipfire-2.x.git] / lfs / linux
index e9c7007b1414d3b0a18eba20cf60780a4dc567aa..c74051250f89dc42462dc98c96f4a054bf98dd96 100644 (file)
--- a/lfs/linux
+++ b/lfs/linux
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2016  IPFire Team <info@ipfire.org>                      #
+# Copyright (C) 2007-2017  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        #
@@ -37,31 +37,31 @@ DIR_APP    = $(DIR_SRC)/$(THISAPP)
 CFLAGS     =
 CXXFLAGS   =
 
-PAK_VER    = 72
+PAK_VER    = 73
 DEPS      = ""
 
-KERNEL_ARCH = $(MACHINE)
-
-ifeq "$(MACHINE)" "i586"
+ifeq "$(BUILD_ARCH)" "i586"
        KERNEL_ARCH = i386
+else
+       KERNEL_ARCH = $(BUILD_ARCH)
+endif
+
+ifeq "$(BUILD_ARCH)" "aarch64"
+       HEADERS_ARCH = arm64
+else
+       HEADERS_ARCH = $(BUILD_PLATFORM)
 endif
 
 VERSUFIX=ipfire$(KCFG)
 
-ifeq "$(TOOLS)" "1"
+ifeq "$(TOOLCHAIN)" "1"
        TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX)-tools
-       HEADERS_PREFIX = /tools
+       HEADERS_PREFIX = $(TOOLS_DIR)
 else
        TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX)
        HEADERS_PREFIX = /usr
 endif
 
-ifeq "$(MACHINE_TYPE)" "arm"
-       HEADERS_ARCH=arm
-else
-       HEADERS_ARCH=x86
-endif
-
 ifeq "$(KCFG)" ""
 LASTKERNEL=1
 endif
@@ -69,6 +69,9 @@ ifeq "$(KCFG)" "-kirkwood"
 LASTKERNEL=1
 endif
 
+# The buildsystem does not correctly detect if our compiler supports plugins
+export DISABLE_PAX_PLUGINS=y
+
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -173,6 +176,9 @@ endif
        # update the queued trim blacklist from kernel 4.2rc1
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.43_new_qtrim_blacklist.patch
 
+       # remove eMMC EXT_CSD revision check to use newer eMMC modules
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.79_mmc_remove_EXT_CSD_revision_check.patch
+
        # Hyper-V patches
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0001-Drivers-net-hyperv-Get-rid-of-the-rndis_filter_packe.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0002-Drivers-net-hyperv-Cleanup-the-receive-path.patch
@@ -206,6 +212,9 @@ ifneq "$(KCFG)" "-headers"
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0100-crypto-aesni-Add-support-for-192-256-bit-keys-to-AES.patch
 endif
 
+       # fix CVE-2016-5195 (Dirty COW)
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0110-mm-remove-gup_flags-FOLL_WRITE-games-from-__get_user.patch
+
        # fix empty symbol crc's
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-genksyms_fix_typeof_handling.patch
 
@@ -229,8 +238,11 @@ endif
 ifeq "$(KCFG)" "-rpi"
        # Apply Raspberry Pi kernel patches.
        cd $(DIR_APP) && xzcat $(DIR_DL)/rpi-patches-$(RPI_PATCHES).patch.xz | patch -Np1
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-3.14.79-rpi-suspend-not-inline.patch
 endif
 
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-3.14.79-amba-fix.patch
+
 ifeq "$(KCFG)" "-headers"
        # Install the header files
        cd $(DIR_APP) && make ARCH=$(HEADERS_ARCH) INSTALL_HDR_PATH=dest headers_install
@@ -244,7 +256,7 @@ else
                drivers/video/logo/logo_linux_clut224.ppm
 
        # Cleanup kernel source
-       cp $(DIR_SRC)/config/kernel/kernel.config.$(MACHINE)-$(VERSUFIX) $(DIR_APP)/.config
+       cp $(DIR_SRC)/config/kernel/kernel.config.$(BUILD_ARCH)-$(VERSUFIX) $(DIR_APP)/.config
        cd $(DIR_APP) && make oldconfig
        cd $(DIR_APP) && make clean
        cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ -$(VERSUFIX)/' Makefile
@@ -275,7 +287,7 @@ endif
        cd $(DIR_APP) && make $(MAKETUNING) modules_install
        cd $(DIR_APP) && make $(MAKETUNING) firmware_install
 
-ifeq "$(MACHINE_TYPE)" "arm"
+ifeq "$(BUILD_PLATFORM)" "arm"
        cd $(DIR_APP) && make $(MAKETUNING) dtbs
        cd $(DIR_APP) && for f in $$(find arch/arm/boot/dts/ -name *.dtb); do \
                                mkdir -p /boot/dtb-$(VER)-$(VERSUFIX) ; \