mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-27 13:16:35 +00:00
toolchain helpers: introduce function relpath_prefix
The helper function copy_toolchain_sysroot has some logic to transform a path into a number of '../' components based on the depth of that path. As this same logic will be needed in another place in a subsequent patch, extract it into a separate helper relpath_prefix. Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
ba6bac1383
commit
a2596422d7
@ -122,11 +122,7 @@ copy_toolchain_sysroot = \
|
|||||||
cp -a $${SYSROOT_DIR}/usr/include $(STAGING_DIR)/usr ; \
|
cp -a $${SYSROOT_DIR}/usr/include $(STAGING_DIR)/usr ; \
|
||||||
fi ; \
|
fi ; \
|
||||||
mkdir -p `dirname $(STAGING_DIR)/$${ARCH_SUBDIR}` ; \
|
mkdir -p `dirname $(STAGING_DIR)/$${ARCH_SUBDIR}` ; \
|
||||||
relpath="./" ; \
|
relpath="$(call relpath_prefix,$${ARCH_SUBDIR})./" ; \
|
||||||
nbslashs=`printf $${ARCH_SUBDIR} | sed 's%[^/]%%g' | wc -c` ; \
|
|
||||||
for slash in `seq 1 $${nbslashs}` ; do \
|
|
||||||
relpath=$${relpath}"../" ; \
|
|
||||||
done ; \
|
|
||||||
ln -s $${relpath} $(STAGING_DIR)/$${ARCH_SUBDIR} ; \
|
ln -s $${relpath} $(STAGING_DIR)/$${ARCH_SUBDIR} ; \
|
||||||
echo "Symlinking $(STAGING_DIR)/$${ARCH_SUBDIR} -> $${relpath}" ; \
|
echo "Symlinking $(STAGING_DIR)/$${ARCH_SUBDIR} -> $${relpath}" ; \
|
||||||
fi ; \
|
fi ; \
|
||||||
@ -419,3 +415,22 @@ check_toolchain_ssp = \
|
|||||||
gen_gdbinit_file = \
|
gen_gdbinit_file = \
|
||||||
mkdir -p $(STAGING_DIR)/usr/share/buildroot/ ; \
|
mkdir -p $(STAGING_DIR)/usr/share/buildroot/ ; \
|
||||||
echo "set sysroot $(STAGING_DIR)" > $(STAGING_DIR)/usr/share/buildroot/gdbinit
|
echo "set sysroot $(STAGING_DIR)" > $(STAGING_DIR)/usr/share/buildroot/gdbinit
|
||||||
|
|
||||||
|
# Given a path, determine the relative prefix (../) needed to return to the
|
||||||
|
# root level. Note that the last component is treated as a file component; use a
|
||||||
|
# trailing slash to force treating it as a directory. Examples:
|
||||||
|
# relpath_prefix(lib32) = ""
|
||||||
|
# relpath_prefix(lib32/octeon2) = "../"
|
||||||
|
# relpath_prefix(lib32/octeon2/) = "../../"
|
||||||
|
#
|
||||||
|
# $1: input path
|
||||||
|
define relpath_prefix
|
||||||
|
$$( \
|
||||||
|
prefix="" ; \
|
||||||
|
nbslashs=`printf $1 | sed 's%[^/]%%g' | wc -c` ; \
|
||||||
|
for slash in `seq 1 $${nbslashs}` ; do \
|
||||||
|
prefix=$${prefix}"../" ; \
|
||||||
|
done ; \
|
||||||
|
printf "$$prefix" ; \
|
||||||
|
)
|
||||||
|
endef
|
||||||
|
Loading…
x
Reference in New Issue
Block a user