diff options
Diffstat (limited to 'mk/kernel-build.mk')
-rw-r--r-- | mk/kernel-build.mk | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk index e63802371..29458abf0 100644 --- a/mk/kernel-build.mk +++ b/mk/kernel-build.mk @@ -17,15 +17,13 @@ KERNEL_FILE:=$(ADK_TARGET_KERNEL) KERNEL_TARGET:=$(ADK_TARGET_KERNEL) ifeq ($(ADK_TARGET_KERNEL_LINUXBIN),y) KERNEL_FILE:=vmlinux -KERNEL_TARGET:=$(ADK_TARGET_KERNEL) endif ifeq ($(ADK_TARGET_KERNEL_ZIMAGE),y) KERNEL_FILE:=vmlinux -KERNEL_TARGET:=$(ADK_TARGET_KERNEL) endif -ifeq ($(ADK_TARGET_KERNEL_VMLINUX_BOOTP),y) -KERNEL_FILE:=bootpfile -KERNEL_TARGET:=bootpfile +ifeq ($(ADK_TARGET_KERNEL_VMLINUX_EFI),y) +KERNEL_FILE:=vmlinux.efi +KERNEL_TARGET:=all endif ifeq ($(ADK_TARGET_KERNEL_VMLINUX_GZ),y) KERNEL_FILE:=vmlinux @@ -37,7 +35,6 @@ KERNEL_TARGET:=all endif ifeq ($(ADK_TARGET_KERNEL_IMAGE),y) KERNEL_FILE:=vmlinux -KERNEL_TARGET:=$(ADK_TARGET_KERNEL) endif ifeq ($(ADK_TARGET_KERNEL_SIMPLEIMAGE),y) KERNEL_FILE:=vmlinux.bin @@ -72,23 +69,28 @@ $(LINUX_DIR)/.config: $(LINUX_DIR)/.prepared $(START_TRACE) "target/$(ADK_TARGET_ARCH)-kernel-configure.. " echo "-${KERNEL_RELEASE}" >${LINUX_DIR}/localversion ifeq ($(ADK_TARGET_LINUX_KERNEL_USE_DEFCONFIG),y) - ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} $(ADK_TARGET_KERNEL_DEFCONFIG) $(MAKE_TRACE) + ${KERNEL_MAKE} $(ADK_TARGET_LINUX_KERNEL_DEFCONFIG) $(MAKE_TRACE) else ifeq ($(ADK_TARGET_LINUX_KERNEL_USE_CUSTOMCONFIG),y) @if [ ! -f $(ADK_TOPDIR)/$(ADK_TARGET_LINUX_KERNEL_CUSTOMCONFIG_PATH) ];then \ echo "no kernel configuration found in $(ADK_TOPDIR)/$(ADK_TARGET_LINUX_KERNEL_CUSTOMCONFIG_PATH)"; \ exit 1; \ fi - ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} KCONFIG_ALLCONFIG=$(ADK_TOPDIR)/$(ADK_TARGET_LINUX_KERNEL_CUSTOMCONFIG_PATH) allnoconfig $(MAKE_TRACE) + ${KERNEL_MAKE} KCONFIG_ALLCONFIG=$(ADK_TOPDIR)/$(ADK_TARGET_LINUX_KERNEL_CUSTOMCONFIG_PATH) allnoconfig $(MAKE_TRACE) else $(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/mini.config - ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} KCONFIG_ALLCONFIG=mini.config allnoconfig $(MAKE_TRACE) + ${KERNEL_MAKE} KCONFIG_ALLCONFIG=mini.config allnoconfig $(MAKE_TRACE) endif $(CMD_TRACE) " done" $(END_TRACE) $(LINUX_DIR)/$(KERNEL_FILE): $(LINUX_DIR)/.config $(START_TRACE) "target/$(ADK_TARGET_ARCH)-kernel-compile.. " - ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} $(KERNEL_TARGET) $(MAKE_TRACE) +ifneq ($(ADK_TARGET_KERNEL_APPEND_DTB),) + ${KERNEL_MAKE} zImage dtbs $(MAKE_TRACE) + (cd $(LINUX_DIR)/arch/$(ADK_TARGET_ARCH)/boot && \ + cat dts/${ADK_TARGET_KERNEL_APPEND_DTB}.dtb >> zImage) +endif + ${KERNEL_MAKE} $(KERNEL_TARGET) $(MAKE_TRACE) $(CMD_TRACE) " done" $(END_TRACE) @@ -98,13 +100,11 @@ install: ifneq ($(KERNEL_MODULES_USED),) $(START_TRACE) "target/$(ADK_TARGET_ARCH)-kernel-modules-install.. " rm -rf $(LINUX_BUILD_DIR)/modules - ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} \ - DEPMOD=$(ADK_DEPMOD) \ + ${KERNEL_MAKE} DEPMOD=$(ADK_DEPMOD) \ INSTALL_MOD_PATH=$(LINUX_BUILD_DIR)/modules \ modules_install $(MAKE_TRACE) $(CMD_TRACE) " done" $(END_TRACE) -ifeq ($(ADK_RUNTIME_DEV_UDEV),) $(START_TRACE) "target/$(ADK_TARGET_ARCH)-kernel-modules-create-packages.. " rm -f ${PACKAGE_DIR}/kmod-* PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/make-module-ipkgs.sh \ @@ -115,13 +115,14 @@ ifeq ($(ADK_RUNTIME_DEV_UDEV),) "${PACKAGE_DIR}" $(CMD_TRACE) " done" $(END_TRACE) -endif $(START_TRACE) "target/${ADK_TARGET_ARCH}-kernel-modules-install-packages.. " - for pkg in $(PACKAGE_DIR)/kmod-*; do \ + -for pkg in $(PACKAGE_DIR)/kmod-*; do \ [[ -e "$$pkg" ]] && $(PKG_INSTALL) $$pkg; \ done $(CMD_TRACE) " done" $(END_TRACE) + $(CP) $(LINUX_BUILD_DIR)/modules/lib/modules/$(KERNEL_VERSION)/modules.{order,builtin} \ + $(TARGET_DIR)/lib/modules/$(KERNEL_VERSION)/ endif clean: |