include Config
-VER = 4.9.14
+VER = 4.9.59
RPI_PATCHES = 3.14.79-grsec-ipfire1
A7M_PATCHES = 3.14.79-grsec-ipfire1
-GRS_PATCHES = grsecurity-3.1-4.9.14-201703121245.patch.xz
+GRS_PATCHES = grsecurity-3.1-4.9.59-ipfire1.patch.xz
+
THISAPP = linux-$(VER)
DL_FILE = linux-$(VER).tar.xz
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
HEADERS_PREFIX = /usr
endif
-ifeq "$(MACHINE_TYPE)" "arm"
- HEADERS_ARCH=arm
-else
- HEADERS_ARCH=x86
-endif
-
ifeq "$(KCFG)" ""
LASTKERNEL=1
endif
LASTKERNEL=1
endif
+# The buildsystem does not correctly detect if our compiler supports plugins
+export DISABLE_PAX_PLUGINS=y
+
###############################################################################
# Top-level Rules
###############################################################################
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 = 6e5b3dc4b68346eb6e547a708f76babc
+$(DL_FILE)_MD5 = 8913eb1ac84eb366d23f72ba8166018a
rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = a02a7fd54c642c1e3578a00ed22f54f8
arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = 6c3b11e51caa278dbeacd1e23c2b171b
-$(GRS_PATCHES)_MD5 = 346ad063e82b1386a841c3555e712a8e
+$(GRS_PATCHES)_MD5 = a9897465893229fea1a71d3bdfdc2659
install : $(TARGET)
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/mISDN-hfcusb-reportl1down.patch
# Add LED trigger
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.9.8-ledtrig_netdev.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.9.16-ledtrig_netdev.patch
+
+ # Fix igb and e1000e crash
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.9.17-igb-e1000e_fix_lock_at_update_stats.patch
# cs5535audio spams syslog if no ac97 was present (geos router)
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.9.8_cs5535audio_fix_logspam_on_geos.patch
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
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
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) ; \