git: 5aa9792e666d - main - emulators/wine8: New port, cloning emulators/wine
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 03 Mar 2024 14:00:45 UTC
The branch main has been updated by gerald: URL: https://cgit.FreeBSD.org/ports/commit/?id=5aa9792e666ded773547cbe481c75a87de10fdee commit 5aa9792e666ded773547cbe481c75a87de10fdee Author: Gerald Pfeifer <gerald@FreeBSD.org> AuthorDate: 2024-03-03 13:58:35 +0000 Commit: Gerald Pfeifer <gerald@FreeBSD.org> CommitDate: 2024-03-03 14:00:33 +0000 emulators/wine8: New port, cloning emulators/wine Wine 9 has been released some weeks ago and it's time to upgrade the main emulators/wine port. However, there may be some regressions (in particular around WoW64), so create emulators/wine8 as a clone of the state before the version upgrade as a fallback. [1] Since it is rarely, if ever, used, in particular in this context, remove the MONO option. Discussed with: Lexi Winter <lexi@le-fay.org> [1] --- emulators/Makefile | 1 + emulators/wine8/Makefile | 163 ++ emulators/wine8/distinfo | 3 + emulators/wine8/files/patch-configure | 12 + .../wine8/files/patch-dlls_ntdll_unix_loader.c | 24 + emulators/wine8/files/pkg-message.in | 13 + emulators/wine8/files/pkg32.sh | 20 + emulators/wine8/files/wine-wow64.sh | 59 + emulators/wine8/files/wine.sh | 17 + emulators/wine8/pkg-descr | 15 + emulators/wine8/pkg-plist | 2611 ++++++++++++++++++++ 11 files changed, 2938 insertions(+) diff --git a/emulators/Makefile b/emulators/Makefile index 4f9221a66099..64d7b630bc9e 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -172,6 +172,7 @@ SUBDIR += wine-mono SUBDIR += wine-mono-devel SUBDIR += wine-proton + SUBDIR += wine8 SUBDIR += winetricks SUBDIR += x16-emulator SUBDIR += x16-rom diff --git a/emulators/wine8/Makefile b/emulators/wine8/Makefile new file mode 100644 index 000000000000..2a595af82679 --- /dev/null +++ b/emulators/wine8/Makefile @@ -0,0 +1,163 @@ +PORTNAME= wine +DISTVERSION= 8.0.2 +CATEGORIES= emulators +MASTER_SITES= https://dl.winehq.org/wine/source/8.0/ +PKGNAMESUFFIX= 8 + +MAINTAINER= gerald@FreeBSD.org +COMMENT= Microsoft Windows compatibility environment +WWW= https://www.winehq.org + +LICENSE= LGPL21 LGPL3 +LICENSE_COMB= dual +LICENSE_FILE= ${WRKSRC}/LICENSE + +ONLY_FOR_ARCHS= amd64 i386 + +BUILD_DEPENDS= ${LOCALBASE}/bin/flex:textproc/flex llvm${_LLVM_VERSION}>=0:devel/llvm${_LLVM_VERSION} + +USES= bison cpe desktop-file-utils gmake localbase \ + pkgconfig sdl shebangfix tar:xz +USE_GCC= yes +USE_SDL= sdl2 + +CPE_VENDOR= winehq + +CONFLICTS_INSTALL= wine-devel + +GNU_CONFIGURE= yes +CONFIGURE_ARGS+=--verbose \ + --disable-kerberos \ + --disable-tests \ + --without-capi \ + --without-coreaudio \ + --without-dbus \ + --without-gettext --without-gettextpo \ + --without-gphoto \ + --without-gssapi \ + --without-gstreamer \ + --without-inotify \ + --without-krb5 \ + --with-mingw CROSSCC="clang" CROSSCFLAGS="-isystem ${FILESDIR}/clang" \ + --without-netapi \ + --without-opencl \ + --without-osmesa \ + --with-pcap \ + --with-pthread \ + --without-pulse \ + --without-sane \ + --with-sdl \ + --without-udev \ + --without-unwind \ + --without-usb +CONFIGURE_ENV= CPPBIN="${CPP}" FLEX="${LOCALBASE}/bin/flex" +WINELIBDIR= ${PREFIX}/lib +.if !defined(USE_LDCONFIG32) +USE_LDCONFIG= ${WINELIBDIR} ${WINELIBDIR}/wine +.endif +SHEBANG_FILES= tools/make_requests tools/winemaker/winemaker \ + tools/winedump/function_grep.pl + +BINARY_ALIAS+= clang=${LOCALBASE}/bin/clang${_LLVM_VERSION} \ + lld-link=${LOCALBASE}/bin/lld-link${_LLVM_VERSION} + +SUB_FILES= pkg-message + +PORTDATA= wine.inf + +OPTIONS_DEFINE= CUPS DOCS DOSBOX GNUTLS V4L WINEMAKER X11 GECKO +OPTIONS_DEFAULT=ALSA GNUTLS X11 +OPTIONS_RADIO= AUDIO +OPTIONS_RADIO_AUDIO= ALSA OSS +OPTIONS_SUB= yes + +DOSBOX_DESC= Use DOSBox to run MS-DOS programs +WINEMAKER_DESC= Fully support winemaker (requires Perl) +GECKO_DESC= Bundle Gecko MSI package for Wine + +PORTSCOUT= limit:^8\.0 + +ALSA_CONFIGURE_WITH= alsa +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +ALSA_RUN_DEPENDS= alsa-plugins>0:audio/alsa-plugins + +CUPS_CONFIGURE_WITH= cups +CUPS_LIB_DEPENDS= libcups.so:print/cups + +DOSBOX_RUN_DEPENDS= dosbox:emulators/dosbox + +GECKO_RUN_DEPENDS= wine-gecko>0:emulators/wine-gecko + +GNUTLS_CONFIGURE_WITH= gnutls +GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls + +OSS_CONFIGURE_WITH= oss + +V4L_CONFIGURE_WITH= v4l2 +V4L_BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat +V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l + +WINEMAKER_RUN_DEPENDS= p5-XML-LibXML>0:textproc/p5-XML-LibXML + +X11_CONFIGURE_WITH= x fontconfig freetype opengl xinerama xinput2 xrandr xrender +X11_USES= gl xorg +X11_USE= GL=glu XORG=x11,xext,xcomposite,xcursor,xi,xinerama,xrandr,xrender +X11_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ + libfreetype.so:print/freetype2 \ + libvulkan.so:graphics/vulkan-loader + +.include <bsd.port.pre.mk> + +.if (${LLVM_DEFAULT} == 10 || ${LLVM_DEFAULT} == 11) +_LLVM_VERSION= 15 +.else +_LLVM_VERSION= ${LLVM_DEFAULT} +.endif + +.if ${ARCH} == amd64 +# Wine is composed of three parts: +# - wine (aka this port on FreeBSD/i386) is the 32-bit component +# and runs 32-bit programs. +# - wine64 (aka this part of this port on FreeBSD/amd64) is the +# 64-bit component and runs 64-bit programs. +# - wow64 (aka this port built on FreeBSD/i386) is a part of the +# 64-bit component [wine64] that runs 32-bit programs on FreeBSD/amd64. + +# --libdir is required since Wine defaults to "${PREFIX}/lib64" on amd64. +CONFIGURE_ARGS+= --enable-win64 --libdir=${PREFIX}/lib +PLIST_SUB+= WINE32="@comment " WINE64="" WINEARCH="x86_64" + +# Wine assumes a WoW64 package is available, which is not the case on +# FreeBSD yet. +post-patch: + ${REINPLACE_CMD} '/Exec/s|wine|wine64|g' ${WRKSRC}/loader/wine.desktop + +.else +PLIST_SUB+= WINE32="" WINE64="@comment " WINEARCH="i386" +.endif + +pre-build: + cd ${WRKSRC} && ${MAKE_CMD} depend + +post-install: +.if ${ARCH} == i386 + ${MV} ${STAGEDIR}${PREFIX}/bin/wineserver ${STAGEDIR}${PREFIX}/bin/wineserver32 + ${MV} ${STAGEDIR}${PREFIX}/bin/wine ${STAGEDIR}${PREFIX}/bin/wine.bin + -${ELFCTL} -e +noaslr ${STAGEDIR}${PREFIX}/bin/wine.bin + ${INSTALL_SCRIPT} ${FILESDIR}/wine.sh ${STAGEDIR}${PREFIX}/bin/wine +.else + ${MV} ${STAGEDIR}${PREFIX}/bin/wine64 ${STAGEDIR}${PREFIX}/bin/wine64.bin + -${ELFCTL} -e +noaslr ${STAGEDIR}${PREFIX}/bin/wine64.bin + ${INSTALL_SCRIPT} ${FILESDIR}/wine.sh ${STAGEDIR}${PREFIX}/bin/wine64 + ${INSTALL_SCRIPT} ${FILESDIR}/wine-wow64.sh ${STAGEDIR}${PREFIX}/bin/wine + ${INSTALL_SCRIPT} ${FILESDIR}/pkg32.sh ${STAGEDIR}${DATADIR}/pkg32.sh +.endif + + @${MKDIR} ${STAGEDIR}${DOCSDIR} +.for i in README ANNOUNCE AUTHORS + ${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${DOCSDIR} +.endfor + ${INSTALL_DATA} ${WRKSRC}/programs/winedbg/README ${STAGEDIR}${DOCSDIR}/README.winedbg + ${INSTALL_DATA} ${WRKSRC}/tools/winedump/README ${STAGEDIR}${DOCSDIR}/README.winedump + +.include <bsd.port.post.mk> diff --git a/emulators/wine8/distinfo b/emulators/wine8/distinfo new file mode 100644 index 000000000000..528f5ad6c9ce --- /dev/null +++ b/emulators/wine8/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1691940152 +SHA256 (wine-8.0.2.tar.xz) = 6ec8fb6f2c72d576cb11f52b2f8d59af64404802154651d122b98466d91dc847 +SIZE (wine-8.0.2.tar.xz) = 29060452 diff --git a/emulators/wine8/files/patch-configure b/emulators/wine8/files/patch-configure new file mode 100644 index 000000000000..ece5103ce34a --- /dev/null +++ b/emulators/wine8/files/patch-configure @@ -0,0 +1,12 @@ +--- UTC +--- configure.orig 2023-02-02 21:17:09.000000000 +0000 ++++ configure 2023-05-01 21:19:03.739461000 +0000 +@@ -10696,7 +10696,7 @@ + fi + llvm_extra_cflags="-target $llvm_target -fuse-ld=lld" + case $llvm_target in +- *windows) llvm_cflags="-Wl,-subsystem:console -Wl,-WX" ;; ++ *windows) llvm_cflags="-Wl,-subsystem:console" ;; + esac + { as_ac_var=`printf "%s\n" "ac_cv_${wine_arch}_cflags_$llvm_extra_cflags $llvm_cflags" | $as_tr_sh` + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $llvm_extra_cflags $llvm_cflags" >&5 diff --git a/emulators/wine8/files/patch-dlls_ntdll_unix_loader.c b/emulators/wine8/files/patch-dlls_ntdll_unix_loader.c new file mode 100644 index 000000000000..c290524821a4 --- /dev/null +++ b/emulators/wine8/files/patch-dlls_ntdll_unix_loader.c @@ -0,0 +1,24 @@ +--- dlls/ntdll/unix/loader.c.orig 2023-07-19 15:29:22 UTC ++++ dlls/ntdll/unix/loader.c +@@ -694,6 +694,21 @@ static NTSTATUS loader_exec( char **argv, WORD machine + { + if (machine != current_machine) + { ++ char* wineserver_path = getenv("WINESERVER"); ++ if (wineserver_path != NULL && wineserver_path[0] == '/') { ++ char* s = remove_tail(wineserver_path, "server"); ++ if (s != NULL) { ++ if (machine == IMAGE_FILE_MACHINE_AMD64) { ++ argv[1] = malloc(strlen(s) + 3); ++ strcpy(argv[1], s); ++ strcat(argv[1], "64"); ++ } else { ++ argv[1] = s; ++ } ++ preloader_exec(argv); ++ } ++ } ++ + if (machine == IMAGE_FILE_MACHINE_AMD64) /* try the 64-bit loader */ + { + size_t len = strlen(wineloader); diff --git a/emulators/wine8/files/pkg-message.in b/emulators/wine8/files/pkg-message.in new file mode 100644 index 000000000000..a8632c68958b --- /dev/null +++ b/emulators/wine8/files/pkg-message.in @@ -0,0 +1,13 @@ +[ +{ type: install + message: <<EOM +Some ZFS tuning guides recommend setting KVA_PAGES=512 in your kernel +configuration. This is incompatible with Wine. The maximum possible +is KVA_PAGES=500, which should still be enough for ZFS. + +The port also installs some of Wine's documentation which describes +additional programs that are not in the manual pages under + %%PREFIX%%/share/doc/wine +EOM +} +] diff --git a/emulators/wine8/files/pkg32.sh b/emulators/wine8/files/pkg32.sh new file mode 100644 index 000000000000..d75422997e12 --- /dev/null +++ b/emulators/wine8/files/pkg32.sh @@ -0,0 +1,20 @@ +#!/bin/sh -e + +if [ "$(id -u)" = 0 ] +then + echo "Don't run this script as root!" + exit 1 +fi + +I386_ROOT="${WINE_i386_ROOT:-$HOME/.i386-wine-pkg}" + +if [ ! -d "$I386_ROOT/usr/share/keys/pkg" ] +then + mkdir -p "$I386_ROOT/usr/share/keys" + ln -s /usr/share/keys/pkg "$I386_ROOT/usr/share/keys/pkg" +fi + +ABI=$(pkg config ABI | sed s/amd64/i386/) +# Show what we're going to do, then do it. +echo pkg -o ABI="$ABI" -o INSTALL_AS_USER=true -o RUN_SCRIPTS=false --rootdir "$I386_ROOT" "$@" +exec pkg -o ABI="$ABI" -o INSTALL_AS_USER=true -o RUN_SCRIPTS=false --rootdir "$I386_ROOT" "$@" diff --git a/emulators/wine8/files/wine-wow64.sh b/emulators/wine8/files/wine-wow64.sh new file mode 100644 index 000000000000..8957e5f3c923 --- /dev/null +++ b/emulators/wine8/files/wine-wow64.sh @@ -0,0 +1,59 @@ +#!/bin/sh -e + +TARGET="$(realpath "$0")" +PREFIX="${TARGET%/*/*}" +LOCALBASE="${PREFIX}" + +I386_ROOT="${WINE_i386_ROOT:-$HOME/.i386-wine-pkg}" + +if [ ! -f "$I386_ROOT/$PREFIX/bin/wine" ] +then + printf "%s doesn't exist!\n\n" "$I386_ROOT/$PREFIX/bin/wine" + printf "Try installing 32-bit Wine with\n\t%s\n" "$PREFIX/share/wine/pkg32.sh install wine8 mesa-dri" + ABI=$(pkg config ABI | sed s/amd64/i386/) + FREEBSD_VERSION_MAJOR=`uname -r | sed "s/\..*//"` + cat <<- HERE + + If using Poudriere, please make sure your repo is setup to use ${ABI} + and create symlinks for + FreeBSD:$FREEBSD_VERSION_MAJOR:amd64 and + FreeBSD:$FREEBSD_VERSION_MAJOR:i386 + to the relevant output directories. See pkg.conf(5) for more info. +HERE + exit 1 +fi + +WINE32_VERSION=$(env -u WINELOADERNOEXEC "$I386_ROOT/$PREFIX/bin/wine" --version) +WINE64_VERSION=$(env -u WINELOADERNOEXEC "${TARGET}64" --version) +if [ "$WINE32_VERSION" != "$WINE64_VERSION" ] +then + printf "wine [%s] and wine64 [%s] versions do not match!\n\n" "$WINE32_VERSION" "$WINE64_VERSION" + printf "Try updating 32-bit wine with\n\t%s\n" "$PREFIX/share/wine/pkg32.sh upgrade" + exit 1 +fi + +export LIBGL_DRIVERS_PATH="${LIBGL_DRIVERS_PATH:+$LIBGL_DRIVERS_PATH:}$LOCALBASE/lib/dri-devel:$LOCALBASE/lib32/dri-devel:$I386_ROOT/$LOCALBASE/lib/dri-devel:$LOCALBASE/lib/dri:$LOCALBASE/lib32/dri:$I386_ROOT/$LOCALBASE/lib/dri" +export LD_32_LIBRARY_PATH="${LD_32_LIBRARY_PATH:+$LD_32_LIBRARY_PATH:}$I386_ROOT/$PREFIX/lib/wine:$LOCALBASE/lib32:$I386_ROOT/$LOCALBASE/lib" +for d in "$I386_ROOT/$LOCALBASE"/llvm*/lib +do + if [ -d "$d" ] + then + export LD_32_LIBRARY_PATH="$LD_32_LIBRARY_PATH:$d" + fi +done +export LD_32_LIBRARY_PATH_RPATH=y +LD_32_LIBMAP_CONF=$(sed "s,$LOCALBASE,$I386_ROOT&,2" "$I386_ROOT/$LOCALBASE"/etc/libmap.d/*.conf 2>/dev/null || true) +export LD_32_LIBMAP=" +libgcc_s.so.1 /usr/lib32/libgcc_s.so.1 +$LOCALBASE/lib/libvulkan_intel.so $I386_ROOT/$LOCALBASE/lib/libvulkan_intel.so +$LOCALBASE/lib/libvulkan_radeon.so $I386_ROOT/$LOCALBASE/lib/libvulkan_radeon.so +$LOCALBASE/lib/alsa-lib/libasound_module_pcm_oss.so $I386_ROOT/$LOCALBASE/lib/alsa-lib/libasound_module_pcm_oss.so +$LD_32_LIBMAP_CONF +$LD_32_LIBMAP" + +if [ -z "$WINE_NO_WOW64" ] +then + export WINESERVER="${TARGET}server" +fi + +exec "$I386_ROOT/$PREFIX/bin/wine" "$@" diff --git a/emulators/wine8/files/wine.sh b/emulators/wine8/files/wine.sh new file mode 100644 index 000000000000..ebd89e55ebdc --- /dev/null +++ b/emulators/wine8/files/wine.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +TARGET="$(realpath "$0")" + +if [ -z "$WINESERVER" ]; then + if [ -f "${TARGET%/*}/wineserver32" ]; then + export WINESERVER="${TARGET%/*}/wineserver32" + elif [ -f "${TARGET%/*}/wineserver" ]; then + export WINESERVER="${TARGET%/*}/wineserver" + fi +fi + +# Workaround for https://bugs.winehq.org/show_bug.cgi?id=50257 +export LD_BIND_NOW=1 +export LD_32_BIND_NOW=1 + +exec "${TARGET}.bin" "$@" diff --git a/emulators/wine8/pkg-descr b/emulators/wine8/pkg-descr new file mode 100644 index 000000000000..0723deaef3fd --- /dev/null +++ b/emulators/wine8/pkg-descr @@ -0,0 +1,15 @@ +Wine is a Microsoft Windows compatibility layer (or program loader) +capable of running Windows applications on i386 and compatible CPUs. +Windows programs running in Wine act as native programs would, running +without the performance or memory usage penalties of an emulator, with +a similar look and feel to other applications on your desktop. + +Many applications already work, more or less, including versions of +Microsoft Office and many games. + +If you receive a message of "Did you reconfigure your kernel with +"options USER_LDT"?" add the line + machdep.max_ldt_segment="2048" +to /boot/loader.conf and reboot. + +Gerald Pfeifer <gerald@FreeBSD.org> diff --git a/emulators/wine8/pkg-plist b/emulators/wine8/pkg-plist new file mode 100644 index 000000000000..8478ac9db0f5 --- /dev/null +++ b/emulators/wine8/pkg-plist @@ -0,0 +1,2611 @@ +bin/function_grep.pl +bin/msidb +bin/msiexec +bin/notepad +bin/regedit +bin/regsvr32 +bin/widl +bin/wine +%%WINE32%%bin/wine.bin +%%WINE64%%bin/wine64 +%%WINE64%%bin/wine64.bin +bin/wineboot +bin/winebuild +bin/winecfg +bin/wineconsole +bin/winecpp +bin/winedbg +bin/winedump +bin/winefile +bin/wineg++ +bin/winegcc +bin/winemaker +bin/winemine +bin/winepath +%%WINE64%%bin/wineserver +%%WINE32%%bin/wineserver32 +bin/wmc +bin/wrc +include/wine/debug.h +include/wine/exception.h +include/wine/iaccessible2.h +include/wine/iaccessible2.idl +include/wine/itss.h +include/wine/itss.idl +include/wine/mfinternal.h +include/wine/mfinternal.idl +include/wine/svcctl.h +include/wine/svcctl.idl +include/wine/msvcrt/assert.h +include/wine/msvcrt/complex.h +include/wine/msvcrt/conio.h +include/wine/msvcrt/corecrt.h +include/wine/msvcrt/corecrt_io.h +include/wine/msvcrt/corecrt_malloc.h +include/wine/msvcrt/corecrt_startup.h +include/wine/msvcrt/corecrt_stdio_config.h +include/wine/msvcrt/corecrt_wctype.h +include/wine/msvcrt/corecrt_wdirect.h +include/wine/msvcrt/corecrt_wio.h +include/wine/msvcrt/corecrt_wprocess.h +include/wine/msvcrt/corecrt_wstdio.h +include/wine/msvcrt/corecrt_wstdlib.h +include/wine/msvcrt/corecrt_wstring.h +include/wine/msvcrt/corecrt_wtime.h +include/wine/msvcrt/crtdbg.h +include/wine/msvcrt/crtdefs.h +include/wine/msvcrt/ctype.h +include/wine/msvcrt/direct.h +include/wine/msvcrt/dirent.h +include/wine/msvcrt/dos.h +include/wine/msvcrt/eh.h +include/wine/msvcrt/errno.h +include/wine/msvcrt/fcntl.h +include/wine/msvcrt/fenv.h +include/wine/msvcrt/float.h +include/wine/msvcrt/fpieee.h +include/wine/msvcrt/intrin.h +include/wine/msvcrt/inttypes.h +include/wine/msvcrt/io.h +include/wine/msvcrt/limits.h +include/wine/msvcrt/locale.h +include/wine/msvcrt/malloc.h +include/wine/msvcrt/math.h +include/wine/msvcrt/mbctype.h +include/wine/msvcrt/mbstring.h +include/wine/msvcrt/memory.h +include/wine/msvcrt/process.h +include/wine/msvcrt/search.h +include/wine/msvcrt/setjmp.h +include/wine/msvcrt/share.h +include/wine/msvcrt/signal.h +include/wine/msvcrt/stdarg.h +include/wine/msvcrt/stdbool.h +include/wine/msvcrt/stddef.h +include/wine/msvcrt/stdint.h +include/wine/msvcrt/stdio.h +include/wine/msvcrt/stdlib.h +include/wine/msvcrt/string.h +include/wine/msvcrt/sys/locking.h +include/wine/msvcrt/sys/stat.h +include/wine/msvcrt/sys/timeb.h +include/wine/msvcrt/sys/types.h +include/wine/msvcrt/sys/unistd.h +include/wine/msvcrt/sys/utime.h +include/wine/msvcrt/time.h +include/wine/msvcrt/uchar.h +include/wine/msvcrt/unistd.h +include/wine/msvcrt/vadefs.h +include/wine/msvcrt/wchar.h +include/wine/msvcrt/wctype.h +include/wine/windows/accctrl.h +include/wine/windows/access.idl +include/wine/windows/aclapi.h +include/wine/windows/aclui.h +include/wine/windows/activation.h +include/wine/windows/activation.idl +include/wine/windows/activaut.h +include/wine/windows/activaut.idl +include/wine/windows/activdbg.h +include/wine/windows/activdbg.idl +include/wine/windows/activscp.h +include/wine/windows/activscp.idl +include/wine/windows/adserr.h +include/wine/windows/adshlp.h +include/wine/windows/advpub.h +include/wine/windows/af_irda.h +include/wine/windows/amaudio.h +include/wine/windows/amsi.h +include/wine/windows/amsi.idl +include/wine/windows/amstream.h +include/wine/windows/amstream.idl +include/wine/windows/amva.h +include/wine/windows/amvideo.h +include/wine/windows/amvideo.idl +include/wine/windows/appcompatapi.h +include/wine/windows/appmgmt.h +include/wine/windows/appmodel.h +include/wine/windows/asferr.h +include/wine/windows/asptlb.h +include/wine/windows/asptlb.idl +include/wine/windows/asyncinfo.h +include/wine/windows/asyncinfo.idl +include/wine/windows/asynot.idl +include/wine/windows/asysta.idl +include/wine/windows/atlbase.h +include/wine/windows/atlcom.h +include/wine/windows/atliface.h +include/wine/windows/atliface.idl +include/wine/windows/atlthunk.h +include/wine/windows/atlwin.h +include/wine/windows/audevcod.h +include/wine/windows/audioclient.h +include/wine/windows/audioclient.idl +include/wine/windows/audiopolicy.h +include/wine/windows/audiopolicy.idl +include/wine/windows/audiosessiontypes.h +include/wine/windows/austream.h +include/wine/windows/austream.idl +include/wine/windows/authz.h +include/wine/windows/aviriff.h +include/wine/windows/avrt.h +include/wine/windows/axcore.idl +include/wine/windows/axextend.idl +include/wine/windows/axextendenums.h +include/wine/windows/basetsd.h +include/wine/windows/basetyps.h +include/wine/windows/bcrypt.h +include/wine/windows/bdaiface.h +include/wine/windows/bdaiface.idl +include/wine/windows/bdaiface_enums.h +include/wine/windows/bdatypes.h +include/wine/windows/binres.idl +include/wine/windows/bits.h +include/wine/windows/bits.idl +include/wine/windows/bits1_5.h +include/wine/windows/bits1_5.idl +include/wine/windows/bits2_0.h +include/wine/windows/bits2_0.idl +include/wine/windows/bits2_5.h +include/wine/windows/bits2_5.idl +include/wine/windows/bits3_0.h +include/wine/windows/bits3_0.idl +include/wine/windows/bits5_0.h +include/wine/windows/bits5_0.idl +include/wine/windows/bitsmsg.h +include/wine/windows/bluetoothapis.h +include/wine/windows/bthsdpdef.h +include/wine/windows/cderr.h +include/wine/windows/cdosys.h +include/wine/windows/cdosys.idl +include/wine/windows/cfg.h +include/wine/windows/cfgmgr32.h +include/wine/windows/cguid.h +include/wine/windows/chprst.idl +include/wine/windows/cierror.h +include/wine/windows/clusapi.h +include/wine/windows/cmdbas.idl +include/wine/windows/cmdpre.idl +include/wine/windows/cmdprp.idl +include/wine/windows/cmdstrm.idl +include/wine/windows/cmdtxt.idl +include/wine/windows/cmdwpr.idl +include/wine/windows/cmnquery.h +include/wine/windows/cmnquery.idl +include/wine/windows/codecapi.h +include/wine/windows/colinf.idl +include/wine/windows/colordlg.h +include/wine/windows/colrst.idl +include/wine/windows/combaseapi.h +include/wine/windows/comcat.h +include/wine/windows/comcat.idl +include/wine/windows/commctrl.h +include/wine/windows/commctrl.rh +include/wine/windows/commdlg.h +include/wine/windows/commoncontrols.h +include/wine/windows/commoncontrols.idl +include/wine/windows/compobj.h +include/wine/windows/comsvcs.h +include/wine/windows/comsvcs.idl +include/wine/windows/concurrencysal.h +include/wine/windows/consoleapi.h +include/wine/windows/control.h +include/wine/windows/control.idl +include/wine/windows/cor.h +include/wine/windows/cor.idl +include/wine/windows/cordebug.h +include/wine/windows/cordebug.idl +include/wine/windows/corerror.h +include/wine/windows/corhdr.h +include/wine/windows/corsym.h +include/wine/windows/corsym.idl +include/wine/windows/cpl.h +include/wine/windows/crtrow.idl +include/wine/windows/cryptdlg.h +include/wine/windows/cryptuiapi.h +include/wine/windows/ctfutb.h +include/wine/windows/ctfutb.idl +include/wine/windows/ctxtcall.h +include/wine/windows/ctxtcall.idl +include/wine/windows/custcntl.h +include/wine/windows/cvconst.h +include/wine/windows/cvttyp.idl +include/wine/windows/d2d1.h +include/wine/windows/d2d1.idl +include/wine/windows/d2d1_1.h +include/wine/windows/d2d1_1.idl +include/wine/windows/d2d1_2.h +include/wine/windows/d2d1_2.idl +include/wine/windows/d2d1_3.h +include/wine/windows/d2d1_3.idl +include/wine/windows/d2d1effectauthor.h +include/wine/windows/d2d1effectauthor.idl +include/wine/windows/d2d1effects.h +include/wine/windows/d2d1effects.idl +include/wine/windows/d2d1effects_1.h +include/wine/windows/d2d1effects_1.idl +include/wine/windows/d2d1effects_2.h +include/wine/windows/d2d1effects_2.idl +include/wine/windows/d2dbasetypes.h +include/wine/windows/d2derr.h +include/wine/windows/d3d.h +include/wine/windows/d3d10.h +include/wine/windows/d3d10.idl +include/wine/windows/d3d10_1.h +include/wine/windows/d3d10_1.idl +include/wine/windows/d3d10_1shader.h +include/wine/windows/d3d10effect.h +include/wine/windows/d3d10misc.h +include/wine/windows/d3d10sdklayers.h +include/wine/windows/d3d10sdklayers.idl +include/wine/windows/d3d10shader.h +include/wine/windows/d3d11.h +include/wine/windows/d3d11.idl +include/wine/windows/d3d11_1.h +include/wine/windows/d3d11_1.idl +include/wine/windows/d3d11_2.h +include/wine/windows/d3d11_2.idl +include/wine/windows/d3d11_3.h +include/wine/windows/d3d11_3.idl +include/wine/windows/d3d11_4.h +include/wine/windows/d3d11_4.idl +include/wine/windows/d3d11on12.h +include/wine/windows/d3d11on12.idl +include/wine/windows/d3d11sdklayers.h +include/wine/windows/d3d11sdklayers.idl +include/wine/windows/d3d11shader.h +include/wine/windows/d3d12.h +include/wine/windows/d3d12.idl +include/wine/windows/d3d12sdklayers.h +include/wine/windows/d3d12sdklayers.idl +include/wine/windows/d3d12shader.h +include/wine/windows/d3d12shader.idl +include/wine/windows/d3d8.h +include/wine/windows/d3d8caps.h +include/wine/windows/d3d8types.h +include/wine/windows/d3d9.h +include/wine/windows/d3d9caps.h +include/wine/windows/d3d9types.h +include/wine/windows/d3dcaps.h +include/wine/windows/d3dcommon.h +include/wine/windows/d3dcommon.idl +include/wine/windows/d3dcompiler.h +include/wine/windows/d3dhal.h +include/wine/windows/d3dkmdt.h +include/wine/windows/d3drm.h +include/wine/windows/d3drmdef.h +include/wine/windows/d3drmobj.h +include/wine/windows/d3drmwin.h +include/wine/windows/d3dtypes.h +include/wine/windows/d3dukmdt.h +include/wine/windows/d3dvec.inl +include/wine/windows/d3dx10.h +include/wine/windows/d3dx10async.h +include/wine/windows/d3dx10core.h +include/wine/windows/d3dx10math.h +include/wine/windows/d3dx10mesh.h +include/wine/windows/d3dx10tex.h +include/wine/windows/d3dx11.h +include/wine/windows/d3dx11async.h +include/wine/windows/d3dx11core.h +include/wine/windows/d3dx11core.idl +include/wine/windows/d3dx11tex.h +include/wine/windows/d3dx9.h +include/wine/windows/d3dx9anim.h +include/wine/windows/d3dx9core.h +include/wine/windows/d3dx9effect.h +include/wine/windows/d3dx9math.h +include/wine/windows/d3dx9math.inl +include/wine/windows/d3dx9mesh.h +include/wine/windows/d3dx9shader.h +include/wine/windows/d3dx9shape.h +include/wine/windows/d3dx9tex.h +include/wine/windows/d3dx9xof.h +include/wine/windows/davclnt.h +include/wine/windows/dbccmd.idl +include/wine/windows/dbcses.idl +include/wine/windows/dbdsad.idl +include/wine/windows/dbgeng.h +include/wine/windows/dbghelp.h +include/wine/windows/dbinit.idl +include/wine/windows/dbprop.idl +include/wine/windows/dbs.idl +include/wine/windows/dbt.h +include/wine/windows/dciddi.h +include/wine/windows/dciman.h +include/wine/windows/dcommon.h +include/wine/windows/dcommon.idl +include/wine/windows/dde.h +include/wine/windows/dde.rh +include/wine/windows/ddeml.h +include/wine/windows/ddraw.h +include/wine/windows/ddrawgdi.h +include/wine/windows/ddrawi.h +include/wine/windows/ddstream.h +include/wine/windows/ddstream.idl +include/wine/windows/delayloadhandler.h +include/wine/windows/devenum.idl +include/wine/windows/devguid.h +include/wine/windows/devicetopology.h +include/wine/windows/devicetopology.idl +include/wine/windows/devpkey.h +include/wine/windows/devpropdef.h +include/wine/windows/dhcpcsdk.h +include/wine/windows/dhtmldid.h +include/wine/windows/dhtmled.h +include/wine/windows/dhtmled.idl +include/wine/windows/difxapi.h +include/wine/windows/digitalv.h +include/wine/windows/dimm.h +include/wine/windows/dimm.idl +include/wine/windows/dinput.h +include/wine/windows/dinputd.h +include/wine/windows/directmanipulation.h +include/wine/windows/directmanipulation.idl +include/wine/windows/dispdib.h +include/wine/windows/dispex.h +include/wine/windows/dispex.idl +include/wine/windows/dlgs.h +include/wine/windows/dls1.h +include/wine/windows/dls2.h +include/wine/windows/dmdls.h +include/wine/windows/dmerror.h +include/wine/windows/dmksctrl.h +include/wine/windows/dmo.h +include/wine/windows/dmodshow.h +include/wine/windows/dmodshow.idl +include/wine/windows/dmoreg.h +include/wine/windows/dmort.h +include/wine/windows/dmplugin.h +include/wine/windows/dmusbuff.h +include/wine/windows/dmusicc.h +include/wine/windows/dmusicf.h +include/wine/windows/dmusici.h +include/wine/windows/dmusics.h +include/wine/windows/docobj.h +include/wine/windows/docobj.idl +include/wine/windows/docobjectservice.h +include/wine/windows/docobjectservice.idl +include/wine/windows/documenttarget.h +include/wine/windows/documenttarget.idl +include/wine/windows/downloadmgr.h +include/wine/windows/downloadmgr.idl +include/wine/windows/dpaddr.h +include/wine/windows/dpfilter.h +include/wine/windows/dplay.h +include/wine/windows/dplay8.h +include/wine/windows/dplobby.h +include/wine/windows/dplobby8.h +include/wine/windows/dpnathlp.h +include/wine/windows/driverspecs.h +include/wine/windows/drmexternals.h +include/wine/windows/drmexternals.idl +include/wine/windows/dsclient.h +include/wine/windows/dsconf.h +include/wine/windows/dsgetdc.h +include/wine/windows/dshow.h +include/wine/windows/dsound.h +include/wine/windows/dsrole.h +include/wine/windows/dvdif.h +include/wine/windows/dvdif.idl +include/wine/windows/dvdmedia.h +include/wine/windows/dvoice.h +include/wine/windows/dwmapi.h +include/wine/windows/dwrite.h +include/wine/windows/dwrite.idl +include/wine/windows/dwrite_1.h +include/wine/windows/dwrite_1.idl +include/wine/windows/dwrite_2.h +include/wine/windows/dwrite_2.idl +include/wine/windows/dwrite_3.h +include/wine/windows/dwrite_3.idl +include/wine/windows/dxdiag.h +include/wine/windows/dxerr8.h +include/wine/windows/dxerr9.h +include/wine/windows/dxfile.h +include/wine/windows/dxgi.h +include/wine/windows/dxgi.idl +include/wine/windows/dxgi1_2.h +include/wine/windows/dxgi1_2.idl +include/wine/windows/dxgi1_3.h +include/wine/windows/dxgi1_3.idl +include/wine/windows/dxgi1_4.h +include/wine/windows/dxgi1_4.idl +include/wine/windows/dxgi1_5.h +include/wine/windows/dxgi1_5.idl +include/wine/windows/dxgi1_6.h +include/wine/windows/dxgi1_6.idl +include/wine/windows/dxgicommon.h +include/wine/windows/dxgicommon.idl +include/wine/windows/dxgidebug.h +include/wine/windows/dxgidebug.idl +include/wine/windows/dxgiformat.h +include/wine/windows/dxgiformat.idl +include/wine/windows/dxgitype.h +include/wine/windows/dxgitype.idl +include/wine/windows/dxva.h +include/wine/windows/dxva2api.h +include/wine/windows/dxva2api.idl +include/wine/windows/dyngraph.idl +include/wine/windows/endpointvolume.h +include/wine/windows/endpointvolume.idl +include/wine/windows/errorrep.h +include/wine/windows/errors.h +include/wine/windows/errrec.idl +include/wine/windows/evcode.h +include/wine/windows/eventtoken.h +include/wine/windows/eventtoken.idl +include/wine/windows/evntprov.h +include/wine/windows/evntrace.h +include/wine/windows/evr.h +include/wine/windows/evr.idl +include/wine/windows/evr9.h +include/wine/windows/evr9.idl +include/wine/windows/excpt.h +include/wine/windows/exdisp.h +include/wine/windows/exdisp.idl +include/wine/windows/exdispid.h +include/wine/windows/exposeenums2managed.h +include/wine/windows/fci.h +include/wine/windows/fdi.h +include/wine/windows/featurestagingapi.h +include/wine/windows/fileapi.h +include/wine/windows/filter.h +include/wine/windows/filter.idl +include/wine/windows/fltdefs.h +include/wine/windows/fontsub.h +include/wine/windows/fusion.h +include/wine/windows/fusion.idl +include/wine/windows/gameux.h +include/wine/windows/gameux.idl +include/wine/windows/gamingtcui.h +include/wine/windows/gdiplus.h +include/wine/windows/gdipluscolor.h +include/wine/windows/gdipluscolormatrix.h +include/wine/windows/gdipluseffects.h +include/wine/windows/gdiplusenums.h +include/wine/windows/gdiplusflat.h +include/wine/windows/gdiplusgpstubs.h +include/wine/windows/gdiplusimaging.h +include/wine/windows/gdiplusinit.h +include/wine/windows/gdiplusmem.h +include/wine/windows/gdiplusmetaheader.h +include/wine/windows/gdipluspixelformats.h +include/wine/windows/gdiplustypes.h +include/wine/windows/getdts.idl +include/wine/windows/guiddef.h +include/wine/windows/hidusage.h +include/wine/windows/highlevelmonitorconfigurationapi.h +include/wine/windows/hlguids.h +include/wine/windows/hlink.h +include/wine/windows/hlink.idl +include/wine/windows/hstring.h +include/wine/windows/hstring.idl +include/wine/windows/htiface.h +include/wine/windows/htiface.idl +include/wine/windows/htiframe.h +include/wine/windows/htiframe.idl +include/wine/windows/htmlhelp.h +include/wine/windows/http.h +include/wine/windows/httprequest.h +include/wine/windows/httprequest.idl +include/wine/windows/httprequestid.h +include/wine/windows/i_cryptasn1tls.h +include/wine/windows/iads.h +include/wine/windows/iads.idl +include/wine/windows/icftypes.h +include/wine/windows/icftypes.idl +include/wine/windows/icm.h +include/wine/windows/icmpapi.h +include/wine/windows/icodecapi.h +include/wine/windows/icodecapi.idl +include/wine/windows/idispids.h +include/wine/windows/ieautomation.h +include/wine/windows/ieautomation.idl +include/wine/windows/iextag.h +include/wine/windows/iextag.idl +include/wine/windows/ifdef.h +include/wine/windows/ifmib.h +include/wine/windows/iimgctx.h +include/wine/windows/iimgctx.idl +include/wine/windows/imagehlp.h +include/wine/windows/ime.h +include/wine/windows/imm.h +include/wine/windows/imnact.h +include/wine/windows/imnact.idl +include/wine/windows/imnxport.h +include/wine/windows/imnxport.idl +include/wine/windows/in6addr.h +include/wine/windows/inaddr.h +include/wine/windows/indexsrv.h +include/wine/windows/indexsrv.idl +include/wine/windows/initguid.h +include/wine/windows/inputscope.h +include/wine/windows/inputscope.idl +include/wine/windows/inseng.h +include/wine/windows/inseng.idl +include/wine/windows/inspectable.h +include/wine/windows/inspectable.idl +include/wine/windows/interactioncontext.h +include/wine/windows/intshcut.h +include/wine/windows/ip2string.h +include/wine/windows/ipexport.h +include/wine/windows/iphlpapi.h *** 2058 LINES SKIPPED ***