[packages/io] - updated to 20110912 (last tagged release on github) - added link patch (fix io core libraries link
qboosh
qboosh at pld-linux.org
Sun Nov 10 14:56:32 CET 2013
commit 55c8e619c3ed0c502bf93229ac6dffd542a1fd6e
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Nov 10 14:56:57 2013 +0100
- updated to 20110912 (last tagged release on github)
- added link patch (fix io core libraries linking)
- added memcached patch (updates for current libmemcached)
- added system-libsgml patch (use system libsgml)
- added theora patch (fix Theora addon linking)
- added addons patch (enable some disabled addons that build fine currently)
- added one patch (fix build with ode, specifically 0.12)
- added python patch (fix linking with python 2.x library when python 3.x is present too)
io-addons.patch | 40 ++++
io-link.patch | 21 ++
io-memcached.patch | 30 +++
io-ode.patch | 43 ++++
io-python.patch | 10 +
io-system-libsgml.patch | 30 +++
io-theora.patch | 11 +
io.spec | 595 +++++++++++++++++++++++++++++++++++++++---------
8 files changed, 676 insertions(+), 104 deletions(-)
---
diff --git a/io.spec b/io.spec
index ee11abd..fa1dd8a 100644
--- a/io.spec
+++ b/io.spec
@@ -1,40 +1,69 @@
+#
+# Conditional build
+%bcond_with glfw # GLFW addon (not ready for glfw 3)
+#
Summary: Io programming language
Summary(pl.UTF-8): Język programowania Io
Name: io
-Version: 20061207
+Version: 20110912
Release: 1
License: BSD
Group: Development/Languages
-Source0: http://www.sigusr1.org/~steve/Io-2006-12-07.tar.gz
-# Source0-md5: 077588a5177f3ed65744dc1db7325370
-URL: http://www.iolanguage.com/
+Source0: https://github.com/stevedekorte/io/archive/2011.09.12/%{name}-%{version}.tar.gz
+# Source0-md5: 880b2d4b41cdfbeb7e8e3fe35e475739
+Patch0: %{name}-link.patch
+Patch1: %{name}-memcached.patch
+Patch2: %{name}-system-libsgml.patch
+Patch3: %{name}-theora.patch
+Patch4: %{name}-addons.patch
+Patch5: %{name}-ode.patch
+Patch6: %{name}-python.patch
+URL: http://iolanguage.org/
BuildRequires: OpenGL-GLU-devel
BuildRequires: OpenGL-glut-devel
-BuildRequires: ffmpeg-devel
-BuildRequires: freetype-devel
-BuildRequires: glfw-devel
+BuildRequires: cairo-devel
+#BuildRequires: ffmpeg-devel
+BuildRequires: freetype-devel >= 2
+%{?with_glfw:BuildRequires: glfw-devel < 3}
BuildRequires: gmp-devel
-BuildRequires: gnustep-gui-devel >= 0.11.0
+#BuildRequires: gnustep-gui-devel >= 0.11.0
BuildRequires: libdbi-devel
+BuildRequires: libedit-devel
BuildRequires: libevent-devel
+BuildRequires: libffi-devel
BuildRequires: libjpeg-devel
+BuildRequires: libmemcached-devel
+BuildRequires: libogg-devel
BuildRequires: libpng-devel
BuildRequires: libsamplerate-devel
-BuildRequires: libsgml-devel
+BuildRequires: libsgml-devel >= 1.1.4
BuildRequires: libsndfile-devel
+BuildRequires: libtheora-devel
BuildRequires: libtiff-devel
-BuildRequires: libxml2-devel
+BuildRequires: libuuid-devel
+BuildRequires: libvorbis-devel
+BuildRequires: libxml2-devel >= 2
+BuildRequires: loudmouth-devel
+BuildRequires: lzo-devel
+BuildRequires: mysql-devel
+BuildRequires: ncurses-devel >= 5.0
+BuildRequires: ode-devel
+BuildRequires: openssl-devel
BuildRequires: pcre-devel
#BuildRequires: portaudio-devel >= 18 < 19
BuildRequires: postgresql-devel
BuildRequires: python-devel >= 1:2.5
+BuildRequires: qdbm-devel
+BuildRequires: readline-devel
BuildRequires: sed >= 4.0
-BuildRequires: soundtouch-devel >= 1.3.0
-BuildRequires: sqlite-devel >= 2.0
+#BuildRequires: soundtouch-devel >= 1.3.0
+#BuildRequires: sqlite-devel >= 2.0
BuildRequires: sqlite3-devel >= 3.0
-BuildRequires: ncurses-devel >= 5.0
BuildRequires: taglib-devel
+BuildRequires: tokyocabinet-devel
+BuildRequires: yajl-devel
BuildRequires: zlib-devel
+Obsoletes: io-static
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
@@ -43,306 +72,664 @@ Io programming language.
%description -l pl.UTF-8
Język programowania Io.
-%package static
-Summary: Static io library
-Summary(pl.UTF-8): Statyczna biblioteka języka io
-Group: Development/Libraries
-
-%description static
-Static io library.
-
-%description static -l pl.UTF-8
-Statyczna biblioteka języka io.
-
%prep
-%setup -q -n Io-2006-12-07
-
-sed -i -e 's,"-Os -g,"%{rpmcflags},' build/Project.io
-sed -i -e 's,ncurses\.h,ncurses/ncurses.h,' addons/Curses/build.io addons/Curses/source/IoCurses.c
-# disable, not ported to v19 yet(?)
-sed -i -e 's,portaudio.h,portaudio18.h,' addons/PortAudio/build.io
-# version check is PLD-incompatible, enforce current version
-sed -i -e 's/version = "2\.4"/version = "2.5"/' addons/Python/build.io
+%setup -q -n io-2011.09.12
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
%build
-%{__make} \
- INSTALL_PREFIX=%{_prefix} \
- CC="%{__cc}" \
- OPTIMIZE="%{rpmcflags}"
+install -d build
+cd build
+%cmake .. \
+ -DCURSES_INCLUDE_PATH=/usr/include/ncurses
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
- INSTALL_PREFIX=$RPM_BUILD_ROOT%{_prefix}
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
# nothing interesting
-rm -f $RPM_BUILD_ROOT%{_bindir}/io_static $RPM_BUILD_ROOT%{_libdir}/io/addons/*/{Makefile,build.io}
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/io_static
# to examplesdir?
-rm -rf $RPM_BUILD_ROOT%{_libdir}/io/addons/*/{samples,tests}
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/io/addons/*/{samples,tests}
# shouldn't be needed(?)
-rm -rf $RPM_BUILD_ROOT%{_libdir}/io/addons/*/{_build/{headers,lib,objs},source}
-# darwin-only
-rm -rf $RPM_BUILD_ROOT%{_libdir}/io/addons/AppleExtras
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/io/addons/*/CMakeLists.txt
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/io/addons/*/{_build/{headers,lib,objs},source}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/io/addons/TokyoCabinet/test.db
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/io/addons/Yajl/test.io
# kill empty dirs
-rmdir --ignore-fail-on-non-empty $RPM_BUILD_ROOT%{_libdir}/io/addons/*/{io,resources}
+rmdir --ignore-fail-on-non-empty $RPM_BUILD_ROOT%{_libdir}/io/addons/*/_build/binaries
# XXX: are addons/*/{depends,frameworks,protos} needed?
-mv $RPM_BUILD_ROOT%{_libdir}/io/addons/OpenGL/docs OpenGL-docs
+# addon docs
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/io/addons/CFFI/README docs/README.CFFI
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/io/addons/HttpClient/README docs/README.HttpClient
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/io/addons/HttpClient/TODO docs/TODO.HttpClient
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/io/addons/Volcano/README docs/README.Volcano
%clean
rm -rf $RPM_BUILD_ROOT
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
-%doc docs/guide.pdf docs/{guide.html,guide_files} OpenGL-docs
+%doc README.md docs/*
%attr(755,root,root) %{_bindir}/io
+%attr(755,root,root) %{_libdir}/libbasekit.so
+%attr(755,root,root) %{_libdir}/libcoroutine.so
+%attr(755,root,root) %{_libdir}/libgarbagecollector.so
%attr(755,root,root) %{_libdir}/libiovmall.so
%dir %{_libdir}/io
%dir %{_libdir}/io/addons
-# TODO: split
-# R: ffmpeg
+
+# TODO: split (deps based?)
+
+# R: ffmpeg [disabled as broken in addons/CMakeLists.txt]
+%if %{with ffmpeg}
%dir %{_libdir}/io/addons/AVCodec
%dir %{_libdir}/io/addons/AVCodec/_build
%dir %{_libdir}/io/addons/AVCodec/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/AVCodec/_build/dll/libIoAVCodec.so
%{_libdir}/io/addons/AVCodec/io
-#
+%endif
+
%dir %{_libdir}/io/addons/AsyncRequest
%dir %{_libdir}/io/addons/AsyncRequest/_build
%dir %{_libdir}/io/addons/AsyncRequest/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/AsyncRequest/_build/dll/libIoAsyncRequest.so
%{_libdir}/io/addons/AsyncRequest/io
+%{_libdir}/io/addons/AsyncRequest/depends
+%{_libdir}/io/addons/AsyncRequest/protos
+
# R: gmp
%dir %{_libdir}/io/addons/BigNum
%dir %{_libdir}/io/addons/BigNum/_build
%dir %{_libdir}/io/addons/BigNum/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/BigNum/_build/dll/libIoBigNum.so
%{_libdir}/io/addons/BigNum/io
-#
+%{_libdir}/io/addons/BigNum/depends
+%{_libdir}/io/addons/BigNum/protos
+
+%dir %{_libdir}/io/addons/Bitly
+%dir %{_libdir}/io/addons/Bitly/_build
+%dir %{_libdir}/io/addons/Bitly/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Bitly/_build/dll/libIoBitly.so
+%{_libdir}/io/addons/Bitly/io
+%{_libdir}/io/addons/Bitly/depends
+%{_libdir}/io/addons/Bitly/protos
+
%dir %{_libdir}/io/addons/Blowfish
%dir %{_libdir}/io/addons/Blowfish/_build
%dir %{_libdir}/io/addons/Blowfish/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Blowfish/_build/dll/libIoBlowfish.so
%{_libdir}/io/addons/Blowfish/io
-#
+%{_libdir}/io/addons/Blowfish/depends
+%{_libdir}/io/addons/Blowfish/protos
+
+%dir %{_libdir}/io/addons/Box
+%dir %{_libdir}/io/addons/Box/_build
+%dir %{_libdir}/io/addons/Box/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Box/_build/dll/libIoBox.so
+%{_libdir}/io/addons/Box/io
+%{_libdir}/io/addons/Box/depends
+%{_libdir}/io/addons/Box/frameworks
+%{_libdir}/io/addons/Box/protos
+
+# R: libffi
+%dir %{_libdir}/io/addons/CFFI
+%dir %{_libdir}/io/addons/CFFI/_build
+%dir %{_libdir}/io/addons/CFFI/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/CFFI/_build/dll/libIoCFFI.so
+%{_libdir}/io/addons/CFFI/io
+%{_libdir}/io/addons/CFFI/depends
+%{_libdir}/io/addons/CFFI/protos
+
%dir %{_libdir}/io/addons/CGI
%dir %{_libdir}/io/addons/CGI/_build
%dir %{_libdir}/io/addons/CGI/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/CGI/_build/dll/libIoCGI.so
%{_libdir}/io/addons/CGI/io
-#
+%{_libdir}/io/addons/CGI/depends
+%{_libdir}/io/addons/CGI/protos
+
+# R: cairo
+%dir %{_libdir}/io/addons/Cairo
+%dir %{_libdir}/io/addons/Cairo/_build
+%dir %{_libdir}/io/addons/Cairo/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Cairo/_build/dll/libIoCairo.so
+%{_libdir}/io/addons/Cairo/io
+%{_libdir}/io/addons/Cairo/depends
+%{_libdir}/io/addons/Cairo/protos
+
+# TODO: Clutter (nothing is built???)
+# R: clutter atk glib2 pango cairo
+
%dir %{_libdir}/io/addons/ContinuedFraction
%dir %{_libdir}/io/addons/ContinuedFraction/_build
%dir %{_libdir}/io/addons/ContinuedFraction/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/ContinuedFraction/_build/dll/libIoContinuedFraction.so
%{_libdir}/io/addons/ContinuedFraction/io
-#
-%dir %{_libdir}/io/addons/Contracts
-%dir %{_libdir}/io/addons/Contracts/_build
-%dir %{_libdir}/io/addons/Contracts/_build/dll
-%attr(755,root,root) %{_libdir}/io/addons/Contracts/_build/dll/libIoContracts.so
-%{_libdir}/io/addons/Contracts/io
+%{_libdir}/io/addons/ContinuedFraction/depends
+%{_libdir}/io/addons/ContinuedFraction/protos
+
# R: ncurses
%dir %{_libdir}/io/addons/Curses
%dir %{_libdir}/io/addons/Curses/_build
%dir %{_libdir}/io/addons/Curses/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Curses/_build/dll/libIoCurses.so
%{_libdir}/io/addons/Curses/io
+%{_libdir}/io/addons/Curses/depends
+%{_libdir}/io/addons/Curses/protos
+
# R: libdbi
%dir %{_libdir}/io/addons/DBI
%dir %{_libdir}/io/addons/DBI/_build
%dir %{_libdir}/io/addons/DBI/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/DBI/_build/dll/libIoDBI.so
%{_libdir}/io/addons/DBI/io
-#
+%{_libdir}/io/addons/DBI/depends
+%{_libdir}/io/addons/DBI/protos
+
+# R(addons): Socket
+%dir %{_libdir}/io/addons/DistributedObjects
+%dir %{_libdir}/io/addons/DistributedObjects/_build
+%dir %{_libdir}/io/addons/DistributedObjects/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/DistributedObjects/_build/dll/libIoDistributedObjects.so
+%{_libdir}/io/addons/DistributedObjects/io
+%{_libdir}/io/addons/DistributedObjects/depends
+%{_libdir}/io/addons/DistributedObjects/protos
+
+# R: libedit
+%dir %{_libdir}/io/addons/EditLine
+%dir %{_libdir}/io/addons/EditLine/_build
+%dir %{_libdir}/io/addons/EditLine/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/EditLine/_build/dll/libIoEditLine.so
+%{_libdir}/io/addons/EditLine/depends
+%{_libdir}/io/addons/EditLine/protos
+
+%dir %{_libdir}/io/addons/Facebook
+%dir %{_libdir}/io/addons/Facebook/_build
+%dir %{_libdir}/io/addons/Facebook/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Facebook/_build/dll/libIoFacebook.so
+%{_libdir}/io/addons/Facebook/io
+%{_libdir}/io/addons/Facebook/depends
+%{_libdir}/io/addons/Facebook/protos
+
+# R(addons): OpenGL
%dir %{_libdir}/io/addons/Flux
%dir %{_libdir}/io/addons/Flux/_build
%dir %{_libdir}/io/addons/Flux/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Flux/_build/dll/libIoFlux.so
%{_libdir}/io/addons/Flux/io
-# XXX: use system fonts (Free UCS (http://savannah.nongnu.org/projects/freefont/), Vera)
+# XXX: use system fonts:
+# - Free UCS (http://savannah.nongnu.org/projects/freefont/)
+# - ProFont (http://www.tobiasjung.net/profont/ ?)
+# - Adobe T207
+# - Vera
%{_libdir}/io/addons/Flux/resources
-#
+%{_libdir}/io/addons/Flux/depends
+%{_libdir}/io/addons/Flux/protos
+
%dir %{_libdir}/io/addons/Fnmatch
%dir %{_libdir}/io/addons/Fnmatch/_build
%dir %{_libdir}/io/addons/Fnmatch/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Fnmatch/_build/dll/libIoFnmatch.so
+%{_libdir}/io/addons/Fnmatch/depends
+
# R: OpenGL freetype
%dir %{_libdir}/io/addons/Font
%dir %{_libdir}/io/addons/Font/_build
%dir %{_libdir}/io/addons/Font/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Font/_build/dll/libIoFont.so
-# R: glfw
+%{_libdir}/io/addons/Font/depends
+%{_libdir}/io/addons/Font/protos
+
+# R: glfw OpenGL OpenGL-GLU OpenGL-glut; addons: OpenGL
+%if %{with glfw}
%dir %{_libdir}/io/addons/GLFW
%dir %{_libdir}/io/addons/GLFW/_build
%dir %{_libdir}/io/addons/GLFW/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/GLFW/_build/dll/libIoGLFW.so
-# R: OpenGL-GLU libjpeg libpng libtiff
+%endif
+
+# R(addons): Socket SGML
+%dir %{_libdir}/io/addons/GoogleSearch
+%dir %{_libdir}/io/addons/GoogleSearch/_build
+%dir %{_libdir}/io/addons/GoogleSearch/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/GoogleSearch/_build/dll/libIoGoogleSearch.so
+%{_libdir}/io/addons/GoogleSearch/io
+%{_libdir}/io/addons/GoogleSearch/depends
+%{_libdir}/io/addons/GoogleSearch/protos
+
+%dir %{_libdir}/io/addons/HttpClient
+%dir %{_libdir}/io/addons/HttpClient/_build
+%dir %{_libdir}/io/addons/HttpClient/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/HttpClient/_build/dll/libIoHttpClient.so
+%{_libdir}/io/addons/HttpClient/io
+%{_libdir}/io/addons/HttpClient/depends
+%{_libdir}/io/addons/HttpClient/protos
+
+# R: libjpeg libpng libtiff
%dir %{_libdir}/io/addons/Image
%dir %{_libdir}/io/addons/Image/_build
%dir %{_libdir}/io/addons/Image/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Image/_build/dll/libIoImage.so
-#
+%{_libdir}/io/addons/Image/io
+%{_libdir}/io/addons/Image/depends
+%{_libdir}/io/addons/Image/protos
+
+# R: lzo
%dir %{_libdir}/io/addons/LZO
%dir %{_libdir}/io/addons/LZO/_build
%dir %{_libdir}/io/addons/LZO/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/LZO/_build/dll/libIoLZO.so
%{_libdir}/io/addons/LZO/io
+%{_libdir}/io/addons/LZO/depends
+%{_libdir}/io/addons/LZO/protos
+
# R: libsndfile
%dir %{_libdir}/io/addons/LibSndFile
%dir %{_libdir}/io/addons/LibSndFile/_build
%dir %{_libdir}/io/addons/LibSndFile/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/LibSndFile/_build/dll/libIoLibSndFile.so
+%{_libdir}/io/addons/LibSndFile/io
+%{_libdir}/io/addons/LibSndFile/depends
+%{_libdir}/io/addons/LibSndFile/protos
+
# R: libxml2
%dir %{_libdir}/io/addons/Libxml2
%dir %{_libdir}/io/addons/Libxml2/_build
%dir %{_libdir}/io/addons/Libxml2/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Libxml2/_build/dll/libIoLibxml2.so
%{_libdir}/io/addons/Libxml2/io
-#
+%{_libdir}/io/addons/Libxml2/depends
+%{_libdir}/io/addons/Libxml2/protos
+
+%dir %{_libdir}/io/addons/Loki
+%dir %{_libdir}/io/addons/Loki/_build
+%dir %{_libdir}/io/addons/Loki/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Loki/_build/dll/libIoLoki.so
+%{_libdir}/io/addons/Loki/io
+%{_libdir}/io/addons/Loki/depends
+%{_libdir}/io/addons/Loki/protos
+
+# R: loudmouth; addons: SGML
+%dir %{_libdir}/io/addons/Loudmouth
+%dir %{_libdir}/io/addons/Loudmouth/_build
+%dir %{_libdir}/io/addons/Loudmouth/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Loudmouth/_build/dll/libIoLoudmouth.so
+%{_libdir}/io/addons/Loudmouth/io
+%{_libdir}/io/addons/Loudmouth/depends
+%{_libdir}/io/addons/Loudmouth/protos
+
%dir %{_libdir}/io/addons/MD5
%dir %{_libdir}/io/addons/MD5/_build
%dir %{_libdir}/io/addons/MD5/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/MD5/_build/dll/libIoMD5.so
%{_libdir}/io/addons/MD5/io
-# R: gnustep-gui
+%{_libdir}/io/addons/MD5/depends
+%{_libdir}/io/addons/MD5/protos
+
+# R: libmemcached
+%dir %{_libdir}/io/addons/Memcached
+%dir %{_libdir}/io/addons/Memcached/_build
+%dir %{_libdir}/io/addons/Memcached/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Memcached/_build/dll/libIoMemcached.so
+%{_libdir}/io/addons/Memcached/io
+%{_libdir}/io/addons/Memcached/depends
+%{_libdir}/io/addons/Memcached/protos
+
+# R: mysql-libs
+%dir %{_libdir}/io/addons/MySQL
+%dir %{_libdir}/io/addons/MySQL/_build
+%dir %{_libdir}/io/addons/MySQL/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/MySQL/_build/dll/libIoMySQL.so
+%{_libdir}/io/addons/MySQL/io
+%{_libdir}/io/addons/MySQL/depends
+%{_libdir}/io/addons/MySQL/protos
+
+%dir %{_libdir}/io/addons/NotificationCenter
+%dir %{_libdir}/io/addons/NotificationCenter/_build
+%dir %{_libdir}/io/addons/NotificationCenter/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/NotificationCenter/_build/dll/libIoNotificationCenter.so
+%{_libdir}/io/addons/NotificationCenter/io
+%{_libdir}/io/addons/NotificationCenter/depends
+%{_libdir}/io/addons/NotificationCenter/protos
+
+# R: OpenGL ode; addons: OpenGL
+%dir %{_libdir}/io/addons/ODE
+%dir %{_libdir}/io/addons/ODE/_build
+%dir %{_libdir}/io/addons/ODE/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/ODE/_build/dll/libIoODE.so
+%{_libdir}/io/addons/ODE/io
+%{_libdir}/io/addons/ODE/depends
+%{_libdir}/io/addons/ODE/protos
+
+# R: openssl
+%dir %{_libdir}/io/addons/Oauth
+%dir %{_libdir}/io/addons/Oauth/_build
+%dir %{_libdir}/io/addons/Oauth/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Oauth/_build/dll/libIoOauth.so
+%{_libdir}/io/addons/Oauth/io
+%{_libdir}/io/addons/Oauth/depends
+%{_libdir}/io/addons/Oauth/protos
+
+# R: gnustep-gui; addons: Box,Socket,SystemCall [Darwin-specific now, was built on Linux in 2006]
+%if 0
%dir %{_libdir}/io/addons/ObjcBridge
%dir %{_libdir}/io/addons/ObjcBridge/_build
%dir %{_libdir}/io/addons/ObjcBridge/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/ObjcBridge/_build/dll/libIoObjcBridge.so
%{_libdir}/io/addons/ObjcBridge/io
+%endif
+
+# R(addons): TokyoCabinet
+%dir %{_libdir}/io/addons/Obsidian
+%dir %{_libdir}/io/addons/Obsidian/_build
+%dir %{_libdir}/io/addons/Obsidian/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Obsidian/_build/dll/libIoObsidian.so
+%{_libdir}/io/addons/Obsidian/io
+%{_libdir}/io/addons/Obsidian/depends
+%{_libdir}/io/addons/Obsidian/protos
+
+# R: libogg
+%dir %{_libdir}/io/addons/Ogg
+%dir %{_libdir}/io/addons/Ogg/_build
+%dir %{_libdir}/io/addons/Ogg/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Ogg/_build/dll/libIoOgg.so
+%{_libdir}/io/addons/Ogg/io
+%{_libdir}/io/addons/Ogg/depends
+%{_libdir}/io/addons/Ogg/protos
+
# R: OpenGL-GLU OpenGL-glut
%dir %{_libdir}/io/addons/OpenGL
%dir %{_libdir}/io/addons/OpenGL/_build
%dir %{_libdir}/io/addons/OpenGL/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/OpenGL/_build/dll/libIoOpenGL.so
%{_libdir}/io/addons/OpenGL/io
-# R: portaudio
-#%dir %{_libdir}/io/addons/PortAudio
-#%dir %{_libdir}/io/addons/PortAudio/_build
-#%dir %{_libdir}/io/addons/PortAudio/_build/dll
-#%attr(755,root,root) %{_libdir}/io/addons/PortAudio/_build/dll/libIoPortAudio.so
-#%{_libdir}/io/addons/PortAudio/io
+%{_libdir}/io/addons/OpenGL/depends
+%{_libdir}/io/addons/OpenGL/protos
+
+# R: portaudio [disabled in addons/CMakeLists.txt, no CMakeLists.txt file]
+%if 0
+%dir %{_libdir}/io/addons/PortAudio
+%dir %{_libdir}/io/addons/PortAudio/_build
+%dir %{_libdir}/io/addons/PortAudio/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/PortAudio/_build/dll/libIoPortAudio.so
+%{_libdir}/io/addons/PortAudio/io
+%endif
+
# R: postgresql-libs
-%dir %{_libdir}/io/addons/Postgres
-%dir %{_libdir}/io/addons/Postgres/_build
-%dir %{_libdir}/io/addons/Postgres/_build/dll
-%attr(755,root,root) %{_libdir}/io/addons/Postgres/_build/dll/libIoPostgres.so
-%{_libdir}/io/addons/Postgres/io
+%dir %{_libdir}/io/addons/PostgreSQL
+%dir %{_libdir}/io/addons/PostgreSQL/_build
+%dir %{_libdir}/io/addons/PostgreSQL/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/PostgreSQL/_build/dll/libIoPostgreSQL.so
+%{_libdir}/io/addons/PostgreSQL/io
+%{_libdir}/io/addons/PostgreSQL/depends
+%{_libdir}/io/addons/PostgreSQL/protos
+
# R: python-libs
%dir %{_libdir}/io/addons/Python
%dir %{_libdir}/io/addons/Python/_build
%dir %{_libdir}/io/addons/Python/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Python/_build/dll/libIoPython.so
-#
+%{_libdir}/io/addons/Python/depends
+%{_libdir}/io/addons/Python/protos
+
+# R: qdbm
+%dir %{_libdir}/io/addons/QDBM
+%dir %{_libdir}/io/addons/QDBM/_build
+%dir %{_libdir}/io/addons/QDBM/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/QDBM/_build/dll/libIoQDBM.so
+%{_libdir}/io/addons/QDBM/io
+%{_libdir}/io/addons/QDBM/depends
+%{_libdir}/io/addons/QDBM/protos
+
%dir %{_libdir}/io/addons/Random
%dir %{_libdir}/io/addons/Random/_build
%dir %{_libdir}/io/addons/Random/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Random/_build/dll/libIoRandom.so
-#
+%{_libdir}/io/addons/Random/io
+%{_libdir}/io/addons/Random/depends
+%{_libdir}/io/addons/Random/protos
+
+%dir %{_libdir}/io/addons/Range
+%dir %{_libdir}/io/addons/Range/_build
+%dir %{_libdir}/io/addons/Range/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Range/_build/dll/libIoRange.so
+%{_libdir}/io/addons/Range/io
+%{_libdir}/io/addons/Range/depends
+%{_libdir}/io/addons/Range/protos
+
%dir %{_libdir}/io/addons/Rational
%dir %{_libdir}/io/addons/Rational/_build
%dir %{_libdir}/io/addons/Rational/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Rational/_build/dll/libIoRational.so
%{_libdir}/io/addons/Rational/io
-# R: pcre
+%{_libdir}/io/addons/Rational/depends
+%{_libdir}/io/addons/Rational/protos
+
+# R: readline
+%dir %{_libdir}/io/addons/ReadLine
+%dir %{_libdir}/io/addons/ReadLine/_build
+%dir %{_libdir}/io/addons/ReadLine/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/ReadLine/_build/dll/libIoReadLine.so
+%{_libdir}/io/addons/ReadLine/depends
+%{_libdir}/io/addons/ReadLine/protos
+
+# R: pcre; addons: Range
%dir %{_libdir}/io/addons/Regex
%dir %{_libdir}/io/addons/Regex/_build
%dir %{_libdir}/io/addons/Regex/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Regex/_build/dll/libIoRegex.so
%{_libdir}/io/addons/Regex/io
+%{_libdir}/io/addons/Regex/depends
+%{_libdir}/io/addons/Regex/protos
+
# R: libsgml
%dir %{_libdir}/io/addons/SGML
%dir %{_libdir}/io/addons/SGML/_build
%dir %{_libdir}/io/addons/SGML/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SGML/_build/dll/libIoSGML.so
%{_libdir}/io/addons/SGML/io
-#
+%{_libdir}/io/addons/SGML/depends
+%{_libdir}/io/addons/SGML/protos
+
%dir %{_libdir}/io/addons/SHA1
%dir %{_libdir}/io/addons/SHA1/_build
%dir %{_libdir}/io/addons/SHA1/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SHA1/_build/dll/libIoSHA1.so
%{_libdir}/io/addons/SHA1/io
-# R: sqlite
+%{_libdir}/io/addons/SHA1/depends
+%{_libdir}/io/addons/SHA1/protos
+
+# R: sqlite [deprecated, no CMakeLists.txt for addon]
+%if 0
%dir %{_libdir}/io/addons/SQLite
%dir %{_libdir}/io/addons/SQLite/_build
%dir %{_libdir}/io/addons/SQLite/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SQLite/_build/dll/libIoSQLite.so
%{_libdir}/io/addons/SQLite/io
+%endif
+
# R: sqlite3
%dir %{_libdir}/io/addons/SQLite3
%dir %{_libdir}/io/addons/SQLite3/_build
%dir %{_libdir}/io/addons/SQLite3/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SQLite3/_build/dll/libIoSQLite3.so
%{_libdir}/io/addons/SQLite3/io
+%{_libdir}/io/addons/SQLite3/depends
+%{_libdir}/io/addons/SQLite3/protos
+
# R: libsamplerate
%dir %{_libdir}/io/addons/SampleRateConverter
%dir %{_libdir}/io/addons/SampleRateConverter/_build
%dir %{_libdir}/io/addons/SampleRateConverter/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SampleRateConverter/_build/dll/libIoSampleRateConverter.so
-#
+%{_libdir}/io/addons/SampleRateConverter/io
+%{_libdir}/io/addons/SampleRateConverter/depends
+%{_libdir}/io/addons/SampleRateConverter/protos
+
+# TODO: SecureSocket (nothing is built???)
+# R: openssl; addons: Socket
+
+# disabled in addons/CMakeLists.txt, no CMakeLists.txt for addon
+%if 0
%dir %{_libdir}/io/addons/SkipDB
%dir %{_libdir}/io/addons/SkipDB/_build
%dir %{_libdir}/io/addons/SkipDB/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SkipDB/_build/dll/libIoSkipDB.so
+%endif
+
# R: libevent
%dir %{_libdir}/io/addons/Socket
%dir %{_libdir}/io/addons/Socket/_build
%dir %{_libdir}/io/addons/Socket/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Socket/_build/dll/libIoSocket.so
%{_libdir}/io/addons/Socket/io
-# R: soundtouch
+%{_libdir}/io/addons/Socket/depends
+%{_libdir}/io/addons/Socket/protos
+
+# R: soundtouch [no CMakeLists.txt for addon]
+%if 0
%dir %{_libdir}/io/addons/SoundTouch
%dir %{_libdir}/io/addons/SoundTouch/_build
%dir %{_libdir}/io/addons/SoundTouch/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SoundTouch/_build/dll/libIoSoundTouch.so
-#
+%endif
+
+%dir %{_libdir}/io/addons/SqlDatabase
+%dir %{_libdir}/io/addons/SqlDatabase/_build
+%dir %{_libdir}/io/addons/SqlDatabase/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/SqlDatabase/_build/dll/libIoSqlDatabase.so
+%{_libdir}/io/addons/SqlDatabase/io
+%{_libdir}/io/addons/SqlDatabase/depends
+%{_libdir}/io/addons/SqlDatabase/protos
+
%dir %{_libdir}/io/addons/Syslog
%dir %{_libdir}/io/addons/Syslog/_build
%dir %{_libdir}/io/addons/Syslog/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Syslog/_build/dll/libIoSyslog.so
-#
+%{_libdir}/io/addons/Syslog/depends
+%{_libdir}/io/addons/Syslog/protos
+
%dir %{_libdir}/io/addons/SystemCall
%dir %{_libdir}/io/addons/SystemCall/_build
%dir %{_libdir}/io/addons/SystemCall/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/SystemCall/_build/dll/libIoSystemCall.so
%{_libdir}/io/addons/SystemCall/io
+%{_libdir}/io/addons/SystemCall/depends
+%{_libdir}/io/addons/SystemCall/protos
+
+# TagDB - no CMakeLists.txt for addon
+
# R: taglib
%dir %{_libdir}/io/addons/TagLib
%dir %{_libdir}/io/addons/TagLib/_build
%dir %{_libdir}/io/addons/TagLib/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/TagLib/_build/dll/libIoTagLib.so
-#
+%{_libdir}/io/addons/TagLib/io
+%{_libdir}/io/addons/TagLib/depends
+%{_libdir}/io/addons/TagLib/protos
+
+# R: libtheora; addons: Ogg
+%dir %{_libdir}/io/addons/Theora
+%dir %{_libdir}/io/addons/Theora/_build
+%dir %{_libdir}/io/addons/Theora/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Theora/_build/dll/libIoTheora.so
+%{_libdir}/io/addons/Theora/io
+%{_libdir}/io/addons/Theora/depends
+%{_libdir}/io/addons/Theora/protos
+
%dir %{_libdir}/io/addons/Thread
%dir %{_libdir}/io/addons/Thread/_build
%dir %{_libdir}/io/addons/Thread/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Thread/_build/dll/libIoThread.so
-#
-%dir %{_libdir}/io/addons/Thunder
-%dir %{_libdir}/io/addons/Thunder/_build
-%dir %{_libdir}/io/addons/Thunder/_build/dll
-%attr(755,root,root) %{_libdir}/io/addons/Thunder/_build/dll/libIoThunder.so
-%{_libdir}/io/addons/Thunder/io
-#
+%{_libdir}/io/addons/Thread/depends
+%{_libdir}/io/addons/Thread/protos
+
+# R: tokyocabinet-libs
+%dir %{_libdir}/io/addons/TokyoCabinet
+%dir %{_libdir}/io/addons/TokyoCabinet/_build
+%dir %{_libdir}/io/addons/TokyoCabinet/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/TokyoCabinet/_build/dll/libIoTokyoCabinet.so
+%{_libdir}/io/addons/TokyoCabinet/io
+%{_libdir}/io/addons/TokyoCabinet/depends
+%{_libdir}/io/addons/TokyoCabinet/protos
+
+%dir %{_libdir}/io/addons/Twitter
+%dir %{_libdir}/io/addons/Twitter/_build
+%dir %{_libdir}/io/addons/Twitter/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Twitter/_build/dll/libIoTwitter.so
+%{_libdir}/io/addons/Twitter/io
+%{_libdir}/io/addons/Twitter/depends
+%{_libdir}/io/addons/Twitter/protos
+
+# R: libuuid
+%dir %{_libdir}/io/addons/UUID
+%dir %{_libdir}/io/addons/UUID/_build
+%dir %{_libdir}/io/addons/UUID/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/UUID/_build/dll/libIoUUID.so
+%{_libdir}/io/addons/UUID/io
+%{_libdir}/io/addons/UUID/depends
+%{_libdir}/io/addons/UUID/protos
+
%dir %{_libdir}/io/addons/User
%dir %{_libdir}/io/addons/User/_build
%dir %{_libdir}/io/addons/User/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/User/_build/dll/libIoUser.so
-#
-%dir %{_libdir}/io/addons/Vector
-%dir %{_libdir}/io/addons/Vector/_build
-%dir %{_libdir}/io/addons/Vector/_build/dll
-%attr(755,root,root) %{_libdir}/io/addons/Vector/_build/dll/libIoVector.so
-%{_libdir}/io/addons/Vector/io
+%{_libdir}/io/addons/User/depends
+%{_libdir}/io/addons/User/protos
+
+# R(addons): Yajl,Socket
+%dir %{_libdir}/io/addons/VertexDB
+%dir %{_libdir}/io/addons/VertexDB/_build
+%dir %{_libdir}/io/addons/VertexDB/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/VertexDB/_build/dll/libIoVertexDB.so
+%{_libdir}/io/addons/VertexDB/io
+%{_libdir}/io/addons/VertexDB/depends
+%{_libdir}/io/addons/VertexDB/protos
+
+%dir %{_libdir}/io/addons/Volcano
+%dir %{_libdir}/io/addons/Volcano/_build
+%dir %{_libdir}/io/addons/Volcano/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Volcano/_build/dll/libIoVolcano.so
+%{_libdir}/io/addons/Volcano/io
+%{_libdir}/io/addons/Volcano/depends
+%{_libdir}/io/addons/Volcano/protos
+
+# R: libvorbis; addons: Ogg
+%dir %{_libdir}/io/addons/Vorbis
+%dir %{_libdir}/io/addons/Vorbis/_build
+%dir %{_libdir}/io/addons/Vorbis/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Vorbis/_build/dll/libIoVorbis.so
+%{_libdir}/io/addons/Vorbis/io
+%{_libdir}/io/addons/Vorbis/depends
+%{_libdir}/io/addons/Vorbis/protos
+
+# R: yajl
+%dir %{_libdir}/io/addons/Yajl
+%dir %{_libdir}/io/addons/Yajl/_build
+%dir %{_libdir}/io/addons/Yajl/_build/dll
+%attr(755,root,root) %{_libdir}/io/addons/Yajl/_build/dll/libIoYajl.so
+%{_libdir}/io/addons/Yajl/io
+%{_libdir}/io/addons/Yajl/depends
+%{_libdir}/io/addons/Yajl/protos
+
# R: zlib
%dir %{_libdir}/io/addons/Zlib
%dir %{_libdir}/io/addons/Zlib/_build
%dir %{_libdir}/io/addons/Zlib/_build/dll
%attr(755,root,root) %{_libdir}/io/addons/Zlib/_build/dll/libIoZlib.so
%{_libdir}/io/addons/Zlib/io
-
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libiovmall.a
+%{_libdir}/io/addons/Zlib/depends
+%{_libdir}/io/addons/Zlib/protos
diff --git a/io-addons.patch b/io-addons.patch
new file mode 100644
index 0000000..be117fe
--- /dev/null
+++ b/io-addons.patch
@@ -0,0 +1,40 @@
+--- io-2011.09.12/addons/CMakeLists.txt.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/CMakeLists.txt 2013-11-10 10:59:54.044210680 +0100
+@@ -54,7 +54,7 @@
+ add_subdirectory(Box)
+ add_subdirectory(CFFI)
+ add_subdirectory(CGI)
+-#add_subdirectory(Cairo) # XXX: Broken on OSX: ld: library not found for -lpng12
++add_subdirectory(Cairo)
+ add_subdirectory(Clutter)
+ add_subdirectory(ContinuedFraction)
+ add_subdirectory(Curses)
+@@ -79,8 +79,8 @@
+ add_subdirectory(MySQL)
+ #add_subdirectory(NetworkAdapter)
+ add_subdirectory(NotificationCenter)
+-#add_subdirectory(Oauth) # OAuth should no longer break CMake configuration on Windows now.
+-#add_subdirectory(ODE) # XXX: Can't meet dependencies
++add_subdirectory(Oauth)
++add_subdirectory(ODE)
+ add_subdirectory(ObjcBridge) # XXX: Broken for me -- Objective-C 2.0 not supported
+ add_subdirectory(Obsidian)
+ add_subdirectory(Ogg)
+@@ -99,7 +99,7 @@
+ add_subdirectory(SHA1)
+ #add_subdirectory(SQLite) # XXX: Want to delete in favour of SQLite3
+ add_subdirectory(SQLite3)
+-#add_subdirectory(SampleRateConverter)
++add_subdirectory(SampleRateConverter)
+ add_subdirectory(SecureSocket)
+ #add_subdirectory(SkipDB) # XXX: Disabled...why?
+ add_subdirectory(Socket)
+@@ -108,7 +108,7 @@
+ add_subdirectory(Syslog)
+ add_subdirectory(SystemCall)
+ #add_subdirectory(TagDB) # XXX: I can't meet dependencies
+-#add_subdirectory(TagLib)
++add_subdirectory(TagLib)
+ add_subdirectory(Theora)
+ add_subdirectory(Thread)
+ add_subdirectory(TokyoCabinet)
diff --git a/io-link.patch b/io-link.patch
new file mode 100644
index 0000000..295c1b7
--- /dev/null
+++ b/io-link.patch
@@ -0,0 +1,21 @@
+--- io-2011.09.12/libs/basekit/CMakeLists.txt.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/libs/basekit/CMakeLists.txt 2013-11-09 11:56:22.217694352 +0100
+@@ -17,6 +17,7 @@
+
+ # Now build the shared library
+ add_library(basekit SHARED ${SRCS})
++target_link_libraries(basekit -ldl -lm)
+
+ # ...And the static library
+ #add_library(basekit_static STATIC ${SRCS})
+--- io-2011.09.12/libs/iovm/CMakeLists.txt.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/libs/iovm/CMakeLists.txt 2013-11-09 11:57:12.164358923 +0100
+@@ -84,7 +84,7 @@
+ # Now build the shared library
+ add_library(iovmall SHARED ${SRCS})
+ add_dependencies(iovmall io2c basekit coroutine garbagecollector)
+-target_link_libraries(iovmall basekit coroutine garbagecollector)
++target_link_libraries(iovmall basekit coroutine garbagecollector -lm)
+
+ # The following add the install target, so we put libvmall.* in our
+ # install prefix.
diff --git a/io-memcached.patch b/io-memcached.patch
new file mode 100644
index 0000000..7d304e2
--- /dev/null
+++ b/io-memcached.patch
@@ -0,0 +1,30 @@
+--- io-2011.09.12/addons/Memcached/source/IoMemcached.c.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/Memcached/source/IoMemcached.c 2013-11-10 10:02:10.404356034 +0100
+@@ -472,11 +472,13 @@
+ IoMap *results_map = IoMap_new(IOSTATE);
+
+ int i;
+- for(i = 0; i < memcached_server_list_count(DATA(self)->mc->servers); i++) {
+- memcached_server_st *server = DATA(self)->mc->servers + i;
++ for(i = 0; i < memcached_server_count(DATA(self)->mc); i++) {
++ memcached_instance_st *server = memcached_server_instance_by_position(DATA(self)->mc, i);
++ const char *server_name = memcached_server_name(server);
++ in_port_t server_port = memcached_server_port(server);
+
+ memcached_stat_st stats;
+- if(memcached_stat_servername(&stats, "", server->hostname, server->port) != 0)
++ if(memcached_stat_servername(&stats, "", server_name, server_port) != 0)
+ continue;
+
+ memcached_return rc;
+@@ -498,8 +500,8 @@
+ free(ckeys);
+
+ // "127.0.0.1:11211"
+- char *server_key = (char *) malloc((strlen(server->hostname) + 1 + 5 + 1) * sizeof(char));
+- sprintf(server_key, "%s:%d", server->hostname, server->port);
++ char *server_key = (char *) malloc((strlen(server_name) + 1 + 5 + 1) * sizeof(char));
++ sprintf(server_key, "%s:%d", server_name, server_port);
+
+ IoMap_rawAtPut(results_map, IOSYMBOL(server_key), per_server_map);
+ free(server_key);
diff --git a/io-ode.patch b/io-ode.patch
new file mode 100644
index 0000000..77f28cf
--- /dev/null
+++ b/io-ode.patch
@@ -0,0 +1,43 @@
+ODE requires precision selection (dSINGLE or dDOUBLE) before including headers.
+dWorldStepFast1 API is obsolete.
+--- io-2011.09.12/addons/ODE/CMakeLists.txt.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/ODE/CMakeLists.txt 2013-11-10 13:42:02.230469137 +0100
+@@ -53,8 +53,9 @@
+
+ # Now build the shared library
+ add_library(IoODE SHARED ${SRCS})
++ add_definitions(-DdSINGLE)
+ add_dependencies(IoODE iovmall)
+- target_link_libraries(IoODE iovmall ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES})
++ target_link_libraries(IoODE iovmall ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES} -lode)
+
+ # Install the addon to our global addons hierarchy.
+ install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION lib/io/addons)
+--- io-2011.09.12/addons/ODE/source/IoODEWorld.c.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/ODE/source/IoODEWorld.c 2013-11-10 14:12:12.697059780 +0100
+@@ -206,16 +206,6 @@
+ return self;
+ }
+
+-IoObject *IoODEWorld_stepFast1(IoODEWorld *self, IoObject *locals, IoMessage *m)
+-{
+- const double stepSize = IoMessage_locals_doubleArgAt_(m, locals, 0);
+- const int maxIterations = IoMessage_locals_intArgAt_(m, locals, 1);
+-
+- IoODEWorld_assertHasWorldId(self, locals, m);
+- dWorldStepFast1(WORLDID, stepSize, maxIterations);
+- return self;
+-}
+-
+ IoObject *IoODEWorld_bodies(IoODEWorld *self, IoObject *locals, IoMessage *m)
+ {
+ IoODEWorld_assertHasWorldId(self, locals, m);
+--- io-2011.09.12/addons/ODE/source/IoODEWorld.h.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/ODE/source/IoODEWorld.h 2013-11-10 14:12:34.303725505 +0100
+@@ -53,6 +53,5 @@
+
+ IoObject *IoODEWorld_step(IoODEWorld *self, IoObject *locals, IoMessage *m);
+ IoObject *IoODEWorld_quickStep(IoODEWorld *self, IoObject *locals, IoMessage *m);
+-IoObject *IoODEWorld_stepFast1(IoODEWorld *self, IoObject *locals, IoMessage *m);
+
+ #endif
diff --git a/io-python.patch b/io-python.patch
new file mode 100644
index 0000000..22feadf
--- /dev/null
+++ b/io-python.patch
@@ -0,0 +1,10 @@
+--- io-2011.09.12/addons/Python/CMakeLists.txt.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/Python/CMakeLists.txt 2013-11-10 14:44:06.526979463 +0100
+@@ -4,6 +4,7 @@
+ # Builds the Python addon
+
+ # Find curses
++set(Python_ADDITIONAL_VERSIONS 2.7 2.6 2.5 2.4)
+ find_package(PythonLibs)
+
+ # Create the _build bundle hierarchy if needed.
diff --git a/io-system-libsgml.patch b/io-system-libsgml.patch
new file mode 100644
index 0000000..f73326a
--- /dev/null
+++ b/io-system-libsgml.patch
@@ -0,0 +1,30 @@
+--- io-2011.09.12/addons/SGML/CMakeLists.txt.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/addons/SGML/CMakeLists.txt 2013-11-10 10:44:11.617583558 +0100
+@@ -7,9 +7,6 @@
+ make_build_bundle(_build)
+ set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/_build)
+
+-# Ensure we build libsgml before we continue
+-add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/source/libsgml-1.1.4/src)
+-
+ # Generate the IoSGMLInit.c file.
+ # Argument SHOULD ALWAYS be the exact name of the addon, case is
+ # important.
+@@ -19,7 +16,7 @@
+ set(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/_build/dll)
+
+ # Set up the include dir
+-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/source/libsgml-1.1.4/include)
++include_directories(/usr/include/sgml)
+
+ # Our library sources.
+ set(SRCS
+@@ -30,7 +27,7 @@
+ # Now build the shared library
+ add_library(IoSGML SHARED ${SRCS})
+ add_dependencies(IoSGML iovmall sgml)
+-target_link_libraries(IoSGML iovmall sgml)
++target_link_libraries(IoSGML iovmall -lsgml)
+
+ # Install the addon to our global addons hierarchy.
+ install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION lib/io/addons)
diff --git a/io-theora.patch b/io-theora.patch
new file mode 100644
index 0000000..5594f80
--- /dev/null
+++ b/io-theora.patch
@@ -0,0 +1,11 @@
+--- io-2011.09.12/modules/FindTheora.cmake.orig 2011-09-13 00:14:12.000000000 +0200
++++ io-2011.09.12/modules/FindTheora.cmake 2013-11-10 10:49:28.524236914 +0100
+@@ -5,7 +5,7 @@
+
+ FIND_PATH(THEORA_INCLUDE_DIR theora/theora.h theora/theoradec.h)
+
+-SET(THEORA_NAMES ${THEORA_NAMES} theora libtheora theoradec libtheoradec)
++SET(THEORA_NAMES ${THEORA_NAMES} theoradec libtheoradec theora libtheora)
+ FIND_LIBRARY(THEORA_LIBRARY NAMES ${THEORA_NAMES} PATH)
+
+ IF(THEORA_INCLUDE_DIR AND THEORA_LIBRARY)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/io.git/commitdiff/55c8e619c3ed0c502bf93229ac6dffd542a1fd6e
More information about the pld-cvs-commit
mailing list