summaryrefslogtreecommitdiffstats
path: root/configs/platform-mipsel/rules/kernel-malta.make
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2021-07-08 06:16:28 +0200
committerRobert Schwebel <r.schwebel@pengutronix.de>2021-07-16 07:28:06 +0200
commiteaf7839876093a6c34f8c2ee4562bff1ffcdee34 (patch)
treeaa458cd7298cf202107655413004bb6b9591d4f2 /configs/platform-mipsel/rules/kernel-malta.make
parent19cf676d19101eac7342c35969d87820b4c426f1 (diff)
downloadDistroKit-eaf7839876093a6c34f8c2ee4562bff1ffcdee34.tar.gz
DistroKit-eaf7839876093a6c34f8c2ee4562bff1ffcdee34.tar.xz
platform-mipsel: add basic qemu malta support
Add MIPSEL (MIPS little-endian 32bit) platform. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Link: https://lore.pengutronix.de/20210708041628.17608-1-o.rempel@pengutronix.de Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Diffstat (limited to 'configs/platform-mipsel/rules/kernel-malta.make')
-rw-r--r--configs/platform-mipsel/rules/kernel-malta.make115
1 files changed, 115 insertions, 0 deletions
diff --git a/configs/platform-mipsel/rules/kernel-malta.make b/configs/platform-mipsel/rules/kernel-malta.make
new file mode 100644
index 0000000..cfb3874
--- /dev/null
+++ b/configs/platform-mipsel/rules/kernel-malta.make
@@ -0,0 +1,115 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2020 by Oleksij Rempel <o.rempel@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_KERNEL_MALTA) += kernel-malta
+
+#
+# Paths and names
+#
+KERNEL_MALTA_VERSION := $(KERNEL_VERSION)
+KERNEL_MALTA_MD5 := $(call remove_quotes,$(PTXCONF_KERNEL_MD5))
+KERNEL_MALTA := linux-malta-$(KERNEL_MALTA_VERSION)
+KERNEL_MALTA_SUFFIX := tar.xz
+KERNEL_MALTA_URL := $(call kernel-url, KERNEL_MALTA)
+KERNEL_MALTA_PATCHES := linux-$(KERNEL_MALTA_VERSION)
+KERNEL_MALTA_SOURCE := $(SRCDIR)/$(KERNEL_MALTA_PATCHES).$(KERNEL_MALTA_SUFFIX)
+KERNEL_MALTA_DIR := $(BUILDDIR)/$(KERNEL_MALTA)
+KERNEL_MALTA_BUILD_DIR := $(KERNEL_MALTA_DIR)-build
+KERNEL_MALTA_CONFIG := $(call ptx/in-platformconfigdir, kernelconfig-malta)
+KERNEL_MALTA_REF_CONFIG := $(call ptx/in-platformconfigdir, kernelconfig)
+KERNEL_MALTA_LICENSE := GPL-2.0-only
+KERNEL_MALTA_BUILD_OOT := KEEP
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+# use CONFIG_CC_STACKPROTECTOR if available. The rest makes no sense for the kernel
+KERNEL_MALTA_WRAPPER_BLACKLIST := \
+ $(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
+
+KERNEL_MALTA_CONF_OPT := \
+ -C $(KERNEL_MALTA_DIR) \
+ O=$(KERNEL_MALTA_BUILD_DIR) \
+ $(call kernel-opts, KERNEL_MALTA)
+
+# no gcc plugins; avoid config changes depending on the host compiler
+KERNEL_MALTA_CONF_OPT += \
+ HOSTCXX=false
+
+KERNEL_MALTA_IMAGES := vmlinuz
+KERNEL_MALTA_IMAGES := $(addprefix $(KERNEL_MALTA_BUILD_DIR)/,$(KERNEL_MALTA_IMAGES))
+
+ifdef PTXCONF_KERNEL_MALTA
+$(KERNEL_MALTA_CONFIG):
+ @echo
+ @echo "*************************************************************************"
+ @echo " Please generate a kernelconfig with 'ptxdist menuconfig kernel-malta'"
+ @echo "*************************************************************************"
+ @echo
+ @echo
+ @exit 1
+endif
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+KERNEL_MALTA_MAKE_OPT := \
+ $(KERNEL_MALTA_CONF_OPT) \
+ vmlinuz modules
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+KERNEL_MALTA_INSTALL_OPT := \
+ $(call kernel-opts, KERNEL_MALTA) \
+ modules_install
+
+$(STATEDIR)/kernel-malta.install:
+ @$(call targetinfo)
+ @$(call world/install, KERNEL_MALTA)
+ @$(foreach image, $(KERNEL_MALTA_IMAGES), \
+ install -m 644 $(image) $(IMAGEDIR)/$(notdir $(image))-malta$(ptx/nl))
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/kernel-malta.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, kernel-malta)
+ @$(call install_fixup, kernel-malta, PRIORITY,optional)
+ @$(call install_fixup, kernel-malta, SECTION,base)
+ @$(call install_fixup, kernel-malta, AUTHOR,"Oleksij Rempel <o.rempel@pengutronix.de>")
+ @$(call install_fixup, kernel-malta, DESCRIPTION,missing)
+
+ @$(call install_copy, kernel-malta, 0, 0, 0644, \
+ $(IMAGEDIR)/vmlinuz-malta, /boot/vmlinuz-malta, n)
+
+ @$(call install_glob, kernel-malta, 0, 0, -, /lib/modules, *.ko,, n)
+ @$(call install_glob, kernel-malta, 0, 0, -, /lib/modules,, *.ko */build */source, n)
+
+ @$(call install_finish, kernel-malta)
+
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# oldconfig / menuconfig
+# ----------------------------------------------------------------------------
+
+kernel-malta_oldconfig kernel-malta_menuconfig kernel-malta_nconfig: $(STATEDIR)/kernel-malta.extract
+ @$(call world/kconfig, KERNEL_MALTA, $(subst kernel-malta_,,$@))
+
+# vim: syntax=make