X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=lfs%2Flinux;h=b3ccb7af9a74dfbcda67d4f9f01be13b6853ba49;hb=32e6d3e320bb21845f1cfaec4b0a23cf390250bd;hp=cfea069319b0c9ed8e10e6d6dba1c4e666e7bd27;hpb=0c29a8ab5843a2f04c070b400e2ccd3de0a4f8a2;p=ipfire-2.x.git diff --git a/lfs/linux b/lfs/linux index cfea069319..b3ccb7af9a 100644 --- a/lfs/linux +++ b/lfs/linux @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2016 IPFire Team # +# Copyright (C) 2007-2017 IPFire Team # # # # 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 # @@ -24,10 +24,10 @@ include Config -VER = 3.14.76 -RPI_PATCHES = 3.14.76-grsec-ipfire1 -A7M_PATCHES = 3.14.76-grsec-ipfire1 -GRS_PATCHES = grsecurity-3.1ipfire-3.14.76-v1.patch.xz +VER = 3.14.79 +RPI_PATCHES = 3.14.79-grsec-ipfire1 +A7M_PATCHES = 3.14.79-grsec-ipfire1 +GRS_PATCHES = grsecurity-3.1ipfire-3.14.79-v1.patch.xz THISAPP = linux-$(VER) @@ -37,18 +37,24 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) CFLAGS = CXXFLAGS = -PAK_VER = 70 +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 else @@ -56,12 +62,6 @@ else 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 ############################################################################### @@ -83,10 +86,10 @@ rpi-patches-$(RPI_PATCHES).patch.xz = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES). arm7-multi-patches-$(A7M_PATCHES).patch.xz = $(URL_IPFIRE)/arm7-multi-patches-$(A7M_PATCHES).patch.xz $(GRS_PATCHES) = $(URL_IPFIRE)/$(GRS_PATCHES) -$(DL_FILE)_MD5 = 1624610ba8a7b83e8be73cee58a5ca5b -rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = 4a7b9c86a565662e2c340086c0c20fa4 -arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = 873a8d057dbf850693e695df778d608c -$(GRS_PATCHES)_MD5 = e45c8c839449672fa607ad7b59ccc5c7 +$(DL_FILE)_MD5 = ec5b09d8ad2ebf92e6f51a727a338559 +rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = a02a7fd54c642c1e3578a00ed22f54f8 +arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = 6c3b11e51caa278dbeacd1e23c2b171b +$(GRS_PATCHES)_MD5 = 7fe448b53558082395f68c5db94af1a7 install : $(TARGET) @@ -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 @@ -201,6 +207,14 @@ endif cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0025-Drivers-hv-vmbus-Support-per-channel-driver-state.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-hyperv_Mark_the_Hyoer-V_TSC_as_unstable.patch +ifneq "$(KCFG)" "-headers" + # fix AES-NI 192 and 256 bits / grsec is needed for this patch version + 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 @@ -224,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 @@ -239,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 @@ -270,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) ; \