diff options
author | 2018-01-22 17:50:32 -0500 | |
---|---|---|
committer | 2018-01-22 17:51:19 -0500 | |
commit | 12b38f5a8967f6eec0df09f4af4c3c8d9ec80ae0 (patch) | |
tree | c441b62ad99273681fd36a079cc4a297ed7f1078 /app-emulation/wine-any | |
parent | app-emulation/wine-d3d9: Sync from ::wine (diff) | |
download | gentoo-12b38f5a8967f6eec0df09f4af4c3c8d9ec80ae0.tar.gz gentoo-12b38f5a8967f6eec0df09f4af4c3c8d9ec80ae0.tar.bz2 gentoo-12b38f5a8967f6eec0df09f4af4c3c8d9ec80ae0.zip |
app-emulation/wine-any: Sync from ::wine
Clean up manpage fixes
Use estack eclass to avoid dealing with specifics of shopt usage
Change implementation to handle any manpage from any locale
Remove linguas references, finishing l10n switch
Closes: https://bugs.gentoo.org/645238
Bug: https://bugs.gentoo.org/617864
Closes: https://bugs.gentoo.org/643576
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'app-emulation/wine-any')
-rw-r--r-- | app-emulation/wine-any/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/wine-any/wine-any-2.0-r1.ebuild | 54 | ||||
-rw-r--r-- | app-emulation/wine-any/wine-any-2.19.ebuild | 54 | ||||
-rw-r--r-- | app-emulation/wine-any/wine-any-2.20.ebuild | 54 | ||||
-rw-r--r-- | app-emulation/wine-any/wine-any-2.21.ebuild | 54 | ||||
-rw-r--r-- | app-emulation/wine-any/wine-any-9999.ebuild | 54 |
6 files changed, 136 insertions, 136 deletions
diff --git a/app-emulation/wine-any/Manifest b/app-emulation/wine-any/Manifest index e4951a2a3553..4cefebde19a1 100644 --- a/app-emulation/wine-any/Manifest +++ b/app-emulation/wine-any/Manifest @@ -1,4 +1,4 @@ -DIST gentoo-wine-patches-20180119.tar.xz 58688 BLAKE2B e7d44906f3c81c69fd3016ac6a7e2b8e68cc82762cc0a6b469e572d9b2edfd04ce9353e151c07dac11f82b1d108517fc86862d724e83ee8c4e938d64f3f9b934 SHA512 3e605bf613dca333e501b5578d9c92a42d351a23f8d7d9d6a545a7dc043dcc4c7f52918e6ad46db63a6f00f3ace4b77055f8343176afb976e6a04590dcee64b7 +DIST gentoo-wine-patches-20180120.tar.xz 58672 BLAKE2B 84d621075b65475cec41a06429680b518d7eafb938cefd903f3f8aa71ea3049ac9d8de05af48f9f4f4a1b9172c7ef17784540413e410eb8ec11e8ec4a63858c6 SHA512 5b354a409c7a2b77499aaa593b9248a1d15d755e3687b095755faacc30068bfcdbdd5c2a2a78617cb1a78c46d2931162bd69ec3379b035d81494bea7108263c2 DIST wine-2.0.tar.bz2 23662707 BLAKE2B 1d485c1359ce8a0395a9f6378c1f8be33ea2836b80390d1eb1095057a0acedd21708daab16e1851a315391b9f9b0a360879b9d98c73bcc8371c5023e9a8037f5 SHA512 b0a57ba8202d9fc396e5bfb7a7718d6bababbed8f3351e7fdc36afa37f35a871e04903757618f73427aeb71a52b2d323977d79e48f8b38d636f23fd404441186 DIST wine-2.19.tar.xz 19549464 BLAKE2B 86d130cc43d7d674d2f478365952962b2792fd585b8d074564108bc7e9f4f7690337e4758b9a24e54fe8fd60187d3a96496a5ffc454ba674b02ecdde68efd3bb SHA512 83558231bdc592b1f69cfedf6c689063df7bd9fecdfafba6fb7f6a2c7fa7783973efb85a6a49305afc18b1aa268209ee5b9c0655756e05d7550468698dfa51ae DIST wine-2.20.tar.xz 19597556 BLAKE2B 80a9886fa77e5788b143521288f7d83c92754610c9426e58c759d2c33767bd23f7d2a44a17ceeec0bfe9065264393e0aa1087a0827ea7d438ffd938ba2eb2fb5 SHA512 d8d374d1e690ce9d3964fc81054fb7f4cd56cbae6bc44ebbf80b7dc7f04524baa2bd831e0be8f00de4cb0e14c1cb71780d424f5dcb9851fcaed9fb22f5ce5d23 diff --git a/app-emulation/wine-any/wine-any-2.0-r1.ebuild b/app-emulation/wine-any/wine-any-2.0-r1.ebuild index 29a108cac284..bf410a00dfd0 100644 --- a/app-emulation/wine-any/wine-any-2.0-r1.ebuild +++ b/app-emulation/wine-any/wine-any-2.0-r1.ebuild @@ -6,7 +6,7 @@ EAPI=6 PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW" PLOCALE_BACKUP="en" -inherit autotools eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils +inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils MY_PN="${PN%%-*}" MY_P="${MY_PN}-${PV}" @@ -28,7 +28,7 @@ STAGING_P="wine-staging-${PV}" STAGING_DIR="${WORKDIR}/${STAGING_P}" D3D9_P="wine-d3d9-${PV}" D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}" -GWP_V="20180119" +GWP_V="20180120" PATCHDIR="${WORKDIR}/gentoo-wine-patches" DESCRIPTION="Free implementation of Windows(tm) on Unix, with optional external patchsets" @@ -192,7 +192,7 @@ PATCHES=( "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611 "${PATCHDIR}/patches/freetype-2.8.1-segfault.patch" #631676 "${PATCHDIR}/patches/freetype-2.8.1-drop-glyphs.patch" #631376 - "${PATCHDIR}/patches/${MY_PN}-2.0-prevent-build-of-localized-manpages.patch" #469418 #617864 + "${PATCHDIR}/patches/${MY_PN}-2.0-rearrange-manpages.patch" #469418 #617864 ) PATCHES_BIN=( "${PATCHDIR}/patches/freetype-2.8.1-patch-fonts.patch" #631376 @@ -428,29 +428,30 @@ src_prepare() { l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS # Fix manpage generation for locales #469418 and abi_x86_64 #617864 - # Depends on wine-2.0-prevent-build-of-localized-manpages.patch" - # Duplicate manpages input for wine64 - local man - for man in loader/*.man.in; do - cp ${man} ${man/wine/wine64} || die + # Requires wine-2.0-rearrange-manpages.patch + + # Duplicate manpages input files for wine64 + local f + for f in loader/*.man.in; do + cp ${f} ${f/wine/wine64} || die done - # Add in proper manpages to Makefile - local search_text="wine.man.in" + # Add wine64 manpages to Makefile if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.man.in "$'\\\\' loader/Makefile.in || die + sed -i "/wine.man.in/i \ + \\\twine64.man.in \\\\" loader/Makefile.in || die + sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\ +\164\2/' loader/Makefile.in || die fi - local l - for l in de fr pl; do - if has ${l} ${LINGUAS-${l}}; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - fi - fi - done + + rm_man_file(){ + local file="${1}" + loc=${2} + sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die + } + + while read f; do + l10n_for_each_disabled_locale_do rm_man_file "${f}" + done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print) } src_configure() { @@ -590,16 +591,15 @@ multilib_src_install_all() { dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader fi - # Failglob for bin and man loops - local glob_state=$(shopt -p failglob) - shopt -s failglob - + # Failglob for binloops, shouldn't be necessary, but including to stay safe + eshopts_push -s failglob #615218 # Make wrappers for binaries for handling multiple variants # Note: wrappers instead of symlinks because some are shell which use basename local b for b in "${D%/}${MY_PREFIX}"/bin/*; do make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}" done + eshopts_pop } pkg_postinst() { diff --git a/app-emulation/wine-any/wine-any-2.19.ebuild b/app-emulation/wine-any/wine-any-2.19.ebuild index 63346482c6e9..bdbe5cc7ddea 100644 --- a/app-emulation/wine-any/wine-any-2.19.ebuild +++ b/app-emulation/wine-any/wine-any-2.19.ebuild @@ -6,7 +6,7 @@ EAPI=6 PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW" PLOCALE_BACKUP="en" -inherit autotools eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils +inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils MY_PN="${PN%%-*}" MY_P="${MY_PN}-${PV}" @@ -28,7 +28,7 @@ STAGING_P="wine-staging-${PV}" STAGING_DIR="${WORKDIR}/${STAGING_P}" D3D9_P="wine-d3d9-${PV}" D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}" -GWP_V="20180119" +GWP_V="20180120" PATCHDIR="${WORKDIR}/gentoo-wine-patches" DESCRIPTION="Free implementation of Windows(tm) on Unix, with optional external patchsets" @@ -191,7 +191,7 @@ PATCHES=( "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615 "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508 "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611 - "${PATCHDIR}/patches/${MY_PN}-2.0-prevent-build-of-localized-manpages.patch" #469418 #617864 + "${PATCHDIR}/patches/${MY_PN}-2.0-rearrange-manpages.patch" #469418 #617864 ) PATCHES_BIN=() @@ -425,29 +425,30 @@ src_prepare() { l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS # Fix manpage generation for locales #469418 and abi_x86_64 #617864 - # Depends on wine-2.0-prevent-build-of-localized-manpages.patch" - # Duplicate manpages input for wine64 - local man - for man in loader/*.man.in; do - cp ${man} ${man/wine/wine64} || die + # Requires wine-2.0-rearrange-manpages.patch + + # Duplicate manpages input files for wine64 + local f + for f in loader/*.man.in; do + cp ${f} ${f/wine/wine64} || die done - # Add in proper manpages to Makefile - local search_text="wine.man.in" + # Add wine64 manpages to Makefile if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.man.in "$'\\\\' loader/Makefile.in || die + sed -i "/wine.man.in/i \ + \\\twine64.man.in \\\\" loader/Makefile.in || die + sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\ +\164\2/' loader/Makefile.in || die fi - local l - for l in de fr pl; do - if has ${l} ${LINGUAS-${l}}; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - fi - fi - done + + rm_man_file(){ + local file="${1}" + loc=${2} + sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die + } + + while read f; do + l10n_for_each_disabled_locale_do rm_man_file "${f}" + done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print) } src_configure() { @@ -588,16 +589,15 @@ multilib_src_install_all() { dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader fi - # Failglob for bin and man loops - local glob_state=$(shopt -p failglob) - shopt -s failglob - + # Failglob for binloops, shouldn't be necessary, but including to stay safe + eshopts_push -s failglob #615218 # Make wrappers for binaries for handling multiple variants # Note: wrappers instead of symlinks because some are shell which use basename local b for b in "${D%/}${MY_PREFIX}"/bin/*; do make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}" done + eshopts_pop } pkg_postinst() { diff --git a/app-emulation/wine-any/wine-any-2.20.ebuild b/app-emulation/wine-any/wine-any-2.20.ebuild index 8104783ba8ad..dfe4cca912e1 100644 --- a/app-emulation/wine-any/wine-any-2.20.ebuild +++ b/app-emulation/wine-any/wine-any-2.20.ebuild @@ -6,7 +6,7 @@ EAPI=6 PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW" PLOCALE_BACKUP="en" -inherit autotools eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils +inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils MY_PN="${PN%%-*}" MY_P="${MY_PN}-${PV}" @@ -28,7 +28,7 @@ STAGING_P="wine-staging-${PV}" STAGING_DIR="${WORKDIR}/${STAGING_P}" D3D9_P="wine-d3d9-${PV}" D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}" -GWP_V="20180119" +GWP_V="20180120" PATCHDIR="${WORKDIR}/gentoo-wine-patches" DESCRIPTION="Free implementation of Windows(tm) on Unix, with optional external patchsets" @@ -192,7 +192,7 @@ PATCHES=( "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615 "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508 "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611 - "${PATCHDIR}/patches/${MY_PN}-2.0-prevent-build-of-localized-manpages.patch" #469418 #617864 + "${PATCHDIR}/patches/${MY_PN}-2.0-rearrange-manpages.patch" #469418 #617864 ) PATCHES_BIN=() @@ -426,29 +426,30 @@ src_prepare() { l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS # Fix manpage generation for locales #469418 and abi_x86_64 #617864 - # Depends on wine-2.0-prevent-build-of-localized-manpages.patch" - # Duplicate manpages input for wine64 - local man - for man in loader/*.man.in; do - cp ${man} ${man/wine/wine64} || die + # Requires wine-2.0-rearrange-manpages.patch + + # Duplicate manpages input files for wine64 + local f + for f in loader/*.man.in; do + cp ${f} ${f/wine/wine64} || die done - # Add in proper manpages to Makefile - local search_text="wine.man.in" + # Add wine64 manpages to Makefile if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.man.in "$'\\\\' loader/Makefile.in || die + sed -i "/wine.man.in/i \ + \\\twine64.man.in \\\\" loader/Makefile.in || die + sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\ +\164\2/' loader/Makefile.in || die fi - local l - for l in de fr pl; do - if has ${l} ${LINGUAS-${l}}; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - fi - fi - done + + rm_man_file(){ + local file="${1}" + loc=${2} + sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die + } + + while read f; do + l10n_for_each_disabled_locale_do rm_man_file "${f}" + done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print) } src_configure() { @@ -590,16 +591,15 @@ multilib_src_install_all() { dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader fi - # Failglob for bin and man loops - local glob_state=$(shopt -p failglob) - shopt -s failglob - + # Failglob for binloops, shouldn't be necessary, but including to stay safe + eshopts_push -s failglob #615218 # Make wrappers for binaries for handling multiple variants # Note: wrappers instead of symlinks because some are shell which use basename local b for b in "${D%/}${MY_PREFIX}"/bin/*; do make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}" done + eshopts_pop } pkg_postinst() { diff --git a/app-emulation/wine-any/wine-any-2.21.ebuild b/app-emulation/wine-any/wine-any-2.21.ebuild index 8104783ba8ad..dfe4cca912e1 100644 --- a/app-emulation/wine-any/wine-any-2.21.ebuild +++ b/app-emulation/wine-any/wine-any-2.21.ebuild @@ -6,7 +6,7 @@ EAPI=6 PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW" PLOCALE_BACKUP="en" -inherit autotools eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils +inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils MY_PN="${PN%%-*}" MY_P="${MY_PN}-${PV}" @@ -28,7 +28,7 @@ STAGING_P="wine-staging-${PV}" STAGING_DIR="${WORKDIR}/${STAGING_P}" D3D9_P="wine-d3d9-${PV}" D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}" -GWP_V="20180119" +GWP_V="20180120" PATCHDIR="${WORKDIR}/gentoo-wine-patches" DESCRIPTION="Free implementation of Windows(tm) on Unix, with optional external patchsets" @@ -192,7 +192,7 @@ PATCHES=( "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615 "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508 "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611 - "${PATCHDIR}/patches/${MY_PN}-2.0-prevent-build-of-localized-manpages.patch" #469418 #617864 + "${PATCHDIR}/patches/${MY_PN}-2.0-rearrange-manpages.patch" #469418 #617864 ) PATCHES_BIN=() @@ -426,29 +426,30 @@ src_prepare() { l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS # Fix manpage generation for locales #469418 and abi_x86_64 #617864 - # Depends on wine-2.0-prevent-build-of-localized-manpages.patch" - # Duplicate manpages input for wine64 - local man - for man in loader/*.man.in; do - cp ${man} ${man/wine/wine64} || die + # Requires wine-2.0-rearrange-manpages.patch + + # Duplicate manpages input files for wine64 + local f + for f in loader/*.man.in; do + cp ${f} ${f/wine/wine64} || die done - # Add in proper manpages to Makefile - local search_text="wine.man.in" + # Add wine64 manpages to Makefile if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.man.in "$'\\\\' loader/Makefile.in || die + sed -i "/wine.man.in/i \ + \\\twine64.man.in \\\\" loader/Makefile.in || die + sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\ +\164\2/' loader/Makefile.in || die fi - local l - for l in de fr pl; do - if has ${l} ${LINGUAS-${l}}; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - fi - fi - done + + rm_man_file(){ + local file="${1}" + loc=${2} + sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die + } + + while read f; do + l10n_for_each_disabled_locale_do rm_man_file "${f}" + done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print) } src_configure() { @@ -590,16 +591,15 @@ multilib_src_install_all() { dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader fi - # Failglob for bin and man loops - local glob_state=$(shopt -p failglob) - shopt -s failglob - + # Failglob for binloops, shouldn't be necessary, but including to stay safe + eshopts_push -s failglob #615218 # Make wrappers for binaries for handling multiple variants # Note: wrappers instead of symlinks because some are shell which use basename local b for b in "${D%/}${MY_PREFIX}"/bin/*; do make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}" done + eshopts_pop } pkg_postinst() { diff --git a/app-emulation/wine-any/wine-any-9999.ebuild b/app-emulation/wine-any/wine-any-9999.ebuild index 8104783ba8ad..dfe4cca912e1 100644 --- a/app-emulation/wine-any/wine-any-9999.ebuild +++ b/app-emulation/wine-any/wine-any-9999.ebuild @@ -6,7 +6,7 @@ EAPI=6 PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW" PLOCALE_BACKUP="en" -inherit autotools eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils +inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils MY_PN="${PN%%-*}" MY_P="${MY_PN}-${PV}" @@ -28,7 +28,7 @@ STAGING_P="wine-staging-${PV}" STAGING_DIR="${WORKDIR}/${STAGING_P}" D3D9_P="wine-d3d9-${PV}" D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}" -GWP_V="20180119" +GWP_V="20180120" PATCHDIR="${WORKDIR}/gentoo-wine-patches" DESCRIPTION="Free implementation of Windows(tm) on Unix, with optional external patchsets" @@ -192,7 +192,7 @@ PATCHES=( "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615 "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508 "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611 - "${PATCHDIR}/patches/${MY_PN}-2.0-prevent-build-of-localized-manpages.patch" #469418 #617864 + "${PATCHDIR}/patches/${MY_PN}-2.0-rearrange-manpages.patch" #469418 #617864 ) PATCHES_BIN=() @@ -426,29 +426,30 @@ src_prepare() { l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS # Fix manpage generation for locales #469418 and abi_x86_64 #617864 - # Depends on wine-2.0-prevent-build-of-localized-manpages.patch" - # Duplicate manpages input for wine64 - local man - for man in loader/*.man.in; do - cp ${man} ${man/wine/wine64} || die + # Requires wine-2.0-rearrange-manpages.patch + + # Duplicate manpages input files for wine64 + local f + for f in loader/*.man.in; do + cp ${f} ${f/wine/wine64} || die done - # Add in proper manpages to Makefile - local search_text="wine.man.in" + # Add wine64 manpages to Makefile if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.man.in "$'\\\\' loader/Makefile.in || die + sed -i "/wine.man.in/i \ + \\\twine64.man.in \\\\" loader/Makefile.in || die + sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\ +\164\2/' loader/Makefile.in || die fi - local l - for l in de fr pl; do - if has ${l} ${LINGUAS-${l}}; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - if use abi_x86_64; then - sed -i "/${search_text}/i \ - "$'\\\t'"wine64.${l}.UTF-8.man.in "$'\\\\' loader/Makefile.in || die - fi - fi - done + + rm_man_file(){ + local file="${1}" + loc=${2} + sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die + } + + while read f; do + l10n_for_each_disabled_locale_do rm_man_file "${f}" + done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print) } src_configure() { @@ -590,16 +591,15 @@ multilib_src_install_all() { dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader fi - # Failglob for bin and man loops - local glob_state=$(shopt -p failglob) - shopt -s failglob - + # Failglob for binloops, shouldn't be necessary, but including to stay safe + eshopts_push -s failglob #615218 # Make wrappers for binaries for handling multiple variants # Note: wrappers instead of symlinks because some are shell which use basename local b for b in "${D%/}${MY_PREFIX}"/bin/*; do make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}" done + eshopts_pop } pkg_postinst() { |