[114236] trunk/dports/x11/wine-crossover

ryandesign at macports.org ryandesign at macports.org
Tue Dec 3 01:31:37 PST 2013


Revision: 114236
          https://trac.macports.org/changeset/114236
Author:   ryandesign at macports.org
Date:     2013-12-03 01:31:37 -0800 (Tue, 03 Dec 2013)
Log Message:
-----------
wine-crossover: fix build with freetype 2.5.1 (#41605), and update to 12.5.1 and bring back various changes from wine @1.6.0 (#40102)

Modified Paths:
--------------
    trunk/dports/x11/wine-crossover/Portfile
    trunk/dports/x11/wine-crossover/files/BOOL.patch
    trunk/dports/x11/wine-crossover/files/patch-dlls-winemac.drv-gdi.c.diff

Added Paths:
-----------
    trunk/dports/x11/wine-crossover/files/patch-freetype-2.5.1.diff

Property Changed:
----------------
    trunk/dports/x11/wine-crossover/


Property changes on: trunk/dports/x11/wine-crossover
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/dports/x11/wine-devel:58381,60835,84933
   + /branches/mld-qt-481/dports/x11/wine:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856
/trunk/dports/x11/wine:114198
/trunk/dports/x11/wine-devel:58381,60835,84933,114170

Modified: trunk/dports/x11/wine-crossover/Portfile
===================================================================
--- trunk/dports/x11/wine-crossover/Portfile	2013-12-03 09:25:31 UTC (rev 114235)
+++ trunk/dports/x11/wine-crossover/Portfile	2013-12-03 09:31:37 UTC (rev 114236)
@@ -1,6 +1,8 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 # $Id$
 
 PortSystem                  1.0
+PortGroup                   compiler_blacklist_versions 1.0
 
 # Please keep the wine, wine-devel and wine-crossover ports as similar as possible.
 
@@ -9,7 +11,7 @@
 
 name                        wine-crossover
 conflicts                   wine wine-devel
-version                     12.2.2
+version                     12.5.1
 license                     LGPL-2.1+
 categories                  x11
 maintainers                 jeremyhu openmaintainer
@@ -18,7 +20,7 @@
 distname                    crossover-sources-${version}
 dist_subdir                 wine
 set wine_distfile           ${distname}${extract.suffix}
-set wine_gecko_version      1.8
+set wine_gecko_version      2.21
 set wine_gecko_distfile     wine_gecko-${wine_gecko_version}-x86.msi
 distfiles                   ${wine_distfile}:winesource ${wine_gecko_distfile}:winegecko
 extract.only                ${wine_distfile}
@@ -26,7 +28,7 @@
 build.target                depend all
 use_parallel_build          yes
 
-description                 Wine Is Not an Emulator (1.5.15 with CodeWeavers modifications for CrossOver)
+description                 Wine Is Not an Emulator (1.6 with CodeWeavers modifications for CrossOver)
 
 long_description            Wine is an implementation of the Windows APIs on top of X11. \
                             This version contains the Codeweavers patches for CrossOver
@@ -35,12 +37,12 @@
                             http://ftp.codeweavers.com/pub/crossover/source/archive/${version}/:winesource \
                             sourceforge:project/wine/Wine%20Gecko/${wine_gecko_version}:winegecko
 
-checksums                   crossover-sources-12.2.2.tar.gz \
-                            rmd160  5ddd12e9251646a2923a258ea03b9777a6efe4ab \
-                            sha256  110378a4bc8420c84aed96e9e0ba7d5f495934126e3df224863f544708d97b2d \
-                            wine_gecko-1.8-x86.msi \
-                            rmd160  f7b86d2e5ff82bf345b2420c9a8e9cfbc3c9989c \
-                            sha256  28f3b7e497e1f884a64b2d982b61dda3167efac4c843de198654a1c9144ff9dc
+checksums                   ${wine_distfile} \
+                            rmd160  954ab9e7ef0df940cb167d9d55ca0d0cf663c207 \
+                            sha256  6448607e44e3b20880ec5e24a8c50ed9516a7ccf7a55741bb6f6e88002fce328 \
+                            ${wine_gecko_distfile} \
+                            rmd160  e5aded4dfcde2462d9802478efe5aae1552e842d \
+                            sha256  f01fafa6d7aab995c38add77315c4cbc2f32f52d5d6a9350056f42b62d631fd8
 
 # Note: Most of the X11 libs are dlopen()'d
 depends_lib                 port:expat \
@@ -55,7 +57,7 @@
                             port:libxml2 \
                             port:libxslt \
                             port:ncurses \
-                            port:openssl \
+                            port:gnutls \
                             port:tiff \
                             port:zlib \
                             port:xorg-libsm \
@@ -79,10 +81,13 @@
 patchfiles                  BOOL.patch \
                             mach_machine.patch \
                             patch-dlls-winemac.drv-gdi.c.diff \
+                            patch-freetype-2.5.1.diff \
                             winedbg.patch
 
+# rebuild configure after freetype 2.5.1 patch
+use_autoreconf              yes
+
 configure.ldflags-append    -framework CoreServices \
-                            -framework Security \
                             -lz
 
 configure.args              --without-alsa \
@@ -95,7 +100,7 @@
                             --with-freetype \
                             --without-gphoto \
                             --with-glu \
-                            --without-gnutls \
+                            --with-gnutls \
                             --without-gsm \
                             --without-hal \
                             --with-jpeg \
@@ -103,7 +108,6 @@
                             --without-mpg123 \
                             --without-openal \
                             --with-opengl \
-                            --with-openssl \
                             --without-oss \
                             --with-png \
                             --with-pthread \
@@ -127,11 +131,14 @@
 # This is not 64-bit friendly yet
 supported_archs             i386
 
-# BUILD FIX TODO: llvm-gcc-4.2, clang
-# llvm-gcc does not respect force_align_arg_pointer
-# clang fails due to CFI-foo (winebuild uses /usr/bin/as to assemble clang-generated assembly)
-compiler.whitelist gcc-4.2 apple-gcc-4.2
+# llvm-gcc-4.2 doesn't respect force_align_arg_pointer; wine builds but fails to run
+# http://bugs.winehq.org/show_bug.cgi?id=28030
+compiler.blacklist-append   *llvm-gcc-4.2
 
+# clang < 3.1 fails to build wine with "error: invalid operand for instruction lretw"
+# http://bugs.winehq.org/show_bug.cgi?id=32872
+compiler.blacklist-append   {clang < 425} macports-clang-2.9 macports-clang-3.0
+
 platform darwin {
     if {${os.major} <= 9} {
         # Fix "Xcode 3.x cannot build 16-bit code correctly. Use --disable-win16 if you don't need 16-bit support."

Modified: trunk/dports/x11/wine-crossover/files/BOOL.patch
===================================================================
--- trunk/dports/x11/wine-crossover/files/BOOL.patch	2013-12-03 09:25:31 UTC (rev 114235)
+++ trunk/dports/x11/wine-crossover/files/BOOL.patch	2013-12-03 09:31:37 UTC (rev 114236)
@@ -106,20 +106,20 @@
  #undef LoadResource
  #undef CompareString
  #undef GetCurrentThread
---- dlls/dinput/joystick_osx.c.orig	2012-02-13 11:58:52.000000000 -0800
-+++ dlls/dinput/joystick_osx.c	2012-02-13 11:59:09.000000000 -0800
-@@ -24,6 +24,7 @@
- #include "wine/port.h"
- 
- #if defined(HAVE_IOKIT_HID_IOHIDLIB_H)
+--- dlls/dinput/joystick_osx.c.orig	2013-05-25 11:13:00.000000000 +0300
++++ dlls/dinput/joystick_osx.c	2013-05-25 11:13:00.000000000 +0300
+@@ -29,6 +29,7 @@
+ #define LONG SInt32
+ #define LPLONG SInt32*
+ #define E_PENDING __carbon_E_PENDING
 +#define BOOL __carbon_BOOL
  #define ULONG __carbon_ULONG
  #define E_INVALIDARG __carbon_E_INVALIDARG
  #define E_OUTOFMEMORY __carbon_E_OUTOFMEMORY
-@@ -45,6 +46,7 @@
- #define HRESULT __carbon_HRESULT
- #define STDMETHODCALLTYPE __carbon_STDMETHODCALLTYPE
+@@ -52,6 +53,7 @@
+ #include <IOKit/IOKitLib.h>
  #include <IOKit/hid/IOHIDLib.h>
+ #include <ForceFeedback/ForceFeedback.h>
 +#undef BOOL
  #undef ULONG
  #undef E_INVALIDARG

Modified: trunk/dports/x11/wine-crossover/files/patch-dlls-winemac.drv-gdi.c.diff
===================================================================
--- trunk/dports/x11/wine-crossover/files/patch-dlls-winemac.drv-gdi.c.diff	2013-12-03 09:25:31 UTC (rev 114235)
+++ trunk/dports/x11/wine-crossover/files/patch-dlls-winemac.drv-gdi.c.diff	2013-12-03 09:31:37 UTC (rev 114236)
@@ -1,16 +1,16 @@
 Fix build on Mavericks
 http://bugs.winehq.org/show_bug.cgi?id=34162
---- dlls/winemac.drv/gdi.c.orig	2013-07-22 08:39:22.000000000 -0500
-+++ dlls/winemac.drv/gdi.c	2013-10-24 12:22:48.000000000 -0500
-@@ -39,7 +39,6 @@
+--- dlls/winemac.drv/gdi.c.orig
++++ dlls/winemac.drv/gdi.c
+@@ -49,7 +49,6 @@ static int vert_res;            /* height in pixels of screen */
  static int desktop_horz_res;    /* width in pixels of virtual desktop */
  static int desktop_vert_res;    /* height in pixels of virtual desktop */
  static int bits_per_pixel;      /* pixel depth of screen */
 -static int palette_size;        /* number of color entries in palette */
- static int device_data_valid;
+ static int device_data_valid;   /* do the above variables have up-to-date values? */
  
  static CRITICAL_SECTION device_data_section;
-@@ -93,7 +92,6 @@
+@@ -141,7 +140,6 @@ static void device_init(void)
      CGDirectDisplayID mainDisplay = CGMainDisplayID();
      CGSize size_mm = CGDisplayScreenSize(mainDisplay);
      CGDisplayModeRef mode = CGDisplayCopyDisplayMode(mainDisplay);
@@ -18,7 +18,7 @@
  
      /* Initialize device caps */
      log_pixels_x = log_pixels_y = get_dpi();
-@@ -139,15 +137,6 @@
+@@ -187,15 +185,6 @@ static void device_init(void)
      desktop_horz_res = desktop_rect.size.width;
      desktop_vert_res = desktop_rect.size.height;
  
@@ -34,7 +34,7 @@
      device_data_valid = TRUE;
  }
  
-@@ -319,7 +308,7 @@
+@@ -368,7 +357,7 @@ static INT macdrv_GetDeviceCaps(PHYSDEV dev, INT cap)
      case RASTERCAPS:
          ret = (RC_BITBLT | RC_BANDING | RC_SCALING | RC_BITMAP64 | RC_DI_BITMAP |
                 RC_DIBTODEV | RC_BIGFONT | RC_STRETCHBLT | RC_STRETCHDIB | RC_DEVBITS |
@@ -43,7 +43,7 @@
          break;
      case SHADEBLENDCAPS:
          ret = (SB_GRAD_RECT | SB_GRAD_TRI | SB_CONST_ALPHA | SB_PIXEL_ALPHA);
-@@ -344,7 +333,7 @@
+@@ -393,7 +382,7 @@ static INT macdrv_GetDeviceCaps(PHYSDEV dev, INT cap)
          ret = 0;
          break;
      case SIZEPALETTE:

Copied: trunk/dports/x11/wine-crossover/files/patch-freetype-2.5.1.diff (from rev 114198, trunk/dports/x11/wine/files/patch-freetype-2.5.1.diff)
===================================================================
--- trunk/dports/x11/wine-crossover/files/patch-freetype-2.5.1.diff	                        (rev 0)
+++ trunk/dports/x11/wine-crossover/files/patch-freetype-2.5.1.diff	2013-12-03 09:31:37 UTC (rev 114236)
@@ -0,0 +1,223 @@
+Fix build with freetype 2.5.1.
+http://bugs.winehq.org/show_bug.cgi?id=35010
+--- configure.ac.orig	2013-10-16 10:38:18.000000000 -0500
++++ configure.ac	2013-12-03 02:10:35.000000000 -0600
+@@ -1485,7 +1485,7 @@
+     WINE_PACKAGE_FLAGS(FREETYPE,[freetype2],[-lfreetype],
+                        [`(freetype-config --cflags || freetype2-config --cflags) 2>/dev/null`],
+                        [`(freetype-config --libs || freetype2-config --libs) 2>/dev/null`])
+-    WINE_CHECK_SONAME(freetype,FT_Init_FreeType,[ft_lib=yes],[ft_lib=no],[$FREETYPE_LIBS])
++    AC_CHECK_HEADERS([ft2build.h])
+     if test -d "$srcdir/../freetype"
+     then
+         case $host_os in
+@@ -1502,52 +1502,22 @@
+             ;;
+         esac
+     fi
+-    if test "$ft_lib" = "yes"
++    if test "$ac_cv_header_ft2build_h" = "yes"
+     then
+-	AC_CHECK_HEADERS(ft2build.h \
+-                         freetype/freetype.h \
+-                         freetype/ftglyph.h \
+-                         freetype/fttypes.h \
+-                         freetype/tttables.h \
+-                         freetype/ftsnames.h \
+-                         freetype/ttnameid.h \
+-                         freetype/ftoutln.h \
+-                         freetype/ftwinfnt.h \
+-                         freetype/ftmodapi.h \
+-                         freetype/ftlcdfil.h,,,
+-                         [#ifdef HAVE_FT2BUILD_H
+-                          # include <ft2build.h>
+-                          #endif])
+-	AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <ft2build.h>
+-                    #include <freetype/fttrigon.h>]])],[AC_DEFINE(HAVE_FREETYPE_FTTRIGON_H, 1,
+-          [Define if you have the <freetype/fttrigon.h> header file.])
+-                    wine_cv_fttrigon=yes],[wine_cv_fttrigon=no])
+-        AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <freetype/ftmodapi.h>])
+-	dnl Check that we have at least freetype/freetype.h
+-	if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes"
+-	then
+-	    AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed])
+-            if test -d "$srcdir/../freetype"
+-            then
+-                case $host_os in
+-                  darwin*|macosx*)
+-                    dnl Special case for in-tree build
+-                    FREETYPE_INCL="-I\$(top_srcdir)/../freetype/include"
+-                    FREETYPE_LIBS="-L\$(top_builddir)/../freetype/objs/.libs -lcxfreetype"
+-                    ;;
+-                esac
+-            fi
+-        else
+-            FREETYPE_LIBS=""
+-	fi
++        WINE_CHECK_SONAME(freetype,FT_Init_FreeType,
++            [AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed])
++             AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <ft2build.h>
++#include FT_MODULE_H])],
++            [FREETYPE_LIBS=""],[$FREETYPE_LIBS])
+     else
++        FREETYPE_CFLAGS=""
+         FREETYPE_LIBS=""
+     fi
+     CPPFLAGS="$ac_save_CPPFLAGS"
+ fi
+-WINE_ERROR_WITH(freetype,[test "x$ac_cv_header_freetype_freetype_h" != xyes -o "x$wine_cv_fttrigon" != xyes],
++WINE_ERROR_WITH(freetype,[test "x$ac_cv_lib_soname_freetype" = x],
+                 [FreeType ${notice_platform}development files not found. Fonts will not be built.])
+-test "x$ac_cv_header_freetype_freetype_h" = xyes -a "x$wine_cv_fttrigon" = xyes || enable_fonts=${enable_fonts:-no}
++test "x$ac_cv_lib_soname_freetype" = x && enable_fonts=${enable_fonts:-no}
+ 
+ dnl **** Check for parport (currently Linux only) ****
+ AC_CACHE_CHECK([for parport header/ppdev.h], ac_cv_c_ppdev,
+--- dlls/gdi32/freetype.c.orig	2013-11-30 18:22:25.000000000 -0600
++++ dlls/gdi32/freetype.c	2013-11-30 18:22:25.000000000 -0600
+@@ -79,6 +79,23 @@
+ #undef SetRectRgn
+ #endif /* HAVE_CARBON_CARBON_H */
+ 
++#ifdef HAVE_FT2BUILD_H
++#include <ft2build.h>
++#include FT_FREETYPE_H
++#include FT_GLYPH_H
++#include FT_TYPES_H
++#include FT_TRUETYPE_TABLES_H
++#include FT_SFNT_NAMES_H
++#include FT_TRUETYPE_IDS_H
++#include FT_OUTLINE_H
++#include FT_TRIGONOMETRY_H
++#include FT_MODULE_H
++#include FT_WINFONTS_H
++#ifdef FT_LCD_FILTER_H
++#include FT_LCD_FILTER_H
++#endif
++#endif /* HAVE_FT2BUILD_H */
++
+ #include "windef.h"
+ #include "winbase.h"
+ #include "winternl.h"
+@@ -97,43 +114,6 @@
+ 
+ #ifdef HAVE_FREETYPE
+ 
+-#ifdef HAVE_FT2BUILD_H
+-#include <ft2build.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FREETYPE_H
+-#include <freetype/freetype.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTGLYPH_H
+-#include <freetype/ftglyph.h>
+-#endif
+-#ifdef HAVE_FREETYPE_TTTABLES_H
+-#include <freetype/tttables.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTTYPES_H
+-#include <freetype/fttypes.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTSNAMES_H
+-#include <freetype/ftsnames.h>
+-#endif
+-#ifdef HAVE_FREETYPE_TTNAMEID_H
+-#include <freetype/ttnameid.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTOUTLN_H
+-#include <freetype/ftoutln.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTTRIGON_H
+-#include <freetype/fttrigon.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTWINFNT_H
+-#include <freetype/ftwinfnt.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTMODAPI_H
+-#include <freetype/ftmodapi.h>
+-#endif
+-#ifdef HAVE_FREETYPE_FTLCDFIL_H
+-#include <freetype/ftlcdfil.h>
+-#endif
+-
+ #ifndef HAVE_FT_TRUETYPEENGINETYPE
+ typedef enum
+ {
+@@ -186,7 +166,7 @@
+ MAKE_FUNCPTR(FT_Vector_Transform);
+ MAKE_FUNCPTR(FT_Vector_Unit);
+ static FT_TrueTypeEngineType (*pFT_Get_TrueType_Engine_Type)(FT_Library);
+-#ifdef HAVE_FREETYPE_FTLCDFIL_H
++#ifdef FT_LCD_FILTER_H
+ static FT_Error (*pFT_Library_SetLcdFilter)(FT_Library, FT_LcdFilter);
+ #endif
+ 
+@@ -924,7 +904,7 @@
+ 
+ static BOOL is_subpixel_rendering_enabled( void )
+ {
+-#ifdef HAVE_FREETYPE_FTLCDFIL_H
++#ifdef FT_LCD_FILTER_H
+     static int enabled = -1;
+     if (enabled == -1)
+     {
+@@ -3912,7 +3892,7 @@
+ #undef LOAD_FUNCPTR
+     /* Don't warn if these ones are missing */
+     pFT_Get_TrueType_Engine_Type = wine_dlsym(ft_handle, "FT_Get_TrueType_Engine_Type", NULL, 0);
+-#ifdef HAVE_FREETYPE_FTLCDFIL_H
++#ifdef FT_LCD_FILTER_H
+     pFT_Library_SetLcdFilter = wine_dlsym(ft_handle, "FT_Library_SetLcdFilter", NULL, 0);
+ #endif
+ 
+@@ -6655,7 +6635,7 @@
+     case WINE_GGO_HBGR_BITMAP:
+     case WINE_GGO_VRGB_BITMAP:
+     case WINE_GGO_VBGR_BITMAP:
+-#ifdef HAVE_FREETYPE_FTLCDFIL_H
++#ifdef FT_LCD_FILTER_H
+       {
+         switch (ft_face->glyph->format)
+         {
+--- include/config.h.in.orig	2013-11-15 13:30:24.000000000 -0600
++++ include/config.h.in	2013-12-01 03:04:06.000000000 -0600
+@@ -132,39 +132,6 @@
+ /* Define if FreeType 2 is installed */
+ #undef HAVE_FREETYPE
+ 
+-/* Define to 1 if you have the <freetype/freetype.h> header file. */
+-#undef HAVE_FREETYPE_FREETYPE_H
+-
+-/* Define to 1 if you have the <freetype/ftglyph.h> header file. */
+-#undef HAVE_FREETYPE_FTGLYPH_H
+-
+-/* Define to 1 if you have the <freetype/ftlcdfil.h> header file. */
+-#undef HAVE_FREETYPE_FTLCDFIL_H
+-
+-/* Define to 1 if you have the <freetype/ftmodapi.h> header file. */
+-#undef HAVE_FREETYPE_FTMODAPI_H
+-
+-/* Define to 1 if you have the <freetype/ftoutln.h> header file. */
+-#undef HAVE_FREETYPE_FTOUTLN_H
+-
+-/* Define to 1 if you have the <freetype/ftsnames.h> header file. */
+-#undef HAVE_FREETYPE_FTSNAMES_H
+-
+-/* Define if you have the <freetype/fttrigon.h> header file. */
+-#undef HAVE_FREETYPE_FTTRIGON_H
+-
+-/* Define to 1 if you have the <freetype/fttypes.h> header file. */
+-#undef HAVE_FREETYPE_FTTYPES_H
+-
+-/* Define to 1 if you have the <freetype/ftwinfnt.h> header file. */
+-#undef HAVE_FREETYPE_FTWINFNT_H
+-
+-/* Define to 1 if you have the <freetype/ttnameid.h> header file. */
+-#undef HAVE_FREETYPE_TTNAMEID_H
+-
+-/* Define to 1 if you have the <freetype/tttables.h> header file. */
+-#undef HAVE_FREETYPE_TTTABLES_H
+-
+ /* Define to 1 if the system has the type `fsblkcnt_t'. */
+ #undef HAVE_FSBLKCNT_T
+ 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20131203/901cbdf6/attachment.html>


More information about the macports-changes mailing list