'''WARNING''': This experiment dates back from 2010, since then the project moved to WebKit2 and most of the work required to have GStreamer running on the Mac port would need to be done again. ---- = Build GStreamer and WebKit on Mac OS = This page describes how to enable GStreamer support on the mac port of WebKit. It is still experimental and requires patches in WebKit. The patches are currently in a [http://git.igalia.com/cgi-bin/gitweb.cgi?p=webkit.git;a=shortlog;h=refs/heads/gst-mac git branch] == Requirements == Git and JHBuild: {{{ git clone git://git.gnome.org/jhbuild make -f Makefile.plain install PATH=$PATH:~/.local/bin }}} == GStreamer build == My JHBuild moduleset only supports git version of GStreamer at the moment. {{{ git clone git://github.com/philn/jhbuild.git ~/gst-build cd ~/gst-build git checkout --track -b mac origin/mac jhbuild -f jhbuildrc bootstrap --ignore-system jhbuild -f jhbuildrc build }}} You might see a build failure for guile. Just skip that module, it is not needed for the WebKit or GStreamer build. == WebKit repo setup == It's possible to clone directly from git.igalia.com but it will be slower, there's more bandwidth at git.webkit.org :) {{{ cd ~/gst-build/build git clone git://git.webkit.org/WebKit.git cd WebKit git remote add igalia http://git.igalia.com/webkit.git git fetch igalia git checkout --track -b gst-mac igalia/gst-mac mkdir Frameworks }}} == GStreamer.framework build == The GStreamer.framework includes GLib as well. I first tried to bundle it separately but without much success. It would be nice to make that happen though (I think). {{{ cd git clone git://github.com/philn/gtk-osx.git cd ~/gtk-osx git checkout --track -b gst origin/gst cd ~/gtk-osx/framework ./create-GStreamer-framework.sh ~/gst-build/install/ ~/gst-build/build/WebKit/Frameworks }}} == WebKit build == This can probably be done with the XCode UI: 1. Set the GLIB_ENABLED build setting of JavaScriptCore/Configurations/Optional.xcconfig to YES 1. Set the GSTREAMER_ENABLED build setting to YES in the following files: * WebCore/Configurations/Optional.xcconfig * Webkit/mac/Configurations/Optional.xcconfig 1. Then build the thing and run Safari: {{{ cd ~/gst-build/build/WebKit Tools/Scripts/build-webkit Tools/Scripts/run-safari }}}