1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316
|
################################################################################
# RPM .spec file for CEGUI.
#
# This creates a set of packages as follows:
# CEGUI: Main CEGUI libs with Expat and SILLY as defaults.
# CEGUI-opengl: The OpenGL renderer module.
# CEGUI-ogre: The Ogre renderer module.
# CEGUI-irrlicht: The Irrlicht renderer module.
# CEGUI-lua: The Lua script module.
# CEGUI-xerces-c: The Xerces-C++ XML parser module.
# CEGUI-libxml: The libxml2 XML parser module.
# CEGUI-tinyxml: The tinyxml parser module.
# CEGUI-devil: The DevIL ImageCodec module.
# CEGUI-freeimage: The freeimage ImageCodec module.
#
# Plus the following devel packages:
# CEGUI-devel
# CEGUI-opengl-devel
# CEGUI-ogre-devel
# CEGUI-irrlicht-devel
# CEGUI-lua-devel
#
# NB: The xml parsers and image codecs do not have devel packages, since they
# are supposed to be dynamically loaded as plugins.
#
# TODO: We do not currently build and package the documentation files.
################################################################################
# we disable this because there are a handful of installed files we do not need
# to include in any package (the dev libs for the loadable modules)
%define _unpackaged_files_terminate_build 0
%define name @PACKAGE@
%define version @VERSION@
%define release 1
Name: %{name}
Version: %{version}
Release: %{release}
Summary: Crazy Eddie's GUI System
License: MIT
URL: http://www.cegui.org.uk
Group: System Environment/Libraries
Source0: %{name}-%{version}.tar.gz
BuildRequires: pkgconfig >= 0.9.0
BuildRequires: freetype-devel >= 2.0.0, pcre-devel
BuildRequires: SILLY-devel, DevIL-devel, freeimage-devel
BuildRequires: expat-devel, libxml2-devel, tinyxml-devel, xerces-c-devel,
BuildRequires: libGLU-devel, glew-devel
BuildRequires: ogre-devel >= 1.6.0, irrlicht-devel >= 1.5.0
BuildRequires: lua-devel >= 5.1, tolua++-devel >= 1.0.92
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
%description
This is Crazy Eddie's GUI System Mk-2; a free library providing windowing and
widgets for graphics APIs and engines where such functionality is not natively
available or is severely lacking.
%package devel
Summary: Headers and development libraries for Crazy Eddie's GUI System.
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}, glew-devel, libGLU-devel
%description devel
This package contains the development headers and libraries for Crazy Eddie's
GUI System Mk-2; a free library providing windowing and widgets for graphics
APIs and engines where such functionality is not natively available or is
severely lacking.
################################################################################
%package opengl
Summary: The official OpenGL based renderer module for Crazy Eddie's GUI System
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description opengl
This package provides the OpenGL based renderer module for Crazy Eddie's GUI
System, allowing CEGUI rendering via OpenGL.
################################################################################
%package opengl-devel
Summary: Development libraries for the OpenGL renderer module for CEGUI
Group: Development/Libraries
Requires: %{name}-opengl = %{version}-%{release}
%description opengl-devel
This package provides development libraries for the OpenGL based renderer module
for Crazy Eddie's GUI System, allowing CEGUI rendering via OpenGL.
################################################################################
%package ogre
Summary: The official Ogre based renderer module for Crazy Eddie's GUI System
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description ogre
This package provides the Ogre based renderer module for Crazy Eddie's GUI
System, allowing CEGUI rendering via OpenGL.
################################################################################
%package ogre-devel
Summary: Development libraries for the Ogre renderer module for CEGUI
Group: Development/Libraries
Requires: %{name}-ogre = %{version}-%{release}, ogre-devel >= 1.6.0
%description ogre-devel
This package provides development libraries for the Ogre based renderer module
for Crazy Eddie's GUI System, allowing CEGUI rendering via Ogre.
################################################################################
%package irrlicht
Summary: The official Irrlicht based renderer module for Crazy Eddie's GUI System
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description irrlicht
This package provides the Irrlicht based renderer module for Crazy Eddie's GUI
System, allowing CEGUI rendering via OpenGL.
################################################################################
%package irrlicht-devel
Summary: Development libraries for the Irrlight renderer module for CEGUI
Group: Development/Libraries
Requires: %{name}-irrlicht = %{version}-%{release}, irrlicht-devel >= 1.5.0
%description irrlicht-devel
This package provides development libraries for the Irrlight based renderer
module for Crazy Eddie's GUI System, allowing CEGUI rendering via Irrlicht.
################################################################################
%package lua
Summary: Lua Scripting module for Crazy Eddie's GUI System.
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description lua
This package contains the lua scripting module for Crazy Eddie's GUI System,
allowing CEGUI interfaces to be created and scripted via the lua language.
################################################################################
%package lua-devel
Summary: Development libraries for the CEGUI Lua scripting module.
Group: Development/Libraries
Requires: %{name}-lua-%{version}-%{release}
%description lua-devel
This package contains the development libraries for the Lua scripting component
of Crazy Eddie's GUI System, which allows CEGUI interfaces to be created and
scripted via the lua language.
################################################################################
%package devil
Summary: DevIL based ImageCodec module for Crazy Eddie's GUI System.
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description devil
This package contains the DevIL based ImageCodec module for Crazy Eddie's GUI
System, allowing CEGUI to load images via the DevIL library.
################################################################################
%package freeimage
Summary: FreeImage based ImageCodec module for Crazy Eddie's GUI System.
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description freeimage
This package contains the FreeImage based ImageCodec module for Crazy Eddie's GUI
System, allowing CEGUI to load images via the FreeImage library.
################################################################################
%package xerces-c
Summary: Xerces-C++ based XML parser module for Crazy Eddie's GUI System.
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description xerces-c
This package contains the Xerces-C++ based XML parser module for Crazy Eddie's
GUI System, allowing CEGUI to parse XML files via the Xerces-C++ library.
################################################################################
%package libxml
Summary: libxml2 based XML parser module for Crazy Eddie's GUI System.
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description libxml
This package contains the libxml2 based XML parser module for Crazy Eddie's
GUI System, allowing CEGUI to parse XML files via the libxml2 library.
################################################################################
%package tinyxml
Summary: TinyXML based XML parser module for Crazy Eddie's GUI System.
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description tinyxml
This package contains the TinyXML based XML parser module for Crazy Eddie's
GUI System, allowing CEGUI to parse XML files via the TinyXML library.
################################################################################
%prep
%setup -q
%build
%configure \
--with-default-parser=ExpatParser \
--with-default-image-codec=SILLYImageCodec \
--disable-corona \
--disable-tga \
--disable-samples
make -sj2
%install
rm -rf $RPM_BUILD_ROOT
%makeinstall
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
################################################################################
%files
%defattr(-,root,root)
%{_libdir}/libCEGUIBase-%{version}.so
%{_libdir}/libCEGUIFalagardWRBase-%{version}.so
%{_libdir}/libCEGUIExpatParser-%{version}.so
%{_libdir}/libCEGUISILLYImageCodec-%{version}.so
%{_datadir}/CEGUI/
%files devel
%defattr(-,root,root)
%{_libdir}/libCEGUIBase.so
%{_libdir}/libCEGUIBase.la
%{_libdir}/libCEGUIFalagardWRBase.so
%{_libdir}/libCEGUIFalagardWRBase.la
%{_libdir}/libCEGUIExpatParser.so
%{_libdir}/libCEGUIExpatParser.la
%{_libdir}/libCEGUISILLYImageCodec.so
%{_libdir}/libCEGUISILLYImageCodec.la
%{_libdir}/pkgconfig/CEGUI.pc
%{_includedir}/CEGUI/
################################################################################
%files opengl
%defattr(-,root,root)
%{_libdir}/libCEGUIOpenGLRenderer-%{version}.so
%files opengl-devel
%defattr(-,root,root)
%{_libdir}/libCEGUIOpenGLRenderer.so
%{_libdir}/libCEGUIOpenGLRenderer.la
%{_libdir}/pkgconfig/CEGUI-OPENGL.pc
################################################################################
%files ogre
%defattr(-,root,root)
%{_libdir}/libCEGUIOgreRenderer-%{version}.so
%files ogre-devel
%defattr(-,root,root)
%{_libdir}/libCEGUIOgreRenderer.so
%{_libdir}/libCEGUIOgreRenderer.la
%{_libdir}/pkgconfig/CEGUI-OGRE.pc
################################################################################
%files irrlicht
%defattr(-,root,root)
%{_libdir}/libCEGUIIrrlichtRenderer-%{version}.so
%files irrlicht-devel
%defattr(-,root,root)
%{_libdir}/libCEGUIIrrlichtRenderer.so
%{_libdir}/libCEGUIIrrlichtRenderer.la
################################################################################
%files lua
%defattr(-,root,root)
%{_libdir}/libCEGUILuaScriptModule-%{version}.so
%files lua-devel
%defattr(-,root,root)
%{_libdir}/libCEGUILuaScriptModule.so
%{_libdir}/libCEGUILuaScriptModule.la
################################################################################
%files xerces-c
%defattr(-,root,root)
%{_libdir}/libCEGUIXercesParser-%{version}.so
################################################################################
%files libxml
%defattr(-,root,root)
%{_libdir}/libCEGUILibxmlParser-%{version}.so
################################################################################
%files tinyxml
%defattr(-,root,root)
%{_libdir}/libCEGUITinyXMLParser-%{version}.so
################################################################################
%files devil
%defattr(-,root,root)
%{_libdir}/libCEGUIDevILImageCodec-%{version}.so
################################################################################
%files freeimage
%defattr(-,root,root)
%{_libdir}/libCEGUIFreeImageImageCodec-%{version}.so
################################################################################
|