summaryrefslogtreecommitdiffhomepage
path: root/subr.pkg
diff options
context:
space:
mode:
authorLucía Andrea Illanes Albornoz <lucia@luciaillanes.de>2023-03-13 10:03:34 +0100
committerLucía Andrea Illanes Albornoz <lucia@luciaillanes.de>2023-03-13 10:03:34 +0100
commitfd38dc025f5d31890abbf3d48c597114203b1421 (patch)
tree082236b4fa89abbdf2b55a65c181b05d4d3beb2d /subr.pkg
parent8de17ea56956a074de18bb9cdbea3178b28dc8f8 (diff)
downloadmidipix_build-fd38dc025f5d31890abbf3d48c597114203b1421.tar.bz2
midipix_build-fd38dc025f5d31890abbf3d48c597114203b1421.tar.xz
Move patches & vars pathname defaults handling into subr.ex/ex_pkg.subr.
Diffstat (limited to 'subr.pkg')
-rw-r--r--subr.pkg/pkg_configure_patch.subr19
-rw-r--r--subr.pkg/pkg_configure_patch_pre.subr30
2 files changed, 27 insertions, 22 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;
};
diff --git a/subr.pkg/pkg_configure_patch_pre.subr b/subr.pkg/pkg_configure_patch_pre.subr
index 3a0c461e..d315fb49 100644
--- a/subr.pkg/pkg_configure_patch_pre.subr
+++ b/subr.pkg/pkg_configure_patch_pre.subr
@@ -4,14 +4,17 @@
#
pkgp_configure_patch_pre() {
- local _ppcpp_patch_path="";
+ local _ppcpp_patch_fname="" _ppcpp_patch_idx=0;
- for _ppcpp_patch_path in \
- "${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}${PKG_VERSION:+-${PKG_VERSION}}_pre.local.patch" \
- "${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}${PKG_VERSION:+-${PKG_VERSION}}_pre.local@${BUILD_HNAME}.patch";
+ _ppcpp_patch_idx=1;
+ while ex_pkg_get_default \
+ \$_ppcpp_patch_fname "${PKG_NAME}" \
+ "${PKG_VERSION}" "patches_pre" "${_ppcpp_patch_idx}" \
+ && [ "${_pcp_patch_fname:+1}" = 1 ];
do
- if [ -r "${_ppcpp_patch_path}" ]\
- && ! patch -b -d "${PKG_BASE_DIR}/${PKG_SUBDIR}" -p1 < "${_ppcpp_patch_path}";
+ : $((_ppcpp_patch_idx += 1));
+ if [ -r "${_ppcpp_patch_fname}" ]\
+ && ! patch -b -d "${PKG_BASE_DIR}/${PKG_SUBDIR}" -p1 < "${_ppcpp_patch_fname}";
then
return 1;
fi;
@@ -20,13 +23,16 @@ pkgp_configure_patch_pre() {
};
pkgp_configure_patch_pre_chainport() {
- local _ppcppc_patch_dname="" _ppcppc_patch_fname="" _ppcppc_oldpwd="";
- _ppcppc_patch_dname="${PKG_BASE_DIR}/${PKG_SUBDIR}/patches/${PKG_NAME%%_*}";
+ local _ppcppc_patch_dname="" _ppcppc_patch_fname="";
- if [ "${PKG_VERSION:+1}" = 1 ]; then
- _ppcppc_patch_fname="${BUILD_WORKDIR}/chainport/patches/${PKG_NAME%%_*}/${PKG_NAME%%_*}-${PKG_VERSION}.midipix.patch";
- fi;
- if [ -e "${_ppcppc_patch_fname}" ]; then
+ ex_pkg_get_default \
+ \$_ppcppc_patch_fname "${PKG_NAME}" \
+ "${PKG_VERSION}" "patches_chainport" 1 \
+ || return 1;
+
+ if [ "${_ppcppc_patch_fname:+1}" = 1 ]\
+ && [ -e "${_ppcppc_patch_fname}" ]; then
+ _ppcppc_patch_dname="${PKG_BASE_DIR}/${PKG_SUBDIR}/patches/${PKG_NAME%%_*}";
if ! rtl_fileop mkdir "${_ppcppc_patch_dname}"\
|| ! rtl_fileop cp "${_ppcppc_patch_fname}" "${_ppcppc_patch_dname}"; then
return 1;