diff options
author | Michael Haubenwallner <haubi@gentoo.org> | 2019-03-18 15:45:59 +0100 |
---|---|---|
committer | Michael Haubenwallner <haubi@gentoo.org> | 2019-03-20 09:38:38 +0100 |
commit | 22c4e0424b2f0b8861c6aa278cb2e5269ed40896 (patch) | |
tree | dd95ffbb3a562f22163606f9aba0310d33b81531 /profiles | |
parent | net-fs/samba: Bump to version 4.10.0. Removed old. (diff) | |
download | gentoo-22c4e0424b2f0b8861c6aa278cb2e5269ed40896.tar.gz gentoo-22c4e0424b2f0b8861c6aa278cb2e5269ed40896.tar.bz2 gentoo-22c4e0424b2f0b8861c6aa278cb2e5269ed40896.zip |
profiles/prefix/winnt/profile.bashrc: drop exe-in-use handling
Unlike Interix, Cygwin is able to "remove" executables in use, as in
transparently moving them to trashbin. Broken for EAPI 7, dropped.
Signed-off-by: Michael Haubenwallner <haubi@gentoo.org>
Diffstat (limited to 'profiles')
-rw-r--r-- | profiles/prefix/windows/winnt/profile.bashrc | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/profiles/prefix/windows/winnt/profile.bashrc b/profiles/prefix/windows/winnt/profile.bashrc index 7d1251609c0f..3c12c6519673 100644 --- a/profiles/prefix/windows/winnt/profile.bashrc +++ b/profiles/prefix/windows/winnt/profile.bashrc @@ -27,69 +27,6 @@ windows_setup_dllhelper() { esac } -windows_cleanup_removed_files() { - local removedlist=$1 - rm -f "${removedlist}".new - - if [[ -r ${removedlist} ]]; then - rm -f "${removedlist}".old - fi - # restore in case of system fault - if [[ -r ${removedlist}.old ]]; then - mv "${removedlist}"{.old,} - fi - - touch "${removedlist}"{,.new} # ensure they exist - - while read rmstem; do - # try to remove previously recorded files - for f in "${ROOT}${rmstem}"*; do - ebegin "trying to remove ${f}" - rm -f "${f}" > /dev/null 2>&1 - eend $? - done - # but keep it in list if still exists - for f in "${ROOT}${rmstem}"*; do - [[ -f ${f} ]] && echo "${rmstem}" >> "${removedlist}".new - break - done - done < "${removedlist}" - - # update the list - mv "${removedlist}"{,.old} - mv "${removedlist}"{.new,} - rm "${removedlist}".old -} - -windows_find_removed_slot() { - local f=$1 - local n=0 - while [[ ${n} -lt 100 && -f "${f}${n}" ]]; do - n=$((n=n+1)) - done - - if [[ ${n} -ge 100 ]]; then - echo "too many (>=100) old text files busy of '${f}'" >&2 - exit 1 - fi - - echo $n -} - -windows_prepare_file() { - local failed=0 - my_mv=mv - - [[ "${1}" == */mv ]] && my_mv="${1}.new" - [[ -f "${1}.new" ]] && rm -f "${1}.new" - - cp -p "${1}" "${1}.new" || failed=1 - ${my_mv} "${1}" "${2}" || failed=1 - ${my_mv} "${1}.new" "${1}" || failed=1 - - echo $failed -} - post_src_install() { cd "${ED}" find . -name '*.exe' -o -name '*.dll.a' -o -name '*.so' | @@ -125,64 +62,6 @@ post_src_install() { done } -post_pkg_preinst() { - local removedlist="${EROOT}var/lib/portage/files2bremoved" - windows_cleanup_removed_files $removedlist - - # now go for current package - cd "${D}" - find ".${EROOT}" -type f | xargs -r /usr/bin/file | grep ' PE ' | while read f t - do - f=${f#./} # find prints: "./path/to/file" - f=${f%:} # file prints: "file-argument: type-of-file" - test -r "${ROOT}${f}" || continue - rmstem="${f}.removedbyportage" - # keep list of old busy text files unique - grep "^${rmstem}$" "${removedlist}" >/dev/null \ - || echo "${rmstem}" >> "${removedlist}" - - local n=$(windows_find_removed_slot ${ROOT}${rmstem}) - ebegin "backing up text file ${ROOT}${f} (${n})" - eend $(windows_prepare_file "${ROOT}${f}" "${ROOT}${rmstem}${n}") - done -} - -post_pkg_prerm() { - local removedlist="${EROOT}var/lib/portage/files2bremoved" - save_IFS=$IFS - IFS=' -'; - local MY_PR=${PR} - [[ ${MY_PR} == r0 ]] && MY_PR= - local -a contents=($(<"${EROOT}var/db/pkg/${CATEGORY}/${P}${MY_PR:+-}${MY_PR}/CONTENTS")); - IFS=$save_IFS - local -a cont - for content in "${contents[@]}"; do - cont=($content) - f=${cont[1]} - f=${f#/} - - test -r "${ROOT}${f}" || continue - - if /usr/bin/file "${ROOT}${f}" | grep ' PE ' > /dev/null; then - # $f should be an absolute path to the installed file - rmstem="${f}.removedbyportage" - - grep "^${rmstem}$" "${removedlist}" > /dev/null \ - || echo "${rmstem}" >> "${removedlist}" - - local n=$(windows_find_removed_slot ${ROOT}${rmstem}) - ebegin "preparing ${ROOT}${f} for unmerge ($n)" - eend $(windows_prepare_file "${ROOT}${f}" "${ROOT}${rmstem}${n}") - fi - done -} - -pre_pkg_postrm() { - local removedlist="${EROOT}var/lib/portage/files2bremoved" - windows_cleanup_removed_files $removedlist -} - windows_setup_dllhelper_cp() { if ! [[ $(type -P cp) -ef ${T}/dllhelper/cp ]] then |