From fac0d115bca8f1e7799ea946d80ef775651f94f1 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Mon, 12 May 2014 21:14:23 +0200 Subject: [PATCH] hooks/pre-configure: new hook to generate foo-config wrappers in cross builds. Script wrappers are created in ${wrksrc}/.xbps/bin and this path is appended to make the configure scripts detect them. This avoids adding build deps in hostmakedepends, as well as avoiding modifying templates to specify the path to the script. Currently this only creates a wrapper for "icu-config", but can be extended easily to create more wrappers (freetype, libxml, etc). --- .../hooks/pre-configure/02-script-wrapper.sh | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 common/hooks/pre-configure/02-script-wrapper.sh diff --git a/common/hooks/pre-configure/02-script-wrapper.sh b/common/hooks/pre-configure/02-script-wrapper.sh new file mode 100644 index 00000000000..df6bd7e1cff --- /dev/null +++ b/common/hooks/pre-configure/02-script-wrapper.sh @@ -0,0 +1,25 @@ +# This hook creates wrappers for foo-config scripts in cross builds. +# +# Wrappers are created in ${wrksrc}/.xbps/bin and this path is appended +# to make configure scripts find them. + +WRAPPERDIR="${wrksrc}/.xbps/bin" + +icu_config_wrapper() { + [ ! -x ${XBPS_CROSS_BASE}/usr/bin/icu-config ] && return 0 + + echo "#!/bin/sh" >> ${WRAPPERDIR}/icu-config + echo "exec ${XBPS_CROSS_BASE}/usr/bin/icu-config --prefix=${XBPS_CROSS_BASE}/usr \"\$@\"" >> ${WRAPPERDIR}/icu-config + chmod 755 ${WRAPPERDIR}/icu-config +} + +hook() { + [ -z "$CROSS_BUILD" ] && return 0 + + mkdir -p ${WRAPPERDIR} + + # create wrapers + icu_config_wrapper + + export PATH=${WRAPPERDIR}:$PATH +}