Skip to content
Permalink
Browse files

wine-devel: Merge 64-bit support from wine

Use a slightly different approach to modify `dlldir` for 64-bit, as it
is no longer set in the configure script.

See: https://trac.macports.org/ticket/53651
  • Loading branch information
raimue committed Mar 19, 2018
1 parent 89ddfe3 commit 6641a5273e4d3a4fa33f21433152d09d3aa55cc8
Showing with 36 additions and 6 deletions.
  1. +36 −6 x11/wine-devel/Portfile
@@ -1,30 +1,35 @@
# -*- 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.

# When updating the version of wine, update wine_gecko to a compatible version
# per the table at http://wiki.winehq.org/Gecko and update wine-mono as well;
# see http://wiki.winehq.org/Mono and http://sourceforge.net/projects/wine/files/Wine%20Mono/
# When updating the version of wine, update wine_gecko and wine_mono to compatible versions
# as referenced in the source code. Check here by replacing X.Y with the version:
# https://source.winehq.org/git/wine.git/blob/refs/tags/wine-X.Y:/dlls/appwiz.cpl/addons.c
# see also http://wiki.winehq.org/Gecko and http://wiki.winehq.org/Mono

name wine-devel
conflicts wine wine-crossover
set my_name wine
version 3.4
set branch [lindex [split ${version} .] 0].x
revision 1
license LGPL-2.1+
categories x11
maintainers {ryandesign @ryandesign} openmaintainer
homepage https://www.winehq.org
platforms darwin
supported_archs i386 x86_64
use_xz yes
distname ${my_name}-${version}
dist_subdir ${my_name}
set wine_distfile ${distname}${extract.suffix}
set wine_gecko_version 2.47
set wine_gecko_distfile wine_gecko-${wine_gecko_version}-x86.msi
set wine_gecko64_distfile wine_gecko-${wine_gecko_version}-x86_64.msi
set wine_mono_version 4.7.1
set wine_mono_distfile wine-mono-${wine_mono_version}.msi
use_parallel_build yes
@@ -52,6 +57,7 @@ extract.only ${wine_distfile}

distfiles ${wine_distfile}:winesource \
${wine_gecko_distfile}:winegecko \
${wine_gecko64_distfile}:winegecko \
${wine_mono_distfile}:winemono

checksums ${wine_distfile} \
@@ -62,6 +68,10 @@ checksums ${wine_distfile} \
rmd160 abf7cc78b49dd0623bc8fe87ae0e32bb8694e13d \
sha256 3b8a361f5d63952d21caafd74e849a774994822fb96c5922b01d554f1677643a \
size 49266176 \
${wine_gecko64_distfile} \
rmd160 254da21cb2503f20d065167b385b3e83ea3ab327 \
sha256 c565ea25e50ea953937d4ab01299e4306da4a556946327d253ea9b28357e4a7d \
size 50806272 \
${wine_mono_distfile} \
rmd160 3e2932960dabff8283f02b32dc573b0dda6adfac \
sha256 2c8d5db7f833c3413b2519991f5af1f433d59a927564ec6f38a3f1f8b2c629aa \
@@ -94,6 +104,16 @@ patchfiles BOOL.patch \
fix-flicker.patch \
mach_machine.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
@@ -191,9 +211,16 @@ variant x11 {

default_variants +x11

# 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_build_args(x86_64) "dlldir=\\\\\${libdir}/wine64"
set merger_destroot_args(x86_64) "dlldir=\\\\\${libdir}/wine64"
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
}

# error: Xcode 3.x cannot build 16-bit code correctly
compiler.blacklist-append {gcc-4.2 < 5600}
@@ -263,6 +290,9 @@ post-destroot {
xinstall -d ${destroot}${prefix}/share/wine/gecko
xinstall -m 644 ${distpath}/${wine_gecko_distfile} ${destroot}${prefix}/share/wine/gecko

xinstall -d ${destroot}${prefix}/share/wine/gecko
xinstall -m 644 ${distpath}/${wine_gecko64_distfile} ${destroot}${prefix}/share/wine/gecko

xinstall -d ${destroot}${prefix}/share/wine/mono
xinstall -m 644 ${distpath}/${wine_mono_distfile} ${destroot}${prefix}/share/wine/mono

0 comments on commit 6641a52

Please sign in to comment.
You can’t perform that action at this time.