diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /profiles/prefix/windows |
reinit the tree, so we can have metadata
Diffstat (limited to 'profiles/prefix/windows')
48 files changed, 444 insertions, 0 deletions
diff --git a/profiles/prefix/windows/cygwin/eapi b/profiles/prefix/windows/cygwin/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/cygwin/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/cygwin/make.defaults b/profiles/prefix/windows/cygwin/make.defaults new file mode 100644 index 000000000000..d7ba076a8812 --- /dev/null +++ b/profiles/prefix/windows/cygwin/make.defaults @@ -0,0 +1,11 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# System-wide defaults for all Cygwin profiles +# This file should rarely need to be changed + +# 'Sane' defaults +ELIBC="Cygwin" + +# no scanelf +FEATURES="nostrip" diff --git a/profiles/prefix/windows/cygwin/package.mask b/profiles/prefix/windows/cygwin/package.mask new file mode 100644 index 000000000000..92beb403eb7f --- /dev/null +++ b/profiles/prefix/windows/cygwin/package.mask @@ -0,0 +1,10 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Michael Haubenwallner <haubi@gentoo.org> (15 Mar 2017) +# Cygwin breakage in 0.16 should be fixed in 0.17 +~net-dns/libidn2-0.16 + +# Michael Haubenwallner <haubi@gentoo.org> (20 May 2016) +# Does not work with Cygwin. +sys-apps/man-db diff --git a/profiles/prefix/windows/cygwin/package.use b/profiles/prefix/windows/cygwin/package.use new file mode 100644 index 000000000000..9439b6ac23c0 --- /dev/null +++ b/profiles/prefix/windows/cygwin/package.use @@ -0,0 +1,10 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Michael Haubenwallner <haubi@gentoo.org> (23 Mar 2017) +# Using nettle hides a conflict between wincrypt and openssl. +app-arch/libarchive nettle + +# Michael Haubenwallner <haubi@gentoo.org> (18 Apr 2016) +# Cygwin coreutils provide kill as gkill +sys-apps/coreutils kill diff --git a/profiles/prefix/windows/cygwin/packages b/profiles/prefix/windows/cygwin/packages new file mode 100644 index 000000000000..48b7c0bfe442 --- /dev/null +++ b/profiles/prefix/windows/cygwin/packages @@ -0,0 +1,5 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +*sys-devel/binutils +*sys-libs/cygwin-crypt diff --git a/profiles/prefix/windows/cygwin/parent b/profiles/prefix/windows/cygwin/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/cygwin/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/cygwin/use.force b/profiles/prefix/windows/cygwin/use.force new file mode 100644 index 000000000000..e5b3845e4e0f --- /dev/null +++ b/profiles/prefix/windows/cygwin/use.force @@ -0,0 +1,5 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Re-add Cygwin's libc +elibc_Cygwin diff --git a/profiles/prefix/windows/cygwin/use.mask b/profiles/prefix/windows/cygwin/use.mask new file mode 100644 index 000000000000..a953069a8059 --- /dev/null +++ b/profiles/prefix/windows/cygwin/use.mask @@ -0,0 +1,10 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Re-add Cygwin's libc +-elibc_Cygwin + +# we do not have python-3 cygwin ready yet +python_targets_python3_4 +python_targets_python3_5 +python_targets_python3_6 diff --git a/profiles/prefix/windows/cygwin/x64/eapi b/profiles/prefix/windows/cygwin/x64/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/cygwin/x64/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/cygwin/x64/make.defaults b/profiles/prefix/windows/cygwin/x64/make.defaults new file mode 100644 index 000000000000..118f797c4e3f --- /dev/null +++ b/profiles/prefix/windows/cygwin/x64/make.defaults @@ -0,0 +1,17 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +ARCH="x64-cygwin" +CHOST="x86_64-pc-cygwin" +ACCEPT_KEYWORDS="~x64-cygwin" + +# We don't have lib64 in prefix so, remove it here. +SYMLINK_LIB="" +LIBDIR_amd64="lib" + +# multilib build stuff, single ABI (no multilib) +MULTILIB_ABIS="amd64" +DEFAULT_ABI="amd64" +ABI="amd64" +IUSE_IMPLICIT="abi_x86_64" +LIBDIR_amd64="lib" diff --git a/profiles/prefix/windows/cygwin/x64/parent b/profiles/prefix/windows/cygwin/x64/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/cygwin/x64/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/cygwin/x86/eapi b/profiles/prefix/windows/cygwin/x86/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/cygwin/x86/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/cygwin/x86/make.defaults b/profiles/prefix/windows/cygwin/x86/make.defaults new file mode 100644 index 000000000000..1b849ae1b953 --- /dev/null +++ b/profiles/prefix/windows/cygwin/x86/make.defaults @@ -0,0 +1,13 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +ARCH="x86-cygwin" +CHOST="i686-pc-cygwin" +ACCEPT_KEYWORDS="~x86-cygwin ~x86-linux" + +# multilib build stuff, single ABI (no multilib) +MULTILIB_ABIS="x86" +DEFAULT_ABI="x86" +ABI="x86" +IUSE_IMPLICIT="abi_x86_32" +LIBDIR_x86="lib" diff --git a/profiles/prefix/windows/cygwin/x86/parent b/profiles/prefix/windows/cygwin/x86/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/cygwin/x86/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/eapi b/profiles/prefix/windows/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/package.mask b/profiles/prefix/windows/package.mask new file mode 100644 index 000000000000..d83ee31002e4 --- /dev/null +++ b/profiles/prefix/windows/package.mask @@ -0,0 +1,6 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Michael Haubenwallner <haubi@gentoo.org> (19 May 2016) +# No point for util-linux on Windows +sys-apps/util-linux diff --git a/profiles/prefix/windows/parent b/profiles/prefix/windows/parent new file mode 100644 index 000000000000..8f6bb2022d1e --- /dev/null +++ b/profiles/prefix/windows/parent @@ -0,0 +1,3 @@ +../../base +../../arch/base +.. diff --git a/profiles/prefix/windows/use.force b/profiles/prefix/windows/use.force new file mode 100644 index 000000000000..6dfa2704237a --- /dev/null +++ b/profiles/prefix/windows/use.force @@ -0,0 +1,5 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Re-add Windows kernel +kernel_Winnt diff --git a/profiles/prefix/windows/use.mask b/profiles/prefix/windows/use.mask new file mode 100644 index 000000000000..2d725b48a334 --- /dev/null +++ b/profiles/prefix/windows/use.mask @@ -0,0 +1,8 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Re-add Windows kernel +-kernel_Winnt + +# linux-exclusive feature +inotify diff --git a/profiles/prefix/windows/winnt/3.5/eapi b/profiles/prefix/windows/winnt/3.5/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/3.5/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/3.5/parent b/profiles/prefix/windows/winnt/3.5/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/3.5/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/3.5/x86/eapi b/profiles/prefix/windows/winnt/3.5/x86/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/3.5/x86/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/3.5/x86/make.defaults b/profiles/prefix/windows/winnt/3.5/x86/make.defaults new file mode 100644 index 000000000000..21cc6becd407 --- /dev/null +++ b/profiles/prefix/windows/winnt/3.5/x86/make.defaults @@ -0,0 +1,6 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +ARCH="x86-winnt" +CHOST="i586-pc-winnt3.5" +ACCEPT_KEYWORDS="~x86-winnt" diff --git a/profiles/prefix/windows/winnt/3.5/x86/parent b/profiles/prefix/windows/winnt/3.5/x86/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/3.5/x86/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/5.2/eapi b/profiles/prefix/windows/winnt/5.2/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/5.2/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/5.2/parent b/profiles/prefix/windows/winnt/5.2/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/5.2/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/5.2/x86/eapi b/profiles/prefix/windows/winnt/5.2/x86/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/5.2/x86/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/5.2/x86/make.defaults b/profiles/prefix/windows/winnt/5.2/x86/make.defaults new file mode 100644 index 000000000000..6196da2d7a5c --- /dev/null +++ b/profiles/prefix/windows/winnt/5.2/x86/make.defaults @@ -0,0 +1,6 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +ARCH="x86-winnt" +CHOST="i586-pc-winnt5.2" +ACCEPT_KEYWORDS="~x86-winnt" diff --git a/profiles/prefix/windows/winnt/5.2/x86/parent b/profiles/prefix/windows/winnt/5.2/x86/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/5.2/x86/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/6.0/eapi b/profiles/prefix/windows/winnt/6.0/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/6.0/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/6.0/parent b/profiles/prefix/windows/winnt/6.0/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/6.0/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/6.0/x86/eapi b/profiles/prefix/windows/winnt/6.0/x86/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/6.0/x86/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/6.0/x86/make.defaults b/profiles/prefix/windows/winnt/6.0/x86/make.defaults new file mode 100644 index 000000000000..c28e21320203 --- /dev/null +++ b/profiles/prefix/windows/winnt/6.0/x86/make.defaults @@ -0,0 +1,6 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +ARCH="x86-winnt" +CHOST="i586-pc-winnt6.0" +ACCEPT_KEYWORDS="~x86-winnt" diff --git a/profiles/prefix/windows/winnt/6.0/x86/parent b/profiles/prefix/windows/winnt/6.0/x86/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/6.0/x86/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/6.1/eapi b/profiles/prefix/windows/winnt/6.1/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/6.1/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/6.1/parent b/profiles/prefix/windows/winnt/6.1/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/6.1/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/6.1/x86/eapi b/profiles/prefix/windows/winnt/6.1/x86/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/6.1/x86/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/6.1/x86/make.defaults b/profiles/prefix/windows/winnt/6.1/x86/make.defaults new file mode 100644 index 000000000000..9dcc06845d96 --- /dev/null +++ b/profiles/prefix/windows/winnt/6.1/x86/make.defaults @@ -0,0 +1,6 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +ARCH="x86-winnt" +CHOST="i586-pc-winnt6.1" +ACCEPT_KEYWORDS="~x86-winnt" diff --git a/profiles/prefix/windows/winnt/6.1/x86/parent b/profiles/prefix/windows/winnt/6.1/x86/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/6.1/x86/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/eapi b/profiles/prefix/windows/winnt/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/make.defaults b/profiles/prefix/windows/winnt/make.defaults new file mode 100644 index 000000000000..bd1924d2c0ef --- /dev/null +++ b/profiles/prefix/windows/winnt/make.defaults @@ -0,0 +1,10 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# System-wide defaults for all Windows profiles +# This file should rarely need to be changed + +# 'Sane' defaults +ELIBC="Winnt" + +FEATURES="nostrip" diff --git a/profiles/prefix/windows/winnt/package.mask b/profiles/prefix/windows/winnt/package.mask new file mode 100644 index 000000000000..0af713753d95 --- /dev/null +++ b/profiles/prefix/windows/winnt/package.mask @@ -0,0 +1,8 @@ + +# Distributed under the terms of the GNU General Public License v2 + + +# Markus Duft <mduft@gentoo.org> (30 Sep 2009) +# the patch does not currently apply, and needs some work. +>=x11-proto/xproto-7.0.16 + diff --git a/profiles/prefix/windows/winnt/package.use.mask b/profiles/prefix/windows/winnt/package.use.mask new file mode 100644 index 000000000000..51b019b65f26 --- /dev/null +++ b/profiles/prefix/windows/winnt/package.use.mask @@ -0,0 +1,6 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Michael Haubenwallner <haubi@gentoo.org> (02 Oct 2017) +# requires nasm, which is hard to use via parity atm +dev-libs/openssl asm diff --git a/profiles/prefix/windows/winnt/packages b/profiles/prefix/windows/winnt/packages new file mode 100644 index 000000000000..7ffc61e1574f --- /dev/null +++ b/profiles/prefix/windows/winnt/packages @@ -0,0 +1,37 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# those are packages not available/required on winnt, since +# winnt can be a child EPREFIX only, which tears it's DEPENDS +# from a parent (e.g. x86-cygwin) prefix. + +-*sys-apps/grep +-*app-arch/gzip +-*sys-devel/libtool +-*virtual/man +-*sys-devel/patch +-*sys-devel/flex +-*sys-apps/gawk +-*app-arch/tar +-*sys-apps/sed +-*sys-devel/bison +-*sys-apps/file +-*app-arch/bzip2 +-*net-misc/rsync +-*sys-devel/automake +-*virtual/editor +-*sys-apps/coreutils +-*sys-devel/make +-*sys-apps/findutils +-*sys-devel/m4 +-*net-misc/wget +-*sys-apps/which +-*virtual/pager +-*sys-apps/diffutils +-*sys-apps/baselayout-prefix +-*app-shells/bash:0 +-*virtual/package-manager +-*virtual/ssh +-*sys-devel/autoconf +-*sys-devel/gnuconfig +-*sys-devel/gcc diff --git a/profiles/prefix/windows/winnt/parent b/profiles/prefix/windows/winnt/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/profile.bashrc b/profiles/prefix/windows/winnt/profile.bashrc new file mode 100644 index 000000000000..f1c5c365338b --- /dev/null +++ b/profiles/prefix/windows/winnt/profile.bashrc @@ -0,0 +1,151 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# On windows, binary files (executables, shared libraries) in use +# cannot be replaced during merge. +# But it is possible to rename them and remove lateron when they are +# not used any more by any running program. +# +# This is a workaround for portage bug#199868, +# and should be dropped once portage does sth. like this itself. +# + +# Need to explicitly set PKG_CONFIG_PATH for cross EPREFIX. +export PKG_CONFIG_PATH="${EPREFIX}/lib/pkgconfig:${EPREFIX}/usr/lib/pkgconfig" + +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' | while read f; do + if file "${f}" | grep "GUI" > /dev/null 2>&1; then + if test ! -f "${f%.exe}"; then + einfo "Windows GUI Executable $f will have no symlink." + fi + else + if test ! -f "${f%.exe}"; then + ebegin "creating ${f%.exe} -> ${f} for console accessibility." + eend $(ln -sf "$(basename "${f}")" "${f%.exe}" && echo 0 || echo 1) + fi + fi + 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 +} diff --git a/profiles/prefix/windows/winnt/use.force b/profiles/prefix/windows/winnt/use.force new file mode 100644 index 000000000000..4dbfdde651d7 --- /dev/null +++ b/profiles/prefix/windows/winnt/use.force @@ -0,0 +1,5 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Re-add Winnt libc +elibc_Winnt diff --git a/profiles/prefix/windows/winnt/use.mask b/profiles/prefix/windows/winnt/use.mask new file mode 100644 index 000000000000..eb0c49f36f14 --- /dev/null +++ b/profiles/prefix/windows/winnt/use.mask @@ -0,0 +1,75 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# Re-add Winnt libc +-elibc_Winnt + +# CURL_SSL=winssl is allowd on Winnt libc +-curl_ssl_winssl + +# these need a review, since they are just copied from interix +# these will more than likely never work on Windows +3dfx +acpi +alsa +altivec +apm +bluetooth +caps +cdr +coreaudio +dga +directfb +djbfft +dri +dvdr +# emacs USE flag is masked because of missing implementation for unexec() +emacs +fbcon +fmod +ggi +glut +gpm +gps +hardened +hddtemp +ibm +ieee1394 +ifc +ipod +ipv6 +lm_sensors +ncurses +netboot +opengl +oss +pcmcia +pda +rtc +selinux +scanner +smartcard +svga +uclibc +# unicode is totally b0rked on interix +unicode +usb +v4l +wifi + +# these are USE flags that don't _currently_ work, but may will in the future. +ffmpeg +fftw +flac +jack +joystick +ladspa +# opennmp is not working yet on interix +openmp +portaudio +pulseaudio +qt4 +readline +# libtiff only static, so avoid the tiff USE flag! +tiff +timidity |