diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-08-15 00:14:05 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-08-15 00:14:05 +0100 |
commit | 06a2593561b5f8054db8d68aa94b4338d2dd2bf6 (patch) | |
tree | 13e45c8f587efc7cf3385303b3a90c5c2a53755c /app-emulation/wine-vanilla/wine-vanilla-9999.ebuild | |
parent | 85dc262ae9ec9413f8172a2a8442d6d9134d02f4 (diff) |
gentoo auto-resync : 15:08:2023 - 00:14:05
Diffstat (limited to 'app-emulation/wine-vanilla/wine-vanilla-9999.ebuild')
-rw-r--r-- | app-emulation/wine-vanilla/wine-vanilla-9999.ebuild | 49 |
1 files changed, 29 insertions, 20 deletions
diff --git a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild index c6b837670cbb..1aaebe5aa269 100644 --- a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild +++ b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild @@ -189,12 +189,16 @@ src_prepare() { if tc-is-clang; then if use mingw; then # -mabi=ms was ignored by <clang:16 then turned error in :17 - # and it still gets used in install phase despite USE=mingw, - # drop as a quick fix for now which hopefully should be safe + # if used without --target *-windows, then gets used in install + # phase despite USE=mingw, drop as a quick fix for now sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die else - # known broken due to bug #912237, require mingw for now - die "building ${PN} with clang requires USE=mingw to be enabled" + # fails in ./configure unless --enable-archs is passed, allow to + # bypass with EXTRA_ECONF but is currently considered unsupported + # (by Gentoo) as additional work is needed for (proper) support + # note: also fails w/ :17, but unsure if safe to drop w/o mingw + [[ ${EXTRA_ECONF} == *--enable-archs* ]] || + die "building ${PN} with clang is only supported with USE=mingw" fi fi @@ -344,22 +348,27 @@ src_install() { use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last - if use wow64; then - # compat symlinks, albeit ideally no one should call "wine64" - dosym wine ${WINE_PREFIX}/bin/wine64 - dosym wine-preloader ${WINE_PREFIX}/bin/wine64-preloader - elif use abi_x86_64 && use !abi_x86_32; then - # if no 32bit support it instead only installs "wine64" which may - # come as unexpected, so provide "wine" alongside its man page - dosym wine64 ${WINE_PREFIX}/bin/wine - dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader - local man - for man in ../build64/loader/wine.*man; do - : "${man##*/wine}" - : "${_%.*}" - insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1 - newins ${man} wine.1 - done + # Ensure both wine64 and wine are available if USE=abi_x86_64 (wow64, + # -abi_x86_32, and/or EXTRA_ECONF could cause varying scenarios where + # one or the other could be missing and that is unexpected for users + # and some tools like winetricks) + if use abi_x86_64; then + if [[ -e ${ED}${WINE_PREFIX}/bin/wine64 && ! -e ${ED}${WINE_PREFIX}/bin/wine ]]; then + dosym wine64 ${WINE_PREFIX}/bin/wine + dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader + + # also install wine(1) man pages (incl. translations) + local man + for man in ../build64/loader/wine.*man; do + : "${man##*/wine}" + : "${_%.*}" + insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1 + newins ${man} wine.1 + done + elif [[ ! -e ${ED}${WINE_PREFIX}/bin/wine64 && -e ${ED}${WINE_PREFIX}/bin/wine ]]; then + dosym wine ${WINE_PREFIX}/bin/wine64 + dosym wine-preloader ${WINE_PREFIX}/bin/wine64-preloader + fi fi use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \ |