From f3be0366b34be9c837c75fc93d90300ca0eb20b3 Mon Sep 17 00:00:00 2001 From: Jakub Bogusz Date: Mon, 6 May 2019 18:37:56 +0200 Subject: [PATCH] - updated to 3.7.1-rc1 - added c++11 patch (replace use of boost/tr1/memory.hpp removed from boost 1.69+ with C++ 11 ) - disable -march=native --- povray-c++11.patch | 184 +++++++++++++++++++++++++++++++++++++++++++++ povray.spec | 58 ++++++++------ 2 files changed, 219 insertions(+), 23 deletions(-) create mode 100644 povray-c++11.patch diff --git a/povray-c++11.patch b/povray-c++11.patch new file mode 100644 index 0000000..da8ddbc --- /dev/null +++ b/povray-c++11.patch @@ -0,0 +1,184 @@ +--- povray-3.7.1-rc.1/unix/povconfig/syspovconfig.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/unix/povconfig/syspovconfig.h 2019-05-05 20:50:54.936577187 +0200 +@@ -50,13 +50,13 @@ + #include + #include + #include ++#include + #include + #include + #include + + // boost headers + #include +-#include + + #ifdef HAVE_CONFIG_H + // from directory "." (generated by ./configure) +@@ -91,12 +91,11 @@ + // to in a few other places. + using std::runtime_error; + +-// these may actually be the boost implementations, depending on what boost/tr1/memory.hpp has pulled in +-using std::tr1::shared_ptr; +-using std::tr1::weak_ptr; +-using std::tr1::dynamic_pointer_cast; +-using std::tr1::static_pointer_cast; +-using std::tr1::const_pointer_cast; ++using std::shared_ptr; ++using std::weak_ptr; ++using std::dynamic_pointer_cast; ++using std::static_pointer_cast; ++using std::const_pointer_cast; + + using boost::intrusive_ptr; + +--- povray-3.7.1-rc.1/source/base/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/base/precomp.h 2019-05-05 21:10:21.240868851 +0200 +@@ -62,6 +62,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -81,6 +82,5 @@ + #include + #include + #endif +-#include + #include + +--- povray-3.7.1-rc.1/source/backend/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/backend/precomp.h 2019-05-05 21:20:44.480101155 +0200 +@@ -60,6 +60,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -78,6 +79,5 @@ + #include + #include + #endif +-#include + #include + +--- povray-3.7.1-rc.1/source/core/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/core/precomp.h 2019-05-05 21:26:40.592038719 +0200 +@@ -60,6 +60,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -78,6 +79,5 @@ + #include + #include + #endif +-#include + #include + +--- povray-3.7.1-rc.1/source/core/shape/parametric.cpp.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/core/shape/parametric.cpp 2019-05-05 21:55:01.000916811 +0200 +@@ -37,8 +37,7 @@ + #include "core/shape/parametric.h" + + #include +- +-#include ++#include + + #include "core/math/matrix.h" + #include "core/render/ray.h" +@@ -441,7 +440,7 @@ + Vector3d RU, RV; + Vector2d uv_vect; + +- std::tr1::array aFn = { ++ std::array aFn = { + GenericScalarFunctionInstance(Function[0], Thread), + GenericScalarFunctionInstance(Function[1], Thread), + GenericScalarFunctionInstance(Function[2], Thread) +@@ -919,7 +918,7 @@ + throw POV_EXCEPTION_STRING("Cannot allocate memory for parametric precomputation data."); + + PrecompLastDepth = 1 << (depth - 1); +- std::tr1::array aFn = { ++ std::array aFn = { + GenericScalarFunctionInstance(Function[0], Thread), + GenericScalarFunctionInstance(Function[1], Thread), + GenericScalarFunctionInstance(Function[2], Thread) +--- povray-3.7.1-rc.1/source/frontend/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/frontend/precomp.h 2019-05-06 05:16:59.760443675 +0200 +@@ -60,6 +60,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -78,6 +79,5 @@ + #include + #include + #endif +-#include + #include + +--- povray-3.7.1-rc.1/source/parser/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/parser/precomp.h 2019-05-06 05:24:59.805900707 +0200 +@@ -60,6 +60,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -78,6 +79,5 @@ + #include + #include + #endif +-#include + #include + +--- povray-3.7.1-rc.1/source/povms/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/povms/precomp.h 2019-05-06 05:29:58.565082232 +0200 +@@ -60,6 +60,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -78,6 +79,5 @@ + #include + #include + #endif +-#include + #include + +--- povray-3.7.1-rc.1/source/vm/precomp.h.orig 2017-06-22 20:42:33.000000000 +0200 ++++ povray-3.7.1-rc.1/source/vm/precomp.h 2019-05-06 05:30:54.058009990 +0200 +@@ -60,6 +60,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -78,6 +79,5 @@ + #include + #include + #endif +-#include + #include + diff --git a/povray.spec b/povray.spec index 0cddd74..2c65911 100644 --- a/povray.spec +++ b/povray.spec @@ -4,31 +4,40 @@ %bcond_with pvm # - with PVM support %bcond_with svga # - with svgalib support (doesn't work on many platforms) # -%define rel 2 -%define beta beta.5 +%define subver rc.1 +%define rel 1 Summary: Persistence of Vision Ray Tracer Summary(pl.UTF-8): Persistence of Vision Ray Tracer Name: povray Version: 3.7.1 -Release: 0.%{beta}.%{rel} +Release: 0.%{subver}.%{rel} Epoch: 1 -License: AGPLv3+ +License: AGPL v3+ Group: Applications/Graphics -Source0: https://github.com/POV-Ray/povray/archive/v%{version}-%{beta}/%{name}-%{version}-%{beta}.tar.gz -# Source0-md5: eeff460742acdaa84ebbc7e7e5135981 -Patch0: x32.patch +#Source0Download: https://github.com/POV-Ray/povray/releases +Source0: https://github.com/POV-Ray/povray/archive/v%{version}-%{subver}/%{name}-%{version}-%{subver}.tar.gz +# Source0-md5: 6445dd620d709ad4b394aca1e7d976cb +Patch0: %{name}-c++11.patch +Patch1: x32.patch URL: http://www.povray.org/ -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: boost-devel -BuildRequires: libjpeg-devel -BuildRequires: libpng-devel >= 1.4.0 +BuildRequires: OpenEXR-devel >= 1.2 +BuildRequires: SDL-devel >= 1.2 +BuildRequires: autoconf >= 2.59 +BuildRequires: automake >= 1:1.9 +BuildRequires: boost-devel >= 1.38 +BuildRequires: libjpeg-devel >= 6b +BuildRequires: libpng-devel >= 2:1.4.0 BuildRequires: libstdc++-devel -BuildRequires: libtiff-devel +BuildRequires: libtiff-devel >= 3.6.1 +BuildRequires: perl-base %{?with_pvm:BuildRequires: pvm-devel >= 3.4.3-24} %{?with_svga:BuildRequires: svgalib-devel} %{?with_x:BuildRequires: xorg-lib-libX11-devel} -BuildRequires: zlib-devel +BuildRequires: zlib-devel >= 1.2.1 +Requires: OpenEXR >= 1.2 +Requires: SDL >= 1.2 +Requires: libtiff >= 3.6.1 +Requires: zlib >= 1.2.1 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %if %{with pvm} @@ -96,9 +105,10 @@ Plik wykonywalny The Persistence of Vision(tm) Ray-Tracer dla PVM/xwin. %prep -%setup -q -n %{name}-%{version}-%{beta} -%ifarch x32 +%setup -q -n %{name}-%{version}-%{subver} %patch0 -p1 +%ifarch x32 +%patch1 -p1 %endif %build @@ -107,9 +117,11 @@ cd unix cd .. COMPILED_BY="PLD/Linux Team";export COMPILED_BY; +# disable optimiz-arch, it means -march=native for gcc %if %{with x} && %{with pvm} %configure \ --libdir=%{_datadir} \ + --disable-optimiz-arch \ --enable-pvm \ --with-pvm-arch=%{_pvmarch} \ --with-pvm-libs=%{_libdir} @@ -122,6 +134,7 @@ install unix/povray x-pvmpov %configure \ --libdir=%{_datadir} \ + --disable-optimiz-arch \ --enable-pvm \ --with-pvm-arch=%{_pvmarch} \ --with-pvm-libs=%{_libdir} \ @@ -132,7 +145,8 @@ install unix/povray pvmpov %if %{with x} %configure \ - --libdir=%{_datadir} + --libdir=%{_datadir} \ + --disable-optimiz-arch %{__make} install unix/povray x-povray %{__make} clean @@ -140,6 +154,7 @@ install unix/povray x-povray %configure \ --libdir=%{_datadir} \ + --disable-optimiz-arch \ --without-x %{__make} @@ -169,9 +184,6 @@ install pvmpov $RPM_BUILD_ROOT%{_bindir}/pvmpov ln -s %{_bindir}/pvmpov $RPM_BUILD_ROOT%{_pvmroot}/bin/%{_pvmarch}/pvmpov %endif -##install povray.ini $RPM_BUILD_ROOT%{_sysconfdir} -##install povray.conf $RPM_BUILD_ROOT%{_sysconfdir} - %clean rm -rf $RPM_BUILD_ROOT @@ -181,11 +193,11 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/povray %{_datadir}/povray* %{_docdir}/povray* -%{_mandir}/man?/* +%{_mandir}/man1/povray.1* %dir %{_sysconfdir}/povray %dir %{_sysconfdir}/povray/3.7 -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/3.7/povray.* -## %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/povray.* +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/3.7/povray.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/3.7/povray.ini %if %{with x} %files X11 -- 2.43.0