source: trunk/dports/www/webkit-gtk/Portfile @ 97346

Last change on this file since 97346 was 97346, checked in by jeremyhu@…, 8 years ago

webkit-gtk: Build fix for Tiger, #35923

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 6.9 KB
Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
2# $Id: Portfile 97346 2012-09-04 07:00:27Z jeremyhu@macports.org $
3
4PortSystem      1.0
5PortGroup       muniversal 1.0
6
7name            webkit-gtk
8epoch           1
9version         1.8.3
10description     Apple's WebKit HTML rendering library for GTK+
11long_description ${description}
12maintainers     jeremyhu devans
13categories      www gnome
14platforms       darwin freebsd
15license         LGPL-2+ BSD
16homepage        http://webkitgtk.org/
17master_sites    http://webkitgtk.org/releases/
18
19use_xz          yes
20distname        webkit-${version}
21
22checksums       sha1    ccf567fdfd7fbc63a3340777278e41b17522b80d \
23                rmd160  a25fe7966630d2a0e0926f565e28a9054d446c14 \
24                sha256  ada02d636af61aed38f142d3cded662d141ce71264f624c4eb873621a74cc9e7
25
26depends_lib     \
27        port:gtk2 \
28        port:libsoup \
29        port:icu \
30        port:libxslt \
31        port:sqlite3 \
32        port:enchant \
33        port:xorg-libXt \
34        port:geoclue \
35        port:mesa
36       
37depends_build   \
38        port:pkgconfig \
39        port:gtk-doc
40
41# case-insensitive.patch: https://bugs.webkit.org/show_bug.cgi?id=65811
42# our-icu.patch: No upstream bug report, probably not wanted
43# xrender-check.patch: https://bugs.webkit.org/show_bug.cgi?id=84095
44# quartz.patch: https://bugs.webkit.org/show_bug.cgi?id=84423
45# bison-2.6.patch: No upstream bug (?)
46# tiger.patch: No upstream bug, http://trac.macports.org/ticket/35923
47
48patchfiles \
49        case-insensitive.patch \
50        our-icu.patch \
51        xrender-check.patch \
52        quartz.patch \
53        bison-2.6.patch \
54        tiger.patch
55
56configure.args  \
57        --with-gtk=2.0 \
58        --disable-introspection \
59        --enable-link-prefetch \
60        --enable-image-resizer \
61        --disable-video \
62        --enable-media-statistics \
63        --enable-media-stream \
64        --enable-svg \
65        --enable-geolocation \
66        --enable-webgl \
67        --enable-page-visibility-api \
68        --enable-datagrid \
69        --enable-mathml \
70        --enable-web-timing \
71        --enable-mhtml \
72        --enable-microdata \
73        --enable-mutation-observers
74
75# https://bugs.webkit.org/show_bug.cgi?id=94488
76configure.universal_args-delete --disable-dependency-tracking
77
78# Not enabled because marked as expirimental
79#        --with-accelerated-compositing \
80#        --enable-animation-api \
81#        --enable-register-protocol-handler \
82
83# In 1.8.2:
84# ./Source/WebCore/workers/WorkerContext.h:225: error: 'IDBFactoryBackendInterface' was not declared in this scope
85# https://bugs.webkit.org/show_bug.cgi?id=94495
86#        --enable-indexed-database \
87
88# In 1.8.2:
89# Source/WebCore/platform/gtk/ClipboardGtk.h:46: error: cannot allocate an object of abstract type 'WebCore::ClipboardGtk'
90# https://bugs.webkit.org/show_bug.cgi?id=94496
91#        --enable-data-transfer-items \
92
93# In 1.8.2:
94# AsyncFileSystemCallbacks.h is missing
95# https://bugs.webkit.org/show_bug.cgi?id=94413
96#        --enable-file-system \
97
98# In 1.8.2:
99# Source/WebKit/gtk/webkit/webkitwebview.cpp: In function 'void webkit_web_view_init(WebKitWebView*)':
100# Source/WebKit/gtk/webkit/webkitwebview.cpp:3422: error: cannot allocate an object of abstract type 'WebKit::ChromeClient'
101# ./Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h:43: note:   because the following virtual functions are pure within 'WebKit::ChromeClient':
102# ./Source/WebCore/page/ChromeClient.h:232: note:       virtual void WebCore::ChromeClient::enumerateChosenDirectory(WebCore::FileChooser*)
103# https://bugs.webkit.org/show_bug.cgi?id=94497
104#        --enable-directory-upload \
105
106# In 1.8.2:
107# ./DerivedSources/webkit/WebKitDOMHTMLMediaElement.h:101: error: 'WebKitDOMUint8Array' has not been declared
108#        --enable-media-source \
109
110# In 1.8.2:
111# ./DerivedSources/webkit/WebKitDOMDOMWindow.h:843: error: expected constructor, destructor, or type conversion before '*' token
112# https://bugs.webkit.org/show_bug.cgi?id=94498
113#        --enable-notifications \
114
115# In 1.8.2:
116# AudioBufferCallback.h is missing
117#        --enable-web-audio \
118
119# In 1.8.2:
120# Source/WebCore/html/ColorInputType.cpp: In member function 'virtual void WebCore::ColorInputType::createShadowSubtree()':
121# Source/WebCore/html/ColorInputType.cpp:119: error: 'class WebCore::HTMLInputElement' has no member named 'shadowRoot'
122# Source/WebCore/html/ColorInputType.cpp: In member function 'WebCore::HTMLElement* WebCore::ColorInputType::shadowColorSwatch() const':
123# Source/WebCore/html/ColorInputType.cpp:188: error: 'class WebCore::HTMLInputElement' has no member named 'shadowRoot'
124# https://bugs.webkit.org/show_bug.cgi?id=94499
125#        --enable-input-color \
126
127# In 1.8.2
128# DerivedSources/WebCore/JSDOMWindow.cpp:6255: error: no matching function for call to 'toJS(JSC::ExecState*&, WebCore::JSDOMGlobalObject*, WebCore::StorageInfo*)'
129# https://bugs.webkit.org/show_bug.cgi?id=94500
130#       --enable-quota \
131
132# We don't want to use the headers from the installed WebKit
133configure.cppflags-delete -I${prefix}/include
134
135autoreconf.env-append ACLOCAL="aclocal -I Source/autotools"
136use_autoreconf  yes
137autoreconf.args -fvi
138
139# BUILD FIX TODO: clang C++
140# clang has trouble with webkit-1.6.3's C++ as of 2012.04.19
141#
142# 1.8.2:
143# ./Source/WebCore/editing/Editor.h:388:18: error: 'willDetachPage' marked 'override' but does not override any member functions
144if {${configure.compiler} == "clang"} {
145    configure.compiler llvm-gcc-4.2
146}
147
148# https://trac.macports.org/ticket/34044
149if {${configure.compiler} == "gcc-4.0" && [vercmp ${xcodeversion} 3.0] >= 0} {
150    configure.compiler gcc-4.2
151}
152
153post-patch {
154    # https://bugs.webkit.org/show_bug.cgi?id=88407
155    reinplace "s:echo -n:/bin/echo -n:g" \
156        ${worksrcpath}/Source/WebCore/GNUmakefile.am
157}
158
159# TODO: fix this for muniversal
160# keep it for debug
161#post-destroot {
162#    file copy ${worksrcpath}/Programs/.libs/GtkLauncher ${destroot}${prefix}/bin
163#}
164
165# see bug #24622
166variant quartz {
167    configure.args-append --with-target=quartz
168
169    # TODO: See if this will build with OpenGL.framework
170    configure.args-delete --enable-webgl
171    depends_lib-delete \
172        port:mesa \
173        port:xorg-libXt
174}
175
176variant pango description {Use the pango font backend instead of freetype} {
177    configure.args-append --with-font-backend=pango
178}
179
180variant video description {Enable HTML5 video support using gstreamer} {
181        depends_lib-append      port:gst-plugins-base
182        configure.args-delete   --disable-video
183        configure.args-append   --enable-video-track
184}
185
186variant gnome_keyring description {Enable support for gnomekeyring} {
187        depends_lib-append      port:libgnome-keyring
188        configure.args-append   --enable-gnomekeyring
189}
190
191default_variants +video
192
193platform darwin {
194    if {${os.major} < 10} {
195        depends_build-append      port:python27
196        # https://trac.macports.org/ticket/35793
197        configure.env-append \
198            PYTHON=${prefix}/bin/python2.7
199    }
200}
201
202livecheck.type  regex
203livecheck.url   http://webkitgtk.org/?page=download
204livecheck.regex webkit-(\[0-9\]+\\.\[0-9\]*\[02468\]\\.\[0-9\]+)
Note: See TracBrowser for help on using the repository browser.