diff --git a/subr/pkg_fetch_extract.subr b/subr/pkg_fetch_extract.subr
index 111b727..bb54c87 100644
--- a/subr/pkg_fetch_extract.subr
+++ b/subr/pkg_fetch_extract.subr
@@ -3,7 +3,8 @@
 #
 
 pkg_fetch_extract() {
-	local _oldpwd="";
+	local _chainport_patch_fname="${BUILD_WORKDIR}/chainport/patches/${PKG_NAME%%_*}/${PKG_NAME%%_*}-${PKG_VERSION}.midipix.patch"
+		_chainport_patch_dname="${PKG_BASE_DIR}/${PKG_SUBDIR}/patches/${PKG_NAME%%_*}" _oldpwd="";
 	if [ -n "${PKG_URL}" ]\
 	&& [ "${PKG_URL_TYPE:-wget}" = wget ]; then
 		_oldpwd="${PWD}"; ex_rtl_fileop cd "${PKG_BASE_DIR}";
@@ -25,6 +26,10 @@ pkg_fetch_extract() {
 		fi;
 		ex_rtl_fileop cd "${_oldpwd}";
 	fi;
+	if [ -e "${_chainport_patch_fname}" ]; then
+		ex_rtl_fileop mkdir "${_chainport_patch_dname}";
+		ex_rtl_fileop cp "${_chainport_patch_fname}" "${_chainport_patch_dname}";
+	fi;
 };
 
 # vim:filetype=sh