Commit graph

502 commits

Author SHA1 Message Date
Gerald Pfeifer
1f0e393f76 Update to the Wine 4.0.3 maintenance release with various bug fixes and
updates to the National Language Support files.
2019-11-30 06:53:17 +00:00
Niclas Zeising
ef5d45aaa6 Sprinkle more USES=xorg 2019-11-07 20:19:59 +00:00
Gerald Pfeifer
e28022879d Update to the Wine 4.0.2 maintenance release.
This brings some 68 bug fixes.
2019-08-27 05:51:00 +00:00
Gerald Pfeifer
ca7b4ef52d Add a note how to work around Wine issuing an error message of
i386_set_ldt: Invalid argument
    Did you reconfigure your kernel with "options USER_LDT"?

PR:		224264
Submitted by:	rozhuk.im@gmail.com
Reviewed by:	arrowd
MFH:		2019Q3 (documentation to address crash)
2019-08-10 17:48:18 +00:00
Gerald Pfeifer
ea8c8ec7da Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.

This includes ports
 - with USE_GCC=yes or USE_GCC=any,
 - with USES=fortran,
 - using Mk/bsd.octave.mk which in turn features USES=fortran, and
 - with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
   c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.

PR:		238330
2019-07-26 20:46:53 +00:00
Gerald Pfeifer
3c7020b6f4 Update to the Wine 4.0.1 maintenance release.
This brings various bug fixes and Sinhala and Tamil translation updates.
2019-05-17 11:47:05 +00:00
Gerald Pfeifer
71c29c3e16 Update from the Wine 3.0 release series to Wine 4.0.
This represents a year of development effort with over 6,000 individual
changes. Due to regular syncing between the wine-devel port and this
one changes mostly relate to pkg-plist; the biggest difference between
the two is wine-devel featuring a STAGING option to support the Wine
Staging patchset.

Highlights of this new release include Direct3D 12 and Vulkan support,
as well as support for game controllers.

It also goes along with a corresponding minor update of
emulators/wine-mono. [1]

The following is a more detailed list extracted from the full(er) release
notes:

== Direct3D

- Initial support for Direct3D 12. Direct3D 12 support requires the vkd3d
  library, and a Vulkan-capable graphics card - this port now features new
  options, off by default, VKD3D and VULKAN which also pull in additional
  dependencies.
- The Multi-Threaded Command Stream feature is enabled by default.
- OpenGL core contexts are always used by default when available. In
  the previous release, these were already used by default for Direct3D 10
  and 11 applications on AMD and Intel graphics cards. That has been extended
  to all graphics cards, and all versions of Direct3D before 12.
- Among others, the following notable Direct3D 10 and 11 features are
  implemented:
  - Multi-sample textures and views, as well as multi-sample resolves.
  - Per-sample fragment shading.
  - Support for 1D textures.
  - Draws without render target views or depth/stencil views.
  - Multiple viewports and scissor rectangles per draw.
  - Depth clipping control.
  - Depth bias clamping.
  - Stream output without geometry shaders.
  - Several more capability queries.
  - Several more resource formats.
- Several Direct3D 11 interfaces have been updated to version 11.2,
  and several DXGI interfaces have been update to version 1.6. This
  allows applications requiring those newer interfaces to start
  working.
- The Direct3D graphics card database recognizes more graphics cards.

== Graphics

- A complete Vulkan driver is implemented, using the host Vulkan
  libraries under X11.
- Icons in PNG format are supported, enabling loading high-resolution
  256x256 icons.
- The standard icons include a 256x256 version to take advantage of
  the PNG support.
- Many Direct2D interfaces have been updated to version 1.2.
- Polygon drawing in the DIB engine is much faster for large polygons.
- A0, A1 and A2 paper sizes are supported for generic printers.
- Arrows are supported in GdiPlus.

== Kernel

- Support for running DOS binaries under Wine is removed. When execution
  of a DOS binary is requested, an external DOSBox instance is launched.
  This doesn't apply to Win16 binaries, which are still supported internally.
- All the CPU control and debug registers can be accessed by kernel
  drivers, including on 64-bit.
- Events, semaphores, mutexes and timers are implemented in kernel
  mode for device drivers.
- The WaitOnAddress synchronization primitives are supported.
- Reported processor information correctly distinguishes logical and
  physical CPU cores to support hyper-threading.
- The various debugger APIs support manipulating a 32-bit Wow64
  process from a 64-bit process context.
- Application settings, compatibility information and execution levels
  are recognized in application manifests.
- The various file I/O completion modes are implemented.

== User interface

- The infrastructure for setting DPI awareness and scaling of non
  DPI-aware applications is implemented. However, actual scaling of
  window contents is only supported on Android at this point.
  Scaling is disabled by default and can be enabled by setting the
  "DpiScalingVer" value under HKEY_CURRENT_USER\Control Panel\Desktop.
- Window class redirection is supported, enabling support of Common
  Controls version 6 features for standard USER controls like buttons.
- The standard USER controls Button, Listbox, Combobox, Edit and
  Static support version 6 features, including theming.
- The standard Task Dialog is implemented, including support for
  icons, hyperlinks, progress bars, and various other UI elements.
- Cue banners are supported in version 6 of the Edit control.

== Desktop integration

- Exporting MIME-type file associations to the native desktop can be
  disabled with a checkbox under the Desktop Integration tab in
  winecfg.  It can be configured programmatically by setting the
  "Enable" value under HKEY_CURRENT_USER\Software\Wine\FileOpenAssociations.
- The File Dialog can display file properties like size, times and attributes.
- The File Dialog optionally shows the Places toolbar on the left-hand side.
- The shell folder Public is used instead of AllUsersProfile to follow
  the behavior of recent Windows versions.
- The shell File Browser supports keyboard shortcuts to rename (F2 key)
  and delete (Delete key) shell folders.
- Many standard icons are added to the Shell library.
- Shell Autocompletion is supported.
- In desktop mode the taskbar won't be displayed on top of fullscreen
  windows.
- Additional names are provided for standard cursors to better match
  existing X11 cursor themes.

== Internet and networking

- JScript has an EcmaScript compliant mode, which supports a number of
  features not available in legacy mode.
- JavaScript property accessors are supported.
- HTML style object is rewritten to support standard-compliant mode.
- HTML documents respect X-UA-Compatible HTTP header, allowing web
  pages to request specific compatibility mode.
- MSHTML supports non-HTML elements, allowing limited SVG support.
- A number of new HTML APIs are supported.
- The proxy server can be configured through the Internet Control
  Panel applet.
- Stream I/O is implemented in WebServices.
- The Web Services on Devices API (WSDAPI) is implemented, including
  sending and receiving the various message types.
- More system information is reported through WBEM, including CPU,
  BIOS, video controller, and network adapter properties.

== Cryptography

- Asymmetric encryption keys, as well as RSA and ECDSA signature
  verification are supported.
- The GCM and ECB encryption chaining modes are supported.
- Optimal Asymmetric Encryption Padding (OAEP) is supported in RSA
  encryption.
- A Kerberos security provider is implemented, supporting Kerberos
  authentication.
- A selection dialog for public key certificates is implemented.
- If available, GnuTLS is used on macOS in preference to the
  CommonCrypto framework.

== Text and fonts

- Character tables are based on version 11.0.0 of the Unicode Standard.
- The new subpixel font rendering of FreeType >= 2.8.1 is supported.
- When a font face is missing, FontConfig is queried to provide
  possible substitutions.
- The font selected in the console emulator properly scales with the
  display DPI.
- Memory font resources are supported in DirectWrite.
- The builtin Wingdings font contains clock images.

== Audio

- The Windows Media Player interfaces are implemented and support
  media playback.
- An MP3 decoder is provided as DirectX Media Object.

== Built-in applications

- The Ping program provides actual pinging functionality using
  IcmpSendEcho.
- The SchTasks task scheduler program can create and delete tasks.
- The RegEdit registry editor has an improved hex editor for binary
  values.
- FOR loops are properly handled in the Command Interpreter.
- The XCopy program supports the /k (keep attributes) option.

== Internationalization

- The Japanese 106 keyboard is properly supported.
- Translation of timezone names is supported.
- There is a partial translation to the Sinhala language.
- More locales are supported in the Resource Compiler (wrc) and
  Message Compiler (wmc).

== .NET

- 32-bit CIL-only .NET binaries are supported on 64-bit.
- The Mono engine is updated to version 4.7.5 with some upstream Mono
  fixes. Hence this also update the emulators/wine-mono port.

== Installers

- MSI custom actions run in a separate process, enabling proper
  support for mixed 32/64-bit installers.
- Deferred installation actions are supported in MSI.

== Miscellaneous

- The Task Scheduler service and APIs are implemented.
- The Windows Management Instrumentation service is implemented.
- The OPC Services (Open Packaging Conventions, used for Microsoft
  Office XML files) library is implemented.

Approved by:	dbn (blanket) [1]
2019-02-22 11:13:07 +00:00
Gerald Pfeifer
14e68a593b Add gl to X11_USES since a naked USE_GL=, without also setting USES, as
we've had has been deprecated for a while.
2019-02-05 14:48:16 +00:00
Gerald Pfeifer
2727ea98e7 Restore a simpler and more elegant version of r490816 which was reverted
in r490825. (r490827 addresses the breakage of INDEX which happened in
some scenarios that led to that revert.)

Add a new option, GCC, that controls the use of GCC instead of the
system compiler (usually clang these days) as we have been doing since
r334935 in 2013-11-26.  And make that the default, both since there've
been user reports about Wine not working properly with the toolchain
in FreeBSD 12 and since there may be other challenges given that
upstrea and in other distributions GCC is being used all along.

PR:		231010
Reviewed by:	mat
Tested by:	sbruno
2019-01-25 14:04:40 +00:00
Gerald Pfeifer
f880485242 Remove a hack (defining __builtin_ms_va_list and friends) for versions
of clang before 3.8 and hence versions of FreeBSD no longer maintained.
2019-01-21 07:47:58 +00:00
Antoine Brodin
ab322ffcbb Revert r490816, it breaks INDEX
With hat:	portmgr
2019-01-21 07:45:00 +00:00
Gerald Pfeifer
32d3305924 Add a new option, GCC, that controls the use of GCC instead of the
system compiler (usually clang these days) as we have been doing since
r334935 in 2013-11-26.  And make that the default, both since there've
been user reports about Wine not working properly with the toolchain
in FreeBSD 12 and there may be other challenges given that upstream
and in other distributions GCC is being used all along. [1]

Also backport part of r488645 | gerald | 2018-12-29 01:53:56 from
emulators/wine-devel:

  Create a proper USES block in Makefile, moving the existing USES
  statement there.

PR:		231010 [1]
2019-01-21 01:12:27 +00:00
Gerald Pfeifer
a9f015d155 Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.

This includes ports
 - with USE_GCC=yes or USE_GCC=any,
 - with USES=fortran,
 - using Mk/bsd.octave.mk which in turn features USES=fortran, and
 - with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
   c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.

PR:		231590
2018-12-12 01:35:33 +00:00
Gerald Pfeifer
0dfe0783d9 Update to the Wine 3.0.4 maintenance release which addresses 47 bug
reports and adds a lot of icons in Shell32.
2018-12-01 18:16:44 +00:00
Thomas Zander
84b6aee905 Bump PORTREVISION to chase update of multimedia/v4l_compat and libv4l 2018-09-29 08:04:27 +00:00
Gerald Pfeifer
b2fe537254 Update to the Wine 3.0.3 maintenance release which addresses 52 bug
reports, mostly in actual applications.
2018-09-13 22:04:24 +00:00
Niclas Zeising
0fae2e9e0e Change x11/xorgproto to become a build dep
Change x11/xorgproto to become a build time dependency when added to
USE_XORG.  Change the dependency to be on the port, rather than a file the
port installs.
Fix fallout.
Bump portrevision on depending ports.

PR:		230909
Reviewed by:	eadler
Approved by:	portmgr (antoine)
Obtained from:	https://github.com/FreeBSDDesktop/freebsd-ports/tree/feature/xorgproto
exp-run:	antoine
Differential Revision:	https://reviews.freebsd.org/D16906
2018-09-11 18:34:27 +00:00
Gerald Pfeifer
77277fb2c0 Backport r464959 | gerald | 2018-03-18 22:24:42 from emulators/wine-devel:
Fully disable building Kerberos components.

We already had --without-krb5, alas when someone had krb5 installed
in their build environment, the build still failed.  This takes care
using a bigger hammer.

PR:		226396
Analyzed by:	John Hein <z7dr6ut7gs@snkmail.com>
2018-09-01 13:18:21 +00:00
Gerald Pfeifer
8233282c71 Sync a comment re WoW64 plus the desktop file with revision r477548
of the emulators/wine-devel port to keep the two in sync.
2018-08-20 00:02:31 +00:00
Gerald Pfeifer
09f9633cb6 Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.

This includes ports
 - featuring USE_GCC=yes or USE_GCC=any,
 - featuring USES=fortran,
 - using Mk/bsd.octave.mk which in turn features USES=fortran, and those
 - with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
   c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.

PR:		222542
2018-07-29 22:18:44 +00:00
Gerald Pfeifer
0b01dc5650 Update to the Wine 3.0.2 maintenance release which "only" fixes a couple
of bugs.
2018-06-30 19:28:33 +00:00
Gerald Pfeifer
c02f08b502 Port revision 471203 from the wine-devel port to the main wine port:
Replace explicit settings of CFLAGS and LDFLAGS in favor of USES=localbase
(the former predating the latter by at least a decade alas with variation).

PR:		226396
Submitted by:	John Hein <z7dr6ut7gs@snkmail.com>
2018-06-16 12:42:06 +00:00
Tobias C. Berner
954b333fe3 emulators/wine: fix desktop file on amd64
Reviewed by:	gerald
Approved by:	dbn
Differential Revision:	https://reviews.freebsd.org/D15489
2018-06-03 20:03:49 +00:00
Gerald Pfeifer
d015e625d9 Update to the Wine 3.0.1 maintenance release which fixes a number of bugs
and provides translation updates for Finnish, German, Lithuanian, Norwegian,
Polish, Russian, and Ukrainian.
2018-05-20 10:23:13 +00:00
Alexey Dokuchaev
9e612373a5 For ports under emulators', games', irc, and `sysutils' categories:
remove redundant PKGMESSAGE assignment, which is set appropriately by
the b.p.m when `pkg-message' appears on the SUB_FILES list.
2018-05-05 15:17:46 +00:00
Gerald Pfeifer
18f4647bd0 Remove the workaround for a clang 6.0.0 crash on FreeBSD version 1200056
(where we'd use GCC), now that version 1200057 which fixes that issue is
eight weeks old.

PR:		224863
2018-04-02 18:52:33 +00:00
Gerald Pfeifer
4ad31df212 Change dependencies from wine-gecko-devel to wine-gecko and wine-mono-devel
to wine-mono.

Technically this is not required at this point, since the -devel and
regular ports provide the same versions temporarily, but it sets us up
for when the -devel ports are going to diverge again later.
2018-04-01 20:40:02 +00:00
Gerald Pfeifer
7320035739 The issue of clang 6.0.0 crashing when building Wine was resolved with
__FreeBSD_version 1200057, so reduce the window of versions we need a
workaround for to just 1200056.

In the mid term I plan on removing this workaround, but let's keep it
in place for a bit longer for the sake of users on an affected snapshot.

PR:		224863
Thanks to:	dim
2018-02-18 20:45:07 +00:00
Gerald Pfeifer
2531a55bb7 Fix the ibiblio.org MASTER_SITE URL which has changed. 2018-02-16 23:40:41 +00:00
Gerald Pfeifer
e3e23c3e52 Update from the Wine 2.0 release series to Wine 3.0.
This represents a year of development effort with over 6,000 individual
changes.  Due to regular syncing from the wine-devel port to this one
changes mostly relate to pkg-plist and the two ports mostly differ by
wine-devel featuring a STAGING option to support the Wine Staging
patchset.

Highlights of this new release include Direct3D 10 and 11 support,
Direct3D command stream, and improved DirectWrite and Direct2D support.
The following is a more detailed list:

== Direct3D

- A significant number of Direct3D 10 and 11 features are implemented
  in this release, including:
  - Compute shaders.
  - Hull and domain (tessellation) shaders.
  - Stream output.
  - Format capability queries.
  - A large number of shader model 4 and 5 shader instructions.
  - Shader model 4 and 5 interpolation modifiers.
  - Shader model 4 and 5 clip and cull distances.
  - Indirect draws and indirect compute dispatch.
  - Structured buffers.
  - Byte addressable buffers.
  - Append and consume buffers.
  - Unordered access view counters.
  - Cube-map arrays.
  - Layered rendering to 3-dimensional textures and texture arrays.
  - Mip-map generation.
  - Conservative depth output.
  - Type-less (sub)resource copies.
  - Depth bias.
- Support for OpenGL core contexts in Direct3D is improved, to the
  point that core contexts are used by default for Direct3D 10 and 11
  applications on AMD and Intel graphics cards. As a result, users of
  those graphics cards in combination with Mesa OpenGL drivers should
  no longer need to set the "MaxVersionGL" registry key to enable
  Direct3D 10 and 11 support.
- The Direct3D graphics card database recognizes more graphics cards.
- New HKCU\Software\Wine\Direct3D registry key:
  - "csmt" (REG_DWORD)
    Enable (0x1) or disable (0x0, default) the multi-threaded command
    stream feature described above.
- Deprecated HKCU\Software\Wine\Direct3D registry keys:
  - "StrictDrawOrdering"
    This has been superseded by the multi-threaded command stream feature.
  - "OffscreenRenderingMode"
    The "fbo" setting is the only remaining supported value. The
    "backbuffer" setting, while still available, is no longer supported.
- Removed HKCU\Software\Wine\Direct3D registry keys:
  - "AlwaysOffscreen"
    This is always enabled in this release.
  - "MultiSampling"
    Use the "SampleCount" (REG_DWORD) setting to force a specific
    multi-sample anti-aliasing sample count for swapchain render
    targets instead.

== Graphics

- Drawing outlines of Direct2D geometry objects.
- Direct2D linear and radial gradient brushes.
- Direct2D compatibility with GDI.
- Bounds computation of Direct2D geometry objects.
- Simplification of Direct2D geometry objects.
- The OpenGL extension list is updated to OpenGL version 4.6.
- The system GLU library is only needed when the Nurbs renderer is
  used, all other GLU functions are implemented internally.
- Metafile playback in GdiPlus supports most of the GdiPlus-specific
  metafile record types, in addition to the standard metafile records.
- GdiPlus graphics operations take the GDI transform into account.
- Encoding image formats with a palette is supported in WindowsCodecs.

== Kernel

- The default Windows version is set to Windows 7.
- The full semantics of named pipes are implemented, including
  message-mode pipes.
- Position Independent Executables are supported, both for the Wine binary
  itself and also when starting external binaries.
- Serial and parallel port devices are created automatically, with the
  corresponding symlinks in the dosdevices directory. The detected ports
  can be overridden through the HKLM\Software\Wine\Ports key.
- Safe DLL search mode is implemented. It is enabled by default, and
  can be disabled by setting the "SafeDllSearchMode" value to 0 under
  HKLM\System\CurrentControlSet\Control\Session Manager.
- Safe process search mode is implemented. It is disabled by default
  but can be requested by the application, and it can be forced by
  setting the "SafeProcessSearchMode" value to 1 under
  HKLM\System\CurrentControlSet\Control\Session Manager.
- Asynchronous I/O performance is improved by reducing the number of
  server calls.
- Memory write watches work correctly when used concurrently with file
  I/O on the same buffers.
- Virtual memory allocations can be arbitrarily large on 64-bit platforms.

== User interface

- The built-in mouse cursors are redesigned, and available in higher
  resolution for high DPI screens.
- The Shell Explorer, the common dialogs, and the RichEdit control
  properly scale on high DPI screens.
- The screen DPI value can be overridden by setting the "LogPixels"
  value under HKEY_CURRENT_USER\Control Panel\Desktop.
- In desktop mode, higher display resolutions with various aspect
  ratios are supported.
- Task Dialog common control.
- The Internal User Interface is supported in MSI.
- Double-buffered theme painting.
- The TWAIN library supports a user dialog for selecting the scanner
  source.
- Device-independent bitmaps and metafiles can be stored into the OLE
  Data Cache.

== Desktop integration

- The StartupWMClass field is set in generated desktop files so that
  they can be matched to their respective Windows binary.
- Clipboard changes from other X11 applications are detected through
  the Xfixes library instead of polling.
- The RichEdit control supports pasting metafiles.
- The Program Manager DDE protocol for manipulating program entries
  and groups is implemented.
- The HID service for detecting Plug & Play devices is active by default.

== Text and fonts

- Contextual glyph substitution is supported in UniScribe.
- Character tables are based on version 10.0.0 of the Unicode Standard.
- The Nepali and Bangla (India) locales are supported.
- Font support is compatible with the new behaviors introduced in
  FreeType version 2.8.1.

== DirectWrite

- Trailing line trimming signs in both character and word modes is
  supported.
- Cluster wrapping mode.
- Uniform and proportional line spacing methods.
- Oblique and bold simulation is also supported in bitmap rendering mode.
- Per-factory cache is thread safe.
- Overhang metrics evaluation for layouts.
- In-memory font file loader is implemented and is available to
  applications.

== D3DX

- Support for D3DX 9 preshaders is improved.
- Support for D3DX 9 application defined effect state managers
  (ID3DXEffectStateManager).
- Using effect pools to share effect parameters between D3DX 9 effects.

== Internet and networking

- UDP/TCP listeners are implemented in Web Services.
- Web Services supports the .NET Binary Format, including the string
  table extension.
- Web Services supports the .NET Message Framing Protocol.
- Asynchronous support is enabled for receiving messages in Web Services.
- HTML event handling is rewritten to support standard-compliant mode.
- Multiple new standard-compliant HTML APIs are supported. HTML document
  mode support is improved to preserve compatibility with documents
  expecting legacy behavior.
- The WebBrowser control supports MHTML files.
- Embedding HTML documents in .NET applications is better supported.
- WinHTTP correctly parses cookie attributes.

== Cryptography

- Cryptographic hashes are implemented internally instead of relying
  on GnuTLS.
- AES encryption is supported.
- The Microsoft Root Certificate 2011 is added to the list of known
  Microsoft certificates.
- The Mono and Gecko add-on packages are verified with SHA256 checksums.

== Built-in applications

- Registry importing and exporting in RegEdit is reimplemented for
  better compatibility. Windows 3.1 registry files can also be imported.
  Registry files are exported to Unicode format by default.
- RegEdit always shows the 64-bit view of the registry on 64-bit prefixes.
- The Reg.exe registry manipulation tool supports importing and exporting
  registry files.
- The command interpreter implements the MKLINK command.
- The command interpreter supports escape characters in the prompt string.
- WineMine shows a confirmation dialog before resetting the best scores.

== Tools

- The IDL compiler (widl) handles C++ aggregate returns in an
  MSVC-compatible way.
- The resource compiler (wrc) supports translating version resources
  through the po files.
- The Wine debugger (winedbg) supports printing floating point and SSE
  register state.
- All Perl scripts that parse XML use the standard XML::LibXML module.
- The obsolete wineinstall tool is removed.

== Miscellaneous

- XAudio supports float audio formats with more than 2 channels.
- The Scheduler and related classes are supported in the C++ runtime.
- SQL driver installation is supported in ODBC.
- The ProgramData well known directory is supported.
- The Mono engine is updated with upstream Mono fixes, and supports
  the Mono profiler API version 2.
- The thread id is always displayed in debug traces.
2018-01-27 09:37:41 +00:00
Gerald Pfeifer
b5f38c7ca5 Limit the workaround for clang crashing to amd64.
PR:		224863
Reported by:	jbeich
2018-01-26 10:43:50 +00:00
Gerald Pfeifer
bcb0a9a024 Use GCC instead of the system compiler on FreeBSD 12.x with clang 6.0.0
since that compiler crashes.

(There may be a way to work around this in Wine, but that is unlikely
to be accepted for the stable release branch.)

PR:		224863
2018-01-26 09:14:21 +00:00
Gerald Pfeifer
9440661caf Backport r459628 | gerald | 2018-01-21 from emulators/wine-devel:
Configure --without-krb5 aka Kerberos support.  This should not make a
  real difference (and definitely not for clean builds), but makes this
  explicit and also avoids a configure warning.
2018-01-24 08:49:48 +00:00
Gerald Pfeifer
39cbb4b191 Backport two configure-related changes from emulators/wine-devel. This
is partly to sync wine and wine-devel as closely as possible before the
pending new major release of Wine, partly to make builds more reproducible
outside of a strict build environment (there should be no change for "pure"
builds).

r454242 | gerald | 2017-11-15

  [G]enerally disable PulseAudio support, not just for the
  Wine Staging case (where this originally only existed). [1]

r458393 | gerald | 2018-01-08

  Configure --without-udev since FreeBSD does not feature udev support
  as such.  (This should not be a practical change, but makes this explicit
  and also avoids a configure warning.)

PR:		195765 [1]
Reported by:	dbn [1]
2018-01-11 23:43:22 +00:00
Gerald Pfeifer
22410c30c2 Update to the Wine 2.0.4 maintenance release which brings the following:
- Various bug fixes
 - Updates to the National Language Support files
 - Documentation updates

On the way backport r454456 from emulators/wine-devel where it has sat
for seven weeks now:

 Explicitly add x11 and xext to USE_XORG (when the X11 option is set),
 both of which were pulled in implicitly so far. [1]

Reported by:    Mk/Scripts/qa.sh via dbn@ [1]
2018-01-07 23:28:40 +00:00
Gerald Pfeifer
4661348003 Update to the Wine 2.0.3 maintenance release. This brings various bug
fixes and FreeType 2.8.1 compatibility fixes.

Move ONLY_FOR_ARCHS and USES to appropriate places in the Makefile. [1]

Reported by:	portlint [1]
2017-10-20 20:50:05 +00:00
Gerald Pfeifer
e59c88cece Bump PORTREVISION for ports depending on the canonical version of GCC
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.

This includes ports
 - with USE_GCC=yes or USE_GCC=any,
 - with USES=fortran,
 - using Mk/bsd.octave.mk which in turn features USES=fortran, and
 - with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
   c++14-lang, c++0x, c11, or gcc-c++11-lib.

PR:		219275
2017-09-10 20:55:38 +00:00
Gerald Pfeifer
3dad3d8841 Update to the Wine 2.0.2 maintenance which mostly fixes bugs (62 as
filed in the upstream bug tracker).

Sort ONLY_FOR_ARCHS.

Pet portlint as far as files/patch-dlls_iphlpapi_ipstats.c goes.
2017-07-21 09:51:55 +00:00
Gerald Pfeifer
1ac9d76eb2 Bump PORTREVISION for pkg-descr change. 2017-06-04 14:34:18 +00:00
Matthew Rezny
b760897dde Revision bump of all ports with USE_GL after consolidation of mesa-libs
Approved by:	swills (mentor)
Differential Revision:	https://reviews.freebsd.org/D10845
2017-05-23 05:03:14 +00:00
Gerald Pfeifer
42c8b6c120 Adjust PORTSCOUT to the new versioning scheme of Wine where current
releases carry versions of the form 2.0.x, whereas new development
snapshots are labeled 2.y.
2017-04-23 10:26:34 +00:00
Gerald Pfeifer
0f046495bc Update to the Wine maintenance release 2.0.1, bringing various bug fixes
and deprecating tools/wineinstall.

Switch to .xz distribution files from .bz2 on the way.
2017-04-20 19:18:21 +00:00
Gerald Pfeifer
04d6f52202 Bump PORTREVISIONs for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).

This includes ports
 - with USE_GCC=yes or USE_GCC=any,
 - with USES=fortran,
 - using using Mk/bsd.octave.mk which in turn has USES=fortran, and
 - with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
   c++11-lang, c++0x, c11, or gcc-c++11-lib.

PR:		216707
2017-04-01 15:23:30 +00:00
Gerald Pfeifer
8bdee165b4 Update emulators/wine-mono to version 4.6.4 and switch to new MASTER_SITES.
Switch emulators/wine to this (from emulators/wine-mono-devel) and bump
PORTREVISION accordingly.
2017-03-21 20:48:59 +00:00
Gleb Smirnoff
c869d2c529 Make it compilable on FreeBSD 12 after struct inpcb and struct tcpcb were
stopped being exported.
2017-03-21 08:27:28 +00:00
Gerald Pfeifer
f7fbd00d67 Update from the 1.8 release series to Wine 2.0.
This represents over a year of development effort and around 6600
individual changes.

Support for Microsoft Office 2013 is a major highlight, and it
contains improvements across the board, as well as support for
many new applications and games.

== Text and fonts

- More DirectWrite features are implemented, including:
  - Drawing of underlines.
  - Renderer sees drawing effect associated with text segment.
  - Support for color fonts in COLR/CPAL format.
  - Initial font fallback support, builtin data for some of CJK ranges.
  - Support for Wine-specific font replacement registry settings.
  - Improved font metrics resolution in case of incomplete or
    ambiguous font data.
  - Support for EUDC font collection based on current registry
    settings.
- Font embedding in PDF files is supported.
- The RichEdit control supports bulleted and numbered lists.
- Bold glyphs can be synthesized also for bitmap fonts.
- Character tables are based on version 9.0.0 of the Unicode Standard.

== Graphics

- Window, bitmap and GDI DC render targets are implemented in Direct2D.
- A wide range of optimizations make the DIB engine noticeably faster.
- GDI graphic paths are reimplemented for better compatibility; they
  are also supported with enhanced metafiles.
- Gradients are supported in GDI enhanced metafiles.
- Metafiles are better supported in GdiPlus.

== User interface

- Clipboard support is reimplemented for better compatibility; copy & paste
  of HTML text is also improved. Drag & drop works more smoothly.
- In desktop mode, the taskbar displays running applications and
  allows switching between them.
- Version 4 of the system tray notification protocol is implemented.
- In desktop mode, some less common display resolutions like 640x400
  and 1280x960 are supported.
- More user interface elements scale correctly with high-DPI screens.

== Direct3D

- More Direct3D 10 and 11 features are implemented, including:
  - Several more shader model 4 and 5 shader instructions.
  - Several more resource formats.
  - Integer vertex shader inputs.
  - Typeless resources.
  - sRGB read/write support.
  - Depth and stencil clears.
  - Depth-only draws.
  - Array textures.
  - Index buffer offsets.
  - Unordered access views.
  - Primitive restart.
- The WineD3D graphics card database recognizes more graphics
  cards. When available, the GLX_MESA_query_renderer GLX extension is
  used to provide more accurate information about the graphics card.
- The (system) memory layout of texture resources more closely matches
  Windows. This affects applications that write beyond the bounds of a
  MIP-level, like for example League of Legends.
- The implementation of non-maskable multisample anti-aliasing is more
  correct. In particular, when the ARB_internalformat_query extension
  is available, only quality levels corresponding to specific sample
  counts supported by the OpenGL implementation are reported to the
  application.  Previously, reporting a large number of non-maskable
  multisample anti-aliasing quality levels would break some
  applications.
- Direct3D 11 feature levels are supported.
- Retrieving a GDI device context from DXGI surfaces is
  implemented. This is used for rendering to DXGI surfaces using GDI.
- More DXGI swapchain methods are implemented, particularly those
  relating to switching display modes and switching to and from
  fullscreen.
- When ARB_clip_control and ARB_viewport_array are both supported,
  position fixups are slightly more efficient.
- The APPLE_client_storage extension is no longer used. It caused more
  problems than it solved.
- New HKCU\Software\Wine\Direct3D registry keys:
  - "CheckFloatConstants" (REG_SZ).
    Setting this to "enabled" enables additional run-time bounds
    checking on relatively addressed shader constant access. This
    helps some (broken) applications, but comes at a performance cost.
  - "MaxShaderModelHS", "MaxShaderModelDS" and "MaxShaderModelCS" (REG_DWORD).
    These limit the maximum supported shader model for hull, domain,
    and compute shaders respectively, analogous to the existing
    "MaxShaderModelVS", "MaxShaderModelGS", "MaxShaderModelPS"
    keys. Note that these shader types are new in shader model 5, so
    setting this to anything lower than 5 will effectively disable
    them.
  - "SampleCount" (REG_DWORD).
    Setting this registry key will force the multisample anti-aliasing
    sample count to the specified value for swapchain render
    targets. This allows anti-aliasing to be forced on applications
    that do not otherwise support anti-aliasing themselves, but may
    have no effect or break the application depending on the specific
    application.

== DirectDraw

- Retrieving a GDI device context from a DirectDraw surface is
  implemented in a more accurate way. In particular, retrieving a GDI
  device context for a "client memory" surface will retrieve a GDI
  device context that's backed by that same client memory.
- A number of fixes related to vertex transformation in early
  DirectDraw versions have been made.

== D3DX

- The support for the D3DX 9 effect framework is more complete, in
  particular:
  - There is initial support for preshaders.
  - Many more effect states are correctly applied.
- D3DX 10 and 11 asynchronous data loaders are implemented.
- The d3dx9 DLLs no longer forward to d3dx9_36, but are built from the
  same source instead.
- The d3dcompiler DLLs no longer forward to d3dcompiler_43, but are
  built from the same source instead.

== Sound and video

- GStreamer version 1.0 is supported for audio and video streams.
- DirectSound supports downmixing from 5.1 and 4.0 formats to stereo.

== Internet and networking

- The Web Services API is supported. The XML reader and writer are
  implemented, along with support for serializing many common data
  types. Basic support for making SOAP calls is also included. This
  enables Microsoft Office 2013 online activation.
- The Gecko engine is updated to the version from Firefox 47.
- IDN name resolution is supported.
- Various SHA hashes are supported using GnuTLS.
- Looking up the host address prioritizes non-loopback interfaces,
  which fixes a number of networked games.
- XML writing is faster for large files.
- Winsock supports the IP_DONTFRAGMENT socket option.
- Long URLs are handled correctly.
- JavaScript performance is improved. JSON is also supported.

== Internationalization

- There is proper support for the Persian locale.
- Uniscribe better supports right-to-left languages.
- Japanese Hiragana, Katakana and full-width/half-width character
  mapping is implemented.

== 64-bit support

- The Mono engine has 64-bit support.
- C++ exceptions are handled correctly on x86-64, including nested
  exceptions and collided unwinds.
- The debug registers are supported on x86-64.

== Built-in applications

- The 'winebrowser' helper application supports multiple arguments to
  invoke the host browser or mailer.
- The 'reg' command-line registry utility supports the 'query'
  command, all registry data types, and has more robust command line
  handling.
- The 'winhlp32' help viewer properly displays tables and images.
- The 'wineconsole' tool better supports East-Asian fonts. Color
  handling is also improved.

== Kernel

- A new driver architecture is in place for supporting HID devices.
  This follows the Windows model, with platform-specific bus drivers
  and HID minidrivers. It will be used in future releases to unify
  support for HID devices, and potentially also for USB device
  support.
- Loading multiple kernel drivers inside the same user-mode process is
  supported. This is used for HID drivers.
- A directory cache is implemented, to allow returning files in the
  expected order and avoid relying on platform-specific system calls.
- Many more API Set libraries (the oddly-named api-ms-win-* dlls) are
  implemented.
- Interrupt 0x2d (used for debugger checks) is emulated.

== Miscellaneous

- Read interval timeouts are supported for serial ports.
- Variables starting with 'QT_' are filtered from the Unix environment
  since they may have unwanted effects on Qt-based Windows applications.
- Support for joystick button mapping and force feedback effects is
  improved.
- Many stream classes are implemented in MSVCIRT, the old I/O stream
  C++ runtime.
- Windows Management Instrumentation (WMI) implements some more WBEM
  classes.
- Most remaining OpenMP functions are implemented.
- Uninstallation support in MSI is improved.

== Configuration changes

- A number of DLLs are now built separately from a common source,
  instead of forwarding to a master DLL. This means that native DLL
  overrides need to be set on the specific version of the DLL being
  loaded, instead of the master one. This applies to the d3dx9_*,
  d3dcompiler_*, xaudio2_*, xapofx1_* and x3daudio1_* DLLs.
2017-02-03 20:32:11 +00:00
Dmitry Marakasov
8244fe99bc - Remove always-true/false conditions after FreeBSD 9, 10.1, 10.2 EOL
Approved by:	portmgr blanket
2017-01-11 10:08:38 +00:00
Gerald Pfeifer
91ad7fdf62 Update to Wine 1.8.6 which is a conservative maintenance release:
- Fix a regression introduced in 1.8.5 (#41627)
 - Various bug fixes.
 - A few more cards added to the GPU description table.
2016-12-19 23:05:14 +00:00
Gerald Pfeifer
89f8b05214 Bump PORTREVISIONS for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).

In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.
2016-11-20 09:38:08 +00:00
Gerald Pfeifer
64b6bb4711 Update to Wine 1.8.5 which mostly brings a number of bug fixes, and
a new include file include/wine/windows/wlanapi.h.

On the way, properly sort two existing files in pkg-plist.
2016-10-08 09:17:22 +00:00