@@ -4,8 +4,9 @@ GCD is a concurrent programming framework first shipped with Mac OS X Snow
44Leopard. This package is an open source bundling of libdispatch, the core
55user space library implementing GCD. At the time of writing, support for
66the BSD kqueue API, and specifically extensions introduced in Mac OS X Snow
7- Leopard and FreeBSD 9-CURRENT, are required to use libdispatch. Other
8- systems are currently unsupported.
7+ Leopard and FreeBSD 9-CURRENT, are required to use libdispatch. Support
8+ for Linux is a work in progress (see Linux notes below). Other systems are
9+ currently unsupported.
910
1011 Configuring and installing libdispatch
1112
@@ -99,3 +100,22 @@ clang and blocks support:
99100 sh autogen.sh
100101 ./configure CC=clang --with-blocks-runtime=/usr/local/lib
101102 make check
103+
104+ Instructions for building on Linux. Initial focus is on ubuntu 15.04.
105+ Prepare your system
106+ 1. Install compiler, autotools
107+ sudo apt-get install clang
108+ sudo apt-get install autoconf libtool pkg-config
109+ 2. Install dtrace (to generate provider.h)
110+ sudo apt-get install systemtap-sdt-dev
111+ 3. Install libdispatch pre-reqs
112+ sudo apt-get install libblocksruntime-dev libkqueue-dev libpthread-workqueue-dev
113+
114+ Build:
115+ sh autogen.sh
116+ ./configure
117+ cd src && dtrace -h -s provider.d
118+ make
119+
120+ Note: the build currently fails building tests, but libdispatch.so should
121+ build successfully.
0 commit comments