Revision: 145324 https://trac.macports.org/changeset/145324 Author: jeremyhu@macports.org Date: 2016-01-31 21:26:03 -0800 (Sun, 31 Jan 2016) Log Message: ----------- webkit2-gtk-devel: New port to track development builds of webkit2 Added Paths: ----------- trunk/dports/www/webkit2-gtk-devel/ trunk/dports/www/webkit2-gtk-devel/Portfile trunk/dports/www/webkit2-gtk-devel/files/ trunk/dports/www/webkit2-gtk-devel/files/PR-153138.patch Added: trunk/dports/www/webkit2-gtk-devel/Portfile =================================================================== --- trunk/dports/www/webkit2-gtk-devel/Portfile (rev 0) +++ trunk/dports/www/webkit2-gtk-devel/Portfile 2016-02-01 05:26:03 UTC (rev 145324) @@ -0,0 +1,206 @@ +# -*- 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 +# $Id$ + +# We have an umbrella radar tracking webkit-gtk issues on OS X. Please relate +# any future issues with this tracker. +# http://bugs.webkit.org/show_bug.cgi?id=126492 + +PortSystem 1.0 +PortGroup compiler_blacklist_versions 1.0 +PortGroup cmake 1.0 + +name webkit2-gtk-devel +conflicts webkit2-gtk +version 2.11.4 +description Apple's WebKit2 HTML rendering library for GTK+3 (with optional support for GTK+2 plugins) +long_description ${description} +maintainers jeremyhu devans +categories www gnome +platforms darwin freebsd +license LGPL-2+ BSD +homepage http://webkitgtk.org/ + +fetch.type svn +svn.revision 195949 +svn.url https://svn.webkit.org/repository/webkit/trunk +worksrcdir trunk + +# don't overwrite build dependencies provided by cmake portgroup +depends_build-append \ + port:gperf \ + port:gtk-doc \ + port:pkgconfig \ + port:python27 \ + port:py27-simplejson + +depends_lib port:atk \ + port:at-spi2-atk \ + port:bison \ + path:lib/pkgconfig/cairo.pc:cairo \ + port:flex \ + port:fontconfig \ + port:freetype \ + port:enchant \ + port:geoclue2 \ + path:lib/pkgconfig/glib-2.0.pc:glib2 \ + port:gobject-introspection \ + port:gstreamer1 \ + port:gstreamer1-gst-plugins-bad \ + port:gstreamer1-gst-plugins-base \ + port:gstreamer1-gst-plugins-good \ + port:gtk3 \ + port:harfbuzz-icu \ + port:hyphen \ + port:icu \ + port:libnotify \ + port:libpng \ + port:libsecret \ + port:libsoup \ + port:libxml2 \ + port:libxslt \ + port:sqlite3 \ + port:webp \ + port:zlib + +variant llvm37 conflicts llvm38 llvm39 description {Use llvm-3.7} { + depends_lib-append port:llvm-3.7 + configure.args-append -DLLVM_CONFIG_EXE=${prefix}/bin/llvm-config-mp-3.7 +} +variant llvm38 conflicts llvm37 llvm39 description {Use llvm-3.8} { + depends_lib-append port:llvm-3.8 + configure.args-append -DLLVM_CONFIG_EXE=${prefix}/bin/llvm-config-mp-3.8 +} +variant llvm39 conflicts llvm37 llvm38 description {Use llvm-3.9} { + depends_lib-append port:llvm-3.9 + configure.args-append -DLLVM_CONFIG_EXE=${prefix}/bin/llvm-config-mp-3.9 +} +if {![variant_isset llvm37] && ![variant_isset llvm38] && ![variant_isset llvm39]} { + default_variants-append +llvm37 +} + +# PR-153138.patch: https://bugs.webkit.org/show_bug.cgi?id=153138 +patchfiles-append \ + PR-153138.patch + +# Build out-of-tree +configure.post_args ../${worksrcdir} +default configure.dir {${workpath}/build} +default build.dir {${workpath}/build} + +configure.args-append \ + -DPORT=GTK \ + -DUSE_SYSTEM_MALLOC=ON \ + -DENABLE_MINIBROWSER=OFF \ + -DENABLE_PLUGIN_PROCESS_GTK2=OFF \ + -DENABLE_VIDEO=ON + +# https://bugs.webkit.org/show_bug.cgi?id=152650 +configure.args-append -DENABLE_INTROSPECTION=OFF + +# <rdar://problem/24031030> +configure.optflags -Os + +pre-configure { + if {![variant_isset quartz] && ![variant_isset x11]} { + error "Either +x11 or +quartz is required" + } +} + +post-configure { + # https://bugs.webkit.org/show_bug.cgi?id=153176 + reinplace {s|\.\./\.\./lib/libWTFGTK\.a||} \ + ${build.dir}/Source/WebKit2/CMakeFiles/WebKit2.dir/link.txt + reinplace {s|\.\./\.\./lib/libbmalloc\.a||} \ + ${build.dir}/Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt + reinplace {s|[\./]*\.\./lib/lib[^\.]*\.a||g} \ + ${build.dir}/Source/JavaScriptCore/CMakeFiles/LLIntOffsetsExtractor.dir/link.txt \ + ${build.dir}/Source/JavaScriptCore/shell/CMakeFiles/jsc.dir/link.txt \ + ${build.dir}/Source/JavaScriptCore/shell/CMakeFiles/testb3.dir/link.txt \ + ${build.dir}/Source/WebKit2/CMakeFiles/DatabaseProcess.dir/link.txt \ + ${build.dir}/Source/WebKit2/CMakeFiles/NetworkProcess.dir/link.txt \ + ${build.dir}/Source/WebKit2/CMakeFiles/webkit2gtkinjectedbundle.dir/link.txt \ + ${build.dir}/Source/WebKit2/CMakeFiles/WebProcess.dir/link.txt + if {[variant_isset x11]} { + # ENABLE_PLUGIN_PROCESS is only enabled with +x11 + reinplace {s|[\./]*\.\./lib/lib[^\.]*\.a||g} \ + ${build.dir}/Source/WebKit2/CMakeFiles/PluginProcess.dir/link.txt + + if {[variant_isset gtk2]} { + reinplace {s|\.\./\.\./lib/libWTFGTK\.a||} \ + ${build.dir}/Source/WebKit2/CMakeFiles/WebKitPluginProcess2.dir/link.txt + reinplace {s|-Wl,-all_load||g} \ + ${build.dir}/Source/WebKit2/CMakeFiles/WebKitPluginProcess2.dir/link.txt + } + } + if {[variant_isset minibrowser]} { + reinplace {s|[\./]*\.\./lib/lib[^\.]*\.a||g} \ + ${build.dir}/Tools/MiniBrowser/gtk/CMakeFiles/MiniBrowser.dir/link.txt + } + + # https://bugs.webkit.org/show_bug.cgi?id=153192 + reinplace {s|\.\./\.\./lib/libWTFGTK\.a|-Wl,-all_load ../../lib/libWTFGTK.a|} \ + ${build.dir}/Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt +} + +platform darwin { + pre-configure { + if {${configure.cxx_stdlib} eq "libstdc++"} { + ui_error "${subport} is not supported for this installation of MacPorts. It requires libc++ be selected as your C++ runtime." + error "unsupported configuration" + } + } +} + +# configure checks that we're clang 3.2, gcc 4.7, or better +compiler.blacklist-append gcc-3.3 gcc-4.0 apple-gcc-4.0 gcc-4.2 apple-gcc-4.2 llvm-gcc-4.2 macports-llvm-gcc-4.2 +compiler.blacklist-append macports-gcc-4.3 macports-gcc-4.4 macports-gcc-4.5 macports-gcc-4.6 +compiler.blacklist-append {clang < 425} + +# https://trac.macports.org/ticket/41560#comment:2 +configure.cflags-append -ftemplate-depth=256 +configure.cxxflags-append -ftemplate-depth=256 + +variant quartz conflicts x11 gtk2 { + configure.args-append \ + -DENABLE_QUARTZ_TARGET=ON \ + -DENABLE_X11_TARGET=OFF \ + -DENABLE_OPENGL=OFF +} + +variant x11 conflicts quartz { + configure.args-append \ + -DENABLE_QUARTZ_TARGET=OFF \ + -DENABLE_X11_TARGET=ON \ + -DENABLE_OPENGL=ON + + depends_lib-append \ + port:mesa \ + port:xorg-libXt +} + +variant minibrowser description {Build and install MiniBrowser (for testing)} { + configure.args-delete -DENABLE_MINIBROWSER=OFF + configure.args-append -DENABLE_MINIBROWSER=ON +} + +variant gtk2 conflicts quartz description {Enable support for GTK+2 plugins} { + depends_lib-append port:gtk2 + configure.args-delete -DENABLE_PLUGIN_PROCESS_GTK2=OFF + configure.args-append -DENABLE_PLUGIN_PROCESS_GTK2=ON +} + +if {![variant_isset quartz]} { + default_variants-append +x11 +gtk2 +} + +post-destroot { + # https://bugs.webkit.org/show_bug.cgi?id=152651 + xinstall -m 755 ${build.dir}/bin/LLIntOffsetsExtractor ${destroot}${prefix}/libexec/webkit2gtk-4.0 + xinstall -m 755 ${build.dir}/bin/WebKitWebProcess ${destroot}${prefix}/libexec/webkit2gtk-4.0 + xinstall -m 755 ${build.dir}/bin/WebKitNetworkProcess ${destroot}${prefix}/libexec/webkit2gtk-4.0 + xinstall -m 755 ${build.dir}/lib/libwebkit2gtk-4.0.37.13.1.dylib ${destroot}${prefix}/lib + ln -s libwebkit2gtk-4.0.37.13.1.dylib ${destroot}${prefix}/lib/libwebkit2gtk-4.0.37.dylib + ln -s libwebkit2gtk-4.0.37.13.1.dylib ${destroot}${prefix}/lib/libwebkit2gtk-4.0.dylib +} + +livecheck.type none Property changes on: trunk/dports/www/webkit2-gtk-devel/Portfile ___________________________________________________________________ Added: svn:keywords + Id Added: svn:eol-style + native Added: trunk/dports/www/webkit2-gtk-devel/files/PR-153138.patch =================================================================== --- trunk/dports/www/webkit2-gtk-devel/files/PR-153138.patch (rev 0) +++ trunk/dports/www/webkit2-gtk-devel/files/PR-153138.patch 2016-02-01 05:26:03 UTC (rev 145324) @@ -0,0 +1,26 @@ +From 07886d9eacb7587dd52a9bcae10c1fc8ab56a910 Mon Sep 17 00:00:00 2001 +From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> +Date: Fri, 15 Jan 2016 11:53:07 -0800 +Subject: [PATCH] https://bugs.webkit.org/show_bug.cgi?id=153138 + +Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> +--- + Source/JavaScriptCore/bytecode/StructureStubInfo.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Source/JavaScriptCore/bytecode/StructureStubInfo.cpp b/Source/JavaScriptCore/bytecode/StructureStubInfo.cpp +index 1e4b4f5..9b27aed 100644 +--- Source/JavaScriptCore/bytecode/StructureStubInfo.cpp ++++ Source/JavaScriptCore/bytecode/StructureStubInfo.cpp +@@ -26,6 +26,8 @@ + #include "config.h" + #include "StructureStubInfo.h" + ++#include "JSCellInlines.h" ++ + #include "JSObject.h" + #include "PolymorphicAccess.h" + #include "Repatch.h" +-- +2.7.0 +