1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(TOPDIR
)/rules.mk
5 include $(TOPDIR
)/mk
/linux.mk
6 include ${TOPDIR}/mk
/buildhlp.mk
7 include ${TOPDIR}/mk
/kernel-vars.mk
9 KERNEL_PKGDIR
:=$(LINUX_BUILD_DIR
)/kernel-pkg
11 $(TOOLCHAIN_BUILD_DIR
)/linux-
$(KERNEL_VERSION
)/.patched
:
12 $(TRACE
) target
/$(ADK_TARGET
)-kernel-patch
13 $(PATCH
) $(TOOLCHAIN_BUILD_DIR
)/linux-
$(KERNEL_VERSION
) ..
/linux
/patches
/$(KERNEL_VERSION
) *.patch
$(MAKE_TRACE
)
14 $(PATCH
) $(TOOLCHAIN_BUILD_DIR
)/linux-
$(KERNEL_VERSION
) ..
/$(ADK_TARGET
)/patches
*.patch
$(MAKE_TRACE
)
17 $(LINUX_DIR
)/.prepared
: $(TOOLCHAIN_BUILD_DIR
)/linux-
$(KERNEL_VERSION
)/.patched
18 $(TRACE
) target
/$(ADK_TARGET
)-kernel-prepare
19 ln
-sf
$(TOOLCHAIN_BUILD_DIR
)/linux-
$(KERNEL_VERSION
) $(LINUX_DIR
)
20 mkdir
-p
$(LINUX_BUILD_DIR
)/kmod-control
23 $(LINUX_DIR
)/.config
: $(LINUX_DIR
)/.prepared
$(BUILD_DIR
)/.kernelconfig
24 $(TRACE
) target
/$(ADK_TARGET
)-kernel-configure
25 for f in
$(TARGETS
);do if
[ -f
$$f ];then
rm $$f;fi
;done
$(MAKE_TRACE
)
26 $(CP
) $(BUILD_DIR
)/.kernelconfig
$(LINUX_DIR
)/.config
27 echo N |
$(MAKE
) ${KERNEL_MAKE_OPTS} oldconfig
$(MAKE_TRACE
)
28 $(MAKE
) ${KERNEL_MAKE_OPTS} prepare scripts
$(MAKE_TRACE
)
29 touch
-c
$(LINUX_DIR
)/.config
31 $(LINUX_DIR
)/vmlinux
: $(LINUX_DIR
)/.config
32 $(TRACE
) target
/$(ADK_TARGET
)-kernel-compile
33 $(MAKE
) ${KERNEL_MAKE_OPTS} -j
${ADK_MAKE_JOBS} $(MAKE_TRACE
)
34 $(TRACE
) target
/$(ADK_TARGET
)-kernel-modules-install
35 rm -rf
$(LINUX_BUILD_DIR
)/modules
36 $(MAKE
) ${KERNEL_MAKE_OPTS} DEPMOD
=true \
37 INSTALL_MOD_PATH
=$(LINUX_BUILD_DIR
)/modules \
38 modules_install
$(MAKE_TRACE
)
39 $(TRACE
) target
/$(ADK_TARGET
)-create-packages
40 $(MAKE
) $(KERNEL_PKG
) $(TARGETS
)
41 touch
-c
$(LINUX_DIR
)/vmlinux
44 $(TRACE
) target
/$(ADK_TARGET
)-create-kernel-package
45 rm -rf
$(KERNEL_PKGDIR
)
46 @mkdir
-p
$(KERNEL_PKGDIR
)/etc
47 ${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh
${KERNEL_PKGDIR} \
48 ..
/linux
/kernel.control
${ADK_TARGET}-${KERNEL_VERSION} ${CPU_ARCH}
49 $(PKG_BUILD
) $(KERNEL_PKGDIR
) $(PACKAGE_DIR
) $(MAKE_TRACE
)
52 compile
: $(LINUX_DIR
)/vmlinux
54 ifneq ($(strip $(INSTALL_TARGETS
)),)
55 $(TRACE
) target
/${ADK_TARGET}-modules-install
56 ifeq ($(ADK_TARGET_PACKAGE_IPKG
),y
)
57 $(PKG_INSTALL
) $(INSTALL_TARGETS
) $(MAKE_TRACE
)
59 $(foreach pkg
,$(INSTALL_TARGETS
),$(shell $(PKG_INSTALL
) $(pkg
)))
64 rm -rf
$(LINUX_BUILD_DIR
)