summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorPhil Sutter <phil.sutter@viprinet.com>2015-02-24 12:46:49 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2015-02-28 10:14:21 +0100
commitb35d9328163f84e2d7dc6f2504c5e7c3fffc92dd (patch)
tree07950fd51bd92f315592dbf2b584a4d97a9856d0 /mk
parent9405258299212c12f639e0d200c5721e24c887f3 (diff)
toolchain: add cross prelinking tool from yoctoproject and hook it into build system
Diffstat (limited to 'mk')
-rw-r--r--mk/image.mk15
1 files changed, 14 insertions, 1 deletions
diff --git a/mk/image.mk b/mk/image.mk
index 1563c2a63..7d982d773 100644
--- a/mk/image.mk
+++ b/mk/image.mk
@@ -37,7 +37,7 @@ else
$(error No login shell configured!)
endif
-imageprepare: image-prepare-post extra-install
+imageprepare: image-prepare-post extra-install prelink
# if an extra directory exist in ADK_TOPDIR, copy all content over the
# root directory, do the same if make extra=/dir/to/extra is used
@@ -79,6 +79,19 @@ ifneq ($(ADK_TARGET_ARCH_AARCH64)$(ADK_TARGET_ARCH_X86_64)$(ADK_TARGET_ARCH_PPC6
(cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib)
endif
+ifeq (${ADK_PRELINK},)
+prelink:
+else
+${TARGET_DIR}/etc/prelink.conf:
+ echo '/' > $@
+
+prelink: ${TARGET_DIR}/etc/prelink.conf
+ $(TRACE) target/prelink
+ ${TARGET_CROSS}prelink ${ADK_PRELINK_OPTS} \
+ --ld-library-path=${STAGING_TARGET_DIR}/usr/lib:${STAGING_TARGET_DIR}/lib \
+ --root=${TARGET_DIR} -a $(MAKE_TRACE)
+endif
+
KERNEL_PKGDIR:=$(LINUX_BUILD_DIR)/kernel-pkg
KERNEL_PKG:=$(PACKAGE_DIR)/kernel_$(KERNEL_VERSION)_$(ADK_TARGET_CPU_ARCH).$(PKG_SUFFIX)
TARGET_KERNEL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_FS}-kernel