-# TODO:
-# - separate packages for plugins
#
# Conditional build:
%bcond_without xercesc # build XercesParser
%bcond_without ogre # build without Ogre renderer
%bcond_without opengl # build without OpenGL renderer
+%bcond_with directb # unsupported by upstream
%bcond_with samples # build samples
#
Summary: CEGUI - a free library providing windowing and widgets
Summary(pl.UTF-8): CEGUI - wolnodostępna biblioteka zapewniającą okienka i widgety
Name: CEGUI
-Version: 0.8.2
-Release: 2
+Version: 0.8.4
+Release: 3
License: LGPL v2.1+ (with MIT parts)
Group: Libraries
-Source0: http://downloads.sourceforge.net/crayzedsgui/cegui-%{version}.tar.gz
-# Source0-md5: f72951f0cc0374bb2294035cb639bb83
-Source1: http://downloads.sourceforge.net/crayzedsgui/cegui-docs-%{version}.tar.gz
-# Source1-md5: 19029d82148fb6c4145c757ee59ccf8a
+Source0: http://downloads.sourceforge.net/crayzedsgui/cegui-%{version}.tar.bz2
+# Source0-md5: 344917301b5ed867a07575ee6a828667
+Source1: http://downloads.sourceforge.net/crayzedsgui/cegui-docs-%{version}.tar.bz2
+# Source1-md5: 1096bf8c84bf6a22e8892ab9258c22f6
Patch0: pthread.patch
-Patch1: python-sitedir.patch
+Patch1: %{name}-glfw3.patch
+Patch2: %{name}-python.patch
+Patch3: x32.patch
URL: http://www.cegui.org.uk/
BuildRequires: DevIL-devel
-BuildRequires: DirectFB-devel >= 1.2.0
+%{?with_directfb:BuildRequires: DirectFB-devel >= 1.2.0}
BuildRequires: FreeImage-devel
+BuildRequires: GLM
+BuildRequires: OpenGL-devel
BuildRequires: SILLY-devel >= 0.1.0
-BuildRequires: cmake
+BuildRequires: boost-devel >= 1.36.0
+BuildRequires: boost-python-devel >= 1.36.0
+BuildRequires: cmake >= 2.8
BuildRequires: corona-devel
+BuildRequires: doxygen
BuildRequires: expat-devel
+BuildRequires: fribidi-devel
BuildRequires: freetype-devel >= 2.0
+BuildRequires: glew-devel
+# for SampleFramework
+BuildRequires: glfw-devel
BuildRequires: gtk+2-devel >= 2:2.4
BuildRequires: irrlicht-devel >= 1.4
BuildRequires: libstdc++-devel
BuildRequires: libtool >= 2:1.5
BuildRequires: libxml2-devel >= 1:2.6
BuildRequires: lua51-devel >= 5.1
+BuildRequires: minizip-devel
%if %{with ogre}
BuildRequires: ogre-devel >= 1.6.0
BuildRequires: ois-devel >= 1.0.0
%endif
BuildRequires: pcre-devel >= 5.0
BuildRequires: pkgconfig
+BuildRequires: python-devel >= 2
+BuildRequires: rapidxml
BuildRequires: sed >= 4.0
BuildRequires: tinyxml-devel
BuildRequires: tolua++-devel
+%{?with_xercesc:BuildRequires: xerces-c-devel}
# for irrlicht renderer
BuildRequires: xorg-lib-libXxf86vm-devel
%if %{with opengl}
BuildRequires: GLM
BuildRequires: OpenGL-GLU-devel
-BuildRequires: OpenGL-glut-devel
BuildRequires: glew-devel
+BuildRequires: glfw-devel
%endif
-%if %{with xercesc}
-BuildRequires: xerces-c-devel
-%endif
-Requires: irrlicht >= 1.4
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
%description ImageCodec-SILLY-devel -l pl.UTF-8
Pliki nagłówkowe biblioteki CEGUI SILLYImageCodec.
+%package Parser-Expat
+Summary: Expat-based XML parser module
+Summary(pl.UTF-8): Moduł analizatora XML oparty na bibliotece Expat
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description Parser-Expat
+Expat-based XML parser module.
+
+%description Parser-Expat -l pl.UTF-8
+Moduł analizatora XML oparty na bibliotece Expat.
+
+%package Parser-LibXML
+Summary: LibXML-based XML parser module
+Summary(pl.UTF-8): Moduł analizatora XML oparty na bibliotece LibXML
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: libxml2 >= 1:2.6
+
+%description Parser-LibXML
+LibXML-based XML parser module.
+
+%description Parser-LibXML -l pl.UTF-8
+Moduł analizatora XML oparty na bibliotece LibXML.
+
+%package Parser-RapidXML
+Summary: RapidXML-based XML parser module
+Summary(pl.UTF-8): Moduł analizatora XML oparty na bibliotece RapidXML
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description Parser-RapidXML
+RapidXML-based XML parser module.
+
+%description Parser-RapidXML -l pl.UTF-8
+Moduł analizatora XML oparty na bibliotece RapidXML.
+
+%package Parser-TinyXML
+Summary: TinyXML-based XML parser module
+Summary(pl.UTF-8): Moduł analizatora XML oparty na bibliotece TinyXML
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description Parser-TinyXML
+TinyXML-based XML parser module.
+
+%description Parser-TinyXML -l pl.UTF-8
+Moduł analizatora XML oparty na bibliotece TinyXML.
+
+%package Parser-Xerces
+Summary: Xerces-based XML parser module
+Summary(pl.UTF-8): Moduł analizatora XML oparty na bibliotece Xerces
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description Parser-Xerces
+Xerces-based XML parser module.
+
+%description Parser-Xerces -l pl.UTF-8
+Moduł analizatora XML oparty na bibliotece Xerces.
+
%package Renderer-DirectFB
Summary: DirectFBRenderer library for CEGUI
Summary(pl.UTF-8): Biblioteka DirectFBRenderer dla CEGUI
%setup -q -a 1 -n cegui-%{version}
%patch0 -p1
%patch1 -p1
+%patch2 -p1
+%patch3 -p1
%build
install -d build
cd build
-%cmake \
- ../ \
+%cmake .. \
-DCEGUI_SAMPLES_ENABLED:BOOL=%{?with_samples:ON}%{!?with_samples:OFF} \
+ -DCEGUI_BUILD_RENDERER_DIRECTFB:BOOL=%{?with_directfb:ON}%{!?with_directfb:OFF} \
-DCEGUI_BUILD_RENDERER_OPENGL:BOOL=%{?with_opengl:ON}%{!?with_opengl:OFF} \
-DCEGUI_BUILD_RENDERER_OGRE:BOOL=%{?with_ogre:ON}%{!?with_ogre:OFF} \
-DCEGUI_BUILD_XMLPARSER_XERCES:BOOL=%{?with_xercesc:ON}%{!?with_xercesc:OFF} \
-DCEGUI_OPTION_DEFAULT_XMLPARSER:STRING=LibxmlParser \
-DCEGUI_PYTHON_INSTALL_DIR=%{py_sitedir}
-%{__make}
+%{__make} -j1
%install
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
-%post ImageCodec-Corona -p /sbin/ldconfig
-%postun ImageCodec-Corona -p /sbin/ldconfig
-%post ImageCodec-DevIL -p /sbin/ldconfig
-%postun ImageCodec-DevIL -p /sbin/ldconfig
-%post ImageCodec-FreeImage -p /sbin/ldconfig
-%postun ImageCodec-FreeImage -p /sbin/ldconfig
-%post ImageCodec-SILLY -p /sbin/ldconfig
-%postun ImageCodec-SILLY -p /sbin/ldconfig
-
%post Renderer-Irrlicht -p /sbin/ldconfig
%postun Renderer-Irrlicht -p /sbin/ldconfig
%post Renderer-Ogre -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
-%doc doc/README
+%doc doc/README.orig
%attr(755,root,root) %{_libdir}/libCEGUIBase-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUIBase-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUIBase-0.so.2
%attr(755,root,root) %{_libdir}/libCEGUICommonDialogs-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUICommonDialogs-0.so.3
-%attr(755,root,root) %{_libdir}/libCEGUINullRenderer-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUINullRenderer-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUICommonDialogs-0.so.2
%attr(755,root,root) %{_libdir}/libCEGUILuaScriptModule-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUILuaScriptModule-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUILuaScriptModule-0.so.2
# plugins
%dir %{_libdir}/cegui-0.8
%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUICoreWindowRendererSet.so
-%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUIExpatParser.so
-%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUILibXMLParser.so
-%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUISTBImageCodec.so
-%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUITGAImageCodec.so
-%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUITinyXMLParser.so
-%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUIXercesParser.so
%files docs
%defattr(644,root,root,755)
-%doc cegui-docs-0.8.2/*
+%doc cegui-docs-%{version}/*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libCEGUIBase-0.so
%attr(755,root,root) %{_libdir}/libCEGUICommonDialogs-0.so
%attr(755,root,root) %{_libdir}/libCEGUILuaScriptModule-0.so
-%attr(755,root,root) %{_libdir}/libCEGUINullRenderer-0.so
%dir %{_includedir}/cegui-0
%dir %{_includedir}/cegui-0/%{name}
%{_includedir}/cegui-0/%{name}/*.h
%{_includedir}/cegui-0/%{name}/CommonDialogs
%dir %{_includedir}/cegui-0/%{name}/ImageCodecModules
-%{_includedir}/cegui-0/%{name}/ImageCodecModules/STB
-%{_includedir}/cegui-0/%{name}/ImageCodecModules/TGA
%dir %{_includedir}/cegui-0/%{name}/RendererModules
-%{_includedir}/cegui-0/%{name}/RendererModules/Null
%{_includedir}/cegui-0/%{name}/ScriptModules
%{_includedir}/cegui-0/%{name}/WindowRendererSets
%{_includedir}/cegui-0/%{name}/XMLParserModules
%{_includedir}/cegui-0/%{name}/widgets
%{_pkgconfigdir}/CEGUI-0.pc
%{_pkgconfigdir}/CEGUI-0-LUA.pc
-%{_pkgconfigdir}/CEGUI-0-NULL.pc
%files ImageCodec-Corona
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%{_includedir}/cegui-0/%{name}/ImageCodecModules/SILLY
+%files Parser-Expat
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUIExpatParser.so
+
+%files Parser-LibXML
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUILibXMLParser.so
+
+%files Parser-RapidXML
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUIRapidXMLParser.so
+
+%files Parser-TinyXML
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUITinyXMLParser.so
+
+%files Parser-Xerces
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/cegui-0.8/libCEGUIXercesParser.so
+
+%if %{with directfb}
%files Renderer-DirectFB
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libCEGUIDirectFBRenderer-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUIDirectFBRenderer-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUIDirectFBRenderer-0.so.2
%files Renderer-DirectFB-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libCEGUIDirectFBRenderer-0.so
%{_includedir}/cegui-0/%{name}/RendererModules/DirectFB
+%endif
%files Renderer-Irrlicht
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libCEGUIIrrlichtRenderer-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUIIrrlichtRenderer-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUIIrrlichtRenderer-0.so.2
%files Renderer-Irrlicht-devel
%defattr(644,root,root,755)
%files Renderer-Ogre
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libCEGUIOgreRenderer-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUIOgreRenderer-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUIOgreRenderer-0.so.2
%files Renderer-Ogre-devel
%defattr(644,root,root,755)
%files Renderer-OpenGL
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libCEGUIOpenGLRenderer-0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libCEGUIOpenGLRenderer-0.so.3
+%attr(755,root,root) %ghost %{_libdir}/libCEGUIOpenGLRenderer-0.so.2
%files Renderer-OpenGL-devel
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%dir %{py_sitedir}/cegui-0.8
%attr(755,root,root) %{py_sitedir}/cegui-0.8/PyCEGUI.so
-%attr(755,root,root) %{py_sitedir}/cegui-0.8/PyCEGUINullRenderer.so
%if %{with ogre}
%files -n python-CEGUI-Renderer-Ogre