[MacPorts] #53651: wine, wine-crossover, wine-devel: add 64-bit support

MacPorts noreply at macports.org
Fri Mar 10 23:31:44 UTC 2017


#53651: wine, wine-crossover, wine-devel: add 64-bit support
---------------------------------------------+------------------------
  Reporter:  axet                            |      Owner:  ryandesign
      Type:  enhancement                     |     Status:  assigned
  Priority:  Normal                          |  Milestone:
 Component:  ports                           |    Version:
Resolution:                                  |   Keywords:
      Port:  wine wine-crossover wine-devel  |
---------------------------------------------+------------------------

Comment (by casr):

 Okay, so I had a bit more of a tinker around and patched it so that the
 DLL directory is treated separately; patch below.

 {{{
 --- x11/wine/Portfile.orig
 +++ x11/wine/Portfile
 @@ -1,6 +1,7 @@
  # -*- 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

  PortSystem                  1.0
 +PortGroup                   muniversal 1.0
  PortGroup                   compiler_blacklist_versions 1.0

  # Please keep the wine, wine-devel and wine-crossover ports as similar as
 possible.
 @@ -13,12 +14,14 @@ name                        wine
  conflicts                   wine-devel wine-crossover
  set my_name                 wine
  version                     2.0
 +revision                    2
  set branch                  [lindex [split ${version} .] 0].0
  license                     LGPL-2.1+
  categories                  x11
  maintainers                 ryandesign jwa openmaintainer
  homepage                    https://www.winehq.org
  platforms                   darwin
 +supported_archs             i386 x86_64
  use_bzip2                   yes
  distname                    ${my_name}-${version}
  dist_subdir                 ${my_name}
 @@ -91,10 +94,21 @@ depends_build               port:bison \
                              port:pkgconfig

  patchfiles                  BOOL.patch \
 +                            patch-configure.diff \
                              cups_headers.patch \
                              mach_machine.patch \
                              tiger-shell.patch

 +pre-configure {
 +    if {[variant_isset universal]} {
 +        foreach arch ${universal_archs_to_use} {
 +            file mkdir ${worksrcpath}-${arch}
 +        }
 +
 +        configure.cmd ${worksrcpath}/configure
 +    }
 +}
 +
  # Wine requires the program specified in INSTALL to create intermediate
  # directories; /usr/bin/install doesn't.
  # http://bugs.winehq.org/show_bug.cgi?id=35310
 @@ -141,9 +155,14 @@ configure.args              --without-alsa \
                              --x-include=${prefix}/include \
                              --x-lib=${prefix}/lib

 -# 64-bit Wine exists for Linux, but does not work on OS X.
 -# http://www.winehq.org/pipermail/wine-devel/2014-February/103074.html
 -supported_archs             i386
 +configure.universal_args
 +
 +set merger_configure_args(x86_64) "--enable-win64 --libdir=${prefix}/lib"
 +set merger_configure_args(i386)   --with-
 wine64=${workpath}/${worksrcdir}-x86_64
 +
 +if {${build_arch} eq "x86_64"} {
 +    default_variants            +universal
 +}

  # 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

 --- /dev/null
 +++ x11/wine/files/patch-configure.diff
 @@ -0,0 +1,19 @@
 +# Output DLLs to different directories so that we don't have a clash when
 +# they're merged back together
 +
 +--- configure.orig
 ++++ configure
 +@@ -7320,7 +7320,12 @@
 +
 +
 +
 +-dlldir="\${libdir}/wine"
 ++if test "x$enable_win64" = "xyes"
 ++then
 ++  dlldir="\${libdir}/wine64"
 ++else
 ++  dlldir="\${libdir}/wine"
 ++fi
 +
 + DLLFLAGS="-D_REENTRANT"
 +
 }}}

--
Ticket URL: <https://trac.macports.org/ticket/53651#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list