summaryrefslogtreecommitdiffhomepage
path: root/subr.pkg/pkg_configure_patch.subr
diff options
context:
space:
mode:
Diffstat (limited to 'subr.pkg/pkg_configure_patch.subr')
-rw-r--r--subr.pkg/pkg_configure_patch.subr19
1 files changed, 9 insertions, 10 deletions
diff --git a/subr.pkg/pkg_configure_patch.subr b/subr.pkg/pkg_configure_patch.subr
index c616fde2..8ed0ad33 100644
--- a/subr.pkg/pkg_configure_patch.subr
+++ b/subr.pkg/pkg_configure_patch.subr
@@ -6,8 +6,8 @@
pkg_configure_patch() {
local _pcp_group_name="${1}" _pcp_pkg_name="${2}" _pcp_restart_at="${3}" \
_pcp_patch_cwd="" _pcp_patch_dir="${MIDIPIX_BUILD_PWD}/patches" \
- _pcp_patch_fname="" _pcp_patches_done="" _pcp_pkg_name_full="" \
- _pcp_strip_count=0;
+ _pcp_patch_fname="" _pcp_patch_idx=0 _pcp_patches_done="" \
+ _pcp_pkg_name_full="" _pcp_strip_count=0;
_pcp_pkg_name_full="${_pcp_pkg_name}${PKG_VERSION:+-${PKG_VERSION}}";
if [ "${PKG_FNAME:+1}" = 1 ]\
@@ -20,24 +20,23 @@ pkg_configure_patch() {
_pcp_strip_count=1;
fi;
- set +o noglob;
- for _pcp_patch_fname in \
- "${_pcp_patch_dir}/${PKG_NAME}/"*.patch \
- "${_pcp_patch_dir}/${_pcp_pkg_name_full}.local.patch" \
- "${_pcp_patch_dir}/${_pcp_pkg_name_full}.local@${BUILD_HNAME}.patch" \
- ${PKG_PATCHES_EXTRA:-};
+ _pcp_patch_idx=1;
+ while ex_pkg_get_default \
+ \$_pcp_patch_fname "${_pcp_pkg_name}" \
+ "${PKG_VERSION}" "patches" "${_pcp_patch_idx}" \
+ && [ "${_pcp_patch_fname:+1}" = 1 ];
do
+ : $((_pcp_patch_idx += 1));
if [ -r "${_pcp_patch_fname}" ]\
&& ! rtl_lmatch \$_pcp_patches_done "${_pcp_patch_fname}";
then
if ! patch -b -d "${_pcp_patch_cwd}" "-p${_pcp_strip_count}" < "${_pcp_patch_fname}"; then
- set -o noglob; return 1;
+ return 1;
else
rtl_lconcat \$_pcp_patches_done "${_pcp_patch_fname}";
fi;
fi;
done;
- set -o noglob;
return 0;
};