[ogre] 1.9.0 upstream release (RHBZ #1104309)

Igor Gnatenko ignatenkobrain at fedoraproject.org
Sat Jun 7 20:53:35 UTC 2014


commit db0140ce5dad57f1e731962203ff7cb42d06746f
Author: Igor Gnatenko <i.gnatenko.brain at gmail.com>
Date:   Sun Jun 8 00:53:14 2014 +0400

    1.9.0 upstream release (RHBZ #1104309)
    
    Signed-off-by: Igor Gnatenko <i.gnatenko.brain at gmail.com>

 .gitignore                          |    1 +
 ogre-1.6.0rc1-glew.patch            |  108 -----------------------
 ogre-1.8.1-build-rcapsdump.patch    |   20 -----
 ogre-1.8.1-cmake-freetype.patch     |   13 ---
 ogre-1.8.1-dynlib-allow-no-so.patch |   22 -----
 ogre-1.8.1-system-tinyxml.patch     |   27 ------
 ogre-1.9.0-build-rcapsdump.patch    |   22 +++++
 ogre-1.9.0-cmake-freetype.patch     |   12 +++
 ogre-1.9.0-cmake_build-fix.patch    |   14 +++
 ogre-1.9.0-dynlib-allow-no-so.patch |   23 +++++
 ogre-1.9.0-glew.patch               |  133 ++++++++++++++++++++++++++++
 ogre-make-clean.sh                  |   53 ++++++------
 ogre.spec                           |  162 +++++++++++++++--------------------
 sources                             |    2 +-
 14 files changed, 300 insertions(+), 312 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index b8806ef..4cb00e4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@ ogre-1.6.4-clean.tar.bz2
 /ogre-1.7.3-clean.tar.bz2
 /ogre-1.7.4-clean.tar.bz2
 /ogre-1.8.1-clean.tar.bz2
+/ogre-1.9.0-clean.tar.bz2
diff --git a/ogre-1.9.0-build-rcapsdump.patch b/ogre-1.9.0-build-rcapsdump.patch
new file mode 100644
index 0000000..39efb56
--- /dev/null
+++ b/ogre-1.9.0-build-rcapsdump.patch
@@ -0,0 +1,22 @@
+diff -uNr ogre-1.9.0/Tools/CMakeLists.txt ogre-1.9.0.rcapsdump/Tools/CMakeLists.txt
+--- ogre-1.9.0/Tools/CMakeLists.txt	2013-12-01 21:28:12.000000000 +0400
++++ ogre-1.9.0.rcapsdump/Tools/CMakeLists.txt	2014-06-07 22:09:58.310761427 +0400
+@@ -14,3 +14,5 @@
+   add_subdirectory(XMLConverter)
+   add_subdirectory(MeshUpgrader)
+ endif (NOT OGRE_BUILD_PLATFORM_APPLE_IOS AND NOT OGRE_BUILD_PLATFORM_WINRT)
++
++add_subdirectory(rcapsdump)
+diff -uNr ogre-1.9.0/Tools/rcapsdump/CMakeLists.txt ogre-1.9.0.rcapsdump/Tools/rcapsdump/CMakeLists.txt
+--- ogre-1.9.0/Tools/rcapsdump/CMakeLists.txt	1970-01-01 03:00:00.000000000 +0300
++++ ogre-1.9.0.rcapsdump/Tools/rcapsdump/CMakeLists.txt	2014-06-07 22:10:45.999350666 +0400
+@@ -0,0 +1,9 @@
++# Configure rcapsdump
++
++set(SOURCE_FILES 
++  src/main.cpp
++)
++
++add_executable(rcapsdump ${SOURCE_FILES})
++target_link_libraries(rcapsdump ${OGRE_LIBRARIES})
++ogre_config_tool(rcapsdump)
diff --git a/ogre-1.9.0-cmake-freetype.patch b/ogre-1.9.0-cmake-freetype.patch
new file mode 100644
index 0000000..03ce0d3
--- /dev/null
+++ b/ogre-1.9.0-cmake-freetype.patch
@@ -0,0 +1,12 @@
+diff -uNr ogre-1.9.0/CMake/Packages/FindFreetype.cmake ogre-1.9.0.cmake-freetype/CMake/Packages/FindFreetype.cmake
+--- ogre-1.9.0/CMake/Packages/FindFreetype.cmake	2013-12-01 21:28:12.000000000 +0400
++++ ogre-1.9.0.cmake-freetype/CMake/Packages/FindFreetype.cmake	2014-06-07 22:29:30.518295328 +0400
+@@ -43,7 +43,7 @@
+ findpkg_framework(FREETYPE)
+ message(STATUS "CMAKE_PREFIX_PATH: ${CMAKE_PREFIX_PATH}")
+ 
+-find_path(FREETYPE_INCLUDE_DIR NAMES freetype.h freetype/freetype.h HINTS ${FREETYPE_INC_SEARCH_PATH} ${FREETYPE_PKGC_INCLUDE_DIRS} PATH_SUFFIXES freetype2)
++find_path(FREETYPE_INCLUDE_DIR NAMES freetype.h freetype2/freetype.h HINTS ${FREETYPE_INC_SEARCH_PATH} ${FREETYPE_PKGC_INCLUDE_DIRS} PATH_SUFFIXES freetype2)
+ find_path(FREETYPE_FT2BUILD_INCLUDE_DIR NAMES ft2build.h HINTS ${FREETYPE_INC_SEARCH_PATH} ${FREETYPE_PKGC_INCLUDE_DIRS})
+ 
+ find_library(FREETYPE_LIBRARY_REL NAMES ${FREETYPE_LIBRARY_NAMES} HINTS ${FREETYPE_LIB_SEARCH_PATH} ${FREETYPE_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" Release RelWithDebInfo MinSizeRel)
diff --git a/ogre-1.9.0-cmake_build-fix.patch b/ogre-1.9.0-cmake_build-fix.patch
new file mode 100644
index 0000000..a98c5b1
--- /dev/null
+++ b/ogre-1.9.0-cmake_build-fix.patch
@@ -0,0 +1,14 @@
+diff -uNr ogre-1.9.0/Samples/Browser/CMakeLists.txt ogre-1.9.0.cmake_build-fix/Samples/Browser/CMakeLists.txt
+--- ogre-1.9.0/Samples/Browser/CMakeLists.txt	2013-12-01 21:28:12.000000000 +0400
++++ ogre-1.9.0.cmake_build-fix/Samples/Browser/CMakeLists.txt	2014-06-07 22:59:19.423900980 +0400
+@@ -339,8 +339,8 @@
+ 
+     foreach(FWK ${FRAMEWORKS})
+ 	add_custom_command(TARGET SampleBrowser POST_BUILD
+-        COMMAND ARGS if [ -d ${OGRE_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/${FWK}.framework ]\; then ln -s -f ${OGRE_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/${FWK}.framework ${OGRE_SAMPLE_CONTENTS_PATH}/Frameworks/${FWK}.framework\; fi
+-		)
++        COMMAND ARGS if test -d ${OGRE_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/${FWK}.framework\; then ln -s -f ${OGRE_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/${FWK}.framework ${OGRE_SAMPLE_CONTENTS_PATH}/Frameworks/${FWK}.framework\; fi
++    )
+     endforeach(FWK)
+ 
+ 	# Add links for the sample plugins
diff --git a/ogre-1.9.0-dynlib-allow-no-so.patch b/ogre-1.9.0-dynlib-allow-no-so.patch
new file mode 100644
index 0000000..c02387b
--- /dev/null
+++ b/ogre-1.9.0-dynlib-allow-no-so.patch
@@ -0,0 +1,23 @@
+diff -uNr ogre-1.9.0/OgreMain/src/OgreDynLib.cpp ogre-1.9.0.dynlib-allow-no-so/OgreMain/src/OgreDynLib.cpp
+--- ogre-1.9.0/OgreMain/src/OgreDynLib.cpp	2013-12-01 21:28:12.000000000 +0400
++++ ogre-1.9.0.dynlib-allow-no-so/OgreMain/src/OgreDynLib.cpp	2014-06-07 22:22:44.500257614 +0400
+@@ -76,7 +76,9 @@
+ 		String name = mName;
+ #if OGRE_PLATFORM == OGRE_PLATFORM_LINUX || OGRE_PLATFORM == OGRE_PLATFORM_NACL
+         // dlopen() does not add .so to the filename, like windows does for .dll
+-        if (name.find(".so") == String::npos)
++        mInst = (DYNLIB_HANDLE)DYNLIB_LOAD( name.c_str() );
++        // Only add .so if open without it failed
++        if ((!mInst) && (name.find(".so") == String::npos))
+         {
+             name += ".so.";
+             name += StringConverter::toString(OGRE_VERSION_MAJOR) + ".";
+@@ -93,7 +95,7 @@
+ 		if (name.substr(name.length() - 4, 4) != ".dll")
+ 			name += ".dll";
+ #endif
+-        mInst = (DYNLIB_HANDLE)DYNLIB_LOAD( name.c_str() );
++        if( !mInst ) mInst = (DYNLIB_HANDLE)DYNLIB_LOAD( name.c_str() );
+ #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
+         if(!mInst)
+         {
diff --git a/ogre-1.9.0-glew.patch b/ogre-1.9.0-glew.patch
new file mode 100644
index 0000000..06922db
--- /dev/null
+++ b/ogre-1.9.0-glew.patch
@@ -0,0 +1,133 @@
+diff -uNr ogre-1.9.0/RenderSystems/GL/include/GL/glew.h ogre-1.9.0.glew/RenderSystems/GL/include/GL/glew.h
+--- ogre-1.9.0/RenderSystems/GL/include/GL/glew.h	2014-06-07 21:12:14.000000000 +0400
++++ ogre-1.9.0.glew/RenderSystems/GL/include/GL/glew.h	2014-06-07 21:45:03.422493324 +0400
+@@ -109,6 +109,11 @@
+ #define __GLEXT_H_
+ #define __gl_ATI_h_
+ 
++// SJS
++// Build statically
++#define GLEW_STATIC
++// SJS
++
+ #if defined(_WIN32)
+ 
+ /*
+diff -uNr ogre-1.9.0/RenderSystems/GL/src/glew.cpp ogre-1.9.0.glew/RenderSystems/GL/src/glew.cpp
+--- ogre-1.9.0/RenderSystems/GL/src/glew.cpp	2014-06-07 21:12:16.000000000 +0400
++++ ogre-1.9.0.glew/RenderSystems/GL/src/glew.cpp	2014-06-07 21:48:09.519775784 +0400
+@@ -29,6 +29,10 @@
+ ** THE POSSIBILITY OF SUCH DAMAGE.
+ */
+ 
++// SJS
++#include "OgreGLSupport.h"
++// SJS
++
+ #include <GL/glew.h>
+ 
+ #if defined(_WIN32)
+@@ -57,13 +61,21 @@
+ #  endif /* _WIN32 */
+ #  define GLEW_CONTEXT_ARG_DEF_LIST GLEWContext* ctx
+ #else /* GLEW_MX */
+-#  define GLEW_CONTEXT_ARG_DEF_INIT void
+-#  define GLEW_CONTEXT_ARG_VAR_INIT
+-#  define GLEW_CONTEXT_ARG_DEF_LIST void
+-#  define WGLEW_CONTEXT_ARG_DEF_INIT void
+-#  define WGLEW_CONTEXT_ARG_DEF_LIST void
+-#  define GLXEW_CONTEXT_ARG_DEF_INIT void
+-#  define GLXEW_CONTEXT_ARG_DEF_LIST void
++// SJS
++#  define GLEW_CONTEXT_ARG_DEF_INIT Ogre::GLSupport *glSupport
++#  define GLEW_CONTEXT_ARG_VAR_INIT glSupport
++#  define GLEW_CONTEXT_ARG_DEF_LIST Ogre::GLSupport *glSupport
++#  define WGLEW_CONTEXT_ARG_DEF_INIT Ogre::GLSupport *glSupport
++#  define WGLEW_CONTEXT_ARG_DEF_LIST Ogre::GLSupport *glSupport
++#  define GLXEW_CONTEXT_ARG_DEF_INIT Ogre::GLSupport *glSupport
++#  define GLXEW_CONTEXT_ARG_DEF_LIST Ogre::GLSupport *glSupport
++//#  define GLEW_CONTEXT_ARG_DEF_INIT void
++//#  define GLEW_CONTEXT_ARG_VAR_INIT
++//#  define GLEW_CONTEXT_ARG_DEF_LIST void
++//#  define WGLEW_CONTEXT_ARG_DEF_INIT void
++//#  define WGLEW_CONTEXT_ARG_DEF_LIST void
++//#  define GLXEW_CONTEXT_ARG_DEF_INIT void
++//#  define GLXEW_CONTEXT_ARG_DEF_LIST void
+ #endif /* GLEW_MX */
+ 
+ #if defined(__sgi) || defined (__sun) || defined(GLEW_APPLE_GLX)
+@@ -137,7 +149,7 @@
+ #endif
+   }
+   /* prepend a '_' for the Unix C symbol mangling convention */
+-  symbolName = malloc(strlen((const char*)name) + 2);
++  symbolName = (char*)malloc(strlen((const char*)name) + 2);
+   strcpy(symbolName+1, (const char*)name);
+   symbolName[0] = '_';
+   symbol = NULL;
+@@ -9481,9 +9493,11 @@
+ 
+ /* ------------------------------------------------------------------------- */
+ 
+-#ifndef GLEW_MX
+-static
+-#endif
++// SJS
++//#ifndef GLEW_MX
++//static
++//#endif
++// SJS
+ GLenum GLEWAPIENTRY glewContextInit (GLEW_CONTEXT_ARG_DEF_LIST)
+ {
+   const GLubyte* s;
+@@ -12543,7 +12557,14 @@
+ {
+   GLboolean r = GL_FALSE;
+ 
+-  r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
++    // SJS
++       // FB: Patched to allow Ogre to overload glXGetCurrentDisplay
++       if (glXGetCurrentDisplay == NULL)
++       {
++               r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
++       }
++       //r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
++    // SJS
+ 
+   return r;
+ }
+@@ -13476,19 +13497,21 @@
+ extern GLenum GLEWAPIENTRY glxewContextInit (void);
+ #endif /* _WIN32 */
+ 
+-GLenum GLEWAPIENTRY glewInit (void)
+-{
+-  GLenum r;
+-  r = glewContextInit();
+-  if ( r != 0 ) return r;
+-#if defined(_WIN32)
+-  return wglewContextInit();
+-#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) /* _UNIX */
+-  return glxewContextInit();
+-#else
+-  return r;
+-#endif /* _WIN32 */
+-}
++// SJS
++//GLenum GLEWAPIENTRY glewInit (void)
++//{
++//  GLenum r;
++//  r = glewContextInit();
++//  if ( r != 0 ) return r;
++//#if defined(_WIN32)
++//  return wglewContextInit();
++//#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) /* _UNIX */
++//  return glxewContextInit();
++//#else
++//  return r;
++//#endif /* _WIN32 */
++//}
++// End SJS
+ 
+ #endif /* !GLEW_MX */
+ #ifdef GLEW_MX
diff --git a/ogre-make-clean.sh b/ogre-make-clean.sh
index d846657..a0d1db9 100755
--- a/ogre-make-clean.sh
+++ b/ogre-make-clean.sh
@@ -3,34 +3,31 @@
 set -e
 set -x
 
-version=1.8.1
+version=1.9.0
 
 [ ! -e ogre-${version} ]
 
-tar xjf ogre_src_v$(echo ${version} | tr . -).tar.bz2
-
-cd ogre_src_v$(echo ${version} | tr . -)
-
-# - Non-free licensed headers under RenderSystems/GL/include/GL removed
-rm RenderSystems/GL/include/GL/{gl,glext,glxext,glxtokens,wglext}.h
-
-# - GLEW sources updated to 1.6.0
-rpm -q glew-devel glew-debuginfo
-cp -f /usr/include/GL/{glew,glxew,wglew}.h RenderSystems/GL/include/GL/
-cp -f /usr/src/debug/glew-*/src/glew.c RenderSystems/GL/src/glew.cpp
-dos2unix RenderSystems/GL/src/glew.cpp
-
-# - Non-free chiropteraDM.pk3 under Samples/Media/packs removed
-rm Samples/Media/packs/chiropteraDM.{pk3,txt}
-
-# - Non-free fonts under Samples/Media/fonts removed
-rm Samples/Media/fonts/{bluebold,bluecond,bluehigh,solo5}.ttf
-
-# - Non-free textures under Samples/Media/materials/textures/nvidia removed
-rm Samples/Media/materials/textures/nvidia/*
-
-cd ..
-
-mv ogre_src_v$(echo ${version} | tr . -) ogre-${version}
-
-tar cjf ogre-$version-clean.tar.bz2 ogre-${version}
+rpm -q mercurial
+hg clone https://bitbucket.org/sinbad/ogre ogre-${version}
+hg archive -R ogre-${version} -r v$(echo ${version} | tr . -) -t tbz2 ogre-${version}.tar.bz2
+rm -rf ogre-${version}
+
+# Clean up
+tar xjf ogre-${version}.tar.bz2
+pushd ogre-${version}
+  # - Non-free licensed headers under RenderSystems/GL/include/GL removed
+  rm RenderSystems/GL/include/GL/{gl,glext,glxext,glxtokens,wglext}.h
+
+  # - GLEW sources updated
+  rpm -q glew-devel glew-debuginfo
+  cp -f /usr/include/GL/{glew,glxew,wglew}.h RenderSystems/GL/include/GL/
+  cp -f /usr/src/debug/glew-*/src/glew.c RenderSystems/GL/src/glew.cpp
+  dos2unix RenderSystems/GL/src/glew.cpp
+
+  # - Non-free chiropteraDM.pk3 under Samples/Media/packs removed
+  rm Samples/Media/packs/chiropteraDM.{pk3,txt}
+
+  # - Non-free textures under Samples/Media/materials/textures/nvidia removed
+  rm Samples/Media/materials/textures/nvidia/*
+popd
+tar cjf ogre-${version}-clean.tar.bz2 ogre-${version}
diff --git a/ogre.spec b/ogre.spec
index ce3158d..807e002 100644
--- a/ogre.spec
+++ b/ogre.spec
@@ -1,6 +1,6 @@
 Name:           ogre
-Version:        1.8.1
-Release:        12%{?dist}
+Version:        1.9.0
+Release:        1%{?dist}
 Summary:        Object-Oriented Graphics Rendering Engine
 # MIT with exceptions - main library
 # CC-BY-SA - devel docs
@@ -12,23 +12,19 @@ Group:          System Environment/Libraries
 URL:            http://www.ogre3d.org/
 # This is modified http://downloads.sourceforge.net/ogre/ogre-v%(echo %{version} | tr . -).tar.bz2
 # with non-free files striped (see ogre-make-clean.sh):
-# Update local glew copy to 1.6.0
+# Update local glew copy
 # - Non-free licensed headers under RenderSystems/GL/include/GL removed
 # - Non-free chiropteraDM.pk3 under Samples/Media/packs removed
-# - Non-free fonts under Samples/Media/fonts removed
 # - Non-free textures under Samples/Media/materials/textures/nvidia
 Source0:        %{name}-%{version}-clean.tar.bz2
 Patch0:         ogre-1.7.2-rpath.patch
-#Patch1:         ogre-1.6.0-system-glew.patch
-# Upstream patch to GLEW applied to new version
-Patch1:         ogre-1.6.0rc1-glew.patch
-Patch2:         ogre-1.8.1-system-tinyxml.patch
+Patch1:         ogre-1.9.0-glew.patch
 Patch3:         ogre-1.7.2-fix-ppc-build.patch
-Patch5:         ogre-1.8.1-build-rcapsdump.patch
+Patch5:         ogre-1.9.0-build-rcapsdump.patch
 Patch6:         ogre-thread.patch
-Patch7:         ogre-1.8.1-dynlib-allow-no-so.patch
-Patch8:         ogre-1.8.1-cmake-freetype.patch
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Patch7:         ogre-1.9.0-dynlib-allow-no-so.patch
+Patch8:         ogre-1.9.0-cmake-freetype.patch
+Patch9:         ogre-1.9.0-cmake_build-fix.patch
 BuildRequires:  zziplib-devel freetype-devel
 BuildRequires:  libXaw-devel libXrandr-devel libXxf86vm-devel libGLU-devel
 BuildRequires:  ois-devel freeimage-devel openexr-devel
@@ -37,6 +33,7 @@ BuildRequires:  boost-devel
 # BuildRequires:  poco-devel
 BuildRequires:  tinyxml-devel
 BuildRequires:  cmake
+BuildRequires:  libatomic
 BuildRequires:  cppunit-devel
 
 %description
@@ -85,6 +82,23 @@ Requires:       %{name} = %{version}-%{release}
 OGRE's terrain component provides rendering of terrain represented by
 heightmaps.
 
+%package overlay
+Summary:        OGRE overlay component
+Requires:       %{name} = %{version}-%{release}
+
+%description overlay
+Overlays allow you to render 2D and 3D elements on top of the normal scene
+contents to create effects like heads-up displays (HUDs), menu systems,
+status panels etc.
+
+%package volume
+Summary:        OGRE component for volume rendering
+Requires:       %{name} = %{version}-%{release}
+
+%description volume
+This component used to render volumes. It can handle any volume data but
+featurewise has a tedency towards terrains.
+
 %package utils
 Summary:        OGRE production pipeline utilities
 Group:          Development/Tools
@@ -113,18 +127,6 @@ Requires:       cmake
 This package contains the header files for Ogre.
 Install this package if you want to develop programs that use Ogre.
 
-
-%package devel-doc
-Summary:        Ogre development documentation
-Group:          Documentation
-Requires:       %{name} = %{version}-%{release}
-BuildRequires:  doxygen
-
-%description devel-doc
-This package contains the Ogre API documentation and the Ogre development
-manual. Install this package if you want to develop programs that use Ogre.
-
-
 %package samples
 Summary:        Ogre samples executables and media
 Group:          Development/Libraries
@@ -138,14 +140,15 @@ using SampleBrowser.
 
 %prep
 %setup -q
-%patch0 -p1 -z .rpath
-%patch1 -p0 -z .glew
-%patch2 -p1 -z .sys-tinyxml
-%patch3 -p1 -z .ppc
-%patch5 -p0 -z .build-rcapsdump
-%patch6 -p0 -z .thread
-%patch7 -p0 -z .dynlib-allow-no-so
-%patch8 -p1 -z .cmake-freetype
+mkdir build
+%patch0 -p1 -b .rpath
+%patch1 -p1 -b .glew
+%patch3 -p1 -b .ppc
+%patch5 -p1 -b .build-rcapsdump
+%patch6 -p0 -b .thread
+%patch7 -p1 -b .dynlib-allow-no-so
+%patch8 -p1 -b .cmake-freetype
+%patch9 -p1 -b .cmake_build-fix
 
 # remove execute bits from src-files for -debuginfo package
 chmod -x `find RenderSystems/GL -type f` \
@@ -153,83 +156,57 @@ chmod -x `find RenderSystems/GL -type f` \
 #  Samples/Common/bin/resources.cfg
 # Remove spurious execute bits from some Media files
 chmod -x `find Samples/Media/DeferredShadingMedia -type f`
-# create a clean version of the api docs for %%doc
-mkdir api
-find . \( -wholename './Docs/api/html/*.html' -or \
-  -wholename './Docs/api/html/*.gif' -or -wholename './Docs/api/html/*.png' \
-  -or -wholename './Docs/api/html/*.css' \) -exec cp --target-directory='api' '{}' +
-for i in api/OgreParticleEmitter_8h_source.html \
-         api/classOgre_1_1ParticleSystem.html \
-         api/classOgre_1_1DynLib.html \
-         api/classOgre_1_1ParticleEmitter.html; do
-  iconv -f ISO_8859-2 -t UTF8 $i > api/tmp
-  touch -r $i api/tmp
-  mv api/tmp $i
-done
 # Add mit.txt symlink for links in License.html
 rm -r Docs/licenses/*
 ln -s ../COPYING Docs/licenses/mit.txt
 # remove included tinyxml headers to ensure use of system headers
 rm Tools/XMLConverter/include/tiny*
 
-
 %build
-mkdir build
-cd build
-%cmake .. -DOGRE_FULL_RPATH=0 -DCMAKE_SKIP_RPATH=1 -DOGRE_LIB_DIRECTORY=%{_lib} -DOGRE_BUILD_RTSHADERSYSTEM_EXT_SHADERS=1 -DOGRE_BUILD_PLUGIN_CG=0
-make %{?_smp_mflags}
+pushd build
+  %cmake .. -DOGRE_FULL_RPATH=0 -DCMAKE_SKIP_RPATH=1 -DOGRE_LIB_DIRECTORY=%{_lib} -DOGRE_BUILD_RTSHADERSYSTEM_EXT_SHADERS=1 -DOGRE_BUILD_PLUGIN_CG=0
+  make %{?_smp_mflags}
+popd
 
 %install
-cd build
-make DESTDIR=$RPM_BUILD_ROOT install
+pushd build
+  %make_install
+popd
 
 # Create config for ldconfig
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
-echo "%{_libdir}/OGRE" > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d
+echo "%{_libdir}/OGRE" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
 
 # Install the samples
-mkdir -p $RPM_BUILD_ROOT%{_libdir}/OGRE/Samples
-install -p -m 644 lib/Sample_*.so $RPM_BUILD_ROOT%{_libdir}/OGRE/Samples
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/OGRE
+mkdir -p %{buildroot}%{_libdir}/OGRE/Samples
+mkdir -p %{buildroot}%{_sysconfdir}/OGRE
 for cfg in plugins.cfg quakemap.cfg resources.cfg samples.cfg; do
-  install -p -m 644 inst/bin/release/$cfg \
-    $RPM_BUILD_ROOT%{_sysconfdir}/OGRE/
+  mv %{buildroot}%{_datadir}/OGRE/$cfg %{buildroot}%{_sysconfdir}/OGRE/
 done
 
 # Swap out reference to non-free quake map that was removed
-cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/OGRE/quakemap.cfg
+cat << EOF > %{buildroot}%{_sysconfdir}/OGRE/quakemap.cfg
 Archive: /usr/share/OGRE/media/packs/ogretestmap.zip 
 Map: ogretestmap.bsp
 EOF
 
 # Fixing bug with wrong case for media
-mv ../Samples/Media/PCZAppMedia/ROOM_NY.mesh ../Samples/Media/PCZAppMedia/room_ny.mesh
-mv ../Samples/Media/PCZAppMedia/ROOM_PY.mesh ../Samples/Media/PCZAppMedia/room_py.mesh
-install -p -m 755 bin/SampleBrowser $RPM_BUILD_ROOT%{_bindir}/SampleBrowser
-
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/OGRE/
-cp -a ../Samples/Media $RPM_BUILD_ROOT%{_datadir}/OGRE/media
-rm -f $RPM_BUILD_ROOT%{_datadir}/OGRE/media/CMakeLists.txt
-
-ln -s ../../../../fonts/dejavu/DejaVuSans-Bold.ttf \
-  $RPM_BUILD_ROOT%{_datadir}/OGRE/media/fonts/bluebold.ttf
-ln -s ../../../../fonts/dejavu/DejaVuSans.ttf \
-  $RPM_BUILD_ROOT%{_datadir}/OGRE/media/fonts/bluehigh.ttf
-ln -s ../../../../fonts/dejavu/DejaVuSansCondensed.ttf \
-  $RPM_BUILD_ROOT%{_datadir}/OGRE/media/fonts/bluecond.ttf
-ln -s ../../../../fonts/dejavu/DejaVuSans.ttf \
-  $RPM_BUILD_ROOT%{_datadir}/OGRE/media/fonts/solo5.ttf
+mkdir -p %{buildroot}%{_datadir}/OGRE/
+mv %{buildroot}%{_datadir}/OGRE/Media %{buildroot}%{_datadir}/OGRE/media
+mv %{buildroot}%{_datadir}/OGRE/media/PCZAppMedia/ROOM_NY.mesh %{buildroot}%{_datadir}/OGRE/media/PCZAppMedia/room_ny.mesh
+mv %{buildroot}%{_datadir}/OGRE/media/PCZAppMedia/ROOM_PY.mesh %{buildroot}%{_datadir}/OGRE/media/PCZAppMedia/room_py.mesh
+
+rm -f %{buildroot}%{_datadir}/OGRE/docs/CMakeLists.txt
 
 # cmake macros should be in the cmake directory, not an Ogre directory
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/cmake/Modules
-mv $RPM_BUILD_ROOT%{_libdir}/OGRE/cmake/* $RPM_BUILD_ROOT%{_datadir}/cmake/Modules
+mkdir -p %{buildroot}%{_datadir}/cmake/Modules
+mv %{buildroot}%{_libdir}/OGRE/cmake/* %{buildroot}%{_datadir}/cmake/Modules
 
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
 
 %files
-%defattr(-,root,root,-)
 %doc AUTHORS BUGS COPYING
 %doc Docs/ChangeLog.html Docs/License.html Docs/licenses Docs/ReadMe.html Docs/style.css Docs/ogre-logo*.gif
 %{_libdir}/libOgreMain.so.*
@@ -244,40 +221,35 @@ mv $RPM_BUILD_ROOT%{_libdir}/OGRE/cmake/* $RPM_BUILD_ROOT%{_datadir}/cmake/Modul
 %config(noreplace) %{_sysconfdir}/ld.so.conf.d/*
 
 %files paging
-%defattr(-,root,root,-)
 %{_libdir}/libOgrePaging.so.*
 
 %files property
-%defattr(-,root,root,-)
 %{_libdir}/libOgreProperty.so.*
 
 %files rtss
-%defattr(-,root,root,-)
 %{_libdir}/libOgreRTShaderSystem.so.*
 
 %files terrain
-%defattr(-,root,root,-)
 %{_libdir}/libOgreTerrain.so.*
 
+%files overlay
+%{_libdir}/libOgreOverlay.so.*
+
+%files volume
+%{_libdir}/libOgreVolume.so.*
+
 %files utils
-%defattr(-,root,root,-)
 %{_bindir}/OgreMeshUpgrader
 %{_bindir}/OgreXMLConverter
 %{_bindir}/rcapsdump
 
 %files devel
-%defattr(-,root,root,-)
 %{_libdir}/lib*Ogre*.so
 %{_datadir}/cmake/Modules/*
 %{_includedir}/OGRE
 %{_libdir}/pkgconfig/*.pc
 
-%files devel-doc
-%defattr(-,root,root,-)
-%doc api Docs/manual Docs/shadows Docs/vbo-update Docs/style.css
-
 %files samples
-%defattr(-,root,root)
 %{_bindir}/SampleBrowser
 %{_libdir}/OGRE/Samples
 %{_datadir}/OGRE/media
@@ -288,6 +260,10 @@ mv $RPM_BUILD_ROOT%{_libdir}/OGRE/cmake/* $RPM_BUILD_ROOT%{_datadir}/cmake/Modul
 
 
 %changelog
+* Sat Jun 07 2014 Igor Gnatenko <i.gnatenko.brain at gmail.com> - 1.9.0-1
+- 1.9.0 upstream release (RHBZ #1104309)
+- cleanup spec
+
 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.8.1-12
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
 
@@ -346,7 +322,7 @@ mv $RPM_BUILD_ROOT%{_libdir}/OGRE/cmake/* $RPM_BUILD_ROOT%{_datadir}/cmake/Modul
 * Fri Jul 20 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.7.4-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
 
-* Tue Apr 01 2012 Bruno Wolff III <bruno at wolff.to> - 1.7.4-1
+* Sun Apr 01 2012 Bruno Wolff III <bruno at wolff.to> - 1.7.4-1
 - Update to upstream 1.7.4
 - This is a minor bugfix update from 1.7.3
 
@@ -448,7 +424,7 @@ mv $RPM_BUILD_ROOT%{_libdir}/OGRE/cmake/* $RPM_BUILD_ROOT%{_datadir}/cmake/Modul
 * Thu Feb 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.6.1-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
 
-* Sat Feb 10 2009 Alexey Torkhov <atorkhov at gmail.com> 1.6.1-1
+* Tue Feb 10 2009 Alexey Torkhov <atorkhov at gmail.com> 1.6.1-1
 - New upstream release 1.6.1
 
 * Tue Jan 20 2009 Hans de Goede <hdegoede at redhat.com> 1.6.0-5
@@ -469,7 +445,7 @@ mv $RPM_BUILD_ROOT%{_libdir}/OGRE/cmake/* $RPM_BUILD_ROOT%{_datadir}/cmake/Modul
 - Removed non-free quake map from samples media
 - Added docs license in License tag
 
-* Sat Sep 21 2008 Alexey Torkhov <atorkhov at gmail.com> 1.6.0-0.1.rc1
+* Sun Sep 21 2008 Alexey Torkhov <atorkhov at gmail.com> 1.6.0-0.1.rc1
 - New upstream release 1.6.0rc1
 - Disabling broken OpenEXR plugin, it is not updated for long time and doesn't
   compile. FreeImage now have EXR support
diff --git a/sources b/sources
index 5bf3d2d..e8b7a57 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-3da62242e8508ede52c8124414be59b0  ogre-1.8.1-clean.tar.bz2
+6a3ffaa8389e6a4323fc505263137bfd  ogre-1.9.0-clean.tar.bz2


More information about the scm-commits mailing list