source: trunk/dports/x11/wine-crossover/Portfile @ 85517

Last change on this file since 85517 was 85517, checked in by ryandesign@…, 9 years ago

wine-crossover, wine-crossover-games: fix "'kIconServices16PixelDataARGB' undeclared" on Tiger by packporting a fix from upstream wine; see #31500

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 8.9 KB
Line 
1# $Id: Portfile 85517 2011-10-14 04:49:18Z ryandesign@macports.org $
2
3PortSystem                  1.0
4PortGroup                   archcheck 1.0
5PortGroup                   xcodeversion 1.0
6
7name                        wine-crossover
8conflicts                   wine wine-devel wine-crossover-games
9version                     10.1.0
10license                     LGPL-2.1+
11categories                  x11
12maintainers                 jeremyhu openmaintainer
13homepage                    http://www.codeweavers.com/
14platforms                   darwin
15distname                    crossover-sources-${version}
16dist_subdir                 wine
17set wine_distfile           [suffix ${distname}]
18set wine_gecko_distfile     wine_gecko-1.2.0-x86.msi
19distfiles                   ${wine_distfile} ${wine_gecko_distfile}
20extract.only                ${wine_distfile}
21worksrcdir                  wine
22build.target                depend all
23use_parallel_build          yes
24
25minimum_xcodeversions       {8 2.5}
26
27description                 Wine Is Not an Emulator (1.3.9 with CodeWeavers modifications for CrossOver)
28
29long_description            Wine is an implementation of the Windows APIs on top of X11. \
30                            This version contains the Codeweavers patches for CrossOver
31
32master_sites                http://media.codeweavers.com/pub/crossover/source/ \
33                            http://media.codeweavers.com/pub/crossover/source/archive/${version}/
34
35checksums                   ${wine_distfile} \
36                            rmd160  ff68078e199337c063f7a306d4af9cb710fee39e \
37                            sha256  b61721ffd06a649846f5afc45b5a2e0e4f533bbb19250539cdeef4035ab52067 \
38                            ${wine_gecko_distfile} \
39                            rmd160  089447eb59eea81c7b1b3d1896a20fe68586cd96 \
40                            sha256  d6ccdb32b5867df207c7cd89513297ceb89cfa93696bece470467845c6c4d3ee
41
42# Note: Most of the X11 libs are dlopen()'d
43depends_lib                 port:expat \
44                            port:fontconfig \
45                            port:freetype \
46                            port:jpeg \
47                            port:lcms \
48                            port:libiconv \
49                            port:libpng \
50                            port:libxml2 \
51                            port:libxslt \
52                            port:ncurses \
53                            port:openssl \
54                            port:tiff \
55                            port:zlib \
56                            port:xorg-libsm \
57                            port:xorg-libXcomposite \
58                            port:xorg-libXcursor \
59                            port:xorg-libXi \
60                            port:xorg-libXinerama \
61                            port:xorg-libXrandr \
62                            port:xorg-libXxf86vm \
63                            port:xrender \
64                            port:mesa
65
66archcheck.files             lib/libexpat.dylib \
67                            lib/libfontconfig.dylib \
68                            lib/libfreetype.dylib \
69                            lib/libjpeg.dylib \
70                            lib/liblcms.dylib \
71                            lib/libiconv.dylib \
72                            lib/libpng.dylib \
73                            lib/libxml2.dylib \
74                            lib/libxslt.dylib \
75                            lib/libncurses.dylib \
76                            lib/libssl.dylib \
77                            lib/libtiff.dylib \
78                            lib/libz.dylib \
79                            lib/libSM.dylib \
80                            lib/libXcomposite.dylib \
81                            lib/libXcursor.dylib \
82                            lib/libXi.dylib \
83                            lib/libXinerama.dylib \
84                            lib/libXrandr.dylib \
85                            lib/libXxf86vm.dylib \
86                            lib/libXrender.dylib \
87                            lib/libGL.dylib
88
89depends_build               port:flex \
90                            port:pkgconfig
91
92# Extract only the wine directory. We don't need the others, and their presence
93# interferes with the wine build (which uses parts of them if present).
94extract.post_args-append    wine
95
96patchfiles                  sl-audio.patch no-quartz-wm-workaround.patch
97
98configure.ldflags-append    -framework CoreServices \
99                            -lz
100
101configure.args              --without-alsa \
102                            --without-audioio \
103                            --without-capi \
104                            --with-cms \
105                            --with-coreaudio \
106                            --with-cups \
107                            --with-curses \
108                            --without-esd \
109                            --with-fontconfig \
110                            --with-freetype \
111                            --without-gphoto \
112                            --with-glu \
113                            --without-gnutls \
114                            --without-gsm \
115                            --without-hal \
116                            --without-jack \
117                            --with-jpeg \
118                            --without-ldap \
119                            --without-mpg123 \
120                            --without-nas \
121                            --without-openal \
122                            --with-opengl \
123                            --with-openssl \
124                            --without-oss \
125                            --with-png \
126                            --with-pthread \
127                            --without-sane \
128                            --with-tiff \
129                            --without-v4l \
130                            --with-xcomposite \
131                            --with-xcursor \
132                            --with-xinerama \
133                            --with-xinput \
134                            --with-xml \
135                            --with-xrandr \
136                            --with-xrender \
137                            --with-xshape \
138                            --with-xshm \
139                            --with-xslt \
140                            --with-xxf86vm \
141                            --with-x \
142                            --x-include=${prefix}/include \
143                            --x-lib=${prefix}/lib
144
145# This is not 64-bit friendly yet
146supported_archs             i386
147
148# BUILD FIX TODO: llvm-gcc-4.2, clang
149# llvm-gcc does not respect force_align_arg_pointer
150# clang fails due to CFI-foo (winebuild uses /usr/bin/as to assemble clang-generated assembly)
151if {${configure.compiler} == "llvm-gcc-4.2" ||
152    ${configure.compiler} == "clang"} {
153    configure.compiler gcc-4.2
154    if {![file executable ${configure.cc}]} {
155        depends_build-append port:apple-gcc42
156        configure.compiler apple-gcc-4.2
157    }
158}
159
160# darwin 8
161patchfiles-append           patch-SSLCopyPeerCertificates.diff \
162                            patch-dlls-windowscodecs-icnsformat.c.diff
163
164platform darwin 9 {
165    # Fix "Xcode 3.x cannot build 16-bit code correctly. Use --disable-win16 if you don't need 16-bit support."
166    # Only affects Xcode 3.0.x and 3.1.x, not 3.2.x.
167    # See http://bugs.winehq.org/show_bug.cgi?id=14920
168    configure.args-append --disable-win16
169}
170
171platform darwin 10 {
172    # _getdirentries_is_not_available_when_64_bit_inodes_are_in_effect dlls/ntdll/directory.o
173    configure.cppflags-append -D_DARWIN_NO_64_BIT_INODE
174}
175
176platform darwin 11 {
177    # _getdirentries_is_not_available_when_64_bit_inodes_are_in_effect dlls/ntdll/directory.o
178    configure.cppflags-append -D_DARWIN_NO_64_BIT_INODE
179
180    # Needed or wine will SIGBUS
181    configure.ldflags-append -Wl,-no_pie
182}
183
184pre-fetch {
185    if {"big" == ${os.endian}} {
186        ui_error "${name} can only be used on an Intel Mac or other computer with a little-endian processor."
187        return -code error "incompatible processor"
188    }
189}
190
191post-destroot {
192    xinstall -d ${destroot}${prefix}/libexec/wine
193    file rename ${destroot}${prefix}/bin/wineloader ${destroot}${prefix}/libexec/wine/wine
194    system "install_name_tool -change @executable_path/../lib/libwine.1.dylib ${prefix}/lib/libwine.1.dylib ${destroot}${prefix}/libexec/wine/wine"
195
196    foreach dll [glob ${destroot}${prefix}/lib/wine/*.so] {
197        system "install_name_tool -change @executable_path/../lib/libwine.1.dylib ${prefix}/lib/libwine.1.dylib ${dll}"
198    }
199
200    xinstall ${filespath}/wine.in ${destroot}${prefix}/bin/wine
201    reinplace s|@PREFIX@|${prefix}|g ${destroot}${prefix}/bin/wine
202   
203    xinstall -d ${destroot}${prefix}/share/wine/gecko
204    xinstall -m 644 ${distpath}/${wine_gecko_distfile} ${destroot}${prefix}/share/wine/gecko
205   
206    xinstall -d ${destroot}${prefix}/share/doc/${name}
207    xinstall -m 644 -W ${worksrcpath} \
208        ANNOUNCE \
209        AUTHORS \
210        COPYING.LIB \
211        LICENSE \
212        README \
213        ${destroot}${prefix}/share/doc/${name}
214}
215
216livecheck.type              regex
217livecheck.url               [lindex ${master_sites} 0]
218livecheck.regex             crossover-sources-(\[0-9.\]+)\\.tar
Note: See TracBrowser for help on using the repository browser.