As part of the
1.4.3 release of GStreamer I helped the team by making the OS X and iOS builds. The process is easy but has a long sequence of steps. So it is worth sharing it here just in case you might want to run your own GStreamer in any of these platforms.
1. First, you need to download CMake
http://www.cmake.org/files/v3.0/cmake-3.0.2-Darwin-universal.dmg
2. Add CMake to your PATH
$ export PATH=$PATH:/Applications/CMake.app/Contents/bin
3. Prepare the destination (as root)
$ mkdir /Library/Frameworks/GStreamer.framework
$ chown user:user /Library/Frameworks/GStreamer.framework
4. Check out the GStreamer release code
$ git clone git://anongit.freedesktop.org/gstreamer/sdk/cerbero
$ cd cerbero
$ git checkout -b 1.4 origin/1.4
5. Pin the commits to build
edit config/osx-universal.cbc to have the following:
prefix='/Library/Frameworks/GStreamer.framework/Versions/1.0'
recipes_commits = {
'gstreamer-1.0' : '1.4.3',
'gstreamer-1.0-static' : '1.4.3',
'gst-plugins-base-1.0' : '1.4.3',
'gst-plugins-base-1.0-static' : '1.4.3',
'gst-plugins-good-1.0' : '1.4.3',
'gst-plugins-good-1.0-static' : '1.4.3',
'gst-plugins-bad-1.0' : '1.4.3',
'gst-plugins-bad-1.0-static' : '1.4.3',
'gst-plugins-ugly-1.0' : '1.4.3',
'gst-plugins-ugly-1.0-static' : '1.4.3',
'gst-libav-1.0' : '1.4.3',
'gst-libav-1.0-static' : '1.4.3',
'gnonlin-1.0' : '1.2.1',
'gnonlin-1.0-static' : '1.2.1',
'gst-editing-services-1.0' : '1.2.1',
'gst-rtsp-server-1.0' : '1.4.3',
}
6. Run the bootstrap
$ ./cerbero-uninstalled bootstrap
$ echo "allow_parallel_build = True" > ~/.cerbero/cerbero.cbc
7. Run the build for OS X. Patience, it needs to build ~80 modules.
$ ./cerbero-uninstalled -c config/osx-universal.cbc package gstreamer-1.0
8. Run the build for iOS. Some extra steps are necessary for this build.
$ ./cerbero-uninstalled -c config/cross-ios-universal.cbc buildone gettext libiconv
$ ./cerbero-uninstalled -c config/cross-ios-universal.cbc package gstreamer-1.0
$ ./cerbero-uninstalled -c config/cross-ios-universal.cbc buildone gstreamer-ios-templates
edit: The last step, rebuilding gettext and libiconv, is not needed anymore thanks this bug fix
http://cgit.freedesktop.org/gstreamer/cerbero/commit/?id=b6acf4aa85c1e43b445fd3a292a9109854044df1